aboutsummaryrefslogtreecommitdiff
path: root/source/lb
diff options
context:
space:
mode:
authorChristian Lohmaier <lohmaier+LibreOffice@googlemail.com>2018-10-03 15:26:20 +0200
committerChristian Lohmaier <lohmaier+LibreOffice@googlemail.com>2018-10-03 15:37:48 +0200
commit1972d9c3c26f6064e42870aeae397db7ea3423a6 (patch)
treede364824cd08a182a223439982bed9daabf4d235 /source/lb
parent54cc0de67b3c948411cef3a0405c8992d80f34f3 (diff)
update translations for master
and force-fix errors using pocheck Change-Id: I2a1fd1969ac1b5f197b1554050e2bb971149f25a
Diffstat (limited to 'source/lb')
-rw-r--r--source/lb/basctl/messages.po34
-rw-r--r--source/lb/chart2/messages.po16
-rw-r--r--source/lb/connectivity/messages.po4
-rw-r--r--source/lb/connectivity/registry/mysqlc/org/openoffice/Office/DataAccess.po (renamed from source/lb/connectivity/registry/mysql/org/openoffice/Office/DataAccess.po)27
-rw-r--r--source/lb/cui/messages.po2512
-rw-r--r--source/lb/dbaccess/messages.po22
-rw-r--r--source/lb/desktop/messages.po6
-rw-r--r--source/lb/dictionaries/tr_TR.po4
-rw-r--r--source/lb/extensions/messages.po72
-rw-r--r--source/lb/filter/messages.po18
-rw-r--r--source/lb/formula/messages.po28
-rw-r--r--source/lb/fpicker/messages.po254
-rw-r--r--source/lb/instsetoo_native/inc_openoffice/windows/msi_languages.po4
-rw-r--r--source/lb/mysqlc/source.po32
-rw-r--r--source/lb/mysqlc/source/registry/data/org/openoffice/Office/DataAccess.po25
-rw-r--r--source/lb/officecfg/registry/data/org/openoffice/Office.po13
-rw-r--r--source/lb/officecfg/registry/data/org/openoffice/Office/UI.po100
-rw-r--r--source/lb/reportdesign/messages.po20
-rw-r--r--source/lb/sc/messages.po623
-rw-r--r--source/lb/scp2/source/extensions.po18
-rw-r--r--source/lb/scp2/source/gnome.po13
-rw-r--r--source/lb/scp2/source/ooo.po18
-rw-r--r--source/lb/sd/messages.po1750
-rw-r--r--source/lb/sfx2/messages.po42
-rw-r--r--source/lb/starmath/messages.po28
-rw-r--r--source/lb/svtools/messages.po623
-rw-r--r--source/lb/svx/messages.po788
-rw-r--r--source/lb/sw/messages.po646
-rw-r--r--source/lb/vcl/messages.po116
-rw-r--r--source/lb/xmlsecurity/messages.po12
30 files changed, 4207 insertions, 3661 deletions
diff --git a/source/lb/basctl/messages.po b/source/lb/basctl/messages.po
index a8a7ab8f6e5..25fbe92c817 100644
--- a/source/lb/basctl/messages.po
+++ b/source/lb/basctl/messages.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2018-05-16 16:54+0200\n"
+"POT-Creation-Date: 2018-10-02 17:56+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -506,48 +506,48 @@ msgctxt "basicmacrodialog|run"
msgid "Run"
msgstr ""
-#: basctl/uiconfig/basicide/ui/basicmacrodialog.ui:124
+#: basctl/uiconfig/basicide/ui/basicmacrodialog.ui:123
msgctxt "basicmacrodialog|existingmacrosft"
msgid "Existing Macros In:"
msgstr ""
-#: basctl/uiconfig/basicide/ui/basicmacrodialog.ui:178
+#: basctl/uiconfig/basicide/ui/basicmacrodialog.ui:177
msgctxt "basicmacrodialog|macrofromft"
msgid "Macro From"
msgstr ""
-#: basctl/uiconfig/basicide/ui/basicmacrodialog.ui:194
+#: basctl/uiconfig/basicide/ui/basicmacrodialog.ui:193
msgctxt "basicmacrodialog|macrotoft"
msgid "Save Macro In"
msgstr ""
-#: basctl/uiconfig/basicide/ui/basicmacrodialog.ui:242
+#: basctl/uiconfig/basicide/ui/basicmacrodialog.ui:241
#, fuzzy
msgctxt "basicmacrodialog|libraryft1"
msgid "Macro Name"
msgstr "Makronumm"
-#: basctl/uiconfig/basicide/ui/basicmacrodialog.ui:264
+#: basctl/uiconfig/basicide/ui/basicmacrodialog.ui:263
msgctxt "basicmacrodialog|assign"
msgid "Assign..."
msgstr ""
-#: basctl/uiconfig/basicide/ui/basicmacrodialog.ui:277
+#: basctl/uiconfig/basicide/ui/basicmacrodialog.ui:276
msgctxt "basicmacrodialog|edit"
msgid "Edit"
msgstr "Beaarbechten"
-#: basctl/uiconfig/basicide/ui/basicmacrodialog.ui:304
+#: basctl/uiconfig/basicide/ui/basicmacrodialog.ui:303
msgctxt "basicmacrodialog|organize"
msgid "Organizer..."
msgstr ""
-#: basctl/uiconfig/basicide/ui/basicmacrodialog.ui:317
+#: basctl/uiconfig/basicide/ui/basicmacrodialog.ui:316
msgctxt "basicmacrodialog|newlibrary"
msgid "New Library"
msgstr "Nei Bibliothéik"
-#: basctl/uiconfig/basicide/ui/basicmacrodialog.ui:330
+#: basctl/uiconfig/basicide/ui/basicmacrodialog.ui:329
msgctxt "basicmacrodialog|newmodule"
msgid "New Module"
msgstr "Neie Modul"
@@ -728,23 +728,23 @@ msgctxt "libpage|export"
msgid "_Export..."
msgstr "Expor~téieren..."
-#: basctl/uiconfig/basicide/ui/managebreakpoints.ui:9
+#: basctl/uiconfig/basicide/ui/managebreakpoints.ui:24
msgctxt "managebreakpoints|ManageBreakpointsDialog"
msgid "Manage Breakpoints"
msgstr ""
-#: basctl/uiconfig/basicide/ui/managebreakpoints.ui:129
+#: basctl/uiconfig/basicide/ui/managebreakpoints.ui:147
#, fuzzy
msgctxt "managebreakpoints|active"
msgid "Active"
msgstr "Aktiv"
-#: basctl/uiconfig/basicide/ui/managebreakpoints.ui:182
+#: basctl/uiconfig/basicide/ui/managebreakpoints.ui:245
msgctxt "managebreakpoints|label2"
msgid "Pass count:"
msgstr ""
-#: basctl/uiconfig/basicide/ui/managebreakpoints.ui:205
+#: basctl/uiconfig/basicide/ui/managebreakpoints.ui:268
msgctxt "managebreakpoints|label1"
msgid "Breakpoints"
msgstr ""
@@ -820,18 +820,18 @@ msgctxt "organizedialog|OrganizeDialog"
msgid "%PRODUCTNAME Basic Macro Organizer"
msgstr ""
-#: basctl/uiconfig/basicide/ui/organizedialog.ui:78
+#: basctl/uiconfig/basicide/ui/organizedialog.ui:80
msgctxt "organizedialog|modules"
msgid "Modules"
msgstr "Modulen"
-#: basctl/uiconfig/basicide/ui/organizedialog.ui:100
+#: basctl/uiconfig/basicide/ui/organizedialog.ui:102
#, fuzzy
msgctxt "organizedialog|dialogs"
msgid "Dialogs"
msgstr "Dialog"
-#: basctl/uiconfig/basicide/ui/organizedialog.ui:123
+#: basctl/uiconfig/basicide/ui/organizedialog.ui:125
msgctxt "organizedialog|libraries"
msgid "Libraries"
msgstr ""
diff --git a/source/lb/chart2/messages.po b/source/lb/chart2/messages.po
index e0085897a6a..9f86b9237d7 100644
--- a/source/lb/chart2/messages.po
+++ b/source/lb/chart2/messages.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2018-07-19 13:30+0200\n"
+"POT-Creation-Date: 2018-10-02 17:56+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -870,17 +870,17 @@ msgctxt "chardialog|CharDialog"
msgid "Character"
msgstr "Zeechen"
-#: chart2/uiconfig/ui/chardialog.ui:105
+#: chart2/uiconfig/ui/chardialog.ui:134
msgctxt "chardialog|font"
msgid "Font"
msgstr "Schrëft"
-#: chart2/uiconfig/ui/chardialog.ui:127
+#: chart2/uiconfig/ui/chardialog.ui:180
msgctxt "chardialog|fonteffects"
msgid "Font Effects"
msgstr "Schrëfteffekter"
-#: chart2/uiconfig/ui/chardialog.ui:150
+#: chart2/uiconfig/ui/chardialog.ui:227
msgctxt "chardialog|position"
msgid "Position"
msgstr "Positioun"
@@ -1416,22 +1416,22 @@ msgctxt "paradialog|ParagraphDialog"
msgid "Paragraph"
msgstr "Paragraphe"
-#: chart2/uiconfig/ui/paradialog.ui:105
+#: chart2/uiconfig/ui/paradialog.ui:134
msgctxt "paradialog|labelTP_PARA_STD"
msgid "Indents & Spacing"
msgstr ""
-#: chart2/uiconfig/ui/paradialog.ui:127
+#: chart2/uiconfig/ui/paradialog.ui:180
msgctxt "paradialog|labelTP_PARA_ALIGN"
msgid "Alignment"
msgstr "Aus~riichten"
-#: chart2/uiconfig/ui/paradialog.ui:151
+#: chart2/uiconfig/ui/paradialog.ui:228
msgctxt "paradialog|labelTP_PARA_ASIAN"
msgid "Asian Typography"
msgstr "Asiatesch Typographie"
-#: chart2/uiconfig/ui/paradialog.ui:174
+#: chart2/uiconfig/ui/paradialog.ui:275
msgctxt "paradialog|labelTP_TABULATOR"
msgid "Tabs"
msgstr ""
diff --git a/source/lb/connectivity/messages.po b/source/lb/connectivity/messages.po
index d8bb946e66d..ec74ca38837 100644
--- a/source/lb/connectivity/messages.po
+++ b/source/lb/connectivity/messages.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2018-02-27 13:56+0100\n"
+"POT-Creation-Date: 2018-09-03 13:23+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -277,7 +277,7 @@ msgstr ""
#: connectivity/inc/strings.hrc:80
msgctxt "STR_COULD_NOT_CREATE_INDEX_NAME"
-msgid "The index could not be created. The file '$filename$' is used by an other index."
+msgid "The index could not be created. The file '$filename$' is used by another index."
msgstr ""
#: connectivity/inc/strings.hrc:81
diff --git a/source/lb/connectivity/registry/mysql/org/openoffice/Office/DataAccess.po b/source/lb/connectivity/registry/mysqlc/org/openoffice/Office/DataAccess.po
index 7479aa9e44f..f17d9b9c1cb 100644
--- a/source/lb/connectivity/registry/mysql/org/openoffice/Office/DataAccess.po
+++ b/source/lb/connectivity/registry/mysqlc/org/openoffice/Office/DataAccess.po
@@ -1,36 +1,17 @@
-#. extracted from connectivity/registry/mysql/org/openoffice/Office/DataAccess
+#. extracted from connectivity/registry/mysqlc/org/openoffice/Office/DataAccess
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2013-11-20 13:01+0100\n"
+"POT-Creation-Date: 2018-10-02 17:57+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
-"Language: lb\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: LibreOffice\n"
"X-Accelerator-Marker: ~\n"
-
-#: Drivers.xcu
-msgctxt ""
-"Drivers.xcu\n"
-".Drivers.Installed.sdbc:mysql:jdbc:*\n"
-"DriverTypeDisplayName\n"
-"value.text"
-msgid "MySQL (JDBC)"
-msgstr ""
-
-#: Drivers.xcu
-msgctxt ""
-"Drivers.xcu\n"
-".Drivers.Installed.sdbc:mysql:odbc:*\n"
-"DriverTypeDisplayName\n"
-"value.text"
-msgid "MySQL (ODBC)"
-msgstr ""
+"X-Generator: LibreOffice\n"
#: Drivers.xcu
msgctxt ""
@@ -38,5 +19,5 @@ msgctxt ""
".Drivers.Installed.sdbc:mysql:mysqlc:*\n"
"DriverTypeDisplayName\n"
"value.text"
-msgid "MySQL (Native)"
+msgid "MySQL Connector"
msgstr ""
diff --git a/source/lb/cui/messages.po b/source/lb/cui/messages.po
index dc46de98c1a..ab4afc34842 100644
--- a/source/lb/cui/messages.po
+++ b/source/lb/cui/messages.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2018-07-19 13:30+0200\n"
+"POT-Creation-Date: 2018-10-02 17:56+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -390,641 +390,663 @@ msgctxt "RID_SVXSTR_ROW"
msgid "Insert Rows"
msgstr "Zeilen ~asetzen"
-#: cui/inc/strings.hrc:99
+#. tdf#119293 Labels depending on row/col
+#: cui/inc/strings.hrc:100
+msgctxt "RID_SVXSTR_INSERTROW_BEFORE"
+msgid "Above selection"
+msgstr ""
+
+#: cui/inc/strings.hrc:101
+msgctxt "RID_SVXSTR_INSERTROW_AFTER"
+msgid "Below selection"
+msgstr ""
+
+#: cui/inc/strings.hrc:102
msgctxt "RID_SVXSTR_REMOVE_FAVORITES"
msgid "Remove from Favorites"
msgstr ""
-#: cui/inc/strings.hrc:100
+#: cui/inc/strings.hrc:103
msgctxt "RID_SVXSTR_MISSING_GLYPH"
msgid "Missing Glyph"
msgstr ""
-#: cui/inc/strings.hrc:101
+#: cui/inc/strings.hrc:104
msgctxt "RID_SVXSTR_ADD_FAVORITES"
msgid "Add to Favorites"
msgstr ""
#. PPI is pixel per inch, %1 is a number
-#: cui/inc/strings.hrc:103
+#: cui/inc/strings.hrc:106
msgctxt "RID_SVXSTR_PPI"
msgid "(%1 PPI)"
msgstr ""
-#: cui/inc/strings.hrc:104
+#: cui/inc/strings.hrc:107
#, fuzzy
msgctxt "RID_SVXSTR_COL"
msgid "Insert Columns"
msgstr "Kolonnen ~asetzen"
-#: cui/inc/strings.hrc:105
+#. tdf#119293 Labels depending on row/col
+#: cui/inc/strings.hrc:109
+msgctxt "RID_SVXSTR_INSERTCOL_BEFORE"
+msgid "Before selection"
+msgstr ""
+
+#: cui/inc/strings.hrc:110
+msgctxt "RID_SVXSTR_INSERTCOL_AFTER"
+msgid "After selection"
+msgstr ""
+
+#: cui/inc/strings.hrc:111
msgctxt "RID_SVXSTR_AUTO_ENTRY"
msgid "Automatic"
msgstr "Automatesch"
-#: cui/inc/strings.hrc:106
+#: cui/inc/strings.hrc:112
#, fuzzy
msgctxt "RID_SVXSTR_EDIT_GRAPHIC"
msgid "Link"
msgstr "Zeil "
-#: cui/inc/strings.hrc:107
+#: cui/inc/strings.hrc:113
msgctxt "RID_SVXSTR_LOADACCELCONFIG"
msgid "Load Keyboard Configuration"
msgstr ""
-#: cui/inc/strings.hrc:108
+#: cui/inc/strings.hrc:114
msgctxt "RID_SVXSTR_SAVEACCELCONFIG"
msgid "Save Keyboard Configuration"
msgstr ""
-#: cui/inc/strings.hrc:109
+#: cui/inc/strings.hrc:115
msgctxt "RID_SVXSTR_FILTERNAME_CFG"
msgid "Configuration (*.cfg)"
msgstr ""
-#: cui/inc/strings.hrc:110
+#: cui/inc/strings.hrc:116
msgctxt "RID_SVXSTR_HYPDLG_ERR_LERR_NOENTRIES"
msgid "Targets do not exist in the document."
msgstr ""
-#: cui/inc/strings.hrc:111
+#: cui/inc/strings.hrc:117
msgctxt "RID_SVXSTR_HYPDLG_ERR_LERR_DOCNOTOPEN"
msgid "Couldn't open the document."
msgstr ""
-#: cui/inc/strings.hrc:112
+#: cui/inc/strings.hrc:118
msgctxt "RID_SVXSTR_EDITHINT"
msgid "[Enter text here]"
msgstr ""
-#: cui/inc/strings.hrc:113
+#: cui/inc/strings.hrc:119
msgctxt "RID_SVXSTR_HANGUL"
msgid "Hangul"
msgstr "Hangul"
-#: cui/inc/strings.hrc:114
+#: cui/inc/strings.hrc:120
msgctxt "RID_SVXSTR_HANJA"
msgid "Hanja"
msgstr ""
-#: cui/inc/strings.hrc:115
+#: cui/inc/strings.hrc:121
msgctxt "RID_SVXSTR_BASICMACROS"
msgid "BASIC Macros"
msgstr ""
-#: cui/inc/strings.hrc:116
+#: cui/inc/strings.hrc:122
msgctxt "RID_SVXSTR_GROUP_STYLES"
msgid "Styles"
msgstr ""
-#: cui/inc/strings.hrc:118
+#: cui/inc/strings.hrc:124
msgctxt "RID_SVXSTR_EVENT_STARTAPP"
msgid "Start Application"
msgstr "Applikatioun starten"
-#: cui/inc/strings.hrc:119
+#: cui/inc/strings.hrc:125
msgctxt "RID_SVXSTR_EVENT_CLOSEAPP"
msgid "Close Application"
msgstr "App zoumaachen"
-#: cui/inc/strings.hrc:120
+#: cui/inc/strings.hrc:126
msgctxt "RID_SVXSTR_EVENT_NEWDOC"
msgid "New Document"
msgstr "Neit Dokument"
-#: cui/inc/strings.hrc:121
+#: cui/inc/strings.hrc:127
msgctxt "RID_SVXSTR_EVENT_CLOSEDOC"
msgid "Document closed"
msgstr "Dokument zou"
-#: cui/inc/strings.hrc:122
+#: cui/inc/strings.hrc:128
msgctxt "RID_SVXSTR_EVENT_PREPARECLOSEDOC"
msgid "Document is going to be closed"
msgstr "Dokument gëtt zougemaach"
-#: cui/inc/strings.hrc:123
+#: cui/inc/strings.hrc:129
msgctxt "RID_SVXSTR_EVENT_OPENDOC"
msgid "Open Document"
msgstr "Dokument opmaachen"
-#: cui/inc/strings.hrc:124
+#: cui/inc/strings.hrc:130
msgctxt "RID_SVXSTR_EVENT_SAVEDOC"
msgid "Save Document"
msgstr "Dokument späicheren"
-#: cui/inc/strings.hrc:125
+#: cui/inc/strings.hrc:131
msgctxt "RID_SVXSTR_EVENT_SAVEASDOC"
msgid "Save Document As"
msgstr "Dokument späicheren als"
-#: cui/inc/strings.hrc:126
+#: cui/inc/strings.hrc:132
msgctxt "RID_SVXSTR_EVENT_SAVEDOCDONE"
msgid "Document has been saved"
msgstr "Dokument gouf gespäichert"
-#: cui/inc/strings.hrc:127
+#: cui/inc/strings.hrc:133
msgctxt "RID_SVXSTR_EVENT_SAVEASDOCDONE"
msgid "Document has been saved as"
msgstr "Dokument gouf gespäichert als"
-#: cui/inc/strings.hrc:128
+#: cui/inc/strings.hrc:134
msgctxt "RID_SVXSTR_EVENT_ACTIVATEDOC"
msgid "Activate Document"
msgstr "Dokument aktivéieren"
-#: cui/inc/strings.hrc:129
+#: cui/inc/strings.hrc:135
msgctxt "RID_SVXSTR_EVENT_DEACTIVATEDOC"
msgid "Deactivate Document"
msgstr "Dokument desaktivéieren"
-#: cui/inc/strings.hrc:130
+#: cui/inc/strings.hrc:136
msgctxt "RID_SVXSTR_EVENT_PRINTDOC"
msgid "Print Document"
msgstr "Dokument drécken"
-#: cui/inc/strings.hrc:131
+#: cui/inc/strings.hrc:137
msgctxt "RID_SVXSTR_EVENT_MODIFYCHANGED"
msgid "'Modified' status was changed"
msgstr "De Status 'Verännert' gouf geännert"
-#: cui/inc/strings.hrc:132
+#: cui/inc/strings.hrc:138
msgctxt "RID_SVXSTR_EVENT_MAILMERGE"
msgid "Printing of form letters started"
msgstr ""
-#: cui/inc/strings.hrc:133
+#: cui/inc/strings.hrc:139
msgctxt "RID_SVXSTR_EVENT_MAILMERGE_END"
msgid "Printing of form letters finished"
msgstr ""
-#: cui/inc/strings.hrc:134
+#: cui/inc/strings.hrc:140
msgctxt "RID_SVXSTR_EVENT_FIELDMERGE"
msgid "Merging of form fields started"
msgstr ""
-#: cui/inc/strings.hrc:135
+#: cui/inc/strings.hrc:141
msgctxt "RID_SVXSTR_EVENT_FIELDMERGE_FINISHED"
msgid "Merging of form fields finished"
msgstr ""
-#: cui/inc/strings.hrc:136
+#: cui/inc/strings.hrc:142
msgctxt "RID_SVXSTR_EVENT_PAGECOUNTCHANGE"
msgid "Changing the page count"
msgstr ""
-#: cui/inc/strings.hrc:137
+#: cui/inc/strings.hrc:143
msgctxt "RID_SVXSTR_EVENT_SUBCOMPONENT_OPENED"
msgid "Loaded a sub component"
msgstr ""
-#: cui/inc/strings.hrc:138
+#: cui/inc/strings.hrc:144
msgctxt "RID_SVXSTR_EVENT_SUBCOMPONENT_CLOSED"
msgid "Closed a sub component"
msgstr ""
-#: cui/inc/strings.hrc:139
+#: cui/inc/strings.hrc:145
msgctxt "RID_SVXSTR_EVENT_APPROVEPARAMETER"
msgid "Fill parameters"
msgstr ""
-#: cui/inc/strings.hrc:140
+#: cui/inc/strings.hrc:146
msgctxt "RID_SVXSTR_EVENT_ACTIONPERFORMED"
msgid "Execute action"
msgstr ""
-#: cui/inc/strings.hrc:141
+#: cui/inc/strings.hrc:147
msgctxt "RID_SVXSTR_EVENT_AFTERUPDATE"
msgid "After updating"
msgstr ""
-#: cui/inc/strings.hrc:142
+#: cui/inc/strings.hrc:148
msgctxt "RID_SVXSTR_EVENT_BEFOREUPDATE"
msgid "Before updating"
msgstr ""
-#: cui/inc/strings.hrc:143
+#: cui/inc/strings.hrc:149
msgctxt "RID_SVXSTR_EVENT_APPROVEROWCHANGE"
msgid "Before record action"
msgstr ""
-#: cui/inc/strings.hrc:144
+#: cui/inc/strings.hrc:150
msgctxt "RID_SVXSTR_EVENT_ROWCHANGE"
msgid "After record action"
msgstr ""
-#: cui/inc/strings.hrc:145
+#: cui/inc/strings.hrc:151
msgctxt "RID_SVXSTR_EVENT_CONFIRMDELETE"
msgid "Confirm deletion"
msgstr ""
-#: cui/inc/strings.hrc:146
+#: cui/inc/strings.hrc:152
msgctxt "RID_SVXSTR_EVENT_ERROROCCURRED"
msgid "Error occurred"
msgstr "E Fehler ass opgetrueden"
-#: cui/inc/strings.hrc:147
+#: cui/inc/strings.hrc:153
msgctxt "RID_SVXSTR_EVENT_ADJUSTMENTVALUECHANGED"
msgid "While adjusting"
msgstr ""
-#: cui/inc/strings.hrc:148
+#: cui/inc/strings.hrc:154
msgctxt "RID_SVXSTR_EVENT_FOCUSGAINED"
msgid "When receiving focus"
msgstr ""
-#: cui/inc/strings.hrc:149
+#: cui/inc/strings.hrc:155
msgctxt "RID_SVXSTR_EVENT_FOCUSLOST"
msgid "When losing focus"
msgstr ""
-#: cui/inc/strings.hrc:150
+#: cui/inc/strings.hrc:156
msgctxt "RID_SVXSTR_EVENT_ITEMSTATECHANGED"
msgid "Item status changed"
msgstr ""
-#: cui/inc/strings.hrc:151
+#: cui/inc/strings.hrc:157
msgctxt "RID_SVXSTR_EVENT_KEYTYPED"
msgid "Key pressed"
msgstr ""
-#: cui/inc/strings.hrc:152
+#: cui/inc/strings.hrc:158
msgctxt "RID_SVXSTR_EVENT_KEYUP"
msgid "Key released"
msgstr ""
-#: cui/inc/strings.hrc:153
+#: cui/inc/strings.hrc:159
msgctxt "RID_SVXSTR_EVENT_LOADED"
msgid "When loading"
msgstr ""
-#: cui/inc/strings.hrc:154
+#: cui/inc/strings.hrc:160
msgctxt "RID_SVXSTR_EVENT_RELOADING"
msgid "Before reloading"
msgstr ""
-#: cui/inc/strings.hrc:155
+#: cui/inc/strings.hrc:161
msgctxt "RID_SVXSTR_EVENT_RELOADED"
msgid "When reloading"
msgstr ""
-#: cui/inc/strings.hrc:156
+#: cui/inc/strings.hrc:162
msgctxt "RID_SVXSTR_EVENT_MOUSEDRAGGED"
msgid "Mouse moved while key pressed"
msgstr ""
-#: cui/inc/strings.hrc:157
+#: cui/inc/strings.hrc:163
msgctxt "RID_SVXSTR_EVENT_MOUSEENTERED"
msgid "Mouse inside"
msgstr ""
-#: cui/inc/strings.hrc:158
+#: cui/inc/strings.hrc:164
msgctxt "RID_SVXSTR_EVENT_MOUSEEXITED"
msgid "Mouse outside"
msgstr ""
-#: cui/inc/strings.hrc:159
+#: cui/inc/strings.hrc:165
msgctxt "RID_SVXSTR_EVENT_MOUSEMOVED"
msgid "Mouse moved"
msgstr ""
-#: cui/inc/strings.hrc:160
+#: cui/inc/strings.hrc:166
msgctxt "RID_SVXSTR_EVENT_MOUSEPRESSED"
msgid "Mouse button pressed"
msgstr ""
-#: cui/inc/strings.hrc:161
+#: cui/inc/strings.hrc:167
msgctxt "RID_SVXSTR_EVENT_MOUSERELEASED"
msgid "Mouse button released"
msgstr ""
-#: cui/inc/strings.hrc:162
+#: cui/inc/strings.hrc:168
msgctxt "RID_SVXSTR_EVENT_POSITIONING"
msgid "Before record change"
msgstr ""
-#: cui/inc/strings.hrc:163
+#: cui/inc/strings.hrc:169
msgctxt "RID_SVXSTR_EVENT_POSITIONED"
msgid "After record change"
msgstr ""
-#: cui/inc/strings.hrc:164
+#: cui/inc/strings.hrc:170
msgctxt "RID_SVXSTR_EVENT_RESETTED"
msgid "After resetting"
msgstr ""
-#: cui/inc/strings.hrc:165
+#: cui/inc/strings.hrc:171
msgctxt "RID_SVXSTR_EVENT_APPROVERESETTED"
msgid "Prior to reset"
msgstr ""
-#: cui/inc/strings.hrc:166
+#: cui/inc/strings.hrc:172
msgctxt "RID_SVXSTR_EVENT_APPROVEACTIONPERFORMED"
msgid "Approve action"
msgstr ""
-#: cui/inc/strings.hrc:167
+#: cui/inc/strings.hrc:173
msgctxt "RID_SVXSTR_EVENT_SUBMITTED"
msgid "Before submitting"
msgstr ""
-#: cui/inc/strings.hrc:168
+#: cui/inc/strings.hrc:174
msgctxt "RID_SVXSTR_EVENT_TEXTCHANGED"
msgid "Text modified"
msgstr "Verännerten Text"
-#: cui/inc/strings.hrc:169
+#: cui/inc/strings.hrc:175
msgctxt "RID_SVXSTR_EVENT_UNLOADING"
msgid "Before unloading"
msgstr ""
-#: cui/inc/strings.hrc:170
+#: cui/inc/strings.hrc:176
msgctxt "RID_SVXSTR_EVENT_UNLOADED"
msgid "When unloading"
msgstr ""
-#: cui/inc/strings.hrc:171
+#: cui/inc/strings.hrc:177
msgctxt "RID_SVXSTR_EVENT_CHANGED"
msgid "Changed"
msgstr "Geännert"
-#: cui/inc/strings.hrc:172
+#: cui/inc/strings.hrc:178
#, fuzzy
msgctxt "RID_SVXSTR_EVENT_CREATEDOC"
msgid "Document created"
msgstr "Dokument zou"
-#: cui/inc/strings.hrc:173
+#: cui/inc/strings.hrc:179
msgctxt "RID_SVXSTR_EVENT_LOADDOCFINISHED"
msgid "Document loading finished"
msgstr ""
-#: cui/inc/strings.hrc:174
+#: cui/inc/strings.hrc:180
msgctxt "RID_SVXSTR_EVENT_SAVEDOCFAILED"
msgid "Saving of document failed"
msgstr ""
-#: cui/inc/strings.hrc:175
+#: cui/inc/strings.hrc:181
msgctxt "RID_SVXSTR_EVENT_SAVEASDOCFAILED"
msgid "'Save as' has failed"
msgstr ""
-#: cui/inc/strings.hrc:176
+#: cui/inc/strings.hrc:182
msgctxt "RID_SVXSTR_EVENT_COPYTODOC"
msgid "Storing or exporting copy of document"
msgstr ""
-#: cui/inc/strings.hrc:177
+#: cui/inc/strings.hrc:183
msgctxt "RID_SVXSTR_EVENT_COPYTODOCDONE"
msgid "Document copy has been created"
msgstr ""
-#: cui/inc/strings.hrc:178
+#: cui/inc/strings.hrc:184
msgctxt "RID_SVXSTR_EVENT_COPYTODOCFAILED"
msgid "Creating of document copy failed"
msgstr ""
-#: cui/inc/strings.hrc:179
+#: cui/inc/strings.hrc:185
msgctxt "RID_SVXSTR_EVENT_VIEWCREATED"
msgid "View created"
msgstr ""
-#: cui/inc/strings.hrc:180
+#: cui/inc/strings.hrc:186
#, fuzzy
msgctxt "RID_SVXSTR_EVENT_PREPARECLOSEVIEW"
msgid "View is going to be closed"
msgstr "Dokument gëtt zougemaach"
-#: cui/inc/strings.hrc:181
+#: cui/inc/strings.hrc:187
msgctxt "RID_SVXSTR_EVENT_CLOSEVIEW"
msgid "View closed"
msgstr ""
-#: cui/inc/strings.hrc:182
+#: cui/inc/strings.hrc:188
msgctxt "RID_SVXSTR_EVENT_TITLECHANGED"
msgid "Document title changed"
msgstr ""
-#: cui/inc/strings.hrc:183
+#: cui/inc/strings.hrc:189
msgctxt "RID_SVXSTR_EVENT_SELECTIONCHANGED"
msgid "Selection changed"
msgstr ""
-#: cui/inc/strings.hrc:184
+#: cui/inc/strings.hrc:190
msgctxt "RID_SVXSTR_EVENT_DOUBLECLICK"
msgid "Double click"
msgstr ""
-#: cui/inc/strings.hrc:185
+#: cui/inc/strings.hrc:191
msgctxt "RID_SVXSTR_EVENT_RIGHTCLICK"
msgid "Right click"
msgstr ""
-#: cui/inc/strings.hrc:186
+#: cui/inc/strings.hrc:192
msgctxt "RID_SVXSTR_EVENT_CALCULATE"
msgid "Formulas calculated"
msgstr ""
-#: cui/inc/strings.hrc:187
+#: cui/inc/strings.hrc:193
msgctxt "RID_SVXSTR_EVENT_CONTENTCHANGED"
msgid "Content changed"
msgstr ""
-#: cui/inc/strings.hrc:189
+#: cui/inc/strings.hrc:195
msgctxt "RID_STR_SEARCH_ANYWHERE"
msgid "anywhere in the field"
msgstr ""
-#: cui/inc/strings.hrc:190
+#: cui/inc/strings.hrc:196
msgctxt "RID_STR_SEARCH_BEGINNING"
msgid "beginning of field"
msgstr ""
-#: cui/inc/strings.hrc:191
+#: cui/inc/strings.hrc:197
msgctxt "RID_STR_SEARCH_END"
msgid "end of field"
msgstr ""
-#: cui/inc/strings.hrc:192
+#: cui/inc/strings.hrc:198
msgctxt "RID_STR_SEARCH_WHOLE"
msgid "entire field"
msgstr ""
-#: cui/inc/strings.hrc:193
+#: cui/inc/strings.hrc:199
#, fuzzy
msgctxt "RID_STR_FROM_TOP"
msgid "From top"
msgstr "Vun uewen "
-#: cui/inc/strings.hrc:194
+#: cui/inc/strings.hrc:200
#, fuzzy
msgctxt "RID_STR_FROM_BOTTOM"
msgid "From bottom"
msgstr "Vun ënnen "
-#: cui/inc/strings.hrc:195
+#: cui/inc/strings.hrc:201
msgctxt "RID_STR_SEARCH_NORECORD"
msgid "No records corresponding to your data found."
msgstr ""
-#: cui/inc/strings.hrc:196
+#: cui/inc/strings.hrc:202
msgctxt "RID_STR_SEARCH_GENERAL_ERROR"
msgid "An unknown error occurred. The search could not be finished."
msgstr ""
-#: cui/inc/strings.hrc:197
+#: cui/inc/strings.hrc:203
msgctxt "RID_STR_OVERFLOW_FORWARD"
msgid "Overflow, search continued at the beginning"
msgstr ""
-#: cui/inc/strings.hrc:198
+#: cui/inc/strings.hrc:204
msgctxt "RID_STR_OVERFLOW_BACKWARD"
msgid "Overflow, search continued at the end"
msgstr ""
-#: cui/inc/strings.hrc:199
+#: cui/inc/strings.hrc:205
msgctxt "RID_STR_SEARCH_COUNTING"
msgid "counting records"
msgstr ""
-#: cui/inc/strings.hrc:201
+#: cui/inc/strings.hrc:207
msgctxt "RID_SVXSTR_GALLERY_NOFILES"
msgid "<No Files>"
msgstr ""
-#: cui/inc/strings.hrc:202
+#: cui/inc/strings.hrc:208
msgctxt "RID_SVXSTR_GALLERYPROPS_OBJECT"
msgid "Object;Objects"
msgstr ""
-#: cui/inc/strings.hrc:203
+#: cui/inc/strings.hrc:209
msgctxt "RID_SVXSTR_GALLERY_READONLY"
msgid "(read-only)"
msgstr ""
-#: cui/inc/strings.hrc:204
+#: cui/inc/strings.hrc:210
msgctxt "RID_SVXSTR_GALLERY_ALLFILES"
msgid "<All Files>"
msgstr ""
-#: cui/inc/strings.hrc:205
+#: cui/inc/strings.hrc:211
msgctxt "RID_SVXSTR_GALLERY_ID_EXISTS"
msgid "This ID already exists..."
msgstr ""
-#: cui/inc/strings.hrc:207
+#: cui/inc/strings.hrc:213
#, fuzzy
msgctxt "RID_MULTIPATH_DBL_ERR"
msgid "The path %1 already exists."
msgstr "D'Datei %1 gëtt et schon."
-#: cui/inc/strings.hrc:208
+#: cui/inc/strings.hrc:214
msgctxt "RID_SVXSTR_ARCHIVE_TITLE"
msgid "Select Archives"
msgstr ""
-#: cui/inc/strings.hrc:209
+#: cui/inc/strings.hrc:215
msgctxt "RID_SVXSTR_ARCHIVE_HEADLINE"
msgid "Archives"
msgstr "Archiven"
-#: cui/inc/strings.hrc:210
+#: cui/inc/strings.hrc:216
msgctxt "RID_SVXSTR_MULTIFILE_DBL_ERR"
msgid "The file %1 already exists."
msgstr "D'Datei %1 gëtt et schon."
-#: cui/inc/strings.hrc:211
+#: cui/inc/strings.hrc:217
msgctxt "RID_SVXSTR_ADD_IMAGE"
msgid "Add Image"
msgstr ""
-#: cui/inc/strings.hrc:213
+#: cui/inc/strings.hrc:219
msgctxt "RID_SVXSTR_ONE_PASSWORD_MISMATCH"
msgid "The confirmation password did not match the password. Set the password again by entering the same password in both boxes."
msgstr ""
-#: cui/inc/strings.hrc:214
+#: cui/inc/strings.hrc:220
msgctxt "RID_SVXSTR_TWO_PASSWORDS_MISMATCH"
msgid "The confirmation passwords did not match the original passwords. Set the passwords again."
msgstr ""
-#: cui/inc/strings.hrc:215
+#: cui/inc/strings.hrc:221
msgctxt "RID_SVXSTR_INVALID_STATE_FOR_OK_BUTTON"
msgid "Please enter a password to open or to modify, or check the open read-only option to continue."
msgstr ""
-#: cui/inc/strings.hrc:216
+#: cui/inc/strings.hrc:222
msgctxt "RID_SVXSTR_INVALID_STATE_FOR_OK_BUTTON_V2"
msgid "Set the password by entering the same password in both boxes."
msgstr ""
-#: cui/inc/strings.hrc:218
+#: cui/inc/strings.hrc:224
msgctxt "STR_AUTOLINK"
msgid "Automatic"
msgstr "Automatesch"
-#: cui/inc/strings.hrc:219
+#: cui/inc/strings.hrc:225
msgctxt "STR_MANUALLINK"
msgid "Manual"
msgstr "Manuell"
-#: cui/inc/strings.hrc:220
+#: cui/inc/strings.hrc:226
msgctxt "STR_BROKENLINK"
msgid "Not available"
msgstr ""
-#: cui/inc/strings.hrc:221
+#: cui/inc/strings.hrc:227
msgctxt "STR_CLOSELINKMSG"
msgid "Are you sure you want to remove the selected link?"
msgstr ""
-#: cui/inc/strings.hrc:222
+#: cui/inc/strings.hrc:228
msgctxt "STR_CLOSELINKMSG_MULTI"
msgid "Are you sure you want to remove the selected link?"
msgstr ""
-#: cui/inc/strings.hrc:223
+#: cui/inc/strings.hrc:229
msgctxt "STR_WAITINGLINK"
msgid "Waiting"
msgstr ""
-#: cui/inc/strings.hrc:225
+#: cui/inc/strings.hrc:231
msgctxt "RID_SVXSTR_SAVE_SCREENSHOT_AS"
msgid "Save Screenshot As..."
msgstr ""
#. $(ROW) can be a number or the caption of the row in quotes
-#: cui/inc/strings.hrc:228
+#: cui/inc/strings.hrc:234
msgctxt "RID_SVXSTR_DIAGRAM_ROW"
msgid "Data Series $(ROW)"
msgstr ""
-#: cui/inc/strings.hrc:230
+#: cui/inc/strings.hrc:236
msgctxt "RID_SVXSTR_DRIVER_NAME"
msgid "Driver name"
msgstr ""
-#: cui/inc/strings.hrc:231
+#: cui/inc/strings.hrc:237
msgctxt "RID_SVXSTR_POOLED_FLAG"
msgid "Pool"
msgstr ""
-#: cui/inc/strings.hrc:232
+#: cui/inc/strings.hrc:238
msgctxt "RID_SVXSTR_POOL_TIMEOUT"
msgid "Timeout"
msgstr ""
-#: cui/inc/strings.hrc:233
+#: cui/inc/strings.hrc:239
msgctxt "RID_SVXSTR_YES"
msgid "Yes"
msgstr "Jo"
-#: cui/inc/strings.hrc:234
+#: cui/inc/strings.hrc:240
msgctxt "RID_SVXSTR_NO"
msgid "No"
msgstr "Nee"
-#: cui/inc/strings.hrc:236
+#: cui/inc/strings.hrc:242
msgctxt "STR_LINKEDDOC_DOESNOTEXIST"
msgid ""
"The file\n"
@@ -1032,7 +1054,7 @@ msgid ""
"does not exist."
msgstr ""
-#: cui/inc/strings.hrc:237
+#: cui/inc/strings.hrc:243
msgctxt "STR_LINKEDDOC_NO_SYSTEM_FILE"
msgid ""
"The file\n"
@@ -1040,162 +1062,162 @@ msgid ""
"does not exist in the local file system."
msgstr ""
-#: cui/inc/strings.hrc:238
+#: cui/inc/strings.hrc:244
msgctxt "STR_NAME_CONFLICT"
msgid ""
"The name '$file$' is already used for another database.\n"
"Please choose a different name."
msgstr ""
-#: cui/inc/strings.hrc:239
+#: cui/inc/strings.hrc:245
msgctxt "RID_SVXSTR_QUERY_DELETE_CONFIRM"
msgid "Do you want to delete the entry?"
msgstr ""
-#: cui/inc/strings.hrc:241
+#: cui/inc/strings.hrc:247
msgctxt "RID_SVXSTR_DELQUERY"
msgid "Do you want to delete the following object?"
msgstr ""
-#: cui/inc/strings.hrc:242
+#: cui/inc/strings.hrc:248
msgctxt "RID_SVXSTR_DELQUERY_TITLE"
msgid "Confirm Deletion"
msgstr ""
-#: cui/inc/strings.hrc:243
+#: cui/inc/strings.hrc:249
msgctxt "RID_SVXSTR_DELFAILED"
msgid "The selected object could not be deleted."
msgstr ""
-#: cui/inc/strings.hrc:244
+#: cui/inc/strings.hrc:250
msgctxt "RID_SVXSTR_DELFAILED_TITLE"
msgid "Error Deleting Object"
msgstr ""
-#: cui/inc/strings.hrc:245
+#: cui/inc/strings.hrc:251
msgctxt "RID_SVXSTR_CREATEFAILED"
msgid "The object could not be created."
msgstr ""
-#: cui/inc/strings.hrc:246
+#: cui/inc/strings.hrc:252
msgctxt "RID_SVXSTR_CREATEFAILEDDUP"
msgid " Object with the same name already exists."
msgstr ""
-#: cui/inc/strings.hrc:247
+#: cui/inc/strings.hrc:253
msgctxt "RID_SVXSTR_CREATEFAILED_TITLE"
msgid "Error Creating Object"
msgstr ""
-#: cui/inc/strings.hrc:248
+#: cui/inc/strings.hrc:254
msgctxt "RID_SVXSTR_RENAMEFAILED"
msgid "The object could not be renamed."
msgstr ""
-#: cui/inc/strings.hrc:249
+#: cui/inc/strings.hrc:255
msgctxt "RID_SVXSTR_RENAMEFAILED_TITLE"
msgid "Error Renaming Object"
msgstr ""
-#: cui/inc/strings.hrc:250
+#: cui/inc/strings.hrc:256
#, fuzzy
msgctxt "RID_SVXSTR_ERROR_TITLE"
msgid "%PRODUCTNAME Error"
msgstr "%PRODUCTNAME Makroen"
-#: cui/inc/strings.hrc:251
+#: cui/inc/strings.hrc:257
#, c-format
msgctxt "RID_SVXSTR_ERROR_LANG_NOT_SUPPORTED"
msgid "The scripting language %LANGUAGENAME is not supported."
msgstr ""
-#: cui/inc/strings.hrc:252
+#: cui/inc/strings.hrc:258
#, c-format
msgctxt "RID_SVXSTR_ERROR_RUNNING"
msgid "An error occurred while running the %LANGUAGENAME script %SCRIPTNAME."
msgstr ""
-#: cui/inc/strings.hrc:253
+#: cui/inc/strings.hrc:259
#, c-format
msgctxt "RID_SVXSTR_EXCEPTION_RUNNING"
msgid "An exception occurred while running the %LANGUAGENAME script %SCRIPTNAME."
msgstr ""
-#: cui/inc/strings.hrc:254
+#: cui/inc/strings.hrc:260
msgctxt "RID_SVXSTR_ERROR_AT_LINE"
msgid "An error occurred while running the %LANGUAGENAME script %SCRIPTNAME at line: %LINENUMBER."
msgstr ""
-#: cui/inc/strings.hrc:255
+#: cui/inc/strings.hrc:261
msgctxt "RID_SVXSTR_EXCEPTION_AT_LINE"
msgid "An exception occurred while running the %LANGUAGENAME script %SCRIPTNAME at line: %LINENUMBER."
msgstr ""
-#: cui/inc/strings.hrc:256
+#: cui/inc/strings.hrc:262
#, c-format
msgctxt "RID_SVXSTR_FRAMEWORK_ERROR_RUNNING"
msgid "A Scripting Framework error occurred while running the %LANGUAGENAME script %SCRIPTNAME."
msgstr ""
-#: cui/inc/strings.hrc:257
+#: cui/inc/strings.hrc:263
msgctxt "RID_SVXSTR_ERROR_TYPE_LABEL"
msgid "Type:"
msgstr "Typ:"
-#: cui/inc/strings.hrc:258
+#: cui/inc/strings.hrc:264
msgctxt "RID_SVXSTR_ERROR_MESSAGE_LABEL"
msgid "Message:"
msgstr ""
-#: cui/inc/strings.hrc:260
+#: cui/inc/strings.hrc:266
msgctxt "RID_SVXSTR_TYPE"
msgid "Registered name"
msgstr ""
-#: cui/inc/strings.hrc:261
+#: cui/inc/strings.hrc:267
#, fuzzy
msgctxt "RID_SVXSTR_PATH"
msgid "Database file"
msgstr "Datebankfeld"
#. abbreviation for "[Load]"
-#: cui/inc/strings.hrc:264
+#: cui/inc/strings.hrc:270
msgctxt "RID_SVXSTR_HEADER1"
msgid "[L]"
msgstr ""
#. abbreviation for "[Save]"
-#: cui/inc/strings.hrc:266
+#: cui/inc/strings.hrc:272
msgctxt "RID_SVXSTR_HEADER2"
msgid "[S]"
msgstr ""
-#: cui/inc/strings.hrc:267
+#: cui/inc/strings.hrc:273
msgctxt "RID_SVXSTR_CHG_MATH"
msgid "MathType to %PRODUCTNAME Math or reverse"
msgstr ""
-#: cui/inc/strings.hrc:268
+#: cui/inc/strings.hrc:274
msgctxt "RID_SVXSTR_CHG_WRITER"
msgid "WinWord to %PRODUCTNAME Writer or reverse"
msgstr ""
-#: cui/inc/strings.hrc:269
+#: cui/inc/strings.hrc:275
msgctxt "RID_SVXSTR_CHG_CALC"
msgid "Excel to %PRODUCTNAME Calc or reverse"
msgstr ""
-#: cui/inc/strings.hrc:270
+#: cui/inc/strings.hrc:276
msgctxt "RID_SVXSTR_CHG_IMPRESS"
msgid "PowerPoint to %PRODUCTNAME Impress or reverse"
msgstr ""
-#: cui/inc/strings.hrc:271
+#: cui/inc/strings.hrc:277
msgctxt "RID_SVXSTR_CHG_SMARTART"
msgid "SmartArt to %PRODUCTNAME shapes or reverse"
msgstr ""
-#: cui/inc/strings.hrc:273
+#: cui/inc/strings.hrc:279
msgctxt "RID_SVXSTR_OPT_DOUBLE_DICTS"
msgid ""
"The specified name already exists.\n"
@@ -1214,137 +1236,137 @@ msgstr ""
#. For example, adding "Grammar By" word "fund" to the new user
#. word "crowdfund", the spell checker will recognize "crowdfund"
#. with suffixes of "fund": "crowdfunding", "crowdfund's" etc.
-#: cui/inc/strings.hrc:288
+#: cui/inc/strings.hrc:294
msgctxt "RID_SVXSTR_OPT_GRAMMAR_BY"
msgid "~Grammar By"
msgstr ""
-#: cui/inc/strings.hrc:289
+#: cui/inc/strings.hrc:295
#, fuzzy
msgctxt "STR_MODIFY"
msgid "~Replace"
msgstr "Ersetzen"
-#: cui/inc/strings.hrc:290
+#: cui/inc/strings.hrc:296
msgctxt "RID_SVXSTR_CONFIRM_SET_LANGUAGE"
msgid "Do you want to change the '%1' dictionary language?"
msgstr ""
-#: cui/inc/strings.hrc:292
+#: cui/inc/strings.hrc:298
msgctxt "RID_SVXSTR_COLOR_CONFIG_DELETE"
msgid "Do you really want to delete the color scheme?"
msgstr ""
-#: cui/inc/strings.hrc:293
+#: cui/inc/strings.hrc:299
msgctxt "RID_SVXSTR_COLOR_CONFIG_DELETE_TITLE"
msgid "Color Scheme Deletion"
msgstr ""
-#: cui/inc/strings.hrc:294
+#: cui/inc/strings.hrc:300
msgctxt "RID_SVXSTR_COLOR_CONFIG_SAVE1"
msgid "Save scheme"
msgstr ""
-#: cui/inc/strings.hrc:295
+#: cui/inc/strings.hrc:301
msgctxt "RID_SVXSTR_COLOR_CONFIG_SAVE2"
msgid "Name of color scheme"
msgstr ""
-#: cui/inc/strings.hrc:297
+#: cui/inc/strings.hrc:303
msgctxt "RID_SVXSTR_SPELL"
msgid "Spelling"
msgstr "Orthographie"
-#: cui/inc/strings.hrc:298
+#: cui/inc/strings.hrc:304
msgctxt "RID_SVXSTR_HYPH"
msgid "Hyphenation"
msgstr "Silbentrennung"
-#: cui/inc/strings.hrc:299
+#: cui/inc/strings.hrc:305
msgctxt "RID_SVXSTR_THES"
msgid "Thesaurus"
msgstr ""
-#: cui/inc/strings.hrc:300
+#: cui/inc/strings.hrc:306
msgctxt "RID_SVXSTR_GRAMMAR"
msgid "Grammar"
msgstr ""
-#: cui/inc/strings.hrc:301
+#: cui/inc/strings.hrc:307
msgctxt "RID_SVXSTR_CAPITAL_WORDS"
msgid "Check uppercase words"
msgstr ""
-#: cui/inc/strings.hrc:302
+#: cui/inc/strings.hrc:308
msgctxt "RID_SVXSTR_WORDS_WITH_DIGITS"
msgid "Check words with numbers "
msgstr ""
-#: cui/inc/strings.hrc:303
+#: cui/inc/strings.hrc:309
msgctxt "RID_SVXSTR_SPELL_SPECIAL"
msgid "Check special regions"
msgstr ""
-#: cui/inc/strings.hrc:304
+#: cui/inc/strings.hrc:310
msgctxt "RID_SVXSTR_SPELL_AUTO"
msgid "Check spelling as you type"
msgstr ""
-#: cui/inc/strings.hrc:305
+#: cui/inc/strings.hrc:311
msgctxt "RID_SVXSTR_GRAMMAR_AUTO"
msgid "Check grammar as you type"
msgstr ""
-#: cui/inc/strings.hrc:306
+#: cui/inc/strings.hrc:312
msgctxt "RID_SVXSTR_NUM_MIN_WORDLEN"
msgid "Minimal number of characters for hyphenation: "
msgstr ""
-#: cui/inc/strings.hrc:307
+#: cui/inc/strings.hrc:313
msgctxt "RID_SVXSTR_NUM_PRE_BREAK"
msgid "Characters before line break: "
msgstr ""
-#: cui/inc/strings.hrc:308
+#: cui/inc/strings.hrc:314
msgctxt "RID_SVXSTR_NUM_POST_BREAK"
msgid "Characters after line break: "
msgstr ""
-#: cui/inc/strings.hrc:309
+#: cui/inc/strings.hrc:315
msgctxt "RID_SVXSTR_HYPH_AUTO"
msgid "Hyphenate without inquiry"
msgstr ""
-#: cui/inc/strings.hrc:310
+#: cui/inc/strings.hrc:316
msgctxt "RID_SVXSTR_HYPH_SPECIAL"
msgid "Hyphenate special regions"
msgstr ""
-#: cui/inc/strings.hrc:312
+#: cui/inc/strings.hrc:318
msgctxt "RID_SVXSTR_JRE_NOT_RECOGNIZED"
msgid ""
"The folder you selected does not contain a Java runtime environment.\n"
"Please select a different folder."
msgstr ""
-#: cui/inc/strings.hrc:313
+#: cui/inc/strings.hrc:319
msgctxt "RID_SVXSTR_JRE_FAILED_VERSION"
msgid ""
"The Java runtime environment you selected is not the required version.\n"
"Please select a different folder."
msgstr ""
-#: cui/inc/strings.hrc:314
+#: cui/inc/strings.hrc:320
msgctxt "RID_SVXSTR_OPTIONS_RESTART"
msgid "Please restart %PRODUCTNAME now so the new or modified values can take effect."
msgstr ""
-#: cui/inc/strings.hrc:315
+#: cui/inc/strings.hrc:321
msgctxt "RID_SVXSTR_JAVA_START_PARAM"
msgid "Edit Parameter"
msgstr ""
-#: cui/inc/strings.hrc:317
+#: cui/inc/strings.hrc:323
msgctxt "RID_SVXSTR_OPT_PROXYPORTS"
msgid ""
"Invalid value!\n"
@@ -1352,343 +1374,343 @@ msgid ""
"The maximum value for a port number is 65535."
msgstr ""
-#: cui/inc/strings.hrc:319
+#: cui/inc/strings.hrc:325
msgctxt "RID_SVXSTR_DESC_GRADIENT"
msgid "Please enter a name for the gradient:"
msgstr ""
-#: cui/inc/strings.hrc:320
+#: cui/inc/strings.hrc:326
msgctxt "RID_SVXSTR_DESC_NEW_BITMAP"
msgid "Please enter a name for the bitmap:"
msgstr ""
-#: cui/inc/strings.hrc:321
+#: cui/inc/strings.hrc:327
msgctxt "RID_SVXSTR_DESC_EXT_BITMAP"
msgid "Please enter a name for the external bitmap:"
msgstr ""
-#: cui/inc/strings.hrc:322
+#: cui/inc/strings.hrc:328
msgctxt "RID_SVXSTR_DESC_NEW_PATTERN"
msgid "Please enter a name for the pattern:"
msgstr ""
-#: cui/inc/strings.hrc:323
+#: cui/inc/strings.hrc:329
msgctxt "RID_SVXSTR_DESC_LINESTYLE"
msgid "Please enter a name for the line style:"
msgstr ""
-#: cui/inc/strings.hrc:324
+#: cui/inc/strings.hrc:330
msgctxt "RID_SVXSTR_ASK_CHANGE_LINESTYLE"
msgid ""
"The line style was modified without saving. \n"
"Modify the selected line style or add a new line style."
msgstr ""
-#: cui/inc/strings.hrc:325
+#: cui/inc/strings.hrc:331
msgctxt "RID_SVXSTR_DESC_HATCH"
msgid "Please enter a name for the hatching:"
msgstr ""
-#: cui/inc/strings.hrc:326
+#: cui/inc/strings.hrc:332
msgctxt "RID_SVXSTR_CHANGE"
msgid "Modify"
msgstr "Veränneren"
-#: cui/inc/strings.hrc:327
+#: cui/inc/strings.hrc:333
#, fuzzy
msgctxt "RID_SVXSTR_ADD"
msgid "Add"
msgstr "~Bäifügen"
-#: cui/inc/strings.hrc:328
+#: cui/inc/strings.hrc:334
msgctxt "RID_SVXSTR_DESC_COLOR"
msgid "Please enter a name for the new color:"
msgstr ""
-#: cui/inc/strings.hrc:329
+#: cui/inc/strings.hrc:335
msgctxt "RID_SVXSTR_TABLE"
msgid "Table"
msgstr "Tabell"
-#: cui/inc/strings.hrc:330
+#: cui/inc/strings.hrc:336
msgctxt "RID_SVXSTR_DESC_LINEEND"
msgid "Please enter a name for the new arrowhead:"
msgstr ""
-#: cui/inc/strings.hrc:331
+#: cui/inc/strings.hrc:337
msgctxt "RID_SVXSTR_CHARNAME_NOSTYLE"
msgid "No %1"
msgstr ""
-#: cui/inc/strings.hrc:332
+#: cui/inc/strings.hrc:338
#, fuzzy
msgctxt "RID_SVXSTR_CHARNAME_FAMILY"
msgid "Family:"
msgstr "Tamil"
-#: cui/inc/strings.hrc:333
+#: cui/inc/strings.hrc:339
#, fuzzy
msgctxt "RID_SVXSTR_CHARNAME_FONT"
msgid "Font:"
msgstr "Schrëft"
-#: cui/inc/strings.hrc:334
+#: cui/inc/strings.hrc:340
msgctxt "RID_SVXSTR_CHARNAME_STYLE"
msgid "Style:"
msgstr ""
-#: cui/inc/strings.hrc:335
+#: cui/inc/strings.hrc:341
#, fuzzy
msgctxt "RID_SVXSTR_CHARNAME_TYPEFACE"
msgid "Typeface:"
msgstr "~Type"
-#: cui/inc/strings.hrc:336
+#: cui/inc/strings.hrc:342
msgctxt "RID_SVXSTR_CHARNAME_HIGHLIGHTING"
msgid "Highlight Color"
msgstr ""
-#: cui/inc/strings.hrc:337
+#: cui/inc/strings.hrc:343
msgctxt "RID_SVXSTR_USE_REPLACE"
msgid "Use replacement table"
msgstr ""
-#: cui/inc/strings.hrc:338
+#: cui/inc/strings.hrc:344
msgctxt "RID_SVXSTR_CPTL_STT_WORD"
msgid "Correct TWo INitial CApitals"
msgstr ""
-#: cui/inc/strings.hrc:339
+#: cui/inc/strings.hrc:345
msgctxt "RID_SVXSTR_CPTL_STT_SENT"
msgid "Capitalize first letter of every sentence"
msgstr ""
-#: cui/inc/strings.hrc:340
+#: cui/inc/strings.hrc:346
msgctxt "RID_SVXSTR_BOLD_UNDER"
msgid "Automatic *bold*, /italic/, -strikeout- and _underline_"
msgstr ""
-#: cui/inc/strings.hrc:341
+#: cui/inc/strings.hrc:347
msgctxt "RID_SVXSTR_NO_DBL_SPACES"
msgid "Ignore double spaces"
msgstr ""
-#: cui/inc/strings.hrc:342
+#: cui/inc/strings.hrc:348
msgctxt "RID_SVXSTR_DETECT_URL"
msgid "URL Recognition"
msgstr ""
-#: cui/inc/strings.hrc:343
+#: cui/inc/strings.hrc:349
msgctxt "RID_SVXSTR_DASH"
msgid "Replace dashes"
msgstr ""
-#: cui/inc/strings.hrc:344
+#: cui/inc/strings.hrc:350
msgctxt "RID_SVXSTR_CORRECT_ACCIDENTAL_CAPS_LOCK"
msgid "Correct accidental use of cAPS LOCK key"
msgstr ""
-#: cui/inc/strings.hrc:345
+#: cui/inc/strings.hrc:351
msgctxt "RID_SVXSTR_NON_BREAK_SPACE"
msgid "Add non-breaking space before specific punctuation marks in French text"
msgstr ""
-#: cui/inc/strings.hrc:346
+#: cui/inc/strings.hrc:352
msgctxt "RID_SVXSTR_ORDINAL"
msgid "Format ordinal numbers suffixes (1st -> 1^st)"
msgstr ""
-#: cui/inc/strings.hrc:347
+#: cui/inc/strings.hrc:353
msgctxt "RID_SVXSTR_DEL_EMPTY_PARA"
msgid "Remove blank paragraphs"
msgstr ""
-#: cui/inc/strings.hrc:348
+#: cui/inc/strings.hrc:354
msgctxt "RID_SVXSTR_USER_STYLE"
msgid "Replace Custom Styles"
msgstr ""
-#: cui/inc/strings.hrc:349
+#: cui/inc/strings.hrc:355
msgctxt "RID_SVXSTR_BULLET"
msgid "Replace bullets with: "
msgstr ""
-#: cui/inc/strings.hrc:350
+#: cui/inc/strings.hrc:356
msgctxt "RID_SVXSTR_RIGHT_MARGIN"
msgid "Combine single line paragraphs if length greater than"
msgstr ""
-#: cui/inc/strings.hrc:351
+#: cui/inc/strings.hrc:357
msgctxt "RID_SVXSTR_NUM"
msgid "Bulleted and numbered lists. Bullet symbol: "
msgstr ""
-#: cui/inc/strings.hrc:352
+#: cui/inc/strings.hrc:358
msgctxt "RID_SVXSTR_BORDER"
msgid "Apply border"
msgstr ""
-#: cui/inc/strings.hrc:353
+#: cui/inc/strings.hrc:359
msgctxt "RID_SVXSTR_CREATE_TABLE"
msgid "Create table"
msgstr ""
-#: cui/inc/strings.hrc:354
+#: cui/inc/strings.hrc:360
msgctxt "RID_SVXSTR_REPLACE_TEMPLATES"
msgid "Apply Styles"
msgstr "Virlagen applizéieren"
-#: cui/inc/strings.hrc:355
+#: cui/inc/strings.hrc:361
msgctxt "RID_SVXSTR_DEL_SPACES_AT_STT_END"
msgid "Delete spaces and tabs at beginning and end of paragraph"
msgstr ""
-#: cui/inc/strings.hrc:356
+#: cui/inc/strings.hrc:362
msgctxt "RID_SVXSTR_DEL_SPACES_BETWEEN_LINES"
msgid "Delete spaces and tabs at end and start of line"
msgstr ""
-#: cui/inc/strings.hrc:357
+#: cui/inc/strings.hrc:363
msgctxt "RID_SVXSTR_CONNECTOR"
msgid "Connector"
msgstr ""
-#: cui/inc/strings.hrc:358
+#: cui/inc/strings.hrc:364
msgctxt "RID_SVXSTR_DIMENSION_LINE"
msgid "Dimension line"
msgstr ""
-#: cui/inc/strings.hrc:359
+#: cui/inc/strings.hrc:365
msgctxt "RID_SVXSTR_LOAD_ERROR"
msgid "The selected module could not be loaded."
msgstr ""
-#: cui/inc/strings.hrc:360
+#: cui/inc/strings.hrc:366
msgctxt "RID_SVXSTR_STARTQUOTE"
msgid "Start Quote"
msgstr ""
-#: cui/inc/strings.hrc:361
+#: cui/inc/strings.hrc:367
msgctxt "RID_SVXSTR_ENDQUOTE"
msgid "End Quote"
msgstr ""
-#: cui/inc/strings.hrc:363
+#: cui/inc/strings.hrc:369
msgctxt "RID_SVXSTR_SELECTEDPERSONA"
msgid "Selected Theme: "
msgstr ""
-#: cui/inc/strings.hrc:364
+#: cui/inc/strings.hrc:370
msgctxt "RID_SVXSTR_SEARCHING"
msgid "Searching, please wait..."
msgstr ""
-#: cui/inc/strings.hrc:365
+#: cui/inc/strings.hrc:371
msgctxt "RID_SVXSTR_SEARCHERROR"
msgid "Cannot open %1, please try again later."
msgstr ""
-#: cui/inc/strings.hrc:366
+#: cui/inc/strings.hrc:372
msgctxt "RID_SVXSTR_NORESULTS"
msgid "No results found."
msgstr ""
-#: cui/inc/strings.hrc:367
+#: cui/inc/strings.hrc:373
msgctxt "RID_SVXSTR_APPLYPERSONA"
msgid "Applying Theme..."
msgstr ""
-#: cui/inc/strings.hrc:369
+#: cui/inc/strings.hrc:375
msgctxt "RID_SVXSTR_TABLE_PRESET_NONE"
msgid "Set No Borders"
msgstr ""
-#: cui/inc/strings.hrc:370
+#: cui/inc/strings.hrc:376
msgctxt "RID_SVXSTR_TABLE_PRESET_ONLYOUTER"
msgid "Set Outer Border Only"
msgstr ""
-#: cui/inc/strings.hrc:371
+#: cui/inc/strings.hrc:377
msgctxt "RID_SVXSTR_TABLE_PRESET_OUTERHORI"
msgid "Set Outer Border and Horizontal Lines"
msgstr ""
-#: cui/inc/strings.hrc:372
+#: cui/inc/strings.hrc:378
msgctxt "RID_SVXSTR_TABLE_PRESET_OUTERALL"
msgid "Set Outer Border and All Inner Lines"
msgstr ""
-#: cui/inc/strings.hrc:373
+#: cui/inc/strings.hrc:379
msgctxt "RID_SVXSTR_TABLE_PRESET_OUTERINNER"
msgid "Set Outer Border Without Changing Inner Lines"
msgstr ""
-#: cui/inc/strings.hrc:374
+#: cui/inc/strings.hrc:380
msgctxt "RID_SVXSTR_PARA_PRESET_DIAGONAL"
msgid "Set Diagonal Lines Only"
msgstr ""
-#: cui/inc/strings.hrc:375
+#: cui/inc/strings.hrc:381
msgctxt "RID_SVXSTR_PARA_PRESET_ALL"
msgid "Set All Four Borders"
msgstr ""
-#: cui/inc/strings.hrc:376
+#: cui/inc/strings.hrc:382
msgctxt "RID_SVXSTR_PARA_PRESET_LEFTRIGHT"
msgid "Set Left and Right Borders Only"
msgstr ""
-#: cui/inc/strings.hrc:377
+#: cui/inc/strings.hrc:383
msgctxt "RID_SVXSTR_PARA_PRESET_TOPBOTTOM"
msgid "Set Top and Bottom Borders Only"
msgstr ""
-#: cui/inc/strings.hrc:378
+#: cui/inc/strings.hrc:384
msgctxt "RID_SVXSTR_PARA_PRESET_ONLYLEFT"
msgid "Set Left Border Only"
msgstr ""
-#: cui/inc/strings.hrc:379
+#: cui/inc/strings.hrc:385
msgctxt "RID_SVXSTR_HOR_PRESET_ONLYHOR"
msgid "Set Top and Bottom Borders, and All Inner Lines"
msgstr ""
-#: cui/inc/strings.hrc:380
+#: cui/inc/strings.hrc:386
msgctxt "RID_SVXSTR_VER_PRESET_ONLYVER"
msgid "Set Left and Right Borders, and All Inner Lines"
msgstr ""
-#: cui/inc/strings.hrc:381
+#: cui/inc/strings.hrc:387
msgctxt "RID_SVXSTR_SHADOW_STYLE_NONE"
msgid "No Shadow"
msgstr "Kee Schiet"
-#: cui/inc/strings.hrc:382
+#: cui/inc/strings.hrc:388
msgctxt "RID_SVXSTR_SHADOW_STYLE_BOTTOMRIGHT"
msgid "Cast Shadow to Bottom Right"
msgstr ""
-#: cui/inc/strings.hrc:383
+#: cui/inc/strings.hrc:389
msgctxt "RID_SVXSTR_SHADOW_STYLE_TOPRIGHT"
msgid "Cast Shadow to Top Right"
msgstr ""
-#: cui/inc/strings.hrc:384
+#: cui/inc/strings.hrc:390
msgctxt "RID_SVXSTR_SHADOW_STYLE_BOTTOMLEFT"
msgid "Cast Shadow to Bottom Left"
msgstr ""
-#: cui/inc/strings.hrc:385
+#: cui/inc/strings.hrc:391
msgctxt "RID_SVXSTR_SHADOW_STYLE_TOPLEFT"
msgid "Cast Shadow to Top Left"
msgstr ""
-#: cui/inc/strings.hrc:386
+#: cui/inc/strings.hrc:392
msgctxt "RID_SVXSTR_SIGNATURELINE_SIGNED_BY"
msgid "Signed by: %1"
msgstr ""
-#: cui/inc/strings.hrc:387
+#: cui/inc/strings.hrc:393
msgctxt "RID_SVXSTR_OPENCL_RESTART"
msgid "For the OpenCL changes to take effect, %PRODUCTNAME must be restarted."
msgstr ""
@@ -2376,12 +2398,12 @@ msgctxt "agingdialog|AgingDialog"
msgid "Aging"
msgstr ""
-#: cui/uiconfig/ui/agingdialog.ui:137
+#: cui/uiconfig/ui/agingdialog.ui:159
msgctxt "agingdialog|label2"
msgid "Aging degree:"
msgstr ""
-#: cui/uiconfig/ui/agingdialog.ui:160
+#: cui/uiconfig/ui/agingdialog.ui:183
msgctxt "agingdialog|label1"
msgid "Parameters"
msgstr ""
@@ -2531,63 +2553,63 @@ msgctxt "areadialog|AreaDialog"
msgid "Area"
msgstr ""
-#: cui/uiconfig/ui/areadialog.ui:106
+#: cui/uiconfig/ui/areadialog.ui:137
msgctxt "areadialog|RID_SVXPAGE_AREA"
msgid "Area"
msgstr ""
-#: cui/uiconfig/ui/areadialog.ui:128
+#: cui/uiconfig/ui/areadialog.ui:183
#, fuzzy
msgctxt "areadialog|RID_SVXPAGE_SHADOW"
msgid "Shadow"
msgstr "Schattéiert"
-#: cui/uiconfig/ui/areadialog.ui:151
+#: cui/uiconfig/ui/areadialog.ui:230
msgctxt "areadialog|RID_SVXPAGE_TRANSPARENCE"
msgid "Transparency"
msgstr "Transparenz"
-#: cui/uiconfig/ui/areatabpage.ui:32
+#: cui/uiconfig/ui/areatabpage.ui:33
msgctxt "areatabpage|tablelb"
msgid "Cell"
msgstr ""
-#: cui/uiconfig/ui/areatabpage.ui:33
+#: cui/uiconfig/ui/areatabpage.ui:34
msgctxt "areatabpage|tablelb"
msgid "Row"
msgstr ""
-#: cui/uiconfig/ui/areatabpage.ui:34
+#: cui/uiconfig/ui/areatabpage.ui:35
msgctxt "areatabpage|tablelb"
msgid "Table"
msgstr ""
-#: cui/uiconfig/ui/areatabpage.ui:45
+#: cui/uiconfig/ui/areatabpage.ui:46
msgctxt "areatabpage|btnnone"
msgid "None"
msgstr "Keen"
-#: cui/uiconfig/ui/areatabpage.ui:58
+#: cui/uiconfig/ui/areatabpage.ui:59
msgctxt "areatabpage|btncolor"
msgid "Color"
msgstr "Faarf"
-#: cui/uiconfig/ui/areatabpage.ui:71
+#: cui/uiconfig/ui/areatabpage.ui:72
msgctxt "areatabpage|btngradient"
msgid "Gradient"
msgstr ""
-#: cui/uiconfig/ui/areatabpage.ui:84
+#: cui/uiconfig/ui/areatabpage.ui:85
msgctxt "areatabpage|btnbitmap"
msgid "Bitmap"
msgstr "Bitmap"
-#: cui/uiconfig/ui/areatabpage.ui:97
+#: cui/uiconfig/ui/areatabpage.ui:98
msgctxt "areatabpage|btnpattern"
msgid "Pattern"
msgstr ""
-#: cui/uiconfig/ui/areatabpage.ui:110
+#: cui/uiconfig/ui/areatabpage.ui:111
msgctxt "areatabpage|btnhatch"
msgid "Hatch"
msgstr ""
@@ -2634,133 +2656,133 @@ msgctxt "autocorrectdialog|label1"
msgid "Replacements and exceptions for language:"
msgstr ""
-#: cui/uiconfig/ui/autocorrectdialog.ui:149
+#: cui/uiconfig/ui/autocorrectdialog.ui:151
msgctxt "autocorrectdialog|replace"
msgid "Replace"
msgstr "Ersetzen"
-#: cui/uiconfig/ui/autocorrectdialog.ui:171
+#: cui/uiconfig/ui/autocorrectdialog.ui:173
msgctxt "autocorrectdialog|exceptions"
msgid "Exceptions"
msgstr ""
-#: cui/uiconfig/ui/autocorrectdialog.ui:194
+#: cui/uiconfig/ui/autocorrectdialog.ui:196
msgctxt "autocorrectdialog|options"
msgid "Options"
msgstr "Optiounen"
-#: cui/uiconfig/ui/autocorrectdialog.ui:217
+#: cui/uiconfig/ui/autocorrectdialog.ui:219
msgctxt "autocorrectdialog|apply"
msgid "Options"
msgstr "Optiounen"
-#: cui/uiconfig/ui/autocorrectdialog.ui:240
+#: cui/uiconfig/ui/autocorrectdialog.ui:242
msgctxt "autocorrectdialog|localized"
msgid "Localized Options"
msgstr ""
-#: cui/uiconfig/ui/autocorrectdialog.ui:263
+#: cui/uiconfig/ui/autocorrectdialog.ui:265
msgctxt "autocorrectdialog|wordcompletion"
msgid "Word Completion"
msgstr ""
-#: cui/uiconfig/ui/autocorrectdialog.ui:286
+#: cui/uiconfig/ui/autocorrectdialog.ui:288
msgctxt "autocorrectdialog|smarttags"
msgid "Smart Tags"
msgstr ""
-#: cui/uiconfig/ui/backgroundpage.ui:20
+#: cui/uiconfig/ui/backgroundpage.ui:21
+msgctxt "backgroundpage|asft"
+msgid "A_s:"
+msgstr ""
+
+#: cui/uiconfig/ui/backgroundpage.ui:36
msgctxt "backgroundpage|liststore1"
msgid "Color"
msgstr "Faarf"
-#: cui/uiconfig/ui/backgroundpage.ui:24
+#: cui/uiconfig/ui/backgroundpage.ui:37
msgctxt "backgroundpage|liststore1"
msgid "Image"
msgstr "Bild"
-#: cui/uiconfig/ui/backgroundpage.ui:45
-msgctxt "backgroundpage|asft"
-msgid "A_s:"
-msgstr ""
-
-#: cui/uiconfig/ui/backgroundpage.ui:71
+#: cui/uiconfig/ui/backgroundpage.ui:49
msgctxt "backgroundpage|forft"
msgid "F_or:"
msgstr ""
-#: cui/uiconfig/ui/backgroundpage.ui:91
+#: cui/uiconfig/ui/backgroundpage.ui:69
#, fuzzy
msgctxt "backgroundpage|tablelb"
msgid "Cell"
msgstr "Zellen"
-#: cui/uiconfig/ui/backgroundpage.ui:92
+#: cui/uiconfig/ui/backgroundpage.ui:70
msgctxt "backgroundpage|tablelb"
msgid "Row"
msgstr "Zeil"
-#: cui/uiconfig/ui/backgroundpage.ui:93
+#: cui/uiconfig/ui/backgroundpage.ui:71
msgctxt "backgroundpage|tablelb"
msgid "Table"
msgstr "Tabell"
-#: cui/uiconfig/ui/backgroundpage.ui:214
+#: cui/uiconfig/ui/backgroundpage.ui:227
#, fuzzy
msgctxt "backgroundpage|background_label"
msgid "Background Color"
msgstr "Hannergrondfaarf..."
-#: cui/uiconfig/ui/backgroundpage.ui:276
+#: cui/uiconfig/ui/backgroundpage.ui:289
msgctxt "backgroundpage|unlinkedft"
msgid "Unlinked image"
msgstr ""
-#: cui/uiconfig/ui/backgroundpage.ui:288
+#: cui/uiconfig/ui/backgroundpage.ui:301
msgctxt "backgroundpage|findgraphicsft"
msgid "Find images"
msgstr ""
-#: cui/uiconfig/ui/backgroundpage.ui:304
+#: cui/uiconfig/ui/backgroundpage.ui:317
#, fuzzy
msgctxt "backgroundpage|browse"
msgid "_Browse..."
msgstr "Duerchsichen..."
-#: cui/uiconfig/ui/backgroundpage.ui:317
+#: cui/uiconfig/ui/backgroundpage.ui:330
msgctxt "backgroundpage|link"
msgid "_Link"
msgstr ""
-#: cui/uiconfig/ui/backgroundpage.ui:345
+#: cui/uiconfig/ui/backgroundpage.ui:358
msgctxt "backgroundpage|label2"
msgid "File"
msgstr "Datei"
-#: cui/uiconfig/ui/backgroundpage.ui:403
+#: cui/uiconfig/ui/backgroundpage.ui:434
#, fuzzy
msgctxt "backgroundpage|positionrb"
msgid "_Position"
msgstr "Positioun"
-#: cui/uiconfig/ui/backgroundpage.ui:423
+#: cui/uiconfig/ui/backgroundpage.ui:453
msgctxt "backgroundpage|arearb"
msgid "Ar_ea"
msgstr ""
-#: cui/uiconfig/ui/backgroundpage.ui:439
+#: cui/uiconfig/ui/backgroundpage.ui:469
#, fuzzy
msgctxt "backgroundpage|tilerb"
msgid "_Tile"
msgstr "Titel"
-#: cui/uiconfig/ui/backgroundpage.ui:467
+#: cui/uiconfig/ui/backgroundpage.ui:497
#, fuzzy
msgctxt "backgroundpage|label8"
msgid "Type"
msgstr "Typ:"
-#: cui/uiconfig/ui/backgroundpage.ui:506
+#: cui/uiconfig/ui/backgroundpage.ui:553
#, fuzzy
msgctxt "backgroundpage|showpreview"
msgid "Pre_view"
@@ -2847,156 +2869,156 @@ msgctxt "baselinksdialog|MANUAL"
msgid "Ma_nual"
msgstr "Manuell"
-#: cui/uiconfig/ui/bitmaptabpage.ui:46
+#: cui/uiconfig/ui/bitmaptabpage.ui:66
msgctxt "bitmaptabpage|BTN_IMPORT"
msgid "Add / Import"
msgstr ""
-#: cui/uiconfig/ui/bitmaptabpage.ui:65
+#: cui/uiconfig/ui/bitmaptabpage.ui:85
msgctxt "bitmaptabpage|label1"
msgid "Bitmap"
msgstr "Bitmap"
-#: cui/uiconfig/ui/bitmaptabpage.ui:110
+#: cui/uiconfig/ui/bitmaptabpage.ui:133
msgctxt "bitmaptabpage|label3"
msgid "Style:"
msgstr ""
-#: cui/uiconfig/ui/bitmaptabpage.ui:126
+#: cui/uiconfig/ui/bitmaptabpage.ui:149
msgctxt "bitmaptabpage|bitmapstyle"
msgid "Custom position/size"
msgstr ""
-#: cui/uiconfig/ui/bitmaptabpage.ui:127
+#: cui/uiconfig/ui/bitmaptabpage.ui:150
msgctxt "bitmaptabpage|bitmapstyle"
msgid "Tiled"
msgstr ""
-#: cui/uiconfig/ui/bitmaptabpage.ui:128
+#: cui/uiconfig/ui/bitmaptabpage.ui:151
msgctxt "bitmaptabpage|bitmapstyle"
msgid "Stretched"
msgstr ""
-#: cui/uiconfig/ui/bitmaptabpage.ui:154
+#: cui/uiconfig/ui/bitmaptabpage.ui:177
#, fuzzy
msgctxt "bitmaptabpage|label4"
msgid "Size:"
msgstr "Gréisst"
-#: cui/uiconfig/ui/bitmaptabpage.ui:172
+#: cui/uiconfig/ui/bitmaptabpage.ui:195
#, fuzzy
msgctxt "bitmaptabpage|label5"
msgid "Width:"
msgstr "Breet"
-#: cui/uiconfig/ui/bitmaptabpage.ui:198
+#: cui/uiconfig/ui/bitmaptabpage.ui:226
+msgctxt "bitmaptabpage|scaletsb"
+msgid "Scale"
+msgstr ""
+
+#: cui/uiconfig/ui/bitmaptabpage.ui:249
#, fuzzy
msgctxt "bitmaptabpage|label6"
msgid "Height:"
msgstr "Héicht"
-#: cui/uiconfig/ui/bitmaptabpage.ui:229
-msgctxt "bitmaptabpage|scaletsb"
-msgid "Scale"
-msgstr ""
-
-#: cui/uiconfig/ui/bitmaptabpage.ui:260
+#: cui/uiconfig/ui/bitmaptabpage.ui:295
#, fuzzy
msgctxt "bitmaptabpage|label7"
msgid "Position:"
msgstr "Positioun"
-#: cui/uiconfig/ui/bitmaptabpage.ui:276
+#: cui/uiconfig/ui/bitmaptabpage.ui:311
#, fuzzy
msgctxt "bitmaptabpage|positionlb"
msgid "Top Left"
msgstr "Uewe lénks"
-#: cui/uiconfig/ui/bitmaptabpage.ui:277
+#: cui/uiconfig/ui/bitmaptabpage.ui:312
msgctxt "bitmaptabpage|positionlb"
msgid "Top Center"
msgstr ""
-#: cui/uiconfig/ui/bitmaptabpage.ui:278
+#: cui/uiconfig/ui/bitmaptabpage.ui:313
#, fuzzy
msgctxt "bitmaptabpage|positionlb"
msgid "Top Right"
msgstr "Uewe riets"
-#: cui/uiconfig/ui/bitmaptabpage.ui:279
+#: cui/uiconfig/ui/bitmaptabpage.ui:314
msgctxt "bitmaptabpage|positionlb"
msgid "Center Left"
msgstr ""
-#: cui/uiconfig/ui/bitmaptabpage.ui:280
+#: cui/uiconfig/ui/bitmaptabpage.ui:315
msgctxt "bitmaptabpage|positionlb"
msgid "Center"
msgstr "Mëtt"
-#: cui/uiconfig/ui/bitmaptabpage.ui:281
+#: cui/uiconfig/ui/bitmaptabpage.ui:316
msgctxt "bitmaptabpage|positionlb"
msgid "Center Right"
msgstr ""
-#: cui/uiconfig/ui/bitmaptabpage.ui:282
+#: cui/uiconfig/ui/bitmaptabpage.ui:317
#, fuzzy
msgctxt "bitmaptabpage|positionlb"
msgid "Bottom Left"
msgstr "Ënne lénks"
-#: cui/uiconfig/ui/bitmaptabpage.ui:283
+#: cui/uiconfig/ui/bitmaptabpage.ui:318
msgctxt "bitmaptabpage|positionlb"
msgid "Bottom Center"
msgstr ""
-#: cui/uiconfig/ui/bitmaptabpage.ui:284
+#: cui/uiconfig/ui/bitmaptabpage.ui:319
#, fuzzy
msgctxt "bitmaptabpage|positionlb"
msgid "Bottom Right"
msgstr "Ënne riets"
-#: cui/uiconfig/ui/bitmaptabpage.ui:310
+#: cui/uiconfig/ui/bitmaptabpage.ui:345
msgctxt "bitmaptabpage|label9"
msgid "Tiling Position:"
msgstr ""
-#: cui/uiconfig/ui/bitmaptabpage.ui:329
+#: cui/uiconfig/ui/bitmaptabpage.ui:364
msgctxt "bitmaptabpage|label10"
msgid "X-Offset:"
msgstr ""
-#: cui/uiconfig/ui/bitmaptabpage.ui:354
+#: cui/uiconfig/ui/bitmaptabpage.ui:402
msgctxt "bitmaptabpage|label11"
msgid "Y-Offset:"
msgstr ""
-#: cui/uiconfig/ui/bitmaptabpage.ui:399
+#: cui/uiconfig/ui/bitmaptabpage.ui:447
msgctxt "bitmaptabpage|label15"
msgid "Tiling Offset:"
msgstr ""
-#: cui/uiconfig/ui/bitmaptabpage.ui:421
+#: cui/uiconfig/ui/bitmaptabpage.ui:470
msgctxt "bitmaptabpage|tileofflb"
msgid "Row"
msgstr "Zeil"
-#: cui/uiconfig/ui/bitmaptabpage.ui:422
+#: cui/uiconfig/ui/bitmaptabpage.ui:471
#, fuzzy
msgctxt "bitmaptabpage|tileofflb"
msgid "Column"
msgstr "~Kolonnen "
-#: cui/uiconfig/ui/bitmaptabpage.ui:465
+#: cui/uiconfig/ui/bitmaptabpage.ui:515
msgctxt "bitmaptabpage|label2"
msgid "Options"
msgstr "Optiounen"
-#: cui/uiconfig/ui/bitmaptabpage.ui:508
+#: cui/uiconfig/ui/bitmaptabpage.ui:564
msgctxt "bitmaptabpage|CTL_BITMAP_PREVIEW-atkobject"
msgid "Example"
msgstr "Beispill"
-#: cui/uiconfig/ui/bitmaptabpage.ui:526
+#: cui/uiconfig/ui/bitmaptabpage.ui:586
msgctxt "bitmaptabpage|label8"
msgid "Preview"
msgstr "Iwwersiicht"
@@ -3062,17 +3084,17 @@ msgctxt "borderareatransparencydialog|BorderAreaTransparencyDialog"
msgid "Border / Background"
msgstr ""
-#: cui/uiconfig/ui/borderareatransparencydialog.ui:106
+#: cui/uiconfig/ui/borderareatransparencydialog.ui:108
msgctxt "borderareatransparencydialog|borders"
msgid "Borders"
msgstr "Konturen"
-#: cui/uiconfig/ui/borderareatransparencydialog.ui:128
+#: cui/uiconfig/ui/borderareatransparencydialog.ui:130
msgctxt "borderareatransparencydialog|area"
msgid "Area"
msgstr ""
-#: cui/uiconfig/ui/borderareatransparencydialog.ui:151
+#: cui/uiconfig/ui/borderareatransparencydialog.ui:153
msgctxt "borderareatransparencydialog|transparence"
msgid "Transparency"
msgstr "Transparenz"
@@ -3082,128 +3104,128 @@ msgctxt "borderbackgrounddialog|BorderBackgroundDialog"
msgid "Border / Background"
msgstr ""
-#: cui/uiconfig/ui/borderbackgrounddialog.ui:106
+#: cui/uiconfig/ui/borderbackgrounddialog.ui:108
msgctxt "borderbackgrounddialog|borders"
msgid "Borders"
msgstr "Konturen"
-#: cui/uiconfig/ui/borderbackgrounddialog.ui:128
+#: cui/uiconfig/ui/borderbackgrounddialog.ui:130
msgctxt "borderbackgrounddialog|background"
msgid "Background"
msgstr "Hannergrond"
-#: cui/uiconfig/ui/borderpage.ui:71
+#: cui/uiconfig/ui/borderpage.ui:101
#, fuzzy
msgctxt "borderpage|userdefft"
msgid "_User-defined:"
msgstr "Benotzer-definéiert1"
-#: cui/uiconfig/ui/borderpage.ui:85
+#: cui/uiconfig/ui/borderpage.ui:115
msgctxt "borderpage|label14"
msgid "Pr_esets:"
msgstr ""
-#: cui/uiconfig/ui/borderpage.ui:110
+#: cui/uiconfig/ui/borderpage.ui:156
msgctxt "borderpage|rmadjcellbordersft"
msgid "_Adjacent Cells:"
msgstr ""
-#: cui/uiconfig/ui/borderpage.ui:121
+#: cui/uiconfig/ui/borderpage.ui:168
msgctxt "borderpage|rmadjcellborders"
msgid "Remove border"
msgstr ""
-#: cui/uiconfig/ui/borderpage.ui:142
+#: cui/uiconfig/ui/borderpage.ui:189
msgctxt "borderpage|label8"
msgid "Line Arrangement"
msgstr ""
-#: cui/uiconfig/ui/borderpage.ui:176
+#: cui/uiconfig/ui/borderpage.ui:222
msgctxt "borderpage|label15"
msgid "St_yle:"
msgstr ""
-#: cui/uiconfig/ui/borderpage.ui:190
+#: cui/uiconfig/ui/borderpage.ui:236
#, fuzzy
msgctxt "borderpage|label16"
msgid "_Width:"
msgstr "Breet"
-#: cui/uiconfig/ui/borderpage.ui:204
+#: cui/uiconfig/ui/borderpage.ui:250
msgctxt "borderpage|label17"
msgid "_Color:"
msgstr ""
-#: cui/uiconfig/ui/borderpage.ui:253
+#: cui/uiconfig/ui/borderpage.ui:312
msgctxt "borderpage|label9"
msgid "Line"
msgstr "Zeil "
-#: cui/uiconfig/ui/borderpage.ui:336
+#: cui/uiconfig/ui/borderpage.ui:398
msgctxt "borderpage|leftft"
msgid "_Left:"
msgstr ""
-#: cui/uiconfig/ui/borderpage.ui:350
+#: cui/uiconfig/ui/borderpage.ui:412
#, fuzzy
msgctxt "borderpage|rightft"
msgid "Right:"
msgstr "Héicht"
-#: cui/uiconfig/ui/borderpage.ui:364
+#: cui/uiconfig/ui/borderpage.ui:426
msgctxt "borderpage|topft"
msgid "_Top:"
msgstr ""
-#: cui/uiconfig/ui/borderpage.ui:378
+#: cui/uiconfig/ui/borderpage.ui:440
#, fuzzy
msgctxt "borderpage|bottomft"
msgid "_Bottom:"
msgstr "Ënnen"
-#: cui/uiconfig/ui/borderpage.ui:389
+#: cui/uiconfig/ui/borderpage.ui:452
msgctxt "borderpage|sync"
msgid "Synchronize"
msgstr ""
-#: cui/uiconfig/ui/borderpage.ui:411
+#: cui/uiconfig/ui/borderpage.ui:474
msgctxt "borderpage|label10"
msgid "Padding"
msgstr ""
-#: cui/uiconfig/ui/borderpage.ui:454
+#: cui/uiconfig/ui/borderpage.ui:516
#, fuzzy
msgctxt "borderpage|label22"
msgid "_Position:"
msgstr "Positioun"
-#: cui/uiconfig/ui/borderpage.ui:468
+#: cui/uiconfig/ui/borderpage.ui:530
msgctxt "borderpage|distanceft"
msgid "Distan_ce:"
msgstr ""
-#: cui/uiconfig/ui/borderpage.ui:482
+#: cui/uiconfig/ui/borderpage.ui:544
msgctxt "borderpage|shadowcolorft"
msgid "C_olor:"
msgstr ""
-#: cui/uiconfig/ui/borderpage.ui:533
+#: cui/uiconfig/ui/borderpage.ui:617
msgctxt "borderpage|label11"
msgid "Shadow Style"
msgstr ""
-#: cui/uiconfig/ui/borderpage.ui:566
+#: cui/uiconfig/ui/borderpage.ui:650
#, fuzzy
msgctxt "borderpage|mergewithnext"
msgid "_Merge with next paragraph"
msgstr "Paragraphen zesummenhalen"
-#: cui/uiconfig/ui/borderpage.ui:581
+#: cui/uiconfig/ui/borderpage.ui:665
msgctxt "borderpage|mergeadjacent"
msgid "_Merge adjacent line styles"
msgstr ""
-#: cui/uiconfig/ui/borderpage.ui:602
+#: cui/uiconfig/ui/borderpage.ui:686
msgctxt "borderpage|label12"
msgid "Properties"
msgstr "Eegeschaften"
@@ -3233,284 +3255,284 @@ msgctxt "calloutdialog|CalloutDialog"
msgid "Position and Size"
msgstr ""
-#: cui/uiconfig/ui/calloutdialog.ui:106
+#: cui/uiconfig/ui/calloutdialog.ui:135
msgctxt "calloutdialog|RID_SVXPAGE_POSITION_SIZE"
msgid "Position and Size"
msgstr ""
-#: cui/uiconfig/ui/calloutdialog.ui:128
+#: cui/uiconfig/ui/calloutdialog.ui:181
msgctxt "calloutdialog|RID_SVXPAGE_SWPOSSIZE"
msgid "Position and Size"
msgstr ""
-#: cui/uiconfig/ui/calloutdialog.ui:151
+#: cui/uiconfig/ui/calloutdialog.ui:228
msgctxt "calloutdialog|RID_SVXPAGE_CAPTION"
msgid "Callout"
msgstr ""
-#: cui/uiconfig/ui/calloutpage.ui:20
+#: cui/uiconfig/ui/calloutpage.ui:59
+#, fuzzy
+msgctxt "calloutpage|label2"
+msgid "_Extension:"
+msgstr "Erweiderung"
+
+#: cui/uiconfig/ui/calloutpage.ui:74
msgctxt "calloutpage|liststore1"
msgid "Optimal"
msgstr ""
-#: cui/uiconfig/ui/calloutpage.ui:24
+#: cui/uiconfig/ui/calloutpage.ui:75
#, fuzzy
msgctxt "calloutpage|liststore1"
msgid "From top"
msgstr "Vun uewen "
-#: cui/uiconfig/ui/calloutpage.ui:28
+#: cui/uiconfig/ui/calloutpage.ui:76
msgctxt "calloutpage|liststore1"
msgid "From left"
msgstr ""
-#: cui/uiconfig/ui/calloutpage.ui:32
+#: cui/uiconfig/ui/calloutpage.ui:77
msgctxt "calloutpage|liststore1"
msgid "Horizontal"
msgstr "Horizontal"
-#: cui/uiconfig/ui/calloutpage.ui:36
+#: cui/uiconfig/ui/calloutpage.ui:78
#, fuzzy
msgctxt "calloutpage|liststore1"
msgid "Vertical"
msgstr "~Vertikal"
-#: cui/uiconfig/ui/calloutpage.ui:74
-#, fuzzy
-msgctxt "calloutpage|label2"
-msgid "_Extension:"
-msgstr "Erweiderung"
-
-#: cui/uiconfig/ui/calloutpage.ui:123
+#: cui/uiconfig/ui/calloutpage.ui:115
msgctxt "calloutpage|lengthft"
msgid "_Length:"
msgstr ""
-#: cui/uiconfig/ui/calloutpage.ui:140
+#: cui/uiconfig/ui/calloutpage.ui:133
msgctxt "calloutpage|optimal"
msgid "_Optimal"
msgstr ""
-#: cui/uiconfig/ui/calloutpage.ui:164
+#: cui/uiconfig/ui/calloutpage.ui:156
#, fuzzy
msgctxt "calloutpage|positionft"
msgid "_Position:"
msgstr "Positioun"
-#: cui/uiconfig/ui/calloutpage.ui:178
+#: cui/uiconfig/ui/calloutpage.ui:170
msgctxt "calloutpage|byft"
msgid "_By:"
msgstr ""
-#: cui/uiconfig/ui/calloutpage.ui:192
+#: cui/uiconfig/ui/calloutpage.ui:185
msgctxt "calloutpage|position"
msgid "Top"
msgstr "Uewen"
-#: cui/uiconfig/ui/calloutpage.ui:193
+#: cui/uiconfig/ui/calloutpage.ui:186
msgctxt "calloutpage|position"
msgid "Middle"
msgstr ""
-#: cui/uiconfig/ui/calloutpage.ui:194
+#: cui/uiconfig/ui/calloutpage.ui:187
msgctxt "calloutpage|position"
msgid "Bottom"
msgstr "Ënnen"
-#: cui/uiconfig/ui/calloutpage.ui:195
+#: cui/uiconfig/ui/calloutpage.ui:188
msgctxt "calloutpage|position"
msgid "Left"
msgstr "Lénks"
-#: cui/uiconfig/ui/calloutpage.ui:196
+#: cui/uiconfig/ui/calloutpage.ui:189
msgctxt "calloutpage|position"
msgid "Center"
msgstr "Mëtt"
-#: cui/uiconfig/ui/calloutpage.ui:197
+#: cui/uiconfig/ui/calloutpage.ui:190
#, fuzzy
msgctxt "calloutpage|position"
msgid "Right"
msgstr "Héicht"
-#: cui/uiconfig/ui/calloutpage.ui:234
+#: cui/uiconfig/ui/calloutpage.ui:227
#, fuzzy
msgctxt "calloutpage|label1"
msgid "_Spacing:"
msgstr "Ofstand "
-#: cui/uiconfig/ui/calloutpage.ui:312
+#: cui/uiconfig/ui/calloutpage.ui:307
msgctxt "calloutpage|linetypes"
msgid "Straight Line"
msgstr ""
-#: cui/uiconfig/ui/calloutpage.ui:313
+#: cui/uiconfig/ui/calloutpage.ui:308
msgctxt "calloutpage|linetypes"
msgid "Angled Line"
msgstr ""
-#: cui/uiconfig/ui/calloutpage.ui:314
+#: cui/uiconfig/ui/calloutpage.ui:309
msgctxt "calloutpage|linetypes"
msgid "Angled Connector Line"
msgstr ""
-#: cui/uiconfig/ui/cellalignment.ui:24
-msgctxt "cellalignment|liststoreHorzAlign"
-msgid "Default"
-msgstr "Standard"
-
-#: cui/uiconfig/ui/cellalignment.ui:28
-msgctxt "cellalignment|liststoreHorzAlign"
-msgid "Left"
-msgstr "Lénks"
-
-#: cui/uiconfig/ui/cellalignment.ui:32
-msgctxt "cellalignment|liststoreHorzAlign"
-msgid "Center"
-msgstr "Mëtt"
-
-#: cui/uiconfig/ui/cellalignment.ui:36
-#, fuzzy
-msgctxt "cellalignment|liststoreHorzAlign"
-msgid "Right"
-msgstr "Héicht"
-
-#: cui/uiconfig/ui/cellalignment.ui:40
-#, fuzzy
-msgctxt "cellalignment|liststoreHorzAlign"
-msgid "Justified"
-msgstr "Ausgerichtet"
-
-#: cui/uiconfig/ui/cellalignment.ui:44
-msgctxt "cellalignment|liststoreHorzAlign"
-msgid "Filled"
-msgstr "Gefëllt"
-
-#: cui/uiconfig/ui/cellalignment.ui:48
-msgctxt "cellalignment|liststoreHorzAlign"
-msgid "Distributed"
-msgstr ""
-
-#: cui/uiconfig/ui/cellalignment.ui:62
-msgctxt "cellalignment|liststoreVertAlign"
-msgid "Default"
-msgstr "Standard"
-
-#: cui/uiconfig/ui/cellalignment.ui:66
-msgctxt "cellalignment|liststoreVertAlign"
-msgid "Top"
-msgstr "Uewen"
-
-#: cui/uiconfig/ui/cellalignment.ui:70
-msgctxt "cellalignment|liststoreVertAlign"
-msgid "Middle"
-msgstr ""
-
-#: cui/uiconfig/ui/cellalignment.ui:74
-msgctxt "cellalignment|liststoreVertAlign"
-msgid "Bottom"
-msgstr "Ënnen"
-
-#: cui/uiconfig/ui/cellalignment.ui:78
-#, fuzzy
-msgctxt "cellalignment|liststoreVertAlign"
-msgid "Justified"
-msgstr "Ausgerichtet"
-
-#: cui/uiconfig/ui/cellalignment.ui:82
-msgctxt "cellalignment|liststoreVertAlign"
-msgid "Distributed"
-msgstr ""
-
-#: cui/uiconfig/ui/cellalignment.ui:123
+#: cui/uiconfig/ui/cellalignment.ui:49
msgctxt "cellalignment|labelDegrees"
msgid "_Degrees:"
msgstr ""
-#: cui/uiconfig/ui/cellalignment.ui:137
+#: cui/uiconfig/ui/cellalignment.ui:63
msgctxt "cellalignment|labelRefEdge"
msgid "_Reference edge:"
msgstr ""
-#: cui/uiconfig/ui/cellalignment.ui:196
+#: cui/uiconfig/ui/cellalignment.ui:158
msgctxt "cellalignment|checkVertStack"
msgid "Vertically s_tacked"
msgstr ""
-#: cui/uiconfig/ui/cellalignment.ui:212
+#: cui/uiconfig/ui/cellalignment.ui:174
msgctxt "cellalignment|checkAsianMode"
msgid "Asian layout _mode"
msgstr ""
-#: cui/uiconfig/ui/cellalignment.ui:241
+#: cui/uiconfig/ui/cellalignment.ui:203
msgctxt "cellalignment|labelTextOrient"
msgid "Text Orientation"
msgstr ""
-#: cui/uiconfig/ui/cellalignment.ui:275
+#: cui/uiconfig/ui/cellalignment.ui:237
msgctxt "cellalignment|checkWrapTextAuto"
msgid "_Wrap text automatically"
msgstr ""
-#: cui/uiconfig/ui/cellalignment.ui:292
+#: cui/uiconfig/ui/cellalignment.ui:254
msgctxt "cellalignment|checkShrinkFitCellSize"
msgid "_Shrink to fit cell size"
msgstr ""
-#: cui/uiconfig/ui/cellalignment.ui:308
+#: cui/uiconfig/ui/cellalignment.ui:270
msgctxt "cellalignment|checkHyphActive"
msgid "Hyphenation _active"
msgstr ""
-#: cui/uiconfig/ui/cellalignment.ui:334
+#: cui/uiconfig/ui/cellalignment.ui:295
msgctxt "cellalignment|LabelTxtDir"
msgid "Te_xt direction:"
msgstr ""
-#: cui/uiconfig/ui/cellalignment.ui:369
+#: cui/uiconfig/ui/cellalignment.ui:331
msgctxt "cellalignment|labelProperties"
msgid "Properties"
msgstr "Eegeschaften"
-#: cui/uiconfig/ui/cellalignment.ui:417
+#: cui/uiconfig/ui/cellalignment.ui:379
#, fuzzy
msgctxt "cellalignment|labelHorzAlign"
msgid "Hori_zontal"
msgstr "Horizontal"
-#: cui/uiconfig/ui/cellalignment.ui:431
+#: cui/uiconfig/ui/cellalignment.ui:393
#, fuzzy
msgctxt "cellalignment|labelVertAlign"
msgid "_Vertical"
msgstr "~Vertikal"
-#: cui/uiconfig/ui/cellalignment.ui:445
+#: cui/uiconfig/ui/cellalignment.ui:407
#, fuzzy
msgctxt "cellalignment|labelIndent"
msgid "I_ndent"
msgstr "Arécklen"
-#: cui/uiconfig/ui/cellalignment.ui:486
+#: cui/uiconfig/ui/cellalignment.ui:423
+msgctxt "cellalignment|liststoreHorzAlign"
+msgid "Default"
+msgstr "Standard"
+
+#: cui/uiconfig/ui/cellalignment.ui:424
+msgctxt "cellalignment|liststoreHorzAlign"
+msgid "Left"
+msgstr "Lénks"
+
+#: cui/uiconfig/ui/cellalignment.ui:425
+msgctxt "cellalignment|liststoreHorzAlign"
+msgid "Center"
+msgstr "Mëtt"
+
+#: cui/uiconfig/ui/cellalignment.ui:426
+#, fuzzy
+msgctxt "cellalignment|liststoreHorzAlign"
+msgid "Right"
+msgstr "Héicht"
+
+#: cui/uiconfig/ui/cellalignment.ui:427
+#, fuzzy
+msgctxt "cellalignment|liststoreHorzAlign"
+msgid "Justified"
+msgstr "Ausgerichtet"
+
+#: cui/uiconfig/ui/cellalignment.ui:428
+msgctxt "cellalignment|liststoreHorzAlign"
+msgid "Filled"
+msgstr "Gefëllt"
+
+#: cui/uiconfig/ui/cellalignment.ui:429
+msgctxt "cellalignment|liststoreHorzAlign"
+msgid "Distributed"
+msgstr ""
+
+#: cui/uiconfig/ui/cellalignment.ui:443
+msgctxt "cellalignment|liststoreVertAlign"
+msgid "Default"
+msgstr "Standard"
+
+#: cui/uiconfig/ui/cellalignment.ui:444
+msgctxt "cellalignment|liststoreVertAlign"
+msgid "Top"
+msgstr "Uewen"
+
+#: cui/uiconfig/ui/cellalignment.ui:445
+msgctxt "cellalignment|liststoreVertAlign"
+msgid "Middle"
+msgstr ""
+
+#: cui/uiconfig/ui/cellalignment.ui:446
+msgctxt "cellalignment|liststoreVertAlign"
+msgid "Bottom"
+msgstr "Ënnen"
+
+#: cui/uiconfig/ui/cellalignment.ui:447
+#, fuzzy
+msgctxt "cellalignment|liststoreVertAlign"
+msgid "Justified"
+msgstr "Ausgerichtet"
+
+#: cui/uiconfig/ui/cellalignment.ui:448
+msgctxt "cellalignment|liststoreVertAlign"
+msgid "Distributed"
+msgstr ""
+
+#: cui/uiconfig/ui/cellalignment.ui:464
msgctxt "cellalignment|LabelTextAlig"
msgid "Text Alignment"
msgstr ""
-#: cui/uiconfig/ui/cellalignment.ui:506
+#: cui/uiconfig/ui/cellalignment.ui:484
msgctxt "cellalignment|labelSTR_BOTTOMLOCK"
msgid "Text Extension From Lower Cell Border"
msgstr ""
-#: cui/uiconfig/ui/cellalignment.ui:517
+#: cui/uiconfig/ui/cellalignment.ui:495
msgctxt "cellalignment|labelSTR_TOPLOCK"
msgid "Text Extension From Upper Cell Border"
msgstr ""
-#: cui/uiconfig/ui/cellalignment.ui:528
+#: cui/uiconfig/ui/cellalignment.ui:506
msgctxt "cellalignment|labelSTR_CELLLOCK"
msgid "Text Extension Inside Cell"
msgstr ""
-#: cui/uiconfig/ui/cellalignment.ui:539
+#: cui/uiconfig/ui/cellalignment.ui:517
msgctxt "cellalignment|labelABCD"
msgid "ABCD"
msgstr ""
@@ -3557,90 +3579,90 @@ msgctxt "certdialog|label1"
msgid "Certificate Path"
msgstr ""
-#: cui/uiconfig/ui/charnamepage.ui:45
-#, fuzzy
-msgctxt "charnamepage|westlangft-nocjk"
-msgid "Language:"
-msgstr "Sprooch"
-
-#: cui/uiconfig/ui/charnamepage.ui:185
+#: cui/uiconfig/ui/charnamepage.ui:375
#, fuzzy
msgctxt "charnamepage|westsizeft-nocjk"
msgid "Size:"
msgstr "Gréisst"
-#: cui/uiconfig/ui/charnamepage.ui:196
+#: cui/uiconfig/ui/charnamepage.ui:401
+#, fuzzy
+msgctxt "charnamepage|westlangft-nocjk"
+msgid "Language:"
+msgstr "Sprooch"
+
+#: cui/uiconfig/ui/charnamepage.ui:449
msgctxt "charnamepage|west_features_button-nocjk"
msgid "Features..."
msgstr ""
-#: cui/uiconfig/ui/charnamepage.ui:268
+#: cui/uiconfig/ui/charnamepage.ui:528
#, fuzzy
msgctxt "charnamepage|westsizeft-cjk"
msgid "Size:"
msgstr "Gréisst"
-#: cui/uiconfig/ui/charnamepage.ui:283
+#: cui/uiconfig/ui/charnamepage.ui:542
#, fuzzy
msgctxt "charnamepage|westlangft-cjk"
msgid "Language:"
msgstr "Sprooch"
-#: cui/uiconfig/ui/charnamepage.ui:352
+#: cui/uiconfig/ui/charnamepage.ui:645
msgctxt "charnamepage|west_features_button-cjk"
msgid "Features..."
msgstr ""
-#: cui/uiconfig/ui/charnamepage.ui:373
+#: cui/uiconfig/ui/charnamepage.ui:671
msgctxt "charnamepage|label4"
msgid "Western Text Font"
msgstr ""
-#: cui/uiconfig/ui/charnamepage.ui:441
+#: cui/uiconfig/ui/charnamepage.ui:736
#, fuzzy
msgctxt "charnamepage|eastsizeft"
msgid "Size:"
msgstr "Gréisst"
-#: cui/uiconfig/ui/charnamepage.ui:456
+#: cui/uiconfig/ui/charnamepage.ui:750
#, fuzzy
msgctxt "charnamepage|eastlangft"
msgid "Language:"
msgstr "Sprooch"
-#: cui/uiconfig/ui/charnamepage.ui:524
+#: cui/uiconfig/ui/charnamepage.ui:852
msgctxt "charnamepage|east_features_button"
msgid "Features..."
msgstr ""
-#: cui/uiconfig/ui/charnamepage.ui:545
+#: cui/uiconfig/ui/charnamepage.ui:878
msgctxt "charnamepage|label5"
msgid "Asian Text Font"
msgstr ""
-#: cui/uiconfig/ui/charnamepage.ui:613
+#: cui/uiconfig/ui/charnamepage.ui:943
#, fuzzy
msgctxt "charnamepage|ctlsizeft"
msgid "Size:"
msgstr "Gréisst"
-#: cui/uiconfig/ui/charnamepage.ui:628
+#: cui/uiconfig/ui/charnamepage.ui:957
#, fuzzy
msgctxt "charnamepage|ctllangft"
msgid "Language:"
msgstr "Sprooch"
-#: cui/uiconfig/ui/charnamepage.ui:697
+#: cui/uiconfig/ui/charnamepage.ui:1060
msgctxt "charnamepage|ctl_features_button"
msgid "Features..."
msgstr ""
-#: cui/uiconfig/ui/charnamepage.ui:718
+#: cui/uiconfig/ui/charnamepage.ui:1086
msgctxt "charnamepage|label6"
msgid "CTL Font"
msgstr ""
-#: cui/uiconfig/ui/charnamepage.ui:745
+#: cui/uiconfig/ui/charnamepage.ui:1124
msgctxt "charnamepage|preview-atkobject"
msgid "Preview"
msgstr "Iwwersiicht"
@@ -3947,150 +3969,150 @@ msgctxt "colorpage|label20"
msgid "Recent Colors"
msgstr ""
-#: cui/uiconfig/ui/colorpage.ui:174
+#: cui/uiconfig/ui/colorpage.ui:175
msgctxt "colorpage|RGB"
msgid "RGB"
msgstr ""
-#: cui/uiconfig/ui/colorpage.ui:189
+#: cui/uiconfig/ui/colorpage.ui:190
msgctxt "colorpage|CMYK"
msgid "CMYK"
msgstr ""
-#: cui/uiconfig/ui/colorpage.ui:204
+#: cui/uiconfig/ui/colorpage.ui:205
msgctxt "colorpage|delete"
msgid "Delete"
msgstr "Läschen"
-#: cui/uiconfig/ui/colorpage.ui:219
+#: cui/uiconfig/ui/colorpage.ui:220
msgctxt "colorpage|label22"
msgid "Custom Palette"
msgstr ""
-#: cui/uiconfig/ui/colorpage.ui:283
+#: cui/uiconfig/ui/colorpage.ui:286
#, fuzzy
msgctxt "colorpage|label1"
msgid "Colors"
msgstr "Faarwen"
-#: cui/uiconfig/ui/colorpage.ui:328
+#: cui/uiconfig/ui/colorpage.ui:345
msgctxt "colorpage|oldpreview-atkobject"
msgid "Old Color"
msgstr ""
-#: cui/uiconfig/ui/colorpage.ui:358
+#: cui/uiconfig/ui/colorpage.ui:379
msgctxt "colorpage|label7"
msgid "B"
msgstr ""
-#: cui/uiconfig/ui/colorpage.ui:371
+#: cui/uiconfig/ui/colorpage.ui:392
msgctxt "colorpage|label8"
msgid "G"
msgstr ""
-#: cui/uiconfig/ui/colorpage.ui:384
+#: cui/uiconfig/ui/colorpage.ui:405
msgctxt "colorpage|label9"
msgid "R"
msgstr ""
-#: cui/uiconfig/ui/colorpage.ui:397
+#: cui/uiconfig/ui/colorpage.ui:418
msgctxt "colorpage|label18"
msgid "Hex"
msgstr ""
-#: cui/uiconfig/ui/colorpage.ui:473
+#: cui/uiconfig/ui/colorpage.ui:494
msgctxt "colorpage|label10"
msgid "_C"
msgstr ""
-#: cui/uiconfig/ui/colorpage.ui:486
+#: cui/uiconfig/ui/colorpage.ui:507
msgctxt "colorpage|label16"
msgid "_K"
msgstr ""
-#: cui/uiconfig/ui/colorpage.ui:499
+#: cui/uiconfig/ui/colorpage.ui:520
msgctxt "colorpage|label17"
msgid "_Y"
msgstr ""
-#: cui/uiconfig/ui/colorpage.ui:560
+#: cui/uiconfig/ui/colorpage.ui:581
msgctxt "colorpage|label15"
msgid "_M"
msgstr ""
-#: cui/uiconfig/ui/colorpage.ui:584
+#: cui/uiconfig/ui/colorpage.ui:605
#, fuzzy
msgctxt "colorpage|label5"
msgid "Active"
msgstr "Aktiv"
-#: cui/uiconfig/ui/colorpage.ui:630
+#: cui/uiconfig/ui/colorpage.ui:664
msgctxt "colorpage|newpreview-atkobject"
msgid "New Color"
msgstr ""
-#: cui/uiconfig/ui/colorpage.ui:661
+#: cui/uiconfig/ui/colorpage.ui:699
msgctxt "colorpage|B_custom"
msgid "Blue"
msgstr "Blo"
-#: cui/uiconfig/ui/colorpage.ui:674
+#: cui/uiconfig/ui/colorpage.ui:712
msgctxt "colorpage|R_custom"
msgid "Red"
msgstr "Rout"
-#: cui/uiconfig/ui/colorpage.ui:686
+#: cui/uiconfig/ui/colorpage.ui:724
msgctxt "colorpage|label4"
msgid "_B"
msgstr ""
-#: cui/uiconfig/ui/colorpage.ui:699
+#: cui/uiconfig/ui/colorpage.ui:737
msgctxt "colorpage|label3"
msgid "_G"
msgstr ""
-#: cui/uiconfig/ui/colorpage.ui:712
+#: cui/uiconfig/ui/colorpage.ui:750
msgctxt "colorpage|label2"
msgid "_R"
msgstr ""
-#: cui/uiconfig/ui/colorpage.ui:726
+#: cui/uiconfig/ui/colorpage.ui:764
msgctxt "colorpage|G_custom"
msgid "Green"
msgstr "Gréng"
-#: cui/uiconfig/ui/colorpage.ui:738
+#: cui/uiconfig/ui/colorpage.ui:776
msgctxt "colorpage|label19"
msgid "_Hex"
msgstr ""
-#: cui/uiconfig/ui/colorpage.ui:779
+#: cui/uiconfig/ui/colorpage.ui:817
msgctxt "colorpage|label11"
msgid "_C"
msgstr ""
-#: cui/uiconfig/ui/colorpage.ui:792
+#: cui/uiconfig/ui/colorpage.ui:830
msgctxt "colorpage|label12"
msgid "_M"
msgstr ""
-#: cui/uiconfig/ui/colorpage.ui:805
+#: cui/uiconfig/ui/colorpage.ui:843
msgctxt "colorpage|label13"
msgid "_K"
msgstr ""
-#: cui/uiconfig/ui/colorpage.ui:842
+#: cui/uiconfig/ui/colorpage.ui:880
msgctxt "colorpage|label14"
msgid "_Y"
msgstr ""
-#: cui/uiconfig/ui/colorpage.ui:884
+#: cui/uiconfig/ui/colorpage.ui:922
#, fuzzy
msgctxt "colorpage|edit"
msgid "Pick"
msgstr "Pica"
-#: cui/uiconfig/ui/colorpage.ui:906
+#: cui/uiconfig/ui/colorpage.ui:945
#, fuzzy
msgctxt "colorpage|label6"
msgid "New"
@@ -4212,63 +4234,63 @@ msgctxt "comment|label1"
msgid "Contents"
msgstr "Inhalt"
-#: cui/uiconfig/ui/connectortabpage.ui:34
+#: cui/uiconfig/ui/connectortabpage.ui:62
#, fuzzy
msgctxt "connectortabpage|FT_TYPE"
msgid "_Type:"
msgstr "Typ:"
-#: cui/uiconfig/ui/connectortabpage.ui:85
+#: cui/uiconfig/ui/connectortabpage.ui:113
msgctxt "connectortabpage|FT_LINE_1"
msgid "Line _1:"
msgstr ""
-#: cui/uiconfig/ui/connectortabpage.ui:99
+#: cui/uiconfig/ui/connectortabpage.ui:127
msgctxt "connectortabpage|FT_LINE_2"
msgid "Line _2:"
msgstr ""
-#: cui/uiconfig/ui/connectortabpage.ui:113
+#: cui/uiconfig/ui/connectortabpage.ui:141
msgctxt "connectortabpage|FT_LINE_3"
msgid "Line _3:"
msgstr ""
-#: cui/uiconfig/ui/connectortabpage.ui:167
+#: cui/uiconfig/ui/connectortabpage.ui:198
msgctxt "connectortabpage|label2"
msgid "Line Skew"
msgstr ""
-#: cui/uiconfig/ui/connectortabpage.ui:203
+#: cui/uiconfig/ui/connectortabpage.ui:234
msgctxt "connectortabpage|FT_HORZ_1"
msgid "_Begin horizontal:"
msgstr ""
-#: cui/uiconfig/ui/connectortabpage.ui:217
+#: cui/uiconfig/ui/connectortabpage.ui:248
msgctxt "connectortabpage|FT_HORZ_2"
msgid "End _horizontal:"
msgstr ""
-#: cui/uiconfig/ui/connectortabpage.ui:231
+#: cui/uiconfig/ui/connectortabpage.ui:262
msgctxt "connectortabpage|FT_VERT_1"
msgid "Begin _vertical:"
msgstr ""
-#: cui/uiconfig/ui/connectortabpage.ui:245
+#: cui/uiconfig/ui/connectortabpage.ui:276
msgctxt "connectortabpage|FT_VERT_2"
msgid "_End vertical:"
msgstr ""
-#: cui/uiconfig/ui/connectortabpage.ui:311
+#: cui/uiconfig/ui/connectortabpage.ui:346
msgctxt "connectortabpage|label3"
msgid "Line Spacing"
msgstr ""
-#: cui/uiconfig/ui/connectortabpage.ui:335
+#: cui/uiconfig/ui/connectortabpage.ui:385
msgctxt "connectortabpage|CTL_PREVIEW|tooltip_text"
msgid "Preview"
msgstr "Iwwersiicht"
-#: cui/uiconfig/ui/connectortabpage.ui:340
+#: cui/uiconfig/ui/connectortabpage.ui:390
msgctxt "connectortabpage|CTL_PREVIEW-atkobject"
msgid "Example"
msgstr "Beispill"
@@ -4303,79 +4325,79 @@ msgctxt "connpooloptions|label1"
msgid "Connection Pool"
msgstr ""
-#: cui/uiconfig/ui/croppage.ui:53
+#: cui/uiconfig/ui/croppage.ui:82
msgctxt "croppage|keepscale"
msgid "Keep _scale"
msgstr ""
-#: cui/uiconfig/ui/croppage.ui:71
+#: cui/uiconfig/ui/croppage.ui:100
msgctxt "croppage|keepsize"
msgid "Keep image si_ze"
msgstr ""
-#: cui/uiconfig/ui/croppage.ui:97
+#: cui/uiconfig/ui/croppage.ui:125
msgctxt "croppage|label2"
msgid "_Left:"
msgstr ""
-#: cui/uiconfig/ui/croppage.ui:123
+#: cui/uiconfig/ui/croppage.ui:152
#, fuzzy
msgctxt "croppage|label3"
msgid "_Right:"
msgstr "Héicht"
-#: cui/uiconfig/ui/croppage.ui:161
+#: cui/uiconfig/ui/croppage.ui:191
msgctxt "croppage|label4"
msgid "_Top:"
msgstr ""
-#: cui/uiconfig/ui/croppage.ui:175
+#: cui/uiconfig/ui/croppage.ui:205
#, fuzzy
msgctxt "croppage|label5"
msgid "_Bottom:"
msgstr "Ënnen"
-#: cui/uiconfig/ui/croppage.ui:222
+#: cui/uiconfig/ui/croppage.ui:255
#, fuzzy
msgctxt "croppage|label1"
msgid "Crop"
msgstr "Uebst a Geméis"
-#: cui/uiconfig/ui/croppage.ui:257
+#: cui/uiconfig/ui/croppage.ui:289
#, fuzzy
msgctxt "croppage|label6"
msgid "_Width:"
msgstr "Breet"
-#: cui/uiconfig/ui/croppage.ui:282
+#: cui/uiconfig/ui/croppage.ui:315
#, fuzzy
msgctxt "croppage|label7"
msgid "_Height:"
msgstr "Héicht"
-#: cui/uiconfig/ui/croppage.ui:310
+#: cui/uiconfig/ui/croppage.ui:345
msgctxt "croppage|label10"
msgid "Scale"
msgstr ""
-#: cui/uiconfig/ui/croppage.ui:345
+#: cui/uiconfig/ui/croppage.ui:379
#, fuzzy
msgctxt "croppage|label8"
msgid "_Width:"
msgstr "Breet"
-#: cui/uiconfig/ui/croppage.ui:371
+#: cui/uiconfig/ui/croppage.ui:406
#, fuzzy
msgctxt "croppage|label9"
msgid "_Height:"
msgstr "Héicht"
-#: cui/uiconfig/ui/croppage.ui:400
+#: cui/uiconfig/ui/croppage.ui:437
msgctxt "croppage|label11"
msgid "Image Size"
msgstr ""
-#: cui/uiconfig/ui/croppage.ui:452
+#: cui/uiconfig/ui/croppage.ui:506
#, fuzzy
msgctxt "croppage|origsize"
msgid "_Original Size"
@@ -4419,28 +4441,28 @@ msgctxt "customizedialog|CustomizeDialog"
msgid "Customize"
msgstr ""
-#: cui/uiconfig/ui/customizedialog.ui:105
+#: cui/uiconfig/ui/customizedialog.ui:107
#, fuzzy
msgctxt "customizedialog|menus"
msgid "Menus"
msgstr "Minus"
-#: cui/uiconfig/ui/customizedialog.ui:127
+#: cui/uiconfig/ui/customizedialog.ui:129
msgctxt "customizedialog|toolbars"
msgid "Toolbars"
msgstr ""
-#: cui/uiconfig/ui/customizedialog.ui:150
+#: cui/uiconfig/ui/customizedialog.ui:152
msgctxt "customizedialog|contextmenus"
msgid "Context Menus"
msgstr ""
-#: cui/uiconfig/ui/customizedialog.ui:173
+#: cui/uiconfig/ui/customizedialog.ui:175
msgctxt "customizedialog|keyboard"
msgid "Keyboard"
msgstr "Tastatur"
-#: cui/uiconfig/ui/customizedialog.ui:196
+#: cui/uiconfig/ui/customizedialog.ui:198
msgctxt "customizedialog|events"
msgid "Events"
msgstr ""
@@ -4493,77 +4515,77 @@ msgctxt "dbregisterpage|label1"
msgid "Registered Databases"
msgstr ""
-#: cui/uiconfig/ui/dimensionlinestabpage.ui:53
+#: cui/uiconfig/ui/dimensionlinestabpage.ui:74
msgctxt "dimensionlinestabpage|FT_LINE_DIST"
msgid "Line _distance:"
msgstr ""
-#: cui/uiconfig/ui/dimensionlinestabpage.ui:67
+#: cui/uiconfig/ui/dimensionlinestabpage.ui:89
msgctxt "dimensionlinestabpage|FT_HELPLINE_OVERHANG"
msgid "Guide _overhang:"
msgstr ""
-#: cui/uiconfig/ui/dimensionlinestabpage.ui:81
+#: cui/uiconfig/ui/dimensionlinestabpage.ui:103
msgctxt "dimensionlinestabpage|FT_HELPLINE_DIST"
msgid "_Guide distance:"
msgstr ""
-#: cui/uiconfig/ui/dimensionlinestabpage.ui:95
+#: cui/uiconfig/ui/dimensionlinestabpage.ui:117
msgctxt "dimensionlinestabpage|FT_HELPLINE1_LEN"
msgid "_Left guide:"
msgstr ""
-#: cui/uiconfig/ui/dimensionlinestabpage.ui:109
+#: cui/uiconfig/ui/dimensionlinestabpage.ui:131
msgctxt "dimensionlinestabpage|FT_HELPLINE2_LEN"
msgid "_Right guide:"
msgstr ""
-#: cui/uiconfig/ui/dimensionlinestabpage.ui:123
+#: cui/uiconfig/ui/dimensionlinestabpage.ui:145
msgctxt "dimensionlinestabpage|FT_DECIMALPLACES"
msgid "Decimal _places:"
msgstr ""
-#: cui/uiconfig/ui/dimensionlinestabpage.ui:134
+#: cui/uiconfig/ui/dimensionlinestabpage.ui:157
msgctxt "dimensionlinestabpage|TSB_BELOW_REF_EDGE"
msgid "Measure _below object"
msgstr ""
-#: cui/uiconfig/ui/dimensionlinestabpage.ui:230
+#: cui/uiconfig/ui/dimensionlinestabpage.ui:258
msgctxt "dimensionlinestabpage|label1"
msgid "Line"
msgstr "Zeil "
-#: cui/uiconfig/ui/dimensionlinestabpage.ui:266
+#: cui/uiconfig/ui/dimensionlinestabpage.ui:294
msgctxt "dimensionlinestabpage|FT_POSITION"
msgid "_Text position"
msgstr ""
-#: cui/uiconfig/ui/dimensionlinestabpage.ui:301
+#: cui/uiconfig/ui/dimensionlinestabpage.ui:348
msgctxt "dimensionlinestabpage|TSB_AUTOPOSV"
msgid "_AutoVertical"
msgstr ""
-#: cui/uiconfig/ui/dimensionlinestabpage.ui:318
+#: cui/uiconfig/ui/dimensionlinestabpage.ui:365
msgctxt "dimensionlinestabpage|TSB_AUTOPOSH"
msgid "A_utoHorizontal"
msgstr ""
-#: cui/uiconfig/ui/dimensionlinestabpage.ui:344
+#: cui/uiconfig/ui/dimensionlinestabpage.ui:391
msgctxt "dimensionlinestabpage|TSB_PARALLEL"
msgid "_Parallel to line"
msgstr ""
-#: cui/uiconfig/ui/dimensionlinestabpage.ui:361
+#: cui/uiconfig/ui/dimensionlinestabpage.ui:408
msgctxt "dimensionlinestabpage|TSB_SHOW_UNIT"
msgid "Show _measurement units"
msgstr ""
-#: cui/uiconfig/ui/dimensionlinestabpage.ui:398
+#: cui/uiconfig/ui/dimensionlinestabpage.ui:444
msgctxt "dimensionlinestabpage|label2"
msgid "Legend"
msgstr ""
-#: cui/uiconfig/ui/dimensionlinestabpage.ui:421
+#: cui/uiconfig/ui/dimensionlinestabpage.ui:468
msgctxt "dimensionlinestabpage|STR_MEASURE_AUTOMATIC"
msgid "Automatic"
msgstr "Automatesch"
@@ -4579,66 +4601,66 @@ msgctxt "distributionpage|hornone"
msgid "_None"
msgstr "Keen"
-#: cui/uiconfig/ui/distributionpage.ui:53
+#: cui/uiconfig/ui/distributionpage.ui:52
#, fuzzy
msgctxt "distributionpage|horleft"
msgid "_Left"
msgstr "Lénks"
-#: cui/uiconfig/ui/distributionpage.ui:69
+#: cui/uiconfig/ui/distributionpage.ui:68
#, fuzzy
msgctxt "distributionpage|horcenter"
msgid "_Center"
msgstr "Mëtt"
-#: cui/uiconfig/ui/distributionpage.ui:85
+#: cui/uiconfig/ui/distributionpage.ui:84
#, fuzzy
msgctxt "distributionpage|horright"
msgid "_Right"
msgstr "Héicht"
-#: cui/uiconfig/ui/distributionpage.ui:127
+#: cui/uiconfig/ui/distributionpage.ui:126
#, fuzzy
msgctxt "distributionpage|hordistance"
msgid "_Spacing"
msgstr "Ofstand "
-#: cui/uiconfig/ui/distributionpage.ui:178
+#: cui/uiconfig/ui/distributionpage.ui:177
msgctxt "distributionpage|label"
msgid "Horizontal"
msgstr "Horizontal"
-#: cui/uiconfig/ui/distributionpage.ui:211
+#: cui/uiconfig/ui/distributionpage.ui:210
#, fuzzy
msgctxt "distributionpage|vernone"
msgid "N_one"
msgstr "Keen"
-#: cui/uiconfig/ui/distributionpage.ui:227
+#: cui/uiconfig/ui/distributionpage.ui:225
#, fuzzy
msgctxt "distributionpage|vertop"
msgid "_Top"
msgstr "Uewen"
-#: cui/uiconfig/ui/distributionpage.ui:243
+#: cui/uiconfig/ui/distributionpage.ui:241
#, fuzzy
msgctxt "distributionpage|vercenter"
msgid "C_enter"
msgstr "Mëtt"
-#: cui/uiconfig/ui/distributionpage.ui:260
+#: cui/uiconfig/ui/distributionpage.ui:258
#, fuzzy
msgctxt "distributionpage|verdistance"
msgid "S_pacing"
msgstr "Ofstand "
-#: cui/uiconfig/ui/distributionpage.ui:276
+#: cui/uiconfig/ui/distributionpage.ui:274
#, fuzzy
msgctxt "distributionpage|verbottom"
msgid "_Bottom"
msgstr "Ënnen"
-#: cui/uiconfig/ui/distributionpage.ui:353
+#: cui/uiconfig/ui/distributionpage.ui:351
#, fuzzy
msgctxt "distributionpage|label1"
msgid "Vertical"
@@ -4720,303 +4742,303 @@ msgctxt "editmodulesdialog|label1"
msgid "Options"
msgstr "Optiounen"
-#: cui/uiconfig/ui/effectspage.ui:13
-msgctxt "effectspage|liststore1"
-msgid "(Without)"
-msgstr ""
-
-#: cui/uiconfig/ui/effectspage.ui:16
-msgctxt "effectspage|liststore1"
-msgid "Capitals"
-msgstr ""
-
-#: cui/uiconfig/ui/effectspage.ui:19
-msgctxt "effectspage|liststore1"
-msgid "Lowercase"
-msgstr ""
-
-#: cui/uiconfig/ui/effectspage.ui:22
-msgctxt "effectspage|liststore1"
-msgid "Title"
-msgstr "Titel"
+#: cui/uiconfig/ui/effectspage.ui:24
+#, fuzzy
+msgctxt "effectspage|fontcolorft"
+msgid "Font color:"
+msgstr "Schrëftfaarf"
-#: cui/uiconfig/ui/effectspage.ui:25
-msgctxt "effectspage|liststore1"
-msgid "Small capitals"
-msgstr ""
+#: cui/uiconfig/ui/effectspage.ui:38
+#, fuzzy
+msgctxt "effectspage|effectsft"
+msgid "Effects:"
+msgstr "Effekter"
-#: cui/uiconfig/ui/effectspage.ui:36
-msgctxt "effectspage|liststore2"
-msgid "(Without)"
+#: cui/uiconfig/ui/effectspage.ui:52
+msgctxt "effectspage|reliefft"
+msgid "Relief:"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:39
-msgctxt "effectspage|liststore2"
-msgid "Embossed"
+#: cui/uiconfig/ui/effectspage.ui:66
+msgctxt "effectspage|label46"
+msgid "Overlining:"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:42
-msgctxt "effectspage|liststore2"
-msgid "Engraved"
-msgstr ""
+#: cui/uiconfig/ui/effectspage.ui:80
+#, fuzzy
+msgctxt "effectspage|label47"
+msgid "Strikethrough:"
+msgstr "Duerchgestrach"
-#: cui/uiconfig/ui/effectspage.ui:53
-msgctxt "effectspage|liststore3"
-msgid "(Without)"
+#: cui/uiconfig/ui/effectspage.ui:94
+msgctxt "effectspage|label48"
+msgid "Underlining:"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:56
-msgctxt "effectspage|liststore3"
-msgid "Dot"
+#: cui/uiconfig/ui/effectspage.ui:108
+msgctxt "effectspage|overlinecolorft"
+msgid "Overline color:"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:59
-msgctxt "effectspage|liststore3"
-msgid "Circle"
-msgstr "Krees"
-
-#: cui/uiconfig/ui/effectspage.ui:62
-msgctxt "effectspage|liststore3"
-msgid "Disc"
+#: cui/uiconfig/ui/effectspage.ui:122
+msgctxt "effectspage|underlinecolorft"
+msgid "Underline color:"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:65
-#, fuzzy
-msgctxt "effectspage|liststore3"
-msgid "Accent"
-msgstr "Accent "
-
-#: cui/uiconfig/ui/effectspage.ui:78
-msgctxt "effectspage|liststore4"
-msgid "Above text"
+#: cui/uiconfig/ui/effectspage.ui:152
+msgctxt "effectspage|liststore1"
+msgid "(Without)"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:82
-msgctxt "effectspage|liststore4"
-msgid "Below text"
+#: cui/uiconfig/ui/effectspage.ui:153
+msgctxt "effectspage|liststore1"
+msgid "Capitals"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:96
-msgctxt "effectspage|liststore5"
-msgid "(Without)"
+#: cui/uiconfig/ui/effectspage.ui:154
+msgctxt "effectspage|liststore1"
+msgid "Lowercase"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:100
-#, fuzzy
-msgctxt "effectspage|liststore5"
-msgid "Single"
-msgstr "Einfach"
-
-#: cui/uiconfig/ui/effectspage.ui:104
-msgctxt "effectspage|liststore5"
-msgid "Double"
-msgstr "Duebel"
-
-#: cui/uiconfig/ui/effectspage.ui:108
-msgctxt "effectspage|liststore5"
-msgid "Bold"
-msgstr "Fett"
-
-#: cui/uiconfig/ui/effectspage.ui:112
-msgctxt "effectspage|liststore5"
-msgid "With /"
-msgstr ""
+#: cui/uiconfig/ui/effectspage.ui:155
+msgctxt "effectspage|liststore1"
+msgid "Title"
+msgstr "Titel"
-#: cui/uiconfig/ui/effectspage.ui:116
-msgctxt "effectspage|liststore5"
-msgid "With X"
+#: cui/uiconfig/ui/effectspage.ui:156
+msgctxt "effectspage|liststore1"
+msgid "Small capitals"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:130
+#: cui/uiconfig/ui/effectspage.ui:169 cui/uiconfig/ui/effectspage.ui:213
msgctxt "effectspage|liststore6"
msgid "(Without)"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:134
+#: cui/uiconfig/ui/effectspage.ui:170 cui/uiconfig/ui/effectspage.ui:214
#, fuzzy
msgctxt "effectspage|liststore6"
msgid "Single"
msgstr "Einfach"
-#: cui/uiconfig/ui/effectspage.ui:138
+#: cui/uiconfig/ui/effectspage.ui:171 cui/uiconfig/ui/effectspage.ui:215
msgctxt "effectspage|liststore6"
msgid "Double"
msgstr "Duebel"
-#: cui/uiconfig/ui/effectspage.ui:142
+#: cui/uiconfig/ui/effectspage.ui:172 cui/uiconfig/ui/effectspage.ui:216
msgctxt "effectspage|liststore6"
msgid "Bold"
msgstr "Fett"
-#: cui/uiconfig/ui/effectspage.ui:146
+#: cui/uiconfig/ui/effectspage.ui:173 cui/uiconfig/ui/effectspage.ui:217
msgctxt "effectspage|liststore6"
msgid "Dotted"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:150
+#: cui/uiconfig/ui/effectspage.ui:174 cui/uiconfig/ui/effectspage.ui:218
msgctxt "effectspage|liststore6"
msgid "Dotted (Bold)"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:154
+#: cui/uiconfig/ui/effectspage.ui:175 cui/uiconfig/ui/effectspage.ui:219
msgctxt "effectspage|liststore6"
msgid "Dash"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:158
+#: cui/uiconfig/ui/effectspage.ui:176 cui/uiconfig/ui/effectspage.ui:220
msgctxt "effectspage|liststore6"
msgid "Dash (Bold)"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:162
+#: cui/uiconfig/ui/effectspage.ui:177 cui/uiconfig/ui/effectspage.ui:221
msgctxt "effectspage|liststore6"
msgid "Long Dash"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:166
+#: cui/uiconfig/ui/effectspage.ui:178 cui/uiconfig/ui/effectspage.ui:222
msgctxt "effectspage|liststore6"
msgid "Long Dash (Bold)"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:170
+#: cui/uiconfig/ui/effectspage.ui:179 cui/uiconfig/ui/effectspage.ui:223
msgctxt "effectspage|liststore6"
msgid "Dot Dash"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:174
+#: cui/uiconfig/ui/effectspage.ui:180 cui/uiconfig/ui/effectspage.ui:224
msgctxt "effectspage|liststore6"
msgid "Dot Dash (Bold)"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:178
+#: cui/uiconfig/ui/effectspage.ui:181 cui/uiconfig/ui/effectspage.ui:225
msgctxt "effectspage|liststore6"
msgid "Dot Dot Dash"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:182
+#: cui/uiconfig/ui/effectspage.ui:182 cui/uiconfig/ui/effectspage.ui:226
msgctxt "effectspage|liststore6"
msgid "Dot Dot Dash (Bold)"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:186
+#: cui/uiconfig/ui/effectspage.ui:183 cui/uiconfig/ui/effectspage.ui:227
#, fuzzy
msgctxt "effectspage|liststore6"
msgid "Wave"
msgstr "Späicheren"
-#: cui/uiconfig/ui/effectspage.ui:190
+#: cui/uiconfig/ui/effectspage.ui:184 cui/uiconfig/ui/effectspage.ui:228
msgctxt "effectspage|liststore6"
msgid "Wave (Bold)"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:194
+#: cui/uiconfig/ui/effectspage.ui:185 cui/uiconfig/ui/effectspage.ui:229
msgctxt "effectspage|liststore6"
msgid "Double Wave"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:218
-#, fuzzy
-msgctxt "effectspage|fontcolorft"
-msgid "Font color:"
-msgstr "Schrëftfaarf"
+#: cui/uiconfig/ui/effectspage.ui:198
+msgctxt "effectspage|liststore2"
+msgid "(Without)"
+msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:232
-#, fuzzy
-msgctxt "effectspage|effectsft"
-msgid "Effects:"
-msgstr "Effekter"
+#: cui/uiconfig/ui/effectspage.ui:199
+msgctxt "effectspage|liststore2"
+msgid "Embossed"
+msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:246
-msgctxt "effectspage|reliefft"
-msgid "Relief:"
+#: cui/uiconfig/ui/effectspage.ui:200
+msgctxt "effectspage|liststore2"
+msgid "Engraved"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:260
-msgctxt "effectspage|label46"
-msgid "Overlining:"
+#: cui/uiconfig/ui/effectspage.ui:242
+msgctxt "effectspage|liststore5"
+msgid "(Without)"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:274
+#: cui/uiconfig/ui/effectspage.ui:243
#, fuzzy
-msgctxt "effectspage|label47"
-msgid "Strikethrough:"
-msgstr "Duerchgestrach"
+msgctxt "effectspage|liststore5"
+msgid "Single"
+msgstr "Einfach"
-#: cui/uiconfig/ui/effectspage.ui:288
-msgctxt "effectspage|label48"
-msgid "Underlining:"
-msgstr ""
+#: cui/uiconfig/ui/effectspage.ui:244
+msgctxt "effectspage|liststore5"
+msgid "Double"
+msgstr "Duebel"
-#: cui/uiconfig/ui/effectspage.ui:302
-msgctxt "effectspage|overlinecolorft"
-msgid "Overline color:"
+#: cui/uiconfig/ui/effectspage.ui:245
+msgctxt "effectspage|liststore5"
+msgid "Bold"
+msgstr "Fett"
+
+#: cui/uiconfig/ui/effectspage.ui:246
+msgctxt "effectspage|liststore5"
+msgid "With /"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:316
-msgctxt "effectspage|underlinecolorft"
-msgid "Underline color:"
+#: cui/uiconfig/ui/effectspage.ui:247
+msgctxt "effectspage|liststore5"
+msgid "With X"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:413
+#: cui/uiconfig/ui/effectspage.ui:287
#, fuzzy
msgctxt "effectspage|outlinecb"
msgid "Outline"
msgstr "Konturen"
-#: cui/uiconfig/ui/effectspage.ui:429
+#: cui/uiconfig/ui/effectspage.ui:303
msgctxt "effectspage|blinkingcb"
msgid "Blinking"
msgstr "Blénkend"
-#: cui/uiconfig/ui/effectspage.ui:445
+#: cui/uiconfig/ui/effectspage.ui:319
#, fuzzy
msgctxt "effectspage|hiddencb"
msgid "Hidden"
msgstr "verstoppt"
-#: cui/uiconfig/ui/effectspage.ui:461
+#: cui/uiconfig/ui/effectspage.ui:335
msgctxt "effectspage|individualwordscb"
msgid "Individual words"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:500
+#: cui/uiconfig/ui/effectspage.ui:353
+msgctxt "effectspage|liststore3"
+msgid "(Without)"
+msgstr ""
+
+#: cui/uiconfig/ui/effectspage.ui:354
+msgctxt "effectspage|liststore3"
+msgid "Dot"
+msgstr ""
+
+#: cui/uiconfig/ui/effectspage.ui:355
+msgctxt "effectspage|liststore3"
+msgid "Circle"
+msgstr "Krees"
+
+#: cui/uiconfig/ui/effectspage.ui:356
+msgctxt "effectspage|liststore3"
+msgid "Disc"
+msgstr ""
+
+#: cui/uiconfig/ui/effectspage.ui:357
+#, fuzzy
+msgctxt "effectspage|liststore3"
+msgid "Accent"
+msgstr "Accent "
+
+#: cui/uiconfig/ui/effectspage.ui:370
+msgctxt "effectspage|liststore4"
+msgid "Above text"
+msgstr ""
+
+#: cui/uiconfig/ui/effectspage.ui:371
+msgctxt "effectspage|liststore4"
+msgid "Below text"
+msgstr ""
+
+#: cui/uiconfig/ui/effectspage.ui:383
#, fuzzy
msgctxt "effectspage|positionft"
msgid "Position:"
msgstr "Positioun"
-#: cui/uiconfig/ui/effectspage.ui:514
+#: cui/uiconfig/ui/effectspage.ui:397
msgctxt "effectspage|emphasisft"
msgid "Emphasis mark:"
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:526
+#: cui/uiconfig/ui/effectspage.ui:409
#, fuzzy
msgctxt "effectspage|shadowcb"
msgid "Shadow"
msgstr "Schattéiert"
-#: cui/uiconfig/ui/effectspage.ui:567
+#: cui/uiconfig/ui/effectspage.ui:450
msgctxt "effectspage|a11ywarning"
msgid "Accessibility option \"Use automatic font color for screen display\" is active. Font color attributes are not currently used to display text."
msgstr ""
-#: cui/uiconfig/ui/effectspage.ui:616
+#: cui/uiconfig/ui/effectspage.ui:510
msgctxt "effectspage|preview-atkobject"
msgid "Preview"
msgstr "Iwwersiicht"
-#: cui/uiconfig/ui/embossdialog.ui:9
+#: cui/uiconfig/ui/embossdialog.ui:8
msgctxt "embossdialog|EmbossDialog"
msgid "Emboss"
msgstr ""
-#: cui/uiconfig/ui/embossdialog.ui:120
+#: cui/uiconfig/ui/embossdialog.ui:141
msgctxt "embossdialog|label2"
msgid "_Light source:"
msgstr ""
-#: cui/uiconfig/ui/embossdialog.ui:155
+#: cui/uiconfig/ui/embossdialog.ui:195
msgctxt "embossdialog|label1"
msgid "Parameters"
msgstr ""
@@ -5229,12 +5251,12 @@ msgctxt "fmsearchdialog|flState"
msgid "State"
msgstr ""
-#: cui/uiconfig/ui/fontfeaturesdialog.ui:9
-msgctxt "newtabledialog|NewTableDialog"
+#: cui/uiconfig/ui/fontfeaturesdialog.ui:10
+msgctxt "fontfeaturesdialog|FontFeaturesDialog"
msgid "Font Features"
msgstr ""
-#: cui/uiconfig/ui/fontfeaturesdialog.ui:149
+#: cui/uiconfig/ui/fontfeaturesdialog.ui:164
msgctxt "fontfeaturesdialog|preview-atkobject"
msgid "Preview"
msgstr ""
@@ -5244,22 +5266,22 @@ msgctxt "formatcellsdialog|FormatCellsDialog"
msgid "Table Properties"
msgstr ""
-#: cui/uiconfig/ui/formatcellsdialog.ui:106
+#: cui/uiconfig/ui/formatcellsdialog.ui:138
msgctxt "formatcellsdialog|name"
msgid "Font"
msgstr "Schrëft"
-#: cui/uiconfig/ui/formatcellsdialog.ui:128
+#: cui/uiconfig/ui/formatcellsdialog.ui:184
msgctxt "formatcellsdialog|effects"
msgid "Font Effects"
msgstr "Schrëfteffekter"
-#: cui/uiconfig/ui/formatcellsdialog.ui:151
+#: cui/uiconfig/ui/formatcellsdialog.ui:231
msgctxt "formatcellsdialog|border"
msgid "Borders"
msgstr "Konturen"
-#: cui/uiconfig/ui/formatcellsdialog.ui:174
+#: cui/uiconfig/ui/formatcellsdialog.ui:278
msgctxt "formatcellsdialog|area"
msgid "Background"
msgstr "Hannergrond"
@@ -5310,28 +5332,28 @@ msgctxt "galleryfilespage|addall"
msgid "A_dd All"
msgstr ""
-#: cui/uiconfig/ui/gallerygeneralpage.ui:22
+#: cui/uiconfig/ui/gallerygeneralpage.ui:21
msgctxt "gallerygeneralpage|label1"
msgid "Modified:"
msgstr "Verännert:"
-#: cui/uiconfig/ui/gallerygeneralpage.ui:63
+#: cui/uiconfig/ui/gallerygeneralpage.ui:56
msgctxt "gallerygeneralpage|label2"
msgid "Type:"
msgstr "Typ:"
-#: cui/uiconfig/ui/gallerygeneralpage.ui:90
+#: cui/uiconfig/ui/gallerygeneralpage.ui:79
msgctxt "gallerygeneralpage|label3"
msgid "Location:"
msgstr ""
-#: cui/uiconfig/ui/gallerygeneralpage.ui:104
+#: cui/uiconfig/ui/gallerygeneralpage.ui:91
#, fuzzy
msgctxt "gallerygeneralpage|label4"
msgid "Contents:"
msgstr "Inhalt"
-#: cui/uiconfig/ui/gallerygeneralpage.ui:162
+#: cui/uiconfig/ui/gallerygeneralpage.ui:142
msgctxt "gallerygeneralpage|image-atkobject"
msgid "Theme Name"
msgstr ""
@@ -5357,12 +5379,12 @@ msgctxt "gallerythemedialog|GalleryThemeDialog"
msgid "Properties of "
msgstr "Eegeschaften: "
-#: cui/uiconfig/ui/gallerythemedialog.ui:106
+#: cui/uiconfig/ui/gallerythemedialog.ui:108
msgctxt "gallerythemedialog|general"
msgid "General"
msgstr "Allgemeng"
-#: cui/uiconfig/ui/gallerythemedialog.ui:128
+#: cui/uiconfig/ui/gallerythemedialog.ui:130
#, fuzzy
msgctxt "gallerythemedialog|files"
msgid "Files"
@@ -5401,124 +5423,124 @@ msgctxt "galleryupdateprogress|label2"
msgid "File"
msgstr "Datei"
-#: cui/uiconfig/ui/gradientpage.ui:79
+#: cui/uiconfig/ui/gradientpage.ui:125
#, fuzzy
msgctxt "gradientpage|modify"
msgid "_Modify"
msgstr "Veränneren"
-#: cui/uiconfig/ui/gradientpage.ui:106
+#: cui/uiconfig/ui/gradientpage.ui:152
msgctxt "gradientpage|label1"
msgid "Gradient"
msgstr ""
-#: cui/uiconfig/ui/gradientpage.ui:149
+#: cui/uiconfig/ui/gradientpage.ui:200
#, fuzzy
msgctxt "gradientpage|typeft"
msgid "_Type:"
msgstr "Typ:"
-#: cui/uiconfig/ui/gradientpage.ui:165
+#: cui/uiconfig/ui/gradientpage.ui:216
msgctxt "gradientpage|gradienttypelb"
msgid "Linear"
msgstr ""
-#: cui/uiconfig/ui/gradientpage.ui:166
+#: cui/uiconfig/ui/gradientpage.ui:217
msgctxt "gradientpage|gradienttypelb"
msgid "Axial"
msgstr ""
-#: cui/uiconfig/ui/gradientpage.ui:167
+#: cui/uiconfig/ui/gradientpage.ui:218
msgctxt "gradientpage|gradienttypelb"
msgid "Radial"
msgstr ""
-#: cui/uiconfig/ui/gradientpage.ui:168
+#: cui/uiconfig/ui/gradientpage.ui:219
#, fuzzy
msgctxt "gradientpage|gradienttypelb"
msgid "Ellipsoid"
msgstr "Dräifachpunkten"
-#: cui/uiconfig/ui/gradientpage.ui:169
+#: cui/uiconfig/ui/gradientpage.ui:220
msgctxt "gradientpage|gradienttypelb"
msgid "Quadratic"
msgstr ""
-#: cui/uiconfig/ui/gradientpage.ui:170
+#: cui/uiconfig/ui/gradientpage.ui:221
msgctxt "gradientpage|gradienttypelb"
msgid "Square"
msgstr "Quadrat"
-#: cui/uiconfig/ui/gradientpage.ui:197
+#: cui/uiconfig/ui/gradientpage.ui:248
msgctxt "gradientpage|incrementft"
msgid "Increment:"
msgstr ""
-#: cui/uiconfig/ui/gradientpage.ui:235
+#: cui/uiconfig/ui/gradientpage.ui:288
#, fuzzy
msgctxt "gradientpage|autoincrement"
msgid "A_utomatic"
msgstr "Automatesch"
-#: cui/uiconfig/ui/gradientpage.ui:272
-msgctxt "gradientpage|angleft"
-msgid "A_ngle:"
-msgstr ""
-
-#: cui/uiconfig/ui/gradientpage.ui:298
+#: cui/uiconfig/ui/gradientpage.ui:320
msgctxt "gradientpage|centerft"
msgid "Center ( X / Y ):"
msgstr ""
-#: cui/uiconfig/ui/gradientpage.ui:364
+#: cui/uiconfig/ui/gradientpage.ui:389
#, fuzzy
msgctxt "gradientpage|borderft"
msgid "_Border:"
msgstr "Konturen"
-#: cui/uiconfig/ui/gradientpage.ui:421
-msgctxt "gradientpage|colorfromft"
-msgid "_From Color:"
+#: cui/uiconfig/ui/gradientpage.ui:444
+msgctxt "gradientpage|angleft"
+msgid "A_ngle:"
msgstr ""
-#: cui/uiconfig/ui/gradientpage.ui:500
+#: cui/uiconfig/ui/gradientpage.ui:485
msgctxt "gradientpage|colortoft"
msgid "_To Color:"
msgstr ""
-#: cui/uiconfig/ui/gradientpage.ui:527
+#: cui/uiconfig/ui/gradientpage.ui:526
+msgctxt "gradientpage|colorfromft"
+msgid "_From Color:"
+msgstr ""
+
+#: cui/uiconfig/ui/gradientpage.ui:551
#, fuzzy
msgctxt "gradientpage|a11y_center_x"
msgid "Center X"
msgstr "Mëtt"
-#: cui/uiconfig/ui/gradientpage.ui:541
+#: cui/uiconfig/ui/gradientpage.ui:565
#, fuzzy
msgctxt "gradientpage|a11y_center_y"
msgid "Center Y"
msgstr "Mëtt"
-#: cui/uiconfig/ui/gradientpage.ui:555
+#: cui/uiconfig/ui/gradientpage.ui:579
msgctxt "gradientpage|a11y_percentage_from"
msgid "From color percentage"
msgstr ""
-#: cui/uiconfig/ui/gradientpage.ui:569
+#: cui/uiconfig/ui/gradientpage.ui:593
msgctxt "gradientpage|a11y_percentage_to"
msgid "To color percentage"
msgstr ""
-#: cui/uiconfig/ui/gradientpage.ui:594
+#: cui/uiconfig/ui/gradientpage.ui:618
msgctxt "gradientpage|propfl"
msgid "Options"
msgstr "Optiounen"
-#: cui/uiconfig/ui/gradientpage.ui:638
+#: cui/uiconfig/ui/gradientpage.ui:667
msgctxt "gradientpage|previewctl-atkobject"
msgid "Example"
msgstr "Beispill"
-#: cui/uiconfig/ui/gradientpage.ui:656
+#: cui/uiconfig/ui/gradientpage.ui:689
msgctxt "gradientpage|label2"
msgid "Preview"
msgstr "Iwwersiicht"
@@ -5715,71 +5737,71 @@ msgctxt "hangulhanjaoptdialog|label2"
msgid "Options"
msgstr "Optiounen"
-#: cui/uiconfig/ui/hatchpage.ui:81
+#: cui/uiconfig/ui/hatchpage.ui:96
#, fuzzy
msgctxt "hatchpage|modify"
msgid "_Modify"
msgstr "Veränneren"
-#: cui/uiconfig/ui/hatchpage.ui:108
+#: cui/uiconfig/ui/hatchpage.ui:123
msgctxt "hatchpage|label2"
msgid "Hatch"
msgstr ""
-#: cui/uiconfig/ui/hatchpage.ui:148
+#: cui/uiconfig/ui/hatchpage.ui:164
#, fuzzy
msgctxt "hatchpage|distanceft"
msgid "_Spacing:"
msgstr "Ofstand "
-#: cui/uiconfig/ui/hatchpage.ui:174
+#: cui/uiconfig/ui/hatchpage.ui:191
msgctxt "hatchpage|angleft"
msgid "A_ngle:"
msgstr ""
-#: cui/uiconfig/ui/hatchpage.ui:227
+#: cui/uiconfig/ui/hatchpage.ui:244
msgctxt "hatchpage|linetypeft"
msgid "_Line type:"
msgstr ""
-#: cui/uiconfig/ui/hatchpage.ui:241
+#: cui/uiconfig/ui/hatchpage.ui:260
#, fuzzy
msgctxt "hatchpage|linetypelb"
msgid "Single"
msgstr "Einfach"
-#: cui/uiconfig/ui/hatchpage.ui:242
+#: cui/uiconfig/ui/hatchpage.ui:261
msgctxt "hatchpage|linetypelb"
msgid "Crossed"
msgstr ""
-#: cui/uiconfig/ui/hatchpage.ui:243
+#: cui/uiconfig/ui/hatchpage.ui:262
msgctxt "hatchpage|linetypelb"
msgid "Triple"
msgstr ""
-#: cui/uiconfig/ui/hatchpage.ui:257
+#: cui/uiconfig/ui/hatchpage.ui:275
msgctxt "hatchpage|linecolorft"
msgid "Line _color:"
msgstr ""
-#: cui/uiconfig/ui/hatchpage.ui:279
+#: cui/uiconfig/ui/hatchpage.ui:306
#, fuzzy
msgctxt "hatchpage|backgroundcolor"
msgid "Background Color"
msgstr "Hannergrondfaarf..."
-#: cui/uiconfig/ui/hatchpage.ui:312
+#: cui/uiconfig/ui/hatchpage.ui:352
msgctxt "hatchpage|propfl"
msgid "Options"
msgstr "Optiounen"
-#: cui/uiconfig/ui/hatchpage.ui:356
+#: cui/uiconfig/ui/hatchpage.ui:402
msgctxt "hatchpage|previewctl-atkobject"
msgid "Example"
msgstr "Beispill"
-#: cui/uiconfig/ui/hatchpage.ui:374
+#: cui/uiconfig/ui/hatchpage.ui:424
msgctxt "hatchpage|label1"
msgid "Preview"
msgstr "Iwwersiicht"
@@ -6106,27 +6128,27 @@ msgctxt "hyperlinknewdocpage|label1"
msgid "Further Settings"
msgstr ""
-#: cui/uiconfig/ui/hyphenate.ui:19
+#: cui/uiconfig/ui/hyphenate.ui:18
msgctxt "hyphenate|HyphenateDialog"
msgid "Hyphenation"
msgstr "Silbentrennung"
-#: cui/uiconfig/ui/hyphenate.ui:48
+#: cui/uiconfig/ui/hyphenate.ui:53
msgctxt "hyphenate|hyphall"
msgid "Hyphenate All"
msgstr ""
-#: cui/uiconfig/ui/hyphenate.ui:98
+#: cui/uiconfig/ui/hyphenate.ui:103
msgctxt "hyphenate|ok"
msgid "Hyphenate"
msgstr ""
-#: cui/uiconfig/ui/hyphenate.ui:112
+#: cui/uiconfig/ui/hyphenate.ui:118
msgctxt "hyphenate|continue"
msgid "Skip"
msgstr ""
-#: cui/uiconfig/ui/hyphenate.ui:148
+#: cui/uiconfig/ui/hyphenate.ui:153
#, fuzzy
msgctxt "hyphenate|label1"
msgid "Word:"
@@ -6399,310 +6421,312 @@ msgctxt "linedialog|LineDialog"
msgid "Line"
msgstr "Zeil "
-#: cui/uiconfig/ui/linedialog.ui:106
+#: cui/uiconfig/ui/linedialog.ui:138
msgctxt "linedialog|RID_SVXPAGE_LINE"
msgid "Line"
msgstr "Zeil "
-#: cui/uiconfig/ui/linedialog.ui:128
+#: cui/uiconfig/ui/linedialog.ui:184
#, fuzzy
msgctxt "linedialog|RID_SVXPAGE_SHADOW"
msgid "Shadow"
msgstr "Schattéiert"
-#: cui/uiconfig/ui/linedialog.ui:151
+#: cui/uiconfig/ui/linedialog.ui:231
msgctxt "linedialog|RID_SVXPAGE_LINE_DEF"
msgid "Line Styles"
msgstr ""
-#: cui/uiconfig/ui/linedialog.ui:174
+#: cui/uiconfig/ui/linedialog.ui:278
msgctxt "linedialog|RID_SVXPAGE_LINEEND_DEF"
msgid "Arrow Styles"
msgstr ""
-#: cui/uiconfig/ui/lineendstabpage.ui:49
+#: cui/uiconfig/ui/lineendstabpage.ui:70
#, fuzzy
msgctxt "lineendstabpage|FT_TITLE"
msgid "_Title:"
msgstr "Titel"
-#: cui/uiconfig/ui/lineendstabpage.ui:65
+#: cui/uiconfig/ui/lineendstabpage.ui:84
msgctxt "lineendstabpage|FT_LINE_END_STYLE"
msgid "Arrow _style:"
msgstr ""
-#: cui/uiconfig/ui/lineendstabpage.ui:110
+#: cui/uiconfig/ui/lineendstabpage.ui:137
msgctxt "lineendstabpage|FI_TIP"
msgid "Add a selected object to create new arrow styles."
msgstr ""
-#: cui/uiconfig/ui/lineendstabpage.ui:151
+#: cui/uiconfig/ui/lineendstabpage.ui:178
#, fuzzy
msgctxt "lineendstabpage|BTN_MODIFY"
msgid "_Modify"
msgstr "Veränneren"
-#: cui/uiconfig/ui/lineendstabpage.ui:189
+#: cui/uiconfig/ui/lineendstabpage.ui:217
msgctxt "lineendstabpage|BTN_LOAD|tooltip_text"
msgid "Load arrow styles"
msgstr ""
-#: cui/uiconfig/ui/lineendstabpage.ui:207
+#: cui/uiconfig/ui/lineendstabpage.ui:232
msgctxt "lineendstabpage|BTN_SAVE|tooltip_text"
msgid "Save arrow styles"
msgstr ""
-#: cui/uiconfig/ui/lineendstabpage.ui:275
+#: cui/uiconfig/ui/lineendstabpage.ui:311
msgctxt "lineendstabpage|label1"
msgid "Organize Arrow Styles"
msgstr ""
-#: cui/uiconfig/ui/linestyletabpage.ui:34
-#, fuzzy
-msgctxt "linestyletabpage|liststoreTYPE"
-msgid "Dots"
-msgstr "Punkten "
-
-#: cui/uiconfig/ui/linestyletabpage.ui:38
-msgctxt "linestyletabpage|liststoreTYPE"
-msgid "Dash"
-msgstr ""
-
-#: cui/uiconfig/ui/linestyletabpage.ui:92
+#: cui/uiconfig/ui/linestyletabpage.ui:100
msgctxt "linestyletabpage|FT_LINESTYLE"
msgid "Line _style:"
msgstr ""
-#: cui/uiconfig/ui/linestyletabpage.ui:130
+#: cui/uiconfig/ui/linestyletabpage.ui:157
#, fuzzy
msgctxt "linestyletabpage|FT_TYPE"
msgid "_Type:"
msgstr "Typ:"
-#: cui/uiconfig/ui/linestyletabpage.ui:146
+#: cui/uiconfig/ui/linestyletabpage.ui:171
#, fuzzy
msgctxt "linestyletabpage|FT_NUMBER"
msgid "_Number:"
msgstr "Zuelen"
-#: cui/uiconfig/ui/linestyletabpage.ui:162
+#: cui/uiconfig/ui/linestyletabpage.ui:185
msgctxt "linestyletabpage|FT_LENGTH"
msgid "_Length:"
msgstr ""
-#: cui/uiconfig/ui/linestyletabpage.ui:178
+#: cui/uiconfig/ui/linestyletabpage.ui:199
#, fuzzy
msgctxt "linestyletabpage|FT_DISTANCE"
msgid "_Spacing:"
msgstr "Ofstand "
-#: cui/uiconfig/ui/linestyletabpage.ui:191
+#: cui/uiconfig/ui/linestyletabpage.ui:211
msgctxt "linestyletabpage|CBX_SYNCHRONIZE"
msgid "_Fit to line width"
msgstr ""
-#: cui/uiconfig/ui/linestyletabpage.ui:349
+#: cui/uiconfig/ui/linestyletabpage.ui:230
+#: cui/uiconfig/ui/linestyletabpage.ui:245
+#, fuzzy
+msgctxt "linestyletabpage|liststoreTYPE"
+msgid "Dots"
+msgstr "Punkten "
+
+#: cui/uiconfig/ui/linestyletabpage.ui:231
+#: cui/uiconfig/ui/linestyletabpage.ui:246
+msgctxt "linestyletabpage|liststoreTYPE"
+msgid "Dash"
+msgstr ""
+
+#: cui/uiconfig/ui/linestyletabpage.ui:366
#, fuzzy
msgctxt "linestyletabpage|BTN_MODIFY"
msgid "_Modify"
msgstr "Veränneren"
-#: cui/uiconfig/ui/linestyletabpage.ui:387
+#: cui/uiconfig/ui/linestyletabpage.ui:405
msgctxt "linestyletabpage|BTN_LOAD|tooltip_text"
msgid "Load Line Styles"
msgstr ""
-#: cui/uiconfig/ui/linestyletabpage.ui:405
+#: cui/uiconfig/ui/linestyletabpage.ui:420
msgctxt "linestyletabpage|BTN_SAVE|tooltip_text"
msgid "Save Line Styles"
msgstr ""
-#: cui/uiconfig/ui/linestyletabpage.ui:460
+#: cui/uiconfig/ui/linestyletabpage.ui:485
msgctxt "linestyletabpage|label1"
msgid "Properties"
msgstr "Eegeschaften"
-#: cui/uiconfig/ui/linetabpage.ui:30
-msgctxt "linetabpage|liststoreCAP_STYLE"
-msgid "Flat"
-msgstr ""
-
-#: cui/uiconfig/ui/linetabpage.ui:34
-msgctxt "linetabpage|liststoreCAP_STYLE"
-msgid "Round"
+#: cui/uiconfig/ui/linetabpage.ui:78
+msgctxt "linetabpage|menuitem1"
+msgid "_No Symbol"
msgstr ""
-#: cui/uiconfig/ui/linetabpage.ui:38
-msgctxt "linetabpage|liststoreCAP_STYLE"
-msgid "Square"
-msgstr "Quadrat"
+#: cui/uiconfig/ui/linetabpage.ui:86
+#, fuzzy
+msgctxt "linetabpage|menuitem2"
+msgid "_Automatic"
+msgstr "Automatesch"
-#: cui/uiconfig/ui/linetabpage.ui:52
-msgctxt "linetabpage|liststoreEDGE_STYLE"
-msgid "Rounded"
+#: cui/uiconfig/ui/linetabpage.ui:94
+msgctxt "linetabpage|menuitem3"
+msgid "_From file..."
msgstr ""
-#: cui/uiconfig/ui/linetabpage.ui:56
-msgctxt "linetabpage|liststoreEDGE_STYLE"
-msgid "- none -"
-msgstr "- keen -"
-
-#: cui/uiconfig/ui/linetabpage.ui:60
-msgctxt "linetabpage|liststoreEDGE_STYLE"
-msgid "Mitered"
-msgstr ""
+#: cui/uiconfig/ui/linetabpage.ui:102
+#, fuzzy
+msgctxt "linetabpage|menuitem4"
+msgid "_Gallery"
+msgstr "Galerie"
-#: cui/uiconfig/ui/linetabpage.ui:64
-msgctxt "linetabpage|liststoreEDGE_STYLE"
-msgid "Beveled"
-msgstr ""
+#: cui/uiconfig/ui/linetabpage.ui:116
+#, fuzzy
+msgctxt "linetabpage|menuitem5"
+msgid "_Symbols"
+msgstr "Symboler"
-#: cui/uiconfig/ui/linetabpage.ui:109
+#: cui/uiconfig/ui/linetabpage.ui:168
msgctxt "linetabpage|FT_LINE_STYLE"
msgid "_Style:"
msgstr ""
-#: cui/uiconfig/ui/linetabpage.ui:148
+#: cui/uiconfig/ui/linetabpage.ui:221
msgctxt "linetabpage|FT_COLOR"
msgid "Colo_r:"
msgstr ""
-#: cui/uiconfig/ui/linetabpage.ui:186
+#: cui/uiconfig/ui/linetabpage.ui:264
#, fuzzy
msgctxt "linetabpage|FT_LINE_WIDTH"
msgid "_Width:"
msgstr "Breet"
-#: cui/uiconfig/ui/linetabpage.ui:227
+#: cui/uiconfig/ui/linetabpage.ui:305
#, fuzzy
msgctxt "linetabpage|FT_TRANSPARENT"
msgid "_Transparency:"
msgstr "Transparenz"
-#: cui/uiconfig/ui/linetabpage.ui:265
+#: cui/uiconfig/ui/linetabpage.ui:344
msgctxt "linetabpage|label1"
msgid "Line Properties"
msgstr ""
-#: cui/uiconfig/ui/linetabpage.ui:313
+#: cui/uiconfig/ui/linetabpage.ui:391
msgctxt "linetabpage|FT_LINE_ENDS_STYLE"
msgid "Start st_yle:"
msgstr ""
-#: cui/uiconfig/ui/linetabpage.ui:353
+#: cui/uiconfig/ui/linetabpage.ui:453
msgctxt "linetabpage|label5"
msgid "End sty_le:"
msgstr ""
-#: cui/uiconfig/ui/linetabpage.ui:375
+#: cui/uiconfig/ui/linetabpage.ui:473
#, fuzzy
msgctxt "linetabpage|FT_LINE_START_WIDTH"
msgid "Wi_dth:"
msgstr "Breet"
-#: cui/uiconfig/ui/linetabpage.ui:401
+#: cui/uiconfig/ui/linetabpage.ui:500
#, fuzzy
msgctxt "linetabpage|TSB_CENTER_START"
msgid "Ce_nter"
msgstr "Mëtt"
-#: cui/uiconfig/ui/linetabpage.ui:435
+#: cui/uiconfig/ui/linetabpage.ui:531
#, fuzzy
msgctxt "linetabpage|FT_LINE_END_WIDTH"
msgid "W_idth:"
msgstr "Breet"
-#: cui/uiconfig/ui/linetabpage.ui:461
+#: cui/uiconfig/ui/linetabpage.ui:558
#, fuzzy
msgctxt "linetabpage|TSB_CENTER_END"
msgid "C_enter"
msgstr "Mëtt"
-#: cui/uiconfig/ui/linetabpage.ui:493
+#: cui/uiconfig/ui/linetabpage.ui:588
msgctxt "linetabpage|CBX_SYNCHRONIZE"
msgid "Synchroni_ze ends"
msgstr ""
-#: cui/uiconfig/ui/linetabpage.ui:515
+#: cui/uiconfig/ui/linetabpage.ui:610
msgctxt "linetabpage|label2"
msgid "Arrow Styles"
msgstr ""
-#: cui/uiconfig/ui/linetabpage.ui:551
+#: cui/uiconfig/ui/linetabpage.ui:645
msgctxt "linetabpage|FT_EDGE_STYLE"
msgid "_Corner style:"
msgstr ""
-#: cui/uiconfig/ui/linetabpage.ui:567
+#: cui/uiconfig/ui/linetabpage.ui:659
msgctxt "linetabpage|FT_CAP_STYLE"
msgid "Ca_p style:"
msgstr ""
-#: cui/uiconfig/ui/linetabpage.ui:612
+#: cui/uiconfig/ui/linetabpage.ui:674
+msgctxt "linetabpage|liststoreEDGE_STYLE"
+msgid "Rounded"
+msgstr ""
+
+#: cui/uiconfig/ui/linetabpage.ui:675
+msgctxt "linetabpage|liststoreEDGE_STYLE"
+msgid "- none -"
+msgstr "- keen -"
+
+#: cui/uiconfig/ui/linetabpage.ui:676
+msgctxt "linetabpage|liststoreEDGE_STYLE"
+msgid "Mitered"
+msgstr ""
+
+#: cui/uiconfig/ui/linetabpage.ui:677
+msgctxt "linetabpage|liststoreEDGE_STYLE"
+msgid "Beveled"
+msgstr ""
+
+#: cui/uiconfig/ui/linetabpage.ui:690
+msgctxt "linetabpage|liststoreCAP_STYLE"
+msgid "Flat"
+msgstr ""
+
+#: cui/uiconfig/ui/linetabpage.ui:691
+msgctxt "linetabpage|liststoreCAP_STYLE"
+msgid "Round"
+msgstr ""
+
+#: cui/uiconfig/ui/linetabpage.ui:692
+msgctxt "linetabpage|liststoreCAP_STYLE"
+msgid "Square"
+msgstr "Quadrat"
+
+#: cui/uiconfig/ui/linetabpage.ui:708
msgctxt "linetabpage|label3"
msgid "Corner and Cap Styles"
msgstr ""
-#: cui/uiconfig/ui/linetabpage.ui:645
+#: cui/uiconfig/ui/linetabpage.ui:741
msgctxt "linetabpage|MB_SYMBOL_BITMAP"
msgid "Select..."
msgstr ""
-#: cui/uiconfig/ui/linetabpage.ui:667
+#: cui/uiconfig/ui/linetabpage.ui:767
#, fuzzy
msgctxt "linetabpage|FT_SYMBOL_WIDTH"
msgid "Widt_h:"
msgstr "Breet"
-#: cui/uiconfig/ui/linetabpage.ui:694
+#: cui/uiconfig/ui/linetabpage.ui:791
msgctxt "linetabpage|CB_SYMBOL_RATIO"
msgid "_Keep ratio"
msgstr ""
-#: cui/uiconfig/ui/linetabpage.ui:714
+#: cui/uiconfig/ui/linetabpage.ui:809
#, fuzzy
msgctxt "linetabpage|FT_SYMBOL_HEIGHT"
msgid "Hei_ght:"
msgstr "Héicht"
-#: cui/uiconfig/ui/linetabpage.ui:753
+#: cui/uiconfig/ui/linetabpage.ui:846
msgctxt "linetabpage|label4"
msgid "Icon"
msgstr ""
-#: cui/uiconfig/ui/linetabpage.ui:792
+#: cui/uiconfig/ui/linetabpage.ui:896
msgctxt "linetabpage|CTL_PREVIEW-atkobject"
msgid "Example"
msgstr "Beispill"
-#: cui/uiconfig/ui/linetabpage.ui:818
-msgctxt "linetabpage|menuitem1"
-msgid "_No Symbol"
-msgstr ""
-
-#: cui/uiconfig/ui/linetabpage.ui:826
-#, fuzzy
-msgctxt "linetabpage|menuitem2"
-msgid "_Automatic"
-msgstr "Automatesch"
-
-#: cui/uiconfig/ui/linetabpage.ui:834
-msgctxt "linetabpage|menuitem3"
-msgid "_From file..."
-msgstr ""
-
-#: cui/uiconfig/ui/linetabpage.ui:842
-#, fuzzy
-msgctxt "linetabpage|menuitem4"
-msgid "_Gallery"
-msgstr "Galerie"
-
-#: cui/uiconfig/ui/linetabpage.ui:850
-#, fuzzy
-msgctxt "linetabpage|menuitem5"
-msgid "_Symbols"
-msgstr "Symboler"
-
#: cui/uiconfig/ui/macroassigndialog.ui:8
msgctxt "macroassigndialog|MacroAssignDialog"
msgid "Assign Action"
@@ -6969,34 +6993,34 @@ msgctxt "menuassignpage|restoreItem"
msgid "Restore Default Command"
msgstr ""
-#: cui/uiconfig/ui/mosaicdialog.ui:16
+#: cui/uiconfig/ui/mosaicdialog.ui:21
msgctxt "mosaicdialog|MosaicDialog"
msgid "Mosaic"
msgstr ""
-#: cui/uiconfig/ui/mosaicdialog.ui:144
+#: cui/uiconfig/ui/mosaicdialog.ui:171
#, fuzzy
msgctxt "mosaicdialog|label2"
msgid "_Width:"
msgstr "Breet"
-#: cui/uiconfig/ui/mosaicdialog.ui:168
+#: cui/uiconfig/ui/mosaicdialog.ui:196
msgctxt "mosaicdialog|height"
msgid "2"
msgstr ""
-#: cui/uiconfig/ui/mosaicdialog.ui:182
+#: cui/uiconfig/ui/mosaicdialog.ui:209
#, fuzzy
msgctxt "mosaicdialog|label3"
msgid "_Height:"
msgstr "Héicht"
-#: cui/uiconfig/ui/mosaicdialog.ui:199
+#: cui/uiconfig/ui/mosaicdialog.ui:227
msgctxt "mosaicdialog|edges"
msgid "E_nhance edges"
msgstr ""
-#: cui/uiconfig/ui/mosaicdialog.ui:226
+#: cui/uiconfig/ui/mosaicdialog.ui:254
msgctxt "mosaicdialog|label1"
msgid "Parameters"
msgstr ""
@@ -7112,420 +7136,420 @@ msgctxt "newtoolbardialog|label2"
msgid "_Save in:"
msgstr ""
-#: cui/uiconfig/ui/numberingformatpage.ui:38
+#: cui/uiconfig/ui/numberingformatpage.ui:42
#, fuzzy
msgctxt "numberingformatpage|liststore1"
msgid "All"
msgstr "Alles"
-#: cui/uiconfig/ui/numberingformatpage.ui:41
+#: cui/uiconfig/ui/numberingformatpage.ui:45
#, fuzzy
msgctxt "numberingformatpage|liststore1"
msgid "User-defined"
msgstr "Benotzer-definéiert1"
-#: cui/uiconfig/ui/numberingformatpage.ui:44
+#: cui/uiconfig/ui/numberingformatpage.ui:48
#, fuzzy
msgctxt "numberingformatpage|liststore1"
msgid "Number"
msgstr "Zuelen"
-#: cui/uiconfig/ui/numberingformatpage.ui:47
+#: cui/uiconfig/ui/numberingformatpage.ui:51
msgctxt "numberingformatpage|liststore1"
msgid "Percent"
msgstr ""
-#: cui/uiconfig/ui/numberingformatpage.ui:50
+#: cui/uiconfig/ui/numberingformatpage.ui:54
msgctxt "numberingformatpage|liststore1"
msgid "Currency"
msgstr "Währung"
-#: cui/uiconfig/ui/numberingformatpage.ui:53
+#: cui/uiconfig/ui/numberingformatpage.ui:57
msgctxt "numberingformatpage|liststore1"
msgid "Date"
msgstr "Datum"
-#: cui/uiconfig/ui/numberingformatpage.ui:56
+#: cui/uiconfig/ui/numberingformatpage.ui:60
msgctxt "numberingformatpage|liststore1"
msgid "Time"
msgstr "Zäit"
-#: cui/uiconfig/ui/numberingformatpage.ui:59
+#: cui/uiconfig/ui/numberingformatpage.ui:63
msgctxt "numberingformatpage|liststore1"
msgid "Scientific"
msgstr ""
-#: cui/uiconfig/ui/numberingformatpage.ui:62
+#: cui/uiconfig/ui/numberingformatpage.ui:66
#, fuzzy
msgctxt "numberingformatpage|liststore1"
msgid "Fraction"
msgstr "Bréch"
-#: cui/uiconfig/ui/numberingformatpage.ui:65
+#: cui/uiconfig/ui/numberingformatpage.ui:69
msgctxt "numberingformatpage|liststore1"
msgid "Boolean Value"
msgstr ""
-#: cui/uiconfig/ui/numberingformatpage.ui:68
+#: cui/uiconfig/ui/numberingformatpage.ui:72
msgctxt "numberingformatpage|liststore1"
msgid "Text"
msgstr "Text"
-#: cui/uiconfig/ui/numberingformatpage.ui:79
-msgctxt "numberingformatpage|liststore2"
-msgid "Automatically"
-msgstr ""
-
-#: cui/uiconfig/ui/numberingformatpage.ui:125
+#: cui/uiconfig/ui/numberingformatpage.ui:134
#, fuzzy
msgctxt "numberingformatpage|add|tooltip_text"
msgid "Add"
msgstr "~Bäifügen"
-#: cui/uiconfig/ui/numberingformatpage.ui:140
+#: cui/uiconfig/ui/numberingformatpage.ui:149
#, fuzzy
msgctxt "numberingformatpage|edit|tooltip_text"
msgid "Edit Comment"
msgstr "Dokument drécken"
-#: cui/uiconfig/ui/numberingformatpage.ui:155
+#: cui/uiconfig/ui/numberingformatpage.ui:164
msgctxt "numberingformatpage|delete|tooltip_text"
msgid "Remove"
msgstr "Ewechmaachen"
-#: cui/uiconfig/ui/numberingformatpage.ui:180
+#: cui/uiconfig/ui/numberingformatpage.ui:189
msgctxt "numberingformatpage|commented|tooltip_text"
msgid "Comment"
msgstr ""
-#: cui/uiconfig/ui/numberingformatpage.ui:196
+#: cui/uiconfig/ui/numberingformatpage.ui:205
msgctxt "numberingformatpage|formatf"
msgid "_Format code"
msgstr ""
-#: cui/uiconfig/ui/numberingformatpage.ui:289
-msgctxt "numberingformatpage|decimalsft"
-msgid "_Decimal places:"
-msgstr ""
-
-#: cui/uiconfig/ui/numberingformatpage.ui:304
+#: cui/uiconfig/ui/numberingformatpage.ui:296
msgctxt "numberingformatpage|denominatorft"
msgid "Den_ominator places:"
msgstr ""
-#: cui/uiconfig/ui/numberingformatpage.ui:325
+#: cui/uiconfig/ui/numberingformatpage.ui:311
+msgctxt "numberingformatpage|decimalsft"
+msgid "_Decimal places:"
+msgstr ""
+
+#: cui/uiconfig/ui/numberingformatpage.ui:332
msgctxt "numberingformatpage|leadzerosft"
msgid "Leading _zeroes:"
msgstr ""
-#: cui/uiconfig/ui/numberingformatpage.ui:336
+#: cui/uiconfig/ui/numberingformatpage.ui:344
msgctxt "numberingformatpage|negnumred"
msgid "_Negative numbers red"
msgstr ""
-#: cui/uiconfig/ui/numberingformatpage.ui:358
-msgctxt "numberingformatpage|thousands"
-msgid "_Thousands separator"
-msgstr ""
-
-#: cui/uiconfig/ui/numberingformatpage.ui:374
+#: cui/uiconfig/ui/numberingformatpage.ui:366
msgctxt "numberingformatpage|engineering"
msgid "_Engineering notation"
msgstr ""
-#: cui/uiconfig/ui/numberingformatpage.ui:402
+#: cui/uiconfig/ui/numberingformatpage.ui:381
+msgctxt "numberingformatpage|thousands"
+msgid "_Thousands separator"
+msgstr ""
+
+#: cui/uiconfig/ui/numberingformatpage.ui:409
msgctxt "numberingformatpage|optionsft"
msgid "Options"
msgstr "Optiounen"
-#: cui/uiconfig/ui/numberingformatpage.ui:459
+#: cui/uiconfig/ui/numberingformatpage.ui:482
#, fuzzy
msgctxt "numberingformatpage|categoryft"
msgid "C_ategory"
msgstr "Kategorie"
-#: cui/uiconfig/ui/numberingformatpage.ui:532
+#: cui/uiconfig/ui/numberingformatpage.ui:526
+msgctxt "numberingformatpage|liststore2"
+msgid "Automatically"
+msgstr ""
+
+#: cui/uiconfig/ui/numberingformatpage.ui:580
#, fuzzy
msgctxt "numberingformatpage|formatft"
msgid "Fo_rmat"
msgstr "Format"
-#: cui/uiconfig/ui/numberingformatpage.ui:592
+#: cui/uiconfig/ui/numberingformatpage.ui:626
msgctxt "numberingformatpage|sourceformat"
msgid "So_urce format"
msgstr ""
-#: cui/uiconfig/ui/numberingformatpage.ui:613
+#: cui/uiconfig/ui/numberingformatpage.ui:673
#, fuzzy
msgctxt "numberingformatpage|languageft"
msgid "_Language"
msgstr "Sprooch"
-#: cui/uiconfig/ui/numberingoptionspage.ui:64
+#: cui/uiconfig/ui/numberingoptionspage.ui:42
+msgctxt "numberingoptionspage|fromfile"
+msgid "From file..."
+msgstr ""
+
+#: cui/uiconfig/ui/numberingoptionspage.ui:50
+msgctxt "numberingoptionspage|gallery"
+msgid "Gallery"
+msgstr "Galerie"
+
+#: cui/uiconfig/ui/numberingoptionspage.ui:125
msgctxt "numberingoptionspage|label1"
msgid "Level"
msgstr ""
-#: cui/uiconfig/ui/numberingoptionspage.ui:110
+#: cui/uiconfig/ui/numberingoptionspage.ui:171
#, fuzzy
msgctxt "numberingoptionspage|label4"
msgid "Number:"
msgstr "Zuelen"
-#: cui/uiconfig/ui/numberingoptionspage.ui:157
+#: cui/uiconfig/ui/numberingoptionspage.ui:220
msgctxt "numberingoptionspage|startatft"
msgid "Start at:"
msgstr ""
-#: cui/uiconfig/ui/numberingoptionspage.ui:181
+#: cui/uiconfig/ui/numberingoptionspage.ui:244
#, fuzzy
msgctxt "numberingoptionspage|bitmapft"
msgid "Graphics:"
msgstr "Grafiken"
-#: cui/uiconfig/ui/numberingoptionspage.ui:195
+#: cui/uiconfig/ui/numberingoptionspage.ui:258
#, fuzzy
msgctxt "numberingoptionspage|widthft"
msgid "Width:"
msgstr "Breet"
-#: cui/uiconfig/ui/numberingoptionspage.ui:221
+#: cui/uiconfig/ui/numberingoptionspage.ui:285
#, fuzzy
msgctxt "numberingoptionspage|heightft"
msgid "Height:"
msgstr "Héicht"
-#: cui/uiconfig/ui/numberingoptionspage.ui:246
+#: cui/uiconfig/ui/numberingoptionspage.ui:311
msgctxt "numberingoptionspage|keepratio"
msgid "Keep ratio"
msgstr ""
-#: cui/uiconfig/ui/numberingoptionspage.ui:263
+#: cui/uiconfig/ui/numberingoptionspage.ui:328
#, fuzzy
msgctxt "numberingoptionspage|orientft"
msgid "Alignment:"
msgstr "Aus~riichten"
-#: cui/uiconfig/ui/numberingoptionspage.ui:278
+#: cui/uiconfig/ui/numberingoptionspage.ui:343
msgctxt "numberingoptionspage|orientlb"
msgid "Top of baseline"
msgstr ""
-#: cui/uiconfig/ui/numberingoptionspage.ui:279
+#: cui/uiconfig/ui/numberingoptionspage.ui:344
msgctxt "numberingoptionspage|orientlb"
msgid "Center of baseline"
msgstr ""
-#: cui/uiconfig/ui/numberingoptionspage.ui:280
+#: cui/uiconfig/ui/numberingoptionspage.ui:345
msgctxt "numberingoptionspage|orientlb"
msgid "Bottom of baseline"
msgstr ""
-#: cui/uiconfig/ui/numberingoptionspage.ui:281
+#: cui/uiconfig/ui/numberingoptionspage.ui:346
msgctxt "numberingoptionspage|orientlb"
msgid "Top of character"
msgstr ""
-#: cui/uiconfig/ui/numberingoptionspage.ui:282
+#: cui/uiconfig/ui/numberingoptionspage.ui:347
msgctxt "numberingoptionspage|orientlb"
msgid "Center of character"
msgstr ""
-#: cui/uiconfig/ui/numberingoptionspage.ui:283
+#: cui/uiconfig/ui/numberingoptionspage.ui:348
msgctxt "numberingoptionspage|orientlb"
msgid "Bottom of character"
msgstr ""
-#: cui/uiconfig/ui/numberingoptionspage.ui:284
+#: cui/uiconfig/ui/numberingoptionspage.ui:349
msgctxt "numberingoptionspage|orientlb"
msgid "Top of line"
msgstr ""
-#: cui/uiconfig/ui/numberingoptionspage.ui:285
+#: cui/uiconfig/ui/numberingoptionspage.ui:350
msgctxt "numberingoptionspage|orientlb"
msgid "Center of line"
msgstr ""
-#: cui/uiconfig/ui/numberingoptionspage.ui:286
+#: cui/uiconfig/ui/numberingoptionspage.ui:351
msgctxt "numberingoptionspage|orientlb"
msgid "Bottom of line"
msgstr ""
-#: cui/uiconfig/ui/numberingoptionspage.ui:296
+#: cui/uiconfig/ui/numberingoptionspage.ui:361
msgctxt "numberingoptionspage|bitmap"
msgid "Select..."
msgstr ""
-#: cui/uiconfig/ui/numberingoptionspage.ui:329
+#: cui/uiconfig/ui/numberingoptionspage.ui:404
msgctxt "numberingoptionspage|bullet"
msgid "Select..."
msgstr ""
-#: cui/uiconfig/ui/numberingoptionspage.ui:348
+#: cui/uiconfig/ui/numberingoptionspage.ui:423
#, fuzzy
msgctxt "numberingoptionspage|prefixft"
msgid "Before:"
msgstr "~Virdrun"
-#: cui/uiconfig/ui/numberingoptionspage.ui:369
+#: cui/uiconfig/ui/numberingoptionspage.ui:444
msgctxt "numberingoptionspage|separator"
msgid "Separator"
msgstr ""
-#: cui/uiconfig/ui/numberingoptionspage.ui:403
+#: cui/uiconfig/ui/numberingoptionspage.ui:480
#, fuzzy
msgctxt "numberingoptionspage|suffixft"
msgid "After:"
msgstr "~Duerno "
-#: cui/uiconfig/ui/numberingoptionspage.ui:417
+#: cui/uiconfig/ui/numberingoptionspage.ui:494
msgctxt "numberingoptionspage|sublevelsft"
msgid "Show sublevels:"
msgstr ""
-#: cui/uiconfig/ui/numberingoptionspage.ui:432
+#: cui/uiconfig/ui/numberingoptionspage.ui:509
#, fuzzy
msgctxt "numberingoptionspage|bulletft"
msgid "Character:"
msgstr "Zeechen"
-#: cui/uiconfig/ui/numberingoptionspage.ui:446
+#: cui/uiconfig/ui/numberingoptionspage.ui:523
msgctxt "numberingoptionspage|relsizeft"
msgid "_Relative size:"
msgstr ""
-#: cui/uiconfig/ui/numberingoptionspage.ui:460
+#: cui/uiconfig/ui/numberingoptionspage.ui:537
#, fuzzy
msgctxt "numberingoptionspage|colorft"
msgid "Color:"
msgstr "Faarf"
-#: cui/uiconfig/ui/numberingoptionspage.ui:474
+#: cui/uiconfig/ui/numberingoptionspage.ui:551
msgctxt "numberingoptionspage|charstyleft"
msgid "Character style:"
msgstr ""
-#: cui/uiconfig/ui/numberingoptionspage.ui:518
+#: cui/uiconfig/ui/numberingoptionspage.ui:616
msgctxt "numberingoptionspage|label2"
msgid "Numbering"
msgstr ""
-#: cui/uiconfig/ui/numberingoptionspage.ui:545
+#: cui/uiconfig/ui/numberingoptionspage.ui:643
msgctxt "numberingoptionspage|allsame"
msgid "_Consecutive numbering"
msgstr ""
-#: cui/uiconfig/ui/numberingoptionspage.ui:561
+#: cui/uiconfig/ui/numberingoptionspage.ui:659
msgctxt "numberingoptionspage|label3"
msgid "All Levels"
msgstr ""
-#: cui/uiconfig/ui/numberingoptionspage.ui:589
-msgctxt "numberingoptionspage|fromfile"
-msgid "From file..."
-msgstr ""
-
-#: cui/uiconfig/ui/numberingoptionspage.ui:597
-msgctxt "numberingoptionspage|gallery"
-msgid "Gallery"
-msgstr "Galerie"
-
-#: cui/uiconfig/ui/numberingpositionpage.ui:23
-msgctxt "numberingpositionpage|liststore1"
-msgid "Left"
-msgstr "Lénks"
-
-#: cui/uiconfig/ui/numberingpositionpage.ui:26
-#, fuzzy
-msgctxt "numberingpositionpage|liststore1"
-msgid "Centered"
-msgstr "~Zentréiert"
-
-#: cui/uiconfig/ui/numberingpositionpage.ui:29
-#, fuzzy
-msgctxt "numberingpositionpage|liststore1"
-msgid "Right"
-msgstr "Héicht"
-
-#: cui/uiconfig/ui/numberingpositionpage.ui:40
-msgctxt "numberingpositionpage|liststore2"
-msgid "Tab stop"
-msgstr ""
-
-#: cui/uiconfig/ui/numberingpositionpage.ui:43
-msgctxt "numberingpositionpage|liststore2"
-msgid "Space"
-msgstr "Kosmos"
-
-#: cui/uiconfig/ui/numberingpositionpage.ui:46
-msgctxt "numberingpositionpage|liststore2"
-msgid "Nothing"
-msgstr ""
-
-#: cui/uiconfig/ui/numberingpositionpage.ui:88
+#: cui/uiconfig/ui/numberingpositionpage.ui:76
msgctxt "numberingpositionpage|1"
msgid "Level"
msgstr ""
-#: cui/uiconfig/ui/numberingpositionpage.ui:139
+#: cui/uiconfig/ui/numberingpositionpage.ui:126
msgctxt "numberingpositionpage|numfollowedby"
msgid "Numbering followed by:"
msgstr ""
-#: cui/uiconfig/ui/numberingpositionpage.ui:153
+#: cui/uiconfig/ui/numberingpositionpage.ui:140
msgctxt "numberingpositionpage|num2align"
msgid "N_umbering alignment:"
msgstr ""
-#: cui/uiconfig/ui/numberingpositionpage.ui:167
+#: cui/uiconfig/ui/numberingpositionpage.ui:154
msgctxt "numberingpositionpage|alignedat"
msgid "Aligned at:"
msgstr ""
-#: cui/uiconfig/ui/numberingpositionpage.ui:181
+#: cui/uiconfig/ui/numberingpositionpage.ui:168
msgctxt "numberingpositionpage|indentat"
msgid "Indent at:"
msgstr ""
-#: cui/uiconfig/ui/numberingpositionpage.ui:216
+#: cui/uiconfig/ui/numberingpositionpage.ui:194
msgctxt "numberingpositionpage|at"
msgid "Tab stop at:"
msgstr ""
-#: cui/uiconfig/ui/numberingpositionpage.ui:263
+#: cui/uiconfig/ui/numberingpositionpage.ui:233
+msgctxt "numberingpositionpage|liststore2"
+msgid "Tab stop"
+msgstr ""
+
+#: cui/uiconfig/ui/numberingpositionpage.ui:234
+msgctxt "numberingpositionpage|liststore2"
+msgid "Space"
+msgstr "Kosmos"
+
+#: cui/uiconfig/ui/numberingpositionpage.ui:235
+msgctxt "numberingpositionpage|liststore2"
+msgid "Nothing"
+msgstr ""
+
+#: cui/uiconfig/ui/numberingpositionpage.ui:247
#, fuzzy
msgctxt "numberingpositionpage|indent"
msgid "Indent:"
msgstr "Arécklen"
-#: cui/uiconfig/ui/numberingpositionpage.ui:286
+#: cui/uiconfig/ui/numberingpositionpage.ui:272
msgctxt "numberingpositionpage|relative"
msgid "Relati_ve"
msgstr ""
-#: cui/uiconfig/ui/numberingpositionpage.ui:306
+#: cui/uiconfig/ui/numberingpositionpage.ui:291
msgctxt "numberingpositionpage|numberingwidth"
msgid "Width of numbering:"
msgstr ""
-#: cui/uiconfig/ui/numberingpositionpage.ui:344
+#: cui/uiconfig/ui/numberingpositionpage.ui:331
msgctxt "numberingpositionpage|numdist"
msgid ""
"Minimum space between\n"
"numbering and text:"
msgstr ""
-#: cui/uiconfig/ui/numberingpositionpage.ui:360
+#: cui/uiconfig/ui/numberingpositionpage.ui:347
msgctxt "numberingpositionpage|numalign"
msgid "N_umbering alignment:"
msgstr ""
-#: cui/uiconfig/ui/numberingpositionpage.ui:388
+#: cui/uiconfig/ui/numberingpositionpage.ui:362
+msgctxt "numberingpositionpage|liststore1"
+msgid "Left"
+msgstr "Lénks"
+
+#: cui/uiconfig/ui/numberingpositionpage.ui:363
+#, fuzzy
+msgctxt "numberingpositionpage|liststore1"
+msgid "Centered"
+msgstr "~Zentréiert"
+
+#: cui/uiconfig/ui/numberingpositionpage.ui:364
+#, fuzzy
+msgctxt "numberingpositionpage|liststore1"
+msgid "Right"
+msgstr "Héicht"
+
+#: cui/uiconfig/ui/numberingpositionpage.ui:390
msgctxt "numberingpositionpage|label10"
msgid "Position and Spacing"
msgstr ""
-#: cui/uiconfig/ui/numberingpositionpage.ui:410
+#: cui/uiconfig/ui/numberingpositionpage.ui:412
msgctxt "numberingpositionpage|standard"
msgid "Default"
msgstr "Standard"
@@ -8634,26 +8658,21 @@ msgid "Online Update Options"
msgstr ""
#: cui/uiconfig/ui/optopenclpage.ui:30
-msgctxt "optopenclpage|useswinterpreter"
-msgid "Allow use of Software Interpreter (even when OpenCL is not available)"
-msgstr ""
-
-#: cui/uiconfig/ui/optopenclpage.ui:46
msgctxt "optopenclpage|useopencl"
msgid "Allow use of OpenCL"
msgstr ""
-#: cui/uiconfig/ui/optopenclpage.ui:64
+#: cui/uiconfig/ui/optopenclpage.ui:48
msgctxt "optopenclpage|openclused"
msgid "OpenCL is available for use."
msgstr ""
-#: cui/uiconfig/ui/optopenclpage.ui:76
+#: cui/uiconfig/ui/optopenclpage.ui:60
msgctxt "optopenclpage|openclnotused"
msgid "OpenCL is not used."
msgstr ""
-#: cui/uiconfig/ui/optopenclpage.ui:92
+#: cui/uiconfig/ui/optopenclpage.ui:76
msgctxt "optopenclpage|label1"
msgid "OpenCL Options"
msgstr ""
@@ -9490,163 +9509,163 @@ msgctxt "optviewpage|label4"
msgid "Mouse"
msgstr ""
-#: cui/uiconfig/ui/pageformatpage.ui:45
+#: cui/uiconfig/ui/pageformatpage.ui:44
#, fuzzy
msgctxt "pageformatpage|labelFormat"
msgid "_Format:"
msgstr "Format"
-#: cui/uiconfig/ui/pageformatpage.ui:69
+#: cui/uiconfig/ui/pageformatpage.ui:68
#, fuzzy
msgctxt "pageformatpage|labelWidth"
msgid "_Width:"
msgstr "Breet"
-#: cui/uiconfig/ui/pageformatpage.ui:96
+#: cui/uiconfig/ui/pageformatpage.ui:95
#, fuzzy
msgctxt "pageformatpage|labelHeight"
msgid "_Height:"
msgstr "Héicht"
-#: cui/uiconfig/ui/pageformatpage.ui:122
+#: cui/uiconfig/ui/pageformatpage.ui:121
msgctxt "pageformatpage|labelOrientation"
msgid "_Orientation:"
msgstr ""
-#: cui/uiconfig/ui/pageformatpage.ui:134
+#: cui/uiconfig/ui/pageformatpage.ui:133
#, fuzzy
msgctxt "pageformatpage|radiobuttonPortrait"
msgid "_Portrait"
msgstr "Portrait"
-#: cui/uiconfig/ui/pageformatpage.ui:154
+#: cui/uiconfig/ui/pageformatpage.ui:153
#, fuzzy
msgctxt "pageformatpage|radiobuttonLandscape"
msgid "L_andscape"
msgstr "Landschaft"
-#: cui/uiconfig/ui/pageformatpage.ui:177
+#: cui/uiconfig/ui/pageformatpage.ui:176
msgctxt "pageformatpage|labelTextFlow"
msgid "_Text direction:"
msgstr ""
-#: cui/uiconfig/ui/pageformatpage.ui:238
+#: cui/uiconfig/ui/pageformatpage.ui:236
msgctxt "pageformatpage|labelPaperTray"
msgid "Paper _tray:"
msgstr ""
-#: cui/uiconfig/ui/pageformatpage.ui:274
+#: cui/uiconfig/ui/pageformatpage.ui:272
msgctxt "pageformatpage|labelPaperFormat"
msgid "Paper Format"
msgstr ""
-#: cui/uiconfig/ui/pageformatpage.ui:318
+#: cui/uiconfig/ui/pageformatpage.ui:316
#, fuzzy
msgctxt "pageformatpage|labelTopMargin"
msgid "Top:"
msgstr "Uewen"
-#: cui/uiconfig/ui/pageformatpage.ui:332
+#: cui/uiconfig/ui/pageformatpage.ui:330
#, fuzzy
msgctxt "pageformatpage|labelBottomMargin"
msgid "Bottom:"
msgstr "Ënnen"
-#: cui/uiconfig/ui/pageformatpage.ui:395
+#: cui/uiconfig/ui/pageformatpage.ui:393
#, fuzzy
msgctxt "pageformatpage|labelRightMargin"
msgid "Right:"
msgstr "Héicht"
-#: cui/uiconfig/ui/pageformatpage.ui:409
+#: cui/uiconfig/ui/pageformatpage.ui:407
msgctxt "pageformatpage|labelOuter"
msgid "O_uter:"
msgstr ""
-#: cui/uiconfig/ui/pageformatpage.ui:435
+#: cui/uiconfig/ui/pageformatpage.ui:433
#, fuzzy
msgctxt "pageformatpage|labelLeftMargin"
msgid "Left:"
msgstr "Lénks"
-#: cui/uiconfig/ui/pageformatpage.ui:449
+#: cui/uiconfig/ui/pageformatpage.ui:447
msgctxt "pageformatpage|labelInner"
msgid "I_nner:"
msgstr ""
-#: cui/uiconfig/ui/pageformatpage.ui:474
+#: cui/uiconfig/ui/pageformatpage.ui:472
msgctxt "pageformatpage|labelMargins"
msgid "Margins"
msgstr ""
-#: cui/uiconfig/ui/pageformatpage.ui:511
+#: cui/uiconfig/ui/pageformatpage.ui:509
msgctxt "pageformatpage|labelPageLayout"
msgid "_Page layout:"
msgstr ""
-#: cui/uiconfig/ui/pageformatpage.ui:526
+#: cui/uiconfig/ui/pageformatpage.ui:524
msgctxt "pageformatpage|label4"
msgid "Page numbers:"
msgstr ""
-#: cui/uiconfig/ui/pageformatpage.ui:538
+#: cui/uiconfig/ui/pageformatpage.ui:536
msgctxt "pageformatpage|checkRegisterTrue"
msgid "Register-tr_ue"
msgstr ""
-#: cui/uiconfig/ui/pageformatpage.ui:557
+#: cui/uiconfig/ui/pageformatpage.ui:555
msgctxt "pageformatpage|liststorePageLayout"
msgid "Right and left"
msgstr ""
-#: cui/uiconfig/ui/pageformatpage.ui:558
+#: cui/uiconfig/ui/pageformatpage.ui:556
msgctxt "pageformatpage|liststorePageLayout"
msgid "Mirrored"
msgstr ""
-#: cui/uiconfig/ui/pageformatpage.ui:559
+#: cui/uiconfig/ui/pageformatpage.ui:557
msgctxt "pageformatpage|liststorePageLayout"
msgid "Only right"
msgstr ""
-#: cui/uiconfig/ui/pageformatpage.ui:560
+#: cui/uiconfig/ui/pageformatpage.ui:558
msgctxt "pageformatpage|liststorePageLayout"
msgid "Only left"
msgstr ""
-#: cui/uiconfig/ui/pageformatpage.ui:583
+#: cui/uiconfig/ui/pageformatpage.ui:581
msgctxt "pageformatpage|labelTblAlign"
msgid "Table alignment:"
msgstr ""
-#: cui/uiconfig/ui/pageformatpage.ui:595
+#: cui/uiconfig/ui/pageformatpage.ui:593
#, fuzzy
msgctxt "pageformatpage|checkbuttonHorz"
msgid "Hori_zontal"
msgstr "Horizontal"
-#: cui/uiconfig/ui/pageformatpage.ui:610
+#: cui/uiconfig/ui/pageformatpage.ui:608
#, fuzzy
msgctxt "pageformatpage|checkbuttonVert"
msgid "_Vertical"
msgstr "~Vertikal"
-#: cui/uiconfig/ui/pageformatpage.ui:625
+#: cui/uiconfig/ui/pageformatpage.ui:623
msgctxt "pageformatpage|checkAdaptBox"
msgid "_Fit object to paper format"
msgstr ""
-#: cui/uiconfig/ui/pageformatpage.ui:656
+#: cui/uiconfig/ui/pageformatpage.ui:654
msgctxt "pageformatpage|labelRegisterStyle"
msgid "Reference _Style:"
msgstr ""
-#: cui/uiconfig/ui/pageformatpage.ui:698
+#: cui/uiconfig/ui/pageformatpage.ui:696
msgctxt "pageformatpage|label5"
msgid "Layout Settings"
msgstr ""
-#: cui/uiconfig/ui/pageformatpage.ui:719
+#: cui/uiconfig/ui/pageformatpage.ui:717
msgctxt "pageformatpage|labelMsg"
msgid ""
"The margin settings are out of print range.\n"
@@ -9654,327 +9673,327 @@ msgid ""
"Do you still want to apply these settings?"
msgstr ""
-#: cui/uiconfig/ui/paragalignpage.ui:41
+#: cui/uiconfig/ui/paragalignpage.ui:39
msgctxt "paragalignpage|drawingareaWN_EXAMPLE-atkobject"
msgid "Example"
msgstr "Beispill"
-#: cui/uiconfig/ui/paragalignpage.ui:80
+#: cui/uiconfig/ui/paragalignpage.ui:82
#, fuzzy
msgctxt "paragalignpage|radioBTN_LEFTALIGN"
msgid "_Left"
msgstr "Lénks"
-#: cui/uiconfig/ui/paragalignpage.ui:96
+#: cui/uiconfig/ui/paragalignpage.ui:98
#, fuzzy
msgctxt "paragalignpage|radioBTN_RIGHTALIGN"
msgid "_Right"
msgstr "Héicht"
-#: cui/uiconfig/ui/paragalignpage.ui:112
+#: cui/uiconfig/ui/paragalignpage.ui:114
#, fuzzy
msgctxt "paragalignpage|radioBTN_CENTERALIGN"
msgid "_Center"
msgstr "Mëtt"
-#: cui/uiconfig/ui/paragalignpage.ui:129
+#: cui/uiconfig/ui/paragalignpage.ui:131
#, fuzzy
msgctxt "paragalignpage|radioBTN_JUSTIFYALIGN"
msgid "_Justified"
msgstr "Ausgerichtet"
-#: cui/uiconfig/ui/paragalignpage.ui:145
+#: cui/uiconfig/ui/paragalignpage.ui:147
msgctxt "paragalignpage|checkCB_EXPAND"
msgid "_Expand single word"
msgstr ""
-#: cui/uiconfig/ui/paragalignpage.ui:162
+#: cui/uiconfig/ui/paragalignpage.ui:164
msgctxt "paragalignpage|checkCB_SNAP"
msgid "_Snap to text grid (if active)"
msgstr ""
-#: cui/uiconfig/ui/paragalignpage.ui:193
+#: cui/uiconfig/ui/paragalignpage.ui:195
msgctxt "paragalignpage|labelLB_LASTLINE"
msgid "_Last line:"
msgstr ""
-#: cui/uiconfig/ui/paragalignpage.ui:216 cui/uiconfig/ui/paragalignpage.ui:217
+#: cui/uiconfig/ui/paragalignpage.ui:219 cui/uiconfig/ui/paragalignpage.ui:220
#, fuzzy
msgctxt "paragalignpage|liststoreLB_LASTLINE"
msgid "Start"
msgstr "Ufank"
-#: cui/uiconfig/ui/paragalignpage.ui:218
+#: cui/uiconfig/ui/paragalignpage.ui:221
#, fuzzy
msgctxt "paragalignpage|liststoreLB_LASTLINE"
msgid "Centered"
msgstr "~Zentréiert"
-#: cui/uiconfig/ui/paragalignpage.ui:219
+#: cui/uiconfig/ui/paragalignpage.ui:222
#, fuzzy
msgctxt "paragalignpage|liststoreLB_LASTLINE"
msgid "Justified"
msgstr "Ausgerichtet"
-#: cui/uiconfig/ui/paragalignpage.ui:242
+#: cui/uiconfig/ui/paragalignpage.ui:245
msgctxt "paragalignpage|labelST_RIGHTALIGN_ASIAN"
msgid "Righ_t/Bottom"
msgstr ""
-#: cui/uiconfig/ui/paragalignpage.ui:255
+#: cui/uiconfig/ui/paragalignpage.ui:258
msgctxt "paragalignpage|labelST_LEFTALIGN_ASIAN"
msgid "_Left/Top"
msgstr ""
-#: cui/uiconfig/ui/paragalignpage.ui:278
+#: cui/uiconfig/ui/paragalignpage.ui:281
msgctxt "paragalignpage|label1"
msgid "Options"
msgstr "Optiounen"
-#: cui/uiconfig/ui/paragalignpage.ui:312
+#: cui/uiconfig/ui/paragalignpage.ui:315
#, fuzzy
msgctxt "paragalignpage|labelFT_VERTALIGN"
msgid "_Alignment:"
msgstr "Aus~riichten"
-#: cui/uiconfig/ui/paragalignpage.ui:328
+#: cui/uiconfig/ui/paragalignpage.ui:332
msgctxt "paragalignpage|liststoreLB_VERTALIGN"
msgid "Automatic"
msgstr "Automatesch"
-#: cui/uiconfig/ui/paragalignpage.ui:329
+#: cui/uiconfig/ui/paragalignpage.ui:333
msgctxt "paragalignpage|liststoreLB_VERTALIGN"
msgid "Base line"
msgstr ""
-#: cui/uiconfig/ui/paragalignpage.ui:330
+#: cui/uiconfig/ui/paragalignpage.ui:334
msgctxt "paragalignpage|liststoreLB_VERTALIGN"
msgid "Top"
msgstr "Uewen"
-#: cui/uiconfig/ui/paragalignpage.ui:331
+#: cui/uiconfig/ui/paragalignpage.ui:335
msgctxt "paragalignpage|liststoreLB_VERTALIGN"
msgid "Middle"
msgstr ""
-#: cui/uiconfig/ui/paragalignpage.ui:332
+#: cui/uiconfig/ui/paragalignpage.ui:336
msgctxt "paragalignpage|liststoreLB_VERTALIGN"
msgid "Bottom"
msgstr "Ënnen"
-#: cui/uiconfig/ui/paragalignpage.ui:349
+#: cui/uiconfig/ui/paragalignpage.ui:353
msgctxt "paragalignpage|labelFL_VERTALIGN"
msgid "Text-to-text"
msgstr ""
-#: cui/uiconfig/ui/paragalignpage.ui:383
+#: cui/uiconfig/ui/paragalignpage.ui:387
msgctxt "paragalignpage|label2"
msgid "_Text direction:"
msgstr ""
-#: cui/uiconfig/ui/paragalignpage.ui:413
+#: cui/uiconfig/ui/paragalignpage.ui:417
msgctxt "paragalignpage|labelFL_PROPERTIES"
msgid "Properties"
msgstr "Eegeschaften"
-#: cui/uiconfig/ui/paraindentspacing.ui:81
+#: cui/uiconfig/ui/paraindentspacing.ui:76
msgctxt "paraindentspacing|drawingareaWN_EXAMPLE-atkobject"
msgid "Example"
msgstr "Beispill"
-#: cui/uiconfig/ui/paraindentspacing.ui:123
+#: cui/uiconfig/ui/paraindentspacing.ui:122
msgctxt "paraindentspacing|labelFT_LEFTINDENT"
msgid "_Before text:"
msgstr ""
-#: cui/uiconfig/ui/paraindentspacing.ui:137
+#: cui/uiconfig/ui/paraindentspacing.ui:136
msgctxt "paraindentspacing|labelFT_RIGHTINDENT"
msgid "After _text:"
msgstr ""
-#: cui/uiconfig/ui/paraindentspacing.ui:151
+#: cui/uiconfig/ui/paraindentspacing.ui:150
#, fuzzy
msgctxt "paraindentspacing|labelFT_FLINEINDENT"
msgid "_First line:"
msgstr "Éischt Zeil "
-#: cui/uiconfig/ui/paraindentspacing.ui:163
+#: cui/uiconfig/ui/paraindentspacing.ui:162
#, fuzzy
msgctxt "paraindentspacing|checkCB_AUTO"
msgid "_Automatic"
msgstr "Automatesch"
-#: cui/uiconfig/ui/paraindentspacing.ui:215
+#: cui/uiconfig/ui/paraindentspacing.ui:214
msgctxt "paraindentspacing|labelST_LINEDIST_ABS"
msgid "Fixed"
msgstr ""
-#: cui/uiconfig/ui/paraindentspacing.ui:230
+#: cui/uiconfig/ui/paraindentspacing.ui:229
#, fuzzy
msgctxt "paraindentspacing|label1"
msgid "Indent"
msgstr "Arécklen"
-#: cui/uiconfig/ui/paraindentspacing.ui:270
+#: cui/uiconfig/ui/paraindentspacing.ui:269
msgctxt "paraindentspacing|labelFT_TOPDIST"
msgid "Ab_ove paragraph:"
msgstr ""
-#: cui/uiconfig/ui/paraindentspacing.ui:284
+#: cui/uiconfig/ui/paraindentspacing.ui:283
msgctxt "paraindentspacing|labelFT_BOTTOMDIST"
msgid "Below _paragraph:"
msgstr ""
-#: cui/uiconfig/ui/paraindentspacing.ui:327
+#: cui/uiconfig/ui/paraindentspacing.ui:326
msgctxt "paraindentspacing|checkCB_CONTEXTUALSPACING"
msgid "Don't add space between paragraphs of the same style"
msgstr ""
-#: cui/uiconfig/ui/paraindentspacing.ui:349
+#: cui/uiconfig/ui/paraindentspacing.ui:348
msgctxt "paraindentspacing|labelFL_VERTALIGN"
msgid "Spacing"
msgstr "Ofstand "
-#: cui/uiconfig/ui/paraindentspacing.ui:388
+#: cui/uiconfig/ui/paraindentspacing.ui:387
#, fuzzy
msgctxt "paraindentspacing|liststoreLB_LINEDIST"
msgid "Single"
msgstr "Einfach"
-#: cui/uiconfig/ui/paraindentspacing.ui:389
+#: cui/uiconfig/ui/paraindentspacing.ui:388
msgctxt "paraindentspacing|liststoreLB_LINEDIST"
msgid "1.15 Lines"
msgstr ""
-#: cui/uiconfig/ui/paraindentspacing.ui:390
+#: cui/uiconfig/ui/paraindentspacing.ui:389
msgctxt "paraindentspacing|liststoreLB_LINEDIST"
msgid "1.5 Lines"
msgstr ""
-#: cui/uiconfig/ui/paraindentspacing.ui:391
+#: cui/uiconfig/ui/paraindentspacing.ui:390
msgctxt "paraindentspacing|liststoreLB_LINEDIST"
msgid "Double"
msgstr "Duebel"
-#: cui/uiconfig/ui/paraindentspacing.ui:392
+#: cui/uiconfig/ui/paraindentspacing.ui:391
msgctxt "paraindentspacing|liststoreLB_LINEDIST"
msgid "Proportional"
msgstr ""
-#: cui/uiconfig/ui/paraindentspacing.ui:393
+#: cui/uiconfig/ui/paraindentspacing.ui:392
msgctxt "paraindentspacing|liststoreLB_LINEDIST"
msgid "At least"
msgstr ""
-#: cui/uiconfig/ui/paraindentspacing.ui:394
+#: cui/uiconfig/ui/paraindentspacing.ui:393
msgctxt "paraindentspacing|liststoreLB_LINEDIST"
msgid "Leading"
msgstr ""
-#: cui/uiconfig/ui/paraindentspacing.ui:407
+#: cui/uiconfig/ui/paraindentspacing.ui:406
msgctxt "paraindentspacing|labelFT_LINEDIST"
msgid "of"
msgstr "vun"
-#: cui/uiconfig/ui/paraindentspacing.ui:467
+#: cui/uiconfig/ui/paraindentspacing.ui:466
msgctxt "paraindentspacing|labelFL_PROPERTIES"
msgid "Line Spacing"
msgstr ""
-#: cui/uiconfig/ui/paraindentspacing.ui:492
+#: cui/uiconfig/ui/paraindentspacing.ui:491
msgctxt "paraindentspacing|checkCB_REGISTER"
msgid "A_ctivate"
msgstr ""
-#: cui/uiconfig/ui/paraindentspacing.ui:506
+#: cui/uiconfig/ui/paraindentspacing.ui:505
msgctxt "paraindentspacing|label3"
msgid "Register-true"
msgstr ""
-#: cui/uiconfig/ui/paratabspage.ui:49
+#: cui/uiconfig/ui/paratabspage.ui:126
msgctxt "paratabspage|label1"
msgid "Position"
msgstr "Positioun"
-#: cui/uiconfig/ui/paratabspage.ui:84
+#: cui/uiconfig/ui/paratabspage.ui:161
#, fuzzy
msgctxt "paratabspage|radiobuttonBTN_TABTYPE_DECIMAL"
msgid "Deci_mal"
msgstr "Dezimal"
-#: cui/uiconfig/ui/paratabspage.ui:156
+#: cui/uiconfig/ui/paratabspage.ui:233
#, fuzzy
msgctxt "paratabspage|radiobuttonBTN_TABTYPE_LEFT"
msgid "_Left"
msgstr "Lénks"
-#: cui/uiconfig/ui/paratabspage.ui:173
+#: cui/uiconfig/ui/paratabspage.ui:249
msgctxt "paratabspage|radiobuttonST_LEFTTAB_ASIAN"
msgid "_Left/Top"
msgstr ""
-#: cui/uiconfig/ui/paratabspage.ui:200
+#: cui/uiconfig/ui/paratabspage.ui:276
#, fuzzy
msgctxt "paratabspage|radiobuttonBTN_TABTYPE_RIGHT"
msgid "Righ_t"
msgstr "Héicht"
-#: cui/uiconfig/ui/paratabspage.ui:216
+#: cui/uiconfig/ui/paratabspage.ui:292
msgctxt "paratabspage|radiobuttonST_RIGHTTAB_ASIAN"
msgid "Righ_t/Bottom"
msgstr ""
-#: cui/uiconfig/ui/paratabspage.ui:238
+#: cui/uiconfig/ui/paratabspage.ui:314
#, fuzzy
msgctxt "paratabspage|radiobuttonBTN_TABTYPE_CENTER"
msgid "C_entered"
msgstr "~Zentréiert"
-#: cui/uiconfig/ui/paratabspage.ui:262
+#: cui/uiconfig/ui/paratabspage.ui:338
#, fuzzy
msgctxt "paratabspage|labelFT_TABTYPE_DECCHAR"
msgid "_Character"
msgstr "Zeechen"
-#: cui/uiconfig/ui/paratabspage.ui:282
+#: cui/uiconfig/ui/paratabspage.ui:358
#, fuzzy
msgctxt "paratabspage|label2"
msgid "Type"
msgstr "Typ:"
-#: cui/uiconfig/ui/paratabspage.ui:316
+#: cui/uiconfig/ui/paratabspage.ui:392
#, fuzzy
msgctxt "paratabspage|radiobuttonBTN_FILLCHAR_NO"
msgid "N_one"
msgstr "Keen"
-#: cui/uiconfig/ui/paratabspage.ui:384
+#: cui/uiconfig/ui/paratabspage.ui:460
#, fuzzy
msgctxt "paratabspage|radiobuttonBTN_FILLCHAR_OTHER"
msgid "C_haracter"
msgstr "Zeechen"
-#: cui/uiconfig/ui/paratabspage.ui:423
+#: cui/uiconfig/ui/paratabspage.ui:499
msgctxt "paratabspage|label3"
msgid "Fill Character"
msgstr ""
-#: cui/uiconfig/ui/paratabspage.ui:461
+#: cui/uiconfig/ui/paratabspage.ui:537
msgctxt "paratabspage|buttonBTN_DELALL"
msgid "Delete _all"
msgstr ""
-#: cui/uiconfig/ui/paratabspage.ui:490
+#: cui/uiconfig/ui/paratabspage.ui:566
msgctxt "paratabspage|label4"
msgid "points"
msgstr ""
-#: cui/uiconfig/ui/paratabspage.ui:503
+#: cui/uiconfig/ui/paratabspage.ui:579
msgctxt "paratabspage|label5"
msgid "dashes"
msgstr ""
-#: cui/uiconfig/ui/paratabspage.ui:516
+#: cui/uiconfig/ui/paratabspage.ui:592
msgctxt "paratabspage|label6"
msgid "underscores"
msgstr ""
@@ -10046,49 +10065,49 @@ msgctxt "pastespecial|label1"
msgid "Selection"
msgstr "Auswiel"
-#: cui/uiconfig/ui/patterntabpage.ui:65
+#: cui/uiconfig/ui/patterntabpage.ui:82
#, fuzzy
msgctxt "patterntabpage|BTN_MODIFY"
msgid "_Modify"
msgstr "Veränneren"
-#: cui/uiconfig/ui/patterntabpage.ui:92
+#: cui/uiconfig/ui/patterntabpage.ui:109
msgctxt "patterntabpage|label3"
msgid "Pattern"
msgstr ""
-#: cui/uiconfig/ui/patterntabpage.ui:135
+#: cui/uiconfig/ui/patterntabpage.ui:156
msgctxt "patterntabpage|label4"
msgid "Pattern Editor:"
msgstr ""
-#: cui/uiconfig/ui/patterntabpage.ui:151
+#: cui/uiconfig/ui/patterntabpage.ui:187
msgctxt "patterntabpage|CTL_PIXEL-atkobject"
msgid "Pattern Editor"
msgstr ""
-#: cui/uiconfig/ui/patterntabpage.ui:179
+#: cui/uiconfig/ui/patterntabpage.ui:218
msgctxt "patterntabpage|label5"
msgid "Foreground Color:"
msgstr ""
-#: cui/uiconfig/ui/patterntabpage.ui:217
+#: cui/uiconfig/ui/patterntabpage.ui:262
#, fuzzy
msgctxt "patterntabpage|label6"
msgid "Background Color:"
msgstr "Hannergrondfaarf: "
-#: cui/uiconfig/ui/patterntabpage.ui:252
+#: cui/uiconfig/ui/patterntabpage.ui:304
msgctxt "patterntabpage|label1"
msgid "Options"
msgstr "Optiounen"
-#: cui/uiconfig/ui/patterntabpage.ui:295
+#: cui/uiconfig/ui/patterntabpage.ui:353
msgctxt "patterntabpage|CTL_PREVIEW-atkobject"
msgid "Example"
msgstr "Beispill"
-#: cui/uiconfig/ui/patterntabpage.ui:313
+#: cui/uiconfig/ui/patterntabpage.ui:375
msgctxt "patterntabpage|label2"
msgid "Preview"
msgstr "Iwwersiicht"
@@ -10110,7 +10129,7 @@ msgstr ""
#: cui/uiconfig/ui/personalization_tab.ui:48
msgctxt "personalization_tab|default_persona"
-msgid "Pre-installed Theme (if available)"
+msgid "Preinstalled Theme"
msgstr ""
#: cui/uiconfig/ui/personalization_tab.ui:121
@@ -10118,141 +10137,141 @@ msgctxt "personalization_tab|own_persona"
msgid "Own Theme"
msgstr ""
-#: cui/uiconfig/ui/personalization_tab.ui:149
+#: cui/uiconfig/ui/personalization_tab.ui:151
#, fuzzy
msgctxt "personalization_tab|select_persona"
msgid "Select Theme"
msgstr "Text wielen"
-#: cui/uiconfig/ui/personalization_tab.ui:171
+#: cui/uiconfig/ui/personalization_tab.ui:172
msgctxt "personalization_tab|extensions_label"
msgid "Or, select from the Themes installed via extensions:"
msgstr ""
-#: cui/uiconfig/ui/personalization_tab.ui:223
+#: cui/uiconfig/ui/personalization_tab.ui:225
msgctxt "personalization_tab|personas_label"
msgid "Firefox Themes"
msgstr ""
-#: cui/uiconfig/ui/pickbulletpage.ui:34
+#: cui/uiconfig/ui/pickbulletpage.ui:53
msgctxt "pickbulletpage|label25"
msgid "Selection"
msgstr "Auswiel"
-#: cui/uiconfig/ui/pickgraphicpage.ui:45
+#: cui/uiconfig/ui/pickgraphicpage.ui:61
msgctxt "pickgraphicpage|errorft"
msgid "The Gallery theme 'Bullets' is empty (no images)."
msgstr ""
-#: cui/uiconfig/ui/pickgraphicpage.ui:57
+#: cui/uiconfig/ui/pickgraphicpage.ui:71
msgctxt "pickgraphicpage|browseBtn"
msgid "Add and Resize"
msgstr ""
-#: cui/uiconfig/ui/pickgraphicpage.ui:75
+#: cui/uiconfig/ui/pickgraphicpage.ui:99
msgctxt "pickgraphicpage|label25"
msgid "Selection"
msgstr "Auswiel"
-#: cui/uiconfig/ui/picknumberingpage.ui:34
+#: cui/uiconfig/ui/picknumberingpage.ui:52
msgctxt "picknumberingpage|label25"
msgid "Selection"
msgstr "Auswiel"
-#: cui/uiconfig/ui/pickoutlinepage.ui:34
+#: cui/uiconfig/ui/pickoutlinepage.ui:52
msgctxt "pickoutlinepage|label25"
msgid "Selection"
msgstr "Auswiel"
-#: cui/uiconfig/ui/positionpage.ui:62
+#: cui/uiconfig/ui/positionpage.ui:64
#, fuzzy
msgctxt "positionpage|superscript"
msgid "Superscript"
msgstr "Héichgestallt "
-#: cui/uiconfig/ui/positionpage.ui:79
+#: cui/uiconfig/ui/positionpage.ui:81
msgctxt "positionpage|normal"
msgid "Normal"
msgstr "Normal"
-#: cui/uiconfig/ui/positionpage.ui:96
+#: cui/uiconfig/ui/positionpage.ui:98
#, fuzzy
msgctxt "positionpage|subscript"
msgid "Subscript"
msgstr "Déifgestallt "
-#: cui/uiconfig/ui/positionpage.ui:129
+#: cui/uiconfig/ui/positionpage.ui:131
msgctxt "positionpage|raiselower"
msgid "Raise/lower by"
msgstr ""
-#: cui/uiconfig/ui/positionpage.ui:163
+#: cui/uiconfig/ui/positionpage.ui:165
msgctxt "positionpage|automatic"
msgid "Automatic"
msgstr "Automatesch"
-#: cui/uiconfig/ui/positionpage.ui:180
+#: cui/uiconfig/ui/positionpage.ui:182
msgctxt "positionpage|relativefontsize"
msgid "Relative font size"
msgstr ""
-#: cui/uiconfig/ui/positionpage.ui:208
+#: cui/uiconfig/ui/positionpage.ui:210
msgctxt "positionpage|label20"
msgid "Position"
msgstr "Positioun"
-#: cui/uiconfig/ui/positionpage.ui:246
+#: cui/uiconfig/ui/positionpage.ui:248
msgctxt "positionpage|0deg"
msgid "0 degrees"
msgstr "0 Grad"
-#: cui/uiconfig/ui/positionpage.ui:262
+#: cui/uiconfig/ui/positionpage.ui:264
msgctxt "positionpage|90deg"
msgid "90 degrees"
msgstr "90 Grad"
-#: cui/uiconfig/ui/positionpage.ui:279
+#: cui/uiconfig/ui/positionpage.ui:281
msgctxt "positionpage|270deg"
msgid "270 degrees"
msgstr "270 Grad"
-#: cui/uiconfig/ui/positionpage.ui:296
+#: cui/uiconfig/ui/positionpage.ui:298
msgctxt "positionpage|fittoline"
msgid "Fit to line"
msgstr ""
-#: cui/uiconfig/ui/positionpage.ui:326
+#: cui/uiconfig/ui/positionpage.ui:328
msgctxt "positionpage|label24"
msgid "Scale width"
msgstr ""
-#: cui/uiconfig/ui/positionpage.ui:368
+#: cui/uiconfig/ui/positionpage.ui:370
msgctxt "positionpage|rotateandscale"
msgid "Rotation / Scaling"
msgstr ""
-#: cui/uiconfig/ui/positionpage.ui:384
+#: cui/uiconfig/ui/positionpage.ui:386
#, fuzzy
msgctxt "positionpage|scale"
msgid "Scaling"
msgstr "Ofstand "
-#: cui/uiconfig/ui/positionpage.ui:425
+#: cui/uiconfig/ui/positionpage.ui:427
msgctxt "positionpage|label7"
msgid "Character spacing"
msgstr ""
-#: cui/uiconfig/ui/positionpage.ui:450
+#: cui/uiconfig/ui/positionpage.ui:452
msgctxt "positionpage|pairkerning"
msgid "Pair kerning"
msgstr ""
-#: cui/uiconfig/ui/positionpage.ui:472
+#: cui/uiconfig/ui/positionpage.ui:474
msgctxt "positionpage|label22"
msgid "Spacing"
msgstr "Ofstand "
-#: cui/uiconfig/ui/positionpage.ui:512
+#: cui/uiconfig/ui/positionpage.ui:514
msgctxt "positionpage|preview-atkobject"
msgid "Preview"
msgstr "Iwwersiicht"
@@ -10262,22 +10281,22 @@ msgctxt "positionsizedialog|PositionAndSizeDialog"
msgid "Position and Size"
msgstr ""
-#: cui/uiconfig/ui/positionsizedialog.ui:136
+#: cui/uiconfig/ui/positionsizedialog.ui:138
msgctxt "positionsizedialog|RID_SVXPAGE_POSITION_SIZE"
msgid "Position and Size"
msgstr ""
-#: cui/uiconfig/ui/positionsizedialog.ui:182
+#: cui/uiconfig/ui/positionsizedialog.ui:184
msgctxt "positionsizedialog|RID_SVXPAGE_SWPOSSIZE"
msgid "Position and Size"
msgstr ""
-#: cui/uiconfig/ui/positionsizedialog.ui:229
+#: cui/uiconfig/ui/positionsizedialog.ui:231
msgctxt "positionsizedialog|RID_SVXPAGE_ANGLE"
msgid "Rotation"
msgstr ""
-#: cui/uiconfig/ui/positionsizedialog.ui:276
+#: cui/uiconfig/ui/positionsizedialog.ui:278
msgctxt "positionsizedialog|RID_SVXPAGE_SLANT"
msgid "Slant & Corner Radius"
msgstr ""
@@ -10369,12 +10388,12 @@ msgctxt "posterdialog|PosterDialog"
msgid "Posterize"
msgstr ""
-#: cui/uiconfig/ui/posterdialog.ui:136
+#: cui/uiconfig/ui/posterdialog.ui:158
msgctxt "posterdialog|label2"
msgid "Poster colors:"
msgstr ""
-#: cui/uiconfig/ui/posterdialog.ui:159
+#: cui/uiconfig/ui/posterdialog.ui:182
msgctxt "posterdialog|label1"
msgid "Parameters"
msgstr ""
@@ -10643,19 +10662,19 @@ msgctxt "scriptorganizer|create"
msgid "Create..."
msgstr ""
-#: cui/uiconfig/ui/scriptorganizer.ui:79
+#: cui/uiconfig/ui/scriptorganizer.ui:78
#, fuzzy
msgctxt "scriptorganizer|rename"
msgid "Rename..."
msgstr "Ëmbenennen..."
-#: cui/uiconfig/ui/scriptorganizer.ui:93
+#: cui/uiconfig/ui/scriptorganizer.ui:92
#, fuzzy
msgctxt "scriptorganizer|delete"
msgid "Delete..."
msgstr "Läschen..."
-#: cui/uiconfig/ui/scriptorganizer.ui:160
+#: cui/uiconfig/ui/scriptorganizer.ui:159
#, fuzzy
msgctxt "scriptorganizer|macrosft"
msgid "Macros"
@@ -10672,48 +10691,48 @@ msgctxt "searchformatdialog|SearchFormatDialog"
msgid "Text Format "
msgstr ""
-#: cui/uiconfig/ui/searchformatdialog.ui:106
+#: cui/uiconfig/ui/searchformatdialog.ui:135
msgctxt "searchformatdialog|font"
msgid "Font"
msgstr "Schrëft"
-#: cui/uiconfig/ui/searchformatdialog.ui:128
+#: cui/uiconfig/ui/searchformatdialog.ui:181
msgctxt "searchformatdialog|fonteffects"
msgid "Font Effects"
msgstr "Schrëfteffekter"
-#: cui/uiconfig/ui/searchformatdialog.ui:151
+#: cui/uiconfig/ui/searchformatdialog.ui:228
msgctxt "searchformatdialog|position"
msgid "Position"
msgstr "Positioun"
-#: cui/uiconfig/ui/searchformatdialog.ui:174
+#: cui/uiconfig/ui/searchformatdialog.ui:275
#, fuzzy
msgctxt "searchformatdialog|asianlayout"
msgid "Asian Layout"
msgstr "Asiatesche Layout"
-#: cui/uiconfig/ui/searchformatdialog.ui:197
+#: cui/uiconfig/ui/searchformatdialog.ui:322
msgctxt "searchformatdialog|labelTP_PARA_STD"
msgid "Indents & Spacing"
msgstr ""
-#: cui/uiconfig/ui/searchformatdialog.ui:220
+#: cui/uiconfig/ui/searchformatdialog.ui:369
msgctxt "searchformatdialog|labelTP_PARA_ALIGN"
msgid "Alignment"
msgstr "Aus~riichten"
-#: cui/uiconfig/ui/searchformatdialog.ui:244
+#: cui/uiconfig/ui/searchformatdialog.ui:417
msgctxt "searchformatdialog|labelTP_PARA_EXT"
msgid "Text Flow"
msgstr ""
-#: cui/uiconfig/ui/searchformatdialog.ui:268
+#: cui/uiconfig/ui/searchformatdialog.ui:465
msgctxt "searchformatdialog|labelTP_PARA_ASIAN"
msgid "Asian Typography"
msgstr "Asiatesch Typographie"
-#: cui/uiconfig/ui/searchformatdialog.ui:291
+#: cui/uiconfig/ui/searchformatdialog.ui:512
msgctxt "searchformatdialog|background"
msgid "Highlighting"
msgstr ""
@@ -10815,33 +10834,33 @@ msgctxt "selectpathdialog|label1"
msgid "Paths"
msgstr "Mathé"
-#: cui/uiconfig/ui/shadowtabpage.ui:45
+#: cui/uiconfig/ui/shadowtabpage.ui:47
msgctxt "shadowtabpage|TSB_SHOW_SHADOW"
msgid "_Use shadow"
msgstr ""
-#: cui/uiconfig/ui/shadowtabpage.ui:120
+#: cui/uiconfig/ui/shadowtabpage.ui:145
msgctxt "shadowtabpage|FT_DISTANCE"
msgid "_Distance:"
msgstr ""
-#: cui/uiconfig/ui/shadowtabpage.ui:140
+#: cui/uiconfig/ui/shadowtabpage.ui:166
#, fuzzy
msgctxt "shadowtabpage|FT_TRANSPARENT"
msgid "_Transparency:"
msgstr "Transparenz"
-#: cui/uiconfig/ui/shadowtabpage.ui:160
+#: cui/uiconfig/ui/shadowtabpage.ui:187
msgctxt "shadowtabpage|FT_SHADOW_COLOR"
msgid "_Color:"
msgstr ""
-#: cui/uiconfig/ui/shadowtabpage.ui:203
+#: cui/uiconfig/ui/shadowtabpage.ui:244
msgctxt "shadowtabpage|CTL_COLOR_PREVIEW-atkobject"
msgid "Example"
msgstr "Beispill"
-#: cui/uiconfig/ui/shadowtabpage.ui:228
+#: cui/uiconfig/ui/shadowtabpage.ui:273
msgctxt "shadowtabpage|label"
msgid "Properties"
msgstr "Eegeschaften"
@@ -10924,6 +10943,11 @@ msgctxt "signsignatureline|SignSignatureLineDialog"
msgid "Sign Signature Line"
msgstr ""
+#: cui/uiconfig/ui/signsignatureline.ui:56
+msgctxt "signsignatureline|ok"
+msgid "Sign"
+msgstr ""
+
#: cui/uiconfig/ui/signsignatureline.ui:113
msgctxt "signsignatureline|edit_name"
msgid "Type your name here"
@@ -11056,17 +11080,17 @@ msgctxt "smarttagoptionspage|label1"
msgid "Currently Installed Smart Tags"
msgstr ""
-#: cui/uiconfig/ui/smoothdialog.ui:16
+#: cui/uiconfig/ui/smoothdialog.ui:15
msgctxt "smoothdialog|SmoothDialog"
msgid "Smooth"
msgstr ""
-#: cui/uiconfig/ui/smoothdialog.ui:138
+#: cui/uiconfig/ui/smoothdialog.ui:159
msgctxt "smoothdialog|label2"
msgid "_Smooth radius:"
msgstr ""
-#: cui/uiconfig/ui/smoothdialog.ui:161
+#: cui/uiconfig/ui/smoothdialog.ui:183
msgctxt "smoothdialog|label1"
msgid "Parameters"
msgstr ""
@@ -11076,18 +11100,18 @@ msgctxt "solarizedialog|SolarizeDialog"
msgid "Solarization"
msgstr ""
-#: cui/uiconfig/ui/solarizedialog.ui:135
+#: cui/uiconfig/ui/solarizedialog.ui:157
msgctxt "solarizedialog|label2"
msgid "Threshold _value:"
msgstr ""
-#: cui/uiconfig/ui/solarizedialog.ui:146
+#: cui/uiconfig/ui/solarizedialog.ui:169
#, fuzzy
msgctxt "solarizedialog|invert"
msgid "_Invert"
msgstr "Afügen"
-#: cui/uiconfig/ui/solarizedialog.ui:173
+#: cui/uiconfig/ui/solarizedialog.ui:196
msgctxt "solarizedialog|label1"
msgid "Parameters"
msgstr ""
@@ -11654,138 +11678,138 @@ msgctxt "textdialog|TextDialog"
msgid "Text"
msgstr "Text"
-#: cui/uiconfig/ui/textdialog.ui:133
+#: cui/uiconfig/ui/textdialog.ui:135
msgctxt "textdialog|RID_SVXPAGE_TEXTATTR"
msgid "Text"
msgstr "Text"
-#: cui/uiconfig/ui/textdialog.ui:179
+#: cui/uiconfig/ui/textdialog.ui:181
msgctxt "textdialog|RID_SVXPAGE_TEXTANIMATION"
msgid "Text Animation"
msgstr ""
-#: cui/uiconfig/ui/textflowpage.ui:71
+#: cui/uiconfig/ui/textflowpage.ui:74
msgctxt "textflowpage|checkAuto"
msgid "A_utomatically"
msgstr ""
-#: cui/uiconfig/ui/textflowpage.ui:136
+#: cui/uiconfig/ui/textflowpage.ui:139
msgctxt "textflowpage|labelLineEnd"
msgid "C_haracters at line end"
msgstr ""
-#: cui/uiconfig/ui/textflowpage.ui:150
+#: cui/uiconfig/ui/textflowpage.ui:153
msgctxt "textflowpage|labelLineBegin"
msgid "Cha_racters at line begin"
msgstr ""
-#: cui/uiconfig/ui/textflowpage.ui:164
+#: cui/uiconfig/ui/textflowpage.ui:167
msgctxt "textflowpage|labelMaxNum"
msgid "_Maximum number of consecutive hyphens"
msgstr ""
-#: cui/uiconfig/ui/textflowpage.ui:181
+#: cui/uiconfig/ui/textflowpage.ui:184
msgctxt "textflowpage|LabelHyphenation"
msgid "Hyphenation"
msgstr "Silbentrennung"
-#: cui/uiconfig/ui/textflowpage.ui:214
+#: cui/uiconfig/ui/textflowpage.ui:217
#, fuzzy
msgctxt "textflowpage|checkInsert"
msgid "_Insert"
msgstr "Afügen"
-#: cui/uiconfig/ui/textflowpage.ui:230
+#: cui/uiconfig/ui/textflowpage.ui:233
msgctxt "textflowpage|checkPageStyle"
msgid "With page st_yle:"
msgstr ""
-#: cui/uiconfig/ui/textflowpage.ui:252
+#: cui/uiconfig/ui/textflowpage.ui:255
#, fuzzy
msgctxt "textflowpage|labelType"
msgid "_Type:"
msgstr "Typ:"
-#: cui/uiconfig/ui/textflowpage.ui:279
+#: cui/uiconfig/ui/textflowpage.ui:282
msgctxt "textflowpage|labelPageNum"
msgid "Page _number:"
msgstr ""
-#: cui/uiconfig/ui/textflowpage.ui:300
+#: cui/uiconfig/ui/textflowpage.ui:303
#, fuzzy
msgctxt "textflowpage|labelPosition"
msgid "Position:"
msgstr "Positioun"
-#: cui/uiconfig/ui/textflowpage.ui:320
+#: cui/uiconfig/ui/textflowpage.ui:323
#, fuzzy
msgctxt "textflowpage|comboPageStyle-atkobject"
msgid "Page Style"
msgstr "Säitevirlag: "
-#: cui/uiconfig/ui/textflowpage.ui:334
+#: cui/uiconfig/ui/textflowpage.ui:337
msgctxt "textflowpage|comboBreakType"
msgid "Page"
msgstr "Säit"
-#: cui/uiconfig/ui/textflowpage.ui:335
+#: cui/uiconfig/ui/textflowpage.ui:338
#, fuzzy
msgctxt "textflowpage|comboBreakType"
msgid "Column"
msgstr "~Kolonnen "
-#: cui/uiconfig/ui/textflowpage.ui:348
+#: cui/uiconfig/ui/textflowpage.ui:351
#, fuzzy
msgctxt "textflowpage|comboBreakPosition"
msgid "Before"
msgstr "~Virdrun"
-#: cui/uiconfig/ui/textflowpage.ui:349
+#: cui/uiconfig/ui/textflowpage.ui:352
#, fuzzy
msgctxt "textflowpage|comboBreakPosition"
msgid "After"
msgstr "~Duerno "
-#: cui/uiconfig/ui/textflowpage.ui:368
+#: cui/uiconfig/ui/textflowpage.ui:371
msgctxt "textflowpage|label3"
msgid "Breaks"
msgstr ""
-#: cui/uiconfig/ui/textflowpage.ui:400
+#: cui/uiconfig/ui/textflowpage.ui:403
#, fuzzy
msgctxt "textflowpage|checkSplitPara"
msgid "_Do not split paragraph"
msgstr "Paragraph net trennen"
-#: cui/uiconfig/ui/textflowpage.ui:416
+#: cui/uiconfig/ui/textflowpage.ui:419
#, fuzzy
msgctxt "textflowpage|checkKeepPara"
msgid "_Keep with next paragraph"
msgstr "Paragraphen zesummenhalen"
-#: cui/uiconfig/ui/textflowpage.ui:432
+#: cui/uiconfig/ui/textflowpage.ui:435
msgctxt "textflowpage|checkOrphan"
msgid "_Orphan control"
msgstr ""
-#: cui/uiconfig/ui/textflowpage.ui:451
+#: cui/uiconfig/ui/textflowpage.ui:454
msgctxt "textflowpage|checkWidow"
msgid "_Widow control"
msgstr ""
-#: cui/uiconfig/ui/textflowpage.ui:504
+#: cui/uiconfig/ui/textflowpage.ui:507
#, fuzzy
msgctxt "textflowpage|labelOrphan"
msgid "lines"
msgstr "Linie"
-#: cui/uiconfig/ui/textflowpage.ui:516
+#: cui/uiconfig/ui/textflowpage.ui:519
#, fuzzy
msgctxt "textflowpage|labelWidow"
msgid "lines"
msgstr "Linie"
-#: cui/uiconfig/ui/textflowpage.ui:544
+#: cui/uiconfig/ui/textflowpage.ui:547
msgctxt "textflowpage|labelOptions"
msgid "Options"
msgstr "Optiounen"
@@ -11816,101 +11840,101 @@ msgctxt "thesaurus|label3"
msgid "Replace with:"
msgstr ""
-#: cui/uiconfig/ui/transparencytabpage.ui:49
+#: cui/uiconfig/ui/transparencytabpage.ui:77
+msgctxt "transparencytabpage|RBT_TRANS_OFF"
+msgid "_No transparency"
+msgstr ""
+
+#: cui/uiconfig/ui/transparencytabpage.ui:94
+#, fuzzy
+msgctxt "transparencytabpage|RBT_TRANS_LINEAR"
+msgid "_Transparency:"
+msgstr "Transparenz"
+
+#: cui/uiconfig/ui/transparencytabpage.ui:114
+msgctxt "transparencytabpage|RBT_TRANS_GRADIENT"
+msgid "_Gradient"
+msgstr ""
+
+#: cui/uiconfig/ui/transparencytabpage.ui:239
msgctxt "transparencytabpage|liststoreTYPE"
msgid "Linear"
msgstr ""
-#: cui/uiconfig/ui/transparencytabpage.ui:53
+#: cui/uiconfig/ui/transparencytabpage.ui:240
msgctxt "transparencytabpage|liststoreTYPE"
msgid "Axial"
msgstr ""
-#: cui/uiconfig/ui/transparencytabpage.ui:57
+#: cui/uiconfig/ui/transparencytabpage.ui:241
msgctxt "transparencytabpage|liststoreTYPE"
msgid "Radial"
msgstr ""
-#: cui/uiconfig/ui/transparencytabpage.ui:61
+#: cui/uiconfig/ui/transparencytabpage.ui:242
#, fuzzy
msgctxt "transparencytabpage|liststoreTYPE"
msgid "Ellipsoid"
msgstr "Dräifachpunkten"
-#: cui/uiconfig/ui/transparencytabpage.ui:65
+#: cui/uiconfig/ui/transparencytabpage.ui:243
msgctxt "transparencytabpage|liststoreTYPE"
msgid "Quadratic"
msgstr ""
-#: cui/uiconfig/ui/transparencytabpage.ui:69
+#: cui/uiconfig/ui/transparencytabpage.ui:244
msgctxt "transparencytabpage|liststoreTYPE"
msgid "Square"
msgstr "Quadrat"
-#: cui/uiconfig/ui/transparencytabpage.ui:109
-msgctxt "transparencytabpage|RBT_TRANS_OFF"
-msgid "_No transparency"
-msgstr ""
-
-#: cui/uiconfig/ui/transparencytabpage.ui:126
-#, fuzzy
-msgctxt "transparencytabpage|RBT_TRANS_LINEAR"
-msgid "_Transparency:"
-msgstr "Transparenz"
-
-#: cui/uiconfig/ui/transparencytabpage.ui:146
-msgctxt "transparencytabpage|RBT_TRANS_GRADIENT"
-msgid "_Gradient"
-msgstr ""
-
-#: cui/uiconfig/ui/transparencytabpage.ui:286
+#: cui/uiconfig/ui/transparencytabpage.ui:261
#, fuzzy
msgctxt "transparencytabpage|FT_TRGR_TYPE"
msgid "Ty_pe:"
msgstr "Typ:"
-#: cui/uiconfig/ui/transparencytabpage.ui:307
+#: cui/uiconfig/ui/transparencytabpage.ui:282
msgctxt "transparencytabpage|FT_TRGR_CENTER_X"
msgid "Center _X:"
msgstr ""
-#: cui/uiconfig/ui/transparencytabpage.ui:328
+#: cui/uiconfig/ui/transparencytabpage.ui:303
msgctxt "transparencytabpage|FT_TRGR_CENTER_Y"
msgid "Center _Y:"
msgstr ""
-#: cui/uiconfig/ui/transparencytabpage.ui:349
+#: cui/uiconfig/ui/transparencytabpage.ui:324
msgctxt "transparencytabpage|FT_TRGR_ANGLE"
msgid "_Angle:"
msgstr ""
-#: cui/uiconfig/ui/transparencytabpage.ui:370
+#: cui/uiconfig/ui/transparencytabpage.ui:345
#, fuzzy
msgctxt "transparencytabpage|FT_TRGR_BORDER"
msgid "_Border:"
msgstr "Konturen"
-#: cui/uiconfig/ui/transparencytabpage.ui:391
+#: cui/uiconfig/ui/transparencytabpage.ui:366
msgctxt "transparencytabpage|FT_TRGR_START_VALUE"
msgid "_Start value:"
msgstr ""
-#: cui/uiconfig/ui/transparencytabpage.ui:412
+#: cui/uiconfig/ui/transparencytabpage.ui:387
msgctxt "transparencytabpage|FT_TRGR_END_VALUE"
msgid "_End value:"
msgstr ""
-#: cui/uiconfig/ui/transparencytabpage.ui:469
+#: cui/uiconfig/ui/transparencytabpage.ui:444
msgctxt "transparencytabpage|CTL_BITMAP_PREVIEW-atkobject"
msgid "Example"
msgstr "Beispill"
-#: cui/uiconfig/ui/transparencytabpage.ui:504
+#: cui/uiconfig/ui/transparencytabpage.ui:479
msgctxt "transparencytabpage|CTL_TRANS_PREVIEW-atkobject"
msgid "Example"
msgstr "Beispill"
-#: cui/uiconfig/ui/transparencytabpage.ui:548
+#: cui/uiconfig/ui/transparencytabpage.ui:523
msgctxt "transparencytabpage|FL_PROP"
msgid "Area Transparency Mode"
msgstr ""
diff --git a/source/lb/dbaccess/messages.po b/source/lb/dbaccess/messages.po
index 34ed8af8740..c50e6796014 100644
--- a/source/lb/dbaccess/messages.po
+++ b/source/lb/dbaccess/messages.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2018-04-23 18:10+0200\n"
+"POT-Creation-Date: 2018-10-02 17:56+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -708,7 +708,7 @@ msgctxt "STR_QRY_CHECK_CASESENSITIVE"
msgid "The column could not be found. Please note that the database is case-sensitive."
msgstr ""
-#. To translators: For $object$, one of the valu es of the RSC_QUERY_OBJECT_TYPE resource will be inserted.
+#. To translators: for $object$, one of the values of the RSC_QUERY_OBJECT_TYPE resource will be inserted.
#: dbaccess/inc/strings.hrc:163
msgctxt "STR_QUERY_SAVEMODIFIED"
msgid ""
@@ -716,13 +716,13 @@ msgid ""
"Do you want to save the changes?"
msgstr ""
-#. To translators: For $object$, one of the valu es of the RSC_QUERY_OBJECT_TYPE resource (except \"SQL command\", which doesn't make sense here) will be inserted.
+#. To translators: for $object$, one of the values of the RSC_QUERY_OBJECT_TYPE resource (except \"SQL command\", which doesn't make sense here) will be inserted.
#: dbaccess/inc/strings.hrc:165
msgctxt "STR_ERROR_PARSING_STATEMENT"
msgid "$object$ is based on an SQL command which could not be parsed."
msgstr ""
-#. To translators: For $object$, one of the valu es of the RSC_QUERY_OBJECT_TYPE resource (except \"SQL command\", which doesn't make sense here) will be inserted.
+#. To translators: for $object$, one of the values of the RSC_QUERY_OBJECT_TYPE resource (except \"SQL command\", which doesn't make sense here) will be inserted.
#: dbaccess/inc/strings.hrc:167
msgctxt "STR_INFO_OPENING_IN_SQL_VIEW"
msgid "$object$ will be opened in SQL view."
@@ -2272,7 +2272,7 @@ msgctxt "admindialog|AdminDialog"
msgid "Database Properties"
msgstr ""
-#: dbaccess/uiconfig/ui/admindialog.ui:92
+#: dbaccess/uiconfig/ui/admindialog.ui:94
msgctxt "admindialog|advanced"
msgid "Advanced Properties"
msgstr ""
@@ -2282,12 +2282,12 @@ msgctxt "advancedsettingsdialog|AdvancedSettingsDialog"
msgid "Advanced Settings"
msgstr ""
-#: dbaccess/uiconfig/ui/advancedsettingsdialog.ui:92
+#: dbaccess/uiconfig/ui/advancedsettingsdialog.ui:94
msgctxt "advancedsettingsdialog|generated"
msgid "Generated Values"
msgstr ""
-#: dbaccess/uiconfig/ui/advancedsettingsdialog.ui:114
+#: dbaccess/uiconfig/ui/advancedsettingsdialog.ui:116
msgctxt "advancedsettingsdialog|special"
msgid "Special Settings"
msgstr ""
@@ -2730,17 +2730,17 @@ msgctxt "fielddialog|FieldDialog"
msgid "Field Format"
msgstr ""
-#: dbaccess/uiconfig/ui/fielddialog.ui:111
+#: dbaccess/uiconfig/ui/fielddialog.ui:113
msgctxt "fielddialog|format"
msgid "Format"
msgstr "Format"
-#: dbaccess/uiconfig/ui/fielddialog.ui:133
+#: dbaccess/uiconfig/ui/fielddialog.ui:135
msgctxt "fielddialog|alignment"
msgid "Alignment"
msgstr "Aus~riichten"
-#: dbaccess/uiconfig/ui/fielddialog.ui:152
+#: dbaccess/uiconfig/ui/fielddialog.ui:154
msgctxt "fielddialog|alttitle"
msgid "Table Format"
msgstr ""
@@ -4154,7 +4154,7 @@ msgctxt "useradmindialog|UserAdminDialog"
msgid "User Administration"
msgstr ""
-#: dbaccess/uiconfig/ui/useradmindialog.ui:92
+#: dbaccess/uiconfig/ui/useradmindialog.ui:94
msgctxt "useradmindialog|settings"
msgid "User Settings"
msgstr ""
diff --git a/source/lb/desktop/messages.po b/source/lb/desktop/messages.po
index f753fae1077..4d452830e2c 100644
--- a/source/lb/desktop/messages.po
+++ b/source/lb/desktop/messages.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2018-04-23 18:11+0200\n"
+"POT-Creation-Date: 2018-09-03 13:23+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -598,14 +598,14 @@ msgid "The path manager is not available.\n"
msgstr "De Komponente-Manager ass net disponibel."
#: desktop/inc/strings.hrc:177
-msgctxt "STR_BOOSTRAP_ERR_NOTENOUGHDISKSPACE"
+msgctxt "STR_BOOTSTRAP_ERR_NOTENOUGHDISKSPACE"
msgid ""
"%PRODUCTNAME user installation could not be completed due to insufficient free disk space. Please free more disc space at the following location and restart %PRODUCTNAME:\n"
"\n"
msgstr ""
#: desktop/inc/strings.hrc:178
-msgctxt "STR_BOOSTRAP_ERR_NOACCESSRIGHTS"
+msgctxt "STR_BOOTSTRAP_ERR_NOACCESSRIGHTS"
msgid ""
"%PRODUCTNAME user installation could not be processed due to missing access rights. Please make sure that you have sufficient access rights for the following location and restart %PRODUCTNAME:\n"
"\n"
diff --git a/source/lb/dictionaries/tr_TR.po b/source/lb/dictionaries/tr_TR.po
index 63e11b40a71..b81cecc91e0 100644
--- a/source/lb/dictionaries/tr_TR.po
+++ b/source/lb/dictionaries/tr_TR.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2018-07-31 14:09+0200\n"
+"POT-Creation-Date: 2018-09-03 13:23+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -18,5 +18,5 @@ msgctxt ""
"description.xml\n"
"dispname\n"
"description.text"
-msgid "Turkish spell-check dictionary"
+msgid "Turkish Spellcheck Dictionary"
msgstr ""
diff --git a/source/lb/extensions/messages.po b/source/lb/extensions/messages.po
index 0a95f58f912..fac7f6b2da6 100644
--- a/source/lb/extensions/messages.po
+++ b/source/lb/extensions/messages.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2018-07-02 00:13+0200\n"
+"POT-Creation-Date: 2018-10-02 17:57+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -2116,7 +2116,7 @@ msgstr ""
#: extensions/inc/strings.hrc:320
msgctxt "RID_UPDATE_BUBBLE_DOWNLOADING"
-msgid ""
+msgid "Click the icon to pause."
msgstr ""
#: extensions/inc/strings.hrc:321
@@ -2541,32 +2541,32 @@ msgid ""
"Now, just enter the name under which you want to register the data source in %PRODUCTNAME."
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/datasourcepage.ui:38
+#: extensions/uiconfig/sabpilot/ui/datasourcepage.ui:41
msgctxt "datasourcepage|embed"
msgid "Embed this address book definition into the current document."
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/datasourcepage.ui:62
+#: extensions/uiconfig/sabpilot/ui/datasourcepage.ui:65
msgctxt "datasourcepage|locationft"
msgid "Location"
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/datasourcepage.ui:75
+#: extensions/uiconfig/sabpilot/ui/datasourcepage.ui:78
msgctxt "datasourcepage|browse"
msgid "Browse..."
msgstr "Duerchsichen..."
-#: extensions/uiconfig/sabpilot/ui/datasourcepage.ui:117
+#: extensions/uiconfig/sabpilot/ui/datasourcepage.ui:120
msgctxt "datasourcepage|available"
msgid "Make this address book available to all modules in %PRODUCTNAME."
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/datasourcepage.ui:155
+#: extensions/uiconfig/sabpilot/ui/datasourcepage.ui:158
msgctxt "datasourcepage|nameft"
msgid "Address book name"
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/datasourcepage.ui:193
+#: extensions/uiconfig/sabpilot/ui/datasourcepage.ui:196
msgctxt "datasourcepage|warning"
msgid "Another data source already has this name. As data sources have to have globally unique names, you need to choose another one."
msgstr ""
@@ -2576,12 +2576,12 @@ msgctxt "defaultfieldselectionpage|label1"
msgid "Should one option field be selected as a default?"
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/defaultfieldselectionpage.ui:34
+#: extensions/uiconfig/sabpilot/ui/defaultfieldselectionpage.ui:37
msgctxt "defaultfieldselectionpage|defaultselectionyes"
msgid "_Yes, the following:"
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/defaultfieldselectionpage.ui:76
+#: extensions/uiconfig/sabpilot/ui/defaultfieldselectionpage.ui:79
msgctxt "defaultfieldselectionpage|defaultselectionno"
msgid "No, one particular field is not going to be selected."
msgstr ""
@@ -2596,7 +2596,7 @@ msgid ""
"Click the button below to open another dialog where you can enter the settings for your data source."
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/fieldassignpage.ui:33
+#: extensions/uiconfig/sabpilot/ui/fieldassignpage.ui:36
msgctxt "fieldassignpage|assign"
msgid "Field Assignment"
msgstr ""
@@ -2606,12 +2606,12 @@ msgctxt "fieldlinkpage|desc"
msgid "This is where you select fields with matching contents so that the value from the display field will be shown."
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/fieldlinkpage.ui:49
+#: extensions/uiconfig/sabpilot/ui/fieldlinkpage.ui:52
msgctxt "fieldlinkpage|label2"
msgid "Field from the _Value Table"
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/fieldlinkpage.ui:97
+#: extensions/uiconfig/sabpilot/ui/fieldlinkpage.ui:100
msgctxt "fieldlinkpage|label3"
msgid "Field from the _List Table"
msgstr ""
@@ -2715,7 +2715,7 @@ msgctxt "groupradioselectionpage|label1"
msgid "Which _names do you want to give the option fields?"
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/groupradioselectionpage.ui:309
+#: extensions/uiconfig/sabpilot/ui/groupradioselectionpage.ui:310
msgctxt "groupradioselectionpage|label2"
msgid "Table element"
msgstr ""
@@ -2728,30 +2728,30 @@ msgid ""
"Click the following button to open another dialog in which you then enter the necessary information."
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/invokeadminpage.ui:31
+#: extensions/uiconfig/sabpilot/ui/invokeadminpage.ui:34
#, fuzzy
msgctxt "invokeadminpage|settings"
msgid "Settings"
msgstr "Einstellungen"
-#: extensions/uiconfig/sabpilot/ui/invokeadminpage.ui:50
+#: extensions/uiconfig/sabpilot/ui/invokeadminpage.ui:53
msgctxt "invokeadminpage|warning"
msgid ""
"The connection to the data source could not be established.\n"
"Before you proceed, please check the settings made, or (on the previous page) choose another address data source type."
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/optiondbfieldpage.ui:35
+#: extensions/uiconfig/sabpilot/ui/optiondbfieldpage.ui:38
msgctxt "optiondbfieldpage|label1"
msgid "Do you want to save the value in a database field?"
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/optiondbfieldpage.ui:53
+#: extensions/uiconfig/sabpilot/ui/optiondbfieldpage.ui:59
msgctxt "optiondbfieldpage|yesRadiobutton"
msgid "_Yes, I want to save it in the following database field:"
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/optiondbfieldpage.ui:73
+#: extensions/uiconfig/sabpilot/ui/optiondbfieldpage.ui:79
msgctxt "optiondbfieldpage|noRadiobutton"
msgid "_No, I only want to save the value in the form."
msgstr ""
@@ -2771,12 +2771,12 @@ msgctxt "optionvaluespage|label1"
msgid "When you select an option, the option group is given a specific value."
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/optionvaluespage.ui:45
+#: extensions/uiconfig/sabpilot/ui/optionvaluespage.ui:48
msgctxt "optionvaluespage|label2"
msgid "Which _value do you want to assign to each option?"
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/optionvaluespage.ui:89
+#: extensions/uiconfig/sabpilot/ui/optionvaluespage.ui:93
msgctxt "optionvaluespage|label3"
msgid "_Option fields"
msgstr ""
@@ -2796,47 +2796,47 @@ msgid ""
"This wizard helps you create the data source."
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/selecttypepage.ui:34
+#: extensions/uiconfig/sabpilot/ui/selecttypepage.ui:37
msgctxt "selecttypepage|evolution"
msgid "Evolution"
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/selecttypepage.ui:51
+#: extensions/uiconfig/sabpilot/ui/selecttypepage.ui:54
msgctxt "selecttypepage|groupwise"
msgid "Groupwise"
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/selecttypepage.ui:67
+#: extensions/uiconfig/sabpilot/ui/selecttypepage.ui:70
msgctxt "selecttypepage|evoldap"
msgid "Evolution LDAP"
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/selecttypepage.ui:83
+#: extensions/uiconfig/sabpilot/ui/selecttypepage.ui:86
msgctxt "selecttypepage|firefox"
msgid "Firefox"
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/selecttypepage.ui:99
+#: extensions/uiconfig/sabpilot/ui/selecttypepage.ui:102
msgctxt "selecttypepage|thunderbird"
msgid "Thunderbird"
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/selecttypepage.ui:115
+#: extensions/uiconfig/sabpilot/ui/selecttypepage.ui:118
msgctxt "selecttypepage|kde"
msgid "KDE address book"
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/selecttypepage.ui:131
+#: extensions/uiconfig/sabpilot/ui/selecttypepage.ui:134
msgctxt "selecttypepage|macosx"
msgid "Mac OS X address book"
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/selecttypepage.ui:147
+#: extensions/uiconfig/sabpilot/ui/selecttypepage.ui:150
msgctxt "selecttypepage|other"
msgid "Other external data source"
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/selecttypepage.ui:165
+#: extensions/uiconfig/sabpilot/ui/selecttypepage.ui:168
msgctxt "selecttypepage|label1"
msgid "Select the type of your external address book:"
msgstr ""
@@ -2852,24 +2852,24 @@ msgid ""
"Please note that the settings made on this page will take effect immediately upon leaving the page."
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/tableselectionpage.ui:72
+#: extensions/uiconfig/sabpilot/ui/tableselectionpage.ui:75
#, fuzzy
msgctxt "tableselectionpage|datasourcelabel"
msgid "_Data source:"
msgstr "Date~quell"
-#: extensions/uiconfig/sabpilot/ui/tableselectionpage.ui:100
+#: extensions/uiconfig/sabpilot/ui/tableselectionpage.ui:103
#, fuzzy
msgctxt "tableselectionpage|search"
msgid "_..."
msgstr "..."
-#: extensions/uiconfig/sabpilot/ui/tableselectionpage.ui:133
+#: extensions/uiconfig/sabpilot/ui/tableselectionpage.ui:136
msgctxt "tableselectionpage|tablelabel"
msgid "_Table / Query:"
msgstr ""
-#: extensions/uiconfig/sabpilot/ui/tableselectionpage.ui:174
+#: extensions/uiconfig/sabpilot/ui/tableselectionpage.ui:177
msgctxt "tableselectionpage|label1"
msgid "Data"
msgstr "Daten"
@@ -3303,12 +3303,12 @@ msgctxt "controlfontdialog|ControlFontDialog"
msgid "Character"
msgstr "Zeechen"
-#: extensions/uiconfig/spropctrlr/ui/controlfontdialog.ui:105
+#: extensions/uiconfig/spropctrlr/ui/controlfontdialog.ui:134
msgctxt "controlfontdialog|font"
msgid "Font"
msgstr "Schrëft"
-#: extensions/uiconfig/spropctrlr/ui/controlfontdialog.ui:127
+#: extensions/uiconfig/spropctrlr/ui/controlfontdialog.ui:180
msgctxt "controlfontdialog|fonteffects"
msgid "Font Effects"
msgstr "Schrëfteffekter"
diff --git a/source/lb/filter/messages.po b/source/lb/filter/messages.po
index e28324b9b8c..da7762ace95 100644
--- a/source/lb/filter/messages.po
+++ b/source/lb/filter/messages.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2018-07-02 00:14+0200\n"
+"POT-Creation-Date: 2018-10-02 17:56+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -590,34 +590,34 @@ msgctxt "pdfoptionsdialog|ok"
msgid "E_xport"
msgstr "Exportéieren"
-#: filter/uiconfig/ui/pdfoptionsdialog.ui:135
+#: filter/uiconfig/ui/pdfoptionsdialog.ui:137
msgctxt "pdfoptionsdialog|general"
msgid "General"
msgstr "Allgemeng"
-#: filter/uiconfig/ui/pdfoptionsdialog.ui:181
+#: filter/uiconfig/ui/pdfoptionsdialog.ui:183
msgctxt "pdfoptionsdialog|initialview"
msgid "Initial View"
msgstr ""
-#: filter/uiconfig/ui/pdfoptionsdialog.ui:228
+#: filter/uiconfig/ui/pdfoptionsdialog.ui:230
msgctxt "pdfoptionsdialog|userinterface"
msgid "User Interface"
msgstr ""
-#: filter/uiconfig/ui/pdfoptionsdialog.ui:275
+#: filter/uiconfig/ui/pdfoptionsdialog.ui:277
#, fuzzy
msgctxt "pdfoptionsdialog|links"
msgid "Links"
msgstr "Zeilen"
-#: filter/uiconfig/ui/pdfoptionsdialog.ui:322
+#: filter/uiconfig/ui/pdfoptionsdialog.ui:324
#, fuzzy
msgctxt "pdfoptionsdialog|security"
msgid "Security"
msgstr "Sécherung"
-#: filter/uiconfig/ui/pdfoptionsdialog.ui:369
+#: filter/uiconfig/ui/pdfoptionsdialog.ui:371
msgctxt "pdfoptionsdialog|digitalsignatures"
msgid "Digital Signatures"
msgstr ""
@@ -1151,12 +1151,12 @@ msgctxt "xsltfilterdialog|XSLTFilterDialog"
msgid "XML Filter: %s"
msgstr ""
-#: filter/uiconfig/ui/xsltfilterdialog.ui:119
+#: filter/uiconfig/ui/xsltfilterdialog.ui:121
msgctxt "xsltfilterdialog|general"
msgid "General"
msgstr "Allgemeng"
-#: filter/uiconfig/ui/xsltfilterdialog.ui:165
+#: filter/uiconfig/ui/xsltfilterdialog.ui:167
msgctxt "xsltfilterdialog|transformation"
msgid "Transformation"
msgstr ""
diff --git a/source/lb/formula/messages.po b/source/lb/formula/messages.po
index 845ef0644d8..5e5de3b9e79 100644
--- a/source/lb/formula/messages.po
+++ b/source/lb/formula/messages.po
@@ -3,15 +3,15 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2018-04-23 18:10+0200\n"
+"POT-Creation-Date: 2018-10-03 15:13+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Accelerator-Marker: ~\n"
"X-Generator: LibreOffice\n"
+"X-Accelerator-Marker: ~\n"
#: formula/inc/core_resource.hrc:2258
msgctxt "RID_STRLIST_FUNCTION_NAMES"
@@ -962,11 +962,6 @@ msgctxt "RID_STRLIST_FUNCTION_NAMES"
msgid "ROW"
msgstr ""
-#: formula/inc/core_resource.hrc:2444
-msgctxt "RID_STRLIST_FUNCTION_NAMES"
-msgid "SHEET"
-msgstr "BLAT"
-
#: formula/inc/core_resource.hrc:2445
msgctxt "RID_STRLIST_FUNCTION_NAMES"
msgid "RRI"
@@ -982,11 +977,6 @@ msgctxt "RID_STRLIST_FUNCTION_NAMES"
msgid "NPER"
msgstr ""
-#: formula/inc/core_resource.hrc:2448
-msgctxt "RID_STRLIST_FUNCTION_NAMES"
-msgid "RATE"
-msgstr "DATUM"
-
#: formula/inc/core_resource.hrc:2449
msgctxt "RID_STRLIST_FUNCTION_NAMES"
msgid "IPMT"
@@ -2144,41 +2134,41 @@ msgctxt "formuladialog|next"
msgid "_Next >"
msgstr "~Weider >"
-#: formula/uiconfig/ui/formuladialog.ui:159
+#: formula/uiconfig/ui/formuladialog.ui:161
msgctxt "formuladialog|function"
msgid "Functions"
msgstr "Fonctiounen"
-#: formula/uiconfig/ui/formuladialog.ui:181
+#: formula/uiconfig/ui/formuladialog.ui:183
#, fuzzy
msgctxt "formuladialog|struct"
msgid "Structure"
msgstr "Struktur"
-#: formula/uiconfig/ui/formuladialog.ui:228
+#: formula/uiconfig/ui/formuladialog.ui:230
#, fuzzy
msgctxt "formuladialog|label2"
msgid "Function result"
msgstr "Fonctiounsresultat"
-#: formula/uiconfig/ui/formuladialog.ui:369
+#: formula/uiconfig/ui/formuladialog.ui:371
#, fuzzy
msgctxt "formuladialog|formula"
msgid "For_mula"
msgstr "Formel"
-#: formula/uiconfig/ui/formuladialog.ui:384
+#: formula/uiconfig/ui/formuladialog.ui:386
#, fuzzy
msgctxt "formuladialog|label1"
msgid "Result"
msgstr "Resultat"
-#: formula/uiconfig/ui/formuladialog.ui:419
+#: formula/uiconfig/ui/formuladialog.ui:421
msgctxt "formuladialog|ed_formula-atkobject"
msgid "Formula"
msgstr "Formel"
-#: formula/uiconfig/ui/formuladialog.ui:468
+#: formula/uiconfig/ui/formuladialog.ui:470
msgctxt "formuladialog|RB_REF|tooltip_text"
msgid "Maximize"
msgstr "Maximéieren"
diff --git a/source/lb/fpicker/messages.po b/source/lb/fpicker/messages.po
index a9fdc4fef1c..bbb4d4695ff 100644
--- a/source/lb/fpicker/messages.po
+++ b/source/lb/fpicker/messages.po
@@ -1,9 +1,9 @@
-#. extracted from fpicker
+#. extracted from fpicker/inc
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2018-06-04 15:42+0200\n"
+"POT-Creation-Date: 2018-10-02 17:56+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -13,131 +13,6 @@ msgstr ""
"X-Accelerator-Marker: ~\n"
"X-Generator: LibreOffice\n"
-#: include/fpicker/strings.hrc:14
-msgctxt "STR_SVT_FILEPICKER_AUTO_EXTENSION"
-msgid "~Automatic file name extension"
-msgstr ""
-
-#: include/fpicker/strings.hrc:15
-msgctxt "STR_SVT_FILEPICKER_PASSWORD"
-msgid "Save with pass~word"
-msgstr ""
-
-#. dear loplugins, please don't remove this constant, it will be used in follow-up commits
-#: include/fpicker/strings.hrc:17
-msgctxt "STR_SVT_FILEPICKER_GPGENCRYPT"
-msgid "Encrypt with ~GPG key"
-msgstr ""
-
-#: include/fpicker/strings.hrc:18
-msgctxt "STR_SVT_FILEPICKER_FILTER_OPTIONS"
-msgid "~Edit filter settings"
-msgstr ""
-
-#: include/fpicker/strings.hrc:19
-msgctxt "STR_SVT_FILEPICKER_READONLY"
-msgid "~Read-only"
-msgstr ""
-
-#: include/fpicker/strings.hrc:20
-msgctxt "STR_SVT_FILEPICKER_INSERT_AS_LINK"
-msgid "~Link"
-msgstr ""
-
-#: include/fpicker/strings.hrc:21
-#, fuzzy
-msgctxt "STR_SVT_FILEPICKER_SHOW_PREVIEW"
-msgid "Pr~eview"
-msgstr "Iwwersiicht"
-
-#: include/fpicker/strings.hrc:22
-msgctxt "STR_SVT_FILEPICKER_PLAY"
-msgid "~Play"
-msgstr "~Liesen"
-
-#: include/fpicker/strings.hrc:23
-msgctxt "STR_SVT_FILEPICKER_VERSION"
-msgid "~Version:"
-msgstr "~Versioun:"
-
-#: include/fpicker/strings.hrc:24
-msgctxt "STR_SVT_FILEPICKER_TEMPLATES"
-msgid "S~tyles:"
-msgstr ""
-
-#: include/fpicker/strings.hrc:25
-msgctxt "STR_SVT_FILEPICKER_IMAGE_TEMPLATE"
-msgid "Style:"
-msgstr ""
-
-#: include/fpicker/strings.hrc:26
-msgctxt "STR_SVT_FILEPICKER_IMAGE_ANCHOR"
-msgid "A~nchor:"
-msgstr ""
-
-#: include/fpicker/strings.hrc:27
-#, fuzzy
-msgctxt "STR_SVT_FILEPICKER_SELECTION"
-msgid "~Selection"
-msgstr "Auswiel"
-
-#: include/fpicker/strings.hrc:28
-msgctxt "STR_SVT_FILEPICKER_FILTER_TITLE"
-msgid "File ~type:"
-msgstr ""
-
-#: include/fpicker/strings.hrc:29
-msgctxt "STR_SVT_FOLDERPICKER_DEFAULT_TITLE"
-msgid "Select Path"
-msgstr ""
-
-#: include/fpicker/strings.hrc:30
-msgctxt "STR_SVT_FOLDERPICKER_DEFAULT_DESCRIPTION"
-msgid "Please select a folder."
-msgstr ""
-
-#: include/fpicker/strings.hrc:31
-msgctxt "STR_SVT_ALREADYEXISTOVERWRITE"
-msgid ""
-"A file named \"$filename$\" already exists.\n"
-"\n"
-"Do you want to replace it?"
-msgstr ""
-
-#: include/fpicker/strings.hrc:32
-msgctxt "STR_SVT_DELETESERVICE"
-msgid ""
-"Are you sure you want to delete the service?\n"
-"\"$servicename$\""
-msgstr ""
-
-#: include/fpicker/strings.hrc:33
-#, fuzzy
-msgctxt "STR_SVT_ROOTLABEL"
-msgid "Root"
-msgstr "Fous"
-
-#: include/fpicker/strings.hrc:34
-msgctxt "STR_FILTERNAME_ALL"
-msgid "All files"
-msgstr ""
-
-#: include/fpicker/strings.hrc:35
-msgctxt "STR_FILEDLG_OPEN"
-msgid "Open"
-msgstr "Opmaachen"
-
-#: include/fpicker/strings.hrc:36
-msgctxt "STR_FILEDLG_TYPE"
-msgid "File ~type"
-msgstr ""
-
-#: include/fpicker/strings.hrc:37
-#, fuzzy
-msgctxt "STR_FILEDLG_SAVE"
-msgid "Save"
-msgstr "~Späicheren"
-
#: fpicker/inc/strings.hrc:25
msgctxt "STR_EXPLORERFILE_OPEN"
msgid "Open"
@@ -334,3 +209,128 @@ msgstr ""
msgctxt "remotefilesdialog|change_password"
msgid "_Change password"
msgstr ""
+
+#: include/fpicker/strings.hrc:14
+msgctxt "STR_SVT_FILEPICKER_AUTO_EXTENSION"
+msgid "~Automatic file name extension"
+msgstr ""
+
+#: include/fpicker/strings.hrc:15
+msgctxt "STR_SVT_FILEPICKER_PASSWORD"
+msgid "Save with pass~word"
+msgstr ""
+
+#. dear loplugins, please don't remove this constant, it will be used in follow-up commits
+#: include/fpicker/strings.hrc:17
+msgctxt "STR_SVT_FILEPICKER_GPGENCRYPT"
+msgid "Encrypt with ~GPG key"
+msgstr ""
+
+#: include/fpicker/strings.hrc:18
+msgctxt "STR_SVT_FILEPICKER_FILTER_OPTIONS"
+msgid "~Edit filter settings"
+msgstr ""
+
+#: include/fpicker/strings.hrc:19
+msgctxt "STR_SVT_FILEPICKER_READONLY"
+msgid "~Read-only"
+msgstr ""
+
+#: include/fpicker/strings.hrc:20
+msgctxt "STR_SVT_FILEPICKER_INSERT_AS_LINK"
+msgid "~Link"
+msgstr ""
+
+#: include/fpicker/strings.hrc:21
+#, fuzzy
+msgctxt "STR_SVT_FILEPICKER_SHOW_PREVIEW"
+msgid "Pr~eview"
+msgstr "Iwwersiicht"
+
+#: include/fpicker/strings.hrc:22
+msgctxt "STR_SVT_FILEPICKER_PLAY"
+msgid "~Play"
+msgstr "~Liesen"
+
+#: include/fpicker/strings.hrc:23
+msgctxt "STR_SVT_FILEPICKER_VERSION"
+msgid "~Version:"
+msgstr "~Versioun:"
+
+#: include/fpicker/strings.hrc:24
+msgctxt "STR_SVT_FILEPICKER_TEMPLATES"
+msgid "S~tyles:"
+msgstr ""
+
+#: include/fpicker/strings.hrc:25
+msgctxt "STR_SVT_FILEPICKER_IMAGE_TEMPLATE"
+msgid "Style:"
+msgstr ""
+
+#: include/fpicker/strings.hrc:26
+msgctxt "STR_SVT_FILEPICKER_IMAGE_ANCHOR"
+msgid "A~nchor:"
+msgstr ""
+
+#: include/fpicker/strings.hrc:27
+#, fuzzy
+msgctxt "STR_SVT_FILEPICKER_SELECTION"
+msgid "~Selection"
+msgstr "Auswiel"
+
+#: include/fpicker/strings.hrc:28
+msgctxt "STR_SVT_FILEPICKER_FILTER_TITLE"
+msgid "File ~type:"
+msgstr ""
+
+#: include/fpicker/strings.hrc:29
+msgctxt "STR_SVT_FOLDERPICKER_DEFAULT_TITLE"
+msgid "Select Path"
+msgstr ""
+
+#: include/fpicker/strings.hrc:30
+msgctxt "STR_SVT_FOLDERPICKER_DEFAULT_DESCRIPTION"
+msgid "Please select a folder."
+msgstr ""
+
+#: include/fpicker/strings.hrc:31
+msgctxt "STR_SVT_ALREADYEXISTOVERWRITE"
+msgid ""
+"A file named \"$filename$\" already exists.\n"
+"\n"
+"Do you want to replace it?"
+msgstr ""
+
+#: include/fpicker/strings.hrc:32
+msgctxt "STR_SVT_DELETESERVICE"
+msgid ""
+"Are you sure you want to delete the service?\n"
+"\"$servicename$\""
+msgstr ""
+
+#: include/fpicker/strings.hrc:33
+#, fuzzy
+msgctxt "STR_SVT_ROOTLABEL"
+msgid "Root"
+msgstr "Fous"
+
+#: include/fpicker/strings.hrc:34
+msgctxt "STR_FILTERNAME_ALL"
+msgid "All files"
+msgstr ""
+
+#: include/fpicker/strings.hrc:35
+msgctxt "STR_FILEDLG_OPEN"
+msgid "Open"
+msgstr "Opmaachen"
+
+#: include/fpicker/strings.hrc:36
+msgctxt "STR_FILEDLG_TYPE"
+msgid "File ~type"
+msgstr ""
+
+#: include/fpicker/strings.hrc:37
+#, fuzzy
+msgctxt "STR_FILEDLG_SAVE"
+msgid "Save"
+msgstr "~Späicheren"
diff --git a/source/lb/instsetoo_native/inc_openoffice/windows/msi_languages.po b/source/lb/instsetoo_native/inc_openoffice/windows/msi_languages.po
index d2fa3d3b495..92452028ee3 100644
--- a/source/lb/instsetoo_native/inc_openoffice/windows/msi_languages.po
+++ b/source/lb/instsetoo_native/inc_openoffice/windows/msi_languages.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2018-04-17 15:54+0200\n"
+"POT-Creation-Date: 2018-09-03 13:23+0200\n"
"PO-Revision-Date: 2016-05-02 00:29+0000\n"
"Last-Translator: Anonymous Pootle User\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -2805,7 +2805,7 @@ msgctxt ""
"Control.ulf\n"
"OOO_CONTROL_319\n"
"LngText.text"
-msgid "Create a start link on desktop"
+msgid "Create a shortcut on desktop"
msgstr ""
#: Control.ulf
diff --git a/source/lb/mysqlc/source.po b/source/lb/mysqlc/source.po
deleted file mode 100644
index a34f76dd3e9..00000000000
--- a/source/lb/mysqlc/source.po
+++ /dev/null
@@ -1,32 +0,0 @@
-#. extracted from mysqlc/source
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: https://bugs.freedesktop.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2013-05-23 12:05+0200\n"
-"PO-Revision-Date: 2011-04-09 23:40+0200\n"
-"Last-Translator: Edson <soued0311@hotmail.com>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"Language: lb\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: LibreOffice\n"
-"X-Accelerator-Marker: ~\n"
-
-#: description.xml
-msgctxt ""
-"description.xml\n"
-"dispname\n"
-"description.text"
-msgid "MySQL Connector"
-msgstr ""
-
-#: description.xml
-msgctxt ""
-"description.xml\n"
-"extdesc\n"
-"description.text"
-msgid "MySQL Connector installs a native MySQL database driver. It is faster, seamless integrated, easier to administrate and there is no need to install and setup a JDBC or ODBC driver separately. It was never easier to use MySQL databases in LibreOffice Base.\n"
-msgstr ""
diff --git a/source/lb/mysqlc/source/registry/data/org/openoffice/Office/DataAccess.po b/source/lb/mysqlc/source/registry/data/org/openoffice/Office/DataAccess.po
deleted file mode 100644
index c128db762dd..00000000000
--- a/source/lb/mysqlc/source/registry/data/org/openoffice/Office/DataAccess.po
+++ /dev/null
@@ -1,25 +0,0 @@
-#. extracted from mysqlc/source/registry/data/org/openoffice/Office/DataAccess
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: https://bugs.freedesktop.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2013-05-23 12:05+0200\n"
-"PO-Revision-Date: 2011-04-05 11:03+0200\n"
-"Last-Translator: Edson <soued0311@hotmail.com>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"Language: lb\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: LibreOffice\n"
-"X-Accelerator-Marker: ~\n"
-
-#: Drivers.xcu
-msgctxt ""
-"Drivers.xcu\n"
-".Drivers.Installed.sdbc:mysqlc:*\n"
-"DriverTypeDisplayName\n"
-"value.text"
-msgid "MySQL Connector"
-msgstr ""
diff --git a/source/lb/officecfg/registry/data/org/openoffice/Office.po b/source/lb/officecfg/registry/data/org/openoffice/Office.po
index 72629ad5e58..67955351f4f 100644
--- a/source/lb/officecfg/registry/data/org/openoffice/Office.po
+++ b/source/lb/officecfg/registry/data/org/openoffice/Office.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2018-07-31 14:10+0200\n"
+"POT-Creation-Date: 2018-10-02 17:57+0200\n"
"PO-Revision-Date: 2016-05-08 17:40+0000\n"
"Last-Translator: Anonymous Pootle User\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -1440,6 +1440,15 @@ msgstr ""
#: PresentationMinimizer.xcu
msgctxt ""
"PresentationMinimizer.xcu\n"
+"..PresentationMinimizer.Strings\n"
+"STR_ERROR_IO\n"
+"value.text"
+msgid "Writing output file failed."
+msgstr ""
+
+#: PresentationMinimizer.xcu
+msgctxt ""
+"PresentationMinimizer.xcu\n"
"..PresentationMinimizer.LastUsedSettings\n"
"Name\n"
"value.text"
@@ -9012,7 +9021,7 @@ msgctxt ""
"..TableWizard.TableWizard.private.Tables.recipes.Fields.instructions\n"
"ShortName\n"
"value.text"
-msgid "Instrction"
+msgid "Instruction"
msgstr ""
#: TableWizard.xcu
diff --git a/source/lb/officecfg/registry/data/org/openoffice/Office/UI.po b/source/lb/officecfg/registry/data/org/openoffice/Office/UI.po
index a2a0cf73747..3243fffd0a5 100644
--- a/source/lb/officecfg/registry/data/org/openoffice/Office/UI.po
+++ b/source/lb/officecfg/registry/data/org/openoffice/Office/UI.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2018-07-31 14:10+0200\n"
+"POT-Creation-Date: 2018-10-02 17:57+0200\n"
"PO-Revision-Date: 2016-07-05 02:00+0000\n"
"Last-Translator: Anonymous Pootle User\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -2450,14 +2450,13 @@ msgid "Columns ~Left"
msgstr ""
#: CalcCommands.xcu
-#, fuzzy
msgctxt ""
"CalcCommands.xcu\n"
"..CalcCommands.UserInterface.Commands..uno:InsertColumnsBefore\n"
"Label\n"
"value.text"
-msgid "Insert Co~lumns Left"
-msgstr "Kolonnen ~asetzen"
+msgid "Insert Co~lumns Before"
+msgstr ""
#: CalcCommands.xcu
msgctxt ""
@@ -2465,18 +2464,17 @@ msgctxt ""
"..CalcCommands.UserInterface.Commands..uno:InsertColumnsBefore\n"
"ContextLabel\n"
"value.text"
-msgid "Columns ~Left"
+msgid "Columns ~Before"
msgstr ""
#: CalcCommands.xcu
-#, fuzzy
msgctxt ""
"CalcCommands.xcu\n"
"..CalcCommands.UserInterface.Commands..uno:InsertColumnsBefore\n"
"PopupLabel\n"
"value.text"
-msgid "Insert Columns ~Left"
-msgstr "Kolonnen ~asetzen"
+msgid "Insert Columns ~Before"
+msgstr ""
#: CalcCommands.xcu
msgctxt ""
@@ -2506,14 +2504,13 @@ msgid "Insert Rows ~Below"
msgstr ""
#: CalcCommands.xcu
-#, fuzzy
msgctxt ""
"CalcCommands.xcu\n"
"..CalcCommands.UserInterface.Commands..uno:InsertColumnsAfter\n"
"Label\n"
"value.text"
-msgid "Insert Co~lumns Right"
-msgstr "Kolonnen ~asetzen"
+msgid "Insert Co~lumns After"
+msgstr ""
#: CalcCommands.xcu
msgctxt ""
@@ -2521,18 +2518,17 @@ msgctxt ""
"..CalcCommands.UserInterface.Commands..uno:InsertColumnsAfter\n"
"ContextLabel\n"
"value.text"
-msgid "Columns ~Right"
+msgid "Columns ~After"
msgstr ""
#: CalcCommands.xcu
-#, fuzzy
msgctxt ""
"CalcCommands.xcu\n"
"..CalcCommands.UserInterface.Commands..uno:InsertColumnsAfter\n"
"PopupLabel\n"
"value.text"
-msgid "Insert Columns ~Right"
-msgstr "Kolonnen ~asetzen"
+msgid "Insert Columns ~After"
+msgstr ""
#: CalcCommands.xcu
#, fuzzy
@@ -7454,15 +7450,6 @@ msgstr ""
#: DrawImpressCommands.xcu
msgctxt ""
"DrawImpressCommands.xcu\n"
-"..DrawImpressCommands.UserInterface.Commands..uno:MeasureAttributes\n"
-"Label\n"
-"value.text"
-msgid "Dimen~sions..."
-msgstr ""
-
-#: DrawImpressCommands.xcu
-msgctxt ""
-"DrawImpressCommands.xcu\n"
"..DrawImpressCommands.UserInterface.Commands..uno:GridFront\n"
"Label\n"
"value.text"
@@ -8504,8 +8491,17 @@ msgctxt ""
"..DrawImpressCommands.UserInterface.Commands..uno:InteractiveTransparence\n"
"Label\n"
"value.text"
-msgid "Transparency"
-msgstr "Transparenz"
+msgid "Transparency tool"
+msgstr ""
+
+#: DrawImpressCommands.xcu
+msgctxt ""
+"DrawImpressCommands.xcu\n"
+"..DrawImpressCommands.UserInterface.Commands..uno:InteractiveTransparence\n"
+"TooltipLabel\n"
+"value.text"
+msgid "Interactive transparency tool"
+msgstr ""
#: DrawImpressCommands.xcu
msgctxt ""
@@ -8513,7 +8509,16 @@ msgctxt ""
"..DrawImpressCommands.UserInterface.Commands..uno:InteractiveGradient\n"
"Label\n"
"value.text"
-msgid "Gradient"
+msgid "Gradient tool"
+msgstr ""
+
+#: DrawImpressCommands.xcu
+msgctxt ""
+"DrawImpressCommands.xcu\n"
+"..DrawImpressCommands.UserInterface.Commands..uno:InteractiveGradient\n"
+"TooltipLabel\n"
+"value.text"
+msgid "Interactive gradient tool"
msgstr ""
#: DrawImpressCommands.xcu
@@ -9351,6 +9356,15 @@ msgstr "Optimiséieren"
#: DrawImpressCommands.xcu
msgctxt ""
"DrawImpressCommands.xcu\n"
+"..DrawImpressCommands.UserInterface.Popups..uno:SetOptimalColumnWidth\n"
+"Label\n"
+"value.text"
+msgid "Optimal Column Width"
+msgstr ""
+
+#: DrawImpressCommands.xcu
+msgctxt ""
+"DrawImpressCommands.xcu\n"
"..DrawImpressCommands.UserInterface.Popups..uno:DistributeColumns\n"
"Label\n"
"value.text"
@@ -9360,6 +9374,15 @@ msgstr ""
#: DrawImpressCommands.xcu
msgctxt ""
"DrawImpressCommands.xcu\n"
+"..DrawImpressCommands.UserInterface.Popups..uno:SetOptimalRowHeight\n"
+"Label\n"
+"value.text"
+msgid "Optimal Row Height"
+msgstr ""
+
+#: DrawImpressCommands.xcu
+msgctxt ""
+"DrawImpressCommands.xcu\n"
"..DrawImpressCommands.UserInterface.Popups..uno:DistributeRows\n"
"Label\n"
"value.text"
@@ -17687,6 +17710,15 @@ msgstr "Ze~il..."
#: GenericCommands.xcu
msgctxt ""
"GenericCommands.xcu\n"
+"..GenericCommands.UserInterface.Commands..uno:MeasureAttributes\n"
+"Label\n"
+"value.text"
+msgid "Dimen~sions..."
+msgstr ""
+
+#: GenericCommands.xcu
+msgctxt ""
+"GenericCommands.xcu\n"
"..GenericCommands.UserInterface.Commands..uno:LanguageStatus\n"
"Label\n"
"value.text"
@@ -27965,14 +27997,13 @@ msgid "~Columns..."
msgstr ""
#: WriterCommands.xcu
-#, fuzzy
msgctxt ""
"WriterCommands.xcu\n"
"..WriterCommands.UserInterface.Commands..uno:InsertColumnsBefore\n"
"Label\n"
"value.text"
-msgid "Insert Columns Left"
-msgstr "Kolonnen ~asetzen"
+msgid "Insert Columns Before"
+msgstr ""
#: WriterCommands.xcu
msgctxt ""
@@ -27980,7 +28011,7 @@ msgctxt ""
"..WriterCommands.UserInterface.Commands..uno:InsertColumnsBefore\n"
"ContextLabel\n"
"value.text"
-msgid "Columns ~Left"
+msgid "Columns ~Before"
msgstr ""
#: WriterCommands.xcu
@@ -27994,14 +28025,13 @@ msgid "Insert Column"
msgstr "Kolonnen ~asetzen"
#: WriterCommands.xcu
-#, fuzzy
msgctxt ""
"WriterCommands.xcu\n"
"..WriterCommands.UserInterface.Commands..uno:InsertColumnsAfter\n"
"Label\n"
"value.text"
-msgid "Insert Columns Right"
-msgstr "Kolonnen ~asetzen"
+msgid "Insert Columns After"
+msgstr ""
#: WriterCommands.xcu
msgctxt ""
@@ -28009,7 +28039,7 @@ msgctxt ""
"..WriterCommands.UserInterface.Commands..uno:InsertColumnsAfter\n"
"ContextLabel\n"
"value.text"
-msgid "Columns R~ight"
+msgid "Columns ~After"
msgstr ""
#: WriterCommands.xcu
diff --git a/source/lb/reportdesign/messages.po b/source/lb/reportdesign/messages.po
index 63088fd192b..b8668702935 100644
--- a/source/lb/reportdesign/messages.po
+++ b/source/lb/reportdesign/messages.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2018-05-22 13:17+0200\n"
+"POT-Creation-Date: 2018-10-02 17:56+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -882,7 +882,7 @@ msgctxt "backgrounddialog|BackgroundDialog"
msgid "Section Setup"
msgstr ""
-#: reportdesign/uiconfig/dbreport/ui/backgrounddialog.ui:105
+#: reportdesign/uiconfig/dbreport/ui/backgrounddialog.ui:107
msgctxt "backgrounddialog|background"
msgid "Background"
msgstr "Hannergrond"
@@ -892,33 +892,33 @@ msgctxt "chardialog|CharDialog"
msgid "Character Settings"
msgstr ""
-#: reportdesign/uiconfig/dbreport/ui/chardialog.ui:105
+#: reportdesign/uiconfig/dbreport/ui/chardialog.ui:107
msgctxt "chardialog|font"
msgid "Font"
msgstr "Schrëft"
-#: reportdesign/uiconfig/dbreport/ui/chardialog.ui:127
+#: reportdesign/uiconfig/dbreport/ui/chardialog.ui:129
msgctxt "chardialog|fonteffects"
msgid "Font Effects"
msgstr "Schrëfteffekter"
-#: reportdesign/uiconfig/dbreport/ui/chardialog.ui:150
+#: reportdesign/uiconfig/dbreport/ui/chardialog.ui:152
msgctxt "chardialog|position"
msgid "Position"
msgstr "Positioun"
-#: reportdesign/uiconfig/dbreport/ui/chardialog.ui:173
+#: reportdesign/uiconfig/dbreport/ui/chardialog.ui:175
#, fuzzy
msgctxt "chardialog|asianlayout"
msgid "Asian Layout"
msgstr "Asiatesche Layout"
-#: reportdesign/uiconfig/dbreport/ui/chardialog.ui:196
+#: reportdesign/uiconfig/dbreport/ui/chardialog.ui:198
msgctxt "chardialog|background"
msgid "Highlighting"
msgstr ""
-#: reportdesign/uiconfig/dbreport/ui/chardialog.ui:219
+#: reportdesign/uiconfig/dbreport/ui/chardialog.ui:221
msgctxt "chardialog|alignment"
msgid "Alignment"
msgstr "Aus~riichten"
@@ -1270,12 +1270,12 @@ msgctxt "pagedialog|PageDialog"
msgid "Page Setup"
msgstr ""
-#: reportdesign/uiconfig/dbreport/ui/pagedialog.ui:105
+#: reportdesign/uiconfig/dbreport/ui/pagedialog.ui:107
msgctxt "pagedialog|page"
msgid "Page"
msgstr "Säit"
-#: reportdesign/uiconfig/dbreport/ui/pagedialog.ui:127
+#: reportdesign/uiconfig/dbreport/ui/pagedialog.ui:129
msgctxt "pagedialog|background"
msgid "Background"
msgstr "Hannergrond"
diff --git a/source/lb/sc/messages.po b/source/lb/sc/messages.po
index 140fb124ea6..06261e16c73 100644
--- a/source/lb/sc/messages.po
+++ b/source/lb/sc/messages.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2018-07-31 14:09+0200\n"
+"POT-Creation-Date: 2018-10-02 17:56+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -665,14 +665,14 @@ msgid "Spellcheck"
msgstr "Spellchecker"
#: sc/inc/globstr.hrc:144
-msgctxt "STR_TABLE_UND"
+msgctxt "STR_TABLE_AND"
msgid "AND"
-msgstr "AN"
+msgstr ""
#: sc/inc/globstr.hrc:145
-msgctxt "STR_TABLE_ODER"
+msgctxt "STR_TABLE_OR"
msgid "OR"
-msgstr "ODER"
+msgstr ""
#: sc/inc/globstr.hrc:146
msgctxt "STR_TABLE_DEF"
@@ -15437,22 +15437,22 @@ msgctxt "allheaderfooterdialog|AllHeaderFooterDialog"
msgid "Headers/Footers"
msgstr ""
-#: sc/uiconfig/scalc/ui/allheaderfooterdialog.ui:106
+#: sc/uiconfig/scalc/ui/allheaderfooterdialog.ui:108
msgctxt "allheaderfooterdialog|headerright"
msgid "Header (right)"
msgstr ""
-#: sc/uiconfig/scalc/ui/allheaderfooterdialog.ui:128
+#: sc/uiconfig/scalc/ui/allheaderfooterdialog.ui:130
msgctxt "allheaderfooterdialog|headerleft"
msgid "Header (left)"
msgstr ""
-#: sc/uiconfig/scalc/ui/allheaderfooterdialog.ui:151
+#: sc/uiconfig/scalc/ui/allheaderfooterdialog.ui:153
msgctxt "allheaderfooterdialog|footerright"
msgid "Footer (right)"
msgstr ""
-#: sc/uiconfig/scalc/ui/allheaderfooterdialog.ui:174
+#: sc/uiconfig/scalc/ui/allheaderfooterdialog.ui:176
msgctxt "allheaderfooterdialog|footerleft"
msgid "Footer (left)"
msgstr ""
@@ -15589,17 +15589,17 @@ msgctxt "cellprotectionpage|checkProtected"
msgid "_Protected"
msgstr ""
-#: sc/uiconfig/scalc/ui/cellprotectionpage.ui:55
+#: sc/uiconfig/scalc/ui/cellprotectionpage.ui:53
msgctxt "cellprotectionpage|checkHideFormula"
msgid "Hide _formula"
msgstr ""
-#: sc/uiconfig/scalc/ui/cellprotectionpage.ui:74
+#: sc/uiconfig/scalc/ui/cellprotectionpage.ui:70
msgctxt "cellprotectionpage|checkHideAll"
msgid "Hide _all"
msgstr ""
-#: sc/uiconfig/scalc/ui/cellprotectionpage.ui:99
+#: sc/uiconfig/scalc/ui/cellprotectionpage.ui:92
msgctxt "cellprotectionpage|label1"
msgid ""
"Cell protection is only effective after the current sheet has been protected.\n"
@@ -15607,22 +15607,22 @@ msgid ""
"Select 'Protect Sheet' from the 'Tools' menu."
msgstr ""
-#: sc/uiconfig/scalc/ui/cellprotectionpage.ui:120
+#: sc/uiconfig/scalc/ui/cellprotectionpage.ui:113
msgctxt "cellprotectionpage|LabelProtection"
msgid "Protection"
msgstr "Sécherung"
-#: sc/uiconfig/scalc/ui/cellprotectionpage.ui:154
+#: sc/uiconfig/scalc/ui/cellprotectionpage.ui:146
msgctxt "cellprotectionpage|checkHidePrinting"
msgid "Hide _when printing"
msgstr ""
-#: sc/uiconfig/scalc/ui/cellprotectionpage.ui:177
+#: sc/uiconfig/scalc/ui/cellprotectionpage.ui:166
msgctxt "cellprotectionpage|label4"
msgid "The cells selected will be omitted when printing."
msgstr ""
-#: sc/uiconfig/scalc/ui/cellprotectionpage.ui:196
+#: sc/uiconfig/scalc/ui/cellprotectionpage.ui:184
#, fuzzy
msgctxt "cellprotectionpage|label3"
msgid "Print"
@@ -15654,17 +15654,17 @@ msgctxt "chardialog|CharDialog"
msgid "Character"
msgstr "Zeechen"
-#: sc/uiconfig/scalc/ui/chardialog.ui:106
+#: sc/uiconfig/scalc/ui/chardialog.ui:135
msgctxt "chardialog|font"
msgid "Font"
msgstr "Schrëft"
-#: sc/uiconfig/scalc/ui/chardialog.ui:128
+#: sc/uiconfig/scalc/ui/chardialog.ui:181
msgctxt "chardialog|fonteffects"
msgid "Font Effects"
msgstr "Schrëfteffekter"
-#: sc/uiconfig/scalc/ui/chardialog.ui:151
+#: sc/uiconfig/scalc/ui/chardialog.ui:228
msgctxt "chardialog|position"
msgid "Position"
msgstr "Positioun"
@@ -16499,40 +16499,40 @@ msgctxt "correlationdialog|label2"
msgid "Grouped by"
msgstr ""
-#: sc/uiconfig/scalc/ui/covariancedialog.ui:10
+#: sc/uiconfig/scalc/ui/covariancedialog.ui:9
msgctxt "covariancedialog|CovarianceDialog"
msgid "Covariance"
msgstr ""
-#: sc/uiconfig/scalc/ui/covariancedialog.ui:42
+#: sc/uiconfig/scalc/ui/covariancedialog.ui:41
msgctxt "covariancedialog|input-range-label"
msgid "Input range:"
msgstr ""
-#: sc/uiconfig/scalc/ui/covariancedialog.ui:80
+#: sc/uiconfig/scalc/ui/covariancedialog.ui:79
msgctxt "covariancedialog|output-range-label"
msgid "Results to:"
msgstr ""
-#: sc/uiconfig/scalc/ui/covariancedialog.ui:121
+#: sc/uiconfig/scalc/ui/covariancedialog.ui:120
#, fuzzy
msgctxt "covariancedialog|label1"
msgid "Data"
msgstr "Datum"
-#: sc/uiconfig/scalc/ui/covariancedialog.ui:215
+#: sc/uiconfig/scalc/ui/covariancedialog.ui:214
#, fuzzy
msgctxt "covariancedialog|groupedby-columns-radio"
msgid "Columns"
msgstr "Kolonn"
-#: sc/uiconfig/scalc/ui/covariancedialog.ui:231
+#: sc/uiconfig/scalc/ui/covariancedialog.ui:230
#, fuzzy
msgctxt "covariancedialog|groupedby-rows-radio"
msgid "Rows"
msgstr "Zeil"
-#: sc/uiconfig/scalc/ui/covariancedialog.ui:253
+#: sc/uiconfig/scalc/ui/covariancedialog.ui:252
msgctxt "covariancedialog|label2"
msgid "Grouped by"
msgstr ""
@@ -16725,72 +16725,72 @@ msgctxt "databaroptions|label10"
msgid "Fill:"
msgstr "Datei"
-#: sc/uiconfig/scalc/ui/databaroptions.ui:280
+#: sc/uiconfig/scalc/ui/databaroptions.ui:282
msgctxt "databaroptions|fill_type"
msgid "Color"
msgstr "Faarf"
-#: sc/uiconfig/scalc/ui/databaroptions.ui:281
+#: sc/uiconfig/scalc/ui/databaroptions.ui:283
msgctxt "databaroptions|fill_type"
msgid "Gradient"
msgstr ""
-#: sc/uiconfig/scalc/ui/databaroptions.ui:297
+#: sc/uiconfig/scalc/ui/databaroptions.ui:299
msgctxt "databaroptions|label2"
msgid "Bar Colors"
msgstr ""
-#: sc/uiconfig/scalc/ui/databaroptions.ui:335
+#: sc/uiconfig/scalc/ui/databaroptions.ui:337
msgctxt "databaroptions|label8"
msgid "Position of vertical axis:"
msgstr ""
-#: sc/uiconfig/scalc/ui/databaroptions.ui:349
+#: sc/uiconfig/scalc/ui/databaroptions.ui:351
msgctxt "databaroptions|label9"
msgid "Color of vertical axis:"
msgstr ""
-#: sc/uiconfig/scalc/ui/databaroptions.ui:364
+#: sc/uiconfig/scalc/ui/databaroptions.ui:366
msgctxt "databaroptions|axis_pos"
msgid "Automatic"
msgstr "Automatesch"
-#: sc/uiconfig/scalc/ui/databaroptions.ui:365
+#: sc/uiconfig/scalc/ui/databaroptions.ui:367
msgctxt "databaroptions|axis_pos"
msgid "Middle"
msgstr ""
-#: sc/uiconfig/scalc/ui/databaroptions.ui:366
+#: sc/uiconfig/scalc/ui/databaroptions.ui:368
msgctxt "databaroptions|axis_pos"
msgid "None"
msgstr "Keen"
-#: sc/uiconfig/scalc/ui/databaroptions.ui:393
+#: sc/uiconfig/scalc/ui/databaroptions.ui:395
msgctxt "databaroptions|label3"
msgid "Axis"
msgstr ""
-#: sc/uiconfig/scalc/ui/databaroptions.ui:431
+#: sc/uiconfig/scalc/ui/databaroptions.ui:433
msgctxt "databaroptions|label12"
msgid "Minimum bar length (%):"
msgstr ""
-#: sc/uiconfig/scalc/ui/databaroptions.ui:445
+#: sc/uiconfig/scalc/ui/databaroptions.ui:447
msgctxt "databaroptions|label13"
msgid "Maximum bar length (%):"
msgstr ""
-#: sc/uiconfig/scalc/ui/databaroptions.ui:482
+#: sc/uiconfig/scalc/ui/databaroptions.ui:484
msgctxt "databaroptions|label11"
msgid "Bar Lengths"
msgstr ""
-#: sc/uiconfig/scalc/ui/databaroptions.ui:497
+#: sc/uiconfig/scalc/ui/databaroptions.ui:499
msgctxt "databaroptions|only_bar"
msgid "Display bar only"
msgstr ""
-#: sc/uiconfig/scalc/ui/databaroptions.ui:515
+#: sc/uiconfig/scalc/ui/databaroptions.ui:516
msgctxt "databaroptions|str_same_value"
msgid "The minimum value must be less than the maximum value."
msgstr ""
@@ -17056,34 +17056,34 @@ msgctxt "dataprovider|label6"
msgid "URL:"
msgstr "URL"
-#: sc/uiconfig/scalc/ui/dataprovider.ui:120
+#: sc/uiconfig/scalc/ui/dataprovider.ui:122
msgctxt "dataprovider|url|tooltip_text"
msgid "Enter the URL of the source document in the local file system or Internet here."
msgstr ""
-#: sc/uiconfig/scalc/ui/dataprovider.ui:138
+#: sc/uiconfig/scalc/ui/dataprovider.ui:140
#, fuzzy
msgctxt "dataprovider|browse"
msgid "_Browse..."
msgstr "Duerchsichen..."
-#: sc/uiconfig/scalc/ui/dataprovider.ui:165
+#: sc/uiconfig/scalc/ui/dataprovider.ui:167
#, fuzzy
msgctxt "dataprovider|label_db"
msgid "Database Range:"
msgstr "Datebankberäicher"
-#: sc/uiconfig/scalc/ui/dataprovider.ui:199
+#: sc/uiconfig/scalc/ui/dataprovider.ui:203
msgctxt "dataprovider|label_provider"
msgid "Data Provider:"
msgstr ""
-#: sc/uiconfig/scalc/ui/dataprovider.ui:234
+#: sc/uiconfig/scalc/ui/dataprovider.ui:240
msgctxt "dataprovider|label_search"
msgid "Search String:"
msgstr ""
-#: sc/uiconfig/scalc/ui/dataprovider.ui:268
+#: sc/uiconfig/scalc/ui/dataprovider.ui:276
msgctxt "dataprovider|label"
msgid "Source Stream"
msgstr ""
@@ -17192,6 +17192,116 @@ msgctxt "datastreams|label3"
msgid "Maximal Amount of Rows"
msgstr ""
+#: sc/uiconfig/scalc/ui/datetimetransformationentry.ui:21
+msgctxt "datetimetransformationentry|name"
+msgid "Date Time Transformations"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/datetimetransformationentry.ui:37
+msgctxt "datetimetransformationentry|type"
+msgid "Type:"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/datetimetransformationentry.ui:51
+msgctxt "datetimetransformationentry|columns"
+msgid "Columns:"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/datetimetransformationentry.ui:68
+msgctxt "datetimetransformationentry|datestring"
+msgid "Date String"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/datetimetransformationentry.ui:69
+msgctxt "datetimetransformationentry|year"
+msgid "Year"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/datetimetransformationentry.ui:70
+msgctxt "datetimetransformationentry|startofyear"
+msgid "Start of Year"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/datetimetransformationentry.ui:71
+msgctxt "datetimetransformationentry|endofyear"
+msgid "End of Year"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/datetimetransformationentry.ui:72
+msgctxt "datetimetransformationentry|month"
+msgid "Month"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/datetimetransformationentry.ui:73
+msgctxt "datetimetransformationentry|monthname"
+msgid "Month Name"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/datetimetransformationentry.ui:74
+msgctxt "datetimetransformationentry|startofmonth"
+msgid "Start of Month"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/datetimetransformationentry.ui:75
+msgctxt "datetimetransformationentry|endofmonth"
+msgid "End of Month"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/datetimetransformationentry.ui:76
+msgctxt "datetimetransformationentry|day"
+msgid "Day"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/datetimetransformationentry.ui:77
+msgctxt "datetimetransformationentry|dayofweek"
+msgid "Day of Week"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/datetimetransformationentry.ui:78
+msgctxt "datetimetransformationentry|dayofyear"
+msgid "Day of Year"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/datetimetransformationentry.ui:79
+msgctxt "datetimetransformationentry|quarter"
+msgid "Quarter"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/datetimetransformationentry.ui:80
+msgctxt "datetimetransformationentry|startofquarter"
+msgid "Start of Quarter"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/datetimetransformationentry.ui:81
+msgctxt "datetimetransformationentry|endofquarter"
+msgid "End of Quarter"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/datetimetransformationentry.ui:82
+msgctxt "datetimetransformationentry|hour"
+msgid "Hour"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/datetimetransformationentry.ui:83
+msgctxt "datetimetransformationentry|minute"
+msgid "Minute"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/datetimetransformationentry.ui:84
+msgctxt "datetimetransformationentry|second"
+msgid "Second"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/datetimetransformationentry.ui:85
+msgctxt "datetimetransformationentry|time"
+msgid "Time"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/datetimetransformationentry.ui:120
+msgctxt "datetimetransformationentry|delete"
+msgid "Cancel"
+msgstr ""
+
#: sc/uiconfig/scalc/ui/definedatabaserangedialog.ui:9
msgctxt "definedatabaserangedialog|DefineDatabaseRangeDialog"
msgid "Define Database Range"
@@ -17806,12 +17916,12 @@ msgctxt "footerdialog|FooterDialog"
msgid "Footers"
msgstr ""
-#: sc/uiconfig/scalc/ui/footerdialog.ui:106
+#: sc/uiconfig/scalc/ui/footerdialog.ui:108
msgctxt "footerdialog|footerright"
msgid "Footer (right)"
msgstr ""
-#: sc/uiconfig/scalc/ui/footerdialog.ui:128
+#: sc/uiconfig/scalc/ui/footerdialog.ui:130
msgctxt "footerdialog|footerleft"
msgid "Footer (left)"
msgstr ""
@@ -17821,43 +17931,43 @@ msgctxt "formatcellsdialog|FormatCellsDialog"
msgid "Format Cells"
msgstr ""
-#: sc/uiconfig/scalc/ui/formatcellsdialog.ui:106
+#: sc/uiconfig/scalc/ui/formatcellsdialog.ui:138
#, fuzzy
msgctxt "formatcellsdialog|numbers"
msgid "Numbers"
msgstr "Nummer"
-#: sc/uiconfig/scalc/ui/formatcellsdialog.ui:128
+#: sc/uiconfig/scalc/ui/formatcellsdialog.ui:184
msgctxt "formatcellsdialog|font"
msgid "Font"
msgstr "Schrëft"
-#: sc/uiconfig/scalc/ui/formatcellsdialog.ui:151
+#: sc/uiconfig/scalc/ui/formatcellsdialog.ui:231
msgctxt "formatcellsdialog|fonteffects"
msgid "Font Effects"
msgstr "Schrëfteffekter"
-#: sc/uiconfig/scalc/ui/formatcellsdialog.ui:174
+#: sc/uiconfig/scalc/ui/formatcellsdialog.ui:278
msgctxt "formatcellsdialog|alignment"
msgid "Alignment"
msgstr "Aus~riichten"
-#: sc/uiconfig/scalc/ui/formatcellsdialog.ui:197
+#: sc/uiconfig/scalc/ui/formatcellsdialog.ui:325
msgctxt "formatcellsdialog|asiantypography"
msgid "Asian Typography"
msgstr "Asiatesch Typographie"
-#: sc/uiconfig/scalc/ui/formatcellsdialog.ui:220
+#: sc/uiconfig/scalc/ui/formatcellsdialog.ui:372
msgctxt "formatcellsdialog|borders"
msgid "Borders"
msgstr "Konturen"
-#: sc/uiconfig/scalc/ui/formatcellsdialog.ui:243
+#: sc/uiconfig/scalc/ui/formatcellsdialog.ui:419
msgctxt "formatcellsdialog|background"
msgid "Background"
msgstr "Hannergrond"
-#: sc/uiconfig/scalc/ui/formatcellsdialog.ui:266
+#: sc/uiconfig/scalc/ui/formatcellsdialog.ui:466
msgctxt "formatcellsdialog|cellprotection"
msgid "Cell Protection"
msgstr ""
@@ -17872,47 +17982,47 @@ msgctxt "formulacalculationoptions|labelConvT2N"
msgid "Conversion from text to number:"
msgstr ""
-#: sc/uiconfig/scalc/ui/formulacalculationoptions.ui:109
+#: sc/uiconfig/scalc/ui/formulacalculationoptions.ui:111
msgctxt "formulacalculationoptions|checkEmptyAsZero"
msgid "Treat _empty string as zero"
msgstr ""
-#: sc/uiconfig/scalc/ui/formulacalculationoptions.ui:127
+#: sc/uiconfig/scalc/ui/formulacalculationoptions.ui:129
msgctxt "formulacalculationoptions|labelSyntaxRef"
msgid "Reference syntax for string reference:"
msgstr ""
-#: sc/uiconfig/scalc/ui/formulacalculationoptions.ui:139
+#: sc/uiconfig/scalc/ui/formulacalculationoptions.ui:143
msgctxt "formulacalculationoptions|comboSyntaxRef"
msgid "Use formula syntax"
msgstr ""
-#: sc/uiconfig/scalc/ui/formulacalculationoptions.ui:156
+#: sc/uiconfig/scalc/ui/formulacalculationoptions.ui:160
msgctxt "formulacalculationoptions|comboConversion"
msgid "Generate #VALUE! error"
msgstr ""
-#: sc/uiconfig/scalc/ui/formulacalculationoptions.ui:157
+#: sc/uiconfig/scalc/ui/formulacalculationoptions.ui:161
msgctxt "formulacalculationoptions|comboConversion"
msgid "Treat as zero"
msgstr ""
-#: sc/uiconfig/scalc/ui/formulacalculationoptions.ui:158
+#: sc/uiconfig/scalc/ui/formulacalculationoptions.ui:162
msgctxt "formulacalculationoptions|comboConversion"
msgid "Convert only if unambiguous"
msgstr ""
-#: sc/uiconfig/scalc/ui/formulacalculationoptions.ui:159
+#: sc/uiconfig/scalc/ui/formulacalculationoptions.ui:163
msgctxt "formulacalculationoptions|comboConversion"
msgid "Convert also locale dependent"
msgstr ""
-#: sc/uiconfig/scalc/ui/formulacalculationoptions.ui:169
+#: sc/uiconfig/scalc/ui/formulacalculationoptions.ui:173
msgctxt "formulacalculationoptions|current_doc"
msgid "Apply those settings to current document only"
msgstr ""
-#: sc/uiconfig/scalc/ui/formulacalculationoptions.ui:191
+#: sc/uiconfig/scalc/ui/formulacalculationoptions.ui:195
msgctxt "formulacalculationoptions|label3"
msgid "Contents to Numbers"
msgstr ""
@@ -18150,12 +18260,12 @@ msgctxt "headerdialog|HeaderDialog"
msgid "Headers"
msgstr ""
-#: sc/uiconfig/scalc/ui/headerdialog.ui:106
+#: sc/uiconfig/scalc/ui/headerdialog.ui:108
msgctxt "headerdialog|headerright"
msgid "Header (right)"
msgstr ""
-#: sc/uiconfig/scalc/ui/headerdialog.ui:128
+#: sc/uiconfig/scalc/ui/headerdialog.ui:130
msgctxt "headerdialog|headerleft"
msgid "Header (left)"
msgstr ""
@@ -18165,131 +18275,131 @@ msgctxt "headerfootercontent|labelFT_LEFT"
msgid "_Left area"
msgstr ""
-#: sc/uiconfig/scalc/ui/headerfootercontent.ui:37
+#: sc/uiconfig/scalc/ui/headerfootercontent.ui:38
msgctxt "headerfootercontent|labelFT_CENTER"
msgid "_Center area"
msgstr ""
-#: sc/uiconfig/scalc/ui/headerfootercontent.ui:52
+#: sc/uiconfig/scalc/ui/headerfootercontent.ui:54
msgctxt "headerfootercontent|labelFT_RIGHT"
msgid "R_ight area"
msgstr ""
-#: sc/uiconfig/scalc/ui/headerfootercontent.ui:123
+#: sc/uiconfig/scalc/ui/headerfootercontent.ui:126
msgctxt "headerfootercontent|labelFT_H_DEFINED"
msgid "_Header"
msgstr ""
-#: sc/uiconfig/scalc/ui/headerfootercontent.ui:137
+#: sc/uiconfig/scalc/ui/headerfootercontent.ui:141
msgctxt "headerfootercontent|labelFT_F_DEFINED"
msgid "_Footer"
msgstr ""
-#: sc/uiconfig/scalc/ui/headerfootercontent.ui:164
+#: sc/uiconfig/scalc/ui/headerfootercontent.ui:169
msgctxt "headerfootercontent|labelFT_H_CUSTOM"
msgid "Custom header"
msgstr ""
-#: sc/uiconfig/scalc/ui/headerfootercontent.ui:177
+#: sc/uiconfig/scalc/ui/headerfootercontent.ui:182
msgctxt "headerfootercontent|labelFT_F_CUSTOM"
msgid "Custom footer"
msgstr ""
-#: sc/uiconfig/scalc/ui/headerfootercontent.ui:204
+#: sc/uiconfig/scalc/ui/headerfootercontent.ui:209
msgctxt "headerfootercontent|buttonBTN_TEXT|tooltip_text"
msgid "Text Attributes"
msgstr "Textattributer"
-#: sc/uiconfig/scalc/ui/headerfootercontent.ui:218
+#: sc/uiconfig/scalc/ui/headerfootercontent.ui:223
msgctxt "headerfootercontent|buttonBTN_FILE|tooltip_text"
msgid "Title"
msgstr "Titel"
-#: sc/uiconfig/scalc/ui/headerfootercontent.ui:233
+#: sc/uiconfig/scalc/ui/headerfootercontent.ui:238
msgctxt "headerfootercontent|buttonBTN_TABLE|tooltip_text"
msgid "Sheet Name"
msgstr ""
-#: sc/uiconfig/scalc/ui/headerfootercontent.ui:249
+#: sc/uiconfig/scalc/ui/headerfootercontent.ui:254
#, fuzzy
msgctxt "headerfootercontent|buttonBTN_PAGE|tooltip_text"
msgid "Page"
msgstr "Säiten"
-#: sc/uiconfig/scalc/ui/headerfootercontent.ui:264
+#: sc/uiconfig/scalc/ui/headerfootercontent.ui:269
msgctxt "headerfootercontent|buttonBTN_PAGES|tooltip_text"
msgid "Pages"
msgstr "Säiten"
-#: sc/uiconfig/scalc/ui/headerfootercontent.ui:280
+#: sc/uiconfig/scalc/ui/headerfootercontent.ui:285
msgctxt "headerfootercontent|buttonBTN_DATE|tooltip_text"
msgid "Date"
msgstr "Datum"
-#: sc/uiconfig/scalc/ui/headerfootercontent.ui:296
+#: sc/uiconfig/scalc/ui/headerfootercontent.ui:301
msgctxt "headerfootercontent|buttonBTN_TIME|tooltip_text"
msgid "Time"
msgstr "Zäit"
-#: sc/uiconfig/scalc/ui/headerfootercontent.ui:349
+#: sc/uiconfig/scalc/ui/headerfootercontent.ui:354
msgctxt "headerfootercontent|label2"
msgid "Use the buttons to change the font or insert field commands such as date, time, etc."
msgstr ""
-#: sc/uiconfig/scalc/ui/headerfootercontent.ui:358
+#: sc/uiconfig/scalc/ui/headerfootercontent.ui:363
#, fuzzy
msgctxt "headerfootercontent|label1"
msgid "Note"
msgstr "Keen"
-#: sc/uiconfig/scalc/ui/headerfootercontent.ui:379
+#: sc/uiconfig/scalc/ui/headerfootercontent.ui:384
msgctxt "headerfootercontent|labelSTR_HF_NONE_IN_BRACKETS"
msgid "(none)"
msgstr "(keen)"
-#: sc/uiconfig/scalc/ui/headerfootercontent.ui:391
+#: sc/uiconfig/scalc/ui/headerfootercontent.ui:396
#, fuzzy
msgctxt "headerfootercontent|labelSTR_PAGE"
msgid "Page"
msgstr "Säiten"
-#: sc/uiconfig/scalc/ui/headerfootercontent.ui:403
+#: sc/uiconfig/scalc/ui/headerfootercontent.ui:408
msgctxt "headerfootercontent|labelSTR_HF_OF_QUESTION"
msgid "of ?"
msgstr ""
-#: sc/uiconfig/scalc/ui/headerfootercontent.ui:415
+#: sc/uiconfig/scalc/ui/headerfootercontent.ui:420
msgctxt "headerfootercontent|labelSTR_HF_CONFIDENTIAL"
msgid "Confidential"
msgstr ""
-#: sc/uiconfig/scalc/ui/headerfootercontent.ui:427
+#: sc/uiconfig/scalc/ui/headerfootercontent.ui:432
msgctxt "headerfootercontent|labelSTR_HF_CREATED_BY"
msgid "Created by"
msgstr ""
-#: sc/uiconfig/scalc/ui/headerfootercontent.ui:439
+#: sc/uiconfig/scalc/ui/headerfootercontent.ui:444
msgctxt "headerfootercontent|labelSTR_HF_CUSTOMIZED"
msgid "Customized"
msgstr ""
-#: sc/uiconfig/scalc/ui/headerfootercontent.ui:451
+#: sc/uiconfig/scalc/ui/headerfootercontent.ui:456
msgctxt "headerfootercontent|labelSTR_HF_OF"
msgid "of"
msgstr "vun"
-#: sc/uiconfig/scalc/ui/headerfootercontent.ui:509
+#: sc/uiconfig/scalc/ui/headerfootercontent.ui:514
msgctxt "headerfootercontent|title"
msgid "Title"
msgstr "Titel"
-#: sc/uiconfig/scalc/ui/headerfootercontent.ui:517
+#: sc/uiconfig/scalc/ui/headerfootercontent.ui:522
#, fuzzy
msgctxt "headerfootercontent|filename"
msgid "File Name"
msgstr "Fichiersnumm:"
-#: sc/uiconfig/scalc/ui/headerfootercontent.ui:525
+#: sc/uiconfig/scalc/ui/headerfootercontent.ui:530
msgctxt "headerfootercontent|pathname"
msgid "Path/File Name"
msgstr ""
@@ -18299,12 +18409,12 @@ msgctxt "headerfooterdialog|HeaderFooterDialog"
msgid "Headers/Footers"
msgstr ""
-#: sc/uiconfig/scalc/ui/headerfooterdialog.ui:106
+#: sc/uiconfig/scalc/ui/headerfooterdialog.ui:108
msgctxt "headerfooterdialog|header"
msgid "Header"
msgstr ""
-#: sc/uiconfig/scalc/ui/headerfooterdialog.ui:128
+#: sc/uiconfig/scalc/ui/headerfooterdialog.ui:130
msgctxt "headerfooterdialog|footer"
msgid "Footer"
msgstr ""
@@ -18472,7 +18582,7 @@ msgctxt "leftfooterdialog|LeftFooterDialog"
msgid "Footer (left)"
msgstr ""
-#: sc/uiconfig/scalc/ui/leftfooterdialog.ui:106
+#: sc/uiconfig/scalc/ui/leftfooterdialog.ui:108
msgctxt "leftfooterdialog|footerleft"
msgid "Footer (left)"
msgstr ""
@@ -18482,7 +18592,7 @@ msgctxt "leftheaderdialog|Left Header"
msgid "Header (left)"
msgstr ""
-#: sc/uiconfig/scalc/ui/leftheaderdialog.ui:106
+#: sc/uiconfig/scalc/ui/leftheaderdialog.ui:108
msgctxt "leftheaderdialog|headerleft"
msgid "Header (left)"
msgstr ""
@@ -18993,6 +19103,152 @@ msgctxt "notebookbar|DevLabel"
msgid "Tools"
msgstr ""
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:1856
+msgctxt "notebookbar_compact|FileLabel"
+msgid "_File"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:2570
+msgctxt "notebookbar_compact|FileLabel"
+msgid "File"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:2619
+msgctxt "notebookbar_compact|HomeMenuButton"
+msgid "_Menu"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:3072
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:4791
+msgctxt "notebookbar_compact|bordertype|tooltip_text"
+msgid "Specify the borders of the selected cells."
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:3806
+msgctxt "notebookbar_compact|CalcLabel"
+msgid "Home"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:3859
+msgctxt "notebookbar_compact|InsertMenuButton"
+msgid "_Insert"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:4123
+msgctxt "notebookbar_compact|FieldMenuButton"
+msgid "Fiel_d"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:4463
+msgctxt "notebookbar_compact|InsertLabel"
+msgid "Insert"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:4943
+msgctxt "notebookbar_compact|PageMenuButton"
+msgid "Pag_e"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:4995
+msgctxt "notebookbar_compact|LayoutLabel"
+msgid "Layout"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:5041
+msgctxt "notebookbar_compact|DataMenuButton"
+msgid "_Data"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:5627
+msgctxt "notebookbar_compact|Statistics"
+msgid "_Statistics"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:5683
+msgctxt "notebookbar_compact|DataLabel"
+msgid "Data"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:6058
+msgctxt "notebookbar_compact|ReviewMenuButton"
+msgid "_Review"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:6091
+msgctxt "notebookbar_compact|ReviewLabel"
+msgid "Review"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:6568
+msgctxt "notebookbar_compact|ViewMenuButton"
+msgid "_View"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:6620
+msgctxt "notebookbar_compact|ViewLabel"
+msgid "View"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:7287
+msgctxt "notebookbar_compact|GraphicMenuButton"
+msgid "_Graphic"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:7320
+msgctxt "notebookbar_compact|ImageLabel"
+msgid "Image"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:7724
+msgctxt "notebookbar_compact|WrapMenuButton"
+msgid "Wrap"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:7838
+msgctxt "notebookbar_compact|AlignMenuButton"
+msgid "A_lign"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:8066
+msgctxt "notebookbar_compact|DrawMenuButton"
+msgid "D_raw"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:8121
+msgctxt "notebookbar_compact|ShapeLabel"
+msgid "Draw"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:8395
+msgctxt "notebookbar_compact|ObjectWrapMenuButton"
+msgid "Wrap"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:8509
+msgctxt "notebookbar_compact|ObjectAlignMenuButton"
+msgid "A_lign"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:8647
+msgctxt "notebookbar_compact|ObjectMenuButton"
+msgid "Object"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:8703
+msgctxt "notebookbar_compact|FrameLabel"
+msgid "Object"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:8753
+msgctxt "notebookbar_compact|ToolsMenuButton"
+msgid "_Tools"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/notebookbar_compact.ui:9607
+msgctxt "notebookbar_compact|DevLabel"
+msgid "Tools"
+msgstr ""
+
#: sc/uiconfig/scalc/ui/notebookbar_groupedbar_compact.ui:2986
msgctxt "notebookbar_groupedbar_compact|Menu"
msgid "_Check for Updates..."
@@ -19908,7 +20164,7 @@ msgstr ""
#: sc/uiconfig/scalc/ui/numbertransformationentry.ui:72
msgctxt "numbertransformationentry|absolute"
-msgid "absolute Value"
+msgid "Absolute Value"
msgstr ""
#: sc/uiconfig/scalc/ui/numbertransformationentry.ui:73
@@ -20375,38 +20631,38 @@ msgctxt "pagetemplatedialog|PageTemplateDialog"
msgid "Page Style"
msgstr "Säitevirlag: "
-#: sc/uiconfig/scalc/ui/pagetemplatedialog.ui:106
+#: sc/uiconfig/scalc/ui/pagetemplatedialog.ui:152
msgctxt "pagetemplatedialog|organizer"
msgid "Organizer"
msgstr ""
-#: sc/uiconfig/scalc/ui/pagetemplatedialog.ui:128
+#: sc/uiconfig/scalc/ui/pagetemplatedialog.ui:198
#, fuzzy
msgctxt "pagetemplatedialog|page"
msgid "Page"
msgstr "Säiten"
-#: sc/uiconfig/scalc/ui/pagetemplatedialog.ui:151
+#: sc/uiconfig/scalc/ui/pagetemplatedialog.ui:245
msgctxt "pagetemplatedialog|borders"
msgid "Borders"
msgstr "Konturen"
-#: sc/uiconfig/scalc/ui/pagetemplatedialog.ui:174
+#: sc/uiconfig/scalc/ui/pagetemplatedialog.ui:292
msgctxt "pagetemplatedialog|background"
msgid "Background"
msgstr "Hannergrond"
-#: sc/uiconfig/scalc/ui/pagetemplatedialog.ui:197
+#: sc/uiconfig/scalc/ui/pagetemplatedialog.ui:339
msgctxt "pagetemplatedialog|header"
msgid "Header"
msgstr ""
-#: sc/uiconfig/scalc/ui/pagetemplatedialog.ui:220
+#: sc/uiconfig/scalc/ui/pagetemplatedialog.ui:386
msgctxt "pagetemplatedialog|footer"
msgid "Footer"
msgstr ""
-#: sc/uiconfig/scalc/ui/pagetemplatedialog.ui:243
+#: sc/uiconfig/scalc/ui/pagetemplatedialog.ui:433
msgctxt "pagetemplatedialog|sheet"
msgid "Sheet"
msgstr "Blat"
@@ -20416,22 +20672,22 @@ msgctxt "paradialog|ParagraphDialog"
msgid "Paragraph"
msgstr "Paragraphe"
-#: sc/uiconfig/scalc/ui/paradialog.ui:106
+#: sc/uiconfig/scalc/ui/paradialog.ui:135
msgctxt "paradialog|labelTP_PARA_STD"
msgid "Indents & Spacing"
msgstr ""
-#: sc/uiconfig/scalc/ui/paradialog.ui:128
+#: sc/uiconfig/scalc/ui/paradialog.ui:181
msgctxt "paradialog|labelTP_PARA_ALIGN"
msgid "Alignment"
msgstr "Aus~riichten"
-#: sc/uiconfig/scalc/ui/paradialog.ui:152
+#: sc/uiconfig/scalc/ui/paradialog.ui:229
msgctxt "paradialog|labelTP_PARA_ASIAN"
msgid "Asian Typography"
msgstr "Asiatesch Typographie"
-#: sc/uiconfig/scalc/ui/paradialog.ui:175
+#: sc/uiconfig/scalc/ui/paradialog.ui:276
#, fuzzy
msgctxt "paradialog|labelTP_TABULATOR"
msgid "Tabs"
@@ -20442,54 +20698,48 @@ msgctxt "paratemplatedialog|ParaTemplateDialog"
msgid "Cell Style"
msgstr ""
-#: sc/uiconfig/scalc/ui/paratemplatedialog.ui:81
-#, fuzzy
-msgctxt "paratemplatedialog|standard"
-msgid "_Standard"
-msgstr "Standard"
-
-#: sc/uiconfig/scalc/ui/paratemplatedialog.ui:120
+#: sc/uiconfig/scalc/ui/paratemplatedialog.ui:152
msgctxt "paratemplatedialog|organizer"
msgid "Organizer"
msgstr ""
-#: sc/uiconfig/scalc/ui/paratemplatedialog.ui:142
+#: sc/uiconfig/scalc/ui/paratemplatedialog.ui:198
#, fuzzy
msgctxt "paratemplatedialog|numbers"
msgid "Numbers"
msgstr "Nummer"
-#: sc/uiconfig/scalc/ui/paratemplatedialog.ui:165
+#: sc/uiconfig/scalc/ui/paratemplatedialog.ui:245
msgctxt "paratemplatedialog|font"
msgid "Font"
msgstr "Schrëft"
-#: sc/uiconfig/scalc/ui/paratemplatedialog.ui:188
+#: sc/uiconfig/scalc/ui/paratemplatedialog.ui:292
msgctxt "paratemplatedialog|fonteffects"
msgid "Font Effects"
msgstr "Schrëfteffekter"
-#: sc/uiconfig/scalc/ui/paratemplatedialog.ui:211
+#: sc/uiconfig/scalc/ui/paratemplatedialog.ui:339
msgctxt "paratemplatedialog|alignment"
msgid "Alignment"
msgstr "Aus~riichten"
-#: sc/uiconfig/scalc/ui/paratemplatedialog.ui:234
+#: sc/uiconfig/scalc/ui/paratemplatedialog.ui:386
msgctxt "paratemplatedialog|asiantypo"
msgid "Asian Typography"
msgstr "Asiatesch Typographie"
-#: sc/uiconfig/scalc/ui/paratemplatedialog.ui:257
+#: sc/uiconfig/scalc/ui/paratemplatedialog.ui:433
msgctxt "paratemplatedialog|borders"
msgid "Borders"
msgstr "Konturen"
-#: sc/uiconfig/scalc/ui/paratemplatedialog.ui:280
+#: sc/uiconfig/scalc/ui/paratemplatedialog.ui:480
msgctxt "paratemplatedialog|background"
msgid "Background"
msgstr "Hannergrond"
-#: sc/uiconfig/scalc/ui/paratemplatedialog.ui:303
+#: sc/uiconfig/scalc/ui/paratemplatedialog.ui:527
msgctxt "paratemplatedialog|protection"
msgid "Cell Protection"
msgstr ""
@@ -21072,7 +21322,7 @@ msgctxt "randomnumbergenerator|RandomNumberGeneratorDialog"
msgid "Random Number Generator"
msgstr ""
-#: sc/uiconfig/scalc/ui/randomnumbergenerator.ui:180
+#: sc/uiconfig/scalc/ui/randomnumbergenerator.ui:179
msgctxt "randomnumbergenerator|cell-range-label"
msgid "Cell range:"
msgstr ""
@@ -21083,47 +21333,47 @@ msgctxt "randomnumbergenerator|label1"
msgid "Data"
msgstr "Datum"
-#: sc/uiconfig/scalc/ui/randomnumbergenerator.ui:262
+#: sc/uiconfig/scalc/ui/randomnumbergenerator.ui:261
msgctxt "randomnumbergenerator|distribution-label"
msgid "Distribution:"
msgstr ""
-#: sc/uiconfig/scalc/ui/randomnumbergenerator.ui:287
+#: sc/uiconfig/scalc/ui/randomnumbergenerator.ui:288
msgctxt "randomnumbergenerator|parameter1-label"
msgid "..."
msgstr "..."
-#: sc/uiconfig/scalc/ui/randomnumbergenerator.ui:302
+#: sc/uiconfig/scalc/ui/randomnumbergenerator.ui:303
msgctxt "randomnumbergenerator|parameter2-label"
msgid "..."
msgstr "..."
-#: sc/uiconfig/scalc/ui/randomnumbergenerator.ui:348
+#: sc/uiconfig/scalc/ui/randomnumbergenerator.ui:350
msgctxt "randomnumbergenerator|label2"
msgid "Random Number Generator"
msgstr ""
-#: sc/uiconfig/scalc/ui/randomnumbergenerator.ui:383
+#: sc/uiconfig/scalc/ui/randomnumbergenerator.ui:385
msgctxt "randomnumbergenerator|enable-seed-check"
msgid "Enable custom seed"
msgstr ""
-#: sc/uiconfig/scalc/ui/randomnumbergenerator.ui:403
+#: sc/uiconfig/scalc/ui/randomnumbergenerator.ui:404
msgctxt "randomnumbergenerator|seed-label"
msgid "Seed:"
msgstr ""
-#: sc/uiconfig/scalc/ui/randomnumbergenerator.ui:425
+#: sc/uiconfig/scalc/ui/randomnumbergenerator.ui:427
msgctxt "randomnumbergenerator|enable-rounding-check"
msgid "Enable rounding"
msgstr ""
-#: sc/uiconfig/scalc/ui/randomnumbergenerator.ui:446
+#: sc/uiconfig/scalc/ui/randomnumbergenerator.ui:447
msgctxt "randomnumbergenerator|decimal-places-label"
msgid "Decimal places:"
msgstr ""
-#: sc/uiconfig/scalc/ui/randomnumbergenerator.ui:476
+#: sc/uiconfig/scalc/ui/randomnumbergenerator.ui:479
msgctxt "randomnumbergenerator|label4"
msgid "Options"
msgstr "Optiounen"
@@ -21211,11 +21461,36 @@ msgctxt "regressiondialog|calcresiduals-check"
msgid "Calculate residuals"
msgstr ""
-#: sc/uiconfig/scalc/ui/regressiondialog.ui:497
+#: sc/uiconfig/scalc/ui/regressiondialog.ui:488
+msgctxt "regressiondialog|nointercept-check"
+msgid "Force intercept to be zero"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/regressiondialog.ui:507
msgctxt "regressiondialog|label4"
msgid "Options"
msgstr ""
+#: sc/uiconfig/scalc/ui/replacenulltransformationentry.ui:21
+msgctxt "replacenulltransformationentry|name"
+msgid "Replace Null Transformation"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/replacenulltransformationentry.ui:37
+msgctxt "replacenulltransformationentry|type"
+msgid "Replace with"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/replacenulltransformationentry.ui:51
+msgctxt "replacenulltransformationentry|columns"
+msgid "Columns:"
+msgstr ""
+
+#: sc/uiconfig/scalc/ui/replacenulltransformationentry.ui:98
+msgctxt "replacenulltransformationentry|delete"
+msgid "Cancel"
+msgstr ""
+
#: sc/uiconfig/scalc/ui/retypepassdialog.ui:10
msgctxt "retypepassdialog|RetypePass"
msgid "Re-type Password"
@@ -21283,7 +21558,7 @@ msgctxt "rightfooterdialog|RightFooterDialog"
msgid "Footer (right)"
msgstr ""
-#: sc/uiconfig/scalc/ui/rightfooterdialog.ui:106
+#: sc/uiconfig/scalc/ui/rightfooterdialog.ui:108
msgctxt "rightfooterdialog|footerright"
msgid "Footer (right)"
msgstr ""
@@ -21293,7 +21568,7 @@ msgctxt "rightheaderdialog|RightHeaderDialog"
msgid "Header (right)"
msgstr ""
-#: sc/uiconfig/scalc/ui/rightheaderdialog.ui:106
+#: sc/uiconfig/scalc/ui/rightheaderdialog.ui:108
msgctxt "rightheaderdialog|headerright"
msgid "Header (right)"
msgstr ""
@@ -21515,7 +21790,7 @@ msgstr ""
#: sc/uiconfig/scalc/ui/scgeneralpage.ui:346
msgctxt "scgeneralpage|legacy_cell_selection_cb"
-msgid "Use legacy cursor movement behavior when selecting"
+msgid "Position cell reference with selection"
msgstr ""
#: sc/uiconfig/scalc/ui/scgeneralpage.ui:361
@@ -21643,17 +21918,17 @@ msgctxt "sharedfooterdialog|SharedFooterDialog"
msgid "Headers/Footers"
msgstr ""
-#: sc/uiconfig/scalc/ui/sharedfooterdialog.ui:106
+#: sc/uiconfig/scalc/ui/sharedfooterdialog.ui:108
msgctxt "sharedfooterdialog|headerright"
msgid "Header (right)"
msgstr ""
-#: sc/uiconfig/scalc/ui/sharedfooterdialog.ui:128
+#: sc/uiconfig/scalc/ui/sharedfooterdialog.ui:130
msgctxt "sharedfooterdialog|headerleft"
msgid "Header (left)"
msgstr ""
-#: sc/uiconfig/scalc/ui/sharedfooterdialog.ui:151
+#: sc/uiconfig/scalc/ui/sharedfooterdialog.ui:153
msgctxt "sharedfooterdialog|footer"
msgid "Footer"
msgstr ""
@@ -21663,17 +21938,17 @@ msgctxt "sharedheaderdialog|SharedHeaderDialog"
msgid "Headers/Footers"
msgstr ""
-#: sc/uiconfig/scalc/ui/sharedheaderdialog.ui:106
+#: sc/uiconfig/scalc/ui/sharedheaderdialog.ui:108
msgctxt "sharedheaderdialog|header"
msgid "Header"
msgstr ""
-#: sc/uiconfig/scalc/ui/sharedheaderdialog.ui:128
+#: sc/uiconfig/scalc/ui/sharedheaderdialog.ui:130
msgctxt "sharedheaderdialog|footerright"
msgid "Footer (right)"
msgstr ""
-#: sc/uiconfig/scalc/ui/sharedheaderdialog.ui:151
+#: sc/uiconfig/scalc/ui/sharedheaderdialog.ui:153
msgctxt "sharedheaderdialog|footerleft"
msgid "Footer (left)"
msgstr ""
@@ -21740,120 +22015,120 @@ msgctxt "sharedwarningdialog|ask"
msgid "Do not show warning again."
msgstr ""
-#: sc/uiconfig/scalc/ui/sheetprintpage.ui:63
+#: sc/uiconfig/scalc/ui/sheetprintpage.ui:75
msgctxt "sheetprintpage|radioBTN_TOPDOWN"
msgid "_Top to bottom, then right"
msgstr ""
-#: sc/uiconfig/scalc/ui/sheetprintpage.ui:80
+#: sc/uiconfig/scalc/ui/sheetprintpage.ui:92
msgctxt "sheetprintpage|radioBTN_LEFTRIGHT"
msgid "_Left to right, then down"
msgstr ""
-#: sc/uiconfig/scalc/ui/sheetprintpage.ui:99
+#: sc/uiconfig/scalc/ui/sheetprintpage.ui:111
msgctxt "sheetprintpage|checkBTN_PAGENO"
msgid "First _page number:"
msgstr ""
-#: sc/uiconfig/scalc/ui/sheetprintpage.ui:167
+#: sc/uiconfig/scalc/ui/sheetprintpage.ui:180
msgctxt "sheetprintpage|labelPageOrder"
msgid "Page Order"
msgstr ""
-#: sc/uiconfig/scalc/ui/sheetprintpage.ui:201
+#: sc/uiconfig/scalc/ui/sheetprintpage.ui:214
msgctxt "sheetprintpage|checkBTN_HEADER"
msgid "_Column and row headers"
msgstr ""
-#: sc/uiconfig/scalc/ui/sheetprintpage.ui:216
+#: sc/uiconfig/scalc/ui/sheetprintpage.ui:229
#, fuzzy
msgctxt "sheetprintpage|checkBTN_GRID"
msgid "_Grid"
msgstr "Raster"
-#: sc/uiconfig/scalc/ui/sheetprintpage.ui:232
+#: sc/uiconfig/scalc/ui/sheetprintpage.ui:245
#, fuzzy
msgctxt "sheetprintpage|checkBTN_NOTES"
msgid "_Comments"
msgstr "Kommentaren"
-#: sc/uiconfig/scalc/ui/sheetprintpage.ui:247
+#: sc/uiconfig/scalc/ui/sheetprintpage.ui:260
msgctxt "sheetprintpage|checkBTN_OBJECTS"
msgid "_Objects/Images"
msgstr ""
-#: sc/uiconfig/scalc/ui/sheetprintpage.ui:262
+#: sc/uiconfig/scalc/ui/sheetprintpage.ui:275
#, fuzzy
msgctxt "sheetprintpage|checkBTN_CHARTS"
msgid "Charts"
msgstr "~Diagrammen"
-#: sc/uiconfig/scalc/ui/sheetprintpage.ui:277
+#: sc/uiconfig/scalc/ui/sheetprintpage.ui:290
#, fuzzy
msgctxt "sheetprintpage|checkBTN_DRAWINGS"
msgid "_Drawing objects"
msgstr "Zeechnenobjeten"
-#: sc/uiconfig/scalc/ui/sheetprintpage.ui:292
+#: sc/uiconfig/scalc/ui/sheetprintpage.ui:305
#, fuzzy
msgctxt "sheetprintpage|checkBTN_FORMULAS"
msgid "_Formulas"
msgstr "Formellen"
-#: sc/uiconfig/scalc/ui/sheetprintpage.ui:307
+#: sc/uiconfig/scalc/ui/sheetprintpage.ui:320
#, fuzzy
msgctxt "sheetprintpage|checkBTN_NULLVALS"
msgid "_Zero values"
msgstr "Null~wäerter"
-#: sc/uiconfig/scalc/ui/sheetprintpage.ui:340
+#: sc/uiconfig/scalc/ui/sheetprintpage.ui:353
#, fuzzy
msgctxt "sheetprintpage|labelPrint"
msgid "Print"
msgstr "~Printen"
-#: sc/uiconfig/scalc/ui/sheetprintpage.ui:373
+#: sc/uiconfig/scalc/ui/sheetprintpage.ui:386
msgctxt "sheetprintpage|labelScalingMode"
msgid "Scaling _mode:"
msgstr ""
-#: sc/uiconfig/scalc/ui/sheetprintpage.ui:398
+#: sc/uiconfig/scalc/ui/sheetprintpage.ui:411
msgctxt "sheetprintpage|labelSF"
msgid "_Scaling factor:"
msgstr ""
-#: sc/uiconfig/scalc/ui/sheetprintpage.ui:439
+#: sc/uiconfig/scalc/ui/sheetprintpage.ui:451
msgctxt "sheetprintpage|labelWP"
msgid "_Width in pages:"
msgstr ""
-#: sc/uiconfig/scalc/ui/sheetprintpage.ui:457
+#: sc/uiconfig/scalc/ui/sheetprintpage.ui:469
msgctxt "sheetprintpage|labelHP"
msgid "_Height in pages:"
msgstr ""
-#: sc/uiconfig/scalc/ui/sheetprintpage.ui:517
+#: sc/uiconfig/scalc/ui/sheetprintpage.ui:533
#, fuzzy
msgctxt "sheetprintpage|labelNP"
msgid "N_umber of pages:"
msgstr "Unzuel vu Säiten:"
-#: sc/uiconfig/scalc/ui/sheetprintpage.ui:559
+#: sc/uiconfig/scalc/ui/sheetprintpage.ui:576
msgctxt "sheetprintpage|comboLB_SCALEMODE"
msgid "Reduce/enlarge printout"
msgstr ""
-#: sc/uiconfig/scalc/ui/sheetprintpage.ui:560
+#: sc/uiconfig/scalc/ui/sheetprintpage.ui:577
msgctxt "sheetprintpage|comboLB_SCALEMODE"
msgid "Fit print range(s) to width/height"
msgstr ""
-#: sc/uiconfig/scalc/ui/sheetprintpage.ui:561
+#: sc/uiconfig/scalc/ui/sheetprintpage.ui:578
msgctxt "sheetprintpage|comboLB_SCALEMODE"
msgid "Fit print range(s) on number of pages"
msgstr ""
-#: sc/uiconfig/scalc/ui/sheetprintpage.ui:580
+#: sc/uiconfig/scalc/ui/sheetprintpage.ui:597
msgctxt "sheetprintpage|labelScale"
msgid "Scale"
msgstr ""
@@ -22502,12 +22777,12 @@ msgctxt "sortdialog|SortDialog"
msgid "Sort"
msgstr ""
-#: sc/uiconfig/scalc/ui/sortdialog.ui:136
+#: sc/uiconfig/scalc/ui/sortdialog.ui:138
msgctxt "sortdialog|criteria"
msgid "Sort Criteria"
msgstr ""
-#: sc/uiconfig/scalc/ui/sortdialog.ui:182
+#: sc/uiconfig/scalc/ui/sortdialog.ui:184
msgctxt "sortdialog|options"
msgid "Options"
msgstr "Optiounen"
@@ -23136,24 +23411,24 @@ msgctxt "subtotaldialog|SubTotalDialog"
msgid "Subtotals"
msgstr ""
-#: sc/uiconfig/scalc/ui/subtotaldialog.ui:121
+#: sc/uiconfig/scalc/ui/subtotaldialog.ui:123
msgctxt "subtotaldialog|1stgroup"
msgid "1st Group"
msgstr ""
-#: sc/uiconfig/scalc/ui/subtotaldialog.ui:143
+#: sc/uiconfig/scalc/ui/subtotaldialog.ui:145
#, fuzzy
msgctxt "subtotaldialog|2ndgroup"
msgid "2nd Group"
msgstr "Grupp bäifügen"
-#: sc/uiconfig/scalc/ui/subtotaldialog.ui:166
+#: sc/uiconfig/scalc/ui/subtotaldialog.ui:168
#, fuzzy
msgctxt "subtotaldialog|3rdgroup"
msgid "3rd Group"
msgstr "Grupp bäifügen"
-#: sc/uiconfig/scalc/ui/subtotaldialog.ui:189
+#: sc/uiconfig/scalc/ui/subtotaldialog.ui:191
msgctxt "subtotaldialog|options"
msgid "Options"
msgstr "Optiounen"
@@ -23856,17 +24131,17 @@ msgctxt "validationdialog|ValidationDialog"
msgid "Validity"
msgstr "Gëlteg bis"
-#: sc/uiconfig/scalc/ui/validationdialog.ui:111
+#: sc/uiconfig/scalc/ui/validationdialog.ui:113
msgctxt "validationdialog|criteria"
msgid "Criteria"
msgstr ""
-#: sc/uiconfig/scalc/ui/validationdialog.ui:133
+#: sc/uiconfig/scalc/ui/validationdialog.ui:135
msgctxt "validationdialog|inputhelp"
msgid "Input Help"
msgstr ""
-#: sc/uiconfig/scalc/ui/validationdialog.ui:156
+#: sc/uiconfig/scalc/ui/validationdialog.ui:158
msgctxt "validationdialog|erroralert"
msgid "Error Alert"
msgstr ""
diff --git a/source/lb/scp2/source/extensions.po b/source/lb/scp2/source/extensions.po
index f567f5baedd..3e55a4637bd 100644
--- a/source/lb/scp2/source/extensions.po
+++ b/source/lb/scp2/source/extensions.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2017-04-12 14:13+0200\n"
+"POT-Creation-Date: 2018-09-03 13:23+0200\n"
"PO-Revision-Date: 2013-11-26 17:58+0000\n"
"Last-Translator: Anonymous Pootle User\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -115,22 +115,6 @@ msgstr ""
#: module_extensions.ulf
msgctxt ""
"module_extensions.ulf\n"
-"STR_NAME_MODULE_OPTIONAL_EXTENSIONS_MARIADBC\n"
-"LngText.text"
-msgid "MySQL Connector"
-msgstr ""
-
-#: module_extensions.ulf
-msgctxt ""
-"module_extensions.ulf\n"
-"STR_DESC_MODULE_OPTIONAL_EXTENSIONS_MARIADBC\n"
-"LngText.text"
-msgid "MySQL Connector"
-msgstr ""
-
-#: module_extensions.ulf
-msgctxt ""
-"module_extensions.ulf\n"
"STR_NAME_MODULE_OPTIONAL_EXTENSIONS_SCRIPT_PROVIDER_FOR_BEANSHELL\n"
"LngText.text"
msgid "Script provider for BeanShell"
diff --git a/source/lb/scp2/source/gnome.po b/source/lb/scp2/source/gnome.po
index 0580a668f08..8d3764aca1b 100644
--- a/source/lb/scp2/source/gnome.po
+++ b/source/lb/scp2/source/gnome.po
@@ -2,18 +2,19 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: https://bugs.freedesktop.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2013-05-23 12:05+0200\n"
-"PO-Revision-Date: 2011-04-05 11:37+0200\n"
-"Last-Translator: Edson <soued0311@hotmail.com>\n"
+"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
+"POT-Creation-Date: 2018-10-02 17:56+0200\n"
+"PO-Revision-Date: 2013-05-24 00:01+0000\n"
+"Last-Translator: Anonymous Pootle User\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: lb\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: LibreOffice\n"
"X-Accelerator-Marker: ~\n"
+"X-Generator: LibreOffice\n"
+"X-POOTLE-MTIME: 1369353677.000000\n"
#: module_gnome.ulf
msgctxt ""
@@ -28,5 +29,5 @@ msgctxt ""
"module_gnome.ulf\n"
"STR_DESC_MODULE_OPTIONAL_GNOME\n"
"LngText.text"
-msgid "System integration of %PRODUCTNAME %PRODUCTVERSION into Gnome Desktop Environment."
+msgid "System integration of %PRODUCTNAME %PRODUCTVERSION into GNOME Desktop Environment."
msgstr ""
diff --git a/source/lb/scp2/source/ooo.po b/source/lb/scp2/source/ooo.po
index 2ddbd039852..6d49df77785 100644
--- a/source/lb/scp2/source/ooo.po
+++ b/source/lb/scp2/source/ooo.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2018-07-12 15:03+0200\n"
+"POT-Creation-Date: 2018-09-03 13:23+0200\n"
"PO-Revision-Date: 2015-05-12 22:39+0000\n"
"Last-Translator: Anonymous Pootle User\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -4200,6 +4200,22 @@ msgstr "Kroatisches Rechtschreibwörterbuch und Silbentrennung"
#: module_ooo.ulf
msgctxt ""
"module_ooo.ulf\n"
+"STR_NAME_MODULE_EXTENSION_DICTIONARY_ID\n"
+"LngText.text"
+msgid "Indonesian"
+msgstr ""
+
+#: module_ooo.ulf
+msgctxt ""
+"module_ooo.ulf\n"
+"STR_DESC_MODULE_EXTENSION_DICTIONARY_ID\n"
+"LngText.text"
+msgid "Indonesian spelling dictionary, hyphenation rules, and thesaurus"
+msgstr ""
+
+#: module_ooo.ulf
+msgctxt ""
+"module_ooo.ulf\n"
"STR_NAME_MODULE_EXTENSION_DICTIONARY_IS\n"
"LngText.text"
msgid "Icelandic"
diff --git a/source/lb/sd/messages.po b/source/lb/sd/messages.po
index c017a901470..b0fbe92564f 100644
--- a/source/lb/sd/messages.po
+++ b/source/lb/sd/messages.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2018-07-07 19:04+0200\n"
+"POT-Creation-Date: 2018-10-02 17:56+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -1716,775 +1716,1516 @@ msgid "Move slides"
msgstr ""
#: sd/inc/strings.hrc:316
-msgctxt "STR_POOLSHEET_MEASURE"
-msgid "Dimension Line"
+msgctxt "STR_POOLSHEET_OBJWITHOUTFILL"
+msgid "Object without fill"
msgstr ""
#: sd/inc/strings.hrc:317
+msgctxt "STR_POOLSHEET_OBJNOLINENOFILL"
+msgid "Object with no fill and no line"
+msgstr ""
+
+#: sd/inc/strings.hrc:318
msgctxt "STR_POOLSHEET_TEXT"
msgid "Text"
msgstr "Text"
-#: sd/inc/strings.hrc:318
-msgctxt "STR_POOLSHEET_TITLE"
-msgid "Title"
-msgstr "Titel"
-
#: sd/inc/strings.hrc:319
-msgctxt "STR_POOLSHEET_HEADLINE"
-msgid "Heading"
+msgctxt "STR_POOLSHEET_A4"
+msgid "A4"
msgstr ""
#: sd/inc/strings.hrc:320
-msgctxt "STR_POOLSHEET_OBJWITHOUTFILL"
-msgid "Object without fill"
+msgctxt "STR_POOLSHEET_A4_TITLE"
+msgid "Title A4"
msgstr ""
#: sd/inc/strings.hrc:321
-msgctxt "STR_POOLSHEET_OBJNOLINENOFILL"
-msgid "Object with no fill and no line"
+msgctxt "STR_POOLSHEET_A4_HEADLINE"
+msgid "Heading A4"
+msgstr ""
+
+#: sd/inc/strings.hrc:322
+msgctxt "STR_POOLSHEET_A4_TEXT"
+msgid "Text A4"
msgstr ""
#: sd/inc/strings.hrc:323
+msgctxt "STR_POOLSHEET_A0"
+msgid "A0"
+msgstr ""
+
+#: sd/inc/strings.hrc:324
+msgctxt "STR_POOLSHEET_A0_TITLE"
+msgid "Title A0"
+msgstr ""
+
+#: sd/inc/strings.hrc:325
+msgctxt "STR_POOLSHEET_A0_HEADLINE"
+msgid "Heading A0"
+msgstr ""
+
+#: sd/inc/strings.hrc:326
+msgctxt "STR_POOLSHEET_A0_TEXT"
+msgid "Text A0"
+msgstr ""
+
+#: sd/inc/strings.hrc:327
+msgctxt "STR_POOLSHEET_GRAPHIC"
+msgid "Graphic"
+msgstr ""
+
+#: sd/inc/strings.hrc:328
+msgctxt "STR_POOLSHEET_GRAPHIC"
+msgid "Shapes"
+msgstr ""
+
+#: sd/inc/strings.hrc:329
+msgctxt "STR_POOLSHEET_LINES"
+msgid "Lines"
+msgstr ""
+
+#: sd/inc/strings.hrc:330
+msgctxt "STR_POOLSHEET_MEASURE"
+msgid "Arrow Line"
+msgstr ""
+
+#: sd/inc/strings.hrc:331
+msgctxt "STR_POOLSHEET_LINES_DASHED"
+msgid "Dashed Line"
+msgstr ""
+
+#: sd/inc/strings.hrc:333
msgctxt "STR_POOLSHEET_FILLED"
msgid "Filled"
msgstr ""
-#: sd/inc/strings.hrc:324
+#: sd/inc/strings.hrc:334
msgctxt "STR_POOLSHEET_FILLED_BLUE"
msgid "Filled Blue"
msgstr ""
-#: sd/inc/strings.hrc:325
+#: sd/inc/strings.hrc:335
msgctxt "STR_POOLSHEET_FILLED_GREEN"
msgid "Filled Green"
msgstr ""
-#: sd/inc/strings.hrc:326
+#: sd/inc/strings.hrc:336
msgctxt "STR_POOLSHEET_FILLED_YELLOW"
msgid "Filled Yellow"
msgstr ""
-#: sd/inc/strings.hrc:327
+#: sd/inc/strings.hrc:337
msgctxt "STR_POOLSHEET_FILLED_RED"
msgid "Filled Red"
msgstr ""
-#: sd/inc/strings.hrc:329
+#: sd/inc/strings.hrc:339
msgctxt "STR_POOLSHEET_OUTLINE"
msgid "Outlined"
msgstr ""
-#: sd/inc/strings.hrc:330
+#: sd/inc/strings.hrc:340
msgctxt "STR_POOLSHEET_OUTLINE_BLUE"
msgid "Outlined Blue"
msgstr ""
-#: sd/inc/strings.hrc:331
+#: sd/inc/strings.hrc:341
msgctxt "STR_POOLSHEET_OUTLINE_GREEN"
msgid "Outlined Green"
msgstr ""
-#: sd/inc/strings.hrc:332
+#: sd/inc/strings.hrc:342
msgctxt "STR_POOLSHEET_OUTLINE_YELLOW"
msgid "Outlined Yellow"
msgstr ""
-#: sd/inc/strings.hrc:333
+#: sd/inc/strings.hrc:343
msgctxt "STR_POOLSHEET_OUTLINE_RED"
msgid "Outlined Red"
msgstr ""
-#: sd/inc/strings.hrc:335
+#: sd/inc/strings.hrc:345
msgctxt "STR_PSEUDOSHEET_TITLE"
msgid "Title"
msgstr "Titel"
-#: sd/inc/strings.hrc:336
+#: sd/inc/strings.hrc:346
msgctxt "STR_PSEUDOSHEET_SUBTITLE"
msgid "Subtitle"
msgstr "Ënnertitel"
-#: sd/inc/strings.hrc:337
+#: sd/inc/strings.hrc:347
msgctxt "STR_PSEUDOSHEET_OUTLINE"
msgid "Outline"
msgstr "Konturen"
-#: sd/inc/strings.hrc:338
+#: sd/inc/strings.hrc:348
msgctxt "STR_PSEUDOSHEET_BACKGROUNDOBJECTS"
msgid "Background objects"
msgstr ""
-#: sd/inc/strings.hrc:339
+#: sd/inc/strings.hrc:349
msgctxt "STR_PSEUDOSHEET_BACKGROUND"
msgid "Background"
msgstr "Hannergrond"
-#: sd/inc/strings.hrc:340
+#: sd/inc/strings.hrc:350
msgctxt "STR_PSEUDOSHEET_NOTES"
msgid "Notes"
msgstr "Noten"
-#: sd/inc/strings.hrc:341
+#: sd/inc/strings.hrc:351
msgctxt "STR_POWERPOINT_IMPORT"
msgid "PowerPoint Import"
msgstr ""
-#: sd/inc/strings.hrc:342
+#: sd/inc/strings.hrc:352
msgctxt "STR_SAVE_DOC"
msgid "Save Document"
msgstr "Dokument späicheren"
-#: sd/inc/strings.hrc:343
+#: sd/inc/strings.hrc:353
msgctxt "STR_POOLSHEET_BANDED_CELL"
msgid "Banding cell"
msgstr ""
-#: sd/inc/strings.hrc:344
+#: sd/inc/strings.hrc:354
msgctxt "STR_POOLSHEET_HEADER"
msgid "Header"
msgstr ""
-#: sd/inc/strings.hrc:345
+#: sd/inc/strings.hrc:355
msgctxt "STR_POOLSHEET_TOTAL"
msgid "Total line"
msgstr ""
-#: sd/inc/strings.hrc:346
+#: sd/inc/strings.hrc:356
msgctxt "STR_POOLSHEET_FIRST_COLUMN"
msgid "First column"
msgstr "Éischt Kolonne"
-#: sd/inc/strings.hrc:347
+#: sd/inc/strings.hrc:357
msgctxt "STR_POOLSHEET_LAST_COLUMN"
msgid "Last column"
msgstr "Lescht Kolonne"
-#: sd/inc/strings.hrc:348
+#: sd/inc/strings.hrc:358
msgctxt "STR_ENTER_PIN"
msgid "Enter PIN:"
msgstr ""
-#: sd/inc/strings.hrc:349
+#: sd/inc/strings.hrc:359
msgctxt "STR_DEAUTHORISE_CLIENT"
msgid "Remove client authorisation"
msgstr ""
-#: sd/inc/strings.hrc:350
+#: sd/inc/strings.hrc:360
msgctxt "STR_SHRINK_FONT_SIZE"
msgid "Shrink font size"
msgstr ""
-#: sd/inc/strings.hrc:351
+#: sd/inc/strings.hrc:361
msgctxt "STR_GROW_FONT_SIZE"
msgid "Grow font size"
msgstr ""
#. Names and descriptions of the Draw/Impress accessibility views
#. ==============================================================
-#: sd/inc/strings.hrc:356
+#: sd/inc/strings.hrc:366
msgctxt "SID_SD_A11Y_D_DRAWVIEW_N"
msgid "Drawing View"
msgstr ""
-#: sd/inc/strings.hrc:357
+#: sd/inc/strings.hrc:367
msgctxt "SID_SD_A11Y_D_DRAWVIEW_D"
msgid "This is where you create and edit drawings."
msgstr ""
-#: sd/inc/strings.hrc:358
+#: sd/inc/strings.hrc:368
msgctxt "SID_SD_A11Y_I_DRAWVIEW_N"
msgid "Drawing View"
msgstr ""
-#: sd/inc/strings.hrc:359
+#: sd/inc/strings.hrc:369
msgctxt "SID_SD_A11Y_I_DRAWVIEW_D"
msgid "This is where you create and edit slides."
msgstr ""
-#: sd/inc/strings.hrc:360
+#: sd/inc/strings.hrc:370
msgctxt "SID_SD_A11Y_I_OUTLINEVIEW_N"
msgid "Outline View"
msgstr ""
-#: sd/inc/strings.hrc:361
+#: sd/inc/strings.hrc:371
msgctxt "SID_SD_A11Y_I_OUTLINEVIEW_D"
msgid "This is where you enter or edit text in list form."
msgstr ""
-#: sd/inc/strings.hrc:362
+#: sd/inc/strings.hrc:372
msgctxt "SID_SD_A11Y_I_SLIDEVIEW_N"
msgid "Slides View"
msgstr ""
-#: sd/inc/strings.hrc:363
+#: sd/inc/strings.hrc:373
msgctxt "SID_SD_A11Y_I_SLIDEVIEW_D"
msgid "This is where you sort slides."
msgstr ""
-#: sd/inc/strings.hrc:364
+#: sd/inc/strings.hrc:374
msgctxt "SID_SD_A11Y_I_NOTESVIEW_N"
msgid "Notes View"
msgstr ""
-#: sd/inc/strings.hrc:365
+#: sd/inc/strings.hrc:375
msgctxt "SID_SD_A11Y_I_NOTESVIEW_D"
msgid "This is where you enter and view notes."
msgstr ""
-#: sd/inc/strings.hrc:366
+#: sd/inc/strings.hrc:376
msgctxt "SID_SD_A11Y_I_HANDOUTVIEW_N"
msgid "Handout View"
msgstr ""
-#: sd/inc/strings.hrc:367
+#: sd/inc/strings.hrc:377
msgctxt "SID_SD_A11Y_I_HANDOUTVIEW_D"
msgid "This is where you decide on the layout for handouts."
msgstr ""
-#: sd/inc/strings.hrc:368
+#: sd/inc/strings.hrc:378
#, fuzzy
msgctxt "SID_SD_A11Y_P_TITLE_N"
msgid "PresentationTitle"
msgstr "Presentatioun"
-#: sd/inc/strings.hrc:369
+#: sd/inc/strings.hrc:379
msgctxt "SID_SD_A11Y_P_OUTLINER_N"
msgid "PresentationOutliner"
msgstr ""
-#: sd/inc/strings.hrc:370
+#: sd/inc/strings.hrc:380
msgctxt "SID_SD_A11Y_P_SUBTITLE_N"
msgid "PresentationSubtitle"
msgstr ""
-#: sd/inc/strings.hrc:371
+#: sd/inc/strings.hrc:381
#, fuzzy
msgctxt "SID_SD_A11Y_P_PAGE_N"
msgid "PresentationPage"
msgstr "Presentatioun"
-#: sd/inc/strings.hrc:372
+#: sd/inc/strings.hrc:382
#, fuzzy
msgctxt "SID_SD_A11Y_P_NOTES_N"
msgid "PresentationNotes"
msgstr "Presentatioun"
-#: sd/inc/strings.hrc:373
+#: sd/inc/strings.hrc:383
msgctxt "SID_SD_A11Y_P_HANDOUT_N"
msgid "Handout"
msgstr ""
-#: sd/inc/strings.hrc:374
+#: sd/inc/strings.hrc:384
msgctxt "SID_SD_A11Y_P_UNKNOWN_N"
msgid "UnknownAccessiblePresentationShape"
msgstr ""
-#: sd/inc/strings.hrc:375
+#: sd/inc/strings.hrc:385
msgctxt "SID_SD_A11Y_P_TITLE_D"
msgid "PresentationTitleShape"
msgstr ""
-#: sd/inc/strings.hrc:376
+#: sd/inc/strings.hrc:386
msgctxt "SID_SD_A11Y_P_OUTLINER_D"
msgid "PresentationOutlinerShape"
msgstr ""
-#: sd/inc/strings.hrc:377
+#: sd/inc/strings.hrc:387
msgctxt "SID_SD_A11Y_P_SUBTITLE_D"
msgid "PresentationSubtitleShape"
msgstr ""
-#: sd/inc/strings.hrc:378
+#: sd/inc/strings.hrc:388
#, fuzzy
msgctxt "SID_SD_A11Y_P_PAGE_D"
msgid "PresentationPageShape"
msgstr "Presentatioun"
-#: sd/inc/strings.hrc:379
+#: sd/inc/strings.hrc:389
msgctxt "SID_SD_A11Y_P_NOTES_D"
msgid "PresentationNotesShape"
msgstr ""
-#: sd/inc/strings.hrc:380
+#: sd/inc/strings.hrc:390
msgctxt "SID_SD_A11Y_P_HANDOUT_D"
msgid "PresentationHandoutShape"
msgstr ""
-#: sd/inc/strings.hrc:381
+#: sd/inc/strings.hrc:391
msgctxt "SID_SD_A11Y_P_UNKNOWN_D"
msgid "Unknown accessible presentation shape"
msgstr ""
-#: sd/inc/strings.hrc:382
+#: sd/inc/strings.hrc:392
msgctxt "SID_SD_A11Y_P_FOOTER_N"
msgid "PresentationFooter"
msgstr ""
-#: sd/inc/strings.hrc:383
+#: sd/inc/strings.hrc:393
msgctxt "SID_SD_A11Y_P_FOOTER_D"
msgid "PresentationFooterShape"
msgstr ""
-#: sd/inc/strings.hrc:384
+#: sd/inc/strings.hrc:394
#, fuzzy
msgctxt "SID_SD_A11Y_P_HEADER_N"
msgid "PresentationHeader"
msgstr "Presentatioun"
-#: sd/inc/strings.hrc:385
+#: sd/inc/strings.hrc:395
msgctxt "SID_SD_A11Y_P_HEADER_D"
msgid "PresentationHeaderShape"
msgstr ""
-#: sd/inc/strings.hrc:386
+#: sd/inc/strings.hrc:396
msgctxt "SID_SD_A11Y_P_DATE_N"
msgid "PresentationDateAndTime"
msgstr ""
-#: sd/inc/strings.hrc:387
+#: sd/inc/strings.hrc:397
msgctxt "SID_SD_A11Y_P_DATE_D"
msgid "PresentationDateAndTimeShape"
msgstr ""
-#: sd/inc/strings.hrc:388
+#: sd/inc/strings.hrc:398
msgctxt "SID_SD_A11Y_P_NUMBER_N"
msgid "PresentationPageNumber"
msgstr ""
-#: sd/inc/strings.hrc:389
+#: sd/inc/strings.hrc:399
msgctxt "SID_SD_A11Y_P_NUMBER_D"
msgid "PresentationPageNumberShape"
msgstr ""
-#: sd/inc/strings.hrc:390
+#: sd/inc/strings.hrc:400
msgctxt "SID_SD_A11Y_D_PRESENTATION"
msgid "%PRODUCTNAME Presentation"
msgstr "%PRODUCTNAME Presentatioun"
-#: sd/inc/strings.hrc:391
+#: sd/inc/strings.hrc:401
msgctxt "SID_SD_A11Y_P_TITLE_N_STYLE"
msgid "Title"
msgstr "Titel"
-#: sd/inc/strings.hrc:392
+#: sd/inc/strings.hrc:402
#, fuzzy
msgctxt "SID_SD_A11Y_P_OUTLINER_N_STYLE"
msgid "Outliner"
msgstr "Konturen"
-#: sd/inc/strings.hrc:393
+#: sd/inc/strings.hrc:403
msgctxt "SID_SD_A11Y_P_SUBTITLE_N_STYLE"
msgid "Subtitle"
msgstr "Ënnertitel"
-#: sd/inc/strings.hrc:394
+#: sd/inc/strings.hrc:404
msgctxt "SID_SD_A11Y_P_PAGE_N_STYLE"
msgid "Page"
msgstr "Säit"
-#: sd/inc/strings.hrc:395
+#: sd/inc/strings.hrc:405
msgctxt "SID_SD_A11Y_P_NOTES_N_STYLE"
msgid "Notes"
msgstr "Noten"
-#: sd/inc/strings.hrc:396
+#: sd/inc/strings.hrc:406
msgctxt "SID_SD_A11Y_P_HANDOUT_N_STYLE"
msgid "Handout"
msgstr ""
-#: sd/inc/strings.hrc:397
+#: sd/inc/strings.hrc:407
msgctxt "SID_SD_A11Y_P_UNKNOWN_N_STYLE"
msgid "Unknown Accessible Presentation Shape"
msgstr ""
-#: sd/inc/strings.hrc:398
+#: sd/inc/strings.hrc:408
msgctxt "SID_SD_A11Y_P_FOOTER_N_STYLE"
msgid "Footer"
msgstr ""
-#: sd/inc/strings.hrc:399
+#: sd/inc/strings.hrc:409
msgctxt "SID_SD_A11Y_P_HEADER_N_STYLE"
msgid "Header"
msgstr ""
-#: sd/inc/strings.hrc:400
+#: sd/inc/strings.hrc:410
msgctxt "SID_SD_A11Y_P_DATE_N_STYLE"
msgid "Date"
msgstr "Datum"
-#: sd/inc/strings.hrc:401
+#: sd/inc/strings.hrc:411
msgctxt "SID_SD_A11Y_P_NUMBER_N_STYLE"
msgid "Number"
msgstr "Nummer"
-#: sd/inc/strings.hrc:402
+#: sd/inc/strings.hrc:412
msgctxt "SID_SD_A11Y_D_PRESENTATION_READONLY"
msgid "(read-only)"
msgstr ""
-#: sd/inc/strings.hrc:404
+#: sd/inc/strings.hrc:414
msgctxt "STR_CUSTOMANIMATION_REPEAT_NONE"
msgid "none"
msgstr "keen"
-#: sd/inc/strings.hrc:405
+#: sd/inc/strings.hrc:415
msgctxt "STR_CUSTOMANIMATION_REPEAT_UNTIL_NEXT_CLICK"
msgid "Until next click"
msgstr ""
-#: sd/inc/strings.hrc:406
+#: sd/inc/strings.hrc:416
msgctxt "STR_CUSTOMANIMATION_REPEAT_UNTIL_END_OF_SLIDE"
msgid "Until end of slide"
msgstr ""
-#: sd/inc/strings.hrc:407
+#: sd/inc/strings.hrc:417
#, fuzzy
msgctxt "STR_CUSTOMANIMATION_DIRECTION_PROPERTY"
msgid "Direction:"
msgstr "Richtung"
-#: sd/inc/strings.hrc:408
+#: sd/inc/strings.hrc:418
#, fuzzy
msgctxt "STR_CUSTOMANIMATION_ZOOM_PROPERTY"
msgid "Zoom:"
msgstr "Zoom"
-#: sd/inc/strings.hrc:409
+#: sd/inc/strings.hrc:419
msgctxt "STR_CUSTOMANIMATION_SPOKES_PROPERTY"
msgid "Spokes:"
msgstr ""
-#: sd/inc/strings.hrc:410
+#: sd/inc/strings.hrc:420
#, fuzzy
msgctxt "STR_CUSTOMANIMATION_FIRST_COLOR_PROPERTY"
msgid "First color:"
msgstr "Éischt Kolonne"
-#: sd/inc/strings.hrc:411
+#: sd/inc/strings.hrc:421
msgctxt "STR_CUSTOMANIMATION_SECOND_COLOR_PROPERTY"
msgid "Second color:"
msgstr ""
-#: sd/inc/strings.hrc:412
+#: sd/inc/strings.hrc:422
#, fuzzy
msgctxt "STR_CUSTOMANIMATION_FILL_COLOR_PROPERTY"
msgid "Fill color:"
msgstr "Éischt Kolonne"
-#: sd/inc/strings.hrc:413
+#: sd/inc/strings.hrc:423
msgctxt "STR_CUSTOMANIMATION_STYLE_PROPERTY"
msgid "Style:"
msgstr ""
-#: sd/inc/strings.hrc:414
+#: sd/inc/strings.hrc:424
#, fuzzy
msgctxt "STR_CUSTOMANIMATION_FONT_PROPERTY"
msgid "Font:"
msgstr "Schrëft"
-#: sd/inc/strings.hrc:415
+#: sd/inc/strings.hrc:425
#, fuzzy
msgctxt "STR_CUSTOMANIMATION_FONT_COLOR_PROPERTY"
msgid "Font color:"
msgstr "Éischt Kolonne"
-#: sd/inc/strings.hrc:416
+#: sd/inc/strings.hrc:426
msgctxt "STR_CUSTOMANIMATION_FONT_SIZE_STYLE_PROPERTY"
msgid "Style:"
msgstr ""
-#: sd/inc/strings.hrc:417
+#: sd/inc/strings.hrc:427
msgctxt "STR_CUSTOMANIMATION_FONT_STYLE_PROPERTY"
msgid "Typeface:"
msgstr ""
-#: sd/inc/strings.hrc:418
+#: sd/inc/strings.hrc:428
msgctxt "STR_CUSTOMANIMATION_LINE_COLOR_PROPERTY"
msgid "Line color:"
msgstr ""
-#: sd/inc/strings.hrc:419
+#: sd/inc/strings.hrc:429
#, fuzzy
msgctxt "STR_CUSTOMANIMATION_SIZE_PROPERTY"
msgid "Font size:"
msgstr "Schrëftgréisst"
-#: sd/inc/strings.hrc:420
+#: sd/inc/strings.hrc:430
#, fuzzy
msgctxt "STR_CUSTOMANIMATION_SCALE_PROPERTY"
msgid "Size:"
msgstr "Gréisst"
-#: sd/inc/strings.hrc:421
+#: sd/inc/strings.hrc:431
msgctxt "STR_CUSTOMANIMATION_AMOUNT_PROPERTY"
msgid "Amount:"
msgstr ""
-#: sd/inc/strings.hrc:422
+#: sd/inc/strings.hrc:432
#, fuzzy
msgctxt "STR_CUSTOMANIMATION_COLOR_PROPERTY"
msgid "Color:"
msgstr "Faarf"
-#: sd/inc/strings.hrc:423
+#: sd/inc/strings.hrc:433
msgctxt "STR_CUSTOMANIMATION_NO_SOUND"
msgid "(No sound)"
msgstr ""
-#: sd/inc/strings.hrc:424
+#: sd/inc/strings.hrc:434
msgctxt "STR_CUSTOMANIMATION_STOP_PREVIOUS_SOUND"
msgid "(Stop previous sound)"
msgstr ""
-#: sd/inc/strings.hrc:425
+#: sd/inc/strings.hrc:435
msgctxt "STR_CUSTOMANIMATION_BROWSE_SOUND"
msgid "Other sound..."
msgstr ""
-#: sd/inc/strings.hrc:426
+#: sd/inc/strings.hrc:436
msgctxt "STR_CUSTOMANIMATION_SAMPLE"
msgid "Sample"
msgstr ""
-#: sd/inc/strings.hrc:427
+#: sd/inc/strings.hrc:437
msgctxt "STR_CUSTOMANIMATION_TRIGGER"
msgid "Trigger"
msgstr ""
-#: sd/inc/strings.hrc:428
+#: sd/inc/strings.hrc:438
msgctxt "STR_CUSTOMANIMATION_LIST_HELPTEXT"
msgid "First select the slide element and then click 'Add...' to add an animation effect."
msgstr ""
-#: sd/inc/strings.hrc:429
+#: sd/inc/strings.hrc:439
msgctxt "STR_CUSTOMANIMATION_USERPATH"
msgid "User paths"
msgstr ""
-#: sd/inc/strings.hrc:430
+#: sd/inc/strings.hrc:440
msgctxt "STR_CUSTOMANIMATION_ENTRANCE"
msgid "Entrance: %1"
msgstr ""
-#: sd/inc/strings.hrc:431
+#: sd/inc/strings.hrc:441
msgctxt "STR_CUSTOMANIMATION_EMPHASIS"
msgid "Emphasis: %1"
msgstr ""
-#: sd/inc/strings.hrc:432
+#: sd/inc/strings.hrc:442
msgctxt "STR_CUSTOMANIMATION_EXIT"
msgid "Exit: %1"
msgstr ""
-#: sd/inc/strings.hrc:433
+#: sd/inc/strings.hrc:443
msgctxt "STR_CUSTOMANIMATION_MOTION_PATHS"
msgid "Motion Paths: %1"
msgstr ""
-#: sd/inc/strings.hrc:434
+#: sd/inc/strings.hrc:444
#, fuzzy
msgctxt "STR_SLIDETRANSITION_NONE"
msgid "None"
msgstr "keen"
-#: sd/inc/strings.hrc:436
+#: sd/inc/strings.hrc:446
msgctxt "STR_ANNOTATION_TODAY"
msgid "Today,"
msgstr ""
-#: sd/inc/strings.hrc:437
+#: sd/inc/strings.hrc:447
msgctxt "STR_ANNOTATION_YESTERDAY"
msgid "Yesterday,"
msgstr ""
-#: sd/inc/strings.hrc:438
+#: sd/inc/strings.hrc:448
msgctxt "STR_ANNOTATION_NOAUTHOR"
msgid "(no author)"
msgstr ""
-#: sd/inc/strings.hrc:439
+#: sd/inc/strings.hrc:449
msgctxt "STR_ANNOTATION_WRAP_FORWARD"
msgid "%PRODUCTNAME Impress reached the end of the presentation. Do you want to continue at the beginning?"
msgstr ""
-#: sd/inc/strings.hrc:440
+#: sd/inc/strings.hrc:450
msgctxt "STR_ANNOTATION_WRAP_BACKWARD"
msgid "%PRODUCTNAME Impress reached the beginning of the presentation. Do you want to continue at the end?"
msgstr ""
-#: sd/inc/strings.hrc:441
+#: sd/inc/strings.hrc:451
msgctxt "STR_ANNOTATION_WRAP_FORWARD_DRAW"
msgid "%PRODUCTNAME Draw reached the end of the document. Do you want to continue at the beginning?"
msgstr ""
-#: sd/inc/strings.hrc:442
+#: sd/inc/strings.hrc:452
msgctxt "STR_ANNOTATION_WRAP_BACKWARD_DRAW"
msgid "%PRODUCTNAME Draw reached the beginning of the document. Do you want to continue at the end?"
msgstr ""
-#: sd/inc/strings.hrc:443
+#: sd/inc/strings.hrc:453
msgctxt "STR_ANNOTATION_UNDO_INSERT"
msgid "Insert Comment"
msgstr "Kommentar afügen"
-#: sd/inc/strings.hrc:444
+#: sd/inc/strings.hrc:454
msgctxt "STR_ANNOTATION_UNDO_DELETE"
msgid "Delete Comment(s)"
msgstr ""
-#: sd/inc/strings.hrc:445
+#: sd/inc/strings.hrc:455
msgctxt "STR_ANNOTATION_UNDO_MOVE"
msgid "Move Comment"
msgstr ""
-#: sd/inc/strings.hrc:446
+#: sd/inc/strings.hrc:456
#, fuzzy
msgctxt "STR_ANNOTATION_UNDO_EDIT"
msgid "Edit Comment"
msgstr "Dokument drécken"
-#: sd/inc/strings.hrc:447
+#: sd/inc/strings.hrc:457
msgctxt "STR_ANNOTATION_REPLY"
msgid "Reply to %1"
msgstr ""
-#: sd/inc/strings.hrc:449
+#: sd/inc/strings.hrc:459
msgctxt "RID_DRAW_MEDIA_TOOLBOX"
msgid "Media Playback"
msgstr ""
-#: sd/inc/strings.hrc:450
+#: sd/inc/strings.hrc:460
msgctxt "RID_DRAW_TABLE_TOOLBOX"
msgid "Table"
msgstr "Tabell"
-#: sd/inc/strings.hrc:452
+#: sd/inc/strings.hrc:462
#, fuzzy
msgctxt "STR_IMPRESS_PRINT_UI_GROUP_NAME"
msgid "%PRODUCTNAME %s"
msgstr "%PRODUCTNAME %s"
-#: sd/inc/strings.hrc:453
+#: sd/inc/strings.hrc:463
msgctxt "STR_IMPRESS_PRINT_UI_PRINT_GROUP"
msgid "Print"
msgstr "Drécken"
-#: sd/inc/strings.hrc:454
+#: sd/inc/strings.hrc:464
msgctxt "STR_IMPRESS_PRINT_UI_CONTENT"
msgid "Document"
msgstr "Dokument"
-#: sd/inc/strings.hrc:455
+#: sd/inc/strings.hrc:465
msgctxt "STR_IMPRESS_PRINT_UI_SLIDESPERPAGE"
msgid "Slides per page"
msgstr ""
-#: sd/inc/strings.hrc:456
+#: sd/inc/strings.hrc:466
msgctxt "STR_IMPRESS_PRINT_UI_ORDER"
msgid "Order"
msgstr ""
-#: sd/inc/strings.hrc:457
+#: sd/inc/strings.hrc:467
#, fuzzy
msgctxt "STR_IMPRESS_PRINT_UI_INCLUDE_CONTENT"
msgid "~Contents"
msgstr "Inhalt"
-#: sd/inc/strings.hrc:458
+#: sd/inc/strings.hrc:468
msgctxt "STR_IMPRESS_PRINT_UI_IS_PRINT_NAME"
msgid "~Slide name"
msgstr ""
-#: sd/inc/strings.hrc:459
+#: sd/inc/strings.hrc:469
msgctxt "STR_DRAW_PRINT_UI_IS_PRINT_NAME"
msgid "P~age name"
msgstr ""
-#: sd/inc/strings.hrc:460
+#: sd/inc/strings.hrc:470
#, fuzzy
msgctxt "STR_IMPRESS_PRINT_UI_IS_PRINT_DATE"
msgid "~Date and time"
msgstr "~Datum an Zäit"
-#: sd/inc/strings.hrc:461
+#: sd/inc/strings.hrc:471
msgctxt "STR_IMPRESS_PRINT_UI_IS_PRINT_HIDDEN"
msgid "Hidden pages"
msgstr ""
-#: sd/inc/strings.hrc:462
+#: sd/inc/strings.hrc:472
msgctxt "STR_IMPRESS_PRINT_UI_QUALITY"
msgid "Color"
msgstr "Faarf"
-#: sd/inc/strings.hrc:463
+#: sd/inc/strings.hrc:473
#, fuzzy
msgctxt "STR_IMPRESS_PRINT_UI_PAGE_OPTIONS"
msgid "~Size"
msgstr "Gréisst"
-#: sd/inc/strings.hrc:464
+#: sd/inc/strings.hrc:474
msgctxt "STR_IMPRESS_PRINT_UI_BROCHURE"
msgid "Brochure"
msgstr "Brochure"
-#: sd/inc/strings.hrc:465
+#: sd/inc/strings.hrc:475
msgctxt "STR_IMPRESS_PRINT_UI_PAGE_SIDES"
msgid "Page sides"
msgstr ""
-#: sd/inc/strings.hrc:466
+#: sd/inc/strings.hrc:476
msgctxt "STR_IMPRESS_PRINT_UI_BROCHURE_INCLUDE"
msgid "Include"
msgstr ""
-#: sd/inc/strings.hrc:467
+#: sd/inc/strings.hrc:477
msgctxt "STR_IMPRESS_PRINT_UI_PAPER_TRAY"
msgid "~Use only paper tray from printer preferences"
msgstr ""
-#: sd/inc/strings.hrc:468
+#: sd/inc/strings.hrc:478
#, fuzzy
msgctxt "STR_IMPRESS_PRINT_UI_PAGE_RANGE"
msgid "Print range"
msgstr "Dréc~kberäich"
-#: sd/inc/strings.hrc:470
+#: sd/inc/strings.hrc:480
msgctxt "STR_SAR_WRAP_FORWARD"
msgid "%PRODUCTNAME Impress has searched to the end of the presentation. Do you want to continue at the beginning?"
msgstr ""
-#: sd/inc/strings.hrc:471
+#: sd/inc/strings.hrc:481
msgctxt "STR_SAR_WRAP_BACKWARD"
msgid "%PRODUCTNAME Impress has searched to the beginning of the presentation. Do you want to continue at the end?"
msgstr ""
-#: sd/inc/strings.hrc:472
+#: sd/inc/strings.hrc:482
msgctxt "STR_SAR_WRAP_FORWARD_DRAW"
msgid "%PRODUCTNAME Draw has searched to the end of the document. Do you want to continue at the beginning?"
msgstr ""
-#: sd/inc/strings.hrc:473
+#: sd/inc/strings.hrc:483
msgctxt "STR_SAR_WRAP_BACKWARD_DRAW"
msgid "%PRODUCTNAME Draw has searched to the beginning of the document. Do you want to continue at the end?"
msgstr ""
-#: sd/inc/strings.hrc:475
+#: sd/inc/strings.hrc:485
msgctxt "STR_SD_NONE"
msgid "- None -"
msgstr "- Keen -"
-#: sd/inc/strings.hrc:477
+#: sd/inc/strings.hrc:487
#, c-format
msgctxt "STR_CTRLCLICKHYPERLINK"
msgid "%s-click to follow hyperlink: "
msgstr ""
-#: sd/inc/strings.hrc:478
+#: sd/inc/strings.hrc:488
msgctxt "STR_CLICKHYPERLINK"
msgid "Click to open hyperlink: "
msgstr ""
+#: sd/uiconfig/sdraw/ui/breakdialog.ui:8
+msgctxt "breakdialog|BreakDialog"
+msgid "Break"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/breakdialog.ui:54
+msgctxt "breakdialog|label1"
+msgid "Processing metafile:"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/breakdialog.ui:66
+msgctxt "breakdialog|label2"
+msgid "Broken down metaobjects:"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/breakdialog.ui:78
+msgctxt "breakdialog|label3"
+msgid "Inserted drawing objects:"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/bulletsandnumbering.ui:8
+msgctxt "bulletsandnumbering|BulletsAndNumberingDialog"
+msgid "Bullets and Numbering"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/bulletsandnumbering.ui:67
+#, fuzzy
+msgctxt "bulletsandnumbering|reset"
+msgid "Reset"
+msgstr "~Reinitialiséieren"
+
+#: sd/uiconfig/sdraw/ui/bulletsandnumbering.ui:107
+msgctxt "bulletsandnumbering|bullets"
+msgid "Bullets"
+msgstr "Fléi"
+
+#: sd/uiconfig/sdraw/ui/bulletsandnumbering.ui:129
+msgctxt "bulletsandnumbering|singlenum"
+msgid "Numbering"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/bulletsandnumbering.ui:152
+msgctxt "bulletsandnumbering|graphics"
+msgid "Image"
+msgstr "Bild"
+
+#: sd/uiconfig/sdraw/ui/bulletsandnumbering.ui:175
+msgctxt "bulletsandnumbering|position"
+msgid "Position"
+msgstr "Positioun"
+
+#: sd/uiconfig/sdraw/ui/bulletsandnumbering.ui:198
+msgctxt "bulletsandnumbering|customize"
+msgid "Customize"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/copydlg.ui:50
+msgctxt "copydlg|DuplicateDialog"
+msgid "Duplicate"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/copydlg.ui:69
+#, fuzzy
+msgctxt "copydlg|default"
+msgid "_Default"
+msgstr "Standard"
+
+#: sd/uiconfig/sdraw/ui/copydlg.ui:151
+msgctxt "copydlg|label4"
+msgid "Number of _copies:"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/copydlg.ui:181
+msgctxt "copydlg|viewdata|tooltip_text"
+msgid "Values from Selection"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/copydlg.ui:186
+msgctxt "copydlg|viewdata-atkobject"
+msgid "Values from Selection"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/copydlg.ui:228
+msgctxt "copydlg|label5"
+msgid "_X axis:"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/copydlg.ui:242
+msgctxt "copydlg|label6"
+msgid "_Y axis:"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/copydlg.ui:256
+msgctxt "copydlg|label7"
+msgid "_Angle:"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/copydlg.ui:316
+msgctxt "copydlg|label1"
+msgid "Placement"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/copydlg.ui:354
+#, fuzzy
+msgctxt "copydlg|label8"
+msgid "_Width:"
+msgstr "Breet:"
+
+#: sd/uiconfig/sdraw/ui/copydlg.ui:368
+#, fuzzy
+msgctxt "copydlg|label9"
+msgid "_Height:"
+msgstr "Héicht:"
+
+#: sd/uiconfig/sdraw/ui/copydlg.ui:414
+msgctxt "copydlg|label2"
+msgid "Enlargement"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/copydlg.ui:452
+msgctxt "copydlg|label10"
+msgid "_Start:"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/copydlg.ui:466
+msgctxt "copydlg|endlabel"
+msgid "_End:"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/copydlg.ui:516
+#, fuzzy
+msgctxt "copydlg|label3"
+msgid "Colors"
+msgstr "Faarf"
+
+#: sd/uiconfig/sdraw/ui/crossfadedialog.ui:15
+msgctxt "crossfadedialog|CrossFadeDialog"
+msgid "Cross-fading"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/crossfadedialog.ui:105
+msgctxt "crossfadedialog|orientation"
+msgid "Same orientation"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/crossfadedialog.ui:121
+msgctxt "crossfadedialog|attributes"
+msgid "Cross-fade attributes"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/crossfadedialog.ui:139
+msgctxt "crossfadedialog|label2"
+msgid "Increments:"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/crossfadedialog.ui:169
+#, fuzzy
+msgctxt "crossfadedialog|label1"
+msgid "Settings"
+msgstr "Einstellungen"
+
+#: sd/uiconfig/sdraw/ui/dlgsnap.ui:35
+msgctxt "dlgsnap|SnapObjectDialog"
+msgid "New Snap Object"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/dlgsnap.ui:171
+msgctxt "dlgsnap|xlabel"
+msgid "_X:"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/dlgsnap.ui:184
+msgctxt "dlgsnap|ylabel"
+msgid "_Y:"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/dlgsnap.ui:201
+msgctxt "dlgsnap|label1"
+msgid "Position"
+msgstr "Positioun"
+
+#: sd/uiconfig/sdraw/ui/dlgsnap.ui:234
+#, fuzzy
+msgctxt "dlgsnap|point"
+msgid "_Point"
+msgstr "Punkt"
+
+#: sd/uiconfig/sdraw/ui/dlgsnap.ui:253
+#, fuzzy
+msgctxt "dlgsnap|vert"
+msgid "_Vertical"
+msgstr "~Vertikal"
+
+#: sd/uiconfig/sdraw/ui/dlgsnap.ui:272
+#, fuzzy
+msgctxt "dlgsnap|horz"
+msgid "Hori_zontal"
+msgstr "Horizontal"
+
+#: sd/uiconfig/sdraw/ui/dlgsnap.ui:297
+msgctxt "dlgsnap|label2"
+msgid "Type"
+msgstr "Typ"
+
+#: sd/uiconfig/sdraw/ui/drawchardialog.ui:8
+msgctxt "drawchardialog|DrawCharDialog"
+msgid "Character"
+msgstr "Zeechen"
+
+#: sd/uiconfig/sdraw/ui/drawchardialog.ui:134
+#, fuzzy
+msgctxt "drawchardialog|RID_SVXPAGE_CHAR_NAME"
+msgid "Fonts"
+msgstr "Schrëften"
+
+#: sd/uiconfig/sdraw/ui/drawchardialog.ui:180
+msgctxt "drawchardialog|RID_SVXPAGE_CHAR_EFFECTS"
+msgid "Font Effects"
+msgstr "Schrëfteffekter"
+
+#: sd/uiconfig/sdraw/ui/drawchardialog.ui:227
+msgctxt "drawchardialog|RID_SVXPAGE_CHAR_POSITION"
+msgid "Position"
+msgstr "Positioun"
+
+#: sd/uiconfig/sdraw/ui/drawchardialog.ui:274
+msgctxt "drawchardialog|RID_SVXPAGE_BACKGROUND"
+msgid "Highlighting"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/drawpagedialog.ui:8
+msgctxt "drawpagedialog|DrawPageDialog"
+msgid "Page Setup"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/drawpagedialog.ui:134
+msgctxt "drawpagedialog|RID_SVXPAGE_PAGE"
+msgid "Page"
+msgstr "Säit"
+
+#: sd/uiconfig/sdraw/ui/drawpagedialog.ui:180
+msgctxt "drawpagedialog|RID_SVXPAGE_AREA"
+msgid "Background"
+msgstr "Hannergrond"
+
+#: sd/uiconfig/sdraw/ui/drawpagedialog.ui:227
+msgctxt "drawpagedialog|RID_SVXPAGE_TRANSPARENCE"
+msgid "Transparency"
+msgstr "Transparenz"
+
+#: sd/uiconfig/sdraw/ui/drawparadialog.ui:8
+msgctxt "drawparadialog|DrawParagraphPropertiesDialog"
+msgid "Paragraph"
+msgstr "Paragraphe"
+
+#: sd/uiconfig/sdraw/ui/drawparadialog.ui:134
+msgctxt "drawparadialog|labelTP_PARA_STD"
+msgid "Indents & Spacing"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/drawparadialog.ui:180
+msgctxt "drawparadialog|labelTP_PARA_ASIAN"
+msgid "Asian Typography"
+msgstr "Asiatesch Typographie"
+
+#: sd/uiconfig/sdraw/ui/drawparadialog.ui:227
+msgctxt "drawparadialog|labelTP_TABULATOR"
+msgid "Tabs"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/drawparadialog.ui:274
+msgctxt "drawparadialog|labelTP_PARA_ALIGN"
+msgid "Alignment"
+msgstr "Aus~riichten"
+
+#: sd/uiconfig/sdraw/ui/drawparadialog.ui:322
+msgctxt "drawparadialog|labelNUMBERING"
+msgid "Numbering"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/drawprinteroptions.ui:32
+msgctxt "drawprinteroptions|printname"
+msgid "Page name"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/drawprinteroptions.ui:49
+#, fuzzy
+msgctxt "drawprinteroptions|printdatetime"
+msgid "Date and time"
+msgstr "~Datum an Zäit"
+
+#: sd/uiconfig/sdraw/ui/drawprinteroptions.ui:72
+msgctxt "drawprinteroptions|label4"
+msgid "Contents"
+msgstr "Inhalt"
+
+#: sd/uiconfig/sdraw/ui/drawprinteroptions.ui:105
+msgctxt "drawprinteroptions|originalcolors"
+msgid "Original size"
+msgstr "Original Gréisst"
+
+#: sd/uiconfig/sdraw/ui/drawprinteroptions.ui:124
+msgctxt "drawprinteroptions|grayscale"
+msgid "Grayscale"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/drawprinteroptions.ui:143
+msgctxt "drawprinteroptions|blackandwhite"
+msgid "Black & white"
+msgstr "Schwaarz & wäiss"
+
+#: sd/uiconfig/sdraw/ui/drawprinteroptions.ui:168
+msgctxt "drawprinteroptions|label5"
+msgid "Color"
+msgstr "Faarf"
+
+#: sd/uiconfig/sdraw/ui/drawprinteroptions.ui:201
+msgctxt "drawprinteroptions|originalsize"
+msgid "Original size"
+msgstr "Original Gréisst"
+
+#: sd/uiconfig/sdraw/ui/drawprinteroptions.ui:220
+msgctxt "drawprinteroptions|fittoprintable"
+msgid "Fit to printable page"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/drawprinteroptions.ui:239
+msgctxt "drawprinteroptions|distributeonmultiple"
+msgid "Distribute on multiple sheets of paper"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/drawprinteroptions.ui:258
+msgctxt "drawprinteroptions|tilesheet"
+msgid "Tile sheet of paper with repeated pages"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/drawprinteroptions.ui:283
+msgctxt "drawprinteroptions|label6"
+msgid "Size"
+msgstr "Gréisst"
+
+#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:8
+msgctxt "drawprtldialog|DrawPRTLDialog"
+msgid "Presentation Layout"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:107
+msgctxt "drawprtldialog|RID_SVXPAGE_LINE"
+msgid "Line"
+msgstr "Zeil "
+
+#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:129
+msgctxt "drawprtldialog|RID_SVXPAGE_AREA"
+msgid "Area"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:152
+#, fuzzy
+msgctxt "drawprtldialog|RID_SVXPAGE_SHADOW"
+msgid "Shadow"
+msgstr "Schattéiert"
+
+#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:175
+msgctxt "drawprtldialog|RID_SVXPAGE_TRANSPARENCE"
+msgid "Transparency"
+msgstr "Transparenz"
+
+#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:198
+msgctxt "drawprtldialog|RID_SVXPAGE_CHAR_NAME"
+msgid "Font"
+msgstr "Schrëft"
+
+#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:221
+msgctxt "drawprtldialog|RID_SVXPAGE_CHAR_EFFECTS"
+msgid "Font Effects"
+msgstr "Schrëfteffekter"
+
+#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:244
+msgctxt "drawprtldialog|RID_SVXPAGE_STD_PARAGRAPH"
+msgid "Indents & Spacing"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:267
+msgctxt "drawprtldialog|RID_SVXPAGE_TEXTATTR"
+msgid "Text"
+msgstr "Text"
+
+#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:290
+msgctxt "drawprtldialog|RID_SVXPAGE_PICK_BULLET"
+msgid "Bullets"
+msgstr "Fléi"
+
+#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:313
+msgctxt "drawprtldialog|RID_SVXPAGE_PICK_SINGLE_NUM"
+msgid "Numbering"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:336
+msgctxt "drawprtldialog|RID_SVXPAGE_PICK_BMP"
+msgid "Image"
+msgstr "Bild"
+
+#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:359
+msgctxt "drawprtldialog|RID_SVXPAGE_NUM_OPTIONS"
+msgid "Customize"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:382
+msgctxt "drawprtldialog|RID_SVXPAGE_ALIGN_PARAGRAPH"
+msgid "Alignment"
+msgstr "Aus~riichten"
+
+#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:405
+msgctxt "drawprtldialog|RID_SVXPAGE_PARA_ASIAN"
+msgid "Asian Typography"
+msgstr "Asiatesch Typographie"
+
+#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:428
+msgctxt "drawprtldialog|RID_SVXPAGE_TABULATOR"
+msgid "Tabs"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:451
+msgctxt "drawprtldialog|RID_SVXPAGE_BACKGROUND"
+msgid "Highlighting"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/insertlayer.ui:8
+msgctxt "insertlayer|InsertLayerDialog"
+msgid "Insert Layer"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/insertlayer.ui:109
+#, fuzzy
+msgctxt "insertlayer|label4"
+msgid "_Name"
+msgstr "Numm"
+
+#: sd/uiconfig/sdraw/ui/insertlayer.ui:149
+#, fuzzy
+msgctxt "insertlayer|label5"
+msgid "_Title"
+msgstr "Titel"
+
+#: sd/uiconfig/sdraw/ui/insertlayer.ui:202
+msgctxt "insertlayer|description"
+msgid "_Description"
+msgstr "Beschreiwung"
+
+#: sd/uiconfig/sdraw/ui/insertlayer.ui:218
+#, fuzzy
+msgctxt "insertlayer|visible"
+msgid "_Visible"
+msgstr "Siichtbar"
+
+#: sd/uiconfig/sdraw/ui/insertlayer.ui:234
+msgctxt "insertlayer|printable"
+msgid "_Printable"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/insertlayer.ui:250
+msgctxt "insertlayer|locked"
+msgid "_Locked"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/insertslidesdialog.ui:9
+msgctxt "insertslidesdialog|InsertSlidesDialog"
+msgid "Insert Slides/Objects"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/insertslidesdialog.ui:83
+msgctxt "insertslidesdialog|backgrounds"
+msgid "Delete unused backg_rounds"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/insertslidesdialog.ui:98
+msgctxt "insertslidesdialog|links"
+msgid "_Link"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/namedesign.ui:8
+msgctxt "namedesign|NameDesignDialog"
+msgid "Name HTML Design"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:953
+msgctxt "drawnotebookbar|Help"
+msgid "_Check for Updates..."
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:2075
+msgctxt "drawnotebookbar|Tools"
+msgid "_Check for Updates..."
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:2368
+msgctxt "drawnotebookbar|FileLabel"
+msgid "_File"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:2387
+msgctxt "drawnotebookbar|HelpMenuButton"
+msgid "_Help"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:3176
+msgctxt "drawnotebookbar|FileLabel"
+msgid "File"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:3335
+msgctxt "drawnotebookbar|HomeMenuButton"
+msgid "_Home"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:4364
+msgctxt "drawnotebookbar|HomeLabel"
+msgid "Home"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:4921
+msgctxt "drawnotebookbar|FieldMenuButton"
+msgid "Fiel_d"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:5109
+msgctxt "drawnotebookbar|InsertMenuButton"
+msgid "_Insert"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:5194
+msgctxt "drawnotebookbar|InsertLabel"
+msgid "Insert"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:5224
+msgctxt "drawnotebookbar|PageMenuButton"
+msgid "Page"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:5977
+msgctxt "drawnotebookbar|PageLabel"
+msgid "Page"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:6007
+msgctxt "drawnotebookbar|ReviewMenuButton"
+msgid "_Review"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:6436
+msgctxt "drawnotebookbar|ReviewLabel"
+msgid "Review"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:6466
+msgctxt "drawnotebookbar|ViewMenuButton"
+msgid "_View"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:7187
+msgctxt "drawnotebookbar|ViewLabel"
+msgid "View"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:7217
+msgctxt "drawnotebookbar|TextMenuButton"
+msgid "Text"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:8508
+msgctxt "drawnotebookbar|ReferencesLabel"
+msgid "Text"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:9302
+msgctxt "drawnotebookbar|TableMenuButton"
+msgid "T_able"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:9386
+msgctxt "drawnotebookbar|TableLabel"
+msgid "Table"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:9984
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:11255
+msgctxt "drawnotebookbar|ConvertMenuButton"
+msgid "Convert"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:10330
+msgctxt "drawnotebookbar|GraphicMenuButton"
+msgid "Image"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:10442
+msgctxt "drawnotebookbar|ImageLabel"
+msgid "Image"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:11990
+msgctxt "drawnotebookbar|DrawMenuButton"
+msgid "D_raw"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:12099
+msgctxt "drawnotebookbar|DrawLabel"
+msgid "Draw"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:12134
+msgctxt "drawnotebookbar|ToolsMenuButton"
+msgid "_Tools"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/notebookbar.ui:13077
+msgctxt "drawnotebookbar|DevLabel"
+msgid "Tools"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/paranumberingtab.ui:30
+msgctxt "paranumberingtab|checkbuttonCB_NEW_START"
+msgid "R_estart at this paragraph"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/paranumberingtab.ui:59
+msgctxt "paranumberingtab|checkbuttonCB_NUMBER_NEW_START"
+msgid "S_tart with:"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/paranumberingtab.ui:84
+msgctxt "paranumberingtab|label1"
+msgid "Paragraph Numbering"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/queryunlinkimagedialog.ui:7
+msgctxt "queryunlinkimagedialog|QueryUnlinkImageDialog"
+msgid "Release image's link?"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/queryunlinkimagedialog.ui:14
+msgctxt "queryunlinkimagedialog|QueryUnlinkImageDialog"
+msgid "This image is linked to a document."
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/queryunlinkimagedialog.ui:15
+msgctxt "queryunlinkimagedialog|QueryUnlinkImageDialog"
+msgid "Do you want to unlink the image in order to edit it?"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/vectorize.ui:27
+msgctxt "vectorize|VectorizeDialog"
+msgid "Convert to Polygon"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/vectorize.ui:45
+msgctxt "vectorize|preview"
+msgid "Preview"
+msgstr "Iwwersiicht"
+
+#: sd/uiconfig/sdraw/ui/vectorize.ui:120
+msgctxt "vectorize|label2"
+msgid "Number of colors:"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/vectorize.ui:146
+msgctxt "vectorize|label3"
+msgid "Point reduction:"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/vectorize.ui:174
+msgctxt "vectorize|tilesft"
+msgid "Tile size:"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/vectorize.ui:198
+msgctxt "vectorize|fillholes"
+msgid "_Fill holes"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/vectorize.ui:231
+msgctxt "vectorize|label5"
+msgid "Source image:"
+msgstr ""
+
+#: sd/uiconfig/sdraw/ui/vectorize.ui:245
+msgctxt "vectorize|label6"
+msgid "Vectorized image:"
+msgstr ""
+
#: sd/uiconfig/simpress/ui/annotationmenu.ui:13
msgctxt "annotationmenu|reply"
msgid "_Reply"
@@ -2638,42 +3379,42 @@ msgctxt "customanimationeffecttab|text_delay_label"
msgid "delay between characters"
msgstr ""
-#: sd/uiconfig/simpress/ui/customanimationeffecttab.ui:308
+#: sd/uiconfig/simpress/ui/customanimationeffecttab.ui:310
msgctxt "customanimationeffecttab|aeffect_list"
msgid "Don't dim"
msgstr ""
-#: sd/uiconfig/simpress/ui/customanimationeffecttab.ui:309
+#: sd/uiconfig/simpress/ui/customanimationeffecttab.ui:311
msgctxt "customanimationeffecttab|aeffect_list"
msgid "Dim with color"
msgstr ""
-#: sd/uiconfig/simpress/ui/customanimationeffecttab.ui:310
+#: sd/uiconfig/simpress/ui/customanimationeffecttab.ui:312
msgctxt "customanimationeffecttab|aeffect_list"
msgid "Hide after animation"
msgstr ""
-#: sd/uiconfig/simpress/ui/customanimationeffecttab.ui:311
+#: sd/uiconfig/simpress/ui/customanimationeffecttab.ui:313
msgctxt "customanimationeffecttab|aeffect_list"
msgid "Hide on next animation"
msgstr ""
-#: sd/uiconfig/simpress/ui/customanimationeffecttab.ui:324
+#: sd/uiconfig/simpress/ui/customanimationeffecttab.ui:326
msgctxt "customanimationeffecttab|text_animation_list"
msgid "All at once"
msgstr ""
-#: sd/uiconfig/simpress/ui/customanimationeffecttab.ui:325
+#: sd/uiconfig/simpress/ui/customanimationeffecttab.ui:327
msgctxt "customanimationeffecttab|text_animation_list"
msgid "Word by word"
msgstr ""
-#: sd/uiconfig/simpress/ui/customanimationeffecttab.ui:326
+#: sd/uiconfig/simpress/ui/customanimationeffecttab.ui:328
msgctxt "customanimationeffecttab|text_animation_list"
msgid "Letter by letter"
msgstr ""
-#: sd/uiconfig/simpress/ui/customanimationeffecttab.ui:345
+#: sd/uiconfig/simpress/ui/customanimationeffecttab.ui:347
msgctxt "customanimationeffecttab|label4"
msgid "Enhancement"
msgstr ""
@@ -2683,18 +3424,18 @@ msgctxt "customanimationproperties|CustomAnimationProperties"
msgid "Effect Options"
msgstr ""
-#: sd/uiconfig/simpress/ui/customanimationproperties.ui:91
+#: sd/uiconfig/simpress/ui/customanimationproperties.ui:93
#, fuzzy
msgctxt "customanimationproperties|effect"
msgid "Effect"
msgstr "Effekter"
-#: sd/uiconfig/simpress/ui/customanimationproperties.ui:113
+#: sd/uiconfig/simpress/ui/customanimationproperties.ui:115
msgctxt "customanimationproperties|timing"
msgid "Timing"
msgstr ""
-#: sd/uiconfig/simpress/ui/customanimationproperties.ui:136
+#: sd/uiconfig/simpress/ui/customanimationproperties.ui:138
msgctxt "customanimationproperties|textanim"
msgid "Text Animation"
msgstr ""
@@ -2804,28 +3545,28 @@ msgctxt "customanimationspanel|effect_label"
msgid "Effect"
msgstr "Effekter"
-#: sd/uiconfig/simpress/ui/customanimationspanel.ui:429
+#: sd/uiconfig/simpress/ui/customanimationspanel.ui:430
msgctxt "customanimationspanel|auto_preview"
msgid "Automatic Preview"
msgstr ""
-#: sd/uiconfig/simpress/ui/customanimationspanel.ui:446
+#: sd/uiconfig/simpress/ui/customanimationspanel.ui:447
#, fuzzy
msgctxt "customanimationspanel|play"
msgid "Play"
msgstr "~Liesen"
-#: sd/uiconfig/simpress/ui/customanimationspanel.ui:451
+#: sd/uiconfig/simpress/ui/customanimationspanel.ui:452
msgctxt "customanimationspanel|play|tooltip_text"
msgid "Preview Effect"
msgstr ""
-#: sd/uiconfig/simpress/ui/customanimationspanel.ui:479
+#: sd/uiconfig/simpress/ui/customanimationspanel.ui:480
msgctxt "customanimationspanel|box1_label"
msgid "Animation Deck"
msgstr ""
-#: sd/uiconfig/simpress/ui/customanimationspanel.ui:492
+#: sd/uiconfig/simpress/ui/customanimationspanel.ui:493
msgctxt "customanimationspanel|custom_animation_list_label"
msgid "Animation List"
msgstr ""
@@ -3005,57 +3746,57 @@ msgctxt "customanimationtimingtab|start_label"
msgid "_Start:"
msgstr ""
-#: sd/uiconfig/simpress/ui/customanimationtimingtab.ui:42
+#: sd/uiconfig/simpress/ui/customanimationtimingtab.ui:43
msgctxt "customanimationtimingtab|delay_label"
msgid "_Delay:"
msgstr ""
-#: sd/uiconfig/simpress/ui/customanimationtimingtab.ui:55
+#: sd/uiconfig/simpress/ui/customanimationtimingtab.ui:57
msgctxt "customanimationtimingtab|duration_label"
msgid "D_uration:"
msgstr ""
-#: sd/uiconfig/simpress/ui/customanimationtimingtab.ui:68
+#: sd/uiconfig/simpress/ui/customanimationtimingtab.ui:71
msgctxt "customanimationtimingtab|repeat_label"
msgid "_Repeat:"
msgstr ""
-#: sd/uiconfig/simpress/ui/customanimationtimingtab.ui:82
+#: sd/uiconfig/simpress/ui/customanimationtimingtab.ui:86
msgctxt "customanimationtimingtab|start_list"
msgid "On click"
msgstr ""
-#: sd/uiconfig/simpress/ui/customanimationtimingtab.ui:83
+#: sd/uiconfig/simpress/ui/customanimationtimingtab.ui:87
msgctxt "customanimationtimingtab|start_list"
msgid "With previous"
msgstr ""
-#: sd/uiconfig/simpress/ui/customanimationtimingtab.ui:84
+#: sd/uiconfig/simpress/ui/customanimationtimingtab.ui:88
msgctxt "customanimationtimingtab|start_list"
msgid "After previous"
msgstr ""
-#: sd/uiconfig/simpress/ui/customanimationtimingtab.ui:111
+#: sd/uiconfig/simpress/ui/customanimationtimingtab.ui:115
msgctxt "customanimationtimingtab|anim_duration|tooltip_text"
msgid "Select the speed of the Animation."
msgstr ""
-#: sd/uiconfig/simpress/ui/customanimationtimingtab.ui:133
+#: sd/uiconfig/simpress/ui/customanimationtimingtab.ui:137
msgctxt "customanimationtimingtab|rewind"
msgid "Rewind _when done playing"
msgstr ""
-#: sd/uiconfig/simpress/ui/customanimationtimingtab.ui:174
+#: sd/uiconfig/simpress/ui/customanimationtimingtab.ui:178
msgctxt "customanimationtimingtab|rb_click_sequence"
msgid "_Animate as part of click sequence"
msgstr ""
-#: sd/uiconfig/simpress/ui/customanimationtimingtab.ui:192
+#: sd/uiconfig/simpress/ui/customanimationtimingtab.ui:196
msgctxt "customanimationtimingtab|rb_interactive"
msgid "Start _effect on click of:"
msgstr ""
-#: sd/uiconfig/simpress/ui/customanimationtimingtab.ui:228
+#: sd/uiconfig/simpress/ui/customanimationtimingtab.ui:232
msgctxt "customanimationtimingtab|label11"
msgid "Trigger"
msgstr ""
@@ -3386,13 +4127,13 @@ msgctxt "headerfooterdialog|apply_all"
msgid "Appl_y to All"
msgstr ""
-#: sd/uiconfig/simpress/ui/headerfooterdialog.ui:106
+#: sd/uiconfig/simpress/ui/headerfooterdialog.ui:108
#, fuzzy
msgctxt "headerfooterdialog|slides"
msgid "Slides"
msgstr "~Sliden"
-#: sd/uiconfig/simpress/ui/headerfooterdialog.ui:128
+#: sd/uiconfig/simpress/ui/headerfooterdialog.ui:130
msgctxt "headerfooterdialog|notes"
msgid "Notes and Handouts"
msgstr ""
@@ -3801,7 +4542,7 @@ msgid "Table"
msgstr "Tabell"
#: sd/uiconfig/simpress/ui/notebookbar.ui:10049
-#: sd/uiconfig/simpress/ui/notebookbar.ui:11131
+#: sd/uiconfig/simpress/ui/notebookbar.ui:11149
msgctxt "notebookbar|ConvertMenuButton"
msgid "Convert"
msgstr ""
@@ -3816,22 +4557,22 @@ msgctxt "notebookbar|ImageLabel"
msgid "Image"
msgstr "Bild"
-#: sd/uiconfig/simpress/ui/notebookbar.ui:11658
+#: sd/uiconfig/simpress/ui/notebookbar.ui:11673
msgctxt "notebookbar|DrawMenuButton"
msgid "D_raw"
msgstr ""
-#: sd/uiconfig/simpress/ui/notebookbar.ui:11772
+#: sd/uiconfig/simpress/ui/notebookbar.ui:11787
msgctxt "notebookbar|DrawLabel"
msgid "Draw"
msgstr ""
-#: sd/uiconfig/simpress/ui/notebookbar.ui:11804
+#: sd/uiconfig/simpress/ui/notebookbar.ui:11819
msgctxt "notebookbar|ToolsMenuButton"
msgid "_Tools"
msgstr ""
-#: sd/uiconfig/simpress/ui/notebookbar.ui:12758
+#: sd/uiconfig/simpress/ui/notebookbar.ui:12773
msgctxt "notebookbar|DevLabel"
msgid "Tools"
msgstr ""
@@ -5332,93 +6073,93 @@ msgctxt "sidebarslidebackground|label2"
msgid "_Format:"
msgstr "Format"
-#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:39
+#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:40
#, fuzzy
msgctxt "sidebarslidebackground|label3"
msgid "Background:"
msgstr "Hannergrond"
-#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:52
+#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:55
msgctxt "sidebarslidebackground|orientation"
msgid "Landscape"
msgstr "Landschaft"
-#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:53
+#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:56
msgctxt "sidebarslidebackground|orientation"
msgid "Portrait"
msgstr "Portrait"
-#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:86
+#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:89
msgctxt "sidebarslidebackground|displaymasterobjects"
msgid "Master Objects"
msgstr ""
-#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:126
+#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:129
msgctxt "sidebarslidebackground|button2"
msgid "Insert Image..."
msgstr ""
-#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:164
+#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:167
msgctxt "sidebarslidebackground|displaymasterbackground"
msgid "Master Background"
msgstr ""
-#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:194
+#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:197
msgctxt "sidebarslidebackground|label4"
msgid "Orientation:"
msgstr ""
-#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:209
+#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:214
msgctxt "sidebarslidebackground|masterslidebutton"
msgid "Master View"
msgstr ""
-#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:223
+#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:228
msgctxt "sidebarslidebackground|closemasterslide"
msgid "Close Master View"
msgstr ""
-#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:245
+#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:249
msgctxt "sidebarslidebackground|marginLB"
msgid "None"
msgstr "Keen"
-#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:246
+#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:250
msgctxt "sidebarslidebackground|marginLB"
msgid "Narrow"
msgstr ""
-#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:247
+#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:251
msgctxt "sidebarslidebackground|marginLB"
msgid "Moderate"
msgstr ""
-#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:248
+#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:252
msgctxt "sidebarslidebackground|marginLB"
msgid "Normal 0.75\""
msgstr ""
-#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:249
+#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:253
msgctxt "sidebarslidebackground|marginLB"
msgid "Normal 1\""
msgstr ""
-#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:250
+#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:254
msgctxt "sidebarslidebackground|marginLB"
msgid "Normal 1.25\""
msgstr ""
-#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:251
+#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:255
msgctxt "sidebarslidebackground|marginLB"
msgid "Wide"
msgstr ""
-#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:264
+#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:268
msgctxt "sidebarslidebackground|labelmargin"
msgid "Margin:"
msgstr ""
-#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:274
+#: sd/uiconfig/simpress/ui/sidebarslidebackground.ui:280
msgctxt "sidebarslidebackground|customlabel"
msgid "Custom"
msgstr ""
@@ -5760,643 +6501,82 @@ msgctxt "templatedialog|TemplateDialog"
msgid "Graphic Styles"
msgstr ""
-#: sd/uiconfig/simpress/ui/templatedialog.ui:80
-#, fuzzy
-msgctxt "templatedialog|standard"
-msgid "_Standard"
-msgstr "Standard"
-
-#: sd/uiconfig/simpress/ui/templatedialog.ui:119
+#: sd/uiconfig/simpress/ui/templatedialog.ui:121
msgctxt "templatedialog|organizer"
msgid "Organizer"
msgstr ""
-#: sd/uiconfig/simpress/ui/templatedialog.ui:141
+#: sd/uiconfig/simpress/ui/templatedialog.ui:143
msgctxt "templatedialog|line"
msgid "Line"
msgstr "Zeil "
-#: sd/uiconfig/simpress/ui/templatedialog.ui:164
+#: sd/uiconfig/simpress/ui/templatedialog.ui:166
msgctxt "templatedialog|area"
msgid "Area"
msgstr ""
-#: sd/uiconfig/simpress/ui/templatedialog.ui:187
+#: sd/uiconfig/simpress/ui/templatedialog.ui:189
msgctxt "templatedialog|shadowing"
msgid "Shadowing"
msgstr ""
-#: sd/uiconfig/simpress/ui/templatedialog.ui:210
+#: sd/uiconfig/simpress/ui/templatedialog.ui:212
msgctxt "templatedialog|transparency"
msgid "Transparency"
msgstr "Transparenz"
-#: sd/uiconfig/simpress/ui/templatedialog.ui:233
+#: sd/uiconfig/simpress/ui/templatedialog.ui:235
msgctxt "templatedialog|font"
msgid "Font"
msgstr "Schrëft"
-#: sd/uiconfig/simpress/ui/templatedialog.ui:256
+#: sd/uiconfig/simpress/ui/templatedialog.ui:258
msgctxt "templatedialog|fonteffect"
msgid "Font Effects"
msgstr "Schrëfteffekter"
-#: sd/uiconfig/simpress/ui/templatedialog.ui:279
+#: sd/uiconfig/simpress/ui/templatedialog.ui:281
msgctxt "templatedialog|indents"
msgid "Indents & Spacing"
msgstr ""
-#: sd/uiconfig/simpress/ui/templatedialog.ui:302
+#: sd/uiconfig/simpress/ui/templatedialog.ui:304
msgctxt "templatedialog|text"
msgid "Text"
msgstr "Text"
-#: sd/uiconfig/simpress/ui/templatedialog.ui:325
+#: sd/uiconfig/simpress/ui/templatedialog.ui:327
msgctxt "templatedialog|animation"
msgid "Text Animation"
msgstr ""
-#: sd/uiconfig/simpress/ui/templatedialog.ui:348
+#: sd/uiconfig/simpress/ui/templatedialog.ui:350
msgctxt "templatedialog|dimensioning"
msgid "Dimensioning"
msgstr ""
-#: sd/uiconfig/simpress/ui/templatedialog.ui:371
+#: sd/uiconfig/simpress/ui/templatedialog.ui:373
msgctxt "templatedialog|connector"
msgid "Connector"
msgstr ""
-#: sd/uiconfig/simpress/ui/templatedialog.ui:394
+#: sd/uiconfig/simpress/ui/templatedialog.ui:396
msgctxt "templatedialog|alignment"
msgid "Alignment"
msgstr "Aus~riichten"
-#: sd/uiconfig/simpress/ui/templatedialog.ui:417
+#: sd/uiconfig/simpress/ui/templatedialog.ui:419
msgctxt "templatedialog|asiantypo"
msgid "Asian Typography"
msgstr "Asiatesch Typographie"
-#: sd/uiconfig/simpress/ui/templatedialog.ui:440
+#: sd/uiconfig/simpress/ui/templatedialog.ui:442
msgctxt "templatedialog|tabs"
msgid "Tabs"
msgstr ""
-#: sd/uiconfig/simpress/ui/templatedialog.ui:463
+#: sd/uiconfig/simpress/ui/templatedialog.ui:465
msgctxt "templatedialog|background"
msgid "Highlighting"
msgstr ""
-
-#: sd/uiconfig/sdraw/ui/breakdialog.ui:8
-msgctxt "breakdialog|BreakDialog"
-msgid "Break"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/breakdialog.ui:54
-msgctxt "breakdialog|label1"
-msgid "Processing metafile:"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/breakdialog.ui:66
-msgctxt "breakdialog|label2"
-msgid "Broken down metaobjects:"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/breakdialog.ui:78
-msgctxt "breakdialog|label3"
-msgid "Inserted drawing objects:"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/bulletsandnumbering.ui:8
-msgctxt "bulletsandnumbering|BulletsAndNumberingDialog"
-msgid "Bullets and Numbering"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/bulletsandnumbering.ui:67
-#, fuzzy
-msgctxt "bulletsandnumbering|reset"
-msgid "Reset"
-msgstr "~Reinitialiséieren"
-
-#: sd/uiconfig/sdraw/ui/bulletsandnumbering.ui:105
-msgctxt "bulletsandnumbering|bullets"
-msgid "Bullets"
-msgstr "Fléi"
-
-#: sd/uiconfig/sdraw/ui/bulletsandnumbering.ui:127
-msgctxt "bulletsandnumbering|singlenum"
-msgid "Numbering"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/bulletsandnumbering.ui:150
-msgctxt "bulletsandnumbering|graphics"
-msgid "Image"
-msgstr "Bild"
-
-#: sd/uiconfig/sdraw/ui/bulletsandnumbering.ui:173
-msgctxt "bulletsandnumbering|position"
-msgid "Position"
-msgstr "Positioun"
-
-#: sd/uiconfig/sdraw/ui/bulletsandnumbering.ui:196
-msgctxt "bulletsandnumbering|customize"
-msgid "Customize"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/copydlg.ui:33
-msgctxt "copydlg|DuplicateDialog"
-msgid "Duplicate"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/copydlg.ui:76
-#, fuzzy
-msgctxt "copydlg|default"
-msgid "_Default"
-msgstr "Standard"
-
-#: sd/uiconfig/sdraw/ui/copydlg.ui:128
-msgctxt "copydlg|label4"
-msgid "Number of _copies:"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/copydlg.ui:157
-msgctxt "copydlg|viewdata|tooltip_text"
-msgid "Values from Selection"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/copydlg.ui:161
-msgctxt "copydlg|viewdata-atkobject"
-msgid "Values from Selection"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/copydlg.ui:203
-msgctxt "copydlg|label5"
-msgid "_X axis:"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/copydlg.ui:217
-msgctxt "copydlg|label6"
-msgid "_Y axis:"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/copydlg.ui:231
-msgctxt "copydlg|label7"
-msgid "_Angle:"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/copydlg.ui:288
-msgctxt "copydlg|label1"
-msgid "Placement"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/copydlg.ui:326
-#, fuzzy
-msgctxt "copydlg|label8"
-msgid "_Width:"
-msgstr "Breet:"
-
-#: sd/uiconfig/sdraw/ui/copydlg.ui:340
-#, fuzzy
-msgctxt "copydlg|label9"
-msgid "_Height:"
-msgstr "Héicht:"
-
-#: sd/uiconfig/sdraw/ui/copydlg.ui:384
-msgctxt "copydlg|label2"
-msgid "Enlargement"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/copydlg.ui:422
-msgctxt "copydlg|label10"
-msgid "_Start:"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/copydlg.ui:436
-msgctxt "copydlg|endlabel"
-msgid "_End:"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/copydlg.ui:476
-#, fuzzy
-msgctxt "copydlg|label3"
-msgid "Colors"
-msgstr "Faarf"
-
-#: sd/uiconfig/sdraw/ui/crossfadedialog.ui:15
-msgctxt "crossfadedialog|CrossFadeDialog"
-msgid "Cross-fading"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/crossfadedialog.ui:105
-msgctxt "crossfadedialog|orientation"
-msgid "Same orientation"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/crossfadedialog.ui:121
-msgctxt "crossfadedialog|attributes"
-msgid "Cross-fade attributes"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/crossfadedialog.ui:139
-msgctxt "crossfadedialog|label2"
-msgid "Increments:"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/crossfadedialog.ui:169
-#, fuzzy
-msgctxt "crossfadedialog|label1"
-msgid "Settings"
-msgstr "Einstellungen"
-
-#: sd/uiconfig/sdraw/ui/dlgsnap.ui:35
-msgctxt "dlgsnap|SnapObjectDialog"
-msgid "New Snap Object"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/dlgsnap.ui:173
-msgctxt "dlgsnap|xlabel"
-msgid "_X:"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/dlgsnap.ui:186
-msgctxt "dlgsnap|ylabel"
-msgid "_Y:"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/dlgsnap.ui:203
-msgctxt "dlgsnap|label1"
-msgid "Position"
-msgstr "Positioun"
-
-#: sd/uiconfig/sdraw/ui/dlgsnap.ui:236
-#, fuzzy
-msgctxt "dlgsnap|point"
-msgid "_Point"
-msgstr "Punkt"
-
-#: sd/uiconfig/sdraw/ui/dlgsnap.ui:255
-#, fuzzy
-msgctxt "dlgsnap|vert"
-msgid "_Vertical"
-msgstr "~Vertikal"
-
-#: sd/uiconfig/sdraw/ui/dlgsnap.ui:274
-#, fuzzy
-msgctxt "dlgsnap|horz"
-msgid "Hori_zontal"
-msgstr "Horizontal"
-
-#: sd/uiconfig/sdraw/ui/dlgsnap.ui:299
-msgctxt "dlgsnap|label2"
-msgid "Type"
-msgstr "Typ"
-
-#: sd/uiconfig/sdraw/ui/drawchardialog.ui:8
-msgctxt "drawchardialog|DrawCharDialog"
-msgid "Character"
-msgstr "Zeechen"
-
-#: sd/uiconfig/sdraw/ui/drawchardialog.ui:105
-#, fuzzy
-msgctxt "drawchardialog|RID_SVXPAGE_CHAR_NAME"
-msgid "Fonts"
-msgstr "Schrëften"
-
-#: sd/uiconfig/sdraw/ui/drawchardialog.ui:127
-msgctxt "drawchardialog|RID_SVXPAGE_CHAR_EFFECTS"
-msgid "Font Effects"
-msgstr "Schrëfteffekter"
-
-#: sd/uiconfig/sdraw/ui/drawchardialog.ui:150
-msgctxt "drawchardialog|RID_SVXPAGE_CHAR_POSITION"
-msgid "Position"
-msgstr "Positioun"
-
-#: sd/uiconfig/sdraw/ui/drawchardialog.ui:173
-msgctxt "drawchardialog|RID_SVXPAGE_BACKGROUND"
-msgid "Highlighting"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/drawpagedialog.ui:8
-msgctxt "drawpagedialog|DrawPageDialog"
-msgid "Page Setup"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/drawpagedialog.ui:105
-msgctxt "drawpagedialog|RID_SVXPAGE_PAGE"
-msgid "Page"
-msgstr "Säit"
-
-#: sd/uiconfig/sdraw/ui/drawpagedialog.ui:127
-msgctxt "drawpagedialog|RID_SVXPAGE_AREA"
-msgid "Background"
-msgstr "Hannergrond"
-
-#: sd/uiconfig/sdraw/ui/drawpagedialog.ui:150
-msgctxt "drawpagedialog|RID_SVXPAGE_TRANSPARENCE"
-msgid "Transparency"
-msgstr "Transparenz"
-
-#: sd/uiconfig/sdraw/ui/drawparadialog.ui:8
-msgctxt "drawparadialog|DrawParagraphPropertiesDialog"
-msgid "Paragraph"
-msgstr "Paragraphe"
-
-#: sd/uiconfig/sdraw/ui/drawparadialog.ui:105
-msgctxt "drawparadialog|labelTP_PARA_STD"
-msgid "Indents & Spacing"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/drawparadialog.ui:127
-msgctxt "drawparadialog|labelTP_PARA_ASIAN"
-msgid "Asian Typography"
-msgstr "Asiatesch Typographie"
-
-#: sd/uiconfig/sdraw/ui/drawparadialog.ui:150
-msgctxt "drawparadialog|labelTP_TABULATOR"
-msgid "Tabs"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/drawparadialog.ui:173
-msgctxt "drawparadialog|labelTP_PARA_ALIGN"
-msgid "Alignment"
-msgstr "Aus~riichten"
-
-#: sd/uiconfig/sdraw/ui/drawparadialog.ui:197
-msgctxt "drawparadialog|labelNUMBERING"
-msgid "Numbering"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/drawprinteroptions.ui:32
-msgctxt "drawprinteroptions|printname"
-msgid "Page name"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/drawprinteroptions.ui:49
-#, fuzzy
-msgctxt "drawprinteroptions|printdatetime"
-msgid "Date and time"
-msgstr "~Datum an Zäit"
-
-#: sd/uiconfig/sdraw/ui/drawprinteroptions.ui:72
-msgctxt "drawprinteroptions|label4"
-msgid "Contents"
-msgstr "Inhalt"
-
-#: sd/uiconfig/sdraw/ui/drawprinteroptions.ui:105
-msgctxt "drawprinteroptions|originalcolors"
-msgid "Original size"
-msgstr "Original Gréisst"
-
-#: sd/uiconfig/sdraw/ui/drawprinteroptions.ui:124
-msgctxt "drawprinteroptions|grayscale"
-msgid "Grayscale"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/drawprinteroptions.ui:143
-msgctxt "drawprinteroptions|blackandwhite"
-msgid "Black & white"
-msgstr "Schwaarz & wäiss"
-
-#: sd/uiconfig/sdraw/ui/drawprinteroptions.ui:168
-msgctxt "drawprinteroptions|label5"
-msgid "Color"
-msgstr "Faarf"
-
-#: sd/uiconfig/sdraw/ui/drawprinteroptions.ui:201
-msgctxt "drawprinteroptions|originalsize"
-msgid "Original size"
-msgstr "Original Gréisst"
-
-#: sd/uiconfig/sdraw/ui/drawprinteroptions.ui:220
-msgctxt "drawprinteroptions|fittoprintable"
-msgid "Fit to printable page"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/drawprinteroptions.ui:239
-msgctxt "drawprinteroptions|distributeonmultiple"
-msgid "Distribute on multiple sheets of paper"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/drawprinteroptions.ui:258
-msgctxt "drawprinteroptions|tilesheet"
-msgid "Tile sheet of paper with repeated pages"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/drawprinteroptions.ui:283
-msgctxt "drawprinteroptions|label6"
-msgid "Size"
-msgstr "Gréisst"
-
-#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:8
-msgctxt "drawprtldialog|DrawPRTLDialog"
-msgid "Presentation Layout"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:105
-msgctxt "drawprtldialog|RID_SVXPAGE_LINE"
-msgid "Line"
-msgstr "Zeil "
-
-#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:127
-msgctxt "drawprtldialog|RID_SVXPAGE_AREA"
-msgid "Area"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:150
-#, fuzzy
-msgctxt "drawprtldialog|RID_SVXPAGE_SHADOW"
-msgid "Shadow"
-msgstr "Schattéiert"
-
-#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:173
-msgctxt "drawprtldialog|RID_SVXPAGE_TRANSPARENCE"
-msgid "Transparency"
-msgstr "Transparenz"
-
-#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:196
-msgctxt "drawprtldialog|RID_SVXPAGE_CHAR_NAME"
-msgid "Font"
-msgstr "Schrëft"
-
-#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:219
-msgctxt "drawprtldialog|RID_SVXPAGE_CHAR_EFFECTS"
-msgid "Font Effects"
-msgstr "Schrëfteffekter"
-
-#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:242
-msgctxt "drawprtldialog|RID_SVXPAGE_STD_PARAGRAPH"
-msgid "Indents & Spacing"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:265
-msgctxt "drawprtldialog|RID_SVXPAGE_TEXTATTR"
-msgid "Text"
-msgstr "Text"
-
-#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:288
-msgctxt "drawprtldialog|RID_SVXPAGE_PICK_BULLET"
-msgid "Bullets"
-msgstr "Fléi"
-
-#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:311
-msgctxt "drawprtldialog|RID_SVXPAGE_PICK_SINGLE_NUM"
-msgid "Numbering"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:334
-msgctxt "drawprtldialog|RID_SVXPAGE_PICK_BMP"
-msgid "Image"
-msgstr "Bild"
-
-#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:357
-msgctxt "drawprtldialog|RID_SVXPAGE_NUM_OPTIONS"
-msgid "Customize"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:380
-msgctxt "drawprtldialog|RID_SVXPAGE_ALIGN_PARAGRAPH"
-msgid "Alignment"
-msgstr "Aus~riichten"
-
-#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:403
-msgctxt "drawprtldialog|RID_SVXPAGE_PARA_ASIAN"
-msgid "Asian Typography"
-msgstr "Asiatesch Typographie"
-
-#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:426
-msgctxt "drawprtldialog|RID_SVXPAGE_TABULATOR"
-msgid "Tabs"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/drawprtldialog.ui:449
-msgctxt "drawprtldialog|RID_SVXPAGE_BACKGROUND"
-msgid "Highlighting"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/insertlayer.ui:8
-msgctxt "insertlayer|InsertLayerDialog"
-msgid "Insert Layer"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/insertlayer.ui:109
-#, fuzzy
-msgctxt "insertlayer|label4"
-msgid "_Name"
-msgstr "Numm"
-
-#: sd/uiconfig/sdraw/ui/insertlayer.ui:149
-#, fuzzy
-msgctxt "insertlayer|label5"
-msgid "_Title"
-msgstr "Titel"
-
-#: sd/uiconfig/sdraw/ui/insertlayer.ui:202
-msgctxt "insertlayer|description"
-msgid "_Description"
-msgstr "Beschreiwung"
-
-#: sd/uiconfig/sdraw/ui/insertlayer.ui:218
-#, fuzzy
-msgctxt "insertlayer|visible"
-msgid "_Visible"
-msgstr "Siichtbar"
-
-#: sd/uiconfig/sdraw/ui/insertlayer.ui:234
-msgctxt "insertlayer|printable"
-msgid "_Printable"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/insertlayer.ui:250
-msgctxt "insertlayer|locked"
-msgid "_Locked"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/insertslidesdialog.ui:9
-msgctxt "insertslidesdialog|InsertSlidesDialog"
-msgid "Insert Slides/Objects"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/insertslidesdialog.ui:83
-msgctxt "insertslidesdialog|backgrounds"
-msgid "Delete unused backg_rounds"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/insertslidesdialog.ui:98
-msgctxt "insertslidesdialog|links"
-msgid "_Link"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/namedesign.ui:8
-msgctxt "namedesign|NameDesignDialog"
-msgid "Name HTML Design"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/paranumberingtab.ui:30
-msgctxt "paranumberingtab|checkbuttonCB_NEW_START"
-msgid "R_estart at this paragraph"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/paranumberingtab.ui:59
-msgctxt "paranumberingtab|checkbuttonCB_NUMBER_NEW_START"
-msgid "S_tart with:"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/paranumberingtab.ui:84
-msgctxt "paranumberingtab|label1"
-msgid "Paragraph Numbering"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/queryunlinkimagedialog.ui:7
-msgctxt "queryunlinkimagedialog|QueryUnlinkImageDialog"
-msgid "Release image's link?"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/queryunlinkimagedialog.ui:14
-msgctxt "queryunlinkimagedialog|QueryUnlinkImageDialog"
-msgid "This image is linked to a document."
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/queryunlinkimagedialog.ui:15
-msgctxt "queryunlinkimagedialog|QueryUnlinkImageDialog"
-msgid "Do you want to unlink the image in order to edit it?"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/vectorize.ui:27
-msgctxt "vectorize|VectorizeDialog"
-msgid "Convert to Polygon"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/vectorize.ui:45
-msgctxt "vectorize|preview"
-msgid "Preview"
-msgstr "Iwwersiicht"
-
-#: sd/uiconfig/sdraw/ui/vectorize.ui:120
-msgctxt "vectorize|label2"
-msgid "Number of colors:"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/vectorize.ui:146
-msgctxt "vectorize|label3"
-msgid "Point reduction:"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/vectorize.ui:174
-msgctxt "vectorize|tilesft"
-msgid "Tile size:"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/vectorize.ui:198
-msgctxt "vectorize|fillholes"
-msgid "_Fill holes"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/vectorize.ui:231
-msgctxt "vectorize|label5"
-msgid "Source image:"
-msgstr ""
-
-#: sd/uiconfig/sdraw/ui/vectorize.ui:245
-msgctxt "vectorize|label6"
-msgid "Vectorized image:"
-msgstr ""
diff --git a/source/lb/sfx2/messages.po b/source/lb/sfx2/messages.po
index 91f296631e1..f73999bb24c 100644
--- a/source/lb/sfx2/messages.po
+++ b/source/lb/sfx2/messages.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2018-07-31 14:09+0200\n"
+"POT-Creation-Date: 2018-10-02 17:56+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -963,7 +963,7 @@ msgstr "Schrëft"
#: include/sfx2/strings.hrc:212
msgctxt "STR_PREVIEW_CHECKBOX"
-msgid "Show Previews"
+msgid "Show previews"
msgstr ""
#: include/sfx2/strings.hrc:214
@@ -1707,12 +1707,12 @@ msgctxt "alienwarndialog|cancel"
msgid "Use %DEFAULTEXTENSION _Format"
msgstr ""
-#: sfx2/uiconfig/ui/alienwarndialog.ui:41
+#: sfx2/uiconfig/ui/alienwarndialog.ui:40
msgctxt "alienwarndialog|save"
msgid "_Use %FORMATNAME Format"
msgstr ""
-#: sfx2/uiconfig/ui/alienwarndialog.ui:66
+#: sfx2/uiconfig/ui/alienwarndialog.ui:65
msgctxt "alienwarndialog|ask"
msgid "_Ask when not saving in ODF or default format"
msgstr ""
@@ -1996,28 +1996,28 @@ msgctxt "documentpropertiesdialog|DocumentPropertiesDialog"
msgid "Properties of “%1”"
msgstr ""
-#: sfx2/uiconfig/ui/documentpropertiesdialog.ui:103
+#: sfx2/uiconfig/ui/documentpropertiesdialog.ui:105
#, fuzzy
msgctxt "documentpropertiesdialog|general"
msgid "General "
msgstr "Allgemeng"
-#: sfx2/uiconfig/ui/documentpropertiesdialog.ui:125
+#: sfx2/uiconfig/ui/documentpropertiesdialog.ui:127
msgctxt "documentpropertiesdialog|description"
msgid "Description"
msgstr "Beschreiwung"
-#: sfx2/uiconfig/ui/documentpropertiesdialog.ui:148
+#: sfx2/uiconfig/ui/documentpropertiesdialog.ui:150
msgctxt "documentpropertiesdialog|customprops"
msgid "Custom Properties"
msgstr ""
-#: sfx2/uiconfig/ui/documentpropertiesdialog.ui:171
+#: sfx2/uiconfig/ui/documentpropertiesdialog.ui:173
msgctxt "documentpropertiesdialog|cmisprops"
msgid "CMIS Properties"
msgstr ""
-#: sfx2/uiconfig/ui/documentpropertiesdialog.ui:194
+#: sfx2/uiconfig/ui/documentpropertiesdialog.ui:196
#, fuzzy
msgctxt "documentpropertiesdialog|security"
msgid "Security"
@@ -2133,22 +2133,22 @@ msgctxt "helpbookmarkpage|label1"
msgid "_Bookmarks"
msgstr "Lieszeechen"
-#: sfx2/uiconfig/ui/helpcontrol.ui:49
+#: sfx2/uiconfig/ui/helpcontrol.ui:51
msgctxt "helpcontrol|contents"
msgid "Contents"
msgstr "Inhalt"
-#: sfx2/uiconfig/ui/helpcontrol.ui:71
+#: sfx2/uiconfig/ui/helpcontrol.ui:73
msgctxt "helpcontrol|index"
msgid "Index"
msgstr "Index"
-#: sfx2/uiconfig/ui/helpcontrol.ui:94
+#: sfx2/uiconfig/ui/helpcontrol.ui:96
msgctxt "helpcontrol|find"
msgid "Find"
msgstr ""
-#: sfx2/uiconfig/ui/helpcontrol.ui:117
+#: sfx2/uiconfig/ui/helpcontrol.ui:119
msgctxt "helpcontrol|bookmarks"
msgid "Bookmarks"
msgstr "Lieszeechen"
@@ -2354,32 +2354,32 @@ msgctxt "managestylepage|editlinkstyle"
msgid "Edit Style"
msgstr ""
-#: sfx2/uiconfig/ui/managestylepage.ui:198
+#: sfx2/uiconfig/ui/managestylepage.ui:151
msgctxt "managestylepage|autoupdate"
msgid "_AutoUpdate"
msgstr ""
-#: sfx2/uiconfig/ui/managestylepage.ui:231
+#: sfx2/uiconfig/ui/managestylepage.ui:198
msgctxt "managestylepage|label1"
msgid "Style"
msgstr ""
-#: sfx2/uiconfig/ui/managestylepage.ui:272
+#: sfx2/uiconfig/ui/managestylepage.ui:239
msgctxt "managestylepage|label2"
msgid "Contains"
msgstr ""
-#: sfx2/uiconfig/ui/newstyle.ui:9
+#: sfx2/uiconfig/ui/newstyle.ui:24
msgctxt "newstyle|CreateStyleDialog"
msgid "Create Style"
msgstr ""
-#: sfx2/uiconfig/ui/newstyle.ui:108
+#: sfx2/uiconfig/ui/newstyle.ui:168
msgctxt "newstyle|stylename-atkobject"
msgid "Style Name"
msgstr ""
-#: sfx2/uiconfig/ui/newstyle.ui:119
+#: sfx2/uiconfig/ui/newstyle.ui:185
msgctxt "newstyle|label1"
msgid "Style Name"
msgstr ""
@@ -2638,7 +2638,7 @@ msgctxt "saveastemplatedlg|select_label"
msgid "Template _Category"
msgstr ""
-#: sfx2/uiconfig/ui/saveastemplatedlg.ui:213
+#: sfx2/uiconfig/ui/saveastemplatedlg.ui:214
msgctxt "saveastemplatedlg|defaultcb"
msgid "_Set as default template"
msgstr ""
@@ -2859,7 +2859,7 @@ msgctxt "templatecategorydlg|select_label"
msgid "Select from Existing Category"
msgstr ""
-#: sfx2/uiconfig/ui/templatecategorydlg.ui:177
+#: sfx2/uiconfig/ui/templatecategorydlg.ui:179
msgctxt "templatecategorydlg|create_label"
msgid "or Create a New Category"
msgstr ""
diff --git a/source/lb/starmath/messages.po b/source/lb/starmath/messages.po
index 5daef94f49a..fa2055cefbe 100644
--- a/source/lb/starmath/messages.po
+++ b/source/lb/starmath/messages.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2018-05-08 15:10+0200\n"
+"POT-Creation-Date: 2018-10-02 17:56+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -2005,30 +2005,30 @@ msgctxt "dockingelements|DockingElements"
msgid "Elements"
msgstr "element"
-#: starmath/uiconfig/smath/ui/fontdialog.ui:9
+#: starmath/uiconfig/smath/ui/fontdialog.ui:25
#, fuzzy
msgctxt "fontdialog|FontDialog"
msgid "Fonts"
msgstr "Schrëften"
-#: starmath/uiconfig/smath/ui/fontdialog.ui:115
+#: starmath/uiconfig/smath/ui/fontdialog.ui:179
msgctxt "fontdialog|formulaL"
msgid "Font"
msgstr "Schrëft"
-#: starmath/uiconfig/smath/ui/fontdialog.ui:151
+#: starmath/uiconfig/smath/ui/fontdialog.ui:215
#, fuzzy
msgctxt "fontdialog|bold"
msgid "_Bold"
msgstr "Fett"
-#: starmath/uiconfig/smath/ui/fontdialog.ui:166
+#: starmath/uiconfig/smath/ui/fontdialog.ui:230
#, fuzzy
msgctxt "fontdialog|italic"
msgid "_Italic"
msgstr "Kursiv"
-#: starmath/uiconfig/smath/ui/fontdialog.ui:187
+#: starmath/uiconfig/smath/ui/fontdialog.ui:251
#, fuzzy
msgctxt "fontdialog|formulaL1"
msgid "Attributes"
@@ -2576,44 +2576,44 @@ msgctxt "symdefinedialog|EditSymbols"
msgid "Edit Symbols"
msgstr ""
-#: starmath/uiconfig/smath/ui/symdefinedialog.ui:103
+#: starmath/uiconfig/smath/ui/symdefinedialog.ui:102
msgctxt "symdefinedialog|oldSymbolSetText"
msgid "O_ld symbol set:"
msgstr ""
-#: starmath/uiconfig/smath/ui/symdefinedialog.ui:148
+#: starmath/uiconfig/smath/ui/symdefinedialog.ui:147
msgctxt "symdefinedialog|oldSymbolText"
msgid "_Old symbol:"
msgstr ""
-#: starmath/uiconfig/smath/ui/symdefinedialog.ui:246
+#: starmath/uiconfig/smath/ui/symdefinedialog.ui:245
#, fuzzy
msgctxt "symdefinedialog|modify"
msgid "_Modify"
msgstr "Veränneren"
-#: starmath/uiconfig/smath/ui/symdefinedialog.ui:301
+#: starmath/uiconfig/smath/ui/symdefinedialog.ui:300
#, fuzzy
msgctxt "symdefinedialog|symbolText"
msgid "_Symbol:"
msgstr "Symboler"
-#: starmath/uiconfig/smath/ui/symdefinedialog.ui:315
+#: starmath/uiconfig/smath/ui/symdefinedialog.ui:314
msgctxt "symdefinedialog|symbolSetText"
msgid "Symbol s_et:"
msgstr ""
-#: starmath/uiconfig/smath/ui/symdefinedialog.ui:329
+#: starmath/uiconfig/smath/ui/symdefinedialog.ui:328
msgctxt "symdefinedialog|fontText"
msgid "_Font:"
msgstr ""
-#: starmath/uiconfig/smath/ui/symdefinedialog.ui:343
+#: starmath/uiconfig/smath/ui/symdefinedialog.ui:342
msgctxt "symdefinedialog|styleText"
msgid "S_tyle:"
msgstr ""
-#: starmath/uiconfig/smath/ui/symdefinedialog.ui:357
+#: starmath/uiconfig/smath/ui/symdefinedialog.ui:356
msgctxt "symdefinedialog|fontsSubsetFT"
msgid "S_ubset:"
msgstr ""
diff --git a/source/lb/svtools/messages.po b/source/lb/svtools/messages.po
index 366de50cf38..816b56e02b5 100644
--- a/source/lb/svtools/messages.po
+++ b/source/lb/svtools/messages.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2018-07-02 00:13+0200\n"
+"POT-Creation-Date: 2018-09-20 19:03+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -13,6 +13,101 @@ msgstr ""
"X-Accelerator-Marker: ~\n"
"X-Generator: LibreOffice\n"
+#: svtools/inc/borderline.hrc:18
+msgctxt "RID_SVXSTR_BORDERLINE"
+msgid "None"
+msgstr ""
+
+#: svtools/inc/borderline.hrc:19
+msgctxt "RID_SVXSTR_BORDERLINE"
+msgid "Solid"
+msgstr ""
+
+#: svtools/inc/borderline.hrc:20
+msgctxt "RID_SVXSTR_BORDERLINE"
+msgid "Dotted"
+msgstr ""
+
+#: svtools/inc/borderline.hrc:21
+msgctxt "RID_SVXSTR_BORDERLINE"
+msgid "Dashed"
+msgstr ""
+
+#: svtools/inc/borderline.hrc:22
+msgctxt "RID_SVXSTR_BORDERLINE"
+msgid "Double"
+msgstr ""
+
+#: svtools/inc/borderline.hrc:23
+msgctxt "RID_SVXSTR_BORDERLINE"
+msgid "Thin Thick, Small Gap"
+msgstr ""
+
+#: svtools/inc/borderline.hrc:24
+msgctxt "RID_SVXSTR_BORDERLINE"
+msgid "Thin Thick, Medium Gap"
+msgstr ""
+
+#: svtools/inc/borderline.hrc:25
+msgctxt "RID_SVXSTR_BORDERLINE"
+msgid "Thin Thick, Large Gap"
+msgstr ""
+
+#: svtools/inc/borderline.hrc:26
+msgctxt "RID_SVXSTR_BORDERLINE"
+msgid "Thick Thin, Small Gap"
+msgstr ""
+
+#: svtools/inc/borderline.hrc:27
+msgctxt "RID_SVXSTR_BORDERLINE"
+msgid "Thick Thin, Medium Gap"
+msgstr ""
+
+#: svtools/inc/borderline.hrc:28
+msgctxt "RID_SVXSTR_BORDERLINE"
+msgid "Thick Thin, Large Gap"
+msgstr ""
+
+#: svtools/inc/borderline.hrc:29
+msgctxt "RID_SVXSTR_BORDERLINE"
+msgid "Embossed"
+msgstr ""
+
+#: svtools/inc/borderline.hrc:30
+msgctxt "RID_SVXSTR_BORDERLINE"
+msgid "Engraved"
+msgstr ""
+
+#: svtools/inc/borderline.hrc:31
+msgctxt "RID_SVXSTR_BORDERLINE"
+msgid "Outset"
+msgstr ""
+
+#: svtools/inc/borderline.hrc:32
+msgctxt "RID_SVXSTR_BORDERLINE"
+msgid "Inset"
+msgstr ""
+
+#: svtools/inc/borderline.hrc:33
+msgctxt "RID_SVXSTR_BORDERLINE"
+msgid "Fine Dashed"
+msgstr ""
+
+#: svtools/inc/borderline.hrc:34
+msgctxt "RID_SVXSTR_BORDERLINE"
+msgid "Double Thin"
+msgstr ""
+
+#: svtools/inc/borderline.hrc:35
+msgctxt "RID_SVXSTR_BORDERLINE"
+msgid "Dash Dot"
+msgstr ""
+
+#: svtools/inc/borderline.hrc:36
+msgctxt "RID_SVXSTR_BORDERLINE"
+msgid "Dash Dot Dot"
+msgstr ""
+
#: svtools/inc/errtxt.hrc:30
msgctxt "RID_ERRCTX"
msgid "Error"
@@ -1196,1302 +1291,1307 @@ msgstr ""
#: svtools/inc/langtab.hrc:161
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
-msgid "Sindhi"
-msgstr "Sindhi"
+msgid "Sindhi, Devanagari"
+msgstr ""
#: svtools/inc/langtab.hrc:162
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
+msgid "Sindhi, Arabic"
+msgstr ""
+
+#: svtools/inc/langtab.hrc:163
+msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Slovak"
msgstr "Slowakesch"
-#: svtools/inc/langtab.hrc:163
+#: svtools/inc/langtab.hrc:164
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Slovenian"
msgstr "Slovenesch"
-#: svtools/inc/langtab.hrc:164
+#: svtools/inc/langtab.hrc:165
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Spanish (Spain)"
msgstr "Spuenesch (Spuenien)"
-#: svtools/inc/langtab.hrc:165
+#: svtools/inc/langtab.hrc:166
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Spanish (Mexico)"
msgstr ""
-#: svtools/inc/langtab.hrc:166
+#: svtools/inc/langtab.hrc:167
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Spanish (Guatemala)"
msgstr ""
-#: svtools/inc/langtab.hrc:167
+#: svtools/inc/langtab.hrc:168
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Spanish (Costa Rica)"
msgstr ""
-#: svtools/inc/langtab.hrc:168
+#: svtools/inc/langtab.hrc:169
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Spanish (Panama)"
msgstr ""
-#: svtools/inc/langtab.hrc:169
+#: svtools/inc/langtab.hrc:170
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Spanish (Dom. Rep.)"
msgstr ""
-#: svtools/inc/langtab.hrc:170
+#: svtools/inc/langtab.hrc:171
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Spanish (Venezuela)"
msgstr ""
-#: svtools/inc/langtab.hrc:171
+#: svtools/inc/langtab.hrc:172
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Spanish (Colombia)"
msgstr ""
-#: svtools/inc/langtab.hrc:172
+#: svtools/inc/langtab.hrc:173
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Spanish (Peru)"
msgstr ""
-#: svtools/inc/langtab.hrc:173
+#: svtools/inc/langtab.hrc:174
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Spanish (Argentina)"
msgstr ""
-#: svtools/inc/langtab.hrc:174
+#: svtools/inc/langtab.hrc:175
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Spanish (Ecuador)"
msgstr ""
-#: svtools/inc/langtab.hrc:175
+#: svtools/inc/langtab.hrc:176
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Spanish (Chile)"
msgstr ""
-#: svtools/inc/langtab.hrc:176
+#: svtools/inc/langtab.hrc:177
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Spanish (Uruguay)"
msgstr ""
-#: svtools/inc/langtab.hrc:177
+#: svtools/inc/langtab.hrc:178
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Spanish (Paraguay)"
msgstr ""
-#: svtools/inc/langtab.hrc:178
+#: svtools/inc/langtab.hrc:179
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Spanish (Bolivia)"
msgstr ""
-#: svtools/inc/langtab.hrc:179
+#: svtools/inc/langtab.hrc:180
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Spanish (El Salvador)"
msgstr ""
-#: svtools/inc/langtab.hrc:180
+#: svtools/inc/langtab.hrc:181
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Spanish (Honduras)"
msgstr ""
-#: svtools/inc/langtab.hrc:181
+#: svtools/inc/langtab.hrc:182
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Spanish (Nicaragua)"
msgstr ""
-#: svtools/inc/langtab.hrc:182
+#: svtools/inc/langtab.hrc:183
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Spanish (Puerto Rico)"
msgstr ""
-#: svtools/inc/langtab.hrc:183
+#: svtools/inc/langtab.hrc:184
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Swahili (Kenya)"
msgstr ""
-#: svtools/inc/langtab.hrc:184
+#: svtools/inc/langtab.hrc:185
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Swedish (Sweden)"
msgstr "Schwedesch (Schweden)"
-#: svtools/inc/langtab.hrc:185
+#: svtools/inc/langtab.hrc:186
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Swedish (Finland)"
msgstr ""
-#: svtools/inc/langtab.hrc:186
+#: svtools/inc/langtab.hrc:187
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Tajik"
msgstr "Tajik"
-#: svtools/inc/langtab.hrc:187
+#: svtools/inc/langtab.hrc:188
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Tamil"
msgstr "Tamil"
-#: svtools/inc/langtab.hrc:188
+#: svtools/inc/langtab.hrc:189
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Tatar"
msgstr "Tatar"
-#: svtools/inc/langtab.hrc:189
+#: svtools/inc/langtab.hrc:190
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Telugu"
msgstr "Telugu"
-#: svtools/inc/langtab.hrc:190
+#: svtools/inc/langtab.hrc:191
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Thai"
msgstr "Thai"
-#: svtools/inc/langtab.hrc:191
+#: svtools/inc/langtab.hrc:192
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Turkish"
msgstr "Türkesch"
-#: svtools/inc/langtab.hrc:192
+#: svtools/inc/langtab.hrc:193
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Urdu (Pakistan)"
msgstr ""
-#: svtools/inc/langtab.hrc:193
+#: svtools/inc/langtab.hrc:194
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Urdu (India)"
msgstr ""
-#: svtools/inc/langtab.hrc:194
+#: svtools/inc/langtab.hrc:195
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Ukrainian"
msgstr "Ukrainesch"
-#: svtools/inc/langtab.hrc:195
+#: svtools/inc/langtab.hrc:196
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Uzbek Latin"
msgstr ""
-#: svtools/inc/langtab.hrc:196
+#: svtools/inc/langtab.hrc:197
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Uzbek Cyrillic"
msgstr ""
-#: svtools/inc/langtab.hrc:197
+#: svtools/inc/langtab.hrc:198
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Welsh"
msgstr "Walisesch"
-#: svtools/inc/langtab.hrc:198
+#: svtools/inc/langtab.hrc:199
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Latin"
msgstr ""
-#: svtools/inc/langtab.hrc:199
+#: svtools/inc/langtab.hrc:200
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Esperanto"
msgstr "Esperanto"
-#: svtools/inc/langtab.hrc:200
+#: svtools/inc/langtab.hrc:201
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Kinyarwanda (Rwanda)"
msgstr ""
-#: svtools/inc/langtab.hrc:201
+#: svtools/inc/langtab.hrc:202
#, fuzzy
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Maori"
msgstr "Méi"
-#: svtools/inc/langtab.hrc:202
+#: svtools/inc/langtab.hrc:203
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Galician"
msgstr "Galizesch"
-#: svtools/inc/langtab.hrc:203
+#: svtools/inc/langtab.hrc:204
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Dhivehi"
msgstr ""
-#: svtools/inc/langtab.hrc:204
+#: svtools/inc/langtab.hrc:205
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Northern Sotho"
msgstr "Nördliches Sotho"
-#: svtools/inc/langtab.hrc:205
+#: svtools/inc/langtab.hrc:206
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Gaelic (Scotland)"
msgstr ""
-#: svtools/inc/langtab.hrc:206
+#: svtools/inc/langtab.hrc:207
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Mongolian Cyrillic"
msgstr ""
-#: svtools/inc/langtab.hrc:207
+#: svtools/inc/langtab.hrc:208
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Mongolian Mongolian"
msgstr ""
-#: svtools/inc/langtab.hrc:208
+#: svtools/inc/langtab.hrc:209
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Interlingua"
msgstr ""
-#: svtools/inc/langtab.hrc:209
+#: svtools/inc/langtab.hrc:210
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Bosnian"
msgstr "Bosnesch"
-#: svtools/inc/langtab.hrc:210
+#: svtools/inc/langtab.hrc:211
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Bengali (Bangladesh)"
msgstr "Bengalesch (Bangladesch)"
-#: svtools/inc/langtab.hrc:211
+#: svtools/inc/langtab.hrc:212
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Occitan"
msgstr "Okzitanesch"
-#: svtools/inc/langtab.hrc:212
+#: svtools/inc/langtab.hrc:213
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Khmer"
msgstr "Khmer"
-#: svtools/inc/langtab.hrc:213
+#: svtools/inc/langtab.hrc:214
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Kurdish, Northern (Turkey)"
msgstr ""
-#: svtools/inc/langtab.hrc:214
+#: svtools/inc/langtab.hrc:215
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Kurdish, Northern (Syria)"
msgstr ""
-#: svtools/inc/langtab.hrc:215
+#: svtools/inc/langtab.hrc:216
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Kurdish, Central (Iraq)"
msgstr ""
-#: svtools/inc/langtab.hrc:216
+#: svtools/inc/langtab.hrc:217
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Kurdish, Central (Iran)"
msgstr ""
-#: svtools/inc/langtab.hrc:217
+#: svtools/inc/langtab.hrc:218
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Kurdish, Southern (Iran)"
msgstr ""
-#: svtools/inc/langtab.hrc:218
+#: svtools/inc/langtab.hrc:219
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Kurdish, Southern (Iraq)"
msgstr ""
-#: svtools/inc/langtab.hrc:219
+#: svtools/inc/langtab.hrc:220
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Sardinian"
msgstr ""
-#: svtools/inc/langtab.hrc:220
+#: svtools/inc/langtab.hrc:221
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Dzongkha"
msgstr "Dzongkha"
-#: svtools/inc/langtab.hrc:221
+#: svtools/inc/langtab.hrc:222
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Swahili (Tanzania)"
msgstr ""
-#: svtools/inc/langtab.hrc:222
+#: svtools/inc/langtab.hrc:223
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Lao"
msgstr "Laotesch"
-#: svtools/inc/langtab.hrc:223
+#: svtools/inc/langtab.hrc:224
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Irish"
msgstr "Iresch"
-#: svtools/inc/langtab.hrc:224
+#: svtools/inc/langtab.hrc:225
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Tibetan (PR China)"
msgstr ""
-#: svtools/inc/langtab.hrc:225
+#: svtools/inc/langtab.hrc:226
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Georgian"
msgstr "Georgesch"
-#: svtools/inc/langtab.hrc:226
+#: svtools/inc/langtab.hrc:227
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Frisian"
msgstr ""
-#: svtools/inc/langtab.hrc:227
+#: svtools/inc/langtab.hrc:228
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Tswana (South Africa)"
msgstr ""
-#: svtools/inc/langtab.hrc:228
+#: svtools/inc/langtab.hrc:229
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Zulu"
msgstr "Zulu"
-#: svtools/inc/langtab.hrc:229
+#: svtools/inc/langtab.hrc:230
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Vietnamese"
msgstr "Vietnamesesch"
-#: svtools/inc/langtab.hrc:230
+#: svtools/inc/langtab.hrc:231
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Breton"
msgstr "Bretonesch"
-#: svtools/inc/langtab.hrc:231
+#: svtools/inc/langtab.hrc:232
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Kalaallisut"
msgstr ""
-#: svtools/inc/langtab.hrc:232
+#: svtools/inc/langtab.hrc:233
#, fuzzy
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Ndebele, South"
msgstr "Süd-Ndebele"
-#: svtools/inc/langtab.hrc:233
+#: svtools/inc/langtab.hrc:234
#, fuzzy
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Southern Sotho"
msgstr "Nördliches Sotho"
-#: svtools/inc/langtab.hrc:234
+#: svtools/inc/langtab.hrc:235
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Swazi"
msgstr "Swazi"
-#: svtools/inc/langtab.hrc:235
+#: svtools/inc/langtab.hrc:236
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Tsonga"
msgstr "Tsonga"
-#: svtools/inc/langtab.hrc:236
+#: svtools/inc/langtab.hrc:237
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Venda"
msgstr "Venda"
-#: svtools/inc/langtab.hrc:237
+#: svtools/inc/langtab.hrc:238
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Tswana (Botswana)"
msgstr ""
-#: svtools/inc/langtab.hrc:238
+#: svtools/inc/langtab.hrc:239
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Xhosa"
msgstr "Xhosa"
-#: svtools/inc/langtab.hrc:239
+#: svtools/inc/langtab.hrc:240
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Sinhala"
msgstr "Singhalesesch"
-#: svtools/inc/langtab.hrc:240
+#: svtools/inc/langtab.hrc:241
#, fuzzy
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Moore"
msgstr "Méi"
-#: svtools/inc/langtab.hrc:241
+#: svtools/inc/langtab.hrc:242
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Bambara"
msgstr ""
-#: svtools/inc/langtab.hrc:242
+#: svtools/inc/langtab.hrc:243
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Akan"
msgstr ""
-#: svtools/inc/langtab.hrc:243
+#: svtools/inc/langtab.hrc:244
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Luxembourgish"
msgstr ""
-#: svtools/inc/langtab.hrc:244
+#: svtools/inc/langtab.hrc:245
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Friulian"
msgstr ""
-#: svtools/inc/langtab.hrc:245
+#: svtools/inc/langtab.hrc:246
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Fijian"
msgstr ""
-#: svtools/inc/langtab.hrc:246
+#: svtools/inc/langtab.hrc:247
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Afrikaans (Namibia)"
msgstr ""
-#: svtools/inc/langtab.hrc:247
+#: svtools/inc/langtab.hrc:248
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "English (Namibia)"
msgstr ""
-#: svtools/inc/langtab.hrc:248
+#: svtools/inc/langtab.hrc:249
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Walloon"
msgstr ""
-#: svtools/inc/langtab.hrc:249
+#: svtools/inc/langtab.hrc:250
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Coptic"
msgstr ""
-#: svtools/inc/langtab.hrc:250
+#: svtools/inc/langtab.hrc:251
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Tigrigna (Eritrea)"
msgstr ""
-#: svtools/inc/langtab.hrc:251
+#: svtools/inc/langtab.hrc:252
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Tigrigna (Ethiopia)"
msgstr ""
-#: svtools/inc/langtab.hrc:252
+#: svtools/inc/langtab.hrc:253
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Amharic"
msgstr ""
-#: svtools/inc/langtab.hrc:253
+#: svtools/inc/langtab.hrc:254
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Kirghiz"
msgstr ""
-#: svtools/inc/langtab.hrc:254
+#: svtools/inc/langtab.hrc:255
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "German (Belgium)"
msgstr ""
-#: svtools/inc/langtab.hrc:255
+#: svtools/inc/langtab.hrc:256
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Chuvash"
msgstr ""
-#: svtools/inc/langtab.hrc:256
+#: svtools/inc/langtab.hrc:257
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Burmese"
msgstr "Burmesesch"
-#: svtools/inc/langtab.hrc:257
+#: svtools/inc/langtab.hrc:258
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Hausa (Nigeria)"
msgstr ""
-#: svtools/inc/langtab.hrc:258
+#: svtools/inc/langtab.hrc:259
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Hausa (Ghana)"
msgstr ""
-#: svtools/inc/langtab.hrc:259
+#: svtools/inc/langtab.hrc:260
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Éwé"
msgstr ""
-#: svtools/inc/langtab.hrc:260
+#: svtools/inc/langtab.hrc:261
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "English (Ghana)"
msgstr ""
-#: svtools/inc/langtab.hrc:261
+#: svtools/inc/langtab.hrc:262
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Sango"
msgstr ""
-#: svtools/inc/langtab.hrc:262
+#: svtools/inc/langtab.hrc:263
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Tagalog"
msgstr "Tagalog"
-#: svtools/inc/langtab.hrc:263
+#: svtools/inc/langtab.hrc:264
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Ganda"
msgstr ""
-#: svtools/inc/langtab.hrc:264
+#: svtools/inc/langtab.hrc:265
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Lingala"
msgstr ""
-#: svtools/inc/langtab.hrc:265
+#: svtools/inc/langtab.hrc:266
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Low German"
msgstr ""
-#: svtools/inc/langtab.hrc:266
+#: svtools/inc/langtab.hrc:267
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Hiligaynon"
msgstr ""
-#: svtools/inc/langtab.hrc:267
+#: svtools/inc/langtab.hrc:268
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Nyanja"
msgstr ""
-#: svtools/inc/langtab.hrc:268
+#: svtools/inc/langtab.hrc:269
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Kashubian"
msgstr ""
-#: svtools/inc/langtab.hrc:269
+#: svtools/inc/langtab.hrc:270
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Spanish (Cuba)"
msgstr ""
-#: svtools/inc/langtab.hrc:270
+#: svtools/inc/langtab.hrc:271
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Tetun (Indonesia)"
msgstr ""
-#: svtools/inc/langtab.hrc:271
+#: svtools/inc/langtab.hrc:272
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Quechua (Bolivia, North)"
msgstr ""
-#: svtools/inc/langtab.hrc:272
+#: svtools/inc/langtab.hrc:273
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Quechua (Bolivia, South)"
msgstr ""
-#: svtools/inc/langtab.hrc:273
+#: svtools/inc/langtab.hrc:274
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Somali"
msgstr ""
-#: svtools/inc/langtab.hrc:274
+#: svtools/inc/langtab.hrc:275
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Sami, Inari (Finland)"
msgstr ""
-#: svtools/inc/langtab.hrc:275
+#: svtools/inc/langtab.hrc:276
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Sami, Lule (Norway)"
msgstr ""
-#: svtools/inc/langtab.hrc:276
+#: svtools/inc/langtab.hrc:277
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Sami, Lule (Sweden)"
msgstr ""
-#: svtools/inc/langtab.hrc:277
+#: svtools/inc/langtab.hrc:278
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Sami, Northern (Finland)"
msgstr ""
-#: svtools/inc/langtab.hrc:278
+#: svtools/inc/langtab.hrc:279
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Sami, Northern (Norway)"
msgstr ""
-#: svtools/inc/langtab.hrc:279
+#: svtools/inc/langtab.hrc:280
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Sami, Northern (Sweden)"
msgstr ""
-#: svtools/inc/langtab.hrc:280
+#: svtools/inc/langtab.hrc:281
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Sami, Skolt (Finland)"
msgstr ""
-#: svtools/inc/langtab.hrc:281
+#: svtools/inc/langtab.hrc:282
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Sami, Southern (Norway)"
msgstr ""
-#: svtools/inc/langtab.hrc:282
+#: svtools/inc/langtab.hrc:283
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Sami, Southern (Sweden)"
msgstr ""
-#: svtools/inc/langtab.hrc:283
+#: svtools/inc/langtab.hrc:284
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Sami, Kildin (Russia)"
msgstr ""
-#: svtools/inc/langtab.hrc:284
+#: svtools/inc/langtab.hrc:285
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Guarani (Paraguay)"
msgstr ""
-#: svtools/inc/langtab.hrc:285
+#: svtools/inc/langtab.hrc:286
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Bodo"
msgstr "Bodo"
-#: svtools/inc/langtab.hrc:286
+#: svtools/inc/langtab.hrc:287
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Dogri"
msgstr "Dogri"
-#: svtools/inc/langtab.hrc:287
+#: svtools/inc/langtab.hrc:288
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Maithili"
msgstr "Maithili"
-#: svtools/inc/langtab.hrc:288
+#: svtools/inc/langtab.hrc:289
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Santali"
msgstr "Santali"
-#: svtools/inc/langtab.hrc:289
+#: svtools/inc/langtab.hrc:290
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Tetun (Timor-Leste)"
msgstr ""
-#: svtools/inc/langtab.hrc:290
+#: svtools/inc/langtab.hrc:291
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Turkmen"
msgstr ""
-#: svtools/inc/langtab.hrc:291
+#: svtools/inc/langtab.hrc:292
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Maltese"
msgstr "Maltesesch"
-#: svtools/inc/langtab.hrc:292
+#: svtools/inc/langtab.hrc:293
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Tok Pisin"
msgstr ""
-#: svtools/inc/langtab.hrc:293
+#: svtools/inc/langtab.hrc:294
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Shuswap"
msgstr ""
-#: svtools/inc/langtab.hrc:294
+#: svtools/inc/langtab.hrc:295
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Oromo"
msgstr "Oromo"
-#: svtools/inc/langtab.hrc:295
+#: svtools/inc/langtab.hrc:296
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Greek, Ancient"
msgstr ""
-#: svtools/inc/langtab.hrc:296
+#: svtools/inc/langtab.hrc:297
#, fuzzy
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Yiddish (Israel)"
msgstr "Jiddesch"
-#: svtools/inc/langtab.hrc:297
+#: svtools/inc/langtab.hrc:298
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Quechua (Ecuador)"
msgstr ""
-#: svtools/inc/langtab.hrc:298
+#: svtools/inc/langtab.hrc:299
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Uyghur"
msgstr "Uiguresch"
-#: svtools/inc/langtab.hrc:299
+#: svtools/inc/langtab.hrc:300
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Asturian"
msgstr "Asturesch"
-#: svtools/inc/langtab.hrc:300
+#: svtools/inc/langtab.hrc:301
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Sorbian, Upper"
msgstr ""
-#: svtools/inc/langtab.hrc:301
+#: svtools/inc/langtab.hrc:302
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Sorbian, Lower"
msgstr ""
-#: svtools/inc/langtab.hrc:302
+#: svtools/inc/langtab.hrc:303
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Latgalian"
msgstr ""
-#: svtools/inc/langtab.hrc:303
+#: svtools/inc/langtab.hrc:304
#, fuzzy
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Maore"
msgstr "Méi"
-#: svtools/inc/langtab.hrc:304
+#: svtools/inc/langtab.hrc:305
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Bushi"
msgstr ""
-#: svtools/inc/langtab.hrc:305
+#: svtools/inc/langtab.hrc:306
#, fuzzy
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Tahitian"
msgstr "Lettesch"
-#: svtools/inc/langtab.hrc:306
+#: svtools/inc/langtab.hrc:307
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Malagasy, Plateau"
msgstr ""
-#: svtools/inc/langtab.hrc:307
+#: svtools/inc/langtab.hrc:308
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Papiamentu (Netherlands Antilles)"
msgstr ""
-#: svtools/inc/langtab.hrc:308
+#: svtools/inc/langtab.hrc:309
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Papiamento (Aruba)"
msgstr ""
-#: svtools/inc/langtab.hrc:309
+#: svtools/inc/langtab.hrc:310
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Sardinian, Campidanese"
msgstr ""
-#: svtools/inc/langtab.hrc:310
+#: svtools/inc/langtab.hrc:311
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Sardinian, Gallurese"
msgstr ""
-#: svtools/inc/langtab.hrc:311
+#: svtools/inc/langtab.hrc:312
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Sardinian, Logudorese"
msgstr ""
-#: svtools/inc/langtab.hrc:312
+#: svtools/inc/langtab.hrc:313
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Sardinian, Sassarese"
msgstr ""
-#: svtools/inc/langtab.hrc:313
+#: svtools/inc/langtab.hrc:314
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Bafia"
msgstr ""
-#: svtools/inc/langtab.hrc:314
+#: svtools/inc/langtab.hrc:315
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Gikuyu"
msgstr ""
-#: svtools/inc/langtab.hrc:315
+#: svtools/inc/langtab.hrc:316
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Yoruba"
msgstr ""
-#: svtools/inc/langtab.hrc:316
+#: svtools/inc/langtab.hrc:317
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Rusyn (Ukraine)"
msgstr ""
-#: svtools/inc/langtab.hrc:317
+#: svtools/inc/langtab.hrc:318
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Rusyn (Slovakia)"
msgstr ""
-#: svtools/inc/langtab.hrc:318
+#: svtools/inc/langtab.hrc:319
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Kabyle Latin"
msgstr ""
-#: svtools/inc/langtab.hrc:319
+#: svtools/inc/langtab.hrc:320
#, fuzzy
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Yiddish (USA)"
msgstr "Jiddesch"
-#: svtools/inc/langtab.hrc:320
+#: svtools/inc/langtab.hrc:321
#, fuzzy
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Hawaiian"
msgstr "Galizesch"
-#: svtools/inc/langtab.hrc:321
+#: svtools/inc/langtab.hrc:322
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Limbu"
msgstr ""
-#: svtools/inc/langtab.hrc:322
+#: svtools/inc/langtab.hrc:323
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Lojban"
msgstr ""
-#: svtools/inc/langtab.hrc:323
+#: svtools/inc/langtab.hrc:324
#, fuzzy
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Haitian"
msgstr "Lettesch"
-#: svtools/inc/langtab.hrc:324
+#: svtools/inc/langtab.hrc:325
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Beembe"
msgstr ""
-#: svtools/inc/langtab.hrc:325
+#: svtools/inc/langtab.hrc:326
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Bekwel"
msgstr ""
-#: svtools/inc/langtab.hrc:326
+#: svtools/inc/langtab.hrc:327
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Kituba (Congo)"
msgstr ""
-#: svtools/inc/langtab.hrc:327
+#: svtools/inc/langtab.hrc:328
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Lari"
msgstr ""
-#: svtools/inc/langtab.hrc:328
+#: svtools/inc/langtab.hrc:329
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Mbochi"
msgstr ""
-#: svtools/inc/langtab.hrc:329
+#: svtools/inc/langtab.hrc:330
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Teke-Eboo"
msgstr ""
-#: svtools/inc/langtab.hrc:330
+#: svtools/inc/langtab.hrc:331
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Teke-Ibali"
msgstr ""
-#: svtools/inc/langtab.hrc:331
+#: svtools/inc/langtab.hrc:332
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Teke-Tyee"
msgstr ""
-#: svtools/inc/langtab.hrc:332
+#: svtools/inc/langtab.hrc:333
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Vili"
msgstr ""
-#: svtools/inc/langtab.hrc:333
+#: svtools/inc/langtab.hrc:334
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "KeyID"
msgstr ""
-#: svtools/inc/langtab.hrc:334
+#: svtools/inc/langtab.hrc:335
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Pali Latin"
msgstr ""
-#: svtools/inc/langtab.hrc:335
+#: svtools/inc/langtab.hrc:336
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Kyrgyz (China)"
msgstr ""
-#: svtools/inc/langtab.hrc:336
+#: svtools/inc/langtab.hrc:337
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Komi-Zyrian"
msgstr ""
-#: svtools/inc/langtab.hrc:337
+#: svtools/inc/langtab.hrc:338
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Komi-Permyak"
msgstr ""
-#: svtools/inc/langtab.hrc:338
+#: svtools/inc/langtab.hrc:339
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Pitjantjatjara"
msgstr ""
-#: svtools/inc/langtab.hrc:339
+#: svtools/inc/langtab.hrc:340
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "English (Malawi)"
msgstr ""
-#: svtools/inc/langtab.hrc:340
+#: svtools/inc/langtab.hrc:341
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Erzya"
msgstr ""
-#: svtools/inc/langtab.hrc:341
+#: svtools/inc/langtab.hrc:342
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Mari, Meadow"
msgstr ""
-#: svtools/inc/langtab.hrc:342
+#: svtools/inc/langtab.hrc:343
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Papiamento (Curaçao)"
msgstr ""
-#: svtools/inc/langtab.hrc:343
+#: svtools/inc/langtab.hrc:344
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Papiamento (Bonaire)"
msgstr ""
-#: svtools/inc/langtab.hrc:344
+#: svtools/inc/langtab.hrc:345
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Khanty"
msgstr ""
-#: svtools/inc/langtab.hrc:345
+#: svtools/inc/langtab.hrc:346
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Livonian"
msgstr ""
-#: svtools/inc/langtab.hrc:346
+#: svtools/inc/langtab.hrc:347
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Moksha"
msgstr ""
-#: svtools/inc/langtab.hrc:347
+#: svtools/inc/langtab.hrc:348
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Mari, Hill"
msgstr ""
-#: svtools/inc/langtab.hrc:348
+#: svtools/inc/langtab.hrc:349
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Nganasan"
msgstr ""
-#: svtools/inc/langtab.hrc:349
+#: svtools/inc/langtab.hrc:350
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Olonets"
msgstr ""
-#: svtools/inc/langtab.hrc:350
+#: svtools/inc/langtab.hrc:351
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Veps"
msgstr ""
-#: svtools/inc/langtab.hrc:351
+#: svtools/inc/langtab.hrc:352
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Võro"
msgstr ""
-#: svtools/inc/langtab.hrc:352
+#: svtools/inc/langtab.hrc:353
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Nenets"
msgstr ""
-#: svtools/inc/langtab.hrc:353
+#: svtools/inc/langtab.hrc:354
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Aka (Congo)"
msgstr ""
-#: svtools/inc/langtab.hrc:354
+#: svtools/inc/langtab.hrc:355
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Dibole"
msgstr ""
-#: svtools/inc/langtab.hrc:355
+#: svtools/inc/langtab.hrc:356
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Doondo"
msgstr ""
-#: svtools/inc/langtab.hrc:356
+#: svtools/inc/langtab.hrc:357
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Kaamba"
msgstr ""
-#: svtools/inc/langtab.hrc:357
+#: svtools/inc/langtab.hrc:358
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Koongo (Congo)"
msgstr ""
-#: svtools/inc/langtab.hrc:358
+#: svtools/inc/langtab.hrc:359
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Kunyi"
msgstr ""
-#: svtools/inc/langtab.hrc:359
+#: svtools/inc/langtab.hrc:360
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Ngungwel"
msgstr ""
-#: svtools/inc/langtab.hrc:360
+#: svtools/inc/langtab.hrc:361
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Njyem (Congo)"
msgstr ""
-#: svtools/inc/langtab.hrc:361
+#: svtools/inc/langtab.hrc:362
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Punu"
msgstr ""
-#: svtools/inc/langtab.hrc:362
+#: svtools/inc/langtab.hrc:363
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Suundi"
msgstr ""
-#: svtools/inc/langtab.hrc:363
+#: svtools/inc/langtab.hrc:364
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Teke-Kukuya"
msgstr ""
-#: svtools/inc/langtab.hrc:364
+#: svtools/inc/langtab.hrc:365
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Tsaangi"
msgstr ""
-#: svtools/inc/langtab.hrc:365
+#: svtools/inc/langtab.hrc:366
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Yaka"
msgstr ""
-#: svtools/inc/langtab.hrc:366
+#: svtools/inc/langtab.hrc:367
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Yombe (Congo)"
msgstr ""
-#: svtools/inc/langtab.hrc:367
+#: svtools/inc/langtab.hrc:368
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "N'ko"
msgstr ""
-#: svtools/inc/langtab.hrc:368
+#: svtools/inc/langtab.hrc:369
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Udmurt"
msgstr ""
-#: svtools/inc/langtab.hrc:369
+#: svtools/inc/langtab.hrc:370
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Tibetan (India)"
msgstr ""
-#: svtools/inc/langtab.hrc:370
+#: svtools/inc/langtab.hrc:371
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Cornish"
msgstr ""
-#: svtools/inc/langtab.hrc:371
+#: svtools/inc/langtab.hrc:372
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Sami, Pite (Sweden)"
msgstr ""
-#: svtools/inc/langtab.hrc:372
+#: svtools/inc/langtab.hrc:373
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Ngäbere"
msgstr ""
-#: svtools/inc/langtab.hrc:373
+#: svtools/inc/langtab.hrc:374
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Kumyk"
msgstr ""
-#: svtools/inc/langtab.hrc:374
+#: svtools/inc/langtab.hrc:375
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Nogai"
msgstr ""
-#: svtools/inc/langtab.hrc:375
+#: svtools/inc/langtab.hrc:376
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Karakalpak Latin"
msgstr ""
-#: svtools/inc/langtab.hrc:376
+#: svtools/inc/langtab.hrc:377
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Ladin"
msgstr ""
-#: svtools/inc/langtab.hrc:377
+#: svtools/inc/langtab.hrc:378
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "French (Burkina Faso)"
msgstr ""
-#: svtools/inc/langtab.hrc:378
+#: svtools/inc/langtab.hrc:379
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Puinave"
msgstr ""
-#: svtools/inc/langtab.hrc:379
+#: svtools/inc/langtab.hrc:380
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Maninkakan, Eastern, Latin"
msgstr ""
-#: svtools/inc/langtab.hrc:380
+#: svtools/inc/langtab.hrc:381
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Avar"
msgstr ""
-#: svtools/inc/langtab.hrc:381
+#: svtools/inc/langtab.hrc:382
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Cree, Plains, Latin"
msgstr ""
-#: svtools/inc/langtab.hrc:382
+#: svtools/inc/langtab.hrc:383
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Cree, Plains, Syllabics"
msgstr ""
-#: svtools/inc/langtab.hrc:383
+#: svtools/inc/langtab.hrc:384
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Lengo"
msgstr ""
-#: svtools/inc/langtab.hrc:384
+#: svtools/inc/langtab.hrc:385
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "French (Côte d'Ivoire)"
msgstr ""
-#: svtools/inc/langtab.hrc:385
+#: svtools/inc/langtab.hrc:386
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "French (Mali)"
msgstr ""
-#: svtools/inc/langtab.hrc:386
+#: svtools/inc/langtab.hrc:387
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "French (Senegal)"
msgstr ""
-#: svtools/inc/langtab.hrc:387
+#: svtools/inc/langtab.hrc:388
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "French (Benin)"
msgstr ""
-#: svtools/inc/langtab.hrc:388
+#: svtools/inc/langtab.hrc:389
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "French (Niger)"
msgstr ""
-#: svtools/inc/langtab.hrc:389
+#: svtools/inc/langtab.hrc:390
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "French (Togo)"
msgstr ""
-#: svtools/inc/langtab.hrc:390
+#: svtools/inc/langtab.hrc:391
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Kven Finnish"
msgstr ""
-#: svtools/inc/langtab.hrc:391
+#: svtools/inc/langtab.hrc:392
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Venetian"
msgstr ""
-#: svtools/inc/langtab.hrc:392
+#: svtools/inc/langtab.hrc:393
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "English (Gambia)"
msgstr ""
-#: svtools/inc/langtab.hrc:393
+#: svtools/inc/langtab.hrc:394
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Aranese"
msgstr ""
-#: svtools/inc/langtab.hrc:394
+#: svtools/inc/langtab.hrc:395
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Arpitan (France)"
msgstr ""
-#: svtools/inc/langtab.hrc:395
+#: svtools/inc/langtab.hrc:396
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Arpitan (Italy)"
msgstr ""
-#: svtools/inc/langtab.hrc:396
+#: svtools/inc/langtab.hrc:397
#, fuzzy
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Arpitan (Switzerland)"
msgstr "Däitsch (Schwäiz)"
-#: svtools/inc/langtab.hrc:397
+#: svtools/inc/langtab.hrc:398
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "English (Botswana)"
msgstr ""
-#: svtools/inc/langtab.hrc:398
+#: svtools/inc/langtab.hrc:399
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Interlingue Occidental"
msgstr ""
-#: svtools/inc/langtab.hrc:399
+#: svtools/inc/langtab.hrc:400
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Apatani"
msgstr ""
-#: svtools/inc/langtab.hrc:400
+#: svtools/inc/langtab.hrc:401
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "English (Mauritius)"
msgstr ""
-#: svtools/inc/langtab.hrc:401
+#: svtools/inc/langtab.hrc:402
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "French (Mauritius)"
msgstr ""
-#: svtools/inc/langtab.hrc:402
+#: svtools/inc/langtab.hrc:403
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Silesian"
msgstr ""
-#: svtools/inc/langtab.hrc:403
+#: svtools/inc/langtab.hrc:404
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Hungarian (Szekely-Hungarian Rovas)"
msgstr ""
-#: svtools/inc/langtab.hrc:404
+#: svtools/inc/langtab.hrc:405
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "English (Malaysia)"
msgstr ""
-#: svtools/inc/langtab.hrc:405
+#: svtools/inc/langtab.hrc:406
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Manchu"
msgstr ""
-#: svtools/inc/langtab.hrc:406
+#: svtools/inc/langtab.hrc:407
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Xibe"
msgstr ""
-#: svtools/inc/langtab.hrc:407
+#: svtools/inc/langtab.hrc:408
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Kituba (Democratic Republic of the Congo)"
msgstr ""
-#: svtools/inc/langtab.hrc:408
+#: svtools/inc/langtab.hrc:409
#, fuzzy
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Fon"
msgstr "Schrëft"
-#: svtools/inc/langtab.hrc:409
+#: svtools/inc/langtab.hrc:410
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Plautdietsch"
msgstr ""
-#: svtools/inc/langtab.hrc:410
+#: svtools/inc/langtab.hrc:411
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Armenian, Eastern (Russia)"
msgstr ""
-#: svtools/inc/langtab.hrc:411
+#: svtools/inc/langtab.hrc:412
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Armenian, Eastern (Iran)"
msgstr ""
-#: svtools/inc/langtab.hrc:412
+#: svtools/inc/langtab.hrc:413
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Armenian, Western (Armenia)"
msgstr ""
-#: svtools/inc/langtab.hrc:413
+#: svtools/inc/langtab.hrc:414
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Armenian, Classic (Armenia)"
msgstr ""
-#: svtools/inc/langtab.hrc:414
+#: svtools/inc/langtab.hrc:415
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Malay Arabic (Malaysia)"
msgstr ""
-#: svtools/inc/langtab.hrc:415
+#: svtools/inc/langtab.hrc:416
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Malay Arabic (Brunei Darussalam)"
msgstr ""
-#: svtools/inc/langtab.hrc:416
+#: svtools/inc/langtab.hrc:417
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Juǀ’hoan"
msgstr ""
-#: svtools/inc/langtab.hrc:417
+#: svtools/inc/langtab.hrc:418
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Naro"
msgstr ""
-#: svtools/inc/langtab.hrc:418
+#: svtools/inc/langtab.hrc:419
msgctxt "STR_ARR_SVT_LANGUAGE_TABLE"
msgid "Iloko"
msgstr ""
@@ -2804,6 +2904,11 @@ msgctxt "javadisableddialog|JavaDisabledDialog"
msgid "%PRODUCTNAME requires a Java runtime environment (JRE) to perform this task. However, use of a JRE has been disabled. Do you want to enable the use of a JRE now?"
msgstr ""
+#: svtools/uiconfig/ui/linewindow.ui:17
+msgctxt "colorwindow|none_color_button"
+msgid "None"
+msgstr ""
+
#: svtools/uiconfig/ui/placeedit.ui:18
msgctxt "placeedit|PlaceEditDialog"
msgid "File Services"
diff --git a/source/lb/svx/messages.po b/source/lb/svx/messages.po
index 49a278d137e..1f5da37adef 100644
--- a/source/lb/svx/messages.po
+++ b/source/lb/svx/messages.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2018-07-31 14:09+0200\n"
+"POT-Creation-Date: 2018-10-02 17:56+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -1262,315 +1262,6 @@ msgctxt "RID_SVXSTR_TEXTENCODING_TABLE"
msgid "Cyrillic (PT154)"
msgstr ""
-#: svx/source/dialog/page.hrc:30
-#, fuzzy
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "A6"
-msgstr "6"
-
-#: svx/source/dialog/page.hrc:31
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "A5"
-msgstr "5"
-
-#: svx/source/dialog/page.hrc:32
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "A4"
-msgstr "4"
-
-#: svx/source/dialog/page.hrc:33
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "A3"
-msgstr "3"
-
-#: svx/source/dialog/page.hrc:34
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "B6 (ISO)"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:35
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "B5 (ISO)"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:36
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "B4 (ISO)"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:37
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "Letter"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:38
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "Legal"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:39
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "Long Bond"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:40
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "Tabloid"
-msgstr "Tabell"
-
-#: svx/source/dialog/page.hrc:41
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "B6 (JIS)"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:42
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "B5 (JIS)"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:43
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "B4 (JIS)"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:44
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "16 Kai"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:45
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "32 Kai"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:46
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "Big 32 Kai"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:47
-#, fuzzy
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "User"
-msgstr "Benotzer"
-
-#: svx/source/dialog/page.hrc:48
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "DL Envelope"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:49
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "C6 Envelope"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:50
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "C6/5 Envelope"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:51
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "C5 Envelope"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:52
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "C4 Envelope"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:53
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "#6¾ Envelope"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:54
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "#7¾ (Monarch) Envelope"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:55
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "#9 Envelope"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:56
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "#10 Envelope"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:57
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "#11 Envelope"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:58
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "#12 Envelope"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:59
-msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
-msgid "Japanese Postcard"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:64
-#, fuzzy
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "A6"
-msgstr "6"
-
-#: svx/source/dialog/page.hrc:65
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "A5"
-msgstr "5"
-
-#: svx/source/dialog/page.hrc:66
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "A4"
-msgstr "4"
-
-#: svx/source/dialog/page.hrc:67
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "A3"
-msgstr "3"
-
-#: svx/source/dialog/page.hrc:68
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "A2"
-msgstr "2"
-
-#: svx/source/dialog/page.hrc:69
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "A1"
-msgstr "1"
-
-#: svx/source/dialog/page.hrc:70
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "A0"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:71
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "B6 (ISO)"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:72
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "B5 (ISO)"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:73
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "B4 (ISO)"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:74
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "Letter"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:75
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "Legal"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:76
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "Long Bond"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:77
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "Tabloid"
-msgstr "Tabell"
-
-#: svx/source/dialog/page.hrc:78
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "B6 (JIS)"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:79
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "B5 (JIS)"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:80
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "B4 (JIS)"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:81
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "16 Kai"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:82
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "32 Kai"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:83
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "Big 32 Kai"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:84
-#, fuzzy
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "User"
-msgstr "Benotzer"
-
-#: svx/source/dialog/page.hrc:85
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "DL Envelope"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:86
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "C6 Envelope"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:87
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "C6/5 Envelope"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:88
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "C5 Envelope"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:89
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "C4 Envelope"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:90
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "Dia Slide"
-msgstr "~Lëschte Slide"
-
-#: svx/source/dialog/page.hrc:91
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "Screen 4:3"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:92
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "Screen 16:9"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:93
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "Screen 16:10"
-msgstr ""
-
-#: svx/source/dialog/page.hrc:94
-msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
-msgid "Japanese Postcard"
-msgstr ""
-
#: svx/uiconfig/ui/acceptrejectchangesdialog.ui:8
msgctxt "acceptrejectchangesdialog|AcceptRejectChangesDialog"
msgid "Manage Changes"
@@ -2243,17 +1934,17 @@ msgctxt "classificationdialog|label-IntellectualProperty"
msgid "Intellectual Property"
msgstr ""
-#: svx/uiconfig/ui/colorwindow.ui:56
+#: svx/uiconfig/ui/colorwindow.ui:57
msgctxt "colorwindow|none_color_button"
msgid "None"
msgstr "Keen"
-#: svx/uiconfig/ui/colorwindow.ui:143
+#: svx/uiconfig/ui/colorwindow.ui:144
msgctxt "colorwindow|label1"
msgid "Recent"
msgstr ""
-#: svx/uiconfig/ui/colorwindow.ui:180
+#: svx/uiconfig/ui/colorwindow.ui:181
msgctxt "colorwindow|color_picker_button"
msgid "Custom Color…"
msgstr ""
@@ -2701,63 +2392,63 @@ msgctxt "datanavigator|modelsbutton"
msgid "_Models"
msgstr ""
-#: svx/uiconfig/ui/datanavigator.ui:75
+#: svx/uiconfig/ui/datanavigator.ui:77
msgctxt "datanavigator|instance"
msgid "Instance"
msgstr ""
-#: svx/uiconfig/ui/datanavigator.ui:97
+#: svx/uiconfig/ui/datanavigator.ui:99
msgctxt "datanavigator|submissions"
msgid "Submissions"
msgstr ""
-#: svx/uiconfig/ui/datanavigator.ui:120
+#: svx/uiconfig/ui/datanavigator.ui:122
#, fuzzy
msgctxt "datanavigator|bindings"
msgid "Bindings"
msgstr "Gebaier"
-#: svx/uiconfig/ui/datanavigator.ui:136
+#: svx/uiconfig/ui/datanavigator.ui:138
msgctxt "datanavigator|instances"
msgid "_Instances"
msgstr ""
-#: svx/uiconfig/ui/datanavigator.ui:164
+#: svx/uiconfig/ui/datanavigator.ui:166
#, fuzzy
msgctxt "datanavigator|instancesadd"
msgid "_Add..."
msgstr "Bäifügen..."
-#: svx/uiconfig/ui/datanavigator.ui:171
+#: svx/uiconfig/ui/datanavigator.ui:173
#, fuzzy
msgctxt "datanavigator|instancesedit"
msgid "_Edit..."
msgstr "Beaarbechten..."
-#: svx/uiconfig/ui/datanavigator.ui:178
+#: svx/uiconfig/ui/datanavigator.ui:180
msgctxt "datanavigator|instancesremove"
msgid "_Remove..."
msgstr ""
-#: svx/uiconfig/ui/datanavigator.ui:191
+#: svx/uiconfig/ui/datanavigator.ui:193
#, fuzzy
msgctxt "datanavigator|instancesdetails"
msgid "_Show Details"
msgstr "Detailer weisen"
-#: svx/uiconfig/ui/datanavigator.ui:203
+#: svx/uiconfig/ui/datanavigator.ui:205
#, fuzzy
msgctxt "datanavigator|modelsadd"
msgid "_Add..."
msgstr "Bäifügen..."
-#: svx/uiconfig/ui/datanavigator.ui:211
+#: svx/uiconfig/ui/datanavigator.ui:213
#, fuzzy
msgctxt "datanavigator|modelsedit"
msgid "_Edit..."
msgstr "Beaarbechten..."
-#: svx/uiconfig/ui/datanavigator.ui:219
+#: svx/uiconfig/ui/datanavigator.ui:221
#, fuzzy
msgctxt "datanavigator|modelsremove"
msgid "_Remove"
@@ -3652,192 +3343,192 @@ msgctxt "findreplacedialog|label4"
msgid "_Find:"
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:183
+#: svx/uiconfig/ui/findreplacedialog.ui:186
msgctxt "findreplacedialog|matchcase"
msgid "Ma_tch case"
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:199
+#: svx/uiconfig/ui/findreplacedialog.ui:202
msgctxt "findreplacedialog|searchformatted"
msgid "For_matted display"
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:219
+#: svx/uiconfig/ui/findreplacedialog.ui:222
msgctxt "findreplacedialog|wholewords"
msgid "Whole wor_ds only"
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:237
+#: svx/uiconfig/ui/findreplacedialog.ui:240
msgctxt "findreplacedialog|entirecells"
msgid "_Entire cells"
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:255
+#: svx/uiconfig/ui/findreplacedialog.ui:258
msgctxt "findreplacedialog|allsheets"
msgid "All _sheets"
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:282
+#: svx/uiconfig/ui/findreplacedialog.ui:285
msgctxt "findreplacedialog|label1"
msgid "_Search For"
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:366
+#: svx/uiconfig/ui/findreplacedialog.ui:369
#, fuzzy
msgctxt "findreplacedialog|label5"
msgid "Re_place:"
msgstr "Ersetzen"
-#: svx/uiconfig/ui/findreplacedialog.ui:399
+#: svx/uiconfig/ui/findreplacedialog.ui:402
msgctxt "findreplacedialog|label2"
msgid "Re_place With"
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:425
+#: svx/uiconfig/ui/findreplacedialog.ui:428
msgctxt "findreplacedialog|searchall"
msgid "Find _All"
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:439
+#: svx/uiconfig/ui/findreplacedialog.ui:442
msgctxt "findreplacedialog|backsearch"
msgid "Find Pre_vious"
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:453
+#: svx/uiconfig/ui/findreplacedialog.ui:456
msgctxt "findreplacedialog|search"
msgid "Find Ne_xt"
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:469
+#: svx/uiconfig/ui/findreplacedialog.ui:472
#, fuzzy
msgctxt "findreplacedialog|replace"
msgid "_Replace"
msgstr "Ersetzen"
-#: svx/uiconfig/ui/findreplacedialog.ui:483
+#: svx/uiconfig/ui/findreplacedialog.ui:486
msgctxt "findreplacedialog|replaceall"
msgid "Replace A_ll"
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:634
+#: svx/uiconfig/ui/findreplacedialog.ui:637
msgctxt "findreplacedialog|selection"
msgid "C_urrent selection only"
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:649
+#: svx/uiconfig/ui/findreplacedialog.ui:652
msgctxt "findreplacedialog|regexp"
msgid "Re_gular expressions"
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:671
+#: svx/uiconfig/ui/findreplacedialog.ui:674
msgctxt "findreplacedialog|attributes"
msgid "Attribut_es..."
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:685
+#: svx/uiconfig/ui/findreplacedialog.ui:688
msgctxt "findreplacedialog|format"
msgid "For_mat..."
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:699
+#: svx/uiconfig/ui/findreplacedialog.ui:702
msgctxt "findreplacedialog|noformat"
msgid "_No Format"
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:720
+#: svx/uiconfig/ui/findreplacedialog.ui:723
msgctxt "findreplacedialog|layout"
msgid "Search for st_yles"
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:735
+#: svx/uiconfig/ui/findreplacedialog.ui:738
msgctxt "findreplacedialog|includediacritics"
msgid "Diac_ritic-sensitive"
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:750
+#: svx/uiconfig/ui/findreplacedialog.ui:753
msgctxt "findreplacedialog|includekashida"
msgid "_Kashida-sensitive"
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:765
+#: svx/uiconfig/ui/findreplacedialog.ui:768
msgctxt "findreplacedialog|matchcharwidth"
msgid "Match character _width"
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:785
+#: svx/uiconfig/ui/findreplacedialog.ui:788
msgctxt "findreplacedialog|similarity"
msgid "S_imilarity search"
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:801
+#: svx/uiconfig/ui/findreplacedialog.ui:804
msgctxt "findreplacedialog|similaritybtn"
msgid "Similarities..."
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:828
+#: svx/uiconfig/ui/findreplacedialog.ui:831
msgctxt "findreplacedialog|soundslike"
msgid "Sounds like (_Japanese)"
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:844
+#: svx/uiconfig/ui/findreplacedialog.ui:847
msgctxt "findreplacedialog|soundslikebtn"
msgid "Sounds..."
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:870
+#: svx/uiconfig/ui/findreplacedialog.ui:873
msgctxt "findreplacedialog|wildcard"
msgid "Wil_dcards"
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:886
+#: svx/uiconfig/ui/findreplacedialog.ui:889
#, fuzzy
msgctxt "findreplacedialog|notes"
msgid "_Comments"
msgstr "Kommentaren"
-#: svx/uiconfig/ui/findreplacedialog.ui:908
+#: svx/uiconfig/ui/findreplacedialog.ui:911
msgctxt "findreplacedialog|replace_backwards"
msgid "Replace _backwards"
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:944
+#: svx/uiconfig/ui/findreplacedialog.ui:947
msgctxt "findreplacedialog|searchinlabel"
msgid "Search i_n:"
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:959
+#: svx/uiconfig/ui/findreplacedialog.ui:962
msgctxt "findreplacedialog|calcsearchin"
msgid "Formulas"
msgstr "Formellen"
-#: svx/uiconfig/ui/findreplacedialog.ui:960
+#: svx/uiconfig/ui/findreplacedialog.ui:963
msgctxt "findreplacedialog|calcsearchin"
msgid "Values"
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:961
+#: svx/uiconfig/ui/findreplacedialog.ui:964
msgctxt "findreplacedialog|calcsearchin"
msgid "Notes"
msgstr "Noten"
-#: svx/uiconfig/ui/findreplacedialog.ui:986
+#: svx/uiconfig/ui/findreplacedialog.ui:989
#, fuzzy
msgctxt "findreplacedialog|searchdir"
msgid "Direction:"
msgstr "Richtung"
-#: svx/uiconfig/ui/findreplacedialog.ui:1003
+#: svx/uiconfig/ui/findreplacedialog.ui:1006
msgctxt "findreplacedialog|rows"
msgid "Ro_ws"
msgstr ""
-#: svx/uiconfig/ui/findreplacedialog.ui:1023
+#: svx/uiconfig/ui/findreplacedialog.ui:1026
#, fuzzy
msgctxt "findreplacedialog|cols"
msgid "Colum_ns"
msgstr "Kolonn"
-#: svx/uiconfig/ui/findreplacedialog.ui:1069
+#: svx/uiconfig/ui/findreplacedialog.ui:1072
msgctxt "findreplacedialog|label3"
msgid "Other _options"
msgstr ""
@@ -4520,7 +4211,7 @@ msgctxt "linkwarndialog|cancel"
msgid "_Embed Graphic"
msgstr ""
-#: svx/uiconfig/ui/linkwarndialog.ui:67
+#: svx/uiconfig/ui/linkwarndialog.ui:66
msgctxt "linkwarndialog|ask"
msgid "_Ask when linking a graphic"
msgstr ""
@@ -4593,121 +4284,121 @@ msgctxt "oldcolorwindow|color_picker_button"
msgid "Custom Color…"
msgstr ""
-#: svx/uiconfig/ui/optgridpage.ui:63
+#: svx/uiconfig/ui/optgridpage.ui:75
msgctxt "optgridpage|usegridsnap"
msgid "_Snap to grid"
msgstr ""
-#: svx/uiconfig/ui/optgridpage.ui:78
+#: svx/uiconfig/ui/optgridpage.ui:90
msgctxt "optgridpage|gridvisible"
msgid "_Visible grid"
msgstr ""
-#: svx/uiconfig/ui/optgridpage.ui:99
+#: svx/uiconfig/ui/optgridpage.ui:111
msgctxt "optgridpage|label1"
msgid "Grid"
msgstr "Raster"
-#: svx/uiconfig/ui/optgridpage.ui:169
+#: svx/uiconfig/ui/optgridpage.ui:182
#, fuzzy
msgctxt "optgridpage|flddrawx"
msgid "H_orizontal:"
msgstr "Horizontal"
-#: svx/uiconfig/ui/optgridpage.ui:183
+#: svx/uiconfig/ui/optgridpage.ui:196
#, fuzzy
msgctxt "optgridpage|flddrawy"
msgid "_Vertical:"
msgstr "~Vertikal"
-#: svx/uiconfig/ui/optgridpage.ui:194
+#: svx/uiconfig/ui/optgridpage.ui:208
msgctxt "optgridpage|synchronize"
msgid "Synchronize a_xes"
msgstr ""
-#: svx/uiconfig/ui/optgridpage.ui:217
+#: svx/uiconfig/ui/optgridpage.ui:231
msgctxt "optgridpage|label2"
msgid "Resolution"
msgstr ""
-#: svx/uiconfig/ui/optgridpage.ui:274
+#: svx/uiconfig/ui/optgridpage.ui:288
msgctxt "optgridpage|label4"
msgid "space(s)"
msgstr ""
-#: svx/uiconfig/ui/optgridpage.ui:308
+#: svx/uiconfig/ui/optgridpage.ui:323
msgctxt "optgridpage|label5"
msgid "space(s)"
msgstr ""
-#: svx/uiconfig/ui/optgridpage.ui:326
+#: svx/uiconfig/ui/optgridpage.ui:341
#, fuzzy
msgctxt "optgridpage|divisionx"
msgid "Horizont_al:"
msgstr "Horizontal"
-#: svx/uiconfig/ui/optgridpage.ui:340
+#: svx/uiconfig/ui/optgridpage.ui:355
#, fuzzy
msgctxt "optgridpage|divisiony"
msgid "V_ertical:"
msgstr "~Vertikal"
-#: svx/uiconfig/ui/optgridpage.ui:357
+#: svx/uiconfig/ui/optgridpage.ui:373
msgctxt "optgridpage|label3"
msgid "Subdivision"
msgstr ""
-#: svx/uiconfig/ui/optgridpage.ui:402
+#: svx/uiconfig/ui/optgridpage.ui:418
msgctxt "optgridpage|snaphelplines"
msgid "To snap lines"
msgstr ""
-#: svx/uiconfig/ui/optgridpage.ui:417
+#: svx/uiconfig/ui/optgridpage.ui:433
msgctxt "optgridpage|snapborder"
msgid "To the _page margins"
msgstr ""
-#: svx/uiconfig/ui/optgridpage.ui:432
+#: svx/uiconfig/ui/optgridpage.ui:448
msgctxt "optgridpage|snapframe"
msgid "To object _frame"
msgstr ""
-#: svx/uiconfig/ui/optgridpage.ui:447
+#: svx/uiconfig/ui/optgridpage.ui:463
msgctxt "optgridpage|snappoints"
msgid "To obje_ct points"
msgstr ""
-#: svx/uiconfig/ui/optgridpage.ui:481
+#: svx/uiconfig/ui/optgridpage.ui:497
msgctxt "optgridpage|label7"
msgid "_Snap range:"
msgstr ""
-#: svx/uiconfig/ui/optgridpage.ui:504
+#: svx/uiconfig/ui/optgridpage.ui:521
msgctxt "optgridpage|label6"
msgid "Snap"
msgstr ""
-#: svx/uiconfig/ui/optgridpage.ui:538
+#: svx/uiconfig/ui/optgridpage.ui:555
msgctxt "optgridpage|ortho"
msgid "_When creating or moving objects"
msgstr ""
-#: svx/uiconfig/ui/optgridpage.ui:553
+#: svx/uiconfig/ui/optgridpage.ui:570
msgctxt "optgridpage|bigortho"
msgid "_Extend edges"
msgstr ""
-#: svx/uiconfig/ui/optgridpage.ui:589
+#: svx/uiconfig/ui/optgridpage.ui:606
msgctxt "optgridpage|rotate"
msgid "When ro_tating:"
msgstr ""
-#: svx/uiconfig/ui/optgridpage.ui:622
+#: svx/uiconfig/ui/optgridpage.ui:639
msgctxt "optgridpage|label9"
msgid "Point reducti_on:"
msgstr ""
-#: svx/uiconfig/ui/optgridpage.ui:645
+#: svx/uiconfig/ui/optgridpage.ui:663
msgctxt "optgridpage|label8"
msgid "Constrain Objects"
msgstr ""
@@ -4981,12 +4672,12 @@ msgctxt "queryunlinkgraphicsdialog|QueryUnlinkGraphicsDialog"
msgid "Do you want to unlink the graphics in order to edit it?"
msgstr ""
-#: svx/uiconfig/ui/redlinecontrol.ui:23
+#: svx/uiconfig/ui/redlinecontrol.ui:25
msgctxt "redlinecontrol|view"
msgid "List"
msgstr "Lëscht"
-#: svx/uiconfig/ui/redlinecontrol.ui:45
+#: svx/uiconfig/ui/redlinecontrol.ui:47
msgctxt "redlinecontrol|filter"
msgid "Filter"
msgstr "Filter"
@@ -6100,17 +5791,17 @@ msgctxt "textcontrolchardialog|TextControlCharacterPropertiesDialog"
msgid "Character"
msgstr "Zeechen"
-#: svx/uiconfig/ui/textcontrolchardialog.ui:106
+#: svx/uiconfig/ui/textcontrolchardialog.ui:135
msgctxt "textcontrolchardialog|font"
msgid "Font"
msgstr "Schrëft"
-#: svx/uiconfig/ui/textcontrolchardialog.ui:128
+#: svx/uiconfig/ui/textcontrolchardialog.ui:181
msgctxt "textcontrolchardialog|fonteffects"
msgid "Font Effects"
msgstr "Schrëfteffekter"
-#: svx/uiconfig/ui/textcontrolchardialog.ui:151
+#: svx/uiconfig/ui/textcontrolchardialog.ui:228
msgctxt "textcontrolchardialog|position"
msgid "Position"
msgstr "Positioun"
@@ -6120,22 +5811,22 @@ msgctxt "textcontrolparadialog|TextControlParagraphPropertiesDialog"
msgid "Paragraph"
msgstr "Paragraphe"
-#: svx/uiconfig/ui/textcontrolparadialog.ui:106
+#: svx/uiconfig/ui/textcontrolparadialog.ui:135
msgctxt "textcontrolparadialog|labelTP_PARA_STD"
msgid "Indents & Spacing"
msgstr ""
-#: svx/uiconfig/ui/textcontrolparadialog.ui:128
+#: svx/uiconfig/ui/textcontrolparadialog.ui:181
msgctxt "textcontrolparadialog|labelTP_PARA_ALIGN"
msgid "Alignment"
msgstr "Aus~riichten"
-#: svx/uiconfig/ui/textcontrolparadialog.ui:152
+#: svx/uiconfig/ui/textcontrolparadialog.ui:229
msgctxt "textcontrolparadialog|labelTP_PARA_ASIAN"
msgid "Asian Typography"
msgstr "Asiatesch Typographie"
-#: svx/uiconfig/ui/textcontrolparadialog.ui:175
+#: svx/uiconfig/ui/textcontrolparadialog.ui:276
msgctxt "textcontrolparadialog|labelTP_TABULATOR"
msgid "Tabs"
msgstr ""
@@ -6274,6 +5965,315 @@ msgctxt "zoommenu|200"
msgid "200%"
msgstr "200%"
+#: svx/source/dialog/page.hrc:30
+#, fuzzy
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "A6"
+msgstr "6"
+
+#: svx/source/dialog/page.hrc:31
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "A5"
+msgstr "5"
+
+#: svx/source/dialog/page.hrc:32
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "A4"
+msgstr "4"
+
+#: svx/source/dialog/page.hrc:33
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "A3"
+msgstr "3"
+
+#: svx/source/dialog/page.hrc:34
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "B6 (ISO)"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:35
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "B5 (ISO)"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:36
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "B4 (ISO)"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:37
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "Letter"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:38
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "Legal"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:39
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "Long Bond"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:40
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "Tabloid"
+msgstr "Tabell"
+
+#: svx/source/dialog/page.hrc:41
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "B6 (JIS)"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:42
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "B5 (JIS)"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:43
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "B4 (JIS)"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:44
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "16 Kai"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:45
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "32 Kai"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:46
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "Big 32 Kai"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:47
+#, fuzzy
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "User"
+msgstr "Benotzer"
+
+#: svx/source/dialog/page.hrc:48
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "DL Envelope"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:49
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "C6 Envelope"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:50
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "C6/5 Envelope"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:51
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "C5 Envelope"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:52
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "C4 Envelope"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:53
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "#6¾ Envelope"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:54
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "#7¾ (Monarch) Envelope"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:55
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "#9 Envelope"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:56
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "#10 Envelope"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:57
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "#11 Envelope"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:58
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "#12 Envelope"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:59
+msgctxt "RID_SVXSTRARY_PAPERSIZE_STD"
+msgid "Japanese Postcard"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:64
+#, fuzzy
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "A6"
+msgstr "6"
+
+#: svx/source/dialog/page.hrc:65
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "A5"
+msgstr "5"
+
+#: svx/source/dialog/page.hrc:66
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "A4"
+msgstr "4"
+
+#: svx/source/dialog/page.hrc:67
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "A3"
+msgstr "3"
+
+#: svx/source/dialog/page.hrc:68
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "A2"
+msgstr "2"
+
+#: svx/source/dialog/page.hrc:69
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "A1"
+msgstr "1"
+
+#: svx/source/dialog/page.hrc:70
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "A0"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:71
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "B6 (ISO)"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:72
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "B5 (ISO)"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:73
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "B4 (ISO)"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:74
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "Letter"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:75
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "Legal"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:76
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "Long Bond"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:77
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "Tabloid"
+msgstr "Tabell"
+
+#: svx/source/dialog/page.hrc:78
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "B6 (JIS)"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:79
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "B5 (JIS)"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:80
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "B4 (JIS)"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:81
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "16 Kai"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:82
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "32 Kai"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:83
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "Big 32 Kai"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:84
+#, fuzzy
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "User"
+msgstr "Benotzer"
+
+#: svx/source/dialog/page.hrc:85
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "DL Envelope"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:86
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "C6 Envelope"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:87
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "C6/5 Envelope"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:88
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "C5 Envelope"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:89
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "C4 Envelope"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:90
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "Dia Slide"
+msgstr "~Lëschte Slide"
+
+#: svx/source/dialog/page.hrc:91
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "Screen 4:3"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:92
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "Screen 16:9"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:93
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "Screen 16:10"
+msgstr ""
+
+#: svx/source/dialog/page.hrc:94
+msgctxt "RID_SVXSTRARY_PAPERSIZE_DRAW"
+msgid "Japanese Postcard"
+msgstr ""
+
#: include/svx/strings.hrc:25
#, fuzzy
msgctxt "STR_ObjNameSingulNONE"
diff --git a/source/lb/sw/messages.po b/source/lb/sw/messages.po
index f7c9efcd3f0..28575cf6ba1 100644
--- a/source/lb/sw/messages.po
+++ b/source/lb/sw/messages.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2018-07-31 14:11+0200\n"
+"POT-Creation-Date: 2018-10-02 17:57+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -7337,33 +7337,33 @@ msgctxt "bulletsandnumbering|reset"
msgid "Reset"
msgstr "~Reinitialiséieren"
-#: sw/uiconfig/swriter/ui/bulletsandnumbering.ui:120
+#: sw/uiconfig/swriter/ui/bulletsandnumbering.ui:122
msgctxt "bulletsandnumbering|bullets"
msgid "Bullets"
msgstr "Fléi"
-#: sw/uiconfig/swriter/ui/bulletsandnumbering.ui:142
+#: sw/uiconfig/swriter/ui/bulletsandnumbering.ui:144
msgctxt "bulletsandnumbering|singlenum"
msgid "Numbering"
msgstr ""
-#: sw/uiconfig/swriter/ui/bulletsandnumbering.ui:165
+#: sw/uiconfig/swriter/ui/bulletsandnumbering.ui:167
#, fuzzy
msgctxt "bulletsandnumbering|outlinenum"
msgid "Outline"
msgstr "Konturen"
-#: sw/uiconfig/swriter/ui/bulletsandnumbering.ui:188
+#: sw/uiconfig/swriter/ui/bulletsandnumbering.ui:190
msgctxt "bulletsandnumbering|graphics"
msgid "Image"
msgstr "Bild"
-#: sw/uiconfig/swriter/ui/bulletsandnumbering.ui:211
+#: sw/uiconfig/swriter/ui/bulletsandnumbering.ui:213
msgctxt "bulletsandnumbering|position"
msgid "Position"
msgstr "Positioun"
-#: sw/uiconfig/swriter/ui/bulletsandnumbering.ui:234
+#: sw/uiconfig/swriter/ui/bulletsandnumbering.ui:236
msgctxt "bulletsandnumbering|customize"
msgid "Customize"
msgstr ""
@@ -7657,91 +7657,91 @@ msgctxt "characterproperties|CharacterPropertiesDialog"
msgid "Character"
msgstr "Zeechen"
-#: sw/uiconfig/swriter/ui/characterproperties.ui:106
+#: sw/uiconfig/swriter/ui/characterproperties.ui:136
msgctxt "characterproperties|font"
msgid "Font"
msgstr "Schrëft"
-#: sw/uiconfig/swriter/ui/characterproperties.ui:128
+#: sw/uiconfig/swriter/ui/characterproperties.ui:182
msgctxt "characterproperties|fonteffects"
msgid "Font Effects"
msgstr "Schrëfteffekter"
-#: sw/uiconfig/swriter/ui/characterproperties.ui:151
+#: sw/uiconfig/swriter/ui/characterproperties.ui:229
msgctxt "characterproperties|position"
msgid "Position"
msgstr "Positioun"
-#: sw/uiconfig/swriter/ui/characterproperties.ui:174
+#: sw/uiconfig/swriter/ui/characterproperties.ui:276
#, fuzzy
msgctxt "characterproperties|asianlayout"
msgid "Asian Layout"
msgstr "Asiatesche Layout"
-#: sw/uiconfig/swriter/ui/characterproperties.ui:197
+#: sw/uiconfig/swriter/ui/characterproperties.ui:323
msgctxt "characterproperties|hyperlink"
msgid "Hyperlink"
msgstr "Hyperlink"
-#: sw/uiconfig/swriter/ui/characterproperties.ui:220
+#: sw/uiconfig/swriter/ui/characterproperties.ui:370
msgctxt "characterproperties|background"
msgid "Highlighting"
msgstr ""
-#: sw/uiconfig/swriter/ui/characterproperties.ui:243
+#: sw/uiconfig/swriter/ui/characterproperties.ui:417
msgctxt "characterproperties|borders"
msgid "Borders"
msgstr "Konturen"
-#: sw/uiconfig/swriter/ui/charurlpage.ui:34
+#: sw/uiconfig/swriter/ui/charurlpage.ui:37
#, fuzzy
msgctxt "charurlpage|label36"
msgid "URL:"
msgstr "URL"
-#: sw/uiconfig/swriter/ui/charurlpage.ui:48
+#: sw/uiconfig/swriter/ui/charurlpage.ui:51
#, fuzzy
msgctxt "charurlpage|label37"
msgid "Name:"
msgstr "Numm"
-#: sw/uiconfig/swriter/ui/charurlpage.ui:62
+#: sw/uiconfig/swriter/ui/charurlpage.ui:65
#, fuzzy
msgctxt "charurlpage|textft"
msgid "Text:"
msgstr "Text"
-#: sw/uiconfig/swriter/ui/charurlpage.ui:76
+#: sw/uiconfig/swriter/ui/charurlpage.ui:79
msgctxt "charurlpage|label39"
msgid "Target frame:"
msgstr ""
-#: sw/uiconfig/swriter/ui/charurlpage.ui:88
+#: sw/uiconfig/swriter/ui/charurlpage.ui:91
msgctxt "charurlpage|eventpb"
msgid "Events..."
msgstr ""
-#: sw/uiconfig/swriter/ui/charurlpage.ui:138
+#: sw/uiconfig/swriter/ui/charurlpage.ui:141
msgctxt "charurlpage|urlpb"
msgid "Browse..."
msgstr "Duerchsichen..."
-#: sw/uiconfig/swriter/ui/charurlpage.ui:189
+#: sw/uiconfig/swriter/ui/charurlpage.ui:192
msgctxt "charurlpage|label32"
msgid "Hyperlink"
msgstr "Hyperlink"
-#: sw/uiconfig/swriter/ui/charurlpage.ui:224
+#: sw/uiconfig/swriter/ui/charurlpage.ui:227
msgctxt "charurlpage|label34"
msgid "Visited links:"
msgstr ""
-#: sw/uiconfig/swriter/ui/charurlpage.ui:238
+#: sw/uiconfig/swriter/ui/charurlpage.ui:241
msgctxt "charurlpage|label10"
msgid "Unvisited links:"
msgstr ""
-#: sw/uiconfig/swriter/ui/charurlpage.ui:276
+#: sw/uiconfig/swriter/ui/charurlpage.ui:279
msgctxt "charurlpage|label33"
msgid "Character Styles"
msgstr ""
@@ -7752,133 +7752,133 @@ msgctxt "columndialog|ColumnDialog"
msgid "Columns"
msgstr "~Kolonnen "
-#: sw/uiconfig/swriter/ui/columnpage.ui:59
-msgctxt "columnpage|liststore2"
-msgid "Selection"
-msgstr "Auswiel"
-
-#: sw/uiconfig/swriter/ui/columnpage.ui:63
-msgctxt "columnpage|liststore2"
-msgid "Current Section"
-msgstr ""
-
-#: sw/uiconfig/swriter/ui/columnpage.ui:67
-#, fuzzy
-msgctxt "columnpage|liststore2"
-msgid "Selected section"
-msgstr "Fonctioun läschen"
-
-#: sw/uiconfig/swriter/ui/columnpage.ui:71
-#, fuzzy
-msgctxt "columnpage|liststore2"
-msgid "Frame"
-msgstr "Kontur:"
-
-#: sw/uiconfig/swriter/ui/columnpage.ui:75
-msgctxt "columnpage|liststore2"
-msgid "Page Style: "
-msgstr "Säitevirlag: "
-
-#: sw/uiconfig/swriter/ui/columnpage.ui:112
+#: sw/uiconfig/swriter/ui/columnpage.ui:99
#, fuzzy
msgctxt "columnpage|columnft"
msgid "Column:"
msgstr "Kolonn"
-#: sw/uiconfig/swriter/ui/columnpage.ui:173
+#: sw/uiconfig/swriter/ui/columnpage.ui:157
#, fuzzy
msgctxt "columnpage|widthft"
msgid "Width:"
msgstr "Breet"
-#: sw/uiconfig/swriter/ui/columnpage.ui:241
+#: sw/uiconfig/swriter/ui/columnpage.ui:225
#, fuzzy
msgctxt "columnpage|distft"
msgid "Spacing:"
msgstr "Ofstand "
-#: sw/uiconfig/swriter/ui/columnpage.ui:300
+#: sw/uiconfig/swriter/ui/columnpage.ui:284
msgctxt "columnpage|autowidth"
msgid "Auto_Width"
msgstr ""
-#: sw/uiconfig/swriter/ui/columnpage.ui:373
+#: sw/uiconfig/swriter/ui/columnpage.ui:357
msgctxt "columnpage|label4"
msgid "Width and Spacing"
msgstr ""
-#: sw/uiconfig/swriter/ui/columnpage.ui:410
+#: sw/uiconfig/swriter/ui/columnpage.ui:394
msgctxt "columnpage|linestyleft"
msgid "St_yle:"
msgstr ""
-#: sw/uiconfig/swriter/ui/columnpage.ui:424
+#: sw/uiconfig/swriter/ui/columnpage.ui:408
#, fuzzy
msgctxt "columnpage|linewidthft"
msgid "_Width:"
msgstr "Breet"
-#: sw/uiconfig/swriter/ui/columnpage.ui:438
+#: sw/uiconfig/swriter/ui/columnpage.ui:422
#, fuzzy
msgctxt "columnpage|lineheightft"
msgid "H_eight:"
msgstr "Héicht"
-#: sw/uiconfig/swriter/ui/columnpage.ui:452
+#: sw/uiconfig/swriter/ui/columnpage.ui:436
#, fuzzy
msgctxt "columnpage|lineposft"
msgid "_Position:"
msgstr "Positioun"
-#: sw/uiconfig/swriter/ui/columnpage.ui:478
+#: sw/uiconfig/swriter/ui/columnpage.ui:466
msgctxt "columnpage|lineposlb"
msgid "Top"
msgstr "Uewen"
-#: sw/uiconfig/swriter/ui/columnpage.ui:479
+#: sw/uiconfig/swriter/ui/columnpage.ui:467
#, fuzzy
msgctxt "columnpage|lineposlb"
msgid "Centered"
msgstr "~Zentréiert"
-#: sw/uiconfig/swriter/ui/columnpage.ui:480
+#: sw/uiconfig/swriter/ui/columnpage.ui:468
msgctxt "columnpage|lineposlb"
msgid "Bottom"
msgstr "Ënnen"
-#: sw/uiconfig/swriter/ui/columnpage.ui:526
+#: sw/uiconfig/swriter/ui/columnpage.ui:518
#, fuzzy
msgctxt "columnpage|linecolorft"
msgid "_Color:"
msgstr "Faarf"
-#: sw/uiconfig/swriter/ui/columnpage.ui:550
+#: sw/uiconfig/swriter/ui/columnpage.ui:542
msgctxt "columnpage|label11"
msgid "Separator Line"
msgstr ""
-#: sw/uiconfig/swriter/ui/columnpage.ui:602
+#: sw/uiconfig/swriter/ui/columnpage.ui:593
#, fuzzy
msgctxt "columnpage|label3"
msgid "Columns:"
msgstr "~Kolonnen "
-#: sw/uiconfig/swriter/ui/columnpage.ui:636
+#: sw/uiconfig/swriter/ui/columnpage.ui:627
msgctxt "columnpage|balance"
msgid "Evenly distribute contents _to all columns"
msgstr ""
-#: sw/uiconfig/swriter/ui/columnpage.ui:670
+#: sw/uiconfig/swriter/ui/columnpage.ui:652
+msgctxt "columnpage|liststore2"
+msgid "Selection"
+msgstr "Auswiel"
+
+#: sw/uiconfig/swriter/ui/columnpage.ui:653
+msgctxt "columnpage|liststore2"
+msgid "Current Section"
+msgstr ""
+
+#: sw/uiconfig/swriter/ui/columnpage.ui:654
+#, fuzzy
+msgctxt "columnpage|liststore2"
+msgid "Selected section"
+msgstr "Fonctioun läschen"
+
+#: sw/uiconfig/swriter/ui/columnpage.ui:655
+#, fuzzy
+msgctxt "columnpage|liststore2"
+msgid "Frame"
+msgstr "Kontur:"
+
+#: sw/uiconfig/swriter/ui/columnpage.ui:656
+msgctxt "columnpage|liststore2"
+msgid "Page Style: "
+msgstr "Säitevirlag: "
+
+#: sw/uiconfig/swriter/ui/columnpage.ui:668
msgctxt "columnpage|applytoft"
msgid "_Apply to:"
msgstr ""
-#: sw/uiconfig/swriter/ui/columnpage.ui:695
+#: sw/uiconfig/swriter/ui/columnpage.ui:693
msgctxt "columnpage|textdirectionft"
msgid "Text _direction:"
msgstr ""
-#: sw/uiconfig/swriter/ui/columnpage.ui:750
+#: sw/uiconfig/swriter/ui/columnpage.ui:749
#, fuzzy
msgctxt "columnpage|label2"
msgid "Settings"
@@ -8321,60 +8321,60 @@ msgctxt "datasourcesunavailabledialog|DataSourcesUnavailableDialog"
msgid "No data source has been set up yet. You need a data source, such as a database, to supply data (for example, names and addresses) for the fields."
msgstr ""
-#: sw/uiconfig/swriter/ui/dropcapspage.ui:55
+#: sw/uiconfig/swriter/ui/dropcapspage.ui:59
msgctxt "dropcapspage|checkCB_SWITCH"
msgid "_Display drop caps"
msgstr ""
-#: sw/uiconfig/swriter/ui/dropcapspage.ui:71
+#: sw/uiconfig/swriter/ui/dropcapspage.ui:75
msgctxt "dropcapspage|checkCB_WORD"
msgid "_Whole word"
msgstr ""
-#: sw/uiconfig/swriter/ui/dropcapspage.ui:89
+#: sw/uiconfig/swriter/ui/dropcapspage.ui:93
msgctxt "dropcapspage|labelFT_DROPCAPS"
msgid "Number of _characters:"
msgstr ""
-#: sw/uiconfig/swriter/ui/dropcapspage.ui:103
+#: sw/uiconfig/swriter/ui/dropcapspage.ui:107
#, fuzzy
msgctxt "dropcapspage|labelTXT_LINES"
msgid "_Lines:"
msgstr "Zeilen"
-#: sw/uiconfig/swriter/ui/dropcapspage.ui:117
+#: sw/uiconfig/swriter/ui/dropcapspage.ui:121
msgctxt "dropcapspage|labelTXT_DISTANCE"
msgid "_Space to text:"
msgstr ""
-#: sw/uiconfig/swriter/ui/dropcapspage.ui:175
+#: sw/uiconfig/swriter/ui/dropcapspage.ui:179
#, fuzzy
msgctxt "dropcapspage|labelFL_SETTING"
msgid "Settings"
msgstr "Astellung"
-#: sw/uiconfig/swriter/ui/dropcapspage.ui:209
+#: sw/uiconfig/swriter/ui/dropcapspage.ui:213
#, fuzzy
msgctxt "dropcapspage|labelTXT_TEXT"
msgid "_Text:"
msgstr "Text"
-#: sw/uiconfig/swriter/ui/dropcapspage.ui:223
+#: sw/uiconfig/swriter/ui/dropcapspage.ui:227
msgctxt "dropcapspage|labelTXT_TEMPLATE"
msgid "Character st_yle:"
msgstr ""
-#: sw/uiconfig/swriter/ui/dropcapspage.ui:263
+#: sw/uiconfig/swriter/ui/dropcapspage.ui:267
msgctxt "dropcapspage|labelFL_CONTENT"
msgid "Contents"
msgstr "Inhalt"
-#: sw/uiconfig/swriter/ui/dropdownfielddialog.ui:26
+#: sw/uiconfig/swriter/ui/dropdownfielddialog.ui:16
msgctxt "dropdownfielddialog|DropdownFieldDialog"
msgid "Choose Item: "
msgstr ""
-#: sw/uiconfig/swriter/ui/dropdownfielddialog.ui:212
+#: sw/uiconfig/swriter/ui/dropdownfielddialog.ui:207
msgctxt "dropdownfielddialog|label1"
msgid "Edit"
msgstr "Beaarbechten"
@@ -8443,98 +8443,98 @@ msgctxt "editsectiondialog|EditSectionDialog"
msgid "Edit Sections"
msgstr ""
-#: sw/uiconfig/swriter/ui/editsectiondialog.ui:53
+#: sw/uiconfig/swriter/ui/editsectiondialog.ui:56
#, fuzzy
msgctxt "editsectiondialog|options"
msgid "_Options..."
msgstr "Optiounen..."
-#: sw/uiconfig/swriter/ui/editsectiondialog.ui:168
+#: sw/uiconfig/swriter/ui/editsectiondialog.ui:171
#, fuzzy
msgctxt "editsectiondialog|label1"
msgid "Section"
msgstr "Auswiel"
-#: sw/uiconfig/swriter/ui/editsectiondialog.ui:211
+#: sw/uiconfig/swriter/ui/editsectiondialog.ui:214
#, fuzzy
msgctxt "editsectiondialog|link"
msgid "_Link"
msgstr "Zeil "
-#: sw/uiconfig/swriter/ui/editsectiondialog.ui:228
+#: sw/uiconfig/swriter/ui/editsectiondialog.ui:231
msgctxt "editsectiondialog|dde"
msgid "DD_E"
msgstr ""
-#: sw/uiconfig/swriter/ui/editsectiondialog.ui:258
+#: sw/uiconfig/swriter/ui/editsectiondialog.ui:261
msgctxt "editsectiondialog|file"
msgid "Browse..."
msgstr "Duerchsichen..."
-#: sw/uiconfig/swriter/ui/editsectiondialog.ui:285
+#: sw/uiconfig/swriter/ui/editsectiondialog.ui:287
#, fuzzy
msgctxt "editsectiondialog|sectionft"
msgid "_Section"
msgstr "Auswiel"
-#: sw/uiconfig/swriter/ui/editsectiondialog.ui:322
+#: sw/uiconfig/swriter/ui/editsectiondialog.ui:324
#, fuzzy
msgctxt "editsectiondialog|filenameft"
msgid "_File name"
msgstr "Fichiersnumm:"
-#: sw/uiconfig/swriter/ui/editsectiondialog.ui:337
+#: sw/uiconfig/swriter/ui/editsectiondialog.ui:339
msgctxt "editsectiondialog|ddeft"
msgid "DDE _Command"
msgstr ""
-#: sw/uiconfig/swriter/ui/editsectiondialog.ui:369
+#: sw/uiconfig/swriter/ui/editsectiondialog.ui:372
#, fuzzy
msgctxt "editsectiondialog|label8"
msgid "Link"
msgstr "Zeil "
-#: sw/uiconfig/swriter/ui/editsectiondialog.ui:406
+#: sw/uiconfig/swriter/ui/editsectiondialog.ui:409
msgctxt "editsectiondialog|protect"
-msgid "_Protected"
+msgid "_Protect"
msgstr ""
-#: sw/uiconfig/swriter/ui/editsectiondialog.ui:434
+#: sw/uiconfig/swriter/ui/editsectiondialog.ui:437
msgctxt "editsectiondialog|withpassword"
msgid "Wit_h password"
msgstr ""
-#: sw/uiconfig/swriter/ui/editsectiondialog.ui:453
+#: sw/uiconfig/swriter/ui/editsectiondialog.ui:456
msgctxt "editsectiondialog|password"
msgid "Password..."
msgstr ""
-#: sw/uiconfig/swriter/ui/editsectiondialog.ui:483
+#: sw/uiconfig/swriter/ui/editsectiondialog.ui:486
msgctxt "editsectiondialog|label6"
msgid "Write Protection"
msgstr ""
-#: sw/uiconfig/swriter/ui/editsectiondialog.ui:520
+#: sw/uiconfig/swriter/ui/editsectiondialog.ui:523
msgctxt "editsectiondialog|hide"
msgid "Hide"
msgstr ""
-#: sw/uiconfig/swriter/ui/editsectiondialog.ui:552
+#: sw/uiconfig/swriter/ui/editsectiondialog.ui:554
msgctxt "editsectiondialog|conditionft"
msgid "_With Condition"
msgstr ""
-#: sw/uiconfig/swriter/ui/editsectiondialog.ui:589
+#: sw/uiconfig/swriter/ui/editsectiondialog.ui:592
msgctxt "editsectiondialog|label4"
msgid "Hide"
msgstr ""
-#: sw/uiconfig/swriter/ui/editsectiondialog.ui:625
+#: sw/uiconfig/swriter/ui/editsectiondialog.ui:628
msgctxt "editsectiondialog|editinro"
msgid "E_ditable in read-only document"
msgstr ""
-#: sw/uiconfig/swriter/ui/editsectiondialog.ui:648
+#: sw/uiconfig/swriter/ui/editsectiondialog.ui:651
msgctxt "editsectiondialog|label9"
msgid "Properties"
msgstr "Eegeschaften"
@@ -8657,17 +8657,17 @@ msgctxt "envdialog|modify"
msgid "_Modify"
msgstr "Veränneren"
-#: sw/uiconfig/swriter/ui/envdialog.ui:160
+#: sw/uiconfig/swriter/ui/envdialog.ui:162
msgctxt "envdialog|envelope"
msgid "Envelope"
msgstr ""
-#: sw/uiconfig/swriter/ui/envdialog.ui:206
+#: sw/uiconfig/swriter/ui/envdialog.ui:208
msgctxt "envdialog|format"
msgid "Format"
msgstr "Format"
-#: sw/uiconfig/swriter/ui/envdialog.ui:253
+#: sw/uiconfig/swriter/ui/envdialog.ui:255
msgctxt "envdialog|printer"
msgid "Printer"
msgstr ""
@@ -8937,33 +8937,33 @@ msgctxt "fielddialog|ok"
msgid "_Insert"
msgstr "Afügen"
-#: sw/uiconfig/swriter/ui/fielddialog.ui:129
+#: sw/uiconfig/swriter/ui/fielddialog.ui:131
msgctxt "fielddialog|document"
msgid "Document"
msgstr "Dokument"
-#: sw/uiconfig/swriter/ui/fielddialog.ui:175
+#: sw/uiconfig/swriter/ui/fielddialog.ui:177
msgctxt "fielddialog|ref"
msgid "Cross-references"
msgstr ""
-#: sw/uiconfig/swriter/ui/fielddialog.ui:222
+#: sw/uiconfig/swriter/ui/fielddialog.ui:224
msgctxt "fielddialog|functions"
msgid "Functions"
msgstr "Fonctiounen"
-#: sw/uiconfig/swriter/ui/fielddialog.ui:269
+#: sw/uiconfig/swriter/ui/fielddialog.ui:271
#, fuzzy
msgctxt "fielddialog|docinfo"
msgid "DocInformation"
msgstr "Info Dokument"
-#: sw/uiconfig/swriter/ui/fielddialog.ui:316
+#: sw/uiconfig/swriter/ui/fielddialog.ui:318
msgctxt "fielddialog|variables"
msgid "Variables"
msgstr ""
-#: sw/uiconfig/swriter/ui/fielddialog.ui:363
+#: sw/uiconfig/swriter/ui/fielddialog.ui:365
msgctxt "fielddialog|database"
msgid "Database"
msgstr "Datebank"
@@ -9026,7 +9026,7 @@ msgctxt "flddbpage|userdefinedcb"
msgid "User-defined"
msgstr "Benotzer-definéiert1"
-#: sw/uiconfig/swriter/ui/flddbpage.ui:387
+#: sw/uiconfig/swriter/ui/flddbpage.ui:383
msgctxt "flddbpage|label3"
msgid "Format"
msgstr "Format"
@@ -9383,85 +9383,85 @@ msgctxt "footendnotedialog|FootEndnoteDialog"
msgid "Footnotes/Endnotes Settings"
msgstr ""
-#: sw/uiconfig/swriter/ui/footendnotedialog.ui:132
+#: sw/uiconfig/swriter/ui/footendnotedialog.ui:134
msgctxt "footendnotedialog|footnotes"
msgid "Footnotes"
msgstr ""
-#: sw/uiconfig/swriter/ui/footendnotedialog.ui:178
+#: sw/uiconfig/swriter/ui/footendnotedialog.ui:180
msgctxt "footendnotedialog|endnotes"
msgid "Endnotes"
msgstr ""
-#: sw/uiconfig/swriter/ui/footnoteareapage.ui:66
+#: sw/uiconfig/swriter/ui/footnoteareapage.ui:65
msgctxt "footnoteareapage|maxheightpage"
msgid "_Not larger than page area"
msgstr ""
-#: sw/uiconfig/swriter/ui/footnoteareapage.ui:86
+#: sw/uiconfig/swriter/ui/footnoteareapage.ui:84
msgctxt "footnoteareapage|maxheight"
msgid "Maximum footnote _height"
msgstr ""
-#: sw/uiconfig/swriter/ui/footnoteareapage.ui:112
+#: sw/uiconfig/swriter/ui/footnoteareapage.ui:107
msgctxt "footnoteareapage|label3"
msgid "Space to text"
msgstr ""
-#: sw/uiconfig/swriter/ui/footnoteareapage.ui:169
+#: sw/uiconfig/swriter/ui/footnoteareapage.ui:156
msgctxt "footnoteareapage|label1"
msgid "Footnote Area"
msgstr ""
-#: sw/uiconfig/swriter/ui/footnoteareapage.ui:209
+#: sw/uiconfig/swriter/ui/footnoteareapage.ui:195
#, fuzzy
msgctxt "footnoteareapage|label4"
msgid "_Position"
msgstr "Positioun"
-#: sw/uiconfig/swriter/ui/footnoteareapage.ui:226
+#: sw/uiconfig/swriter/ui/footnoteareapage.ui:210
msgctxt "footnoteareapage|label5"
msgid "_Style"
msgstr ""
-#: sw/uiconfig/swriter/ui/footnoteareapage.ui:243
+#: sw/uiconfig/swriter/ui/footnoteareapage.ui:225
msgctxt "footnoteareapage|label6"
msgid "_Thickness"
msgstr ""
-#: sw/uiconfig/swriter/ui/footnoteareapage.ui:260
+#: sw/uiconfig/swriter/ui/footnoteareapage.ui:240
#, fuzzy
msgctxt "footnoteareapage|label7"
msgid "_Color"
msgstr "Faarf"
-#: sw/uiconfig/swriter/ui/footnoteareapage.ui:277
+#: sw/uiconfig/swriter/ui/footnoteareapage.ui:255
msgctxt "footnoteareapage|label8"
msgid "_Length"
msgstr ""
-#: sw/uiconfig/swriter/ui/footnoteareapage.ui:294
+#: sw/uiconfig/swriter/ui/footnoteareapage.ui:270
msgctxt "footnoteareapage|label9"
msgid "_Spacing to footnote contents"
msgstr ""
-#: sw/uiconfig/swriter/ui/footnoteareapage.ui:314
+#: sw/uiconfig/swriter/ui/footnoteareapage.ui:287
msgctxt "footnoteareapage|position"
msgid "Left"
msgstr "Lénks"
-#: sw/uiconfig/swriter/ui/footnoteareapage.ui:315
+#: sw/uiconfig/swriter/ui/footnoteareapage.ui:288
#, fuzzy
msgctxt "footnoteareapage|position"
msgid "Centered"
msgstr "~Zentréiert"
-#: sw/uiconfig/swriter/ui/footnoteareapage.ui:316
+#: sw/uiconfig/swriter/ui/footnoteareapage.ui:289
msgctxt "footnoteareapage|position"
msgid "Right"
msgstr "Riets"
-#: sw/uiconfig/swriter/ui/footnoteareapage.ui:409
+#: sw/uiconfig/swriter/ui/footnoteareapage.ui:380
msgctxt "footnoteareapage|label2"
msgid "Separator Line"
msgstr ""
@@ -9654,24 +9654,24 @@ msgctxt "formatsectiondialog|FormatSectionDialog"
msgid "Options"
msgstr "Optiounen"
-#: sw/uiconfig/swriter/ui/formatsectiondialog.ui:107
+#: sw/uiconfig/swriter/ui/formatsectiondialog.ui:109
#, fuzzy
msgctxt "formatsectiondialog|columns"
msgid "Columns"
msgstr "~Kolonnen "
-#: sw/uiconfig/swriter/ui/formatsectiondialog.ui:129
+#: sw/uiconfig/swriter/ui/formatsectiondialog.ui:131
#, fuzzy
msgctxt "formatsectiondialog|indents"
msgid "Indents"
msgstr "Arécklen"
-#: sw/uiconfig/swriter/ui/formatsectiondialog.ui:152
+#: sw/uiconfig/swriter/ui/formatsectiondialog.ui:154
msgctxt "formatsectiondialog|background"
msgid "Background"
msgstr "Hannergrond"
-#: sw/uiconfig/swriter/ui/formatsectiondialog.ui:175
+#: sw/uiconfig/swriter/ui/formatsectiondialog.ui:177
msgctxt "formatsectiondialog|notes"
msgid "Footnotes/Endnotes"
msgstr ""
@@ -9784,48 +9784,48 @@ msgctxt "framedialog|FrameDialog"
msgid "Frame"
msgstr "Kontur:"
-#: sw/uiconfig/swriter/ui/framedialog.ui:106
+#: sw/uiconfig/swriter/ui/framedialog.ui:108
msgctxt "framedialog|type"
msgid "Type"
msgstr "Typ"
-#: sw/uiconfig/swriter/ui/framedialog.ui:128
+#: sw/uiconfig/swriter/ui/framedialog.ui:130
msgctxt "framedialog|options"
msgid "Options"
msgstr "Optiounen"
-#: sw/uiconfig/swriter/ui/framedialog.ui:151
+#: sw/uiconfig/swriter/ui/framedialog.ui:153
msgctxt "framedialog|wrap"
msgid "Wrap"
msgstr ""
-#: sw/uiconfig/swriter/ui/framedialog.ui:174
+#: sw/uiconfig/swriter/ui/framedialog.ui:176
msgctxt "framedialog|hyperlink"
msgid "Hyperlink"
msgstr "Hyperlink"
-#: sw/uiconfig/swriter/ui/framedialog.ui:197
+#: sw/uiconfig/swriter/ui/framedialog.ui:199
msgctxt "framedialog|borders"
msgid "Borders"
msgstr "Konturen"
-#: sw/uiconfig/swriter/ui/framedialog.ui:220
+#: sw/uiconfig/swriter/ui/framedialog.ui:222
msgctxt "framedialog|area"
msgid "Area"
msgstr ""
-#: sw/uiconfig/swriter/ui/framedialog.ui:243
+#: sw/uiconfig/swriter/ui/framedialog.ui:245
msgctxt "framedialog|transparence"
msgid "Transparency"
msgstr "Transparenz"
-#: sw/uiconfig/swriter/ui/framedialog.ui:266
+#: sw/uiconfig/swriter/ui/framedialog.ui:268
#, fuzzy
msgctxt "framedialog|columns"
msgid "Columns"
msgstr "~Kolonnen "
-#: sw/uiconfig/swriter/ui/framedialog.ui:289
+#: sw/uiconfig/swriter/ui/framedialog.ui:291
msgctxt "framedialog|macro"
msgid "Macro"
msgstr "Makro"
@@ -10292,12 +10292,12 @@ msgctxt "inforeadonlydialog|InfoReadonlyDialog"
msgid "No modifications will be accepted."
msgstr ""
-#: sw/uiconfig/swriter/ui/inputfielddialog.ui:18
+#: sw/uiconfig/swriter/ui/inputfielddialog.ui:8
msgctxt "inputfielddialog|InputFieldDialog"
-msgid "Input Field"
+msgid "Review Fields"
msgstr ""
-#: sw/uiconfig/swriter/ui/inputfielddialog.ui:136
+#: sw/uiconfig/swriter/ui/inputfielddialog.ui:131
msgctxt "inputfielddialog|inputfieldname"
msgid "Reference:"
msgstr ""
@@ -10812,30 +10812,30 @@ msgctxt "insertsectiondialog|ok"
msgid "_Insert"
msgstr "Afügen"
-#: sw/uiconfig/swriter/ui/insertsectiondialog.ui:106
+#: sw/uiconfig/swriter/ui/insertsectiondialog.ui:108
#, fuzzy
msgctxt "insertsectiondialog|section"
msgid "Section"
msgstr "Auswiel"
-#: sw/uiconfig/swriter/ui/insertsectiondialog.ui:128
+#: sw/uiconfig/swriter/ui/insertsectiondialog.ui:130
#, fuzzy
msgctxt "insertsectiondialog|columns"
msgid "Columns"
msgstr "~Kolonnen "
-#: sw/uiconfig/swriter/ui/insertsectiondialog.ui:151
+#: sw/uiconfig/swriter/ui/insertsectiondialog.ui:153
#, fuzzy
msgctxt "insertsectiondialog|indents"
msgid "Indents"
msgstr "Arécklen"
-#: sw/uiconfig/swriter/ui/insertsectiondialog.ui:174
+#: sw/uiconfig/swriter/ui/insertsectiondialog.ui:176
msgctxt "insertsectiondialog|background"
msgid "Background"
msgstr "Hannergrond"
-#: sw/uiconfig/swriter/ui/insertsectiondialog.ui:197
+#: sw/uiconfig/swriter/ui/insertsectiondialog.ui:199
msgctxt "insertsectiondialog|notes"
msgid "Footnotes/Endnotes"
msgstr ""
@@ -10916,33 +10916,33 @@ msgctxt "labeldialog|ok"
msgid "_New Document"
msgstr "Neien Dokument"
-#: sw/uiconfig/swriter/ui/labeldialog.ui:133
+#: sw/uiconfig/swriter/ui/labeldialog.ui:135
#, fuzzy
msgctxt "labeldialog|medium"
msgid "Medium"
msgstr "mëttel"
-#: sw/uiconfig/swriter/ui/labeldialog.ui:179
+#: sw/uiconfig/swriter/ui/labeldialog.ui:181
msgctxt "labeldialog|labels"
msgid "Labels"
msgstr "Etiketten"
-#: sw/uiconfig/swriter/ui/labeldialog.ui:202
+#: sw/uiconfig/swriter/ui/labeldialog.ui:204
msgctxt "labeldialog|private"
msgid "Private"
msgstr ""
-#: sw/uiconfig/swriter/ui/labeldialog.ui:249
+#: sw/uiconfig/swriter/ui/labeldialog.ui:251
msgctxt "labeldialog|business"
msgid "Business"
msgstr ""
-#: sw/uiconfig/swriter/ui/labeldialog.ui:296
+#: sw/uiconfig/swriter/ui/labeldialog.ui:298
msgctxt "labeldialog|format"
msgid "Format"
msgstr "Format"
-#: sw/uiconfig/swriter/ui/labeldialog.ui:343
+#: sw/uiconfig/swriter/ui/labeldialog.ui:345
msgctxt "labeldialog|options"
msgid "Options"
msgstr "Optiounen"
@@ -12335,62 +12335,62 @@ msgctxt "notebookbar|TableLabel"
msgid "Table"
msgstr "Tabellen"
-#: sw/uiconfig/swriter/ui/notebookbar.ui:10766
+#: sw/uiconfig/swriter/ui/notebookbar.ui:10793
msgctxt "notebookbar|ImageMenuButton"
msgid "Image"
msgstr ""
-#: sw/uiconfig/swriter/ui/notebookbar.ui:10865
+#: sw/uiconfig/swriter/ui/notebookbar.ui:10892
msgctxt "notebookbar|ImageLabel"
msgid "Image"
msgstr "Bild"
-#: sw/uiconfig/swriter/ui/notebookbar.ui:12215
+#: sw/uiconfig/swriter/ui/notebookbar.ui:12242
msgctxt "notebookbar|DrawMenuButton"
msgid "D_raw"
msgstr ""
-#: sw/uiconfig/swriter/ui/notebookbar.ui:12327
+#: sw/uiconfig/swriter/ui/notebookbar.ui:12354
msgctxt "notebookbar|DrawLabel"
msgid "Draw"
msgstr ""
-#: sw/uiconfig/swriter/ui/notebookbar.ui:12681
+#: sw/uiconfig/swriter/ui/notebookbar.ui:12708
msgctxt "notebookbar|PrintMenuButton"
msgid "_Print"
msgstr ""
-#: sw/uiconfig/swriter/ui/notebookbar.ui:12768
+#: sw/uiconfig/swriter/ui/notebookbar.ui:12795
msgctxt "notebookbar|PrintLabel"
msgid "Print"
msgstr ""
-#: sw/uiconfig/swriter/ui/notebookbar.ui:13206
+#: sw/uiconfig/swriter/ui/notebookbar.ui:13233
msgctxt "notebookbar|MediaMenuButton"
msgid "_Media"
msgstr ""
-#: sw/uiconfig/swriter/ui/notebookbar.ui:13304
+#: sw/uiconfig/swriter/ui/notebookbar.ui:13331
msgctxt "notebookbar|MediaLabel"
msgid "Media"
msgstr ""
-#: sw/uiconfig/swriter/ui/notebookbar.ui:14157
+#: sw/uiconfig/swriter/ui/notebookbar.ui:14184
msgctxt "notebookbar|ObjectMenuButton"
msgid "Object"
msgstr ""
-#: sw/uiconfig/swriter/ui/notebookbar.ui:14246
+#: sw/uiconfig/swriter/ui/notebookbar.ui:14273
msgctxt "notebookbar|ObjectLabel"
msgid "Object"
msgstr ""
-#: sw/uiconfig/swriter/ui/notebookbar.ui:14277
+#: sw/uiconfig/swriter/ui/notebookbar.ui:14304
msgctxt "notebookbar|ToolsMenuButton"
msgid "_Tools"
msgstr ""
-#: sw/uiconfig/swriter/ui/notebookbar.ui:15231
+#: sw/uiconfig/swriter/ui/notebookbar.ui:15258
msgctxt "notebookbar|ToolsLabel"
msgid "Tools"
msgstr ""
@@ -13514,42 +13514,42 @@ msgctxt "objectdialog|ObjectDialog"
msgid "Object"
msgstr "Objet"
-#: sw/uiconfig/swriter/ui/objectdialog.ui:106
+#: sw/uiconfig/swriter/ui/objectdialog.ui:108
msgctxt "objectdialog|type"
msgid "Type"
msgstr "Typ"
-#: sw/uiconfig/swriter/ui/objectdialog.ui:128
+#: sw/uiconfig/swriter/ui/objectdialog.ui:130
msgctxt "objectdialog|options"
msgid "Options"
msgstr "Optiounen"
-#: sw/uiconfig/swriter/ui/objectdialog.ui:151
+#: sw/uiconfig/swriter/ui/objectdialog.ui:153
msgctxt "objectdialog|wrap"
msgid "Wrap"
msgstr ""
-#: sw/uiconfig/swriter/ui/objectdialog.ui:174
+#: sw/uiconfig/swriter/ui/objectdialog.ui:176
msgctxt "objectdialog|hyperlink"
msgid "Hyperlink"
msgstr "Hyperlink"
-#: sw/uiconfig/swriter/ui/objectdialog.ui:197
+#: sw/uiconfig/swriter/ui/objectdialog.ui:199
msgctxt "objectdialog|borders"
msgid "Borders"
msgstr "Konturen"
-#: sw/uiconfig/swriter/ui/objectdialog.ui:220
+#: sw/uiconfig/swriter/ui/objectdialog.ui:222
msgctxt "objectdialog|area"
msgid "Area"
msgstr ""
-#: sw/uiconfig/swriter/ui/objectdialog.ui:243
+#: sw/uiconfig/swriter/ui/objectdialog.ui:245
msgctxt "objectdialog|transparence"
msgid "Transparency"
msgstr "Transparenz"
-#: sw/uiconfig/swriter/ui/objectdialog.ui:266
+#: sw/uiconfig/swriter/ui/objectdialog.ui:268
msgctxt "objectdialog|macro"
msgid "Macro"
msgstr "Makro"
@@ -14107,6 +14107,12 @@ msgctxt "optredlinepage|insertcolor-atkobject"
msgid "Color of Insertions"
msgstr ""
+#: sw/uiconfig/swriter/ui/optredlinepage.ui:108
+#, fuzzy
+msgctxt "optredlinepage|insertedpreview"
+msgid "Insert"
+msgstr "Afügen"
+
#: sw/uiconfig/swriter/ui/optredlinepage.ui:124
msgctxt "optredlinepage|label2"
msgid "Insertions"
@@ -14128,6 +14134,11 @@ msgctxt "optredlinepage|deletedcolor-atkobject"
msgid "Color of Deletions"
msgstr ""
+#: sw/uiconfig/swriter/ui/optredlinepage.ui:219
+msgctxt "optredlinepage|deletedpreview"
+msgid "Delete"
+msgstr "Läschen"
+
#: sw/uiconfig/swriter/ui/optredlinepage.ui:235
#, fuzzy
msgctxt "optredlinepage|label3"
@@ -14150,6 +14161,12 @@ msgctxt "optredlinepage|changedcolor-atkobject"
msgid "Color of Changed Attributes"
msgstr ""
+#: sw/uiconfig/swriter/ui/optredlinepage.ui:330
+#, fuzzy
+msgctxt "optredlinepage|changedpreview"
+msgid "Attributes"
+msgstr "Attributer"
+
#: sw/uiconfig/swriter/ui/optredlinepage.ui:346
msgctxt "optredlinepage|label4"
msgid "Changed Attributes"
@@ -14387,17 +14404,16 @@ msgid "Chapter Numbering"
msgstr ""
#: sw/uiconfig/swriter/ui/outlinenumbering.ui:115
-#, fuzzy
msgctxt "outlinenumbering|user"
-msgid "_Format"
-msgstr "Format"
+msgid "L_oad/Save"
+msgstr ""
-#: sw/uiconfig/swriter/ui/outlinenumbering.ui:241
+#: sw/uiconfig/swriter/ui/outlinenumbering.ui:243
msgctxt "outlinenumbering|numbering"
msgid "Numbering"
msgstr ""
-#: sw/uiconfig/swriter/ui/outlinenumbering.ui:287
+#: sw/uiconfig/swriter/ui/outlinenumbering.ui:289
msgctxt "outlinenumbering|position"
msgid "Position"
msgstr "Positioun"
@@ -14972,53 +14988,53 @@ msgctxt "paradialog|ParagraphPropertiesDialog"
msgid "Paragraph"
msgstr "Paragraphe"
-#: sw/uiconfig/swriter/ui/paradialog.ui:106
+#: sw/uiconfig/swriter/ui/paradialog.ui:135
msgctxt "paradialog|labelTP_PARA_STD"
msgid "Indents & Spacing"
msgstr ""
-#: sw/uiconfig/swriter/ui/paradialog.ui:128
+#: sw/uiconfig/swriter/ui/paradialog.ui:181
msgctxt "paradialog|labelTP_PARA_ALIGN"
msgid "Alignment"
msgstr "Aus~riichten"
-#: sw/uiconfig/swriter/ui/paradialog.ui:152
+#: sw/uiconfig/swriter/ui/paradialog.ui:229
msgctxt "paradialog|textflow"
msgid "Text Flow"
msgstr ""
-#: sw/uiconfig/swriter/ui/paradialog.ui:176
+#: sw/uiconfig/swriter/ui/paradialog.ui:277
msgctxt "paradialog|labelTP_PARA_ASIAN"
msgid "Asian Typography"
msgstr "Asiatesch Typographie"
-#: sw/uiconfig/swriter/ui/paradialog.ui:199
+#: sw/uiconfig/swriter/ui/paradialog.ui:324
#, fuzzy
msgctxt "paradialog|labelTP_NUMPARA"
msgid "Outline & Numbering"
msgstr "Säitennummeréierung"
-#: sw/uiconfig/swriter/ui/paradialog.ui:222
+#: sw/uiconfig/swriter/ui/paradialog.ui:371
msgctxt "paradialog|labelTP_TABULATOR"
msgid "Tabs"
msgstr ""
-#: sw/uiconfig/swriter/ui/paradialog.ui:245
+#: sw/uiconfig/swriter/ui/paradialog.ui:418
msgctxt "paradialog|labelTP_DROPCAPS"
msgid "Drop Caps"
msgstr ""
-#: sw/uiconfig/swriter/ui/paradialog.ui:268
+#: sw/uiconfig/swriter/ui/paradialog.ui:465
msgctxt "paradialog|labelTP_BORDER"
msgid "Borders"
msgstr "Konturen"
-#: sw/uiconfig/swriter/ui/paradialog.ui:291
+#: sw/uiconfig/swriter/ui/paradialog.ui:512
msgctxt "paradialog|area"
msgid "Area"
msgstr ""
-#: sw/uiconfig/swriter/ui/paradialog.ui:314
+#: sw/uiconfig/swriter/ui/paradialog.ui:559
msgctxt "paradialog|transparence"
msgid "Transparency"
msgstr "Transparenz"
@@ -15028,53 +15044,53 @@ msgctxt "picturedialog|PictureDialog"
msgid "Image"
msgstr "Bild"
-#: sw/uiconfig/swriter/ui/picturedialog.ui:106
+#: sw/uiconfig/swriter/ui/picturedialog.ui:108
msgctxt "picturedialog|type"
msgid "Type"
msgstr "Typ"
-#: sw/uiconfig/swriter/ui/picturedialog.ui:128
+#: sw/uiconfig/swriter/ui/picturedialog.ui:130
msgctxt "picturedialog|options"
msgid "Options"
msgstr "Optiounen"
-#: sw/uiconfig/swriter/ui/picturedialog.ui:151
+#: sw/uiconfig/swriter/ui/picturedialog.ui:153
msgctxt "picturedialog|wrap"
msgid "Wrap"
msgstr ""
-#: sw/uiconfig/swriter/ui/picturedialog.ui:174
+#: sw/uiconfig/swriter/ui/picturedialog.ui:176
msgctxt "picturedialog|hyperlink"
msgid "Hyperlink"
msgstr "Hyperlink"
-#: sw/uiconfig/swriter/ui/picturedialog.ui:197
+#: sw/uiconfig/swriter/ui/picturedialog.ui:199
msgctxt "picturedialog|picture"
msgid "Image"
msgstr "Bild"
-#: sw/uiconfig/swriter/ui/picturedialog.ui:220
+#: sw/uiconfig/swriter/ui/picturedialog.ui:222
#, fuzzy
msgctxt "picturedialog|crop"
msgid "Crop"
msgstr "Uebst a Geméis"
-#: sw/uiconfig/swriter/ui/picturedialog.ui:243
+#: sw/uiconfig/swriter/ui/picturedialog.ui:245
msgctxt "picturedialog|borders"
msgid "Borders"
msgstr "Konturen"
-#: sw/uiconfig/swriter/ui/picturedialog.ui:266
+#: sw/uiconfig/swriter/ui/picturedialog.ui:268
msgctxt "picturedialog|area"
msgid "Area"
msgstr ""
-#: sw/uiconfig/swriter/ui/picturedialog.ui:289
+#: sw/uiconfig/swriter/ui/picturedialog.ui:291
msgctxt "picturedialog|transparence"
msgid "Transparency"
msgstr "Transparenz"
-#: sw/uiconfig/swriter/ui/picturedialog.ui:312
+#: sw/uiconfig/swriter/ui/picturedialog.ui:314
msgctxt "picturedialog|macro"
msgid "Macro"
msgstr "Makro"
@@ -16559,29 +16575,29 @@ msgctxt "tableproperties|TablePropertiesDialog"
msgid "Table Properties"
msgstr ""
-#: sw/uiconfig/swriter/ui/tableproperties.ui:106
+#: sw/uiconfig/swriter/ui/tableproperties.ui:135
#, fuzzy
msgctxt "tableproperties|table"
msgid "Table"
msgstr "Tabellen"
-#: sw/uiconfig/swriter/ui/tableproperties.ui:128
+#: sw/uiconfig/swriter/ui/tableproperties.ui:181
msgctxt "tableproperties|textflow"
msgid "Text Flow"
msgstr ""
-#: sw/uiconfig/swriter/ui/tableproperties.ui:151
+#: sw/uiconfig/swriter/ui/tableproperties.ui:228
#, fuzzy
msgctxt "tableproperties|columns"
msgid "Columns"
msgstr "~Kolonnen "
-#: sw/uiconfig/swriter/ui/tableproperties.ui:174
+#: sw/uiconfig/swriter/ui/tableproperties.ui:275
msgctxt "tableproperties|borders"
msgid "Borders"
msgstr "Konturen"
-#: sw/uiconfig/swriter/ui/tableproperties.ui:197
+#: sw/uiconfig/swriter/ui/tableproperties.ui:322
msgctxt "tableproperties|background"
msgid "Background"
msgstr "Hannergrond"
@@ -16720,44 +16736,38 @@ msgctxt "templatedialog1|TemplateDialog1"
msgid "Character Style"
msgstr ""
-#: sw/uiconfig/swriter/ui/templatedialog1.ui:51
-#, fuzzy
-msgctxt "templatedialog1|standard"
-msgid "_Standard"
-msgstr "Standard"
-
-#: sw/uiconfig/swriter/ui/templatedialog1.ui:161
+#: sw/uiconfig/swriter/ui/templatedialog1.ui:166
msgctxt "templatedialog1|organizer"
msgid "Organizer"
msgstr ""
-#: sw/uiconfig/swriter/ui/templatedialog1.ui:207
+#: sw/uiconfig/swriter/ui/templatedialog1.ui:212
msgctxt "templatedialog1|font"
msgid "Font"
msgstr "Schrëft"
-#: sw/uiconfig/swriter/ui/templatedialog1.ui:254
+#: sw/uiconfig/swriter/ui/templatedialog1.ui:259
msgctxt "templatedialog1|fonteffect"
msgid "Font Effects"
msgstr "Schrëfteffekter"
-#: sw/uiconfig/swriter/ui/templatedialog1.ui:301
+#: sw/uiconfig/swriter/ui/templatedialog1.ui:306
msgctxt "templatedialog1|position"
msgid "Position"
msgstr "Positioun"
-#: sw/uiconfig/swriter/ui/templatedialog1.ui:348
+#: sw/uiconfig/swriter/ui/templatedialog1.ui:353
#, fuzzy
msgctxt "templatedialog1|asianlayout"
msgid "Asian Layout"
msgstr "Asiatesche Layout"
-#: sw/uiconfig/swriter/ui/templatedialog1.ui:395
+#: sw/uiconfig/swriter/ui/templatedialog1.ui:400
msgctxt "templatedialog1|background"
msgid "Highlighting"
msgstr ""
-#: sw/uiconfig/swriter/ui/templatedialog1.ui:442
+#: sw/uiconfig/swriter/ui/templatedialog1.ui:447
msgctxt "templatedialog1|borders"
msgid "Borders"
msgstr "Konturen"
@@ -16767,38 +16777,38 @@ msgctxt "templatedialog16|TemplateDialog16"
msgid "Numbering Style"
msgstr ""
-#: sw/uiconfig/swriter/ui/templatedialog16.ui:147
+#: sw/uiconfig/swriter/ui/templatedialog16.ui:166
msgctxt "templatedialog16|organizer"
msgid "Organizer"
msgstr ""
-#: sw/uiconfig/swriter/ui/templatedialog16.ui:193
+#: sw/uiconfig/swriter/ui/templatedialog16.ui:212
msgctxt "templatedialog16|bullets"
msgid "Bullets"
msgstr "Fléi"
-#: sw/uiconfig/swriter/ui/templatedialog16.ui:240
+#: sw/uiconfig/swriter/ui/templatedialog16.ui:259
msgctxt "templatedialog16|numbering"
msgid "Numbering Style"
msgstr ""
-#: sw/uiconfig/swriter/ui/templatedialog16.ui:287
+#: sw/uiconfig/swriter/ui/templatedialog16.ui:306
#, fuzzy
msgctxt "templatedialog16|outline"
msgid "Outline"
msgstr "Konturen"
-#: sw/uiconfig/swriter/ui/templatedialog16.ui:334
+#: sw/uiconfig/swriter/ui/templatedialog16.ui:353
msgctxt "templatedialog16|graphics"
msgid "Image"
msgstr "Bild"
-#: sw/uiconfig/swriter/ui/templatedialog16.ui:381
+#: sw/uiconfig/swriter/ui/templatedialog16.ui:400
msgctxt "templatedialog16|position"
msgid "Position"
msgstr "Positioun"
-#: sw/uiconfig/swriter/ui/templatedialog16.ui:428
+#: sw/uiconfig/swriter/ui/templatedialog16.ui:447
msgctxt "templatedialog16|customize"
msgid "Customize"
msgstr ""
@@ -16808,95 +16818,89 @@ msgctxt "templatedialog2|TemplateDialog2"
msgid "Paragraph Style"
msgstr ""
-#: sw/uiconfig/swriter/ui/templatedialog2.ui:51
-#, fuzzy
-msgctxt "templatedialog2|standard"
-msgid "_Standard"
-msgstr "Standard"
-
-#: sw/uiconfig/swriter/ui/templatedialog2.ui:161
+#: sw/uiconfig/swriter/ui/templatedialog2.ui:166
msgctxt "templatedialog2|organizer"
msgid "Organizer"
msgstr ""
-#: sw/uiconfig/swriter/ui/templatedialog2.ui:207
+#: sw/uiconfig/swriter/ui/templatedialog2.ui:212
msgctxt "templatedialog2|indents"
msgid "Indents & Spacing"
msgstr ""
-#: sw/uiconfig/swriter/ui/templatedialog2.ui:254
+#: sw/uiconfig/swriter/ui/templatedialog2.ui:259
msgctxt "templatedialog2|alignment"
msgid "Alignment"
msgstr "Aus~riichten"
-#: sw/uiconfig/swriter/ui/templatedialog2.ui:301
+#: sw/uiconfig/swriter/ui/templatedialog2.ui:306
msgctxt "templatedialog2|textflow"
msgid "Text Flow"
msgstr ""
-#: sw/uiconfig/swriter/ui/templatedialog2.ui:348
+#: sw/uiconfig/swriter/ui/templatedialog2.ui:353
msgctxt "templatedialog2|asiantypo"
msgid "Asian Typography"
msgstr "Asiatesch Typographie"
-#: sw/uiconfig/swriter/ui/templatedialog2.ui:395
+#: sw/uiconfig/swriter/ui/templatedialog2.ui:400
msgctxt "templatedialog2|font"
msgid "Font"
msgstr "Schrëft"
-#: sw/uiconfig/swriter/ui/templatedialog2.ui:442
+#: sw/uiconfig/swriter/ui/templatedialog2.ui:447
msgctxt "templatedialog2|fonteffect"
msgid "Font Effects"
msgstr "Schrëfteffekter"
-#: sw/uiconfig/swriter/ui/templatedialog2.ui:489
+#: sw/uiconfig/swriter/ui/templatedialog2.ui:494
msgctxt "templatedialog2|position"
msgid "Position"
msgstr "Positioun"
-#: sw/uiconfig/swriter/ui/templatedialog2.ui:536
+#: sw/uiconfig/swriter/ui/templatedialog2.ui:541
#, fuzzy
msgctxt "templatedialog2|asianlayout"
msgid "Asian Layout"
msgstr "Asiatesche Layout"
-#: sw/uiconfig/swriter/ui/templatedialog2.ui:583
+#: sw/uiconfig/swriter/ui/templatedialog2.ui:588
msgctxt "templatedialog2|highlighting"
msgid "Highlighting"
msgstr ""
-#: sw/uiconfig/swriter/ui/templatedialog2.ui:630
+#: sw/uiconfig/swriter/ui/templatedialog2.ui:635
msgctxt "templatedialog2|tabs"
msgid "Tabs"
msgstr ""
-#: sw/uiconfig/swriter/ui/templatedialog2.ui:677
+#: sw/uiconfig/swriter/ui/templatedialog2.ui:682
msgctxt "templatedialog2|dropcaps"
msgid "Drop Caps"
msgstr ""
-#: sw/uiconfig/swriter/ui/templatedialog2.ui:724
+#: sw/uiconfig/swriter/ui/templatedialog2.ui:729
msgctxt "templatedialog2|area"
msgid "Area"
msgstr ""
-#: sw/uiconfig/swriter/ui/templatedialog2.ui:771
+#: sw/uiconfig/swriter/ui/templatedialog2.ui:776
msgctxt "templatedialog2|transparence"
msgid "Transparency"
msgstr "Transparenz"
-#: sw/uiconfig/swriter/ui/templatedialog2.ui:818
+#: sw/uiconfig/swriter/ui/templatedialog2.ui:823
msgctxt "templatedialog2|borders"
msgid "Borders"
msgstr "Konturen"
-#: sw/uiconfig/swriter/ui/templatedialog2.ui:865
+#: sw/uiconfig/swriter/ui/templatedialog2.ui:870
#, fuzzy
msgctxt "templatedialog2|condition"
msgid "Condition"
msgstr "~Konditioun"
-#: sw/uiconfig/swriter/ui/templatedialog2.ui:912
+#: sw/uiconfig/swriter/ui/templatedialog2.ui:917
#, fuzzy
msgctxt "templatedialog2|outline"
msgid "Outline & Numbering"
@@ -16907,54 +16911,48 @@ msgctxt "templatedialog4|TemplateDialog4"
msgid "Frame Style"
msgstr ""
-#: sw/uiconfig/swriter/ui/templatedialog4.ui:51
-#, fuzzy
-msgctxt "templatedialog4|standard"
-msgid "_Standard"
-msgstr "Standard"
-
-#: sw/uiconfig/swriter/ui/templatedialog4.ui:161
+#: sw/uiconfig/swriter/ui/templatedialog4.ui:166
msgctxt "templatedialog4|organizer"
msgid "Organizer"
msgstr ""
-#: sw/uiconfig/swriter/ui/templatedialog4.ui:207
+#: sw/uiconfig/swriter/ui/templatedialog4.ui:212
msgctxt "templatedialog4|type"
msgid "Type"
msgstr "Typ"
-#: sw/uiconfig/swriter/ui/templatedialog4.ui:254
+#: sw/uiconfig/swriter/ui/templatedialog4.ui:259
msgctxt "templatedialog4|options"
msgid "Options"
msgstr "Optiounen"
-#: sw/uiconfig/swriter/ui/templatedialog4.ui:301
+#: sw/uiconfig/swriter/ui/templatedialog4.ui:306
msgctxt "templatedialog4|wrap"
msgid "Wrap"
msgstr ""
-#: sw/uiconfig/swriter/ui/templatedialog4.ui:348
+#: sw/uiconfig/swriter/ui/templatedialog4.ui:353
msgctxt "templatedialog4|area"
msgid "Area"
msgstr ""
-#: sw/uiconfig/swriter/ui/templatedialog4.ui:395
+#: sw/uiconfig/swriter/ui/templatedialog4.ui:400
msgctxt "templatedialog4|transparence"
msgid "Transparency"
msgstr "Transparenz"
-#: sw/uiconfig/swriter/ui/templatedialog4.ui:442
+#: sw/uiconfig/swriter/ui/templatedialog4.ui:447
msgctxt "templatedialog4|borders"
msgid "Borders"
msgstr "Konturen"
-#: sw/uiconfig/swriter/ui/templatedialog4.ui:489
+#: sw/uiconfig/swriter/ui/templatedialog4.ui:494
#, fuzzy
msgctxt "templatedialog4|columns"
msgid "Columns"
msgstr "~Kolonnen "
-#: sw/uiconfig/swriter/ui/templatedialog4.ui:536
+#: sw/uiconfig/swriter/ui/templatedialog4.ui:541
msgctxt "templatedialog4|macros"
msgid "Macro"
msgstr "Makro"
@@ -16965,53 +16963,53 @@ msgctxt "templatedialog8|TemplateDialog8"
msgid "Page Style"
msgstr "Säitevirlag: "
-#: sw/uiconfig/swriter/ui/templatedialog8.ui:147
+#: sw/uiconfig/swriter/ui/templatedialog8.ui:166
msgctxt "templatedialog8|organizer"
msgid "Organizer"
msgstr ""
-#: sw/uiconfig/swriter/ui/templatedialog8.ui:193
+#: sw/uiconfig/swriter/ui/templatedialog8.ui:212
msgctxt "templatedialog8|page"
msgid "Page"
msgstr "Säit"
-#: sw/uiconfig/swriter/ui/templatedialog8.ui:240
+#: sw/uiconfig/swriter/ui/templatedialog8.ui:259
msgctxt "templatedialog8|area"
msgid "Area"
msgstr ""
-#: sw/uiconfig/swriter/ui/templatedialog8.ui:287
+#: sw/uiconfig/swriter/ui/templatedialog8.ui:306
msgctxt "templatedialog8|transparence"
msgid "Transparency"
msgstr "Transparenz"
-#: sw/uiconfig/swriter/ui/templatedialog8.ui:334
+#: sw/uiconfig/swriter/ui/templatedialog8.ui:353
msgctxt "templatedialog8|header"
msgid "Header"
msgstr ""
-#: sw/uiconfig/swriter/ui/templatedialog8.ui:381
+#: sw/uiconfig/swriter/ui/templatedialog8.ui:400
msgctxt "templatedialog8|footer"
msgid "Footer"
msgstr ""
-#: sw/uiconfig/swriter/ui/templatedialog8.ui:428
+#: sw/uiconfig/swriter/ui/templatedialog8.ui:447
msgctxt "templatedialog8|borders"
msgid "Borders"
msgstr "Konturen"
-#: sw/uiconfig/swriter/ui/templatedialog8.ui:475
+#: sw/uiconfig/swriter/ui/templatedialog8.ui:494
#, fuzzy
msgctxt "templatedialog8|columns"
msgid "Columns"
msgstr "~Kolonnen "
-#: sw/uiconfig/swriter/ui/templatedialog8.ui:522
+#: sw/uiconfig/swriter/ui/templatedialog8.ui:541
msgctxt "templatedialog8|footnotes"
msgid "Footnote"
msgstr ""
-#: sw/uiconfig/swriter/ui/templatedialog8.ui:569
+#: sw/uiconfig/swriter/ui/templatedialog8.ui:588
msgctxt "templatedialog8|textgrid"
msgid "Text Grid"
msgstr ""
@@ -17026,32 +17024,32 @@ msgctxt "testmailsettings|TestMailSettings"
msgid "Test Account Settings"
msgstr ""
-#: sw/uiconfig/swriter/ui/testmailsettings.ui:124
+#: sw/uiconfig/swriter/ui/testmailsettings.ui:104
msgctxt "testmailsettings|establish"
msgid "Establish network connection"
msgstr ""
-#: sw/uiconfig/swriter/ui/testmailsettings.ui:136
+#: sw/uiconfig/swriter/ui/testmailsettings.ui:116
msgctxt "testmailsettings|find"
msgid "Find outgoing mail server"
msgstr ""
-#: sw/uiconfig/swriter/ui/testmailsettings.ui:148
+#: sw/uiconfig/swriter/ui/testmailsettings.ui:128
msgctxt "testmailsettings|result1"
msgid "Successful"
msgstr ""
-#: sw/uiconfig/swriter/ui/testmailsettings.ui:160
+#: sw/uiconfig/swriter/ui/testmailsettings.ui:140
msgctxt "testmailsettings|result2"
msgid "Failed"
msgstr ""
-#: sw/uiconfig/swriter/ui/testmailsettings.ui:175
+#: sw/uiconfig/swriter/ui/testmailsettings.ui:224
msgctxt "testmailsettings|label8"
msgid "%PRODUCTNAME is testing the e-mail account settings..."
msgstr ""
-#: sw/uiconfig/swriter/ui/testmailsettings.ui:241
+#: sw/uiconfig/swriter/ui/testmailsettings.ui:290
#, fuzzy
msgctxt "testmailsettings|label1"
msgid "Errors"
@@ -17077,62 +17075,62 @@ msgctxt "textgridpage|checkCB_SNAPTOCHARS"
msgid "_Snap to characters"
msgstr ""
-#: sw/uiconfig/swriter/ui/textgridpage.ui:162
+#: sw/uiconfig/swriter/ui/textgridpage.ui:160
msgctxt "textgridpage|labelGrid"
msgid "Grid"
msgstr "Raster"
-#: sw/uiconfig/swriter/ui/textgridpage.ui:212
+#: sw/uiconfig/swriter/ui/textgridpage.ui:210
msgctxt "textgridpage|labelFT_CHARSPERLINE"
msgid "Characters per line:"
msgstr ""
-#: sw/uiconfig/swriter/ui/textgridpage.ui:250
+#: sw/uiconfig/swriter/ui/textgridpage.ui:248
msgctxt "textgridpage|labelFT_LINESPERPAGE"
msgid "Lines per page:"
msgstr ""
-#: sw/uiconfig/swriter/ui/textgridpage.ui:316
+#: sw/uiconfig/swriter/ui/textgridpage.ui:313
msgctxt "textgridpage|labelFT_CHARWIDTH"
msgid "Character _width:"
msgstr ""
-#: sw/uiconfig/swriter/ui/textgridpage.ui:330
+#: sw/uiconfig/swriter/ui/textgridpage.ui:327
msgctxt "textgridpage|labelFT_RUBYSIZE"
msgid "Max. Ruby text size:"
msgstr ""
-#: sw/uiconfig/swriter/ui/textgridpage.ui:356
+#: sw/uiconfig/swriter/ui/textgridpage.ui:353
msgctxt "textgridpage|labelFT_TEXTSIZE"
msgid "Max. base text size:"
msgstr ""
-#: sw/uiconfig/swriter/ui/textgridpage.ui:392
+#: sw/uiconfig/swriter/ui/textgridpage.ui:389
msgctxt "textgridpage|checkCB_RUBYBELOW"
msgid "Ruby text below/left from base text"
msgstr ""
-#: sw/uiconfig/swriter/ui/textgridpage.ui:416
+#: sw/uiconfig/swriter/ui/textgridpage.ui:413
msgctxt "textgridpage|labelGridLayout"
msgid "Grid Layout"
msgstr ""
-#: sw/uiconfig/swriter/ui/textgridpage.ui:449
+#: sw/uiconfig/swriter/ui/textgridpage.ui:446
msgctxt "textgridpage|checkCB_DISPLAY"
msgid "Display grid"
msgstr ""
-#: sw/uiconfig/swriter/ui/textgridpage.ui:465
+#: sw/uiconfig/swriter/ui/textgridpage.ui:462
msgctxt "textgridpage|checkCB_PRINT"
msgid "Print grid"
msgstr ""
-#: sw/uiconfig/swriter/ui/textgridpage.ui:485
+#: sw/uiconfig/swriter/ui/textgridpage.ui:482
msgctxt "textgridpage|labelFT_COLOR"
msgid "Grid color:"
msgstr ""
-#: sw/uiconfig/swriter/ui/textgridpage.ui:524
+#: sw/uiconfig/swriter/ui/textgridpage.ui:521
msgctxt "textgridpage|labelFL_DISPLAY"
msgid "Grid Display"
msgstr ""
@@ -17241,28 +17239,28 @@ msgctxt "tocdialog|example-atkobject"
msgid "Preview"
msgstr "Iwwersiicht"
-#: sw/uiconfig/swriter/ui/tocdialog.ui:148
+#: sw/uiconfig/swriter/ui/tocdialog.ui:150
msgctxt "tocdialog|index"
msgid "Type"
msgstr "Typ"
-#: sw/uiconfig/swriter/ui/tocdialog.ui:170
+#: sw/uiconfig/swriter/ui/tocdialog.ui:172
msgctxt "tocdialog|entries"
msgid "Entries"
msgstr ""
-#: sw/uiconfig/swriter/ui/tocdialog.ui:193
+#: sw/uiconfig/swriter/ui/tocdialog.ui:195
msgctxt "tocdialog|styles"
msgid "Styles"
msgstr ""
-#: sw/uiconfig/swriter/ui/tocdialog.ui:216
+#: sw/uiconfig/swriter/ui/tocdialog.ui:218
#, fuzzy
msgctxt "tocdialog|columns"
msgid "Columns"
msgstr "~Kolonnen "
-#: sw/uiconfig/swriter/ui/tocdialog.ui:239
+#: sw/uiconfig/swriter/ui/tocdialog.ui:241
msgctxt "tocdialog|background"
msgid "Background"
msgstr "Hannergrond"
@@ -18022,94 +18020,94 @@ msgctxt "wrapdialog|WrapDialog"
msgid "Wrap"
msgstr ""
-#: sw/uiconfig/swriter/ui/wrappage.ui:47
+#: sw/uiconfig/swriter/ui/wrappage.ui:57
#, fuzzy
-msgctxt "wrappage|after"
-msgid "After"
-msgstr "~Duerno "
+msgctxt "wrappage|none"
+msgid "_None"
+msgstr "Keen"
-#: sw/uiconfig/swriter/ui/wrappage.ui:104
+#: sw/uiconfig/swriter/ui/wrappage.ui:79
#, fuzzy
msgctxt "wrappage|before"
msgid "Before"
msgstr "~Virdrun"
-#: sw/uiconfig/swriter/ui/wrappage.ui:161
+#: sw/uiconfig/swriter/ui/wrappage.ui:101
#, fuzzy
-msgctxt "wrappage|none"
-msgid "_None"
-msgstr "Keen"
+msgctxt "wrappage|after"
+msgid "After"
+msgstr "~Duerno "
-#: sw/uiconfig/swriter/ui/wrappage.ui:219
-msgctxt "wrappage|optimal"
-msgid "_Optimal"
-msgstr ""
+#: sw/uiconfig/swriter/ui/wrappage.ui:123
+#, fuzzy
+msgctxt "wrappage|parallel"
+msgid "_Parallel"
+msgstr "P~arallel"
-#: sw/uiconfig/swriter/ui/wrappage.ui:276
+#: sw/uiconfig/swriter/ui/wrappage.ui:145
msgctxt "wrappage|through"
msgid "Thro_ugh"
msgstr ""
-#: sw/uiconfig/swriter/ui/wrappage.ui:321
-#, fuzzy
-msgctxt "wrappage|parallel"
-msgid "_Parallel"
-msgstr "P~arallel"
+#: sw/uiconfig/swriter/ui/wrappage.ui:167
+msgctxt "wrappage|optimal"
+msgid "_Optimal"
+msgstr ""
-#: sw/uiconfig/swriter/ui/wrappage.ui:380
+#: sw/uiconfig/swriter/ui/wrappage.ui:195
#, fuzzy
msgctxt "wrappage|label1"
msgid "Settings"
msgstr "Astellung"
-#: sw/uiconfig/swriter/ui/wrappage.ui:428
+#: sw/uiconfig/swriter/ui/wrappage.ui:242
msgctxt "wrappage|label4"
msgid "L_eft:"
msgstr ""
-#: sw/uiconfig/swriter/ui/wrappage.ui:442
+#: sw/uiconfig/swriter/ui/wrappage.ui:256
#, fuzzy
msgctxt "wrappage|label5"
msgid "_Right:"
msgstr "Riets"
-#: sw/uiconfig/swriter/ui/wrappage.ui:456
+#: sw/uiconfig/swriter/ui/wrappage.ui:270
msgctxt "wrappage|label6"
msgid "_Top:"
msgstr ""
-#: sw/uiconfig/swriter/ui/wrappage.ui:470
+#: sw/uiconfig/swriter/ui/wrappage.ui:284
#, fuzzy
msgctxt "wrappage|label7"
msgid "_Bottom:"
msgstr "Ënnen"
-#: sw/uiconfig/swriter/ui/wrappage.ui:535
+#: sw/uiconfig/swriter/ui/wrappage.ui:354
msgctxt "wrappage|label2"
msgid "Spacing"
msgstr "Ofstand "
-#: sw/uiconfig/swriter/ui/wrappage.ui:572
+#: sw/uiconfig/swriter/ui/wrappage.ui:391
msgctxt "wrappage|anchoronly"
msgid "_First paragraph"
msgstr ""
-#: sw/uiconfig/swriter/ui/wrappage.ui:587
+#: sw/uiconfig/swriter/ui/wrappage.ui:406
msgctxt "wrappage|transparent"
msgid "In bac_kground"
msgstr ""
-#: sw/uiconfig/swriter/ui/wrappage.ui:602
+#: sw/uiconfig/swriter/ui/wrappage.ui:421
msgctxt "wrappage|outline"
msgid "_Contour"
msgstr ""
-#: sw/uiconfig/swriter/ui/wrappage.ui:617
+#: sw/uiconfig/swriter/ui/wrappage.ui:436
msgctxt "wrappage|outside"
msgid "Outside only"
msgstr ""
-#: sw/uiconfig/swriter/ui/wrappage.ui:638
+#: sw/uiconfig/swriter/ui/wrappage.ui:457
msgctxt "wrappage|label3"
msgid "Options"
msgstr "Optiounen"
diff --git a/source/lb/vcl/messages.po b/source/lb/vcl/messages.po
index 261af301e36..779a472e71a 100644
--- a/source/lb/vcl/messages.po
+++ b/source/lb/vcl/messages.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2018-07-07 19:04+0200\n"
+"POT-Creation-Date: 2018-10-02 17:56+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -1432,252 +1432,262 @@ msgctxt "printdialog|totalnumpages"
msgid "/ %n"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:331
+#: vcl/uiconfig/ui/printdialog.ui:246
+msgctxt "printdialog|forward"
+msgid "Next page"
+msgstr ""
+
+#: vcl/uiconfig/ui/printdialog.ui:261
+msgctxt "printdialog|backward"
+msgid "Previous page"
+msgstr ""
+
+#: vcl/uiconfig/ui/printdialog.ui:335
msgctxt "printdialog|label7"
msgid "Status:"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:343
+#: vcl/uiconfig/ui/printdialog.ui:350
#, fuzzy
msgctxt "printdialog|label8"
msgid "Location:"
msgstr "~Uert"
-#: vcl/uiconfig/ui/printdialog.ui:355
+#: vcl/uiconfig/ui/printdialog.ui:365
#, fuzzy
msgctxt "printdialog|label9"
msgid "Comment:"
msgstr "Kommentaren:"
-#: vcl/uiconfig/ui/printdialog.ui:367
+#: vcl/uiconfig/ui/printdialog.ui:380
msgctxt "printdialog|status"
msgid "Default printer"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:379
+#: vcl/uiconfig/ui/printdialog.ui:396
msgctxt "printdialog|location"
msgid "Place"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:391
+#: vcl/uiconfig/ui/printdialog.ui:412
msgctxt "printdialog|comment"
msgid "Long printer name"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:405
+#: vcl/uiconfig/ui/printdialog.ui:430
msgctxt "printdialog|label6"
msgid "Details"
msgstr "Detailer"
-#: vcl/uiconfig/ui/printdialog.ui:416
+#: vcl/uiconfig/ui/printdialog.ui:441
msgctxt "printdialog|setup"
msgid "Properties..."
msgstr "Eegeschaften..."
-#: vcl/uiconfig/ui/printdialog.ui:452
+#: vcl/uiconfig/ui/printdialog.ui:477
msgctxt "printdialog|label5"
msgid "Printer"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:492
+#: vcl/uiconfig/ui/printdialog.ui:517
#, fuzzy
msgctxt "printdialog|label14"
msgid "Number of copies"
msgstr "Unzuel vu Säiten:"
-#: vcl/uiconfig/ui/printdialog.ui:529
+#: vcl/uiconfig/ui/printdialog.ui:554
msgctxt "printdialog|collate"
msgid "Collate"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:587
+#: vcl/uiconfig/ui/printdialog.ui:612
#, fuzzy
msgctxt "printdialog|printallsheets"
msgid "All sheets"
msgstr "~All Blieder"
-#: vcl/uiconfig/ui/printdialog.ui:605
+#: vcl/uiconfig/ui/printdialog.ui:630
msgctxt "printdialog|printselectedsheets"
msgid "Selected sheets"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:622
+#: vcl/uiconfig/ui/printdialog.ui:647
msgctxt "printdialog|printselectedcells"
msgid "Selected cells"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:648
+#: vcl/uiconfig/ui/printdialog.ui:673
msgctxt "printdialog|fromwhich"
msgid "From which print"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:666
+#: vcl/uiconfig/ui/printdialog.ui:691
msgctxt "printdialog|printallpages"
msgid "All pages"
msgstr "All Säiten"
-#: vcl/uiconfig/ui/printdialog.ui:688
+#: vcl/uiconfig/ui/printdialog.ui:713
msgctxt "printdialog|printpages"
msgid "Pages"
msgstr "Säiten"
-#: vcl/uiconfig/ui/printdialog.ui:723
+#: vcl/uiconfig/ui/printdialog.ui:754
msgctxt "printdialog|printselection"
msgid "Selection"
msgstr "Auswiel"
-#: vcl/uiconfig/ui/printdialog.ui:740
+#: vcl/uiconfig/ui/printdialog.ui:771
msgctxt "printdialog|reverseorder"
msgid "Print in reverse page order"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:773
+#: vcl/uiconfig/ui/printdialog.ui:804
msgctxt "printdialog|label13"
msgid "Range and Copies"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:806
+#: vcl/uiconfig/ui/printdialog.ui:837
msgctxt "printdialog|label16"
msgid "Comments"
msgstr "Kommentaren"
-#: vcl/uiconfig/ui/printdialog.ui:835
+#: vcl/uiconfig/ui/printdialog.ui:866
#, fuzzy
msgctxt "printdialog|label15"
msgid "Print"
msgstr "~Printen"
-#: vcl/uiconfig/ui/printdialog.ui:874
+#: vcl/uiconfig/ui/printdialog.ui:905
msgctxt "printdialog|label10"
msgid "Document"
msgstr "Dokument"
-#: vcl/uiconfig/ui/printdialog.ui:911
+#: vcl/uiconfig/ui/printdialog.ui:942
msgctxt "printdialog|label12"
msgid "Slides per page"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:936
+#: vcl/uiconfig/ui/printdialog.ui:967
msgctxt "printdialog|label19"
msgid "Order"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:972
+#: vcl/uiconfig/ui/printdialog.ui:1003
#, fuzzy
msgctxt "printdialog|label11"
msgid "Print"
msgstr "~Printen"
-#: vcl/uiconfig/ui/printdialog.ui:990
+#: vcl/uiconfig/ui/printdialog.ui:1021
msgctxt "printdialog|label1"
msgid "General"
msgstr "Allgemeng"
-#: vcl/uiconfig/ui/printdialog.ui:1014
+#: vcl/uiconfig/ui/printdialog.ui:1045
msgctxt "printdialog|customlabel"
msgid "custom"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:1064
+#: vcl/uiconfig/ui/printdialog.ui:1098
msgctxt "printdialog|pagespersheetbtn"
msgid "Pages per sheet"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:1098
+#: vcl/uiconfig/ui/printdialog.ui:1135
msgctxt "printdialog|brochure"
msgid "Brochure"
msgstr "Brochure"
-#: vcl/uiconfig/ui/printdialog.ui:1119
+#: vcl/uiconfig/ui/printdialog.ui:1156
msgctxt "printdialog|pagestxt"
msgid "Pages"
msgstr "Säiten"
-#: vcl/uiconfig/ui/printdialog.ui:1134
+#: vcl/uiconfig/ui/printdialog.ui:1171
msgctxt "printdialog|sheetmargintxt1"
msgid "Margin"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:1149
+#: vcl/uiconfig/ui/printdialog.ui:1186
#, fuzzy
msgctxt "printdialog|orientationtxt"
msgid "Orientation"
msgstr "Presentatioun"
-#: vcl/uiconfig/ui/printdialog.ui:1164
+#: vcl/uiconfig/ui/printdialog.ui:1201
msgctxt "printdialog|pagemargintxt1"
msgid "Distance"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:1247
+#: vcl/uiconfig/ui/printdialog.ui:1284
msgctxt "printdialog|by"
msgid "by"
msgstr "vun"
-#: vcl/uiconfig/ui/printdialog.ui:1261
+#: vcl/uiconfig/ui/printdialog.ui:1298
msgctxt "printdialog|pagemargintxt2"
msgid "between pages"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:1274
+#: vcl/uiconfig/ui/printdialog.ui:1311
msgctxt "printdialog|sheetmargintxt2"
msgid "to sheet border"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:1284
+#: vcl/uiconfig/ui/printdialog.ui:1321
msgctxt "printdialog|bordercb"
msgid "Draw a border around each page"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:1306
+#: vcl/uiconfig/ui/printdialog.ui:1343
msgctxt "printdialog|ordertxt"
msgid "Order"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:1345
+#: vcl/uiconfig/ui/printdialog.ui:1382
msgctxt "printdialog|label18"
msgid "Layout"
msgstr "Layout"
-#: vcl/uiconfig/ui/printdialog.ui:1379
+#: vcl/uiconfig/ui/printdialog.ui:1416
msgctxt "printdialog|label17"
msgid "Include"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:1408
+#: vcl/uiconfig/ui/printdialog.ui:1445
msgctxt "printdialog|label3"
msgid "Page Sides"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:1430
+#: vcl/uiconfig/ui/printdialog.ui:1467
msgctxt "printdialog|label2"
msgid "Page Layout"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:1457
+#: vcl/uiconfig/ui/printdialog.ui:1494
msgctxt "printdialog|singleprintjob"
msgid "Create separate print jobs for collated output"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:1472
+#: vcl/uiconfig/ui/printdialog.ui:1509
msgctxt "printdialog|printpaperfromsetup"
msgid "Use only paper tray from printer preferences"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:1486
+#: vcl/uiconfig/ui/printdialog.ui:1523
msgctxt "printdialog|papersizefromsetup"
msgid "Use only paper size from printer preferences"
msgstr ""
-#: vcl/uiconfig/ui/printdialog.ui:1508
+#: vcl/uiconfig/ui/printdialog.ui:1545
msgctxt "printdialog|label21"
msgid "Options"
msgstr "Optiounen"
-#: vcl/uiconfig/ui/printdialog.ui:1523
-msgctxt "printdialog|label20"
+#: vcl/uiconfig/ui/printdialog.ui:1560
+msgctxt "printdialog|optionstab"
msgid "Options"
-msgstr "Optiounen"
+msgstr ""
#: vcl/uiconfig/ui/printerdevicepage.ui:34
#, fuzzy
@@ -1800,12 +1810,12 @@ msgctxt "printerpropertiesdialog|PrinterPropertiesDialog"
msgid "Properties of %s"
msgstr ""
-#: vcl/uiconfig/ui/printerpropertiesdialog.ui:103
+#: vcl/uiconfig/ui/printerpropertiesdialog.ui:105
msgctxt "printerpropertiesdialog|paper"
msgid "Paper"
msgstr ""
-#: vcl/uiconfig/ui/printerpropertiesdialog.ui:150
+#: vcl/uiconfig/ui/printerpropertiesdialog.ui:152
msgctxt "printerpropertiesdialog|device"
msgid "Device"
msgstr ""
diff --git a/source/lb/xmlsecurity/messages.po b/source/lb/xmlsecurity/messages.po
index 61ffc1b3cf9..301469c7755 100644
--- a/source/lb/xmlsecurity/messages.po
+++ b/source/lb/xmlsecurity/messages.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://bugs.libreoffice.org/enter_bug.cgi?product=LibreOffice&bug_status=UNCONFIRMED&component=UI\n"
-"POT-Creation-Date: 2018-05-22 13:17+0200\n"
+"POT-Creation-Date: 2018-10-02 17:57+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -282,12 +282,12 @@ msgctxt "macrosecuritydialog|MacroSecurityDialog"
msgid "Macro Security"
msgstr ""
-#: xmlsecurity/uiconfig/ui/macrosecuritydialog.ui:106
+#: xmlsecurity/uiconfig/ui/macrosecuritydialog.ui:108
msgctxt "macrosecuritydialog|SecurityLevelPage"
msgid "Security Level"
msgstr ""
-#: xmlsecurity/uiconfig/ui/macrosecuritydialog.ui:128
+#: xmlsecurity/uiconfig/ui/macrosecuritydialog.ui:130
msgctxt "macrosecuritydialog|SecurityTrustPage"
msgid "Trusted Sources"
msgstr ""
@@ -475,17 +475,17 @@ msgctxt "viewcertdialog|ViewCertDialog"
msgid "View Certificate"
msgstr ""
-#: xmlsecurity/uiconfig/ui/viewcertdialog.ui:78
+#: xmlsecurity/uiconfig/ui/viewcertdialog.ui:80
msgctxt "viewcertdialog|general"
msgid "General"
msgstr "Allgemeng"
-#: xmlsecurity/uiconfig/ui/viewcertdialog.ui:100
+#: xmlsecurity/uiconfig/ui/viewcertdialog.ui:102
msgctxt "viewcertdialog|details"
msgid "Details"
msgstr "Detailer"
-#: xmlsecurity/uiconfig/ui/viewcertdialog.ui:123
+#: xmlsecurity/uiconfig/ui/viewcertdialog.ui:125
msgctxt "viewcertdialog|path"
msgid "Certification Path"
msgstr ""
x?h=private/Sweetshark/lessdepend&id=e3b20eddac9e2a84e9dcb88c97d9a70492ea6ecb&id2=03c88c8527b54971c032cd80dc43ec44cd75b515'>basegfx/inc/basegfx/range/b2irectangle.hxx42
-rw-r--r--basegfx/inc/basegfx/range/b3drange.hxx302
-rw-r--r--basegfx/inc/basegfx/range/b3dvolume.hxx42
-rw-r--r--basegfx/inc/basegfx/range/b3ibox.hxx259
-rw-r--r--basegfx/inc/basegfx/range/b3irange.hxx262
-rw-r--r--basegfx/inc/basegfx/range/b3ivolume.hxx42
-rw-r--r--basegfx/inc/basegfx/range/basicbox.hxx136
-rw-r--r--basegfx/inc/basegfx/range/basicrange.hxx297
-rw-r--r--basegfx/inc/basegfx/range/rangeexpander.hxx83
-rw-r--r--basegfx/inc/basegfx/raster/bpixelraster.hxx116
-rw-r--r--basegfx/inc/basegfx/raster/bzpixelraster.hxx96
-rw-r--r--basegfx/inc/basegfx/raster/rasterconvert3d.hxx345
-rw-r--r--basegfx/inc/basegfx/tools/b2dclipstate.hxx119
-rwxr-xr-xbasegfx/inc/basegfx/tools/canvastools.hxx221
-rw-r--r--basegfx/inc/basegfx/tools/debugplotter.hxx107
-rw-r--r--basegfx/inc/basegfx/tools/gradienttools.hxx410
-rw-r--r--basegfx/inc/basegfx/tools/keystoplerp.hxx100
-rw-r--r--basegfx/inc/basegfx/tools/lerp.hxx60
-rw-r--r--basegfx/inc/basegfx/tools/rectcliptools.hxx88
-rw-r--r--basegfx/inc/basegfx/tools/tools.hxx131
-rwxr-xr-xbasegfx/inc/basegfx/tools/unopolypolygon.hxx112
-rw-r--r--basegfx/inc/basegfx/tuple/b2dtuple.hxx359
-rw-r--r--basegfx/inc/basegfx/tuple/b2i64tuple.hxx312
-rw-r--r--basegfx/inc/basegfx/tuple/b2ituple.hxx237
-rw-r--r--basegfx/inc/basegfx/tuple/b3dtuple.hxx433
-rw-r--r--basegfx/inc/basegfx/tuple/b3i64tuple.hxx349
-rw-r--r--basegfx/inc/basegfx/tuple/b3ituple.hxx349
-rw-r--r--basegfx/inc/basegfx/vector/b2dsize.hxx42
-rw-r--r--basegfx/inc/basegfx/vector/b2dvector.hxx267
-rw-r--r--basegfx/inc/basegfx/vector/b2enums.hxx76
-rw-r--r--basegfx/inc/basegfx/vector/b2isize.hxx42
-rw-r--r--basegfx/inc/basegfx/vector/b2ivector.hxx230
-rw-r--r--basegfx/inc/basegfx/vector/b3dsize.hxx42
-rw-r--r--basegfx/inc/basegfx/vector/b3dvector.hxx340
-rw-r--r--basegfx/inc/basegfx/vector/b3isize.hxx42
-rw-r--r--basegfx/inc/basegfx/vector/b3ivector.hxx259
-rw-r--r--basegfx/inc/makefile.mk47
-rw-r--r--basegfx/inc/pch/precompiled_basegfx.cxx29
-rw-r--r--basegfx/inc/pch/precompiled_basegfx.hxx32
-rw-r--r--basegfx/prj/build.lst18
-rw-r--r--basegfx/prj/d.lst113
-rw-r--r--basegfx/qa/mkpolygons.pl344
-rw-r--r--basegfx/source/color/bcolor.cxx40
-rw-r--r--basegfx/source/color/bcolormodifier.cxx72
-rw-r--r--basegfx/source/color/bcolortools.cxx268
-rw-r--r--basegfx/source/color/makefile.mk49
-rw-r--r--basegfx/source/curve/b2dbeziertools.cxx163
-rw-r--r--basegfx/source/curve/b2dcubicbezier.cxx1105
-rw-r--r--basegfx/source/curve/b2dquadraticbezier.cxx105
-rw-r--r--basegfx/source/curve/makefile.mk49
-rw-r--r--basegfx/source/inc/PolygonPoint.hxx538
-rw-r--r--basegfx/source/inc/hommatrixtemplate.hxx613
-rw-r--r--basegfx/source/inc/polygontemplate.hxx538
-rw-r--r--basegfx/source/matrix/b2dhommatrix.cxx454
-rw-r--r--basegfx/source/matrix/b2dhommatrixtools.cxx401
-rw-r--r--basegfx/source/matrix/b3dhommatrix.cxx596
-rw-r--r--basegfx/source/matrix/makefile.mk49
-rw-r--r--basegfx/source/numeric/ftools.cxx38
-rw-r--r--basegfx/source/numeric/makefile.mk47
-rw-r--r--basegfx/source/pixel/bpixel.cxx51
-rw-r--r--basegfx/source/pixel/makefile.mk47
-rw-r--r--basegfx/source/point/b2dhompoint.cxx259
-rw-r--r--basegfx/source/point/b2dpoint.cxx85
-rw-r--r--basegfx/source/point/b2ipoint.cxx76
-rw-r--r--basegfx/source/point/b3dhompoint.cxx44
-rw-r--r--basegfx/source/point/b3dpoint.cxx85
-rw-r--r--basegfx/source/point/b3ipoint.cxx79
-rw-r--r--basegfx/source/point/makefile.mk52
-rw-r--r--basegfx/source/polygon/b2dlinegeometry.cxx725
-rw-r--r--basegfx/source/polygon/b2dpolygon.cxx1652
-rw-r--r--basegfx/source/polygon/b2dpolygonclipper.cxx873
-rw-r--r--basegfx/source/polygon/b2dpolygoncutandtouch.cxx1301
-rw-r--r--basegfx/source/polygon/b2dpolygontools.cxx3613
-rw-r--r--basegfx/source/polygon/b2dpolygontriangulator.cxx466
-rw-r--r--basegfx/source/polygon/b2dpolypolygon.cxx432
-rw-r--r--basegfx/source/polygon/b2dpolypolygoncutter.cxx1014
-rw-r--r--basegfx/source/polygon/b2dpolypolygonrasterconverter.cxx702
-rw-r--r--basegfx/source/polygon/b2dpolypolygontools.cxx585
-rw-r--r--basegfx/source/polygon/b2dsvgpolypolygon.cxx1108
-rw-r--r--basegfx/source/polygon/b2dtrapezoid.cxx1228
-rw-r--r--basegfx/source/polygon/b3dpolygon.cxx1816
-rw-r--r--basegfx/source/polygon/b3dpolygonclipper.cxx574
-rw-r--r--basegfx/source/polygon/b3dpolygontools.cxx1263
-rw-r--r--basegfx/source/polygon/b3dpolypolygon.cxx446
-rw-r--r--basegfx/source/polygon/b3dpolypolygontools.cxx556
-rw-r--r--basegfx/source/polygon/makefile.mk63
-rw-r--r--basegfx/source/range/b1drange.cxx56
-rw-r--r--basegfx/source/range/b2dpolyrange.cxx423
-rw-r--r--basegfx/source/range/b2drange.cxx74
-rw-r--r--basegfx/source/range/b2drangeclipper.cxx950
-rw-r--r--basegfx/source/range/b2xrange.cxx142
-rw-r--r--basegfx/source/range/b3drange.cxx85
-rw-r--r--basegfx/source/range/makefile.mk52
-rw-r--r--basegfx/source/raster/bpixelraster.cxx40
-rw-r--r--basegfx/source/raster/bzpixelraster.cxx40
-rw-r--r--basegfx/source/raster/makefile.mk49
-rw-r--r--basegfx/source/raster/rasterconvert3d.cxx353
-rw-r--r--basegfx/source/tools/b2dclipstate.cxx662
-rwxr-xr-xbasegfx/source/tools/canvastools.cxx674
-rwxr-xr-xbasegfx/source/tools/debugplotter.cxx413
-rw-r--r--basegfx/source/tools/gradienttools.cxx349
-rw-r--r--basegfx/source/tools/keystoplerp.cxx107
-rw-r--r--basegfx/source/tools/liangbarsky.cxx132
-rwxr-xr-xbasegfx/source/tools/makefile.mk51
-rw-r--r--basegfx/source/tools/tools.cxx124
-rwxr-xr-xbasegfx/source/tools/unopolypolygon.cxx486
-rw-r--r--basegfx/source/tuple/b2dtuple.cxx84
-rw-r--r--basegfx/source/tuple/b2i64tuple.cxx44
-rw-r--r--basegfx/source/tuple/b2ituple.cxx153
-rw-r--r--basegfx/source/tuple/b3dtuple.cxx55
-rw-r--r--basegfx/source/tuple/b3i64tuple.cxx43
-rw-r--r--basegfx/source/tuple/b3ituple.cxx43
-rw-r--r--basegfx/source/tuple/makefile.mk52
-rw-r--r--basegfx/source/vector/b2dvector.cxx219
-rw-r--r--basegfx/source/vector/b2ivector.cxx159
-rw-r--r--basegfx/source/vector/b3dvector.cxx115
-rw-r--r--basegfx/source/vector/b3ivector.cxx51
-rw-r--r--basegfx/source/vector/makefile.mk50
-rw-r--r--basegfx/source/workbench/Makefile16
-rw-r--r--basegfx/source/workbench/bezierclip.cxx2057
-rw-r--r--basegfx/source/workbench/bezierclip.hxx93
-rw-r--r--basegfx/source/workbench/convexhull.cxx213
-rw-r--r--basegfx/source/workbench/gauss.hxx172
-rw-r--r--basegfx/test/basegfx1d.cxx75
-rw-r--r--basegfx/test/basegfx2d.cxx1463
-rw-r--r--basegfx/test/basegfx3d.cxx224
-rw-r--r--basegfx/test/basegfxtools.cxx112
-rw-r--r--basegfx/test/boxclipper.cxx421
-rw-r--r--basegfx/test/clipstate.cxx180
-rw-r--r--basegfx/test/export.map34
-rw-r--r--basegfx/test/genericclipper.cxx161
-rw-r--r--basegfx/test/makefile.mk87
-rw-r--r--basegfx/test/testtools.cxx235
-rw-r--r--basegfx/test/testtools.hxx98
-rw-r--r--basegfx/util/basegfx.flt6
-rw-r--r--basegfx/util/makefile.mk85
-rw-r--r--basic/inc/basic/basicmanagerrepository.hxx146
-rw-r--r--basic/inc/basic/basicrt.hxx79
-rw-r--r--basic/inc/basic/basmgr.hxx261
-rw-r--r--basic/inc/basic/basrdll.hxx59
-rw-r--r--basic/inc/basic/dispdefs.hxx38
-rw-r--r--basic/inc/basic/mybasic.hxx94
-rw-r--r--basic/inc/basic/process.hxx63
-rw-r--r--basic/inc/basic/sbdef.hxx110
-rw-r--r--basic/inc/basic/sberrors.hxx562
-rw-r--r--basic/inc/basic/sbmeth.hxx101
-rw-r--r--basic/inc/basic/sbmod.hxx187
-rw-r--r--basic/inc/basic/sbobjmod.hxx119
-rw-r--r--basic/inc/basic/sbprop.hxx80
-rw-r--r--basic/inc/basic/sbstar.hxx220
-rw-r--r--basic/inc/basic/sbstdobj.hxx145
-rw-r--r--basic/inc/basic/sbuno.hxx47
-rw-r--r--basic/inc/basic/sbx.hxx369
-rw-r--r--basic/inc/basic/sbxbase.hxx60
-rw-r--r--basic/inc/basic/sbxcore.hxx181
-rw-r--r--basic/inc/basic/sbxdef.hxx384
-rw-r--r--basic/inc/basic/sbxfac.hxx48
-rw-r--r--basic/inc/basic/sbxform.hxx181
-rw-r--r--basic/inc/basic/sbxmeth.hxx62
-rw-r--r--basic/inc/basic/sbxmstrm.hxx49
-rw-r--r--basic/inc/basic/sbxobj.hxx125
-rw-r--r--basic/inc/basic/sbxprop.hxx61
-rw-r--r--basic/inc/basic/sbxvar.hxx514
-rw-r--r--basic/inc/basic/testtool.hxx160
-rw-r--r--basic/inc/basic/ttglobal.hrc49
-rw-r--r--basic/inc/basic/ttstrhlp.hxx76
-rw-r--r--basic/inc/basrid.hxx45
-rw-r--r--basic/inc/makefile.mk47
-rw-r--r--basic/inc/modsizeexceeded.hxx61
-rw-r--r--basic/inc/pch/precompiled_basic.cxx29
-rw-r--r--basic/inc/pch/precompiled_basic.hxx288
-rw-r--r--basic/inc/sb.hrc47
-rw-r--r--basic/inc/sb.hxx42
-rw-r--r--basic/inc/svtmsg.hrc115
-rw-r--r--basic/inc/testtool.hrc36
-rw-r--r--basic/inc/ttmsg.hrc111
-rwxr-xr-xbasic/prj/build.lst13
-rw-r--r--basic/prj/d.lst60
-rw-r--r--basic/source/app/app.cxx1948
-rw-r--r--basic/source/app/app.hxx196
-rw-r--r--basic/source/app/appbased.cxx299
-rw-r--r--basic/source/app/appbased.hxx74
-rw-r--r--basic/source/app/appedit.cxx301
-rw-r--r--basic/source/app/appedit.hxx70
-rw-r--r--basic/source/app/apperror.cxx115
-rw-r--r--basic/source/app/apperror.hxx49
-rw-r--r--basic/source/app/appwin.cxx657
-rw-r--r--basic/source/app/appwin.hxx138
-rw-r--r--basic/source/app/basic.hrc184
-rw-r--r--basic/source/app/basic.src1536
-rw-r--r--basic/source/app/basicrt.cxx144
-rw-r--r--basic/source/app/basmsg.hrc45
-rw-r--r--basic/source/app/basmsg.src54
-rw-r--r--basic/source/app/brkpnts.cxx386
-rw-r--r--basic/source/app/brkpnts.hxx94
-rw-r--r--basic/source/app/dataedit.hxx116
-rw-r--r--basic/source/app/dialogs.cxx1507
-rw-r--r--basic/source/app/dialogs.hxx371
-rw-r--r--basic/source/app/makefile.mk101
-rw-r--r--basic/source/app/msgedit.cxx999
-rw-r--r--basic/source/app/msgedit.hxx114
-rw-r--r--basic/source/app/mybasic.cxx304
-rw-r--r--basic/source/app/printer.cxx122
-rw-r--r--basic/source/app/printer.hxx52
-rw-r--r--basic/source/app/process.cxx229
-rw-r--r--basic/source/app/processw.cxx282
-rw-r--r--basic/source/app/processw.hxx90
-rw-r--r--basic/source/app/resids.hrc158
-rw-r--r--basic/source/app/status.cxx125
-rw-r--r--basic/source/app/status.hxx54
-rw-r--r--basic/source/app/svtmsg.src339
-rw-r--r--basic/source/app/testbasi.cxx31
-rw-r--r--basic/source/app/testtool.idl47
-rw-r--r--basic/source/app/testtool.src61
-rw-r--r--basic/source/app/textedit.cxx866
-rw-r--r--basic/source/app/textedit.hxx138
-rw-r--r--basic/source/app/ttbasic.cxx36
-rw-r--r--basic/source/app/ttbasic.hxx32
-rw-r--r--basic/source/app/ttmsg.src160
-rw-r--r--basic/source/basmgr/basicmanagerrepository.cxx641
-rw-r--r--basic/source/basmgr/basmgr.cxx2490
-rw-r--r--basic/source/basmgr/makefile.mk46
-rw-r--r--basic/source/classes/disas.cxx687
-rw-r--r--basic/source/classes/errobject.cxx225
-rw-r--r--basic/source/classes/eventatt.cxx647
-rw-r--r--basic/source/classes/image.cxx544
-rw-r--r--basic/source/classes/makefile.mk76
-rw-r--r--basic/source/classes/propacc.cxx430
-rw-r--r--basic/source/classes/sb.cxx2109
-rw-r--r--basic/source/classes/sb.src681
-rw-r--r--basic/source/classes/sbintern.cxx82
-rwxr-xr-xbasic/source/classes/sbunoobj.cxx4434
-rw-r--r--basic/source/classes/sbxmod.cxx2456
-rw-r--r--basic/source/comp/buffer.cxx250
-rw-r--r--basic/source/comp/codegen.cxx539
-rw-r--r--basic/source/comp/dim.cxx1203
-rw-r--r--basic/source/comp/exprgen.cxx270
-rw-r--r--basic/source/comp/exprnode.cxx488
-rw-r--r--basic/source/comp/exprtree.cxx1136
-rw-r--r--basic/source/comp/io.cxx358
-rw-r--r--basic/source/comp/loops.cxx558
-rw-r--r--basic/source/comp/makefile.mk60
-rw-r--r--basic/source/comp/parser.cxx863
-rwxr-xr-xbasic/source/comp/sbcomp.cxx477
-rw-r--r--basic/source/comp/scanner.cxx582
-rw-r--r--basic/source/comp/symtbl.cxx536
-rw-r--r--basic/source/comp/token.cxx714
-rw-r--r--basic/source/inc/buffer.hxx63
-rw-r--r--basic/source/inc/codegen.hxx92
-rw-r--r--basic/source/inc/collelem.hxx47
-rw-r--r--basic/source/inc/disas.hxx72
-rw-r--r--basic/source/inc/dlgcont.hxx175
-rw-r--r--basic/source/inc/errobject.hxx52
-rw-r--r--basic/source/inc/expr.hxx266
-rw-r--r--basic/source/inc/filefmt.hxx178
-rw-r--r--basic/source/inc/image.hxx110
-rw-r--r--basic/source/inc/iosys.hxx113
-rw-r--r--basic/source/inc/namecont.hxx766
-rw-r--r--basic/source/inc/object.hxx100
-rw-r--r--basic/source/inc/opcodes.hxx172
-rw-r--r--basic/source/inc/parser.hxx153
-rw-r--r--basic/source/inc/propacc.hxx203
-rw-r--r--basic/source/inc/runtime.hxx530
-rw-r--r--basic/source/inc/sbcomp.hxx38
-rw-r--r--basic/source/inc/sbintern.hxx150
-rw-r--r--basic/source/inc/sbjsmeth.hxx53
-rw-r--r--basic/source/inc/sbjsmod.hxx50
-rwxr-xr-xbasic/source/inc/sbtrace.hxx42
-rw-r--r--basic/source/inc/sbunoobj.hxx326
-rw-r--r--basic/source/inc/scanner.hxx146
-rw-r--r--basic/source/inc/scriptcont.hxx199
-rw-r--r--basic/source/inc/stdobj.hxx51
-rw-r--r--basic/source/inc/symtbl.hxx250
-rw-r--r--basic/source/inc/token.hxx183
-rw-r--r--basic/source/runtime/basrdll.cxx104
-rw-r--r--basic/source/runtime/ddectrl.cxx192
-rw-r--r--basic/source/runtime/ddectrl.hxx64
-rw-r--r--basic/source/runtime/dllmgr.cxx738
-rw-r--r--basic/source/runtime/dllmgr.hxx60
-rw-r--r--basic/source/runtime/inputbox.cxx197
-rw-r--r--basic/source/runtime/iosys.cxx1048
-rw-r--r--basic/source/runtime/makefile.mk71
-rw-r--r--basic/source/runtime/methods.cxx4540
-rw-r--r--basic/source/runtime/methods1.cxx2588
-rw-r--r--basic/source/runtime/props.cxx776
-rw-r--r--basic/source/runtime/rtlproto.hxx349
-rw-r--r--basic/source/runtime/runtime.cxx1268
-rw-r--r--basic/source/runtime/stdobj.cxx788
-rw-r--r--basic/source/runtime/stdobj1.cxx551
-rw-r--r--basic/source/runtime/step0.cxx1325
-rw-r--r--basic/source/runtime/step1.cxx574
-rwxr-xr-xbasic/source/runtime/step2.cxx1261
-rw-r--r--basic/source/runtime/wnt-mingw.s53
-rw-r--r--basic/source/runtime/wnt.asm56
-rw-r--r--basic/source/sample/collelem.cxx79
-rw-r--r--basic/source/sample/makefile.mk58
-rw-r--r--basic/source/sample/object.cxx278
-rw-r--r--basic/source/sample/sample.bas39
-rw-r--r--basic/source/sbx/format.src85
-rw-r--r--basic/source/sbx/makefile.mk77
-rw-r--r--basic/source/sbx/sbxarray.cxx857
-rw-r--r--basic/source/sbx/sbxbase.cxx455
-rw-r--r--basic/source/sbx/sbxbool.cxx252
-rw-r--r--basic/source/sbx/sbxbyte.cxx329
-rw-r--r--basic/source/sbx/sbxchar.cxx324
-rw-r--r--basic/source/sbx/sbxcoll.cxx301
-rw-r--r--basic/source/sbx/sbxconv.hxx151
-rw-r--r--basic/source/sbx/sbxcurr.cxx395
-rw-r--r--basic/source/sbx/sbxdate.cxx406
-rw-r--r--basic/source/sbx/sbxdbl.cxx306
-rw-r--r--basic/source/sbx/sbxdec.cxx797
-rw-r--r--basic/source/sbx/sbxdec.hxx122
-rw-r--r--basic/source/sbx/sbxexec.cxx401
-rw-r--r--basic/source/sbx/sbxform.cxx1168
-rw-r--r--basic/source/sbx/sbxint.cxx963
-rw-r--r--basic/source/sbx/sbxlng.cxx341
-rw-r--r--basic/source/sbx/sbxmstrm.cxx39
-rw-r--r--basic/source/sbx/sbxobj.cxx1145
-rw-r--r--basic/source/sbx/sbxres.cxx91
-rw-r--r--basic/source/sbx/sbxres.hxx87
-rw-r--r--basic/source/sbx/sbxscan.cxx968
-rw-r--r--basic/source/sbx/sbxsng.cxx359
-rw-r--r--basic/source/sbx/sbxstr.cxx319
-rw-r--r--basic/source/sbx/sbxuint.cxx331
-rw-r--r--basic/source/sbx/sbxulng.cxx321
-rw-r--r--basic/source/sbx/sbxvals.cxx109
-rw-r--r--basic/source/sbx/sbxvalue.cxx1858
-rw-r--r--basic/source/sbx/sbxvar.cxx644
-rw-r--r--basic/source/uno/dlgcont.cxx658
-rw-r--r--basic/source/uno/makefile.mk49
-rw-r--r--basic/source/uno/modsizeexceeded.cxx68
-rw-r--r--basic/source/uno/namecont.cxx3506
-rw-r--r--basic/source/uno/sbmodule.cxx44
-rw-r--r--basic/source/uno/sbmodule.hxx45
-rw-r--r--basic/source/uno/sbservices.cxx63
-rw-r--r--basic/source/uno/scriptcont.cxx1328
-rw-r--r--basic/util/makefile.mk152
-rw-r--r--basic/util/sb.component39
-rw-r--r--basic/win/res/basic.icobin0 -> 766 bytes-rw-r--r--basic/win/res/testtool.icobin0 -> 766 bytes-rw-r--r--basic/win/res/work.icobin0 -> 766 bytes-rw-r--r--basic/workben/basmgr.src31
-rw-r--r--basic/workben/makefile.mk89
-rw-r--r--basic/workben/mgrtest.cxx591
-rw-r--r--bean/com/sun/star/beans/ContainerFactory.java47
-rw-r--r--bean/com/sun/star/beans/JavaWindowPeerFake.java122
-rw-r--r--bean/com/sun/star/beans/LocalOfficeConnection.java617
-rw-r--r--bean/com/sun/star/beans/LocalOfficeWindow.java309
-rw-r--r--bean/com/sun/star/beans/NativeConnection.java59
-rw-r--r--bean/com/sun/star/beans/NativeService.java36
-rw-r--r--bean/com/sun/star/beans/OfficeConnection.java79
-rw-r--r--bean/com/sun/star/beans/OfficeWindow.java55
-rw-r--r--bean/com/sun/star/beans/makefile.mk64
-rw-r--r--bean/com/sun/star/comp/beans/CallWatchThread.java128
-rw-r--r--bean/com/sun/star/comp/beans/ContainerFactory.java47
-rw-r--r--bean/com/sun/star/comp/beans/Controller.java110
-rw-r--r--bean/com/sun/star/comp/beans/Frame.java182
-rw-r--r--bean/com/sun/star/comp/beans/HasConnectionException.java40
-rw-r--r--bean/com/sun/star/comp/beans/InvalidArgumentException.java38
-rw-r--r--bean/com/sun/star/comp/beans/JavaWindowPeerFake.java122
-rw-r--r--bean/com/sun/star/comp/beans/LocalOfficeConnection.java834
-rw-r--r--bean/com/sun/star/comp/beans/LocalOfficeWindow.java288
-rw-r--r--bean/com/sun/star/comp/beans/NativeConnection.java62
-rw-r--r--bean/com/sun/star/comp/beans/NativeService.java37
-rw-r--r--bean/com/sun/star/comp/beans/NoConnectionException.java40
-rw-r--r--bean/com/sun/star/comp/beans/NoDocumentException.java38
-rw-r--r--bean/com/sun/star/comp/beans/OOoBean.java1518
-rw-r--r--bean/com/sun/star/comp/beans/OfficeConnection.java80
-rw-r--r--bean/com/sun/star/comp/beans/OfficeDocument.java226
-rw-r--r--bean/com/sun/star/comp/beans/OfficeWindow.java56
-rw-r--r--bean/com/sun/star/comp/beans/SystemWindowException.java41
-rw-r--r--bean/com/sun/star/comp/beans/Wrapper.java108
-rw-r--r--bean/com/sun/star/comp/beans/makefile.mk75
-rw-r--r--bean/native/unix/com_sun_star_beans_LocalOfficeWindow.c99
-rw-r--r--bean/native/unix/com_sun_star_comp_beans_LocalOfficeWindow.c147
-rw-r--r--bean/native/unix/makefile.mk39
-rw-r--r--bean/native/win32/com_sun_star_beans_LocalOfficeWindow.c102
-rw-r--r--bean/native/win32/com_sun_star_comp_beans_LocalOfficeWindow.c217
-rw-r--r--bean/native/win32/makefile.mk34
-rw-r--r--bean/native/win32/officebean.dxp4
-rw-r--r--bean/prj/build.lst10
-rw-r--r--bean/prj/d.lst5
-rw-r--r--bean/qa/complex/bean/OOoBeanTest.java737
-rw-r--r--bean/qa/complex/bean/ScreenComparer.java249
-rw-r--r--bean/qa/complex/bean/WriterFrame.java210
-rw-r--r--bean/qa/complex/bean/makefile.mk134
-rw-r--r--bean/test/Test.java68
-rw-r--r--bean/test/applet/oooapplet/OOoViewer.java208
-rw-r--r--bean/test/applet/oooapplet/bean.policy16
-rw-r--r--bean/test/applet/oooapplet/example.html22
-rw-r--r--bean/test/applet/oooapplet/makefile.mk88
-rw-r--r--bean/test/makefile.mk95
-rw-r--r--bean/util/delzip0
-rw-r--r--bean/util/makefile.mk56
-rw-r--r--beanshell/bsh-2.0b1-src.patch83
-rw-r--r--beanshell/makefile.mk58
-rw-r--r--beanshell/prj/build.lst3
-rw-r--r--beanshell/prj/d.lst1
-rw-r--r--berkeleydb/db-4.7.25-mingw.patch348
-rw-r--r--berkeleydb/db-4.7.25.patch1048
-rw-r--r--berkeleydb/makefile.mk182
-rw-r--r--berkeleydb/prj/build.lst3
-rw-r--r--berkeleydb/prj/d.lst15
-rw-r--r--boost/README.Regex_Experimental30
-rw-r--r--boost/Regex_Experimental.tar.gzbin0 -> 3463 bytes-rw-r--r--boost/aliasing.patch43
-rw-r--r--boost/boost_1_39_0.patch287
-rw-r--r--boost/makefile.mk109
-rw-r--r--boost/prj/build.lst3
-rw-r--r--boost/prj/d.lst312
-rw-r--r--bootstrap.184
-rw-r--r--bridges/inc/bridges/cpp_uno/bridge.hxx503
-rw-r--r--bridges/inc/bridges/cpp_uno/shared/arraypointer.hxx55
-rw-r--r--bridges/inc/bridges/cpp_uno/shared/bridge.hxx128
-rw-r--r--bridges/inc/bridges/cpp_uno/shared/cppinterfaceproxy.hxx106
-rw-r--r--bridges/inc/bridges/cpp_uno/shared/types.hxx77
-rw-r--r--bridges/inc/bridges/cpp_uno/shared/unointerfaceproxy.hxx116
-rw-r--r--bridges/inc/bridges/cpp_uno/shared/vtablefactory.hxx214
-rw-r--r--bridges/inc/bridges/cpp_uno/shared/vtables.hxx108
-rw-r--r--bridges/inc/bridges/cpp_uno/type_misc.hxx129
-rw-r--r--bridges/inc/bridges/remote/bridgeimpl.hxx94
-rw-r--r--bridges/inc/bridges/remote/connection.h67
-rw-r--r--bridges/inc/bridges/remote/context.h260
-rw-r--r--bridges/inc/bridges/remote/counter.hxx57
-rw-r--r--bridges/inc/bridges/remote/helper.hxx68
-rw-r--r--bridges/inc/bridges/remote/mapping.hxx69
-rw-r--r--bridges/inc/bridges/remote/proxy.hxx91
-rw-r--r--bridges/inc/bridges/remote/remote.h93
-rw-r--r--bridges/inc/bridges/remote/remote.hxx73
-rw-r--r--bridges/inc/bridges/remote/stub.hxx64
-rw-r--r--bridges/inc/makefile.mk47
-rw-r--r--bridges/inc/pch/precompiled_bridges.cxx29
-rw-r--r--bridges/inc/pch/precompiled_bridges.hxx152
-rw-r--r--bridges/prj/build.lst36
-rw-r--r--bridges/prj/d.lst28
-rw-r--r--bridges/source/bridge_exports.map8
-rw-r--r--bridges/source/cpp_uno/cc50_solaris_intel/call.s248
-rw-r--r--bridges/source/cpp_uno/cc50_solaris_intel/cc50_solaris_intel.hxx73
-rw-r--r--bridges/source/cpp_uno/cc50_solaris_intel/cpp2uno.cxx527
-rw-r--r--bridges/source/cpp_uno/cc50_solaris_intel/except.cxx449
-rw-r--r--bridges/source/cpp_uno/cc50_solaris_intel/hash.cxx263
-rw-r--r--bridges/source/cpp_uno/cc50_solaris_intel/makefile.mk75
-rw-r--r--bridges/source/cpp_uno/cc50_solaris_intel/uno2cpp.cxx418
-rw-r--r--bridges/source/cpp_uno/cc50_solaris_sparc/call.s199
-rw-r--r--bridges/source/cpp_uno/cc50_solaris_sparc/cc50_solaris_sparc.hxx87
-rw-r--r--bridges/source/cpp_uno/cc50_solaris_sparc/cpp2uno.cxx530
-rw-r--r--bridges/source/cpp_uno/cc50_solaris_sparc/except.cxx445
-rw-r--r--bridges/source/cpp_uno/cc50_solaris_sparc/flushcode.hxx48
-rw-r--r--bridges/source/cpp_uno/cc50_solaris_sparc/hash.cxx264
-rw-r--r--bridges/source/cpp_uno/cc50_solaris_sparc/makefile.mk80
-rw-r--r--bridges/source/cpp_uno/cc50_solaris_sparc/uno2cpp.cxx396
-rw-r--r--bridges/source/cpp_uno/cc5_solaris_sparc64/callvirtualmethod.hxx36
-rw-r--r--bridges/source/cpp_uno/cc5_solaris_sparc64/callvirtualmethod.s59
-rw-r--r--bridges/source/cpp_uno/cc5_solaris_sparc64/cpp2uno.cxx611
-rw-r--r--bridges/source/cpp_uno/cc5_solaris_sparc64/exceptions.cxx459
-rw-r--r--bridges/source/cpp_uno/cc5_solaris_sparc64/exceptions.hxx72
-rw-r--r--bridges/source/cpp_uno/cc5_solaris_sparc64/flushcode.hxx48
-rw-r--r--bridges/source/cpp_uno/cc5_solaris_sparc64/fp.hxx113
-rw-r--r--bridges/source/cpp_uno/cc5_solaris_sparc64/fp.s602
-rw-r--r--bridges/source/cpp_uno/cc5_solaris_sparc64/isdirectreturntype.cxx81
-rw-r--r--bridges/source/cpp_uno/cc5_solaris_sparc64/isdirectreturntype.hxx41
-rw-r--r--bridges/source/cpp_uno/cc5_solaris_sparc64/makefile.mk61
-rw-r--r--bridges/source/cpp_uno/cc5_solaris_sparc64/uno2cpp.cxx509
-rw-r--r--bridges/source/cpp_uno/cc5_solaris_sparc64/vtableslotcall.hxx35
-rw-r--r--bridges/source/cpp_uno/cc5_solaris_sparc64/vtableslotcall.s51
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_intel/call.s268
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx490
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx338
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_intel/makefile.mk81
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_intel/share.hxx90
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx444
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_x86-64/abi.cxx803
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_x86-64/abi.hxx67
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_x86-64/call.s93
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_x86-64/cpp2uno.cxx541
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx338
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_x86-64/makefile.mk80
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_x86-64/share.hxx90
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_x86-64/uno2cpp.cxx558
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_alpha/cpp2uno.cxx676
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_alpha/except.cxx287
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_alpha/makefile.mk77
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_alpha/share.hxx98
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_alpha/uno2cpp.cxx532
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_arm/armhelper.S38
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_arm/cpp2uno.cxx550
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_arm/except.cxx341
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_arm/makefile.mk84
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_arm/share.hxx100
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_arm/uno2cpp.cxx669
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_hppa/call.cxx142
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_hppa/cpp2uno.cxx725
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_hppa/except.cxx334
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_hppa/makefile.mk82
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_hppa/share.hxx99
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_hppa/uno2cpp.cxx521
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_ia64/call.s20
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_ia64/cpp2uno.cxx684
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_ia64/except.cxx287
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_ia64/makefile.mk83
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_ia64/share.hxx130
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_ia64/uno2cpp.cxx690
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_intel/call.s274
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_intel/cpp2uno.cxx489
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_intel/except.cxx330
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_intel/makefile.mk81
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_intel/share.hxx90
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_intel/uno2cpp.cxx451
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_m68k/cpp2uno.cxx536
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_m68k/except.cxx334
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_m68k/makefile.mk80
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_m68k/share.hxx91
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_m68k/uno2cpp.cxx493
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_mips/cpp2uno.cxx803
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_mips/except.cxx325
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_mips/makefile.mk81
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_mips/share.hxx91
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_mips/uno2cpp.cxx597
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_powerpc/cpp2uno.cxx795
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_powerpc/except.cxx287
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_powerpc/makefile.mk80
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_powerpc/share.hxx91
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_powerpc/uno2cpp.cxx672
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_powerpc64/cpp2uno.cxx722
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_powerpc64/except.cxx287
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_powerpc64/makefile.mk79
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_powerpc64/share.hxx96
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_powerpc64/uno2cpp.cxx600
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_s390/cpp2uno.cxx695
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_s390/except.cxx287
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_s390/makefile.mk77
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_s390/share.hxx92
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_s390/uno2cpp.cxx635
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_s390x/cpp2uno.cxx657
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_s390x/except.cxx287
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_s390x/makefile.mk77
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_s390x/share.hxx98
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_s390x/uno2cpp.cxx537
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_sparc/call.s10
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_sparc/cpp2uno.cxx575
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_sparc/except.cxx328
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_sparc/makefile.mk81
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_sparc/share.hxx97
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_sparc/uno2cpp.cxx600
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_x86-64/abi.cxx796
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_x86-64/abi.hxx67
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_x86-64/call.s96
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_x86-64/cpp2uno.cxx520
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_x86-64/except.cxx330
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_x86-64/makefile.mk80
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_x86-64/share.hxx90
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx606
-rw-r--r--bridges/source/cpp_uno/gcc3_macosx_intel/call.s327
-rw-r--r--bridges/source/cpp_uno/gcc3_macosx_intel/cpp2uno.cxx519
-rw-r--r--bridges/source/cpp_uno/gcc3_macosx_intel/except.cxx329
-rw-r--r--bridges/source/cpp_uno/gcc3_macosx_intel/makefile.mk76
-rw-r--r--bridges/source/cpp_uno/gcc3_macosx_intel/share.hxx92
-rw-r--r--bridges/source/cpp_uno/gcc3_macosx_intel/uno2cpp.cxx495
-rw-r--r--bridges/source/cpp_uno/gcc3_macosx_powerpc/cpp2uno.cxx730
-rw-r--r--bridges/source/cpp_uno/gcc3_macosx_powerpc/except.cxx286
-rw-r--r--bridges/source/cpp_uno/gcc3_macosx_powerpc/makefile.mk78
-rw-r--r--bridges/source/cpp_uno/gcc3_macosx_powerpc/share.hxx91
-rw-r--r--bridges/source/cpp_uno/gcc3_macosx_powerpc/uno2cpp.cxx634
-rw-r--r--bridges/source/cpp_uno/gcc3_netbsd_intel/cpp2uno.cxx563
-rw-r--r--bridges/source/cpp_uno/gcc3_netbsd_intel/except.cxx331
-rw-r--r--bridges/source/cpp_uno/gcc3_netbsd_intel/makefile.mk75
-rw-r--r--bridges/source/cpp_uno/gcc3_netbsd_intel/share.hxx86
-rw-r--r--bridges/source/cpp_uno/gcc3_netbsd_intel/uno2cpp.cxx433
-rw-r--r--bridges/source/cpp_uno/gcc3_os2_intel/cpp2uno.cxx525
-rw-r--r--bridges/source/cpp_uno/gcc3_os2_intel/defs/gcc3_uno.def915
-rw-r--r--bridges/source/cpp_uno/gcc3_os2_intel/except.cxx349
-rw-r--r--bridges/source/cpp_uno/gcc3_os2_intel/makefile.mk73
-rw-r--r--bridges/source/cpp_uno/gcc3_os2_intel/share.hxx90
-rw-r--r--bridges/source/cpp_uno/gcc3_os2_intel/uno2cpp.cxx451
-rw-r--r--bridges/source/cpp_uno/gcc3_solaris_intel/cpp2uno.cxx523
-rw-r--r--bridges/source/cpp_uno/gcc3_solaris_intel/except.cxx329
-rw-r--r--bridges/source/cpp_uno/gcc3_solaris_intel/makefile.mk73
-rw-r--r--bridges/source/cpp_uno/gcc3_solaris_intel/share.hxx90
-rw-r--r--bridges/source/cpp_uno/gcc3_solaris_intel/uno2cpp.cxx427
-rw-r--r--bridges/source/cpp_uno/gcc3_solaris_sparc/cpp2uno.cxx564
-rw-r--r--bridges/source/cpp_uno/gcc3_solaris_sparc/except.cxx327
-rw-r--r--bridges/source/cpp_uno/gcc3_solaris_sparc/makefile.mk77
-rw-r--r--bridges/source/cpp_uno/gcc3_solaris_sparc/share.hxx97
-rw-r--r--bridges/source/cpp_uno/gcc3_solaris_sparc/uno2cpp.cxx595
-rw-r--r--bridges/source/cpp_uno/mingw_intel/call.s261
-rw-r--r--bridges/source/cpp_uno/mingw_intel/cpp2uno.cxx518
-rw-r--r--bridges/source/cpp_uno/mingw_intel/dllinit.cxx56
-rw-r--r--bridges/source/cpp_uno/mingw_intel/except.cxx314
-rw-r--r--bridges/source/cpp_uno/mingw_intel/makefile.mk91
-rw-r--r--bridges/source/cpp_uno/mingw_intel/share.hxx90
-rw-r--r--bridges/source/cpp_uno/mingw_intel/smallstruct.cxx79
-rw-r--r--bridges/source/cpp_uno/mingw_intel/smallstruct.hxx35
-rw-r--r--bridges/source/cpp_uno/mingw_intel/uno2cpp.cxx500
-rw-r--r--bridges/source/cpp_uno/msvc_win32_intel/cpp2uno.cxx488
-rw-r--r--bridges/source/cpp_uno/msvc_win32_intel/dllinit.cxx58
-rw-r--r--bridges/source/cpp_uno/msvc_win32_intel/except.cxx632
-rw-r--r--bridges/source/cpp_uno/msvc_win32_intel/makefile.mk83
-rw-r--r--bridges/source/cpp_uno/msvc_win32_intel/msci.hxx57
-rw-r--r--bridges/source/cpp_uno/msvc_win32_intel/uno2cpp.cxx465
-rw-r--r--bridges/source/cpp_uno/shared/bridge.cxx226
-rw-r--r--bridges/source/cpp_uno/shared/component.cxx272
-rw-r--r--bridges/source/cpp_uno/shared/component.hxx39
-rw-r--r--bridges/source/cpp_uno/shared/cppinterfaceproxy.cxx205
-rw-r--r--bridges/source/cpp_uno/shared/guardedarray.hxx52
-rw-r--r--bridges/source/cpp_uno/shared/makefile.mk53
-rw-r--r--bridges/source/cpp_uno/shared/types.cxx126
-rw-r--r--bridges/source/cpp_uno/shared/unointerfaceproxy.cxx142
-rw-r--r--bridges/source/cpp_uno/shared/vtablefactory.cxx382
-rw-r--r--bridges/source/cpp_uno/shared/vtables.cxx154
-rw-r--r--bridges/source/jni_uno/java/com/sun/star/bridges/jni_uno/JNI_info_holder.java52
-rw-r--r--bridges/source/jni_uno/java/com/sun/star/bridges/jni_uno/JNI_proxy.java218
-rw-r--r--bridges/source/jni_uno/java/com/sun/star/bridges/jni_uno/makefile.mk53
-rw-r--r--bridges/source/jni_uno/java/com/sun/star/bridges/jni_uno/manifest1
-rw-r--r--bridges/source/jni_uno/java_uno.map27
-rw-r--r--bridges/source/jni_uno/jni_base.h292
-rw-r--r--bridges/source/jni_uno/jni_bridge.cxx569
-rw-r--r--bridges/source/jni_uno/jni_bridge.h124
-rw-r--r--bridges/source/jni_uno/jni_data.cxx2576
-rw-r--r--bridges/source/jni_uno/jni_helper.h162
-rw-r--r--bridges/source/jni_uno/jni_info.cxx996
-rw-r--r--bridges/source/jni_uno/jni_info.h375
-rw-r--r--bridges/source/jni_uno/jni_java2uno.cxx704
-rw-r--r--bridges/source/jni_uno/jni_uno2java.cxx873
-rw-r--r--bridges/source/jni_uno/makefile.mk85
-rw-r--r--bridges/source/jni_uno/nativethreadpool.cxx230
-rw-r--r--bridges/source/remote/context/context.cxx484
-rw-r--r--bridges/source/remote/context/exports.dxp5
-rw-r--r--bridges/source/remote/context/makefile.mk65
-rwxr-xr-xbridges/source/remote/context/rmcxt.map10
-rw-r--r--bridges/source/remote/idl/corba.idl88
-rw-r--r--bridges/source/remote/static/helper.cxx209
-rw-r--r--bridges/source/remote/static/makefile.mk61
-rw-r--r--bridges/source/remote/static/mapping.cxx218
-rw-r--r--bridges/source/remote/static/proxy.cxx338
-rw-r--r--bridges/source/remote/static/remote.cxx161
-rw-r--r--bridges/source/remote/static/remote_types.cxx96
-rw-r--r--bridges/source/remote/static/remote_types.hxx89
-rw-r--r--bridges/source/remote/static/stub.cxx336
-rw-r--r--bridges/source/remote/urp/makefile.mk78
-rw-r--r--bridges/source/remote/urp/urp_bridgeimpl.cxx250
-rw-r--r--bridges/source/remote/urp/urp_bridgeimpl.hxx133
-rw-r--r--bridges/source/remote/urp/urp_cache.h57
-rw-r--r--bridges/source/remote/urp/urp_cache.hxx160
-rw-r--r--bridges/source/remote/urp/urp_dispatch.cxx116
-rw-r--r--bridges/source/remote/urp/urp_dispatch.hxx78
-rw-r--r--bridges/source/remote/urp/urp_environment.cxx551
-rw-r--r--bridges/source/remote/urp/urp_job.cxx939
-rw-r--r--bridges/source/remote/urp/urp_job.hxx378
-rw-r--r--bridges/source/remote/urp/urp_log.cxx147
-rw-r--r--bridges/source/remote/urp/urp_log.hxx50
-rw-r--r--bridges/source/remote/urp/urp_marshal.cxx235
-rw-r--r--bridges/source/remote/urp/urp_marshal.hxx343
-rw-r--r--bridges/source/remote/urp/urp_marshal_decl.hxx106
-rw-r--r--bridges/source/remote/urp/urp_property.hxx93
-rw-r--r--bridges/source/remote/urp/urp_propertyobject.cxx793
-rw-r--r--bridges/source/remote/urp/urp_propertyobject.hxx108
-rw-r--r--bridges/source/remote/urp/urp_reader.cxx832
-rw-r--r--bridges/source/remote/urp/urp_reader.hxx78
-rw-r--r--bridges/source/remote/urp/urp_replycontainer.hxx75
-rw-r--r--bridges/source/remote/urp/urp_threadid.cxx48
-rw-r--r--bridges/source/remote/urp/urp_threadid.hxx59
-rw-r--r--bridges/source/remote/urp/urp_unmarshal.cxx707
-rw-r--r--bridges/source/remote/urp/urp_unmarshal.hxx280
-rw-r--r--bridges/source/remote/urp/urp_writer.cxx269
-rw-r--r--bridges/source/remote/urp/urp_writer.hxx83
-rw-r--r--bridges/test/com/sun/star/lib/TestBed.java232
-rw-r--r--bridges/test/com/sun/star/lib/makefile.mk36
-rw-r--r--bridges/test/com/sun/star/lib/uno/bridges/java_remote/Bug107753_Test.java394
-rw-r--r--bridges/test/com/sun/star/lib/uno/bridges/java_remote/Bug108825_Test.java163
-rw-r--r--bridges/test/com/sun/star/lib/uno/bridges/java_remote/Bug110892_Test.java124
-rw-r--r--bridges/test/com/sun/star/lib/uno/bridges/java_remote/Bug111153_Test.java103
-rw-r--r--bridges/test/com/sun/star/lib/uno/bridges/java_remote/Bug114133_Test.java76
-rw-r--r--bridges/test/com/sun/star/lib/uno/bridges/java_remote/Bug51323_Test.java84
-rw-r--r--bridges/test/com/sun/star/lib/uno/bridges/java_remote/Bug92174_Test.java99
-rw-r--r--bridges/test/com/sun/star/lib/uno/bridges/java_remote/Bug97697_Test.java105
-rw-r--r--bridges/test/com/sun/star/lib/uno/bridges/java_remote/Bug98508_Test.idl37
-rw-r--r--bridges/test/com/sun/star/lib/uno/bridges/java_remote/Bug98508_Test.java104
-rwxr-xr-xbridges/test/com/sun/star/lib/uno/bridges/java_remote/MethodIdTest.java473
-rw-r--r--bridges/test/com/sun/star/lib/uno/bridges/java_remote/PolyStructTest.idl52
-rw-r--r--bridges/test/com/sun/star/lib/uno/bridges/java_remote/PolyStructTest.java260
-rw-r--r--bridges/test/com/sun/star/lib/uno/bridges/java_remote/StopMessageDispatcherTest.java108
-rw-r--r--bridges/test/com/sun/star/lib/uno/bridges/java_remote/makefile.mk51
-rw-r--r--bridges/test/inter_libs_exc/inter.cxx66
-rw-r--r--bridges/test/inter_libs_exc/makefile.mk80
-rw-r--r--bridges/test/inter_libs_exc/share.h7
-rw-r--r--bridges/test/inter_libs_exc/starter.cxx65
-rw-r--r--bridges/test/inter_libs_exc/starter.map7
-rw-r--r--bridges/test/inter_libs_exc/thrower.cxx48
-rw-r--r--bridges/test/inter_libs_exc/thrower.map7
-rw-r--r--bridges/test/java_uno/acquire/TestAcquire.java304
-rw-r--r--bridges/test/java_uno/acquire/makefile.mk117
-rw-r--r--bridges/test/java_uno/acquire/readme.txt21
-rw-r--r--bridges/test/java_uno/acquire/testacquire.cxx574
-rw-r--r--bridges/test/java_uno/acquire/types.idl68
-rw-r--r--bridges/test/java_uno/any/TestAny.java2267
-rw-r--r--bridges/test/java_uno/any/TestJni.java48
-rw-r--r--bridges/test/java_uno/any/TestRemote.java64
-rw-r--r--bridges/test/java_uno/any/makefile.mk127
-rw-r--r--bridges/test/java_uno/any/test_javauno_any.map6
-rw-r--r--bridges/test/java_uno/any/transport.cxx108
-rw-r--r--bridges/test/java_uno/any/types.idl42
-rw-r--r--bridges/test/java_uno/equals/TestEquals.java1304
-rw-r--r--bridges/test/java_uno/equals/makefile.mk96
-rw-r--r--bridges/test/java_uno/equals/testequals.cxx232
-rw-r--r--bridges/test/java_uno/equals/types.idl47
-rw-r--r--bridges/test/java_uno/nativethreadpool/Relay.java125
-rw-r--r--bridges/test/java_uno/nativethreadpool/makefile.mk121
-rw-r--r--bridges/test/java_uno/nativethreadpool/readme39
-rw-r--r--bridges/test/java_uno/nativethreadpool/relay.manifest2
-rw-r--r--bridges/test/java_uno/nativethreadpool/testnativethreadpoolclient.cxx184
-rw-r--r--bridges/test/java_uno/nativethreadpool/testnativethreadpoolserver.cxx146
-rw-r--r--bridges/test/java_uno/nativethreadpool/types.idl40
-rw-r--r--bridges/test/java_uno/nativethreadpool/version.map35
-rw-r--r--bridges/test/makefile.mk175
-rw-r--r--bridges/test/performance/makefile.mk62
-rw-r--r--bridges/test/performance/testperformance.cxx190
-rw-r--r--bridges/test/test_bridge.idl82
-rw-r--r--bridges/test/testclient.cxx247
-rw-r--r--bridges/test/testclient.java156
-rw-r--r--bridges/test/testcomp.cxx799
-rw-r--r--bridges/test/testcomp.h156
-rw-r--r--bridges/test/testoffice.cxx279
-rw-r--r--bridges/test/testsameprocess.cxx215
-rw-r--r--bridges/test/testserver.cxx253
-rw-r--r--bridges/unotypes/makefile.mk63
-rw-r--r--bridges/version.mk40
-rw-r--r--cairo/cairo-1.8.0.patch251
-rwxr-xr-xcairo/cairo/dummy_pkg_config3
-rw-r--r--cairo/cairo/makefile.mk202
-rw-r--r--cairo/pixman-0.12.0.patch25
-rw-r--r--cairo/pixman/makefile.mk164
-rw-r--r--cairo/prj/build.lst4
-rw-r--r--cairo/prj/d.lst12
-rw-r--r--canvas/inc/canvas/base/basemutexhelper.hxx69
-rw-r--r--canvas/inc/canvas/base/bitmapcanvasbase.hxx134
-rw-r--r--canvas/inc/canvas/base/bufferedgraphicdevicebase.hxx293
-rw-r--r--canvas/inc/canvas/base/cachedprimitivebase.hxx122
-rw-r--r--canvas/inc/canvas/base/canvasbase.hxx483
-rw-r--r--canvas/inc/canvas/base/canvascustomspritebase.hxx277
-rw-r--r--canvas/inc/canvas/base/canvascustomspritehelper.hxx293
-rw-r--r--canvas/inc/canvas/base/doublebitmapbase.hxx151
-rw-r--r--canvas/inc/canvas/base/floatbitmapbase.hxx155
-rw-r--r--canvas/inc/canvas/base/graphicdevicebase.hxx391
-rw-r--r--canvas/inc/canvas/base/integerbitmapbase.hxx151
-rw-r--r--canvas/inc/canvas/base/sprite.hxx119
-rw-r--r--canvas/inc/canvas/base/spritecanvasbase.hxx202
-rw-r--r--canvas/inc/canvas/base/spritesurface.hxx73
-rwxr-xr-xcanvas/inc/canvas/canvastools.hxx661
-rw-r--r--canvas/inc/canvas/debug.hxx65
-rw-r--r--canvas/inc/canvas/elapsedtime.hxx182
-rw-r--r--canvas/inc/canvas/parametricpolypolygon.hxx172
-rw-r--r--canvas/inc/canvas/prioritybooster.hxx65
-rw-r--r--canvas/inc/canvas/propertysethelper.hxx161
-rw-r--r--canvas/inc/canvas/rendering/bitmap.hxx320
-rw-r--r--canvas/inc/canvas/rendering/icachedprimitive.hxx66
-rw-r--r--canvas/inc/canvas/rendering/icolorbuffer.hxx94
-rw-r--r--canvas/inc/canvas/rendering/irendermodule.hxx149
-rw-r--r--canvas/inc/canvas/rendering/isurface.hxx88
-rw-r--r--canvas/inc/canvas/rendering/isurfaceproxy.hxx113
-rw-r--r--canvas/inc/canvas/rendering/isurfaceproxymanager.hxx79
-rw-r--r--canvas/inc/canvas/spriteredrawmanager.hxx434
-rw-r--r--canvas/inc/canvas/vclwrapper.hxx149
-rw-r--r--canvas/inc/canvas/verbosetrace.hxx38
-rw-r--r--canvas/inc/canvas/verifyinput.hxx720
-rw-r--r--canvas/inc/makefile.mk47
-rw-r--r--canvas/inc/pch/precompiled_canvas.cxx29
-rw-r--r--canvas/inc/pch/precompiled_canvas.hxx32
-rw-r--r--canvas/overview.txt50
-rw-r--r--canvas/prj/build.lst10
-rw-r--r--canvas/prj/d.lst33
-rw-r--r--canvas/source/cairo/cairo_cachedbitmap.cxx90
-rw-r--r--canvas/source/cairo/cairo_cachedbitmap.hxx67
-rw-r--r--canvas/source/cairo/cairo_cairo.cxx64
-rw-r--r--canvas/source/cairo/cairo_cairo.hxx97
-rw-r--r--canvas/source/cairo/cairo_canvas.cxx195
-rw-r--r--canvas/source/cairo/cairo_canvas.hxx161
-rw-r--r--canvas/source/cairo/cairo_canvasbitmap.cxx286
-rw-r--r--canvas/source/cairo/cairo_canvasbitmap.hxx138
-rw-r--r--canvas/source/cairo/cairo_canvascustomsprite.cxx175
-rw-r--r--canvas/source/cairo/cairo_canvascustomsprite.hxx156
-rw-r--r--canvas/source/cairo/cairo_canvasfont.cxx193
-rw-r--r--canvas/source/cairo/cairo_canvasfont.hxx96
-rw-r--r--canvas/source/cairo/cairo_canvashelper.cxx1996
-rw-r--r--canvas/source/cairo/cairo_canvashelper.hxx335
-rw-r--r--canvas/source/cairo/cairo_canvashelper_text.cxx398
-rw-r--r--canvas/source/cairo/cairo_canvashelper_texturefill.cxx144
-rw-r--r--canvas/source/cairo/cairo_devicehelper.cxx302
-rw-r--r--canvas/source/cairo/cairo_devicehelper.hxx143
-rw-r--r--canvas/source/cairo/cairo_quartz_cairo.cxx347
-rw-r--r--canvas/source/cairo/cairo_quartz_cairo.hxx73
-rw-r--r--canvas/source/cairo/cairo_repainttarget.hxx60
-rw-r--r--canvas/source/cairo/cairo_services.cxx83
-rw-r--r--canvas/source/cairo/cairo_sprite.hxx71
-rw-r--r--canvas/source/cairo/cairo_spritecanvas.cxx232
-rw-r--r--canvas/source/cairo/cairo_spritecanvas.hxx174
-rw-r--r--canvas/source/cairo/cairo_spritecanvashelper.cxx544
-rw-r--r--canvas/source/cairo/cairo_spritecanvashelper.hxx147
-rw-r--r--canvas/source/cairo/cairo_spritedevicehelper.cxx201
-rw-r--r--canvas/source/cairo/cairo_spritedevicehelper.hxx95
-rw-r--r--canvas/source/cairo/cairo_spritehelper.cxx183
-rw-r--r--canvas/source/cairo/cairo_spritehelper.hxx115
-rw-r--r--canvas/source/cairo/cairo_spritesurface.hxx70
-rw-r--r--canvas/source/cairo/cairo_surfaceprovider.hxx82
-rw-r--r--canvas/source/cairo/cairo_textlayout.cxx656
-rw-r--r--canvas/source/cairo/cairo_textlayout.hxx120
-rw-r--r--canvas/source/cairo/cairo_win32_cairo.cxx325
-rw-r--r--canvas/source/cairo/cairo_win32_cairo.hxx70
-rw-r--r--canvas/source/cairo/cairo_xlib_cairo.cxx352
-rw-r--r--canvas/source/cairo/cairo_xlib_cairo.hxx106
-rw-r--r--canvas/source/cairo/cairocanvas.component37
-rw-r--r--canvas/source/cairo/exports.dxp2
-rw-r--r--canvas/source/cairo/makefile.mk140
-rw-r--r--canvas/source/directx/directx5canvas.component34
-rw-r--r--canvas/source/directx/directx9canvas.component34
-rwxr-xr-xcanvas/source/directx/dx_5rm.cxx2283
-rwxr-xr-xcanvas/source/directx/dx_9rm.cxx1363
-rwxr-xr-xcanvas/source/directx/dx_bitmap.cxx219
-rwxr-xr-xcanvas/source/directx/dx_bitmap.hxx93
-rwxr-xr-xcanvas/source/directx/dx_bitmapcanvashelper.cxx246
-rwxr-xr-xcanvas/source/directx/dx_bitmapcanvashelper.hxx136
-rw-r--r--canvas/source/directx/dx_bitmapprovider.hxx45
-rw-r--r--canvas/source/directx/dx_canvas.cxx255
-rw-r--r--canvas/source/directx/dx_canvas.hxx175
-rwxr-xr-xcanvas/source/directx/dx_canvasbitmap.cxx277
-rwxr-xr-xcanvas/source/directx/dx_canvasbitmap.hxx104
-rwxr-xr-xcanvas/source/directx/dx_canvascustomsprite.cxx123
-rwxr-xr-xcanvas/source/directx/dx_canvascustomsprite.hxx139
-rwxr-xr-xcanvas/source/directx/dx_canvasfont.cxx180
-rwxr-xr-xcanvas/source/directx/dx_canvasfont.hxx104
-rwxr-xr-xcanvas/source/directx/dx_canvashelper.cxx814
-rwxr-xr-xcanvas/source/directx/dx_canvashelper.hxx257
-rwxr-xr-xcanvas/source/directx/dx_canvashelper_texturefill.cxx625
-rwxr-xr-xcanvas/source/directx/dx_config.cxx176
-rw-r--r--canvas/source/directx/dx_config.hxx89
-rwxr-xr-xcanvas/source/directx/dx_devicehelper.cxx236
-rwxr-xr-xcanvas/source/directx/dx_devicehelper.hxx121
-rwxr-xr-xcanvas/source/directx/dx_gdiplususer.cxx81
-rwxr-xr-xcanvas/source/directx/dx_gdiplususer.hxx55
-rw-r--r--canvas/source/directx/dx_graphicsprovider.hxx53
-rw-r--r--canvas/source/directx/dx_ibitmap.hxx70
-rwxr-xr-xcanvas/source/directx/dx_impltools.cxx668
-rwxr-xr-xcanvas/source/directx/dx_impltools.hxx142
-rwxr-xr-xcanvas/source/directx/dx_linepolypolygon.cxx65
-rwxr-xr-xcanvas/source/directx/dx_linepolypolygon.hxx56
-rwxr-xr-xcanvas/source/directx/dx_rendermodule.hxx90
-rwxr-xr-xcanvas/source/directx/dx_sprite.hxx51
-rwxr-xr-xcanvas/source/directx/dx_spritecanvas.cxx211
-rwxr-xr-xcanvas/source/directx/dx_spritecanvas.hxx155
-rwxr-xr-xcanvas/source/directx/dx_spritecanvashelper.cxx382
-rwxr-xr-xcanvas/source/directx/dx_spritecanvashelper.hxx161
-rw-r--r--canvas/source/directx/dx_spritedevicehelper.cxx259
-rw-r--r--canvas/source/directx/dx_spritedevicehelper.hxx114
-rwxr-xr-xcanvas/source/directx/dx_spritehelper.cxx216
-rwxr-xr-xcanvas/source/directx/dx_spritehelper.hxx111
-rw-r--r--canvas/source/directx/dx_surfacebitmap.cxx804
-rw-r--r--canvas/source/directx/dx_surfacebitmap.hxx147
-rwxr-xr-xcanvas/source/directx/dx_surfacegraphics.cxx85
-rwxr-xr-xcanvas/source/directx/dx_surfacegraphics.hxx45
-rwxr-xr-xcanvas/source/directx/dx_textlayout.cxx280
-rwxr-xr-xcanvas/source/directx/dx_textlayout.hxx115
-rwxr-xr-xcanvas/source/directx/dx_textlayout_drawhelper.cxx312
-rwxr-xr-xcanvas/source/directx/dx_textlayout_drawhelper.hxx86
-rwxr-xr-xcanvas/source/directx/dx_vcltools.cxx523
-rwxr-xr-xcanvas/source/directx/dx_vcltools.hxx64
-rwxr-xr-xcanvas/source/directx/dx_winstuff.hxx219
-rw-r--r--canvas/source/directx/exports.dxp2
-rw-r--r--canvas/source/directx/gdipluscanvas.component37
-rw-r--r--canvas/source/directx/makefile.mk241
-rw-r--r--canvas/source/factory/canvasfactory.component34
-rw-r--r--canvas/source/factory/cf_service.cxx545
-rw-r--r--canvas/source/factory/makefile.mk63
-rw-r--r--canvas/source/null/exports.dxp2
-rw-r--r--canvas/source/null/makefile.mk70
-rw-r--r--canvas/source/null/null_canvasbitmap.cxx84
-rw-r--r--canvas/source/null/null_canvasbitmap.hxx92
-rw-r--r--canvas/source/null/null_canvascustomsprite.cxx105
-rw-r--r--canvas/source/null/null_canvascustomsprite.hxx136
-rw-r--r--canvas/source/null/null_canvasfont.cxx121
-rw-r--r--canvas/source/null/null_canvasfont.hxx95
-rw-r--r--canvas/source/null/null_canvashelper.cxx336
-rw-r--r--canvas/source/null/null_canvashelper.hxx273
-rw-r--r--canvas/source/null/null_devicehelper.cxx239
-rw-r--r--canvas/source/null/null_devicehelper.hxx107
-rw-r--r--canvas/source/null/null_spritecanvas.cxx166
-rw-r--r--canvas/source/null/null_spritecanvas.hxx149
-rw-r--r--canvas/source/null/null_spritecanvashelper.cxx131
-rw-r--r--canvas/source/null/null_spritecanvashelper.hxx136
-rw-r--r--canvas/source/null/null_spritehelper.cxx97
-rw-r--r--canvas/source/null/null_spritehelper.hxx105
-rw-r--r--canvas/source/null/null_textlayout.cxx261
-rw-r--r--canvas/source/null/null_textlayout.hxx107
-rw-r--r--canvas/source/null/null_usagecounter.hxx76
-rw-r--r--canvas/source/null/sprite.hxx47
-rw-r--r--canvas/source/simplecanvas/exports.dxp2
-rw-r--r--canvas/source/simplecanvas/makefile.mk71
-rw-r--r--canvas/source/simplecanvas/simplecanvas.component34
-rw-r--r--canvas/source/simplecanvas/simplecanvasimpl.cxx400
-rw-r--r--canvas/source/tools/bitmap.cxx838
-rw-r--r--canvas/source/tools/cachedprimitivebase.cxx112
-rw-r--r--canvas/source/tools/canvascustomspritehelper.cxx496
-rwxr-xr-xcanvas/source/tools/canvastools.cxx1044
-rw-r--r--canvas/source/tools/canvastools.flt4
-rw-r--r--canvas/source/tools/elapsedtime.cxx224
-rw-r--r--canvas/source/tools/image.cxx2394
-rw-r--r--canvas/source/tools/image.hxx298
-rw-r--r--canvas/source/tools/image_sysprereq.h102
-rw-r--r--canvas/source/tools/imagecachedprimitive.hxx57
-rw-r--r--canvas/source/tools/makefile.mk101
-rw-r--r--canvas/source/tools/page.cxx152
-rw-r--r--canvas/source/tools/page.hxx157
-rw-r--r--canvas/source/tools/pagemanager.cxx222
-rw-r--r--canvas/source/tools/pagemanager.hxx94
-rw-r--r--canvas/source/tools/parametricpolypolygon.cxx290
-rw-r--r--canvas/source/tools/prioritybooster.cxx83
-rw-r--r--canvas/source/tools/propertysethelper.cxx187
-rw-r--r--canvas/source/tools/spriteredrawmanager.cxx520
-rw-r--r--canvas/source/tools/surface.cxx496
-rw-r--r--canvas/source/tools/surface.hxx162
-rw-r--r--canvas/source/tools/surfaceproxy.cxx182
-rw-r--r--canvas/source/tools/surfaceproxy.hxx134
-rw-r--r--canvas/source/tools/surfaceproxymanager.cxx86
-rw-r--r--canvas/source/tools/surfacerect.hxx135
-rw-r--r--canvas/source/tools/verifyinput.cxx926
-rw-r--r--canvas/source/vcl/backbuffer.cxx71
-rw-r--r--canvas/source/vcl/backbuffer.hxx67
-rw-r--r--canvas/source/vcl/bitmapbackbuffer.cxx165
-rw-r--r--canvas/source/vcl/bitmapbackbuffer.hxx104
-rw-r--r--canvas/source/vcl/cachedbitmap.cxx104
-rw-r--r--canvas/source/vcl/cachedbitmap.hxx78
-rw-r--r--canvas/source/vcl/canvas.cxx161
-rw-r--r--canvas/source/vcl/canvas.hxx131
-rw-r--r--canvas/source/vcl/canvasbitmap.cxx144
-rw-r--r--canvas/source/vcl/canvasbitmap.hxx129
-rw-r--r--canvas/source/vcl/canvasbitmaphelper.cxx567
-rw-r--r--canvas/source/vcl/canvasbitmaphelper.hxx129
-rw-r--r--canvas/source/vcl/canvascustomsprite.cxx197
-rw-r--r--canvas/source/vcl/canvascustomsprite.hxx133
-rw-r--r--canvas/source/vcl/canvasfont.cxx183
-rw-r--r--canvas/source/vcl/canvasfont.hxx100
-rw-r--r--canvas/source/vcl/canvashelper.cxx1428
-rw-r--r--canvas/source/vcl/canvashelper.hxx344
-rw-r--r--canvas/source/vcl/canvashelper_texturefill.cxx1182
-rw-r--r--canvas/source/vcl/devicehelper.cxx242
-rw-r--r--canvas/source/vcl/devicehelper.hxx103
-rw-r--r--canvas/source/vcl/exports.dxp2
-rw-r--r--canvas/source/vcl/impltools.cxx544
-rw-r--r--canvas/source/vcl/impltools.hxx201
-rw-r--r--canvas/source/vcl/makefile.mk93
-rw-r--r--canvas/source/vcl/outdevprovider.hxx61
-rw-r--r--canvas/source/vcl/repainttarget.hxx63
-rw-r--r--canvas/source/vcl/services.cxx90
-rw-r--r--canvas/source/vcl/sprite.hxx71
-rw-r--r--canvas/source/vcl/spritecanvas.cxx178
-rw-r--r--canvas/source/vcl/spritecanvas.hxx172
-rw-r--r--canvas/source/vcl/spritecanvashelper.cxx718
-rw-r--r--canvas/source/vcl/spritecanvashelper.hxx179
-rw-r--r--canvas/source/vcl/spritedevicehelper.cxx158
-rw-r--r--canvas/source/vcl/spritedevicehelper.hxx82
-rw-r--r--canvas/source/vcl/spritehelper.cxx443
-rw-r--r--canvas/source/vcl/spritehelper.hxx121
-rw-r--r--canvas/source/vcl/textlayout.cxx496
-rw-r--r--canvas/source/vcl/textlayout.hxx115
-rw-r--r--canvas/source/vcl/vclcanvas.component37
-rw-r--r--canvas/source/vcl/windowoutdevholder.cxx57
-rw-r--r--canvas/source/vcl/windowoutdevholder.hxx66
-rw-r--r--canvas/workben/canvasdemo.cxx712
-rw-r--r--canvas/workben/makefile.mk37
-rw-r--r--chart2/chartview.pmk30
-rw-r--r--chart2/inc/makefile.mk47
-rw-r--r--chart2/inc/pch/precompiled_chart2.cxx29
-rw-r--r--chart2/inc/pch/precompiled_chart2.hxx275
-rw-r--r--chart2/prj/build.lst26
-rw-r--r--chart2/prj/d.lst27
-rw-r--r--chart2/qa/TestCaseOldAPI.java1033
-rw-r--r--chart2/qa/data.chd14
-rw-r--r--chart2/qa/makefile.mk70
-rw-r--r--chart2/qa/unoapi/Test.java51
-rw-r--r--chart2/qa/unoapi/knownissues.xcl40
-rw-r--r--chart2/qa/unoapi/makefile.mk48
-rw-r--r--chart2/qa/unoapi/sch.sce26
-rw-r--r--chart2/qa/unoapi/testdocuments/TransparencyChart.sxsbin0 -> 10810 bytes-rw-r--r--chart2/qa/unoapi/testdocuments/emptyChart.sdsbin0 -> 44544 bytes-rw-r--r--chart2/qa/unoapi/testdocuments/space-metal.jpgbin0 -> 4313 bytes-rw-r--r--chart2/source/controller/accessibility/AccStatisticsObject.cxx81
-rw-r--r--chart2/source/controller/accessibility/AccStatisticsObject.hxx68
-rw-r--r--chart2/source/controller/accessibility/AccessibleBase.cxx1010
-rw-r--r--chart2/source/controller/accessibility/AccessibleChartElement.cxx332
-rw-r--r--chart2/source/controller/accessibility/AccessibleChartElement.hxx142
-rw-r--r--chart2/source/controller/accessibility/AccessibleChartShape.cxx289
-rw-r--r--chart2/source/controller/accessibility/AccessibleChartShape.hxx104
-rw-r--r--chart2/source/controller/accessibility/AccessibleChartView.cxx416
-rw-r--r--chart2/source/controller/accessibility/AccessibleTextHelper.cxx203
-rw-r--r--chart2/source/controller/accessibility/AccessibleViewForwarder.cxx116
-rw-r--r--chart2/source/controller/accessibility/AccessibleViewForwarder.hxx65
-rw-r--r--chart2/source/controller/accessibility/ChartElementFactory.cxx145
-rw-r--r--chart2/source/controller/accessibility/ChartElementFactory.hxx48
-rw-r--r--chart2/source/controller/accessibility/makefile.mk54
-rw-r--r--chart2/source/controller/chartapiwrapper/AreaWrapper.cxx207
-rw-r--r--chart2/source/controller/chartapiwrapper/AreaWrapper.hxx105
-rw-r--r--chart2/source/controller/chartapiwrapper/AxisWrapper.cxx596
-rw-r--r--chart2/source/controller/chartapiwrapper/AxisWrapper.hxx140
-rw-r--r--chart2/source/controller/chartapiwrapper/Chart2ModelContact.cxx319
-rw-r--r--chart2/source/controller/chartapiwrapper/Chart2ModelContact.hxx169
-rw-r--r--chart2/source/controller/chartapiwrapper/ChartDataWrapper.cxx633
-rw-r--r--chart2/source/controller/chartapiwrapper/ChartDataWrapper.hxx149
-rw-r--r--chart2/source/controller/chartapiwrapper/ChartDocumentWrapper.cxx1623
-rw-r--r--chart2/source/controller/chartapiwrapper/DataSeriesPointWrapper.cxx887
-rw-r--r--chart2/source/controller/chartapiwrapper/DataSeriesPointWrapper.hxx160
-rw-r--r--chart2/source/controller/chartapiwrapper/DiagramWrapper.cxx2148
-rw-r--r--chart2/source/controller/chartapiwrapper/DiagramWrapper.hxx319
-rw-r--r--chart2/source/controller/chartapiwrapper/GridWrapper.cxx211
-rw-r--r--chart2/source/controller/chartapiwrapper/GridWrapper.hxx103
-rw-r--r--chart2/source/controller/chartapiwrapper/LegendWrapper.cxx459
-rw-r--r--chart2/source/controller/chartapiwrapper/LegendWrapper.hxx113
-rw-r--r--chart2/source/controller/chartapiwrapper/MinMaxLineWrapper.cxx435
-rw-r--r--chart2/source/controller/chartapiwrapper/MinMaxLineWrapper.hxx139
-rw-r--r--chart2/source/controller/chartapiwrapper/ReferenceSizePropertyProvider.hxx48
-rw-r--r--chart2/source/controller/chartapiwrapper/TitleWrapper.cxx566
-rw-r--r--chart2/source/controller/chartapiwrapper/TitleWrapper.hxx136
-rw-r--r--chart2/source/controller/chartapiwrapper/UpDownBarWrapper.cxx402
-rw-r--r--chart2/source/controller/chartapiwrapper/UpDownBarWrapper.hxx137
-rw-r--r--chart2/source/controller/chartapiwrapper/WallFloorWrapper.cxx192
-rw-r--r--chart2/source/controller/chartapiwrapper/WallFloorWrapper.hxx89
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedAddInProperty.cxx158
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedAddInProperty.hxx111
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedAutomaticPositionProperties.cxx156
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedAutomaticPositionProperties.hxx49
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedAxisAndGridExistenceProperties.cxx448
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedAxisAndGridExistenceProperties.hxx76
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedCharacterHeightProperty.cxx172
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedCharacterHeightProperty.hxx102
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedDataCaptionProperties.cxx193
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedDataCaptionProperties.hxx61
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedGapwidthProperty.cxx201
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedGapwidthProperty.hxx87
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedNumberFormatProperty.cxx199
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedNumberFormatProperty.hxx92
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedScaleProperty.cxx511
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedScaleProperty.hxx92
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedScaleTextProperties.cxx167
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedScaleTextProperties.hxx54
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedSceneProperty.cxx131
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedSceneProperty.hxx82
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedSeriesAreaOrLineProperty.cxx70
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedSeriesAreaOrLineProperty.hxx60
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedSeriesOrDiagramProperty.hxx189
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedSplineProperties.cxx287
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedSplineProperties.hxx59
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedStatisticProperties.cxx1154
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedStatisticProperties.hxx57
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedStockProperties.cxx330
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedStockProperties.hxx59
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedSymbolProperties.cxx593
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedSymbolProperties.hxx61
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedTextRotationProperty.cxx87
-rw-r--r--chart2/source/controller/chartapiwrapper/WrappedTextRotationProperty.hxx58
-rw-r--r--chart2/source/controller/chartapiwrapper/makefile.mk77
-rw-r--r--chart2/source/controller/chartcontroller.component56
-rw-r--r--chart2/source/controller/dialogs/Bitmaps.hrc216
-rw-r--r--chart2/source/controller/dialogs/Bitmaps.src543
-rw-r--r--chart2/source/controller/dialogs/Bitmaps_HC.hrc213
-rw-r--r--chart2/source/controller/dialogs/Bitmaps_HC.src543
-rw-r--r--chart2/source/controller/dialogs/ChangingResource.cxx56
-rw-r--r--chart2/source/controller/dialogs/ChangingResource.hxx63
-rw-r--r--chart2/source/controller/dialogs/ChartTypeDialogController.cxx1285
-rw-r--r--chart2/source/controller/dialogs/ChartTypeDialogController.hxx317
-rw-r--r--chart2/source/controller/dialogs/ChartTypeTemplateProvider.hxx53
-rw-r--r--chart2/source/controller/dialogs/CommonResources.hrc79
-rw-r--r--chart2/source/controller/dialogs/DataBrowser.cxx1364
-rw-r--r--chart2/source/controller/dialogs/DataBrowser.hxx204
-rw-r--r--chart2/source/controller/dialogs/DataBrowserModel.cxx1000
-rw-r--r--chart2/source/controller/dialogs/DataBrowserModel.hxx181
-rw-r--r--chart2/source/controller/dialogs/DialogModel.cxx849
-rw-r--r--chart2/source/controller/dialogs/DialogModel.hxx197
-rw-r--r--chart2/source/controller/dialogs/ObjectNameProvider.cxx852
-rw-r--r--chart2/source/controller/dialogs/RangeEdit.cxx70
-rw-r--r--chart2/source/controller/dialogs/RangeSelectionButton.cxx56
-rw-r--r--chart2/source/controller/dialogs/RangeSelectionHelper.cxx198
-rw-r--r--chart2/source/controller/dialogs/RangeSelectionListener.cxx75
-rw-r--r--chart2/source/controller/dialogs/ResourceIds.hrc86
-rw-r--r--chart2/source/controller/dialogs/Strings.src608
-rw-r--r--chart2/source/controller/dialogs/Strings_AdditionalControls.src57
-rw-r--r--chart2/source/controller/dialogs/Strings_ChartTypes.src153
-rw-r--r--chart2/source/controller/dialogs/Strings_Scale.src44
-rw-r--r--chart2/source/controller/dialogs/Strings_Statistic.src72
-rw-r--r--chart2/source/controller/dialogs/TabPages.hrc172
-rw-r--r--chart2/source/controller/dialogs/TextDirectionListBox.cxx60
-rw-r--r--chart2/source/controller/dialogs/TimerTriggeredControllerLock.cxx70
-rw-r--r--chart2/source/controller/dialogs/TitleDialogData.cxx124
-rw-r--r--chart2/source/controller/dialogs/dlg_ChartType.cxx78
-rw-r--r--chart2/source/controller/dialogs/dlg_ChartType.hrc35
-rw-r--r--chart2/source/controller/dialogs/dlg_ChartType.src57
-rw-r--r--chart2/source/controller/dialogs/dlg_ChartType_UNO.cxx139
-rw-r--r--chart2/source/controller/dialogs/dlg_CreationWizard.cxx267
-rw-r--r--chart2/source/controller/dialogs/dlg_CreationWizard.hrc32
-rw-r--r--chart2/source/controller/dialogs/dlg_CreationWizard.src39
-rw-r--r--chart2/source/controller/dialogs/dlg_CreationWizard_UNO.cxx433
-rw-r--r--chart2/source/controller/dialogs/dlg_DataEditor.cxx363
-rw-r--r--chart2/source/controller/dialogs/dlg_DataEditor.hrc47
-rw-r--r--chart2/source/controller/dialogs/dlg_DataEditor.src148
-rw-r--r--chart2/source/controller/dialogs/dlg_DataSource.cxx253
-rw-r--r--chart2/source/controller/dialogs/dlg_DataSource.hrc33
-rw-r--r--chart2/source/controller/dialogs/dlg_DataSource.src48
-rw-r--r--chart2/source/controller/dialogs/dlg_InsertAxis_Grid.cxx164
-rw-r--r--chart2/source/controller/dialogs/dlg_InsertAxis_Grid.hrc46
-rw-r--r--chart2/source/controller/dialogs/dlg_InsertAxis_Grid.src99
-rw-r--r--chart2/source/controller/dialogs/dlg_InsertDataLabel.cxx74
-rw-r--r--chart2/source/controller/dialogs/dlg_InsertDataLabel.hrc32
-rw-r--r--chart2/source/controller/dialogs/dlg_InsertDataLabel.src42
-rw-r--r--chart2/source/controller/dialogs/dlg_InsertErrorBars.cxx134
-rw-r--r--chart2/source/controller/dialogs/dlg_InsertErrorBars.hrc31
-rw-r--r--chart2/source/controller/dialogs/dlg_InsertErrorBars.src43
-rw-r--r--chart2/source/controller/dialogs/dlg_InsertLegend.cxx78
-rw-r--r--chart2/source/controller/dialogs/dlg_InsertLegend.hrc31
-rw-r--r--chart2/source/controller/dialogs/dlg_InsertLegend.src47
-rw-r--r--chart2/source/controller/dialogs/dlg_InsertTitle.cxx67
-rw-r--r--chart2/source/controller/dialogs/dlg_InsertTitle.hrc31
-rw-r--r--chart2/source/controller/dialogs/dlg_InsertTitle.src42
-rw-r--r--chart2/source/controller/dialogs/dlg_InsertTrendline.cxx114
-rw-r--r--chart2/source/controller/dialogs/dlg_InsertTrendline.hrc31
-rw-r--r--chart2/source/controller/dialogs/dlg_InsertTrendline.src48
-rw-r--r--chart2/source/controller/dialogs/dlg_NumberFormat.cxx86
-rw-r--r--chart2/source/controller/dialogs/dlg_NumberFormat.hxx54
-rw-r--r--chart2/source/controller/dialogs/dlg_ObjectProperties.cxx652
-rw-r--r--chart2/source/controller/dialogs/dlg_ObjectProperties.src39
-rw-r--r--chart2/source/controller/dialogs/dlg_ShapeFont.cxx92
-rw-r--r--chart2/source/controller/dialogs/dlg_ShapeFont.src62
-rw-r--r--chart2/source/controller/dialogs/dlg_ShapeParagraph.cxx93
-rw-r--r--chart2/source/controller/dialogs/dlg_ShapeParagraph.src67
-rw-r--r--chart2/source/controller/dialogs/dlg_View3D.cxx118
-rw-r--r--chart2/source/controller/dialogs/dlg_View3D.hrc40
-rw-r--r--chart2/source/controller/dialogs/dlg_View3D.src49
-rw-r--r--chart2/source/controller/dialogs/hidother.src113
-rw-r--r--chart2/source/controller/dialogs/makefile.mk205
-rw-r--r--chart2/source/controller/dialogs/res_BarGeometry.cxx112
-rw-r--r--chart2/source/controller/dialogs/res_BarGeometry.hxx67
-rw-r--r--chart2/source/controller/dialogs/res_BarGeometry.src49
-rw-r--r--chart2/source/controller/dialogs/res_DataLabel.cxx419
-rw-r--r--chart2/source/controller/dialogs/res_DataLabel.hxx104
-rw-r--r--chart2/source/controller/dialogs/res_DataLabel_IDs.hrc45
-rw-r--r--chart2/source/controller/dialogs/res_DataLabel_tmpl.hrc169
-rw-r--r--chart2/source/controller/dialogs/res_ErrorBar.cxx787
-rw-r--r--chart2/source/controller/dialogs/res_ErrorBar_IDs.hrc63
-rw-r--r--chart2/source/controller/dialogs/res_ErrorBar_tmpl.hrc228
-rw-r--r--chart2/source/controller/dialogs/res_LegendPosition.cxx265
-rw-r--r--chart2/source/controller/dialogs/res_LegendPosition.hxx90
-rw-r--r--chart2/source/controller/dialogs/res_LegendPosition_IDs.hrc32
-rw-r--r--chart2/source/controller/dialogs/res_LegendPosition_tmpl.hrc80
-rw-r--r--chart2/source/controller/dialogs/res_SecondaryAxisCheckBoxes_tmpl.hrc59
-rw-r--r--chart2/source/controller/dialogs/res_TextSeparator.cxx155
-rw-r--r--chart2/source/controller/dialogs/res_TextSeparator.hxx75
-rw-r--r--chart2/source/controller/dialogs/res_TextSeparator.src49
-rw-r--r--chart2/source/controller/dialogs/res_Titles.cxx224
-rw-r--r--chart2/source/controller/dialogs/res_Titles.hrc47
-rw-r--r--chart2/source/controller/dialogs/res_Titles.hxx77
-rw-r--r--chart2/source/controller/dialogs/res_Titlesx_tmpl.hrc149
-rw-r--r--chart2/source/controller/dialogs/res_Trendline.cxx282
-rw-r--r--chart2/source/controller/dialogs/res_Trendline.hxx83
-rw-r--r--chart2/source/controller/dialogs/res_Trendline_IDs.hrc44
-rw-r--r--chart2/source/controller/dialogs/res_Trendline_tmpl.hrc123
-rw-r--r--chart2/source/controller/dialogs/tp_3D_SceneAppearance.cxx363
-rw-r--r--chart2/source/controller/dialogs/tp_3D_SceneAppearance.hrc38
-rw-r--r--chart2/source/controller/dialogs/tp_3D_SceneAppearance.hxx99
-rw-r--r--chart2/source/controller/dialogs/tp_3D_SceneAppearance.src102
-rw-r--r--chart2/source/controller/dialogs/tp_3D_SceneGeometry.cxx296
-rw-r--r--chart2/source/controller/dialogs/tp_3D_SceneGeometry.hrc40
-rw-r--r--chart2/source/controller/dialogs/tp_3D_SceneGeometry.hxx112
-rw-r--r--chart2/source/controller/dialogs/tp_3D_SceneGeometry.src154
-rw-r--r--chart2/source/controller/dialogs/tp_3D_SceneIllumination.cxx650
-rw-r--r--chart2/source/controller/dialogs/tp_3D_SceneIllumination.hrc46
-rw-r--r--chart2/source/controller/dialogs/tp_3D_SceneIllumination.hxx145
-rw-r--r--chart2/source/controller/dialogs/tp_3D_SceneIllumination.src175
-rw-r--r--chart2/source/controller/dialogs/tp_AxisLabel.cxx323
-rw-r--r--chart2/source/controller/dialogs/tp_AxisLabel.hxx99
-rw-r--r--chart2/source/controller/dialogs/tp_AxisLabel.src194
-rw-r--r--chart2/source/controller/dialogs/tp_AxisPositions.cxx498
-rw-r--r--chart2/source/controller/dialogs/tp_AxisPositions.hxx112
-rw-r--r--chart2/source/controller/dialogs/tp_AxisPositions.src308
-rw-r--r--chart2/source/controller/dialogs/tp_ChartType.cxx1183
-rw-r--r--chart2/source/controller/dialogs/tp_ChartType.hrc62
-rw-r--r--chart2/source/controller/dialogs/tp_ChartType.hxx125
-rw-r--r--chart2/source/controller/dialogs/tp_ChartType.src273
-rw-r--r--chart2/source/controller/dialogs/tp_DataLabel.cxx74
-rw-r--r--chart2/source/controller/dialogs/tp_DataLabel.hxx64
-rw-r--r--chart2/source/controller/dialogs/tp_DataLabel.src42
-rw-r--r--chart2/source/controller/dialogs/tp_DataSource.cxx1076
-rw-r--r--chart2/source/controller/dialogs/tp_DataSource.hrc50
-rw-r--r--chart2/source/controller/dialogs/tp_DataSource.hxx179
-rw-r--r--chart2/source/controller/dialogs/tp_DataSource.src180
-rw-r--r--chart2/source/controller/dialogs/tp_DataSourceControls.cxx57
-rw-r--r--chart2/source/controller/dialogs/tp_DataSourceControls.hxx70
-rw-r--r--chart2/source/controller/dialogs/tp_ErrorBars.cxx100
-rw-r--r--chart2/source/controller/dialogs/tp_ErrorBars.hxx65
-rw-r--r--chart2/source/controller/dialogs/tp_ErrorBars.src38
-rw-r--r--chart2/source/controller/dialogs/tp_LegendPosition.cxx88
-rw-r--r--chart2/source/controller/dialogs/tp_LegendPosition.hxx69
-rw-r--r--chart2/source/controller/dialogs/tp_LegendPosition.src66
-rw-r--r--chart2/source/controller/dialogs/tp_Location.cxx71
-rw-r--r--chart2/source/controller/dialogs/tp_Location.hrc32
-rw-r--r--chart2/source/controller/dialogs/tp_Location.hxx76
-rw-r--r--chart2/source/controller/dialogs/tp_Location.src75
-rw-r--r--chart2/source/controller/dialogs/tp_PointGeometry.cxx104
-rw-r--r--chart2/source/controller/dialogs/tp_PointGeometry.hxx58
-rw-r--r--chart2/source/controller/dialogs/tp_PointGeometry.src36
-rw-r--r--chart2/source/controller/dialogs/tp_PolarOptions.cxx126
-rw-r--r--chart2/source/controller/dialogs/tp_PolarOptions.hrc40
-rw-r--r--chart2/source/controller/dialogs/tp_PolarOptions.hxx67
-rw-r--r--chart2/source/controller/dialogs/tp_PolarOptions.src91
-rw-r--r--chart2/source/controller/dialogs/tp_RangeChooser.cxx414
-rw-r--r--chart2/source/controller/dialogs/tp_RangeChooser.hrc40
-rw-r--r--chart2/source/controller/dialogs/tp_RangeChooser.hxx124
-rw-r--r--chart2/source/controller/dialogs/tp_RangeChooser.src101
-rw-r--r--chart2/source/controller/dialogs/tp_Scale.cxx518
-rw-r--r--chart2/source/controller/dialogs/tp_Scale.hxx126
-rw-r--r--chart2/source/controller/dialogs/tp_Scale.src203
-rw-r--r--chart2/source/controller/dialogs/tp_SeriesToAxis.cxx313
-rw-r--r--chart2/source/controller/dialogs/tp_SeriesToAxis.hrc45
-rw-r--r--chart2/source/controller/dialogs/tp_SeriesToAxis.hxx95
-rw-r--r--chart2/source/controller/dialogs/tp_SeriesToAxis.src186
-rw-r--r--chart2/source/controller/dialogs/tp_TitleRotation.cxx126
-rw-r--r--chart2/source/controller/dialogs/tp_TitleRotation.hxx69
-rw-r--r--chart2/source/controller/dialogs/tp_TitleRotation.src93
-rw-r--r--chart2/source/controller/dialogs/tp_Trendline.cxx77
-rw-r--r--chart2/source/controller/dialogs/tp_Trendline.hxx59
-rw-r--r--chart2/source/controller/dialogs/tp_Trendline.src38
-rw-r--r--chart2/source/controller/dialogs/tp_Wizard_TitlesAndObjects.cxx187
-rw-r--r--chart2/source/controller/dialogs/tp_Wizard_TitlesAndObjects.hrc50
-rw-r--r--chart2/source/controller/dialogs/tp_Wizard_TitlesAndObjects.hxx93
-rw-r--r--chart2/source/controller/dialogs/tp_Wizard_TitlesAndObjects.src93
-rw-r--r--chart2/source/controller/drawinglayer/DrawViewWrapper.cxx445
-rw-r--r--chart2/source/controller/drawinglayer/ViewElementListProvider.cxx274
-rw-r--r--chart2/source/controller/drawinglayer/makefile.mk49
-rw-r--r--chart2/source/controller/inc/AccessibleBase.hxx379
-rw-r--r--chart2/source/controller/inc/AccessibleChartView.hxx155
-rw-r--r--chart2/source/controller/inc/AccessibleTextHelper.hxx113
-rw-r--r--chart2/source/controller/inc/AxisItemConverter.hxx92
-rw-r--r--chart2/source/controller/inc/CharacterPropertyItemConverter.hxx84
-rw-r--r--chart2/source/controller/inc/ChartDocumentWrapper.hxx235
-rw-r--r--chart2/source/controller/inc/ChartRenderer.hxx76
-rw-r--r--chart2/source/controller/inc/ConfigurationAccess.hxx59
-rw-r--r--chart2/source/controller/inc/DataPointItemConverter.hxx110
-rw-r--r--chart2/source/controller/inc/DrawViewWrapper.hxx112
-rwxr-xr-xchart2/source/controller/inc/ErrorBarItemConverter.hxx84
-rw-r--r--chart2/source/controller/inc/GraphicPropertyItemConverter.hxx85
-rw-r--r--chart2/source/controller/inc/HelpIds.hrc162
-rw-r--r--chart2/source/controller/inc/ItemConverter.hxx215
-rw-r--r--chart2/source/controller/inc/ItemPropertyMap.hxx90
-rw-r--r--chart2/source/controller/inc/LegendItemConverter.hxx79
-rw-r--r--chart2/source/controller/inc/MenuResIds.hrc41
-rw-r--r--chart2/source/controller/inc/MultipleChartConverters.hxx130
-rw-r--r--chart2/source/controller/inc/MultipleItemConverter.hxx60
-rw-r--r--chart2/source/controller/inc/ObjectHierarchy.hxx120
-rw-r--r--chart2/source/controller/inc/ObjectNameProvider.hxx87
-rw-r--r--chart2/source/controller/inc/PositionAndSizeHelper.hxx60
-rwxr-xr-xchart2/source/controller/inc/RangeEdit.hxx56
-rw-r--r--chart2/source/controller/inc/RangeSelectionButton.hxx55
-rwxr-xr-xchart2/source/controller/inc/RangeSelectionHelper.hxx87
-rw-r--r--chart2/source/controller/inc/RangeSelectionListener.hxx79
-rw-r--r--chart2/source/controller/inc/RegressionCurveItemConverter.hxx82
-rw-r--r--chart2/source/controller/inc/RegressionEquationItemConverter.hxx83
-rw-r--r--chart2/source/controller/inc/SchSlotIds.hxx234
-rw-r--r--chart2/source/controller/inc/SeriesOptionsItemConverter.hxx102
-rw-r--r--chart2/source/controller/inc/ShapeController.hrc50
-rw-r--r--chart2/source/controller/inc/StatisticsItemConverter.hxx75
-rw-r--r--chart2/source/controller/inc/TabPageNotifiable.hxx51
-rw-r--r--chart2/source/controller/inc/TextDirectionListBox.hxx49
-rw-r--r--chart2/source/controller/inc/TimerTriggeredControllerLock.hxx63
-rw-r--r--chart2/source/controller/inc/TitleDialogData.hxx67
-rw-r--r--chart2/source/controller/inc/TitleItemConverter.hxx80
-rw-r--r--chart2/source/controller/inc/ViewElementListProvider.hxx70
-rw-r--r--chart2/source/controller/inc/dlg_ChartType.hxx76
-rw-r--r--chart2/source/controller/inc/dlg_ChartType_UNO.hxx86
-rw-r--r--chart2/source/controller/inc/dlg_CreationWizard.hxx105
-rw-r--r--chart2/source/controller/inc/dlg_CreationWizard_UNO.hxx129
-rw-r--r--chart2/source/controller/inc/dlg_DataEditor.hxx121
-rw-r--r--chart2/source/controller/inc/dlg_DataSource.hxx100
-rw-r--r--chart2/source/controller/inc/dlg_InsertAxis_Grid.hxx101
-rw-r--r--chart2/source/controller/inc/dlg_InsertDataLabel.hxx72
-rw-r--r--chart2/source/controller/inc/dlg_InsertErrorBars.hxx78
-rw-r--r--chart2/source/controller/inc/dlg_InsertLegend.hxx72
-rw-r--r--chart2/source/controller/inc/dlg_InsertTitle.hxx64
-rw-r--r--chart2/source/controller/inc/dlg_InsertTrendline.hxx68
-rw-r--r--chart2/source/controller/inc/dlg_ObjectProperties.hxx155
-rw-r--r--chart2/source/controller/inc/dlg_ShapeFont.hxx59
-rw-r--r--chart2/source/controller/inc/dlg_ShapeParagraph.hxx54
-rw-r--r--chart2/source/controller/inc/dlg_View3D.hxx84
-rw-r--r--chart2/source/controller/inc/res_ErrorBar.hxx155
-rw-r--r--chart2/source/controller/itemsetwrapper/AxisItemConverter.cxx835
-rw-r--r--chart2/source/controller/itemsetwrapper/CharacterPropertyItemConverter.cxx518
-rw-r--r--chart2/source/controller/itemsetwrapper/DataPointItemConverter.cxx700
-rwxr-xr-xchart2/source/controller/itemsetwrapper/ErrorBarItemConverter.cxx456
-rw-r--r--chart2/source/controller/itemsetwrapper/GraphicPropertyItemConverter.cxx809
-rw-r--r--chart2/source/controller/itemsetwrapper/ItemConverter.cxx269
-rw-r--r--chart2/source/controller/itemsetwrapper/LegendItemConverter.cxx236
-rw-r--r--chart2/source/controller/itemsetwrapper/MultipleChartConverters.cxx233
-rw-r--r--chart2/source/controller/itemsetwrapper/MultipleItemConverter.cxx84
-rw-r--r--chart2/source/controller/itemsetwrapper/RegressionCurveItemConverter.cxx276
-rw-r--r--chart2/source/controller/itemsetwrapper/RegressionEquationItemConverter.cxx187
-rw-r--r--chart2/source/controller/itemsetwrapper/SchWhichPairs.hxx254
-rw-r--r--chart2/source/controller/itemsetwrapper/SeriesOptionsItemConverter.cxx453
-rw-r--r--chart2/source/controller/itemsetwrapper/StatisticsItemConverter.cxx697
-rw-r--r--chart2/source/controller/itemsetwrapper/TitleItemConverter.cxx245
-rw-r--r--chart2/source/controller/itemsetwrapper/makefile.mk60
-rw-r--r--chart2/source/controller/main/ChartController.cxx1603
-rw-r--r--chart2/source/controller/main/ChartController.hxx737
-rw-r--r--chart2/source/controller/main/ChartController_EditData.cxx80
-rw-r--r--chart2/source/controller/main/ChartController_Insert.cxx946
-rw-r--r--chart2/source/controller/main/ChartController_Position.cxx191
-rw-r--r--chart2/source/controller/main/ChartController_Properties.cxx860
-rw-r--r--chart2/source/controller/main/ChartController_TextEdit.cxx271
-rw-r--r--chart2/source/controller/main/ChartController_Tools.cxx919
-rw-r--r--chart2/source/controller/main/ChartController_Window.cxx2029
-rw-r--r--chart2/source/controller/main/ChartDropTargetHelper.cxx204
-rw-r--r--chart2/source/controller/main/ChartDropTargetHelper.hxx69
-rw-r--r--chart2/source/controller/main/ChartFrameloader.cxx208
-rw-r--r--chart2/source/controller/main/ChartFrameloader.hxx91
-rw-r--r--chart2/source/controller/main/ChartRenderer.cxx178
-rw-r--r--chart2/source/controller/main/ChartTransferable.cxx172
-rw-r--r--chart2/source/controller/main/ChartTransferable.hxx67
-rw-r--r--chart2/source/controller/main/ChartWindow.cxx271
-rw-r--r--chart2/source/controller/main/ChartWindow.hxx88
-rw-r--r--chart2/source/controller/main/CommandDispatch.cxx211
-rw-r--r--chart2/source/controller/main/CommandDispatch.hxx151
-rw-r--r--chart2/source/controller/main/CommandDispatchContainer.cxx216
-rw-r--r--chart2/source/controller/main/CommandDispatchContainer.hxx160
-rw-r--r--chart2/source/controller/main/ConfigurationAccess.cxx120
-rw-r--r--chart2/source/controller/main/ControllerCommandDispatch.cxx805
-rw-r--r--chart2/source/controller/main/ControllerCommandDispatch.hxx136
-rw-r--r--chart2/source/controller/main/DragMethod_Base.cxx93
-rw-r--r--chart2/source/controller/main/DragMethod_Base.hxx69
-rw-r--r--chart2/source/controller/main/DragMethod_PieSegment.cxx163
-rw-r--r--chart2/source/controller/main/DragMethod_PieSegment.hxx64
-rw-r--r--chart2/source/controller/main/DragMethod_RotateDiagram.cxx237
-rw-r--r--chart2/source/controller/main/DragMethod_RotateDiagram.hxx92
-rw-r--r--chart2/source/controller/main/DrawCommandDispatch.cxx674
-rw-r--r--chart2/source/controller/main/DrawCommandDispatch.hrc50
-rw-r--r--chart2/source/controller/main/DrawCommandDispatch.hxx93
-rw-r--r--chart2/source/controller/main/ElementSelector.cxx344
-rw-r--r--chart2/source/controller/main/ElementSelector.hxx123
-rw-r--r--chart2/source/controller/main/FeatureCommandDispatchBase.cxx114
-rw-r--r--chart2/source/controller/main/FeatureCommandDispatchBase.hxx115
-rw-r--r--chart2/source/controller/main/ImplUndoManager.cxx505
-rw-r--r--chart2/source/controller/main/ImplUndoManager.hxx227
-rw-r--r--chart2/source/controller/main/ObjectHierarchy.cxx862
-rw-r--r--chart2/source/controller/main/PositionAndSizeHelper.cxx189
-rw-r--r--chart2/source/controller/main/SelectionHelper.cxx685
-rw-r--r--chart2/source/controller/main/SelectionHelper.hxx139
-rw-r--r--chart2/source/controller/main/ShapeController.cxx738
-rw-r--r--chart2/source/controller/main/ShapeController.hxx100
-rw-r--r--chart2/source/controller/main/ShapeToolbarController.cxx298
-rw-r--r--chart2/source/controller/main/ShapeToolbarController.hxx103
-rw-r--r--chart2/source/controller/main/StatusBarCommandDispatch.cxx156
-rw-r--r--chart2/source/controller/main/StatusBarCommandDispatch.hxx110
-rw-r--r--chart2/source/controller/main/UndoCommandDispatch.cxx147
-rw-r--r--chart2/source/controller/main/UndoCommandDispatch.hxx86
-rw-r--r--chart2/source/controller/main/UndoGuard.cxx143
-rw-r--r--chart2/source/controller/main/UndoManager.cxx440
-rw-r--r--chart2/source/controller/main/_serviceregistration_controller.cxx118
-rw-r--r--chart2/source/controller/main/makefile.mk84
-rw-r--r--chart2/source/controller/makefile.mk136
-rw-r--r--chart2/source/controller/menus/ShapeContextMenu.src124
-rw-r--r--chart2/source/controller/menus/ShapeEditContextMenu.src65
-rw-r--r--chart2/source/controller/menus/makefile.mk63
-rw-r--r--chart2/source/inc/AxisHelper.hxx247
-rw-r--r--chart2/source/inc/AxisIndexDefines.hxx38
-rw-r--r--chart2/source/inc/BaseGFXHelper.hxx102
-rw-r--r--chart2/source/inc/CachedDataSequence.hxx192
-rw-r--r--chart2/source/inc/CharacterProperties.hxx147
-rw-r--r--chart2/source/inc/ChartDebugTrace.hxx69
-rw-r--r--chart2/source/inc/ChartModelHelper.hxx115
-rw-r--r--chart2/source/inc/ChartTypeHelper.hxx104
-rw-r--r--chart2/source/inc/ChartViewHelper.hxx51
-rw-r--r--chart2/source/inc/CloneHelper.hxx124
-rw-r--r--chart2/source/inc/ColorPerPointHelper.hxx65
-rw-r--r--chart2/source/inc/CommonConverters.hxx279
-rw-r--r--chart2/source/inc/CommonFunctors.hxx228
-rw-r--r--chart2/source/inc/ConfigColorScheme.hxx94
-rw-r--r--chart2/source/inc/ConfigItemListener.hxx45
-rw-r--r--chart2/source/inc/ContainerHelper.hxx181
-rw-r--r--chart2/source/inc/ControllerLockGuard.hxx93
-rw-r--r--chart2/source/inc/DataSeriesHelper.hxx213
-rw-r--r--chart2/source/inc/DataSource.hxx83
-rw-r--r--chart2/source/inc/DataSourceHelper.hxx164
-rw-r--r--chart2/source/inc/DiagramHelper.hxx350
-rw-r--r--chart2/source/inc/DisposeHelper.hxx101
-rw-r--r--chart2/source/inc/ErrorBar.hxx160
-rw-r--r--chart2/source/inc/EventListenerHelper.hxx222
-rw-r--r--chart2/source/inc/ExplicitCategoriesProvider.hxx108
-rw-r--r--chart2/source/inc/ExponentialRegressionCurveCalculator.hxx74
-rw-r--r--chart2/source/inc/FastPropertyIdRanges.hxx57
-rw-r--r--chart2/source/inc/FillProperties.hxx91
-rw-r--r--chart2/source/inc/FormattedStringHelper.hxx57
-rwxr-xr-xchart2/source/inc/InternalData.hxx109
-rw-r--r--chart2/source/inc/InternalDataProvider.hxx246
-rw-r--r--chart2/source/inc/LabeledDataSequence.hxx115
-rw-r--r--chart2/source/inc/LegendHelper.hxx78
-rw-r--r--chart2/source/inc/LifeTime.hxx255
-rw-r--r--chart2/source/inc/LineProperties.hxx77
-rw-r--r--chart2/source/inc/LinearRegressionCurveCalculator.hxx74
-rw-r--r--chart2/source/inc/LogarithmicRegressionCurveCalculator.hxx74
-rw-r--r--chart2/source/inc/MeanValueRegressionCurveCalculator.hxx73
-rw-r--r--chart2/source/inc/MediaDescriptorHelper.hxx207
-rw-r--r--chart2/source/inc/ModifyListenerCallBack.hxx68
-rw-r--r--chart2/source/inc/ModifyListenerHelper.hxx307
-rw-r--r--chart2/source/inc/MutexContainer.hxx50
-rw-r--r--chart2/source/inc/NameContainer.hxx104
-rw-r--r--chart2/source/inc/NamedFillProperties.hxx75
-rw-r--r--chart2/source/inc/NamedLineProperties.hxx75
-rw-r--r--chart2/source/inc/NamedProperties.hxx62
-rw-r--r--chart2/source/inc/NoWarningThisInCTOR.hxx46
-rw-r--r--chart2/source/inc/OPropertySet.hxx319
-rw-r--r--chart2/source/inc/ObjectIdentifier.hxx278
-rw-r--r--chart2/source/inc/PotentialRegressionCurveCalculator.hxx76
-rw-r--r--chart2/source/inc/PropertyHelper.hxx197
-rw-r--r--chart2/source/inc/RangeHighlighter.hxx116
-rw-r--r--chart2/source/inc/ReferenceSizeProvider.hxx145
-rw-r--r--chart2/source/inc/RegressionCurveCalculator.hxx93
-rw-r--r--chart2/source/inc/RegressionCurveHelper.hxx241
-rw-r--r--chart2/source/inc/RelativePositionHelper.hxx120
-rw-r--r--chart2/source/inc/RelativeSizeHelper.hxx59
-rw-r--r--chart2/source/inc/ResId.hxx48
-rw-r--r--chart2/source/inc/RessourceManager.hxx53
-rw-r--r--chart2/source/inc/Scaling.hxx210
-rw-r--r--chart2/source/inc/SceneProperties.hxx96
-rw-r--r--chart2/source/inc/ServiceMacros.hxx146
-rw-r--r--chart2/source/inc/StackMode.hxx47
-rw-r--r--chart2/source/inc/StatisticsHelper.hxx133
-rw-r--r--chart2/source/inc/Strings.hrc409
-rw-r--r--chart2/source/inc/ThreeDHelper.hxx159
-rw-r--r--chart2/source/inc/TitleHelper.hxx101
-rw-r--r--chart2/source/inc/TrueGuard.hxx48
-rw-r--r--chart2/source/inc/UncachedDataSequence.hxx206
-rw-r--r--chart2/source/inc/UndoGuard.hxx120
-rw-r--r--chart2/source/inc/UndoManager.hxx180
-rw-r--r--chart2/source/inc/UserDefinedProperties.hxx69
-rw-r--r--chart2/source/inc/WeakListenerAdapter.hxx127
-rw-r--r--chart2/source/inc/WrappedDefaultProperty.hxx66
-rw-r--r--chart2/source/inc/WrappedDirectStateProperty.hxx53
-rw-r--r--chart2/source/inc/WrappedIgnoreProperty.hxx81
-rw-r--r--chart2/source/inc/WrappedProperty.hxx86
-rw-r--r--chart2/source/inc/WrappedPropertySet.hxx145
-rw-r--r--chart2/source/inc/XMLRangeHelper.hxx74
-rw-r--r--chart2/source/inc/charttoolsdllapi.hxx41
-rw-r--r--chart2/source/inc/chartview/ChartSfxItemIds.hxx262
-rw-r--r--chart2/source/inc/chartview/DataPointSymbolSupplier.hxx59
-rw-r--r--chart2/source/inc/chartview/DrawModelWrapper.hxx114
-rw-r--r--chart2/source/inc/chartview/ExplicitValueProvider.hxx119
-rw-r--r--chart2/source/inc/chartview/NumberFormatterWrapper.hxx82
-rw-r--r--chart2/source/inc/chartview/chartviewdllapi.hxx41
-rw-r--r--chart2/source/inc/chartview/servicenames_charttypes.hxx47
-rw-r--r--chart2/source/inc/exports.dxp2
-rw-r--r--chart2/source/inc/macros.hxx53
-rw-r--r--chart2/source/inc/servicenames.hxx71
-rw-r--r--chart2/source/inc/servicenames_charttypes.hxx49
-rw-r--r--chart2/source/inc/servicenames_coosystems.hxx43
-rw-r--r--chart2/source/inc/servicenames_dlwrapper.hxx41
-rw-r--r--chart2/source/model/chartmodel.component150
-rw-r--r--chart2/source/model/filter/XMLFilter.cxx873
-rw-r--r--chart2/source/model/filter/makefile.mk49
-rw-r--r--chart2/source/model/inc/BaseCoordinateSystem.hxx190
-rw-r--r--chart2/source/model/inc/CartesianCoordinateSystem.hxx93
-rw-r--r--chart2/source/model/inc/ChartTypeManager.hxx92
-rw-r--r--chart2/source/model/inc/DataSeries.hxx230
-rw-r--r--chart2/source/model/inc/DataSeriesTree.hxx91
-rw-r--r--chart2/source/model/inc/Diagram.hxx241
-rw-r--r--chart2/source/model/inc/PolarCoordinateSystem.hxx93
-rw-r--r--chart2/source/model/inc/StockBar.hxx119
-rw-r--r--chart2/source/model/inc/XMLFilter.hxx223
-rw-r--r--chart2/source/model/inc/_serviceregistration_charttypes.hxx40
-rw-r--r--chart2/source/model/main/Axis.cxx646
-rw-r--r--chart2/source/model/main/Axis.hxx184
-rw-r--r--chart2/source/model/main/BaseCoordinateSystem.cxx409
-rw-r--r--chart2/source/model/main/CartesianCoordinateSystem.cxx155
-rwxr-xr-xchart2/source/model/main/ChartModel.cxx1379
-rw-r--r--chart2/source/model/main/ChartModel.hxx609
-rw-r--r--chart2/source/model/main/ChartModel_Persistence.cxx860
-rw-r--r--chart2/source/model/main/DataPoint.cxx319
-rw-r--r--chart2/source/model/main/DataPoint.hxx143
-rw-r--r--chart2/source/model/main/DataPointProperties.cxx438
-rw-r--r--chart2/source/model/main/DataPointProperties.hxx101
-rw-r--r--chart2/source/model/main/DataSeries.cxx624
-rw-r--r--chart2/source/model/main/DataSeriesProperties.cxx98
-rw-r--r--chart2/source/model/main/DataSeriesProperties.hxx63
-rw-r--r--chart2/source/model/main/Diagram.cxx713
-rw-r--r--chart2/source/model/main/FormattedString.cxx263
-rw-r--r--chart2/source/model/main/FormattedString.hxx140
-rw-r--r--chart2/source/model/main/GridProperties.cxx273
-rw-r--r--chart2/source/model/main/GridProperties.hxx128
-rw-r--r--chart2/source/model/main/LayoutContainer.cxx138
-rw-r--r--chart2/source/model/main/LayoutContainer.hxx90
-rw-r--r--chart2/source/model/main/Legend.cxx369
-rw-r--r--chart2/source/model/main/Legend.hxx154
-rw-r--r--chart2/source/model/main/PageBackground.cxx255
-rw-r--r--chart2/source/model/main/PageBackground.hxx132
-rw-r--r--chart2/source/model/main/PolarCoordinateSystem.cxx155
-rw-r--r--chart2/source/model/main/StockBar.cxx267
-rw-r--r--chart2/source/model/main/Title.cxx412
-rw-r--r--chart2/source/model/main/Title.hxx147
-rw-r--r--chart2/source/model/main/Wall.cxx260
-rw-r--r--chart2/source/model/main/Wall.hxx127
-rw-r--r--chart2/source/model/main/_serviceregistration_model.cxx210
-rw-r--r--chart2/source/model/main/makefile.mk67
-rw-r--r--chart2/source/model/makefile.mk108
-rw-r--r--chart2/source/model/template/AreaChartType.cxx77
-rw-r--r--chart2/source/model/template/AreaChartType.hxx64
-rw-r--r--chart2/source/model/template/AreaChartTypeTemplate.cxx281
-rw-r--r--chart2/source/model/template/AreaChartTypeTemplate.hxx103
-rw-r--r--chart2/source/model/template/BarChartType.cxx78
-rw-r--r--chart2/source/model/template/BarChartType.hxx64
-rw-r--r--chart2/source/model/template/BarChartTypeTemplate.cxx353
-rw-r--r--chart2/source/model/template/BarChartTypeTemplate.hxx121
-rw-r--r--chart2/source/model/template/BubbleChartType.cxx242
-rw-r--r--chart2/source/model/template/BubbleChartType.hxx86
-rw-r--r--chart2/source/model/template/BubbleChartTypeTemplate.cxx314
-rw-r--r--chart2/source/model/template/BubbleChartTypeTemplate.hxx101
-rw-r--r--chart2/source/model/template/BubbleDataInterpreter.cxx308
-rw-r--r--chart2/source/model/template/BubbleDataInterpreter.hxx61
-rw-r--r--chart2/source/model/template/CandleStickChartType.cxx355
-rw-r--r--chart2/source/model/template/CandleStickChartType.hxx90
-rw-r--r--chart2/source/model/template/ChartType.cxx325
-rw-r--r--chart2/source/model/template/ChartType.hxx183
-rw-r--r--chart2/source/model/template/ChartTypeManager.cxx619
-rw-r--r--chart2/source/model/template/ChartTypeTemplate.cxx933
-rw-r--r--chart2/source/model/template/ChartTypeTemplate.hxx299
-rw-r--r--chart2/source/model/template/ColumnChartType.cxx202
-rw-r--r--chart2/source/model/template/ColumnChartType.hxx74
-rw-r--r--chart2/source/model/template/ColumnLineChartTypeTemplate.cxx453
-rw-r--r--chart2/source/model/template/ColumnLineChartTypeTemplate.hxx119
-rw-r--r--chart2/source/model/template/ColumnLineDataInterpreter.cxx101
-rw-r--r--chart2/source/model/template/ColumnLineDataInterpreter.hxx59
-rw-r--r--chart2/source/model/template/DataInterpreter.cxx461
-rw-r--r--chart2/source/model/template/DataInterpreter.hxx100
-rw-r--r--chart2/source/model/template/FilledNetChartType.cxx94
-rw-r--r--chart2/source/model/template/FilledNetChartType.hxx63
-rw-r--r--chart2/source/model/template/LineChartType.cxx214
-rw-r--r--chart2/source/model/template/LineChartType.hxx75
-rw-r--r--chart2/source/model/template/LineChartTypeTemplate.cxx412
-rw-r--r--chart2/source/model/template/LineChartTypeTemplate.hxx109
-rw-r--r--chart2/source/model/template/NetChartType.cxx180
-rw-r--r--chart2/source/model/template/NetChartType.hxx93
-rw-r--r--chart2/source/model/template/NetChartTypeTemplate.cxx229
-rw-r--r--chart2/source/model/template/NetChartTypeTemplate.hxx87
-rw-r--r--chart2/source/model/template/PieChartType.cxx239
-rw-r--r--chart2/source/model/template/PieChartType.hxx81
-rw-r--r--chart2/source/model/template/PieChartTypeTemplate.cxx661
-rw-r--r--chart2/source/model/template/PieChartTypeTemplate.hxx140
-rw-r--r--chart2/source/model/template/ScatterChartType.cxx296
-rw-r--r--chart2/source/model/template/ScatterChartType.hxx91
-rw-r--r--chart2/source/model/template/ScatterChartTypeTemplate.cxx432
-rw-r--r--chart2/source/model/template/ScatterChartTypeTemplate.hxx110
-rw-r--r--chart2/source/model/template/StockChartTypeTemplate.cxx560
-rw-r--r--chart2/source/model/template/StockChartTypeTemplate.hxx138
-rw-r--r--chart2/source/model/template/StockDataInterpreter.cxx344
-rw-r--r--chart2/source/model/template/StockDataInterpreter.hxx69
-rw-r--r--chart2/source/model/template/XYDataInterpreter.cxx273
-rw-r--r--chart2/source/model/template/XYDataInterpreter.hxx61
-rw-r--r--chart2/source/model/template/_serviceregistration_charttypes.cxx138
-rw-r--r--chart2/source/model/template/makefile.mk82
-rw-r--r--chart2/source/tools/AxisHelper.cxx976
-rw-r--r--chart2/source/tools/BaseGFXHelper.cxx222
-rw-r--r--chart2/source/tools/CachedDataSequence.cxx409
-rw-r--r--chart2/source/tools/CharacterProperties.cxx608
-rw-r--r--chart2/source/tools/ChartDebugTrace.cxx417
-rw-r--r--chart2/source/tools/ChartModelHelper.cxx267
-rw-r--r--chart2/source/tools/ChartTypeHelper.cxx685
-rw-r--r--chart2/source/tools/ChartViewHelper.cxx72
-rw-r--r--chart2/source/tools/ColorPerPointHelper.cxx97
-rw-r--r--chart2/source/tools/CommonConverters.cxx549
-rw-r--r--chart2/source/tools/ConfigColorScheme.cxx202
-rw-r--r--chart2/source/tools/ControllerLockGuard.cxx89
-rw-r--r--chart2/source/tools/DataSeriesHelper.cxx918
-rw-r--r--chart2/source/tools/DataSource.cxx91
-rw-r--r--chart2/source/tools/DataSourceHelper.cxx552
-rw-r--r--chart2/source/tools/DiagramHelper.cxx1559
-rw-r--r--chart2/source/tools/ErrorBar.cxx363
-rw-r--r--chart2/source/tools/ExplicitCategoriesProvider.cxx422
-rw-r--r--chart2/source/tools/ExponentialRegressionCurveCalculator.cxx183
-rw-r--r--chart2/source/tools/FillProperties.cxx277
-rw-r--r--chart2/source/tools/FormattedStringHelper.cxx80
-rw-r--r--chart2/source/tools/ImplOPropertySet.cxx207
-rw-r--r--chart2/source/tools/ImplOPropertySet.hxx96
-rwxr-xr-xchart2/source/tools/InternalData.cxx530
-rw-r--r--chart2/source/tools/InternalDataProvider.cxx1314
-rw-r--r--chart2/source/tools/LabeledDataSequence.cxx179
-rw-r--r--chart2/source/tools/LegendHelper.cxx147
-rw-r--r--chart2/source/tools/LifeTime.cxx546
-rw-r--r--chart2/source/tools/LineProperties.cxx185
-rw-r--r--chart2/source/tools/LinearRegressionCurveCalculator.cxx179
-rw-r--r--chart2/source/tools/LogarithmicRegressionCurveCalculator.cxx191
-rw-r--r--chart2/source/tools/MeanValueRegressionCurveCalculator.cxx143
-rw-r--r--chart2/source/tools/MediaDescriptorHelper.cxx221
-rw-r--r--chart2/source/tools/ModifyListenerCallBack.cxx134
-rw-r--r--chart2/source/tools/ModifyListenerHelper.cxx213
-rw-r--r--chart2/source/tools/MutexContainer.cxx43
-rw-r--r--chart2/source/tools/NameContainer.cxx189
-rw-r--r--chart2/source/tools/NamedFillProperties.cxx114
-rw-r--r--chart2/source/tools/NamedLineProperties.cxx99
-rw-r--r--chart2/source/tools/NamedProperties.cxx59
-rw-r--r--chart2/source/tools/OPropertySet.cxx530
-rw-r--r--chart2/source/tools/ObjectIdentifier.cxx1491
-rw-r--r--chart2/source/tools/PotentialRegressionCurveCalculator.cxx177
-rw-r--r--chart2/source/tools/PropertyHelper.cxx314
-rw-r--r--chart2/source/tools/RangeHighlighter.cxx406
-rw-r--r--chart2/source/tools/ReferenceSizeProvider.cxx378
-rw-r--r--chart2/source/tools/RegressionCalculationHelper.hxx131
-rw-r--r--chart2/source/tools/RegressionCurveCalculator.cxx168
-rw-r--r--chart2/source/tools/RegressionCurveHelper.cxx736
-rw-r--r--chart2/source/tools/RegressionCurveModel.cxx441
-rw-r--r--chart2/source/tools/RegressionCurveModel.hxx259
-rw-r--r--chart2/source/tools/RegressionEquation.cxx362
-rw-r--r--chart2/source/tools/RegressionEquation.hxx143
-rw-r--r--chart2/source/tools/RelativePositionHelper.cxx399
-rw-r--r--chart2/source/tools/RelativeSizeHelper.cxx100
-rw-r--r--chart2/source/tools/ResId.cxx47
-rw-r--r--chart2/source/tools/RessourceManager.cxx49
-rw-r--r--chart2/source/tools/Scaling.cxx271
-rw-r--r--chart2/source/tools/SceneProperties.cxx382
-rw-r--r--chart2/source/tools/StatisticsHelper.cxx403
-rw-r--r--chart2/source/tools/ThreeDHelper.cxx1527
-rw-r--r--chart2/source/tools/TitleHelper.cxx378
-rw-r--r--chart2/source/tools/TrueGuard.cxx47
-rw-r--r--chart2/source/tools/UncachedDataSequence.cxx379
-rw-r--r--chart2/source/tools/UserDefinedProperties.cxx73
-rw-r--r--chart2/source/tools/WeakListenerAdapter.cxx76
-rw-r--r--chart2/source/tools/WrappedDefaultProperty.cxx92
-rw-r--r--chart2/source/tools/WrappedDirectStateProperty.cxx59
-rw-r--r--chart2/source/tools/WrappedIgnoreProperty.cxx148
-rw-r--r--chart2/source/tools/WrappedProperty.cxx150
-rw-r--r--chart2/source/tools/WrappedPropertySet.cxx495
-rw-r--r--chart2/source/tools/XMLRangeHelper.cxx418
-rw-r--r--chart2/source/tools/_serviceregistration_tools.cxx193
-rw-r--r--chart2/source/tools/charttools.component92
-rw-r--r--chart2/source/tools/exports.flt3
-rw-r--r--chart2/source/tools/makefile.mk197
-rw-r--r--chart2/source/view/axes/MinimumAndMaximumSupplier.cxx201
-rw-r--r--chart2/source/view/axes/ScaleAutomatism.cxx760
-rw-r--r--chart2/source/view/axes/TickmarkHelper.cxx937
-rw-r--r--chart2/source/view/axes/TickmarkHelper.hxx276
-rw-r--r--chart2/source/view/axes/TickmarkProperties.hxx53
-rw-r--r--chart2/source/view/axes/VAxisBase.cxx253
-rw-r--r--chart2/source/view/axes/VAxisBase.hxx107
-rw-r--r--chart2/source/view/axes/VAxisOrGridBase.cxx98
-rw-r--r--chart2/source/view/axes/VAxisOrGridBase.hxx83
-rw-r--r--chart2/source/view/axes/VAxisProperties.cxx486
-rw-r--r--chart2/source/view/axes/VAxisProperties.hxx168
-rw-r--r--chart2/source/view/axes/VCartesianAxis.cxx1600
-rw-r--r--chart2/source/view/axes/VCartesianAxis.hxx146
-rw-r--r--chart2/source/view/axes/VCartesianCoordinateSystem.cxx250
-rw-r--r--chart2/source/view/axes/VCartesianCoordinateSystem.hxx64
-rw-r--r--chart2/source/view/axes/VCartesianGrid.cxx339
-rw-r--r--chart2/source/view/axes/VCartesianGrid.hxx71
-rw-r--r--chart2/source/view/axes/VCoordinateSystem.cxx598
-rw-r--r--chart2/source/view/axes/VPolarAngleAxis.cxx234
-rw-r--r--chart2/source/view/axes/VPolarAngleAxis.hxx66
-rw-r--r--chart2/source/view/axes/VPolarAxis.cxx83
-rw-r--r--chart2/source/view/axes/VPolarAxis.hxx71
-rw-r--r--chart2/source/view/axes/VPolarCoordinateSystem.cxx211
-rw-r--r--chart2/source/view/axes/VPolarCoordinateSystem.hxx68
-rw-r--r--chart2/source/view/axes/VPolarGrid.cxx273
-rw-r--r--chart2/source/view/axes/VPolarGrid.hxx96
-rw-r--r--chart2/source/view/axes/VPolarRadiusAxis.cxx186
-rw-r--r--chart2/source/view/axes/VPolarRadiusAxis.hxx98
-rw-r--r--chart2/source/view/axes/makefile.mk66
-rw-r--r--chart2/source/view/charttypes/AreaChart.cxx1005
-rw-r--r--chart2/source/view/charttypes/AreaChart.hxx134
-rwxr-xr-xchart2/source/view/charttypes/BarChart.cxx1019
-rw-r--r--chart2/source/view/charttypes/BarChart.hxx110
-rw-r--r--chart2/source/view/charttypes/BarPositionHelper.cxx138
-rw-r--r--chart2/source/view/charttypes/BarPositionHelper.hxx76
-rw-r--r--chart2/source/view/charttypes/BubbleChart.cxx417
-rw-r--r--chart2/source/view/charttypes/BubbleChart.hxx94
-rw-r--r--chart2/source/view/charttypes/CandleStickChart.cxx398
-rw-r--r--chart2/source/view/charttypes/CandleStickChart.hxx89
-rw-r--r--chart2/source/view/charttypes/CategoryPositionHelper.cxx100
-rw-r--r--chart2/source/view/charttypes/CategoryPositionHelper.hxx68
-rw-r--r--chart2/source/view/charttypes/PieChart.cxx897
-rw-r--r--chart2/source/view/charttypes/PieChart.hxx145
-rw-r--r--chart2/source/view/charttypes/Splines.cxx545
-rw-r--r--chart2/source/view/charttypes/Splines.hxx61
-rw-r--r--chart2/source/view/charttypes/VSeriesPlotter.cxx2110
-rw-r--r--chart2/source/view/charttypes/makefile.mk55
-rw-r--r--chart2/source/view/chartview.component34
-rw-r--r--chart2/source/view/diagram/VDiagram.cxx811
-rw-r--r--chart2/source/view/diagram/makefile.mk48
-rw-r--r--chart2/source/view/exports.flt4
-rw-r--r--chart2/source/view/inc/Clipping.hxx70
-rw-r--r--chart2/source/view/inc/LabelAlignment.hxx41
-rw-r--r--chart2/source/view/inc/LabelPositionHelper.hxx86
-rw-r--r--chart2/source/view/inc/LegendEntryProvider.hxx63
-rw-r--r--chart2/source/view/inc/Linear3DTransformation.hxx67
-rw-r--r--chart2/source/view/inc/MinimumAndMaximumSupplier.hxx100
-rw-r--r--chart2/source/view/inc/PlotterBase.hxx126
-rw-r--r--chart2/source/view/inc/PlottingPositionHelper.hxx406
-rw-r--r--chart2/source/view/inc/PolarLabelPositionHelper.hxx76
-rw-r--r--chart2/source/view/inc/PropertyMapper.hxx133
-rw-r--r--chart2/source/view/inc/ScaleAutomatism.hxx119
-rw-r--r--chart2/source/view/inc/ShapeFactory.hxx254
-rw-r--r--chart2/source/view/inc/Stripe.hxx89
-rw-r--r--chart2/source/view/inc/VCoordinateSystem.hxx212
-rw-r--r--chart2/source/view/inc/VDataSeries.hxx264
-rw-r--r--chart2/source/view/inc/VDiagram.hxx136
-rw-r--r--chart2/source/view/inc/VLegendSymbolFactory.hxx77
-rw-r--r--chart2/source/view/inc/VLineProperties.hxx61
-rw-r--r--chart2/source/view/inc/VPolarTransformation.hxx67
-rw-r--r--chart2/source/view/inc/VSeriesPlotter.hxx453
-rw-r--r--chart2/source/view/inc/ViewDefines.hxx47
-rw-r--r--chart2/source/view/main/ChartItemPool.cxx258
-rw-r--r--chart2/source/view/main/ChartItemPool.hxx58
-rw-r--r--chart2/source/view/main/ChartView.cxx3187
-rw-r--r--chart2/source/view/main/ChartView.hxx261
-rw-r--r--chart2/source/view/main/Clipping.cxx304
-rw-r--r--chart2/source/view/main/DataPointSymbolSupplier.cxx66
-rw-r--r--chart2/source/view/main/DrawModelWrapper.cxx411
-rw-r--r--chart2/source/view/main/LabelPositionHelper.cxx488
-rw-r--r--chart2/source/view/main/Linear3DTransformation.cxx107
-rw-r--r--chart2/source/view/main/NumberFormatterWrapper.cxx169
-rw-r--r--chart2/source/view/main/PlotterBase.cxx135
-rw-r--r--chart2/source/view/main/PlottingPositionHelper.cxx667
-rw-r--r--chart2/source/view/main/PolarLabelPositionHelper.cxx188
-rw-r--r--chart2/source/view/main/PropertyMapper.cxx539
-rw-r--r--chart2/source/view/main/ShapeFactory.cxx2111
-rw-r--r--chart2/source/view/main/Stripe.cxx360
-rw-r--r--chart2/source/view/main/VDataSeries.cxx986
-rw-r--r--chart2/source/view/main/VLegend.cxx834
-rw-r--r--chart2/source/view/main/VLegend.hxx111
-rw-r--r--chart2/source/view/main/VLegendSymbolFactory.cxx374
-rw-r--r--chart2/source/view/main/VLineProperties.cxx109
-rw-r--r--chart2/source/view/main/VPolarTransformation.cxx94
-rw-r--r--chart2/source/view/main/VTitle.cxx299
-rw-r--r--chart2/source/view/main/VTitle.hxx83
-rw-r--r--chart2/source/view/main/_serviceregistration_view.cxx64
-rw-r--r--chart2/source/view/main/makefile.mk68
-rw-r--r--chart2/source/view/makefile.mk128
-rw-r--r--chart2/uiconfig/accelerator/en-US/default.xml30
-rw-r--r--chart2/uiconfig/menubar/menubar.xml156
-rw-r--r--chart2/uiconfig/statusbar/statusbar.xml6
-rw-r--r--chart2/uiconfig/toolbar/arrowshapes.xml34
-rw-r--r--chart2/uiconfig/toolbar/basicshapes.xml29
-rw-r--r--chart2/uiconfig/toolbar/calloutshapes.xml11
-rw-r--r--chart2/uiconfig/toolbar/drawbar.xml20
-rw-r--r--chart2/uiconfig/toolbar/flowchartshapes.xml36
-rw-r--r--chart2/uiconfig/toolbar/standardbar.xml22
-rw-r--r--chart2/uiconfig/toolbar/starshapes.xml17
-rw-r--r--chart2/uiconfig/toolbar/symbolshapes.xml24
-rw-r--r--chart2/uiconfig/toolbar/toolbar.xml15
-rw-r--r--chart2/util/makefile.mk60
-rw-r--r--chart2/util/makefile.pmk46
-rw-r--r--chart2/util/target.pmk32
-rw-r--r--chart2/workbench/addin/exports.dxp3
-rw-r--r--chart2/workbench/addin/makefile.mk86
-rw-r--r--chart2/workbench/addin/sampleaddin.cxx716
-rw-r--r--chart2/workbench/addin/sampleaddin.def7
-rw-r--r--chart2/workbench/addin/sampleaddin.hxx161
-rw-r--r--cli_ure/inc/makefile.mk48
-rw-r--r--cli_ure/inc/pch/precompiled_cli_ure.cxx29
-rw-r--r--cli_ure/inc/pch/precompiled_cli_ure.hxx32
-rw-r--r--cli_ure/prj/build.lst13
-rw-r--r--cli_ure/prj/d.lst13
-rw-r--r--cli_ure/qa/climaker/ClimakerTestCase.java98
-rw-r--r--cli_ure/qa/climaker/climaker.cs1487
-rw-r--r--cli_ure/qa/climaker/makefile.mk135
-rw-r--r--cli_ure/qa/climaker/testobjects.cs588
-rw-r--r--cli_ure/qa/climaker/types.idl483
-rw-r--r--cli_ure/qa/versioning/readme.txt28
-rw-r--r--cli_ure/readme.txt272
-rw-r--r--cli_ure/source/basetypes/assembly.cs2
-rw-r--r--cli_ure/source/basetypes/cli_basetypes_config11
-rw-r--r--cli_ure/source/basetypes/makefile.mk105
-rw-r--r--cli_ure/source/basetypes/uno/Any.cs211
-rw-r--r--cli_ure/source/basetypes/uno/BoundAttribute.cs46
-rw-r--r--cli_ure/source/basetypes/uno/ExceptionAttribute.cs70
-rw-r--r--cli_ure/source/basetypes/uno/OnewayAttribute.cs43
-rw-r--r--cli_ure/source/basetypes/uno/ParameterizedTypeAttribute.cs68
-rw-r--r--cli_ure/source/basetypes/uno/PolymorphicType.cs443
-rw-r--r--cli_ure/source/basetypes/uno/TypeArgumentsAttribute.cs84
-rw-r--r--cli_ure/source/basetypes/uno/TypeParametersAttribute.cs65
-rw-r--r--cli_ure/source/climaker/climaker.exe.config10
-rw-r--r--cli_ure/source/climaker/climaker_app.cxx749
-rw-r--r--cli_ure/source/climaker/climaker_emit.cxx2323
-rw-r--r--cli_ure/source/climaker/climaker_share.h268
-rw-r--r--cli_ure/source/climaker/makefile.mk137
-rw-r--r--cli_ure/source/cliuno.snkbin0 -> 596 bytes-rw-r--r--cli_ure/source/makefile.mk48
-rw-r--r--cli_ure/source/native/assembly.cxx36
-rw-r--r--cli_ure/source/native/cli_cppuhelper_config11
-rw-r--r--cli_ure/source/native/makefile.mk184
-rw-r--r--cli_ure/source/native/msvc.map6
-rw-r--r--cli_ure/source/native/native_bootstrap.cxx433
-rw-r--r--cli_ure/source/native/native_share.h120
-rw-r--r--cli_ure/source/native/path.cxx218
-rw-r--r--cli_ure/source/scripts/increment_version.pl281
-rw-r--r--cli_ure/source/scripts/subst_template.pl133
-rw-r--r--cli_ure/source/uno_bridge/README.txt20
-rw-r--r--cli_ure/source/uno_bridge/bridge_exports.map8
-rw-r--r--cli_ure/source/uno_bridge/cli_base.h180
-rw-r--r--cli_ure/source/uno_bridge/cli_bridge.cxx369
-rw-r--r--cli_ure/source/uno_bridge/cli_bridge.h120
-rw-r--r--cli_ure/source/uno_bridge/cli_data.cxx2011
-rw-r--r--cli_ure/source/uno_bridge/cli_environment.cxx173
-rw-r--r--cli_ure/source/uno_bridge/cli_environment.h114
-rw-r--r--cli_ure/source/uno_bridge/cli_proxy.cxx1178
-rw-r--r--cli_ure/source/uno_bridge/cli_proxy.h299
-rw-r--r--cli_ure/source/uno_bridge/cli_uno.cxx290
-rw-r--r--cli_ure/source/uno_bridge/makefile.mk95
-rw-r--r--cli_ure/source/ure/assembly.cs2
-rw-r--r--cli_ure/source/ure/cli_ure_config11
-rw-r--r--cli_ure/source/ure/makefile.mk102
-rw-r--r--cli_ure/source/ure/uno/util/DisposeGuard.cs59
-rw-r--r--cli_ure/source/ure/uno/util/WeakAdapter.cs120
-rw-r--r--cli_ure/source/ure/uno/util/WeakBase.cs178
-rw-r--r--cli_ure/source/ure/uno/util/WeakComponentBase.cs194
-rw-r--r--cli_ure/unotypes/cli_uretypes_config11
-rw-r--r--cli_ure/unotypes/makefile.mk79
-rw-r--r--cli_ure/util/makefile.pmk35
-rw-r--r--cli_ure/util/target.pmk44
-rw-r--r--cli_ure/version/incversions.txt39
-rw-r--r--cli_ure/version/makefile.mk60
-rw-r--r--cli_ure/version/version.txt47
-rw-r--r--cli_ure/workbench/dynload/dynload.cs35
-rw-r--r--cli_ure/workbench/dynload/makefile.mk68
-rw-r--r--cli_ure/workbench/dynload/readme.txt2
-rwxr-xr-xcodemaker/codemaker.pmk53
-rw-r--r--codemaker/inc/codemaker/codemaker.hxx56
-rw-r--r--codemaker/inc/codemaker/commoncpp.hxx57
-rw-r--r--codemaker/inc/codemaker/commonjava.hxx44
-rw-r--r--codemaker/inc/codemaker/dependencies.hxx149
-rw-r--r--codemaker/inc/codemaker/exceptiontree.hxx124
-rw-r--r--codemaker/inc/codemaker/generatedtypeset.hxx79
-rw-r--r--codemaker/inc/codemaker/global.hxx151
-rw-r--r--codemaker/inc/codemaker/options.hxx98
-rw-r--r--codemaker/inc/codemaker/typemanager.hxx182
-rw-r--r--codemaker/inc/codemaker/unotype.hxx110
-rw-r--r--codemaker/inc/makefile.mk47
-rw-r--r--codemaker/inc/pch/precompiled_codemaker.cxx29
-rw-r--r--codemaker/inc/pch/precompiled_codemaker.hxx32
-rw-r--r--codemaker/prj/build.lst11
-rw-r--r--codemaker/prj/d.lst14
-rw-r--r--codemaker/source/bonobowrappermaker/corbamaker.cxx239
-rw-r--r--codemaker/source/bonobowrappermaker/corbaoptions.cxx256
-rw-r--r--codemaker/source/bonobowrappermaker/corbaoptions.hxx51
-rw-r--r--codemaker/source/bonobowrappermaker/corbatype.cxx2782
-rw-r--r--codemaker/source/bonobowrappermaker/corbatype.hxx310
-rw-r--r--codemaker/source/bonobowrappermaker/makefile.mk62
-rw-r--r--codemaker/source/codemaker/codemaker.cxx188
-rw-r--r--codemaker/source/codemaker/dependencies.cxx281
-rw-r--r--codemaker/source/codemaker/exceptiontree.cxx106
-rw-r--r--codemaker/source/codemaker/global.cxx449
-rw-r--r--codemaker/source/codemaker/makefile.mk51
-rw-r--r--codemaker/source/codemaker/options.cxx99
-rw-r--r--codemaker/source/codemaker/typemanager.cxx403
-rw-r--r--codemaker/source/codemaker/unotype.cxx103
-rw-r--r--codemaker/source/commoncpp/commoncpp.cxx355
-rw-r--r--codemaker/source/commoncpp/makefile.mk42
-rw-r--r--codemaker/source/commonjava/commonjava.cxx167
-rw-r--r--codemaker/source/commonjava/makefile.mk42
-rw-r--r--codemaker/source/cppumaker/cppumaker.cxx244
-rw-r--r--codemaker/source/cppumaker/cppuoptions.cxx355
-rw-r--r--codemaker/source/cppumaker/cppuoptions.hxx51
-rw-r--r--codemaker/source/cppumaker/cpputype.cxx4504
-rw-r--r--codemaker/source/cppumaker/cpputype.hxx406
-rw-r--r--codemaker/source/cppumaker/dumputils.cxx91
-rw-r--r--codemaker/source/cppumaker/dumputils.hxx46
-rw-r--r--codemaker/source/cppumaker/includes.cxx280
-rw-r--r--codemaker/source/cppumaker/includes.hxx121
-rw-r--r--codemaker/source/cppumaker/makefile.mk65
-rw-r--r--codemaker/source/cunomaker/cunomaker.cxx186
-rw-r--r--codemaker/source/cunomaker/cunooptions.cxx330
-rw-r--r--codemaker/source/cunomaker/cunooptions.hxx51
-rw-r--r--codemaker/source/cunomaker/cunotype.cxx3533
-rw-r--r--codemaker/source/cunomaker/cunotype.hxx309
-rw-r--r--codemaker/source/cunomaker/makefile.mk61
-rw-r--r--codemaker/source/idlmaker/idlmaker.cxx186
-rw-r--r--codemaker/source/idlmaker/idloptions.cxx251
-rw-r--r--codemaker/source/idlmaker/idloptions.hxx51
-rw-r--r--codemaker/source/idlmaker/idltype.cxx1752
-rw-r--r--codemaker/source/idlmaker/idltype.hxx249
-rw-r--r--codemaker/source/idlmaker/makefile.mk62
-rw-r--r--codemaker/source/javamaker/classfile.cxx903
-rw-r--r--codemaker/source/javamaker/classfile.hxx274
-rw-r--r--codemaker/source/javamaker/javamaker.cxx247
-rw-r--r--codemaker/source/javamaker/javaoptions.cxx299
-rw-r--r--codemaker/source/javamaker/javaoptions.hxx51
-rw-r--r--codemaker/source/javamaker/javatype.cxx3374
-rw-r--r--codemaker/source/javamaker/javatype.hxx45
-rw-r--r--codemaker/source/javamaker/makefile.mk58
-rw-r--r--codemaker/test/cppumaker/makefile.mk73
-rw-r--r--codemaker/test/cppumaker/test_codemaker_cppumaker.cxx567
-rw-r--r--codemaker/test/cppumaker/types.idl717
-rw-r--r--codemaker/test/cppumaker/version.map34
-rw-r--r--codemaker/test/javamaker/Test.java559
-rw-r--r--codemaker/test/javamaker/java15/Test.java100
-rw-r--r--codemaker/test/javamaker/java15/makefile.mk41
-rw-r--r--codemaker/test/javamaker/java15/types.idl50
-rw-r--r--codemaker/test/javamaker/makefile.mk41
-rw-r--r--codemaker/test/javamaker/types.idl433
-rw-r--r--comphelper/inc/comphelper/ChainablePropertySet.hxx156
-rw-r--r--comphelper/inc/comphelper/ChainablePropertySetInfo.hxx77
-rw-r--r--comphelper/inc/comphelper/IdPropArrayHelper.hxx123
-rw-r--r--comphelper/inc/comphelper/InlineContainer.hxx149
-rw-r--r--comphelper/inc/comphelper/MasterPropertySet.hxx155
-rw-r--r--comphelper/inc/comphelper/MasterPropertySetInfo.hxx69
-rw-r--r--comphelper/inc/comphelper/PropertyInfoHash.hxx71
-rw-r--r--comphelper/inc/comphelper/SelectionMultiplex.hxx117
-rw-r--r--comphelper/inc/comphelper/SettingsHelper.hxx123
-rw-r--r--comphelper/inc/comphelper/TypeGeneration.hxx124
-rw-r--r--comphelper/inc/comphelper/accessiblecomponenthelper.hxx144
-rw-r--r--comphelper/inc/comphelper/accessiblecontexthelper.hxx376
-rw-r--r--comphelper/inc/comphelper/accessibleeventbuffer.hxx133
-rw-r--r--comphelper/inc/comphelper/accessibleeventnotifier.hxx173
-rw-r--r--comphelper/inc/comphelper/accessiblekeybindinghelper.hxx83
-rw-r--r--comphelper/inc/comphelper/accessibleselectionhelper.hxx134
-rw-r--r--comphelper/inc/comphelper/accessibletexthelper.hxx185
-rw-r--r--comphelper/inc/comphelper/accessiblewrapper.hxx411
-rw-r--r--comphelper/inc/comphelper/accimplaccess.hxx166
-rw-r--r--comphelper/inc/comphelper/anytostring.hxx50
-rw-r--r--comphelper/inc/comphelper/asyncnotification.hxx198
-rw-r--r--comphelper/inc/comphelper/attributelist.hxx77
-rw-r--r--comphelper/inc/comphelper/basicio.hxx106
-rw-r--r--comphelper/inc/comphelper/broadcasthelper.hxx69
-rw-r--r--comphelper/inc/comphelper/classids.hxx574
-rw-r--r--comphelper/inc/comphelper/comphelperdllapi.h14
-rw-r--r--comphelper/inc/comphelper/componentbase.hxx161
-rw-r--r--comphelper/inc/comphelper/componentcontext.hxx252
-rw-r--r--comphelper/inc/comphelper/componentfactory.hxx118
-rw-r--r--comphelper/inc/comphelper/componentmodule.hxx412
-rw-r--r--comphelper/inc/comphelper/composedprops.hxx127
-rw-r--r--comphelper/inc/comphelper/configurationhelper.hxx261
-rw-r--r--comphelper/inc/comphelper/container.hxx85
-rw-r--r--comphelper/inc/comphelper/containermultiplexer.hxx115
-rw-r--r--comphelper/inc/comphelper/docpasswordhelper.hxx320
-rwxr-xr-xcomphelper/inc/comphelper/docpasswordrequest.hxx131
-rw-r--r--comphelper/inc/comphelper/documentconstants.hxx113
-rw-r--r--comphelper/inc/comphelper/documentinfo.hxx59
-rw-r--r--comphelper/inc/comphelper/embeddedobjectcontainer.hxx188
-rw-r--r--comphelper/inc/comphelper/enumhelper.hxx150
-rw-r--r--comphelper/inc/comphelper/eventattachermgr.hxx68
-rw-r--r--comphelper/inc/comphelper/evtlistenerhlp.hxx56
-rwxr-xr-xcomphelper/inc/comphelper/evtmethodhelper.hxx41
-rw-r--r--comphelper/inc/comphelper/extract.hxx164
-rw-r--r--comphelper/inc/comphelper/fileformat.h41
-rw-r--r--comphelper/inc/comphelper/genericpropertyset.hxx41
-rw-r--r--comphelper/inc/comphelper/guarding.hxx63
-rw-r--r--comphelper/inc/comphelper/ihwrapnofilter.hxx102
-rw-r--r--comphelper/inc/comphelper/implbase_var.hxx403
-rw-r--r--comphelper/inc/comphelper/implementationreference.hxx273
-rw-r--r--comphelper/inc/comphelper/interaction.hxx170
-rw-r--r--comphelper/inc/comphelper/legacysingletonfactory.hxx72
-rw-r--r--comphelper/inc/comphelper/listenernotification.hxx308
-rw-r--r--comphelper/inc/comphelper/locale.hxx443
-rw-r--r--comphelper/inc/comphelper/logging.hxx794
-rw-r--r--comphelper/inc/comphelper/make_shared_from_uno.hxx75
-rw-r--r--comphelper/inc/comphelper/makesequence.hxx87
-rw-r--r--comphelper/inc/comphelper/mediadescriptor.hxx340
-rw-r--r--comphelper/inc/comphelper/mimeconfighelper.hxx133
-rw-r--r--comphelper/inc/comphelper/namecontainer.hxx42
-rw-r--r--comphelper/inc/comphelper/namedvaluecollection.hxx355
-rw-r--r--comphelper/inc/comphelper/numberedcollection.hxx198
-rw-r--r--comphelper/inc/comphelper/numbers.hxx74
-rw-r--r--comphelper/inc/comphelper/officeresourcebundle.hxx116
-rw-r--r--comphelper/inc/comphelper/ofopxmlhelper.hxx139
-rw-r--r--comphelper/inc/comphelper/optional.hxx90
-rw-r--r--comphelper/inc/comphelper/optionalvalue.hxx187
-rw-r--r--comphelper/inc/comphelper/oslfile2streamwrap.hxx108
-rw-r--r--comphelper/inc/comphelper/otransactedfilestream.hxx136
-rw-r--r--comphelper/inc/comphelper/processfactory.hxx98
-rw-r--r--comphelper/inc/comphelper/propagg.hxx329
-rw-r--r--comphelper/inc/comphelper/proparrhlp.hxx182
-rw-r--r--comphelper/inc/comphelper/property.hxx238
-rw-r--r--comphelper/inc/comphelper/propertybag.hxx237
-rw-r--r--comphelper/inc/comphelper/propertycontainer.hxx97
-rw-r--r--comphelper/inc/comphelper/propertycontainerhelper.hxx218
-rw-r--r--comphelper/inc/comphelper/propertysethelper.hxx102
-rw-r--r--comphelper/inc/comphelper/propertysetinfo.hxx103
-rw-r--r--comphelper/inc/comphelper/propertystatecontainer.hxx120
-rw-r--r--comphelper/inc/comphelper/propmultiplex.hxx116
-rw-r--r--comphelper/inc/comphelper/propstate.hxx112
-rw-r--r--comphelper/inc/comphelper/proxyaggregation.hxx229
-rw-r--r--comphelper/inc/comphelper/querydeep.hxx484
-rw-r--r--comphelper/inc/comphelper/regpathhelper.hxx71
-rw-r--r--comphelper/inc/comphelper/scopeguard.hxx72
-rw-r--r--comphelper/inc/comphelper/seekableinput.hxx84
-rw-r--r--comphelper/inc/comphelper/seqstream.hxx146
-rw-r--r--comphelper/inc/comphelper/sequence.hxx389
-rw-r--r--comphelper/inc/comphelper/sequenceashashmap.hxx384
-rw-r--r--comphelper/inc/comphelper/sequenceasvector.hxx247
-rw-r--r--comphelper/inc/comphelper/servicedecl.hxx432
-rw-r--r--comphelper/inc/comphelper/servicehelper.hxx105
-rw-r--r--comphelper/inc/comphelper/serviceinfohelper.hxx63
-rw-r--r--comphelper/inc/comphelper/sharedmutex.hxx91
-rw-r--r--comphelper/inc/comphelper/stillreadwriteinteraction.hxx69
-rw-r--r--comphelper/inc/comphelper/stl_types.hxx282
-rw-r--r--comphelper/inc/comphelper/stlunosequence.hxx86
-rw-r--r--comphelper/inc/comphelper/storagehelper.hxx171
-rw-r--r--comphelper/inc/comphelper/streamsection.hxx88
-rw-r--r--comphelper/inc/comphelper/string.hxx135
-rw-r--r--comphelper/inc/comphelper/synchronousdispatch.hxx74
-rw-r--r--comphelper/inc/comphelper/types.hxx180
-rw-r--r--comphelper/inc/comphelper/uieventslogger.hxx57
-rw-r--r--comphelper/inc/comphelper/uno3.hxx302
-rw-r--r--comphelper/inc/comphelper/unwrapargs.hxx150
-rw-r--r--comphelper/inc/comphelper/weak.hxx63
-rw-r--r--comphelper/inc/comphelper/weakbag.hxx92
-rw-r--r--comphelper/inc/comphelper/weakeventlistener.hxx189
-rw-r--r--comphelper/inc/makefile.mk48
-rw-r--r--comphelper/inc/pch/precompiled_comphelper.cxx29
-rw-r--r--comphelper/inc/pch/precompiled_comphelper.hxx32
-rw-r--r--comphelper/prj/build.lst15
-rw-r--r--comphelper/prj/d.lst15
-rw-r--r--comphelper/qa/complex/comphelper/Map.java553
-rw-r--r--comphelper/qa/complex/comphelper/SequenceOutputStreamUnitTest.java188
-rw-r--r--comphelper/qa/complex/comphelper/makefile.mk54
-rw-r--r--comphelper/qa/complex/comphelper_all.sce2
-rw-r--r--comphelper/qa/makefile.mk56
-rw-r--r--comphelper/qa/test_string.cxx82
-rw-r--r--comphelper/qa/test_weakbag.cxx70
-rw-r--r--comphelper/qa/version.map34
-rw-r--r--comphelper/source/compare/AnyCompareFactory.cxx191
-rw-r--r--comphelper/source/compare/makefile.mk47
-rw-r--r--comphelper/source/container/IndexedPropertyValuesContainer.cxx270
-rw-r--r--comphelper/source/container/NamedPropertyValuesContainer.cxx239
-rw-r--r--comphelper/source/container/container.cxx153
-rw-r--r--comphelper/source/container/containermultiplexer.cxx203
-rw-r--r--comphelper/source/container/embeddedobjectcontainer.cxx1663
-rw-r--r--comphelper/source/container/enumerablemap.cxx1000
-rw-r--r--comphelper/source/container/enumhelper.cxx297
-rw-r--r--comphelper/source/container/makefile.mk55
-rw-r--r--comphelper/source/container/namecontainer.cxx211
-rw-r--r--comphelper/source/eventattachermgr/eventattachermgr.cxx1036
-rw-r--r--comphelper/source/eventattachermgr/makefile.mk50
-rw-r--r--comphelper/source/inc/comphelper_module.hxx43
-rw-r--r--comphelper/source/misc/SelectionMultiplex.cxx174
-rw-r--r--comphelper/source/misc/accessiblecomponenthelper.cxx221
-rw-r--r--comphelper/source/misc/accessiblecontexthelper.cxx356
-rw-r--r--comphelper/source/misc/accessibleeventbuffer.cxx110
-rw-r--r--comphelper/source/misc/accessibleeventnotifier.cxx259
-rw-r--r--comphelper/source/misc/accessiblekeybindinghelper.cxx114
-rw-r--r--comphelper/source/misc/accessibleselectionhelper.cxx192
-rw-r--r--comphelper/source/misc/accessibletexthelper.cxx915
-rw-r--r--comphelper/source/misc/accessiblewrapper.cxx683
-rw-r--r--comphelper/source/misc/accimplaccess.cxx189
-rw-r--r--comphelper/source/misc/anytostring.cxx335
-rw-r--r--comphelper/source/misc/asyncnotification.cxx281
-rw-r--r--comphelper/source/misc/comphelper_module.cxx41
-rw-r--r--comphelper/source/misc/comphelper_services.cxx79
-rw-r--r--comphelper/source/misc/componentbase.cxx74
-rw-r--r--comphelper/source/misc/componentcontext.cxx151
-rw-r--r--comphelper/source/misc/componentmodule.cxx179
-rw-r--r--comphelper/source/misc/configurationhelper.cxx207
-rw-r--r--comphelper/source/misc/docpasswordhelper.cxx380
-rwxr-xr-xcomphelper/source/misc/docpasswordrequest.cxx259
-rw-r--r--comphelper/source/misc/documentinfo.cxx197
-rw-r--r--comphelper/source/misc/documentiologring.cxx179
-rw-r--r--comphelper/source/misc/documentiologring.hxx88
-rw-r--r--comphelper/source/misc/evtlistenerhlp.cxx52
-rwxr-xr-xcomphelper/source/misc/evtmethodhelper.cxx77
-rw-r--r--comphelper/source/misc/ihwrapnofilter.cxx117
-rw-r--r--comphelper/source/misc/instancelocker.cxx512
-rw-r--r--comphelper/source/misc/instancelocker.hxx133
-rw-r--r--comphelper/source/misc/interaction.cxx99
-rw-r--r--comphelper/source/misc/legacysingletonfactory.cxx197
-rw-r--r--comphelper/source/misc/listenernotification.cxx127
-rw-r--r--comphelper/source/misc/locale.cxx683
-rw-r--r--comphelper/source/misc/logging.cxx405
-rw-r--r--comphelper/source/misc/makefile.mk101
-rw-r--r--comphelper/source/misc/mediadescriptor.cxx868
-rw-r--r--comphelper/source/misc/mimeconfighelper.cxx805
-rw-r--r--comphelper/source/misc/namedvaluecollection.cxx338
-rw-r--r--comphelper/source/misc/numberedcollection.cxx276
-rw-r--r--comphelper/source/misc/numbers.cxx150
-rw-r--r--comphelper/source/misc/officeresourcebundle.cxx240
-rw-r--r--comphelper/source/misc/officerestartmanager.cxx210
-rw-r--r--comphelper/source/misc/officerestartmanager.hxx91
-rw-r--r--comphelper/source/misc/proxyaggregation.cxx276
-rw-r--r--comphelper/source/misc/querydeep.cxx76
-rw-r--r--comphelper/source/misc/regpathhelper.cxx235
-rw-r--r--comphelper/source/misc/scopeguard.cxx71
-rw-r--r--comphelper/source/misc/sequence.cxx103
-rw-r--r--comphelper/source/misc/sequenceashashmap.cxx400
-rw-r--r--comphelper/source/misc/servicedecl.cxx165
-rw-r--r--comphelper/source/misc/serviceinfohelper.cxx112
-rw-r--r--comphelper/source/misc/sharedmutex.cxx62
-rw-r--r--comphelper/source/misc/stillreadwriteinteraction.cxx144
-rw-r--r--comphelper/source/misc/storagehelper.cxx487
-rw-r--r--comphelper/source/misc/string.cxx125
-rw-r--r--comphelper/source/misc/synchronousdispatch.cxx102
-rw-r--r--comphelper/source/misc/types.cxx477
-rw-r--r--comphelper/source/misc/uieventslogger.cxx693
-rw-r--r--comphelper/source/misc/weak.cxx76
-rw-r--r--comphelper/source/misc/weakeventlistener.cxx93
-rw-r--r--comphelper/source/officeinstdir/makefile.mk50
-rw-r--r--comphelper/source/officeinstdir/officeinstallationdirectories.cxx350
-rw-r--r--comphelper/source/officeinstdir/officeinstallationdirectories.hxx107
-rw-r--r--comphelper/source/processfactory/componentfactory.cxx86
-rw-r--r--comphelper/source/processfactory/makefile.mk52
-rw-r--r--comphelper/source/processfactory/processfactory.cxx127
-rw-r--r--comphelper/source/property/ChainablePropertySet.cxx321
-rw-r--r--comphelper/source/property/ChainablePropertySetInfo.cxx142
-rw-r--r--comphelper/source/property/MasterPropertySet.cxx505
-rw-r--r--comphelper/source/property/MasterPropertySetInfo.cxx170
-rw-r--r--comphelper/source/property/TypeGeneration.cxx237
-rw-r--r--comphelper/source/property/composedprops.cxx357
-rw-r--r--comphelper/source/property/genericpropertyset.cxx301
-rw-r--r--comphelper/source/property/makefile.mk65
-rw-r--r--comphelper/source/property/opropertybag.cxx585
-rw-r--r--comphelper/source/property/opropertybag.hxx242
-rw-r--r--comphelper/source/property/propagg.cxx1027
-rw-r--r--comphelper/source/property/property.cxx245
-rw-r--r--comphelper/source/property/propertybag.cxx221
-rw-r--r--comphelper/source/property/propertycontainer.cxx105
-rw-r--r--comphelper/source/property/propertycontainerhelper.cxx552
-rw-r--r--comphelper/source/property/propertysethelper.cxx328
-rw-r--r--comphelper/source/property/propertysetinfo.cxx214
-rw-r--r--comphelper/source/property/propertystatecontainer.cxx339
-rw-r--r--comphelper/source/property/propmultiplex.cxx182
-rw-r--r--comphelper/source/property/propstate.cxx261
-rw-r--r--comphelper/source/streaming/basicio.cxx174
-rw-r--r--comphelper/source/streaming/makefile.mk54
-rw-r--r--comphelper/source/streaming/memorystream.cxx247
-rw-r--r--comphelper/source/streaming/oslfile2streamwrap.cxx198
-rw-r--r--comphelper/source/streaming/otransactedfilestream.cxx824
-rw-r--r--comphelper/source/streaming/seekableinput.cxx267
-rw-r--r--comphelper/source/streaming/seqinputstreamserv.cxx251
-rw-r--r--comphelper/source/streaming/seqoutputstreamserv.cxx172
-rw-r--r--comphelper/source/streaming/seqstream.cxx243
-rw-r--r--comphelper/source/streaming/streamsection.cxx122
-rw-r--r--comphelper/source/xml/attributelist.cxx179
-rw-r--r--comphelper/source/xml/makefile.mk48
-rw-r--r--comphelper/source/xml/ofopxmlhelper.cxx467
-rw-r--r--comphelper/test/uno_iterators/makefile.mk48
-rw-r--r--comphelper/test/uno_iterators/uno_iterators.cxx218
-rw-r--r--comphelper/util/comphelp4.component70
-rw-r--r--comphelper/util/exports.dxp2
-rw-r--r--comphelper/util/makefile.mk78
-rw-r--r--comphelper/util/makefile.pmk35
-rw-r--r--comphelper/version.mk46
-rwxr-xr-xconfig.sub1714
-rw-r--r--configmgr/inc/makefile.mk38
-rw-r--r--configmgr/inc/pch/precompiled_configmgr.cxx28
-rw-r--r--configmgr/inc/pch/precompiled_configmgr.hxx32
-rw-r--r--configmgr/prj/build.lst4
-rw-r--r--configmgr/prj/d.lst4
-rw-r--r--configmgr/qa/unit/data.xcd5190
-rw-r--r--configmgr/qa/unit/makefile.mk93
-rw-r--r--configmgr/qa/unit/no_localization0
-rw-r--r--configmgr/qa/unit/test.cxx678
-rw-r--r--configmgr/qa/unit/urebootstrap.ini30
-rw-r--r--configmgr/qa/unit/version.map34
-rw-r--r--configmgr/qa/unoapi/Test.java50
-rw-r--r--configmgr/qa/unoapi/makefile.mk50
-rw-r--r--configmgr/qa/unoapi/module.sce29
-rw-r--r--configmgr/source/README155
-rw-r--r--configmgr/source/access.cxx2207
-rw-r--r--configmgr/source/access.hxx582
-rw-r--r--configmgr/source/additions.hxx43
-rw-r--r--configmgr/source/broadcaster.cxx258
-rw-r--r--configmgr/source/broadcaster.hxx181
-rw-r--r--configmgr/source/childaccess.cxx391
-rw-r--r--configmgr/source/childaccess.hxx157
-rw-r--r--configmgr/source/components.cxx867
-rw-r--r--configmgr/source/components.hxx180
-rw-r--r--configmgr/source/configmgr.component45
-rw-r--r--configmgr/source/configurationprovider.cxx535
-rw-r--r--configmgr/source/configurationprovider.hxx67
-rw-r--r--configmgr/source/configurationregistry.cxx950
-rw-r--r--configmgr/source/configurationregistry.hxx57
-rw-r--r--configmgr/source/data.cxx372
-rw-r--r--configmgr/source/data.hxx106
-rw-r--r--configmgr/source/defaultprovider.cxx131
-rw-r--r--configmgr/source/defaultprovider.hxx59
-rw-r--r--configmgr/source/groupnode.cxx90
-rw-r--r--configmgr/source/groupnode.hxx75
-rw-r--r--configmgr/source/localizedpropertynode.cxx87
-rw-r--r--configmgr/source/localizedpropertynode.hxx76
-rw-r--r--configmgr/source/localizedvaluenode.cxx78
-rw-r--r--configmgr/source/localizedvaluenode.hxx66
-rw-r--r--configmgr/source/lock.cxx39
-rw-r--r--configmgr/source/lock.hxx41
-rw-r--r--configmgr/source/makefile.mk91
-rw-r--r--configmgr/source/modifications.cxx87
-rw-r--r--configmgr/source/modifications.hxx67
-rw-r--r--configmgr/source/node.cxx108
-rw-r--r--configmgr/source/node.hxx86
-rw-r--r--configmgr/source/nodemap.cxx50
-rw-r--r--configmgr/source/nodemap.hxx49
-rw-r--r--configmgr/source/parsemanager.cxx100
-rw-r--r--configmgr/source/parsemanager.hxx70
-rw-r--r--configmgr/source/parser.hxx62
-rw-r--r--configmgr/source/partial.cxx137
-rw-r--r--configmgr/source/partial.hxx71
-rw-r--r--configmgr/source/path.hxx43
-rw-r--r--configmgr/source/propertynode.cxx110
-rw-r--r--configmgr/source/propertynode.hxx83
-rw-r--r--configmgr/source/rootaccess.cxx327
-rw-r--r--configmgr/source/rootaccess.hxx157
-rw-r--r--configmgr/source/services.cxx87
-rw-r--r--configmgr/source/setnode.cxx129
-rw-r--r--configmgr/source/setnode.hxx84
-rw-r--r--configmgr/source/type.cxx187
-rw-r--r--configmgr/source/type.hxx56
-rw-r--r--configmgr/source/update.cxx227
-rw-r--r--configmgr/source/update.hxx59
-rw-r--r--configmgr/source/valueparser.cxx478
-rw-r--r--configmgr/source/valueparser.hxx92
-rw-r--r--configmgr/source/writemodfile.cxx602
-rw-r--r--configmgr/source/writemodfile.hxx45
-rw-r--r--configmgr/source/xcdparser.cxx185
-rw-r--r--configmgr/source/xcdparser.hxx79
-rw-r--r--configmgr/source/xcsparser.cxx668
-rw-r--r--configmgr/source/xcsparser.hxx107
-rw-r--r--configmgr/source/xcuparser.cxx1128
-rw-r--r--configmgr/source/xcuparser.hxx157
-rw-r--r--configmgr/source/xmldata.cxx200
-rw-r--r--configmgr/source/xmldata.hxx58
-rwxr-xr-xconfigure.cmd7
-rw-r--r--configure.in7081
-rw-r--r--connectivity/com/sun/star/sdbcx/comp/hsqldb/FileSystemRuntimeException.java73
-rw-r--r--connectivity/com/sun/star/sdbcx/comp/hsqldb/NativeInputStreamHelper.java74
-rw-r--r--connectivity/com/sun/star/sdbcx/comp/hsqldb/NativeLibraries.java80
-rw-r--r--connectivity/com/sun/star/sdbcx/comp/hsqldb/NativeOutputStreamHelper.java48
-rw-r--r--connectivity/com/sun/star/sdbcx/comp/hsqldb/NativeStorageAccess.java80
-rw-r--r--connectivity/com/sun/star/sdbcx/comp/hsqldb/StorageAccess.java171
-rw-r--r--connectivity/com/sun/star/sdbcx/comp/hsqldb/StorageFileAccess.java107
-rw-r--r--connectivity/com/sun/star/sdbcx/comp/hsqldb/StorageNativeInputStream.java53
-rw-r--r--connectivity/com/sun/star/sdbcx/comp/hsqldb/StorageNativeOutputStream.java143
-rw-r--r--connectivity/com/sun/star/sdbcx/comp/hsqldb/makefile.mk65
-rw-r--r--connectivity/dbtools.pmk29
-rw-r--r--connectivity/inc/connectivity/BlobHelper.hxx51
-rw-r--r--connectivity/inc/connectivity/CommonTools.hxx216
-rw-r--r--connectivity/inc/connectivity/ConnectionWrapper.hxx98
-rw-r--r--connectivity/inc/connectivity/DateConversion.hxx94
-rwxr-xr-xconnectivity/inc/connectivity/DriversConfig.hxx87
-rw-r--r--connectivity/inc/connectivity/FValue.hxx467
-rw-r--r--connectivity/inc/connectivity/IParseContext.hxx108
-rw-r--r--connectivity/inc/connectivity/PColumn.hxx148
-rw-r--r--connectivity/inc/connectivity/ParameterCont.hxx59
-rw-r--r--connectivity/inc/connectivity/SQLStatementHelper.hxx54
-rw-r--r--connectivity/inc/connectivity/StdTypeDefs.hxx48
-rw-r--r--connectivity/inc/connectivity/TColumnsHelper.hxx70
-rw-r--r--connectivity/inc/connectivity/TIndex.hxx56
-rw-r--r--connectivity/inc/connectivity/TIndexColumns.hxx50
-rw-r--r--connectivity/inc/connectivity/TIndexes.hxx57
-rw-r--r--connectivity/inc/connectivity/TKey.hxx54
-rw-r--r--connectivity/inc/connectivity/TKeyColumns.hxx50
-rw-r--r--connectivity/inc/connectivity/TKeys.hxx66
-rw-r--r--connectivity/inc/connectivity/TTableHelper.hxx173
-rw-r--r--connectivity/inc/connectivity/conncleanup.hxx97
-rw-r--r--connectivity/inc/connectivity/dbcharset.hxx168
-rw-r--r--connectivity/inc/connectivity/dbconversion.hxx224
-rw-r--r--connectivity/inc/connectivity/dbexception.hxx377
-rw-r--r--connectivity/inc/connectivity/dbmetadata.hxx200
-rw-r--r--connectivity/inc/connectivity/dbtools.hxx825
-rw-r--r--connectivity/inc/connectivity/dbtoolsdllapi.hxx40
-rw-r--r--connectivity/inc/connectivity/filtermanager.hxx131
-rw-r--r--connectivity/inc/connectivity/formattedcolumnvalue.hxx119
-rw-r--r--connectivity/inc/connectivity/parameters.hxx426
-rw-r--r--connectivity/inc/connectivity/paramwrapper.hxx208
-rw-r--r--connectivity/inc/connectivity/predicateinput.hxx126
-rw-r--r--connectivity/inc/connectivity/sdbcx/IRefreshable.hxx57
-rw-r--r--connectivity/inc/connectivity/sdbcx/VCatalog.hxx132
-rw-r--r--connectivity/inc/connectivity/sdbcx/VCollection.hxx243
-rw-r--r--connectivity/inc/connectivity/sdbcx/VColumn.hxx118
-rw-r--r--connectivity/inc/connectivity/sdbcx/VDescriptor.hxx102
-rw-r--r--connectivity/inc/connectivity/sdbcx/VGroup.hxx113
-rw-r--r--connectivity/inc/connectivity/sdbcx/VIndex.hxx117
-rw-r--r--connectivity/inc/connectivity/sdbcx/VIndexColumn.hxx69
-rw-r--r--connectivity/inc/connectivity/sdbcx/VKey.hxx128
-rw-r--r--connectivity/inc/connectivity/sdbcx/VKeyColumn.hxx71
-rw-r--r--connectivity/inc/connectivity/sdbcx/VTable.hxx148
-rw-r--r--connectivity/inc/connectivity/sdbcx/VTypeDef.hxx47
-rw-r--r--connectivity/inc/connectivity/sdbcx/VUser.hxx107
-rw-r--r--connectivity/inc/connectivity/sdbcx/VView.hxx108
-rw-r--r--connectivity/inc/connectivity/sqlerror.hxx340
-rw-r--r--connectivity/inc/connectivity/sqliterator.hxx366
-rw-r--r--connectivity/inc/connectivity/sqlnode.hxx472
-rw-r--r--connectivity/inc/connectivity/sqlparse.hxx261
-rw-r--r--connectivity/inc/connectivity/standardsqlstate.hxx73
-rw-r--r--connectivity/inc/connectivity/statementcomposer.hxx111
-rw-r--r--connectivity/inc/connectivity/virtualdbtools.hxx358
-rw-r--r--connectivity/inc/connectivity/warningscontainer.hxx107
-rw-r--r--connectivity/inc/makefile.mk47
-rw-r--r--connectivity/inc/pch/precompiled_connectivity.cxx29
-rw-r--r--connectivity/inc/pch/precompiled_connectivity.hxx334
-rwxr-xr-xconnectivity/makefile.pmk62
-rw-r--r--connectivity/prj/build.lst32
-rw-r--r--connectivity/prj/d.lst50
-rw-r--r--connectivity/qa/connectivity/GeneralTest.java62
-rw-r--r--connectivity/qa/connectivity/makefile.mk65
-rwxr-xr-xconnectivity/qa/connectivity/tools/AbstractDatabase.java222
-rw-r--r--connectivity/qa/connectivity/tools/CRMDatabase.java292
-rw-r--r--connectivity/qa/connectivity/tools/DataSource.java145
-rwxr-xr-xconnectivity/qa/connectivity/tools/DatabaseAccess.java63
-rwxr-xr-xconnectivity/qa/connectivity/tools/DbaseDatabase.java98
-rw-r--r--connectivity/qa/connectivity/tools/HsqlColumnDescriptor.java84
-rw-r--r--connectivity/qa/connectivity/tools/HsqlDatabase.java213
-rw-r--r--connectivity/qa/connectivity/tools/HsqlTableDescriptor.java102
-rw-r--r--connectivity/qa/connectivity/tools/QueryDefinition.java74
-rw-r--r--connectivity/qa/connectivity/tools/RowSet.java292
-rw-r--r--connectivity/qa/connectivity/tools/makefile.mk65
-rw-r--r--connectivity/qa/connectivity/tools/sdb/Connection.java93
-rw-r--r--connectivity/qa/drivers/dbase/.nbattrs10
-rw-r--r--connectivity/qa/drivers/dbase/DBaseDateFunctions.java309
-rw-r--r--connectivity/qa/drivers/dbase/DBaseDriverTest.java94
-rw-r--r--connectivity/qa/drivers/dbase/DBaseNumericFunctions.java402
-rwxr-xr-xconnectivity/qa/drivers/dbase/DBaseSqlTests.java96
-rw-r--r--connectivity/qa/drivers/dbase/DBaseStringFunctions.java323
-rw-r--r--connectivity/qa/drivers/dbase/makefile.mk64
-rw-r--r--connectivity/qa/drivers/dbase/test.properties5
-rw-r--r--connectivity/qa/drivers/hsqldb/DatabaseMetaData.java152
-rw-r--r--connectivity/qa/drivers/hsqldb/DriverTest.java170
-rw-r--r--connectivity/qa/drivers/hsqldb/TestCacheSize.java617
-rw-r--r--connectivity/qa/drivers/jdbc/LongVarCharTest.java131
-rw-r--r--connectivity/qa/drivers/jdbc/makefile.mk66
-rw-r--r--connectivity/source/commontools/AutoRetrievingBase.cxx71
-rw-r--r--connectivity/source/commontools/BlobHelper.cxx69
-rw-r--r--connectivity/source/commontools/CommonTools.cxx369
-rw-r--r--connectivity/source/commontools/ConnectionWrapper.cxx267
-rw-r--r--connectivity/source/commontools/DateConversion.cxx520
-rwxr-xr-xconnectivity/source/commontools/DriversConfig.cxx262
-rw-r--r--connectivity/source/commontools/FDatabaseMetaDataResultSet.cxx908
-rw-r--r--connectivity/source/commontools/FDatabaseMetaDataResultSetMetaData.cxx692
-rw-r--r--connectivity/source/commontools/FValue.cxx2333
-rw-r--r--connectivity/source/commontools/ParamterSubstitution.cxx132
-rw-r--r--connectivity/source/commontools/RowFunctionParser.cxx499
-rw-r--r--connectivity/source/commontools/TColumnsHelper.cxx225
-rw-r--r--connectivity/source/commontools/TConnection.cxx106
-rw-r--r--connectivity/source/commontools/TDatabaseMetaDataBase.cxx333
-rw-r--r--connectivity/source/commontools/TIndex.cxx110
-rw-r--r--connectivity/source/commontools/TIndexColumns.cxx127
-rw-r--r--connectivity/source/commontools/TIndexes.cxx262
-rw-r--r--connectivity/source/commontools/TKey.cxx119
-rw-r--r--connectivity/source/commontools/TKeyColumns.cxx145
-rw-r--r--connectivity/source/commontools/TKeys.cxx320
-rw-r--r--connectivity/source/commontools/TPrivilegesResultSet.cxx155
-rw-r--r--connectivity/source/commontools/TSkipDeletedSet.cxx278
-rw-r--r--connectivity/source/commontools/TSortIndex.cxx178
-rw-r--r--connectivity/source/commontools/TTableHelper.cxx630
-rw-r--r--connectivity/source/commontools/conncleanup.cxx247
-rw-r--r--connectivity/source/commontools/dbcharset.cxx232
-rw-r--r--connectivity/source/commontools/dbconversion.cxx490
-rw-r--r--connectivity/source/commontools/dbexception.cxx564
-rw-r--r--connectivity/source/commontools/dbmetadata.cxx448
-rw-r--r--connectivity/source/commontools/dbtools.cxx2173
-rw-r--r--connectivity/source/commontools/dbtools2.cxx974
-rw-r--r--connectivity/source/commontools/filtermanager.cxx198
-rw-r--r--connectivity/source/commontools/formattedcolumnvalue.cxx345
-rw-r--r--connectivity/source/commontools/makefile.mk103
-rw-r--r--connectivity/source/commontools/parameters.cxx1120
-rw-r--r--connectivity/source/commontools/paramwrapper.cxx364
-rw-r--r--connectivity/source/commontools/predicateinput.cxx391
-rw-r--r--connectivity/source/commontools/propertyids.cxx198
-rw-r--r--connectivity/source/commontools/sqlerror.cxx363
-rw-r--r--connectivity/source/commontools/statementcomposer.cxx315
-rw-r--r--connectivity/source/commontools/warningscontainer.cxx123
-rw-r--r--connectivity/source/cpool/ZConnectionPool.cxx336
-rw-r--r--connectivity/source/cpool/ZConnectionPool.hxx155
-rw-r--r--connectivity/source/cpool/ZConnectionWrapper.cxx258
-rw-r--r--connectivity/source/cpool/ZConnectionWrapper.hxx87
-rw-r--r--connectivity/source/cpool/ZDriverWrapper.cxx135
-rw-r--r--connectivity/source/cpool/ZDriverWrapper.hxx89
-rw-r--r--connectivity/source/cpool/ZPoolCollection.cxx581
-rw-r--r--connectivity/source/cpool/ZPoolCollection.hxx148
-rw-r--r--connectivity/source/cpool/ZPooledConnection.cxx88
-rw-r--r--connectivity/source/cpool/ZPooledConnection.hxx68
-rw-r--r--connectivity/source/cpool/Zregistration.cxx79
-rw-r--r--connectivity/source/cpool/dbpool.xml28
-rw-r--r--connectivity/source/cpool/dbpool2.component34
-rw-r--r--connectivity/source/cpool/exports.dxp2
-rw-r--r--connectivity/source/cpool/makefile.mk87
-rw-r--r--connectivity/source/dbtools/dbt.xml16
-rw-r--r--connectivity/source/dbtools/dbtools.component37
-rw-r--r--connectivity/source/dbtools/exports.dxp2
-rw-r--r--connectivity/source/dbtools/makefile.mk105
-rw-r--r--connectivity/source/drivers/adabas/BCatalog.cxx168
-rw-r--r--connectivity/source/drivers/adabas/BColumns.cxx184
-rw-r--r--connectivity/source/drivers/adabas/BConnection.cxx274
-rw-r--r--connectivity/source/drivers/adabas/BDatabaseMetaData.cxx161
-rw-r--r--connectivity/source/drivers/adabas/BDriver.cxx1819
-rw-r--r--connectivity/source/drivers/adabas/BFunctions.cxx275
-rw-r--r--connectivity/source/drivers/adabas/BGroup.cxx94
-rw-r--r--connectivity/source/drivers/adabas/BGroups.cxx93
-rw-r--r--connectivity/source/drivers/adabas/BIndex.cxx106
-rw-r--r--connectivity/source/drivers/adabas/BIndexColumns.cxx124
-rw-r--r--connectivity/source/drivers/adabas/BIndexes.cxx192
-rw-r--r--connectivity/source/drivers/adabas/BKeys.cxx181
-rw-r--r--connectivity/source/drivers/adabas/BPreparedStatement.cxx76
-rw-r--r--connectivity/source/drivers/adabas/BResultSet.cxx223
-rw-r--r--connectivity/source/drivers/adabas/BResultSetMetaData.cxx87
-rw-r--r--connectivity/source/drivers/adabas/BStatement.cxx79
-rw-r--r--connectivity/source/drivers/adabas/BTable.cxx376
-rw-r--r--connectivity/source/drivers/adabas/BTables.cxx522
-rw-r--r--connectivity/source/drivers/adabas/BUser.cxx332
-rw-r--r--connectivity/source/drivers/adabas/BUsers.cxx128
-rw-r--r--connectivity/source/drivers/adabas/BViews.cxx194
-rw-r--r--connectivity/source/drivers/adabas/Bservices.cxx124
-rw-r--r--connectivity/source/drivers/adabas/adabas.component35
-rw-r--r--connectivity/source/drivers/adabas/adabas.mxp.map147
-rwxr-xr-xconnectivity/source/drivers/adabas/adabas.xcu130
-rw-r--r--connectivity/source/drivers/adabas/adabas.xml27
-rw-r--r--connectivity/source/drivers/adabas/exports.dxp2
-rw-r--r--connectivity/source/drivers/adabas/makefile.mk114
-rw-r--r--connectivity/source/drivers/ado/ACallableStatement.cxx235
-rw-r--r--connectivity/source/drivers/ado/ACatalog.cxx127
-rw-r--r--connectivity/source/drivers/ado/AColumn.cxx300
-rw-r--r--connectivity/source/drivers/ado/AColumns.cxx142
-rw-r--r--connectivity/source/drivers/ado/AConnection.cxx625
-rw-r--r--connectivity/source/drivers/ado/ADatabaseMetaData.cxx1093
-rw-r--r--connectivity/source/drivers/ado/ADatabaseMetaDataImpl.cxx608
-rw-r--r--connectivity/source/drivers/ado/ADatabaseMetaDataResultSet.cxx1218
-rw-r--r--connectivity/source/drivers/ado/ADatabaseMetaDataResultSetMetaData.cxx233
-rw-r--r--connectivity/source/drivers/ado/ADriver.cxx271
-rw-r--r--connectivity/source/drivers/ado/AGroup.cxx192
-rw-r--r--connectivity/source/drivers/ado/AGroups.cxx88
-rw-r--r--connectivity/source/drivers/ado/AIndex.cxx157
-rw-r--r--connectivity/source/drivers/ado/AIndexes.cxx90
-rw-r--r--connectivity/source/drivers/ado/AKey.cxx167
-rw-r--r--connectivity/source/drivers/ado/AKeyColumn.cxx71
-rw-r--r--connectivity/source/drivers/ado/AKeyColumns.cxx97
-rw-r--r--connectivity/source/drivers/ado/AKeys.cxx115
-rw-r--r--connectivity/source/drivers/ado/APreparedStatement.cxx564
-rw-r--r--connectivity/source/drivers/ado/AResultSet.cxx1173
-rw-r--r--connectivity/source/drivers/ado/AResultSetMetaData.cxx262
-rw-r--r--connectivity/source/drivers/ado/AStatement.cxx841
-rw-r--r--connectivity/source/drivers/ado/ATable.cxx257
-rw-r--r--connectivity/source/drivers/ado/ATables.cxx115
-rw-r--r--connectivity/source/drivers/ado/AUser.cxx227
-rw-r--r--connectivity/source/drivers/ado/AUsers.cxx87
-rw-r--r--connectivity/source/drivers/ado/AView.cxx123
-rw-r--r--connectivity/source/drivers/ado/AViews.cxx104
-rw-r--r--connectivity/source/drivers/ado/Aolevariant.cxx791
-rw-r--r--connectivity/source/drivers/ado/Aservices.cxx123
-rw-r--r--connectivity/source/drivers/ado/Awrapado.cxx2201
-rw-r--r--connectivity/source/drivers/ado/ado.component35
-rwxr-xr-xconnectivity/source/drivers/ado/ado.xcu259
-rw-r--r--connectivity/source/drivers/ado/ado.xml29
-rw-r--r--connectivity/source/drivers/ado/ado_post_sys_include.h32
-rw-r--r--connectivity/source/drivers/ado/ado_pre_sys_include.h37
-rw-r--r--connectivity/source/drivers/ado/adoimp.cxx336
-rw-r--r--connectivity/source/drivers/ado/exports.dxp2
-rw-r--r--connectivity/source/drivers/ado/makefile.mk122
-rw-r--r--connectivity/source/drivers/calc/CCatalog.cxx80
-rw-r--r--connectivity/source/drivers/calc/CColumns.cxx55
-rw-r--r--connectivity/source/drivers/calc/CConnection.cxx295
-rw-r--r--connectivity/source/drivers/calc/CDatabaseMetaData.cxx490
-rw-r--r--connectivity/source/drivers/calc/CDriver.cxx105
-rw-r--r--connectivity/source/drivers/calc/CPreparedStatement.cxx43
-rw-r--r--connectivity/source/drivers/calc/CResultSet.cxx191
-rw-r--r--connectivity/source/drivers/calc/CStatement.cxx43
-rw-r--r--connectivity/source/drivers/calc/CTable.cxx871
-rw-r--r--connectivity/source/drivers/calc/CTables.cxx62
-rw-r--r--connectivity/source/drivers/calc/CalcDriver.xml32
-rw-r--r--connectivity/source/drivers/calc/Cservices.cxx123
-rw-r--r--connectivity/source/drivers/calc/calc.component35
-rwxr-xr-xconnectivity/source/drivers/calc/calc.xcu63
-rw-r--r--connectivity/source/drivers/calc/exports.dxp2
-rw-r--r--connectivity/source/drivers/calc/makefile.mk104
-rw-r--r--connectivity/source/drivers/dbase/DCatalog.cxx70
-rw-r--r--connectivity/source/drivers/dbase/DCode.cxx131
-rw-r--r--connectivity/source/drivers/dbase/DColumns.cxx91
-rw-r--r--connectivity/source/drivers/dbase/DConnection.cxx135
-rw-r--r--connectivity/source/drivers/dbase/DDatabaseMetaData.cxx416
-rw-r--r--connectivity/source/drivers/dbase/DDriver.cxx127
-rw-r--r--connectivity/source/drivers/dbase/DIndex.cxx679
-rw-r--r--connectivity/source/drivers/dbase/DIndexColumns.cxx94
-rw-r--r--connectivity/source/drivers/dbase/DIndexIter.cxx315
-rw-r--r--connectivity/source/drivers/dbase/DIndexes.cxx137
-rw-r--r--connectivity/source/drivers/dbase/DNoException.cxx650
-rw-r--r--connectivity/source/drivers/dbase/DPreparedStatement.cxx42
-rw-r--r--connectivity/source/drivers/dbase/DResultSet.cxx249
-rw-r--r--connectivity/source/drivers/dbase/DStatement.cxx44
-rw-r--r--connectivity/source/drivers/dbase/DTable.cxx2847
-rw-r--r--connectivity/source/drivers/dbase/DTables.cxx144
-rw-r--r--connectivity/source/drivers/dbase/Dservices.cxx123
-rw-r--r--connectivity/source/drivers/dbase/dbase.component35
-rw-r--r--connectivity/source/drivers/dbase/dbase.mxp.map172
-rwxr-xr-xconnectivity/source/drivers/dbase/dbase.xcu100
-rw-r--r--connectivity/source/drivers/dbase/dbase.xml33
-rw-r--r--connectivity/source/drivers/dbase/dindexnode.cxx1056
-rw-r--r--connectivity/source/drivers/dbase/exports.dxp2
-rw-r--r--connectivity/source/drivers/dbase/makefile.mk137
-rw-r--r--connectivity/source/drivers/evoab/LCatalog.cxx72
-rw-r--r--connectivity/source/drivers/evoab/LCatalog.hxx49
-rw-r--r--connectivity/source/drivers/evoab/LColumnAlias.cxx232
-rw-r--r--connectivity/source/drivers/evoab/LColumnAlias.hxx113
-rw-r--r--connectivity/source/drivers/evoab/LColumns.cxx57
-rw-r--r--connectivity/source/drivers/evoab/LColumns.hxx52
-rw-r--r--connectivity/source/drivers/evoab/LConfigAccess.cxx161
-rw-r--r--connectivity/source/drivers/evoab/LConfigAccess.hxx46
-rw-r--r--connectivity/source/drivers/evoab/LConnection.cxx267
-rw-r--r--connectivity/source/drivers/evoab/LConnection.hxx78
-rw-r--r--connectivity/source/drivers/evoab/LDatabaseMetaData.cxx391
-rw-r--r--connectivity/source/drivers/evoab/LDatabaseMetaData.hxx56
-rw-r--r--connectivity/source/drivers/evoab/LDebug.cxx42
-rw-r--r--connectivity/source/drivers/evoab/LDebug.hxx42
-rw-r--r--connectivity/source/drivers/evoab/LDriver.cxx505
-rw-r--r--connectivity/source/drivers/evoab/LDriver.hxx115
-rw-r--r--connectivity/source/drivers/evoab/LFolderList.cxx563
-rw-r--r--connectivity/source/drivers/evoab/LFolderList.hxx92
-rw-r--r--connectivity/source/drivers/evoab/LNoException.cxx324
-rw-r--r--connectivity/source/drivers/evoab/LPreparedStatement.cxx43
-rw-r--r--connectivity/source/drivers/evoab/LPreparedStatement.hxx50
-rw-r--r--connectivity/source/drivers/evoab/LResultSet.cxx190
-rw-r--r--connectivity/source/drivers/evoab/LResultSet.hxx81
-rw-r--r--connectivity/source/drivers/evoab/LServices.cxx123
-rw-r--r--connectivity/source/drivers/evoab/LStatement.cxx43
-rw-r--r--connectivity/source/drivers/evoab/LStatement.hxx49
-rw-r--r--connectivity/source/drivers/evoab/LTable.cxx870
-rw-r--r--connectivity/source/drivers/evoab/LTable.hxx100
-rw-r--r--connectivity/source/drivers/evoab/LTables.cxx62
-rw-r--r--connectivity/source/drivers/evoab/LTables.hxx52
-rwxr-xr-xconnectivity/source/drivers/evoab/evoab.xcu61
-rw-r--r--connectivity/source/drivers/evoab/evoab.xml33
-rw-r--r--connectivity/source/drivers/evoab/exports.dxp2
-rw-r--r--connectivity/source/drivers/evoab/makefile.mk104
-rw-r--r--connectivity/source/drivers/evoab2/EApi.cxx135
-rw-r--r--connectivity/source/drivers/evoab2/EApi.h143
-rw-r--r--connectivity/source/drivers/evoab2/NCatalog.cxx100
-rw-r--r--connectivity/source/drivers/evoab2/NCatalog.hxx56
-rw-r--r--connectivity/source/drivers/evoab2/NColumns.cxx90
-rw-r--r--connectivity/source/drivers/evoab2/NColumns.hxx57
-rw-r--r--connectivity/source/drivers/evoab2/NConnection.cxx292
-rw-r--r--connectivity/source/drivers/evoab2/NConnection.hxx123
-rw-r--r--connectivity/source/drivers/evoab2/NDatabaseMetaData.cxx1192
-rw-r--r--connectivity/source/drivers/evoab2/NDatabaseMetaData.hxx236
-rw-r--r--connectivity/source/drivers/evoab2/NDebug.cxx40
-rw-r--r--connectivity/source/drivers/evoab2/NDebug.hxx42
-rw-r--r--connectivity/source/drivers/evoab2/NDriver.cxx190
-rw-r--r--connectivity/source/drivers/evoab2/NDriver.hxx98
-rw-r--r--connectivity/source/drivers/evoab2/NPreparedStatement.cxx335
-rw-r--r--connectivity/source/drivers/evoab2/NPreparedStatement.hxx138
-rw-r--r--connectivity/source/drivers/evoab2/NResultSet.cxx1020
-rw-r--r--connectivity/source/drivers/evoab2/NResultSet.hxx183
-rw-r--r--connectivity/source/drivers/evoab2/NResultSetMetaData.cxx194
-rw-r--r--connectivity/source/drivers/evoab2/NResultSetMetaData.hxx88
-rw-r--r--connectivity/source/drivers/evoab2/NServices.cxx124
-rw-r--r--connectivity/source/drivers/evoab2/NStatement.cxx682
-rw-r--r--connectivity/source/drivers/evoab2/NStatement.hxx288
-rw-r--r--connectivity/source/drivers/evoab2/NTable.cxx89
-rw-r--r--connectivity/source/drivers/evoab2/NTable.hxx67
-rw-r--r--connectivity/source/drivers/evoab2/NTables.cxx105
-rw-r--r--connectivity/source/drivers/evoab2/NTables.hxx54
-rw-r--r--connectivity/source/drivers/evoab2/evoab.component34
-rw-r--r--connectivity/source/drivers/evoab2/evoab.xml30
-rwxr-xr-xconnectivity/source/drivers/evoab2/evoab2.xcu76
-rw-r--r--connectivity/source/drivers/evoab2/makefile.mk120
-rw-r--r--connectivity/source/drivers/file/FCatalog.cxx121
-rw-r--r--connectivity/source/drivers/file/FColumns.cxx94
-rw-r--r--connectivity/source/drivers/file/FConnection.cxx461
-rw-r--r--connectivity/source/drivers/file/FDatabaseMetaData.cxx1223
-rw-r--r--connectivity/source/drivers/file/FDateFunctions.cxx289
-rw-r--r--connectivity/source/drivers/file/FDriver.cxx285
-rw-r--r--connectivity/source/drivers/file/FNoException.cxx131
-rw-r--r--connectivity/source/drivers/file/FNumericFunctions.cxx249
-rw-r--r--connectivity/source/drivers/file/FPreparedStatement.cxx634
-rw-r--r--connectivity/source/drivers/file/FResultSet.cxx1893
-rw-r--r--connectivity/source/drivers/file/FResultSetMetaData.cxx219
-rw-r--r--connectivity/source/drivers/file/FStatement.cxx860
-rw-r--r--connectivity/source/drivers/file/FStringFunctions.cxx267
-rw-r--r--connectivity/source/drivers/file/FTable.cxx257
-rw-r--r--connectivity/source/drivers/file/FTables.cxx83
-rw-r--r--connectivity/source/drivers/file/fanalyzer.cxx322
-rw-r--r--connectivity/source/drivers/file/fcode.cxx519
-rw-r--r--connectivity/source/drivers/file/fcomp.cxx917
-rw-r--r--connectivity/source/drivers/file/file.xml32
-rw-r--r--connectivity/source/drivers/file/makefile.mk108
-rw-r--r--connectivity/source/drivers/file/quotedstring.cxx164
-rw-r--r--connectivity/source/drivers/flat/ECatalog.cxx75
-rw-r--r--connectivity/source/drivers/flat/EColumns.cxx56
-rw-r--r--connectivity/source/drivers/flat/EConnection.cxx181
-rw-r--r--connectivity/source/drivers/flat/EDatabaseMetaData.cxx267
-rw-r--r--connectivity/source/drivers/flat/EDriver.cxx145
-rw-r--r--connectivity/source/drivers/flat/EPreparedStatement.cxx46
-rw-r--r--connectivity/source/drivers/flat/EResultSet.cxx189
-rw-r--r--connectivity/source/drivers/flat/EStatement.cxx43
-rw-r--r--connectivity/source/drivers/flat/ETable.cxx847
-rw-r--r--connectivity/source/drivers/flat/ETables.cxx62
-rw-r--r--connectivity/source/drivers/flat/Eservices.cxx123
-rw-r--r--connectivity/source/drivers/flat/exports.dxp2
-rw-r--r--connectivity/source/drivers/flat/flat.component35
-rw-r--r--connectivity/source/drivers/flat/flat.mxp.map140
-rwxr-xr-xconnectivity/source/drivers/flat/flat.xcu110
-rw-r--r--connectivity/source/drivers/flat/flat.xml33
-rw-r--r--connectivity/source/drivers/flat/makefile.mk115
-rw-r--r--connectivity/source/drivers/hsqldb/HCatalog.cxx166
-rw-r--r--connectivity/source/drivers/hsqldb/HColumns.cxx89
-rw-r--r--connectivity/source/drivers/hsqldb/HConnection.cxx422
-rw-r--r--connectivity/source/drivers/hsqldb/HDriver.cxx886
-rw-r--r--connectivity/source/drivers/hsqldb/HStorage.hxx118
-rw-r--r--connectivity/source/drivers/hsqldb/HStorageAccess.cxx551
-rw-r--r--connectivity/source/drivers/hsqldb/HStorageMap.cxx362
-rw-r--r--connectivity/source/drivers/hsqldb/HTable.cxx427
-rw-r--r--connectivity/source/drivers/hsqldb/HTables.cxx200
-rw-r--r--connectivity/source/drivers/hsqldb/HTerminateListener.cxx64
-rw-r--r--connectivity/source/drivers/hsqldb/HTerminateListener.hxx66
-rw-r--r--connectivity/source/drivers/hsqldb/HTools.cxx73
-rw-r--r--connectivity/source/drivers/hsqldb/HUser.cxx351
-rw-r--r--connectivity/source/drivers/hsqldb/HUsers.cxx120
-rw-r--r--connectivity/source/drivers/hsqldb/HView.cxx213
-rw-r--r--connectivity/source/drivers/hsqldb/HViews.cxx169
-rw-r--r--connectivity/source/drivers/hsqldb/Hservices.cxx125
-rw-r--r--connectivity/source/drivers/hsqldb/StorageFileAccess.cxx180
-rw-r--r--connectivity/source/drivers/hsqldb/StorageNativeInputStream.cxx306
-rw-r--r--connectivity/source/drivers/hsqldb/StorageNativeOutputStream.cxx219
-rw-r--r--connectivity/source/drivers/hsqldb/accesslog.cxx83
-rw-r--r--connectivity/source/drivers/hsqldb/accesslog.hxx145
-rw-r--r--connectivity/source/drivers/hsqldb/exports.dxp29
-rw-r--r--connectivity/source/drivers/hsqldb/hsqldb.component35
-rw-r--r--connectivity/source/drivers/hsqldb/hsqldb.map34
-rwxr-xr-xconnectivity/source/drivers/hsqldb/hsqldb.xcu78
-rw-r--r--connectivity/source/drivers/hsqldb/hsqldb.xml28
-rw-r--r--connectivity/source/drivers/hsqldb/hsqlui.hrc36
-rw-r--r--connectivity/source/drivers/hsqldb/hsqlui.src53
-rw-r--r--connectivity/source/drivers/hsqldb/makefile.mk125
-rw-r--r--connectivity/source/drivers/jdbc/Array.cxx152
-rw-r--r--connectivity/source/drivers/jdbc/Blob.cxx148
-rw-r--r--connectivity/source/drivers/jdbc/Boolean.cxx51
-rw-r--r--connectivity/source/drivers/jdbc/CallableStatement.cxx359
-rw-r--r--connectivity/source/drivers/jdbc/Class.cxx73
-rw-r--r--connectivity/source/drivers/jdbc/Clob.cxx146
-rw-r--r--connectivity/source/drivers/jdbc/ConnectionLog.cxx134
-rw-r--r--connectivity/source/drivers/jdbc/ContextClassLoader.cxx131
-rw-r--r--connectivity/source/drivers/jdbc/DatabaseMetaData.cxx1462
-rw-r--r--connectivity/source/drivers/jdbc/Date.cxx53
-rw-r--r--connectivity/source/drivers/jdbc/DriverPropertyInfo.cxx141
-rw-r--r--connectivity/source/drivers/jdbc/Exception.cxx48
-rw-r--r--connectivity/source/drivers/jdbc/InputStream.cxx110
-rw-r--r--connectivity/source/drivers/jdbc/JBigDecimal.cxx89
-rw-r--r--connectivity/source/drivers/jdbc/JConnection.cxx873
-rw-r--r--connectivity/source/drivers/jdbc/JDriver.cxx256
-rw-r--r--connectivity/source/drivers/jdbc/JStatement.cxx829
-rw-r--r--connectivity/source/drivers/jdbc/Object.cxx429
-rw-r--r--connectivity/source/drivers/jdbc/PreparedStatement.cxx666
-rw-r--r--connectivity/source/drivers/jdbc/Reader.cxx121
-rw-r--r--connectivity/source/drivers/jdbc/Ref.cxx61
-rw-r--r--connectivity/source/drivers/jdbc/ResultSet.cxx1087
-rw-r--r--connectivity/source/drivers/jdbc/ResultSetMetaData.cxx238
-rw-r--r--connectivity/source/drivers/jdbc/SQLException.cxx100
-rw-r--r--connectivity/source/drivers/jdbc/SQLWarning.cxx48
-rw-r--r--connectivity/source/drivers/jdbc/String.cxx62
-rw-r--r--connectivity/source/drivers/jdbc/Throwable.cxx69
-rw-r--r--connectivity/source/drivers/jdbc/Timestamp.cxx201
-rw-r--r--connectivity/source/drivers/jdbc/exports.dxp2
-rw-r--r--connectivity/source/drivers/jdbc/jdbc.component34
-rw-r--r--connectivity/source/drivers/jdbc/jdbc.mxp.map153
-rwxr-xr-xconnectivity/source/drivers/jdbc/jdbc.xcu214
-rw-r--r--connectivity/source/drivers/jdbc/jdbc.xml30
-rw-r--r--connectivity/source/drivers/jdbc/jservices.cxx126
-rw-r--r--connectivity/source/drivers/jdbc/makefile.mk120
-rw-r--r--connectivity/source/drivers/jdbc/tools.cxx274
-rw-r--r--connectivity/source/drivers/kab/KCatalog.cxx124
-rw-r--r--connectivity/source/drivers/kab/KCatalog.hxx64
-rw-r--r--connectivity/source/drivers/kab/KColumns.cxx98
-rw-r--r--connectivity/source/drivers/kab/KColumns.hxx54
-rw-r--r--connectivity/source/drivers/kab/KConnection.cxx328
-rw-r--r--connectivity/source/drivers/kab/KConnection.hxx139
-rw-r--r--connectivity/source/drivers/kab/KDEInit.cxx155
-rw-r--r--connectivity/source/drivers/kab/KDEInit.h44
-rw-r--r--connectivity/source/drivers/kab/KDatabaseMetaData.cxx1080
-rw-r--r--connectivity/source/drivers/kab/KDatabaseMetaData.hxx213
-rw-r--r--connectivity/source/drivers/kab/KDriver.cxx473
-rw-r--r--connectivity/source/drivers/kab/KDriver.hxx223
-rw-r--r--connectivity/source/drivers/kab/KPreparedStatement.cxx390
-rw-r--r--connectivity/source/drivers/kab/KPreparedStatement.hxx119
-rw-r--r--connectivity/source/drivers/kab/KResultSet.cxx987
-rw-r--r--connectivity/source/drivers/kab/KResultSet.hxx224
-rw-r--r--connectivity/source/drivers/kab/KResultSetMetaData.cxx187
-rw-r--r--connectivity/source/drivers/kab/KResultSetMetaData.hxx92
-rw-r--r--connectivity/source/drivers/kab/KServices.cxx125
-rw-r--r--connectivity/source/drivers/kab/KStatement.cxx584
-rw-r--r--connectivity/source/drivers/kab/KStatement.hxx172
-rw-r--r--connectivity/source/drivers/kab/KTable.cxx96
-rw-r--r--connectivity/source/drivers/kab/KTable.hxx68
-rw-r--r--connectivity/source/drivers/kab/KTables.cxx90
-rw-r--r--connectivity/source/drivers/kab/KTables.hxx61
-rw-r--r--connectivity/source/drivers/kab/exports.dxp2
-rwxr-xr-xconnectivity/source/drivers/kab/kab.xcu46
-rw-r--r--connectivity/source/drivers/kab/kab.xml79
-rw-r--r--connectivity/source/drivers/kab/kab1.component34
-rw-r--r--connectivity/source/drivers/kab/kabdrv.map9
-rw-r--r--connectivity/source/drivers/kab/kcondition.cxx229
-rw-r--r--connectivity/source/drivers/kab/kcondition.hxx162
-rw-r--r--connectivity/source/drivers/kab/kfields.cxx94
-rw-r--r--connectivity/source/drivers/kab/kfields.hxx47
-rw-r--r--connectivity/source/drivers/kab/korder.cxx88
-rw-r--r--connectivity/source/drivers/kab/korder.hxx74
-rw-r--r--connectivity/source/drivers/kab/makefile.mk148
-rwxr-xr-xconnectivity/source/drivers/macab/MacabAddressBook.cxx256
-rwxr-xr-xconnectivity/source/drivers/macab/MacabAddressBook.hxx72
-rwxr-xr-xconnectivity/source/drivers/macab/MacabCatalog.cxx124
-rwxr-xr-xconnectivity/source/drivers/macab/MacabCatalog.hxx64
-rwxr-xr-xconnectivity/source/drivers/macab/MacabColumns.cxx98
-rwxr-xr-xconnectivity/source/drivers/macab/MacabColumns.hxx54
-rwxr-xr-xconnectivity/source/drivers/macab/MacabConnection.cxx324
-rwxr-xr-xconnectivity/source/drivers/macab/MacabConnection.hxx131
-rwxr-xr-xconnectivity/source/drivers/macab/MacabDatabaseMetaData.cxx1126
-rwxr-xr-xconnectivity/source/drivers/macab/MacabDatabaseMetaData.hxx212
-rwxr-xr-xconnectivity/source/drivers/macab/MacabDriver.cxx348
-rwxr-xr-xconnectivity/source/drivers/macab/MacabDriver.hxx196
-rw-r--r--connectivity/source/drivers/macab/MacabGroup.cxx102
-rw-r--r--connectivity/source/drivers/macab/MacabGroup.hxx51
-rw-r--r--connectivity/source/drivers/macab/MacabHeader.cxx343
-rw-r--r--connectivity/source/drivers/macab/MacabHeader.hxx71
-rwxr-xr-xconnectivity/source/drivers/macab/MacabPreparedStatement.cxx407
-rwxr-xr-xconnectivity/source/drivers/macab/MacabPreparedStatement.hxx119
-rwxr-xr-xconnectivity/source/drivers/macab/MacabRecord.cxx347
-rwxr-xr-xconnectivity/source/drivers/macab/MacabRecord.hxx77
-rwxr-xr-xconnectivity/source/drivers/macab/MacabRecords.cxx1212
-rwxr-xr-xconnectivity/source/drivers/macab/MacabRecords.hxx136
-rwxr-xr-xconnectivity/source/drivers/macab/MacabResultSet.cxx1073
-rwxr-xr-xconnectivity/source/drivers/macab/MacabResultSet.hxx226
-rwxr-xr-xconnectivity/source/drivers/macab/MacabResultSetMetaData.cxx224
-rwxr-xr-xconnectivity/source/drivers/macab/MacabResultSetMetaData.hxx94
-rwxr-xr-xconnectivity/source/drivers/macab/MacabServices.cxx125
-rwxr-xr-xconnectivity/source/drivers/macab/MacabStatement.cxx611
-rwxr-xr-xconnectivity/source/drivers/macab/MacabStatement.hxx176
-rwxr-xr-xconnectivity/source/drivers/macab/MacabTable.cxx96
-rwxr-xr-xconnectivity/source/drivers/macab/MacabTable.hxx68
-rwxr-xr-xconnectivity/source/drivers/macab/MacabTables.cxx90
-rwxr-xr-xconnectivity/source/drivers/macab/MacabTables.hxx61
-rwxr-xr-xconnectivity/source/drivers/macab/exports.dxp2
-rwxr-xr-xconnectivity/source/drivers/macab/macab.xcu46
-rwxr-xr-xconnectivity/source/drivers/macab/macab.xml79
-rw-r--r--connectivity/source/drivers/macab/macab1.component34
-rwxr-xr-xconnectivity/source/drivers/macab/macabcondition.cxx250
-rwxr-xr-xconnectivity/source/drivers/macab/macabcondition.hxx169
-rwxr-xr-xconnectivity/source/drivers/macab/macaborder.cxx86
-rwxr-xr-xconnectivity/source/drivers/macab/macaborder.hxx74
-rw-r--r--connectivity/source/drivers/macab/macabutilities.hxx149
-rwxr-xr-xconnectivity/source/drivers/macab/makefile.mk137
-rw-r--r--connectivity/source/drivers/mozab/MCatalog.cxx127
-rw-r--r--connectivity/source/drivers/mozab/MCatalog.hxx66
-rw-r--r--connectivity/source/drivers/mozab/MColumnAlias.cxx191
-rw-r--r--connectivity/source/drivers/mozab/MColumnAlias.hxx85
-rw-r--r--connectivity/source/drivers/mozab/MColumns.cxx100
-rw-r--r--connectivity/source/drivers/mozab/MColumns.hxx58
-rw-r--r--connectivity/source/drivers/mozab/MConfigAccess.cxx273
-rw-r--r--connectivity/source/drivers/mozab/MConfigAccess.hxx39
-rw-r--r--connectivity/source/drivers/mozab/MConnection.cxx603
-rw-r--r--connectivity/source/drivers/mozab/MConnection.hxx231
-rw-r--r--connectivity/source/drivers/mozab/MDatabaseMetaData.cxx1031
-rw-r--r--connectivity/source/drivers/mozab/MDatabaseMetaData.hxx204
-rw-r--r--connectivity/source/drivers/mozab/MDriver.cxx329
-rw-r--r--connectivity/source/drivers/mozab/MDriver.hxx110
-rw-r--r--connectivity/source/drivers/mozab/MExtConfigAccess.hxx46
-rw-r--r--connectivity/source/drivers/mozab/MPreparedStatement.cxx544
-rw-r--r--connectivity/source/drivers/mozab/MPreparedStatement.hxx169
-rw-r--r--connectivity/source/drivers/mozab/MResultSet.cxx1980
-rw-r--r--connectivity/source/drivers/mozab/MResultSet.hxx366
-rw-r--r--connectivity/source/drivers/mozab/MResultSetMetaData.cxx212
-rw-r--r--connectivity/source/drivers/mozab/MResultSetMetaData.hxx98
-rw-r--r--connectivity/source/drivers/mozab/MServices.cxx168
-rw-r--r--connectivity/source/drivers/mozab/MStatement.cxx561
-rw-r--r--connectivity/source/drivers/mozab/MStatement.hxx213
-rw-r--r--connectivity/source/drivers/mozab/MTable.cxx95
-rw-r--r--connectivity/source/drivers/mozab/MTable.hxx72
-rw-r--r--connectivity/source/drivers/mozab/MTables.cxx104
-rw-r--r--connectivity/source/drivers/mozab/MTables.hxx55
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/MMozillaBootstrap.cxx289
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/MMozillaBootstrap.hxx101
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/MNSFolders.cxx171
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/MNSFolders.hxx46
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/MNSINIParser.cxx139
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/MNSINIParser.hxx83
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/MNSInit.cxx347
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/MNSInit.hxx45
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/MNSProfile.cxx631
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/MNSProfile.hxx74
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/MNSProfileDirServiceProvider.cxx240
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/MNSProfileDirServiceProvider.hxx83
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/MNSProfileDiscover.cxx535
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/MNSProfileDiscover.hxx134
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/MNSProfileManager.cxx113
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/MNSProfileManager.hxx80
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/MNSRunnable.cxx98
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/MNSRunnable.hxx68
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/makefile.mk100
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/mozbootstrap.component34
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/mozilla_nsinit.h54
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/mozilla_nsprofile.h89
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/mozilla_nsprofiledirserviceprovider.h41
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/mozilla_profile_discover.h46
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/mozilla_profilemanager.h84
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/post_include_windows.h30
-rw-r--r--connectivity/source/drivers/mozab/bootstrap/pre_include_windows.h31
-rw-r--r--connectivity/source/drivers/mozab/exports.dxp2
-rw-r--r--connectivity/source/drivers/mozab/makefile.mk194
-rw-r--r--connectivity/source/drivers/mozab/makefile_mozab.mk128
-rw-r--r--connectivity/source/drivers/mozab/mozab.component37
-rwxr-xr-xconnectivity/source/drivers/mozab/mozab.xcu154
-rw-r--r--connectivity/source/drivers/mozab/mozab.xml82
-rwxr-xr-xconnectivity/source/drivers/mozab/mozab2.xcu118
-rw-r--r--connectivity/source/drivers/mozab/mozabdrv.map8
-rw-r--r--connectivity/source/drivers/mozab/mozillasrc/MDatabaseMetaDataHelper.cxx806
-rw-r--r--connectivity/source/drivers/mozab/mozillasrc/MDatabaseMetaDataHelper.hxx80
-rw-r--r--connectivity/source/drivers/mozab/mozillasrc/MErrorResource.hxx77
-rw-r--r--connectivity/source/drivers/mozab/mozillasrc/MLdapAttributeMap.cxx450
-rw-r--r--connectivity/source/drivers/mozab/mozillasrc/MLdapAttributeMap.hxx75
-rw-r--r--connectivity/source/drivers/mozab/mozillasrc/MNSDeclares.hxx52
-rw-r--r--connectivity/source/drivers/mozab/mozillasrc/MNSInclude.hxx81
-rw-r--r--connectivity/source/drivers/mozab/mozillasrc/MNSMozabProxy.cxx404
-rw-r--r--connectivity/source/drivers/mozab/mozillasrc/MNSMozabProxy.hxx119
-rw-r--r--connectivity/source/drivers/mozab/mozillasrc/MNSTerminateListener.cxx86
-rw-r--r--connectivity/source/drivers/mozab/mozillasrc/MNSTerminateListener.hxx57
-rw-r--r--connectivity/source/drivers/mozab/mozillasrc/MNameMapper.cxx142
-rw-r--r--connectivity/source/drivers/mozab/mozillasrc/MNameMapper.hxx83
-rw-r--r--connectivity/source/drivers/mozab/mozillasrc/MQuery.cxx823
-rw-r--r--connectivity/source/drivers/mozab/mozillasrc/MQuery.hxx282
-rw-r--r--connectivity/source/drivers/mozab/mozillasrc/MQueryHelper.cxx635
-rw-r--r--connectivity/source/drivers/mozab/mozillasrc/MQueryHelper.hxx142
-rw-r--r--connectivity/source/drivers/mozab/mozillasrc/MTypeConverter.cxx138
-rw-r--r--connectivity/source/drivers/mozab/mozillasrc/MTypeConverter.hxx66
-rw-r--r--connectivity/source/drivers/mozab/mozillasrc/makefile.mk77
-rw-r--r--connectivity/source/drivers/mozab/post_include_mozilla.h58
-rw-r--r--connectivity/source/drivers/mozab/pre_include_mozilla.h70
-rw-r--r--connectivity/source/drivers/mysql/YCatalog.cxx174
-rw-r--r--connectivity/source/drivers/mysql/YColumns.cxx89
-rw-r--r--connectivity/source/drivers/mysql/YDriver.cxx481
-rw-r--r--connectivity/source/drivers/mysql/YTable.cxx385
-rw-r--r--connectivity/source/drivers/mysql/YTables.cxx243
-rw-r--r--connectivity/source/drivers/mysql/YUser.cxx350
-rw-r--r--connectivity/source/drivers/mysql/YUsers.cxx118
-rw-r--r--connectivity/source/drivers/mysql/YViews.cxx162
-rw-r--r--connectivity/source/drivers/mysql/Yservices.cxx124
-rw-r--r--connectivity/source/drivers/mysql/exports.dxp2
-rw-r--r--connectivity/source/drivers/mysql/makefile.mk92
-rw-r--r--connectivity/source/drivers/mysql/mysql.component35
-rwxr-xr-xconnectivity/source/drivers/mysql/mysql.xcu258
-rw-r--r--connectivity/source/drivers/mysql/mysql.xml29
-rw-r--r--connectivity/source/drivers/odbc/OFunctions.cxx281
-rw-r--r--connectivity/source/drivers/odbc/ORealDriver.cxx369
-rw-r--r--connectivity/source/drivers/odbc/ORealDriver.hxx50
-rw-r--r--connectivity/source/drivers/odbc/makefile.mk86
-rw-r--r--connectivity/source/drivers/odbc/odbc.component34
-rwxr-xr-xconnectivity/source/drivers/odbc/odbc.xcu175
-rw-r--r--connectivity/source/drivers/odbc/odbc.xml28
-rw-r--r--connectivity/source/drivers/odbc/oservices.cxx125
-rw-r--r--connectivity/source/drivers/odbcbase/OConnection.cxx670
-rw-r--r--connectivity/source/drivers/odbcbase/ODatabaseMetaData.cxx1743
-rw-r--r--connectivity/source/drivers/odbcbase/ODatabaseMetaDataResultSet.cxx1323
-rw-r--r--connectivity/source/drivers/odbcbase/ODriver.cxx229
-rw-r--r--connectivity/source/drivers/odbcbase/OPreparedStatement.cxx973
-rw-r--r--connectivity/source/drivers/odbcbase/OResultSet.cxx1755
-rw-r--r--connectivity/source/drivers/odbcbase/OResultSetMetaData.cxx312
-rw-r--r--connectivity/source/drivers/odbcbase/OStatement.cxx1154
-rw-r--r--connectivity/source/drivers/odbcbase/OTools.cxx946
-rw-r--r--connectivity/source/drivers/odbcbase/makefile.mk90
-rw-r--r--connectivity/source/inc/AutoRetrievingBase.hxx59
-rw-r--r--connectivity/source/inc/FDatabaseMetaDataResultSet.hxx279
-rw-r--r--connectivity/source/inc/FDatabaseMetaDataResultSetMetaData.hxx114
-rw-r--r--connectivity/source/inc/OColumn.hxx146
-rw-r--r--connectivity/source/inc/OSubComponent.hxx92
-rw-r--r--connectivity/source/inc/OTypeInfo.hxx92
-rw-r--r--connectivity/source/inc/ParameterSubstitution.hxx71
-rw-r--r--connectivity/source/inc/RowFunctionParser.hxx152
-rw-r--r--connectivity/source/inc/TConnection.hxx92
-rw-r--r--connectivity/source/inc/TDatabaseMetaDataBase.hxx142
-rw-r--r--connectivity/source/inc/TKeyValue.hxx82
-rw-r--r--connectivity/source/inc/TPrivilegesResultSet.hxx54
-rw-r--r--connectivity/source/inc/TResultSetHelper.hxx58
-rw-r--r--connectivity/source/inc/TSkipDeletedSet.hxx105
-rw-r--r--connectivity/source/inc/TSortIndex.hxx139
-rw-r--r--connectivity/source/inc/UStringDescription_Impl.hxx106
-rw-r--r--connectivity/source/inc/adabas/BCatalog.hxx77
-rw-r--r--connectivity/source/inc/adabas/BColumn.hxx54
-rw-r--r--connectivity/source/inc/adabas/BColumns.hxx61
-rw-r--r--connectivity/source/inc/adabas/BConnection.hxx78
-rw-r--r--connectivity/source/inc/adabas/BDatabaseMetaData.hxx55
-rw-r--r--connectivity/source/inc/adabas/BDriver.hxx177
-rw-r--r--connectivity/source/inc/adabas/BGroup.hxx50
-rw-r--r--connectivity/source/inc/adabas/BGroups.hxx66
-rw-r--r--connectivity/source/inc/adabas/BIndex.hxx58
-rw-r--r--connectivity/source/inc/adabas/BIndexColumn.hxx58
-rw-r--r--connectivity/source/inc/adabas/BIndexColumns.hxx58
-rw-r--r--connectivity/source/inc/adabas/BIndexes.hxx58
-rw-r--r--connectivity/source/inc/adabas/BKeys.hxx55
-rw-r--r--connectivity/source/inc/adabas/BPreparedStatement.hxx52
-rw-r--r--connectivity/source/inc/adabas/BResultSet.hxx60
-rw-r--r--connectivity/source/inc/adabas/BResultSetMetaData.hxx56
-rw-r--r--connectivity/source/inc/adabas/BStatement.hxx62
-rw-r--r--connectivity/source/inc/adabas/BTable.hxx110
-rw-r--r--connectivity/source/inc/adabas/BTables.hxx80
-rw-r--r--connectivity/source/inc/adabas/BUser.hxx82
-rw-r--r--connectivity/source/inc/adabas/BUsers.hxx66
-rw-r--r--connectivity/source/inc/adabas/BViews.hxx64
-rw-r--r--connectivity/source/inc/ado/ACallableStatement.hxx88
-rw-r--r--connectivity/source/inc/ado/ACatalog.hxx61
-rw-r--r--connectivity/source/inc/ado/ACollection.hxx231
-rw-r--r--connectivity/source/inc/ado/AColumn.hxx70
-rw-r--r--connectivity/source/inc/ado/AColumns.hxx68
-rw-r--r--connectivity/source/inc/ado/AConnection.hxx151
-rw-r--r--connectivity/source/inc/ado/ADatabaseMetaData.hxx230
-rw-r--r--connectivity/source/inc/ado/ADatabaseMetaDataResultSet.hxx227
-rw-r--r--connectivity/source/inc/ado/ADatabaseMetaDataResultSetMetaData.hxx115
-rw-r--r--connectivity/source/inc/ado/ADriver.hxx93
-rw-r--r--connectivity/source/inc/ado/AGroup.hxx76
-rw-r--r--connectivity/source/inc/ado/AGroups.hxx69
-rw-r--r--connectivity/source/inc/ado/AIndex.hxx65
-rw-r--r--connectivity/source/inc/ado/AIndexColumn.hxx58
-rw-r--r--connectivity/source/inc/ado/AIndexColumns.hxx55
-rw-r--r--connectivity/source/inc/ado/AIndexes.hxx66
-rw-r--r--connectivity/source/inc/ado/AKey.hxx73
-rw-r--r--connectivity/source/inc/ado/AKeyColumn.hxx58
-rw-r--r--connectivity/source/inc/ado/AKeyColumns.hxx55
-rw-r--r--connectivity/source/inc/ado/AKeys.hxx66
-rw-r--r--connectivity/source/inc/ado/APreparedStatement.hxx124
-rw-r--r--connectivity/source/inc/ado/AResultSet.hxx237
-rw-r--r--connectivity/source/inc/ado/AResultSetMetaData.hxx93
-rw-r--r--connectivity/source/inc/ado/AStatement.hxx201
-rw-r--r--connectivity/source/inc/ado/ATable.hxx88
-rw-r--r--connectivity/source/inc/ado/ATables.hxx65
-rw-r--r--connectivity/source/inc/ado/AUser.hxx102
-rw-r--r--connectivity/source/inc/ado/AUsers.hxx70
-rw-r--r--connectivity/source/inc/ado/AView.hxx66
-rw-r--r--connectivity/source/inc/ado/AViews.hxx64
-rw-r--r--connectivity/source/inc/ado/Aolevariant.hxx175
-rw-r--r--connectivity/source/inc/ado/Aolewrap.hxx245
-rw-r--r--connectivity/source/inc/ado/Awrapado.hxx419
-rw-r--r--connectivity/source/inc/ado/Awrapadox.hxx149
-rw-r--r--connectivity/source/inc/ado/WrapCatalog.hxx58
-rw-r--r--connectivity/source/inc/ado/WrapColumn.hxx72
-rw-r--r--connectivity/source/inc/ado/WrapIndex.hxx60
-rw-r--r--connectivity/source/inc/ado/WrapKey.hxx62
-rw-r--r--connectivity/source/inc/ado/WrapTable.hxx65
-rw-r--r--connectivity/source/inc/ado/WrapTypeDefs.hxx53
-rw-r--r--connectivity/source/inc/ado/adoimp.hxx112
-rw-r--r--connectivity/source/inc/calc/CCatalog.hxx50
-rw-r--r--connectivity/source/inc/calc/CColumns.hxx53
-rw-r--r--connectivity/source/inc/calc/CConnection.hxx97
-rw-r--r--connectivity/source/inc/calc/CDatabaseMetaData.hxx61
-rw-r--r--connectivity/source/inc/calc/CDriver.hxx65
-rw-r--r--connectivity/source/inc/calc/CPreparedStatement.hxx50
-rw-r--r--connectivity/source/inc/calc/CResultSet.hxx90
-rw-r--r--connectivity/source/inc/calc/CStatement.hxx50
-rw-r--r--connectivity/source/inc/calc/CTable.hxx107
-rw-r--r--connectivity/source/inc/calc/CTables.hxx52
-rw-r--r--connectivity/source/inc/dbase/DCatalog.hxx49
-rw-r--r--connectivity/source/inc/dbase/DCode.hxx69
-rw-r--r--connectivity/source/inc/dbase/DColumns.hxx55
-rw-r--r--connectivity/source/inc/dbase/DConnection.hxx58
-rw-r--r--connectivity/source/inc/dbase/DDatabaseMetaData.hxx68
-rw-r--r--connectivity/source/inc/dbase/DDatabaseMetaDataResultSet.hxx196
-rw-r--r--connectivity/source/inc/dbase/DDatabaseMetaDataResultSetMetaData.hxx108
-rw-r--r--connectivity/source/inc/dbase/DDriver.hxx61
-rw-r--r--connectivity/source/inc/dbase/DIndex.hxx160
-rw-r--r--connectivity/source/inc/dbase/DIndexColumns.hxx60
-rw-r--r--connectivity/source/inc/dbase/DIndexIter.hxx85
-rw-r--r--connectivity/source/inc/dbase/DIndexPage.hxx89
-rw-r--r--connectivity/source/inc/dbase/DIndexes.hxx61
-rw-r--r--connectivity/source/inc/dbase/DPreparedStatement.hxx50
-rw-r--r--connectivity/source/inc/dbase/DResultSet.hxx90
-rw-r--r--connectivity/source/inc/dbase/DStatement.hxx49
-rw-r--r--connectivity/source/inc/dbase/DTable.hxx185
-rw-r--r--connectivity/source/inc/dbase/DTables.hxx58
-rw-r--r--connectivity/source/inc/dbase/dindexnode.hxx347
-rw-r--r--connectivity/source/inc/diagnose_ex.h46
-rw-r--r--connectivity/source/inc/file/FCatalog.hxx71
-rw-r--r--connectivity/source/inc/file/FColumns.hxx59
-rw-r--r--connectivity/source/inc/file/FConnection.hxx160
-rw-r--r--connectivity/source/inc/file/FDatabaseMetaData.hxx197
-rw-r--r--connectivity/source/inc/file/FDateFunctions.hxx242
-rw-r--r--connectivity/source/inc/file/FDriver.hxx87
-rw-r--r--connectivity/source/inc/file/FNumericFunctions.hxx376
-rw-r--r--connectivity/source/inc/file/FPreparedStatement.hxx135
-rw-r--r--connectivity/source/inc/file/FResultSet.hxx357
-rw-r--r--connectivity/source/inc/file/FResultSetMetaData.hxx91
-rw-r--r--connectivity/source/inc/file/FStatement.hxx223
-rw-r--r--connectivity/source/inc/file/FStringFunctions.hxx283
-rw-r--r--connectivity/source/inc/file/FTable.hxx120
-rw-r--r--connectivity/source/inc/file/FTables.hxx61
-rw-r--r--connectivity/source/inc/file/fanalyzer.hxx96
-rw-r--r--connectivity/source/inc/file/fcode.hxx396
-rw-r--r--connectivity/source/inc/file/fcomp.hxx120
-rw-r--r--connectivity/source/inc/file/filedllapi.hxx40
-rw-r--r--connectivity/source/inc/file/quotedstring.hxx55
-rw-r--r--connectivity/source/inc/flat/ECatalog.hxx49
-rw-r--r--connectivity/source/inc/flat/EColumns.hxx52
-rw-r--r--connectivity/source/inc/flat/EConnection.hxx71
-rw-r--r--connectivity/source/inc/flat/EDatabaseMetaData.hxx55
-rw-r--r--connectivity/source/inc/flat/EDriver.hxx61
-rw-r--r--connectivity/source/inc/flat/EPreparedStatement.hxx50
-rw-r--r--connectivity/source/inc/flat/EResultSet.hxx81
-rw-r--r--connectivity/source/inc/flat/EStatement.hxx49
-rw-r--r--connectivity/source/inc/flat/ETable.hxx103
-rw-r--r--connectivity/source/inc/flat/ETables.hxx52
-rw-r--r--connectivity/source/inc/hsqldb/HCatalog.hxx72
-rw-r--r--connectivity/source/inc/hsqldb/HColumns.hxx70
-rw-r--r--connectivity/source/inc/hsqldb/HConnection.hxx186
-rw-r--r--connectivity/source/inc/hsqldb/HDriver.hxx144
-rw-r--r--connectivity/source/inc/hsqldb/HStorageAccess.h95
-rw-r--r--connectivity/source/inc/hsqldb/HStorageAccess.hxx43
-rw-r--r--connectivity/source/inc/hsqldb/HStorageMap.hxx94
-rw-r--r--connectivity/source/inc/hsqldb/HTable.hxx128
-rw-r--r--connectivity/source/inc/hsqldb/HTables.hxx78
-rw-r--r--connectivity/source/inc/hsqldb/HTools.hxx65
-rw-r--r--connectivity/source/inc/hsqldb/HUser.hxx82
-rw-r--r--connectivity/source/inc/hsqldb/HUsers.hxx62
-rw-r--r--connectivity/source/inc/hsqldb/HView.hxx97
-rw-r--r--connectivity/source/inc/hsqldb/HViews.hxx63
-rw-r--r--connectivity/source/inc/hsqldb/StorageFileAccess.h37
-rw-r--r--connectivity/source/inc/hsqldb/StorageNativeInputStream.h70
-rw-r--r--connectivity/source/inc/internalnode.hxx60
-rw-r--r--connectivity/source/inc/java/ContextClassLoader.hxx103
-rw-r--r--connectivity/source/inc/java/GlobalRef.hxx122
-rw-r--r--connectivity/source/inc/java/LocalRef.hxx106
-rw-r--r--connectivity/source/inc/java/io/InputStream.hxx60
-rw-r--r--connectivity/source/inc/java/io/Reader.hxx61
-rw-r--r--connectivity/source/inc/java/lang/Boolean.hxx53
-rw-r--r--connectivity/source/inc/java/lang/Class.hxx55
-rw-r--r--connectivity/source/inc/java/lang/Exception.hxx51
-rw-r--r--connectivity/source/inc/java/lang/Object.hxx175
-rw-r--r--connectivity/source/inc/java/lang/String.hxx53
-rw-r--r--connectivity/source/inc/java/lang/Throwable.hxx54
-rw-r--r--connectivity/source/inc/java/math/BigDecimal.hxx53
-rw-r--r--connectivity/source/inc/java/sql/Array.hxx63
-rw-r--r--connectivity/source/inc/java/sql/Blob.hxx63
-rw-r--r--connectivity/source/inc/java/sql/CallableStatement.hxx91
-rw-r--r--connectivity/source/inc/java/sql/Clob.hxx63
-rw-r--r--connectivity/source/inc/java/sql/Connection.hxx151
-rw-r--r--connectivity/source/inc/java/sql/ConnectionLog.hxx142
-rw-r--r--connectivity/source/inc/java/sql/DatabaseMetaData.hxx224
-rw-r--r--connectivity/source/inc/java/sql/Driver.hxx76
-rw-r--r--connectivity/source/inc/java/sql/DriverPropertyInfo.hxx61
-rw-r--r--connectivity/source/inc/java/sql/JStatement.hxx219
-rw-r--r--connectivity/source/inc/java/sql/PreparedStatement.hxx113
-rw-r--r--connectivity/source/inc/java/sql/Ref.hxx58
-rw-r--r--connectivity/source/inc/java/sql/ResultSet.hxx208
-rw-r--r--connectivity/source/inc/java/sql/ResultSetMetaData.hxx82
-rw-r--r--connectivity/source/inc/java/sql/SQLException.hxx68
-rw-r--r--connectivity/source/inc/java/sql/SQLWarning.hxx64
-rw-r--r--connectivity/source/inc/java/sql/Timestamp.hxx99
-rw-r--r--connectivity/source/inc/java/tools.hxx92
-rw-r--r--connectivity/source/inc/java/util/Date.hxx54
-rw-r--r--connectivity/source/inc/java/util/Property.hxx49
-rw-r--r--connectivity/source/inc/mysql/YCatalog.hxx73
-rw-r--r--connectivity/source/inc/mysql/YColumns.hxx70
-rw-r--r--connectivity/source/inc/mysql/YDriver.hxx126
-rw-r--r--connectivity/source/inc/mysql/YTable.hxx128
-rw-r--r--connectivity/source/inc/mysql/YTables.hxx88
-rw-r--r--connectivity/source/inc/mysql/YUser.hxx82
-rw-r--r--connectivity/source/inc/mysql/YUsers.hxx62
-rw-r--r--connectivity/source/inc/mysql/YViews.hxx64
-rw-r--r--connectivity/source/inc/odbc/OBoundParam.hxx222
-rw-r--r--connectivity/source/inc/odbc/OConnection.hxx160
-rw-r--r--connectivity/source/inc/odbc/ODatabaseMetaData.hxx224
-rw-r--r--connectivity/source/inc/odbc/ODatabaseMetaDataResultSet.hxx242
-rw-r--r--connectivity/source/inc/odbc/ODefs3.hxx92
-rw-r--r--connectivity/source/inc/odbc/ODriver.hxx90
-rw-r--r--connectivity/source/inc/odbc/OFunctiondefs.hxx175
-rw-r--r--connectivity/source/inc/odbc/OFunctions.hxx556
-rw-r--r--connectivity/source/inc/odbc/OPreparedStatement.hxx171
-rw-r--r--connectivity/source/inc/odbc/OResultSet.hxx327
-rw-r--r--connectivity/source/inc/odbc/OResultSetMetaData.hxx126
-rw-r--r--connectivity/source/inc/odbc/OStatement.hxx248
-rw-r--r--connectivity/source/inc/odbc/OTools.hxx276
-rw-r--r--connectivity/source/inc/odbc/odbcbasedllapi.hxx40
-rw-r--r--connectivity/source/inc/propertyids.hxx159
-rw-r--r--connectivity/source/inc/resource/adabas_res.hrc43
-rw-r--r--connectivity/source/inc/resource/ado_res.hrc50
-rw-r--r--connectivity/source/inc/resource/calc_res.hrc41
-rw-r--r--connectivity/source/inc/resource/common_res.hrc78
-rw-r--r--connectivity/source/inc/resource/conn_shared_res.hrc73
-rw-r--r--connectivity/source/inc/resource/dbase_res.hrc61
-rw-r--r--connectivity/source/inc/resource/evoab2_res.hrc42
-rw-r--r--connectivity/source/inc/resource/file_res.hrc48
-rw-r--r--connectivity/source/inc/resource/hsqldb_res.hrc47
-rw-r--r--connectivity/source/inc/resource/jdbc_log.hrc90
-rw-r--r--connectivity/source/inc/resource/kab_res.hrc43
-rw-r--r--connectivity/source/inc/resource/macab_res.hrc41
-rw-r--r--connectivity/source/inc/resource/mozab_res.hrc74
-rw-r--r--connectivity/source/inc/resource/sharedresources.hxx164
-rw-r--r--connectivity/source/inc/sqlscan.hxx90
-rw-r--r--connectivity/source/manager/exports.dxp2
-rw-r--r--connectivity/source/manager/makefile.mk85
-rw-r--r--connectivity/source/manager/mdrivermanager.cxx741
-rw-r--r--connectivity/source/manager/mdrivermanager.hxx146
-rw-r--r--connectivity/source/manager/mregistration.cxx79
-rw-r--r--connectivity/source/manager/sdbc.mxp.map52
-rw-r--r--connectivity/source/manager/sdbc2.component34
-rw-r--r--connectivity/source/parse/PColumn.cxx249
-rw-r--r--connectivity/source/parse/internalnode.cxx85
-rw-r--r--connectivity/source/parse/makefile.mk67
-rw-r--r--connectivity/source/parse/sqlbison.y4381
-rw-r--r--connectivity/source/parse/sqlflex.l809
-rw-r--r--connectivity/source/parse/sqliterator.cxx2247
-rw-r--r--connectivity/source/parse/sqlnode.cxx2826
-rw-r--r--connectivity/source/parse/wrap_sqlbison.cxx31
-rw-r--r--connectivity/source/parse/wrap_sqlflex.cxx35
-rw-r--r--connectivity/source/resource/conn_error_message.src99
-rw-r--r--connectivity/source/resource/conn_log_res.src312
-rw-r--r--connectivity/source/resource/conn_shared_res.src649
-rw-r--r--connectivity/source/resource/makefile.mk108
-rw-r--r--connectivity/source/resource/sharedresources.cxx242
-rw-r--r--connectivity/source/sdbcx/VCatalog.cxx241
-rw-r--r--connectivity/source/sdbcx/VCollection.cxx603
-rw-r--r--connectivity/source/sdbcx/VColumn.cxx229
-rw-r--r--connectivity/source/sdbcx/VDescriptor.cxx155
-rw-r--r--connectivity/source/sdbcx/VGroup.cxx183
-rw-r--r--connectivity/source/sdbcx/VIndex.cxx223
-rw-r--r--connectivity/source/sdbcx/VIndexColumn.cxx120
-rw-r--r--connectivity/source/sdbcx/VKey.cxx228
-rw-r--r--connectivity/source/sdbcx/VKeyColumn.cxx125
-rw-r--r--connectivity/source/sdbcx/VTable.cxx336
-rw-r--r--connectivity/source/sdbcx/VUser.cxx194
-rw-r--r--connectivity/source/sdbcx/VView.cxx150
-rw-r--r--connectivity/source/sdbcx/makefile.mk63
-rw-r--r--connectivity/source/simpledbt/charset_s.cxx73
-rw-r--r--connectivity/source/simpledbt/charset_s.hxx68
-rw-r--r--connectivity/source/simpledbt/dbtfactory.cxx114
-rw-r--r--connectivity/source/simpledbt/dbtfactory.hxx81
-rw-r--r--connectivity/source/simpledbt/makefile.mk53
-rw-r--r--connectivity/source/simpledbt/parsenode_s.cxx93
-rw-r--r--connectivity/source/simpledbt/parsenode_s.hxx81
-rw-r--r--connectivity/source/simpledbt/parser_s.cxx86
-rw-r--r--connectivity/source/simpledbt/parser_s.hxx74
-rw-r--r--connectivity/source/simpledbt/refbase.cxx64
-rw-r--r--connectivity/source/simpledbt/refbase.hxx61
-rw-r--r--connectivity/source/simpledbt/staticdbtools_s.cxx212
-rw-r--r--connectivity/source/simpledbt/staticdbtools_s.hxx207
-rwxr-xr-xconnectivity/target.pmk36
-rwxr-xr-xconnectivity/util/makefile.mk62
-rw-r--r--connectivity/version.mk119
-rw-r--r--connectivity/workben/TT/StartTest.classbin0 -> 183 bytes-rw-r--r--connectivity/workben/TT/StartTest.java293
-rw-r--r--connectivity/workben/iniParser/main.cxx189
-rw-r--r--connectivity/workben/iniParser/makefile.mk62
-rw-r--r--connectivity/workben/little/main.cxx117
-rw-r--r--connectivity/workben/little/makefile.mk60
-rw-r--r--connectivity/workben/skeleton/SResultSet.hxx246
-rw-r--r--connectivity/workben/skeleton/how_to_write_a_driver.txt51
-rw-r--r--connectivity/workben/testmoz/initUNO.cxx45
-rw-r--r--connectivity/workben/testmoz/main.cxx724
-rw-r--r--connectivity/workben/testmoz/makefile.mk70
-rw-r--r--connectivity/workben/testmoz/mozthread.cxx477
-rw-r--r--cosv/inc/cosv/bstream.hxx150
-rw-r--r--cosv/inc/cosv/comdline.hxx70
-rw-r--r--cosv/inc/cosv/comfunc.hxx125
-rw-r--r--cosv/inc/cosv/commandline.hxx180
-rw-r--r--cosv/inc/cosv/csv_env.hxx154
-rw-r--r--cosv/inc/cosv/csv_ostream.hxx134
-rw-r--r--cosv/inc/cosv/csv_precomp.h46
-rw-r--r--cosv/inc/cosv/datetime.hxx84
-rw-r--r--cosv/inc/cosv/dirchain.hxx180
-rw-r--r--cosv/inc/cosv/file.hxx137
-rw-r--r--cosv/inc/cosv/mbstream.hxx93
-rw-r--r--cosv/inc/cosv/openclose.hxx144
-rw-r--r--cosv/inc/cosv/persist.hxx105
-rw-r--r--cosv/inc/cosv/ploc.hxx129
-rw-r--r--cosv/inc/cosv/ploc_dir.hxx118
-rw-r--r--cosv/inc/cosv/plocroot.hxx80
-rw-r--r--cosv/inc/cosv/std_outp.hxx136
-rw-r--r--cosv/inc/cosv/str_types.hxx94
-rw-r--r--cosv/inc/cosv/streamstr.hxx391
-rw-r--r--cosv/inc/cosv/string.hxx579
-rw-r--r--cosv/inc/cosv/stringdata.hxx135
-rw-r--r--cosv/inc/cosv/tpl/dyn.hxx238
-rw-r--r--cosv/inc/cosv/tpl/funcall.hxx307
-rw-r--r--cosv/inc/cosv/tpl/processor.hxx183
-rw-r--r--cosv/inc/cosv/tpl/range.hxx191
-rw-r--r--cosv/inc/cosv/tpl/swelist.hxx369
-rw-r--r--cosv/inc/cosv/tpl/tpltools.hxx228
-rw-r--r--cosv/inc/cosv/tpl/vvector.hxx539
-rw-r--r--cosv/inc/cosv/x.hxx71
-rw-r--r--cosv/prj/build.lst16
-rw-r--r--cosv/prj/d.lst8
-rw-r--r--cosv/source/comphelp/badcast.cxx45
-rw-r--r--cosv/source/comphelp/makefile.mk55
-rw-r--r--cosv/source/fullcpp.mk57
-rw-r--r--cosv/source/inc/precomp.h36
-rw-r--r--cosv/source/service/comdline.cxx57
-rw-r--r--cosv/source/service/comfunc.cxx155
-rw-r--r--cosv/source/service/commandline.cxx342
-rw-r--r--cosv/source/service/csv_ostream.cxx92
-rw-r--r--cosv/source/service/datetime.cxx84
-rw-r--r--cosv/source/service/makefile.mk59
-rw-r--r--cosv/source/service/std_outp.cxx81
-rw-r--r--cosv/source/storage/dirchain.cxx155
-rw-r--r--cosv/source/storage/file.cxx242
-rw-r--r--cosv/source/storage/makefile.mk69
-rw-r--r--cosv/source/storage/mbstream.cxx119
-rw-r--r--cosv/source/storage/persist.cxx113
-rw-r--r--cosv/source/storage/ploc.cxx157
-rw-r--r--cosv/source/storage/ploc_dir.cxx364
-rw-r--r--cosv/source/storage/plocroot.cxx525
-rw-r--r--cosv/source/strings/makefile.mk58
-rw-r--r--cosv/source/strings/str_types.cxx44
-rw-r--r--cosv/source/strings/streamstr.cxx981
-rw-r--r--cosv/source/strings/string.cxx414
-rw-r--r--cosv/source/unittest/file_ut.cxx121
-rw-r--r--cosv/source/unittest/makefile.mk80
-rw-r--r--cosv/source/unittest/string_ut.cxx140
-rw-r--r--cosv/source/unittest/ut.hxx53
-rw-r--r--cosv/source/unittest/ut_main.cxx47
-rw-r--r--cosv/util/makefile.mk58
-rw-r--r--cppcanvas/inc/cppcanvas/basegfxfactory.hxx104
-rw-r--r--cppcanvas/inc/cppcanvas/bitmap.hxx80
-rw-r--r--cppcanvas/inc/cppcanvas/bitmapcanvas.hxx66
-rw-r--r--cppcanvas/inc/cppcanvas/canvas.hxx116
-rw-r--r--cppcanvas/inc/cppcanvas/canvasgraphic.hxx170
-rw-r--r--cppcanvas/inc/cppcanvas/color.hxx95
-rw-r--r--cppcanvas/inc/cppcanvas/customsprite.hxx53
-rw-r--r--cppcanvas/inc/cppcanvas/font.hxx65
-rw-r--r--cppcanvas/inc/cppcanvas/polypolygon.hxx93
-rw-r--r--cppcanvas/inc/cppcanvas/renderer.hxx147
-rw-r--r--cppcanvas/inc/cppcanvas/sprite.hxx116
-rw-r--r--cppcanvas/inc/cppcanvas/spritecanvas.hxx81
-rw-r--r--cppcanvas/inc/cppcanvas/text.hxx55
-rw-r--r--cppcanvas/inc/cppcanvas/vclfactory.hxx147
-rw-r--r--cppcanvas/inc/makefile.mk47
-rw-r--r--cppcanvas/inc/pch/precompiled_cppcanvas.cxx29
-rw-r--r--cppcanvas/inc/pch/precompiled_cppcanvas.hxx32
-rw-r--r--cppcanvas/prj/build.lst7
-rw-r--r--cppcanvas/prj/d.lst19
-rw-r--r--cppcanvas/source/inc/action.hxx164
-rw-r--r--cppcanvas/source/inc/canvasgraphichelper.hxx86
-rw-r--r--cppcanvas/source/inc/implrenderer.hxx187
-rw-r--r--cppcanvas/source/inc/tools.hxx56
-rw-r--r--cppcanvas/source/mtfrenderer/bitmapaction.cxx238
-rw-r--r--cppcanvas/source/mtfrenderer/bitmapaction.hxx81
-rw-r--r--cppcanvas/source/mtfrenderer/cachedprimitivebase.cxx93
-rw-r--r--cppcanvas/source/mtfrenderer/cachedprimitivebase.hxx95
-rw-r--r--cppcanvas/source/mtfrenderer/implrenderer.cxx3155
-rw-r--r--cppcanvas/source/mtfrenderer/lineaction.cxx167
-rw-r--r--cppcanvas/source/mtfrenderer/lineaction.hxx73
-rw-r--r--cppcanvas/source/mtfrenderer/makefile.mk57
-rw-r--r--cppcanvas/source/mtfrenderer/mtftools.cxx693
-rw-r--r--cppcanvas/source/mtfrenderer/mtftools.hxx270
-rw-r--r--cppcanvas/source/mtfrenderer/outdevstate.hxx145
-rw-r--r--cppcanvas/source/mtfrenderer/pointaction.cxx187
-rw-r--r--cppcanvas/source/mtfrenderer/pointaction.hxx78
-rw-r--r--cppcanvas/source/mtfrenderer/polypolyaction.cxx538
-rw-r--r--cppcanvas/source/mtfrenderer/polypolyaction.hxx101
-rw-r--r--cppcanvas/source/mtfrenderer/textaction.cxx2315
-rw-r--r--cppcanvas/source/mtfrenderer/textaction.hxx102
-rw-r--r--cppcanvas/source/mtfrenderer/transparencygroupaction.cxx592
-rw-r--r--cppcanvas/source/mtfrenderer/transparencygroupaction.hxx140
-rw-r--r--cppcanvas/source/tools/canvasgraphichelper.cxx151
-rw-r--r--cppcanvas/source/tools/makefile.mk50
-rw-r--r--cppcanvas/source/tools/tools.cxx62
-rw-r--r--cppcanvas/source/wrapper/basegfxfactory.cxx164
-rw-r--r--cppcanvas/source/wrapper/implbitmap.cxx126
-rw-r--r--cppcanvas/source/wrapper/implbitmap.hxx82
-rw-r--r--cppcanvas/source/wrapper/implbitmapcanvas.cxx73
-rw-r--r--cppcanvas/source/wrapper/implbitmapcanvas.hxx76
-rw-r--r--cppcanvas/source/wrapper/implcanvas.cxx141
-rw-r--r--cppcanvas/source/wrapper/implcanvas.hxx104
-rw-r--r--cppcanvas/source/wrapper/implcolor.cxx68
-rw-r--r--cppcanvas/source/wrapper/implcolor.hxx66
-rw-r--r--cppcanvas/source/wrapper/implcustomsprite.cxx82
-rw-r--r--cppcanvas/source/wrapper/implcustomsprite.hxx71
-rw-r--r--cppcanvas/source/wrapper/implfont.cxx91
-rw-r--r--cppcanvas/source/wrapper/implfont.hxx83
-rw-r--r--cppcanvas/source/wrapper/implpolypolygon.cxx201
-rw-r--r--cppcanvas/source/wrapper/implpolypolygon.hxx99
-rw-r--r--cppcanvas/source/wrapper/implsprite.cxx236
-rw-r--r--cppcanvas/source/wrapper/implsprite.hxx95
-rw-r--r--cppcanvas/source/wrapper/implspritecanvas.cxx159
-rw-r--r--cppcanvas/source/wrapper/implspritecanvas.hxx110
-rw-r--r--cppcanvas/source/wrapper/impltext.cxx101
-rw-r--r--cppcanvas/source/wrapper/impltext.hxx78
-rw-r--r--cppcanvas/source/wrapper/makefile.mk60
-rw-r--r--cppcanvas/source/wrapper/vclfactory.cxx363
-rw-r--r--cppcanvas/util/cppcanvas.flt4
-rw-r--r--cppcanvas/util/makefile.mk70
-rw-r--r--cppu/inc/com/sun/star/uno/Any.h383
-rw-r--r--cppu/inc/com/sun/star/uno/Any.hxx589
-rw-r--r--cppu/inc/com/sun/star/uno/Reference.h533
-rw-r--r--cppu/inc/com/sun/star/uno/Reference.hxx431
-rw-r--r--cppu/inc/com/sun/star/uno/Sequence.h288
-rw-r--r--cppu/inc/com/sun/star/uno/Sequence.hxx307
-rw-r--r--cppu/inc/com/sun/star/uno/Type.h458
-rw-r--r--cppu/inc/com/sun/star/uno/Type.hxx327
-rw-r--r--cppu/inc/com/sun/star/uno/genfunc.h69
-rw-r--r--cppu/inc/com/sun/star/uno/genfunc.hxx88
-rw-r--r--cppu/inc/cppu/Enterable.hxx114
-rw-r--r--cppu/inc/cppu/EnvDcp.hxx75
-rw-r--r--cppu/inc/cppu/EnvGuards.hxx113
-rw-r--r--cppu/inc/cppu/FreeReference.hxx166
-rw-r--r--cppu/inc/cppu/Map.hxx113
-rw-r--r--cppu/inc/cppu/Shield.hxx90
-rw-r--r--cppu/inc/cppu/helper/purpenv/Environment.hxx46
-rw-r--r--cppu/inc/cppu/helper/purpenv/Mapping.hxx68
-rw-r--r--cppu/inc/cppu/macros.hxx65
-rw-r--r--cppu/inc/cppu/unotype.hxx377
-rw-r--r--cppu/inc/makefile.mk48
-rw-r--r--cppu/inc/pch/precompiled_cppu.cxx29
-rw-r--r--cppu/inc/pch/precompiled_cppu.hxx32
-rw-r--r--cppu/inc/typelib/typeclass.h104
-rw-r--r--cppu/inc/typelib/typedescription.h1160
-rw-r--r--cppu/inc/typelib/typedescription.hxx226
-rw-r--r--cppu/inc/typelib/uik.h53
-rw-r--r--cppu/inc/uno/Enterable.h112
-rw-r--r--cppu/inc/uno/EnvDcp.h63
-rw-r--r--cppu/inc/uno/any2.h178
-rw-r--r--cppu/inc/uno/cuno.h50
-rw-r--r--cppu/inc/uno/current_context.h68
-rw-r--r--cppu/inc/uno/current_context.hxx127
-rw-r--r--cppu/inc/uno/data.h257
-rw-r--r--cppu/inc/uno/dispatcher.h97
-rw-r--r--cppu/inc/uno/dispatcher.hxx175
-rw-r--r--cppu/inc/uno/environment.h385
-rw-r--r--cppu/inc/uno/environment.hxx278
-rw-r--r--cppu/inc/uno/lbnames.h58
-rw-r--r--cppu/inc/uno/mapping.h203
-rw-r--r--cppu/inc/uno/mapping.hxx354
-rw-r--r--cppu/inc/uno/sequence2.h187
-rw-r--r--cppu/inc/uno/threadpool.h189
-rw-r--r--cppu/prj/build.lst12
-rw-r--r--cppu/prj/d.lst74
-rw-r--r--cppu/qa/makefile.mk96
-rw-r--r--cppu/qa/test_any.cxx2330
-rw-r--r--cppu/qa/test_recursion.cxx57
-rw-r--r--cppu/qa/test_reference.cxx156
-rw-r--r--cppu/qa/test_unotype.cxx812
-rw-r--r--cppu/qa/types.idl63
-rw-r--r--cppu/qa/version.map34
-rw-r--r--cppu/source/AffineBridge/AffineBridge.cxx364
-rw-r--r--cppu/source/AffineBridge/makefile.mk44
-rwxr-xr-xcppu/source/LogBridge/LogBridge.cxx277
-rwxr-xr-xcppu/source/LogBridge/makefile.mk44
-rw-r--r--cppu/source/UnsafeBridge/UnsafeBridge.cxx163
-rw-r--r--cppu/source/UnsafeBridge/makefile.mk44
-rw-r--r--cppu/source/cppu/cppu_opt.cxx81
-rw-r--r--cppu/source/cppu/makefile.mk45
-rw-r--r--cppu/source/helper/purpenv/Proxy.hxx89
-rw-r--r--cppu/source/helper/purpenv/export.mk19
-rw-r--r--cppu/source/helper/purpenv/helper_purpenv_Environment.cxx537
-rw-r--r--cppu/source/helper/purpenv/helper_purpenv_Mapping.cxx233
-rw-r--r--cppu/source/helper/purpenv/helper_purpenv_Proxy.cxx530
-rw-r--r--cppu/source/helper/purpenv/makefile.mk46
-rw-r--r--cppu/source/threadpool/current.cxx297
-rw-r--r--cppu/source/threadpool/current.hxx48
-rw-r--r--cppu/source/threadpool/jobqueue.cxx192
-rw-r--r--cppu/source/threadpool/jobqueue.hxx85
-rw-r--r--cppu/source/threadpool/makefile.mk49
-rw-r--r--cppu/source/threadpool/thread.cxx219
-rw-r--r--cppu/source/threadpool/thread.hxx91
-rw-r--r--cppu/source/threadpool/threadident.cxx135
-rw-r--r--cppu/source/threadpool/threadpool.cxx506
-rw-r--r--cppu/source/threadpool/threadpool.hxx140
-rw-r--r--cppu/source/typelib/makefile.mk45
-rw-r--r--cppu/source/typelib/static_types.cxx649
-rw-r--r--cppu/source/typelib/typelib.cxx2660
-rw-r--r--cppu/source/uno/EnvDcp.c49
-rw-r--r--cppu/source/uno/EnvStack.cxx380
-rw-r--r--cppu/source/uno/IdentityMapping.cxx106
-rw-r--r--cppu/source/uno/IdentityMapping.hxx39
-rw-r--r--cppu/source/uno/any.cxx150
-rw-r--r--cppu/source/uno/assign.hxx635
-rw-r--r--cppu/source/uno/cascade_mapping.cxx341
-rw-r--r--cppu/source/uno/cascade_mapping.hxx41
-rw-r--r--cppu/source/uno/constr.hxx267
-rw-r--r--cppu/source/uno/copy.hxx886
-rw-r--r--cppu/source/uno/data.cxx617
-rw-r--r--cppu/source/uno/destr.hxx438
-rw-r--r--cppu/source/uno/env_subst.cxx54
-rw-r--r--cppu/source/uno/env_subst.hxx41
-rw-r--r--cppu/source/uno/eq.hxx668
-rw-r--r--cppu/source/uno/lbenv.cxx1187
-rw-r--r--cppu/source/uno/lbmap.cxx692
-rw-r--r--cppu/source/uno/loadmodule.cxx55
-rw-r--r--cppu/source/uno/loadmodule.hxx51
-rw-r--r--cppu/source/uno/makefile.mk55
-rw-r--r--cppu/source/uno/prim.hxx206
-rw-r--r--cppu/source/uno/sequence.cxx1016
-rwxr-xr-xcppu/util/cppu.map127
-rw-r--r--cppu/util/empty.def6
-rw-r--r--cppu/util/extra.mk89
-rw-r--r--cppu/util/makefile.mk105
-rw-r--r--cppu/util/makefile.pmk32
-rw-r--r--cppu/util/purpenvhelper3MSC.map8
-rw-r--r--cppu/util/target.pmk53
-rw-r--r--cppu/util/uno_purpenvhelperC52.map9
-rw-r--r--cppu/util/uno_purpenvhelpergcc3.map8
-rw-r--r--cppu/util/uno_purpenvhelperwntgcc.map8
-rw-r--r--cppu/util/unsafe_os2.map7
-rwxr-xr-xcppuhelper/inc/cppuhelper/access_control.hxx124
-rw-r--r--cppuhelper/inc/cppuhelper/basemutex.hxx49
-rw-r--r--cppuhelper/inc/cppuhelper/bootstrap.hxx223
-rw-r--r--cppuhelper/inc/cppuhelper/compbase.hxx115
-rw-r--r--cppuhelper/inc/cppuhelper/compbase1.hxx137
-rw-r--r--cppuhelper/inc/cppuhelper/compbase10.hxx137
-rw-r--r--cppuhelper/inc/cppuhelper/compbase11.hxx137
-rw-r--r--cppuhelper/inc/cppuhelper/compbase12.hxx137
-rw-r--r--cppuhelper/inc/cppuhelper/compbase2.hxx137
-rw-r--r--cppuhelper/inc/cppuhelper/compbase3.hxx137
-rw-r--r--cppuhelper/inc/cppuhelper/compbase4.hxx137
-rw-r--r--cppuhelper/inc/cppuhelper/compbase5.hxx137
-rw-r--r--cppuhelper/inc/cppuhelper/compbase6.hxx137
-rw-r--r--cppuhelper/inc/cppuhelper/compbase7.hxx137
-rw-r--r--cppuhelper/inc/cppuhelper/compbase8.hxx137
-rw-r--r--cppuhelper/inc/cppuhelper/compbase9.hxx136
-rw-r--r--cppuhelper/inc/cppuhelper/compbase_ex.hxx176
-rw-r--r--cppuhelper/inc/cppuhelper/component.hxx120
-rw-r--r--cppuhelper/inc/cppuhelper/component_context.hxx96
-rw-r--r--cppuhelper/inc/cppuhelper/exc_hlp.hxx98
-rw-r--r--cppuhelper/inc/cppuhelper/factory.hxx280
-rw-r--r--cppuhelper/inc/cppuhelper/findsofficepath.h45
-rw-r--r--cppuhelper/inc/cppuhelper/implbase.hxx298
-rw-r--r--cppuhelper/inc/cppuhelper/implbase1.hxx295
-rw-r--r--cppuhelper/inc/cppuhelper/implbase10.hxx300
-rw-r--r--cppuhelper/inc/cppuhelper/implbase11.hxx301
-rw-r--r--cppuhelper/inc/cppuhelper/implbase12.hxx302
-rw-r--r--cppuhelper/inc/cppuhelper/implbase2.hxx291
-rw-r--r--cppuhelper/inc/cppuhelper/implbase3.hxx293
-rw-r--r--cppuhelper/inc/cppuhelper/implbase4.hxx294
-rw-r--r--cppuhelper/inc/cppuhelper/implbase5.hxx295
-rw-r--r--cppuhelper/inc/cppuhelper/implbase6.hxx296
-rw-r--r--cppuhelper/inc/cppuhelper/implbase7.hxx298
-rw-r--r--cppuhelper/inc/cppuhelper/implbase8.hxx298
-rw-r--r--cppuhelper/inc/cppuhelper/implbase9.hxx300
-rw-r--r--cppuhelper/inc/cppuhelper/implbase_ex.hxx174
-rw-r--r--cppuhelper/inc/cppuhelper/implbase_ex_post.hxx231
-rw-r--r--cppuhelper/inc/cppuhelper/implbase_ex_pre.hxx36
-rw-r--r--cppuhelper/inc/cppuhelper/implementationentry.hxx113
-rw-r--r--cppuhelper/inc/cppuhelper/interfacecontainer.h617
-rw-r--r--cppuhelper/inc/cppuhelper/interfacecontainer.hxx203
-rw-r--r--cppuhelper/inc/cppuhelper/propertysetmixin.hxx488
-rw-r--r--cppuhelper/inc/cppuhelper/propshlp.hxx640
-rw-r--r--cppuhelper/inc/cppuhelper/proptypehlp.h76
-rw-r--r--cppuhelper/inc/cppuhelper/proptypehlp.hxx530
-rw-r--r--cppuhelper/inc/cppuhelper/queryinterface.hxx541
-rw-r--r--cppuhelper/inc/cppuhelper/servicefactory.hxx122
-rw-r--r--cppuhelper/inc/cppuhelper/shlib.hxx84
-rw-r--r--cppuhelper/inc/cppuhelper/stdidlclass.hxx389
-rw-r--r--cppuhelper/inc/cppuhelper/typeprovider.hxx242
-rw-r--r--cppuhelper/inc/cppuhelper/unourl.hxx192
-rw-r--r--cppuhelper/inc/cppuhelper/weak.hxx172
-rw-r--r--cppuhelper/inc/cppuhelper/weakagg.hxx111
-rw-r--r--cppuhelper/inc/cppuhelper/weakref.hxx169
-rw-r--r--cppuhelper/inc/makefile.mk47
-rw-r--r--cppuhelper/inc/pch/precompiled_cppuhelper.cxx29
-rw-r--r--cppuhelper/inc/pch/precompiled_cppuhelper.hxx32
-rw-r--r--cppuhelper/prj/build.lst6
-rw-r--r--cppuhelper/prj/d.lst74
-rw-r--r--cppuhelper/qa/ifcontainer/cppu_ifcontainer.cxx283
-rw-r--r--cppuhelper/qa/ifcontainer/export.map7
-rw-r--r--cppuhelper/qa/ifcontainer/makefile.mk61
-rw-r--r--cppuhelper/qa/propertysetmixin/JavaSupplier.java317
-rw-r--r--cppuhelper/qa/propertysetmixin/comp_propertysetmixin.cxx429
-rw-r--r--cppuhelper/qa/propertysetmixin/makefile.mk138
-rw-r--r--cppuhelper/qa/propertysetmixin/manifest2
-rw-r--r--cppuhelper/qa/propertysetmixin/qa_propertysetmixin.cpp.component34
-rw-r--r--cppuhelper/qa/propertysetmixin/qa_propertysetmixin.java.component34
-rw-r--r--cppuhelper/qa/propertysetmixin/test.map34
-rw-r--r--cppuhelper/qa/propertysetmixin/test_propertysetmixin.cxx652
-rw-r--r--cppuhelper/qa/propertysetmixin/types.idl85
-rw-r--r--cppuhelper/qa/sce/test_unourl.sce1
-rw-r--r--cppuhelper/qa/unourl/cppu_unourl.cxx481
-rw-r--r--cppuhelper/qa/unourl/export.map7
-rw-r--r--cppuhelper/qa/unourl/makefile.mk61
-rw-r--r--cppuhelper/qa/weak/makefile.mk53
-rw-r--r--cppuhelper/qa/weak/test_weak.cxx109
-rw-r--r--cppuhelper/qa/weak/version.map34
-rw-r--r--cppuhelper/source/access_control.cxx149
-rw-r--r--cppuhelper/source/bootstrap.cxx670
-rwxr-xr-xcppuhelper/source/cc5_solaris_sparc.map389
-rw-r--r--cppuhelper/source/component.cxx248
-rw-r--r--cppuhelper/source/component_context.cxx899
-rw-r--r--cppuhelper/source/exc_thrower.cxx298
-rw-r--r--cppuhelper/source/factory.cxx1140
-rw-r--r--cppuhelper/source/findsofficepath.c205
-rw-r--r--cppuhelper/source/gcc3.map384
-rw-r--r--cppuhelper/source/gcc3os2.map377
-rw-r--r--cppuhelper/source/implbase.cxx471
-rw-r--r--cppuhelper/source/implbase_ex.cxx469
-rw-r--r--cppuhelper/source/implementationentry.cxx102
-rw-r--r--cppuhelper/source/interfacecontainer.cxx729
-rw-r--r--cppuhelper/source/macro_expander.cxx198
-rw-r--r--cppuhelper/source/macro_expander.hxx60
-rw-r--r--cppuhelper/source/makefile.mk192
-rw-r--r--cppuhelper/source/msvc_win32_intel.map280
-rw-r--r--cppuhelper/source/propertysetmixin.cxx1428
-rw-r--r--cppuhelper/source/propshlp.cxx1241
-rw-r--r--cppuhelper/source/servicefactory.cxx661
-rw-r--r--cppuhelper/source/shlib.cxx609
-rw-r--r--cppuhelper/source/stdidlclass.cxx259
-rw-r--r--cppuhelper/source/tdmgr.cxx762
-rw-r--r--cppuhelper/source/typeprovider.cxx326
-rw-r--r--cppuhelper/source/unorc30
-rw-r--r--cppuhelper/source/unourl.cxx298
-rw-r--r--cppuhelper/source/weak.cxx553
-rw-r--r--cppuhelper/test/bootstrap/TestEnv.cxx128
-rw-r--r--cppuhelper/test/bootstrap/TestEnv.def8
-rw-r--r--cppuhelper/test/bootstrap/bootstrap.test.cxx320
-rw-r--r--cppuhelper/test/bootstrap/makefile.mk61
-rw-r--r--cppuhelper/test/cfg_data/instance/uno/components.xml76
-rw-r--r--cppuhelper/test/cfg_data/template/uno/components.xml24
-rw-r--r--cppuhelper/test/cfg_test.cxx303
-rw-r--r--cppuhelper/test/helpertest.idl84
-rw-r--r--cppuhelper/test/loader/loader.test.cxx205
-rw-r--r--cppuhelper/test/loader/makefile.mk59
-rw-r--r--cppuhelper/test/makefile.mk168
-rw-r--r--cppuhelper/test/testcmp/TestComponent.cxx247
-rw-r--r--cppuhelper/test/testcmp/TestComponent.hxx56
-rwxr-xr-xcppuhelper/test/testcmp/TestComponent.uno.def11
-rw-r--r--cppuhelper/test/testcmp/makefile.mk49
-rw-r--r--cppuhelper/test/testcontainer.cxx153
-rw-r--r--cppuhelper/test/testdefaultbootstrapping.cxx84
-rw-r--r--cppuhelper/test/testdefaultbootstrapping.pl277
-rw-r--r--cppuhelper/test/testhelper.cxx104
-rw-r--r--cppuhelper/test/testhelper.hxx31
-rw-r--r--cppuhelper/test/testidlclass.cxx227
-rw-r--r--cppuhelper/test/testimplhelper.cxx581
-rw-r--r--cppuhelper/test/testlib/UNO.pm68
-rwxr-xr-xcppuhelper/test/testlib/defbootstrap.map8
-rw-r--r--cppuhelper/test/testlib/defbootstrap_lib.cxx117
-rwxr-xr-xcppuhelper/test/testlib/makefile.mk103
-rw-r--r--cppuhelper/test/testpropshlp.cxx1181
-rw-r--r--cppuhelper/test/testproptyphlp.cxx84
-rw-r--r--cppuhelper/unotypes/cppuhelper/detail/XExceptionThrower.idl47
-rw-r--r--cppuhelper/unotypes/makefile.mk52
-rw-r--r--cppunit/ldflags.patch11
-rw-r--r--cppunit/makefile.mk192
-rw-r--r--cppunit/ooo-DllPlugInTester.mk50
-rw-r--r--cppunit/ooo-cppunit_dll.mk100
-rw-r--r--cppunit/prj/build.lst2
-rw-r--r--cppunit/prj/d.lst29
-rw-r--r--cppunit/solarisfinite.patch14
-rw-r--r--cppunit/warnings.patch22
-rw-r--r--cppunit/windows.patch12
-rw-r--r--cpputools/prj/build.lst7
-rw-r--r--cpputools/prj/d.lst10
-rw-r--r--cpputools/source/registercomponent/makefile.mk75
-rw-r--r--cpputools/source/registercomponent/registercomponent.cxx846
-rw-r--r--cpputools/source/regsingleton/makefile.mk79
-rw-r--r--cpputools/source/regsingleton/regsingleton.cxx173
-rw-r--r--cpputools/source/sp2bv/makefile.mk56
-rw-r--r--cpputools/source/sp2bv/readme.txt10
-rw-r--r--cpputools/source/sp2bv/sp2bv.cxx141
-rw-r--r--cpputools/source/unoexe/makefile.mk91
-rw-r--r--cpputools/source/unoexe/unoexe.cxx899
-rwxr-xr-xcrashrep/prj/build.lst5
-rwxr-xr-xcrashrep/prj/d.lst3
-rw-r--r--crashrep/source/all/crashrep.ulf220
-rw-r--r--crashrep/source/all/makefile.mk49
-rwxr-xr-xcrashrep/source/unx/main.cxx1122
-rwxr-xr-xcrashrep/source/unx/makefile.mk74
-rwxr-xr-xcrashrep/source/win32/base64.cpp83
-rwxr-xr-xcrashrep/source/win32/base64.h45
-rwxr-xr-xcrashrep/source/win32/ctrylnglist.txt29
-rwxr-xr-xcrashrep/source/win32/makefile.mk89
-rwxr-xr-xcrashrep/source/win32/rcfooter.txt1
-rwxr-xr-xcrashrep/source/win32/rcheader.txt114
-rwxr-xr-xcrashrep/source/win32/rctemplate.txt192
-rwxr-xr-xcrashrep/source/win32/resource.h120
-rwxr-xr-xcrashrep/source/win32/soreport.cpp2982
-rw-r--r--cui/inc/makefile.mk48
-rw-r--r--cui/inc/pch/precompiled_cui.cxx29
-rw-r--r--cui/inc/pch/precompiled_cui.hxx964
-rw-r--r--cui/prj/build.lst9
-rwxr-xr-xcui/prj/d.lst8
-rw-r--r--cui/source/customize/acccfg.cxx1540
-rw-r--r--cui/source/customize/acccfg.hrc75
-rw-r--r--cui/source/customize/acccfg.src364
-rw-r--r--cui/source/customize/cfg.cxx5776
-rw-r--r--cui/source/customize/cfg.hrc105
-rw-r--r--cui/source/customize/cfg.src891
-rw-r--r--cui/source/customize/cfgutil.cxx1691
-rw-r--r--cui/source/customize/eventdlg.cxx247
-rw-r--r--cui/source/customize/eventdlg.hrc43
-rw-r--r--cui/source/customize/eventdlg.hxx78
-rw-r--r--cui/source/customize/eventdlg.src114
-rw-r--r--cui/source/customize/macropg.cxx1054
-rw-r--r--cui/source/customize/macropg.hrc101
-rw-r--r--cui/source/customize/macropg.src490
-rw-r--r--cui/source/customize/macropg_impl.hxx73
-rw-r--r--cui/source/customize/makefile.mk63
-rw-r--r--cui/source/customize/selector.cxx1211
-rw-r--r--cui/source/customize/selector.hrc57
-rw-r--r--cui/source/customize/selector.src212
-rw-r--r--cui/source/dialogs/SpellAttrib.cxx172
-rw-r--r--cui/source/dialogs/SpellAttrib.hxx173
-rwxr-xr-xcui/source/dialogs/SpellDialog.cxx2159
-rw-r--r--cui/source/dialogs/SpellDialog.hrc55
-rw-r--r--cui/source/dialogs/SpellDialog.src257
-rw-r--r--cui/source/dialogs/charmap.hrc51
-rw-r--r--cui/source/dialogs/charmap.src140
-rw-r--r--cui/source/dialogs/commonlingui.cxx243
-rw-r--r--cui/source/dialogs/commonlingui.hxx159
-rw-r--r--cui/source/dialogs/commonlingui.src153
-rw-r--r--cui/source/dialogs/cuicharmap.cxx589
-rw-r--r--cui/source/dialogs/cuifmsearch.cxx965
-rw-r--r--cui/source/dialogs/cuigaldlg.cxx1266
-rw-r--r--cui/source/dialogs/cuigrfflt.cxx756
-rw-r--r--cui/source/dialogs/cuihyperdlg.cxx412
-rw-r--r--cui/source/dialogs/cuiimapdlg.hrc44
-rw-r--r--cui/source/dialogs/cuiimapdlg.src154
-rw-r--r--cui/source/dialogs/cuiimapwnd.cxx97
-rw-r--r--cui/source/dialogs/cuitbxform.cxx65
-rw-r--r--cui/source/dialogs/dlgname.cxx236
-rw-r--r--cui/source/dialogs/dlgname.hrc46
-rw-r--r--cui/source/dialogs/dlgname.src275
-rw-r--r--cui/source/dialogs/fmsearch.hrc86
-rw-r--r--cui/source/dialogs/fmsearch.src337
-rw-r--r--cui/source/dialogs/gallery.src490
-rw-r--r--cui/source/dialogs/grfflt.hrc80
-rw-r--r--cui/source/dialogs/grfflt.src462
-rw-r--r--cui/source/dialogs/hangulhanjadlg.cxx1899
-rw-r--r--cui/source/dialogs/hangulhanjadlg.hrc197
-rw-r--r--cui/source/dialogs/hangulhanjadlg.src454
-rw-r--r--cui/source/dialogs/hldocntp.cxx487
-rw-r--r--cui/source/dialogs/hldoctp.cxx374
-rw-r--r--cui/source/dialogs/hlinettp.cxx544
-rw-r--r--cui/source/dialogs/hlmailtp.cxx361
-rw-r--r--cui/source/dialogs/hlmarkwn.cxx543
-rw-r--r--cui/source/dialogs/hlmarkwn.hrc34
-rw-r--r--cui/source/dialogs/hlmarkwn.src95
-rw-r--r--cui/source/dialogs/hltpbase.cxx870
-rw-r--r--cui/source/dialogs/hyperdlg.hrc100
-rw-r--r--cui/source/dialogs/hyperdlg.src1008
-rw-r--r--cui/source/dialogs/hyphen.cxx657
-rw-r--r--cui/source/dialogs/hyphen.hrc46
-rw-r--r--cui/source/dialogs/hyphen.src132
-rw-r--r--cui/source/dialogs/iconcdlg.cxx1231
-rw-r--r--cui/source/dialogs/iconcdlg.src60
-rw-r--r--cui/source/dialogs/insdlg.cxx1052
-rw-r--r--cui/source/dialogs/insrc.cxx82
-rw-r--r--cui/source/dialogs/insrc.hrc40
-rw-r--r--cui/source/dialogs/insrc.src119
-rw-r--r--cui/source/dialogs/linkdlg.cxx713
-rwxr-xr-xcui/source/dialogs/makefile.mk120
-rw-r--r--cui/source/dialogs/multifil.cxx184
-rw-r--r--cui/source/dialogs/multipat.cxx360
-rw-r--r--cui/source/dialogs/multipat.hrc44
-rw-r--r--cui/source/dialogs/multipat.src153
-rw-r--r--cui/source/dialogs/newtabledlg.cxx71
-rw-r--r--cui/source/dialogs/newtabledlg.hrc35
-rw-r--r--cui/source/dialogs/newtabledlg.src138
-rwxr-xr-xcui/source/dialogs/passwdomdlg.cxx343
-rwxr-xr-xcui/source/dialogs/passwdomdlg.hrc61
-rwxr-xr-xcui/source/dialogs/passwdomdlg.src228
-rw-r--r--cui/source/dialogs/pastedlg.cxx307
-rw-r--r--cui/source/dialogs/plfilter.cxx126
-rw-r--r--cui/source/dialogs/postdlg.cxx259
-rw-r--r--cui/source/dialogs/postdlg.hrc51
-rw-r--r--cui/source/dialogs/postdlg.src162
-rw-r--r--cui/source/dialogs/scriptdlg.cxx1624
-rw-r--r--cui/source/dialogs/scriptdlg.hrc80
-rw-r--r--cui/source/dialogs/scriptdlg.src314
-rw-r--r--cui/source/dialogs/sdrcelldlg.cxx101
-rw-r--r--cui/source/dialogs/sdrcelldlg.src141
-rw-r--r--cui/source/dialogs/showcols.cxx138
-rw-r--r--cui/source/dialogs/showcols.src104
-rw-r--r--cui/source/dialogs/splitcelldlg.cxx111
-rw-r--r--cui/source/dialogs/splitcelldlg.hrc42
-rw-r--r--cui/source/dialogs/splitcelldlg.src137
-rw-r--r--cui/source/dialogs/srchxtra.cxx289
-rw-r--r--cui/source/dialogs/srchxtra.hrc51
-rw-r--r--cui/source/dialogs/srchxtra.src283
-rw-r--r--cui/source/dialogs/svuidlg.hrc134
-rw-r--r--cui/source/dialogs/svuidlg.src752
-rw-r--r--cui/source/dialogs/tbxform.src66
-rwxr-xr-xcui/source/dialogs/thesdlg.cxx751
-rw-r--r--cui/source/dialogs/thesdlg.hrc52
-rw-r--r--cui/source/dialogs/thesdlg.src150
-rwxr-xr-xcui/source/dialogs/thesdlg_impl.hxx227
-rw-r--r--cui/source/dialogs/winpluginlib.cpp226
-rw-r--r--cui/source/dialogs/zoom.cxx490
-rw-r--r--cui/source/dialogs/zoom.hrc53
-rw-r--r--cui/source/dialogs/zoom.src169
-rw-r--r--cui/source/factory/cuiexp.cxx51
-rw-r--r--cui/source/factory/cuiresmgr.cxx50
-rwxr-xr-xcui/source/factory/dlgfact.cxx1973
-rw-r--r--cui/source/factory/dlgfact.hxx799
-rw-r--r--cui/source/factory/init.cxx53
-rw-r--r--cui/source/factory/makefile.mk52
-rw-r--r--cui/source/inc/ControlFocusHelper.hxx48
-rw-r--r--cui/source/inc/SpellDialog.hxx263
-rw-r--r--cui/source/inc/acccfg.hxx236
-rw-r--r--cui/source/inc/align.hxx101
-rw-r--r--cui/source/inc/autocdlg.hxx518
-rw-r--r--cui/source/inc/backgrnd.hxx170
-rw-r--r--cui/source/inc/bbdlg.hxx56
-rw-r--r--cui/source/inc/border.hxx156
-rw-r--r--cui/source/inc/cfg.hxx819
-rw-r--r--cui/source/inc/cfgutil.hxx212
-rw-r--r--cui/source/inc/chardlg.hxx396
-rw-r--r--cui/source/inc/connect.hxx118
-rw-r--r--cui/source/inc/cuicharmap.hxx143
-rw-r--r--cui/source/inc/cuifmsearch.hxx227
-rw-r--r--cui/source/inc/cuigaldlg.hxx372
-rw-r--r--cui/source/inc/cuigrfflt.hxx253
-rw-r--r--cui/source/inc/cuihyperdlg.hxx114
-rw-r--r--cui/source/inc/cuiimapwnd.hxx54
-rw-r--r--cui/source/inc/cuioptgenrl.hxx127
-rwxr-xr-xcui/source/inc/cuires.hrc442
-rw-r--r--cui/source/inc/cuisrchdlg.hxx72
-rw-r--r--cui/source/inc/cuitabarea.hxx802
-rw-r--r--cui/source/inc/cuitabline.hxx430
-rw-r--r--cui/source/inc/cuitbxform.hxx29
-rw-r--r--cui/source/inc/dbregister.hxx152
-rw-r--r--cui/source/inc/defdlgname.hxx40
-rw-r--r--cui/source/inc/dialmgr.hxx48
-rw-r--r--cui/source/inc/dlgname.hxx204
-rw-r--r--cui/source/inc/dstribut.hxx125
-rw-r--r--cui/source/inc/gallery.hrc101
-rw-r--r--cui/source/inc/grfpage.hxx140
-rw-r--r--cui/source/inc/hangulhanjadlg.hxx347
-rw-r--r--cui/source/inc/headertablistbox.hxx68
-rw-r--r--cui/source/inc/helpid.hrc390
-rw-r--r--cui/source/inc/hldocntp.hxx76
-rw-r--r--cui/source/inc/hldoctp.hxx93
-rw-r--r--cui/source/inc/hlinettp.hxx107
-rw-r--r--cui/source/inc/hlmailtp.hxx77
-rw-r--r--cui/source/inc/hlmarkwn.hxx111
-rw-r--r--cui/source/inc/hlmarkwn_def.hxx36
-rw-r--r--cui/source/inc/hltpbase.hxx208
-rw-r--r--cui/source/inc/hyphen.hxx72
-rw-r--r--cui/source/inc/iconcdlg.hxx270
-rw-r--r--cui/source/inc/insdlg.hxx212
-rw-r--r--cui/source/inc/insrc.hxx69
-rw-r--r--cui/source/inc/internationaloptions.hxx58
-rw-r--r--cui/source/inc/labdlg.hxx144
-rw-r--r--cui/source/inc/linkdlg.hxx134
-rw-r--r--cui/source/inc/macroass.hxx134
-rw-r--r--cui/source/inc/macropg.hxx175
-rw-r--r--cui/source/inc/measure.hxx127
-rw-r--r--cui/source/inc/multifil.hxx59
-rw-r--r--cui/source/inc/multipat.hxx89
-rw-r--r--cui/source/inc/newtabledlg.hxx62
-rw-r--r--cui/source/inc/numfmt.hxx188
-rw-r--r--cui/source/inc/numpages.hxx469
-rw-r--r--cui/source/inc/optasian.hxx81
-rw-r--r--cui/source/inc/optdict.hxx188
-rw-r--r--cui/source/inc/optimprove.hxx118
-rw-r--r--cui/source/inc/optlingu.hxx181
-rw-r--r--cui/source/inc/optpath.hxx116
-rw-r--r--cui/source/inc/page.hxx238
-rw-r--r--cui/source/inc/paragrph.hxx326
-rwxr-xr-xcui/source/inc/passwdomdlg.hxx62
-rw-r--r--cui/source/inc/pastedlg.hxx95
-rw-r--r--cui/source/inc/postdlg.hxx126
-rw-r--r--cui/source/inc/radiobtnbox.hxx62
-rw-r--r--cui/source/inc/scriptdlg.hxx237
-rw-r--r--cui/source/inc/sdrcelldlg.hxx63
-rw-r--r--cui/source/inc/selector.hxx240
-rw-r--r--cui/source/inc/showcols.hxx66
-rw-r--r--cui/source/inc/splitcelldlg.hxx69
-rw-r--r--cui/source/inc/srchxtra.hxx108
-rw-r--r--cui/source/inc/tabstpge.hxx159
-rw-r--r--cui/source/inc/textanim.hxx128
-rw-r--r--cui/source/inc/textattr.hxx135
-rw-r--r--cui/source/inc/thesdlg.hxx61
-rw-r--r--cui/source/inc/transfrm.hxx305
-rw-r--r--cui/source/inc/treeopt.hxx352
-rw-r--r--cui/source/inc/zoom.hxx114
-rw-r--r--cui/source/options/cfgchart.cxx324
-rw-r--r--cui/source/options/cfgchart.hxx116
-rw-r--r--cui/source/options/connpoolconfig.cxx223
-rw-r--r--cui/source/options/connpoolconfig.hxx54
-rw-r--r--cui/source/options/connpooloptions.cxx507
-rw-r--r--cui/source/options/connpooloptions.hrc49
-rw-r--r--cui/source/options/connpooloptions.hxx92
-rw-r--r--cui/source/options/connpooloptions.src169
-rw-r--r--cui/source/options/connpoolsettings.cxx113
-rw-r--r--cui/source/options/connpoolsettings.hxx107
-rw-r--r--cui/source/options/cuisrchdlg.cxx94
-rw-r--r--cui/source/options/dbregister.cxx470
-rw-r--r--cui/source/options/dbregister.hrc42
-rw-r--r--cui/source/options/dbregister.src93
-rw-r--r--cui/source/options/dbregisterednamesconfig.cxx142
-rw-r--r--cui/source/options/dbregisterednamesconfig.hxx54
-rw-r--r--cui/source/options/dbregistersettings.cxx76
-rw-r--r--cui/source/options/dbregistersettings.hxx95
-rw-r--r--cui/source/options/doclinkdialog.cxx224
-rw-r--r--cui/source/options/doclinkdialog.hrc50
-rw-r--r--cui/source/options/doclinkdialog.hxx93
-rw-r--r--cui/source/options/doclinkdialog.src155
-rw-r--r--cui/source/options/fontsubs.cxx611
-rw-r--r--cui/source/options/fontsubs.hrc62
-rw-r--r--cui/source/options/fontsubs.hxx134
-rw-r--r--cui/source/options/fontsubs.src202
-rw-r--r--cui/source/options/internationaloptions.cxx164
-rw-r--r--cui/source/options/internationaloptions.hrc72
-rw-r--r--cui/source/options/internationaloptions.src108
-rw-r--r--cui/source/options/makefile.mk118
-rw-r--r--cui/source/options/optHeaderTabListbox.cxx87
-rw-r--r--cui/source/options/optHeaderTabListbox.hxx45
-rw-r--r--cui/source/options/optaccessibility.cxx185
-rw-r--r--cui/source/options/optaccessibility.hrc84
-rw-r--r--cui/source/options/optaccessibility.hxx65
-rw-r--r--cui/source/options/optaccessibility.src161
-rw-r--r--cui/source/options/optasian.cxx467
-rw-r--r--cui/source/options/optasian.hrc49
-rw-r--r--cui/source/options/optasian.src183
-rw-r--r--cui/source/options/optchart.cxx236
-rw-r--r--cui/source/options/optchart.hrc37
-rw-r--r--cui/source/options/optchart.hxx89
-rw-r--r--cui/source/options/optchart.src85
-rw-r--r--cui/source/options/optcolor.cxx1720
-rw-r--r--cui/source/options/optcolor.hrc219
-rw-r--r--cui/source/options/optcolor.hxx81
-rw-r--r--cui/source/options/optcolor.src560
-rw-r--r--cui/source/options/optctl.cxx170
-rw-r--r--cui/source/options/optctl.hrc58
-rw-r--r--cui/source/options/optctl.hxx70
-rw-r--r--cui/source/options/optctl.src122
-rwxr-xr-xcui/source/options/optdict.cxx803
-rw-r--r--cui/source/options/optdict.hrc65
-rw-r--r--cui/source/options/optdict.src288
-rw-r--r--cui/source/options/optfltr.cxx436
-rw-r--r--cui/source/options/optfltr.hrc55
-rw-r--r--cui/source/options/optfltr.hxx115
-rw-r--r--cui/source/options/optfltr.src208
-rw-r--r--cui/source/options/optgdlg.cxx1874
-rw-r--r--cui/source/options/optgdlg.hrc205
-rw-r--r--cui/source/options/optgdlg.hxx217
-rw-r--r--cui/source/options/optgdlg.src674
-rw-r--r--cui/source/options/optgenrl.cxx561
-rw-r--r--cui/source/options/optgenrl.hrc85
-rw-r--r--cui/source/options/optgenrl.src332
-rw-r--r--cui/source/options/opthtml.cxx267
-rw-r--r--cui/source/options/opthtml.hrc63
-rw-r--r--cui/source/options/opthtml.hxx89
-rw-r--r--cui/source/options/opthtml.src303
-rw-r--r--cui/source/options/optimprove.cxx199
-rw-r--r--cui/source/options/optimprove.hrc50
-rw-r--r--cui/source/options/optimprove.src124
-rw-r--r--cui/source/options/optimprove2.cxx272
-rw-r--r--cui/source/options/optinet2.cxx1924
-rwxr-xr-xcui/source/options/optinet2.hrc171
-rwxr-xr-xcui/source/options/optinet2.hxx340
-rw-r--r--cui/source/options/optinet2.src652
-rw-r--r--cui/source/options/optjava.cxx1085
-rw-r--r--cui/source/options/optjava.hrc83
-rw-r--r--cui/source/options/optjava.hxx193
-rw-r--r--cui/source/options/optjava.src299
-rw-r--r--cui/source/options/optjsearch.cxx382
-rw-r--r--cui/source/options/optjsearch.hrc50
-rw-r--r--cui/source/options/optjsearch.hxx93
-rw-r--r--cui/source/options/optjsearch.src239
-rw-r--r--cui/source/options/optlingu.cxx2552
-rw-r--r--cui/source/options/optlingu.hrc88
-rw-r--r--cui/source/options/optlingu.src364
-rw-r--r--cui/source/options/optmemory.cxx271
-rw-r--r--cui/source/options/optmemory.hrc86
-rw-r--r--cui/source/options/optmemory.hxx89
-rw-r--r--cui/source/options/optmemory.src213
-rw-r--r--cui/source/options/optpath.cxx859
-rw-r--r--cui/source/options/optpath.hrc43
-rw-r--r--cui/source/options/optpath.src202
-rw-r--r--cui/source/options/optsave.cxx779
-rw-r--r--cui/source/options/optsave.hrc81
-rw-r--r--cui/source/options/optsave.hxx105
-rw-r--r--cui/source/options/optsave.src335
-rw-r--r--cui/source/options/optspell.hrc42
-rw-r--r--cui/source/options/optspell.src130
-rw-r--r--cui/source/options/optupdt.cxx412
-rw-r--r--cui/source/options/optupdt.hrc49
-rw-r--r--cui/source/options/optupdt.hxx81
-rw-r--r--cui/source/options/optupdt.src118
-rw-r--r--cui/source/options/radiobtnbox.cxx115
-rw-r--r--cui/source/options/readonlyimage.cxx81
-rw-r--r--cui/source/options/readonlyimage.hxx43
-rw-r--r--cui/source/options/readonlyimage.src52
-rw-r--r--cui/source/options/sdbcdriverenum.cxx122
-rw-r--r--cui/source/options/sdbcdriverenum.hxx75
-rw-r--r--cui/source/options/securityoptions.cxx104
-rw-r--r--cui/source/options/securityoptions.hrc80
-rw-r--r--cui/source/options/securityoptions.hxx91
-rw-r--r--cui/source/options/securityoptions.src172
-rw-r--r--cui/source/options/treeopt.cxx2849
-rw-r--r--cui/source/options/treeopt.hrc100
-rw-r--r--cui/source/options/treeopt.src352
-rwxr-xr-xcui/source/options/webconninfo.cxx372
-rw-r--r--cui/source/options/webconninfo.hrc62
-rw-r--r--cui/source/options/webconninfo.hxx85
-rw-r--r--cui/source/options/webconninfo.src106
-rw-r--r--cui/source/tabpages/align.cxx296
-rw-r--r--cui/source/tabpages/align.hrc84
-rw-r--r--cui/source/tabpages/align.src258
-rw-r--r--cui/source/tabpages/autocdlg.cxx2867
-rw-r--r--cui/source/tabpages/autocdlg.hrc159
-rw-r--r--cui/source/tabpages/autocdlg.src901
-rw-r--r--cui/source/tabpages/backgrnd.cxx1977
-rw-r--r--cui/source/tabpages/backgrnd.hrc70
-rw-r--r--cui/source/tabpages/backgrnd.src317
-rw-r--r--cui/source/tabpages/bbdlg.cxx72
-rw-r--r--cui/source/tabpages/bbdlg.src85
-rw-r--r--cui/source/tabpages/border.cxx1256
-rw-r--r--cui/source/tabpages/border.hrc106
-rw-r--r--cui/source/tabpages/border.src439
-rw-r--r--cui/source/tabpages/borderconn.cxx304
-rw-r--r--cui/source/tabpages/borderconn.hxx69
-rw-r--r--cui/source/tabpages/chardlg.cxx4022
-rw-r--r--cui/source/tabpages/chardlg.h71
-rw-r--r--cui/source/tabpages/chardlg.hrc181
-rw-r--r--cui/source/tabpages/chardlg.src1174
-rw-r--r--cui/source/tabpages/connect.cxx564
-rw-r--r--cui/source/tabpages/connect.hrc45
-rw-r--r--cui/source/tabpages/connect.src275
-rw-r--r--cui/source/tabpages/dstribut.cxx244
-rw-r--r--cui/source/tabpages/dstribut.hrc55
-rw-r--r--cui/source/tabpages/dstribut.src301
-rw-r--r--cui/source/tabpages/frmdirlbox.src93
-rw-r--r--cui/source/tabpages/grfpage.cxx835
-rw-r--r--cui/source/tabpages/grfpage.hrc53
-rw-r--r--cui/source/tabpages/grfpage.src343
-rw-r--r--cui/source/tabpages/labdlg.cxx650
-rw-r--r--cui/source/tabpages/labdlg.hrc77
-rw-r--r--cui/source/tabpages/labdlg.src305
-rw-r--r--cui/source/tabpages/macroass.cxx667
-rw-r--r--cui/source/tabpages/macroass.hrc82
-rw-r--r--cui/source/tabpages/macroass.src146
-rw-r--r--cui/source/tabpages/makefile.mk110
-rw-r--r--cui/source/tabpages/measure.cxx874
-rw-r--r--cui/source/tabpages/measure.hrc53
-rw-r--r--cui/source/tabpages/measure.src321
-rw-r--r--cui/source/tabpages/numfmt.cxx1950
-rw-r--r--cui/source/tabpages/numfmt.hrc74
-rw-r--r--cui/source/tabpages/numfmt.src304
-rw-r--r--cui/source/tabpages/numpages.cxx4055
-rw-r--r--cui/source/tabpages/numpages.hrc132
-rw-r--r--cui/source/tabpages/numpages.src841
-rw-r--r--cui/source/tabpages/page.cxx1771
-rw-r--r--cui/source/tabpages/page.h71
-rw-r--r--cui/source/tabpages/page.hrc84
-rw-r--r--cui/source/tabpages/page.src522
-rw-r--r--cui/source/tabpages/paragrph.cxx2365
-rw-r--r--cui/source/tabpages/paragrph.hrc121
-rw-r--r--cui/source/tabpages/paragrph.src770
-rw-r--r--cui/source/tabpages/strings.src178
-rw-r--r--cui/source/tabpages/swpossizetabpage.cxx1971
-rw-r--r--cui/source/tabpages/swpossizetabpage.hrc59
-rw-r--r--cui/source/tabpages/swpossizetabpage.hxx158
-rw-r--r--cui/source/tabpages/swpossizetabpage.src313
-rw-r--r--cui/source/tabpages/tabarea.cxx368
-rw-r--r--cui/source/tabpages/tabarea.hrc187
-rw-r--r--cui/source/tabpages/tabarea.src1621
-rw-r--r--cui/source/tabpages/tabline.cxx298
-rw-r--r--cui/source/tabpages/tabline.hrc106
-rw-r--r--cui/source/tabpages/tabline.src838
-rw-r--r--cui/source/tabpages/tabstpge.cxx744
-rw-r--r--cui/source/tabpages/tabstpge.hrc63
-rw-r--r--cui/source/tabpages/tabstpge.src246
-rw-r--r--cui/source/tabpages/textanim.cxx757
-rw-r--r--cui/source/tabpages/textanim.hrc47
-rw-r--r--cui/source/tabpages/textanim.src334
-rw-r--r--cui/source/tabpages/textattr.cxx798
-rw-r--r--cui/source/tabpages/textattr.hrc46
-rw-r--r--cui/source/tabpages/textattr.src255
-rw-r--r--cui/source/tabpages/tparea.cxx2580
-rw-r--r--cui/source/tabpages/tpbitmap.cxx1161
-rw-r--r--cui/source/tabpages/tpcolor.cxx1273
-rw-r--r--cui/source/tabpages/tpgradnt.cxx935
-rw-r--r--cui/source/tabpages/tphatch.cxx893
-rw-r--r--cui/source/tabpages/tpline.cxx1923
-rw-r--r--cui/source/tabpages/tplnedef.cxx1012
-rw-r--r--cui/source/tabpages/tplneend.cxx747
-rw-r--r--cui/source/tabpages/tpshadow.cxx610
-rw-r--r--cui/source/tabpages/transfrm.cxx1697
-rw-r--r--cui/source/tabpages/transfrm.hrc76
-rw-r--r--cui/source/tabpages/transfrm.src625
-rw-r--r--cui/util/cui.map7
-rw-r--r--cui/util/hidother.src204
-rw-r--r--cui/util/makefile.mk106
-rw-r--r--cui/util/makefile.pmk40
-rw-r--r--curl/curl-7.19.7.patch83
-rw-r--r--curl/curl-7.19.7_mingw.patch24
-rw-r--r--curl/curl-7.19.7_win.patch19
-rw-r--r--curl/makefile.mk158
-rw-r--r--curl/prj/build.lst3
-rw-r--r--curl/prj/d.lst15
-rw-r--r--dbaccess/inc/AsyncronousLink.hxx71
-rw-r--r--dbaccess/inc/IController.hxx140
-rw-r--r--dbaccess/inc/IEnvironment.hxx77
-rw-r--r--dbaccess/inc/IReference.hxx44
-rw-r--r--dbaccess/inc/ToolBoxHelper.hxx95
-rw-r--r--dbaccess/inc/controllerframe.hxx84
-rw-r--r--dbaccess/inc/dataview.hxx99
-rw-r--r--dbaccess/inc/dbaccess_helpid.hrc468
-rw-r--r--dbaccess/inc/dbaccess_slotid.hrc117
-rw-r--r--dbaccess/inc/dbaccessdllapi.h43
-rw-r--r--dbaccess/inc/genericcontroller.hxx542
-rw-r--r--dbaccess/inc/makefile.mk47
-rw-r--r--dbaccess/inc/pch/precompiled_dbaccess.cxx29
-rw-r--r--dbaccess/inc/pch/precompiled_dbaccess.hxx520
-rw-r--r--dbaccess/inc/singledoccontroller.hxx234
-rw-r--r--dbaccess/prj/build.lst34
-rw-r--r--dbaccess/prj/d.lst60
-rw-r--r--dbaccess/prj/dba.xml97
-rw-r--r--dbaccess/prj/dbu.xml134
-rw-r--r--dbaccess/qa/complex/dbaccess/ApplicationController.java187
-rw-r--r--dbaccess/qa/complex/dbaccess/Beamer.java185
-rw-r--r--dbaccess/qa/complex/dbaccess/CRMBasedTestCase.java91
-rwxr-xr-xdbaccess/qa/complex/dbaccess/CopyTableInterActionHandler.java50
-rwxr-xr-xdbaccess/qa/complex/dbaccess/CopyTableWizard.java244
-rw-r--r--dbaccess/qa/complex/dbaccess/DataSource.java122
-rwxr-xr-xdbaccess/qa/complex/dbaccess/DatabaseApplication.java98
-rw-r--r--dbaccess/qa/complex/dbaccess/DatabaseDocument.java1009
-rw-r--r--dbaccess/qa/complex/dbaccess/FileHelper.java44
-rw-r--r--dbaccess/qa/complex/dbaccess/Parser.java217
-rw-r--r--dbaccess/qa/complex/dbaccess/PropertyBag.java324
-rw-r--r--dbaccess/qa/complex/dbaccess/Query.java136
-rw-r--r--dbaccess/qa/complex/dbaccess/QueryInQuery.java202
-rw-r--r--dbaccess/qa/complex/dbaccess/RowSet.java1036
-rw-r--r--dbaccess/qa/complex/dbaccess/RowSetEventListener.java111
-rwxr-xr-xdbaccess/qa/complex/dbaccess/SingleSelectQueryComposer.java401
-rw-r--r--dbaccess/qa/complex/dbaccess/TestCase.java163
-rw-r--r--dbaccess/qa/complex/dbaccess/UISettings.java160
-rw-r--r--dbaccess/qa/complex/dbaccess/dbaccess.sce12
-rwxr-xr-xdbaccess/qa/complex/dbaccess/makefile.mk133
-rw-r--r--dbaccess/qa/unoapi/Test.java52
-rw-r--r--dbaccess/qa/unoapi/dbaccess.props6
-rw-r--r--dbaccess/qa/unoapi/dbaccess.sce15
-rw-r--r--dbaccess/qa/unoapi/knownissues.xcl62
-rw-r--r--dbaccess/qa/unoapi/makefile.mk48
-rwxr-xr-xdbaccess/qa/unoapi/testdocuments/TestDB/testDB.dbfbin0 -> 949 bytes-rwxr-xr-xdbaccess/qa/unoapi/testdocuments/TestDB/testDB.dbtbin0 -> 512 bytes-rw-r--r--dbaccess/source/core/api/BookmarkSet.cxx278
-rw-r--r--dbaccess/source/core/api/BookmarkSet.hxx75
-rw-r--r--dbaccess/source/core/api/CIndexColumn.hxx59
-rw-r--r--dbaccess/source/core/api/CIndexes.cxx123
-rw-r--r--dbaccess/source/core/api/CIndexes.hxx58
-rw-r--r--dbaccess/source/core/api/CRowSetColumn.cxx111
-rw-r--r--dbaccess/source/core/api/CRowSetColumn.hxx66
-rw-r--r--dbaccess/source/core/api/CRowSetDataColumn.cxx292
-rw-r--r--dbaccess/source/core/api/CRowSetDataColumn.hxx113
-rw-r--r--dbaccess/source/core/api/CacheSet.cxx753
-rw-r--r--dbaccess/source/core/api/CacheSet.hxx179
-rw-r--r--dbaccess/source/core/api/FilteredContainer.cxx498
-rw-r--r--dbaccess/source/core/api/HelperCollections.cxx122
-rw-r--r--dbaccess/source/core/api/HelperCollections.hxx128
-rw-r--r--dbaccess/source/core/api/KeySet.cxx1703
-rw-r--r--dbaccess/source/core/api/KeySet.hxx232
-rw-r--r--dbaccess/source/core/api/OptimisticSet.cxx764
-rw-r--r--dbaccess/source/core/api/OptimisticSet.hxx109
-rw-r--r--dbaccess/source/core/api/PrivateRow.cxx142
-rw-r--r--dbaccess/source/core/api/PrivateRow.hxx69
-rw-r--r--dbaccess/source/core/api/RowSet.cxx3057
-rw-r--r--dbaccess/source/core/api/RowSet.hxx544
-rw-r--r--dbaccess/source/core/api/RowSetBase.cxx1577
-rw-r--r--dbaccess/source/core/api/RowSetBase.hxx463
-rw-r--r--dbaccess/source/core/api/RowSetCache.cxx1685
-rw-r--r--dbaccess/source/core/api/RowSetCache.hxx273
-rw-r--r--dbaccess/source/core/api/RowSetCacheIterator.cxx152
-rw-r--r--dbaccess/source/core/api/RowSetCacheIterator.hxx92
-rw-r--r--dbaccess/source/core/api/RowSetRow.hxx108
-rw-r--r--dbaccess/source/core/api/SingleSelectQueryComposer.cxx1875
-rw-r--r--dbaccess/source/core/api/StaticSet.cxx392
-rw-r--r--dbaccess/source/core/api/StaticSet.hxx93
-rw-r--r--dbaccess/source/core/api/TableDeco.cxx758
-rw-r--r--dbaccess/source/core/api/View.cxx161
-rw-r--r--dbaccess/source/core/api/WrappedResultSet.cxx255
-rw-r--r--dbaccess/source/core/api/WrappedResultSet.hxx79
-rw-r--r--dbaccess/source/core/api/callablestatement.cxx344
-rw-r--r--dbaccess/source/core/api/column.cxx481
-rw-r--r--dbaccess/source/core/api/columnsettings.cxx182
-rw-r--r--dbaccess/source/core/api/datacolumn.cxx485
-rw-r--r--dbaccess/source/core/api/datacolumn.hxx129
-rw-r--r--dbaccess/source/core/api/datasettings.cxx254
-rw-r--r--dbaccess/source/core/api/definitioncolumn.cxx673
-rw-r--r--dbaccess/source/core/api/makefile.mk82
-rw-r--r--dbaccess/source/core/api/preparedstatement.cxx473
-rw-r--r--dbaccess/source/core/api/query.cxx445
-rw-r--r--dbaccess/source/core/api/query.hxx186
-rw-r--r--dbaccess/source/core/api/querycomposer.cxx406
-rw-r--r--dbaccess/source/core/api/querycontainer.cxx475
-rw-r--r--dbaccess/source/core/api/querydescriptor.cxx323
-rw-r--r--dbaccess/source/core/api/querydescriptor.hxx183
-rw-r--r--dbaccess/source/core/api/resultcolumn.cxx357
-rw-r--r--dbaccess/source/core/api/resultcolumn.hxx101
-rw-r--r--dbaccess/source/core/api/resultset.cxx1208
-rw-r--r--dbaccess/source/core/api/resultset.hxx278
-rw-r--r--dbaccess/source/core/api/statement.cxx696
-rw-r--r--dbaccess/source/core/api/table.cxx417
-rw-r--r--dbaccess/source/core/api/tablecontainer.cxx516
-rw-r--r--dbaccess/source/core/api/viewcontainer.cxx274
-rw-r--r--dbaccess/source/core/dataaccess/ComponentDefinition.cxx328
-rw-r--r--dbaccess/source/core/dataaccess/ComponentDefinition.hxx207
-rw-r--r--dbaccess/source/core/dataaccess/ContentHelper.cxx762
-rw-r--r--dbaccess/source/core/dataaccess/ModelImpl.cxx1502
-rw-r--r--dbaccess/source/core/dataaccess/ModelImpl.hxx641
-rw-r--r--dbaccess/source/core/dataaccess/SharedConnection.cxx186
-rw-r--r--dbaccess/source/core/dataaccess/SharedConnection.hxx172
-rw-r--r--dbaccess/source/core/dataaccess/bookmarkcontainer.cxx421
-rw-r--r--dbaccess/source/core/dataaccess/bookmarkcontainer.hxx208
-rw-r--r--dbaccess/source/core/dataaccess/commandcontainer.cxx115
-rw-r--r--dbaccess/source/core/dataaccess/commandcontainer.hxx93
-rw-r--r--dbaccess/source/core/dataaccess/commanddefinition.cxx179
-rw-r--r--dbaccess/source/core/dataaccess/commanddefinition.hxx144
-rw-r--r--dbaccess/source/core/dataaccess/connection.cxx946
-rw-r--r--dbaccess/source/core/dataaccess/connection.hxx252
-rw-r--r--dbaccess/source/core/dataaccess/dataaccessdescriptor.cxx348
-rw-r--r--dbaccess/source/core/dataaccess/databasecontext.cxx809
-rw-r--r--dbaccess/source/core/dataaccess/databasecontext.hxx213
-rw-r--r--dbaccess/source/core/dataaccess/databasedocument.cxx2191
-rw-r--r--dbaccess/source/core/dataaccess/databasedocument.hxx709
-rw-r--r--dbaccess/source/core/dataaccess/databaseregistrations.cxx399
-rw-r--r--dbaccess/source/core/dataaccess/databaseregistrations.hxx51
-rwxr-xr-xdbaccess/source/core/dataaccess/datasource.cxx1476
-rw-r--r--dbaccess/source/core/dataaccess/datasource.hxx305
-rw-r--r--dbaccess/source/core/dataaccess/definitioncontainer.cxx748
-rw-r--r--dbaccess/source/core/dataaccess/documentcontainer.cxx833
-rw-r--r--dbaccess/source/core/dataaccess/documentcontainer.hxx168
-rw-r--r--dbaccess/source/core/dataaccess/documentdefinition.cxx2404
-rw-r--r--dbaccess/source/core/dataaccess/documentdefinition.hxx410
-rw-r--r--dbaccess/source/core/dataaccess/documenteventexecutor.cxx231
-rw-r--r--dbaccess/source/core/dataaccess/documenteventexecutor.hxx78
-rw-r--r--dbaccess/source/core/dataaccess/documenteventnotifier.cxx319
-rw-r--r--dbaccess/source/core/dataaccess/documenteventnotifier.hxx144
-rw-r--r--dbaccess/source/core/dataaccess/documentevents.cxx265
-rw-r--r--dbaccess/source/core/dataaccess/documentevents.hxx90
-rw-r--r--dbaccess/source/core/dataaccess/intercept.cxx447
-rw-r--r--dbaccess/source/core/dataaccess/intercept.hxx190
-rw-r--r--dbaccess/source/core/dataaccess/makefile.mk69
-rw-r--r--dbaccess/source/core/dataaccess/myucp_datasupplier.cxx430
-rw-r--r--dbaccess/source/core/dataaccess/myucp_datasupplier.hxx83
-rw-r--r--dbaccess/source/core/dataaccess/myucp_resultset.cxx106
-rw-r--r--dbaccess/source/core/dataaccess/myucp_resultset.hxx67
-rw-r--r--dbaccess/source/core/inc/ContainerListener.hxx97
-rw-r--r--dbaccess/source/core/inc/ContainerMediator.hxx123
-rw-r--r--dbaccess/source/core/inc/ContentHelper.hxx249
-rw-r--r--dbaccess/source/core/inc/DatabaseDataProvider.hxx278
-rw-r--r--dbaccess/source/core/inc/FilteredContainer.hxx144
-rw-r--r--dbaccess/source/core/inc/PropertyForward.hxx96
-rw-r--r--dbaccess/source/core/inc/RefreshListener.hxx59
-rw-r--r--dbaccess/source/core/inc/SingleSelectQueryComposer.hxx283
-rw-r--r--dbaccess/source/core/inc/TableDeco.hxx220
-rw-r--r--dbaccess/source/core/inc/View.hxx91
-rw-r--r--dbaccess/source/core/inc/callablestatement.hxx95
-rw-r--r--dbaccess/source/core/inc/column.hxx258
-rw-r--r--dbaccess/source/core/inc/columnsettings.hxx109
-rw-r--r--dbaccess/source/core/inc/commandbase.hxx71
-rw-r--r--dbaccess/source/core/inc/composertools.hxx142
-rw-r--r--dbaccess/source/core/inc/containerapprove.hxx80
-rw-r--r--dbaccess/source/core/inc/core_resource.hrc113
-rw-r--r--dbaccess/source/core/inc/core_resource.hxx130
-rw-r--r--dbaccess/source/core/inc/datasettings.hxx109
-rw-r--r--dbaccess/source/core/inc/dbamiscres.hrc62
-rw-r--r--dbaccess/source/core/inc/definitioncolumn.hxx318
-rw-r--r--dbaccess/source/core/inc/definitioncontainer.hxx375
-rw-r--r--dbaccess/source/core/inc/module_dba.hxx45
-rw-r--r--dbaccess/source/core/inc/object.hxx40
-rw-r--r--dbaccess/source/core/inc/objectnameapproval.hxx95
-rw-r--r--dbaccess/source/core/inc/preparedstatement.hxx132
-rw-r--r--dbaccess/source/core/inc/querycomposer.hxx139
-rw-r--r--dbaccess/source/core/inc/querycontainer.hxx234
-rw-r--r--dbaccess/source/core/inc/recovery/dbdocrecovery.hxx92
-rw-r--r--dbaccess/source/core/inc/sdbcoretools.hxx88
-rw-r--r--dbaccess/source/core/inc/statement.hxx220
-rw-r--r--dbaccess/source/core/inc/table.hxx164
-rw-r--r--dbaccess/source/core/inc/tablecontainer.hxx149
-rw-r--r--dbaccess/source/core/inc/userinformation.hxx50
-rw-r--r--dbaccess/source/core/inc/veto.hxx79
-rw-r--r--dbaccess/source/core/inc/viewcontainer.hxx139
-rw-r--r--dbaccess/source/core/misc/ContainerListener.cxx131
-rw-r--r--dbaccess/source/core/misc/ContainerMediator.cxx281
-rw-r--r--dbaccess/source/core/misc/DatabaseDataProvider.cxx1169
-rw-r--r--dbaccess/source/core/misc/PropertyForward.cxx173
-rw-r--r--dbaccess/source/core/misc/apitools.cxx155
-rw-r--r--dbaccess/source/core/misc/dbastrings.cxx49
-rw-r--r--dbaccess/source/core/misc/dsntypes.cxx629
-rw-r--r--dbaccess/source/core/misc/makefile.mk60
-rw-r--r--dbaccess/source/core/misc/module_dba.cxx43
-rw-r--r--dbaccess/source/core/misc/objectnameapproval.cxx116
-rw-r--r--dbaccess/source/core/misc/sdbcoretools.cxx175
-rw-r--r--dbaccess/source/core/misc/services.cxx116
-rw-r--r--dbaccess/source/core/misc/userinformation.cxx59
-rw-r--r--dbaccess/source/core/misc/veto.cxx78
-rw-r--r--dbaccess/source/core/recovery/dbdocrecovery.cxx436
-rw-r--r--dbaccess/source/core/recovery/makefile.mk58
-rw-r--r--dbaccess/source/core/recovery/settingsimport.cxx294
-rw-r--r--dbaccess/source/core/recovery/settingsimport.hxx190
-rw-r--r--dbaccess/source/core/recovery/storagestream.cxx126
-rw-r--r--dbaccess/source/core/recovery/storagestream.hxx109
-rw-r--r--dbaccess/source/core/recovery/storagetextstream.cxx130
-rw-r--r--dbaccess/source/core/recovery/storagetextstream.hxx66
-rw-r--r--dbaccess/source/core/recovery/storagexmlstream.cxx197
-rw-r--r--dbaccess/source/core/recovery/storagexmlstream.hxx113
-rw-r--r--dbaccess/source/core/recovery/subcomponentloader.cxx200
-rw-r--r--dbaccess/source/core/recovery/subcomponentloader.hxx87
-rw-r--r--dbaccess/source/core/recovery/subcomponentrecovery.cxx702
-rw-r--r--dbaccess/source/core/recovery/subcomponentrecovery.hxx126
-rw-r--r--dbaccess/source/core/recovery/subcomponents.hxx88
-rw-r--r--dbaccess/source/core/resource/core_resource.cxx119
-rw-r--r--dbaccess/source/core/resource/makefile.mk48
-rw-r--r--dbaccess/source/core/resource/strings.src326
-rw-r--r--dbaccess/source/ext/adabas/ANewDb.cxx161
-rw-r--r--dbaccess/source/ext/adabas/ANewDb.hxx100
-rw-r--r--dbaccess/source/ext/adabas/ASQLNameEdit.hxx61
-rw-r--r--dbaccess/source/ext/adabas/ASqlNameEdit.cxx80
-rw-r--r--dbaccess/source/ext/adabas/Acomponentmodule.cxx303
-rw-r--r--dbaccess/source/ext/adabas/Acomponentmodule.hxx279
-rw-r--r--dbaccess/source/ext/adabas/AdabasNewDb.cxx805
-rw-r--r--dbaccess/source/ext/adabas/AdabasNewDb.hrc78
-rw-r--r--dbaccess/source/ext/adabas/AdabasNewDb.hxx165
-rw-r--r--dbaccess/source/ext/adabas/AdabasNewDb.src455
-rw-r--r--dbaccess/source/ext/adabas/Aservices.cxx93
-rw-r--r--dbaccess/source/ext/adabas/Astringconstants.cxx60
-rw-r--r--dbaccess/source/ext/adabas/Astringconstants.hrc103
-rw-r--r--dbaccess/source/ext/adabas/adabasui.component34
-rw-r--r--dbaccess/source/ext/adabas/adabasui.dxp3
-rw-r--r--dbaccess/source/ext/adabas/adabasui_resource.hrc92
-rw-r--r--dbaccess/source/ext/adabas/adabasuistrings.cxx37
-rw-r--r--dbaccess/source/ext/adabas/adabasuistrings.hrc42
-rw-r--r--dbaccess/source/ext/adabas/exports.dxp2
-rw-r--r--dbaccess/source/ext/adabas/makefile.mk100
-rw-r--r--dbaccess/source/ext/macromigration/dbmm.component34
-rw-r--r--dbaccess/source/ext/macromigration/dbmm_global.hrc86
-rw-r--r--dbaccess/source/ext/macromigration/dbmm_module.cxx45
-rw-r--r--dbaccess/source/ext/macromigration/dbmm_module.hxx45
-rw-r--r--dbaccess/source/ext/macromigration/dbmm_services.cxx58
-rw-r--r--dbaccess/source/ext/macromigration/dbmm_types.cxx63
-rw-r--r--dbaccess/source/ext/macromigration/dbmm_types.hxx69
-rw-r--r--dbaccess/source/ext/macromigration/docinteraction.cxx142
-rw-r--r--dbaccess/source/ext/macromigration/docinteraction.hxx95
-rw-r--r--dbaccess/source/ext/macromigration/macromigration.hrc96
-rw-r--r--dbaccess/source/ext/macromigration/macromigration.src461
-rw-r--r--dbaccess/source/ext/macromigration/macromigrationdialog.cxx628
-rw-r--r--dbaccess/source/ext/macromigration/macromigrationdialog.hxx94
-rw-r--r--dbaccess/source/ext/macromigration/macromigrationpages.cxx361
-rw-r--r--dbaccess/source/ext/macromigration/macromigrationpages.hxx181
-rw-r--r--dbaccess/source/ext/macromigration/macromigrationwizard.cxx263
-rw-r--r--dbaccess/source/ext/macromigration/makefile.mk109
-rw-r--r--dbaccess/source/ext/macromigration/migrationengine.cxx1990
-rw-r--r--dbaccess/source/ext/macromigration/migrationengine.hxx100
-rw-r--r--dbaccess/source/ext/macromigration/migrationerror.hxx173
-rw-r--r--dbaccess/source/ext/macromigration/migrationlog.cxx512
-rw-r--r--dbaccess/source/ext/macromigration/migrationlog.hxx128
-rw-r--r--dbaccess/source/ext/macromigration/migrationprogress.hxx58
-rw-r--r--dbaccess/source/ext/macromigration/progresscapture.cxx135
-rw-r--r--dbaccess/source/ext/macromigration/progresscapture.hxx79
-rw-r--r--dbaccess/source/ext/macromigration/progressmixer.cxx216
-rw-r--r--dbaccess/source/ext/macromigration/progressmixer.hxx100
-rw-r--r--dbaccess/source/ext/macromigration/rangeprogressbar.hxx104
-rw-r--r--dbaccess/source/filter/migration/cfgimport.cxx1260
-rw-r--r--dbaccess/source/filter/migration/cfgimport.hxx223
-rw-r--r--dbaccess/source/filter/migration/cfgservices.cxx94
-rw-r--r--dbaccess/source/filter/migration/dbacfg.component34
-rw-r--r--dbaccess/source/filter/migration/makefile.mk82
-rw-r--r--dbaccess/source/filter/xml/dbaxml.component49
-rw-r--r--dbaccess/source/filter/xml/dbloader2.cxx658
-rw-r--r--dbaccess/source/filter/xml/makefile.mk122
-rw-r--r--dbaccess/source/filter/xml/xmlAutoStyle.cxx109
-rw-r--r--dbaccess/source/filter/xml/xmlAutoStyle.hxx66
-rw-r--r--dbaccess/source/filter/xml/xmlColumn.cxx221
-rw-r--r--dbaccess/source/filter/xml/xmlColumn.hxx66
-rw-r--r--dbaccess/source/filter/xml/xmlComponent.cxx155
-rw-r--r--dbaccess/source/filter/xml/xmlComponent.hxx64
-rw-r--r--dbaccess/source/filter/xml/xmlConnectionData.cxx137
-rw-r--r--dbaccess/source/filter/xml/xmlConnectionData.hxx60
-rw-r--r--dbaccess/source/filter/xml/xmlConnectionResource.cxx130
-rw-r--r--dbaccess/source/filter/xml/xmlConnectionResource.hxx55
-rw-r--r--dbaccess/source/filter/xml/xmlDataSource.cxx309
-rw-r--r--dbaccess/source/filter/xml/xmlDataSource.hxx66
-rw-r--r--dbaccess/source/filter/xml/xmlDataSourceInfo.cxx173
-rw-r--r--dbaccess/source/filter/xml/xmlDataSourceInfo.hxx52
-rw-r--r--dbaccess/source/filter/xml/xmlDataSourceSetting.cxx271
-rw-r--r--dbaccess/source/filter/xml/xmlDataSourceSetting.hxx81
-rw-r--r--dbaccess/source/filter/xml/xmlDataSourceSettings.cxx114
-rw-r--r--dbaccess/source/filter/xml/xmlDataSourceSettings.hxx53
-rw-r--r--dbaccess/source/filter/xml/xmlDatabase.cxx158
-rw-r--r--dbaccess/source/filter/xml/xmlDatabase.hxx56
-rw-r--r--dbaccess/source/filter/xml/xmlDatabaseDescription.cxx122
-rw-r--r--dbaccess/source/filter/xml/xmlDatabaseDescription.hxx60
-rw-r--r--dbaccess/source/filter/xml/xmlDocuments.cxx150
-rw-r--r--dbaccess/source/filter/xml/xmlDocuments.hxx79
-rw-r--r--dbaccess/source/filter/xml/xmlEnums.hxx172
-rw-r--r--dbaccess/source/filter/xml/xmlExport.cxx1455
-rw-r--r--dbaccess/source/filter/xml/xmlExport.hxx243
-rw-r--r--dbaccess/source/filter/xml/xmlFileBasedDatabase.cxx153
-rw-r--r--dbaccess/source/filter/xml/xmlFileBasedDatabase.hxx54
-rw-r--r--dbaccess/source/filter/xml/xmlHelper.cxx218
-rw-r--r--dbaccess/source/filter/xml/xmlHelper.hxx76
-rw-r--r--dbaccess/source/filter/xml/xmlHierarchyCollection.cxx203
-rw-r--r--dbaccess/source/filter/xml/xmlHierarchyCollection.hxx75
-rw-r--r--dbaccess/source/filter/xml/xmlLogin.cxx157
-rw-r--r--dbaccess/source/filter/xml/xmlLogin.hxx52
-rw-r--r--dbaccess/source/filter/xml/xmlQuery.cxx174
-rw-r--r--dbaccess/source/filter/xml/xmlQuery.hxx66
-rw-r--r--dbaccess/source/filter/xml/xmlServerDatabase.cxx193
-rw-r--r--dbaccess/source/filter/xml/xmlServerDatabase.hxx55
-rw-r--r--dbaccess/source/filter/xml/xmlStyleImport.cxx363
-rw-r--r--dbaccess/source/filter/xml/xmlStyleImport.hxx157
-rw-r--r--dbaccess/source/filter/xml/xmlTable.cxx295
-rw-r--r--dbaccess/source/filter/xml/xmlTable.hxx91
-rw-r--r--dbaccess/source/filter/xml/xmlTableFilterList.cxx132
-rw-r--r--dbaccess/source/filter/xml/xmlTableFilterList.hxx79
-rw-r--r--dbaccess/source/filter/xml/xmlTableFilterPattern.cxx76
-rw-r--r--dbaccess/source/filter/xml/xmlTableFilterPattern.hxx56
-rw-r--r--dbaccess/source/filter/xml/xmlfilter.cxx981
-rw-r--r--dbaccess/source/filter/xml/xmlfilter.hxx210
-rw-r--r--dbaccess/source/filter/xml/xmlservices.cxx104
-rwxr-xr-xdbaccess/source/inc/OAuthenticationContinuation.hxx82
-rw-r--r--dbaccess/source/inc/apitools.hxx455
-rw-r--r--dbaccess/source/inc/cfg_reghelper.hxx60
-rw-r--r--dbaccess/source/inc/cfgstrings.hrc99
-rw-r--r--dbaccess/source/inc/constasciistring.hxx61
-rw-r--r--dbaccess/source/inc/dbadllapi.hxx41
-rw-r--r--dbaccess/source/inc/dbastrings.hrc53
-rw-r--r--dbaccess/source/inc/dbu_reghelper.hxx60
-rw-r--r--dbaccess/source/inc/dbustrings.hrc78
-rw-r--r--dbaccess/source/inc/dsntypes.hxx241
-rw-r--r--dbaccess/source/inc/flt_reghelper.hxx60
-rw-r--r--dbaccess/source/inc/registrationhelper.hxx158
-rw-r--r--dbaccess/source/inc/sdbtstrings.hrc42
-rw-r--r--dbaccess/source/inc/stringconstants.hrc433
-rw-r--r--dbaccess/source/inc/stringconstants.inc269
-rw-r--r--dbaccess/source/inc/xmlstrings.hrc45
-rw-r--r--dbaccess/source/sdbtools/connection/connectiondependent.hxx156
-rw-r--r--dbaccess/source/sdbtools/connection/connectiontools.cxx197
-rw-r--r--dbaccess/source/sdbtools/connection/connectiontools.hxx125
-rw-r--r--dbaccess/source/sdbtools/connection/datasourcemetadata.cxx93
-rw-r--r--dbaccess/source/sdbtools/connection/datasourcemetadata.hxx97
-rw-r--r--dbaccess/source/sdbtools/connection/makefile.mk49
-rw-r--r--dbaccess/source/sdbtools/connection/objectnames.cxx498
-rw-r--r--dbaccess/source/sdbtools/connection/objectnames.hxx98
-rw-r--r--dbaccess/source/sdbtools/connection/tablename.cxx275
-rw-r--r--dbaccess/source/sdbtools/connection/tablename.hxx109
-rw-r--r--dbaccess/source/sdbtools/inc/module_sdbt.hxx47
-rw-r--r--dbaccess/source/sdbtools/inc/sdbt_resource.hrc48
-rw-r--r--dbaccess/source/sdbtools/misc/makefile.mk47
-rw-r--r--dbaccess/source/sdbtools/misc/module_sdbt.cxx45
-rw-r--r--dbaccess/source/sdbtools/misc/sdbt_services.cxx86
-rw-r--r--dbaccess/source/sdbtools/resource/makefile.mk45
-rw-r--r--dbaccess/source/sdbtools/resource/sdbt_strings.src65
-rw-r--r--dbaccess/source/shared/cfg_reghelper.cxx49
-rw-r--r--dbaccess/source/shared/cfgstrings.cxx91
-rw-r--r--dbaccess/source/shared/dbu_reghelper.cxx48
-rw-r--r--dbaccess/source/shared/dbustrings.cxx73
-rw-r--r--dbaccess/source/shared/flt_reghelper.cxx49
-rw-r--r--dbaccess/source/shared/makefile.mk76
-rw-r--r--dbaccess/source/shared/registrationhelper.cxx167
-rw-r--r--dbaccess/source/shared/sdbtstrings.cxx35
-rw-r--r--dbaccess/source/shared/xmlstrings.cxx36
-rw-r--r--dbaccess/source/ui/app/AppController.cxx3016
-rw-r--r--dbaccess/source/ui/app/AppController.hxx576
-rw-r--r--dbaccess/source/ui/app/AppControllerDnD.cxx942
-rw-r--r--dbaccess/source/ui/app/AppControllerGen.cxx856
-rw-r--r--dbaccess/source/ui/app/AppDetailPageHelper.cxx1524
-rw-r--r--dbaccess/source/ui/app/AppDetailPageHelper.hxx403
-rw-r--r--dbaccess/source/ui/app/AppDetailView.cxx1007
-rw-r--r--dbaccess/source/ui/app/AppDetailView.hxx405
-rw-r--r--dbaccess/source/ui/app/AppIconControl.cxx135
-rw-r--r--dbaccess/source/ui/app/AppIconControl.hxx62
-rw-r--r--dbaccess/source/ui/app/AppSwapWindow.cxx232
-rw-r--r--dbaccess/source/ui/app/AppSwapWindow.hxx112
-rw-r--r--dbaccess/source/ui/app/AppTitleWindow.cxx188
-rw-r--r--dbaccess/source/ui/app/AppTitleWindow.hxx85
-rw-r--r--dbaccess/source/ui/app/AppView.cxx659
-rw-r--r--dbaccess/source/ui/app/AppView.hxx332
-rw-r--r--dbaccess/source/ui/app/IApplicationController.hxx100
-rw-r--r--dbaccess/source/ui/app/app.src457
-rw-r--r--dbaccess/source/ui/app/dbu_app.hrc78
-rw-r--r--dbaccess/source/ui/app/makefile.mk69
-rw-r--r--dbaccess/source/ui/app/subcomponentmanager.cxx612
-rw-r--r--dbaccess/source/ui/app/subcomponentmanager.hxx136
-rw-r--r--dbaccess/source/ui/app/window_layout.txt31
-rw-r--r--dbaccess/source/ui/browser/AsyncronousLink.cxx112
-rw-r--r--dbaccess/source/ui/browser/bcommon.src35
-rw-r--r--dbaccess/source/ui/browser/brwctrlr.cxx3081
-rw-r--r--dbaccess/source/ui/browser/brwview.cxx395
-rw-r--r--dbaccess/source/ui/browser/dataview.cxx268
-rw-r--r--dbaccess/source/ui/browser/dbexchange.cxx263
-rw-r--r--dbaccess/source/ui/browser/dbloader.cxx358
-rw-r--r--dbaccess/source/ui/browser/dbtreemodel.cxx55
-rw-r--r--dbaccess/source/ui/browser/dbtreemodel.hxx79
-rw-r--r--dbaccess/source/ui/browser/dbtreeview.cxx131
-rw-r--r--dbaccess/source/ui/browser/dbtreeview.hxx82
-rw-r--r--dbaccess/source/ui/browser/dsEntriesNoExp.cxx291
-rw-r--r--dbaccess/source/ui/browser/dsbrowserDnD.cxx295
-rw-r--r--dbaccess/source/ui/browser/exsrcbrw.cxx500
-rw-r--r--dbaccess/source/ui/browser/formadapter.cxx1794
-rw-r--r--dbaccess/source/ui/browser/genericcontroller.cxx1682
-rw-r--r--dbaccess/source/ui/browser/makefile.mk71
-rw-r--r--dbaccess/source/ui/browser/sbabrw.src203
-rw-r--r--dbaccess/source/ui/browser/sbagrid.cxx1786
-rw-r--r--dbaccess/source/ui/browser/sbagrid.src139
-rw-r--r--dbaccess/source/ui/browser/sbamultiplex.cxx111
-rw-r--r--dbaccess/source/ui/browser/unodatbr.cxx3784
-rw-r--r--dbaccess/source/ui/control/ColumnControlWindow.cxx198
-rw-r--r--dbaccess/source/ui/control/FieldDescControl.cxx1941
-rw-r--r--dbaccess/source/ui/control/RelationControl.cxx751
-rw-r--r--dbaccess/source/ui/control/ScrollHelper.cxx81
-rw-r--r--dbaccess/source/ui/control/SqlNameEdit.cxx100
-rw-r--r--dbaccess/source/ui/control/TableGrantCtrl.cxx516
-rw-r--r--dbaccess/source/ui/control/TableGrantCtrl.src96
-rw-r--r--dbaccess/source/ui/control/VertSplitView.cxx220
-rw-r--r--dbaccess/source/ui/control/charsetlistbox.cxx118
-rw-r--r--dbaccess/source/ui/control/curledit.cxx158
-rw-r--r--dbaccess/source/ui/control/dbtreelistbox.cxx756
-rw-r--r--dbaccess/source/ui/control/listviewitems.cxx84
-rw-r--r--dbaccess/source/ui/control/makefile.mk78
-rw-r--r--dbaccess/source/ui/control/marktree.cxx247
-rw-r--r--dbaccess/source/ui/control/opendoccontrols.cxx363
-rw-r--r--dbaccess/source/ui/control/sqledit.cxx224
-rw-r--r--dbaccess/source/ui/control/statusbarontroller.cxx50
-rw-r--r--dbaccess/source/ui/control/tabletree.cxx738
-rw-r--r--dbaccess/source/ui/control/tabletree.hrc37
-rw-r--r--dbaccess/source/ui/control/tabletree.src88
-rw-r--r--dbaccess/source/ui/control/toolboxcontroller.cxx321
-rw-r--r--dbaccess/source/ui/control/undosqledit.cxx50
-rw-r--r--dbaccess/source/ui/control/undosqledit.src66
-rw-r--r--dbaccess/source/ui/dlg/AdabasPage.hrc50
-rw-r--r--dbaccess/source/ui/dlg/AdabasStat.cxx333
-rw-r--r--dbaccess/source/ui/dlg/AdabasStat.hrc52
-rw-r--r--dbaccess/source/ui/dlg/AdabasStat.hxx98
-rw-r--r--dbaccess/source/ui/dlg/AdabasStat.src238
-rw-r--r--dbaccess/source/ui/dlg/AutoControls.src102
-rw-r--r--dbaccess/source/ui/dlg/AutoControls_tmpl.hrc517
-rw-r--r--dbaccess/source/ui/dlg/CollectionView.cxx397
-rw-r--r--dbaccess/source/ui/dlg/CollectionView.hrc50
-rw-r--r--dbaccess/source/ui/dlg/CollectionView.src171
-rw-r--r--dbaccess/source/ui/dlg/ConnectionHelper.cxx994
-rw-r--r--dbaccess/source/ui/dlg/ConnectionHelper.hxx140
-rw-r--r--dbaccess/source/ui/dlg/ConnectionPage.cxx466
-rw-r--r--dbaccess/source/ui/dlg/ConnectionPage.hrc59
-rw-r--r--dbaccess/source/ui/dlg/ConnectionPage.hxx114
-rw-r--r--dbaccess/source/ui/dlg/ConnectionPage.src192
-rw-r--r--dbaccess/source/ui/dlg/ConnectionPageSetup.cxx321
-rw-r--r--dbaccess/source/ui/dlg/ConnectionPageSetup.hxx117
-rw-r--r--dbaccess/source/ui/dlg/DBSetupConnectionPages.cxx1027
-rw-r--r--dbaccess/source/ui/dlg/DBSetupConnectionPages.hxx344
-rwxr-xr-xdbaccess/source/ui/dlg/DbAdminImpl.cxx1219
-rw-r--r--dbaccess/source/ui/dlg/DbAdminImpl.hxx216
-rw-r--r--dbaccess/source/ui/dlg/DriverSettings.cxx116
-rw-r--r--dbaccess/source/ui/dlg/DriverSettings.hxx112
-rw-r--r--dbaccess/source/ui/dlg/ExtensionNotPresent.cxx218
-rw-r--r--dbaccess/source/ui/dlg/ExtensionNotPresent.hrc48
-rw-r--r--dbaccess/source/ui/dlg/ExtensionNotPresent.src90
-rw-r--r--dbaccess/source/ui/dlg/RelationDlg.cxx303
-rw-r--r--dbaccess/source/ui/dlg/RelationDlg.hrc54
-rw-r--r--dbaccess/source/ui/dlg/RelationDlg.src186
-rw-r--r--dbaccess/source/ui/dlg/TablesSingleDlg.cxx150
-rw-r--r--dbaccess/source/ui/dlg/TextConnectionHelper.cxx617
-rw-r--r--dbaccess/source/ui/dlg/TextConnectionHelper.hxx140
-rw-r--r--dbaccess/source/ui/dlg/UserAdmin.cxx393
-rw-r--r--dbaccess/source/ui/dlg/UserAdmin.hrc59
-rw-r--r--dbaccess/source/ui/dlg/UserAdmin.hxx107
-rw-r--r--dbaccess/source/ui/dlg/UserAdmin.src245
-rw-r--r--dbaccess/source/ui/dlg/UserAdminDlg.cxx206
-rw-r--r--dbaccess/source/ui/dlg/UserAdminDlg.hrc33
-rw-r--r--dbaccess/source/ui/dlg/UserAdminDlg.src60
-rwxr-xr-xdbaccess/source/ui/dlg/admincontrols.cxx311
-rwxr-xr-xdbaccess/source/ui/dlg/admincontrols.hrc49
-rwxr-xr-xdbaccess/source/ui/dlg/admincontrols.hxx82
-rwxr-xr-xdbaccess/source/ui/dlg/admincontrols.src131
-rw-r--r--dbaccess/source/ui/dlg/adminpages.cxx337
-rw-r--r--dbaccess/source/ui/dlg/adminpages.hxx299
-rw-r--r--dbaccess/source/ui/dlg/adodatalinks.cxx211
-rw-r--r--dbaccess/source/ui/dlg/adodatalinks.hxx39
-rw-r--r--dbaccess/source/ui/dlg/adtabdlg.cxx533
-rw-r--r--dbaccess/source/ui/dlg/adtabdlg.hrc47
-rw-r--r--dbaccess/source/ui/dlg/adtabdlg.src105
-rw-r--r--dbaccess/source/ui/dlg/advancedsettings.cxx565
-rw-r--r--dbaccess/source/ui/dlg/advancedsettings.hrc75
-rw-r--r--dbaccess/source/ui/dlg/advancedsettings.hxx150
-rw-r--r--dbaccess/source/ui/dlg/advancedsettings.src368
-rw-r--r--dbaccess/source/ui/dlg/dbadmin.cxx515
-rw-r--r--dbaccess/source/ui/dlg/dbadmin.hrc111
-rw-r--r--dbaccess/source/ui/dlg/dbadmin.src810
-rw-r--r--dbaccess/source/ui/dlg/dbadmin2.src190
-rw-r--r--dbaccess/source/ui/dlg/dbadminsetup.hrc136
-rw-r--r--dbaccess/source/ui/dlg/dbadminsetup.src690
-rw-r--r--dbaccess/source/ui/dlg/dbfindex.cxx583
-rw-r--r--dbaccess/source/ui/dlg/dbfindex.hrc26
-rw-r--r--dbaccess/source/ui/dlg/dbfindex.hxx166
-rw-r--r--dbaccess/source/ui/dlg/dbfindex.src254
-rw-r--r--dbaccess/source/ui/dlg/dbwiz.cxx421
-rw-r--r--dbaccess/source/ui/dlg/dbwizsetup.cxx1251
-rw-r--r--dbaccess/source/ui/dlg/detailpages.cxx1151
-rw-r--r--dbaccess/source/ui/dlg/detailpages.hxx388
-rw-r--r--dbaccess/source/ui/dlg/directsql.cxx367
-rw-r--r--dbaccess/source/ui/dlg/directsql.hrc43
-rw-r--r--dbaccess/source/ui/dlg/directsql.src140
-rw-r--r--dbaccess/source/ui/dlg/dlgattr.cxx148
-rw-r--r--dbaccess/source/ui/dlg/dlgattr.src122
-rw-r--r--dbaccess/source/ui/dlg/dlgsave.cxx486
-rw-r--r--dbaccess/source/ui/dlg/dlgsave.hrc53
-rw-r--r--dbaccess/source/ui/dlg/dlgsave.src144
-rw-r--r--dbaccess/source/ui/dlg/dlgsize.cxx130
-rw-r--r--dbaccess/source/ui/dlg/dlgsize.hrc39
-rw-r--r--dbaccess/source/ui/dlg/dlgsize.src193
-rw-r--r--dbaccess/source/ui/dlg/dsnItem.hxx69
-rw-r--r--dbaccess/source/ui/dlg/dsselect.cxx318
-rw-r--r--dbaccess/source/ui/dlg/dsselect.hrc41
-rw-r--r--dbaccess/source/ui/dlg/dsselect.hxx95
-rw-r--r--dbaccess/source/ui/dlg/dsselect.src111
-rw-r--r--dbaccess/source/ui/dlg/finteraction.cxx88
-rw-r--r--dbaccess/source/ui/dlg/finteraction.hxx75
-rw-r--r--dbaccess/source/ui/dlg/generalpage.cxx636
-rw-r--r--dbaccess/source/ui/dlg/generalpage.hxx177
-rw-r--r--dbaccess/source/ui/dlg/indexdialog.cxx962
-rw-r--r--dbaccess/source/ui/dlg/indexdialog.hrc49
-rw-r--r--dbaccess/source/ui/dlg/indexdialog.src239
-rw-r--r--dbaccess/source/ui/dlg/indexfieldscontrol.cxx516
-rw-r--r--dbaccess/source/ui/dlg/makefile.mk156
-rw-r--r--dbaccess/source/ui/dlg/odbcconfig.cxx403
-rw-r--r--dbaccess/source/ui/dlg/odbcconfig.hxx140
-rw-r--r--dbaccess/source/ui/dlg/optionalboolitem.cxx76
-rw-r--r--dbaccess/source/ui/dlg/optionalboolitem.hxx67
-rw-r--r--dbaccess/source/ui/dlg/paramdialog.cxx452
-rw-r--r--dbaccess/source/ui/dlg/paramdialog.hrc46
-rw-r--r--dbaccess/source/ui/dlg/paramdialog.src104
-rw-r--r--dbaccess/source/ui/dlg/queryfilter.cxx921
-rw-r--r--dbaccess/source/ui/dlg/queryfilter.hrc64
-rw-r--r--dbaccess/source/ui/dlg/queryfilter.src233
-rw-r--r--dbaccess/source/ui/dlg/queryorder.cxx334
-rw-r--r--dbaccess/source/ui/dlg/queryorder.hrc57
-rw-r--r--dbaccess/source/ui/dlg/queryorder.src217
-rw-r--r--dbaccess/source/ui/dlg/sqlmessage.cxx822
-rw-r--r--dbaccess/source/ui/dlg/sqlmessage.hrc50
-rw-r--r--dbaccess/source/ui/dlg/sqlmessage.src162
-rw-r--r--dbaccess/source/ui/dlg/tablespage.cxx694
-rw-r--r--dbaccess/source/ui/dlg/tablespage.hxx135
-rw-r--r--dbaccess/source/ui/dlg/textconnectionsettings.cxx106
-rw-r--r--dbaccess/source/ui/dlg/textconnectionsettings.src61
-rw-r--r--dbaccess/source/ui/imagelists/dbimagelists.src262
-rw-r--r--dbaccess/source/ui/imagelists/makefile.mk49
-rw-r--r--dbaccess/source/ui/inc/AccessibleBaseIFace.hxx54
-rw-r--r--dbaccess/source/ui/inc/AppElementType.hxx66
-rw-r--r--dbaccess/source/ui/inc/CollectionView.hxx100
-rw-r--r--dbaccess/source/ui/inc/ColumnControlWindow.hxx90
-rw-r--r--dbaccess/source/ui/inc/ConnectionLine.hxx115
-rw-r--r--dbaccess/source/ui/inc/ConnectionLineAccess.hxx113
-rw-r--r--dbaccess/source/ui/inc/ConnectionLineData.hxx111
-rw-r--r--dbaccess/source/ui/inc/DExport.hxx189
-rw-r--r--dbaccess/source/ui/inc/ExtensionNotPresent.hxx101
-rw-r--r--dbaccess/source/ui/inc/FieldControls.hxx199
-rw-r--r--dbaccess/source/ui/inc/FieldDescControl.hxx242
-rw-r--r--dbaccess/source/ui/inc/FieldDescriptions.hxx135
-rw-r--r--dbaccess/source/ui/inc/GeneralUndo.hxx59
-rw-r--r--dbaccess/source/ui/inc/HtmlReader.hxx100
-rw-r--r--dbaccess/source/ui/inc/IClipBoardTest.hxx49
-rw-r--r--dbaccess/source/ui/inc/IItemSetHelper.hxx76
-rw-r--r--dbaccess/source/ui/inc/IUpdateHelper.hxx52
-rw-r--r--dbaccess/source/ui/inc/JAccess.hxx90
-rw-r--r--dbaccess/source/ui/inc/JoinController.hxx188
-rw-r--r--dbaccess/source/ui/inc/JoinDesignView.hxx91
-rw-r--r--dbaccess/source/ui/inc/JoinExchange.hxx97
-rw-r--r--dbaccess/source/ui/inc/JoinTableView.hxx337
-rw-r--r--dbaccess/source/ui/inc/QEnumTypes.hxx90
-rw-r--r--dbaccess/source/ui/inc/QueryDesignView.hxx189
-rw-r--r--dbaccess/source/ui/inc/QueryTableView.hxx149
-rw-r--r--dbaccess/source/ui/inc/QueryTextView.hxx76
-rw-r--r--dbaccess/source/ui/inc/QueryViewSwitch.hxx104
-rw-r--r--dbaccess/source/ui/inc/RTableConnectionData.hxx108
-rw-r--r--dbaccess/source/ui/inc/RefFunctor.hxx60
-rw-r--r--dbaccess/source/ui/inc/RelControliFace.hxx60
-rw-r--r--dbaccess/source/ui/inc/RelationControl.hrc34
-rw-r--r--dbaccess/source/ui/inc/RelationControl.hxx108
-rw-r--r--dbaccess/source/ui/inc/RelationController.hxx101
-rw-r--r--dbaccess/source/ui/inc/RelationDesignView.hxx74
-rw-r--r--dbaccess/source/ui/inc/RelationDlg.hxx130
-rw-r--r--dbaccess/source/ui/inc/RelationTableView.hxx82
-rw-r--r--dbaccess/source/ui/inc/RtfReader.hxx84
-rw-r--r--dbaccess/source/ui/inc/ScrollHelper.hxx81
-rw-r--r--dbaccess/source/ui/inc/SqlNameEdit.hxx112
-rw-r--r--dbaccess/source/ui/inc/TableConnection.hxx123
-rw-r--r--dbaccess/source/ui/inc/TableConnectionData.hxx119
-rw-r--r--dbaccess/source/ui/inc/TableController.hxx178
-rw-r--r--dbaccess/source/ui/inc/TableCopyHelper.hxx212
-rw-r--r--dbaccess/source/ui/inc/TableDesignControl.hxx108
-rw-r--r--dbaccess/source/ui/inc/TableDesignHelpBar.hxx81
-rw-r--r--dbaccess/source/ui/inc/TableDesignView.hxx131
-rw-r--r--dbaccess/source/ui/inc/TableFieldDescription.hxx167
-rw-r--r--dbaccess/source/ui/inc/TableGrantCtrl.hxx126
-rw-r--r--dbaccess/source/ui/inc/TableRow.hxx101
-rw-r--r--dbaccess/source/ui/inc/TableRowExchange.hxx57
-rw-r--r--dbaccess/source/ui/inc/TableWindow.hxx209
-rw-r--r--dbaccess/source/ui/inc/TableWindowAccess.hxx124
-rw-r--r--dbaccess/source/ui/inc/TableWindowData.hxx106
-rw-r--r--dbaccess/source/ui/inc/TableWindowListBox.hxx109
-rw-r--r--dbaccess/source/ui/inc/TableWindowTitle.hxx59
-rw-r--r--dbaccess/source/ui/inc/TablesSingleDlg.hxx93
-rw-r--r--dbaccess/source/ui/inc/TokenWriter.hxx257
-rw-r--r--dbaccess/source/ui/inc/TypeInfo.hxx152
-rw-r--r--dbaccess/source/ui/inc/UITools.hxx474
-rw-r--r--dbaccess/source/ui/inc/UserAdminDlg.hxx100
-rw-r--r--dbaccess/source/ui/inc/VertSplitView.hxx60
-rw-r--r--dbaccess/source/ui/inc/WCPage.hxx120
-rw-r--r--dbaccess/source/ui/inc/WColumnSelect.hxx109
-rw-r--r--dbaccess/source/ui/inc/WCopyTable.hxx420
-rw-r--r--dbaccess/source/ui/inc/WExtendPages.hxx86
-rw-r--r--dbaccess/source/ui/inc/WNameMatch.hxx112
-rw-r--r--dbaccess/source/ui/inc/WTabPage.hxx60
-rw-r--r--dbaccess/source/ui/inc/WTypeSelect.hxx142
-rw-r--r--dbaccess/source/ui/inc/adtabdlg.hxx140
-rw-r--r--dbaccess/source/ui/inc/advancedsettingsdlg.hxx94
-rw-r--r--dbaccess/source/ui/inc/asyncmodaldialog.hxx67
-rw-r--r--dbaccess/source/ui/inc/browserids.hxx122
-rw-r--r--dbaccess/source/ui/inc/brwctrlr.hxx367
-rw-r--r--dbaccess/source/ui/inc/brwview.hxx125
-rw-r--r--dbaccess/source/ui/inc/callbacks.hxx133
-rw-r--r--dbaccess/source/ui/inc/charsetlistbox.hxx65
-rw-r--r--dbaccess/source/ui/inc/charsets.hxx150
-rw-r--r--dbaccess/source/ui/inc/commontypes.hxx60
-rw-r--r--dbaccess/source/ui/inc/curledit.hxx93
-rw-r--r--dbaccess/source/ui/inc/databaseobjectview.hxx286
-rw-r--r--dbaccess/source/ui/inc/datasourceconnector.hxx102
-rw-r--r--dbaccess/source/ui/inc/datasourcemap.hxx274
-rw-r--r--dbaccess/source/ui/inc/dbadmin.hxx144
-rw-r--r--dbaccess/source/ui/inc/dbexchange.hxx113
-rw-r--r--dbaccess/source/ui/inc/dbtreelistbox.hxx167
-rw-r--r--dbaccess/source/ui/inc/dbu_brw.hrc55
-rw-r--r--dbaccess/source/ui/inc/dbu_control.hrc56
-rw-r--r--dbaccess/source/ui/inc/dbu_dlg.hrc135
-rw-r--r--dbaccess/source/ui/inc/dbu_misc.hrc62
-rw-r--r--dbaccess/source/ui/inc/dbu_qry.hrc96
-rw-r--r--dbaccess/source/ui/inc/dbu_rel.hrc50
-rw-r--r--dbaccess/source/ui/inc/dbu_resource.hrc420
-rw-r--r--dbaccess/source/ui/inc/dbu_tbl.hrc99
-rw-r--r--dbaccess/source/ui/inc/dbu_uno.hrc56
-rw-r--r--dbaccess/source/ui/inc/dbwiz.hxx145
-rw-r--r--dbaccess/source/ui/inc/dbwizsetup.hxx211
-rw-r--r--dbaccess/source/ui/inc/defaultobjectnamecheck.hxx152
-rw-r--r--dbaccess/source/ui/inc/directsql.hxx159
-rw-r--r--dbaccess/source/ui/inc/dlgattr.hrc37
-rw-r--r--dbaccess/source/ui/inc/dlgattr.hxx68
-rw-r--r--dbaccess/source/ui/inc/dlgsave.hxx105
-rw-r--r--dbaccess/source/ui/inc/dlgsize.hxx78
-rw-r--r--dbaccess/source/ui/inc/dsitems.hxx105
-rw-r--r--dbaccess/source/ui/inc/dsmeta.hxx142
-rw-r--r--dbaccess/source/ui/inc/exsrcbrw.hxx112
-rw-r--r--dbaccess/source/ui/inc/formadapter.hxx523
-rw-r--r--dbaccess/source/ui/inc/imageprovider.hxx192
-rw-r--r--dbaccess/source/ui/inc/indexcollection.hxx125
-rw-r--r--dbaccess/source/ui/inc/indexdialog.hxx209
-rw-r--r--dbaccess/source/ui/inc/indexes.hxx107
-rw-r--r--dbaccess/source/ui/inc/indexfieldscontrol.hxx118
-rw-r--r--dbaccess/source/ui/inc/linkeddocuments.hxx159
-rw-r--r--dbaccess/source/ui/inc/listviewitems.hxx70
-rw-r--r--dbaccess/source/ui/inc/localresaccess.hxx64
-rw-r--r--dbaccess/source/ui/inc/makefile.mk43
-rw-r--r--dbaccess/source/ui/inc/marktree.hxx86
-rw-r--r--dbaccess/source/ui/inc/moduledbu.hxx107
-rw-r--r--dbaccess/source/ui/inc/objectnamecheck.hxx74
-rw-r--r--dbaccess/source/ui/inc/opendoccontrols.hxx99
-rw-r--r--dbaccess/source/ui/inc/paramdialog.hxx152
-rw-r--r--dbaccess/source/ui/inc/propertysetitem.hxx71
-rw-r--r--dbaccess/source/ui/inc/propertystorage.hxx94
-rw-r--r--dbaccess/source/ui/inc/querycontainerwindow.hxx136
-rw-r--r--dbaccess/source/ui/inc/querycontroller.hxx259
-rw-r--r--dbaccess/source/ui/inc/queryfilter.hxx163
-rw-r--r--dbaccess/source/ui/inc/queryorder.hxx138
-rw-r--r--dbaccess/source/ui/inc/queryview.hxx59
-rw-r--r--dbaccess/source/ui/inc/sbagrid.hrc125
-rw-r--r--dbaccess/source/ui/inc/sbagrid.hxx363
-rw-r--r--dbaccess/source/ui/inc/sbamultiplex.hxx488
-rw-r--r--dbaccess/source/ui/inc/sqledit.hxx89
-rw-r--r--dbaccess/source/ui/inc/sqlmessage.hxx143
-rw-r--r--dbaccess/source/ui/inc/statusbarontroller.hxx62
-rw-r--r--dbaccess/source/ui/inc/stringlistitem.hxx72
-rw-r--r--dbaccess/source/ui/inc/tabletree.hxx212
-rw-r--r--dbaccess/source/ui/inc/textconnectionsettings.hxx79
-rw-r--r--dbaccess/source/ui/inc/toolbox_tmpl.hrc100
-rw-r--r--dbaccess/source/ui/inc/toolboxcontroller.hxx85
-rw-r--r--dbaccess/source/ui/inc/undosqledit.hxx61
-rw-r--r--dbaccess/source/ui/inc/unoadmin.hxx87
-rw-r--r--dbaccess/source/ui/inc/unodatbr.hxx541
-rw-r--r--dbaccess/source/ui/inc/unosqlmessage.hxx92
-rw-r--r--dbaccess/source/ui/misc/DExport.cxx904
-rw-r--r--dbaccess/source/ui/misc/HtmlReader.cxx598
-rw-r--r--dbaccess/source/ui/misc/ModuleHelper.cxx44
-rw-r--r--dbaccess/source/ui/misc/RowSetDrop.cxx273
-rw-r--r--dbaccess/source/ui/misc/RtfReader.cxx377
-rw-r--r--dbaccess/source/ui/misc/TableCopyHelper.cxx415
-rw-r--r--dbaccess/source/ui/misc/TokenWriter.cxx1161
-rw-r--r--dbaccess/source/ui/misc/ToolBoxHelper.cxx140
-rw-r--r--dbaccess/source/ui/misc/UITools.cxx1888
-rw-r--r--dbaccess/source/ui/misc/UpdateHelperImpl.hxx149
-rw-r--r--dbaccess/source/ui/misc/WCPage.cxx418
-rw-r--r--dbaccess/source/ui/misc/WColumnSelect.cxx452
-rw-r--r--dbaccess/source/ui/misc/WCopyTable.cxx1692
-rw-r--r--dbaccess/source/ui/misc/WExtendPages.cxx92
-rw-r--r--dbaccess/source/ui/misc/WNameMatch.cxx450
-rw-r--r--dbaccess/source/ui/misc/WTypeSelect.cxx510
-rw-r--r--dbaccess/source/ui/misc/WizardPages.hrc81
-rw-r--r--dbaccess/source/ui/misc/WizardPages.src658
-rw-r--r--dbaccess/source/ui/misc/asyncmodaldialog.cxx121
-rw-r--r--dbaccess/source/ui/misc/charsets.cxx196
-rw-r--r--dbaccess/source/ui/misc/controllerframe.cxx443
-rw-r--r--dbaccess/source/ui/misc/databaseobjectview.cxx344
-rw-r--r--dbaccess/source/ui/misc/datasourceconnector.cxx277
-rw-r--r--dbaccess/source/ui/misc/dbumiscres.hrc62
-rw-r--r--dbaccess/source/ui/misc/dbumiscres.src100
-rw-r--r--dbaccess/source/ui/misc/defaultobjectnamecheck.cxx232
-rw-r--r--dbaccess/source/ui/misc/dsmeta.cxx213
-rw-r--r--dbaccess/source/ui/misc/imageprovider.cxx261
-rw-r--r--dbaccess/source/ui/misc/indexcollection.cxx424
-rw-r--r--dbaccess/source/ui/misc/linkeddocuments.cxx479
-rw-r--r--dbaccess/source/ui/misc/makefile.mk85
-rw-r--r--dbaccess/source/ui/misc/moduledbu.cxx146
-rw-r--r--dbaccess/source/ui/misc/propertysetitem.cxx86
-rw-r--r--dbaccess/source/ui/misc/propertystorage.cxx136
-rw-r--r--dbaccess/source/ui/misc/singledoccontroller.cxx749
-rw-r--r--dbaccess/source/ui/misc/stringlistitem.cxx87
-rw-r--r--dbaccess/source/ui/misc/uiservices.cxx144
-rw-r--r--dbaccess/source/ui/querydesign/ConnectionData.hxx63
-rw-r--r--dbaccess/source/ui/querydesign/ConnectionLine.cxx397
-rw-r--r--dbaccess/source/ui/querydesign/ConnectionLineAccess.cxx272
-rw-r--r--dbaccess/source/ui/querydesign/ConnectionLineData.cxx106
-rw-r--r--dbaccess/source/ui/querydesign/JAccess.cxx145
-rw-r--r--dbaccess/source/ui/querydesign/JoinController.cxx547
-rw-r--r--dbaccess/source/ui/querydesign/JoinDesignView.cxx170
-rw-r--r--dbaccess/source/ui/querydesign/JoinExchange.cxx186
-rw-r--r--dbaccess/source/ui/querydesign/JoinTableView.cxx1773
-rw-r--r--dbaccess/source/ui/querydesign/QTableConnection.cxx111
-rw-r--r--dbaccess/source/ui/querydesign/QTableConnection.hxx62
-rw-r--r--dbaccess/source/ui/querydesign/QTableConnectionData.cxx178
-rw-r--r--dbaccess/source/ui/querydesign/QTableConnectionData.hxx99
-rw-r--r--dbaccess/source/ui/querydesign/QTableWindow.cxx284
-rw-r--r--dbaccess/source/ui/querydesign/QTableWindow.hxx100
-rw-r--r--dbaccess/source/ui/querydesign/QTableWindowData.cxx62
-rw-r--r--dbaccess/source/ui/querydesign/QTableWindowData.hxx59
-rw-r--r--dbaccess/source/ui/querydesign/Query.hrc35
-rw-r--r--dbaccess/source/ui/querydesign/QueryAddTabConnUndoAction.hxx63
-rw-r--r--dbaccess/source/ui/querydesign/QueryDesignFieldUndoAct.hxx165
-rw-r--r--dbaccess/source/ui/querydesign/QueryDesignUndoAction.hxx50
-rw-r--r--dbaccess/source/ui/querydesign/QueryDesignView.cxx3300
-rw-r--r--dbaccess/source/ui/querydesign/QueryMoveTabWinUndoAct.cxx56
-rw-r--r--dbaccess/source/ui/querydesign/QueryMoveTabWinUndoAct.hxx72
-rw-r--r--dbaccess/source/ui/querydesign/QuerySizeTabWinUndoAct.hxx88
-rw-r--r--dbaccess/source/ui/querydesign/QueryTabConnUndoAction.cxx150
-rw-r--r--dbaccess/source/ui/querydesign/QueryTabConnUndoAction.hxx59
-rw-r--r--dbaccess/source/ui/querydesign/QueryTabWinShowUndoAct.hxx66
-rw-r--r--dbaccess/source/ui/querydesign/QueryTabWinUndoAct.cxx155
-rw-r--r--dbaccess/source/ui/querydesign/QueryTabWinUndoAct.hxx87
-rw-r--r--dbaccess/source/ui/querydesign/QueryTableView.cxx1100
-rw-r--r--dbaccess/source/ui/querydesign/QueryTextView.cxx179
-rw-r--r--dbaccess/source/ui/querydesign/QueryViewSwitch.cxx361
-rw-r--r--dbaccess/source/ui/querydesign/SelectionBrowseBox.cxx2885
-rw-r--r--dbaccess/source/ui/querydesign/SelectionBrowseBox.hxx362
-rw-r--r--dbaccess/source/ui/querydesign/TableConnection.cxx256
-rw-r--r--dbaccess/source/ui/querydesign/TableConnectionData.cxx202
-rw-r--r--dbaccess/source/ui/querydesign/TableFieldDescription.cxx246
-rw-r--r--dbaccess/source/ui/querydesign/TableFieldInfo.cxx59
-rw-r--r--dbaccess/source/ui/querydesign/TableFieldInfo.hxx57
-rw-r--r--dbaccess/source/ui/querydesign/TableWindow.cxx822
-rw-r--r--dbaccess/source/ui/querydesign/TableWindowAccess.cxx319
-rw-r--r--dbaccess/source/ui/querydesign/TableWindowData.cxx157
-rw-r--r--dbaccess/source/ui/querydesign/TableWindowListBox.cxx423
-rw-r--r--dbaccess/source/ui/querydesign/TableWindowTitle.cxx248
-rw-r--r--dbaccess/source/ui/querydesign/class.jpgbin0 -> 224242 bytes-rw-r--r--dbaccess/source/ui/querydesign/makefile.mk89
-rw-r--r--dbaccess/source/ui/querydesign/query.src423
-rw-r--r--dbaccess/source/ui/querydesign/querycontainerwindow.cxx288
-rw-r--r--dbaccess/source/ui/querydesign/querycontroller.cxx1868
-rw-r--r--dbaccess/source/ui/querydesign/querydlg.cxx399
-rw-r--r--dbaccess/source/ui/querydesign/querydlg.hrc61
-rw-r--r--dbaccess/source/ui/querydesign/querydlg.hxx120
-rw-r--r--dbaccess/source/ui/querydesign/querydlg.src195
-rw-r--r--dbaccess/source/ui/querydesign/queryview.cxx62
-rw-r--r--dbaccess/source/ui/relationdesign/RTableConnection.cxx157
-rw-r--r--dbaccess/source/ui/relationdesign/RTableConnection.hxx59
-rw-r--r--dbaccess/source/ui/relationdesign/RTableConnectionData.cxx466
-rw-r--r--dbaccess/source/ui/relationdesign/RTableWindow.hxx51
-rw-r--r--dbaccess/source/ui/relationdesign/RelationController.cxx615
-rw-r--r--dbaccess/source/ui/relationdesign/RelationDesignView.cxx153
-rw-r--r--dbaccess/source/ui/relationdesign/RelationTableView.cxx486
-rw-r--r--dbaccess/source/ui/relationdesign/makefile.mk58
-rw-r--r--dbaccess/source/ui/relationdesign/relation.src130
-rw-r--r--dbaccess/source/ui/tabledesign/FieldDescGenWin.cxx203
-rw-r--r--dbaccess/source/ui/tabledesign/FieldDescGenWin.hxx88
-rw-r--r--dbaccess/source/ui/tabledesign/FieldDescriptions.cxx699
-rw-r--r--dbaccess/source/ui/tabledesign/TEditControl.cxx2017
-rw-r--r--dbaccess/source/ui/tabledesign/TEditControl.hxx232
-rw-r--r--dbaccess/source/ui/tabledesign/TableController.cxx1613
-rw-r--r--dbaccess/source/ui/tabledesign/TableDesignControl.cxx241
-rw-r--r--dbaccess/source/ui/tabledesign/TableDesignHelpBar.cxx130
-rw-r--r--dbaccess/source/ui/tabledesign/TableDesignView.cxx400
-rw-r--r--dbaccess/source/ui/tabledesign/TableFieldControl.cxx177
-rw-r--r--dbaccess/source/ui/tabledesign/TableFieldControl.hxx72
-rw-r--r--dbaccess/source/ui/tabledesign/TableFieldDescWin.cxx337
-rw-r--r--dbaccess/source/ui/tabledesign/TableFieldDescWin.hxx115
-rw-r--r--dbaccess/source/ui/tabledesign/TableRow.cxx235
-rw-r--r--dbaccess/source/ui/tabledesign/TableRowExchange.cxx97
-rw-r--r--dbaccess/source/ui/tabledesign/TableUndo.cxx495
-rw-r--r--dbaccess/source/ui/tabledesign/TableUndo.hxx178
-rw-r--r--dbaccess/source/ui/tabledesign/makefile.mk65
-rw-r--r--dbaccess/source/ui/tabledesign/table.src413
-rw-r--r--dbaccess/source/ui/uno/AdabasSettingsDlg.cxx133
-rw-r--r--dbaccess/source/ui/uno/AdabasSettingsDlg.hxx80
-rw-r--r--dbaccess/source/ui/uno/AdvancedSettingsDlg.cxx159
-rw-r--r--dbaccess/source/ui/uno/ColumnControl.cxx151
-rw-r--r--dbaccess/source/ui/uno/ColumnControl.hxx58
-rw-r--r--dbaccess/source/ui/uno/ColumnModel.cxx188
-rw-r--r--dbaccess/source/ui/uno/ColumnModel.hxx134
-rw-r--r--dbaccess/source/ui/uno/ColumnPeer.cxx172
-rw-r--r--dbaccess/source/ui/uno/ColumnPeer.hxx70
-rw-r--r--dbaccess/source/ui/uno/DBTypeWizDlg.cxx132
-rw-r--r--dbaccess/source/ui/uno/DBTypeWizDlg.hxx80
-rw-r--r--dbaccess/source/ui/uno/DBTypeWizDlgSetup.cxx166
-rw-r--r--dbaccess/source/ui/uno/DBTypeWizDlgSetup.hxx84
-rw-r--r--dbaccess/source/ui/uno/TableFilterDlg.cxx133
-rw-r--r--dbaccess/source/ui/uno/TableFilterDlg.hxx80
-rw-r--r--dbaccess/source/ui/uno/UserSettingsDlg.cxx133
-rw-r--r--dbaccess/source/ui/uno/UserSettingsDlg.hxx80
-rw-r--r--dbaccess/source/ui/uno/admindlg.cxx139
-rw-r--r--dbaccess/source/ui/uno/admindlg.hxx80
-rw-r--r--dbaccess/source/ui/uno/composerdialogs.cxx227
-rw-r--r--dbaccess/source/ui/uno/composerdialogs.hxx160
-rw-r--r--dbaccess/source/ui/uno/copytablewizard.cxx1627
-rw-r--r--dbaccess/source/ui/uno/copytablewizard.src80
-rwxr-xr-xdbaccess/source/ui/uno/dbinteraction.cxx427
-rw-r--r--dbaccess/source/ui/uno/dbinteraction.hxx188
-rw-r--r--dbaccess/source/ui/uno/dbinteraction.src41
-rw-r--r--dbaccess/source/ui/uno/makefile.mk76
-rw-r--r--dbaccess/source/ui/uno/textconnectionsettings_uno.cxx263
-rw-r--r--dbaccess/source/ui/uno/unoDirectSql.cxx156
-rw-r--r--dbaccess/source/ui/uno/unoDirectSql.hxx94
-rw-r--r--dbaccess/source/ui/uno/unoadmin.cxx145
-rw-r--r--dbaccess/source/ui/uno/unosqlmessage.cxx176
-rw-r--r--dbaccess/uiconfig/dbapp/menubar/menubar.xml143
-rw-r--r--dbaccess/uiconfig/dbapp/statusbar/statusbar.xml8
-rw-r--r--dbaccess/uiconfig/dbapp/toolbar/formobjectbar.xml8
-rw-r--r--dbaccess/uiconfig/dbapp/toolbar/queryobjectbar.xml8
-rw-r--r--dbaccess/uiconfig/dbapp/toolbar/reportobjectbar.xml8
-rw-r--r--dbaccess/uiconfig/dbapp/toolbar/tableobjectbar.xml8
-rw-r--r--dbaccess/uiconfig/dbapp/toolbar/toolbar.xml19
-rw-r--r--dbaccess/uiconfig/dbbrowser/menubar/compat.xml1
-rw-r--r--dbaccess/uiconfig/dbbrowser/menubar/preserve.txt1
-rw-r--r--dbaccess/uiconfig/dbbrowser/toolbar/toolbar.xml33
-rw-r--r--dbaccess/uiconfig/dbquery/menubar/menubar.xml84
-rw-r--r--dbaccess/uiconfig/dbquery/toolbar/designobjectbar.xml10
-rw-r--r--dbaccess/uiconfig/dbquery/toolbar/sqlobjectbar.xml5
-rw-r--r--dbaccess/uiconfig/dbquery/toolbar/toolbar.xml20
-rw-r--r--dbaccess/uiconfig/dbrelation/menubar/menubar.xml67
-rw-r--r--dbaccess/uiconfig/dbrelation/toolbar/toolbar.xml13
-rw-r--r--dbaccess/uiconfig/dbtable/menubar/menubar.xml68
-rw-r--r--dbaccess/uiconfig/dbtable/toolbar/toolbar.xml17
-rw-r--r--dbaccess/uiconfig/dbtdata/menubar/menubar.xml76
-rw-r--r--dbaccess/uiconfig/dbtdata/toolbar/toolbar.xml27
-rw-r--r--dbaccess/util/dba.component63
-rw-r--r--dbaccess/util/dba.pmk29
-rw-r--r--dbaccess/util/dbu.component116
-rw-r--r--dbaccess/util/hidother.src503
-rw-r--r--dbaccess/util/makefile.mk261
-rw-r--r--dbaccess/util/makefile.pmk31
-rw-r--r--dbaccess/util/sdbt.component34
-rw-r--r--dbaccess/win32/source/odbcconfig/makefile.mk54
-rw-r--r--dbaccess/win32/source/odbcconfig/odbcconfig.cxx159
-rw-r--r--desktop/inc/app.hxx217
-rw-r--r--desktop/inc/deployment.hrc87
-rw-r--r--desktop/inc/makefile.mk47
-rw-r--r--desktop/inc/pch/precompiled_desktop.cxx29
-rw-r--r--desktop/inc/pch/precompiled_desktop.hxx40
-rw-r--r--desktop/os2/source/applauncher/launcher.cxx122
-rw-r--r--desktop/os2/source/applauncher/launcher.hxx9
-rw-r--r--desktop/os2/source/applauncher/makefile.mk121
-rw-r--r--desktop/os2/source/applauncher/officeloader.cxx3
-rw-r--r--desktop/os2/source/applauncher/quickstart.cxx3
-rw-r--r--desktop/os2/source/applauncher/sbase.cxx3
-rw-r--r--desktop/os2/source/applauncher/scalc.cxx3
-rw-r--r--desktop/os2/source/applauncher/sdraw.cxx3
-rw-r--r--desktop/os2/source/applauncher/simpress.cxx3
-rw-r--r--desktop/os2/source/applauncher/smath.cxx3
-rw-r--r--desktop/os2/source/applauncher/swriter.cxx3
-rw-r--r--desktop/prj/build.lst44
-rw-r--r--desktop/prj/d.lst153
-rw-r--r--desktop/qa/deployment_misc/makefile.mk56
-rw-r--r--desktop/qa/deployment_misc/test_dp_version.cxx93
-rw-r--r--desktop/qa/deployment_misc/version.map34
-rw-r--r--desktop/registry/data/org/openoffice/Office/Jobs.xcu74
-rw-r--r--desktop/registry/data/org/openoffice/Office/makefile.mk77
-rw-r--r--desktop/scripts/basis-link1
-rw-r--r--desktop/scripts/makefile.mk67
-rw-r--r--desktop/scripts/mozwrapper.sh8
-rw-r--r--desktop/scripts/odf-basis-link1
-rw-r--r--desktop/scripts/sbase.sh4
-rw-r--r--desktop/scripts/scalc.sh4
-rw-r--r--desktop/scripts/sdraw.sh4
-rw-r--r--desktop/scripts/simpress.sh4
-rw-r--r--desktop/scripts/smaster.sh4
-rw-r--r--desktop/scripts/smath.sh4
-rw-r--r--desktop/scripts/so-basis-link1
-rw-r--r--desktop/scripts/soffice.sh134
-rw-r--r--desktop/scripts/sweb.sh4
-rw-r--r--desktop/scripts/swriter.sh4
-rw-r--r--desktop/scripts/unoinfo.sh55
-rw-r--r--desktop/scripts/unopkg.sh75
-rw-r--r--desktop/scripts/ure-link1
-rw-r--r--desktop/source/app/app.cxx3336
-rw-r--r--desktop/source/app/appfirststart.cxx318
-rw-r--r--desktop/source/app/appinit.cxx484
-rw-r--r--desktop/source/app/appinit.hxx50
-rw-r--r--desktop/source/app/appsys.cxx69
-rw-r--r--desktop/source/app/appsys.hxx42
-rwxr-xr-xdesktop/source/app/check_ext_deps.cxx431
-rw-r--r--desktop/source/app/checkinstall.cxx118
-rw-r--r--desktop/source/app/checkinstall.hxx42
-rw-r--r--desktop/source/app/cmdlineargs.cxx900
-rw-r--r--desktop/source/app/cmdlineargs.hxx212
-rw-r--r--desktop/source/app/cmdlinehelp.cxx173
-rw-r--r--desktop/source/app/cmdlinehelp.hxx23
-rw-r--r--desktop/source/app/configinit.cxx303
-rw-r--r--desktop/source/app/configinit.hxx71
-rw-r--r--desktop/source/app/copyright_ascii_ooo.c10
-rw-r--r--desktop/source/app/copyright_ascii_sun.c8
-rw-r--r--desktop/source/app/desktop.hrc91
-rw-r--r--desktop/source/app/desktop.src235
-rw-r--r--desktop/source/app/desktopcontext.cxx63
-rw-r--r--desktop/source/app/desktopcontext.hxx50
-rw-r--r--desktop/source/app/desktopresid.cxx44
-rw-r--r--desktop/source/app/desktopresid.hxx44
-rw-r--r--desktop/source/app/dispatchwatcher.cxx514
-rw-r--r--desktop/source/app/dispatchwatcher.hxx124
-rw-r--r--desktop/source/app/exports.dxp2
-rw-r--r--desktop/source/app/langselect.cxx558
-rw-r--r--desktop/source/app/langselect.hxx74
-rw-r--r--desktop/source/app/lockfile.cxx256
-rw-r--r--desktop/source/app/lockfile.hxx99
-rw-r--r--desktop/source/app/lockfile2.cxx70
-rw-r--r--desktop/source/app/main.c36
-rw-r--r--desktop/source/app/makefile.mk115
-rw-r--r--desktop/source/app/officeipcthread.cxx994
-rw-r--r--desktop/source/app/officeipcthread.hxx165
-rw-r--r--desktop/source/app/omutexmember.hxx61
-rw-r--r--desktop/source/app/sofficemain.cxx52
-rw-r--r--desktop/source/app/sofficemain.h43
-rw-r--r--desktop/source/app/userinstall.cxx301
-rw-r--r--desktop/source/app/userinstall.hxx52
-rw-r--r--desktop/source/app/version.map34
-rw-r--r--desktop/source/deployment/deployment.component64
-rw-r--r--desktop/source/deployment/dp_log.cxx211
-rw-r--r--desktop/source/deployment/dp_persmap.cxx253
-rw-r--r--desktop/source/deployment/dp_services.cxx115
-rw-r--r--desktop/source/deployment/dp_xml.cxx78
-rw-r--r--desktop/source/deployment/gui/deploymentgui.component40
-rw-r--r--desktop/source/deployment/gui/descedit.cxx100
-rw-r--r--desktop/source/deployment/gui/descedit.hxx57
-rw-r--r--desktop/source/deployment/gui/dp_gui.h98
-rwxr-xr-xdesktop/source/deployment/gui/dp_gui.hrc180
-rw-r--r--desktop/source/deployment/gui/dp_gui_autoscrolledit.cxx74
-rw-r--r--desktop/source/deployment/gui/dp_gui_autoscrolledit.hxx51
-rw-r--r--desktop/source/deployment/gui/dp_gui_backend.src131
-rw-r--r--desktop/source/deployment/gui/dp_gui_dependencydialog.cxx86
-rw-r--r--desktop/source/deployment/gui/dp_gui_dependencydialog.hxx68
-rw-r--r--desktop/source/deployment/gui/dp_gui_dependencydialog.src72
-rw-r--r--desktop/source/deployment/gui/dp_gui_dialog.src348
-rw-r--r--desktop/source/deployment/gui/dp_gui_dialog2.cxx1780
-rwxr-xr-xdesktop/source/deployment/gui/dp_gui_dialog2.hxx266
-rw-r--r--desktop/source/deployment/gui/dp_gui_dialog2.src256
-rwxr-xr-xdesktop/source/deployment/gui/dp_gui_extensioncmdqueue.cxx1212
-rwxr-xr-xdesktop/source/deployment/gui/dp_gui_extensioncmdqueue.hxx111
-rw-r--r--desktop/source/deployment/gui/dp_gui_extlistbox.cxx1210
-rw-r--r--desktop/source/deployment/gui/dp_gui_extlistbox.hxx270
-rw-r--r--desktop/source/deployment/gui/dp_gui_service.cxx368
-rw-r--r--desktop/source/deployment/gui/dp_gui_shared.hxx62
-rw-r--r--desktop/source/deployment/gui/dp_gui_system.cxx59
-rw-r--r--desktop/source/deployment/gui/dp_gui_system.hxx37
-rwxr-xr-xdesktop/source/deployment/gui/dp_gui_theextmgr.cxx531
-rwxr-xr-xdesktop/source/deployment/gui/dp_gui_theextmgr.hxx131
-rw-r--r--desktop/source/deployment/gui/dp_gui_thread.cxx82
-rw-r--r--desktop/source/deployment/gui/dp_gui_thread.hxx84
-rw-r--r--desktop/source/deployment/gui/dp_gui_updatedata.hxx86
-rw-r--r--desktop/source/deployment/gui/dp_gui_updatedialog.cxx1301
-rw-r--r--desktop/source/deployment/gui/dp_gui_updatedialog.hxx233
-rw-r--r--desktop/source/deployment/gui/dp_gui_updatedialog.src268
-rw-r--r--desktop/source/deployment/gui/dp_gui_updateinstalldialog.cxx756
-rw-r--r--desktop/source/deployment/gui/dp_gui_updateinstalldialog.hxx144
-rw-r--r--desktop/source/deployment/gui/dp_gui_updateinstalldialog.src204
-rw-r--r--desktop/source/deployment/gui/dp_gui_versionboxes.src76
-rw-r--r--desktop/source/deployment/gui/license_dialog.cxx330
-rw-r--r--desktop/source/deployment/gui/license_dialog.hxx71
-rw-r--r--desktop/source/deployment/gui/makefile.mk117
-rw-r--r--desktop/source/deployment/inc/db.hxx173
-rw-r--r--desktop/source/deployment/inc/dp_dependencies.hxx82
-rw-r--r--desktop/source/deployment/inc/dp_descriptioninfoset.hxx299
-rw-r--r--desktop/source/deployment/inc/dp_identifier.hxx92
-rw-r--r--desktop/source/deployment/inc/dp_interact.h150
-rw-r--r--desktop/source/deployment/inc/dp_misc.h179
-rw-r--r--desktop/source/deployment/inc/dp_misc.mk42
-rw-r--r--desktop/source/deployment/inc/dp_misc_api.hxx40
-rw-r--r--desktop/source/deployment/inc/dp_persmap.h65
-rw-r--r--desktop/source/deployment/inc/dp_platform.hxx56
-rw-r--r--desktop/source/deployment/inc/dp_resource.h67
-rw-r--r--desktop/source/deployment/inc/dp_ucb.h91
-rwxr-xr-xdesktop/source/deployment/inc/dp_update.hxx147
-rw-r--r--desktop/source/deployment/inc/dp_version.hxx48
-rw-r--r--desktop/source/deployment/inc/dp_xml.h57
-rw-r--r--desktop/source/deployment/makefile.mk120
-rw-r--r--desktop/source/deployment/manager/dp_activepackages.cxx206
-rw-r--r--desktop/source/deployment/manager/dp_activepackages.hxx99
-rw-r--r--desktop/source/deployment/manager/dp_commandenvironments.cxx324
-rw-r--r--desktop/source/deployment/manager/dp_commandenvironments.hxx183
-rw-r--r--desktop/source/deployment/manager/dp_extensionmanager.cxx1519
-rw-r--r--desktop/source/deployment/manager/dp_extensionmanager.hxx324
-rw-r--r--desktop/source/deployment/manager/dp_informationprovider.cxx393
-rw-r--r--desktop/source/deployment/manager/dp_manager.cxx1673
-rw-r--r--desktop/source/deployment/manager/dp_manager.h294
-rw-r--r--desktop/source/deployment/manager/dp_manager.hrc39
-rw-r--r--desktop/source/deployment/manager/dp_manager.src59
-rw-r--r--desktop/source/deployment/manager/dp_managerfac.cxx200
-rw-r--r--desktop/source/deployment/manager/dp_properties.cxx169
-rw-r--r--desktop/source/deployment/manager/dp_properties.hxx78
-rw-r--r--desktop/source/deployment/manager/makefile.mk55
-rw-r--r--desktop/source/deployment/misc/db.cxx272
-rw-r--r--desktop/source/deployment/misc/dp_dependencies.cxx171
-rw-r--r--desktop/source/deployment/misc/dp_descriptioninfoset.cxx864
-rw-r--r--desktop/source/deployment/misc/dp_identifier.cxx73
-rw-r--r--desktop/source/deployment/misc/dp_interact.cxx185
-rw-r--r--desktop/source/deployment/misc/dp_misc.cxx630
-rw-r--r--desktop/source/deployment/misc/dp_misc.hrc33
-rw-r--r--desktop/source/deployment/misc/dp_misc.src40
-rw-r--r--desktop/source/deployment/misc/dp_platform.cxx232
-rw-r--r--desktop/source/deployment/misc/dp_resource.cxx233
-rw-r--r--desktop/source/deployment/misc/dp_ucb.cxx320
-rw-r--r--desktop/source/deployment/misc/dp_update.cxx447
-rw-r--r--desktop/source/deployment/misc/dp_version.cxx74
-rw-r--r--desktop/source/deployment/misc/makefile.mk95
-rw-r--r--desktop/source/deployment/registry/component/dp_compbackenddb.cxx156
-rw-r--r--desktop/source/deployment/registry/component/dp_compbackenddb.hxx120
-rw-r--r--desktop/source/deployment/registry/component/dp_component.cxx1586
-rw-r--r--desktop/source/deployment/registry/component/dp_component.hrc39
-rw-r--r--desktop/source/deployment/registry/component/dp_component.src54
-rw-r--r--desktop/source/deployment/registry/component/makefile.mk48
-rw-r--r--desktop/source/deployment/registry/configuration/dp_configuration.cxx783
-rw-r--r--desktop/source/deployment/registry/configuration/dp_configuration.hrc36
-rw-r--r--desktop/source/deployment/registry/configuration/dp_configuration.src39
-rw-r--r--desktop/source/deployment/registry/configuration/dp_configurationbackenddb.cxx183
-rw-r--r--desktop/source/deployment/registry/configuration/dp_configurationbackenddb.hxx93
-rw-r--r--desktop/source/deployment/registry/configuration/makefile.mk52
-rw-r--r--desktop/source/deployment/registry/dp_backend.cxx807
-rw-r--r--desktop/source/deployment/registry/dp_backenddb.cxx649
-rw-r--r--desktop/source/deployment/registry/dp_registry.cxx558
-rw-r--r--desktop/source/deployment/registry/dp_registry.src59
-rw-r--r--desktop/source/deployment/registry/executable/dp_executable.cxx331
-rw-r--r--desktop/source/deployment/registry/executable/dp_executablebackenddb.cxx81
-rw-r--r--desktop/source/deployment/registry/executable/dp_executablebackenddb.hxx76
-rw-r--r--desktop/source/deployment/registry/executable/makefile.mk44
-rw-r--r--desktop/source/deployment/registry/help/dp_help.cxx658
-rw-r--r--desktop/source/deployment/registry/help/dp_help.hrc39
-rw-r--r--desktop/source/deployment/registry/help/dp_help.src44
-rw-r--r--desktop/source/deployment/registry/help/dp_helpbackenddb.cxx175
-rw-r--r--desktop/source/deployment/registry/help/dp_helpbackenddb.hxx89
-rw-r--r--desktop/source/deployment/registry/help/makefile.mk52
-rw-r--r--desktop/source/deployment/registry/inc/dp_backend.h379
-rw-r--r--desktop/source/deployment/registry/inc/dp_backenddb.hxx170
-rw-r--r--desktop/source/deployment/registry/inc/dp_registry.hrc40
-rw-r--r--desktop/source/deployment/registry/makefile.mk49
-rw-r--r--desktop/source/deployment/registry/package/dp_extbackenddb.cxx135
-rw-r--r--desktop/source/deployment/registry/package/dp_extbackenddb.hxx96
-rw-r--r--desktop/source/deployment/registry/package/dp_package.cxx1645
-rw-r--r--desktop/source/deployment/registry/package/dp_package.hrc35
-rw-r--r--desktop/source/deployment/registry/package/dp_package.src34
-rw-r--r--desktop/source/deployment/registry/package/makefile.mk48
-rw-r--r--desktop/source/deployment/registry/script/dp_lib_container.cxx73
-rw-r--r--desktop/source/deployment/registry/script/dp_lib_container.h57
-rw-r--r--desktop/source/deployment/registry/script/dp_script.cxx499
-rw-r--r--desktop/source/deployment/registry/script/dp_script.hrc39
-rw-r--r--desktop/source/deployment/registry/script/dp_script.src49
-rw-r--r--desktop/source/deployment/registry/script/dp_scriptbackenddb.cxx85
-rw-r--r--desktop/source/deployment/registry/script/dp_scriptbackenddb.hxx73
-rw-r--r--desktop/source/deployment/registry/script/makefile.mk49
-rw-r--r--desktop/source/deployment/registry/sfwk/dp_parceldesc.cxx130
-rw-r--r--desktop/source/deployment/registry/sfwk/dp_parceldesc.hxx89
-rw-r--r--desktop/source/deployment/registry/sfwk/dp_sfwk.cxx408
-rw-r--r--desktop/source/deployment/registry/sfwk/dp_sfwk.hrc35
-rw-r--r--desktop/source/deployment/registry/sfwk/dp_sfwk.src35
-rw-r--r--desktop/source/deployment/registry/sfwk/makefile.mk48
-rw-r--r--desktop/source/deployment/target.pmk36
-rw-r--r--desktop/source/deployment/unopkg/makefile.mk48
-rw-r--r--desktop/source/deployment/unopkg/unopkg.src84
-rw-r--r--desktop/source/inc/exithelper.hxx68
-rw-r--r--desktop/source/inc/helpid.hrc67
-rw-r--r--desktop/source/migration/cfgfilter.cxx333
-rw-r--r--desktop/source/migration/cfgfilter.hxx173
-rw-r--r--desktop/source/migration/makefile.mk59
-rwxr-xr-xdesktop/source/migration/migration.cxx1365
-rw-r--r--desktop/source/migration/migration.hxx46
-rw-r--r--desktop/source/migration/migration_impl.hxx252
-rw-r--r--desktop/source/migration/pages.cxx673
-rw-r--r--desktop/source/migration/pages.hxx214
-rw-r--r--desktop/source/migration/services/autocorrmigration.cxx285
-rw-r--r--desktop/source/migration/services/autocorrmigration.hxx102
-rw-r--r--desktop/source/migration/services/basicmigration.cxx274
-rw-r--r--desktop/source/migration/services/basicmigration.hxx102
-rw-r--r--desktop/source/migration/services/cexports.cxx73
-rw-r--r--desktop/source/migration/services/cexportsoo3.cxx61
-rw-r--r--desktop/source/migration/services/cppumaker.mk36
-rw-r--r--desktop/source/migration/services/jvmfwk.cxx529
-rw-r--r--desktop/source/migration/services/jvmfwk.hxx50
-rw-r--r--desktop/source/migration/services/makefile.mk134
-rw-r--r--desktop/source/migration/services/migrationoo2.component37
-rw-r--r--desktop/source/migration/services/migrationoo2.xml78
-rw-r--r--desktop/source/migration/services/migrationoo3.component34
-rw-r--r--desktop/source/migration/services/misc.hxx48
-rw-r--r--desktop/source/migration/services/oo3extensionmigration.cxx583
-rw-r--r--desktop/source/migration/services/oo3extensionmigration.hxx160
-rwxr-xr-xdesktop/source/migration/services/wordbookmigration.cxx322
-rwxr-xr-xdesktop/source/migration/services/wordbookmigration.hxx102
-rw-r--r--desktop/source/migration/wizard.cxx654
-rw-r--r--desktop/source/migration/wizard.hrc99
-rw-r--r--desktop/source/migration/wizard.hxx106
-rw-r--r--desktop/source/migration/wizard.src435
-rw-r--r--desktop/source/offacc/acceptor.cxx350
-rw-r--r--desktop/source/offacc/acceptor.hxx129
-rw-r--r--desktop/source/offacc/makefile.mk70
-rw-r--r--desktop/source/offacc/offacc.component34
-rw-r--r--desktop/source/pagein/file_image.h78
-rw-r--r--desktop/source/pagein/file_image_unx.c150
-rw-r--r--desktop/source/pagein/makefile.mk165
-rw-r--r--desktop/source/pagein/pagein.c149
-rw-r--r--desktop/source/pkgchk/unopkg/makefile.mk104
-rw-r--r--desktop/source/pkgchk/unopkg/unopkg_app.cxx691
-rw-r--r--desktop/source/pkgchk/unopkg/unopkg_cmdenv.cxx433
-rw-r--r--desktop/source/pkgchk/unopkg/unopkg_main.c36
-rw-r--r--desktop/source/pkgchk/unopkg/unopkg_main.h43
-rw-r--r--desktop/source/pkgchk/unopkg/unopkg_misc.cxx637
-rw-r--r--desktop/source/pkgchk/unopkg/unopkg_shared.h188
-rw-r--r--desktop/source/pkgchk/unopkg/version.map34
-rw-r--r--desktop/source/registration/com/sun/star/registration/Registration.java335
-rw-r--r--desktop/source/registration/com/sun/star/registration/makefile.mk62
-rw-r--r--desktop/source/registration/com/sun/star/registration/manifest2
-rw-r--r--desktop/source/registration/com/sun/star/registration/productregistration.jar.component34
-rw-r--r--desktop/source/registration/com/sun/star/servicetag/BrowserSupport.java201
-rw-r--r--desktop/source/registration/com/sun/star/servicetag/Installer.java943
-rw-r--r--desktop/source/registration/com/sun/star/servicetag/LinuxSystemEnvironment.java323
-rw-r--r--desktop/source/registration/com/sun/star/servicetag/RegistrationData.java531
-rw-r--r--desktop/source/registration/com/sun/star/servicetag/RegistrationDocument.java440
-rw-r--r--desktop/source/registration/com/sun/star/servicetag/Registry.java554
-rw-r--r--desktop/source/registration/com/sun/star/servicetag/ServiceTag.java636
-rw-r--r--desktop/source/registration/com/sun/star/servicetag/SolarisServiceTag.java64
-rw-r--r--desktop/source/registration/com/sun/star/servicetag/SolarisSystemEnvironment.java421
-rw-r--r--desktop/source/registration/com/sun/star/servicetag/SunConnection.java292
-rw-r--r--desktop/source/registration/com/sun/star/servicetag/SysnetRegistryHelper.java376
-rw-r--r--desktop/source/registration/com/sun/star/servicetag/SystemEnvironment.java436
-rw-r--r--desktop/source/registration/com/sun/star/servicetag/UnauthorizedAccessException.java55
-rw-r--r--desktop/source/registration/com/sun/star/servicetag/Util.java293
-rw-r--r--desktop/source/registration/com/sun/star/servicetag/WindowsSystemEnvironment.java232
-rw-r--r--desktop/source/registration/com/sun/star/servicetag/makefile.mk79
-rw-r--r--desktop/source/registration/com/sun/star/servicetag/resources/product_registration.xsd366
-rw-r--r--desktop/source/so_comp/evaluation.cxx205
-rw-r--r--desktop/source/so_comp/evaluation.hxx92
-rw-r--r--desktop/source/so_comp/makefile.mk84
-rw-r--r--desktop/source/so_comp/oemjob.cxx280
-rw-r--r--desktop/source/so_comp/oemjob.hxx92
-rw-r--r--desktop/source/so_comp/services.cxx134
-rw-r--r--desktop/source/so_comp/socomp.component37
-rwxr-xr-xdesktop/source/splash/firststart.cxx156
-rwxr-xr-xdesktop/source/splash/firststart.hxx90
-rw-r--r--desktop/source/splash/makefile.mk97
-rwxr-xr-xdesktop/source/splash/services_spl.cxx131
-rw-r--r--desktop/source/splash/spl.component37
-rw-r--r--desktop/source/splash/splash.cxx715
-rw-r--r--desktop/source/splash/splash.hxx136
-rw-r--r--desktop/test/deployment/boxt/Addons.xcu50
-rw-r--r--desktop/test/deployment/boxt/ProtocolHandler.xcu38
-rw-r--r--desktop/test/deployment/boxt/boxt.cxx235
-rw-r--r--desktop/test/deployment/boxt/description.xml39
-rw-r--r--desktop/test/deployment/boxt/makefile.mk68
-rw-r--r--desktop/test/deployment/boxt/manifest.xml37
-rw-r--r--desktop/test/deployment/dependencies/broken-dependency.oxtbin0 -> 1655 bytes-rw-r--r--desktop/test/deployment/dependencies/double-dependencies.oxtbin0 -> 1651 bytes-rw-r--r--desktop/test/deployment/dependencies/empty-dependencies.oxtbin0 -> 1624 bytes-rw-r--r--desktop/test/deployment/dependencies/funny-dependency.oxtbin0 -> 1730 bytes-rw-r--r--desktop/test/deployment/dependencies/license-dependency.oxtbin0 -> 1891 bytes-rw-r--r--desktop/test/deployment/dependencies/many-dependencies.oxtbin0 -> 1702 bytes-rw-r--r--desktop/test/deployment/dependencies/minattr22.oxtbin0 -> 1690 bytes-rw-r--r--desktop/test/deployment/dependencies/minattr23.oxtbin0 -> 1690 bytes-rw-r--r--desktop/test/deployment/dependencies/minattr24.oxtbin0 -> 1690 bytes-rw-r--r--desktop/test/deployment/dependencies/no-dependencies.oxtbin0 -> 1611 bytes-rw-r--r--desktop/test/deployment/dependencies/no-description.oxtbin0 -> 1360 bytes-rw-r--r--desktop/test/deployment/dependencies/readme.txt82
-rw-r--r--desktop/test/deployment/dependencies/unknown-dependency.oxtbin0 -> 1633 bytes-rw-r--r--desktop/test/deployment/dependencies/version10000.oxtbin0 -> 1668 bytes-rw-r--r--desktop/test/deployment/dependencies/version21.oxtbin0 -> 1666 bytes-rw-r--r--desktop/test/deployment/dependencies/version21ns.oxtbin0 -> 1661 bytes-rw-r--r--desktop/test/deployment/dependencies/version21other.oxtbin0 -> 1679 bytes-rw-r--r--desktop/test/deployment/dependencies/version22.oxtbin0 -> 1666 bytes-rw-r--r--desktop/test/deployment/dependencies/version23.oxtbin0 -> 1666 bytes-rw-r--r--desktop/test/deployment/dependencies/versionempty.oxtbin0 -> 1675 bytes-rw-r--r--desktop/test/deployment/dependencies/versionnone.oxtbin0 -> 1674 bytes-rw-r--r--desktop/test/deployment/description/desc1.oxtbin0 -> 2096 bytes-rw-r--r--desktop/test/deployment/description/desc2.oxtbin0 -> 2091 bytes-rw-r--r--desktop/test/deployment/description/desc3.oxtbin0 -> 2070 bytes-rw-r--r--desktop/test/deployment/description/desc4.oxtbin0 -> 2061 bytes-rw-r--r--desktop/test/deployment/description/desc5.oxtbin0 -> 2041 bytes-rwxr-xr-xdesktop/test/deployment/description/readme.txt23
-rw-r--r--desktop/test/deployment/display_name/name1.oxtbin0 -> 704 bytes-rw-r--r--desktop/test/deployment/display_name/name2.oxtbin0 -> 699 bytes-rw-r--r--desktop/test/deployment/display_name/name3.oxtbin0 -> 681 bytes-rw-r--r--desktop/test/deployment/display_name/name4.oxtbin0 -> 675 bytes-rw-r--r--desktop/test/deployment/display_name/name5.oxtbin0 -> 654 bytes-rw-r--r--desktop/test/deployment/display_name/readme.txt26
-rw-r--r--desktop/test/deployment/executable_content/build/hello.c45
-rw-r--r--desktop/test/deployment/executable_content/build/makefile.mk51
-rw-r--r--desktop/test/deployment/executable_content/build/readme.txt2
-rw-r--r--desktop/test/deployment/executable_content/hello.oxtbin0 -> 35048 bytes-rw-r--r--desktop/test/deployment/executable_content/readme.txt12
-rw-r--r--desktop/test/deployment/identifier/explicit/identifier.oxtbin0 -> 1660 bytes-rw-r--r--desktop/test/deployment/identifier/legacy/identifier.oxtbin0 -> 1634 bytes-rw-r--r--desktop/test/deployment/identifier/readme.txt33
-rw-r--r--desktop/test/deployment/locationtest/LocationTest.idl40
-rw-r--r--desktop/test/deployment/locationtest/LocationTest.java165
-rw-r--r--desktop/test/deployment/locationtest/LocationTest.odtbin0 -> 7681 bytes-rw-r--r--desktop/test/deployment/locationtest/MANIFEST.MF2
-rw-r--r--desktop/test/deployment/locationtest/delzip1
-rw-r--r--desktop/test/deployment/locationtest/description.xml13
-rw-r--r--desktop/test/deployment/locationtest/makefile.mk84
-rw-r--r--desktop/test/deployment/locationtest/manifest.xml5
-rw-r--r--desktop/test/deployment/options/handler/com/sun/star/comp/extensionoptions/MANIFEST.MF2
-rw-r--r--desktop/test/deployment/options/handler/com/sun/star/comp/extensionoptions/OptionsEventHandler.java449
-rw-r--r--desktop/test/deployment/options/handler/com/sun/star/comp/extensionoptions/makefile.mk53
-rw-r--r--desktop/test/deployment/options/leaf1.oxtbin0 -> 8308 bytes-rw-r--r--desktop/test/deployment/options/leaf1mod.oxtbin0 -> 8310 bytes-rw-r--r--desktop/test/deployment/options/leaf2.oxtbin0 -> 8338 bytes-rw-r--r--desktop/test/deployment/options/leaves1.oxtbin0 -> 21158 bytes-rw-r--r--desktop/test/deployment/options/leaves2.oxtbin0 -> 21153 bytes-rw-r--r--desktop/test/deployment/options/leaves3.oxtbin0 -> 21080 bytes-rw-r--r--desktop/test/deployment/options/modules1.oxtbin0 -> 24317 bytes-rw-r--r--desktop/test/deployment/options/modules2.oxtbin0 -> 24196 bytes-rw-r--r--desktop/test/deployment/options/nodes1.oxtbin0 -> 1882 bytes-rw-r--r--desktop/test/deployment/options/nodes2.oxtbin0 -> 24287 bytes-rw-r--r--desktop/test/deployment/options/nodes3.oxtbin0 -> 24315 bytes-rw-r--r--desktop/test/deployment/options/nodes4.oxtbin0 -> 24318 bytes-rw-r--r--desktop/test/deployment/options/nodes5.oxtbin0 -> 12616 bytes-rw-r--r--desktop/test/deployment/options/readme.txt200
-rw-r--r--desktop/test/deployment/simple_license/BadDesc.oxtbin0 -> 9663 bytes-rw-r--r--desktop/test/deployment/simple_license/BadNamespace.oxtbin0 -> 9736 bytes-rw-r--r--desktop/test/deployment/simple_license/BadRoot.oxtbin0 -> 9073 bytes-rw-r--r--desktop/test/deployment/simple_license/Locale1.oxtbin0 -> 2126 bytes-rw-r--r--desktop/test/deployment/simple_license/Locale2.oxtbin0 -> 2121 bytes-rw-r--r--desktop/test/deployment/simple_license/Locale3.oxtbin0 -> 2101 bytes-rw-r--r--desktop/test/deployment/simple_license/Locale4.oxtbin0 -> 2094 bytes-rw-r--r--desktop/test/deployment/simple_license/Locale5.oxtbin0 -> 2072 bytes-rw-r--r--desktop/test/deployment/simple_license/Locale6.oxtbin0 -> 1397 bytes-rw-r--r--desktop/test/deployment/simple_license/LongLic.oxtbin0 -> 9521 bytes-rw-r--r--desktop/test/deployment/simple_license/MissingLic.oxtbin0 -> 9214 bytes-rw-r--r--desktop/test/deployment/simple_license/MissingLicRef.oxtbin0 -> 9332 bytes-rw-r--r--desktop/test/deployment/simple_license/NoDefLang.oxtbin0 -> 9360 bytes-rw-r--r--desktop/test/deployment/simple_license/NoDesc.oxtbin0 -> 8722 bytes-rw-r--r--desktop/test/deployment/simple_license/NoLang.oxtbin0 -> 9217 bytes-rw-r--r--desktop/test/deployment/simple_license/Prefix.oxtbin0 -> 1112 bytes-rw-r--r--desktop/test/deployment/simple_license/ShortLicense.oxtbin0 -> 9381 bytes-rw-r--r--desktop/test/deployment/simple_license/ShortLicenseShared.oxtbin0 -> 9382 bytes-rwxr-xr-xdesktop/test/deployment/simple_license/suppress_license.oxtbin0 -> 2143 bytes-rw-r--r--desktop/test/deployment/simple_license/tests_simple_license.odtbin0 -> 16629 bytes-rw-r--r--desktop/test/deployment/update/changing_display_name/change1.oxtbin0 -> 1650 bytes-rw-r--r--desktop/test/deployment/update/changing_display_name/change1_mod.oxtbin0 -> 1673 bytes-rw-r--r--desktop/test/deployment/update/changing_display_name/readme.txt13
-rw-r--r--desktop/test/deployment/update/changing_display_name/update1/change1.oxtbin0 -> 1675 bytes-rw-r--r--desktop/test/deployment/update/changing_display_name/update1/change1.update.xml10
-rw-r--r--desktop/test/deployment/update/changing_display_name/update2/change1.oxtbin0 -> 1687 bytes-rw-r--r--desktop/test/deployment/update/changing_display_name/update2/change1.update.xml10
-rw-r--r--desktop/test/deployment/update/default_url/default1.oxtbin0 -> 1544 bytes-rw-r--r--desktop/test/deployment/update/default_url/default2.oxtbin0 -> 1544 bytes-rw-r--r--desktop/test/deployment/update/default_url/readme.txt9
-rw-r--r--desktop/test/deployment/update/default_url/update/default1.oxtbin0 -> 1546 bytes-rw-r--r--desktop/test/deployment/update/default_url/update/default1.update.xml10
-rw-r--r--desktop/test/deployment/update/default_url/update/default2.oxtbin0 -> 1546 bytes-rw-r--r--desktop/test/deployment/update/default_url/update/default2.update.xml10
-rw-r--r--desktop/test/deployment/update/default_url/update/feed1.xml33
-rw-r--r--desktop/test/deployment/update/defect/fail1.oxtbin0 -> 2189 bytes-rw-r--r--desktop/test/deployment/update/defect/fail2.oxtbin0 -> 2188 bytes-rw-r--r--desktop/test/deployment/update/defect/fail3.oxtbin0 -> 2188 bytes-rw-r--r--desktop/test/deployment/update/defect/fail4.oxtbin0 -> 2189 bytes-rw-r--r--desktop/test/deployment/update/defect/info1.oxtbin0 -> 2188 bytes-rw-r--r--desktop/test/deployment/update/defect/info2.oxtbin0 -> 2187 bytes-rw-r--r--desktop/test/deployment/update/defect/info3.oxtbin0 -> 2187 bytes-rw-r--r--desktop/test/deployment/update/defect/readme.txt15
-rw-r--r--desktop/test/deployment/update/defect/update/fail1.oxtbin0 -> 2193 bytes-rw-r--r--desktop/test/deployment/update/defect/update/fail1.update.xml10
-rw-r--r--desktop/test/deployment/update/defect/update/fail2.oxtbin0 -> 2436 bytes-rw-r--r--desktop/test/deployment/update/defect/update/fail2.update.xml10
-rw-r--r--desktop/test/deployment/update/defect/update/fail3.oxtbin0 -> 2396 bytes-rw-r--r--desktop/test/deployment/update/defect/update/fail3.update.xml10
-rw-r--r--desktop/test/deployment/update/defect/update/fail4.oxt0
-rw-r--r--desktop/test/deployment/update/defect/update/fail4.update.xml10
-rw-r--r--desktop/test/deployment/update/defect/update/info1.update.xml0
-rw-r--r--desktop/test/deployment/update/defect/update/info2.update.xml1
-rw-r--r--desktop/test/deployment/update/defect/update/info3.oxtbin0 -> 2189 bytes-rw-r--r--desktop/test/deployment/update/defect/update/info3.update.xml10
-rw-r--r--desktop/test/deployment/update/dependencies/publisher_en.html9
-rw-r--r--desktop/test/deployment/update/dependencies/readme.txt32
-rw-r--r--desktop/test/deployment/update/dependencies/release-notes_en.html8
-rw-r--r--desktop/test/deployment/update/dependencies/update-dependencies.oxtbin0 -> 1751 bytes-rw-r--r--desktop/test/deployment/update/dependencies/update/update-dependencies.update.xml71
-rw-r--r--desktop/test/deployment/update/license/lic1.oxtbin0 -> 3608 bytes-rw-r--r--desktop/test/deployment/update/license/lic2.oxtbin0 -> 3625 bytes-rw-r--r--desktop/test/deployment/update/license/lic3.oxtbin0 -> 3624 bytes-rw-r--r--desktop/test/deployment/update/license/readme.txt9
-rw-r--r--desktop/test/deployment/update/license/update/lic1.oxtbin0 -> 3610 bytes-rw-r--r--desktop/test/deployment/update/license/update/lic1.update.xml10
-rw-r--r--desktop/test/deployment/update/license/update/lic2.oxtbin0 -> 3627 bytes-rw-r--r--desktop/test/deployment/update/license/update/lic2.update.xml10
-rw-r--r--desktop/test/deployment/update/license/update/lic3.oxtbin0 -> 3626 bytes-rw-r--r--desktop/test/deployment/update/license/update/lic3.update.xml10
-rw-r--r--desktop/test/deployment/update/platform/all1.oxtbin0 -> 692 bytes-rw-r--r--desktop/test/deployment/update/platform/all2.oxtbin0 -> 702 bytes-rw-r--r--desktop/test/deployment/update/platform/all3.oxtbin0 -> 297 bytes-rw-r--r--desktop/test/deployment/update/platform/freebsd_x86.oxtbin0 -> 706 bytes-rw-r--r--desktop/test/deployment/update/platform/freebsd_x86_64.oxtbin0 -> 711 bytes-rw-r--r--desktop/test/deployment/update/platform/invalid1.oxtbin0 -> 653 bytes-rw-r--r--desktop/test/deployment/update/platform/invalid2.oxtbin0 -> 653 bytes-rw-r--r--desktop/test/deployment/update/platform/invalid3.oxtbin0 -> 655 bytes-rw-r--r--desktop/test/deployment/update/platform/linux_arm_eabi.oxtbin0 -> 709 bytes-rw-r--r--desktop/test/deployment/update/platform/linux_arm_oabi.oxtbin0 -> 710 bytes-rw-r--r--desktop/test/deployment/update/platform/linux_ia64.oxtbin0 -> 706 bytes-rw-r--r--desktop/test/deployment/update/platform/linux_mips_eb.oxtbin0 -> 709 bytes-rw-r--r--desktop/test/deployment/update/platform/linux_mips_el.oxtbin0 -> 708 bytes-rw-r--r--desktop/test/deployment/update/platform/linux_powerpc.oxtbin0 -> 708 bytes-rw-r--r--desktop/test/deployment/update/platform/linux_powerpc64.oxtbin0 -> 710 bytes-rw-r--r--desktop/test/deployment/update/platform/linux_s390.oxtbin0 -> 705 bytes-rw-r--r--desktop/test/deployment/update/platform/linux_s390x.oxtbin0 -> 706 bytes-rw-r--r--desktop/test/deployment/update/platform/linux_sparc.oxtbin0 -> 706 bytes-rw-r--r--desktop/test/deployment/update/platform/linux_x86.oxtbin0 -> 705 bytes-rw-r--r--desktop/test/deployment/update/platform/linux_x86_64.oxtbin0 -> 708 bytes-rw-r--r--desktop/test/deployment/update/platform/macosx_powerpc.oxtbin0 -> 710 bytes-rw-r--r--desktop/test/deployment/update/platform/macosx_x86.oxtbin0 -> 707 bytes-rw-r--r--desktop/test/deployment/update/platform/mul1.oxtbin0 -> 952 bytes-rw-r--r--desktop/test/deployment/update/platform/os2_x86.oxtbin0 -> 706 bytes-rw-r--r--desktop/test/deployment/update/platform/readme.txt49
-rw-r--r--desktop/test/deployment/update/platform/solaris_sparc.oxtbin0 -> 709 bytes-rw-r--r--desktop/test/deployment/update/platform/solaris_x86.oxtbin0 -> 706 bytes-rw-r--r--desktop/test/deployment/update/platform/windows_x86.oxtbin0 -> 707 bytes-rw-r--r--desktop/test/deployment/update/publisher/pub1.oxtbin0 -> 1882 bytes-rw-r--r--desktop/test/deployment/update/publisher/pub10.oxtbin0 -> 1742 bytes-rw-r--r--desktop/test/deployment/update/publisher/pub11.oxtbin0 -> 1601 bytes-rw-r--r--desktop/test/deployment/update/publisher/pub2.oxtbin0 -> 1866 bytes-rw-r--r--desktop/test/deployment/update/publisher/pub3.oxtbin0 -> 1829 bytes-rw-r--r--desktop/test/deployment/update/publisher/pub4.oxtbin0 -> 1812 bytes-rw-r--r--desktop/test/deployment/update/publisher/pub5.oxtbin0 -> 1769 bytes-rw-r--r--desktop/test/deployment/update/publisher/pub6.oxtbin0 -> 1814 bytes-rw-r--r--desktop/test/deployment/update/publisher/pub7.oxtbin0 -> 1769 bytes-rw-r--r--desktop/test/deployment/update/publisher/pub8.oxtbin0 -> 1853 bytes-rw-r--r--desktop/test/deployment/update/publisher/pub9.oxtbin0 -> 1779 bytes-rw-r--r--desktop/test/deployment/update/publisher/publisher_de-DE-altmark.html9
-rw-r--r--desktop/test/deployment/update/publisher/publisher_de-DE.html9
-rw-r--r--desktop/test/deployment/update/publisher/publisher_de.html9
-rw-r--r--desktop/test/deployment/update/publisher/publisher_en-GB.html9
-rw-r--r--desktop/test/deployment/update/publisher/publisher_en-US-region1.html9
-rw-r--r--desktop/test/deployment/update/publisher/publisher_en-US-region2.html9
-rw-r--r--desktop/test/deployment/update/publisher/publisher_en-US.html9
-rw-r--r--desktop/test/deployment/update/publisher/publisher_en-region3.html9
-rw-r--r--desktop/test/deployment/update/publisher/publisher_en.html9
-rw-r--r--desktop/test/deployment/update/publisher/readme.txt212
-rw-r--r--desktop/test/deployment/update/publisher/release-notes_de-DE-altmark.html8
-rw-r--r--desktop/test/deployment/update/publisher/release-notes_de-DE.html8
-rw-r--r--desktop/test/deployment/update/publisher/release-notes_de.html8
-rw-r--r--desktop/test/deployment/update/publisher/release-notes_en-GB.html8
-rw-r--r--desktop/test/deployment/update/publisher/release-notes_en-US-region1.html8
-rw-r--r--desktop/test/deployment/update/publisher/release-notes_en-US-region2.html8
-rw-r--r--desktop/test/deployment/update/publisher/release-notes_en-US.html8
-rw-r--r--desktop/test/deployment/update/publisher/release-notes_en-region3.html8
-rw-r--r--desktop/test/deployment/update/publisher/release-notes_en.html8
-rw-r--r--desktop/test/deployment/update/publisher/update/pub1.oxtbin0 -> 1885 bytes-rw-r--r--desktop/test/deployment/update/publisher/update/pub1.update.xml36
-rw-r--r--desktop/test/deployment/update/publisher/update/pub10.oxtbin0 -> 1744 bytes-rw-r--r--desktop/test/deployment/update/publisher/update/pub11.oxtbin0 -> 1603 bytes-rw-r--r--desktop/test/deployment/update/publisher/update/pub2.oxtbin0 -> 1871 bytes-rw-r--r--desktop/test/deployment/update/publisher/update/pub2.update.xml34
-rw-r--r--desktop/test/deployment/update/publisher/update/pub3.oxtbin0 -> 1833 bytes-rw-r--r--desktop/test/deployment/update/publisher/update/pub3.update.xml30
-rw-r--r--desktop/test/deployment/update/publisher/update/pub4.oxtbin0 -> 1815 bytes-rw-r--r--desktop/test/deployment/update/publisher/update/pub4.update.xml28
-rw-r--r--desktop/test/deployment/update/publisher/update/pub5.oxtbin0 -> 1774 bytes-rw-r--r--desktop/test/deployment/update/publisher/update/pub5.update.xml24
-rw-r--r--desktop/test/deployment/update/publisher/update/pub6.oxtbin0 -> 1816 bytes-rw-r--r--desktop/test/deployment/update/publisher/update/pub6.update.xml24
-rw-r--r--desktop/test/deployment/update/publisher/update/pub7.oxtbin0 -> 1771 bytes-rw-r--r--desktop/test/deployment/update/publisher/update/pub7.update.xml24
-rw-r--r--desktop/test/deployment/update/publisher/update/pub8.oxtbin0 -> 1855 bytes-rw-r--r--desktop/test/deployment/update/publisher/update/pub9.oxtbin0 -> 1781 bytes-rw-r--r--desktop/test/deployment/update/readme.txt68
-rw-r--r--desktop/test/deployment/update/simple/plain1.oxtbin0 -> 1642 bytes-rw-r--r--desktop/test/deployment/update/simple/plain2.oxtbin0 -> 1643 bytes-rw-r--r--desktop/test/deployment/update/simple/plain3.oxtbin0 -> 1643 bytes-rw-r--r--desktop/test/deployment/update/simple/readme.txt31
-rw-r--r--desktop/test/deployment/update/simple/update/plain1.oxtbin0 -> 1645 bytes-rw-r--r--desktop/test/deployment/update/simple/update/plain1.update.xml10
-rw-r--r--desktop/test/deployment/update/simple/update/plain2.oxtbin0 -> 1645 bytes-rw-r--r--desktop/test/deployment/update/simple/update/plain2.update.xml10
-rw-r--r--desktop/test/deployment/update/simple/update/plain3.oxtbin0 -> 1645 bytes-rw-r--r--desktop/test/deployment/update/simple/update/plain3.update.xml10
-rw-r--r--desktop/test/deployment/update/updatefeed/feed1.oxtbin0 -> 2184 bytes-rw-r--r--desktop/test/deployment/update/updatefeed/feed2.oxtbin0 -> 2184 bytes-rw-r--r--desktop/test/deployment/update/updatefeed/update/feed1.oxtbin0 -> 2184 bytes-rw-r--r--desktop/test/deployment/update/updatefeed/update/feed1.update.xml10
-rw-r--r--desktop/test/deployment/update/updatefeed/update/feed1.xml33
-rw-r--r--desktop/test/deployment/update/updatefeed/update/feed2.oxtbin0 -> 2184 bytes-rw-r--r--desktop/test/deployment/update/updatefeed/update/feed2.update.xml10
-rwxr-xr-xdesktop/test/deployment/update/updateinfocreation/build/MANIFEST.MF2
-rwxr-xr-xdesktop/test/deployment/update/updateinfocreation/build/TestExtension.idl40
-rwxr-xr-xdesktop/test/deployment/update/updateinfocreation/build/TestExtension.java165
-rwxr-xr-xdesktop/test/deployment/update/updateinfocreation/build/delzip1
-rw-r--r--desktop/test/deployment/update/updateinfocreation/build/description.xml13
-rwxr-xr-xdesktop/test/deployment/update/updateinfocreation/build/makefile.mk88
-rwxr-xr-xdesktop/test/deployment/update/updateinfocreation/build/manifest.xml5
-rw-r--r--desktop/test/deployment/update/updateinfocreation/readme.txt38
-rw-r--r--desktop/test/deployment/update/updateinfocreation/update/updateinfo.oxtbin0 -> 4295 bytes-rw-r--r--desktop/test/deployment/update/updateinfocreation/updateinfo.oxtbin0 -> 4295 bytes-rw-r--r--desktop/test/deployment/update/website_update/readme.txt133
-rw-r--r--desktop/test/deployment/update/website_update/update/web1.oxtbin0 -> 1695 bytes-rw-r--r--desktop/test/deployment/update/website_update/update/web1.update.xml20
-rw-r--r--desktop/test/deployment/update/website_update/update/web1_de-DE-altmark.html18
-rw-r--r--desktop/test/deployment/update/website_update/update/web1_de-DE.html18
-rw-r--r--desktop/test/deployment/update/website_update/update/web1_de.html19
-rw-r--r--desktop/test/deployment/update/website_update/update/web1_en-GB.html19
-rw-r--r--desktop/test/deployment/update/website_update/update/web1_en-US-region1.html19
-rw-r--r--desktop/test/deployment/update/website_update/update/web1_en-US-region2.html19
-rw-r--r--desktop/test/deployment/update/website_update/update/web1_en-US.html20
-rw-r--r--desktop/test/deployment/update/website_update/update/web1_en-region3.html19
-rw-r--r--desktop/test/deployment/update/website_update/update/web1_en.html19
-rw-r--r--desktop/test/deployment/update/website_update/update/web2.oxtbin0 -> 1695 bytes-rw-r--r--desktop/test/deployment/update/website_update/update/web2.update.xml19
-rw-r--r--desktop/test/deployment/update/website_update/update/web3.oxtbin0 -> 1695 bytes-rw-r--r--desktop/test/deployment/update/website_update/update/web3.update.xml17
-rw-r--r--desktop/test/deployment/update/website_update/update/web4.oxtbin0 -> 1695 bytes-rw-r--r--desktop/test/deployment/update/website_update/update/web4.update.xml16
-rw-r--r--desktop/test/deployment/update/website_update/update/web5.oxtbin0 -> 1695 bytes-rw-r--r--desktop/test/deployment/update/website_update/update/web5.update.xml14
-rw-r--r--desktop/test/deployment/update/website_update/update/web6.oxtbin0 -> 1640 bytes-rw-r--r--desktop/test/deployment/update/website_update/update/web6/description.xml11
-rw-r--r--desktop/test/deployment/update/website_update/update/web6/readme.txt5
-rw-r--r--desktop/test/deployment/update/website_update/update/web7.oxtbin0 -> 1897 bytes-rw-r--r--desktop/test/deployment/update/website_update/update/web7/description.xml36
-rw-r--r--desktop/test/deployment/update/website_update/update/web7/readme.txt5
-rw-r--r--desktop/test/deployment/update/website_update/web1.oxtbin0 -> 1693 bytes-rw-r--r--desktop/test/deployment/update/website_update/web2.oxtbin0 -> 1693 bytes-rw-r--r--desktop/test/deployment/update/website_update/web3.oxtbin0 -> 1693 bytes-rw-r--r--desktop/test/deployment/update/website_update/web4.oxtbin0 -> 1693 bytes-rw-r--r--desktop/test/deployment/update/website_update/web5.oxtbin0 -> 1693 bytes-rw-r--r--desktop/test/deployment/update/website_update/web6.oxtbin0 -> 1638 bytes-rw-r--r--desktop/test/deployment/update/website_update/web7.oxtbin0 -> 1894 bytes-rw-r--r--desktop/test/deployment/update/wrong_url/readme.txt18
-rw-r--r--desktop/test/deployment/update/wrong_url/update/url1.oxtbin0 -> 2192 bytes-rw-r--r--desktop/test/deployment/update/wrong_url/update/url1.update.xml11
-rw-r--r--desktop/test/deployment/update/wrong_url/update/url2.oxtbin0 -> 2206 bytes-rw-r--r--desktop/test/deployment/update/wrong_url/update/url2.update.xml10
-rw-r--r--desktop/test/deployment/update/wrong_url/update/wrongdownload1.update.xml11
-rw-r--r--desktop/test/deployment/update/wrong_url/update/wrongdownload2.update.xml11
-rw-r--r--desktop/test/deployment/update/wrong_url/update/wrongdownload3.update.xml11
-rw-r--r--desktop/test/deployment/update/wrong_url/url1.oxtbin0 -> 2190 bytes-rw-r--r--desktop/test/deployment/update/wrong_url/url2.oxtbin0 -> 2205 bytes-rw-r--r--desktop/test/deployment/update/wrong_url/url3.oxtbin0 -> 2204 bytes-rw-r--r--desktop/test/deployment/update/wrong_url/wrongdownload1.oxtbin0 -> 2194 bytes-rw-r--r--desktop/test/deployment/update/wrong_url/wrongdownload2.oxtbin0 -> 2194 bytes-rw-r--r--desktop/test/deployment/update/wrong_url/wrongdownload3.oxtbin0 -> 2194 bytes-rw-r--r--desktop/test/deployment/version/readme.txt85
-rw-r--r--desktop/test/deployment/version/version_0.0/dependency.oxtbin0 -> 1657 bytes-rw-r--r--desktop/test/deployment/version/version_0.0/license.oxtbin0 -> 1733 bytes-rw-r--r--desktop/test/deployment/version/version_0.0/plain.oxtbin0 -> 1618 bytes-rw-r--r--desktop/test/deployment/version/version_1.02.4.7.0/dependency.oxtbin0 -> 1662 bytes-rw-r--r--desktop/test/deployment/version/version_1.02.4.7.0/license.oxtbin0 -> 1738 bytes-rw-r--r--desktop/test/deployment/version/version_1.02.4.7.0/plain.oxtbin0 -> 1624 bytes-rw-r--r--desktop/test/deployment/version/version_1.2.15.3/dependency.oxtbin0 -> 1662 bytes-rw-r--r--desktop/test/deployment/version/version_1.2.15.3/license.oxtbin0 -> 1738 bytes-rw-r--r--desktop/test/deployment/version/version_1.2.15.3/plain.oxtbin0 -> 1624 bytes-rw-r--r--desktop/test/deployment/version/version_1.2.3/dependency.oxtbin0 -> 1659 bytes-rw-r--r--desktop/test/deployment/version/version_1.2.3/license.oxtbin0 -> 1735 bytes-rw-r--r--desktop/test/deployment/version/version_1.2.3/plain.oxtbin0 -> 1620 bytes-rw-r--r--desktop/test/deployment/version/version_1.2.4.7/dependency.oxtbin0 -> 1661 bytes-rw-r--r--desktop/test/deployment/version/version_1.2.4.7/license.oxtbin0 -> 1737 bytes-rw-r--r--desktop/test/deployment/version/version_1.2.4.7/plain.oxtbin0 -> 1623 bytes-rw-r--r--desktop/test/deployment/version/version_badelement/dependency.oxtbin0 -> 1654 bytes-rw-r--r--desktop/test/deployment/version/version_badelement/license.oxtbin0 -> 1731 bytes-rw-r--r--desktop/test/deployment/version/version_badelement/plain.oxtbin0 -> 1616 bytes-rw-r--r--desktop/test/deployment/version/version_badvalue/dependency.oxtbin0 -> 1657 bytes-rw-r--r--desktop/test/deployment/version/version_badvalue/license.oxtbin0 -> 1733 bytes-rw-r--r--desktop/test/deployment/version/version_badvalue/plain.oxtbin0 -> 1618 bytes-rw-r--r--desktop/test/deployment/version/version_nodependencies_0.0/dependency.oxtbin0 -> 1618 bytes-rw-r--r--desktop/test/deployment/version/version_nodependencies_1.02.4.7.0/dependency.oxtbin0 -> 1624 bytes-rw-r--r--desktop/test/deployment/version/version_nodependencies_1.2.15.3/dependency.oxtbin0 -> 1624 bytes-rw-r--r--desktop/test/deployment/version/version_nodependencies_1.2.3/dependency.oxtbin0 -> 1620 bytes-rw-r--r--desktop/test/deployment/version/version_nodependencies_1.2.4.7/dependency.oxtbin0 -> 1623 bytes-rw-r--r--desktop/test/deployment/version/version_nodependencies_badelement/dependency.oxtbin0 -> 1616 bytes-rw-r--r--desktop/test/deployment/version/version_nodependencies_badvalue/dependency.oxtbin0 -> 1618 bytes-rw-r--r--desktop/test/deployment/version/version_nodependencies_none/dependency.oxtbin0 -> 1598 bytes-rw-r--r--desktop/test/deployment/version/version_none/dependency.oxtbin0 -> 1645 bytes-rw-r--r--desktop/test/deployment/version/version_none/license.oxtbin0 -> 1722 bytes-rw-r--r--desktop/test/deployment/version/version_none/plain.oxtbin0 -> 1598 bytes-rw-r--r--desktop/unx/source/officeloader/makefile.mk47
-rwxr-xr-xdesktop/unx/source/officeloader/officeloader.cxx110
-rw-r--r--desktop/util/hidother.src54
-rw-r--r--desktop/util/makefile.mk277
-rw-r--r--desktop/util/ooverinfo.rc138
-rw-r--r--desktop/util/ooverinfo2.rc90
-rw-r--r--desktop/util/soffice.icobin0 -> 4990 bytes-rw-r--r--desktop/util/template.manifest10
-rwxr-xr-xdesktop/util/verinfo.rc142
-rw-r--r--desktop/util/writer.r1
-rw-r--r--desktop/win32/source/applauncher/launcher.cxx146
-rw-r--r--desktop/win32/source/applauncher/launcher.hxx21
-rw-r--r--desktop/win32/source/applauncher/makefile.mk148
-rw-r--r--desktop/win32/source/applauncher/ooo/makefile.mk130
-rwxr-xr-xdesktop/win32/source/applauncher/ooo/verinfo.rc97
-rw-r--r--desktop/win32/source/applauncher/sbase.cxx34
-rw-r--r--desktop/win32/source/applauncher/scalc.cxx34
-rw-r--r--desktop/win32/source/applauncher/sdraw.cxx34
-rw-r--r--desktop/win32/source/applauncher/simpress.cxx34
-rw-r--r--desktop/win32/source/applauncher/smath.cxx34
-rw-r--r--desktop/win32/source/applauncher/sweb.cxx34
-rw-r--r--desktop/win32/source/applauncher/swriter.cxx32
-rwxr-xr-xdesktop/win32/source/applauncher/verinfo.rc102
-rw-r--r--desktop/win32/source/extendloaderenvironment.cxx182
-rw-r--r--desktop/win32/source/extendloaderenvironment.hxx95
-rw-r--r--desktop/win32/source/guiloader/genericloader.cxx176
-rw-r--r--desktop/win32/source/guiloader/makefile.mk64
-rw-r--r--desktop/win32/source/guistdio/guistdio.cxx30
-rw-r--r--desktop/win32/source/guistdio/guistdio.inc453
-rw-r--r--desktop/win32/source/guistdio/makefile.mk58
-rw-r--r--desktop/win32/source/guistdio/unopkgio.cxx31
-rw-r--r--desktop/win32/source/lwrapa.cxx32
-rw-r--r--desktop/win32/source/lwrapw.cxx33
-rw-r--r--desktop/win32/source/main.h13
-rw-r--r--desktop/win32/source/makefile.mk63
-rw-r--r--desktop/win32/source/officeloader/makefile.mk63
-rw-r--r--desktop/win32/source/officeloader/officeloader.cxx425
-rw-r--r--desktop/win32/source/rebase/Resource.h38
-rw-r--r--desktop/win32/source/rebase/makefile.mk89
-rw-r--r--desktop/win32/source/rebase/rcfooter.txt2
-rw-r--r--desktop/win32/source/rebase/rcheader.txt39
-rw-r--r--desktop/win32/source/rebase/rctmpl.txt9
-rw-r--r--desktop/win32/source/rebase/rebase.cxx187
-rw-r--r--desktop/win32/source/rebase/rebasegui.cxx197
-rw-r--r--desktop/win32/source/rebase/rebasegui.ulf11
-rw-r--r--desktop/win32/source/rwrapa.cxx32
-rw-r--r--desktop/win32/source/rwrapw.cxx33
-rw-r--r--desktop/win32/source/setup/Resource.h79
-rw-r--r--desktop/win32/source/setup/makefile.mk91
-rw-r--r--desktop/win32/source/setup/rcfooter.txt2
-rw-r--r--desktop/win32/source/setup/rcheader.txt43
-rw-r--r--desktop/win32/source/setup/rctmpl.txt49
-rwxr-xr-xdesktop/win32/source/setup/setup.cpp2066
-rw-r--r--desktop/win32/source/setup/setup.hxx154
-rw-r--r--desktop/win32/source/setup/setup.icobin0 -> 4710 bytes-rw-r--r--desktop/win32/source/setup/setup.ulf162
-rw-r--r--desktop/win32/source/setup/setup_a.cxx31
-rw-r--r--desktop/win32/source/setup/setup_help.hxx47
-rw-r--r--desktop/win32/source/setup/setup_main.cxx147
-rw-r--r--desktop/win32/source/setup/setup_main.hxx74
-rw-r--r--desktop/win32/source/setup/setup_w.cxx35
-rw-r--r--desktop/win32/source/sowrapper.cxx47
-rw-r--r--desktop/win32/source/unoinfo.cxx148
-rw-r--r--desktop/win32/source/wrapper.h173
-rw-r--r--desktop/win32/source/wrappera.cxx31
-rw-r--r--desktop/win32/source/wrapperw.cxx32
-rw-r--r--desktop/zipintro/delzip1
-rw-r--r--desktop/zipintro/makefile.mk134
-rwxr-xr-xdmake/AUTHORS0
-rwxr-xr-xdmake/COPYING37
-rwxr-xr-xdmake/ChangeLog4259
-rwxr-xr-xdmake/INSTALL3
-rwxr-xr-xdmake/Makefile.am64
-rwxr-xr-xdmake/Makefile.in869
-rwxr-xr-xdmake/NEWS316
-rwxr-xr-xdmake/acinclude.m43
-rwxr-xr-xdmake/aclocal.m4908
-rw-r--r--dmake/alloc.h59
-rwxr-xr-xdmake/autogen.sh63
-rwxr-xr-xdmake/compile142
-rwxr-xr-xdmake/config.guess1463
-rw-r--r--dmake/config.h.in184
-rwxr-xr-xdmake/config.sub1579
-rwxr-xr-xdmake/configure9000
-rwxr-xr-xdmake/configure.in220
-rw-r--r--dmake/dag.c697
-rw-r--r--dmake/db.h66
-rw-r--r--dmake/dbug/dbug.mk66
-rw-r--r--dmake/dbug/dbug/dbug.c1845
-rw-r--r--dmake/dbug/dbug/dbug.h164
-rwxr-xr-xdmake/dbug/dbug/dbug.txt1452
-rw-r--r--dmake/dbug/dbug/dbug.uue368
-rwxr-xr-xdmake/dbug/dbug/example1.c12
-rwxr-xr-xdmake/dbug/dbug/example2.c17
-rwxr-xr-xdmake/dbug/dbug/example3.c16
-rwxr-xr-xdmake/dbug/dbug/factorial.c15
-rwxr-xr-xdmake/dbug/dbug/main.c27
-rwxr-xr-xdmake/dbug/dbug/makeman.sh18
-rw-r--r--dmake/dbug/dbug/readme52
-rwxr-xr-xdmake/dbug/dbug/user.r938
-rw-r--r--dmake/dbug/getwd.c6
-rw-r--r--dmake/dbug/malloc/_changes9
-rw-r--r--dmake/dbug/malloc/_readme133
-rw-r--r--dmake/dbug/malloc/calloc.c49
-rw-r--r--dmake/dbug/malloc/debug.h99
-rw-r--r--dmake/dbug/malloc/dump.c103
-rw-r--r--dmake/dbug/malloc/free.c150
-rw-r--r--dmake/dbug/malloc/m_init.c79
-rw-r--r--dmake/dbug/malloc/m_perror.c73
-rw-r--r--dmake/dbug/malloc/makefile77
-rw-r--r--dmake/dbug/malloc/malloc.3223
-rw-r--r--dmake/dbug/malloc/malloc.c627
-rw-r--r--dmake/dbug/malloc/malloc.h85
-rw-r--r--dmake/dbug/malloc/mallopt.c98
-rw-r--r--dmake/dbug/malloc/memory.c195
-rw-r--r--dmake/dbug/malloc/mlc_chk.c256
-rw-r--r--dmake/dbug/malloc/mlc_chn.c188
-rw-r--r--dmake/dbug/malloc/patchlev1
-rw-r--r--dmake/dbug/malloc/realloc.c180
-rw-r--r--dmake/dbug/malloc/string.c533
-rw-r--r--dmake/dbug/malloc/testmem.c646
-rw-r--r--dmake/dbug/malloc/testmlc.c176
-rw-r--r--dmake/dbug/malloc/tostring.c132
-rw-r--r--dmake/dbug/malloc/tostring.h13
-rw-r--r--dmake/dbug/readme13
-rwxr-xr-xdmake/depcomp530
-rw-r--r--dmake/dmake.c959
-rw-r--r--dmake/dmake.h230
-rw-r--r--dmake/dmakeroot.h.in6
-rw-r--r--dmake/dmdump.c287
-rw-r--r--dmake/dmstring.c300
-rw-r--r--dmake/dstdarg.h43
-rw-r--r--dmake/expand.c1204
-rw-r--r--dmake/extern.h192
-rw-r--r--dmake/function.c726
-rw-r--r--dmake/getinp.c848
-rw-r--r--dmake/hash.c54
-rw-r--r--dmake/imacs.c206
-rw-r--r--dmake/infer.c904
-rwxr-xr-xdmake/install-sh323
-rw-r--r--dmake/itypes.h82
-rw-r--r--dmake/mac/arlib.c56
-rw-r--r--dmake/mac/bogus.c99
-rw-r--r--dmake/mac/config.mk44
-rw-r--r--dmake/mac/dirbrk.c42
-rw-r--r--dmake/mac/directry.c264
-rw-r--r--dmake/mac/dompwmak67
-rw-r--r--dmake/mac/environ.c231
-rw-r--r--dmake/mac/eold.c119
-rw-r--r--dmake/mac/main.c43
-rw-r--r--dmake/mac/make.sh107
-rw-r--r--dmake/mac/make_mac.sh105
-rw-r--r--dmake/mac/public.h173
-rw-r--r--dmake/mac/rmprq.c38
-rw-r--r--dmake/mac/ruletab.c43
-rw-r--r--dmake/mac/startup.h28
-rw-r--r--dmake/mac/sysintf.h41
-rw-r--r--dmake/mac/template.mk7
-rw-r--r--dmake/mac/tempnam.c65
-rw-r--r--dmake/mac/tomacfil.c38
-rw-r--r--dmake/macparse.c232
-rwxr-xr-xdmake/make.bat273
-rw-r--r--dmake/make.c1774
-rwxr-xr-xdmake/make.cmd115
-rw-r--r--dmake/makefile.mk432
-rw-r--r--dmake/man/dmake.nc3644
-rw-r--r--dmake/man/dmake.tf3480
-rw-r--r--dmake/man/readme12
-rwxr-xr-xdmake/missing360
-rwxr-xr-xdmake/mkinstalldirs158
-rw-r--r--dmake/msdos/arlib.c56
-rw-r--r--dmake/msdos/borland/bcc30/config.h48
-rw-r--r--dmake/msdos/borland/bcc30/config.mk8
-rw-r--r--dmake/msdos/borland/bcc30/lib.rsp1
-rw-r--r--dmake/msdos/borland/bcc30/libswp.rsp1
-rwxr-xr-xdmake/msdos/borland/bcc30/mkswp.bat107
-rw-r--r--dmake/msdos/borland/bcc30/obj.rsp34
-rw-r--r--dmake/msdos/borland/bcc30/objswp.rsp36
-rw-r--r--dmake/msdos/borland/bcc30/public.h170
-rw-r--r--dmake/msdos/borland/bcc30/template.mk7
-rw-r--r--dmake/msdos/borland/bcc40/config.h51
-rw-r--r--dmake/msdos/borland/bcc40/config.mk7
-rw-r--r--dmake/msdos/borland/bcc40/lib.rsp2
-rw-r--r--dmake/msdos/borland/bcc40/libswp.rsp1
-rwxr-xr-xdmake/msdos/borland/bcc40/mkswp.bat107
-rw-r--r--dmake/msdos/borland/bcc40/obj.rsp34
-rw-r--r--dmake/msdos/borland/bcc40/objswp.rsp36
-rw-r--r--dmake/msdos/borland/bcc40/public.h170
-rw-r--r--dmake/msdos/borland/bcc40/template.mk7
-rw-r--r--dmake/msdos/borland/bcc45/config.h51
-rw-r--r--dmake/msdos/borland/bcc45/config.mk7
-rw-r--r--dmake/msdos/borland/bcc45/lib.rsp2
-rw-r--r--dmake/msdos/borland/bcc45/libswp.rsp1
-rwxr-xr-xdmake/msdos/borland/bcc45/mkswp.bat107
-rw-r--r--dmake/msdos/borland/bcc45/obj.rsp34
-rw-r--r--dmake/msdos/borland/bcc45/objswp.rsp36
-rw-r--r--dmake/msdos/borland/bcc45/public.h170
-rw-r--r--dmake/msdos/borland/bcc45/template.mk7
-rw-r--r--dmake/msdos/borland/bcc50/config.h51
-rw-r--r--dmake/msdos/borland/bcc50/config.mk7
-rw-r--r--dmake/msdos/borland/bcc50/lib.rsp2
-rw-r--r--dmake/msdos/borland/bcc50/libswp.rsp1
-rwxr-xr-xdmake/msdos/borland/bcc50/mkswp.bat107
-rw-r--r--dmake/msdos/borland/bcc50/obj.rsp34
-rw-r--r--dmake/msdos/borland/bcc50/objswp.rsp36
-rw-r--r--dmake/msdos/borland/bcc50/public.h170
-rw-r--r--dmake/msdos/borland/bcc50/template.mk7
-rw-r--r--dmake/msdos/borland/config.mk46
-rw-r--r--dmake/msdos/borland/tcc20/config.h48
-rw-r--r--dmake/msdos/borland/tcc20/config.mk10
-rw-r--r--dmake/msdos/borland/tcc20/libswp.rsp1
-rwxr-xr-xdmake/msdos/borland/tcc20/mkswp.bat107
-rw-r--r--dmake/msdos/borland/tcc20/objswp.rsp36
-rw-r--r--dmake/msdos/borland/tcc20/public.h170
-rw-r--r--dmake/msdos/borland/tcc20/template.mk7
-rw-r--r--dmake/msdos/borland/tempnam.c109
-rw-r--r--dmake/msdos/borland/utime.c66
-rw-r--r--dmake/msdos/config.mk71
-rw-r--r--dmake/msdos/dchdir.c47
-rw-r--r--dmake/msdos/dirbrk.c42
-rw-r--r--dmake/msdos/dirent.h32
-rw-r--r--dmake/msdos/dirlib.c285
-rw-r--r--dmake/msdos/dosdta.h16
-rw-r--r--dmake/msdos/dstrlwr.c49
-rw-r--r--dmake/msdos/exec.asm1234
-rw-r--r--dmake/msdos/exec.h43
-rw-r--r--dmake/msdos/exec.uue63
-rw-r--r--dmake/msdos/find.c130
-rw-r--r--dmake/msdos/microsft/config.h77
-rw-r--r--dmake/msdos/microsft/config.mk59
-rw-r--r--dmake/msdos/microsft/msc51/config.mk11
-rw-r--r--dmake/msdos/microsft/msc51/lib.rsp1
-rw-r--r--dmake/msdos/microsft/msc51/libswp.rsp1
-rwxr-xr-xdmake/msdos/microsft/msc51/mk.bat102
-rwxr-xr-xdmake/msdos/microsft/msc51/mkswp.bat104
-rw-r--r--dmake/msdos/microsft/msc51/obj.rsp33
-rw-r--r--dmake/msdos/microsft/msc51/objswp.rsp34
-rw-r--r--dmake/msdos/microsft/msc51/public.h170
-rw-r--r--dmake/msdos/microsft/msc51/template.mk7
-rw-r--r--dmake/msdos/microsft/msc60/config.mk11
-rw-r--r--dmake/msdos/microsft/msc60/lib.rsp1
-rw-r--r--dmake/msdos/microsft/msc60/libswp.rsp1
-rwxr-xr-xdmake/msdos/microsft/msc60/mk.bat102
-rwxr-xr-xdmake/msdos/microsft/msc60/mkswp.bat104
-rw-r--r--dmake/msdos/microsft/msc60/obj.rsp33
-rw-r--r--dmake/msdos/microsft/msc60/objswp.rsp34
-rw-r--r--dmake/msdos/microsft/msc60/public.h170
-rw-r--r--dmake/msdos/microsft/msc60/template.mk7
-rw-r--r--dmake/msdos/microsft/optoff.h27
-rw-r--r--dmake/msdos/microsft/tempnam.c110
-rw-r--r--dmake/msdos/rmprq.c44
-rw-r--r--dmake/msdos/ruletab.c45
-rw-r--r--dmake/msdos/runargv.c188
-rw-r--r--dmake/msdos/spawn.c415
-rw-r--r--dmake/msdos/startup.h26
-rw-r--r--dmake/msdos/switchar.c55
-rw-r--r--dmake/msdos/sysintf.h52
-rw-r--r--dmake/msdos/tee.c31
-rw-r--r--dmake/msdos/zortech/config.h52
-rw-r--r--dmake/msdos/zortech/config.mk73
-rw-r--r--dmake/msdos/zortech/environ.c59
-rw-r--r--dmake/msdos/zortech/lib.rsp1
-rw-r--r--dmake/msdos/zortech/libswp.rsp1
-rwxr-xr-xdmake/msdos/zortech/mkswp.bat36
-rw-r--r--dmake/msdos/zortech/obj.rsp34
-rw-r--r--dmake/msdos/zortech/objswp.rsp35
-rw-r--r--dmake/msdos/zortech/public.h169
-rw-r--r--dmake/msdos/zortech/startup.mk153
-rw-r--r--dmake/msdos/zortech/tempnam.c106
-rw-r--r--dmake/os2/config.mk54
-rw-r--r--dmake/os2/dchdir.c41
-rw-r--r--dmake/os2/dirent.h36
-rw-r--r--dmake/os2/ibm/config.h78
-rw-r--r--dmake/os2/ibm/config.mk54
-rw-r--r--dmake/os2/ibm/icc/config.mk11
-rw-r--r--dmake/os2/ibm/icc/lib.rsp1
-rwxr-xr-xdmake/os2/ibm/icc/mk.cmd96
-rw-r--r--dmake/os2/ibm/icc/obj.rsp31
-rw-r--r--dmake/os2/ibm/icc/public.h169
-rw-r--r--dmake/os2/ibm/icc/template.mk7
-rw-r--r--dmake/os2/ibm/icc3/config.mk11
-rw-r--r--dmake/os2/ibm/icc3/lib.rsp1
-rwxr-xr-xdmake/os2/ibm/icc3/mk.cmd192
-rw-r--r--dmake/os2/ibm/icc3/obj.rsp30
-rw-r--r--dmake/os2/ibm/icc3/public.h169
-rw-r--r--dmake/os2/ibm/icc3/template.mk7
-rw-r--r--dmake/os2/ibm/tempnam.c111
-rw-r--r--dmake/os2/ruletab.c47
-rw-r--r--dmake/os2/startup.h27
-rw-r--r--dmake/os2/switchar.c43
-rw-r--r--dmake/os2/sysintf.h62
-rw-r--r--dmake/parse.c176
-rw-r--r--dmake/path.c337
-rw-r--r--dmake/percent.c251
-rw-r--r--dmake/posix.h66
-rw-r--r--dmake/qssl/config.mk43
-rw-r--r--dmake/qssl/make.sh62
-rw-r--r--dmake/qssl/public.h166
-rw-r--r--dmake/qssl/ruletab.c41
-rw-r--r--dmake/qssl/runargv.c298
-rw-r--r--dmake/qssl/setup40
-rw-r--r--dmake/qssl/startup.h28
-rw-r--r--dmake/qssl/stdlib.h48
-rw-r--r--dmake/qssl/sysintf.h42
-rw-r--r--dmake/qssl/template.mk7
-rw-r--r--dmake/qssl/tempnam.c102
-rw-r--r--dmake/qssl/time.h32
-rw-r--r--dmake/quit.c116
-rw-r--r--dmake/rcsclean.awk57
-rw-r--r--dmake/readme/intro.txt40
-rw-r--r--dmake/readme/license.txt248
-rw-r--r--dmake/readme/public/install.txt203
-rw-r--r--dmake/readme/public/mac.txt43
-rw-r--r--dmake/readme/public/msdos.txt124
-rw-r--r--dmake/readme/public/os2.txt76
-rw-r--r--dmake/readme/public/qssl-qnx.txt5
-rw-r--r--dmake/readme/public/srcorg.txt74
-rw-r--r--dmake/readme/public/tos.txt31
-rw-r--r--dmake/readme/public/unix.txt171
-rw-r--r--dmake/readme/read1st.txt58
-rw-r--r--dmake/readme/release.txt196
-rw-r--r--dmake/rulparse.c1740
-rwxr-xr-xdmake/stamp-h1
-rwxr-xr-xdmake/startup/Makefile.am7
-rw-r--r--dmake/startup/Makefile.in492
-rw-r--r--dmake/startup/config.mk.in5
-rw-r--r--dmake/startup/mac/macros.mk41
-rw-r--r--dmake/startup/msdos/borland/bcc30/macros.mk4
-rw-r--r--dmake/startup/msdos/borland/bcc40/macros.mk4
-rw-r--r--dmake/startup/msdos/borland/bcc45/macros.mk4
-rw-r--r--dmake/startup/msdos/borland/bcc50.32/macros.mk4
-rw-r--r--dmake/startup/msdos/borland/bcc50/macros.mk4
-rw-r--r--dmake/startup/msdos/borland/macros.mk33
-rw-r--r--dmake/startup/msdos/borland/tcc20/macros.mk4
-rw-r--r--dmake/startup/msdos/macros.mk62
-rw-r--r--dmake/startup/msdos/microsft/macros.mk34
-rw-r--r--dmake/startup/msdos/recipes.mk9
-rw-r--r--dmake/startup/msdos/zortech/macros.mk30
-rw-r--r--dmake/startup/os2/ibm/macros.mk30
-rw-r--r--dmake/startup/os2/macros.mk60
-rw-r--r--dmake/startup/qssl/macros.mk11
-rw-r--r--dmake/startup/qssl/qnx/macros.mk11
-rw-r--r--dmake/startup/qssl/qnx/recipes.mk8
-rw-r--r--dmake/startup/qssl/recipes.mk8
-rw-r--r--dmake/startup/startup.mk211
-rw-r--r--dmake/startup/summary3
-rw-r--r--dmake/startup/template.mk7
-rw-r--r--dmake/startup/templates/mac/template.mk7
-rw-r--r--dmake/startup/templates/msdos/borland/bcc30/template.mk7
-rw-r--r--dmake/startup/templates/msdos/borland/bcc40/template.mk7
-rw-r--r--dmake/startup/templates/msdos/borland/bcc45/template.mk7
-rw-r--r--dmake/startup/templates/msdos/borland/bcc50/template.mk7
-rw-r--r--dmake/startup/templates/msdos/borland/tcc20/template.mk7
-rw-r--r--dmake/startup/templates/msdos/microsft/msc51/template.mk7
-rw-r--r--dmake/startup/templates/msdos/microsft/msc60/template.mk7
-rw-r--r--dmake/startup/templates/os2/ibm/icc/template.mk7
-rw-r--r--dmake/startup/templates/qssl/template.mk7
-rw-r--r--dmake/startup/templates/tos/template.mk7
-rw-r--r--dmake/startup/templates/unix/386ix/template.mk7
-rw-r--r--dmake/startup/templates/unix/bsd43/template.mk7
-rw-r--r--dmake/startup/templates/unix/bsd43/uw/template.mk7
-rw-r--r--dmake/startup/templates/unix/bsd43/vf/template.mk7
-rw-r--r--dmake/startup/templates/unix/coherent/ver40/template.mk7
-rw-r--r--dmake/startup/templates/unix/coherent/ver42/template.mk7
-rw-r--r--dmake/startup/templates/unix/linux/gnu/template.mk7
-rw-r--r--dmake/startup/templates/unix/solaris/gnu/template.mk7
-rw-r--r--dmake/startup/templates/unix/solaris/template.mk7
-rw-r--r--dmake/startup/templates/unix/sysvr1/template.mk7
-rw-r--r--dmake/startup/templates/unix/sysvr3/pwd/template.mk7
-rw-r--r--dmake/startup/templates/unix/sysvr3/template.mk7
-rw-r--r--dmake/startup/templates/unix/sysvr4/template.mk7
-rw-r--r--dmake/startup/templates/unix/xenix/pwd/template.mk7
-rw-r--r--dmake/startup/templates/unix/xenix/template.mk7
-rw-r--r--dmake/startup/templates/win95/borland/bcc50/template.mk7
-rw-r--r--dmake/startup/templates/win95/microsft/vpp40/template.mk7
-rw-r--r--dmake/startup/templates/winnt/borland/bcc50/template.mk7
-rw-r--r--dmake/startup/templates/winnt/microsft/vpp40/template.mk7
-rw-r--r--dmake/startup/tos/macros.mk24
-rw-r--r--dmake/startup/unix/386ix/macros.mk6
-rwxr-xr-xdmake/startup/unix/Makefile.am8
-rw-r--r--dmake/startup/unix/Makefile.in489
-rw-r--r--dmake/startup/unix/bsd43/macros.mk11
-rw-r--r--dmake/startup/unix/bsd43/recipes.mk13
-rw-r--r--dmake/startup/unix/coherent/macros.mk6
-rw-r--r--dmake/startup/unix/coherent/recipes.mk6
-rw-r--r--dmake/startup/unix/cygwin/Makefile.am6
-rw-r--r--dmake/startup/unix/cygwin/Makefile.in331
-rw-r--r--dmake/startup/unix/cygwin/macros.mk10
-rwxr-xr-xdmake/startup/unix/linux/Makefile.am6
-rw-r--r--dmake/startup/unix/linux/Makefile.in331
-rw-r--r--dmake/startup/unix/linux/gnu/macros.mk6
-rw-r--r--dmake/startup/unix/linux/macros.mk10
-rwxr-xr-xdmake/startup/unix/macosx/Makefile.am6
-rw-r--r--dmake/startup/unix/macosx/Makefile.in331
-rw-r--r--dmake/startup/unix/macosx/gnu/macros.mk6
-rw-r--r--dmake/startup/unix/macosx/macros.mk10
-rw-r--r--dmake/startup/unix/macros.mk5
-rw-r--r--dmake/startup/unix/os2/Makefile.am6
-rw-r--r--dmake/startup/unix/os2/Makefile.in331
-rw-r--r--dmake/startup/unix/os2/macros.mk60
-rw-r--r--dmake/startup/unix/recipes.mk15
-rwxr-xr-xdmake/startup/unix/solaris/Makefile.am6
-rw-r--r--dmake/startup/unix/solaris/Makefile.in331
-rw-r--r--dmake/startup/unix/solaris/macros.mk6
-rw-r--r--dmake/startup/unix/sysvr1/macros.mk6
-rw-r--r--dmake/startup/unix/sysvr3/gnu/macros.mk12
-rw-r--r--dmake/startup/unix/sysvr3/macros.mk7
-rwxr-xr-xdmake/startup/unix/sysvr4/Makefile.am6
-rw-r--r--dmake/startup/unix/sysvr4/Makefile.in331
-rw-r--r--dmake/startup/unix/sysvr4/macros.mk6
-rw-r--r--dmake/startup/unix/xenix/macros.mk6
-rw-r--r--dmake/startup/win95/borland/macros.mk34
-rw-r--r--dmake/startup/win95/macros.mk75
-rw-r--r--dmake/startup/win95/microsft/macros.mk38
-rw-r--r--dmake/startup/win95/recipes.mk9
-rw-r--r--dmake/startup/winnt/Makefile.am8
-rw-r--r--dmake/startup/winnt/Makefile.in489
-rw-r--r--dmake/startup/winnt/borland/macros.mk34
-rw-r--r--dmake/startup/winnt/macros.mk75
-rw-r--r--dmake/startup/winnt/microsft/macros.mk37
-rw-r--r--dmake/startup/winnt/mingw/Makefile.am6
-rw-r--r--dmake/startup/winnt/mingw/Makefile.in331
-rw-r--r--dmake/startup/winnt/mingw/macros.mk10
-rw-r--r--dmake/startup/winnt/msvc6/Makefile.am6
-rw-r--r--dmake/startup/winnt/msvc6/Makefile.in331
-rw-r--r--dmake/startup/winnt/msvc6/macros.mk37
-rw-r--r--dmake/startup/winnt/recipes.mk9
-rw-r--r--dmake/stat.c278
-rw-r--r--dmake/state.c231
-rw-r--r--dmake/stdmacs.h60
-rw-r--r--dmake/struct.h261
-rw-r--r--dmake/sysintf.c1157
-rw-r--r--dmake/tests/Makefile.am22
-rw-r--r--dmake/tests/Makefile.in392
-rw-r--r--dmake/tests/README12
-rwxr-xr-xdmake/tests/function_macros-196
-rwxr-xr-xdmake/tests/function_macros-10122
-rwxr-xr-xdmake/tests/function_macros-264
-rwxr-xr-xdmake/tests/function_macros-340
-rwxr-xr-xdmake/tests/function_macros-435
-rwxr-xr-xdmake/tests/function_macros-546
-rwxr-xr-xdmake/tests/function_macros-642
-rwxr-xr-xdmake/tests/function_macros-739
-rwxr-xr-xdmake/tests/function_macros-8101
-rwxr-xr-xdmake/tests/function_macros-970
-rwxr-xr-xdmake/tests/infra-044
-rwxr-xr-xdmake/tests/macros-141
-rwxr-xr-xdmake/tests/macros-1099
-rwxr-xr-xdmake/tests/macros-11147
-rwxr-xr-xdmake/tests/macros-262
-rwxr-xr-xdmake/tests/macros-371
-rwxr-xr-xdmake/tests/macros-492
-rwxr-xr-xdmake/tests/macros-568
-rwxr-xr-xdmake/tests/macros-662
-rwxr-xr-xdmake/tests/macros-776
-rwxr-xr-xdmake/tests/macros-8157
-rwxr-xr-xdmake/tests/macros-9141
-rwxr-xr-xdmake/tests/misc-135
-rwxr-xr-xdmake/tests/misc-1041
-rwxr-xr-xdmake/tests/misc-1142
-rwxr-xr-xdmake/tests/misc-1240
-rwxr-xr-xdmake/tests/misc-1351
-rwxr-xr-xdmake/tests/misc-1444
-rwxr-xr-xdmake/tests/misc-1553
-rwxr-xr-xdmake/tests/misc-1648
-rwxr-xr-xdmake/tests/misc-1742
-rwxr-xr-xdmake/tests/misc-18169
-rwxr-xr-xdmake/tests/misc-1945
-rwxr-xr-xdmake/tests/misc-240
-rwxr-xr-xdmake/tests/misc-20121
-rwxr-xr-xdmake/tests/misc-2141
-rwxr-xr-xdmake/tests/misc-344
-rwxr-xr-xdmake/tests/misc-462
-rwxr-xr-xdmake/tests/misc-549
-rwxr-xr-xdmake/tests/misc-665
-rwxr-xr-xdmake/tests/misc-747
-rwxr-xr-xdmake/tests/misc-839
-rwxr-xr-xdmake/tests/misc-953
-rwxr-xr-xdmake/tests/recipes-138
-rwxr-xr-xdmake/tests/recipes-241
-rwxr-xr-xdmake/tests/recipes-340
-rwxr-xr-xdmake/tests/recipes-438
-rwxr-xr-xdmake/tests/recipes-562
-rwxr-xr-xdmake/tests/recipes-666
-rwxr-xr-xdmake/tests/recipes-738
-rwxr-xr-xdmake/tests/recipes-8104
-rwxr-xr-xdmake/tests/recipes-9117
-rw-r--r--dmake/tests/targets-178
-rw-r--r--dmake/tests/targets-1050
-rw-r--r--dmake/tests/targets-1138
-rw-r--r--dmake/tests/targets-1247
-rwxr-xr-xdmake/tests/targets-1349
-rwxr-xr-xdmake/tests/targets-1453
-rwxr-xr-xdmake/tests/targets-1556
-rwxr-xr-xdmake/tests/targets-1649
-rwxr-xr-xdmake/tests/targets-1738
-rwxr-xr-xdmake/tests/targets-1852
-rwxr-xr-xdmake/tests/targets-1968
-rw-r--r--dmake/tests/targets-270
-rwxr-xr-xdmake/tests/targets-2065
-rwxr-xr-xdmake/tests/targets-2155
-rwxr-xr-xdmake/tests/targets-2255
-rwxr-xr-xdmake/tests/targets-2356
-rwxr-xr-xdmake/tests/targets-2461
-rwxr-xr-xdmake/tests/targets-2551
-rwxr-xr-xdmake/tests/targets-2657
-rwxr-xr-xdmake/tests/targets-2759
-rwxr-xr-xdmake/tests/targets-28175
-rwxr-xr-xdmake/tests/targets-2959
-rw-r--r--dmake/tests/targets-349
-rwxr-xr-xdmake/tests/targets-3064
-rw-r--r--dmake/tests/targets-470
-rw-r--r--dmake/tests/targets-551
-rw-r--r--dmake/tests/targets-652
-rw-r--r--dmake/tests/targets-754
-rw-r--r--dmake/tests/targets-850
-rw-r--r--dmake/tests/targets-949
-rw-r--r--dmake/tos/config.mk49
-rw-r--r--dmake/tos/make.sh57
-rw-r--r--dmake/tos/public.h166
-rw-r--r--dmake/tos/putenv.c78
-rw-r--r--dmake/tos/ruletab.c42
-rw-r--r--dmake/tos/startup.h28
-rw-r--r--dmake/tos/sysintf.h45
-rw-r--r--dmake/tos/template.mk7
-rw-r--r--dmake/tos/tempnam.c104
-rw-r--r--dmake/unix/386ix/ar.h27
-rw-r--r--dmake/unix/386ix/config.mk27
-rw-r--r--dmake/unix/386ix/make.sh60
-rw-r--r--dmake/unix/386ix/public.h167
-rw-r--r--dmake/unix/386ix/stdlib.h44
-rw-r--r--dmake/unix/386ix/template.mk7
-rw-r--r--dmake/unix/386ix/time.h35
-rwxr-xr-xdmake/unix/Makefile.am7
-rwxr-xr-xdmake/unix/Makefile.in396
-rw-r--r--dmake/unix/arlib.c610
-rw-r--r--dmake/unix/bsd43/config.mk27
-rw-r--r--dmake/unix/bsd43/dirent.h28
-rw-r--r--dmake/unix/bsd43/limits.h32
-rw-r--r--dmake/unix/bsd43/make.sh69
-rw-r--r--dmake/unix/bsd43/public.h167
-rw-r--r--dmake/unix/bsd43/putenv.c78
-rw-r--r--dmake/unix/bsd43/setvbuf.c40
-rw-r--r--dmake/unix/bsd43/stdlib.h44
-rw-r--r--dmake/unix/bsd43/string.h43
-rw-r--r--dmake/unix/bsd43/template.mk7
-rw-r--r--dmake/unix/bsd43/tempnam.c103
-rw-r--r--dmake/unix/bsd43/utime.c70
-rw-r--r--dmake/unix/bsd43/uw/config.mk17
-rw-r--r--dmake/unix/bsd43/uw/make.sh69
-rw-r--r--dmake/unix/bsd43/uw/public.h167
-rw-r--r--dmake/unix/bsd43/uw/template.mk7
-rw-r--r--dmake/unix/bsd43/vf/config.mk11
-rw-r--r--dmake/unix/bsd43/vf/ctype.h51
-rw-r--r--dmake/unix/bsd43/vf/make.sh73
-rw-r--r--dmake/unix/bsd43/vf/memcpy.c36
-rw-r--r--dmake/unix/bsd43/vf/public.h167
-rw-r--r--dmake/unix/bsd43/vf/template.mk7
-rw-r--r--dmake/unix/bsd43/vf/vfprintf.c48
-rw-r--r--dmake/unix/bsdarm32/config.mk27
-rw-r--r--dmake/unix/bsdarm32/dirent.h30
-rw-r--r--dmake/unix/bsdarm32/limits.h29
-rw-r--r--dmake/unix/bsdarm32/make.sh67
-rw-r--r--dmake/unix/bsdarm32/public.h167
-rw-r--r--dmake/unix/bsdarm32/putenv.c78
-rw-r--r--dmake/unix/bsdarm32/stdlib.h44
-rw-r--r--dmake/unix/bsdarm32/string.h42
-rw-r--r--dmake/unix/bsdarm32/template.mk7
-rw-r--r--dmake/unix/bsdarm32/tempnam.c105
-rw-r--r--dmake/unix/bsdarm32/utime.c70
-rw-r--r--dmake/unix/coherent/config.mk26
-rw-r--r--dmake/unix/coherent/stdlib.h44
-rw-r--r--dmake/unix/coherent/time.h32
-rw-r--r--dmake/unix/coherent/ver40/config.mk11
-rw-r--r--dmake/unix/coherent/ver40/getcwd.c49
-rw-r--r--dmake/unix/coherent/ver40/make.sh64
-rw-r--r--dmake/unix/coherent/ver40/public.h167
-rw-r--r--dmake/unix/coherent/ver40/template.mk7
-rw-r--r--dmake/unix/coherent/ver40/vfprintf.c190
-rw-r--r--dmake/unix/coherent/ver42/config.mk11
-rw-r--r--dmake/unix/coherent/ver42/make.sh60
-rw-r--r--dmake/unix/coherent/ver42/public.h167
-rw-r--r--dmake/unix/coherent/ver42/template.mk7
-rw-r--r--dmake/unix/config.mk39
-rw-r--r--dmake/unix/cygwin/public.h172
-rw-r--r--dmake/unix/dcache.c223
-rw-r--r--dmake/unix/dirbrk.c53
-rw-r--r--dmake/unix/linux/config.mk27
-rw-r--r--dmake/unix/linux/gnu/config.mk4
-rw-r--r--dmake/unix/linux/gnu/make.sh193
-rw-r--r--dmake/unix/linux/gnu/public.h172
-rw-r--r--dmake/unix/linux/gnu/template.mk7
-rw-r--r--dmake/unix/macosx/config.mk27
-rw-r--r--dmake/unix/macosx/gnu/config.mk4
-rw-r--r--dmake/unix/macosx/gnu/make.sh63
-rw-r--r--dmake/unix/macosx/gnu/public.h167
-rw-r--r--dmake/unix/macosx/gnu/template.mk7
-rw-r--r--dmake/unix/macosx/tempnam.c102
-rw-r--r--dmake/unix/os2/public.h172
-rw-r--r--dmake/unix/rmprq.c121
-rw-r--r--dmake/unix/ruletab.c44
-rw-r--r--dmake/unix/runargv.c1101
-rw-r--r--dmake/unix/solaris/config.mk27
-rw-r--r--dmake/unix/solaris/getcwd.c231
-rw-r--r--dmake/unix/solaris/gnu/config.mk8
-rw-r--r--dmake/unix/solaris/gnu/make.sh64
-rw-r--r--dmake/unix/solaris/gnu/public.h167
-rw-r--r--dmake/unix/solaris/gnu/template.mk7
-rw-r--r--dmake/unix/solaris/make.sh64
-rw-r--r--dmake/unix/solaris/public.h166
-rw-r--r--dmake/unix/solaris/template.mk7
-rw-r--r--dmake/unix/solaris/tempnam.c103
-rw-r--r--dmake/unix/startup.h27
-rw-r--r--dmake/unix/sysintf.h50
-rw-r--r--dmake/unix/sysvr1/config.mk28
-rw-r--r--dmake/unix/sysvr1/make.sh62
-rw-r--r--dmake/unix/sysvr1/public.h167
-rw-r--r--dmake/unix/sysvr1/putenv.c78
-rw-r--r--dmake/unix/sysvr1/stdlib.h44
-rw-r--r--dmake/unix/sysvr1/template.mk7
-rw-r--r--dmake/unix/sysvr1/time.h32
-rw-r--r--dmake/unix/sysvr1/vfprintf.c58
-rw-r--r--dmake/unix/sysvr3/config.mk27
-rw-r--r--dmake/unix/sysvr3/gnu/public.h165
-rw-r--r--dmake/unix/sysvr3/make.sh60
-rw-r--r--dmake/unix/sysvr3/public.h167
-rw-r--r--dmake/unix/sysvr3/pwd/config.mk20
-rw-r--r--dmake/unix/sysvr3/pwd/getcwd.c231
-rw-r--r--dmake/unix/sysvr3/pwd/make.sh62
-rw-r--r--dmake/unix/sysvr3/pwd/public.h167
-rw-r--r--dmake/unix/sysvr3/pwd/template.mk7
-rw-r--r--dmake/unix/sysvr3/stdlib.h55
-rw-r--r--dmake/unix/sysvr3/template.mk7
-rw-r--r--dmake/unix/sysvr3/time.h32
-rw-r--r--dmake/unix/sysvr4/config.mk27
-rw-r--r--dmake/unix/sysvr4/make.sh60
-rw-r--r--dmake/unix/sysvr4/public.h167
-rw-r--r--dmake/unix/sysvr4/template.mk7
-rw-r--r--dmake/unix/tempnam.c106
-rw-r--r--dmake/unix/xenix/config.mk27
-rw-r--r--dmake/unix/xenix/make.sh60
-rw-r--r--dmake/unix/xenix/public.h167
-rw-r--r--dmake/unix/xenix/pwd/config.mk23
-rw-r--r--dmake/unix/xenix/pwd/getcwd.c231
-rw-r--r--dmake/unix/xenix/pwd/make.sh62
-rw-r--r--dmake/unix/xenix/pwd/public.h167
-rw-r--r--dmake/unix/xenix/pwd/template.mk7
-rw-r--r--dmake/unix/xenix/stdlib.h50
-rw-r--r--dmake/unix/xenix/template.mk7
-rw-r--r--dmake/unix/xenix/time.h32
-rw-r--r--dmake/vextern.h129
-rw-r--r--dmake/win95/borland/bcc50/config.h44
-rw-r--r--dmake/win95/borland/bcc50/config.mk14
-rw-r--r--dmake/win95/borland/bcc50/lib.rsp2
-rwxr-xr-xdmake/win95/borland/bcc50/mk.bat96
-rw-r--r--dmake/win95/borland/bcc50/obj.rsp32
-rw-r--r--dmake/win95/borland/bcc50/public.h168
-rw-r--r--dmake/win95/borland/bcc50/template.mk7
-rw-r--r--dmake/win95/borland/config.mk51
-rw-r--r--dmake/win95/borland/ruletab.c44
-rw-r--r--dmake/win95/borland/sysintf.h55
-rw-r--r--dmake/win95/borland/tempnam.c114
-rw-r--r--dmake/win95/config.mk53
-rw-r--r--dmake/win95/dchdir.c49
-rw-r--r--dmake/win95/microsft/config.h122
-rw-r--r--dmake/win95/microsft/config.mk62
-rw-r--r--dmake/win95/microsft/optoff.h27
-rw-r--r--dmake/win95/microsft/ruletab.c56
-rw-r--r--dmake/win95/microsft/sysintf.h57
-rw-r--r--dmake/win95/microsft/tempnam.c110
-rw-r--r--dmake/win95/microsft/vpp40/config.mk14
-rw-r--r--dmake/win95/microsft/vpp40/lib.rsp1
-rwxr-xr-xdmake/win95/microsft/vpp40/mk.bat41
-rw-r--r--dmake/win95/microsft/vpp40/obj.rsp28
-rw-r--r--dmake/win95/microsft/vpp40/public.h167
-rw-r--r--dmake/win95/microsft/vpp40/runargv.c288
-rw-r--r--dmake/win95/microsft/vpp40/template.mk7
-rw-r--r--dmake/win95/microsft/vpp40/tempnam.c110
-rw-r--r--dmake/win95/startup.h28
-rw-r--r--dmake/win95/switchar.c43
-rw-r--r--dmake/winnt/borland/bcc50/config.h44
-rw-r--r--dmake/winnt/borland/bcc50/config.mk12
-rw-r--r--dmake/winnt/borland/bcc50/lib.rsp2
-rwxr-xr-xdmake/winnt/borland/bcc50/mk.bat95
-rwxr-xr-xdmake/winnt/borland/bcc50/mk.cmd93
-rw-r--r--dmake/winnt/borland/bcc50/obj.rsp31
-rw-r--r--dmake/winnt/borland/bcc50/public.h168
-rw-r--r--dmake/winnt/borland/bcc50/template.mk7
-rw-r--r--dmake/winnt/borland/config.mk51
-rw-r--r--dmake/winnt/borland/ruletab.c44
-rw-r--r--dmake/winnt/borland/sysintf.h55
-rw-r--r--dmake/winnt/borland/tempnam.c114
-rw-r--r--dmake/winnt/config.mk57
-rw-r--r--dmake/winnt/dchdir.c47
-rw-r--r--dmake/winnt/microsft/config.h85
-rw-r--r--dmake/winnt/microsft/config.mk61
-rw-r--r--dmake/winnt/microsft/optoff.h27
-rw-r--r--dmake/winnt/microsft/ruletab.c45
-rw-r--r--dmake/winnt/microsft/sysintf.h57
-rw-r--r--dmake/winnt/microsft/tempnam.c110
-rw-r--r--dmake/winnt/microsft/vpp40/config.mk14
-rw-r--r--dmake/winnt/microsft/vpp40/lib.rsp1
-rwxr-xr-xdmake/winnt/microsft/vpp40/mk.bat32
-rwxr-xr-xdmake/winnt/microsft/vpp40/mk.cmd31
-rw-r--r--dmake/winnt/microsft/vpp40/obj.rsp28
-rw-r--r--dmake/winnt/microsft/vpp40/public.h167
-rw-r--r--dmake/winnt/microsft/vpp40/runargv.c288
-rw-r--r--dmake/winnt/microsft/vpp40/template.mk7
-rw-r--r--dmake/winnt/microsft/vpp40/tempnam.c110
-rw-r--r--dmake/winnt/mingw/public.h167
-rw-r--r--dmake/winnt/mingw/sysintf.h62
-rw-r--r--dmake/winnt/msvc6/public.h167
-rw-r--r--dmake/winnt/msvc6/sysintf.h62
-rw-r--r--dmake/winnt/startup.h29
-rw-r--r--drawinglayer/inc/drawinglayer/animation/animationtiming.hxx148
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/fillbitmapattribute.hxx89
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/fillgradientattribute.hxx121
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/fillhatchattribute.hxx112
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/fontattribute.hxx100
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/lineattribute.hxx84
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/linestartendattribute.hxx85
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/materialattribute3d.hxx89
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/sdrallattribute3d.hxx86
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/sdrfillattribute.hxx99
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/sdrfillbitmapattribute.hxx101
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/sdrlightattribute3d.hxx96
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/sdrlightingattribute3d.hxx99
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/sdrlineattribute.hxx104
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/sdrlinestartendattribute.hxx102
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/sdrobjectattribute3d.hxx111
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/sdrsceneattribute3d.hxx94
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/sdrshadowattribute.hxx93
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/strokeattribute.hxx79
-rw-r--r--drawinglayer/inc/drawinglayer/geometry/viewinformation2d.hxx183
-rw-r--r--drawinglayer/inc/drawinglayer/geometry/viewinformation3d.hxx177
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/animatedprimitive2d.hxx178
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/backgroundcolorprimitive2d.hxx93
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/baseprimitive2d.hxx299
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/bitmapprimitive2d.hxx87
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/borderlineprimitive2d.hxx164
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/chartprimitive2d.hxx79
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/controlprimitive2d.hxx120
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/discretebitmapprimitive2d.hxx85
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/discreteshadowprimitive2d.hxx128
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx112
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/embedded3dprimitive2d.hxx129
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/epsprimitive2d.hxx88
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/fillbitmapprimitive2d.hxx95
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/fillgradientprimitive2d.hxx116
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/fillhatchprimitive2d.hxx96
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/graphicprimitive2d.hxx105
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/gridprimitive2d.hxx126
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/groupprimitive2d.hxx102
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/helplineprimitive2d.hxx121
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/hiddengeometryprimitive2d.hxx79
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/invertprimitive2d.hxx66
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/markerarrayprimitive2d.hxx95
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/maskprimitive2d.hxx86
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/mediaprimitive2d.hxx100
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/metafileprimitive2d.hxx101
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/modifiedcolorprimitive2d.hxx86
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/pagepreviewprimitive2d.hxx111
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/pointarrayprimitive2d.hxx90
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/polygonprimitive2d.hxx324
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/polypolygonprimitive2d.hxx446
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/primitivetools2d.hxx199
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/sceneprimitive2d.hxx166
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/sdrdecompositiontools2d.hxx85
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/shadowprimitive2d.hxx95
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/structuretagprimitive2d.hxx78
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/textdecoratedprimitive2d.hxx157
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/texteffectprimitive2d.hxx113
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/textenumsprimitive2d.hxx111
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/texthierarchyprimitive2d.hxx219
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/textlayoutdevice.hxx164
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/textlineprimitive2d.hxx91
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/textprimitive2d.hxx186
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/textstrikeoutprimitive2d.hxx159
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/transformprimitive2d.hxx91
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/transparenceprimitive2d.hxx103
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/unifiedtransparenceprimitive2d.hxx91
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/wallpaperprimitive2d.hxx94
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/wrongspellprimitive2d.hxx99
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/baseprimitive3d.hxx220
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/drawinglayer_primitivetypes3d.hxx65
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/groupprimitive3d.hxx88
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/hatchtextureprimitive3d.hxx93
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/hiddengeometryprimitive3d.hxx81
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/modifiedcolorprimitive3d.hxx76
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/polygonprimitive3d.hxx141
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/polygontubeprimitive3d.hxx111
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/polypolygonprimitive3d.hxx90
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/sdrcubeprimitive3d.hxx76
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/sdrdecompositiontools3d.hxx104
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/sdrextrudelathetools3d.hxx143
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/sdrextrudeprimitive3d.hxx136
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/sdrlatheprimitive3d.hxx154
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/sdrpolypolygonprimitive3d.hxx88
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/sdrprimitive3d.hxx95
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/sdrsphereprimitive3d.hxx87
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/shadowprimitive3d.hxx91
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/textureprimitive3d.hxx237
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/transformprimitive3d.hxx81
-rw-r--r--drawinglayer/inc/drawinglayer/processor2d/baseprocessor2d.hxx240
-rw-r--r--drawinglayer/inc/drawinglayer/processor2d/canvasprocessor.hxx132
-rw-r--r--drawinglayer/inc/drawinglayer/processor2d/contourextractor2d.hxx68
-rw-r--r--drawinglayer/inc/drawinglayer/processor2d/hittestprocessor2d.hxx114
-rw-r--r--drawinglayer/inc/drawinglayer/processor2d/linegeometryextractor2d.hxx71
-rw-r--r--drawinglayer/inc/drawinglayer/processor2d/textaspolygonextractor2d.hxx104
-rw-r--r--drawinglayer/inc/drawinglayer/processor2d/vclmetafileprocessor2d.hxx154
-rw-r--r--drawinglayer/inc/drawinglayer/processor2d/vclpixelprocessor2d.hxx77
-rw-r--r--drawinglayer/inc/drawinglayer/processor2d/vclprocessor2d.hxx138
-rw-r--r--drawinglayer/inc/drawinglayer/processor3d/baseprocessor3d.hxx119
-rw-r--r--drawinglayer/inc/drawinglayer/processor3d/cutfindprocessor3d.hxx97
-rw-r--r--drawinglayer/inc/drawinglayer/processor3d/defaultprocessor3d.hxx164
-rw-r--r--drawinglayer/inc/drawinglayer/processor3d/geometry2dextractor.hxx81
-rw-r--r--drawinglayer/inc/drawinglayer/processor3d/shadow3dextractor.hxx123
-rw-r--r--drawinglayer/inc/drawinglayer/processor3d/zbufferprocessor3d.hxx119
-rw-r--r--drawinglayer/inc/drawinglayer/texture/texture.hxx266
-rw-r--r--drawinglayer/inc/drawinglayer/texture/texture3d.hxx165
-rw-r--r--drawinglayer/inc/makefile.mk47
-rw-r--r--drawinglayer/inc/pch/precompiled_drawinglayer.cxx29
-rw-r--r--drawinglayer/inc/pch/precompiled_drawinglayer.hxx32
-rw-r--r--drawinglayer/prj/build.lst13
-rw-r--r--drawinglayer/prj/d.lst121
-rw-r--r--drawinglayer/source/animation/animationtiming.cxx370
-rw-r--r--drawinglayer/source/animation/makefile.mk44
-rw-r--r--drawinglayer/source/attribute/fillbitmapattribute.cxx199
-rw-r--r--drawinglayer/source/attribute/fillgradientattribute.cxx250
-rw-r--r--drawinglayer/source/attribute/fillhatchattribute.cxx219
-rw-r--r--drawinglayer/source/attribute/fontattribute.cxx253
-rw-r--r--drawinglayer/source/attribute/lineattribute.cxx185
-rw-r--r--drawinglayer/source/attribute/linestartendattribute.cxx194
-rw-r--r--drawinglayer/source/attribute/makefile.mk61
-rw-r--r--drawinglayer/source/attribute/materialattribute3d.cxx207
-rw-r--r--drawinglayer/source/attribute/sdrallattribute3d.cxx83
-rw-r--r--drawinglayer/source/attribute/sdrfillattribute.cxx221
-rw-r--r--drawinglayer/source/attribute/sdrfillbitmapattribute.cxx404
-rw-r--r--drawinglayer/source/attribute/sdrlightattribute3d.cxx196
-rw-r--r--drawinglayer/source/attribute/sdrlightingattribute3d.cxx235
-rw-r--r--drawinglayer/source/attribute/sdrlineattribute.cxx250
-rw-r--r--drawinglayer/source/attribute/sdrlinestartendattribute.cxx254
-rw-r--r--drawinglayer/source/attribute/sdrobjectattribute3d.cxx292
-rw-r--r--drawinglayer/source/attribute/sdrsceneattribute3d.cxx218
-rw-r--r--drawinglayer/source/attribute/sdrshadowattribute.cxx193
-rw-r--r--drawinglayer/source/attribute/strokeattribute.cxx182
-rw-r--r--drawinglayer/source/geometry/makefile.mk44
-rw-r--r--drawinglayer/source/geometry/viewinformation2d.cxx592
-rw-r--r--drawinglayer/source/geometry/viewinformation3d.cxx599
-rw-r--r--drawinglayer/source/primitive2d/animatedprimitive2d.cxx224
-rw-r--r--drawinglayer/source/primitive2d/backgroundcolorprimitive2d.cxx116
-rw-r--r--drawinglayer/source/primitive2d/baseprimitive2d.cxx278
-rw-r--r--drawinglayer/source/primitive2d/bitmapprimitive2d.cxx81
-rw-r--r--drawinglayer/source/primitive2d/borderlineprimitive2d.cxx235
-rw-r--r--drawinglayer/source/primitive2d/chartprimitive2d.cxx82
-rw-r--r--drawinglayer/source/primitive2d/controlprimitive2d.cxx383
-rw-r--r--drawinglayer/source/primitive2d/discretebitmapprimitive2d.cxx116
-rw-r--r--drawinglayer/source/primitive2d/discreteshadowprimitive2d.cxx339
-rw-r--r--drawinglayer/source/primitive2d/embedded3dprimitive2d.cxx168
-rw-r--r--drawinglayer/source/primitive2d/epsprimitive2d.cxx103
-rw-r--r--drawinglayer/source/primitive2d/fillbitmapprimitive2d.cxx142
-rw-r--r--drawinglayer/source/primitive2d/fillgradientprimitive2d.cxx298
-rw-r--r--drawinglayer/source/primitive2d/fillhatchprimitive2d.cxx161
-rw-r--r--drawinglayer/source/primitive2d/graphicprimitive2d.cxx942
-rw-r--r--drawinglayer/source/primitive2d/gridprimitive2d.cxx320
-rw-r--r--drawinglayer/source/primitive2d/groupprimitive2d.cxx79
-rw-r--r--drawinglayer/source/primitive2d/helplineprimitive2d.cxx222
-rw-r--r--drawinglayer/source/primitive2d/hiddengeometryprimitive2d.cxx75
-rw-r--r--drawinglayer/source/primitive2d/invertprimitive2d.cxx57
-rw-r--r--drawinglayer/source/primitive2d/makefile.mk90
-rw-r--r--drawinglayer/source/primitive2d/markerarrayprimitive2d.cxx157
-rw-r--r--drawinglayer/source/primitive2d/maskprimitive2d.cxx76
-rw-r--r--drawinglayer/source/primitive2d/mediaprimitive2d.cxx163
-rw-r--r--drawinglayer/source/primitive2d/metafileprimitive2d.cxx3252
-rw-r--r--drawinglayer/source/primitive2d/modifiedcolorprimitive2d.cxx71
-rw-r--r--drawinglayer/source/primitive2d/pagepreviewprimitive2d.cxx183
-rw-r--r--drawinglayer/source/primitive2d/pointarrayprimitive2d.cxx93
-rw-r--r--drawinglayer/source/primitive2d/polygonprimitive2d.cxx638
-rw-r--r--drawinglayer/source/primitive2d/polypolygonprimitive2d.cxx572
-rw-r--r--drawinglayer/source/primitive2d/primitivetools2d.cxx170
-rw-r--r--drawinglayer/source/primitive2d/sceneprimitive2d.cxx480
-rw-r--r--drawinglayer/source/primitive2d/sdrdecompositiontools2d.cxx130
-rw-r--r--drawinglayer/source/primitive2d/shadowprimitive2d.cxx106
-rw-r--r--drawinglayer/source/primitive2d/structuretagprimitive2d.cxx59
-rw-r--r--drawinglayer/source/primitive2d/textdecoratedprimitive2d.cxx606
-rw-r--r--drawinglayer/source/primitive2d/texteffectprimitive2d.cxx239
-rw-r--r--drawinglayer/source/primitive2d/textenumsprimitive2d.cxx121
-rw-r--r--drawinglayer/source/primitive2d/texthierarchyprimitive2d.cxx158
-rw-r--r--drawinglayer/source/primitive2d/textlayoutdevice.cxx491
-rw-r--r--drawinglayer/source/primitive2d/textlineprimitive2d.cxx309
-rw-r--r--drawinglayer/source/primitive2d/textprimitive2d.cxx339
-rw-r--r--drawinglayer/source/primitive2d/textstrikeoutprimitive2d.cxx286
-rw-r--r--drawinglayer/source/primitive2d/transformprimitive2d.cxx79
-rw-r--r--drawinglayer/source/primitive2d/transparenceprimitive2d.cxx78
-rw-r--r--drawinglayer/source/primitive2d/unifiedtransparenceprimitive2d.cxx136
-rw-r--r--drawinglayer/source/primitive2d/wallpaperprimitive2d.cxx269
-rw-r--r--drawinglayer/source/primitive2d/wrongspellprimitive2d.cxx122
-rw-r--r--drawinglayer/source/primitive3d/baseprimitive3d.cxx278
-rw-r--r--drawinglayer/source/primitive3d/groupprimitive3d.cxx79
-rw-r--r--drawinglayer/source/primitive3d/hatchtextureprimitive3d.cxx319
-rw-r--r--drawinglayer/source/primitive3d/hiddengeometryprimitive3d.cxx76
-rw-r--r--drawinglayer/source/primitive3d/makefile.mk62
-rw-r--r--drawinglayer/source/primitive3d/modifiedcolorprimitive3d.cxx71
-rw-r--r--drawinglayer/source/primitive3d/polygonprimitive3d.cxx178
-rw-r--r--drawinglayer/source/primitive3d/polygontubeprimitive3d.cxx579
-rw-r--r--drawinglayer/source/primitive3d/polypolygonprimitive3d.cxx83
-rw-r--r--drawinglayer/source/primitive3d/sdrcubeprimitive3d.cxx222
-rw-r--r--drawinglayer/source/primitive3d/sdrdecompositiontools3d.cxx339
-rw-r--r--drawinglayer/source/primitive3d/sdrextrudelathetools3d.cxx991
-rw-r--r--drawinglayer/source/primitive3d/sdrextrudeprimitive3d.cxx526
-rw-r--r--drawinglayer/source/primitive3d/sdrlatheprimitive3d.cxx387
-rw-r--r--drawinglayer/source/primitive3d/sdrpolypolygonprimitive3d.cxx194
-rw-r--r--drawinglayer/source/primitive3d/sdrprimitive3d.cxx125
-rw-r--r--drawinglayer/source/primitive3d/sdrsphereprimitive3d.cxx224
-rw-r--r--drawinglayer/source/primitive3d/shadowprimitive3d.cxx80
-rw-r--r--drawinglayer/source/primitive3d/textureprimitive3d.cxx227
-rw-r--r--drawinglayer/source/primitive3d/transformprimitive3d.cxx79
-rw-r--r--drawinglayer/source/processor2d/baseprocessor2d.cxx91
-rw-r--r--drawinglayer/source/processor2d/canvasprocessor.cxx2218
-rw-r--r--drawinglayer/source/processor2d/contourextractor2d.cxx203
-rw-r--r--drawinglayer/source/processor2d/helperchartrenderer.cxx155
-rw-r--r--drawinglayer/source/processor2d/helperchartrenderer.hxx60
-rw-r--r--drawinglayer/source/processor2d/helperwrongspellrenderer.cxx96
-rw-r--r--drawinglayer/source/processor2d/helperwrongspellrenderer.hxx65
-rw-r--r--drawinglayer/source/processor2d/hittestprocessor2d.cxx605
-rw-r--r--drawinglayer/source/processor2d/linegeometryextractor2d.cxx144
-rw-r--r--drawinglayer/source/processor2d/makefile.mk58
-rw-r--r--drawinglayer/source/processor2d/textaspolygonextractor2d.cxx247
-rw-r--r--drawinglayer/source/processor2d/vclhelperbitmaprender.cxx280
-rw-r--r--drawinglayer/source/processor2d/vclhelperbitmaprender.hxx66
-rw-r--r--drawinglayer/source/processor2d/vclhelperbitmaptransform.cxx431
-rw-r--r--drawinglayer/source/processor2d/vclhelperbitmaptransform.hxx60
-rw-r--r--drawinglayer/source/processor2d/vclhelperbufferdevice.cxx182
-rw-r--r--drawinglayer/source/processor2d/vclhelperbufferdevice.hxx70
-rw-r--r--drawinglayer/source/processor2d/vclhelpergradient.cxx285
-rw-r--r--drawinglayer/source/processor2d/vclhelpergradient.hxx62
-rw-r--r--drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx2017
-rw-r--r--drawinglayer/source/processor2d/vclpixelprocessor2d.cxx613
-rw-r--r--drawinglayer/source/processor2d/vclprocessor2d.cxx1492
-rw-r--r--drawinglayer/source/processor3d/baseprocessor3d.cxx114
-rw-r--r--drawinglayer/source/processor3d/cutfindprocessor3d.cxx225
-rw-r--r--drawinglayer/source/processor3d/defaultprocessor3d.cxx566
-rw-r--r--drawinglayer/source/processor3d/geometry2dextractor.cxx170
-rw-r--r--drawinglayer/source/processor3d/makefile.mk50
-rw-r--r--drawinglayer/source/processor3d/shadow3dextractor.cxx342
-rw-r--r--drawinglayer/source/processor3d/zbufferprocessor3d.cxx840
-rw-r--r--drawinglayer/source/texture/makefile.mk45
-rw-r--r--drawinglayer/source/texture/texture.cxx644
-rw-r--r--drawinglayer/source/texture/texture3d.cxx262
-rw-r--r--drawinglayer/util/drawinglayer.flt4
-rw-r--r--drawinglayer/util/makefile.mk85
-rw-r--r--dtrans/inc/makefile.mk47
-rw-r--r--dtrans/inc/pch/precompiled_dtrans.cxx29
-rw-r--r--dtrans/inc/pch/precompiled_dtrans.hxx32
-rw-r--r--dtrans/prj/build.lst15
-rw-r--r--dtrans/prj/d.lst14
-rw-r--r--dtrans/source/cnttype/exports.dxp2
-rw-r--r--dtrans/source/cnttype/makefile.mk53
-rw-r--r--dtrans/source/cnttype/mcnttfactory.cxx123
-rw-r--r--dtrans/source/cnttype/mcnttfactory.hxx85
-rw-r--r--dtrans/source/cnttype/mcnttype.cxx427
-rw-r--r--dtrans/source/cnttype/mcnttype.hxx97
-rw-r--r--dtrans/source/cnttype/mcnttype.xml35
-rw-r--r--dtrans/source/cnttype/mctfentry.cxx131
-rw-r--r--dtrans/source/cnttype/wbench/makefile.mk53
-rw-r--r--dtrans/source/cnttype/wbench/testcnttype.cxx269
-rw-r--r--dtrans/source/generic/clipboardmanager.cxx266
-rw-r--r--dtrans/source/generic/clipboardmanager.hxx127
-rw-r--r--dtrans/source/generic/dtrans.component37
-rw-r--r--dtrans/source/generic/dtrans.cxx94
-rw-r--r--dtrans/source/generic/dtrans.xml44
-rw-r--r--dtrans/source/generic/exports.dxp2
-rw-r--r--dtrans/source/generic/generic_clipboard.cxx205
-rw-r--r--dtrans/source/generic/generic_clipboard.hxx135
-rw-r--r--dtrans/source/generic/makefile.mk75
-rw-r--r--dtrans/source/inc/DtObjFactory.hxx54
-rw-r--r--dtrans/source/inc/MtaOleClipb.hxx134
-rw-r--r--dtrans/source/os2/clipb/OS2Bitmap.cxx248
-rw-r--r--dtrans/source/os2/clipb/Os2Clipboard.cxx447
-rw-r--r--dtrans/source/os2/clipb/Os2Clipboard.hxx136
-rw-r--r--dtrans/source/os2/clipb/Os2Service.cxx84
-rw-r--r--dtrans/source/os2/clipb/Os2Transferable.cxx176
-rw-r--r--dtrans/source/os2/clipb/Os2Transferable.hxx99
-rw-r--r--dtrans/source/os2/clipb/exports.dxp3
-rw-r--r--dtrans/source/os2/clipb/makefile.mk59
-rw-r--r--dtrans/source/os2/clipb/sysdtrans.xml43
-rw-r--r--dtrans/source/test/makefile.mk53
-rw-r--r--dtrans/source/test/test_dtrans.cxx512
-rw-r--r--dtrans/source/win32/clipb/APNDataObject.hxx87
-rw-r--r--dtrans/source/win32/clipb/WinClipbImpl.cxx273
-rw-r--r--dtrans/source/win32/clipb/WinClipbImpl.hxx125
-rw-r--r--dtrans/source/win32/clipb/WinClipboard.cxx322
-rw-r--r--dtrans/source/win32/clipb/WinClipboard.hxx157
-rw-r--r--dtrans/source/win32/clipb/exports.dxp3
-rw-r--r--dtrans/source/win32/clipb/makefile.mk59
-rw-r--r--dtrans/source/win32/clipb/sysdtrans.xml43
-rw-r--r--dtrans/source/win32/clipb/wcbentry.cxx130
-rw-r--r--dtrans/source/win32/dnd/dnd.xml46
-rw-r--r--dtrans/source/win32/dnd/dndentry.cxx120
-rw-r--r--dtrans/source/win32/dnd/exports.dxp2
-rw-r--r--dtrans/source/win32/dnd/globals.cxx139
-rw-r--r--dtrans/source/win32/dnd/globals.hxx94
-rw-r--r--dtrans/source/win32/dnd/idroptarget.cxx114
-rw-r--r--dtrans/source/win32/dnd/idroptarget.hxx74
-rw-r--r--dtrans/source/win32/dnd/makefile.mk66
-rw-r--r--dtrans/source/win32/dnd/source.cxx431
-rw-r--r--dtrans/source/win32/dnd/source.hxx151
-rw-r--r--dtrans/source/win32/dnd/sourcecontext.cxx156
-rw-r--r--dtrans/source/win32/dnd/sourcecontext.hxx89
-rw-r--r--dtrans/source/win32/dnd/target.cxx661
-rw-r--r--dtrans/source/win32/dnd/target.hxx213
-rw-r--r--dtrans/source/win32/dnd/targetdragcontext.cxx59
-rw-r--r--dtrans/source/win32/dnd/targetdragcontext.hxx62
-rw-r--r--dtrans/source/win32/dnd/targetdropcontext.cxx69
-rw-r--r--dtrans/source/win32/dnd/targetdropcontext.hxx72
-rw-r--r--dtrans/source/win32/dtobj/APNDataObject.cxx378
-rw-r--r--dtrans/source/win32/dtobj/APNDataObject.hxx89
-rwxr-xr-xdtrans/source/win32/dtobj/DOTransferable.cxx614
-rw-r--r--dtrans/source/win32/dtobj/DOTransferable.hxx133
-rw-r--r--dtrans/source/win32/dtobj/DTransHelper.cxx239
-rw-r--r--dtrans/source/win32/dtobj/DTransHelper.hxx214
-rw-r--r--dtrans/source/win32/dtobj/DataFmtTransl.cxx336
-rw-r--r--dtrans/source/win32/dtobj/DataFmtTransl.hxx83
-rw-r--r--dtrans/source/win32/dtobj/DtObjFactory.cxx74
-rw-r--r--dtrans/source/win32/dtobj/Fetc.cxx259
-rw-r--r--dtrans/source/win32/dtobj/Fetc.hxx93
-rw-r--r--dtrans/source/win32/dtobj/FetcList.cxx480
-rw-r--r--dtrans/source/win32/dtobj/FetcList.hxx156
-rwxr-xr-xdtrans/source/win32/dtobj/FmtFilter.cxx579
-rwxr-xr-xdtrans/source/win32/dtobj/FmtFilter.hxx96
-rw-r--r--dtrans/source/win32/dtobj/MimeAttrib.hxx50
-rw-r--r--dtrans/source/win32/dtobj/TxtCnvtHlp.cxx145
-rw-r--r--dtrans/source/win32/dtobj/TxtCnvtHlp.hxx63
-rw-r--r--dtrans/source/win32/dtobj/XNotifyingDataObject.cxx163
-rw-r--r--dtrans/source/win32/dtobj/XNotifyingDataObject.hxx105
-rw-r--r--dtrans/source/win32/dtobj/XTDataObject.cxx848
-rw-r--r--dtrans/source/win32/dtobj/XTDataObject.hxx177
-rw-r--r--dtrans/source/win32/dtobj/makefile.mk76
-rw-r--r--dtrans/source/win32/ftransl/exports.dxp2
-rwxr-xr-xdtrans/source/win32/ftransl/ftransl.cxx649
-rw-r--r--dtrans/source/win32/ftransl/ftransl.hxx132
-rw-r--r--dtrans/source/win32/ftransl/ftransl.xml33
-rw-r--r--dtrans/source/win32/ftransl/ftranslentry.cxx134
-rw-r--r--dtrans/source/win32/ftransl/makefile.mk51
-rw-r--r--dtrans/source/win32/misc/ImplHelper.cxx489
-rw-r--r--dtrans/source/win32/misc/ImplHelper.hxx106
-rw-r--r--dtrans/source/win32/misc/WinClip.hxx45
-rw-r--r--dtrans/source/win32/misc/makefile.mk60
-rw-r--r--dtrans/source/win32/mtaole/MtaOleClipb.cxx893
-rw-r--r--dtrans/source/win32/mtaole/makefile.mk54
-rw-r--r--dtrans/source/win32/workbench/XTDo.cxx431
-rw-r--r--dtrans/source/win32/workbench/XTDo.hxx134
-rw-r--r--dtrans/source/win32/workbench/makefile.mk96
-rw-r--r--dtrans/source/win32/workbench/test_wincb.cxx348
-rw-r--r--dtrans/source/win32/workbench/testmarshal.cxx243
-rw-r--r--dtrans/test/win32/dnd/atlwindow.cxx262
-rw-r--r--dtrans/test/win32/dnd/atlwindow.hxx100
-rw-r--r--dtrans/test/win32/dnd/dndTest.cxx210
-rw-r--r--dtrans/test/win32/dnd/makefile.mk83
-rw-r--r--dtrans/test/win32/dnd/sourcelistener.cxx73
-rw-r--r--dtrans/test/win32/dnd/sourcelistener.hxx65
-rw-r--r--dtrans/test/win32/dnd/targetlistener.cxx103
-rw-r--r--dtrans/test/win32/dnd/targetlistener.hxx74
-rw-r--r--dtrans/test/win32/dnd/transferable.cxx126
-rw-r--r--dtrans/test/win32/dnd/transferable.hxx124
-rw-r--r--dtrans/util/dnd.component37
-rw-r--r--dtrans/util/exports.dxp2
-rw-r--r--dtrans/util/ftransl.component34
-rw-r--r--dtrans/util/makefile.mk211
-rw-r--r--dtrans/util/mcnttype.component34
-rw-r--r--dtrans/util/sysdtrans.component34
-rw-r--r--editeng/inc/editeng.hrc43
-rw-r--r--editeng/inc/editeng/AccessibleComponentBase.hxx147
-rw-r--r--editeng/inc/editeng/AccessibleContextBase.hxx400
-rw-r--r--editeng/inc/editeng/AccessibleEditableTextPara.hxx419
-rw-r--r--editeng/inc/editeng/AccessibleImageBullet.hxx237
-rw-r--r--editeng/inc/editeng/AccessibleParaManager.hxx347
-rw-r--r--editeng/inc/editeng/AccessibleSelectionBase.hxx73
-rw-r--r--editeng/inc/editeng/AccessibleStaticTextBase.hxx283
-rw-r--r--editeng/inc/editeng/AccessibleStringWrap.hxx63
-rw-r--r--editeng/inc/editeng/SpellPortions.hxx95
-rw-r--r--editeng/inc/editeng/UnoForbiddenCharsTable.hxx65
-rw-r--r--editeng/inc/editeng/acorrcfg.hxx133
-rw-r--r--editeng/inc/editeng/adjitem.hxx143
-rw-r--r--editeng/inc/editeng/akrnitem.hxx74
-rw-r--r--editeng/inc/editeng/blnkitem.hxx72
-rw-r--r--editeng/inc/editeng/bolnitem.hxx83
-rw-r--r--editeng/inc/editeng/borderline.hxx134
-rw-r--r--editeng/inc/editeng/boxitem.hxx226
-rw-r--r--editeng/inc/editeng/brkitem.hxx103
-rw-r--r--editeng/inc/editeng/brshitem.hxx140
-rw-r--r--editeng/inc/editeng/bulitem.hxx160
-rw-r--r--editeng/inc/editeng/charhiddenitem.hxx61
-rw-r--r--editeng/inc/editeng/charreliefitem.hxx80
-rw-r--r--editeng/inc/editeng/charrotateitem.hxx92
-rw-r--r--editeng/inc/editeng/charscaleitem.hxx78
-rw-r--r--editeng/inc/editeng/cmapitem.hxx89
-rw-r--r--editeng/inc/editeng/cntritem.hxx68
-rw-r--r--editeng/inc/editeng/colritem.hxx95
-rw-r--r--editeng/inc/editeng/crsditem.hxx93
-rw-r--r--editeng/inc/editeng/cscoitem.hxx75
-rw-r--r--editeng/inc/editeng/editdata.hxx388
-rw-r--r--editeng/inc/editeng/editeng.hxx487
-rw-r--r--editeng/inc/editeng/editengdllapi.h43
-rw-r--r--editeng/inc/editeng/editerr.hxx39
-rw-r--r--editeng/inc/editeng/editids.hrc245
-rw-r--r--editeng/inc/editeng/editobj.hxx126
-rw-r--r--editeng/inc/editeng/editrids.hrc432
-rw-r--r--editeng/inc/editeng/editstat.hxx150
-rw-r--r--editeng/inc/editeng/editund2.hxx76
-rw-r--r--editeng/inc/editeng/editview.hxx250
-rw-r--r--editeng/inc/editeng/edtdlg.hxx114
-rw-r--r--editeng/inc/editeng/eedata.hxx74
-rw-r--r--editeng/inc/editeng/eeitem.hxx99
-rw-r--r--editeng/inc/editeng/eeitemid.hxx136
-rw-r--r--editeng/inc/editeng/eerdll.hxx61
-rw-r--r--editeng/inc/editeng/emphitem.hxx88
-rw-r--r--editeng/inc/editeng/escpitem.hxx114
-rw-r--r--editeng/inc/editeng/fhgtitem.hxx116
-rw-r--r--editeng/inc/editeng/flditem.hxx427
-rw-r--r--editeng/inc/editeng/flstitem.hxx79
-rw-r--r--editeng/inc/editeng/fontitem.hxx118
-rw-r--r--editeng/inc/editeng/forbiddencharacterstable.hxx70
-rw-r--r--editeng/inc/editeng/forbiddenruleitem.hxx69
-rw-r--r--editeng/inc/editeng/frmdir.hxx60
-rw-r--r--editeng/inc/editeng/frmdiritem.hxx80
-rw-r--r--editeng/inc/editeng/fwdtitem.hxx108
-rw-r--r--editeng/inc/editeng/hangulhanja.hxx302
-rw-r--r--editeng/inc/editeng/hngpnctitem.hxx69
-rw-r--r--editeng/inc/editeng/hyznitem.hxx106
-rw-r--r--editeng/inc/editeng/itemtype.hxx75
-rw-r--r--editeng/inc/editeng/keepitem.hxx78
-rw-r--r--editeng/inc/editeng/kernitem.hxx80
-rw-r--r--editeng/inc/editeng/langitem.hxx84
-rw-r--r--editeng/inc/editeng/lcolitem.hxx65
-rw-r--r--editeng/inc/editeng/lrspitem.hxx179
-rw-r--r--editeng/inc/editeng/lspcitem.hxx123
-rw-r--r--editeng/inc/editeng/measfld.hxx66
-rw-r--r--editeng/inc/editeng/memberids.hrc196
-rw-r--r--editeng/inc/editeng/mutxhelp.hxx44
-rw-r--r--editeng/inc/editeng/nhypitem.hxx68
-rw-r--r--editeng/inc/editeng/nlbkitem.hxx73
-rw-r--r--editeng/inc/editeng/numdef.hxx30
-rw-r--r--editeng/inc/editeng/numitem.hxx396
-rw-r--r--editeng/inc/editeng/opaqitem.hxx81
-rw-r--r--editeng/inc/editeng/optitems.hxx111
-rw-r--r--editeng/inc/editeng/orphitem.hxx74
-rw-r--r--editeng/inc/editeng/outliner.hxx1053
-rw-r--r--editeng/inc/editeng/outlobj.hxx96
-rw-r--r--editeng/inc/editeng/paperinf.hxx73
-rw-r--r--editeng/inc/editeng/paragraphdata.hxx72
-rw-r--r--editeng/inc/editeng/paravertalignitem.hxx80
-rw-r--r--editeng/inc/editeng/pbinitem.hxx77
-rw-r--r--editeng/inc/editeng/pgrditem.hxx64
-rw-r--r--editeng/inc/editeng/pmdlitem.hxx86
-rw-r--r--editeng/inc/editeng/postitem.hxx89
-rw-r--r--editeng/inc/editeng/prntitem.hxx79
-rw-r--r--editeng/inc/editeng/protitem.hxx105
-rw-r--r--editeng/inc/editeng/prszitem.hxx68
-rw-r--r--editeng/inc/editeng/scriptspaceitem.hxx70
-rw-r--r--editeng/inc/editeng/scripttypeitem.hxx91
-rw-r--r--editeng/inc/editeng/shaditem.hxx111
-rw-r--r--editeng/inc/editeng/shdditem.hxx74
-rw-r--r--editeng/inc/editeng/sizeitem.hxx83
-rw-r--r--editeng/inc/editeng/spltitem.hxx81
-rw-r--r--editeng/inc/editeng/splwrap.hxx160
-rw-r--r--editeng/inc/editeng/svxacorr.hxx399
-rw-r--r--editeng/inc/editeng/svxenum.hxx218
-rw-r--r--editeng/inc/editeng/svxfont.hxx126
-rw-r--r--editeng/inc/editeng/svxrtf.hxx475
-rw-r--r--editeng/inc/editeng/swafopt.hxx105
-rw-r--r--editeng/inc/editeng/tstpitem.hxx185
-rw-r--r--editeng/inc/editeng/twolinesitem.hxx90
-rw-r--r--editeng/inc/editeng/txtrange.hxx118
-rw-r--r--editeng/inc/editeng/udlnitem.hxx133
-rw-r--r--editeng/inc/editeng/ulspitem.hxx113
-rw-r--r--editeng/inc/editeng/unoedhlp.hxx189
-rw-r--r--editeng/inc/editeng/unoedprx.hxx179
-rw-r--r--editeng/inc/editeng/unoedsrc.hxx552
-rw-r--r--editeng/inc/editeng/unofdesc.hxx54
-rw-r--r--editeng/inc/editeng/unofield.hxx137
-rw-r--r--editeng/inc/editeng/unofored.hxx100
-rw-r--r--editeng/inc/editeng/unoforou.hxx129
-rw-r--r--editeng/inc/editeng/unoipset.hxx84
-rw-r--r--editeng/inc/editeng/unolingu.hxx236
-rw-r--r--editeng/inc/editeng/unonrule.hxx95
-rw-r--r--editeng/inc/editeng/unopracc.hxx73
-rw-r--r--editeng/inc/editeng/unoprnms.hxx376
-rw-r--r--editeng/inc/editeng/unotext.hxx677
-rw-r--r--editeng/inc/editeng/unoviwed.hxx62
-rw-r--r--editeng/inc/editeng/unoviwou.hxx68
-rw-r--r--editeng/inc/editeng/wghtitem.hxx89
-rw-r--r--editeng/inc/editeng/widwitem.hxx74
-rw-r--r--editeng/inc/editeng/writingmodeitem.hxx68
-rw-r--r--editeng/inc/editeng/wrlmitem.hxx75
-rw-r--r--editeng/inc/editeng/xmlcnitm.hxx91
-rw-r--r--editeng/inc/editxml.hxx43
-rw-r--r--editeng/inc/helpid.hrc60
-rw-r--r--editeng/inc/makefile.mk52
-rw-r--r--editeng/inc/pch/precompiled_editeng.cxx32
-rw-r--r--editeng/inc/pch/precompiled_editeng.hxx896
-rw-r--r--editeng/prj/build.lst13
-rw-r--r--editeng/prj/d.lst14
-rw-r--r--editeng/source/accessibility/AccessibleComponentBase.cxx237
-rw-r--r--editeng/source/accessibility/AccessibleContextBase.cxx715
-rw-r--r--editeng/source/accessibility/AccessibleEditableTextPara.cxx2311
-rw-r--r--editeng/source/accessibility/AccessibleHyperlink.cxx146
-rw-r--r--editeng/source/accessibility/AccessibleHyperlink.hxx82
-rw-r--r--editeng/source/accessibility/AccessibleImageBullet.cxx651
-rw-r--r--editeng/source/accessibility/AccessibleParaManager.cxx420
-rw-r--r--editeng/source/accessibility/AccessibleSelectionBase.cxx108
-rw-r--r--editeng/source/accessibility/AccessibleStaticTextBase.cxx1047
-rw-r--r--editeng/source/accessibility/AccessibleStringWrap.cxx100
-rw-r--r--editeng/source/accessibility/accessibility.src43
-rw-r--r--editeng/source/accessibility/makefile.mk59
-rw-r--r--editeng/source/editeng/editattr.cxx445
-rw-r--r--editeng/source/editeng/editattr.hxx426
-rw-r--r--editeng/source/editeng/editdbg.cxx586
-rw-r--r--editeng/source/editeng/editdbg.hxx57
-rw-r--r--editeng/source/editeng/editdoc.cxx2314
-rw-r--r--editeng/source/editeng/editdoc.hxx802
-rw-r--r--editeng/source/editeng/editdoc2.cxx544
-rw-r--r--editeng/source/editeng/editeng.cxx2950
-rw-r--r--editeng/source/editeng/editeng.src124
-rw-r--r--editeng/source/editeng/editobj.cxx1725
-rw-r--r--editeng/source/editeng/editobj2.hxx309
-rw-r--r--editeng/source/editeng/editsel.cxx121
-rw-r--r--editeng/source/editeng/editsel.hxx75
-rw-r--r--editeng/source/editeng/editstt2.hxx130
-rw-r--r--editeng/source/editeng/editundo.cxx750
-rw-r--r--editeng/source/editeng/editundo.hxx315
-rwxr-xr-xediteng/source/editeng/editview.cxx1655
-rw-r--r--editeng/source/editeng/edtspell.cxx758
-rw-r--r--editeng/source/editeng/edtspell.hxx179
-rw-r--r--editeng/source/editeng/eehtml.cxx869
-rw-r--r--editeng/source/editeng/eehtml.hxx99
-rw-r--r--editeng/source/editeng/eeng_pch.cxx30
-rw-r--r--editeng/source/editeng/eeng_pch.hxx34
-rw-r--r--editeng/source/editeng/eeobj.cxx112
-rw-r--r--editeng/source/editeng/eeobj.hxx72
-rw-r--r--editeng/source/editeng/eerdll.cxx237
-rw-r--r--editeng/source/editeng/eerdll2.hxx61
-rw-r--r--editeng/source/editeng/eertfpar.cxx632
-rw-r--r--editeng/source/editeng/eertfpar.hxx128
-rw-r--r--editeng/source/editeng/impedit.cxx2005
-rwxr-xr-xediteng/source/editeng/impedit.hxx1214
-rwxr-xr-xediteng/source/editeng/impedit2.cxx4644
-rw-r--r--editeng/source/editeng/impedit3.cxx4677
-rwxr-xr-xediteng/source/editeng/impedit4.cxx3251
-rw-r--r--editeng/source/editeng/impedit5.cxx911
-rw-r--r--editeng/source/editeng/makefile.mk80
-rw-r--r--editeng/source/editeng/textconv.cxx629
-rw-r--r--editeng/source/editeng/textconv.hxx122
-rw-r--r--editeng/source/items/bulitem.cxx534
-rw-r--r--editeng/source/items/charhiddenitem.cxx82
-rw-r--r--editeng/source/items/flditem.cxx1098
-rw-r--r--editeng/source/items/frmitems.cxx4467
-rw-r--r--editeng/source/items/itemtype.cxx239
-rw-r--r--editeng/source/items/makefile.mk79
-rw-r--r--editeng/source/items/numitem.cxx1273
-rw-r--r--editeng/source/items/optitems.cxx203
-rw-r--r--editeng/source/items/page.src255
-rw-r--r--editeng/source/items/paperinf.cxx185
-rw-r--r--editeng/source/items/paraitem.cxx1757
-rw-r--r--editeng/source/items/svdfield.cxx65
-rw-r--r--editeng/source/items/svxfont.cxx857
-rw-r--r--editeng/source/items/svxitems.src1027
-rw-r--r--editeng/source/items/textitem.cxx3843
-rw-r--r--editeng/source/items/writingmodeitem.cxx153
-rw-r--r--editeng/source/items/xmlcnitm.cxx248
-rw-r--r--editeng/source/misc/SvXMLAutoCorrectExport.cxx117
-rw-r--r--editeng/source/misc/SvXMLAutoCorrectExport.hxx75
-rw-r--r--editeng/source/misc/SvXMLAutoCorrectImport.cxx266
-rw-r--r--editeng/source/misc/SvXMLAutoCorrectImport.hxx148
-rw-r--r--editeng/source/misc/acorrcfg.cxx675
-rwxr-xr-xediteng/source/misc/edtdlg.cxx43
-rw-r--r--editeng/source/misc/forbiddencharacterstable.cxx92
-rw-r--r--editeng/source/misc/hangulhanja.cxx1171
-rw-r--r--editeng/source/misc/lingu.src104
-rw-r--r--editeng/source/misc/makefile.mk71
-rw-r--r--editeng/source/misc/splwrap.cxx632
-rw-r--r--editeng/source/misc/svxacorr.cxx2812
-rw-r--r--editeng/source/misc/swafopt.cxx158
-rw-r--r--editeng/source/misc/txtrange.cxx711
-rwxr-xr-xediteng/source/misc/unolingu.cxx1377
-rw-r--r--editeng/source/outliner/makefile.mk60
-rw-r--r--editeng/source/outliner/outl_pch.cxx31
-rw-r--r--editeng/source/outliner/outl_pch.hxx33
-rw-r--r--editeng/source/outliner/outleeng.cxx244
-rw-r--r--editeng/source/outliner/outleeng.hxx93
-rw-r--r--editeng/source/outliner/outlin2.cxx813
-rw-r--r--editeng/source/outliner/outliner.cxx2181
-rw-r--r--editeng/source/outliner/outliner.src84
-rw-r--r--editeng/source/outliner/outlobj.cxx271
-rw-r--r--editeng/source/outliner/outlundo.cxx234
-rw-r--r--editeng/source/outliner/outlundo.hxx140
-rw-r--r--editeng/source/outliner/outlvw.cxx1734
-rw-r--r--editeng/source/outliner/paralist.cxx287
-rw-r--r--editeng/source/outliner/paralist.hxx71
-rw-r--r--editeng/source/rtf/makefile.mk51
-rw-r--r--editeng/source/rtf/rtfgrf.cxx558
-rw-r--r--editeng/source/rtf/rtfitem.cxx2101
-rw-r--r--editeng/source/rtf/segincr.asm39
-rw-r--r--editeng/source/rtf/svxrtf.cxx1514
-rw-r--r--editeng/source/uno/UnoForbiddenCharsTable.cxx145
-rw-r--r--editeng/source/uno/makefile.mk61
-rw-r--r--editeng/source/uno/unoedhlp.cxx197
-rw-r--r--editeng/source/uno/unoedprx.cxx1316
-rw-r--r--editeng/source/uno/unoedsrc.cxx90
-rw-r--r--editeng/source/uno/unofdesc.cxx266
-rw-r--r--editeng/source/uno/unofield.cxx1180
-rw-r--r--editeng/source/uno/unofored.cxx557
-rw-r--r--editeng/source/uno/unoforou.cxx615
-rw-r--r--editeng/source/uno/unoipset.cxx394
-rw-r--r--editeng/source/uno/unonrule.cxx615
-rw-r--r--editeng/source/uno/unopracc.cxx171
-rw-r--r--editeng/source/uno/unotext.cxx2724
-rw-r--r--editeng/source/uno/unotext2.cxx711
-rw-r--r--editeng/source/uno/unoviwed.cxx137
-rw-r--r--editeng/source/uno/unoviwou.cxx173
-rw-r--r--editeng/source/xml/editsource.hxx52
-rw-r--r--editeng/source/xml/makefile.mk50
-rw-r--r--editeng/source/xml/xmltxtexp.cxx500
-rw-r--r--editeng/source/xml/xmltxtimp.cxx260
-rw-r--r--editeng/util/editeng.dxp2
-rw-r--r--editeng/util/hidother.src52
-rw-r--r--editeng/util/makefile.mk102
-rw-r--r--editeng/util/makefile.pmk47
-rw-r--r--embeddedobj/inc/makefile.mk47
-rw-r--r--embeddedobj/inc/pch/precompiled_embeddedobj.cxx29
-rw-r--r--embeddedobj/inc/pch/precompiled_embeddedobj.hxx32
-rw-r--r--embeddedobj/prj/build.lst7
-rw-r--r--embeddedobj/prj/d.lst8
-rw-r--r--embeddedobj/prj/l10n1
-rw-r--r--embeddedobj/qa/embedding/EmbeddingTest.java7
-rw-r--r--embeddedobj/qa/embedding/EmbeddingUnitTest.java91
-rw-r--r--embeddedobj/qa/embedding/Test01.java135
-rw-r--r--embeddedobj/qa/embedding/TestHelper.java36
-rw-r--r--embeddedobj/qa/embedding/makefile.mk84
-rw-r--r--embeddedobj/source/commonembedding/embedobj.cxx701
-rw-r--r--embeddedobj/source/commonembedding/inplaceobj.cxx89
-rw-r--r--embeddedobj/source/commonembedding/makefile.mk56
-rw-r--r--embeddedobj/source/commonembedding/miscobj.cxx700
-rw-r--r--embeddedobj/source/commonembedding/persistence.cxx1918
-rw-r--r--embeddedobj/source/commonembedding/register.cxx91
-rw-r--r--embeddedobj/source/commonembedding/specialobject.cxx245
-rw-r--r--embeddedobj/source/commonembedding/visobj.cxx236
-rw-r--r--embeddedobj/source/commonembedding/xfactory.cxx579
-rw-r--r--embeddedobj/source/commonembedding/xfactory.hxx125
-rw-r--r--embeddedobj/source/general/docholder.cxx1360
-rw-r--r--embeddedobj/source/general/dummyobject.cxx722
-rw-r--r--embeddedobj/source/general/intercept.cxx426
-rw-r--r--embeddedobj/source/general/makefile.mk60
-rw-r--r--embeddedobj/source/general/xcreator.cxx491
-rw-r--r--embeddedobj/source/inc/closepreventer.hxx38
-rw-r--r--embeddedobj/source/inc/commonembobj.hxx521
-rw-r--r--embeddedobj/source/inc/docholder.hxx213
-rw-r--r--embeddedobj/source/inc/dummyobject.hxx297
-rw-r--r--embeddedobj/source/inc/intercept.hxx167
-rw-r--r--embeddedobj/source/inc/oleembobj.hxx546
-rw-r--r--embeddedobj/source/inc/specialobject.hxx90
-rw-r--r--embeddedobj/source/inc/targetstatecontrol.hxx48
-rw-r--r--embeddedobj/source/inc/xcreator.hxx91
-rw-r--r--embeddedobj/source/msole/advisesink.cxx134
-rw-r--r--embeddedobj/source/msole/advisesink.hxx56
-rw-r--r--embeddedobj/source/msole/closepreventer.cxx52
-rw-r--r--embeddedobj/source/msole/emboleobj.component35
-rw-r--r--embeddedobj/source/msole/emboleobj.windows.component39
-rw-r--r--embeddedobj/source/msole/exports.dxp2
-rw-r--r--embeddedobj/source/msole/graphconvert.cxx133
-rw-r--r--embeddedobj/source/msole/makefile.mk143
-rw-r--r--embeddedobj/source/msole/mtnotification.hxx55
-rw-r--r--embeddedobj/source/msole/olecomponent.cxx1801
-rw-r--r--embeddedobj/source/msole/olecomponent.hxx194
-rw-r--r--embeddedobj/source/msole/oleembed.cxx1131
-rw-r--r--embeddedobj/source/msole/olemisc.cxx704
-rw-r--r--embeddedobj/source/msole/olepersist.cxx2201
-rw-r--r--embeddedobj/source/msole/oleregister.cxx123
-rw-r--r--embeddedobj/source/msole/olevisual.cxx444
-rw-r--r--embeddedobj/source/msole/olewrapclient.cxx158
-rw-r--r--embeddedobj/source/msole/olewrapclient.hxx56
-rw-r--r--embeddedobj/source/msole/ownview.cxx665
-rw-r--r--embeddedobj/source/msole/ownview.hxx90
-rw-r--r--embeddedobj/source/msole/platform.h49
-rw-r--r--embeddedobj/source/msole/xdialogcreator.cxx385
-rw-r--r--embeddedobj/source/msole/xdialogcreator.hxx77
-rw-r--r--embeddedobj/source/msole/xolefactory.cxx342
-rw-r--r--embeddedobj/source/msole/xolefactory.hxx84
-rw-r--r--embeddedobj/test/Container1/BitmapPainter.java286
-rw-r--r--embeddedobj/test/Container1/EmbedContApp.java1687
-rw-r--r--embeddedobj/test/Container1/EmbedContFrame.java118
-rw-r--r--embeddedobj/test/Container1/JavaWindowPeerFake.java109
-rw-r--r--embeddedobj/test/Container1/NativeView.java177
-rw-r--r--embeddedobj/test/Container1/PaintThread.java153
-rw-r--r--embeddedobj/test/Container1/WindowHelper.java137
-rw-r--r--embeddedobj/test/Container1/makefile.mk87
-rw-r--r--embeddedobj/test/Container1/nativelib/exports.dxp3
-rw-r--r--embeddedobj/test/Container1/nativelib/makefile.mk78
-rw-r--r--embeddedobj/test/Container1/nativelib/nativeview.c186
-rw-r--r--embeddedobj/test/Container1/nativelib/nativeview.h57
-rw-r--r--embeddedobj/test/MainThreadExecutor/exports.dxp3
-rw-r--r--embeddedobj/test/MainThreadExecutor/makefile.mk67
-rw-r--r--embeddedobj/test/MainThreadExecutor/register.cxx101
-rw-r--r--embeddedobj/test/MainThreadExecutor/xexecutor.cxx142
-rw-r--r--embeddedobj/test/MainThreadExecutor/xexecutor.hxx87
-rw-r--r--embeddedobj/test/mtexecutor/bitmapcreator.cxx123
-rw-r--r--embeddedobj/test/mtexecutor/bitmapcreator.hxx69
-rw-r--r--embeddedobj/test/mtexecutor/exports.dxp3
-rw-r--r--embeddedobj/test/mtexecutor/mainthreadexecutor.cxx139
-rw-r--r--embeddedobj/test/mtexecutor/mainthreadexecutor.hxx83
-rw-r--r--embeddedobj/test/mtexecutor/makefile.mk78
-rw-r--r--embeddedobj/test/mtexecutor/mteregister.cxx123
-rw-r--r--embeddedobj/util/embobj.component43
-rw-r--r--embeddedobj/util/exports.dxp2
-rw-r--r--embeddedobj/util/makefile.mk97
-rwxr-xr-xembedserv/prj/build.lst5
-rwxr-xr-xembedserv/prj/d.lst2
-rw-r--r--embedserv/regentries/calc.reg103
-rw-r--r--embedserv/regentries/draw.reg104
-rw-r--r--embedserv/regentries/impress.reg103
-rw-r--r--embedserv/regentries/math.reg103
-rw-r--r--embedserv/regentries/writer.reg103
-rw-r--r--embedserv/source/embed/docholder.cxx1646
-rwxr-xr-xembedserv/source/embed/ed_idataobj.cxx326
-rw-r--r--embedserv/source/embed/ed_iinplace.cxx100
-rwxr-xr-xembedserv/source/embed/ed_ioleobject.cxx504
-rwxr-xr-xembedserv/source/embed/ed_ipersiststr.cxx1018
-rwxr-xr-xembedserv/source/embed/esdll.cxx92
-rwxr-xr-xembedserv/source/embed/guid.cxx213
-rw-r--r--embedserv/source/embed/iipaobj.cxx130
-rw-r--r--embedserv/source/embed/intercept.cxx589
-rwxr-xr-xembedserv/source/embed/makefile.mk81
-rwxr-xr-xembedserv/source/embed/register.cxx105
-rwxr-xr-xembedserv/source/embed/servprov.cxx305
-rwxr-xr-xembedserv/source/embed/stdafx.cpp14
-rw-r--r--embedserv/source/embed/syswinwrapper.cxx477
-rw-r--r--embedserv/source/embed/tracker.cxx838
-rw-r--r--embedserv/source/embed/xwin.cxx346
-rwxr-xr-xembedserv/source/inc/common.h56
-rw-r--r--embedserv/source/inc/docholder.hxx290
-rwxr-xr-xembedserv/source/inc/embeddoc.hxx210
-rw-r--r--embedserv/source/inc/embeddocaccess.hxx85
-rw-r--r--embedserv/source/inc/embservconst.h81
-rw-r--r--embedserv/source/inc/iipaobj.hxx74
-rw-r--r--embedserv/source/inc/intercept.hxx195
-rwxr-xr-xembedserv/source/inc/servprov.hxx100
-rwxr-xr-xembedserv/source/inc/stdafx.h42
-rw-r--r--embedserv/source/inc/syswinwrapper.hxx177
-rw-r--r--embedserv/source/inc/xwin.hxx252
-rw-r--r--embedserv/source/inprocserv/advisesink.cxx187
-rw-r--r--embedserv/source/inprocserv/advisesink.hxx95
-rw-r--r--embedserv/source/inprocserv/dllentry.cxx349
-rw-r--r--embedserv/source/inprocserv/exports.dxp5
-rw-r--r--embedserv/source/inprocserv/inprocembobj.cxx1982
-rw-r--r--embedserv/source/inprocserv/inprocembobj.h242
-rw-r--r--embedserv/source/inprocserv/makefile.mk80
-rw-r--r--embedserv/source/inprocserv/smartpointer.hxx197
-rw-r--r--embedserv/util/emser.component34
-rwxr-xr-xembedserv/util/exports.dxp2
-rwxr-xr-xembedserv/util/makefile.mk104
-rw-r--r--epm/epm-3.7.patch657
-rw-r--r--epm/makefile.mk62
-rw-r--r--epm/prj/build.lst2
-rw-r--r--epm/prj/d.lst3
-rw-r--r--eventattacher/prj/build.lst4
-rw-r--r--eventattacher/prj/d.lst4
-rw-r--r--eventattacher/source/eventattacher.cxx870
-rw-r--r--eventattacher/source/evtatt.component34
-rw-r--r--eventattacher/source/makefile.mk71
-rw-r--r--expat/expat-2.0.1.patch93
-rw-r--r--expat/expat-winapi.patch13
-rw-r--r--expat/makefile.mk65
-rw-r--r--expat/prj/build.lst3
-rw-r--r--expat/prj/d.lst15
-rw-r--r--extensions/inc/abpilot.hrc37
-rw-r--r--extensions/inc/appsettings.hxx45
-rw-r--r--extensions/inc/bibliography.hrc78
-rw-r--r--extensions/inc/dbpilots.hrc47
-rw-r--r--extensions/inc/extensio.hrc75
-rw-r--r--extensions/inc/makefile.mk47
-rw-r--r--extensions/inc/pch/precompiled_extensions.cxx29
-rw-r--r--extensions/inc/pch/precompiled_extensions.hxx552
-rw-r--r--extensions/inc/propctrlr.hrc330
-rw-r--r--extensions/inc/ucbhelper/ext_content.hxx329
-rw-r--r--extensions/inc/update.hrc41
-rw-r--r--extensions/prj/build.lst39
-rw-r--r--extensions/prj/d.lst58
-rw-r--r--extensions/qa/complex/extensions/OfficeResourceLoader.java157
-rw-r--r--extensions/qa/complex/extensions/extensions_all.sce1
-rw-r--r--extensions/qa/complex/extensions/makefile.mk98
-rw-r--r--extensions/qa/complex/extensions/orl_de.src31
-rw-r--r--extensions/qa/complex/extensions/orl_en-US.src31
-rw-r--r--extensions/qa/integration/extensions/ComponentFactory.java106
-rw-r--r--extensions/qa/integration/extensions/ConsoleWait.java128
-rw-r--r--extensions/qa/integration/extensions/Frame.java226
-rw-r--r--extensions/qa/integration/extensions/HelpTextProvider.java50
-rw-r--r--extensions/qa/integration/extensions/MethodHandler.java239
-rw-r--r--extensions/qa/integration/extensions/ObjectInspector.java176
-rw-r--r--extensions/qa/integration/extensions/ServicesHandler.java228
-rw-r--r--extensions/qa/integration/extensions/TestSkeleton.java71
-rw-r--r--extensions/qa/integration/extensions/extensions_complex.sce1
-rw-r--r--extensions/qa/integration/extensions/makefile.mk83
-rw-r--r--extensions/qa/unoapi/Test.java50
-rw-r--r--extensions/qa/unoapi/extensions.sce5
-rw-r--r--extensions/qa/unoapi/makefile.mk48
-rw-r--r--extensions/source/abpilot/abp.component34
-rw-r--r--extensions/source/abpilot/abpfinalpage.cxx229
-rw-r--r--extensions/source/abpilot/abpfinalpage.hxx92
-rw-r--r--extensions/source/abpilot/abpresid.hrc220
-rw-r--r--extensions/source/abpilot/abpservices.cxx86
-rw-r--r--extensions/source/abpilot/abptypes.hxx48
-rw-r--r--extensions/source/abpilot/abspage.cxx89
-rw-r--r--extensions/source/abpilot/abspage.hxx75
-rw-r--r--extensions/source/abpilot/abspilot.cxx500
-rw-r--r--extensions/source/abpilot/abspilot.hxx149
-rw-r--r--extensions/source/abpilot/abspilot.src399
-rw-r--r--extensions/source/abpilot/addresssettings.hxx79
-rw-r--r--extensions/source/abpilot/admininvokationimpl.cxx137
-rw-r--r--extensions/source/abpilot/admininvokationimpl.hxx70
-rw-r--r--extensions/source/abpilot/admininvokationpage.cxx114
-rw-r--r--extensions/source/abpilot/admininvokationpage.hxx73
-rw-r--r--extensions/source/abpilot/datasourcehandling.cxx637
-rw-r--r--extensions/source/abpilot/datasourcehandling.hxx215
-rw-r--r--extensions/source/abpilot/exports.dxp2
-rw-r--r--extensions/source/abpilot/fieldmappingimpl.cxx375
-rw-r--r--extensions/source/abpilot/fieldmappingimpl.hxx126
-rw-r--r--extensions/source/abpilot/fieldmappingpage.cxx119
-rw-r--r--extensions/source/abpilot/fieldmappingpage.hxx70
-rw-r--r--extensions/source/abpilot/makefile.mk114
-rw-r--r--extensions/source/abpilot/moduleabp.cxx32
-rw-r--r--extensions/source/abpilot/tableselectionpage.cxx133
-rw-r--r--extensions/source/abpilot/tableselectionpage.hxx73
-rw-r--r--extensions/source/abpilot/typeselectionpage.cxx246
-rw-r--r--extensions/source/abpilot/typeselectionpage.hxx106
-rw-r--r--extensions/source/abpilot/unodialogabp.cxx196
-rw-r--r--extensions/source/abpilot/unodialogabp.hxx101
-rw-r--r--extensions/source/activex/main/README.txt33
-rw-r--r--extensions/source/activex/main/SOActionsApproval.cpp29
-rw-r--r--extensions/source/activex/main/SOActionsApproval.h81
-rw-r--r--extensions/source/activex/main/SOActionsApproval.rgs24
-rw-r--r--extensions/source/activex/main/SOActiveX.cpp1151
-rw-r--r--extensions/source/activex/main/SOActiveX.h176
-rw-r--r--extensions/source/activex/main/SOActiveX.rgs33
-rw-r--r--extensions/source/activex/main/SOComWindowPeer.cpp28
-rw-r--r--extensions/source/activex/main/SOComWindowPeer.h133
-rw-r--r--extensions/source/activex/main/SOComWindowPeer.rgs23
-rw-r--r--extensions/source/activex/main/SODispatchInterceptor.cpp222
-rw-r--r--extensions/source/activex/main/SODispatchInterceptor.h155
-rw-r--r--extensions/source/activex/main/SODispatchInterceptor.rgs23
-rw-r--r--extensions/source/activex/main/StdAfx2.cpp18
-rw-r--r--extensions/source/activex/main/StdAfx2.h42
-rw-r--r--extensions/source/activex/main/com_uno_helper.h24
-rw-r--r--extensions/source/activex/main/example.html26
-rw-r--r--extensions/source/activex/main/makefile.mk155
-rw-r--r--extensions/source/activex/main/resource.h26
-rw-r--r--extensions/source/activex/main/so_activex.cpp690
-rw-r--r--extensions/source/activex/main/so_activex.def13
-rw-r--r--extensions/source/activex/main/so_activex.rc113
-rw-r--r--extensions/source/activex/msidl/makefile.mk62
-rw-r--r--extensions/source/activex/msidl/so_activex.idl210
-rw-r--r--extensions/source/bibliography/bib.component35
-rw-r--r--extensions/source/bibliography/bib.hrc111
-rw-r--r--extensions/source/bibliography/bib.src74
-rw-r--r--extensions/source/bibliography/bibbeam.cxx321
-rw-r--r--extensions/source/bibliography/bibbeam.hxx93
-rw-r--r--extensions/source/bibliography/bibconfig.cxx389
-rw-r--r--extensions/source/bibliography/bibconfig.hxx155
-rw-r--r--extensions/source/bibliography/bibcont.cxx275
-rw-r--r--extensions/source/bibliography/bibcont.hxx114
-rw-r--r--extensions/source/bibliography/bibload.cxx777
-rw-r--r--extensions/source/bibliography/bibmod.cxx122
-rw-r--r--extensions/source/bibliography/bibmod.hxx65
-rw-r--r--extensions/source/bibliography/bibprop.hrc45
-rw-r--r--extensions/source/bibliography/bibresid.hxx44
-rw-r--r--extensions/source/bibliography/bibshortcuthandler.hxx87
-rw-r--r--extensions/source/bibliography/bibtools.hxx50
-rw-r--r--extensions/source/bibliography/bibview.cxx232
-rw-r--r--extensions/source/bibliography/bibview.hxx86
-rw-r--r--extensions/source/bibliography/datman.cxx1834
-rw-r--r--extensions/source/bibliography/datman.hrc102
-rw-r--r--extensions/source/bibliography/datman.hxx199
-rw-r--r--extensions/source/bibliography/datman.src500
-rw-r--r--extensions/source/bibliography/formcontrolcontainer.cxx180
-rw-r--r--extensions/source/bibliography/formcontrolcontainer.hxx84
-rw-r--r--extensions/source/bibliography/framectr.cxx977
-rw-r--r--extensions/source/bibliography/framectr.hxx130
-rw-r--r--extensions/source/bibliography/general.cxx892
-rw-r--r--extensions/source/bibliography/general.hxx210
-rw-r--r--extensions/source/bibliography/hidother.src61
-rw-r--r--extensions/source/bibliography/loadlisteneradapter.cxx239
-rw-r--r--extensions/source/bibliography/loadlisteneradapter.hxx185
-rw-r--r--extensions/source/bibliography/makefile.mk99
-rw-r--r--extensions/source/bibliography/menu.src45
-rw-r--r--extensions/source/bibliography/sections.hrc128
-rw-r--r--extensions/source/bibliography/sections.src584
-rw-r--r--extensions/source/bibliography/toolbar.cxx647
-rw-r--r--extensions/source/bibliography/toolbar.hrc46
-rw-r--r--extensions/source/bibliography/toolbar.hxx189
-rw-r--r--extensions/source/bibliography/toolbar.src166
-rw-r--r--extensions/source/bibliography/uiconfig/sbibliography/menubar/menubar.xml93
-rw-r--r--extensions/source/config/ldap/componentdef.cxx73
-rw-r--r--extensions/source/config/ldap/exports.dxp2
-rw-r--r--extensions/source/config/ldap/ldapaccess.cxx319
-rw-r--r--extensions/source/config/ldap/ldapaccess.hxx168
-rw-r--r--extensions/source/config/ldap/ldapbe2.component34
-rw-r--r--extensions/source/config/ldap/ldapuserprofilebe.cxx280
-rw-r--r--extensions/source/config/ldap/ldapuserprofilebe.hxx158
-rw-r--r--extensions/source/config/ldap/makefile.mk105
-rw-r--r--extensions/source/config/ldap/wrapldapinclude.hxx50
-rw-r--r--extensions/source/dbpilots/commonpagesdbp.cxx509
-rw-r--r--extensions/source/dbpilots/commonpagesdbp.hxx146
-rw-r--r--extensions/source/dbpilots/commonpagesdbp.src239
-rw-r--r--extensions/source/dbpilots/controlwizard.cxx777
-rw-r--r--extensions/source/dbpilots/controlwizard.hxx187
-rw-r--r--extensions/source/dbpilots/dbp.component40
-rw-r--r--extensions/source/dbpilots/dbpilots.src81
-rw-r--r--extensions/source/dbpilots/dbpresid.hrc234
-rw-r--r--extensions/source/dbpilots/dbpservices.cxx91
-rw-r--r--extensions/source/dbpilots/dbptools.cxx70
-rw-r--r--extensions/source/dbpilots/dbptools.hxx48
-rw-r--r--extensions/source/dbpilots/dbptypes.hxx47
-rw-r--r--extensions/source/dbpilots/gridpages.src121
-rw-r--r--extensions/source/dbpilots/gridwizard.cxx485
-rw-r--r--extensions/source/dbpilots/gridwizard.hxx136
-rw-r--r--extensions/source/dbpilots/groupboxpages.src240
-rw-r--r--extensions/source/dbpilots/groupboxwiz.cxx561
-rw-r--r--extensions/source/dbpilots/groupboxwiz.hxx229
-rw-r--r--extensions/source/dbpilots/listcombopages.src211
-rw-r--r--extensions/source/dbpilots/listcombowizard.cxx562
-rw-r--r--extensions/source/dbpilots/listcombowizard.hxx227
-rw-r--r--extensions/source/dbpilots/makefile.mk111
-rw-r--r--extensions/source/dbpilots/moduledbp.cxx32
-rw-r--r--extensions/source/dbpilots/optiongrouplayouter.cxx216
-rw-r--r--extensions/source/dbpilots/optiongrouplayouter.hxx75
-rw-r--r--extensions/source/dbpilots/unoautopilot.hxx106
-rw-r--r--extensions/source/dbpilots/unoautopilot.inl134
-rw-r--r--extensions/source/dbpilots/wizardcontext.hxx92
-rw-r--r--extensions/source/dbpilots/wizardservices.cxx122
-rw-r--r--extensions/source/dbpilots/wizardservices.hxx80
-rw-r--r--extensions/source/inc/componentmodule.cxx293
-rw-r--r--extensions/source/inc/componentmodule.hxx263
-rw-r--r--extensions/source/logging/consolehandler.cxx342
-rw-r--r--extensions/source/logging/csvformatter.cxx382
-rw-r--r--extensions/source/logging/filehandler.cxx441
-rw-r--r--extensions/source/logging/log.component47
-rw-r--r--extensions/source/logging/log_module.cxx43
-rw-r--r--extensions/source/logging/log_module.hxx45
-rw-r--r--extensions/source/logging/log_services.cxx69
-rw-r--r--extensions/source/logging/logger.cxx404
-rw-r--r--extensions/source/logging/loggerconfig.cxx283
-rw-r--r--extensions/source/logging/loggerconfig.hxx65
-rw-r--r--extensions/source/logging/loghandler.cxx204
-rw-r--r--extensions/source/logging/loghandler.hxx154
-rw-r--r--extensions/source/logging/logrecord.cxx103
-rw-r--r--extensions/source/logging/logrecord.hxx68
-rw-r--r--extensions/source/logging/makefile.mk84
-rw-r--r--extensions/source/logging/methodguard.hxx73
-rw-r--r--extensions/source/logging/plaintextformatter.cxx226
-rw-r--r--extensions/source/macosx/spotlight/GetMetadataForFile.m70
-rw-r--r--extensions/source/macosx/spotlight/OOoContentDataParser.h58
-rw-r--r--extensions/source/macosx/spotlight/OOoContentDataParser.m133
-rw-r--r--extensions/source/macosx/spotlight/OOoMetaDataParser.h52
-rw-r--r--extensions/source/macosx/spotlight/OOoMetaDataParser.m200
-rw-r--r--extensions/source/macosx/spotlight/OOoSpotlightImporter.h42
-rw-r--r--extensions/source/macosx/spotlight/OOoSpotlightImporter.m235
-rw-r--r--extensions/source/macosx/spotlight/delzip0
-rw-r--r--extensions/source/macosx/spotlight/ioapi.h98
-rw-r--r--extensions/source/macosx/spotlight/ioapi.m204
-rw-r--r--extensions/source/macosx/spotlight/main.m225
-rw-r--r--extensions/source/macosx/spotlight/makefile.mk96
-rw-r--r--extensions/source/macosx/spotlight/mdimporter/Info.plist70
-rw-r--r--extensions/source/macosx/spotlight/mdimporter/en.lproj/schema.strings1
-rw-r--r--extensions/source/macosx/spotlight/mdimporter/schema.xml397
-rw-r--r--extensions/source/macosx/spotlight/unzip.h377
-rw-r--r--extensions/source/macosx/spotlight/unzip.m1586
-rw-r--r--extensions/source/macosx/spotlight/version.plist16
-rw-r--r--extensions/source/nsplugin/source/exports.dxp16
-rw-r--r--extensions/source/nsplugin/source/exports_wnt.dxp18
-rw-r--r--extensions/source/nsplugin/source/makefile.mk162
-rw-r--r--extensions/source/nsplugin/source/npshell.cxx930
-rw-r--r--extensions/source/nsplugin/source/npshell.hxx91
-rw-r--r--extensions/source/nsplugin/source/ns_debug.hxx40
-rw-r--r--extensions/source/nsplugin/source/nsp_func.hxx103
-rw-r--r--extensions/source/nsplugin/source/nsp_windows.cxx63
-rw-r--r--extensions/source/nsplugin/source/nsp_windows.hxx36
-rw-r--r--extensions/source/nsplugin/source/nsplugin.rc30
-rw-r--r--extensions/source/nsplugin/source/nsplugin_oo.rc30
-rw-r--r--extensions/source/nsplugin/source/so_closelistener.cxx48
-rw-r--r--extensions/source/nsplugin/source/so_closelistener.hxx54
-rw-r--r--extensions/source/nsplugin/source/so_env.cxx507
-rw-r--r--extensions/source/nsplugin/source/so_env.hxx94
-rw-r--r--extensions/source/nsplugin/source/so_instance.cxx495
-rw-r--r--extensions/source/nsplugin/source/so_instance.hxx110
-rw-r--r--extensions/source/nsplugin/source/so_main.cxx497
-rw-r--r--extensions/source/nsplugin/source/so_msg.hxx54
-rw-r--r--extensions/source/ole/comifaces.hxx69
-rw-r--r--extensions/source/ole/jscriptclasses.cxx321
-rw-r--r--extensions/source/ole/jscriptclasses.hxx161
-rw-r--r--extensions/source/ole/makefile.mk138
-rw-r--r--extensions/source/ole/ole2uno.cxx73
-rw-r--r--extensions/source/ole/ole2uno.hxx145
-rw-r--r--extensions/source/ole/oleautobridge.component46
-rw-r--r--extensions/source/ole/oleautobridge.uno.dxp3
-rw-r--r--extensions/source/ole/oledll.cxx70
-rwxr-xr-xextensions/source/ole/oleobjw.cxx2284
-rw-r--r--extensions/source/ole/oleobjw.hxx269
-rw-r--r--extensions/source/ole/olethread.cxx77
-rw-r--r--extensions/source/ole/servprov.cxx754
-rw-r--r--extensions/source/ole/servprov.hxx280
-rw-r--r--extensions/source/ole/servreg.cxx132
-rw-r--r--extensions/source/ole/unoconversionutilities.hxx2450
-rw-r--r--extensions/source/ole/unoobjw.cxx1688
-rw-r--r--extensions/source/ole/unoobjw.hxx300
-rw-r--r--extensions/source/ole/unotypewrapper.cxx179
-rw-r--r--extensions/source/ole/unotypewrapper.hxx101
-rw-r--r--extensions/source/ole/windata.cxx40
-rw-r--r--extensions/source/ole/windata.hxx198
-rw-r--r--extensions/source/oooimprovecore/core.cxx190
-rw-r--r--extensions/source/oooimprovecore/makefile.mk85
-rw-r--r--extensions/source/oooimprovecore/oooimprovecore.component34
-rw-r--r--extensions/source/oooimprovecore/oooimprovecore_module.cxx37
-rw-r--r--extensions/source/oooimprovecore/oooimprovecore_module.hxx38
-rw-r--r--extensions/source/oooimprovecore/oooimprovecore_services.cxx52
-rw-r--r--extensions/source/oooimprovement/Jobs.xcu25
-rw-r--r--extensions/source/oooimprovement/Logging.xcu8
-rw-r--r--extensions/source/oooimprovement/config.cxx296
-rw-r--r--extensions/source/oooimprovement/config.hxx68
-rw-r--r--extensions/source/oooimprovement/corecontroller.cxx89
-rw-r--r--extensions/source/oooimprovement/corecontroller.hxx84
-rw-r--r--extensions/source/oooimprovement/errormail.cxx207
-rw-r--r--extensions/source/oooimprovement/errormail.hxx54
-rw-r--r--extensions/source/oooimprovement/invite_job.cxx133
-rw-r--r--extensions/source/oooimprovement/invite_job.hxx82
-rw-r--r--extensions/source/oooimprovement/logpacker.cxx114
-rw-r--r--extensions/source/oooimprovement/logpacker.hxx51
-rw-r--r--extensions/source/oooimprovement/logstorage.cxx146
-rw-r--r--extensions/source/oooimprovement/logstorage.hxx55
-rw-r--r--extensions/source/oooimprovement/makefile.mk112
-rw-r--r--extensions/source/oooimprovement/makefile.pmk29
-rw-r--r--extensions/source/oooimprovement/myconfigurationhelper.cxx178
-rw-r--r--extensions/source/oooimprovement/myconfigurationhelper.hxx214
-rw-r--r--extensions/source/oooimprovement/onlogrotate_job.cxx235
-rw-r--r--extensions/source/oooimprovement/onlogrotate_job.hxx83
-rw-r--r--extensions/source/oooimprovement/oooimprovement.component38
-rw-r--r--extensions/source/oooimprovement/oooimprovement_exports.cxx88
-rw-r--r--extensions/source/oooimprovement/soaprequest.cxx200
-rw-r--r--extensions/source/oooimprovement/soaprequest.hxx60
-rw-r--r--extensions/source/oooimprovement/soapsender.cxx160
-rw-r--r--extensions/source/oooimprovement/soapsender.hxx56
-rw-r--r--extensions/source/plugin/aqua/macmgr.cxx646
-rw-r--r--extensions/source/plugin/aqua/makefile.mk75
-rw-r--r--extensions/source/plugin/aqua/sysplug.cxx808
-rw-r--r--extensions/source/plugin/base/context.cxx343
-rw-r--r--extensions/source/plugin/base/evtlstnr.cxx64
-rw-r--r--extensions/source/plugin/base/makefile.mk70
-rw-r--r--extensions/source/plugin/base/manager.cxx225
-rw-r--r--extensions/source/plugin/base/multiplx.cxx332
-rw-r--r--extensions/source/plugin/base/nfuncs.cxx677
-rw-r--r--extensions/source/plugin/base/plcom.cxx71
-rw-r--r--extensions/source/plugin/base/plctrl.cxx323
-rw-r--r--extensions/source/plugin/base/plmodel.cxx203
-rw-r--r--extensions/source/plugin/base/service.cxx93
-rw-r--r--extensions/source/plugin/base/xplugin.cxx1155
-rw-r--r--extensions/source/plugin/inc/plugin/aqua/sysplug.hxx167
-rw-r--r--extensions/source/plugin/inc/plugin/impl.hxx430
-rw-r--r--extensions/source/plugin/inc/plugin/model.hxx136
-rw-r--r--extensions/source/plugin/inc/plugin/multiplx.hxx167
-rw-r--r--extensions/source/plugin/inc/plugin/plcom.hxx85
-rw-r--r--extensions/source/plugin/inc/plugin/plctrl.hxx181
-rw-r--r--extensions/source/plugin/inc/plugin/unx/mediator.hxx183
-rw-r--r--extensions/source/plugin/inc/plugin/unx/plugcon.hxx251
-rw-r--r--extensions/source/plugin/inc/plugin/unx/sysplug.hxx83
-rw-r--r--extensions/source/plugin/inc/plugin/win/sysplug.hxx125
-rw-r--r--extensions/source/plugin/unx/makefile.mk110
-rw-r--r--extensions/source/plugin/unx/mediator.cxx309
-rw-r--r--extensions/source/plugin/unx/npnapi.cxx917
-rw-r--r--extensions/source/plugin/unx/nppapi.cxx621
-rw-r--r--extensions/source/plugin/unx/npwrap.cxx515
-rw-r--r--extensions/source/plugin/unx/plugcon.cxx282
-rw-r--r--extensions/source/plugin/unx/sysplug.cxx131
-rw-r--r--extensions/source/plugin/unx/unxmgr.cxx315
-rw-r--r--extensions/source/plugin/util/makefile.mk117
-rw-r--r--extensions/source/plugin/util/makefile.pmk48
-rw-r--r--extensions/source/plugin/util/pl.component37
-rw-r--r--extensions/source/plugin/win/makefile.mk65
-rw-r--r--extensions/source/plugin/win/sysplug.cxx443
-rw-r--r--extensions/source/plugin/win/winmgr.cxx470
-rw-r--r--extensions/source/preload/makefile.mk93
-rw-r--r--extensions/source/preload/modulepreload.cxx32
-rw-r--r--extensions/source/preload/oemwiz.cxx471
-rw-r--r--extensions/source/preload/oemwiz.hxx156
-rw-r--r--extensions/source/preload/preload.component34
-rw-r--r--extensions/source/preload/preload.hrc58
-rw-r--r--extensions/source/preload/preload.src290
-rw-r--r--extensions/source/preload/preloadservices.cxx71
-rw-r--r--extensions/source/preload/preloadservices.hxx55
-rw-r--r--extensions/source/preload/services.cxx86
-rw-r--r--extensions/source/preload/unoautopilot.hxx107
-rw-r--r--extensions/source/preload/unoautopilot.inl133
-rw-r--r--extensions/source/propctrlr/MasterDetailLinkDialog.cxx157
-rw-r--r--extensions/source/propctrlr/MasterDetailLinkDialog.hxx84
-rw-r--r--extensions/source/propctrlr/browserline.cxx548
-rw-r--r--extensions/source/propctrlr/browserline.hxx143
-rw-r--r--extensions/source/propctrlr/browserlistbox.cxx1312
-rw-r--r--extensions/source/propctrlr/browserlistbox.hxx250
-rw-r--r--extensions/source/propctrlr/browserpage.cxx105
-rw-r--r--extensions/source/propctrlr/browserpage.hxx68
-rw-r--r--extensions/source/propctrlr/browserview.cxx144
-rw-r--r--extensions/source/propctrlr/browserview.hxx89
-rw-r--r--extensions/source/propctrlr/buttonnavigationhandler.cxx295
-rw-r--r--extensions/source/propctrlr/buttonnavigationhandler.hxx90
-rw-r--r--extensions/source/propctrlr/cellbindinghandler.cxx504
-rw-r--r--extensions/source/propctrlr/cellbindinghandler.hxx109
-rw-r--r--extensions/source/propctrlr/cellbindinghelper.cxx565
-rw-r--r--extensions/source/propctrlr/cellbindinghelper.hxx290
-rw-r--r--extensions/source/propctrlr/commoncontrol.cxx206
-rw-r--r--extensions/source/propctrlr/commoncontrol.hxx337
-rw-r--r--extensions/source/propctrlr/composeduiupdate.cxx859
-rw-r--r--extensions/source/propctrlr/composeduiupdate.hxx231
-rw-r--r--extensions/source/propctrlr/controlfontdialog.cxx177
-rw-r--r--extensions/source/propctrlr/controlfontdialog.hxx100
-rw-r--r--extensions/source/propctrlr/controltype.hxx54
-rw-r--r--extensions/source/propctrlr/defaultforminspection.cxx270
-rw-r--r--extensions/source/propctrlr/defaultforminspection.hxx91
-rw-r--r--extensions/source/propctrlr/defaulthelpprovider.cxx206
-rw-r--r--extensions/source/propctrlr/defaulthelpprovider.hxx93
-rw-r--r--extensions/source/propctrlr/editpropertyhandler.cxx323
-rw-r--r--extensions/source/propctrlr/editpropertyhandler.hxx82
-rw-r--r--extensions/source/propctrlr/eformshelper.cxx790
-rw-r--r--extensions/source/propctrlr/eformshelper.hxx269
-rw-r--r--extensions/source/propctrlr/eformspropertyhandler.cxx616
-rw-r--r--extensions/source/propctrlr/eformspropertyhandler.hxx108
-rw-r--r--extensions/source/propctrlr/enumrepresentation.hxx76
-rw-r--r--extensions/source/propctrlr/eventhandler.cxx1285
-rw-r--r--extensions/source/propctrlr/eventhandler.hxx265
-rw-r--r--extensions/source/propctrlr/fontdialog.cxx631
-rw-r--r--extensions/source/propctrlr/fontdialog.hxx83
-rw-r--r--extensions/source/propctrlr/fontdialog.src60
-rw-r--r--extensions/source/propctrlr/fontitemids.hxx66
-rw-r--r--extensions/source/propctrlr/formbrowsertools.cxx148
-rw-r--r--extensions/source/propctrlr/formbrowsertools.hxx108
-rw-r--r--extensions/source/propctrlr/formcomponenthandler.cxx3341
-rw-r--r--extensions/source/propctrlr/formcomponenthandler.hxx479
-rw-r--r--extensions/source/propctrlr/formcontroller.cxx299
-rw-r--r--extensions/source/propctrlr/formcontroller.hxx140
-rw-r--r--extensions/source/propctrlr/formgeometryhandler.cxx826
-rw-r--r--extensions/source/propctrlr/formlinkdialog.cxx676
-rw-r--r--extensions/source/propctrlr/formlinkdialog.hrc44
-rw-r--r--extensions/source/propctrlr/formlinkdialog.hxx150
-rw-r--r--extensions/source/propctrlr/formlinkdialog.src162
-rw-r--r--extensions/source/propctrlr/formlocalid.hrc39
-rw-r--r--extensions/source/propctrlr/formmetadata.cxx706
-rw-r--r--extensions/source/propctrlr/formmetadata.hxx350
-rw-r--r--extensions/source/propctrlr/formres.src1523
-rw-r--r--extensions/source/propctrlr/formresid.hrc389
-rw-r--r--extensions/source/propctrlr/formstrings.cxx36
-rw-r--r--extensions/source/propctrlr/formstrings.hxx307
-rw-r--r--extensions/source/propctrlr/genericpropertyhandler.cxx726
-rw-r--r--extensions/source/propctrlr/genericpropertyhandler.hxx161
-rw-r--r--extensions/source/propctrlr/handlerhelper.cxx291
-rw-r--r--extensions/source/propctrlr/handlerhelper.hxx217
-rw-r--r--extensions/source/propctrlr/inspectorhelpwindow.cxx153
-rw-r--r--extensions/source/propctrlr/inspectorhelpwindow.hxx78
-rw-r--r--extensions/source/propctrlr/inspectormodelbase.cxx272
-rw-r--r--extensions/source/propctrlr/inspectormodelbase.hxx108
-rw-r--r--extensions/source/propctrlr/linedescriptor.hxx70
-rw-r--r--extensions/source/propctrlr/listselectiondlg.cxx173
-rw-r--r--extensions/source/propctrlr/listselectiondlg.hrc39
-rw-r--r--extensions/source/propctrlr/listselectiondlg.hxx89
-rw-r--r--extensions/source/propctrlr/listselectiondlg.src82
-rw-r--r--extensions/source/propctrlr/makefile.mk154
-rw-r--r--extensions/source/propctrlr/modulepcr.cxx48
-rw-r--r--extensions/source/propctrlr/modulepcr.hxx45
-rw-r--r--extensions/source/propctrlr/newdatatype.cxx109
-rw-r--r--extensions/source/propctrlr/newdatatype.hrc38
-rw-r--r--extensions/source/propctrlr/newdatatype.hxx77
-rw-r--r--extensions/source/propctrlr/newdatatype.src79
-rw-r--r--extensions/source/propctrlr/objectinspectormodel.cxx242
-rw-r--r--extensions/source/propctrlr/pcr.component91
-rw-r--r--extensions/source/propctrlr/pcr.xml146
-rw-r--r--extensions/source/propctrlr/pcrcommon.cxx78
-rw-r--r--extensions/source/propctrlr/pcrcommon.hxx152
-rw-r--r--extensions/source/propctrlr/pcrcommontypes.hxx51
-rw-r--r--extensions/source/propctrlr/pcrcomponentcontext.cxx106
-rw-r--r--extensions/source/propctrlr/pcrcomponentcontext.hxx168
-rw-r--r--extensions/source/propctrlr/pcrmiscres.src189
-rw-r--r--extensions/source/propctrlr/pcrservices.cxx124
-rw-r--r--extensions/source/propctrlr/pcrstrings.cxx36
-rw-r--r--extensions/source/propctrlr/pcrstrings.hxx46
-rw-r--r--extensions/source/propctrlr/pcrunodialogs.cxx146
-rw-r--r--extensions/source/propctrlr/pcrunodialogs.hxx94
-rw-r--r--extensions/source/propctrlr/propcontroller.cxx1778
-rw-r--r--extensions/source/propctrlr/propcontroller.hxx430
-rw-r--r--extensions/source/propctrlr/propcontrolobserver.hxx56
-rw-r--r--extensions/source/propctrlr/propertycomposer.cxx516
-rw-r--r--extensions/source/propctrlr/propertycomposer.hxx157
-rw-r--r--extensions/source/propctrlr/propertycontrolextender.cxx145
-rw-r--r--extensions/source/propctrlr/propertycontrolextender.hxx74
-rw-r--r--extensions/source/propctrlr/propertyeditor.cxx542
-rw-r--r--extensions/source/propctrlr/propertyeditor.hxx163
-rw-r--r--extensions/source/propctrlr/propertyhandler.cxx464
-rw-r--r--extensions/source/propctrlr/propertyhandler.hxx457
-rw-r--r--extensions/source/propctrlr/propertyinfo.hxx66
-rw-r--r--extensions/source/propctrlr/propeventtranslation.cxx105
-rw-r--r--extensions/source/propctrlr/propeventtranslation.hxx84
-rw-r--r--extensions/source/propctrlr/proplinelistener.hxx51
-rw-r--r--extensions/source/propctrlr/propres.src68
-rw-r--r--extensions/source/propctrlr/propresid.hrc48
-rw-r--r--extensions/source/propctrlr/pushbuttonnavigation.cxx306
-rw-r--r--extensions/source/propctrlr/pushbuttonnavigation.hxx108
-rw-r--r--extensions/source/propctrlr/selectlabeldialog.cxx313
-rw-r--r--extensions/source/propctrlr/selectlabeldialog.hxx91
-rw-r--r--extensions/source/propctrlr/selectlabeldialog.src85
-rw-r--r--extensions/source/propctrlr/sqlcommanddesign.cxx393
-rw-r--r--extensions/source/propctrlr/sqlcommanddesign.hxx223
-rw-r--r--extensions/source/propctrlr/standardcontrol.cxx1442
-rw-r--r--extensions/source/propctrlr/standardcontrol.hxx445
-rw-r--r--extensions/source/propctrlr/stlops.hxx70
-rw-r--r--extensions/source/propctrlr/stringdefine.hxx99
-rw-r--r--extensions/source/propctrlr/stringrepresentation.cxx650
-rw-r--r--extensions/source/propctrlr/submissionhandler.cxx448
-rw-r--r--extensions/source/propctrlr/submissionhandler.hxx125
-rw-r--r--extensions/source/propctrlr/taborder.cxx424
-rw-r--r--extensions/source/propctrlr/taborder.hrc45
-rw-r--r--extensions/source/propctrlr/taborder.hxx132
-rw-r--r--extensions/source/propctrlr/taborder.src107
-rw-r--r--extensions/source/propctrlr/unourl.cxx70
-rw-r--r--extensions/source/propctrlr/unourl.hxx65
-rw-r--r--extensions/source/propctrlr/usercontrol.cxx370
-rw-r--r--extensions/source/propctrlr/usercontrol.hxx172
-rw-r--r--extensions/source/propctrlr/xsddatatypes.cxx250
-rw-r--r--extensions/source/propctrlr/xsddatatypes.hxx114
-rw-r--r--extensions/source/propctrlr/xsdvalidationhelper.cxx412
-rw-r--r--extensions/source/propctrlr/xsdvalidationhelper.hxx150
-rw-r--r--extensions/source/propctrlr/xsdvalidationpropertyhandler.cxx692
-rw-r--r--extensions/source/propctrlr/xsdvalidationpropertyhandler.hxx103
-rw-r--r--extensions/source/resource/exports.dxp2
-rw-r--r--extensions/source/resource/makefile.mk84
-rw-r--r--extensions/source/resource/oooresourceloader.cxx489
-rw-r--r--extensions/source/resource/res.component38
-rw-r--r--extensions/source/resource/res_services.cxx86
-rw-r--r--extensions/source/resource/res_services.hxx64
-rw-r--r--extensions/source/resource/resource.cxx471
-rw-r--r--extensions/source/scanner/exports.dxp2
-rw-r--r--extensions/source/scanner/grid.cxx608
-rw-r--r--extensions/source/scanner/grid.hrc42
-rw-r--r--extensions/source/scanner/grid.hxx149
-rw-r--r--extensions/source/scanner/grid.src115
-rw-r--r--extensions/source/scanner/makefile.mk108
-rw-r--r--extensions/source/scanner/sane.cxx1004
-rw-r--r--extensions/source/scanner/sane.hxx200
-rw-r--r--extensions/source/scanner/sanedlg.cxx1430
-rw-r--r--extensions/source/scanner/sanedlg.hrc82
-rw-r--r--extensions/source/scanner/sanedlg.hxx152
-rw-r--r--extensions/source/scanner/sanedlg.src318
-rw-r--r--extensions/source/scanner/scanner.cxx104
-rw-r--r--extensions/source/scanner/scanner.hxx116
-rw-r--r--extensions/source/scanner/scanunx.cxx383
-rw-r--r--extensions/source/scanner/scanwin.cxx1054
-rw-r--r--extensions/source/scanner/scn.component34
-rw-r--r--extensions/source/scanner/scnserv.cxx73
-rw-r--r--extensions/source/scanner/twain.cxx529
-rw-r--r--extensions/source/scanner/twain.hxx98
-rw-r--r--extensions/source/svg/makefile.mk67
-rw-r--r--extensions/source/svg/svgaction.cxx1458
-rw-r--r--extensions/source/svg/svgaction.hxx164
-rw-r--r--extensions/source/svg/svgcom.hxx82
-rw-r--r--extensions/source/svg/svgprinter.cxx328
-rw-r--r--extensions/source/svg/svgprinter.hxx67
-rw-r--r--extensions/source/svg/svguno.cxx98
-rw-r--r--extensions/source/svg/svgwriter.cxx175
-rw-r--r--extensions/source/svg/svgwriter.hxx60
-rw-r--r--extensions/source/unoactivex/main/initwindowpeer.cxx87
-rw-r--r--extensions/source/update/check/Addons.xcu26
-rw-r--r--extensions/source/update/check/Jobs.xcu42
-rw-r--r--extensions/source/update/check/actionlistener.hxx46
-rw-r--r--extensions/source/update/check/download.cxx460
-rw-r--r--extensions/source/update/check/download.hxx84
-rw-r--r--extensions/source/update/check/makefile.mk142
-rw-r--r--extensions/source/update/check/transform.pl61
-rw-r--r--extensions/source/update/check/updatecheck.cxx1690
-rw-r--r--extensions/source/update/check/updatecheck.hxx194
-rw-r--r--extensions/source/update/check/updatecheckconfig.cxx763
-rw-r--r--extensions/source/update/check/updatecheckconfig.hxx238
-rw-r--r--extensions/source/update/check/updatecheckconfiglistener.hxx43
-rwxr-xr-xextensions/source/update/check/updatecheckjob.cxx399
-rw-r--r--extensions/source/update/check/updatehdl.cxx1420
-rw-r--r--extensions/source/update/check/updatehdl.hrc83
-rw-r--r--extensions/source/update/check/updatehdl.hxx221
-rw-r--r--extensions/source/update/check/updatehdl.src264
-rw-r--r--extensions/source/update/check/updateinfo.hxx86
-rw-r--r--extensions/source/update/check/updateprotocol.cxx333
-rw-r--r--extensions/source/update/check/updateprotocol.hxx56
-rw-r--r--extensions/source/update/check/updateprotocoltest.cxx94
-rw-r--r--extensions/source/update/check/updchk.uno.component37
-rw-r--r--extensions/source/update/check/updchk.xml49
-rw-r--r--extensions/source/update/feed/makefile.mk72
-rw-r--r--extensions/source/update/feed/test/makefile.mk58
-rw-r--r--extensions/source/update/feed/test/updatefeedtest.cxx106
-rw-r--r--extensions/source/update/feed/updatefeed.component34
-rw-r--r--extensions/source/update/feed/updatefeed.cxx863
-rw-r--r--extensions/source/update/feed/updatefeed.xml49
-rw-r--r--extensions/source/update/tools/makefile.mk68
-rw-r--r--extensions/source/update/tools/ztool.cxx63
-rw-r--r--extensions/source/update/ui/makefile.mk82
-rw-r--r--extensions/source/update/ui/updatecheckui.cxx1071
-rw-r--r--extensions/source/update/ui/updatecheckui.hrc36
-rw-r--r--extensions/source/update/ui/updatecheckui.src51
-rw-r--r--extensions/source/update/ui/updchk.component34
-rw-r--r--extensions/source/update/ui/updchkui.xml34
-rw-r--r--extensions/source/xmlextract/makefile.mk73
-rw-r--r--extensions/source/xmlextract/xmx.component34
-rw-r--r--extensions/source/xmlextract/xmxcom.hxx65
-rw-r--r--extensions/source/xmlextract/xmxtrct.cxx197
-rw-r--r--extensions/source/xmlextract/xmxtrct.hxx54
-rw-r--r--extensions/source/xmlextract/xmxuno.cxx79
-rw-r--r--extensions/stardiv/fontest/fontest.idl111
-rw-r--r--extensions/stardiv/fontest/makefile.mk48
-rw-r--r--extensions/stardiv/oinstchk/makefile.mk47
-rw-r--r--extensions/stardiv/oinstchk/oinstchk.idl108
-rw-r--r--extensions/stardiv/pgp/makefile.mk53
-rw-r--r--extensions/test/ole/AxTestComponents/AxTestComponents.cpp100
-rw-r--r--extensions/test/ole/AxTestComponents/AxTestComponents.def9
-rw-r--r--extensions/test/ole/AxTestComponents/AxTestComponents.dsp325
-rw-r--r--extensions/test/ole/AxTestComponents/AxTestComponents.idl257
-rw-r--r--extensions/test/ole/AxTestComponents/AxTestComponents.rc164
-rw-r--r--extensions/test/ole/AxTestComponents/AxTestComponents.sln31
-rw-r--r--extensions/test/ole/AxTestComponents/AxTestComponents.vcproj819
-rw-r--r--extensions/test/ole/AxTestComponents/Basic.cpp1364
-rw-r--r--extensions/test/ole/AxTestComponents/Basic.h269
-rw-r--r--extensions/test/ole/AxTestComponents/Basic.rgs50
-rw-r--r--extensions/test/ole/AxTestComponents/Foo.cpp47
-rw-r--r--extensions/test/ole/AxTestComponents/Foo.h65
-rw-r--r--extensions/test/ole/AxTestComponents/StdAfx.cpp35
-rw-r--r--extensions/test/ole/AxTestComponents/StdAfx.h56
-rw-r--r--extensions/test/ole/AxTestComponents/readme.txt4
-rw-r--r--extensions/test/ole/AxTestComponents/resource.h44
-rw-r--r--extensions/test/ole/DCOM/Clients/WriterDemo/Module1.bas8
-rw-r--r--extensions/test/ole/DCOM/Clients/WriterDemo/client_writerdemo.vbp33
-rw-r--r--extensions/test/ole/DCOM/Clients/WriterDemo/client_writerdemo.vbw1
-rw-r--r--extensions/test/ole/DCOM/Clients/WriterDemo/readme.txt4
-rw-r--r--extensions/test/ole/DCOM/dcom_test/Module1.bas38
-rw-r--r--extensions/test/ole/DCOM/dcom_test/dcom_test.vbp37
-rw-r--r--extensions/test/ole/DCOM/dcom_test/dcom_test.vbw1
-rw-r--r--extensions/test/ole/DCOM/dcom_test/readme.txt5
-rw-r--r--extensions/test/ole/DCOM/scriptComponents/WriterDemo.wsc186
-rw-r--r--extensions/test/ole/DCOM/scriptComponents/readme.txt13
-rw-r--r--extensions/test/ole/EventListenerSample/EventListener/EventListener.cpp72
-rw-r--r--extensions/test/ole/EventListenerSample/EventListener/EventListener.def9
-rw-r--r--extensions/test/ole/EventListenerSample/EventListener/EventListener.idl39
-rw-r--r--extensions/test/ole/EventListenerSample/EventListener/EventListener.rc136
-rw-r--r--extensions/test/ole/EventListenerSample/EventListener/EventListener.sln32
-rw-r--r--extensions/test/ole/EventListenerSample/EventListener/EventListener.vcproj927
-rw-r--r--extensions/test/ole/EventListenerSample/EventListener/EvtListener.cpp19
-rw-r--r--extensions/test/ole/EventListenerSample/EventListener/EvtListener.h35
-rw-r--r--extensions/test/ole/EventListenerSample/EventListener/EvtListener.rgs26
-rw-r--r--extensions/test/ole/EventListenerSample/EventListener/StdAfx.cpp12
-rw-r--r--extensions/test/ole/EventListenerSample/EventListener/StdAfx.h27
-rw-r--r--extensions/test/ole/EventListenerSample/EventListener/resource.h17
-rw-r--r--extensions/test/ole/EventListenerSample/VBEventListener/Module1.bas9
-rw-r--r--extensions/test/ole/EventListenerSample/VBEventListener/VBEventListener.cls78
-rw-r--r--extensions/test/ole/EventListenerSample/VBEventListener/VBasicEventListener.dllbin0 -> 24576 bytes-rw-r--r--extensions/test/ole/EventListenerSample/VBEventListener/VBasicEventListener.vbp38
-rw-r--r--extensions/test/ole/EventListenerSample/VBEventListener/VBasicEventListener.vbw2
-rw-r--r--extensions/test/ole/EventListenerSample/VBEventListener/readme.txt7
-rw-r--r--extensions/test/ole/EventListenerSample/events.htm98
-rw-r--r--extensions/test/ole/EventListenerSample/readme.txt20
-rw-r--r--extensions/test/ole/JScriptNewStyle.htm1054
-rw-r--r--extensions/test/ole/MfcControl/MfcControl.cpp79
-rw-r--r--extensions/test/ole/MfcControl/MfcControl.def9
-rw-r--r--extensions/test/ole/MfcControl/MfcControl.dsp265
-rw-r--r--extensions/test/ole/MfcControl/MfcControl.h33
-rw-r--r--extensions/test/ole/MfcControl/MfcControl.odl82
-rw-r--r--extensions/test/ole/MfcControl/MfcControl.rc145
-rw-r--r--extensions/test/ole/MfcControl/MfcControl.sln25
-rw-r--r--extensions/test/ole/MfcControl/MfcControl.vcproj581
-rw-r--r--extensions/test/ole/MfcControl/MfcControlCtl.cpp344
-rw-r--r--extensions/test/ole/MfcControl/MfcControlCtl.h96
-rw-r--r--extensions/test/ole/MfcControl/MfcControlCtl.pngbin0 -> 204 bytes-rw-r--r--extensions/test/ole/MfcControl/MfcControlPpg.cpp76
-rw-r--r--extensions/test/ole/MfcControl/MfcControlPpg.h46
-rw-r--r--extensions/test/ole/MfcControl/Resource.h20
-rw-r--r--extensions/test/ole/MfcControl/StdAfx.cpp5
-rw-r--r--extensions/test/ole/MfcControl/StdAfx.h30
-rw-r--r--extensions/test/ole/OleClient/OleClient.ini5
-rw-r--r--extensions/test/ole/OleClient/axhost.cxx56
-rw-r--r--extensions/test/ole/OleClient/axhost.hxx61
-rw-r--r--extensions/test/ole/OleClient/clientTest.cxx1325
-rw-r--r--extensions/test/ole/OleClient/funcs.cxx354
-rw-r--r--extensions/test/ole/OleClient/makefile.mk72
-rw-r--r--extensions/test/ole/OleClient/readme.txt10
-rw-r--r--extensions/test/ole/OleConverterVar1/convTest.cxx656
-rw-r--r--extensions/test/ole/OleConverterVar1/makefile.mk66
-rw-r--r--extensions/test/ole/OleConverterVar1/readme.txt10
-rw-r--r--extensions/test/ole/OleConverterVar1/smartarray.h233
-rw-r--r--extensions/test/ole/OleTest.htm1063
-rw-r--r--extensions/test/ole/ScriptTest.html1555
-rw-r--r--extensions/test/ole/StarBasic_OleClient/oleclient.bas609
-rw-r--r--extensions/test/ole/StarBasic_OleClient/readme.txt10
-rw-r--r--extensions/test/ole/VisualBasic/AssemblyInfo.vb33
-rw-r--r--extensions/test/ole/VisualBasic/Module1.vb853
-rw-r--r--extensions/test/ole/VisualBasic/Project1.sln20
-rw-r--r--extensions/test/ole/VisualBasic/Project1.vbproj90
-rw-r--r--extensions/test/ole/VisualBasic/readme.txt18
-rw-r--r--extensions/test/ole/callUnoToJava.htm538
-rw-r--r--extensions/test/ole/cpnt/cpnt.cxx2124
-rw-r--r--extensions/test/ole/cpnt/exports.dxp3
-rw-r--r--extensions/test/ole/cpnt/makefile.mk103
-rw-r--r--extensions/test/ole/cpnt/readme.txt21
-rw-r--r--extensions/test/ole/cppToUno/makefile.mk65
-rw-r--r--extensions/test/ole/cppToUno/readme.txt9
-rw-r--r--extensions/test/ole/cppToUno/testcppuno.cxx219
-rw-r--r--extensions/test/ole/cpptest/cpptest.cxx113
-rw-r--r--extensions/test/ole/cpptest/makefile.mk64
-rw-r--r--extensions/test/ole/cpptest/readme.txt6
-rw-r--r--extensions/test/ole/idl/oletest.idl308
-rw-r--r--extensions/test/ole/unloading/makefile.mk70
-rw-r--r--extensions/test/ole/unloading/readme.txt6
-rw-r--r--extensions/test/ole/unloading/unloadTest.cxx226
-rw-r--r--extensions/test/ole/unoTocomCalls/Test/StdAfx.cpp35
-rw-r--r--extensions/test/ole/unoTocomCalls/Test/StdAfx.h56
-rw-r--r--extensions/test/ole/unoTocomCalls/Test/Test.cpp246
-rw-r--r--extensions/test/ole/unoTocomCalls/Test/Test.dsp114
-rw-r--r--extensions/test/ole/unoTocomCalls/Test/Test.sln19
-rw-r--r--extensions/test/ole/unoTocomCalls/Test/Test.vcproj247
-rw-r--r--extensions/test/ole/unoTocomCalls/XCallback_Impl/Basic.rgs27
-rw-r--r--extensions/test/ole/unoTocomCalls/XCallback_Impl/BasicTest.rgs27
-rw-r--r--extensions/test/ole/unoTocomCalls/XCallback_Impl/Callback.cpp512
-rw-r--r--extensions/test/ole/unoTocomCalls/XCallback_Impl/Callback.h135
-rw-r--r--extensions/test/ole/unoTocomCalls/XCallback_Impl/Callback.rgs27
-rw-r--r--extensions/test/ole/unoTocomCalls/XCallback_Impl/Simple.cpp80
-rw-r--r--extensions/test/ole/unoTocomCalls/XCallback_Impl/Simple.h65
-rw-r--r--extensions/test/ole/unoTocomCalls/XCallback_Impl/Simple.rgs27
-rw-r--r--extensions/test/ole/unoTocomCalls/XCallback_Impl/StdAfx.cpp39
-rw-r--r--extensions/test/ole/unoTocomCalls/XCallback_Impl/StdAfx.h57
-rw-r--r--extensions/test/ole/unoTocomCalls/XCallback_Impl/XCallback_Impl.cpp101
-rw-r--r--extensions/test/ole/unoTocomCalls/XCallback_Impl/XCallback_Impl.def10
-rw-r--r--extensions/test/ole/unoTocomCalls/XCallback_Impl/XCallback_Impl.dsp337
-rw-r--r--extensions/test/ole/unoTocomCalls/XCallback_Impl/XCallback_Impl.idl151
-rw-r--r--extensions/test/ole/unoTocomCalls/XCallback_Impl/XCallback_Impl.rc163
-rw-r--r--extensions/test/ole/unoTocomCalls/XCallback_Impl/XCallback_Impl.sln31
-rw-r--r--extensions/test/ole/unoTocomCalls/XCallback_Impl/XCallback_Impl.vcproj816
-rw-r--r--extensions/test/ole/unoTocomCalls/XCallback_Impl/resource.h46
-rw-r--r--extensions/test/ole/unoTocomCalls/readme.txt9
-rw-r--r--extensions/test/pgp/TestPGP.java146
-rw-r--r--extensions/test/pgp/makefile.mk124
-rw-r--r--extensions/test/pgp/readme.txt33
-rw-r--r--extensions/test/sax/exports.dxp2
-rw-r--r--extensions/test/sax/factory.hxx31
-rw-r--r--extensions/test/sax/makefile.mk65
-rw-r--r--extensions/test/sax/testsax.cxx911
-rw-r--r--extensions/test/sax/testwriter.cxx772
-rw-r--r--extensions/test/stm/datatest.cxx1070
-rw-r--r--extensions/test/stm/exports.dxp2
-rw-r--r--extensions/test/stm/makefile.mk62
-rw-r--r--extensions/test/stm/marktest.cxx679
-rw-r--r--extensions/test/stm/pipetest.cxx446
-rw-r--r--extensions/test/stm/testfactreg.cxx170
-rw-r--r--extensions/test/stm/testfactreg.hxx110
-rw-r--r--extensions/util/hidother.src427
-rw-r--r--extensions/util/makefile.mk39
-rw-r--r--extensions/util/makefile.pmk29
-rw-r--r--extensions/util/target.pmk35
-rw-r--r--extensions/workben/makefile.mk174
-rw-r--r--extensions/workben/pythonautotest.cxx623
-rw-r--r--extensions/workben/pythontest.cxx557
-rw-r--r--extensions/workben/testcomponent.cxx222
-rw-r--r--extensions/workben/testframecontrol.cxx320
-rw-r--r--extensions/workben/testpgp.cxx844
-rw-r--r--extensions/workben/testresource.cxx92
-rw-r--r--extensions/workben/testresource.src30
-rw-r--r--external/gcc3_specific/makefile.mk69
-rw-r--r--external/glibc-2.1.3.patch210
-rw-r--r--external/glibc/makefile.mk70
-rw-r--r--external/mingwheaders/makefile.mk210
-rw-r--r--external/mingwheaders/mingw_atl_headers.patch1654
-rw-r--r--external/mingwheaders/mingw_headers.patch2130
-rw-r--r--external/prj/build.lst5
-rw-r--r--external/prj/d.lst65
-rw-r--r--external/unowinreg/README2
-rw-r--r--extras/prj/build.lst30
-rw-r--r--extras/prj/d.lst12
-rw-r--r--extras/source/autotext/delzip1
-rw-r--r--extras/source/autotext/lang/af-ZA/acor_af-ZA.datbin0 -> 5241 bytes-rw-r--r--extras/source/autotext/lang/bg/acor_bg-BG.datbin0 -> 3410 bytes-rw-r--r--extras/source/autotext/lang/bg/crdbus50.baubin0 -> 14598 bytes-rw-r--r--extras/source/autotext/lang/bg/standard.baubin0 -> 56036 bytes-rw-r--r--extras/source/autotext/lang/bg/template.baubin0 -> 59956 bytes-rw-r--r--extras/source/autotext/lang/cs/acor_cs-CZ.datbin0 -> 99637 bytes-rw-r--r--extras/source/autotext/lang/cs/crdbus50.baubin0 -> 34953 bytes-rw-r--r--extras/source/autotext/lang/cs/crdbus54.baubin0 -> 34910 bytes-rw-r--r--extras/source/autotext/lang/cs/standard.baubin0 -> 86365 bytes-rw-r--r--extras/source/autotext/lang/cs/template.baubin0 -> 58306 bytes-rw-r--r--extras/source/autotext/lang/da/acor_da-DK.datbin0 -> 7470 bytes-rw-r--r--extras/source/autotext/lang/da/crdbus50.baubin0 -> 28865 bytes-rw-r--r--extras/source/autotext/lang/da/standard.baubin0 -> 55464 bytes-rw-r--r--extras/source/autotext/lang/da/template.baubin0 -> 45130 bytes-rw-r--r--extras/source/autotext/lang/de/acor_de-DE.datbin0 -> 52613 bytes-rw-r--r--extras/source/autotext/lang/de/crdbus50.baubin0 -> 20777 bytes-rw-r--r--extras/source/autotext/lang/de/standard.baubin0 -> 48317 bytes-rw-r--r--extras/source/autotext/lang/de/template.baubin0 -> 49052 bytes-rw-r--r--extras/source/autotext/lang/delzip1
-rw-r--r--extras/source/autotext/lang/en-AU/acor_en-AU.datbin0 -> 79211 bytes-rw-r--r--extras/source/autotext/lang/en-GB/acor_en-GB.datbin0 -> 79212 bytes-rw-r--r--extras/source/autotext/lang/en-GB/crdbus50.baubin0 -> 30564 bytes-rw-r--r--extras/source/autotext/lang/en-GB/standard.baubin0 -> 68960 bytes-rw-r--r--extras/source/autotext/lang/en-GB/template.baubin0 -> 49042 bytes-rw-r--r--extras/source/autotext/lang/en-US/acor_en-US.datbin0 -> 78472 bytes-rw-r--r--extras/source/autotext/lang/en-US/crdbus50.baubin0 -> 29311 bytes-rw-r--r--extras/source/autotext/lang/en-US/standard.baubin0 -> 57462 bytes-rw-r--r--extras/source/autotext/lang/en-US/template.baubin0 -> 45671 bytes-rw-r--r--extras/source/autotext/lang/en-ZA/acor_en-ZA.datbin0 -> 8244 bytes-rw-r--r--extras/source/autotext/lang/es/acor_es-ES.datbin0 -> 39611 bytes-rw-r--r--extras/source/autotext/lang/es/crdbus50.baubin0 -> 29126 bytes-rw-r--r--extras/source/autotext/lang/es/standard.baubin0 -> 43448 bytes-rw-r--r--extras/source/autotext/lang/es/template.baubin0 -> 45738 bytes-rw-r--r--extras/source/autotext/lang/eu/acor_eu.datbin0 -> 78988 bytes-rwxr-xr-xextras/source/autotext/lang/eu/crdbus50.baubin0 -> 29311 bytes-rwxr-xr-xextras/source/autotext/lang/eu/standard.baubin0 -> 57462 bytes-rwxr-xr-xextras/source/autotext/lang/eu/template.baubin0 -> 45671 bytes-rw-r--r--extras/source/autotext/lang/fa/acor_fa-IR.datbin0 -> 629744 bytes-rw-r--r--extras/source/autotext/lang/fi/acor_fi-FI.datbin0 -> 5810 bytes-rw-r--r--extras/source/autotext/lang/fr/acor_fr-FR.datbin0 -> 4650 bytes-rw-r--r--extras/source/autotext/lang/fr/crdbus50.baubin0 -> 29255 bytes-rw-r--r--extras/source/autotext/lang/fr/standard.baubin0 -> 48704 bytes-rw-r--r--extras/source/autotext/lang/fr/template.baubin0 -> 45856 bytes-rw-r--r--extras/source/autotext/lang/ga-IE/acor_ga-IE.datbin0 -> 13750 bytes-rw-r--r--extras/source/autotext/lang/hu/acor_hu-HU.datbin0 -> 96683 bytes-rw-r--r--extras/source/autotext/lang/hu/crdbus50.baubin0 -> 29629 bytes-rw-r--r--extras/source/autotext/lang/hu/crdbus54.baubin0 -> 29564 bytes-rw-r--r--extras/source/autotext/lang/hu/mytexts.baubin0 -> 577 bytes-rw-r--r--extras/source/autotext/lang/hu/standard.baubin0 -> 44813 bytes-rw-r--r--extras/source/autotext/lang/hu/template.baubin0 -> 53009 bytes-rw-r--r--extras/source/autotext/lang/it/acor_it-IT.datbin0 -> 13337 bytes-rw-r--r--extras/source/autotext/lang/it/crdbus50.baubin0 -> 29144 bytes-rw-r--r--extras/source/autotext/lang/it/standard.baubin0 -> 44669 bytes-rw-r--r--extras/source/autotext/lang/it/template.baubin0 -> 45994 bytes-rw-r--r--extras/source/autotext/lang/ja/acor_ja-JP.datbin0 -> 77736 bytes-rw-r--r--extras/source/autotext/lang/ja/crdbus50.baubin0 -> 15065 bytes-rw-r--r--extras/source/autotext/lang/ja/standard.baubin0 -> 36137 bytes-rw-r--r--extras/source/autotext/lang/ja/template.baubin0 -> 46244 bytes-rw-r--r--extras/source/autotext/lang/km/crdbus50.baubin0 -> 29311 bytes-rw-r--r--extras/source/autotext/lang/km/standard.baubin0 -> 57462 bytes-rw-r--r--extras/source/autotext/lang/km/template.baubin0 -> 45671 bytes-rw-r--r--extras/source/autotext/lang/ko/acor_ko-KR.datbin0 -> 77736 bytes-rw-r--r--extras/source/autotext/lang/ko/crdbus50.baubin0 -> 15587 bytes-rw-r--r--extras/source/autotext/lang/ko/standard.baubin0 -> 40482 bytes-rw-r--r--extras/source/autotext/lang/ko/template.baubin0 -> 46406 bytes-rw-r--r--extras/source/autotext/lang/lb-LU/acor_lb-LU.datbin0 -> 45098 bytes-rw-r--r--extras/source/autotext/lang/makefile.mk50
-rw-r--r--extras/source/autotext/lang/mn/acor_mn-MN.datbin0 -> 4249 bytes-rw-r--r--extras/source/autotext/lang/mn/crdbus50.baubin0 -> 31760 bytes-rw-r--r--extras/source/autotext/lang/mn/standard.baubin0 -> 64482 bytes-rw-r--r--extras/source/autotext/lang/mn/template.baubin0 -> 50850 bytes-rw-r--r--extras/source/autotext/lang/nl/acor_nl-NL.datbin0 -> 18708 bytes-rw-r--r--extras/source/autotext/lang/nl/crdbus50.baubin0 -> 34228 bytes-rw-r--r--extras/source/autotext/lang/nl/standard.baubin0 -> 40557 bytes-rw-r--r--extras/source/autotext/lang/nl/template.baubin0 -> 39676 bytes-rw-r--r--extras/source/autotext/lang/pl/acor_pl-PL.datbin0 -> 7913 bytes-rw-r--r--extras/source/autotext/lang/pl/crdbus50.baubin0 -> 16633 bytes-rw-r--r--extras/source/autotext/lang/pl/standard.baubin0 -> 33032 bytes-rw-r--r--extras/source/autotext/lang/pl/template.baubin0 -> 7581 bytes-rw-r--r--extras/source/autotext/lang/pt-BR/acor_pt-BR.datbin0 -> 40513 bytes-rw-r--r--extras/source/autotext/lang/pt-BR/crdbus50.baubin0 -> 14627 bytes-rw-r--r--extras/source/autotext/lang/pt-BR/standard.baubin0 -> 36413 bytes-rw-r--r--extras/source/autotext/lang/pt-BR/template.baubin0 -> 46270 bytes-rw-r--r--extras/source/autotext/lang/pt/acor_pt-PT.datbin0 -> 15141 bytes-rw-r--r--extras/source/autotext/lang/pt/crdbus50.baubin0 -> 36662 bytes-rw-r--r--extras/source/autotext/lang/pt/standard.baubin0 -> 61444 bytes-rw-r--r--extras/source/autotext/lang/pt/template.baubin0 -> 7042 bytes-rw-r--r--extras/source/autotext/lang/ru/acor_ru-RU.datbin0 -> 25673 bytes-rw-r--r--extras/source/autotext/lang/ru/crdbus50.baubin0 -> 29311 bytes-rw-r--r--extras/source/autotext/lang/ru/standard.baubin0 -> 57462 bytes-rw-r--r--extras/source/autotext/lang/ru/template.baubin0 -> 45671 bytes-rw-r--r--extras/source/autotext/lang/sh-ME/acor_sh-ME.datbin0 -> 1631 bytes-rw-r--r--extras/source/autotext/lang/sh-RS/acor_sh-RS.datbin0 -> 1631 bytes-rw-r--r--extras/source/autotext/lang/sh-YU/acor_sh-YU.datbin0 -> 1631 bytes-rw-r--r--extras/source/autotext/lang/sk/acor_sk-SK.datbin0 -> 5641 bytes-rw-r--r--extras/source/autotext/lang/sk/crdbus50.baubin0 -> 30465 bytes-rw-r--r--extras/source/autotext/lang/sk/crdbus54.baubin0 -> 30842 bytes-rw-r--r--extras/source/autotext/lang/sk/standard.baubin0 -> 92337 bytes-rw-r--r--extras/source/autotext/lang/sk/template.baubin0 -> 60907 bytes-rw-r--r--extras/source/autotext/lang/sl/acor_sl-SI.datbin0 -> 46882 bytes-rw-r--r--extras/source/autotext/lang/sl/crdbus50.baubin0 -> 30684 bytes-rw-r--r--extras/source/autotext/lang/sl/crdbus54.baubin0 -> 30620 bytes-rw-r--r--extras/source/autotext/lang/sl/mytexts.baubin0 -> 570 bytes-rw-r--r--extras/source/autotext/lang/sl/standard.baubin0 -> 59934 bytes-rw-r--r--extras/source/autotext/lang/sl/template.baubin0 -> 61243 bytes-rw-r--r--extras/source/autotext/lang/sr-ME/acor_sr-ME.datbin0 -> 1683 bytes-rw-r--r--extras/source/autotext/lang/sr-RS/acor_sr-RS.datbin0 -> 1683 bytes-rw-r--r--extras/source/autotext/lang/sr-YU/acor_sr-YU.datbin0 -> 1683 bytes-rw-r--r--extras/source/autotext/lang/sv/acor_sv-SE.datbin0 -> 15453 bytes-rw-r--r--extras/source/autotext/lang/sv/crdbus50.baubin0 -> 29241 bytes-rw-r--r--extras/source/autotext/lang/sv/standard.baubin0 -> 38778 bytes-rw-r--r--extras/source/autotext/lang/sv/template.baubin0 -> 45349 bytes-rw-r--r--extras/source/autotext/lang/tr/acor_tr-TR.datbin0 -> 16444 bytes-rw-r--r--extras/source/autotext/lang/tr/crdbus50.baubin0 -> 143872 bytes-rw-r--r--extras/source/autotext/lang/tr/template.baubin0 -> 28672 bytes-rw-r--r--extras/source/autotext/lang/vi/acor_vi-VN.datbin0 -> 77337 bytes-rw-r--r--extras/source/autotext/lang/zh-CN/acor_zh-CN.datbin0 -> 14211 bytes-rw-r--r--extras/source/autotext/lang/zh-CN/crdbus50.baubin0 -> 15356 bytes-rw-r--r--extras/source/autotext/lang/zh-CN/standard.baubin0 -> 38238 bytes-rw-r--r--extras/source/autotext/lang/zh-CN/template.baubin0 -> 46139 bytes-rw-r--r--extras/source/autotext/lang/zh-TW/acor_zh-TW.datbin0 -> 14211 bytes-rw-r--r--extras/source/autotext/lang/zh-TW/crdbus50.baubin0 -> 15481 bytes-rw-r--r--extras/source/autotext/lang/zh-TW/standard.baubin0 -> 35426 bytes-rw-r--r--extras/source/autotext/lang/zh-TW/template.baubin0 -> 47136 bytes-rw-r--r--extras/source/autotext/makefile.mk53
-rw-r--r--extras/source/autotext/mytexts.baubin0 -> 567 bytes-rw-r--r--extras/source/database/biblio.dbfbin0 -> 343909 bytes-rw-r--r--extras/source/database/biblio.dbtbin0 -> 564226 bytes-rw-r--r--extras/source/database/biblio.odbbin0 -> 1661 bytes-rw-r--r--extras/source/database/delzip1
-rw-r--r--extras/source/database/makefile.mk53
-rw-r--r--extras/source/gallery/apples.gifbin0 -> 6197 bytes-rw-r--r--extras/source/gallery/bigapple.gifbin0 -> 35287 bytes-rw-r--r--extras/source/gallery/bullets/blkpearl.gifbin0 -> 929 bytes-rw-r--r--extras/source/gallery/bullets/bluarrow.gifbin0 -> 93 bytes-rw-r--r--extras/source/gallery/bullets/bluball.gifbin0 -> 103 bytes-rw-r--r--extras/source/gallery/bullets/bludiamd.gifbin0 -> 111 bytes-rw-r--r--extras/source/gallery/bullets/bluered.gifbin0 -> 507 bytes-rw-r--r--extras/source/gallery/bullets/blusqare.gifbin0 -> 96 bytes-rw-r--r--extras/source/gallery/bullets/blustar.gifbin0 -> 146 bytes-rw-r--r--extras/source/gallery/bullets/coffee_1.gifbin0 -> 644 bytes-rw-r--r--extras/source/gallery/bullets/coffee_2.gifbin0 -> 656 bytes-rw-r--r--extras/source/gallery/bullets/coffee_3.gifbin0 -> 625 bytes-rw-r--r--extras/source/gallery/bullets/coffee_4.gifbin0 -> 605 bytes-rw-r--r--extras/source/gallery/bullets/coffee_5.gifbin0 -> 671 bytes-rw-r--r--extras/source/gallery/bullets/con-blue.gifbin0 -> 594 bytes-rw-r--r--extras/source/gallery/bullets/con-cyan.gifbin0 -> 614 bytes-rw-r--r--extras/source/gallery/bullets/con-green.gifbin0 -> 393 bytes-rw-r--r--extras/source/gallery/bullets/con-lilac.gifbin0 -> 600 bytes-rw-r--r--extras/source/gallery/bullets/con-oran.gifbin0 -> 594 bytes-rw-r--r--extras/source/gallery/bullets/con-pink.gifbin0 -> 394 bytes-rw-r--r--extras/source/gallery/bullets/con-red.gifbin0 -> 388 bytes-rw-r--r--extras/source/gallery/bullets/con-yellow.gifbin0 -> 375 bytes-rw-r--r--extras/source/gallery/bullets/corner_1.gifbin0 -> 399 bytes-rw-r--r--extras/source/gallery/bullets/corner_2.gifbin0 -> 399 bytes-rw-r--r--extras/source/gallery/bullets/corner_3.gifbin0 -> 402 bytes-rw-r--r--extras/source/gallery/bullets/corner_4.gifbin0 -> 408 bytes-rw-r--r--extras/source/gallery/bullets/darkball.gifbin0 -> 924 bytes-rw-r--r--extras/source/gallery/bullets/darkblue.gifbin0 -> 527 bytes-rw-r--r--extras/source/gallery/bullets/delzip1
-rw-r--r--extras/source/gallery/bullets/gldpearl.gifbin0 -> 929 bytes-rw-r--r--extras/source/gallery/bullets/golfball.gifbin0 -> 960 bytes-rw-r--r--extras/source/gallery/bullets/grnarrow.gifbin0 -> 94 bytes-rw-r--r--extras/source/gallery/bullets/grnball.gifbin0 -> 101 bytes-rw-r--r--extras/source/gallery/bullets/grndiamd.gifbin0 -> 111 bytes-rw-r--r--extras/source/gallery/bullets/grnpearl.gifbin0 -> 935 bytes-rw-r--r--extras/source/gallery/bullets/grnsqare.gifbin0 -> 97 bytes-rw-r--r--extras/source/gallery/bullets/grnstar.gifbin0 -> 144 bytes-rw-r--r--extras/source/gallery/bullets/gryarrow.gifbin0 -> 94 bytes-rw-r--r--extras/source/gallery/bullets/gryball.gifbin0 -> 103 bytes-rw-r--r--extras/source/gallery/bullets/grydiamd.gifbin0 -> 113 bytes-rw-r--r--extras/source/gallery/bullets/grysqare.gifbin0 -> 98 bytes-rw-r--r--extras/source/gallery/bullets/grystar.gifbin0 -> 144 bytes-rw-r--r--extras/source/gallery/bullets/makefile.mk49
-rw-r--r--extras/source/gallery/bullets/orgarrow.gifbin0 -> 96 bytes-rw-r--r--extras/source/gallery/bullets/orgball.gifbin0 -> 104 bytes-rw-r--r--extras/source/gallery/bullets/orgdiamd.gifbin0 -> 149 bytes-rw-r--r--extras/source/gallery/bullets/orgsqare.gifbin0 -> 99 bytes-rw-r--r--extras/source/gallery/bullets/orgstar.gifbin0 -> 143 bytes-rw-r--r--extras/source/gallery/bullets/pebble_1.gifbin0 -> 434 bytes-rw-r--r--extras/source/gallery/bullets/pebble_2.gifbin0 -> 460 bytes-rw-r--r--extras/source/gallery/bullets/pebble_3.gifbin0 -> 463 bytes-rw-r--r--extras/source/gallery/bullets/poliball.gifbin0 -> 945 bytes-rw-r--r--extras/source/gallery/bullets/popcorn_1.gifbin0 -> 1005 bytes-rw-r--r--extras/source/gallery/bullets/popcorn_2.gifbin0 -> 1249 bytes-rw-r--r--extras/source/gallery/bullets/rainbow.gifbin0 -> 527 bytes-rw-r--r--extras/source/gallery/bullets/redarrow.gifbin0 -> 97 bytes-rw-r--r--extras/source/gallery/bullets/redball.gifbin0 -> 103 bytes-rw-r--r--extras/source/gallery/bullets/reddiamd.gifbin0 -> 111 bytes-rw-r--r--extras/source/gallery/bullets/redsqare.gifbin0 -> 97 bytes-rw-r--r--extras/source/gallery/bullets/redstar.gifbin0 -> 145 bytes-rw-r--r--extras/source/gallery/bullets/whtpearl.gifbin0 -> 931 bytes-rw-r--r--extras/source/gallery/bullets/ylwarrow.gifbin0 -> 126 bytes-rw-r--r--extras/source/gallery/bullets/ylwball.gifbin0 -> 133 bytes-rw-r--r--extras/source/gallery/bullets/ylwdiamd.gifbin0 -> 145 bytes-rw-r--r--extras/source/gallery/bullets/ylwsqare.gifbin0 -> 96 bytes-rw-r--r--extras/source/gallery/bullets/ylwstar.gifbin0 -> 145 bytes-rw-r--r--extras/source/gallery/delzip0
-rw-r--r--extras/source/gallery/flower.gifbin0 -> 6073 bytes-rw-r--r--extras/source/gallery/flowers.gifbin0 -> 9333 bytes-rw-r--r--extras/source/gallery/gallery_sound/delzip1
-rw-r--r--extras/source/gallery/gallery_sound/makefile.mk49
-rw-r--r--extras/source/gallery/gallery_sound/sg100.sdvbin0 -> 2048 bytes-rw-r--r--extras/source/gallery/gallery_sound/sg100.thmbin0 -> 538 bytes-rw-r--r--extras/source/gallery/gallery_sound/sg30.sdvbin0 -> 2048 bytes-rw-r--r--extras/source/gallery/gallery_sound/sg30.thmbin0 -> 565 bytes-rw-r--r--extras/source/gallery/gallery_system/delzip1
-rw-r--r--extras/source/gallery/gallery_system/makefile.mk49
-rw-r--r--extras/source/gallery/gallery_system/sg1.sdgbin0 -> 29872 bytes-rw-r--r--extras/source/gallery/gallery_system/sg1.sdvbin0 -> 2048 bytes-rw-r--r--extras/source/gallery/gallery_system/sg1.thmbin0 -> 2432 bytes-rw-r--r--extras/source/gallery/gallery_system/sg2.sdgbin0 -> 25785 bytes-rw-r--r--extras/source/gallery/gallery_system/sg2.sdvbin0 -> 2048 bytes-rw-r--r--extras/source/gallery/gallery_system/sg2.thmbin0 -> 1266 bytes-rw-r--r--extras/source/gallery/gallery_system/sg24.sdgbin0 -> 49161 bytes-rw-r--r--extras/source/gallery/gallery_system/sg24.sdvbin0 -> 359424 bytes-rw-r--r--extras/source/gallery/gallery_system/sg24.thmbin0 -> 1236 bytes-rw-r--r--extras/source/gallery/gallery_system/sg25.sdgbin0 -> 55650 bytes-rw-r--r--extras/source/gallery/gallery_system/sg25.sdvbin0 -> 2048 bytes-rw-r--r--extras/source/gallery/gallery_system/sg25.thmbin0 -> 2016 bytes-rw-r--r--extras/source/gallery/gallery_system/sg3.sdgbin0 -> 270058 bytes-rw-r--r--extras/source/gallery/gallery_system/sg3.sdvbin0 -> 2048 bytes-rw-r--r--extras/source/gallery/gallery_system/sg3.thmbin0 -> 2503 bytes-rw-r--r--extras/source/gallery/gallery_system/sg36.sdgbin0 -> 65354 bytes-rw-r--r--extras/source/gallery/gallery_system/sg36.sdvbin0 -> 589312 bytes-rw-r--r--extras/source/gallery/gallery_system/sg36.thmbin0 -> 1163 bytes-rw-r--r--extras/source/gallery/gallery_system/sg4.sdgbin0 -> 60533 bytes-rw-r--r--extras/source/gallery/gallery_system/sg4.sdvbin0 -> 2048 bytes-rw-r--r--extras/source/gallery/gallery_system/sg4.thmbin0 -> 3323 bytes-rw-r--r--extras/source/gallery/gallery_system/sg9.sdgbin0 -> 5331 bytes-rw-r--r--extras/source/gallery/gallery_system/sg9.sdvbin0 -> 2048 bytes-rw-r--r--extras/source/gallery/gallery_system/sg9.thmbin0 -> 1458 bytes-rw-r--r--extras/source/gallery/htmlexpo/bludown.gifbin0 -> 873 bytes-rw-r--r--extras/source/gallery/htmlexpo/blufirs.gifbin0 -> 906 bytes-rw-r--r--extras/source/gallery/htmlexpo/blufirs_.gifbin0 -> 884 bytes-rw-r--r--extras/source/gallery/htmlexpo/blulast.gifbin0 -> 909 bytes-rw-r--r--extras/source/gallery/htmlexpo/blulast_.gifbin0 -> 898 bytes-rw-r--r--extras/source/gallery/htmlexpo/blunav.gifbin0 -> 1441 bytes-rw-r--r--extras/source/gallery/htmlexpo/blunext.gifbin0 -> 886 bytes-rw-r--r--extras/source/gallery/htmlexpo/blunext_.gifbin0 -> 841 bytes-rw-r--r--extras/source/gallery/htmlexpo/bluprev.gifbin0 -> 893 bytes-rw-r--r--extras/source/gallery/htmlexpo/bluprev_.gifbin0 -> 841 bytes-rw-r--r--extras/source/gallery/htmlexpo/blutext.gifbin0 -> 1390 bytes-rw-r--r--extras/source/gallery/htmlexpo/bluup.gifbin0 -> 874 bytes-rw-r--r--extras/source/gallery/htmlexpo/cubdown.gifbin0 -> 1628 bytes-rw-r--r--extras/source/gallery/htmlexpo/cubfirs.gifbin0 -> 1704 bytes-rw-r--r--extras/source/gallery/htmlexpo/cubfirs_.gifbin0 -> 1320 bytes-rw-r--r--extras/source/gallery/htmlexpo/cublast.gifbin0 -> 1712 bytes-rw-r--r--extras/source/gallery/htmlexpo/cublast_.gifbin0 -> 1282 bytes-rw-r--r--extras/source/gallery/htmlexpo/cubnav.gifbin0 -> 1719 bytes-rw-r--r--extras/source/gallery/htmlexpo/cubnext.gifbin0 -> 1651 bytes-rw-r--r--extras/source/gallery/htmlexpo/cubnext_.gifbin0 -> 1244 bytes-rw-r--r--extras/source/gallery/htmlexpo/cubprev.gifbin0 -> 1648 bytes-rw-r--r--extras/source/gallery/htmlexpo/cubprev_.gifbin0 -> 1239 bytes-rw-r--r--extras/source/gallery/htmlexpo/cubtext.gifbin0 -> 1687 bytes-rw-r--r--extras/source/gallery/htmlexpo/cubup.gifbin0 -> 1646 bytes-rw-r--r--extras/source/gallery/htmlexpo/delzip1
-rw-r--r--extras/source/gallery/htmlexpo/gredown.gifbin0 -> 1360 bytes-rw-r--r--extras/source/gallery/htmlexpo/grefirs.gifbin0 -> 1517 bytes-rw-r--r--extras/source/gallery/htmlexpo/grefirs_.gifbin0 -> 1442 bytes-rw-r--r--extras/source/gallery/htmlexpo/grelast.gifbin0 -> 1457 bytes-rw-r--r--extras/source/gallery/htmlexpo/grelast_.gifbin0 -> 1290 bytes-rw-r--r--extras/source/gallery/htmlexpo/grenav.gifbin0 -> 1582 bytes-rw-r--r--extras/source/gallery/htmlexpo/grenext.gifbin0 -> 1372 bytes-rw-r--r--extras/source/gallery/htmlexpo/grenext_.gifbin0 -> 1184 bytes-rw-r--r--extras/source/gallery/htmlexpo/greprev.gifbin0 -> 1370 bytes-rw-r--r--extras/source/gallery/htmlexpo/greprev_.gifbin0 -> 1180 bytes-rw-r--r--extras/source/gallery/htmlexpo/gretext.gifbin0 -> 1433 bytes-rw-r--r--extras/source/gallery/htmlexpo/greup.gifbin0 -> 1365 bytes-rw-r--r--extras/source/gallery/htmlexpo/makefile.mk49
-rw-r--r--extras/source/gallery/htmlexpo/simdown.gifbin0 -> 439 bytes-rw-r--r--extras/source/gallery/htmlexpo/simfirs.gifbin0 -> 477 bytes-rw-r--r--extras/source/gallery/htmlexpo/simfirs_.gifbin0 -> 477 bytes-rw-r--r--extras/source/gallery/htmlexpo/simlast.gifbin0 -> 483 bytes-rw-r--r--extras/source/gallery/htmlexpo/simlast_.gifbin0 -> 624 bytes-rw-r--r--extras/source/gallery/htmlexpo/simnav.gifbin0 -> 483 bytes-rw-r--r--extras/source/gallery/htmlexpo/simnext.gifbin0 -> 448 bytes-rw-r--r--extras/source/gallery/htmlexpo/simnext_.gifbin0 -> 445 bytes-rw-r--r--extras/source/gallery/htmlexpo/simprev.gifbin0 -> 444 bytes-rw-r--r--extras/source/gallery/htmlexpo/simprev_.gifbin0 -> 446 bytes-rw-r--r--extras/source/gallery/htmlexpo/simtext.gifbin0 -> 646 bytes-rw-r--r--extras/source/gallery/htmlexpo/simup.gifbin0 -> 439 bytes-rw-r--r--extras/source/gallery/makefile.mk49
-rw-r--r--extras/source/gallery/rulers/blkballs.gifbin0 -> 2272 bytes-rw-r--r--extras/source/gallery/rulers/blurulr1.gifbin0 -> 6583 bytes-rw-r--r--extras/source/gallery/rulers/blurulr2.gifbin0 -> 2965 bytes-rw-r--r--extras/source/gallery/rulers/blurulr3.gifbin0 -> 2011 bytes-rw-r--r--extras/source/gallery/rulers/blurulr4.gifbin0 -> 2561 bytes-rw-r--r--extras/source/gallery/rulers/blurulr5.gifbin0 -> 5708 bytes-rw-r--r--extras/source/gallery/rulers/blurulr6.gifbin0 -> 1878 bytes-rw-r--r--extras/source/gallery/rulers/delzip1
-rw-r--r--extras/source/gallery/rulers/gldballs.gifbin0 -> 2240 bytes-rw-r--r--extras/source/gallery/rulers/grnballs.gifbin0 -> 3702 bytes-rw-r--r--extras/source/gallery/rulers/grnrulr1.gifbin0 -> 2409 bytes-rw-r--r--extras/source/gallery/rulers/grnrulr2.gifbin0 -> 2759 bytes-rw-r--r--extras/source/gallery/rulers/grnrulr3.gifbin0 -> 2599 bytes-rw-r--r--extras/source/gallery/rulers/grnrulr4.gifbin0 -> 3172 bytes-rw-r--r--extras/source/gallery/rulers/gryrulr1.gifbin0 -> 2144 bytes-rw-r--r--extras/source/gallery/rulers/gryrulr2.gifbin0 -> 3014 bytes-rw-r--r--extras/source/gallery/rulers/gryrulr3.gifbin0 -> 1479 bytes-rw-r--r--extras/source/gallery/rulers/makefile.mk49
-rw-r--r--extras/source/gallery/rulers/orgrulr1.gifbin0 -> 2667 bytes-rw-r--r--extras/source/gallery/rulers/redrulr1.gifbin0 -> 2138 bytes-rw-r--r--extras/source/gallery/rulers/redrulr2.gifbin0 -> 2037 bytes-rw-r--r--extras/source/gallery/rulers/redrulr3.gifbin0 -> 2192 bytes-rw-r--r--extras/source/gallery/rulers/redrulr4.gifbin0 -> 2089 bytes-rw-r--r--extras/source/gallery/rulers/redrulr5.gifbin0 -> 1343 bytes-rw-r--r--extras/source/gallery/rulers/striped.gifbin0 -> 1553 bytes-rw-r--r--extras/source/gallery/rulers/whtballs.gifbin0 -> 3616 bytes-rw-r--r--extras/source/gallery/rulers/ylwrulr1.gifbin0 -> 2667 bytes-rw-r--r--extras/source/gallery/sky.gifbin0 -> 7517 bytes-rw-r--r--extras/source/gallery/sounds/apert.wavbin0 -> 47760 bytes-rw-r--r--extras/source/gallery/sounds/apert2.wavbin0 -> 60904 bytes-rw-r--r--extras/source/gallery/sounds/applause.wavbin0 -> 90472 bytes-rw-r--r--extras/source/gallery/sounds/beam.wavbin0 -> 43728 bytes-rw-r--r--extras/source/gallery/sounds/beam2.wavbin0 -> 73456 bytes-rw-r--r--extras/source/gallery/sounds/cow.wavbin0 -> 37546 bytes-rw-r--r--extras/source/gallery/sounds/curve.wavbin0 -> 134660 bytes-rw-r--r--extras/source/gallery/sounds/delzip1
-rw-r--r--extras/source/gallery/sounds/drama.wavbin0 -> 162366 bytes-rw-r--r--extras/source/gallery/sounds/explos.wavbin0 -> 47532 bytes-rw-r--r--extras/source/gallery/sounds/falling.wavbin0 -> 87008 bytes-rw-r--r--extras/source/gallery/sounds/glasses.wavbin0 -> 36270 bytes-rw-r--r--extras/source/gallery/sounds/gong.wavbin0 -> 191292 bytes-rw-r--r--extras/source/gallery/sounds/horse.wavbin0 -> 41958 bytes-rw-r--r--extras/source/gallery/sounds/kling.wavbin0 -> 46376 bytes-rw-r--r--extras/source/gallery/sounds/kongas.wavbin0 -> 54866 bytes-rw-r--r--extras/source/gallery/sounds/laser.wavbin0 -> 8408 bytes-rw-r--r--extras/source/gallery/sounds/left.wavbin0 -> 29788 bytes-rw-r--r--extras/source/gallery/sounds/makefile.mk49
-rw-r--r--extras/source/gallery/sounds/nature1.wavbin0 -> 83102 bytes-rw-r--r--extras/source/gallery/sounds/nature2.wavbin0 -> 37164 bytes-rw-r--r--extras/source/gallery/sounds/ok.wavbin0 -> 8862 bytes-rw-r--r--extras/source/gallery/sounds/pluck.wavbin0 -> 28510 bytes-rw-r--r--extras/source/gallery/sounds/roll.wavbin0 -> 242648 bytes-rw-r--r--extras/source/gallery/sounds/romans.wavbin0 -> 90466 bytes-rw-r--r--extras/source/gallery/sounds/soft.wavbin0 -> 185752 bytes-rw-r--r--extras/source/gallery/sounds/space.wavbin0 -> 133758 bytes-rw-r--r--extras/source/gallery/sounds/space2.wavbin0 -> 192686 bytes-rw-r--r--extras/source/gallery/sounds/space3.wavbin0 -> 144748 bytes-rw-r--r--extras/source/gallery/sounds/sparcle.wavbin0 -> 65580 bytes-rw-r--r--extras/source/gallery/sounds/strom.wavbin0 -> 85106 bytes-rw-r--r--extras/source/gallery/sounds/theetone.wavbin0 -> 49506 bytes-rw-r--r--extras/source/gallery/sounds/top.wavbin0 -> 69242 bytes-rw-r--r--extras/source/gallery/sounds/train.wavbin0 -> 56716 bytes-rw-r--r--extras/source/gallery/sounds/untie.wavbin0 -> 190884 bytes-rw-r--r--extras/source/gallery/sounds/ups.wavbin0 -> 28682 bytes-rw-r--r--extras/source/gallery/sounds/wallewal.wavbin0 -> 104018 bytes-rw-r--r--extras/source/gallery/www-back/aqua.jpgbin0 -> 5511 bytes-rw-r--r--extras/source/gallery/www-back/bathroom.jpgbin0 -> 4473 bytes-rw-r--r--extras/source/gallery/www-back/blocks.jpgbin0 -> 5664 bytes-rw-r--r--extras/source/gallery/www-back/blow_green.jpgbin0 -> 3159 bytes-rw-r--r--extras/source/gallery/www-back/blueblop.jpgbin0 -> 4469 bytes-rw-r--r--extras/source/gallery/www-back/bulging.jpgbin0 -> 4523 bytes-rw-r--r--extras/source/gallery/www-back/canvas_blue.jpgbin0 -> 5961 bytes-rw-r--r--extras/source/gallery/www-back/cheese.jpgbin0 -> 3029 bytes-rw-r--r--extras/source/gallery/www-back/chocolate.jpgbin0 -> 4316 bytes-rw-r--r--extras/source/gallery/www-back/citrus.jpgbin0 -> 7669 bytes-rw-r--r--extras/source/gallery/www-back/confetti.jpgbin0 -> 11733 bytes-rw-r--r--extras/source/gallery/www-back/daisy.jpgbin0 -> 8197 bytes-rw-r--r--extras/source/gallery/www-back/delzip1
-rw-r--r--extras/source/gallery/www-back/fluffy-grey.jpgbin0 -> 4314 bytes-rw-r--r--extras/source/gallery/www-back/fluffy.jpgbin0 -> 6890 bytes-rw-r--r--extras/source/gallery/www-back/fuzzy-blue.jpgbin0 -> 11472 bytes-rw-r--r--extras/source/gallery/www-back/fuzzy-darkgrey.jpgbin0 -> 7293 bytes-rw-r--r--extras/source/gallery/www-back/fuzzy-grey.jpgbin0 -> 6340 bytes-rw-r--r--extras/source/gallery/www-back/fuzzy-lightgrey.jpgbin0 -> 4321 bytes-rw-r--r--extras/source/gallery/www-back/fuzzy_light.jpgbin0 -> 4880 bytes-rw-r--r--extras/source/gallery/www-back/gregre.gifbin0 -> 2326 bytes-rw-r--r--extras/source/gallery/www-back/grey.gifbin0 -> 8529 bytes-rw-r--r--extras/source/gallery/www-back/grypaws.gifbin0 -> 3537 bytes-rw-r--r--extras/source/gallery/www-back/ice-blue.jpgbin0 -> 4675 bytes-rw-r--r--extras/source/gallery/www-back/ice-light.jpgbin0 -> 3182 bytes-rw-r--r--extras/source/gallery/www-back/imitation_leather.jpgbin0 -> 4207 bytes-rw-r--r--extras/source/gallery/www-back/interstices.jpgbin0 -> 3964 bytes-rw-r--r--extras/source/gallery/www-back/jeans.jpgbin0 -> 7002 bytes-rw-r--r--extras/source/gallery/www-back/jeansblk.jpgbin0 -> 5436 bytes-rw-r--r--extras/source/gallery/www-back/lawn-artificial.jpgbin0 -> 13522 bytes-rw-r--r--extras/source/gallery/www-back/lawn.jpgbin0 -> 11635 bytes-rw-r--r--extras/source/gallery/www-back/lightblue-wet.jpgbin0 -> 5235 bytes-rw-r--r--extras/source/gallery/www-back/linen-fine.jpgbin0 -> 5580 bytes-rw-r--r--extras/source/gallery/www-back/lino-green.jpgbin0 -> 6275 bytes-rw-r--r--extras/source/gallery/www-back/liquid-blue.jpgbin0 -> 3497 bytes-rw-r--r--extras/source/gallery/www-back/makefile.mk49
-rw-r--r--extras/source/gallery/www-back/marble.jpgbin0 -> 4161 bytes-rw-r--r--extras/source/gallery/www-back/marble_dark.jpgbin0 -> 6805 bytes-rw-r--r--extras/source/gallery/www-back/mazes.jpgbin0 -> 9817 bytes-rw-r--r--extras/source/gallery/www-back/mint.gifbin0 -> 4469 bytes-rw-r--r--extras/source/gallery/www-back/notes.gifbin0 -> 1429 bytes-rw-r--r--extras/source/gallery/www-back/pattern.jpgbin0 -> 13299 bytes-rw-r--r--extras/source/gallery/www-back/pebble-light.jpgbin0 -> 5816 bytes-rw-r--r--extras/source/gallery/www-back/pink.gifbin0 -> 4687 bytes-rw-r--r--extras/source/gallery/www-back/pool.jpgbin0 -> 6005 bytes-rw-r--r--extras/source/gallery/www-back/popcorn.jpgbin0 -> 12694 bytes-rw-r--r--extras/source/gallery/www-back/purple.jpgbin0 -> 4257 bytes-rw-r--r--extras/source/gallery/www-back/reddark.jpgbin0 -> 4968 bytes-rw-r--r--extras/source/gallery/www-back/rings-green.jpgbin0 -> 5094 bytes-rw-r--r--extras/source/gallery/www-back/rings-orange.jpgbin0 -> 6445 bytes-rw-r--r--extras/source/gallery/www-back/roses.jpgbin0 -> 8323 bytes-rw-r--r--extras/source/gallery/www-back/sand-light.jpgbin0 -> 4049 bytes-rw-r--r--extras/source/gallery/www-back/sand.jpgbin0 -> 5402 bytes-rw-r--r--extras/source/gallery/www-back/sky.jpgbin0 -> 1969 bytes-rw-r--r--extras/source/gallery/www-back/soft-structure_grey.jpgbin0 -> 4818 bytes-rw-r--r--extras/source/gallery/www-back/space.jpgbin0 -> 3011 bytes-rw-r--r--extras/source/gallery/www-back/stone-dark.jpgbin0 -> 6351 bytes-rw-r--r--extras/source/gallery/www-back/stone.jpgbin0 -> 7011 bytes-rw-r--r--extras/source/gallery/www-back/structure.jpgbin0 -> 3834 bytes-rw-r--r--extras/source/gallery/www-back/structure_darkgreen.gifbin0 -> 3782 bytes-rw-r--r--extras/source/gallery/www-back/structure_green.jpgbin0 -> 4035 bytes-rw-r--r--extras/source/gallery/www-back/wall-grey.jpgbin0 -> 5414 bytes-rw-r--r--extras/source/gallery/www-back/wet-turquoise.jpgbin0 -> 3119 bytes-rw-r--r--extras/source/gallery/www-back/wood.jpgbin0 -> 10382 bytes-rw-r--r--extras/source/gallery/www-graf/bluat.gifbin0 -> 1330 bytes-rw-r--r--extras/source/gallery/www-graf/bluback.gifbin0 -> 1016 bytes-rw-r--r--extras/source/gallery/www-graf/bludisk.gifbin0 -> 1016 bytes-rw-r--r--extras/source/gallery/www-graf/bludown.gifbin0 -> 1010 bytes-rw-r--r--extras/source/gallery/www-graf/bluhome.gifbin0 -> 1031 bytes-rw-r--r--extras/source/gallery/www-graf/bluinfo.gifbin0 -> 1000 bytes-rw-r--r--extras/source/gallery/www-graf/bluleft.gifbin0 -> 1017 bytes-rw-r--r--extras/source/gallery/www-graf/blumail.gifbin0 -> 1017 bytes-rw-r--r--extras/source/gallery/www-graf/bluminus.gifbin0 -> 989 bytes-rw-r--r--extras/source/gallery/www-graf/bluplus.gifbin0 -> 1009 bytes-rw-r--r--extras/source/gallery/www-graf/bluquest.gifbin0 -> 1041 bytes-rw-r--r--extras/source/gallery/www-graf/bluright.gifbin0 -> 1020 bytes-rw-r--r--extras/source/gallery/www-graf/bluup.gifbin0 -> 1011 bytes-rw-r--r--extras/source/gallery/www-graf/delzip1
-rw-r--r--extras/source/gallery/www-graf/gredisk.gifbin0 -> 1016 bytes-rw-r--r--extras/source/gallery/www-graf/gredown.gifbin0 -> 1010 bytes-rw-r--r--extras/source/gallery/www-graf/grehome.gifbin0 -> 1031 bytes-rw-r--r--extras/source/gallery/www-graf/greinfo.gifbin0 -> 1000 bytes-rw-r--r--extras/source/gallery/www-graf/greleft.gifbin0 -> 1017 bytes-rw-r--r--extras/source/gallery/www-graf/gremail.gifbin0 -> 1017 bytes-rw-r--r--extras/source/gallery/www-graf/greminus.gifbin0 -> 989 bytes-rw-r--r--extras/source/gallery/www-graf/greplus.gifbin0 -> 1009 bytes-rw-r--r--extras/source/gallery/www-graf/grequest.gifbin0 -> 1041 bytes-rw-r--r--extras/source/gallery/www-graf/greright.gifbin0 -> 1020 bytes-rw-r--r--extras/source/gallery/www-graf/greup.gifbin0 -> 1011 bytes-rw-r--r--extras/source/gallery/www-graf/grnat.gifbin0 -> 1264 bytes-rw-r--r--extras/source/gallery/www-graf/grnback.gifbin0 -> 1073 bytes-rw-r--r--extras/source/gallery/www-graf/grndisk.gifbin0 -> 1219 bytes-rw-r--r--extras/source/gallery/www-graf/grndown.gifbin0 -> 1231 bytes-rw-r--r--extras/source/gallery/www-graf/grnexcla.gifbin0 -> 1206 bytes-rw-r--r--extras/source/gallery/www-graf/grnhome.gifbin0 -> 872 bytes-rw-r--r--extras/source/gallery/www-graf/grninfo.gifbin0 -> 1200 bytes-rw-r--r--extras/source/gallery/www-graf/grnleft.gifbin0 -> 1227 bytes-rw-r--r--extras/source/gallery/www-graf/grnmail.gifbin0 -> 1222 bytes-rw-r--r--extras/source/gallery/www-graf/grnminus.gifbin0 -> 1187 bytes-rw-r--r--extras/source/gallery/www-graf/grnplus.gifbin0 -> 1204 bytes-rw-r--r--extras/source/gallery/www-graf/grnquest.gifbin0 -> 1226 bytes-rw-r--r--extras/source/gallery/www-graf/grnright.gifbin0 -> 1201 bytes-rw-r--r--extras/source/gallery/www-graf/grnup.gifbin0 -> 1220 bytes-rw-r--r--extras/source/gallery/www-graf/gryat.gifbin0 -> 1052 bytes-rw-r--r--extras/source/gallery/www-graf/gryback.gifbin0 -> 1032 bytes-rw-r--r--extras/source/gallery/www-graf/grydisk.gifbin0 -> 1044 bytes-rw-r--r--extras/source/gallery/www-graf/grydown.gifbin0 -> 1022 bytes-rw-r--r--extras/source/gallery/www-graf/gryhome.gifbin0 -> 1050 bytes-rw-r--r--extras/source/gallery/www-graf/gryinfo.gifbin0 -> 1017 bytes-rw-r--r--extras/source/gallery/www-graf/gryleft.gifbin0 -> 1030 bytes-rw-r--r--extras/source/gallery/www-graf/grymail.gifbin0 -> 1036 bytes-rw-r--r--extras/source/gallery/www-graf/gryminus.gifbin0 -> 1012 bytes-rw-r--r--extras/source/gallery/www-graf/gryplus.gifbin0 -> 1030 bytes-rw-r--r--extras/source/gallery/www-graf/gryquest.gifbin0 -> 1023 bytes-rw-r--r--extras/source/gallery/www-graf/gryright.gifbin0 -> 1033 bytes-rw-r--r--extras/source/gallery/www-graf/gryup.gifbin0 -> 1027 bytes-rw-r--r--extras/source/gallery/www-graf/makefile.mk23
-rw-r--r--extras/source/gallery/www-graf/men@work.gifbin0 -> 1287 bytes-rw-r--r--extras/source/gallery/www-graf/orgat.gifbin0 -> 606 bytes-rw-r--r--extras/source/gallery/www-graf/orgback.gifbin0 -> 1259 bytes-rw-r--r--extras/source/gallery/www-graf/orgdisk.gifbin0 -> 421 bytes-rw-r--r--extras/source/gallery/www-graf/orgdown.gifbin0 -> 560 bytes-rw-r--r--extras/source/gallery/www-graf/orghome.gifbin0 -> 808 bytes-rw-r--r--extras/source/gallery/www-graf/orginfo.gifbin0 -> 341 bytes-rw-r--r--extras/source/gallery/www-graf/orgleft.gifbin0 -> 285 bytes-rw-r--r--extras/source/gallery/www-graf/orgmail.gifbin0 -> 517 bytes-rw-r--r--extras/source/gallery/www-graf/orgminus.gifbin0 -> 272 bytes-rw-r--r--extras/source/gallery/www-graf/orgplus.gifbin0 -> 289 bytes-rw-r--r--extras/source/gallery/www-graf/orgquest.gifbin0 -> 281 bytes-rw-r--r--extras/source/gallery/www-graf/orgright.gifbin0 -> 293 bytes-rw-r--r--extras/source/gallery/www-graf/orgup.gifbin0 -> 1042 bytes-rw-r--r--extras/source/gallery/www-graf/redat.gifbin0 -> 1413 bytes-rw-r--r--extras/source/gallery/www-graf/redback.gifbin0 -> 1040 bytes-rw-r--r--extras/source/gallery/www-graf/reddisk.gifbin0 -> 1019 bytes-rw-r--r--extras/source/gallery/www-graf/reddown.gifbin0 -> 1015 bytes-rw-r--r--extras/source/gallery/www-graf/redhome.gifbin0 -> 1032 bytes-rw-r--r--extras/source/gallery/www-graf/redinfo.gifbin0 -> 1002 bytes-rw-r--r--extras/source/gallery/www-graf/redleft.gifbin0 -> 1018 bytes-rw-r--r--extras/source/gallery/www-graf/redmail.gifbin0 -> 1018 bytes-rw-r--r--extras/source/gallery/www-graf/redminus.gifbin0 -> 993 bytes-rw-r--r--extras/source/gallery/www-graf/redplus.gifbin0 -> 1015 bytes-rw-r--r--extras/source/gallery/www-graf/redquest.gifbin0 -> 1045 bytes-rw-r--r--extras/source/gallery/www-graf/redright.gifbin0 -> 1019 bytes-rw-r--r--extras/source/gallery/www-graf/redup.gifbin0 -> 1015 bytes-rw-r--r--extras/source/gallery/www-graf/turdown.gifbin0 -> 669 bytes-rw-r--r--extras/source/gallery/www-graf/turhome.gifbin0 -> 474 bytes-rw-r--r--extras/source/gallery/www-graf/turleft.gifbin0 -> 663 bytes-rw-r--r--extras/source/gallery/www-graf/turright.gifbin0 -> 667 bytes-rw-r--r--extras/source/gallery/www-graf/turup.gifbin0 -> 663 bytes-rw-r--r--extras/source/gallery/www-graf/viohome.gifbin0 -> 249 bytes-rw-r--r--extras/source/gallery/www-graf/violeft.gifbin0 -> 236 bytes-rw-r--r--extras/source/gallery/www-graf/vioright.gifbin0 -> 238 bytes-rw-r--r--extras/source/gallery/www-graf/vioup.gifbin0 -> 230 bytes-rw-r--r--extras/source/gallery/www-graf/ylwdown.gifbin0 -> 149 bytes-rw-r--r--extras/source/gallery/www-graf/ylwhome.gifbin0 -> 221 bytes-rw-r--r--extras/source/gallery/www-graf/ylwleft.gifbin0 -> 177 bytes-rw-r--r--extras/source/gallery/www-graf/ylwmail.gifbin0 -> 208 bytes-rw-r--r--extras/source/gallery/www-graf/ylwright.gifbin0 -> 177 bytes-rw-r--r--extras/source/gallery/www-graf/ylwup.gifbin0 -> 150 bytes-rw-r--r--extras/source/misc_config/autotbl.fmtbin0 -> 48408 bytes-rw-r--r--extras/source/misc_config/delzip0
-rw-r--r--extras/source/misc_config/makefile.mk49
-rwxr-xr-xextras/source/misc_config/wizard/form/styles/beige.css79
-rwxr-xr-xextras/source/misc_config/wizard/form/styles/bgr.css79
-rwxr-xr-xextras/source/misc_config/wizard/form/styles/dark.css79
-rwxr-xr-xextras/source/misc_config/wizard/form/styles/grey.css79
-rwxr-xr-xextras/source/misc_config/wizard/form/styles/ibg.css79
-rwxr-xr-xextras/source/misc_config/wizard/form/styles/ice.css79
-rwxr-xr-xextras/source/misc_config/wizard/form/styles/orange.css79
-rwxr-xr-xextras/source/misc_config/wizard/form/styles/red.css79
-rwxr-xr-xextras/source/misc_config/wizard/form/styles/violet.css79
-rwxr-xr-xextras/source/misc_config/wizard/form/styles/water.css79
-rw-r--r--extras/source/misc_config/wizard/web/images/calc.gifbin0 -> 1252 bytes-rw-r--r--extras/source/misc_config/wizard/web/images/draw.gifbin0 -> 1386 bytes-rw-r--r--extras/source/misc_config/wizard/web/images/fls.gifbin0 -> 1488 bytes-rw-r--r--extras/source/misc_config/wizard/web/images/graphics.gifbin0 -> 1533 bytes-rw-r--r--extras/source/misc_config/wizard/web/images/html.gifbin0 -> 1366 bytes-rw-r--r--extras/source/misc_config/wizard/web/images/impress.gifbin0 -> 1311 bytes-rw-r--r--extras/source/misc_config/wizard/web/images/media.gifbin0 -> 1407 bytes-rw-r--r--extras/source/misc_config/wizard/web/images/other.gifbin0 -> 1356 bytes-rw-r--r--extras/source/misc_config/wizard/web/images/pdf.gifbin0 -> 1485 bytes-rw-r--r--extras/source/misc_config/wizard/web/images/writer.gifbin0 -> 1376 bytes-rw-r--r--extras/source/misc_config/wizard/web/layouts/diagonal/index.html.xsl104
-rw-r--r--extras/source/misc_config/wizard/web/layouts/frame_bottom/index.html.xsl71
-rw-r--r--extras/source/misc_config/wizard/web/layouts/frame_bottom/mainframe.html7
-rw-r--r--extras/source/misc_config/wizard/web/layouts/frame_bottom/tocframe.html.xsl100
-rw-r--r--extras/source/misc_config/wizard/web/layouts/frame_left/index.html.xsl71
-rw-r--r--extras/source/misc_config/wizard/web/layouts/frame_left/mainframe.html7
-rw-r--r--extras/source/misc_config/wizard/web/layouts/frame_left/tocframe.html.xsl96
-rw-r--r--extras/source/misc_config/wizard/web/layouts/frame_right/index.html.xsl71
-rw-r--r--extras/source/misc_config/wizard/web/layouts/frame_right/mainframe.html7
-rw-r--r--extras/source/misc_config/wizard/web/layouts/frame_right/tocframe.html.xsl99
-rw-r--r--extras/source/misc_config/wizard/web/layouts/frame_top/index.html.xsl71
-rw-r--r--extras/source/misc_config/wizard/web/layouts/frame_top/mainframe.html7
-rw-r--r--extras/source/misc_config/wizard/web/layouts/frame_top/tocframe.html.xsl99
-rw-r--r--extras/source/misc_config/wizard/web/layouts/layout.xsl204
-rw-r--r--extras/source/misc_config/wizard/web/layouts/layoutF.xsl122
-rw-r--r--extras/source/misc_config/wizard/web/layouts/layoutX.xsl291
-rw-r--r--extras/source/misc_config/wizard/web/layouts/simple/index.html.xsl131
-rw-r--r--extras/source/misc_config/wizard/web/layouts/source.xml.xsl55
-rw-r--r--extras/source/misc_config/wizard/web/layouts/table_2/index.html.xsl185
-rw-r--r--extras/source/misc_config/wizard/web/layouts/table_3/index.html.xsl191
-rw-r--r--extras/source/misc_config/wizard/web/layouts/zigzag/index.html.xsl190
-rwxr-xr-xextras/source/misc_config/wizard/web/preview.html41
-rw-r--r--extras/source/misc_config/wizard/web/styles/beige.css79
-rw-r--r--extras/source/misc_config/wizard/web/styles/bg.css79
-rw-r--r--extras/source/misc_config/wizard/web/styles/bgr.css79
-rw-r--r--extras/source/misc_config/wizard/web/styles/bgrey.css79
-rw-r--r--extras/source/misc_config/wizard/web/styles/bwb.css79
-rw-r--r--extras/source/misc_config/wizard/web/styles/bwo.css79
-rw-r--r--extras/source/misc_config/wizard/web/styles/dark.css79
-rw-r--r--extras/source/misc_config/wizard/web/styles/dp.css79
-rw-r--r--extras/source/misc_config/wizard/web/styles/forest.css79
-rw-r--r--extras/source/misc_config/wizard/web/styles/green.css79
-rw-r--r--extras/source/misc_config/wizard/web/styles/greenred.css79
-rw-r--r--extras/source/misc_config/wizard/web/styles/grey.css79
-rw-r--r--extras/source/misc_config/wizard/web/styles/ibg.css79
-rw-r--r--extras/source/misc_config/wizard/web/styles/ice.css79
-rw-r--r--extras/source/misc_config/wizard/web/styles/marine.css79
-rw-r--r--extras/source/misc_config/wizard/web/styles/orange.css79
-rw-r--r--extras/source/misc_config/wizard/web/styles/pc_old.css91
-rw-r--r--extras/source/misc_config/wizard/web/styles/red.css79
-rw-r--r--extras/source/misc_config/wizard/web/styles/rgb.css91
-rw-r--r--extras/source/misc_config/wizard/web/styles/strange.css79
-rw-r--r--extras/source/misc_config/wizard/web/styles/violet.css79
-rw-r--r--extras/source/misc_config/wizard/web/styles/water.css79
-rw-r--r--extras/source/palettes/cmyk.soc220
-rw-r--r--extras/source/palettes/delzip3
-rw-r--r--extras/source/palettes/gallery.soc65
-rw-r--r--extras/source/palettes/html.soc135
-rw-r--r--extras/source/palettes/lang/bg/arrowhd_bg.soe28
-rw-r--r--extras/source/palettes/lang/bg/classic_bg.sog141
-rw-r--r--extras/source/palettes/lang/bg/hatching_bg.soh39
-rw-r--r--extras/source/palettes/lang/bg/modern_bg.sog31
-rw-r--r--extras/source/palettes/lang/bg/palette_bg.soc81
-rw-r--r--extras/source/palettes/lang/bg/styles_bg.sod10
-rw-r--r--extras/source/palettes/lang/cs/arrowhd_cs.soe28
-rw-r--r--extras/source/palettes/lang/cs/classic_cs.sog141
-rw-r--r--extras/source/palettes/lang/cs/hatching_cs.soh39
-rw-r--r--extras/source/palettes/lang/cs/modern_cs.sog31
-rw-r--r--extras/source/palettes/lang/cs/palette_cs.soc81
-rw-r--r--extras/source/palettes/lang/cs/styles_cs.sod2
-rw-r--r--extras/source/palettes/lang/da/arrowhd_da.soe26
-rw-r--r--extras/source/palettes/lang/da/classic_da.sog139
-rw-r--r--extras/source/palettes/lang/da/hatching_da.soh37
-rw-r--r--extras/source/palettes/lang/da/modern_da.sog29
-rw-r--r--extras/source/palettes/lang/da/palette_da.soc81
-rw-r--r--extras/source/palettes/lang/da/styles_da.sod8
-rw-r--r--extras/source/palettes/lang/de/arrowhd_de.soe28
-rw-r--r--extras/source/palettes/lang/de/classic_de.sog141
-rw-r--r--extras/source/palettes/lang/de/hatching_de.soh39
-rw-r--r--extras/source/palettes/lang/de/modern_de.sog31
-rw-r--r--extras/source/palettes/lang/de/palette_de.soc81
-rw-r--r--extras/source/palettes/lang/de/styles_de.sod10
-rw-r--r--extras/source/palettes/lang/delzip0
-rw-r--r--extras/source/palettes/lang/en-GB/arrowhd_en-GB.soe28
-rw-r--r--extras/source/palettes/lang/en-GB/classic_en-GB.sog141
-rw-r--r--extras/source/palettes/lang/en-GB/hatching_en-GB.soh39
-rw-r--r--extras/source/palettes/lang/en-GB/modern_en-GB.sog31
-rw-r--r--extras/source/palettes/lang/en-GB/palette_en-GB.soc81
-rw-r--r--extras/source/palettes/lang/en-GB/styles_en-GB.sod10
-rw-r--r--extras/source/palettes/lang/en-US/arrowhd_en-US.soe28
-rw-r--r--extras/source/palettes/lang/en-US/classic_en-US.sog141
-rw-r--r--extras/source/palettes/lang/en-US/hatching_en-US.soh39
-rw-r--r--extras/source/palettes/lang/en-US/modern_en-US.sog31
-rw-r--r--extras/source/palettes/lang/en-US/palette_en-US.soc81
-rw-r--r--extras/source/palettes/lang/en-US/styles_en-US.sod10
-rw-r--r--extras/source/palettes/lang/es/arrowhd_es.soe28
-rw-r--r--extras/source/palettes/lang/es/classic_es.sog141
-rw-r--r--extras/source/palettes/lang/es/hatching_es.soh39
-rw-r--r--extras/source/palettes/lang/es/modern_es.sog31
-rw-r--r--extras/source/palettes/lang/es/palette_es.soc81
-rw-r--r--extras/source/palettes/lang/es/styles_es.sod10
-rwxr-xr-xextras/source/palettes/lang/eu/arrowhd_eu.soe28
-rwxr-xr-xextras/source/palettes/lang/eu/classic_eu.sog141
-rwxr-xr-xextras/source/palettes/lang/eu/hatching_eu.soh39
-rwxr-xr-xextras/source/palettes/lang/eu/modern_eu.sog31
-rwxr-xr-xextras/source/palettes/lang/eu/palette_eu.soc81
-rwxr-xr-xextras/source/palettes/lang/eu/styles_eu.sod10
-rw-r--r--extras/source/palettes/lang/fr/arrowhd_fr.soe28
-rw-r--r--extras/source/palettes/lang/fr/classic_fr.sog141
-rw-r--r--extras/source/palettes/lang/fr/hatching_fr.soh39
-rw-r--r--extras/source/palettes/lang/fr/modern_fr.sog31
-rw-r--r--extras/source/palettes/lang/fr/palette_fr.soc81
-rw-r--r--extras/source/palettes/lang/fr/styles_fr.sod10
-rw-r--r--extras/source/palettes/lang/hu/arrowhd_hu.soe28
-rw-r--r--extras/source/palettes/lang/hu/classic_hu.sog141
-rw-r--r--extras/source/palettes/lang/hu/hatching_hu.soh39
-rw-r--r--extras/source/palettes/lang/hu/modern_hu.sog31
-rw-r--r--extras/source/palettes/lang/hu/palette_hu.soc81
-rw-r--r--extras/source/palettes/lang/hu/styles_hu.sod10
-rw-r--r--extras/source/palettes/lang/it/arrowhd_it.soe28
-rw-r--r--extras/source/palettes/lang/it/classic_it.sog141
-rw-r--r--extras/source/palettes/lang/it/hatching_it.soh39
-rw-r--r--extras/source/palettes/lang/it/modern_it.sog31
-rw-r--r--extras/source/palettes/lang/it/palette_it.soc81
-rw-r--r--extras/source/palettes/lang/it/styles_it.sod10
-rw-r--r--extras/source/palettes/lang/ja/arrowhd_ja.soe28
-rw-r--r--extras/source/palettes/lang/ja/classic_ja.sog2
-rw-r--r--extras/source/palettes/lang/ja/hatching_ja.soh39
-rw-r--r--extras/source/palettes/lang/ja/modern_ja.sog31
-rw-r--r--extras/source/palettes/lang/ja/palette_ja.soc81
-rw-r--r--extras/source/palettes/lang/ja/styles_ja.sod10
-rw-r--r--extras/source/palettes/lang/km/arrowhd_km.soe28
-rw-r--r--extras/source/palettes/lang/km/classic_km.sog141
-rw-r--r--extras/source/palettes/lang/km/hatching_km.soh39
-rw-r--r--extras/source/palettes/lang/km/modern_km.sog31
-rw-r--r--extras/source/palettes/lang/km/palette_km.soc81
-rw-r--r--extras/source/palettes/lang/km/styles_km.sod10
-rw-r--r--extras/source/palettes/lang/ko/arrowhd_ko.soe28
-rw-r--r--extras/source/palettes/lang/ko/classic_ko.sog2
-rw-r--r--extras/source/palettes/lang/ko/hatching_ko.soh39
-rw-r--r--extras/source/palettes/lang/ko/modern_ko.sog31
-rw-r--r--extras/source/palettes/lang/ko/palette_ko.soc81
-rw-r--r--extras/source/palettes/lang/ko/styles_ko.sod10
-rw-r--r--extras/source/palettes/lang/makefile.mk47
-rw-r--r--extras/source/palettes/lang/nl/arrowhd_nl.soe28
-rw-r--r--extras/source/palettes/lang/nl/classic_nl.sog141
-rw-r--r--extras/source/palettes/lang/nl/hatching_nl.soh39
-rw-r--r--extras/source/palettes/lang/nl/modern_nl.sog31
-rw-r--r--extras/source/palettes/lang/nl/palette_nl.soc81
-rw-r--r--extras/source/palettes/lang/nl/styles_nl.sod10
-rw-r--r--extras/source/palettes/lang/pl/arrowhd_pl.soebin0 -> 2846 bytes-rw-r--r--extras/source/palettes/lang/pl/classic_pl.sogbin0 -> 9006 bytes-rw-r--r--extras/source/palettes/lang/pl/hatching_pl.sohbin0 -> 1300 bytes-rw-r--r--extras/source/palettes/lang/pl/modern_pl.sogbin0 -> 1598 bytes-rw-r--r--extras/source/palettes/lang/pl/palette_pl.socbin0 -> 2078 bytes-rw-r--r--extras/source/palettes/lang/pl/styles_pl.sodbin0 -> 278 bytes-rw-r--r--extras/source/palettes/lang/pt-BR/arrowhd_pt-BR.soe28
-rw-r--r--extras/source/palettes/lang/pt-BR/classic_pt-BR.sog31
-rw-r--r--extras/source/palettes/lang/pt-BR/hatching_pt-BR.soh39
-rw-r--r--extras/source/palettes/lang/pt-BR/modern_pt-BR.sog31
-rw-r--r--extras/source/palettes/lang/pt-BR/palette_pt-BR.soc81
-rw-r--r--extras/source/palettes/lang/pt-BR/styles_pt-BR.sod3
-rw-r--r--extras/source/palettes/lang/pt/arrowhd_pt.soe28
-rw-r--r--extras/source/palettes/lang/pt/classic_pt.sog141
-rw-r--r--extras/source/palettes/lang/pt/hatching_pt.soh39
-rw-r--r--extras/source/palettes/lang/pt/modern_pt.sog32
-rw-r--r--extras/source/palettes/lang/pt/palette_pt.soc81
-rw-r--r--extras/source/palettes/lang/pt/styles_pt.sod11
-rw-r--r--extras/source/palettes/lang/ru/arrowhd_ru.soebin0 -> 2846 bytes-rw-r--r--extras/source/palettes/lang/ru/classic_ru.sogbin0 -> 9006 bytes-rw-r--r--extras/source/palettes/lang/ru/hatching_ru.sohbin0 -> 1300 bytes-rw-r--r--extras/source/palettes/lang/ru/modern_ru.sogbin0 -> 1598 bytes-rw-r--r--extras/source/palettes/lang/ru/palette_ru.socbin0 -> 2078 bytes-rw-r--r--extras/source/palettes/lang/ru/styles_ru.sodbin0 -> 278 bytes-rw-r--r--extras/source/palettes/lang/sk/arrowhd_sk.soe28
-rw-r--r--extras/source/palettes/lang/sk/classic_sk.sog141
-rw-r--r--extras/source/palettes/lang/sk/hatching_sk.soh39
-rw-r--r--extras/source/palettes/lang/sk/modern_sk.sog31
-rw-r--r--extras/source/palettes/lang/sk/palette_sk.soc81
-rw-r--r--extras/source/palettes/lang/sk/styles_sk.sod10
-rw-r--r--extras/source/palettes/lang/sl/arrowhd_sl.soe28
-rw-r--r--extras/source/palettes/lang/sl/classic_sl.sog141
-rw-r--r--extras/source/palettes/lang/sl/hatching_sl.soh39
-rw-r--r--extras/source/palettes/lang/sl/modern_sl.sog31
-rw-r--r--extras/source/palettes/lang/sl/palette_sl.soc81
-rw-r--r--extras/source/palettes/lang/sl/styles_sl.sod10
-rw-r--r--extras/source/palettes/lang/sv/arrowhd_sv.soe28
-rw-r--r--extras/source/palettes/lang/sv/classic_sv.sog141
-rw-r--r--extras/source/palettes/lang/sv/hatching_sv.soh39
-rw-r--r--extras/source/palettes/lang/sv/modern_sv.sog32
-rw-r--r--extras/source/palettes/lang/sv/palette_sv.soc81
-rw-r--r--extras/source/palettes/lang/sv/styles_sv.sod10
-rw-r--r--extras/source/palettes/lang/tr/arrowhd_tr.soe28
-rw-r--r--extras/source/palettes/lang/tr/classic_tr.sog141
-rw-r--r--extras/source/palettes/lang/tr/hatching_tr.soh39
-rw-r--r--extras/source/palettes/lang/tr/modern_tr.sog31
-rw-r--r--extras/source/palettes/lang/tr/palette_tr.soc81
-rw-r--r--extras/source/palettes/lang/tr/styles_tr.sod10
-rw-r--r--extras/source/palettes/lang/zh-CN/arrowhd_zh-CN.soe28
-rw-r--r--extras/source/palettes/lang/zh-CN/classic_zh-CN.sog2
-rw-r--r--extras/source/palettes/lang/zh-CN/hatching_zh-CN.soh39
-rw-r--r--extras/source/palettes/lang/zh-CN/modern_zh-CN.sog31
-rw-r--r--extras/source/palettes/lang/zh-CN/palette_zh-CN.soc81
-rw-r--r--extras/source/palettes/lang/zh-CN/styles_zh-CN.sod10
-rw-r--r--extras/source/palettes/lang/zh-TW/arrowhd_zh-TW.soe28
-rw-r--r--extras/source/palettes/lang/zh-TW/classic_zh-TW.sog2
-rw-r--r--extras/source/palettes/lang/zh-TW/hatching_zh-TW.soh39
-rw-r--r--extras/source/palettes/lang/zh-TW/modern_zh-TW.sog31
-rw-r--r--extras/source/palettes/lang/zh-TW/palette_zh-TW.soc81
-rw-r--r--extras/source/palettes/lang/zh-TW/styles_zh-TW.sod10
-rw-r--r--extras/source/palettes/makefile.mk51
-rw-r--r--extras/source/palettes/scribus.soc548
-rw-r--r--extras/source/palettes/standard.sobbin0 -> 155895 bytes-rw-r--r--extras/source/palettes/standard.soc103
-rw-r--r--extras/source/palettes/standard.sod15
-rw-r--r--extras/source/palettes/standard.soe16
-rw-r--r--extras/source/palettes/standard.sog19
-rw-r--r--extras/source/palettes/standard.soh14
-rw-r--r--extras/source/palettes/web.soc236
-rw-r--r--extras/source/shellnew/soffice.html12
-rw-r--r--extras/source/shellnew/soffice.odgbin0 -> 8428 bytes-rw-r--r--extras/source/shellnew/soffice.odpbin0 -> 9026 bytes-rw-r--r--extras/source/shellnew/soffice.odsbin0 -> 6598 bytes-rw-r--r--extras/source/shellnew/soffice.odtbin0 -> 7334 bytes-rw-r--r--extras/source/symbols/delzip1
-rw-r--r--extras/source/symbols/l_2people.bmpbin0 -> 2136 bytes-rw-r--r--extras/source/symbols/l_attention1.bmpbin0 -> 2136 bytes-rw-r--r--extras/source/symbols/l_attention2.bmpbin0 -> 2136 bytes-rw-r--r--extras/source/symbols/l_attention3.bmpbin0 -> 2136 bytes-rw-r--r--extras/source/symbols/l_candy.bmpbin0 -> 2136 bytes-rw-r--r--extras/source/symbols/l_face.bmpbin0 -> 2136 bytes-rw-r--r--extras/source/symbols/l_flower.bmpbin0 -> 2136 bytes-rw-r--r--extras/source/symbols/l_ghost.bmpbin0 -> 2136 bytes-rw-r--r--extras/source/symbols/l_halloween.bmpbin0 -> 2136 bytes-rw-r--r--extras/source/symbols/l_home.bmpbin0 -> 2136 bytes-rw-r--r--extras/source/symbols/l_lamp.bmpbin0 -> 2136 bytes-rw-r--r--extras/source/symbols/l_lock.bmpbin0 -> 2136 bytes-rw-r--r--extras/source/symbols/l_page_b.bmpbin0 -> 2136 bytes-rw-r--r--extras/source/symbols/l_page_g.bmpbin0 -> 2136 bytes-rw-r--r--extras/source/symbols/l_page_y.bmpbin0 -> 2136 bytes-rw-r--r--extras/source/symbols/l_people.bmpbin0 -> 2136 bytes-rw-r--r--extras/source/symbols/l_rose.bmpbin0 -> 2136 bytes-rw-r--r--extras/source/symbols/l_save.bmpbin0 -> 2136 bytes-rw-r--r--extras/source/symbols/l_smiley_1.bmpbin0 -> 2136 bytes-rw-r--r--extras/source/symbols/l_smiley_oh.bmpbin0 -> 2136 bytes-rw-r--r--extras/source/symbols/l_smiley_sad.bmpbin0 -> 2136 bytes-rw-r--r--extras/source/symbols/l_snow.bmpbin0 -> 2136 bytes-rw-r--r--extras/source/symbols/l_star.bmpbin0 -> 2136 bytes-rw-r--r--extras/source/symbols/makefile.mk51
-rw-r--r--extras/source/symbols/s_arrow-1.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_arrow-2.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_arrow-3.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_arrow-4.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_attention1.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_attention2.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_attention3.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_ball-b.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_ball-g.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_ball-r.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_ball.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_bug.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_clover.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_egg.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_face.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_flower.bmpbin0 -> 344 bytes-rw-r--r--extras/source/symbols/s_ghost.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_group.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_halloween.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_heart.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_home.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_lock.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_ok-g.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_ok-r.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_ok.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_page_b.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_page_g.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_page_y.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_pen-b.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_pen-g.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_pen-r.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_people.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_smily_1.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_smily_oh.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_smily_sad.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_snow.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_star.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_team.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_x-g.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_x-r.bmpbin0 -> 824 bytes-rw-r--r--extras/source/symbols/s_x.bmpbin0 -> 824 bytes-rw-r--r--extras/source/templates/lang/delzip1
-rw-r--r--extras/source/templates/lang/makefile.mk49
-rw-r--r--extras/source/templates/layout/lang/bg/lyt-cool.otpbin0 -> 10997 bytes-rw-r--r--extras/source/templates/layout/lang/bg/lyt-darkblue.otpbin0 -> 10639 bytes-rw-r--r--extras/source/templates/layout/lang/cs/lyt-cool.otpbin0 -> 10978 bytes-rw-r--r--extras/source/templates/layout/lang/cs/lyt-darkblue.otpbin0 -> 10725 bytes-rw-r--r--extras/source/templates/layout/lang/da/lyt-cool.otpbin0 -> 8697 bytes-rw-r--r--extras/source/templates/layout/lang/da/lyt-darkblue.otpbin0 -> 8699 bytes-rw-r--r--extras/source/templates/layout/lang/de/lyt-aqua.otpbin0 -> 32080 bytes-rw-r--r--extras/source/templates/layout/lang/de/lyt-blackandwhite.otpbin0 -> 197893 bytes-rw-r--r--extras/source/templates/layout/lang/de/lyt-bluegrey.otpbin0 -> 292522 bytes-rw-r--r--extras/source/templates/layout/lang/de/lyt-bluelinesgrad.otpbin0 -> 47929 bytes-rw-r--r--extras/source/templates/layout/lang/de/lyt-bluetitledown.otpbin0 -> 75992 bytes-rwxr-xr-xextras/source/templates/layout/lang/de/lyt-book.otpbin0 -> 1144700 bytes-rw-r--r--extras/source/templates/layout/lang/de/lyt-brown.otpbin0 -> 59365 bytes-rw-r--r--extras/source/templates/layout/lang/de/lyt-charglow.otpbin0 -> 85088 bytes-rw-r--r--extras/source/templates/layout/lang/de/lyt-forest.otpbin0 -> 721934 bytes-rwxr-xr-xextras/source/templates/layout/lang/de/lyt-frepa.otpbin0 -> 68215 bytes-rw-r--r--extras/source/templates/layout/lang/de/lyt-glacier.otpbin0 -> 652859 bytes-rwxr-xr-xextras/source/templates/layout/lang/de/lyt-greengradlines.otpbin0 -> 72050 bytes-rw-r--r--extras/source/templates/layout/lang/de/lyt-keyboard.otpbin0 -> 516411 bytes-rw-r--r--extras/source/templates/layout/lang/de/lyt-movwaves.otpbin0 -> 58336 bytes-rw-r--r--extras/source/templates/layout/lang/de/lyt-numdark.otpbin0 -> 311234 bytes-rw-r--r--extras/source/templates/layout/lang/de/lyt-ocean.otpbin0 -> 14038 bytes-rwxr-xr-xextras/source/templates/layout/lang/de/lyt-organic.otpbin0 -> 64341 bytes-rwxr-xr-xextras/source/templates/layout/lang/de/lyt-paper.otpbin0 -> 706360 bytes-rw-r--r--extras/source/templates/layout/lang/de/lyt-rededges.otpbin0 -> 502732 bytes-rw-r--r--extras/source/templates/layout/lang/de/lyt-roundedrect.otpbin0 -> 125420 bytes-rw-r--r--extras/source/templates/layout/lang/de/lyt-sunrise.otpbin0 -> 115779 bytes-rw-r--r--extras/source/templates/layout/lang/de/lyt-techpoly.otpbin0 -> 312486 bytes-rwxr-xr-xextras/source/templates/layout/lang/de/lyt-tunnel.otpbin0 -> 52444 bytes-rw-r--r--extras/source/templates/layout/lang/de/lyt-water.otpbin0 -> 505912 bytes-rw-r--r--extras/source/templates/layout/lang/de/lyt-wine.otpbin0 -> 652370 bytes-rw-r--r--extras/source/templates/layout/lang/delzip1
-rw-r--r--extras/source/templates/layout/lang/en-GB/lyt-cool.otpbin0 -> 10052 bytes-rw-r--r--extras/source/templates/layout/lang/en-GB/lyt-darkblue.otpbin0 -> 10429 bytes-rw-r--r--extras/source/templates/layout/lang/en-US/lyt-aqua.otpbin0 -> 32050 bytes-rw-r--r--extras/source/templates/layout/lang/en-US/lyt-blackandwhite.otpbin0 -> 198973 bytes-rw-r--r--extras/source/templates/layout/lang/en-US/lyt-bluegrey.otpbin0 -> 292498 bytes-rw-r--r--extras/source/templates/layout/lang/en-US/lyt-bluelinesgrad.otpbin0 -> 47900 bytes-rw-r--r--extras/source/templates/layout/lang/en-US/lyt-bluetitledown.otpbin0 -> 75772 bytes-rw-r--r--extras/source/templates/layout/lang/en-US/lyt-book.otpbin0 -> 1144672 bytes-rw-r--r--extras/source/templates/layout/lang/en-US/lyt-brown.otpbin0 -> 59337 bytes-rw-r--r--extras/source/templates/layout/lang/en-US/lyt-charglow.otpbin0 -> 85053 bytes-rw-r--r--extras/source/templates/layout/lang/en-US/lyt-forest.otpbin0 -> 721971 bytes-rwxr-xr-xextras/source/templates/layout/lang/en-US/lyt-frepa.otpbin0 -> 68188 bytes-rw-r--r--extras/source/templates/layout/lang/en-US/lyt-glacier.otpbin0 -> 654229 bytes-rw-r--r--extras/source/templates/layout/lang/en-US/lyt-greengradlines.otpbin0 -> 71713 bytes-rw-r--r--extras/source/templates/layout/lang/en-US/lyt-keyboard.otpbin0 -> 517689 bytes-rwxr-xr-xextras/source/templates/layout/lang/en-US/lyt-movwaves.otpbin0 -> 56012 bytes-rwxr-xr-xextras/source/templates/layout/lang/en-US/lyt-numdark.otpbin0 -> 327978 bytes-rwxr-xr-xextras/source/templates/layout/lang/en-US/lyt-ocean.otpbin0 -> 14004 bytes-rw-r--r--extras/source/templates/layout/lang/en-US/lyt-organic.otpbin0 -> 64322 bytes-rw-r--r--extras/source/templates/layout/lang/en-US/lyt-paper.otpbin0 -> 706327 bytes-rw-r--r--extras/source/templates/layout/lang/en-US/lyt-rededges.otpbin0 -> 502708 bytes-rwxr-xr-xextras/source/templates/layout/lang/en-US/lyt-roundedrect.otpbin0 -> 125387 bytes-rwxr-xr-xextras/source/templates/layout/lang/en-US/lyt-sunrise.otpbin0 -> 115754 bytes-rwxr-xr-xextras/source/templates/layout/lang/en-US/lyt-techpoly.otpbin0 -> 312460 bytes-rw-r--r--extras/source/templates/layout/lang/en-US/lyt-tunnel.otpbin0 -> 52416 bytes-rw-r--r--extras/source/templates/layout/lang/en-US/lyt-water.otpbin0 -> 507283 bytes-rw-r--r--extras/source/templates/layout/lang/en-US/lyt-wine.otpbin0 -> 652454 bytes-rw-r--r--extras/source/templates/layout/lang/es/lyt-cool.otpbin0 -> 8464 bytes-rw-r--r--extras/source/templates/layout/lang/es/lyt-darkblue.otpbin0 -> 8457 bytes-rwxr-xr-xextras/source/templates/layout/lang/eu/lyt-cool.otpbin0 -> 13206 bytes-rwxr-xr-xextras/source/templates/layout/lang/eu/lyt-darkblue.otpbin0 -> 13637 bytes-rw-r--r--extras/source/templates/layout/lang/fr/lyt-cool.otpbin0 -> 8443 bytes-rw-r--r--extras/source/templates/layout/lang/fr/lyt-darkblue.otpbin0 -> 8426 bytes-rwxr-xr-xextras/source/templates/layout/lang/hu/lyt-cool.otpbin0 -> 10314 bytes-rwxr-xr-xextras/source/templates/layout/lang/hu/lyt-darkblue.otpbin0 -> 10962 bytes-rw-r--r--extras/source/templates/layout/lang/it/lyt-cool.otpbin0 -> 8463 bytes-rw-r--r--extras/source/templates/layout/lang/it/lyt-darkblue.otpbin0 -> 8443 bytes-rw-r--r--extras/source/templates/layout/lang/ja/lyt-cool.otpbin0 -> 10390 bytes-rw-r--r--extras/source/templates/layout/lang/ja/lyt-darkblue.otpbin0 -> 10761 bytes-rw-r--r--extras/source/templates/layout/lang/km/lyt-cool.otpbin0 -> 8957 bytes-rw-r--r--extras/source/templates/layout/lang/km/lyt-darkblue.otpbin0 -> 8938 bytes-rw-r--r--extras/source/templates/layout/lang/ko/lyt-cool.otpbin0 -> 9759 bytes-rw-r--r--extras/source/templates/layout/lang/ko/lyt-darkblue.otpbin0 -> 9322 bytes-rw-r--r--extras/source/templates/layout/lang/makefile.mk49
-rw-r--r--extras/source/templates/layout/lang/nl/lyt-cool.otpbin0 -> 10136 bytes-rw-r--r--extras/source/templates/layout/lang/nl/lyt-darkblue.otpbin0 -> 10344 bytes-rw-r--r--extras/source/templates/layout/lang/pl/lyt-cool.otpbin0 -> 10606 bytes-rw-r--r--extras/source/templates/layout/lang/pl/lyt-darkblue.otpbin0 -> 10165 bytes-rw-r--r--extras/source/templates/layout/lang/pt-BR/lyt-cool.otpbin0 -> 9249 bytes-rw-r--r--extras/source/templates/layout/lang/pt-BR/lyt-darkblue.otpbin0 -> 9155 bytes-rw-r--r--extras/source/templates/layout/lang/pt/lyt-cool.otpbin0 -> 12067 bytes-rw-r--r--extras/source/templates/layout/lang/pt/lyt-darkblue.otpbin0 -> 12024 bytes-rw-r--r--extras/source/templates/layout/lang/ru/lyt-cool.otpbin0 -> 10987 bytes-rw-r--r--extras/source/templates/layout/lang/ru/lyt-darkblue.otpbin0 -> 11071 bytes-rw-r--r--extras/source/templates/layout/lang/sk/lyt-cool.otpbin0 -> 9650 bytes-rw-r--r--extras/source/templates/layout/lang/sk/lyt-darkblue.otpbin0 -> 10832 bytes-rw-r--r--extras/source/templates/layout/lang/sl/lyt-cool.otpbin0 -> 9895 bytes-rw-r--r--extras/source/templates/layout/lang/sl/lyt-darkblue.otpbin0 -> 9914 bytes-rw-r--r--extras/source/templates/layout/lang/sv/lyt-cool.otpbin0 -> 8466 bytes-rw-r--r--extras/source/templates/layout/lang/sv/lyt-darkblue.otpbin0 -> 8460 bytes-rw-r--r--extras/source/templates/layout/lang/tr/lyt-cool.otpbin0 -> 8957 bytes-rw-r--r--extras/source/templates/layout/lang/tr/lyt-darkblue.otpbin0 -> 8938 bytes-rwxr-xr-xextras/source/templates/layout/lang/vi/lyt-cool.otpbin0 -> 8957 bytes-rwxr-xr-xextras/source/templates/layout/lang/vi/lyt-darkblue.otpbin0 -> 8938 bytes-rwxr-xr-xextras/source/templates/layout/lang/vi/lyt-darkblue_new.otpbin0 -> 16607 bytes-rwxr-xr-xextras/source/templates/layout/lang/vi/lyt_cool_new.otpbin0 -> 16114 bytes-rw-r--r--extras/source/templates/layout/lang/zh-CN/lyt-cool.otpbin0 -> 9439 bytes-rw-r--r--extras/source/templates/layout/lang/zh-CN/lyt-darkblue.otpbin0 -> 9330 bytes-rw-r--r--extras/source/templates/layout/lang/zh-TW/lyt-cool.otpbin0 -> 9837 bytes-rw-r--r--extras/source/templates/layout/lang/zh-TW/lyt-darkblue.otpbin0 -> 9309 bytes-rw-r--r--extras/source/templates/presnt/lang/bg/prs-novelty.otpbin0 -> 54229 bytes-rw-r--r--extras/source/templates/presnt/lang/bg/prs-strategy.otpbin0 -> 68781 bytes-rw-r--r--extras/source/templates/presnt/lang/cs/prs-novelty.otpbin0 -> 54784 bytes-rw-r--r--extras/source/templates/presnt/lang/cs/prs-strategy.otpbin0 -> 69075 bytes-rw-r--r--extras/source/templates/presnt/lang/da/prs-novelty.otpbin0 -> 25093 bytes-rw-r--r--extras/source/templates/presnt/lang/da/prs-strategy.otpbin0 -> 66669 bytes-rw-r--r--extras/source/templates/presnt/lang/de/prs-novelty.otpbin0 -> 25464 bytes-rw-r--r--extras/source/templates/presnt/lang/de/prs-strategy.otpbin0 -> 66954 bytes-rw-r--r--extras/source/templates/presnt/lang/delzip0
-rw-r--r--extras/source/templates/presnt/lang/en-GB/prs-novelty.otpbin0 -> 54731 bytes-rw-r--r--extras/source/templates/presnt/lang/en-GB/prs-strategy.otpbin0 -> 69725 bytes-rw-r--r--extras/source/templates/presnt/lang/en-US/prs-novelty.otpbin0 -> 25355 bytes-rw-r--r--extras/source/templates/presnt/lang/en-US/prs-strategy.otpbin0 -> 66860 bytes-rw-r--r--extras/source/templates/presnt/lang/es/prs-novelty.otpbin0 -> 52743 bytes-rw-r--r--extras/source/templates/presnt/lang/es/prs-strategy.otpbin0 -> 66884 bytes-rwxr-xr-xextras/source/templates/presnt/lang/eu/prs-novelty.otpbin0 -> 58417 bytes-rwxr-xr-xextras/source/templates/presnt/lang/eu/prs-strategy.otpbin0 -> 70690 bytes-rw-r--r--extras/source/templates/presnt/lang/fr/prs-novelty.otpbin0 -> 53725 bytes-rw-r--r--extras/source/templates/presnt/lang/fr/prs-strategy.otpbin0 -> 66912 bytes-rwxr-xr-xextras/source/templates/presnt/lang/hu/prs-novelty.otpbin0 -> 54529 bytes-rwxr-xr-xextras/source/templates/presnt/lang/hu/prs-strategy.otpbin0 -> 68672 bytes-rw-r--r--extras/source/templates/presnt/lang/it/prs-novelty.otpbin0 -> 52801 bytes-rw-r--r--extras/source/templates/presnt/lang/it/prs-strategy.otpbin0 -> 66817 bytes-rw-r--r--extras/source/templates/presnt/lang/ja/prs-novelty.otpbin0 -> 25351 bytes-rw-r--r--extras/source/templates/presnt/lang/ja/prs-strategy.otpbin0 -> 68096 bytes-rw-r--r--extras/source/templates/presnt/lang/km/prs-novelty.otpbin0 -> 57314 bytes-rw-r--r--extras/source/templates/presnt/lang/km/prs-strategy.otpbin0 -> 72026 bytes-rw-r--r--extras/source/templates/presnt/lang/ko/prs-novelty.otpbin0 -> 53586 bytes-rw-r--r--extras/source/templates/presnt/lang/ko/prs-strategy.otpbin0 -> 67730 bytes-rw-r--r--extras/source/templates/presnt/lang/makefile.mk49
-rw-r--r--extras/source/templates/presnt/lang/nl/prs-novelty.otpbin0 -> 54675 bytes-rw-r--r--extras/source/templates/presnt/lang/nl/prs-strategy.otpbin0 -> 68327 bytes-rw-r--r--extras/source/templates/presnt/lang/pl/prs-novelty.otpbin0 -> 55915 bytes-rw-r--r--extras/source/templates/presnt/lang/pl/prs-strategy.otpbin0 -> 68238 bytes-rw-r--r--extras/source/templates/presnt/lang/pt-BR/prs-novelty.otpbin0 -> 53726 bytes-rw-r--r--extras/source/templates/presnt/lang/pt-BR/prs-strategy.otpbin0 -> 67814 bytes-rw-r--r--extras/source/templates/presnt/lang/pt/prs-novelty.otpbin0 -> 55945 bytes-rw-r--r--extras/source/templates/presnt/lang/pt/prs-strategy.otpbin0 -> 70038 bytes-rw-r--r--extras/source/templates/presnt/lang/ru/prs-novelty.otpbin0 -> 55520 bytes-rw-r--r--extras/source/templates/presnt/lang/ru/prs-strategy.otpbin0 -> 69043 bytes-rw-r--r--extras/source/templates/presnt/lang/sk/prs-novelty.otpbin0 -> 13106 bytes-rw-r--r--extras/source/templates/presnt/lang/sk/prs-strategy.otpbin0 -> 69109 bytes-rw-r--r--extras/source/templates/presnt/lang/sl/prs-novelty.otpbin0 -> 53634 bytes-rw-r--r--extras/source/templates/presnt/lang/sl/prs-strategy.otpbin0 -> 68143 bytes-rw-r--r--extras/source/templates/presnt/lang/sv/prs-novelty.otpbin0 -> 52672 bytes-rw-r--r--extras/source/templates/presnt/lang/sv/prs-strategy.otpbin0 -> 66833 bytes-rw-r--r--extras/source/templates/presnt/lang/tr/prs-novelty.otpbin0 -> 54712 bytes-rw-r--r--extras/source/templates/presnt/lang/tr/prs-strategy.otpbin0 -> 68733 bytes-rwxr-xr-xextras/source/templates/presnt/lang/vi/prs-novelty.otpbin0 -> 25355 bytes-rwxr-xr-xextras/source/templates/presnt/lang/vi/prs-novelty_new.otpbin0 -> 63417 bytes-rwxr-xr-xextras/source/templates/presnt/lang/vi/prs-strategy.otpbin0 -> 77744 bytes-rw-r--r--extras/source/templates/presnt/lang/zh-CN/prs-novelty.otpbin0 -> 53205 bytes-rw-r--r--extras/source/templates/presnt/lang/zh-CN/prs-strategy.otpbin0 -> 67504 bytes-rw-r--r--extras/source/templates/presnt/lang/zh-TW/prs-novelty.otpbin0 -> 53171 bytes-rw-r--r--extras/source/templates/presnt/lang/zh-TW/prs-strategy.otpbin0 -> 67522 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/bg/10grey.ottbin0 -> 11474 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/bg/1simple.ottbin0 -> 11153 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/bg/2elegant.ottbin0 -> 16078 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/bg/3modern.ottbin0 -> 11655 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/bg/4classic.ottbin0 -> 11086 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/bg/5blue.ottbin0 -> 11222 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/bg/6orange.ottbin0 -> 11759 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/bg/7red.ottbin0 -> 11614 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/bg/8green.ottbin0 -> 11363 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/bg/9colorful.ottbin0 -> 11207 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/bg/aw-10grey.ottbin0 -> 11438 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/bg/aw-1simple.ottbin0 -> 11012 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/bg/aw-2elegant.ottbin0 -> 16087 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/bg/aw-3modern.ottbin0 -> 11599 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/bg/aw-4classic.ottbin0 -> 11105 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/bg/aw-5blue.ottbin0 -> 11227 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/bg/aw-6orange.ottbin0 -> 11750 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/bg/aw-7red.ottbin0 -> 11377 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/bg/aw-8green.ottbin0 -> 11362 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/bg/aw-9colorful.ottbin0 -> 11158 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/cs/10grey.ottbin0 -> 10427 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/cs/1simple.ottbin0 -> 10232 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/cs/2elegant.ottbin0 -> 14396 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/cs/3modern.ottbin0 -> 10732 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/cs/4classic.ottbin0 -> 10193 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/cs/5blue.ottbin0 -> 10238 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/cs/6orange.ottbin0 -> 10793 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/cs/7red.ottbin0 -> 10716 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/cs/8green.ottbin0 -> 10545 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/cs/9colorful.ottbin0 -> 10192 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/cs/aw-10grey.ottbin0 -> 10427 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/cs/aw-1simple.ottbin0 -> 10232 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/cs/aw-2elegant.ottbin0 -> 14396 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/cs/aw-3modern.ottbin0 -> 10732 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/cs/aw-4classic.ottbin0 -> 10193 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/cs/aw-5blue.ottbin0 -> 10238 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/cs/aw-6orange.ottbin0 -> 10793 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/cs/aw-7red.ottbin0 -> 10716 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/cs/aw-8green.ottbin0 -> 10545 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/cs/aw-9colorful.ottbin0 -> 10192 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/da/10grey.ottbin0 -> 10031 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/da/1simple.ottbin0 -> 9789 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/da/2elegant.ottbin0 -> 13979 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/da/3modern.ottbin0 -> 10306 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/da/4classic.ottbin0 -> 9776 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/da/5blue.ottbin0 -> 9854 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/da/6orange.ottbin0 -> 10329 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/da/7red.ottbin0 -> 10274 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/da/8green.ottbin0 -> 9993 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/da/9colorful.ottbin0 -> 9821 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/da/aw-10grey.ottbin0 -> 10031 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/da/aw-1simple.ottbin0 -> 9788 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/da/aw-2elegant.ottbin0 -> 13979 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/da/aw-3modern.ottbin0 -> 10306 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/da/aw-4classic.ottbin0 -> 9776 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/da/aw-5blue.ottbin0 -> 9854 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/da/aw-6orange.ottbin0 -> 10330 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/da/aw-7red.ottbin0 -> 11424 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/da/aw-8green.ottbin0 -> 9992 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/da/aw-9colorful.ottbin0 -> 9861 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/de/10grey.ottbin0 -> 10282 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/de/1simple.ottbin0 -> 10041 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/de/2elegant.ottbin0 -> 14230 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/de/3modern.ottbin0 -> 10554 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/de/4classic.ottbin0 -> 10056 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/de/5blue.ottbin0 -> 10114 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/de/6orange.ottbin0 -> 10554 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/de/7red.ottbin0 -> 10503 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/de/8green.ottbin0 -> 10238 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/de/9colorful.ottbin0 -> 10078 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/de/aw-10grey.ottbin0 -> 10282 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/de/aw-1simple.ottbin0 -> 10041 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/de/aw-2elegant.ottbin0 -> 14230 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/de/aw-3modern.ottbin0 -> 10554 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/de/aw-4classic.ottbin0 -> 10056 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/de/aw-5blue.ottbin0 -> 10114 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/de/aw-6orange.ottbin0 -> 10554 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/de/aw-7red.ottbin0 -> 10503 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/de/aw-8green.ottbin0 -> 10238 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/de/aw-9colorful.ottbin0 -> 10078 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/delzip2
-rw-r--r--extras/source/templates/wizard/agenda/lang/en-GB/10grey.ottbin0 -> 12479 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-GB/1simple.ottbin0 -> 12618 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-GB/2elegant.ottbin0 -> 17817 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-GB/3modern.ottbin0 -> 13030 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-GB/4classic.ottbin0 -> 11232 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-GB/5blue.ottbin0 -> 11537 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-GB/6orange.ottbin0 -> 12219 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-GB/7red.ottbin0 -> 12256 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-GB/8green.ottbin0 -> 11543 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-GB/9colorful.ottbin0 -> 11583 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-GB/aw-10grey.ottbin0 -> 12416 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-GB/aw-1simple.ottbin0 -> 12061 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-GB/aw-2elegant.ottbin0 -> 16831 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-GB/aw-3modern.ottbin0 -> 13023 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-GB/aw-4classic.ottbin0 -> 11787 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-GB/aw-5blue.ottbin0 -> 12138 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-GB/aw-6orange.ottbin0 -> 12773 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-GB/aw-7red.ottbin0 -> 12187 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-GB/aw-8green.ottbin0 -> 12072 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-GB/aw-9colorful.ottbin0 -> 12131 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-US/10grey.ottbin0 -> 10240 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-US/1simple.ottbin0 -> 10009 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-US/2elegant.ottbin0 -> 14214 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-US/3modern.ottbin0 -> 10529 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-US/4classic.ottbin0 -> 10011 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-US/5blue.ottbin0 -> 10088 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-US/6orange.ottbin0 -> 10529 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-US/7red.ottbin0 -> 10493 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-US/8green.ottbin0 -> 10202 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-US/9colorful.ottbin0 -> 10047 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-US/aw-10grey.ottbin0 -> 10240 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-US/aw-1simple.ottbin0 -> 10009 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-US/aw-2elegant.ottbin0 -> 14215 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-US/aw-3modern.ottbin0 -> 10529 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-US/aw-4classic.ottbin0 -> 10011 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-US/aw-5blue.ottbin0 -> 10087 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-US/aw-6orange.ottbin0 -> 10530 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-US/aw-7red.ottbin0 -> 12159 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-US/aw-8green.ottbin0 -> 10202 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/en-US/aw-9colorful.ottbin0 -> 10087 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/es/10grey.ottbin0 -> 10132 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/es/1simple.ottbin0 -> 10132 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/es/2elegant.ottbin0 -> 11890 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/es/3modern.ottbin0 -> 10348 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/es/4classic.ottbin0 -> 9747 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/es/5blue.ottbin0 -> 9809 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/es/6orange.ottbin0 -> 10466 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/es/7red.ottbin0 -> 10515 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/es/8green.ottbin0 -> 10058 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/es/9colorful.ottbin0 -> 9853 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/es/aw-10grey.ottbin0 -> 10132 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/es/aw-1simple.ottbin0 -> 9829 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/es/aw-2elegant.ottbin0 -> 11890 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/es/aw-3modern.ottbin0 -> 10701 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/es/aw-4classic.ottbin0 -> 9747 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/es/aw-5blue.ottbin0 -> 9809 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/es/aw-6orange.ottbin0 -> 10466 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/es/aw-7red.ottbin0 -> 10132 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/es/aw-8green.ottbin0 -> 10058 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/es/aw-9colorful.ottbin0 -> 9853 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/eu/10grey.ottbin0 -> 14000 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/eu/1simple.ottbin0 -> 13888 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/eu/2elegant.ottbin0 -> 19679 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/eu/3modern.ottbin0 -> 14841 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/eu/4classic.ottbin0 -> 13315 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/eu/5blue.ottbin0 -> 13192 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/eu/6orange.ottbin0 -> 13903 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/eu/7red.ottbin0 -> 13847 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/eu/8green.ottbin0 -> 13568 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/eu/9colorful.ottbin0 -> 13214 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/eu/aw-10grey.ottbin0 -> 13957 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/eu/aw-1simple.ottbin0 -> 14397 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/eu/aw-2elegant.ottbin0 -> 18599 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/eu/aw-3modern.ottbin0 -> 14874 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/eu/aw-4classic.ottbin0 -> 13876 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/eu/aw-5blue.ottbin0 -> 13765 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/eu/aw-6orange.ottbin0 -> 14456 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/eu/aw-7red.ottbin0 -> 14196 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/eu/aw-8green.ottbin0 -> 14087 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/eu/aw-9colorful.ottbin0 -> 13735 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/fr/10grey.ottbin0 -> 10184 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/fr/1simple.ottbin0 -> 9834 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/fr/2elegant.ottbin0 -> 11884 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/fr/3modern.ottbin0 -> 10422 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/fr/4classic.ottbin0 -> 9807 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/fr/5blue.ottbin0 -> 9873 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/fr/6orange.ottbin0 -> 10435 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/fr/7red.ottbin0 -> 10170 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/fr/8green.ottbin0 -> 10129 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/fr/9colorful.ottbin0 -> 9923 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/fr/aw-10grey.ottbin0 -> 10184 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/fr/aw-1simple.ottbin0 -> 9832 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/fr/aw-2elegant.ottbin0 -> 11884 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/fr/aw-3modern.ottbin0 -> 10422 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/fr/aw-4classic.ottbin0 -> 9807 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/fr/aw-5blue.ottbin0 -> 9873 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/fr/aw-6orange.ottbin0 -> 10435 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/fr/aw-7red.ottbin0 -> 10170 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/fr/aw-8green.ottbin0 -> 10129 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/fr/aw-9colorful.ottbin0 -> 9923 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/hu/10grey.ottbin0 -> 12232 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/hu/1simple.ottbin0 -> 11858 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/hu/2elegant.ottbin0 -> 16589 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/hu/3modern.ottbin0 -> 12428 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/hu/4classic.ottbin0 -> 11631 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/hu/5blue.ottbin0 -> 11964 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/hu/6orange.ottbin0 -> 12340 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/hu/7red.ottbin0 -> 12390 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/hu/8green.ottbin0 -> 11918 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/hu/9colorful.ottbin0 -> 11942 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/hu/aw-10grey.ottbin0 -> 12232 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/hu/aw-1simple.ottbin0 -> 11858 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/hu/aw-2elegant.ottbin0 -> 16589 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/hu/aw-3modern.ottbin0 -> 12428 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/hu/aw-4classic.ottbin0 -> 11631 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/hu/aw-5blue.ottbin0 -> 11964 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/hu/aw-6orange.ottbin0 -> 12340 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/hu/aw-7red.ottbin0 -> 12390 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/hu/aw-8green.ottbin0 -> 11918 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/hu/aw-9colorful.ottbin0 -> 11942 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/it/10grey.ottbin0 -> 10174 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/it/1simple.ottbin0 -> 9822 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/it/2elegant.ottbin0 -> 11869 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/it/3modern.ottbin0 -> 10363 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/it/4classic.ottbin0 -> 9739 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/it/5blue.ottbin0 -> 9814 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/it/6orange.ottbin0 -> 10441 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/it/7red.ottbin0 -> 10155 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/it/8green.ottbin0 -> 10089 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/it/9colorful.ottbin0 -> 9851 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/it/aw-10grey.ottbin0 -> 10174 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/it/aw-1simple.ottbin0 -> 9822 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/it/aw-2elegant.ottbin0 -> 11869 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/it/aw-3modern.ottbin0 -> 10363 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/it/aw-4classic.ottbin0 -> 9739 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/it/aw-5blue.ottbin0 -> 9814 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/it/aw-6orange.ottbin0 -> 10441 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/it/aw-7red.ottbin0 -> 10684 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/it/aw-8green.ottbin0 -> 10089 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/it/aw-9colorful.ottbin0 -> 9851 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ja/10grey.ottbin0 -> 12733 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ja/1simple.ottbin0 -> 12404 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ja/2elegant.ottbin0 -> 14509 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ja/3modern.ottbin0 -> 12961 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ja/4classic.ottbin0 -> 12350 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ja/5blue.ottbin0 -> 12366 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ja/6orange.ottbin0 -> 13043 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ja/7red.ottbin0 -> 12805 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ja/8green.ottbin0 -> 12665 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ja/9colorful.ottbin0 -> 12428 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ja/aw-10grey.ottbin0 -> 12733 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ja/aw-1simple.ottbin0 -> 12404 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ja/aw-2elegant.ottbin0 -> 14509 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ja/aw-3modern.ottbin0 -> 12961 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ja/aw-4classic.ottbin0 -> 12350 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ja/aw-5blue.ottbin0 -> 12366 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ja/aw-6orange.ottbin0 -> 13043 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ja/aw-7red.ottbin0 -> 12805 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ja/aw-8green.ottbin0 -> 12665 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ja/aw-9colorful.ottbin0 -> 12428 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/km/10grey.ottbin0 -> 12935 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/km/1simple.ottbin0 -> 12448 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/km/2elegant.ottbin0 -> 17523 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/km/3modern.ottbin0 -> 13146 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/km/4classic.ottbin0 -> 12522 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/km/5blue.ottbin0 -> 12777 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/km/6orange.ottbin0 -> 13284 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/km/7red.ottbin0 -> 13099 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/km/8green.ottbin0 -> 12964 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/km/9colorful.ottbin0 -> 12807 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/km/aw-10grey.ottbin0 -> 12927 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/km/aw-1simple.ottbin0 -> 12470 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/km/aw-2elegant.ottbin0 -> 17599 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/km/aw-3modern.ottbin0 -> 13225 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/km/aw-4classic.ottbin0 -> 12542 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/km/aw-5blue.ottbin0 -> 12816 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/km/aw-6orange.ottbin0 -> 13351 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/km/aw-7red.ottbin0 -> 12882 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/km/aw-8green.ottbin0 -> 12888 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/km/aw-9colorful.ottbin0 -> 12863 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ko/10grey.ottbin0 -> 12702 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ko/1simple.ottbin0 -> 12363 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ko/2elegant.ottbin0 -> 14482 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ko/3modern.ottbin0 -> 12951 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ko/4classic.ottbin0 -> 12294 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ko/5blue.ottbin0 -> 12362 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ko/6orange.ottbin0 -> 13035 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ko/7red.ottbin0 -> 10823 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ko/8green.ottbin0 -> 12654 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ko/9colorful.ottbin0 -> 12381 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ko/aw-10grey.ottbin0 -> 12702 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ko/aw-1simple.ottbin0 -> 12363 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ko/aw-2elegant.ottbin0 -> 14482 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ko/aw-3modern.ottbin0 -> 13538 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ko/aw-4classic.ottbin0 -> 10263 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ko/aw-5blue.ottbin0 -> 12362 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ko/aw-6orange.ottbin0 -> 13035 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ko/aw-7red.ottbin0 -> 12714 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ko/aw-8green.ottbin0 -> 12654 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ko/aw-9colorful.ottbin0 -> 12381 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/makefile.mk47
-rw-r--r--extras/source/templates/wizard/agenda/lang/nl/10grey.ottbin0 -> 12008 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/nl/1simple.ottbin0 -> 11796 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/nl/2elegant.ottbin0 -> 16528 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/nl/3modern.ottbin0 -> 12231 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/nl/4classic.ottbin0 -> 11684 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/nl/5blue.ottbin0 -> 11856 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/nl/6orange.ottbin0 -> 12263 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/nl/7red.ottbin0 -> 12230 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/nl/8green.ottbin0 -> 11827 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/nl/9colorful.ottbin0 -> 11872 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/nl/aw-10grey.ottbin0 -> 12008 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/nl/aw-1simple.ottbin0 -> 11796 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/nl/aw-2elegant.ottbin0 -> 16528 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/nl/aw-3modern.ottbin0 -> 12261 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/nl/aw-4classic.ottbin0 -> 11684 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/nl/aw-5blue.ottbin0 -> 11856 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/nl/aw-6orange.ottbin0 -> 12263 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/nl/aw-7red.ottbin0 -> 12260 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/nl/aw-8green.ottbin0 -> 11857 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/nl/aw-9colorful.ottbin0 -> 11872 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pl/10grey.ottbin0 -> 11315 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pl/1simple.ottbin0 -> 12791 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pl/2elegant.ottbin0 -> 17591 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pl/3modern.ottbin0 -> 11235 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pl/4classic.ottbin0 -> 12694 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pl/5blue.ottbin0 -> 12784 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pl/6orange.ottbin0 -> 13261 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pl/7red.ottbin0 -> 11278 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pl/8green.ottbin0 -> 11109 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pl/9colorful.ottbin0 -> 12881 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pl/aw-10grey.ottbin0 -> 13107 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pl/aw-1simple.ottbin0 -> 12806 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pl/aw-2elegant.ottbin0 -> 17608 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pl/aw-3modern.ottbin0 -> 13273 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pl/aw-4classic.ottbin0 -> 12709 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pl/aw-5blue.ottbin0 -> 12799 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pl/aw-6orange.ottbin0 -> 13276 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pl/aw-7red.ottbin0 -> 13225 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pl/aw-8green.ottbin0 -> 12840 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pl/aw-9colorful.ottbin0 -> 12896 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt-BR/10grey.ottbin0 -> 10175 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt-BR/1simple.ottbin0 -> 9833 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt-BR/2elegant.ottbin0 -> 11890 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt-BR/3modern.ottbin0 -> 10395 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt-BR/4classic.ottbin0 -> 9767 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt-BR/5blue.ottbin0 -> 9855 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt-BR/6orange.ottbin0 -> 10467 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt-BR/7red.ottbin0 -> 10167 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt-BR/8green.ottbin0 -> 10009 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt-BR/9colorful.ottbin0 -> 9892 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt-BR/aw-10grey.ottbin0 -> 10175 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt-BR/aw-1simple.ottbin0 -> 9833 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt-BR/aw-2elegant.ottbin0 -> 11890 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt-BR/aw-3modern.ottbin0 -> 10395 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt-BR/aw-4classic.ottbin0 -> 9767 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt-BR/aw-5blue.ottbin0 -> 9855 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt-BR/aw-6orange.ottbin0 -> 10467 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt-BR/aw-7red.ottbin0 -> 10167 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt-BR/aw-8green.ottbin0 -> 10009 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt-BR/aw-9colorful.ottbin0 -> 9892 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt/10grey.ottbin0 -> 12846 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt/1simple.ottbin0 -> 12739 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt/2elegant.ottbin0 -> 17215 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt/3modern.ottbin0 -> 13615 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt/4classic.ottbin0 -> 12486 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt/5blue.ottbin0 -> 12539 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt/6orange.ottbin0 -> 13032 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt/7red.ottbin0 -> 12998 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt/8green.ottbin0 -> 12685 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt/9colorful.ottbin0 -> 12670 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt/aw-10grey.ottbin0 -> 12846 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt/aw-1simple.ottbin0 -> 12743 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt/aw-2elegant.ottbin0 -> 17203 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt/aw-3modern.ottbin0 -> 13614 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt/aw-4classic.ottbin0 -> 12485 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt/aw-5blue.ottbin0 -> 12539 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt/aw-6orange.ottbin0 -> 13032 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt/aw-7red.ottbin0 -> 12999 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt/aw-8green.ottbin0 -> 12694 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/pt/aw-9colorful.ottbin0 -> 12671 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ru/10grey.ottbin0 -> 12347 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ru/1simple.ottbin0 -> 12120 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ru/2elegant.ottbin0 -> 16668 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ru/3modern.ottbin0 -> 13134 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ru/4classic.ottbin0 -> 11954 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ru/5blue.ottbin0 -> 12066 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ru/6orange.ottbin0 -> 12519 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ru/7red.ottbin0 -> 12502 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ru/8green.ottbin0 -> 12152 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ru/9colorful.ottbin0 -> 12217 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ru/aw-10grey.ottbin0 -> 12347 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ru/aw-1simple.ottbin0 -> 12120 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ru/aw-2elegant.ottbin0 -> 16670 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ru/aw-3modern.ottbin0 -> 13135 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ru/aw-4classic.ottbin0 -> 11954 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ru/aw-5blue.ottbin0 -> 12066 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ru/aw-6orange.ottbin0 -> 12519 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ru/aw-7red.ottbin0 -> 12501 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ru/aw-8green.ottbin0 -> 12152 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/ru/aw-9colorful.ottbin0 -> 11078 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sk/10grey.ottbin0 -> 11317 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sk/1simple.ottbin0 -> 11090 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sk/2elegant.ottbin0 -> 15913 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sk/3modern.ottbin0 -> 11699 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sk/4classic.ottbin0 -> 11077 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sk/5blue.ottbin0 -> 11138 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sk/6orange.ottbin0 -> 11662 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sk/7red.ottbin0 -> 11532 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sk/8green.ottbin0 -> 11419 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sk/9colorful.ottbin0 -> 11090 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sk/aw-10grey.ottbin0 -> 11395 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sk/aw-1simple.ottbin0 -> 11123 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sk/aw-2elegant.ottbin0 -> 15917 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sk/aw-3modern.ottbin0 -> 11704 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sk/aw-4classic.ottbin0 -> 11075 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sk/aw-5blue.ottbin0 -> 11142 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sk/aw-6orange.ottbin0 -> 11662 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sk/aw-7red.ottbin0 -> 11532 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sk/aw-8green.ottbin0 -> 11419 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sk/aw-9colorful.ottbin0 -> 11090 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sl/10grey.ottbin0 -> 10976 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sl/1simple.ottbin0 -> 10450 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sl/2elegant.ottbin0 -> 15402 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sl/3modern.ottbin0 -> 11342 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sl/4classic.ottbin0 -> 10612 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sl/5blue.ottbin0 -> 10752 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sl/6orange.ottbin0 -> 11226 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sl/7red.ottbin0 -> 11158 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sl/8green.ottbin0 -> 10914 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sl/9colorful.ottbin0 -> 10717 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sl/aw-10grey.ottbin0 -> 10946 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sl/aw-1simple.ottbin0 -> 10616 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sl/aw-2elegant.ottbin0 -> 15434 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sl/aw-3modern.ottbin0 -> 11408 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sl/aw-4classic.ottbin0 -> 10604 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sl/aw-5blue.ottbin0 -> 10731 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sl/aw-6orange.ottbin0 -> 11286 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sl/aw-7red.ottbin0 -> 11003 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sl/aw-8green.ottbin0 -> 11001 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sl/aw-9colorful.ottbin0 -> 10737 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sv/10grey.ottbin0 -> 10138 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sv/1simple.ottbin0 -> 9812 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sv/2elegant.ottbin0 -> 11839 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sv/3modern.ottbin0 -> 10410 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sv/4classic.ottbin0 -> 9722 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sv/5blue.ottbin0 -> 9798 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sv/6orange.ottbin0 -> 10389 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sv/7red.ottbin0 -> 10179 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sv/8green.ottbin0 -> 10103 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sv/9colorful.ottbin0 -> 9824 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sv/aw-10grey.ottbin0 -> 10138 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sv/aw-1simple.ottbin0 -> 9812 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sv/aw-2elegant.ottbin0 -> 11839 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sv/aw-3modern.ottbin0 -> 10410 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sv/aw-4classic.ottbin0 -> 9722 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sv/aw-5blue.ottbin0 -> 9798 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sv/aw-6orange.ottbin0 -> 10389 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sv/aw-7red.ottbin0 -> 10179 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sv/aw-8green.ottbin0 -> 10103 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/sv/aw-9colorful.ottbin0 -> 9824 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/tr/10grey.ottbin0 -> 12001 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/tr/1simple.ottbin0 -> 11939 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/tr/2elegant.ottbin0 -> 16514 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/tr/3modern.ottbin0 -> 12223 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/tr/4classic.ottbin0 -> 11486 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/tr/5blue.ottbin0 -> 11803 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/tr/6orange.ottbin0 -> 12242 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/tr/7red.ottbin0 -> 12294 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/tr/8green.ottbin0 -> 11770 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/tr/9colorful.ottbin0 -> 11806 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/tr/aw-10grey.ottbin0 -> 11998 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/tr/aw-1simple.ottbin0 -> 11748 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/tr/aw-2elegant.ottbin0 -> 16475 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/tr/aw-3modern.ottbin0 -> 12220 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/tr/aw-4classic.ottbin0 -> 11481 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/tr/aw-5blue.ottbin0 -> 11883 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/tr/aw-6orange.ottbin0 -> 12242 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/tr/aw-7red.ottbin0 -> 11772 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/tr/aw-8green.ottbin0 -> 11772 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/tr/aw-9colorful.ottbin0 -> 11853 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/vi/10grey.ottbin0 -> 12525 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/vi/1simple.ottbin0 -> 12597 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/vi/2elegant.ottbin0 -> 17620 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/vi/3modern.ottbin0 -> 12895 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/vi/4classic.ottbin0 -> 12431 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/vi/5blue.ottbin0 -> 12364 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/vi/6orange.ottbin0 -> 12871 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/vi/7red.ottbin0 -> 12743 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/vi/8green.ottbin0 -> 12661 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/vi/9colorful.ottbin0 -> 12297 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/vi/aw-10grey.ottbin0 -> 12642 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/vi/aw-1simple.ottbin0 -> 12743 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/vi/aw-2elegant.ottbin0 -> 17682 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/vi/aw-3modern.ottbin0 -> 13049 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/vi/aw-4classic.ottbin0 -> 12502 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/vi/aw-5blue.ottbin0 -> 12412 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/vi/aw-6orange.ottbin0 -> 12893 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/vi/aw-7red.ottbin0 -> 12858 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/vi/aw-8green.ottbin0 -> 12745 bytes-rwxr-xr-xextras/source/templates/wizard/agenda/lang/vi/aw-9colorful.ottbin0 -> 12315 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-CN/10grey.ottbin0 -> 12735 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-CN/1simple.ottbin0 -> 12394 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-CN/2elegant.ottbin0 -> 16460 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-CN/3modern.ottbin0 -> 12957 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-CN/4classic.ottbin0 -> 12316 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-CN/5blue.ottbin0 -> 12372 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-CN/6orange.ottbin0 -> 13030 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-CN/7red.ottbin0 -> 12780 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-CN/8green.ottbin0 -> 12679 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-CN/9colorful.ottbin0 -> 12406 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-CN/aw-10grey.ottbin0 -> 12735 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-CN/aw-1simple.ottbin0 -> 12394 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-CN/aw-2elegant.ottbin0 -> 16534 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-CN/aw-3modern.ottbin0 -> 12957 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-CN/aw-4classic.ottbin0 -> 12316 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-CN/aw-5blue.ottbin0 -> 12372 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-CN/aw-6orange.ottbin0 -> 13030 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-CN/aw-7red.ottbin0 -> 12780 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-CN/aw-8green.ottbin0 -> 12679 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-CN/aw-9colorful.ottbin0 -> 12406 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-TW/10grey.ottbin0 -> 12720 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-TW/1simple.ottbin0 -> 12380 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-TW/2elegant.ottbin0 -> 16478 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-TW/3modern.ottbin0 -> 12970 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-TW/4classic.ottbin0 -> 12314 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-TW/5blue.ottbin0 -> 12372 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-TW/6orange.ottbin0 -> 13057 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-TW/7red.ottbin0 -> 12743 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-TW/8green.ottbin0 -> 12691 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-TW/9colorful.ottbin0 -> 12408 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-TW/aw-10grey.ottbin0 -> 12720 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-TW/aw-1simple.ottbin0 -> 12380 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-TW/aw-2elegant.ottbin0 -> 16559 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-TW/aw-3modern.ottbin0 -> 12970 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-TW/aw-4classic.ottbin0 -> 12314 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-TW/aw-5blue.ottbin0 -> 12372 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-TW/aw-6orange.ottbin0 -> 13057 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-TW/aw-7red.ottbin0 -> 12743 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-TW/aw-8green.ottbin0 -> 12691 bytes-rw-r--r--extras/source/templates/wizard/agenda/lang/zh-TW/aw-9colorful.ottbin0 -> 12408 bytes-rw-r--r--extras/source/templates/wizard/bitmap/Import_1.bmpbin0 -> 66480 bytes-rw-r--r--extras/source/templates/wizard/bitmap/Import_3.bmpbin0 -> 66480 bytes-rw-r--r--extras/source/templates/wizard/bitmap/Import_4.bmpbin0 -> 66480 bytes-rw-r--r--extras/source/templates/wizard/bitmap/MS-Import_2-1.bmpbin0 -> 66480 bytes-rw-r--r--extras/source/templates/wizard/bitmap/MS-Import_2-2.bmpbin0 -> 66480 bytes-rw-r--r--extras/source/templates/wizard/bitmap/MS-Import_2-3.bmpbin0 -> 66480 bytes-rw-r--r--extras/source/templates/wizard/bitmap/XML-Import_2-1.bmpbin0 -> 66480 bytes-rw-r--r--extras/source/templates/wizard/bitmap/XML-Import_2-2.bmpbin0 -> 66480 bytes-rw-r--r--extras/source/templates/wizard/bitmap/XML-Import_2-3.bmpbin0 -> 66480 bytes-rw-r--r--extras/source/templates/wizard/bitmap/XML-Import_2-4.bmpbin0 -> 66480 bytes-rw-r--r--extras/source/templates/wizard/bitmap/brasil.gifbin0 -> 6075 bytes-rw-r--r--extras/source/templates/wizard/bitmap/cancel_down.bmpbin0 -> 416 bytes-rw-r--r--extras/source/templates/wizard/bitmap/cancel_up.bmpbin0 -> 416 bytes-rw-r--r--extras/source/templates/wizard/bitmap/china.gifbin0 -> 10764 bytes-rw-r--r--extras/source/templates/wizard/bitmap/delzip0
-rw-r--r--extras/source/templates/wizard/bitmap/denmark.gifbin0 -> 12229 bytes-rw-r--r--extras/source/templates/wizard/bitmap/down.bmpbin0 -> 644 bytes-rw-r--r--extras/source/templates/wizard/bitmap/end.bmpbin0 -> 13190 bytes-rw-r--r--extras/source/templates/wizard/bitmap/euro_1.bmpbin0 -> 23344 bytes-rw-r--r--extras/source/templates/wizard/bitmap/euro_2.bmpbin0 -> 66480 bytes-rw-r--r--extras/source/templates/wizard/bitmap/euro_3.bmpbin0 -> 66480 bytes-rw-r--r--extras/source/templates/wizard/bitmap/finland.gifbin0 -> 9569 bytes-rw-r--r--extras/source/templates/wizard/bitmap/france.gifbin0 -> 7934 bytes-rw-r--r--extras/source/templates/wizard/bitmap/ftpconnected.gifbin0 -> 114 bytes-rw-r--r--extras/source/templates/wizard/bitmap/ftpconnecting.gifbin0 -> 166 bytes-rw-r--r--extras/source/templates/wizard/bitmap/ftperror.gifbin0 -> 123 bytes-rw-r--r--extras/source/templates/wizard/bitmap/ftpunknown.gifbin0 -> 152 bytes-rw-r--r--extras/source/templates/wizard/bitmap/germany.wmfbin0 -> 18306 bytes-rw-r--r--extras/source/templates/wizard/bitmap/greece.gifbin0 -> 13597 bytes-rw-r--r--extras/source/templates/wizard/bitmap/italia.gifbin0 -> 11213 bytes-rw-r--r--extras/source/templates/wizard/bitmap/japan.gifbin0 -> 7283 bytes-rw-r--r--extras/source/templates/wizard/bitmap/makefile.mk47
-rw-r--r--extras/source/templates/wizard/bitmap/maximize.bmpbin0 -> 822 bytes-rw-r--r--extras/source/templates/wizard/bitmap/minimize.bmpbin0 -> 726 bytes-rw-r--r--extras/source/templates/wizard/bitmap/netherlands.gifbin0 -> 8639 bytes-rw-r--r--extras/source/templates/wizard/bitmap/okay_down.bmpbin0 -> 416 bytes-rw-r--r--extras/source/templates/wizard/bitmap/okay_up.bmpbin0 -> 416 bytes-rw-r--r--extras/source/templates/wizard/bitmap/polska.gifbin0 -> 7839 bytes-rw-r--r--extras/source/templates/wizard/bitmap/portugal.gifbin0 -> 5638 bytes-rw-r--r--extras/source/templates/wizard/bitmap/report.bmpbin0 -> 15744 bytes-rw-r--r--extras/source/templates/wizard/bitmap/russia.gifbin0 -> 7711 bytes-rw-r--r--extras/source/templates/wizard/bitmap/spain.gifbin0 -> 6863 bytes-rw-r--r--extras/source/templates/wizard/bitmap/sweden.gifbin0 -> 8605 bytes-rw-r--r--extras/source/templates/wizard/bitmap/taiwan.gifbin0 -> 4900 bytes-rw-r--r--extras/source/templates/wizard/bitmap/turkey.gifbin0 -> 6000 bytes-rw-r--r--extras/source/templates/wizard/bitmap/tutorial_background.gifbin0 -> 1888 bytes-rw-r--r--extras/source/templates/wizard/bitmap/up.bmpbin0 -> 644 bytes-rw-r--r--extras/source/templates/wizard/bitmap/usa.gifbin0 -> 7208 bytes-rw-r--r--extras/source/templates/wizard/desktop/delzip1
-rw-r--r--extras/source/templates/wizard/desktop/lang/bg/html.stwbin0 -> 5305 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/bg/idxexample.odtbin0 -> 21286 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/bg/url_transfer.htm87
-rw-r--r--extras/source/templates/wizard/desktop/lang/cs/idxexample.odtbin0 -> 21272 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/cs/url_transfer.htm83
-rw-r--r--extras/source/templates/wizard/desktop/lang/da/html.stwbin0 -> 5227 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/da/idxexample.odtbin0 -> 21140 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/da/url_transfer.htm81
-rw-r--r--extras/source/templates/wizard/desktop/lang/de/html.stwbin0 -> 5335 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/de/idxexample.odtbin0 -> 21157 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/de/url_transfer.htm85
-rw-r--r--extras/source/templates/wizard/desktop/lang/delzip2
-rw-r--r--extras/source/templates/wizard/desktop/lang/en-GB/html.stwbin0 -> 6140 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/en-GB/idxexample.odtbin0 -> 21837 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/en-GB/url_transfer.htm92
-rw-r--r--extras/source/templates/wizard/desktop/lang/en-US/html.stwbin0 -> 5335 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/en-US/idxexample.odtbin0 -> 21126 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/en-US/url_transfer.htm83
-rw-r--r--extras/source/templates/wizard/desktop/lang/es/html.stwbin0 -> 5335 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/es/idxexample.odtbin0 -> 21146 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/es/url_transfer.htm85
-rwxr-xr-xextras/source/templates/wizard/desktop/lang/eu/html.stwbin0 -> 5335 bytes-rwxr-xr-xextras/source/templates/wizard/desktop/lang/eu/idxexample.odtbin0 -> 22234 bytes-rwxr-xr-xextras/source/templates/wizard/desktop/lang/eu/url_transfer.htm80
-rw-r--r--extras/source/templates/wizard/desktop/lang/fr/html.stwbin0 -> 5335 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/fr/idxexample.odtbin0 -> 21152 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/fr/url_transfer.htm86
-rwxr-xr-xextras/source/templates/wizard/desktop/lang/hu/html.stwbin0 -> 5335 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/hu/idxexample.odtbin0 -> 21196 bytes-rwxr-xr-xextras/source/templates/wizard/desktop/lang/hu/url_transfer.htm83
-rw-r--r--extras/source/templates/wizard/desktop/lang/it/html.stwbin0 -> 5335 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/it/idxexample.odtbin0 -> 21150 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/it/url_transfer.htm84
-rw-r--r--extras/source/templates/wizard/desktop/lang/ja/html.stwbin0 -> 5529 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/ja/idxexample.odtbin0 -> 24039 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/ja/url_transfer.htm100
-rw-r--r--extras/source/templates/wizard/desktop/lang/km/html.stwbin0 -> 5335 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/km/idxexample.odtbin0 -> 21643 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/km/url_transfer.htm100
-rw-r--r--extras/source/templates/wizard/desktop/lang/ko/html.stwbin0 -> 5482 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/ko/idxexample.odtbin0 -> 24086 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/ko/url_transfer.htm96
-rw-r--r--extras/source/templates/wizard/desktop/lang/makefile.mk47
-rw-r--r--extras/source/templates/wizard/desktop/lang/nl/html.stwbin0 -> 7211 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/nl/idxexample.odtbin0 -> 9361 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/nl/url_transfer.htm82
-rw-r--r--extras/source/templates/wizard/desktop/lang/pl/idxexample.odtbin0 -> 13229 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/pl/url_transfer.htm84
-rw-r--r--extras/source/templates/wizard/desktop/lang/pt-BR/html.stwbin0 -> 7141 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/pt-BR/idxexample.odtbin0 -> 21200 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/pt-BR/url_transfer.htm93
-rw-r--r--extras/source/templates/wizard/desktop/lang/pt/html.stwbin0 -> 8091 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/pt/idxexample.odtbin0 -> 9339 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/pt/url_transfer.htm83
-rw-r--r--extras/source/templates/wizard/desktop/lang/ru/idxexample.odtbin0 -> 13458 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/ru/url_transfer.htm83
-rw-r--r--extras/source/templates/wizard/desktop/lang/sk/html.stwbin0 -> 6059 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/sk/idxexample.odtbin0 -> 9399 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/sk/url_transfer.htm83
-rw-r--r--extras/source/templates/wizard/desktop/lang/sl/html.stwbin0 -> 5229 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/sl/idxexample.odtbin0 -> 21320 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/sl/idxexample.sxwbin0 -> 20352 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/sl/url_transfer.htm82
-rw-r--r--extras/source/templates/wizard/desktop/lang/sv/html.stwbin0 -> 5335 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/sv/idxexample.odtbin0 -> 21170 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/sv/url_transfer.htm83
-rwxr-xr-xextras/source/templates/wizard/desktop/lang/vi/html.stwbin0 -> 5335 bytes-rwxr-xr-xextras/source/templates/wizard/desktop/lang/vi/idxexample.odtbin0 -> 22170 bytes-rwxr-xr-xextras/source/templates/wizard/desktop/lang/vi/url_transfer.htm83
-rw-r--r--extras/source/templates/wizard/desktop/lang/zh-CN/html.stwbin0 -> 5877 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/zh-CN/idxexample.odtbin0 -> 24054 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/zh-CN/url_transfer.htm94
-rw-r--r--extras/source/templates/wizard/desktop/lang/zh-TW/html.stwbin0 -> 5930 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/zh-TW/idxexample.odtbin0 -> 24033 bytes-rw-r--r--extras/source/templates/wizard/desktop/lang/zh-TW/url_transfer.htm98
-rw-r--r--extras/source/templates/wizard/desktop/makefile.mk49
-rw-r--r--extras/source/templates/wizard/fax/lang/bg/bus-classic-pri_f.ottbin0 -> 13962 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/bg/bus-classic_f.ottbin0 -> 26328 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/bg/bus-modern-pri_f.ottbin0 -> 13895 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/bg/bus-modern_f.ottbin0 -> 26302 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/bg/pri-bottle_f.ottbin0 -> 48536 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/bg/pri-fax_f.ottbin0 -> 58797 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/bg/pri-lines_f.ottbin0 -> 12413 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/bg/pri-marine_f.ottbin0 -> 19615 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/cs/bus-classic-pri_f.ottbin0 -> 14002 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/cs/bus-classic_f.ottbin0 -> 26389 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/cs/bus-modern-pri_f.ottbin0 -> 13887 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/cs/bus-modern_f.ottbin0 -> 26295 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/cs/pri-bottle_f.ottbin0 -> 48469 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/cs/pri-fax_f.ottbin0 -> 58690 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/cs/pri-lines_f.ottbin0 -> 12506 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/cs/pri-marine_f.ottbin0 -> 19556 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/da/bus-classic-pri_f.ottbin0 -> 13247 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/da/bus-classic_f.ottbin0 -> 25604 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/da/bus-modern-pri_f.ottbin0 -> 13210 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/da/bus-modern_f.ottbin0 -> 25500 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/da/pri-bottle_f.ottbin0 -> 47905 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/da/pri-fax_f.ottbin0 -> 58181 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/da/pri-lines_f.ottbin0 -> 11991 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/da/pri-marine_f.ottbin0 -> 19005 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/de/bus-classic-pri_f.ottbin0 -> 16876 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/de/bus-classic_f.ottbin0 -> 29457 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/de/bus-modern-pri_f.ottbin0 -> 16793 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/de/bus-modern_f.ottbin0 -> 29437 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/de/pri-bottle_f.ottbin0 -> 50477 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/de/pri-fax_f.ottbin0 -> 60698 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/de/pri-lines_f.ottbin0 -> 14361 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/de/pri-marine_f.ottbin0 -> 21451 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/delzip1
-rw-r--r--extras/source/templates/wizard/fax/lang/en-GB/bus-classic-pri_f.ottbin0 -> 14266 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/en-GB/bus-classic_f.ottbin0 -> 26573 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/en-GB/bus-modern-pri_f.ottbin0 -> 14167 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/en-GB/bus-modern_f.ottbin0 -> 26458 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/en-GB/pri-bottle_f.ottbin0 -> 48319 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/en-GB/pri-fax_f.ottbin0 -> 58632 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/en-GB/pri-lines_f.ottbin0 -> 12445 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/en-GB/pri-marine_f.ottbin0 -> 19486 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/en-US/bus-classic-pri_f.ottbin0 -> 13433 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/en-US/bus-classic_f.ottbin0 -> 25806 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/en-US/bus-modern-pri_f.ottbin0 -> 13391 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/en-US/bus-modern_f.ottbin0 -> 25693 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/en-US/pri-bottle_f.ottbin0 -> 48122 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/en-US/pri-fax_f.ottbin0 -> 58398 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/en-US/pri-lines_f.ottbin0 -> 12192 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/en-US/pri-marine_f.ottbin0 -> 19214 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/es/bus-classic-pri_f.ottbin0 -> 13013 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/es/bus-classic_f.ottbin0 -> 13717 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/es/bus-modern-pri_f.ottbin0 -> 12972 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/es/bus-modern_f.ottbin0 -> 13752 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/es/pri-bottle_f.ottbin0 -> 47907 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/es/pri-fax_f.ottbin0 -> 58176 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/es/pri-lines_f.ottbin0 -> 11998 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/es/pri-marine_f.ottbin0 -> 19028 bytes-rwxr-xr-xextras/source/templates/wizard/fax/lang/eu/bus-classic-pri_f.ottbin0 -> 16130 bytes-rwxr-xr-xextras/source/templates/wizard/fax/lang/eu/bus-classic_f.ottbin0 -> 28403 bytes-rwxr-xr-xextras/source/templates/wizard/fax/lang/eu/bus-modern-pri_f.ottbin0 -> 16032 bytes-rwxr-xr-xextras/source/templates/wizard/fax/lang/eu/bus-modern_f.ottbin0 -> 28356 bytes-rwxr-xr-xextras/source/templates/wizard/fax/lang/eu/pri-bottle_f.ottbin0 -> 49792 bytes-rwxr-xr-xextras/source/templates/wizard/fax/lang/eu/pri-fax_f.ottbin0 -> 60089 bytes-rwxr-xr-xextras/source/templates/wizard/fax/lang/eu/pri-lines_f.ottbin0 -> 13823 bytes-rwxr-xr-xextras/source/templates/wizard/fax/lang/eu/pri-marine_f.ottbin0 -> 20942 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/fr/bus-classic-pri_f.ottbin0 -> 17369 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/fr/bus-classic_f.ottbin0 -> 17470 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/fr/bus-modern-pri_f.ottbin0 -> 17295 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/fr/bus-modern_f.ottbin0 -> 17445 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/fr/pri-bottle_f.ottbin0 -> 52227 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/fr/pri-fax_f.ottbin0 -> 62441 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/fr/pri-lines_f.ottbin0 -> 15884 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/fr/pri-marine_f.ottbin0 -> 23099 bytes-rwxr-xr-xextras/source/templates/wizard/fax/lang/hu/bus-classic-pri_f.ottbin0 -> 15321 bytes-rwxr-xr-xextras/source/templates/wizard/fax/lang/hu/bus-classic_f.ottbin0 -> 27827 bytes-rwxr-xr-xextras/source/templates/wizard/fax/lang/hu/bus-modern-pri_f.ottbin0 -> 15210 bytes-rwxr-xr-xextras/source/templates/wizard/fax/lang/hu/bus-modern_f.ottbin0 -> 27671 bytes-rwxr-xr-xextras/source/templates/wizard/fax/lang/hu/pri-bottle_f.ottbin0 -> 48943 bytes-rwxr-xr-xextras/source/templates/wizard/fax/lang/hu/pri-fax_f.ottbin0 -> 59204 bytes-rwxr-xr-xextras/source/templates/wizard/fax/lang/hu/pri-lines_f.ottbin0 -> 12935 bytes-rwxr-xr-xextras/source/templates/wizard/fax/lang/hu/pri-marine_f.ottbin0 -> 20155 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/it/bus-classic-pri_f.ottbin0 -> 15872 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/it/bus-classic_f.ottbin0 -> 16076 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/it/bus-modern-pri_f.ottbin0 -> 15969 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/it/bus-modern_f.ottbin0 -> 16295 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/it/pri-bottle_f.ottbin0 -> 50212 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/it/pri-fax_f.ottbin0 -> 60326 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/it/pri-lines_f.ottbin0 -> 13799 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/it/pri-marine_f.ottbin0 -> 21243 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/ja/bus-classic-pri_f.ottbin0 -> 13383 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/ja/bus-classic_f.ottbin0 -> 14053 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/ja/bus-modern-pri_f.ottbin0 -> 13319 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/ja/bus-modern_f.ottbin0 -> 14128 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/ja/pri-bottle_f.ottbin0 -> 48355 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/ja/pri-fax_f.ottbin0 -> 58538 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/ja/pri-lines_f.ottbin0 -> 12319 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/ja/pri-marine_f.ottbin0 -> 19373 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/km/bus-classic-pri_f.ottbin0 -> 15539 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/km/bus-classic_f.ottbin0 -> 27837 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/km/bus-modern-pri_f.ottbin0 -> 15478 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/km/bus-modern_f.ottbin0 -> 27743 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/km/pri-bottle_f.ottbin0 -> 49157 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/km/pri-fax_f.ottbin0 -> 59430 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/km/pri-lines_f.ottbin0 -> 13259 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/km/pri-marine_f.ottbin0 -> 20312 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/ko/bus-classic-pri_f.ottbin0 -> 13343 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/ko/bus-classic_f.ottbin0 -> 14054 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/ko/bus-modern-pri_f.ottbin0 -> 13289 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/ko/bus-modern_f.ottbin0 -> 13576 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/ko/pri-bottle_f.ottbin0 -> 12483 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/ko/pri-fax_f.ottbin0 -> 13120 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/ko/pri-lines_f.ottbin0 -> 12292 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/ko/pri-marine_f.ottbin0 -> 12449 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/makefile.mk49
-rw-r--r--extras/source/templates/wizard/fax/lang/nl/bus-classic-pri_f.ottbin0 -> 14349 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/nl/bus-classic_f.ottbin0 -> 26669 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/nl/bus-modern-pri_f.ottbin0 -> 14322 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/nl/bus-modern_f.ottbin0 -> 26624 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/nl/pri-bottle_f.ottbin0 -> 48410 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/nl/pri-fax_f.ottbin0 -> 58728 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/nl/pri-lines_f.ottbin0 -> 12554 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/nl/pri-marine_f.ottbin0 -> 19533 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/pl/bus-classic-pri_f.ottbin0 -> 15439 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/pl/bus-classic_f.ottbin0 -> 27785 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/pl/bus-modern-pri_f.ottbin0 -> 15409 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/pl/bus-modern_f.ottbin0 -> 27719 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/pl/pri-bottle_f.ottbin0 -> 49546 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/pl/pri-fax_f.ottbin0 -> 59823 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/pl/pri-lines_f.ottbin0 -> 12224 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/pl/pri-marine_f.ottbin0 -> 20644 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/pt-BR/bus-classic-pri_f.ottbin0 -> 15944 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/pt-BR/bus-classic_f.ottbin0 -> 16152 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/pt-BR/bus-modern-pri_f.ottbin0 -> 15899 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/pt-BR/bus-modern_f.ottbin0 -> 16225 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/pt-BR/pri-bottle_f.ottbin0 -> 50297 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/pt-BR/pri-fax_f.ottbin0 -> 60408 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/pt-BR/pri-lines_f.ottbin0 -> 13867 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/pt-BR/pri-marine_f.ottbin0 -> 21372 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/pt/bus-classic-pri_f.ottbin0 -> 15598 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/pt/bus-classic_f.ottbin0 -> 28016 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/pt/bus-modern-pri_f.ottbin0 -> 15585 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/pt/bus-modern_f.ottbin0 -> 27904 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/pt/pri-bottle_f.ottbin0 -> 49710 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/pt/pri-fax_f.ottbin0 -> 60034 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/pt/pri-lines_f.ottbin0 -> 13686 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/pt/pri-marine_f.ottbin0 -> 20846 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/ru/bus-classic-pri_f.ottbin0 -> 14856 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/ru/bus-classic_f.ottbin0 -> 27108 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/ru/bus-modern-pri_f.ottbin0 -> 14879 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/ru/bus-modern_f.ottbin0 -> 27165 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/ru/pri-bottle_f.ottbin0 -> 48761 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/ru/pri-fax_f.ottbin0 -> 59018 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/ru/pri-lines_f.ottbin0 -> 12763 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/ru/pri-marine_f.ottbin0 -> 19920 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/sk/bus-classic-pri_f.ottbin0 -> 14378 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/sk/bus-classic_f.ottbin0 -> 26780 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/sk/bus-modern-pri_f.ottbin0 -> 14281 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/sk/bus-modern_f.ottbin0 -> 26654 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/sk/pri-bottle_f.ottbin0 -> 48863 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/sk/pri-fax_f.ottbin0 -> 59103 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/sk/pri-lines_f.ottbin0 -> 12809 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/sk/pri-marine_f.ottbin0 -> 19790 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/sl/bus-classic-pri_f.ottbin0 -> 13578 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/sl/bus-classic_f.ottbin0 -> 26009 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/sl/bus-modern-pri_f.ottbin0 -> 13401 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/sl/bus-modern_f.ottbin0 -> 25879 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/sl/pri-bottle_f.ottbin0 -> 48301 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/sl/pri-fax_f.ottbin0 -> 58562 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/sl/pri-lines_f.ottbin0 -> 12202 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/sl/pri-marine_f.ottbin0 -> 19442 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/sv/bus-classic-pri_f.ottbin0 -> 13040 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/sv/bus-classic_f.ottbin0 -> 13727 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/sv/bus-modern-pri_f.ottbin0 -> 12969 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/sv/bus-modern_f.ottbin0 -> 13761 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/sv/pri-bottle_f.ottbin0 -> 47941 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/sv/pri-fax_f.ottbin0 -> 58188 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/sv/pri-lines_f.ottbin0 -> 12009 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/sv/pri-marine_f.ottbin0 -> 19049 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/tr/bus-classic-pri_f.ottbin0 -> 14762 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/tr/bus-classic_f.ottbin0 -> 27043 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/tr/bus-modern-pri_f.ottbin0 -> 14734 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/tr/bus-modern_f.ottbin0 -> 26979 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/tr/pri-bottle_f.ottbin0 -> 48657 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/tr/pri-fax_f.ottbin0 -> 58959 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/tr/pri-lines_f.ottbin0 -> 12676 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/tr/pri-marine_f.ottbin0 -> 19823 bytes-rwxr-xr-xextras/source/templates/wizard/fax/lang/vi/bus-classic-pri_f.ottbin0 -> 27437 bytes-rwxr-xr-xextras/source/templates/wizard/fax/lang/vi/bus-classic_f.ottbin0 -> 27438 bytes-rwxr-xr-xextras/source/templates/wizard/fax/lang/vi/bus-modern-pri_f.ottbin0 -> 14972 bytes-rwxr-xr-xextras/source/templates/wizard/fax/lang/vi/bus-modern_f.ottbin0 -> 27533 bytes-rwxr-xr-xextras/source/templates/wizard/fax/lang/vi/pri-bottle_f.ottbin0 -> 49902 bytes-rwxr-xr-xextras/source/templates/wizard/fax/lang/vi/pri-fax_f.ottbin0 -> 60112 bytes-rwxr-xr-xextras/source/templates/wizard/fax/lang/vi/pri-lines_f.ottbin0 -> 13539 bytes-rwxr-xr-xextras/source/templates/wizard/fax/lang/vi/pri-marine_f.ottbin0 -> 20782 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/zh-CN/bus-classic-pri_f.ottbin0 -> 13272 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/zh-CN/bus-classic_f.ottbin0 -> 13980 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/zh-CN/bus-modern-pri_f.ottbin0 -> 13219 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/zh-CN/bus-modern_f.ottbin0 -> 14028 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/zh-CN/pri-bottle_f.ottbin0 -> 48306 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/zh-CN/pri-fax_f.ottbin0 -> 58488 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/zh-CN/pri-lines_f.ottbin0 -> 12263 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/zh-CN/pri-marine_f.ottbin0 -> 19355 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/zh-TW/bus-classic-pri_f.ottbin0 -> 13489 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/zh-TW/bus-classic_f.ottbin0 -> 13990 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/zh-TW/bus-modern-pri_f.ottbin0 -> 13287 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/zh-TW/bus-modern_f.ottbin0 -> 14068 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/zh-TW/pri-bottle_f.ottbin0 -> 48327 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/zh-TW/pri-fax_f.ottbin0 -> 58507 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/zh-TW/pri-lines_f.ottbin0 -> 12286 bytes-rw-r--r--extras/source/templates/wizard/fax/lang/zh-TW/pri-marine_f.ottbin0 -> 19364 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/bg/bus-elegant_l.ottbin0 -> 33481 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/bg/bus-modern_l.ottbin0 -> 33305 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/bg/bus-office_l.ottbin0 -> 33302 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/bg/off-elegant_l.ottbin0 -> 15115 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/bg/off-modern_l.ottbin0 -> 14690 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/bg/off-office_l.ottbin0 -> 14392 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/bg/pri-bottle_l.ottbin0 -> 48155 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/bg/pri-mail_l.ottbin0 -> 24078 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/bg/pri-marine_l.ottbin0 -> 19317 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/bg/pri-redline_l.ottbin0 -> 12133 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/cs/bus-elegant_l.ottbin0 -> 35308 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/cs/bus-modern_l.ottbin0 -> 35774 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/cs/bus-office_l.ottbin0 -> 35420 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/cs/off-elegant_l.ottbin0 -> 16796 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/cs/off-modern_l.ottbin0 -> 16474 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/cs/off-office_l.ottbin0 -> 16099 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/cs/pri-bottle_l.ottbin0 -> 48166 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/cs/pri-mail_l.ottbin0 -> 24034 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/cs/pri-marine_l.ottbin0 -> 19287 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/cs/pri-redline_l.ottbin0 -> 12291 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/da/bus-elegant_l.ottbin0 -> 34076 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/da/bus-modern_l.ottbin0 -> 34201 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/da/bus-office_l.ottbin0 -> 34097 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/da/off-elegant_l.ottbin0 -> 15647 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/da/off-modern_l.ottbin0 -> 15245 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/da/off-office_l.ottbin0 -> 14769 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/da/pri-bottle_l.ottbin0 -> 47452 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/da/pri-mail_l.ottbin0 -> 23344 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/da/pri-marine_l.ottbin0 -> 18528 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/da/pri-redline_l.ottbin0 -> 11639 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/de/bus-elegant_l.ottbin0 -> 36299 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/de/bus-modern_l.ottbin0 -> 36496 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/de/bus-office_l.ottbin0 -> 36279 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/de/off-elegant_l.ottbin0 -> 15742 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/de/off-modern_l.ottbin0 -> 15315 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/de/off-office_l.ottbin0 -> 14789 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/de/pri-bottle_l.ottbin0 -> 48191 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/de/pri-mail_l.ottbin0 -> 24168 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/de/pri-marine_l.ottbin0 -> 19306 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/de/pri-redline_l.ottbin0 -> 12473 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/delzip1
-rw-r--r--extras/source/templates/wizard/letter/lang/en-GB/bus-elegant_l.ottbin0 -> 34203 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/en-GB/bus-modern_l.ottbin0 -> 34370 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/en-GB/bus-office_l.ottbin0 -> 34188 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/en-GB/off-elegant_l.ottbin0 -> 15692 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/en-GB/off-modern_l.ottbin0 -> 15332 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/en-GB/off-office_l.ottbin0 -> 14881 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/en-GB/pri-bottle_l.ottbin0 -> 47926 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/en-GB/pri-mail_l.ottbin0 -> 23854 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/en-GB/pri-marine_l.ottbin0 -> 19125 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/en-GB/pri-redline_l.ottbin0 -> 12148 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/en-US/bus-elegant_l.ottbin0 -> 33945 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/en-US/bus-modern_l.ottbin0 -> 34270 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/en-US/bus-office_l.ottbin0 -> 34041 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/en-US/off-elegant_l.ottbin0 -> 15629 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/en-US/off-modern_l.ottbin0 -> 15341 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/en-US/off-office_l.ottbin0 -> 14731 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/en-US/pri-bottle_l.ottbin0 -> 48260 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/en-US/pri-mail_l.ottbin0 -> 24144 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/en-US/pri-marine_l.ottbin0 -> 19326 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/en-US/pri-redline_l.ottbin0 -> 12423 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/es/bus-elegant_l.ottbin0 -> 35196 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/es/bus-modern_l.ottbin0 -> 35293 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/es/bus-office_l.ottbin0 -> 35288 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/es/off-elegant_l.ottbin0 -> 15714 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/es/off-modern_l.ottbin0 -> 15514 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/es/off-office_l.ottbin0 -> 14755 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/es/pri-bottle_l.ottbin0 -> 48283 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/es/pri-mail_l.ottbin0 -> 24241 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/es/pri-marine_l.ottbin0 -> 19443 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/es/pri-redline_l.ottbin0 -> 12544 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/eu/bus-elegant_l.ottbin0 -> 33891 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/eu/bus-modern_l.ottbin0 -> 33889 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/eu/bus-office_l.ottbin0 -> 33857 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/eu/off-elegant_l.ottbin0 -> 15864 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/eu/off-modern_l.ottbin0 -> 15381 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/eu/off-office_l.ottbin0 -> 15020 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/eu/pri-bottle_l.ottbin0 -> 49465 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/eu/pri-mail_l.ottbin0 -> 25367 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/eu/pri-marine_l.ottbin0 -> 20630 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/eu/pri-redline_l.ottbin0 -> 13539 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/fr/bus-elegant_l.ottbin0 -> 35087 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/fr/bus-modern_l.ottbin0 -> 35258 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/fr/bus-office_l.ottbin0 -> 35187 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/fr/off-elegant_l.ottbin0 -> 15706 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/fr/off-modern_l.ottbin0 -> 15517 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/fr/off-office_l.ottbin0 -> 14721 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/fr/pri-bottle_l.ottbin0 -> 48247 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/fr/pri-mail_l.ottbin0 -> 24192 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/fr/pri-marine_l.ottbin0 -> 19393 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/fr/pri-redline_l.ottbin0 -> 12485 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/hu/bus-elegant_l.ottbin0 -> 28811 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/hu/bus-modern_l.ottbin0 -> 29220 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/hu/bus-office_l.ottbin0 -> 28943 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/hu/off-elegant_l.ottbin0 -> 17014 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/hu/off-modern_l.ottbin0 -> 16696 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/hu/off-office_l.ottbin0 -> 16232 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/hu/pri-bottle_l.ottbin0 -> 48573 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/hu/pri-mail_l.ottbin0 -> 24608 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/hu/pri-marine_l.ottbin0 -> 19848 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/hu/pri-redline_l.ottbin0 -> 12724 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/it/bus-elegant_l.ottbin0 -> 35132 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/it/bus-modern_l.ottbin0 -> 35272 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/it/bus-office_l.ottbin0 -> 35239 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/it/off-elegant_l.ottbin0 -> 15685 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/it/off-modern_l.ottbin0 -> 15531 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/it/off-office_l.ottbin0 -> 14763 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/it/pri-bottle_l.ottbin0 -> 48251 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/it/pri-mail_l.ottbin0 -> 24212 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/it/pri-marine_l.ottbin0 -> 19414 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/it/pri-redline_l.ottbin0 -> 12505 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ja/bus-elegant_l.ottbin0 -> 32851 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ja/bus-modern_l.ottbin0 -> 32811 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ja/bus-office_l.ottbin0 -> 32866 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ja/off-elegant_l.ottbin0 -> 13980 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ja/off-modern_l.ottbin0 -> 13542 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ja/off-office_l.ottbin0 -> 13078 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ja/pri-bottle_l.ottbin0 -> 48475 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ja/pri-mail_l.ottbin0 -> 24376 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ja/pri-marine_l.ottbin0 -> 19693 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ja/pri-redline_l.ottbin0 -> 12690 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/km/bus-elegant_l.ottbin0 -> 33195 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/km/bus-modern_l.ottbin0 -> 33366 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/km/bus-office_l.ottbin0 -> 33297 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/km/off-elegant_l.ottbin0 -> 15136 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/km/off-modern_l.ottbin0 -> 14766 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/km/off-office_l.ottbin0 -> 14343 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/km/pri-bottle_l.ottbin0 -> 48755 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/km/pri-mail_l.ottbin0 -> 24707 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/km/pri-marine_l.ottbin0 -> 19963 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/km/pri-redline_l.ottbin0 -> 12974 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ko/bus-elegant_l.ottbin0 -> 33016 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ko/bus-modern_l.ottbin0 -> 32993 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ko/bus-office_l.ottbin0 -> 33110 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ko/off-elegant_l.ottbin0 -> 14164 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ko/off-modern_l.ottbin0 -> 13716 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ko/off-office_l.ottbin0 -> 13242 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ko/pri-bottle_l.ottbin0 -> 48425 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ko/pri-mail_l.ottbin0 -> 24371 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ko/pri-marine_l.ottbin0 -> 19629 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ko/pri-redline_l.ottbin0 -> 12664 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/makefile.mk56
-rw-r--r--extras/source/templates/wizard/letter/lang/nl/bus-elegant_l.ottbin0 -> 35129 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/nl/bus-modern_l.ottbin0 -> 35296 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/nl/bus-office_l.ottbin0 -> 35304 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/nl/off-elegant_l.ottbin0 -> 15686 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/nl/off-modern_l.ottbin0 -> 15300 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/nl/off-office_l.ottbin0 -> 14769 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/nl/pri-bottle_l.ottbin0 -> 48038 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/nl/pri-mail_l.ottbin0 -> 23992 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/nl/pri-marine_l.ottbin0 -> 19194 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/nl/pri-redline_l.ottbin0 -> 12272 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pl/bus-elegant_l.ottbin0 -> 35321 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pl/bus-modern_l.ottbin0 -> 35491 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pl/bus-office_l.ottbin0 -> 35400 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pl/off-elegant_l.ottbin0 -> 15723 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pl/off-modern_l.ottbin0 -> 15361 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pl/off-office_l.ottbin0 -> 14779 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pl/pri-bottle_l.ottbin0 -> 48075 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pl/pri-mail_l.ottbin0 -> 24013 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pl/pri-marine_l.ottbin0 -> 19287 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pl/pri-redline_l.ottbin0 -> 12202 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pt-BR/bus-elegant_l.ottbin0 -> 32898 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pt-BR/bus-modern_l.ottbin0 -> 32976 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pt-BR/bus-office_l.ottbin0 -> 33065 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pt-BR/off-elegant_l.ottbin0 -> 13883 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pt-BR/off-modern_l.ottbin0 -> 13540 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pt-BR/off-office_l.ottbin0 -> 13125 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pt-BR/pri-bottle_l.ottbin0 -> 48298 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pt-BR/pri-mail_l.ottbin0 -> 24283 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pt-BR/pri-marine_l.ottbin0 -> 19487 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pt-BR/pri-redline_l.ottbin0 -> 12581 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pt/bus-elegant_l.ottbin0 -> 34166 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pt/bus-modern_l.ottbin0 -> 34295 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pt/bus-office_l.ottbin0 -> 34137 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pt/off-elegant_l.ottbin0 -> 15666 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pt/off-modern_l.ottbin0 -> 15271 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pt/off-office_l.ottbin0 -> 14805 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pt/pri-bottle_l.ottbin0 -> 49425 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pt/pri-mail_l.ottbin0 -> 25343 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pt/pri-marine_l.ottbin0 -> 20592 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/pt/pri-redline_l.ottbin0 -> 13497 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ru/bus-elegant_l.ottbin0 -> 32769 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ru/bus-modern_l.ottbin0 -> 32828 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ru/bus-office_l.ottbin0 -> 32818 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ru/off-elegant_l.ottbin0 -> 14608 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ru/off-modern_l.ottbin0 -> 13644 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ru/off-office_l.ottbin0 -> 13848 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ru/pri-bottle_l.ottbin0 -> 48536 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ru/pri-mail_l.ottbin0 -> 24413 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ru/pri-marine_l.ottbin0 -> 19526 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/ru/pri-redline_l.ottbin0 -> 12568 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sk/bus-elegant_l.ottbin0 -> 32678 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sk/bus-modern_l.ottbin0 -> 32647 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sk/bus-office_l.ottbin0 -> 32986 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sk/off-elegant_l.ottbin0 -> 14478 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sk/off-modern_l.ottbin0 -> 13966 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sk/off-office_l.ottbin0 -> 13750 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sk/pri-bottle_l.ottbin0 -> 48272 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sk/pri-mail_l.ottbin0 -> 24170 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sk/pri-marine_l.ottbin0 -> 19478 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sk/pri-redline_l.ottbin0 -> 12598 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sl/bus-elegant_l.ottbin0 -> 19390 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sl/bus-modern_l.ottbin0 -> 19439 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sl/bus-office_l.ottbin0 -> 19454 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sl/off-elegant_l.ottbin0 -> 13944 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sl/off-modern_l.ottbin0 -> 13501 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sl/off-office_l.ottbin0 -> 13109 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sl/pri-bottle_l.ottbin0 -> 47978 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sl/pri-mail_l.ottbin0 -> 23904 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sl/pri-marine_l.ottbin0 -> 19152 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sl/pri-redline_l.ottbin0 -> 11951 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sv/bus-elegant_l.ottbin0 -> 35195 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sv/bus-modern_l.ottbin0 -> 35342 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sv/bus-office_l.ottbin0 -> 35313 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sv/off-elegant_l.ottbin0 -> 15768 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sv/off-modern_l.ottbin0 -> 15347 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sv/off-office_l.ottbin0 -> 14801 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sv/pri-bottle_l.ottbin0 -> 48237 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sv/pri-mail_l.ottbin0 -> 24226 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sv/pri-marine_l.ottbin0 -> 19359 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/sv/pri-redline_l.ottbin0 -> 12522 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/tr/bus-elegant_l.ottbin0 -> 32509 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/tr/bus-modern_l.ottbin0 -> 32664 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/tr/bus-office_l.ottbin0 -> 32593 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/tr/off-elegant_l.ottbin0 -> 14371 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/tr/off-modern_l.ottbin0 -> 14067 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/tr/off-office_l.ottbin0 -> 13636 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/tr/pri-bottle_l.ottbin0 -> 48166 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/tr/pri-mail_l.ottbin0 -> 24128 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/tr/pri-marine_l.ottbin0 -> 19377 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/tr/pri-redline_l.ottbin0 -> 12290 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/vi/bus-elegant_l.ottbin0 -> 34581 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/vi/bus-modern_l.ottbin0 -> 34704 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/vi/bus-office_l.ottbin0 -> 34605 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/vi/off-elegant_l.ottbin0 -> 15318 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/vi/off-modern_l.ottbin0 -> 14885 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/vi/off-office_l.ottbin0 -> 14412 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/vi/pri-bottle_l.ottbin0 -> 49511 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/vi/pri-mail_l.ottbin0 -> 25281 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/vi/pri-marine_l.ottbin0 -> 20477 bytes-rwxr-xr-xextras/source/templates/wizard/letter/lang/vi/pri-redline_l.ottbin0 -> 13302 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/zh-CN/bus-elegant_l.ottbin0 -> 32964 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/zh-CN/bus-modern_l.ottbin0 -> 32935 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/zh-CN/bus-office_l.ottbin0 -> 33050 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/zh-CN/off-elegant_l.ottbin0 -> 14136 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/zh-CN/off-modern_l.ottbin0 -> 13669 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/zh-CN/off-office_l.ottbin0 -> 13239 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/zh-CN/pri-bottle_l.ottbin0 -> 48484 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/zh-CN/pri-mail_l.ottbin0 -> 24392 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/zh-CN/pri-marine_l.ottbin0 -> 19680 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/zh-CN/pri-redline_l.ottbin0 -> 12693 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/zh-TW/bus-elegant_l.ottbin0 -> 32949 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/zh-TW/bus-modern_l.ottbin0 -> 32924 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/zh-TW/bus-office_l.ottbin0 -> 33059 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/zh-TW/off-elegant_l.ottbin0 -> 14096 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/zh-TW/off-modern_l.ottbin0 -> 13615 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/zh-TW/off-office_l.ottbin0 -> 13206 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/zh-TW/pri-bottle_l.ottbin0 -> 48497 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/zh-TW/pri-mail_l.ottbin0 -> 24420 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/zh-TW/pri-marine_l.ottbin0 -> 19681 bytes-rw-r--r--extras/source/templates/wizard/letter/lang/zh-TW/pri-redline_l.ottbin0 -> 12701 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/cnt-01.ottbin0 -> 9846 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/cnt-011.ottbin0 -> 9686 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/cnt-012.ottbin0 -> 9640 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/cnt-02.ottbin0 -> 9500 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/cnt-021.ottbin0 -> 9520 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/cnt-022.ottbin0 -> 9396 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/cnt-03.ottbin0 -> 9951 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/cnt-031.ottbin0 -> 10031 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/cnt-032.ottbin0 -> 9895 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/cnt-04.ottbin0 -> 10090 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/cnt-041.ottbin0 -> 10224 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/cnt-042.ottbin0 -> 9955 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/cnt-05.ottbin0 -> 9515 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/cnt-051.ottbin0 -> 9518 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/cnt-052.ottbin0 -> 9561 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/cnt-06.ottbin0 -> 9921 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/cnt-061.ottbin0 -> 9906 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/cnt-062.ottbin0 -> 9827 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/cnt-default.ottbin0 -> 9657 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/stl-01.ottbin0 -> 37043 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/stl-02.ottbin0 -> 26176 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/stl-03.ottbin0 -> 46632 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/stl-04.ottbin0 -> 25021 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/stl-05.ottbin0 -> 46527 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/stl-06.ottbin0 -> 18351 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/stl-07.ottbin0 -> 8793 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/stl-08.ottbin0 -> 13368 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/stl-09.ottbin0 -> 50528 bytes-rw-r--r--extras/source/templates/wizard/report/lang/bg/stl-default.ottbin0 -> 7693 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/cnt-01.ottbin0 -> 8755 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/cnt-011.ottbin0 -> 8773 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/cnt-012.ottbin0 -> 8700 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/cnt-02.ottbin0 -> 8648 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/cnt-021.ottbin0 -> 8695 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/cnt-022.ottbin0 -> 8591 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/cnt-03.ottbin0 -> 8998 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/cnt-031.ottbin0 -> 8994 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/cnt-032.ottbin0 -> 8928 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/cnt-04.ottbin0 -> 9100 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/cnt-041.ottbin0 -> 9250 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/cnt-042.ottbin0 -> 8949 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/cnt-05.ottbin0 -> 8647 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/cnt-051.ottbin0 -> 8685 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/cnt-052.ottbin0 -> 8627 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/cnt-06.ottbin0 -> 8911 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/cnt-061.ottbin0 -> 8867 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/cnt-062.ottbin0 -> 8764 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/cnt-default.ottbin0 -> 8773 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/stl-01.ottbin0 -> 35377 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/stl-02.ottbin0 -> 25279 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/stl-03.ottbin0 -> 45733 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/stl-04.ottbin0 -> 23274 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/stl-05.ottbin0 -> 45684 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/stl-06.ottbin0 -> 16844 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/stl-07.ottbin0 -> 8055 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/stl-08.ottbin0 -> 10882 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/stl-09.ottbin0 -> 48611 bytes-rw-r--r--extras/source/templates/wizard/report/lang/cs/stl-default.ottbin0 -> 6927 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/cnt-01.ottbin0 -> 8620 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/cnt-011.ottbin0 -> 8613 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/cnt-012.ottbin0 -> 8510 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/cnt-02.ottbin0 -> 8464 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/cnt-021.ottbin0 -> 8537 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/cnt-022.ottbin0 -> 8396 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/cnt-03.ottbin0 -> 8812 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/cnt-031.ottbin0 -> 8806 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/cnt-032.ottbin0 -> 8737 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/cnt-04.ottbin0 -> 8921 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/cnt-041.ottbin0 -> 9058 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/cnt-042.ottbin0 -> 8767 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/cnt-05.ottbin0 -> 8450 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/cnt-051.ottbin0 -> 8435 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/cnt-052.ottbin0 -> 8432 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/cnt-06.ottbin0 -> 8725 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/cnt-061.ottbin0 -> 8654 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/cnt-062.ottbin0 -> 8585 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/cnt-default.ottbin0 -> 8589 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/stl-01.ottbin0 -> 35087 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/stl-02.ottbin0 -> 24973 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/stl-03.ottbin0 -> 45383 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/stl-04.ottbin0 -> 22956 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/stl-05.ottbin0 -> 45354 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/stl-06.ottbin0 -> 16531 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/stl-07.ottbin0 -> 7616 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/stl-08.ottbin0 -> 10605 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/stl-09.ottbin0 -> 48279 bytes-rw-r--r--extras/source/templates/wizard/report/lang/da/stl-default.ottbin0 -> 6627 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/cnt-01.ottbin0 -> 8760 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/cnt-011.ottbin0 -> 8817 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/cnt-012.ottbin0 -> 8690 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/cnt-02.ottbin0 -> 8720 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/cnt-021.ottbin0 -> 8770 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/cnt-022.ottbin0 -> 8598 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/cnt-03.ottbin0 -> 9073 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/cnt-031.ottbin0 -> 9063 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/cnt-032.ottbin0 -> 8956 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/cnt-04.ottbin0 -> 9096 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/cnt-041.ottbin0 -> 9119 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/cnt-042.ottbin0 -> 8981 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/cnt-05.ottbin0 -> 8596 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/cnt-051.ottbin0 -> 8661 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/cnt-052.ottbin0 -> 8625 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/cnt-06.ottbin0 -> 8895 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/cnt-061.ottbin0 -> 8885 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/cnt-062.ottbin0 -> 8765 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/cnt-default.ottbin0 -> 8882 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/stl-01.ottbin0 -> 35301 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/stl-02.ottbin0 -> 25192 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/stl-03.ottbin0 -> 45591 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/stl-04.ottbin0 -> 22663 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/stl-05.ottbin0 -> 45398 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/stl-06.ottbin0 -> 16719 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/stl-07.ottbin0 -> 7792 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/stl-08.ottbin0 -> 11405 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/stl-09.ottbin0 -> 48416 bytes-rw-r--r--extras/source/templates/wizard/report/lang/de/stl-default.ottbin0 -> 6843 bytes-rw-r--r--extras/source/templates/wizard/report/lang/delzip2
-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/cnt-01.ottbin0 -> 10277 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/cnt-011.ottbin0 -> 10146 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/cnt-012.ottbin0 -> 10137 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/cnt-02.ottbin0 -> 10011 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/cnt-021.ottbin0 -> 9997 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/cnt-022.ottbin0 -> 9833 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/cnt-03.ottbin0 -> 10383 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/cnt-031.ottbin0 -> 10275 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/cnt-032.ottbin0 -> 10174 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/cnt-04.ottbin0 -> 10388 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/cnt-041.ottbin0 -> 10424 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/cnt-042.ottbin0 -> 10381 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/cnt-05.ottbin0 -> 9725 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/cnt-051.ottbin0 -> 9687 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/cnt-052.ottbin0 -> 9703 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/cnt-06.ottbin0 -> 10297 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/cnt-061.ottbin0 -> 10196 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/cnt-062.ottbin0 -> 10129 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/cnt-default.ottbin0 -> 10060 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/stl-01.ottbin0 -> 36755 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/stl-02.ottbin0 -> 25830 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/stl-03.ottbin0 -> 46351 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/stl-04.ottbin0 -> 24172 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/stl-05.ottbin0 -> 46261 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/stl-06.ottbin0 -> 18156 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/stl-07.ottbin0 -> 9121 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/stl-08.ottbin0 -> 12482 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/stl-09.ottbin0 -> 50141 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-GB/stl-default.ottbin0 -> 7561 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/cnt-01.ottbin0 -> 8813 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/cnt-011.ottbin0 -> 8803 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/cnt-012.ottbin0 -> 8707 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/cnt-02.ottbin0 -> 8666 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/cnt-021.ottbin0 -> 8738 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/cnt-022.ottbin0 -> 8594 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/cnt-03.ottbin0 -> 9003 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/cnt-031.ottbin0 -> 8999 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/cnt-032.ottbin0 -> 8931 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/cnt-04.ottbin0 -> 9119 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/cnt-041.ottbin0 -> 9264 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/cnt-042.ottbin0 -> 8959 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/cnt-05.ottbin0 -> 8651 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/cnt-051.ottbin0 -> 8635 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/cnt-052.ottbin0 -> 8633 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/cnt-06.ottbin0 -> 8900 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/cnt-061.ottbin0 -> 8831 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/cnt-062.ottbin0 -> 8763 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/cnt-default.ottbin0 -> 8777 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/stl-01.ottbin0 -> 35361 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/stl-02.ottbin0 -> 25203 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/stl-03.ottbin0 -> 45630 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/stl-04.ottbin0 -> 23224 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/stl-05.ottbin0 -> 45601 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/stl-06.ottbin0 -> 16824 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/stl-07.ottbin0 -> 7951 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/stl-08.ottbin0 -> 10871 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/stl-09.ottbin0 -> 48567 bytes-rw-r--r--extras/source/templates/wizard/report/lang/en-US/stl-default.ottbin0 -> 6857 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/cnt-01.ottbin0 -> 8764 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/cnt-011.ottbin0 -> 8824 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/cnt-012.ottbin0 -> 8698 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/cnt-02.ottbin0 -> 8727 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/cnt-021.ottbin0 -> 8776 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/cnt-022.ottbin0 -> 8611 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/cnt-03.ottbin0 -> 9080 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/cnt-031.ottbin0 -> 9067 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/cnt-032.ottbin0 -> 8966 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/cnt-04.ottbin0 -> 9104 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/cnt-041.ottbin0 -> 9128 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/cnt-042.ottbin0 -> 8998 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/cnt-05.ottbin0 -> 8612 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/cnt-051.ottbin0 -> 8664 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/cnt-052.ottbin0 -> 8633 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/cnt-06.ottbin0 -> 8887 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/cnt-061.ottbin0 -> 8877 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/cnt-062.ottbin0 -> 8766 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/cnt-default.ottbin0 -> 8892 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/stl-01.ottbin0 -> 38158 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/stl-02.ottbin0 -> 25281 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/stl-03.ottbin0 -> 47640 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/stl-04.ottbin0 -> 22734 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/stl-05.ottbin0 -> 47395 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/stl-06.ottbin0 -> 16709 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/stl-07.ottbin0 -> 7891 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/stl-08.ottbin0 -> 11440 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/stl-09.ottbin0 -> 51540 bytes-rw-r--r--extras/source/templates/wizard/report/lang/es/stl-default.ottbin0 -> 6941 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/cnt-01.ottbin0 -> 11556 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/cnt-011.ottbin0 -> 11494 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/cnt-012.ottbin0 -> 11496 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/cnt-02.ottbin0 -> 11432 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/cnt-021.ottbin0 -> 11541 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/cnt-022.ottbin0 -> 11427 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/cnt-03.ottbin0 -> 11588 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/cnt-031.ottbin0 -> 11591 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/cnt-032.ottbin0 -> 11602 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/cnt-04.ottbin0 -> 11792 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/cnt-041.ottbin0 -> 11966 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/cnt-042.ottbin0 -> 11725 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/cnt-05.ottbin0 -> 11048 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/cnt-051.ottbin0 -> 10985 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/cnt-052.ottbin0 -> 11106 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/cnt-06.ottbin0 -> 11808 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/cnt-061.ottbin0 -> 11638 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/cnt-062.ottbin0 -> 11663 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/cnt-default.ottbin0 -> 11590 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/stl-01.ottbin0 -> 39568 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/stl-02.ottbin0 -> 27248 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/stl-03.ottbin0 -> 47648 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/stl-04.ottbin0 -> 25668 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/stl-05.ottbin0 -> 47578 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/stl-06.ottbin0 -> 19489 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/stl-07.ottbin0 -> 9840 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/stl-08.ottbin0 -> 13631 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/stl-09.ottbin0 -> 51465 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/stl-10.ottbin0 -> 38022 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/eu/stl-default.ottbin0 -> 8818 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/cnt-01.ottbin0 -> 8761 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/cnt-011.ottbin0 -> 8813 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/cnt-012.ottbin0 -> 8699 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/cnt-02.ottbin0 -> 8729 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/cnt-021.ottbin0 -> 8786 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/cnt-022.ottbin0 -> 8611 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/cnt-03.ottbin0 -> 9076 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/cnt-031.ottbin0 -> 9057 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/cnt-032.ottbin0 -> 8968 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/cnt-04.ottbin0 -> 9101 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/cnt-041.ottbin0 -> 9116 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/cnt-042.ottbin0 -> 8999 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/cnt-05.ottbin0 -> 8608 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/cnt-051.ottbin0 -> 8651 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/cnt-052.ottbin0 -> 8633 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/cnt-06.ottbin0 -> 8887 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/cnt-061.ottbin0 -> 8868 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/cnt-062.ottbin0 -> 8769 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/cnt-default.ottbin0 -> 8888 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/stl-01.ottbin0 -> 35384 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/stl-02.ottbin0 -> 25300 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/stl-03.ottbin0 -> 45705 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/stl-04.ottbin0 -> 22729 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/stl-05.ottbin0 -> 45480 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/stl-06.ottbin0 -> 16730 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/stl-07.ottbin0 -> 7828 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/stl-08.ottbin0 -> 11422 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/stl-09.ottbin0 -> 48481 bytes-rw-r--r--extras/source/templates/wizard/report/lang/fr/stl-default.ottbin0 -> 6912 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/cnt-01.ottbin0 -> 9838 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/cnt-011.ottbin0 -> 9870 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/cnt-012.ottbin0 -> 9902 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/cnt-02.ottbin0 -> 9612 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/cnt-021.ottbin0 -> 9589 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/cnt-022.ottbin0 -> 9601 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/cnt-03.ottbin0 -> 10121 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/cnt-031.ottbin0 -> 10136 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/cnt-032.ottbin0 -> 10102 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/cnt-04.ottbin0 -> 10161 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/cnt-041.ottbin0 -> 10318 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/cnt-042.ottbin0 -> 10170 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/cnt-05.ottbin0 -> 9565 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/cnt-051.ottbin0 -> 9577 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/cnt-052.ottbin0 -> 9624 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/cnt-06.ottbin0 -> 10151 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/cnt-061.ottbin0 -> 10151 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/cnt-062.ottbin0 -> 10182 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/cnt-default.ottbin0 -> 9779 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/stl-01.ottbin0 -> 36754 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/stl-02.ottbin0 -> 26061 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/stl-03.ottbin0 -> 46450 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/stl-04.ottbin0 -> 24626 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/stl-05.ottbin0 -> 46432 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/stl-06.ottbin0 -> 19218 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/stl-07.ottbin0 -> 9398 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/stl-08.ottbin0 -> 11850 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/stl-09.ottbin0 -> 50209 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/hu/stl-default.ottbin0 -> 7774 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/cnt-01.ottbin0 -> 8766 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/cnt-011.ottbin0 -> 8818 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/cnt-012.ottbin0 -> 8696 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/cnt-02.ottbin0 -> 8727 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/cnt-021.ottbin0 -> 8765 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/cnt-022.ottbin0 -> 8603 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/cnt-03.ottbin0 -> 9082 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/cnt-031.ottbin0 -> 9063 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/cnt-032.ottbin0 -> 8966 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/cnt-04.ottbin0 -> 9103 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/cnt-041.ottbin0 -> 9121 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/cnt-042.ottbin0 -> 8995 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/cnt-05.ottbin0 -> 8612 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/cnt-051.ottbin0 -> 8657 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/cnt-052.ottbin0 -> 8628 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/cnt-06.ottbin0 -> 8886 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/cnt-061.ottbin0 -> 8868 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/cnt-062.ottbin0 -> 8760 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/cnt-default.ottbin0 -> 8888 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/stl-01.ottbin0 -> 38086 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/stl-02.ottbin0 -> 25263 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/stl-03.ottbin0 -> 47639 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/stl-04.ottbin0 -> 22725 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/stl-05.ottbin0 -> 47385 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/stl-06.ottbin0 -> 16692 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/stl-07.ottbin0 -> 7857 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/stl-08.ottbin0 -> 11498 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/stl-09.ottbin0 -> 51470 bytes-rw-r--r--extras/source/templates/wizard/report/lang/it/stl-default.ottbin0 -> 6923 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/cnt-01.ottbin0 -> 11484 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/cnt-011.ottbin0 -> 11505 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/cnt-012.ottbin0 -> 11384 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/cnt-02.ottbin0 -> 11448 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/cnt-021.ottbin0 -> 11509 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/cnt-022.ottbin0 -> 11334 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/cnt-03.ottbin0 -> 11772 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/cnt-031.ottbin0 -> 11805 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/cnt-032.ottbin0 -> 11647 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/cnt-04.ottbin0 -> 11826 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/cnt-041.ottbin0 -> 11850 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/cnt-042.ottbin0 -> 11683 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/cnt-05.ottbin0 -> 11353 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/cnt-051.ottbin0 -> 11557 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/cnt-052.ottbin0 -> 11508 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/cnt-06.ottbin0 -> 11620 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/cnt-061.ottbin0 -> 11645 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/cnt-062.ottbin0 -> 11510 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/cnt-default.ottbin0 -> 11693 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/stl-01.ottbin0 -> 41044 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/stl-02.ottbin0 -> 28184 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/stl-03.ottbin0 -> 50532 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/stl-04.ottbin0 -> 25686 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/stl-05.ottbin0 -> 50380 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/stl-06.ottbin0 -> 19615 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/stl-07.ottbin0 -> 10746 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/stl-08.ottbin0 -> 14405 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/stl-09.ottbin0 -> 54354 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ja/stl-default.ottbin0 -> 9831 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/cnt-01.ottbin0 -> 11316 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/cnt-011.ottbin0 -> 11255 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/cnt-012.ottbin0 -> 11240 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/cnt-02.ottbin0 -> 11144 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/cnt-021.ottbin0 -> 11207 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/cnt-022.ottbin0 -> 11074 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/cnt-03.ottbin0 -> 11699 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/cnt-031.ottbin0 -> 11457 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/cnt-032.ottbin0 -> 11599 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/cnt-04.ottbin0 -> 11751 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/cnt-041.ottbin0 -> 11864 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/cnt-042.ottbin0 -> 11603 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/cnt-05.ottbin0 -> 11084 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/cnt-051.ottbin0 -> 10950 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/cnt-052.ottbin0 -> 11132 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/cnt-06.ottbin0 -> 11457 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/cnt-061.ottbin0 -> 11331 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/cnt-062.ottbin0 -> 11383 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/cnt-default.ottbin0 -> 11264 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/stl-01.ottbin0 -> 37328 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/stl-02.ottbin0 -> 26732 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/stl-03.ottbin0 -> 47109 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/stl-04.ottbin0 -> 25395 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/stl-05.ottbin0 -> 47104 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/stl-06.ottbin0 -> 19041 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/stl-07.ottbin0 -> 9888 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/stl-08.ottbin0 -> 12584 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/stl-09.ottbin0 -> 50780 bytes-rw-r--r--extras/source/templates/wizard/report/lang/km/stl-default.ottbin0 -> 8411 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/cnt-01.ottbin0 -> 11441 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/cnt-011.ottbin0 -> 11456 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/cnt-012.ottbin0 -> 11362 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/cnt-02.ottbin0 -> 11444 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/cnt-021.ottbin0 -> 11484 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/cnt-022.ottbin0 -> 11335 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/cnt-03.ottbin0 -> 11709 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/cnt-031.ottbin0 -> 11760 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/cnt-032.ottbin0 -> 11621 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/cnt-04.ottbin0 -> 11754 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/cnt-041.ottbin0 -> 11757 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/cnt-042.ottbin0 -> 11630 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/cnt-05.ottbin0 -> 11334 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/cnt-051.ottbin0 -> 11385 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/cnt-052.ottbin0 -> 11305 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/cnt-06.ottbin0 -> 11549 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/cnt-061.ottbin0 -> 11583 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/cnt-062.ottbin0 -> 11490 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/cnt-default.ottbin0 -> 11679 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/stl-01.ottbin0 -> 41018 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/stl-02.ottbin0 -> 28159 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/stl-03.ottbin0 -> 50596 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/stl-04.ottbin0 -> 25674 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/stl-05.ottbin0 -> 50372 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/stl-06.ottbin0 -> 19619 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/stl-07.ottbin0 -> 10853 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/stl-08.ottbin0 -> 14379 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/stl-09.ottbin0 -> 54368 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ko/stl-default.ottbin0 -> 9817 bytes-rw-r--r--extras/source/templates/wizard/report/lang/makefile.mk49
-rw-r--r--extras/source/templates/wizard/report/lang/nl/cnt-01.ottbin0 -> 10157 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/cnt-011.ottbin0 -> 10260 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/cnt-012.ottbin0 -> 10126 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/cnt-02.ottbin0 -> 10062 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/cnt-021.ottbin0 -> 10083 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/cnt-022.ottbin0 -> 9928 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/cnt-03.ottbin0 -> 10660 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/cnt-031.ottbin0 -> 10609 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/cnt-032.ottbin0 -> 10542 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/cnt-04.ottbin0 -> 10602 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/cnt-041.ottbin0 -> 10520 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/cnt-042.ottbin0 -> 10439 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/cnt-05.ottbin0 -> 9738 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/cnt-051.ottbin0 -> 9748 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/cnt-052.ottbin0 -> 9839 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/cnt-06.ottbin0 -> 10356 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/cnt-061.ottbin0 -> 10322 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/cnt-062.ottbin0 -> 10236 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/cnt-default.ottbin0 -> 10290 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/stl-01.ottbin0 -> 36988 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/stl-02.ottbin0 -> 26139 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/stl-03.ottbin0 -> 47719 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/stl-04.ottbin0 -> 24307 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/stl-05.ottbin0 -> 47456 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/stl-06.ottbin0 -> 18359 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/stl-07.ottbin0 -> 9140 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/stl-08.ottbin0 -> 12513 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/stl-09.ottbin0 -> 51480 bytes-rw-r--r--extras/source/templates/wizard/report/lang/nl/stl-default.ottbin0 -> 7803 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/cnt-01.ottbin0 -> 9366 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/cnt-011.ottbin0 -> 9366 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/cnt-012.ottbin0 -> 9275 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/cnt-02.ottbin0 -> 9304 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/cnt-021.ottbin0 -> 9364 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/cnt-022.ottbin0 -> 9194 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/cnt-03.ottbin0 -> 10117 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/cnt-031.ottbin0 -> 10098 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/cnt-032.ottbin0 -> 10031 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/cnt-04.ottbin0 -> 9785 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/cnt-041.ottbin0 -> 9822 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/cnt-042.ottbin0 -> 9679 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/cnt-05.ottbin0 -> 9188 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/cnt-051.ottbin0 -> 9248 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/cnt-052.ottbin0 -> 9278 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/cnt-06.ottbin0 -> 9492 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/cnt-061.ottbin0 -> 9482 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/cnt-062.ottbin0 -> 9380 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/cnt-default.ottbin0 -> 9477 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/stl-01.ottbin0 -> 38124 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/stl-02.ottbin0 -> 25929 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/stl-03.ottbin0 -> 47641 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/stl-04.ottbin0 -> 22600 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/stl-05.ottbin0 -> 47404 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/stl-06.ottbin0 -> 18088 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/stl-07.ottbin0 -> 8434 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/stl-08.ottbin0 -> 11784 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/stl-09.ottbin0 -> 51499 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pl/stl-default.ottbin0 -> 7545 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/cnt-01.ottbin0 -> 8767 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/cnt-011.ottbin0 -> 8820 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/cnt-012.ottbin0 -> 8702 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/cnt-02.ottbin0 -> 8725 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/cnt-021.ottbin0 -> 8768 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/cnt-022.ottbin0 -> 8605 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/cnt-03.ottbin0 -> 9080 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/cnt-031.ottbin0 -> 9061 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/cnt-032.ottbin0 -> 8969 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/cnt-04.ottbin0 -> 9104 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/cnt-041.ottbin0 -> 9120 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/cnt-042.ottbin0 -> 8996 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/cnt-05.ottbin0 -> 8623 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/cnt-051.ottbin0 -> 8660 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/cnt-052.ottbin0 -> 8632 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/cnt-06.ottbin0 -> 8908 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/cnt-061.ottbin0 -> 8892 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/cnt-062.ottbin0 -> 8775 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/cnt-default.ottbin0 -> 8896 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/stl-01.ottbin0 -> 35355 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/stl-02.ottbin0 -> 25454 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/stl-03.ottbin0 -> 45704 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/stl-04.ottbin0 -> 22711 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/stl-05.ottbin0 -> 45495 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/stl-06.ottbin0 -> 16695 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/stl-07.ottbin0 -> 7943 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/stl-08.ottbin0 -> 11440 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/stl-09.ottbin0 -> 48461 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt-BR/stl-default.ottbin0 -> 6931 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/cnt-01.ottbin0 -> 11246 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/cnt-011.ottbin0 -> 11262 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/cnt-012.ottbin0 -> 11183 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/cnt-02.ottbin0 -> 11107 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/cnt-021.ottbin0 -> 11112 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/cnt-022.ottbin0 -> 10944 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/cnt-03.ottbin0 -> 11683 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/cnt-031.ottbin0 -> 11628 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/cnt-032.ottbin0 -> 11475 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/cnt-04.ottbin0 -> 11645 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/cnt-041.ottbin0 -> 11749 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/cnt-042.ottbin0 -> 11458 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/cnt-05.ottbin0 -> 10753 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/cnt-051.ottbin0 -> 10761 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/cnt-052.ottbin0 -> 10814 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/cnt-06.ottbin0 -> 11404 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/cnt-061.ottbin0 -> 11450 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/cnt-062.ottbin0 -> 11249 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/cnt-default.ottbin0 -> 11240 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/stl-01.ottbin0 -> 38394 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/stl-02.ottbin0 -> 27286 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/stl-03.ottbin0 -> 47749 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/stl-04.ottbin0 -> 25528 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/stl-05.ottbin0 -> 47677 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/stl-06.ottbin0 -> 19547 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/stl-07.ottbin0 -> 10488 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/stl-08.ottbin0 -> 13932 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/stl-09.ottbin0 -> 51649 bytes-rw-r--r--extras/source/templates/wizard/report/lang/pt/stl-default.ottbin0 -> 8912 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/cnt-01.ottbin0 -> 9703 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/cnt-011.ottbin0 -> 9772 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/cnt-012.ottbin0 -> 9627 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/cnt-02.ottbin0 -> 9703 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/cnt-021.ottbin0 -> 9746 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/cnt-022.ottbin0 -> 9572 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/cnt-03.ottbin0 -> 10057 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/cnt-031.ottbin0 -> 11196 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/cnt-032.ottbin0 -> 9911 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/cnt-04.ottbin0 -> 10140 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/cnt-041.ottbin0 -> 10260 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/cnt-042.ottbin0 -> 9964 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/cnt-05.ottbin0 -> 9551 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/cnt-051.ottbin0 -> 9589 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/cnt-052.ottbin0 -> 9557 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/cnt-06.ottbin0 -> 9847 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/cnt-061.ottbin0 -> 9794 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/cnt-062.ottbin0 -> 9684 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/cnt-default.ottbin0 -> 9847 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/stl-01.ottbin0 -> 37521 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/stl-02.ottbin0 -> 26592 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/stl-03.ottbin0 -> 47036 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/stl-04.ottbin0 -> 24746 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/stl-05.ottbin0 -> 47004 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/stl-06.ottbin0 -> 18766 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/stl-07.ottbin0 -> 9731 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/stl-08.ottbin0 -> 13117 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/stl-09.ottbin0 -> 50866 bytes-rw-r--r--extras/source/templates/wizard/report/lang/ru/stl-default.ottbin0 -> 8152 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/cnt-01.ottbin0 -> 9121 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/cnt-011.ottbin0 -> 9224 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/cnt-012.ottbin0 -> 9078 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/cnt-02.ottbin0 -> 9204 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/cnt-021.ottbin0 -> 9210 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/cnt-022.ottbin0 -> 8971 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/cnt-03.ottbin0 -> 9516 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/cnt-031.ottbin0 -> 9509 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/cnt-032.ottbin0 -> 9323 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/cnt-04.ottbin0 -> 9533 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/cnt-041.ottbin0 -> 9657 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/cnt-042.ottbin0 -> 9315 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/cnt-05.ottbin0 -> 8856 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/cnt-051.ottbin0 -> 8875 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/cnt-052.ottbin0 -> 8882 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/cnt-06.ottbin0 -> 9044 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/cnt-061.ottbin0 -> 8987 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/cnt-062.ottbin0 -> 9029 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/cnt-default.ottbin0 -> 9246 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/stl-01.ottbin0 -> 36603 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/stl-02.ottbin0 -> 25860 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/stl-03.ottbin0 -> 46251 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/stl-04.ottbin0 -> 23405 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/stl-05.ottbin0 -> 46218 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/stl-06.ottbin0 -> 18890 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/stl-07.ottbin0 -> 8333 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/stl-08.ottbin0 -> 11956 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/stl-09.ottbin0 -> 50068 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sk/stl-default.ottbin0 -> 7493 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/cnt-01.ottbin0 -> 9203 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/cnt-011.ottbin0 -> 9374 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/cnt-012.ottbin0 -> 9443 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/cnt-02.ottbin0 -> 9192 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/cnt-021.ottbin0 -> 9523 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/cnt-022.ottbin0 -> 9356 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/cnt-03.ottbin0 -> 9806 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/cnt-031.ottbin0 -> 9801 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/cnt-032.ottbin0 -> 9713 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/cnt-04.ottbin0 -> 9741 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/cnt-041.ottbin0 -> 9900 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/cnt-042.ottbin0 -> 9480 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/cnt-05.ottbin0 -> 9218 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/cnt-051.ottbin0 -> 9085 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/cnt-052.ottbin0 -> 9139 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/cnt-06.ottbin0 -> 9739 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/cnt-061.ottbin0 -> 9419 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/cnt-062.ottbin0 -> 9273 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/cnt-default.ottbin0 -> 9308 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/stl-01.ottbin0 -> 36900 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/stl-02.ottbin0 -> 25891 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/stl-03.ottbin0 -> 46338 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/stl-04.ottbin0 -> 24065 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/stl-05.ottbin0 -> 46255 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/stl-06.ottbin0 -> 18084 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/stl-07.ottbin0 -> 8470 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/stl-08.ottbin0 -> 12468 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/stl-09.ottbin0 -> 50207 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sl/stl-default.ottbin0 -> 7460 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/cnt-01.ottbin0 -> 8766 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/cnt-011.ottbin0 -> 8820 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/cnt-012.ottbin0 -> 8698 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/cnt-02.ottbin0 -> 8726 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/cnt-021.ottbin0 -> 8770 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/cnt-022.ottbin0 -> 8605 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/cnt-03.ottbin0 -> 9080 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/cnt-031.ottbin0 -> 9063 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/cnt-032.ottbin0 -> 8965 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/cnt-04.ottbin0 -> 9103 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/cnt-041.ottbin0 -> 9122 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/cnt-042.ottbin0 -> 8996 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/cnt-05.ottbin0 -> 8614 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/cnt-051.ottbin0 -> 8660 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/cnt-052.ottbin0 -> 8629 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/cnt-06.ottbin0 -> 8897 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/cnt-061.ottbin0 -> 8881 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/cnt-062.ottbin0 -> 8771 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/cnt-default.ottbin0 -> 8890 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/stl-01.ottbin0 -> 38087 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/stl-02.ottbin0 -> 25254 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/stl-03.ottbin0 -> 47673 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/stl-04.ottbin0 -> 22735 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/stl-05.ottbin0 -> 47420 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/stl-06.ottbin0 -> 16708 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/stl-07.ottbin0 -> 7867 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/stl-08.ottbin0 -> 11465 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/stl-09.ottbin0 -> 51466 bytes-rw-r--r--extras/source/templates/wizard/report/lang/sv/stl-default.ottbin0 -> 6911 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/cnt-01.ottbin0 -> 11124 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/cnt-011.ottbin0 -> 11124 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/cnt-012.ottbin0 -> 11016 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/cnt-02.ottbin0 -> 10967 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/cnt-021.ottbin0 -> 10940 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/cnt-022.ottbin0 -> 10790 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/cnt-03.ottbin0 -> 11364 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/cnt-031.ottbin0 -> 11364 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/cnt-032.ottbin0 -> 11267 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/cnt-04.ottbin0 -> 11449 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/cnt-041.ottbin0 -> 11619 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/cnt-042.ottbin0 -> 11362 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/cnt-05.ottbin0 -> 10812 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/cnt-051.ottbin0 -> 10685 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/cnt-052.ottbin0 -> 10639 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/cnt-06.ottbin0 -> 11509 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/cnt-061.ottbin0 -> 11528 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/cnt-062.ottbin0 -> 11336 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/cnt-default.ottbin0 -> 11040 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/stl-01.ottbin0 -> 38294 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/stl-02.ottbin0 -> 27580 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/stl-03.ottbin0 -> 48111 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/stl-04.ottbin0 -> 28355 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/stl-05.ottbin0 -> 48212 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/stl-06.ottbin0 -> 20214 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/stl-07.ottbin0 -> 9935 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/stl-08.ottbin0 -> 13187 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/stl-09.ottbin0 -> 51976 bytes-rwxr-xr-xextras/source/templates/wizard/report/lang/vi/stl-default.ottbin0 -> 8804 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/cnt-01.ottbin0 -> 11723 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/cnt-011.ottbin0 -> 11740 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/cnt-012.ottbin0 -> 11646 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/cnt-02.ottbin0 -> 11730 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/cnt-021.ottbin0 -> 11771 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/cnt-022.ottbin0 -> 11619 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/cnt-03.ottbin0 -> 11929 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/cnt-031.ottbin0 -> 11990 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/cnt-032.ottbin0 -> 11846 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/cnt-04.ottbin0 -> 11984 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/cnt-041.ottbin0 -> 11983 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/cnt-042.ottbin0 -> 11863 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/cnt-05.ottbin0 -> 11634 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/cnt-051.ottbin0 -> 11684 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/cnt-052.ottbin0 -> 11599 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/cnt-06.ottbin0 -> 11776 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/cnt-061.ottbin0 -> 11808 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/cnt-062.ottbin0 -> 11716 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/cnt-default.ottbin0 -> 11859 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/stl-01.ottbin0 -> 40838 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/stl-02.ottbin0 -> 28127 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/stl-03.ottbin0 -> 50561 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/stl-04.ottbin0 -> 25631 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/stl-05.ottbin0 -> 50287 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/stl-06.ottbin0 -> 19586 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/stl-07.ottbin0 -> 10742 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/stl-08.ottbin0 -> 14293 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/stl-09.ottbin0 -> 54270 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-CN/stl-default.ottbin0 -> 9777 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/cnt-01.ottbin0 -> 11721 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/cnt-011.ottbin0 -> 11738 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/cnt-012.ottbin0 -> 11638 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/cnt-02.ottbin0 -> 11728 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/cnt-021.ottbin0 -> 11769 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/cnt-022.ottbin0 -> 11613 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/cnt-03.ottbin0 -> 11928 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/cnt-031.ottbin0 -> 11987 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/cnt-032.ottbin0 -> 11841 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/cnt-04.ottbin0 -> 11975 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/cnt-041.ottbin0 -> 11981 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/cnt-042.ottbin0 -> 11853 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/cnt-05.ottbin0 -> 11629 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/cnt-051.ottbin0 -> 11681 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/cnt-052.ottbin0 -> 11594 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/cnt-06.ottbin0 -> 11783 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/cnt-061.ottbin0 -> 11804 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/cnt-062.ottbin0 -> 11712 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/cnt-default.ottbin0 -> 11858 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/stl-01.ottbin0 -> 40925 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/stl-02.ottbin0 -> 28113 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/stl-03.ottbin0 -> 50478 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/stl-04.ottbin0 -> 25627 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/stl-05.ottbin0 -> 50185 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/stl-06.ottbin0 -> 19581 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/stl-07.ottbin0 -> 10588 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/stl-08.ottbin0 -> 14278 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/stl-09.ottbin0 -> 54305 bytes-rw-r--r--extras/source/templates/wizard/report/lang/zh-TW/stl-default.ottbin0 -> 9768 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/bg/black_white.otsbin0 -> 9627 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/bg/blackberry.otsbin0 -> 9854 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/bg/default.otsbin0 -> 9500 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/bg/diner.otsbin0 -> 9522 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/bg/fall.otsbin0 -> 8860 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/bg/glacier.otsbin0 -> 9548 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/bg/green_grapes.otsbin0 -> 9634 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/bg/jeans.otsbin0 -> 9514 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/bg/marine.otsbin0 -> 8723 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/bg/millennium.otsbin0 -> 9559 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/bg/nature.otsbin0 -> 9674 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/bg/neon.otsbin0 -> 9990 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/bg/night.otsbin0 -> 9941 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/bg/nostalgic.otsbin0 -> 9267 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/bg/pastell.otsbin0 -> 9532 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/bg/pool.otsbin0 -> 9959 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/bg/pumpkin.otsbin0 -> 9728 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/bg/xos.otsbin0 -> 9301 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/cs/black_white.otsbin0 -> 8249 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/cs/blackberry.otsbin0 -> 8165 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/cs/default.otsbin0 -> 8043 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/cs/diner.otsbin0 -> 8608 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/cs/fall.otsbin0 -> 8097 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/cs/glacier.otsbin0 -> 8203 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/cs/green_grapes.otsbin0 -> 8078 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/cs/jeans.otsbin0 -> 8084 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/cs/marine.otsbin0 -> 7969 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/cs/millennium.otsbin0 -> 8207 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/cs/nature.otsbin0 -> 8126 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/cs/neon.otsbin0 -> 8438 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/cs/night.otsbin0 -> 8219 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/cs/nostalgic.otsbin0 -> 8273 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/cs/pastell.otsbin0 -> 8187 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/cs/pool.otsbin0 -> 8383 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/cs/pumpkin.otsbin0 -> 8028 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/cs/xos.otsbin0 -> 8090 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/da/black_white.otsbin0 -> 8020 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/da/blackberry.otsbin0 -> 7947 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/da/default.otsbin0 -> 7806 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/da/diner.otsbin0 -> 8413 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/da/fall.otsbin0 -> 7878 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/da/glacier.otsbin0 -> 7976 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/da/green_grapes.otsbin0 -> 7842 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/da/jeans.otsbin0 -> 7879 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/da/marine.otsbin0 -> 7721 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/da/millennium.otsbin0 -> 7993 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/da/nature.otsbin0 -> 7898 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/da/neon.otsbin0 -> 8206 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/da/night.otsbin0 -> 7990 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/da/nostalgic.otsbin0 -> 8103 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/da/pastell.otsbin0 -> 7973 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/da/pool.otsbin0 -> 8157 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/da/pumpkin.otsbin0 -> 7797 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/da/xos.otsbin0 -> 7846 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/de/black_white.otsbin0 -> 8287 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/de/blackberry.otsbin0 -> 8240 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/de/default.otsbin0 -> 8114 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/de/diner.otsbin0 -> 8821 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/de/fall.otsbin0 -> 8100 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/de/glacier.otsbin0 -> 8290 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/de/green_grapes.otsbin0 -> 8078 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/de/jeans.otsbin0 -> 8214 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/de/marine.otsbin0 -> 8040 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/de/millennium.otsbin0 -> 8327 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/de/nature.otsbin0 -> 8158 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/de/neon.otsbin0 -> 8575 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/de/night.otsbin0 -> 8325 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/de/nostalgic.otsbin0 -> 8367 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/de/pastell.otsbin0 -> 8345 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/de/pool.otsbin0 -> 8513 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/de/pumpkin.otsbin0 -> 8186 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/de/xos.otsbin0 -> 8289 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/delzip0
-rw-r--r--extras/source/templates/wizard/styles/lang/en-GB/black_white.otsbin0 -> 9710 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-GB/blackberry.otsbin0 -> 9774 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-GB/default.otsbin0 -> 9698 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-GB/diner.otsbin0 -> 12195 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-GB/fall.otsbin0 -> 9375 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-GB/glacier.otsbin0 -> 9857 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-GB/green_grapes.otsbin0 -> 9436 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-GB/jeans.otsbin0 -> 9713 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-GB/marine.otsbin0 -> 9156 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-GB/millennium.otsbin0 -> 9685 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-GB/nature.otsbin0 -> 9502 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-GB/neon.otsbin0 -> 10133 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-GB/night.otsbin0 -> 10455 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-GB/nostalgic.otsbin0 -> 9605 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-GB/pastell.otsbin0 -> 9813 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-GB/pool.otsbin0 -> 10222 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-GB/pumpkin.otsbin0 -> 9474 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-GB/xos.otsbin0 -> 9054 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-US/black_white.otsbin0 -> 8204 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-US/blackberry.otsbin0 -> 8150 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-US/default.otsbin0 -> 8018 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-US/diner.otsbin0 -> 8590 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-US/fall.otsbin0 -> 8077 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-US/glacier.otsbin0 -> 8185 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-US/green_grapes.otsbin0 -> 8055 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-US/jeans.otsbin0 -> 8059 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-US/marine.otsbin0 -> 7941 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-US/millennium.otsbin0 -> 8189 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-US/nature.otsbin0 -> 8110 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-US/neon.otsbin0 -> 8421 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-US/night.otsbin0 -> 8201 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-US/nostalgic.otsbin0 -> 8260 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-US/pastell.otsbin0 -> 8160 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-US/pool.otsbin0 -> 8360 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-US/pumpkin.otsbin0 -> 8005 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/en-US/xos.otsbin0 -> 8072 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/es/black_white.otsbin0 -> 8202 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/es/blackberry.otsbin0 -> 7934 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/es/default.otsbin0 -> 7930 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/es/diner.otsbin0 -> 8423 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/es/fall.otsbin0 -> 7886 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/es/glacier.otsbin0 -> 8083 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/es/green_grapes.otsbin0 -> 7929 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/es/jeans.otsbin0 -> 7870 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/es/marine.otsbin0 -> 7784 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/es/millennium.otsbin0 -> 8035 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/es/nature.otsbin0 -> 8012 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/es/neon.otsbin0 -> 8276 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/es/night.otsbin0 -> 8088 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/es/nostalgic.otsbin0 -> 8248 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/es/pastell.otsbin0 -> 8002 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/es/pool.otsbin0 -> 8254 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/es/pumpkin.otsbin0 -> 7928 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/es/xos.otsbin0 -> 8069 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/eu/black_white.otsbin0 -> 11666 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/eu/blackberry.otsbin0 -> 12259 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/eu/default.otsbin0 -> 11939 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/eu/diner.otsbin0 -> 14377 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/eu/fall.otsbin0 -> 12185 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/eu/glacier.otsbin0 -> 12233 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/eu/green_grapes.otsbin0 -> 11853 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/eu/jeans.otsbin0 -> 12003 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/eu/marine.otsbin0 -> 11705 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/eu/millennium.otsbin0 -> 12044 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/eu/nature.otsbin0 -> 12050 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/eu/neon.otsbin0 -> 12676 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/eu/night.otsbin0 -> 12630 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/eu/nostalgic.otsbin0 -> 10732 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/eu/pastell.otsbin0 -> 12021 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/eu/pool.otsbin0 -> 12656 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/eu/pumpkin.otsbin0 -> 12273 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/eu/xos.otsbin0 -> 11616 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/fr/black_white.otsbin0 -> 7968 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/fr/blackberry.otsbin0 -> 7954 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/fr/default.otsbin0 -> 7863 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/fr/diner.otsbin0 -> 8408 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/fr/fall.otsbin0 -> 7967 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/fr/glacier.otsbin0 -> 7996 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/fr/green_grapes.otsbin0 -> 7833 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/fr/jeans.otsbin0 -> 7954 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/fr/marine.otsbin0 -> 7842 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/fr/millennium.otsbin0 -> 8072 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/fr/nature.otsbin0 -> 7897 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/fr/neon.otsbin0 -> 8121 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/fr/night.otsbin0 -> 7969 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/fr/nostalgic.otsbin0 -> 8142 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/fr/pastell.otsbin0 -> 8022 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/fr/pool.otsbin0 -> 8136 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/fr/pumpkin.otsbin0 -> 7893 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/fr/xos.otsbin0 -> 8049 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/hu/black_white.otsbin0 -> 9996 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/hu/blackberry.otsbin0 -> 10256 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/hu/default.otsbin0 -> 10095 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/hu/diner.otsbin0 -> 12306 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/hu/fall.otsbin0 -> 9530 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/hu/glacier.otsbin0 -> 10259 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/hu/green_grapes.otsbin0 -> 9841 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/hu/jeans.otsbin0 -> 10116 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/hu/marine.otsbin0 -> 9467 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/hu/millennium.otsbin0 -> 10014 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/hu/nature.otsbin0 -> 9847 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/hu/neon.otsbin0 -> 10740 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/hu/night.otsbin0 -> 10616 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/hu/nostalgic.otsbin0 -> 9949 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/hu/pastell.otsbin0 -> 10129 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/hu/pool.otsbin0 -> 10620 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/hu/pumpkin.otsbin0 -> 9868 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/hu/xos.otsbin0 -> 9391 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/it/black_white.otsbin0 -> 8106 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/it/blackberry.otsbin0 -> 7696 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/it/default.otsbin0 -> 7921 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/it/diner.otsbin0 -> 8626 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/it/fall.otsbin0 -> 7961 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/it/glacier.otsbin0 -> 8181 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/it/green_grapes.otsbin0 -> 7611 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/it/jeans.otsbin0 -> 8080 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/it/marine.otsbin0 -> 7957 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/it/millennium.otsbin0 -> 7773 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/it/nature.otsbin0 -> 7684 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/it/neon.otsbin0 -> 8290 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/it/night.otsbin0 -> 8119 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/it/nostalgic.otsbin0 -> 8194 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/it/pastell.otsbin0 -> 7801 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/it/pool.otsbin0 -> 8325 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/it/pumpkin.otsbin0 -> 7655 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/it/xos.otsbin0 -> 8213 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ja/black_white.otsbin0 -> 8483 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ja/blackberry.otsbin0 -> 8308 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ja/default.otsbin0 -> 8266 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ja/diner.otsbin0 -> 8655 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ja/fall.otsbin0 -> 8310 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ja/glacier.otsbin0 -> 8458 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ja/green_grapes.otsbin0 -> 8159 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ja/jeans.otsbin0 -> 8414 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ja/marine.otsbin0 -> 8160 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ja/millennium.otsbin0 -> 8388 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ja/nature.otsbin0 -> 8213 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ja/neon.otsbin0 -> 8521 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ja/night.otsbin0 -> 8455 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ja/nostalgic.otsbin0 -> 8591 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ja/pastell.otsbin0 -> 8443 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ja/pool.otsbin0 -> 8579 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ja/pumpkin.otsbin0 -> 8186 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ja/xos.otsbin0 -> 8453 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/km/black_white.otsbin0 -> 11108 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/km/blackberry.otsbin0 -> 11416 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/km/default.otsbin0 -> 11153 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/km/diner.otsbin0 -> 12436 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/km/fall.otsbin0 -> 11223 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/km/glacier.otsbin0 -> 11499 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/km/green_grapes.otsbin0 -> 10882 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/km/jeans.otsbin0 -> 10985 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/km/marine.otsbin0 -> 11056 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/km/millennium.otsbin0 -> 11279 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/km/nature.otsbin0 -> 11016 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/km/neon.otsbin0 -> 11886 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/km/night.otsbin0 -> 11749 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/km/nostalgic.otsbin0 -> 11487 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/km/pastell.otsbin0 -> 10891 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/km/pool.otsbin0 -> 11706 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/km/pumpkin.otsbin0 -> 10942 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/km/xos.otsbin0 -> 10931 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ko/black_white.otsbin0 -> 8461 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ko/blackberry.otsbin0 -> 8361 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ko/default.otsbin0 -> 8219 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ko/diner.otsbin0 -> 8731 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ko/fall.otsbin0 -> 8256 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ko/glacier.otsbin0 -> 8409 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ko/green_grapes.otsbin0 -> 8235 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ko/jeans.otsbin0 -> 8319 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ko/marine.otsbin0 -> 8135 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ko/millennium.otsbin0 -> 8384 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ko/nature.otsbin0 -> 8263 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ko/neon.otsbin0 -> 8508 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ko/night.otsbin0 -> 8411 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ko/nostalgic.otsbin0 -> 8552 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ko/pastell.otsbin0 -> 8381 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ko/pool.otsbin0 -> 8523 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ko/pumpkin.otsbin0 -> 8258 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ko/xos.otsbin0 -> 8342 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/makefile.mk45
-rw-r--r--extras/source/templates/wizard/styles/lang/nl/black_white.otsbin0 -> 7867 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/nl/blackberry.otsbin0 -> 7814 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/nl/default.otsbin0 -> 7766 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/nl/diner.otsbin0 -> 8187 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/nl/fall.otsbin0 -> 7714 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/nl/glacier.otsbin0 -> 7902 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/nl/green_grapes.otsbin0 -> 7711 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/nl/jeans.otsbin0 -> 7750 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/nl/marine.otsbin0 -> 7605 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/nl/millennium.otsbin0 -> 7878 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/nl/nature.otsbin0 -> 7777 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/nl/neon.otsbin0 -> 8000 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/nl/night.otsbin0 -> 7894 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/nl/nostalgic.otsbin0 -> 7960 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/nl/pastell.otsbin0 -> 7890 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/nl/pool.otsbin0 -> 8118 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/nl/pumpkin.otsbin0 -> 7766 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/nl/xos.otsbin0 -> 7874 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pl/black_white.otsbin0 -> 8198 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pl/blackberry.otsbin0 -> 8017 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pl/default.otsbin0 -> 7908 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pl/diner.otsbin0 -> 8561 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pl/fall.otsbin0 -> 7908 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pl/glacier.otsbin0 -> 8021 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pl/green_grapes.otsbin0 -> 7886 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pl/jeans.otsbin0 -> 7853 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pl/marine.otsbin0 -> 7787 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pl/millennium.otsbin0 -> 7996 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pl/nature.otsbin0 -> 7895 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pl/neon.otsbin0 -> 8152 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pl/night.otsbin0 -> 8025 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pl/nostalgic.otsbin0 -> 8332 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pl/pastell.otsbin0 -> 7997 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pl/pool.otsbin0 -> 8371 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pl/pumpkin.otsbin0 -> 7920 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pl/xos.otsbin0 -> 8040 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt-BR/black_white.otsbin0 -> 8261 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt-BR/blackberry.otsbin0 -> 8243 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt-BR/default.otsbin0 -> 8137 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt-BR/diner.otsbin0 -> 8774 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt-BR/fall.otsbin0 -> 8213 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt-BR/glacier.otsbin0 -> 8299 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt-BR/green_grapes.otsbin0 -> 8153 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt-BR/jeans.otsbin0 -> 8195 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt-BR/marine.otsbin0 -> 8123 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt-BR/millennium.otsbin0 -> 8395 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt-BR/nature.otsbin0 -> 8223 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt-BR/neon.otsbin0 -> 8479 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt-BR/night.otsbin0 -> 8315 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt-BR/nostalgic.otsbin0 -> 8391 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt-BR/pastell.otsbin0 -> 8329 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt-BR/pool.otsbin0 -> 8446 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt-BR/pumpkin.otsbin0 -> 8203 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt-BR/xos.otsbin0 -> 8378 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt/black_white.otsbin0 -> 8017 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt/blackberry.otsbin0 -> 7912 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt/default.otsbin0 -> 7842 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt/diner.otsbin0 -> 8344 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt/fall.otsbin0 -> 8027 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt/glacier.otsbin0 -> 8004 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt/green_grapes.otsbin0 -> 7845 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt/jeans.otsbin0 -> 7885 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt/marine.otsbin0 -> 7873 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt/millennium.otsbin0 -> 8109 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt/nature.otsbin0 -> 7910 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt/neon.otsbin0 -> 8310 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt/night.otsbin0 -> 8013 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt/nostalgic.otsbin0 -> 8078 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt/pastell.otsbin0 -> 7981 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt/pool.otsbin0 -> 8203 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt/pumpkin.otsbin0 -> 7929 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/pt/xos.otsbin0 -> 8086 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ru/black_white.otsbin0 -> 8177 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ru/blackberry.otsbin0 -> 8031 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ru/default.otsbin0 -> 7923 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ru/diner.otsbin0 -> 8515 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ru/fall.otsbin0 -> 8165 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ru/glacier.otsbin0 -> 8063 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ru/green_grapes.otsbin0 -> 7979 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ru/jeans.otsbin0 -> 8076 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ru/marine.otsbin0 -> 8054 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ru/millennium.otsbin0 -> 8210 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ru/nature.otsbin0 -> 8006 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ru/neon.otsbin0 -> 8379 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ru/night.otsbin0 -> 8075 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ru/nostalgic.otsbin0 -> 8220 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ru/pastell.otsbin0 -> 8108 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ru/pool.otsbin0 -> 8229 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ru/pumpkin.otsbin0 -> 7929 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/ru/xos.otsbin0 -> 8138 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sk/black_white.otsbin0 -> 9208 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sk/blackberry.otsbin0 -> 9339 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sk/default.otsbin0 -> 9055 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sk/diner.otsbin0 -> 11420 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sk/fall.otsbin0 -> 8635 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sk/glacier.otsbin0 -> 9298 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sk/green_grapes.otsbin0 -> 9177 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sk/jeans.otsbin0 -> 9119 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sk/marine.otsbin0 -> 8554 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sk/millennium.otsbin0 -> 9270 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sk/nature.otsbin0 -> 9275 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sk/neon.otsbin0 -> 9533 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sk/night.otsbin0 -> 9599 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sk/nostalgic.otsbin0 -> 9123 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sk/pastell.otsbin0 -> 9180 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sk/pool.otsbin0 -> 9570 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sk/pumpkin.otsbin0 -> 9264 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sk/xos.otsbin0 -> 8795 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sl/black_white.otsbin0 -> 8644 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sl/blackberry.otsbin0 -> 8499 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sl/default.otsbin0 -> 8507 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sl/diner.otsbin0 -> 8906 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sl/fall.otsbin0 -> 8566 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sl/glacier.otsbin0 -> 8590 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sl/green_grapes.otsbin0 -> 8372 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sl/jeans.otsbin0 -> 8391 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sl/marine.otsbin0 -> 8497 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sl/millennium.otsbin0 -> 8512 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sl/nature.otsbin0 -> 8433 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sl/neon.otsbin0 -> 8841 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sl/night.otsbin0 -> 8615 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sl/nostalgic.otsbin0 -> 8695 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sl/pastell.otsbin0 -> 8581 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sl/pool.otsbin0 -> 8802 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sl/pumpkin.otsbin0 -> 8388 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sl/xos.otsbin0 -> 8685 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sv/black_white.otsbin0 -> 8182 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sv/blackberry.otsbin0 -> 8199 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sv/default.otsbin0 -> 8059 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sv/diner.otsbin0 -> 8661 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sv/fall.otsbin0 -> 8010 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sv/glacier.otsbin0 -> 8237 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sv/green_grapes.otsbin0 -> 8070 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sv/jeans.otsbin0 -> 8097 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sv/marine.otsbin0 -> 7950 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sv/millennium.otsbin0 -> 8237 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sv/nature.otsbin0 -> 8096 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sv/neon.otsbin0 -> 8442 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sv/night.otsbin0 -> 8264 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sv/nostalgic.otsbin0 -> 8210 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sv/pastell.otsbin0 -> 8200 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sv/pool.otsbin0 -> 8419 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sv/pumpkin.otsbin0 -> 8109 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/sv/xos.otsbin0 -> 8237 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/vi/black_white.otsbin0 -> 11371 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/vi/blackberry.otsbin0 -> 11347 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/vi/default.otsbin0 -> 11174 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/vi/diner.otsbin0 -> 14551 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/vi/fall.otsbin0 -> 10880 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/vi/glacier.otsbin0 -> 11410 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/vi/green_grapes.otsbin0 -> 11477 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/vi/jeans.otsbin0 -> 11891 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/vi/marine.otsbin0 -> 10849 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/vi/millennium.otsbin0 -> 10892 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/vi/nature.otsbin0 -> 11306 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/vi/neon.otsbin0 -> 11900 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/vi/night.otsbin0 -> 12036 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/vi/nostalgic.otsbin0 -> 10889 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/vi/pastell.otsbin0 -> 11216 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/vi/pool.otsbin0 -> 11498 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/vi/pumpkin.otsbin0 -> 11236 bytes-rwxr-xr-xextras/source/templates/wizard/styles/lang/vi/xos.otsbin0 -> 10864 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-CN/black_white.otsbin0 -> 8351 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-CN/blackberry.otsbin0 -> 8199 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-CN/default.otsbin0 -> 8050 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-CN/diner.otsbin0 -> 8596 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-CN/fall.otsbin0 -> 8099 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-CN/glacier.otsbin0 -> 8258 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-CN/green_grapes.otsbin0 -> 8065 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-CN/jeans.otsbin0 -> 8198 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-CN/marine.otsbin0 -> 7968 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-CN/millennium.otsbin0 -> 8219 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-CN/nature.otsbin0 -> 8160 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-CN/neon.otsbin0 -> 8383 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-CN/night.otsbin0 -> 8271 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-CN/nostalgic.otsbin0 -> 8336 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-CN/pastell.otsbin0 -> 8221 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-CN/pool.otsbin0 -> 8360 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-CN/pumpkin.otsbin0 -> 8141 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-CN/xos.otsbin0 -> 8201 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-TW/black_white.otsbin0 -> 8311 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-TW/blackberry.otsbin0 -> 8109 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-TW/default.otsbin0 -> 8078 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-TW/diner.otsbin0 -> 8616 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-TW/fall.otsbin0 -> 8096 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-TW/glacier.otsbin0 -> 8234 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-TW/green_grapes.otsbin0 -> 7988 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-TW/jeans.otsbin0 -> 8148 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-TW/marine.otsbin0 -> 7998 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-TW/millennium.otsbin0 -> 8204 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-TW/nature.otsbin0 -> 8097 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-TW/neon.otsbin0 -> 8301 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-TW/night.otsbin0 -> 8199 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-TW/nostalgic.otsbin0 -> 8288 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-TW/pastell.otsbin0 -> 8190 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-TW/pool.otsbin0 -> 8302 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-TW/pumpkin.otsbin0 -> 8026 bytes-rw-r--r--extras/source/templates/wizard/styles/lang/zh-TW/xos.otsbin0 -> 8148 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/cnt-album.stwbin0 -> 12433 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/cnt-bilingual.stwbin0 -> 9428 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/cnt-chapters.stwbin0 -> 11164 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/cnt-empty.stwbin0 -> 7796 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/cnt-fixonecol.stwbin0 -> 10541 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/cnt-fixtwocol.stwbin0 -> 11025 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/cnt-formcontact.stwbin0 -> 8553 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/cnt-formcustomer.stwbin0 -> 8680 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/cnt-formfix.stwbin0 -> 8747 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/cnt-formvar.stwbin0 -> 8860 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/cnt-list.stwbin0 -> 12060 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/cnt-onepic.stwbin0 -> 13677 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/cnt-standard.stwbin0 -> 9223 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/cnt-twotitles.stwbin0 -> 10889 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/stl-banana.stwbin0 -> 9588 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/stl-blkjeans.stwbin0 -> 13366 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/stl-blue.stwbin0 -> 9525 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/stl-blueblock.stwbin0 -> 14050 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/stl-bluejeans.stwbin0 -> 14856 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/stl-fieryred.stwbin0 -> 13971 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/stl-hightech.stwbin0 -> 15868 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/stl-mint.stwbin0 -> 12165 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/stl-music.stwbin0 -> 11264 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/stl-nostalg.stwbin0 -> 9609 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/stl-orange.stwbin0 -> 9798 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/stl-petrol.stwbin0 -> 9726 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/stl-seventies.stwbin0 -> 12802 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/stl-standard.stwbin0 -> 13107 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/stl-strwbryice.stwbin0 -> 12415 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/stl-sun.stwbin0 -> 9615 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/stl-tracks.stwbin0 -> 11798 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/stl-turquoise.stwbin0 -> 9811 bytes-rw-r--r--extras/source/templates/wizard/web/lang/bg/stl-wetblue.stwbin0 -> 13994 bytes-rw-r--r--extras/source/templates/wizard/web/lang/delzip1
-rw-r--r--extras/source/templates/wizard/web/lang/makefile.mk46
-rw-r--r--extras/source/truetype/symbol/OpenSymbol.sfd107080
-rw-r--r--extras/source/truetype/symbol/opens___.ttfbin0 -> 206612 bytes-rw-r--r--extras/source/wordbook/delzip2
-rw-r--r--extras/source/wordbook/lang/bg/soffice.dicbin0 -> 819 bytes-rw-r--r--extras/source/wordbook/lang/cs/soffice.dicbin0 -> 819 bytes-rw-r--r--extras/source/wordbook/lang/da/soffice.dicbin0 -> 819 bytes-rw-r--r--extras/source/wordbook/lang/de/soffice.dicbin0 -> 1412 bytes-rw-r--r--extras/source/wordbook/lang/delzip1
-rw-r--r--extras/source/wordbook/lang/en-GB/soffice.dicbin0 -> 819 bytes-rw-r--r--extras/source/wordbook/lang/en-US/soffice.dicbin0 -> 819 bytes-rw-r--r--extras/source/wordbook/lang/es/soffice.dicbin0 -> 819 bytes-rwxr-xr-xextras/source/wordbook/lang/eu/soffice.dicbin0 -> 786 bytes-rw-r--r--extras/source/wordbook/lang/fr/soffice.dicbin0 -> 819 bytes-rwxr-xr-xextras/source/wordbook/lang/hu/soffice.dicbin0 -> 819 bytes-rw-r--r--extras/source/wordbook/lang/it/soffice.dicbin0 -> 819 bytes-rw-r--r--extras/source/wordbook/lang/makefile.mk47
-rw-r--r--extras/source/wordbook/lang/nl/soffice.dicbin0 -> 819 bytes-rw-r--r--extras/source/wordbook/lang/pl/soffice.dicbin0 -> 819 bytes-rw-r--r--extras/source/wordbook/lang/pt-BR/soffice.dicbin0 -> 819 bytes-rw-r--r--extras/source/wordbook/lang/pt/soffice.dicbin0 -> 819 bytes-rw-r--r--extras/source/wordbook/lang/ru/soffice.dicbin0 -> 819 bytes-rw-r--r--extras/source/wordbook/lang/sk/soffice.dicbin0 -> 819 bytes-rw-r--r--extras/source/wordbook/lang/sl/soffice.dicbin0 -> 1114 bytes-rw-r--r--extras/source/wordbook/lang/sv/soffice.dicbin0 -> 810 bytes-rw-r--r--extras/source/wordbook/makefile.mk57
-rw-r--r--extras/source/wordbook/oracle.dic626
-rw-r--r--extras/source/wordbook/standard.dic4
-rw-r--r--extras/unx/source/bitmaps/delzip1
-rw-r--r--extras/unx/source/bitmaps/makefile.mk47
-rw-r--r--extras/unx/source/bitmaps/psetup.xpm31
-rw-r--r--extras/unx/source/bitmaps/psetupl.xpm49
-rw-r--r--extras/unx/source/fonts/fonts.dir2
-rw-r--r--extras/unx/source/kde/applnk/.directory5
-rw-r--r--extras/unx/source/kde/applnk/SPAdmin.kdelnk23
-rw-r--r--extras/unx/source/kde/applnk/Setup.kdelnk14
-rw-r--r--extras/unx/source/kde/applnk/StarOffice.kdelnk14
-rw-r--r--extras/unx/source/kde/applnk/delzip1
-rw-r--r--extras/unx/source/kde/applnk/makefile.mk47
-rw-r--r--extras/unx/source/kde/icons/delzip1
-rw-r--r--extras/unx/source/kde/icons/htm.xpm52
-rw-r--r--extras/unx/source/kde/icons/html.xpm52
-rw-r--r--extras/unx/source/kde/icons/makefile.mk47
-rw-r--r--extras/unx/source/kde/icons/mini/delzip1
-rw-r--r--extras/unx/source/kde/icons/mini/htm.xpm36
-rw-r--r--extras/unx/source/kde/icons/mini/html.xpm36
-rw-r--r--extras/unx/source/kde/icons/mini/makefile.mk47
-rw-r--r--extras/unx/source/kde/icons/mini/psetup.xpm31
-rw-r--r--extras/unx/source/kde/icons/mini/sch.xpm36
-rw-r--r--extras/unx/source/kde/icons/mini/sda.xpm36
-rw-r--r--extras/unx/source/kde/icons/mini/sdc.xpm36
-rw-r--r--extras/unx/source/kde/icons/mini/sdd.xpm36
-rw-r--r--extras/unx/source/kde/icons/mini/sdf.xpm36
-rw-r--r--extras/unx/source/kde/icons/mini/sds.xpm36
-rw-r--r--extras/unx/source/kde/icons/mini/sdw.xpm36
-rw-r--r--extras/unx/source/kde/icons/mini/set52.xpm40
-rw-r--r--extras/unx/source/kde/icons/mini/sgl.xpm36
-rw-r--r--extras/unx/source/kde/icons/mini/smf.xpm36
-rw-r--r--extras/unx/source/kde/icons/mini/so52.xpm40
-rw-r--r--extras/unx/source/kde/icons/psetup.xpm49
-rw-r--r--extras/unx/source/kde/icons/sch.xpm52
-rw-r--r--extras/unx/source/kde/icons/sda.xpm52
-rw-r--r--extras/unx/source/kde/icons/sdc.xpm52
-rw-r--r--extras/unx/source/kde/icons/sdd.xpm52
-rw-r--r--extras/unx/source/kde/icons/sdf.xpm52
-rw-r--r--extras/unx/source/kde/icons/sds.xpm52
-rw-r--r--extras/unx/source/kde/icons/sdw.xpm52
-rw-r--r--extras/unx/source/kde/icons/set52.xpm52
-rw-r--r--extras/unx/source/kde/icons/sgl.xpm52
-rw-r--r--extras/unx/source/kde/icons/smf.xpm52
-rw-r--r--extras/unx/source/kde/icons/so52.xpm52
-rw-r--r--extras/unx/source/kde/mimelnk/application/delzip1
-rw-r--r--extras/unx/source/kde/mimelnk/application/makefile.mk47
-rw-r--r--extras/unx/source/kde/mimelnk/application/x-scalc.kdelnk10
-rw-r--r--extras/unx/source/kde/mimelnk/application/x-sda.kdelnk10
-rw-r--r--extras/unx/source/kde/mimelnk/application/x-sdf.kdelnk10
-rw-r--r--extras/unx/source/kde/mimelnk/application/x-sdraw.kdelnk10
-rw-r--r--extras/unx/source/kde/mimelnk/application/x-sds.kdelnk10
-rw-r--r--extras/unx/source/kde/mimelnk/application/x-sgl.kdelnk10
-rw-r--r--extras/unx/source/kde/mimelnk/application/x-smf.kdelnk10
-rw-r--r--extras/unx/source/kde/mimelnk/application/x-swriter.kdelnk21
-rw-r--r--extras/unx/source/kde/mimelnk/text/delzip1
-rw-r--r--extras/unx/source/kde/mimelnk/text/html.kdelnk10
-rw-r--r--extras/unx/source/kde/mimelnk/text/makefile.mk49
-rw-r--r--extras/util/target.pmk197
-rwxr-xr-xfetch_tarballs.sh162
-rw-r--r--fileaccess/prj/build.lst3
-rw-r--r--fileaccess/prj/d.lst6
-rw-r--r--fileaccess/source/FileAccess.cxx941
-rw-r--r--fileaccess/source/fileacc.component34
-rw-r--r--fileaccess/source/fileacc.xml62
-rw-r--r--fileaccess/source/makefile.mk76
-rw-r--r--filter/inc/filter.hrc65
-rw-r--r--filter/inc/filter/msfilter/countryid.hxx318
-rw-r--r--filter/inc/filter/msfilter/escherex.hxx1613
-rw-r--r--filter/inc/filter/msfilter/mscodec.hxx340
-rw-r--r--filter/inc/filter/msfilter/msdffimp.hxx861
-rw-r--r--filter/inc/filter/msfilter/msfilterdllapi.h41
-rw-r--r--filter/inc/filter/msfilter/msfiltertracer.hxx96
-rw-r--r--filter/inc/filter/msfilter/msocximex.hxx1420
-rw-r--r--filter/inc/filter/msfilter/msoleexp.hxx60
-rw-r--r--filter/inc/filter/msfilter/msvbahelper.hxx56
-rw-r--r--filter/inc/filter/msfilter/svdfppt.hxx1440
-rw-r--r--filter/inc/filter/msfilter/svxmsbas.hxx98
-rw-r--r--filter/inc/makefile.mk47
-rw-r--r--filter/inc/pch/precompiled_filter.cxx29
-rw-r--r--filter/inc/pch/precompiled_filter.hxx32
-rw-r--r--filter/prj/build.lst47
-rw-r--r--filter/prj/d.lst69
-rw-r--r--filter/qa/complex/filter/detection/typeDetection/Helper.java443
-rw-r--r--filter/qa/complex/filter/detection/typeDetection/TypeDetection.java559
-rw-r--r--filter/qa/complex/filter/detection/typeDetection/TypeDetection.props13
-rw-r--r--filter/qa/complex/filter/detection/typeDetection/files.csv117
-rw-r--r--filter/qa/complex/filter/detection/typeDetection/makefile.mk118
-rw-r--r--filter/qa/complex/filter/detection/typeDetection/preselectedFilter.csv6
-rw-r--r--filter/qa/complex/filter/detection/typeDetection/preselectedType.csv6
-rw-r--r--filter/qa/complex/filter/detection/typeDetection/serviceName.csv6
-rw-r--r--filter/qa/complex/filter/misc/FinalizedMandatoryTest.java372
-rw-r--r--filter/qa/complex/filter/misc/TypeDetection6FileFormat.java142
-rwxr-xr-xfilter/qa/complex/filter/misc/TypeDetection6FileFormat.xcu25
-rwxr-xr-xfilter/qa/complex/filter/misc/makefile.mk59
-rw-r--r--filter/source/config/cache/basecontainer.cxx638
-rw-r--r--filter/source/config/cache/basecontainer.hxx323
-rw-r--r--filter/source/config/cache/cacheitem.cxx443
-rw-r--r--filter/source/config/cache/cacheitem.hxx261
-rw-r--r--filter/source/config/cache/cacheupdatelistener.cxx246
-rw-r--r--filter/source/config/cache/cacheupdatelistener.hxx147
-rw-r--r--filter/source/config/cache/configflush.cxx168
-rw-r--r--filter/source/config/cache/configflush.hxx128
-rw-r--r--filter/source/config/cache/constant.hxx217
-rw-r--r--filter/source/config/cache/contenthandlerfactory.cxx201
-rw-r--r--filter/source/config/cache/contenthandlerfactory.hxx148
-rw-r--r--filter/source/config/cache/filtercache.cxx2536
-rw-r--r--filter/source/config/cache/filtercache.hxx1066
-rw-r--r--filter/source/config/cache/filterconfig1.component46
-rw-r--r--filter/source/config/cache/filterfactory.cxx724
-rw-r--r--filter/source/config/cache/filterfactory.hxx212
-rw-r--r--filter/source/config/cache/frameloaderfactory.cxx198
-rw-r--r--filter/source/config/cache/frameloaderfactory.hxx148
-rw-r--r--filter/source/config/cache/lateinitlistener.cxx136
-rw-r--r--filter/source/config/cache/lateinitlistener.hxx125
-rw-r--r--filter/source/config/cache/lateinitthread.cxx80
-rw-r--r--filter/source/config/cache/lateinitthread.hxx89
-rw-r--r--filter/source/config/cache/macros.hxx132
-rw-r--r--filter/source/config/cache/makefile.mk87
-rw-r--r--filter/source/config/cache/querytokenizer.cxx99
-rw-r--r--filter/source/config/cache/querytokenizer.hxx115
-rw-r--r--filter/source/config/cache/registration.cxx123
-rw-r--r--filter/source/config/cache/registration.hxx121
-rw-r--r--filter/source/config/cache/typedetection.cxx1257
-rw-r--r--filter/source/config/cache/typedetection.hxx459
-rw-r--r--filter/source/config/cache/versions.hxx36
-rw-r--r--filter/source/config/fragments/contenthandlers/com_sun_star_comp_framework_SoundHandler.xcu3
-rw-r--r--filter/source/config/fragments/contenthandlers/com_sun_star_comp_framework_oxt_handler.xcu3
-rw-r--r--filter/source/config/fragments/delzip0
-rw-r--r--filter/source/config/fragments/fcfg_base.mk51
-rw-r--r--filter/source/config/fragments/fcfg_calc.mk108
-rw-r--r--filter/source/config/fragments/fcfg_calc_bf.mk59
-rw-r--r--filter/source/config/fragments/fcfg_chart.mk48
-rw-r--r--filter/source/config/fragments/fcfg_chart_bf.mk47
-rw-r--r--filter/source/config/fragments/fcfg_database.mk45
-rw-r--r--filter/source/config/fragments/fcfg_draw.mk56
-rw-r--r--filter/source/config/fragments/fcfg_draw_bf.mk51
-rw-r--r--filter/source/config/fragments/fcfg_drawgraphics.mk117
-rw-r--r--filter/source/config/fragments/fcfg_global.mk59
-rw-r--r--filter/source/config/fragments/fcfg_global_bf.mk55
-rw-r--r--filter/source/config/fragments/fcfg_impress.mk75
-rw-r--r--filter/source/config/fragments/fcfg_impress_bf.mk66
-rw-r--r--filter/source/config/fragments/fcfg_impressgraphics.mk83
-rw-r--r--filter/source/config/fragments/fcfg_internalgraphics.mk109
-rw-r--r--filter/source/config/fragments/fcfg_math.mk55
-rw-r--r--filter/source/config/fragments/fcfg_math_bf.mk50
-rw-r--r--filter/source/config/fragments/fcfg_palm.mk44
-rw-r--r--filter/source/config/fragments/fcfg_pocketexcel.mk44
-rw-r--r--filter/source/config/fragments/fcfg_pocketword.mk44
-rw-r--r--filter/source/config/fragments/fcfg_w4w.mk260
-rw-r--r--filter/source/config/fragments/fcfg_web.mk65
-rw-r--r--filter/source/config/fragments/fcfg_web_bf.mk54
-rw-r--r--filter/source/config/fragments/fcfg_writer.mk106
-rw-r--r--filter/source/config/fragments/fcfg_writer_bf.mk63
-rw-r--r--filter/source/config/fragments/fcfg_xslt.mk55
-rw-r--r--filter/source/config/fragments/filters/Ami_Pro_1_x_3_1__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/AportisDoc_Palm_DB.xcu13
-rw-r--r--filter/source/config/fragments/filters/BMP___MS_Windows.xcu13
-rw-r--r--filter/source/config/fragments/filters/CGM___Computer_Graphics_Metafile.xcu13
-rw-r--r--filter/source/config/fragments/filters/CTOS_DEF__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/Claris_Works__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/DCA_FFT_Final_Form_Text__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/DCA_Revisable_Form_Text__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/DCA_with_Display_Write_5__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/DEC_DX__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/DEC_WPS_PLUS__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/DIF.xcu13
-rw-r--r--filter/source/config/fragments/filters/DXF___AutoCAD_Interchange.xcu13
-rw-r--r--filter/source/config/fragments/filters/DataGeneral_CEO_Write__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/DisplayWrite_2_0_4_x__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/DisplayWrite_5_x__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/DocBook_File.xcu13
-rw-r--r--filter/source/config/fragments/filters/EBCDIC__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/EMF___MS_Windows_Metafile.xcu13
-rw-r--r--filter/source/config/fragments/filters/EPS___Encapsulated_PostScript.xcu13
-rw-r--r--filter/source/config/fragments/filters/Enable__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/Frame_Maker_MIF_3_0__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/Frame_Maker_MIF_4_0__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/Frame_Maker_MIF_5_0__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/Frame_Work_III__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/Frame_Work_IV___W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/GIF___Graphics_Interchange.xcu13
-rw-r--r--filter/source/config/fragments/filters/HP_AdvanceWrite_Plus__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/HTML.xcu10
-rw-r--r--filter/source/config/fragments/filters/HTML_MasterDoc.xcu13
-rw-r--r--filter/source/config/fragments/filters/HTML_MasterDoc_ui.xcu5
-rw-r--r--filter/source/config/fragments/filters/HTML__StarCalc_.xcu10
-rw-r--r--filter/source/config/fragments/filters/HTML__StarCalc__ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/HTML__StarWriter_.xcu10
-rw-r--r--filter/source/config/fragments/filters/HTML__StarWriter__ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/HTML_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/ICL_Office_Power_6__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/ICL_Office_Power_7__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/Interleaf_5___6__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/Interleaf__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/JPG___JPEG.xcu13
-rw-r--r--filter/source/config/fragments/filters/Legacy_Winstar_onGO__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/Lotus.xcu13
-rw-r--r--filter/source/config/fragments/filters/Lotus_1_2_3_1_0__DOS___StarWriter_.xcu13
-rw-r--r--filter/source/config/fragments/filters/Lotus_1_2_3_1_0__WIN___StarWriter_.xcu13
-rw-r--r--filter/source/config/fragments/filters/Lotus_Manuscript__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/MASS_11_Rel__8_0_8_3__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/MASS_11_Rel__8_5_9_0__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/MET___OS_2_Metafile.xcu13
-rw-r--r--filter/source/config/fragments/filters/MS_Excel_2003_XML.xcu10
-rw-r--r--filter/source/config/fragments/filters/MS_Excel_2003_XML_ui.xcu12
-rw-r--r--filter/source/config/fragments/filters/MS_Excel_4_0.xcu13
-rw-r--r--filter/source/config/fragments/filters/MS_Excel_4_0_Vorlage_Template.xcu10
-rw-r--r--filter/source/config/fragments/filters/MS_Excel_4_0_Vorlage_Template_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/MS_Excel_4_0__StarWriter_.xcu13
-rw-r--r--filter/source/config/fragments/filters/MS_Excel_5_0_95.xcu13
-rw-r--r--filter/source/config/fragments/filters/MS_Excel_5_0_95_Vorlage_Template.xcu10
-rw-r--r--filter/source/config/fragments/filters/MS_Excel_5_0_95_Vorlage_Template_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/MS_Excel_5_0__StarWriter_.xcu13
-rw-r--r--filter/source/config/fragments/filters/MS_Excel_95.xcu13
-rw-r--r--filter/source/config/fragments/filters/MS_Excel_95_Vorlage_Template.xcu10
-rw-r--r--filter/source/config/fragments/filters/MS_Excel_95_Vorlage_Template_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/MS_Excel_95__StarWriter_.xcu13
-rw-r--r--filter/source/config/fragments/filters/MS_Excel_97.xcu13
-rw-r--r--filter/source/config/fragments/filters/MS_Excel_97_Vorlage_Template.xcu10
-rw-r--r--filter/source/config/fragments/filters/MS_Excel_97_Vorlage_Template_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/MS_MacWord_3_0__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/MS_MacWord_4_0__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/MS_MacWord_5_x__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/MS_PowerPoint_97.xcu13
-rw-r--r--filter/source/config/fragments/filters/MS_PowerPoint_97_Vorlage.xcu10
-rw-r--r--filter/source/config/fragments/filters/MS_PowerPoint_97_Vorlage_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/MS_WinWord_1_x__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/MS_WinWord_2_x__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/MS_WinWord_5.xcu13
-rw-r--r--filter/source/config/fragments/filters/MS_WinWord_6_0.xcu13
-rw-r--r--filter/source/config/fragments/filters/MS_Word_2003_XML.xcu10
-rw-r--r--filter/source/config/fragments/filters/MS_Word_2003_XML_ui.xcu12
-rw-r--r--filter/source/config/fragments/filters/MS_Word_2007_XML.xcu13
-rw-r--r--filter/source/config/fragments/filters/MS_Word_2007_XML_Template.xcu13
-rw-r--r--filter/source/config/fragments/filters/MS_Word_2007_XML_Template_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/MS_Word_2007_XML_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/MS_Word_3_x__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/MS_Word_4_x__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/MS_Word_5_x__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/MS_Word_6_x__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/MS_Word_95.xcu13
-rw-r--r--filter/source/config/fragments/filters/MS_Word_95_Vorlage.xcu10
-rw-r--r--filter/source/config/fragments/filters/MS_Word_95_Vorlage_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/MS_Word_97.xcu13
-rw-r--r--filter/source/config/fragments/filters/MS_Word_97_Vorlage.xcu10
-rw-r--r--filter/source/config/fragments/filters/MS_Word_97_Vorlage_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/MS_Works_2_0_DOS__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/MS_Works_3_0_Win__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/MS_Works_4_0_Mac__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/Mac_Write_4_x_5_0__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/Mac_Write_II__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/Mac_Write_Pro__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/MathML_XML__Math_.xcu13
-rw-r--r--filter/source/config/fragments/filters/MathType_3_x.xcu13
-rw-r--r--filter/source/config/fragments/filters/MiniCalc__Palm_.xcu13
-rw-r--r--filter/source/config/fragments/filters/MultiMate_3_3__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/MultiMate_4__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/MultiMate_Adv__3_6__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/MultiMate_Adv__II_3_7__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/NAVY_DIF__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/OfficeWriter_4_0__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/OfficeWriter_5_0__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/OfficeWriter_6_x__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/PBM___Portable_Bitmap.xcu13
-rw-r--r--filter/source/config/fragments/filters/PCT___Mac_Pict.xcu13
-rw-r--r--filter/source/config/fragments/filters/PCX___Zsoft_Paintbrush.xcu13
-rw-r--r--filter/source/config/fragments/filters/PFS_First_Choice_1_0__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/PFS_First_Choice_2_0__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/PFS_First_Choice_3_0__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/PFS_Write__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/PGM___Portable_Graymap.xcu13
-rw-r--r--filter/source/config/fragments/filters/PNG___Portable_Network_Graphic.xcu13
-rw-r--r--filter/source/config/fragments/filters/PPM___Portable_Pixelmap.xcu13
-rw-r--r--filter/source/config/fragments/filters/PSD___Adobe_Photoshop.xcu13
-rw-r--r--filter/source/config/fragments/filters/Peach_Text__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/PocketWord_File.xcu13
-rw-r--r--filter/source/config/fragments/filters/Pocket_Excel.xcu13
-rw-r--r--filter/source/config/fragments/filters/Professional_Write_1_0__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/Professional_Write_2_x__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/Professional_Write_Plus__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/QPro.xcu13
-rw-r--r--filter/source/config/fragments/filters/Q_A_Write_1_0_3_0__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/Q_A_Write_4_0__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/RAS___Sun_Rasterfile.xcu13
-rw-r--r--filter/source/config/fragments/filters/Rapid_File_1_0__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/Rapid_File_1_2__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/Rich_Text_Format.xcu13
-rw-r--r--filter/source/config/fragments/filters/Rich_Text_Format__StarCalc_.xcu13
-rw-r--r--filter/source/config/fragments/filters/SGF___StarOffice_Writer_SGF.xcu13
-rw-r--r--filter/source/config/fragments/filters/SGV___StarDraw_2_0.xcu13
-rw-r--r--filter/source/config/fragments/filters/SVM___StarView_Metafile.xcu13
-rw-r--r--filter/source/config/fragments/filters/SYLK.xcu13
-rw-r--r--filter/source/config/fragments/filters/Samna_Word_IV_IV_Plus__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarCalc_1_0.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarCalc_3_0.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarCalc_3_0_Vorlage_Template.xcu10
-rw-r--r--filter/source/config/fragments/filters/StarCalc_3_0_Vorlage_Template_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/StarCalc_4_0.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarCalc_4_0_Vorlage_Template.xcu10
-rw-r--r--filter/source/config/fragments/filters/StarCalc_4_0_Vorlage_Template_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/StarCalc_5_0.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarCalc_5_0_Vorlage_Template.xcu10
-rw-r--r--filter/source/config/fragments/filters/StarCalc_5_0_Vorlage_Template_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/StarChart_3_0.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarChart_4_0.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarChart_5_0.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarDraw_3_0.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarDraw_3_0_Vorlage.xcu10
-rw-r--r--filter/source/config/fragments/filters/StarDraw_3_0_Vorlage__StarImpress_.xcu10
-rw-r--r--filter/source/config/fragments/filters/StarDraw_3_0_Vorlage__StarImpress__ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/StarDraw_3_0_Vorlage_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/StarDraw_3_0__StarImpress_.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarDraw_5_0.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarDraw_5_0_Vorlage.xcu10
-rw-r--r--filter/source/config/fragments/filters/StarDraw_5_0_Vorlage__StarImpress_.xcu10
-rw-r--r--filter/source/config/fragments/filters/StarDraw_5_0_Vorlage__StarImpress__ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/StarDraw_5_0_Vorlage_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/StarDraw_5_0__StarImpress_.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarImpress_4_0.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarImpress_4_0_Vorlage.xcu10
-rw-r--r--filter/source/config/fragments/filters/StarImpress_4_0_Vorlage_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/StarImpress_5_0.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarImpress_5_0_Vorlage.xcu10
-rw-r--r--filter/source/config/fragments/filters/StarImpress_5_0_Vorlage_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/StarImpress_5_0__packed_.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarImpress_5_0__packed__ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/StarMath_2_0.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarMath_3_0.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarMath_4_0.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarMath_5_0.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarOffice_XML__Base_.xcu10
-rw-r--r--filter/source/config/fragments/filters/StarOffice_XML__Base__ui.xcu5
-rw-r--r--filter/source/config/fragments/filters/StarOffice_XML__Calc_.xcu10
-rw-r--r--filter/source/config/fragments/filters/StarOffice_XML__Calc__ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/StarOffice_XML__Chart_.xcu10
-rw-r--r--filter/source/config/fragments/filters/StarOffice_XML__Chart__ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/StarOffice_XML__Draw_.xcu10
-rw-r--r--filter/source/config/fragments/filters/StarOffice_XML__Draw__ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/StarOffice_XML__Impress_.xcu10
-rw-r--r--filter/source/config/fragments/filters/StarOffice_XML__Impress__ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/StarOffice_XML__Math_.xcu10
-rw-r--r--filter/source/config/fragments/filters/StarOffice_XML__Math__ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/StarOffice_XML__Writer_.xcu10
-rw-r--r--filter/source/config/fragments/filters/StarOffice_XML__Writer__ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/StarWriter_1_0.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarWriter_2_0.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarWriter_3_0.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarWriter_3_0_Vorlage_Template.xcu10
-rw-r--r--filter/source/config/fragments/filters/StarWriter_3_0_Vorlage_Template_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/StarWriter_3_0__StarWriter_GlobalDocument_.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarWriter_3_0__StarWriter_Web_.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarWriter_4_0.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarWriter_4_0_GlobalDocument.xcu10
-rw-r--r--filter/source/config/fragments/filters/StarWriter_4_0_GlobalDocument_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/StarWriter_4_0_Vorlage_Template.xcu10
-rw-r--r--filter/source/config/fragments/filters/StarWriter_4_0_Vorlage_Template_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/StarWriter_4_0__StarWriter_GlobalDocument_.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarWriter_4_0__StarWriter_Web_.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarWriter_5_0.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarWriter_5_0_GlobalDocument.xcu10
-rw-r--r--filter/source/config/fragments/filters/StarWriter_5_0_GlobalDocument_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/StarWriter_5_0_Vorlage_Template.xcu10
-rw-r--r--filter/source/config/fragments/filters/StarWriter_5_0_Vorlage_Template_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/StarWriter_5_0__StarWriter_GlobalDocument_.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarWriter_5_0__StarWriter_Web_.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarWriter_DOS.xcu13
-rw-r--r--filter/source/config/fragments/filters/StarWriter_Web_4_0_Vorlage_Template.xcu10
-rw-r--r--filter/source/config/fragments/filters/StarWriter_Web_4_0_Vorlage_Template_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/StarWriter_Web_5_0_Vorlage_Template.xcu10
-rw-r--r--filter/source/config/fragments/filters/StarWriter_Web_5_0_Vorlage_Template_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/T602Document.xcu13
-rw-r--r--filter/source/config/fragments/filters/TGA___Truevision_TARGA.xcu13
-rw-r--r--filter/source/config/fragments/filters/TIF___Tag_Image_File.xcu13
-rw-r--r--filter/source/config/fragments/filters/Text.xcu10
-rw-r--r--filter/source/config/fragments/filters/Text__StarWriter_Web_.xcu10
-rw-r--r--filter/source/config/fragments/filters/Text__StarWriter_Web__ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/Text___txt___csv__StarCalc_.xcu10
-rw-r--r--filter/source/config/fragments/filters/Text___txt___csv__StarCalc__ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/Text__encoded_.xcu10
-rw-r--r--filter/source/config/fragments/filters/Text__encoded___StarWriter_GlobalDocument_.xcu10
-rw-r--r--filter/source/config/fragments/filters/Text__encoded___StarWriter_GlobalDocument__ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/Text__encoded___StarWriter_Web_.xcu10
-rw-r--r--filter/source/config/fragments/filters/Text__encoded___StarWriter_Web__ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/Text__encoded__ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/Text_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/Total_Word__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/UOF_presentation.xcu13
-rw-r--r--filter/source/config/fragments/filters/UOF_presentation_ui.xcu13
-rw-r--r--filter/source/config/fragments/filters/UOF_spreadsheet.xcu13
-rw-r--r--filter/source/config/fragments/filters/UOF_spreadsheet_ui.xcu13
-rw-r--r--filter/source/config/fragments/filters/UOF_text.xcu13
-rw-r--r--filter/source/config/fragments/filters/UOF_text_ui.xcu13
-rw-r--r--filter/source/config/fragments/filters/Uniplex_V7_V8__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/Uniplex_onGO__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/VolksWriter_3_and_4__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/VolksWriter_Deluxe__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WITA__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WMF___MS_Windows_Metafile.xcu13
-rw-r--r--filter/source/config/fragments/filters/Wang_II_SWP__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/Wang_PC__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/Wang_WP_Plus__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/Win_Write_3_x__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WiziWord_3_0__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WordPerfect.xcu13
-rw-r--r--filter/source/config/fragments/filters/WordPerfect_4_1__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WordPerfect_4_2__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WordPerfect_5_0__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WordPerfect_5_1__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WordPerfect_6_0__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WordPerfect_6_1__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WordPerfect_Mac_1__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WordPerfect_Mac_2__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WordPerfect_Mac_3__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WordPerfect__Win__5_1_5_2__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WordPerfect__Win__6_0__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WordPerfect__Win__6_1__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WordPerfect__Win__7_0__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WordStar_2000_Rel__3_0__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WordStar_2000_Rel__3_5__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WordStar_3_3x__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WordStar_3_45__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WordStar_4_0___W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WordStar_5_0___W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WordStar_5_5___W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WordStar_6_0___W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WordStar_7_0___W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WordStar__Win__1_x_2_0__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/WriteNow_3_0__Macintosh___W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/Writing_Assistant__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/XBM___X_Consortium.xcu13
-rw-r--r--filter/source/config/fragments/filters/XEROX_XIF_5_0__Illustrator___W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/XEROX_XIF_5_0__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/XEROX_XIF_6_0__Color_Bitmap___W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/XEROX_XIF_6_0__Res_Graphic___W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/XHTML_Calc_File.xcu13
-rw-r--r--filter/source/config/fragments/filters/XHTML_Draw_File.xcu13
-rw-r--r--filter/source/config/fragments/filters/XHTML_Impress_File.xcu13
-rw-r--r--filter/source/config/fragments/filters/XHTML_Writer_File.xcu13
-rw-r--r--filter/source/config/fragments/filters/XPM.xcu13
-rw-r--r--filter/source/config/fragments/filters/XyWrite_III___W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/XyWrite_III____W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/XyWrite_IV__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/XyWrite_Sig___Win___W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/XyWrite_Signature__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/XyWrite__Win__1_0__W4W_.xcu13
-rw-r--r--filter/source/config/fragments/filters/calc8.xcu10
-rw-r--r--filter/source/config/fragments/filters/calc8_template.xcu10
-rw-r--r--filter/source/config/fragments/filters/calc8_template_ui.xcu5
-rw-r--r--filter/source/config/fragments/filters/calc8_ui.xcu5
-rw-r--r--filter/source/config/fragments/filters/calc_HTML_WebQuery.xcu10
-rw-r--r--filter/source/config/fragments/filters/calc_HTML_WebQuery_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/calc_MS_Excel_2007_Binary.xcu10
-rw-r--r--filter/source/config/fragments/filters/calc_MS_Excel_2007_Binary_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/calc_MS_Excel_2007_XML.xcu10
-rw-r--r--filter/source/config/fragments/filters/calc_MS_Excel_2007_XML_Template.xcu10
-rw-r--r--filter/source/config/fragments/filters/calc_MS_Excel_2007_XML_Template_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/calc_MS_Excel_2007_XML_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/calc_StarOffice_XML_Calc_Template.xcu10
-rw-r--r--filter/source/config/fragments/filters/calc_StarOffice_XML_Calc_Template_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/calc_pdf_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/chart8.xcu10
-rw-r--r--filter/source/config/fragments/filters/chart8_ui.xcu5
-rw-r--r--filter/source/config/fragments/filters/dBase.xcu13
-rw-r--r--filter/source/config/fragments/filters/draw8.xcu10
-rw-r--r--filter/source/config/fragments/filters/draw8_template.xcu10
-rw-r--r--filter/source/config/fragments/filters/draw8_template_ui.xcu5
-rw-r--r--filter/source/config/fragments/filters/draw8_ui.xcu5
-rw-r--r--filter/source/config/fragments/filters/draw_PCD_Photo_CD_Base.xcu13
-rw-r--r--filter/source/config/fragments/filters/draw_PCD_Photo_CD_Base16.xcu13
-rw-r--r--filter/source/config/fragments/filters/draw_PCD_Photo_CD_Base4.xcu13
-rw-r--r--filter/source/config/fragments/filters/draw_StarOffice_XML_Draw_Template.xcu10
-rw-r--r--filter/source/config/fragments/filters/draw_StarOffice_XML_Draw_Template_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/draw_bmp_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/draw_emf_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/draw_eps_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/draw_flash_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/draw_gif_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/draw_html_Export.xcu10
-rw-r--r--filter/source/config/fragments/filters/draw_html_Export_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/draw_jpg_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/draw_met_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/draw_pbm_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/draw_pct_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/draw_pdf_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/draw_pgm_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/draw_png_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/draw_ppm_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/draw_ras_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/draw_svg_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/draw_svm_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/draw_tif_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/draw_wmf_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/draw_xpm_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/impress8.xcu10
-rw-r--r--filter/source/config/fragments/filters/impress8_draw.xcu10
-rw-r--r--filter/source/config/fragments/filters/impress8_draw_ui.xcu5
-rw-r--r--filter/source/config/fragments/filters/impress8_template.xcu10
-rw-r--r--filter/source/config/fragments/filters/impress8_template_ui.xcu5
-rw-r--r--filter/source/config/fragments/filters/impress8_ui.xcu5
-rw-r--r--filter/source/config/fragments/filters/impress_MS_PowerPoint_2007_XML.xcu10
-rw-r--r--filter/source/config/fragments/filters/impress_MS_PowerPoint_2007_XML_Template.xcu10
-rw-r--r--filter/source/config/fragments/filters/impress_MS_PowerPoint_2007_XML_Template_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/impress_MS_PowerPoint_2007_XML_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/impress_StarOffice_XML_Draw.xcu10
-rw-r--r--filter/source/config/fragments/filters/impress_StarOffice_XML_Draw_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/impress_StarOffice_XML_Impress_Template.xcu10
-rw-r--r--filter/source/config/fragments/filters/impress_StarOffice_XML_Impress_Template_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/impress_bmp_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/impress_emf_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/impress_eps_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/impress_flash_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/impress_gif_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/impress_html_Export.xcu10
-rw-r--r--filter/source/config/fragments/filters/impress_html_Export_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/impress_jpg_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/impress_met_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/impress_pbm_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/impress_pct_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/impress_pdf_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/impress_pgm_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/impress_png_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/impress_ppm_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/impress_ras_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/impress_svg_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/impress_svm_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/impress_tif_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/impress_wmf_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/impress_xpm_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/makefile.mk57
-rw-r--r--filter/source/config/fragments/filters/math8.xcu10
-rw-r--r--filter/source/config/fragments/filters/math8_ui.xcu5
-rw-r--r--filter/source/config/fragments/filters/math_pdf_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/placeware_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/writer8.xcu10
-rw-r--r--filter/source/config/fragments/filters/writer8_template.xcu10
-rw-r--r--filter/source/config/fragments/filters/writer8_template_ui.xcu5
-rw-r--r--filter/source/config/fragments/filters/writer8_ui.xcu5
-rw-r--r--filter/source/config/fragments/filters/writer_MIZI_Hwp_97.xcu13
-rw-r--r--filter/source/config/fragments/filters/writer_StarOffice_XML_Writer_Template.xcu10
-rw-r--r--filter/source/config/fragments/filters/writer_StarOffice_XML_Writer_Template_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/writer_globaldocument_StarOffice_XML_Writer.xcu10
-rw-r--r--filter/source/config/fragments/filters/writer_globaldocument_StarOffice_XML_Writer_GlobalDocument.xcu10
-rw-r--r--filter/source/config/fragments/filters/writer_globaldocument_StarOffice_XML_Writer_GlobalDocument_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/writer_globaldocument_StarOffice_XML_Writer_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/writer_globaldocument_pdf_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/writer_pdf_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/writer_web_HTML_help.xcu13
-rw-r--r--filter/source/config/fragments/filters/writer_web_StarOffice_XML_Writer.xcu10
-rw-r--r--filter/source/config/fragments/filters/writer_web_StarOffice_XML_Writer_Web_Template.xcu10
-rw-r--r--filter/source/config/fragments/filters/writer_web_StarOffice_XML_Writer_Web_Template_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/writer_web_StarOffice_XML_Writer_ui.xcu6
-rw-r--r--filter/source/config/fragments/filters/writer_web_pdf_Export.xcu13
-rw-r--r--filter/source/config/fragments/filters/writerglobal8.xcu10
-rw-r--r--filter/source/config/fragments/filters/writerglobal8_HTML.xcu13
-rw-r--r--filter/source/config/fragments/filters/writerglobal8_ui.xcu5
-rw-r--r--filter/source/config/fragments/filters/writerglobal8_writer.xcu10
-rw-r--r--filter/source/config/fragments/filters/writerglobal8_writer_ui.xcu5
-rw-r--r--filter/source/config/fragments/filters/writerweb8_writer.xcu10
-rw-r--r--filter/source/config/fragments/filters/writerweb8_writer_template.xcu10
-rw-r--r--filter/source/config/fragments/filters/writerweb8_writer_template_ui.xcu5
-rw-r--r--filter/source/config/fragments/filters/writerweb8_writer_ui.xcu5
-rw-r--r--filter/source/config/fragments/frameloaders/com_sun_star_comp_chart2_ChartFrameLoader.xcu3
-rw-r--r--filter/source/config/fragments/frameloaders/com_sun_star_frame_Bibliography.xcu3
-rw-r--r--filter/source/config/fragments/frameloaders/com_sun_star_sdb_ContentLoader.xcu3
-rw-r--r--filter/source/config/fragments/frameloaders/org_openoffice_comp_dbflt_DBContentLoader2.xcu3
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/bmp_Export.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/bmp_Import.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/dxf_Import.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/emf_Export.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/emf_Import.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/eps_Export.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/eps_Import.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/gif_Export.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/gif_Import.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/jpg_Export.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/jpg_Import.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/met_Export.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/met_Import.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/pbm_Export.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/pbm_Import.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/pcd_Import_Base.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/pcd_Import_Base16.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/pcd_Import_Base4.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/pct_Export.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/pct_Import.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/pcx_Import.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/pgm_Export.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/pgm_Import.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/png_Export.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/png_Import.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/ppm_Export.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/ppm_Import.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/psd_Import.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/ras_Export.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/ras_Import.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/sgf_Import.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/sgv_Import.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/svg_Export.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/svm_Export.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/svm_Import.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/tga_Import.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/tif_Export.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/tif_Import.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/wmf_Export.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/wmf_Import.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/xbm_Import.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/xpm_Export.xcu10
-rw-r--r--filter/source/config/fragments/internalgraphicfilters/xpm_Import.xcu10
-rw-r--r--filter/source/config/fragments/langfilter.xsl37
-rw-r--r--filter/source/config/fragments/makefile.mk255
-rw-r--r--filter/source/config/fragments/packagedef.mk71
-rw-r--r--filter/source/config/fragments/types/MS_Excel_2007_Binary.xcu10
-rw-r--r--filter/source/config/fragments/types/MS_Excel_2007_XML.xcu10
-rw-r--r--filter/source/config/fragments/types/MS_Excel_2007_XML_Template.xcu10
-rw-r--r--filter/source/config/fragments/types/MS_PowerPoint_2007_XML.xcu10
-rw-r--r--filter/source/config/fragments/types/MS_PowerPoint_2007_XML_Template.xcu10
-rw-r--r--filter/source/config/fragments/types/StarBase.xcu12
-rw-r--r--filter/source/config/fragments/types/Unified_Office_Format_presentation.xcu12
-rw-r--r--filter/source/config/fragments/types/Unified_Office_Format_spreadsheet.xcu12
-rw-r--r--filter/source/config/fragments/types/Unified_Office_Format_text.xcu12
-rw-r--r--filter/source/config/fragments/types/XHTML_File.xcu12
-rw-r--r--filter/source/config/fragments/types/bmp_MS_Windows.xcu12
-rw-r--r--filter/source/config/fragments/types/calc8.xcu12
-rw-r--r--filter/source/config/fragments/types/calc8_template.xcu12
-rw-r--r--filter/source/config/fragments/types/calc_DIF.xcu12
-rw-r--r--filter/source/config/fragments/types/calc_Lotus.xcu12
-rw-r--r--filter/source/config/fragments/types/calc_MS_Excel_2003_XML.xcu12
-rw-r--r--filter/source/config/fragments/types/calc_MS_Excel_40.xcu12
-rw-r--r--filter/source/config/fragments/types/calc_MS_Excel_40_VorlageTemplate.xcu12
-rw-r--r--filter/source/config/fragments/types/calc_MS_Excel_5095.xcu12
-rw-r--r--filter/source/config/fragments/types/calc_MS_Excel_5095_VorlageTemplate.xcu12
-rw-r--r--filter/source/config/fragments/types/calc_MS_Excel_95.xcu12
-rw-r--r--filter/source/config/fragments/types/calc_MS_Excel_95_VorlageTemplate.xcu12
-rw-r--r--filter/source/config/fragments/types/calc_MS_Excel_97.xcu12
-rw-r--r--filter/source/config/fragments/types/calc_MS_Excel_97_VorlageTemplate.xcu12
-rw-r--r--filter/source/config/fragments/types/calc_MiniCalc_PalmDB_File.xcu12
-rw-r--r--filter/source/config/fragments/types/calc_Pocket_Excel_File.xcu12
-rw-r--r--filter/source/config/fragments/types/calc_QPro.xcu12
-rw-r--r--filter/source/config/fragments/types/calc_SYLK.xcu12
-rw-r--r--filter/source/config/fragments/types/calc_StarCalc_10.xcu12
-rw-r--r--filter/source/config/fragments/types/calc_StarCalc_30.xcu12
-rw-r--r--filter/source/config/fragments/types/calc_StarCalc_30_VorlageTemplate.xcu12
-rw-r--r--filter/source/config/fragments/types/calc_StarCalc_40.xcu12
-rw-r--r--filter/source/config/fragments/types/calc_StarCalc_40_VorlageTemplate.xcu12
-rw-r--r--filter/source/config/fragments/types/calc_StarCalc_50.xcu12
-rw-r--r--filter/source/config/fragments/types/calc_StarCalc_50_VorlageTemplate.xcu12
-rw-r--r--filter/source/config/fragments/types/calc_StarOffice_XML_Calc.xcu12
-rw-r--r--filter/source/config/fragments/types/calc_StarOffice_XML_Calc_Template.xcu12
-rw-r--r--filter/source/config/fragments/types/calc_Text_txt_csv_StarCalc.xcu12
-rw-r--r--filter/source/config/fragments/types/calc_dBase.xcu12
-rw-r--r--filter/source/config/fragments/types/chart8.xcu12
-rw-r--r--filter/source/config/fragments/types/chart_StarChart_30.xcu12
-rw-r--r--filter/source/config/fragments/types/chart_StarChart_40.xcu12
-rw-r--r--filter/source/config/fragments/types/chart_StarChart_50.xcu12
-rw-r--r--filter/source/config/fragments/types/chart_StarOffice_XML_Chart.xcu12
-rw-r--r--filter/source/config/fragments/types/component_Bibliography.xcu12
-rw-r--r--filter/source/config/fragments/types/component_DB.xcu12
-rw-r--r--filter/source/config/fragments/types/draw8.xcu12
-rw-r--r--filter/source/config/fragments/types/draw8_template.xcu12
-rw-r--r--filter/source/config/fragments/types/draw_StarDraw_30.xcu12
-rw-r--r--filter/source/config/fragments/types/draw_StarDraw_30_Vorlage.xcu12
-rw-r--r--filter/source/config/fragments/types/draw_StarDraw_50.xcu12
-rw-r--r--filter/source/config/fragments/types/draw_StarDraw_50_Vorlage.xcu12
-rw-r--r--filter/source/config/fragments/types/draw_StarOffice_XML_Draw.xcu12
-rw-r--r--filter/source/config/fragments/types/draw_StarOffice_XML_Draw_Template.xcu12
-rw-r--r--filter/source/config/fragments/types/dxf_AutoCAD_Interchange.xcu12
-rw-r--r--filter/source/config/fragments/types/emf_MS_Windows_Metafile.xcu12
-rw-r--r--filter/source/config/fragments/types/eps_Encapsulated_PostScript.xcu12
-rw-r--r--filter/source/config/fragments/types/gif_Graphics_Interchange.xcu12
-rw-r--r--filter/source/config/fragments/types/graphic_HTML.xcu12
-rw-r--r--filter/source/config/fragments/types/graphic_SWF.xcu12
-rw-r--r--filter/source/config/fragments/types/impress8.xcu12
-rw-r--r--filter/source/config/fragments/types/impress8_template.xcu12
-rw-r--r--filter/source/config/fragments/types/impress_CGM_Computer_Graphics_Metafile.xcu12
-rw-r--r--filter/source/config/fragments/types/impress_MS_PowerPoint_97.xcu12
-rw-r--r--filter/source/config/fragments/types/impress_MS_PowerPoint_97_Vorlage.xcu12
-rw-r--r--filter/source/config/fragments/types/impress_StarImpress_40.xcu12
-rw-r--r--filter/source/config/fragments/types/impress_StarImpress_40_Vorlage.xcu12
-rw-r--r--filter/source/config/fragments/types/impress_StarImpress_50.xcu12
-rw-r--r--filter/source/config/fragments/types/impress_StarImpress_50_Vorlage.xcu12
-rw-r--r--filter/source/config/fragments/types/impress_StarImpress_50_packed.xcu12
-rw-r--r--filter/source/config/fragments/types/impress_StarOffice_XML_Impress.xcu12
-rw-r--r--filter/source/config/fragments/types/impress_StarOffice_XML_Impress_Template.xcu12
-rw-r--r--filter/source/config/fragments/types/jpg_JPEG.xcu12
-rw-r--r--filter/source/config/fragments/types/makefile.mk54
-rw-r--r--filter/source/config/fragments/types/math8.xcu12
-rw-r--r--filter/source/config/fragments/types/math_MathML_XML_Math.xcu12
-rw-r--r--filter/source/config/fragments/types/math_MathType_3x.xcu12
-rw-r--r--filter/source/config/fragments/types/math_StarMath_20.xcu12
-rw-r--r--filter/source/config/fragments/types/math_StarMath_30.xcu12
-rw-r--r--filter/source/config/fragments/types/math_StarMath_40.xcu12
-rw-r--r--filter/source/config/fragments/types/math_StarMath_50.xcu12
-rw-r--r--filter/source/config/fragments/types/math_StarOffice_XML_Math.xcu12
-rw-r--r--filter/source/config/fragments/types/met_OS2_Metafile.xcu12
-rw-r--r--filter/source/config/fragments/types/oxt_OpenOffice_Extension.xcu12
-rw-r--r--filter/source/config/fragments/types/pbm_Portable_Bitmap.xcu12
-rw-r--r--filter/source/config/fragments/types/pcd_Photo_CD_Base.xcu12
-rw-r--r--filter/source/config/fragments/types/pcd_Photo_CD_Base16.xcu12
-rw-r--r--filter/source/config/fragments/types/pcd_Photo_CD_Base4.xcu12
-rw-r--r--filter/source/config/fragments/types/pct_Mac_Pict.xcu12
-rw-r--r--filter/source/config/fragments/types/pcx_Zsoft_Paintbrush.xcu12
-rw-r--r--filter/source/config/fragments/types/pdf_Portable_Document_Format.xcu12
-rw-r--r--filter/source/config/fragments/types/pgm_Portable_Graymap.xcu12
-rw-r--r--filter/source/config/fragments/types/png_Portable_Network_Graphic.xcu12
-rw-r--r--filter/source/config/fragments/types/ppm_Portable_Pixelmap.xcu12
-rw-r--r--filter/source/config/fragments/types/psd_Adobe_Photoshop.xcu12
-rw-r--r--filter/source/config/fragments/types/pwp_PlaceWare.xcu12
-rw-r--r--filter/source/config/fragments/types/ras_Sun_Rasterfile.xcu12
-rw-r--r--filter/source/config/fragments/types/sgf_StarOffice_Writer_SGF.xcu12
-rw-r--r--filter/source/config/fragments/types/sgv_StarDraw_20.xcu12
-rw-r--r--filter/source/config/fragments/types/svg_Scalable_Vector_Graphics.xcu12
-rw-r--r--filter/source/config/fragments/types/svm_StarView_Metafile.xcu12
-rw-r--r--filter/source/config/fragments/types/tga_Truevision_TARGA.xcu12
-rw-r--r--filter/source/config/fragments/types/tif_Tag_Image_File.xcu12
-rw-r--r--filter/source/config/fragments/types/wav_Wave_Audio_File.xcu12
-rw-r--r--filter/source/config/fragments/types/wmf_MS_Windows_Metafile.xcu12
-rw-r--r--filter/source/config/fragments/types/writer8.xcu12
-rw-r--r--filter/source/config/fragments/types/writer8_template.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Ami_Pro_1x_31_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_AportisDoc_PalmDB_File.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_CTOS_DEF_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Claris_Works_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_DCAFFT_Final_Form_Text_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_DCA_Revisable_Form_Text_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_DCA_with_Display_Write_5_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_DEC_DX_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_DEC_WPS_PLUS_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_DataGeneral_CEO_Write_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_DisplayWrite_20_4x_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_DisplayWrite_5x_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_DocBook_File.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_EBCDIC_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Enable_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Frame_Maker_MIF_30_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Frame_Maker_MIF_40_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Frame_Maker_MIF_50_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Frame_Work_III_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Frame_Work_IV_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_HP_AdvanceWrite_Plus_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_ICL_Office_Power_6_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_ICL_Office_Power_7_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Interleaf_5_6_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Interleaf_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Legacy_Winstar_onGO_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Lotus_1_2_3_10_DOS_StarWriter.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Lotus_1_2_3_10_WIN_StarWriter.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Lotus_Manuscript_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MASS_11_Rel_80_83_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MASS_11_Rel_85_90_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MIZI_Hwp_97.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MS_MacWord_30_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MS_MacWord_40_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MS_MacWord_5x_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MS_WinWord_1x_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MS_WinWord_2x_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MS_WinWord_5.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MS_WinWord_60.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MS_Word_2003_XML.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MS_Word_2007_XML.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MS_Word_2007_XML_Template.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MS_Word_3x_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MS_Word_4x_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MS_Word_5x_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MS_Word_6x_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MS_Word_95.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MS_Word_95_Vorlage.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MS_Word_97.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MS_Word_97_Vorlage.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MS_Works_20_DOS_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MS_Works_30_Win_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MS_Works_40_Mac_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Mac_Write_4x_50_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Mac_Write_II_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Mac_Write_Pro_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MultiMate_33_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MultiMate_4_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MultiMate_Adv_36_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_MultiMate_Adv_II_37_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_NAVY_DIF_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_OfficeWriter_40_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_OfficeWriter_50_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_OfficeWriter_6x_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_PFS_First_Choice_10_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_PFS_First_Choice_20_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_PFS_First_Choice_30_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_PFS_Write_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Peach_Text_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_PocketWord_File.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Professional_Write_10_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Professional_Write_2x_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Professional_Write_Plus_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_QA_Write_10_30_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_QA_Write_40_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Rapid_File_10_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Rapid_File_12_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Rich_Text_Format.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Samna_Word_IV_IV_Plus_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_StarOffice_XML_Writer.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_StarOffice_XML_Writer_Template.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_StarWriter_10.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_StarWriter_20.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_StarWriter_30.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_StarWriter_30_VorlageTemplate.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_StarWriter_40.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_StarWriter_40_VorlageTemplate.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_StarWriter_50.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_StarWriter_50_VorlageTemplate.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_StarWriter_DOS.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_T602_Document.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Text.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Text_encoded.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Total_Word_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Uniplex_V7_V8_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Uniplex_onGO_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_VolksWriter_3_and_4_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_VolksWriter_Deluxe_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WITA_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Wang_II_SWP_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Wang_PC_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Wang_WP_Plus_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Win_Write_3x_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WiziWord_30_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WordPerfect_41_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WordPerfect_42_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WordPerfect_50_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WordPerfect_51_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WordPerfect_60_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WordPerfect_61_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WordPerfect_Document.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WordPerfect_Mac_1_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WordPerfect_Mac_2_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WordPerfect_Mac_3_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WordPerfect_Win_51_52_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WordPerfect_Win_60_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WordPerfect_Win_61_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WordPerfect_Win_70_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WordStar_2000_Rel_30_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WordStar_2000_Rel_35_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WordStar_33x_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WordStar_345_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WordStar_40_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WordStar_50_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WordStar_55_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WordStar_60_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WordStar_70_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WordStar_Win_1x_20_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_WriteNow_30_Macintosh_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_Writing_Assistant_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_XEROX_XIF_50_Illustrator_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_XEROX_XIF_50_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_XEROX_XIF_60_Color_Bitmap_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_XEROX_XIF_60_Res_Graphic_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_XyWrite_IIIP_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_XyWrite_III_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_XyWrite_IV_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_XyWrite_Sig_Win_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_XyWrite_Signature_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_XyWrite_Win_10_W4W.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_globaldocument_StarOffice_XML_Writer_GlobalDocument.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_globaldocument_StarWriter_40GlobalDocument.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_globaldocument_StarWriter_50GlobalDocument.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_web_HTML.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_web_HTML_help.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_web_StarOffice_XML_Writer_Web_Template.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_web_StarWriterWeb_40_VorlageTemplate.xcu12
-rw-r--r--filter/source/config/fragments/types/writer_web_StarWriterWeb_50_VorlageTemplate.xcu12
-rw-r--r--filter/source/config/fragments/types/writerglobal8.xcu12
-rw-r--r--filter/source/config/fragments/types/writerweb8_writer_template.xcu12
-rw-r--r--filter/source/config/fragments/types/xbm_X_Consortium.xcu12
-rw-r--r--filter/source/config/fragments/types/xpm_XPM.xcu12
-rw-r--r--filter/source/config/tools/Manifest.mf4
-rwxr-xr-xfilter/source/config/tools/merge/pyAltFCFGMerge591
-rw-r--r--filter/source/config/tools/split/FCFGSplit.cfg110
-rw-r--r--filter/source/config/tools/split/FCFGSplit.java565
-rw-r--r--filter/source/config/tools/split/Manifest.mf1
-rw-r--r--filter/source/config/tools/split/Splitter.java310
-rw-r--r--filter/source/config/tools/split/SplitterData.java87
-rw-r--r--filter/source/config/tools/split/makefile.mk88
-rw-r--r--filter/source/docbook/DocBookTemplate.stwbin0 -> 6688 bytes-rw-r--r--filter/source/docbook/docbooktosoffheadings.xsl1424
-rw-r--r--filter/source/docbook/makefile.mk51
-rw-r--r--filter/source/docbook/sofftodocbookheadings.xsl1180
-rw-r--r--filter/source/filtertracer/exports.dxp2
-rw-r--r--filter/source/filtertracer/filtertracer.cxx256
-rw-r--r--filter/source/filtertracer/filtertracer.hxx186
-rw-r--r--filter/source/filtertracer/filtertraceruno.cxx79
-rw-r--r--filter/source/filtertracer/makefile.mk63
-rw-r--r--filter/source/flash/flash.component37
-rw-r--r--filter/source/flash/impswfdialog.cxx125
-rw-r--r--filter/source/flash/impswfdialog.hrc48
-rw-r--r--filter/source/flash/impswfdialog.hxx85
-rw-r--r--filter/source/flash/impswfdialog.src191
-rw-r--r--filter/source/flash/makefile.mk106
-rw-r--r--filter/source/flash/swfdialog.cxx283
-rw-r--r--filter/source/flash/swfdialog.hxx89
-rw-r--r--filter/source/flash/swfexporter.cxx768
-rw-r--r--filter/source/flash/swfexporter.hxx218
-rw-r--r--filter/source/flash/swffilter.cxx526
-rw-r--r--filter/source/flash/swfuno.cxx101
-rw-r--r--filter/source/flash/swfwriter.cxx640
-rw-r--r--filter/source/flash/swfwriter.hxx462
-rw-r--r--filter/source/flash/swfwriter1.cxx2126
-rw-r--r--filter/source/flash/swfwriter2.cxx692
-rw-r--r--filter/source/graphicfilter/egif/egif.cxx573
-rw-r--r--filter/source/graphicfilter/egif/exports.map7
-rw-r--r--filter/source/graphicfilter/egif/giflzwc.cxx256
-rw-r--r--filter/source/graphicfilter/egif/giflzwc.hxx65
-rw-r--r--filter/source/graphicfilter/egif/makefile.mk71
-rw-r--r--filter/source/graphicfilter/eos2met/eos2met.cxx2594
-rw-r--r--filter/source/graphicfilter/eos2met/exports.map7
-rw-r--r--filter/source/graphicfilter/eos2met/makefile.mk69
-rw-r--r--filter/source/graphicfilter/epbm/epbm.cxx214
-rw-r--r--filter/source/graphicfilter/epbm/exports.map7
-rw-r--r--filter/source/graphicfilter/epbm/makefile.mk69
-rw-r--r--filter/source/graphicfilter/epgm/epgm.cxx239
-rw-r--r--filter/source/graphicfilter/epgm/exports.map7
-rw-r--r--filter/source/graphicfilter/epgm/makefile.mk70
-rw-r--r--filter/source/graphicfilter/epict/epict.cxx2330
-rw-r--r--filter/source/graphicfilter/epict/exports.map7
-rw-r--r--filter/source/graphicfilter/epict/makefile.mk70
-rw-r--r--filter/source/graphicfilter/eppm/eppm.cxx247
-rw-r--r--filter/source/graphicfilter/eppm/exports.map7
-rw-r--r--filter/source/graphicfilter/eppm/makefile.mk70
-rw-r--r--filter/source/graphicfilter/eps/eps.cxx2739
-rw-r--r--filter/source/graphicfilter/eps/epsstr.src70
-rw-r--r--filter/source/graphicfilter/eps/exports.map7
-rw-r--r--filter/source/graphicfilter/eps/makefile.mk77
-rw-r--r--filter/source/graphicfilter/eps/strings.hrc29
-rw-r--r--filter/source/graphicfilter/eras/eras.cxx288
-rw-r--r--filter/source/graphicfilter/eras/exports.map7
-rw-r--r--filter/source/graphicfilter/eras/makefile.mk67
-rw-r--r--filter/source/graphicfilter/etiff/etiff.cxx618
-rw-r--r--filter/source/graphicfilter/etiff/exports.map7
-rw-r--r--filter/source/graphicfilter/etiff/makefile.mk65
-rw-r--r--filter/source/graphicfilter/expm/expm.cxx273
-rw-r--r--filter/source/graphicfilter/expm/exports.map7
-rw-r--r--filter/source/graphicfilter/expm/makefile.mk66
-rw-r--r--filter/source/graphicfilter/icgm/actimpr.cxx1134
-rw-r--r--filter/source/graphicfilter/icgm/bitmap.cxx410
-rw-r--r--filter/source/graphicfilter/icgm/bitmap.hxx87
-rw-r--r--filter/source/graphicfilter/icgm/bundles.cxx288
-rw-r--r--filter/source/graphicfilter/icgm/bundles.hxx173
-rw-r--r--filter/source/graphicfilter/icgm/cgm.cxx927
-rw-r--r--filter/source/graphicfilter/icgm/cgm.hxx178
-rw-r--r--filter/source/graphicfilter/icgm/cgmres.hrc28
-rw-r--r--filter/source/graphicfilter/icgm/cgmtypes.hxx145
-rw-r--r--filter/source/graphicfilter/icgm/chart.cxx100
-rw-r--r--filter/source/graphicfilter/icgm/chart.hxx214
-rw-r--r--filter/source/graphicfilter/icgm/class0.cxx138
-rw-r--r--filter/source/graphicfilter/icgm/class1.cxx231
-rw-r--r--filter/source/graphicfilter/icgm/class2.cxx227
-rw-r--r--filter/source/graphicfilter/icgm/class3.cxx144
-rw-r--r--filter/source/graphicfilter/icgm/class4.cxx861
-rw-r--r--filter/source/graphicfilter/icgm/class5.cxx524
-rw-r--r--filter/source/graphicfilter/icgm/class7.cxx237
-rw-r--r--filter/source/graphicfilter/icgm/classx.cxx262
-rw-r--r--filter/source/graphicfilter/icgm/elements.cxx395
-rw-r--r--filter/source/graphicfilter/icgm/elements.hxx145
-rw-r--r--filter/source/graphicfilter/icgm/exports.map7
-rw-r--r--filter/source/graphicfilter/icgm/main.hxx63
-rw-r--r--filter/source/graphicfilter/icgm/makefile.mk80
-rw-r--r--filter/source/graphicfilter/icgm/outact.cxx200
-rw-r--r--filter/source/graphicfilter/icgm/outact.hxx148
-rw-r--r--filter/source/graphicfilter/idxf/dxf2mtf.cxx980
-rw-r--r--filter/source/graphicfilter/idxf/dxf2mtf.hxx128
-rw-r--r--filter/source/graphicfilter/idxf/dxfblkrd.cxx139
-rw-r--r--filter/source/graphicfilter/idxf/dxfblkrd.hxx87
-rw-r--r--filter/source/graphicfilter/idxf/dxfentrd.cxx871
-rw-r--r--filter/source/graphicfilter/idxf/dxfentrd.hxx602
-rw-r--r--filter/source/graphicfilter/idxf/dxfgrprd.cxx361
-rw-r--r--filter/source/graphicfilter/idxf/dxfgrprd.hxx155
-rw-r--r--filter/source/graphicfilter/idxf/dxfreprd.cxx385
-rw-r--r--filter/source/graphicfilter/idxf/dxfreprd.hxx138
-rw-r--r--filter/source/graphicfilter/idxf/dxftblrd.cxx348
-rw-r--r--filter/source/graphicfilter/idxf/dxftblrd.hxx183
-rw-r--r--filter/source/graphicfilter/idxf/dxfvec.cxx254
-rw-r--r--filter/source/graphicfilter/idxf/dxfvec.hxx261
-rw-r--r--filter/source/graphicfilter/idxf/exports.map7
-rw-r--r--filter/source/graphicfilter/idxf/idxf.cxx53
-rw-r--r--filter/source/graphicfilter/idxf/makefile.mk79
-rw-r--r--filter/source/graphicfilter/ieps/exports.map7
-rw-r--r--filter/source/graphicfilter/ieps/ieps.cxx744
-rw-r--r--filter/source/graphicfilter/ieps/makefile.mk66
-rw-r--r--filter/source/graphicfilter/ios2met/exports.map7
-rw-r--r--filter/source/graphicfilter/ios2met/ios2met.cxx2757
-rw-r--r--filter/source/graphicfilter/ios2met/makefile.mk68
-rw-r--r--filter/source/graphicfilter/ipbm/exports.map7
-rw-r--r--filter/source/graphicfilter/ipbm/ipbm.cxx538
-rw-r--r--filter/source/graphicfilter/ipbm/makefile.mk68
-rw-r--r--filter/source/graphicfilter/ipcd/exports.map7
-rw-r--r--filter/source/graphicfilter/ipcd/ipcd.cxx394
-rw-r--r--filter/source/graphicfilter/ipcd/makefile.mk67
-rw-r--r--filter/source/graphicfilter/ipcx/exports.map7
-rw-r--r--filter/source/graphicfilter/ipcx/ipcx.cxx431
-rw-r--r--filter/source/graphicfilter/ipcx/makefile.mk67
-rw-r--r--filter/source/graphicfilter/ipict/exports.map7
-rw-r--r--filter/source/graphicfilter/ipict/ipict.cxx2018
-rw-r--r--filter/source/graphicfilter/ipict/makefile.mk68
-rw-r--r--filter/source/graphicfilter/ipsd/exports.map7
-rw-r--r--filter/source/graphicfilter/ipsd/ipsd.cxx737
-rw-r--r--filter/source/graphicfilter/ipsd/makefile.mk67
-rw-r--r--filter/source/graphicfilter/iras/exports.map7
-rw-r--r--filter/source/graphicfilter/iras/iras.cxx356
-rw-r--r--filter/source/graphicfilter/iras/makefile.mk67
-rw-r--r--filter/source/graphicfilter/itga/exports.map7
-rw-r--r--filter/source/graphicfilter/itga/itga.cxx731
-rw-r--r--filter/source/graphicfilter/itga/makefile.mk67
-rw-r--r--filter/source/graphicfilter/itiff/ccidecom.cxx1112
-rw-r--r--filter/source/graphicfilter/itiff/ccidecom.hxx125
-rw-r--r--filter/source/graphicfilter/itiff/exports.map7
-rw-r--r--filter/source/graphicfilter/itiff/itiff.cxx1314
-rw-r--r--filter/source/graphicfilter/itiff/lzwdecom.cxx192
-rw-r--r--filter/source/graphicfilter/itiff/lzwdecom.hxx79
-rw-r--r--filter/source/graphicfilter/itiff/makefile.mk71
-rw-r--r--filter/source/msfilter/countryid.cxx342
-rw-r--r--filter/source/msfilter/escherex.cxx4949
-rw-r--r--filter/source/msfilter/eschesdo.cxx1255
-rw-r--r--filter/source/msfilter/eschesdo.hxx206
-rw-r--r--filter/source/msfilter/makefile.mk86
-rw-r--r--filter/source/msfilter/makefile.pmk30
-rw-r--r--filter/source/msfilter/mscodec.cxx534
-rw-r--r--filter/source/msfilter/msdffimp.cxx8149
-rw-r--r--filter/source/msfilter/msfiltertracer.cxx251
-rw-r--r--filter/source/msfilter/msocximex.cxx5956
-rw-r--r--filter/source/msfilter/msoleexp.cxx364
-rw-r--r--filter/source/msfilter/msvbahelper.cxx410
-rw-r--r--filter/source/msfilter/msvbasic.cxx639
-rw-r--r--filter/source/msfilter/msvbasic.hxx120
-rw-r--r--filter/source/msfilter/powerpoint/makefile.mk65
-rw-r--r--filter/source/msfilter/powerpoint/pptcom.hxx76
-rw-r--r--filter/source/msfilter/powerpoint/pptimporter.cxx163
-rw-r--r--filter/source/msfilter/powerpoint/pptimporter.hxx91
-rw-r--r--filter/source/msfilter/powerpoint/pptimporteruno.cxx79
-rw-r--r--filter/source/msfilter/powerpoint/ppttoxml.cxx91
-rw-r--r--filter/source/msfilter/powerpoint/ppttoxml.hxx51
-rw-r--r--filter/source/msfilter/svdfppt.cxx7819
-rw-r--r--filter/source/msfilter/svxmsbas.cxx502
-rw-r--r--filter/source/msfilter/svxmsbas2.cxx85
-rw-r--r--filter/source/msfilter/viscache.hxx82
-rw-r--r--filter/source/pdf/impdialog.cxx1553
-rw-r--r--filter/source/pdf/impdialog.hrc185
-rw-r--r--filter/source/pdf/impdialog.hxx406
-rw-r--r--filter/source/pdf/impdialog.src905
-rw-r--r--filter/source/pdf/makefile.mk91
-rw-r--r--filter/source/pdf/pdf.hrc29
-rw-r--r--filter/source/pdf/pdf.src66
-rw-r--r--filter/source/pdf/pdfdialog.cxx222
-rw-r--r--filter/source/pdf/pdfdialog.hxx91
-rw-r--r--filter/source/pdf/pdfexport.cxx1054
-rw-r--r--filter/source/pdf/pdfexport.hxx134
-rw-r--r--filter/source/pdf/pdffilter.component37
-rw-r--r--filter/source/pdf/pdffilter.cxx267
-rw-r--r--filter/source/pdf/pdffilter.hxx133
-rw-r--r--filter/source/pdf/pdfuno.cxx89
-rw-r--r--filter/source/placeware/Base64Codec.cxx207
-rw-r--r--filter/source/placeware/Base64Codec.hxx47
-rw-r--r--filter/source/placeware/exporter.cxx516
-rw-r--r--filter/source/placeware/exporter.hxx60
-rw-r--r--filter/source/placeware/exports.dxp2
-rw-r--r--filter/source/placeware/filter.cxx217
-rw-r--r--filter/source/placeware/makefile.mk75
-rw-r--r--filter/source/placeware/placeware.component34
-rw-r--r--filter/source/placeware/placeware.xml45
-rw-r--r--filter/source/placeware/tempfile.cxx189
-rw-r--r--filter/source/placeware/tempfile.hxx48
-rw-r--r--filter/source/placeware/uno.cxx84
-rw-r--r--filter/source/placeware/zip.cxx332
-rw-r--r--filter/source/placeware/zip.hxx62
-rw-r--r--filter/source/placeware/zipfile.hxx91
-rw-r--r--filter/source/svg/SOTranscoder.java45
-rw-r--r--filter/source/svg/makefile.mk91
-rw-r--r--filter/source/svg/svgexport.cxx1007
-rw-r--r--filter/source/svg/svgfilter.component34
-rw-r--r--filter/source/svg/svgfilter.cxx229
-rw-r--r--filter/source/svg/svgfilter.hxx296
-rw-r--r--filter/source/svg/svgfontexport.cxx258
-rw-r--r--filter/source/svg/svgfontexport.hxx64
-rw-r--r--filter/source/svg/svgimport.cxx188
-rw-r--r--filter/source/svg/svgscript.hxx209
-rw-r--r--filter/source/svg/svguno.cxx76
-rw-r--r--filter/source/svg/svgwriter.cxx1657
-rw-r--r--filter/source/svg/svgwriter.hxx225
-rw-r--r--filter/source/t602/filterenv.cxx93
-rw-r--r--filter/source/t602/makefile.mk70
-rw-r--r--filter/source/t602/t602filter.component38
-rw-r--r--filter/source/t602/t602filter.cxx1266
-rw-r--r--filter/source/t602/t602filter.hrc45
-rw-r--r--filter/source/t602/t602filter.hxx286
-rw-r--r--filter/source/t602/t602filter.src83
-rw-r--r--filter/source/xmlfilteradaptor/XmlFilterAdaptor.cxx437
-rw-r--r--filter/source/xmlfilteradaptor/XmlFilterAdaptor.hxx184
-rw-r--r--filter/source/xmlfilteradaptor/genericfilter.cxx128
-rw-r--r--filter/source/xmlfilteradaptor/makefile.mk70
-rwxr-xr-xfilter/source/xmlfilteradaptor/streamwrap.cxx70
-rwxr-xr-xfilter/source/xmlfilteradaptor/streamwrap.hxx78
-rw-r--r--filter/source/xmlfilteradaptor/xmlfa.component35
-rw-r--r--filter/source/xmlfilterdetect/fdcomp.cxx128
-rw-r--r--filter/source/xmlfilterdetect/filterdetect.cxx309
-rw-r--r--filter/source/xmlfilterdetect/filterdetect.hxx168
-rw-r--r--filter/source/xmlfilterdetect/makefile.mk68
-rw-r--r--filter/source/xmlfilterdetect/xmlfd.component34
-rw-r--r--filter/source/xslt/common/copy.xsl9
-rw-r--r--filter/source/xslt/common/math.xsl589
-rw-r--r--filter/source/xslt/common/measure_conversion.xsl387
-rw-r--r--filter/source/xslt/export/common/ooo2ms_docpr.xsl137
-rw-r--r--filter/source/xslt/export/spreadsheetml/formular.xsl640
-rw-r--r--filter/source/xslt/export/spreadsheetml/ooo2spreadsheetml.xsl417
-rw-r--r--filter/source/xslt/export/spreadsheetml/style_mapping.xsl390
-rw-r--r--filter/source/xslt/export/spreadsheetml/styles.xsl695
-rw-r--r--filter/source/xslt/export/spreadsheetml/table.xsl937
-rw-r--r--filter/source/xslt/export/uof/odf2uof_presentation.xsl3375
-rw-r--r--filter/source/xslt/export/uof/odf2uof_spreadsheet.xsl6194
-rw-r--r--filter/source/xslt/export/uof/odf2uof_text.xsl4439
-rw-r--r--filter/source/xslt/export/wordml/ooo2wordml.xsl218
-rw-r--r--filter/source/xslt/export/wordml/ooo2wordml_border.xsl153
-rw-r--r--filter/source/xslt/export/wordml/ooo2wordml_custom_draw.xsl284
-rw-r--r--filter/source/xslt/export/wordml/ooo2wordml_draw.xsl1885
-rw-r--r--filter/source/xslt/export/wordml/ooo2wordml_field.xsl733
-rw-r--r--filter/source/xslt/export/wordml/ooo2wordml_list.xsl340
-rw-r--r--filter/source/xslt/export/wordml/ooo2wordml_page.xsl401
-rw-r--r--filter/source/xslt/export/wordml/ooo2wordml_path.xsl858
-rw-r--r--filter/source/xslt/export/wordml/ooo2wordml_settings.xsl312
-rw-r--r--filter/source/xslt/export/wordml/ooo2wordml_table.xsl416
-rw-r--r--filter/source/xslt/export/wordml/ooo2wordml_text.xsl1279
-rw-r--r--filter/source/xslt/import/common/ms2ooo_docpr.xsl101
-rw-r--r--filter/source/xslt/import/spreadsheetml/spreadsheetml2ooo.xsl9173
-rw-r--r--filter/source/xslt/import/uof/uof2odf_presentation.xsl3478
-rw-r--r--filter/source/xslt/import/uof/uof2odf_spreadsheet.xsl9054
-rw-r--r--filter/source/xslt/import/uof/uof2odf_text.xsl4650
-rw-r--r--filter/source/xslt/import/wordml/wordml2ooo.xsl348
-rw-r--r--filter/source/xslt/import/wordml/wordml2ooo_custom_draw.xsl284
-rw-r--r--filter/source/xslt/import/wordml/wordml2ooo_draw.xsl2213
-rw-r--r--filter/source/xslt/import/wordml/wordml2ooo_field.xsl1587
-rw-r--r--filter/source/xslt/import/wordml/wordml2ooo_list.xsl657
-rw-r--r--filter/source/xslt/import/wordml/wordml2ooo_page.xsl387
-rw-r--r--filter/source/xslt/import/wordml/wordml2ooo_path.xsl1818
-rw-r--r--filter/source/xslt/import/wordml/wordml2ooo_props.xsl107
-rw-r--r--filter/source/xslt/import/wordml/wordml2ooo_settings.xsl69
-rw-r--r--filter/source/xslt/import/wordml/wordml2ooo_table.xsl1286
-rw-r--r--filter/source/xslt/import/wordml/wordml2ooo_text.xsl1058
-rw-r--r--filter/source/xslt/odf2xhtml/export/common/body.xsl422
-rw-r--r--filter/source/xslt/odf2xhtml/export/common/styles/style_collector.xsl828
-rw-r--r--filter/source/xslt/odf2xhtml/export/common/styles/style_mapping_css.xsl355
-rw-r--r--filter/source/xslt/odf2xhtml/export/common/table/table.xsl164
-rw-r--r--filter/source/xslt/odf2xhtml/export/common/table/table_cells.xsl279
-rw-r--r--filter/source/xslt/odf2xhtml/export/common/table/table_columns.xsl243
-rw-r--r--filter/source/xslt/odf2xhtml/export/common/table/table_rows.xsl212
-rw-r--r--filter/source/xslt/odf2xhtml/export/common/table_of_content.xsl554
-rw-r--r--filter/source/xslt/odf2xhtml/export/xhtml/body.xsl2926
-rw-r--r--filter/source/xslt/odf2xhtml/export/xhtml/header.xsl484
-rw-r--r--filter/source/xslt/odf2xhtml/export/xhtml/opendoc2xhtml.xsl183
-rw-r--r--filter/source/xslt/odf2xhtml/export/xhtml/table.xsl222
-rw-r--r--filter/source/xsltdialog/exports.dxp2
-rw-r--r--filter/source/xsltdialog/hidother.src78
-rw-r--r--filter/source/xsltdialog/makefile.mk102
-rw-r--r--filter/source/xsltdialog/typedetectionexport.cxx298
-rw-r--r--filter/source/xsltdialog/typedetectionexport.hxx53
-rw-r--r--filter/source/xsltdialog/typedetectionimport.cxx362
-rw-r--r--filter/source/xsltdialog/typedetectionimport.hxx129
-rw-r--r--filter/source/xsltdialog/xmlfileview.cxx990
-rw-r--r--filter/source/xsltdialog/xmlfileview.hrc36
-rw-r--r--filter/source/xsltdialog/xmlfileview.hxx177
-rw-r--r--filter/source/xsltdialog/xmlfileview.src64
-rw-r--r--filter/source/xsltdialog/xmlfiltercommon.hrc41
-rw-r--r--filter/source/xsltdialog/xmlfiltercommon.hxx107
-rw-r--r--filter/source/xsltdialog/xmlfilterdialogcomponent.cxx436
-rw-r--r--filter/source/xsltdialog/xmlfilterdialogstrings.hrc72
-rw-r--r--filter/source/xsltdialog/xmlfilterdialogstrings.src203
-rw-r--r--filter/source/xsltdialog/xmlfilterhelpids.hrc81
-rw-r--r--filter/source/xsltdialog/xmlfilterjar.cxx405
-rw-r--r--filter/source/xsltdialog/xmlfilterjar.hxx65
-rw-r--r--filter/source/xsltdialog/xmlfiltersettingsdialog.cxx1799
-rw-r--r--filter/source/xsltdialog/xmlfiltersettingsdialog.hrc43
-rw-r--r--filter/source/xsltdialog/xmlfiltersettingsdialog.hxx161
-rw-r--r--filter/source/xsltdialog/xmlfiltersettingsdialog.src139
-rw-r--r--filter/source/xsltdialog/xmlfiltertabdialog.cxx373
-rw-r--r--filter/source/xsltdialog/xmlfiltertabdialog.hrc33
-rw-r--r--filter/source/xsltdialog/xmlfiltertabdialog.hxx75
-rw-r--r--filter/source/xsltdialog/xmlfiltertabdialog.src65
-rw-r--r--filter/source/xsltdialog/xmlfiltertabpagebasic.cxx153
-rw-r--r--filter/source/xsltdialog/xmlfiltertabpagebasic.hrc44
-rw-r--r--filter/source/xsltdialog/xmlfiltertabpagebasic.hxx67
-rw-r--r--filter/source/xsltdialog/xmlfiltertabpagebasic.src152
-rw-r--r--filter/source/xsltdialog/xmlfiltertabpagexslt.cxx221
-rw-r--r--filter/source/xsltdialog/xmlfiltertabpagexslt.hrc48
-rw-r--r--filter/source/xsltdialog/xmlfiltertabpagexslt.hxx82
-rw-r--r--filter/source/xsltdialog/xmlfiltertabpagexslt.src176
-rw-r--r--filter/source/xsltdialog/xmlfiltertestdialog.cxx783
-rw-r--r--filter/source/xsltdialog/xmlfiltertestdialog.hrc53
-rw-r--r--filter/source/xsltdialog/xmlfiltertestdialog.hxx107
-rw-r--r--filter/source/xsltdialog/xmlfiltertestdialog.src210
-rw-r--r--filter/source/xsltdialog/xsltdlg.component34
-rw-r--r--filter/source/xsltfilter/Base64.java1833
-rw-r--r--filter/source/xsltfilter/Manifest3
-rw-r--r--filter/source/xsltfilter/XSLTFilter.cxx706
-rw-r--r--filter/source/xsltfilter/XSLTFilter.jar.component34
-rw-r--r--filter/source/xsltfilter/XSLTFilterOLEExtracter.java393
-rw-r--r--filter/source/xsltfilter/XSLTransformer.java478
-rw-r--r--filter/source/xsltfilter/fla.cxx327
-rw-r--r--filter/source/xsltfilter/fla.hxx53
-rw-r--r--filter/source/xsltfilter/makefile.mk99
-rw-r--r--filter/source/xsltfilter/xsltfilter.component34
-rw-r--r--filter/source/xsltvalidate/Manifest2
-rw-r--r--filter/source/xsltvalidate/XSLTValidate.component34
-rw-r--r--filter/source/xsltvalidate/XSLTValidate.java332
-rw-r--r--filter/source/xsltvalidate/makefile.mk84
-rw-r--r--forms/inc/makefile.mk48
-rw-r--r--forms/inc/pch/precompiled_forms.cxx29
-rw-r--r--forms/inc/pch/precompiled_forms.hxx400
-rw-r--r--forms/makefile.pmk28
-rw-r--r--forms/prj/build.lst19
-rw-r--r--forms/prj/d.lst8
-rwxr-xr-xforms/qa/complex/forms/CheckOGroupBoxModel.java222
-rwxr-xr-xforms/qa/complex/forms/makefile.mk117
-rw-r--r--forms/qa/forms_all.sce8
-rw-r--r--forms/qa/integration/forms/BooleanValidator.java59
-rw-r--r--forms/qa/integration/forms/CellBinding.java560
-rw-r--r--forms/qa/integration/forms/ControlValidation.java202
-rw-r--r--forms/qa/integration/forms/ControlValidator.java61
-rw-r--r--forms/qa/integration/forms/DateValidator.java103
-rw-r--r--forms/qa/integration/forms/DocumentHelper.java404
-rw-r--r--forms/qa/integration/forms/DocumentType.java61
-rw-r--r--forms/qa/integration/forms/DocumentViewHelper.java257
-rw-r--r--forms/qa/integration/forms/FormComponent.java197
-rw-r--r--forms/qa/integration/forms/FormControlTest.java952
-rw-r--r--forms/qa/integration/forms/FormLayer.java376
-rw-r--r--forms/qa/integration/forms/FormPropertyBags.java208
-rw-r--r--forms/qa/integration/forms/ImageComparison.java73
-rw-r--r--forms/qa/integration/forms/ListBox.java290
-rw-r--r--forms/qa/integration/forms/ListSelection.java298
-rw-r--r--forms/qa/integration/forms/ListSelection.props3
-rw-r--r--forms/qa/integration/forms/ListSelectionValidator.java71
-rw-r--r--forms/qa/integration/forms/MasterDetailForms.java435
-rw-r--r--forms/qa/integration/forms/NumericValidator.java90
-rw-r--r--forms/qa/integration/forms/RadioButtons.java459
-rw-r--r--forms/qa/integration/forms/SingleControlValidation.java191
-rw-r--r--forms/qa/integration/forms/SpreadsheetDocument.java151
-rw-r--r--forms/qa/integration/forms/SpreadsheetView.java81
-rw-r--r--forms/qa/integration/forms/TableCellTextBinding.java213
-rw-r--r--forms/qa/integration/forms/TestCase.java158
-rw-r--r--forms/qa/integration/forms/TestSkeleton.java75
-rw-r--r--forms/qa/integration/forms/TextValidator.java90
-rw-r--r--forms/qa/integration/forms/TimeValidator.java95
-rw-r--r--forms/qa/integration/forms/ValueBinding.java120
-rw-r--r--forms/qa/integration/forms/WaitForInput.java66
-rw-r--r--forms/qa/integration/forms/XMLFormSettings.java229
-rw-r--r--forms/qa/integration/forms/dbfTools.java55
-rw-r--r--forms/qa/makefile.mk79
-rw-r--r--forms/qa/org/openoffice/complex/forms/tools/ResultSet.java264
-rw-r--r--forms/qa/org/openoffice/xforms/Instance.java198
-rw-r--r--forms/qa/org/openoffice/xforms/Model.java100
-rw-r--r--forms/qa/org/openoffice/xforms/XMLDocument.java96
-rw-r--r--forms/qa/unoapi/Test.java51
-rw-r--r--forms/qa/unoapi/forms.sce40
-rw-r--r--forms/qa/unoapi/knownissues.xcl135
-rw-r--r--forms/qa/unoapi/makefile.mk48
-rw-r--r--forms/qa/unoapi/testdocuments/TestDB/testDB.dbfbin0 -> 11101 bytes-rw-r--r--forms/qa/unoapi/testdocuments/TestDB/testDB.dbtbin0 -> 18435 bytes-rw-r--r--forms/source/component/BaseListBox.hxx43
-rw-r--r--forms/source/component/Button.cxx780
-rw-r--r--forms/source/component/Button.hxx210
-rw-r--r--forms/source/component/CheckBox.cxx275
-rw-r--r--forms/source/component/CheckBox.hxx91
-rw-r--r--forms/source/component/Columns.cxx602
-rw-r--r--forms/source/component/Columns.hxx221
-rw-r--r--forms/source/component/ComboBox.cxx914
-rw-r--r--forms/source/component/ComboBox.hxx178
-rw-r--r--forms/source/component/Currency.cxx268
-rw-r--r--forms/source/component/Currency.hxx101
-rw-r--r--forms/source/component/DatabaseForm.cxx4162
-rw-r--r--forms/source/component/DatabaseForm.hxx569
-rw-r--r--forms/source/component/Date.cxx363
-rw-r--r--forms/source/component/Date.hxx133
-rw-r--r--forms/source/component/Edit.cxx766
-rw-r--r--forms/source/component/Edit.hxx188
-rw-r--r--forms/source/component/EditBase.cxx363
-rw-r--r--forms/source/component/EditBase.hxx113
-rw-r--r--forms/source/component/EventThread.cxx251
-rw-r--r--forms/source/component/EventThread.hxx126
-rw-r--r--forms/source/component/File.cxx307
-rw-r--r--forms/source/component/File.hxx103
-rw-r--r--forms/source/component/Filter.cxx873
-rw-r--r--forms/source/component/Filter.hxx156
-rw-r--r--forms/source/component/FixedText.cxx138
-rw-r--r--forms/source/component/FixedText.hxx71
-rw-r--r--forms/source/component/FormComponent.cxx3082
-rw-r--r--forms/source/component/FormattedField.cxx1257
-rw-r--r--forms/source/component/FormattedField.hxx198
-rw-r--r--forms/source/component/FormattedFieldWrapper.cxx398
-rw-r--r--forms/source/component/FormattedFieldWrapper.hxx99
-rw-r--r--forms/source/component/FormsCollection.cxx186
-rw-r--r--forms/source/component/FormsCollection.hxx100
-rw-r--r--forms/source/component/Grid.cxx1163
-rw-r--r--forms/source/component/Grid.hxx219
-rw-r--r--forms/source/component/GroupBox.cxx175
-rw-r--r--forms/source/component/GroupBox.hxx84
-rw-r--r--forms/source/component/GroupManager.cxx501
-rw-r--r--forms/source/component/GroupManager.hxx228
-rw-r--r--forms/source/component/Hidden.cxx190
-rw-r--r--forms/source/component/Hidden.hxx84
-rw-r--r--forms/source/component/ImageButton.cxx273
-rw-r--r--forms/source/component/ImageButton.hxx107
-rw-r--r--forms/source/component/ImageControl.cxx1023
-rw-r--r--forms/source/component/ImageControl.hxx210
-rw-r--r--forms/source/component/ListBox.cxx1846
-rw-r--r--forms/source/component/ListBox.hxx286
-rw-r--r--forms/source/component/Numeric.cxx222
-rw-r--r--forms/source/component/Numeric.hxx99
-rw-r--r--forms/source/component/Pattern.cxx262
-rw-r--r--forms/source/component/Pattern.hxx108
-rw-r--r--forms/source/component/RadioButton.cxx411
-rw-r--r--forms/source/component/RadioButton.hxx111
-rw-r--r--forms/source/component/Time.cxx365
-rw-r--r--forms/source/component/Time.hxx133
-rw-r--r--forms/source/component/cachedrowset.cxx202
-rw-r--r--forms/source/component/cachedrowset.hxx97
-rw-r--r--forms/source/component/clickableimage.cxx929
-rw-r--r--forms/source/component/clickableimage.hxx295
-rw-r--r--forms/source/component/cloneable.cxx68
-rw-r--r--forms/source/component/entrylisthelper.cxx321
-rw-r--r--forms/source/component/entrylisthelper.hxx198
-rw-r--r--forms/source/component/errorbroadcaster.cxx113
-rw-r--r--forms/source/component/errorbroadcaster.hxx74
-rw-r--r--forms/source/component/findpos.cxx57
-rw-r--r--forms/source/component/findpos.hxx45
-rw-r--r--forms/source/component/formcontrolfont.cxx551
-rw-r--r--forms/source/component/imgprod.cxx625
-rw-r--r--forms/source/component/imgprod.hxx107
-rw-r--r--forms/source/component/makefile.mk95
-rw-r--r--forms/source/component/navigationbar.cxx509
-rw-r--r--forms/source/component/navigationbar.hxx138
-rw-r--r--forms/source/component/propertybaghelper.cxx369
-rw-r--r--forms/source/component/refvaluecomponent.cxx301
-rw-r--r--forms/source/component/refvaluecomponent.hxx109
-rw-r--r--forms/source/component/scrollbar.cxx319
-rw-r--r--forms/source/component/scrollbar.hxx101
-rw-r--r--forms/source/component/spinbutton.cxx275
-rw-r--r--forms/source/component/spinbutton.hxx101
-rw-r--r--forms/source/helper/commanddescriptionprovider.cxx140
-rw-r--r--forms/source/helper/commandimageprovider.cxx181
-rw-r--r--forms/source/helper/controlfeatureinterception.cxx170
-rw-r--r--forms/source/helper/formnavigation.cxx484
-rw-r--r--forms/source/helper/makefile.mk58
-rw-r--r--forms/source/helper/resettable.cxx102
-rw-r--r--forms/source/helper/urltransformer.cxx102
-rw-r--r--forms/source/helper/windowstateguard.cxx226
-rw-r--r--forms/source/inc/FormComponent.hxx1320
-rw-r--r--forms/source/inc/InterfaceContainer.hxx328
-rw-r--r--forms/source/inc/cloneable.hxx55
-rw-r--r--forms/source/inc/commanddescriptionprovider.hxx69
-rw-r--r--forms/source/inc/commandimageprovider.hxx78
-rw-r--r--forms/source/inc/componenttools.hxx105
-rw-r--r--forms/source/inc/controlfeatureinterception.hxx100
-rw-r--r--forms/source/inc/featuredispatcher.hxx110
-rw-r--r--forms/source/inc/formcontrolfont.hxx101
-rw-r--r--forms/source/inc/formnavigation.hxx235
-rw-r--r--forms/source/inc/forms_module.hxx317
-rw-r--r--forms/source/inc/forms_module_impl.hxx161
-rw-r--r--forms/source/inc/frm_module.hxx37
-rw-r--r--forms/source/inc/frm_resource.hrc108
-rw-r--r--forms/source/inc/frm_resource.hxx77
-rw-r--r--forms/source/inc/frm_strings.hxx361
-rw-r--r--forms/source/inc/ids.hxx36
-rw-r--r--forms/source/inc/limitedformats.hxx105
-rw-r--r--forms/source/inc/listenercontainers.hxx140
-rw-r--r--forms/source/inc/property.hrc316
-rw-r--r--forms/source/inc/property.hxx236
-rw-r--r--forms/source/inc/propertybaghelper.hxx166
-rw-r--r--forms/source/inc/resettable.hxx76
-rw-r--r--forms/source/inc/services.hxx233
-rw-r--r--forms/source/inc/togglestate.hxx44
-rw-r--r--forms/source/inc/urltransformer.hxx86
-rw-r--r--forms/source/inc/windowstateguard.hxx83
-rw-r--r--forms/source/misc/InterfaceContainer.cxx1363
-rw-r--r--forms/source/misc/componenttools.cxx123
-rw-r--r--forms/source/misc/frm_module.cxx36
-rw-r--r--forms/source/misc/frm_strings.cxx34
-rw-r--r--forms/source/misc/ids.cxx36
-rw-r--r--forms/source/misc/limitedformats.cxx402
-rw-r--r--forms/source/misc/listenercontainers.cxx72
-rw-r--r--forms/source/misc/makefile.mk70
-rw-r--r--forms/source/misc/property.cxx258
-rw-r--r--forms/source/misc/services.cxx397
-rw-r--r--forms/source/resource/frm_resource.cxx89
-rw-r--r--forms/source/resource/makefile.mk49
-rw-r--r--forms/source/resource/strings.src161
-rw-r--r--forms/source/resource/xforms.src196
-rw-r--r--forms/source/richtext/attributedispatcher.cxx138
-rw-r--r--forms/source/richtext/attributedispatcher.hxx104
-rw-r--r--forms/source/richtext/clipboarddispatcher.cxx208
-rw-r--r--forms/source/richtext/clipboarddispatcher.hxx107
-rw-r--r--forms/source/richtext/featuredispatcher.cxx157
-rw-r--r--forms/source/richtext/featuredispatcher.hxx107
-rw-r--r--forms/source/richtext/makefile.mk60
-rw-r--r--forms/source/richtext/parametrizedattributedispatcher.cxx143
-rw-r--r--forms/source/richtext/parametrizedattributedispatcher.hxx75
-rw-r--r--forms/source/richtext/richtextcontrol.cxx766
-rw-r--r--forms/source/richtext/richtextcontrol.hxx163
-rw-r--r--forms/source/richtext/richtextengine.cxx162
-rw-r--r--forms/source/richtext/richtextengine.hxx91
-rw-r--r--forms/source/richtext/richtextimplcontrol.cxx680
-rw-r--r--forms/source/richtext/richtextimplcontrol.hxx196
-rw-r--r--forms/source/richtext/richtextmodel.cxx638
-rw-r--r--forms/source/richtext/richtextmodel.hxx194
-rw-r--r--forms/source/richtext/richtextunowrapper.cxx136
-rw-r--r--forms/source/richtext/richtextunowrapper.hxx98
-rw-r--r--forms/source/richtext/richtextvclcontrol.cxx392
-rw-r--r--forms/source/richtext/richtextvclcontrol.hxx143
-rw-r--r--forms/source/richtext/richtextviewport.cxx127
-rw-r--r--forms/source/richtext/richtextviewport.hxx80
-rw-r--r--forms/source/richtext/rtattributehandler.cxx532
-rw-r--r--forms/source/richtext/rtattributehandler.hxx240
-rw-r--r--forms/source/richtext/rtattributes.hxx172
-rw-r--r--forms/source/richtext/specialdispatchers.cxx200
-rw-r--r--forms/source/richtext/specialdispatchers.hxx113
-rw-r--r--forms/source/richtext/textattributelistener.hxx61
-rw-r--r--forms/source/runtime/formoperations.cxx1739
-rw-r--r--forms/source/runtime/formoperations.hxx379
-rw-r--r--forms/source/runtime/makefile.mk47
-rw-r--r--forms/source/solar/component/makefile.mk51
-rw-r--r--forms/source/solar/component/navbarcontrol.cxx564
-rw-r--r--forms/source/solar/component/navbarcontrol.hxx162
-rw-r--r--forms/source/solar/control/makefile.mk53
-rw-r--r--forms/source/solar/control/navtoolbar.cxx736
-rw-r--r--forms/source/solar/inc/navtoolbar.hxx194
-rw-r--r--forms/source/xforms/NameContainer.hxx221
-rw-r--r--forms/source/xforms/binding.cxx1409
-rw-r--r--forms/source/xforms/binding.hxx527
-rw-r--r--forms/source/xforms/boolexpression.cxx59
-rw-r--r--forms/source/xforms/boolexpression.hxx55
-rw-r--r--forms/source/xforms/collection.hxx337
-rw-r--r--forms/source/xforms/computedexpression.cxx246
-rw-r--r--forms/source/xforms/computedexpression.hxx138
-rw-r--r--forms/source/xforms/convert.cxx627
-rw-r--r--forms/source/xforms/convert.hxx113
-rw-r--r--forms/source/xforms/datatyperepository.cxx298
-rw-r--r--forms/source/xforms/datatyperepository.hxx98
-rw-r--r--forms/source/xforms/datatypes.cxx995
-rw-r--r--forms/source/xforms/datatypes.hxx424
-rw-r--r--forms/source/xforms/datatypes_impl.hxx76
-rw-r--r--forms/source/xforms/enumeration.cxx74
-rw-r--r--forms/source/xforms/enumeration.hxx63
-rw-r--r--forms/source/xforms/evaluationcontext.hxx75
-rw-r--r--forms/source/xforms/makefile.mk66
-rw-r--r--forms/source/xforms/mip.cxx126
-rw-r--r--forms/source/xforms/mip.hxx122
-rw-r--r--forms/source/xforms/model.cxx808
-rw-r--r--forms/source/xforms/model.hxx435
-rw-r--r--forms/source/xforms/model_helper.hxx167
-rw-r--r--forms/source/xforms/model_ui.cxx1066
-rw-r--r--forms/source/xforms/namedcollection.hxx142
-rw-r--r--forms/source/xforms/pathexpression.cxx154
-rw-r--r--forms/source/xforms/pathexpression.hxx91
-rw-r--r--forms/source/xforms/propertysetbase.cxx192
-rw-r--r--forms/source/xforms/propertysetbase.hxx371
-rw-r--r--forms/source/xforms/resourcehelper.cxx79
-rw-r--r--forms/source/xforms/resourcehelper.hxx52
-rw-r--r--forms/source/xforms/submission.cxx719
-rw-r--r--forms/source/xforms/submission.hxx276
-rw-r--r--forms/source/xforms/submission/makefile.mk57
-rw-r--r--forms/source/xforms/submission/replace.cxx145
-rw-r--r--forms/source/xforms/submission/serialization.hxx98
-rw-r--r--forms/source/xforms/submission/serialization_app_xml.cxx121
-rw-r--r--forms/source/xforms/submission/serialization_app_xml.hxx55
-rw-r--r--forms/source/xforms/submission/serialization_urlencoded.cxx210
-rw-r--r--forms/source/xforms/submission/serialization_urlencoded.hxx56
-rw-r--r--forms/source/xforms/submission/submission.hxx160
-rw-r--r--forms/source/xforms/submission/submission_get.cxx117
-rw-r--r--forms/source/xforms/submission/submission_get.hxx44
-rw-r--r--forms/source/xforms/submission/submission_post.cxx105
-rw-r--r--forms/source/xforms/submission/submission_post.hxx40
-rw-r--r--forms/source/xforms/submission/submission_put.cxx81
-rw-r--r--forms/source/xforms/submission/submission_put.hxx44
-rw-r--r--forms/source/xforms/unohelper.cxx103
-rw-r--r--forms/source/xforms/unohelper.hxx57
-rw-r--r--forms/source/xforms/warnings_guard_unicode_regex.h48
-rw-r--r--forms/source/xforms/xforms_services.cxx72
-rw-r--r--forms/source/xforms/xforms_services.hxx27
-rw-r--r--forms/source/xforms/xformsevent.cxx100
-rw-r--r--forms/source/xforms/xformsevent.hxx66
-rw-r--r--forms/source/xforms/xmlhelper.cxx148
-rw-r--r--forms/source/xforms/xmlhelper.hxx51
-rw-r--r--forms/source/xforms/xpathlib/extension.cxx104
-rw-r--r--forms/source/xforms/xpathlib/extension.hxx39
-rw-r--r--forms/source/xforms/xpathlib/makefile.mk56
-rw-r--r--forms/source/xforms/xpathlib/xpathlib.cxx567
-rw-r--r--forms/source/xforms/xpathlib/xpathlib.hxx83
-rw-r--r--forms/util/frm.component255
-rw-r--r--forms/util/frm.dxp2
-rw-r--r--forms/util/frm.xml571
-rw-r--r--forms/util/makefile.mk122
-rw-r--r--forms/workben/xforms/sickness.odtbin0 -> 9233 bytes-rw-r--r--forms/workben/xforms/simple_validation.odtbin0 -> 7184 bytes-rw-r--r--forms/workben/xforms/vacationrequest.odtbin0 -> 8089 bytes-rw-r--r--forms/workben/xforms/xforms-ubl.odtbin0 -> 22265 bytes-rw-r--r--formula/inc/AddressConvention.hxx39
-rw-r--r--formula/inc/formula/ExternalReferenceHelper.hxx45
-rw-r--r--formula/inc/formula/FormulaCompiler.hxx381
-rw-r--r--formula/inc/formula/FormulaOpCodeMapperObj.hxx86
-rw-r--r--formula/inc/formula/IControlReferenceHandler.hxx45
-rw-r--r--formula/inc/formula/IFunctionDescription.hxx163
-rw-r--r--formula/inc/formula/compiler.hrc406
-rw-r--r--formula/inc/formula/errorcodes.hxx122
-rw-r--r--formula/inc/formula/formdata.hxx91
-rw-r--r--formula/inc/formula/formula.hxx157
-rw-r--r--formula/inc/formula/formuladllapi.h41
-rw-r--r--formula/inc/formula/formulahelper.hxx86
-rw-r--r--formula/inc/formula/funcutl.hxx106
-rw-r--r--formula/inc/formula/grammar.hxx236
-rw-r--r--formula/inc/formula/intruref.hxx101
-rw-r--r--formula/inc/formula/opcode.hxx405
-rw-r--r--formula/inc/formula/token.hxx399
-rw-r--r--formula/inc/formula/tokenarray.hxx286
-rw-r--r--formula/inc/helpids.hrc52
-rw-r--r--formula/inc/makefile.mk47
-rw-r--r--formula/inc/pch/precompiled_formula.cxx29
-rw-r--r--formula/inc/pch/precompiled_formula.hxx36
-rw-r--r--formula/prj/build.lst9
-rw-r--r--formula/prj/d.lst38
-rw-r--r--formula/prj/for.xml14
-rw-r--r--formula/source/core/api/FormulaCompiler.cxx1859
-rw-r--r--formula/source/core/api/FormulaOpCodeMapperObj.cxx126
-rw-r--r--formula/source/core/api/makefile.mk47
-rw-r--r--formula/source/core/api/services.cxx69
-rw-r--r--formula/source/core/api/token.cxx1378
-rw-r--r--formula/source/core/inc/core_resource.hrc45
-rw-r--r--formula/source/core/inc/core_resource.hxx111
-rw-r--r--formula/source/core/resource/core_resource.cxx108
-rw-r--r--formula/source/core/resource/core_resource.src1878
-rw-r--r--formula/source/core/resource/makefile.mk48
-rw-r--r--formula/source/ui/dlg/ControlHelper.hxx193
-rw-r--r--formula/source/ui/dlg/FormulaHelper.cxx406
-rw-r--r--formula/source/ui/dlg/formdlgs.hrc80
-rw-r--r--formula/source/ui/dlg/formdlgs.src548
-rw-r--r--formula/source/ui/dlg/formula.cxx2235
-rw-r--r--formula/source/ui/dlg/funcpage.cxx265
-rw-r--r--formula/source/ui/dlg/funcpage.hxx123
-rw-r--r--formula/source/ui/dlg/funcutl.cxx1106
-rw-r--r--formula/source/ui/dlg/makefile.mk66
-rw-r--r--formula/source/ui/dlg/parawin.cxx600
-rw-r--r--formula/source/ui/dlg/parawin.hrc54
-rw-r--r--formula/source/ui/dlg/parawin.hxx174
-rw-r--r--formula/source/ui/dlg/parawin.src198
-rw-r--r--formula/source/ui/dlg/structpg.cxx227
-rw-r--r--formula/source/ui/dlg/structpg.hxx123
-rw-r--r--formula/source/ui/inc/ForResId.hrc74
-rw-r--r--formula/source/ui/inc/ModuleHelper.hxx99
-rw-r--r--formula/source/ui/resource/ModuleHelper.cxx142
-rw-r--r--formula/source/ui/resource/makefile.mk49
-rw-r--r--formula/util/for.component34
-rw-r--r--formula/util/hh.html190
-rw-r--r--formula/util/hidother.src50
-rw-r--r--formula/util/makefile.mk146
-rw-r--r--formula/util/makefile.pmk42
-rw-r--r--fpicker/inc/makefile.mk47
-rw-r--r--fpicker/inc/pch/precompiled_fpicker.cxx29
-rw-r--r--fpicker/inc/pch/precompiled_fpicker.hxx33
-rw-r--r--fpicker/prj/build.lst11
-rw-r--r--fpicker/prj/d.lst18
-rw-r--r--fpicker/source/aqua/AquaFilePickerDelegate.hxx57
-rw-r--r--fpicker/source/aqua/AquaFilePickerDelegate.mm123
-rw-r--r--fpicker/source/aqua/CFStringUtilities.cxx121
-rw-r--r--fpicker/source/aqua/CFStringUtilities.hxx161
-rw-r--r--fpicker/source/aqua/ControlHelper.cxx1019
-rw-r--r--fpicker/source/aqua/ControlHelper.hxx195
-rw-r--r--fpicker/source/aqua/FPServiceInfo.hxx50
-rw-r--r--fpicker/source/aqua/FPentry.cxx145
-rw-r--r--fpicker/source/aqua/FilterHelper.cxx545
-rw-r--r--fpicker/source/aqua/FilterHelper.hxx160
-rw-r--r--fpicker/source/aqua/NSString_OOoAdditions.hxx44
-rw-r--r--fpicker/source/aqua/NSString_OOoAdditions.mm77
-rw-r--r--fpicker/source/aqua/NSURL_OOoAdditions.hxx48
-rw-r--r--fpicker/source/aqua/NSURL_OOoAdditions.mm112
-rw-r--r--fpicker/source/aqua/SalAquaConstants.h63
-rw-r--r--fpicker/source/aqua/SalAquaFilePicker.cxx812
-rw-r--r--fpicker/source/aqua/SalAquaFilePicker.hxx252
-rw-r--r--fpicker/source/aqua/SalAquaFolderPicker.cxx289
-rw-r--r--fpicker/source/aqua/SalAquaFolderPicker.hxx138
-rw-r--r--fpicker/source/aqua/SalAquaPicker.cxx267
-rw-r--r--fpicker/source/aqua/SalAquaPicker.hxx106
-rw-r--r--fpicker/source/aqua/fps_aqua.component37
-rw-r--r--fpicker/source/aqua/fps_aqua.xml78
-rw-r--r--fpicker/source/aqua/makefile.mk93
-rw-r--r--fpicker/source/aqua/resourceprovider.cxx240
-rw-r--r--fpicker/source/aqua/resourceprovider.hxx67
-rw-r--r--fpicker/source/generic/fpicker.component37
-rw-r--r--fpicker/source/generic/fpicker.cxx226
-rw-r--r--fpicker/source/generic/makefile.mk70
-rw-r--r--fpicker/source/office/OfficeControlAccess.cxx789
-rw-r--r--fpicker/source/office/OfficeControlAccess.hxx125
-rw-r--r--fpicker/source/office/OfficeFilePicker.cxx1186
-rw-r--r--fpicker/source/office/OfficeFilePicker.hxx230
-rw-r--r--fpicker/source/office/OfficeFilePicker.src99
-rw-r--r--fpicker/source/office/OfficeFolderPicker.cxx265
-rw-r--r--fpicker/source/office/OfficeFolderPicker.hxx122
-rw-r--r--fpicker/source/office/asyncfilepicker.cxx220
-rw-r--r--fpicker/source/office/asyncfilepicker.hxx118
-rw-r--r--fpicker/source/office/commonpicker.cxx506
-rw-r--r--fpicker/source/office/commonpicker.hxx209
-rw-r--r--fpicker/source/office/fpinteraction.cxx169
-rw-r--r--fpicker/source/office/fpinteraction.hxx92
-rw-r--r--fpicker/source/office/fps_office.component37
-rw-r--r--fpicker/source/office/fps_office.cxx73
-rw-r--r--fpicker/source/office/fpsmartcontent.cxx308
-rw-r--r--fpicker/source/office/fpsmartcontent.hxx212
-rw-r--r--fpicker/source/office/iodlg.cxx3482
-rw-r--r--fpicker/source/office/iodlg.hrc89
-rw-r--r--fpicker/source/office/iodlg.hxx475
-rw-r--r--fpicker/source/office/iodlg.src333
-rw-r--r--fpicker/source/office/iodlgimp.cxx507
-rw-r--r--fpicker/source/office/iodlgimp.hxx339
-rw-r--r--fpicker/source/office/makefile.mk96
-rw-r--r--fpicker/source/office/pickercallbacks.hxx62
-rw-r--r--fpicker/source/unx/gnome/FPServiceInfo.hxx50
-rw-r--r--fpicker/source/unx/gnome/FPentry.cxx155
-rw-r--r--fpicker/source/unx/gnome/SalGtkFilePicker.cxx2040
-rw-r--r--fpicker/source/unx/gnome/SalGtkFilePicker.hxx356
-rw-r--r--fpicker/source/unx/gnome/SalGtkFolderPicker.cxx246
-rw-r--r--fpicker/source/unx/gnome/SalGtkFolderPicker.hxx135
-rw-r--r--fpicker/source/unx/gnome/SalGtkPicker.cxx294
-rw-r--r--fpicker/source/unx/gnome/SalGtkPicker.hxx121
-rw-r--r--fpicker/source/unx/gnome/eventnotification.hxx53
-rw-r--r--fpicker/source/unx/gnome/fps_gnome.component37
-rw-r--r--fpicker/source/unx/gnome/fps_gnome.xml79
-rw-r--r--fpicker/source/unx/gnome/makefile.mk106
-rw-r--r--fpicker/source/unx/gnome/resourceprovider.cxx225
-rw-r--r--fpicker/source/unx/gnome/resourceprovider.hxx67
-rw-r--r--fpicker/source/unx/kde4/FPServiceInfo.hxx40
-rw-r--r--fpicker/source/unx/kde4/KDE4FPEntry.cxx81
-rw-r--r--fpicker/source/unx/kde4/KDE4FilePicker.cxx740
-rw-r--r--fpicker/source/unx/kde4/KDE4FilePicker.hxx171
-rw-r--r--fpicker/source/unx/kde4/fps_kde4.component34
-rw-r--r--fpicker/source/unx/kde4/fps_kde4.xml51
-rw-r--r--fpicker/source/unx/kde4/makefile.mk90
-rw-r--r--fpicker/source/win32/filepicker/FPServiceInfo.hxx77
-rw-r--r--fpicker/source/win32/filepicker/FPentry.cxx132
-rw-r--r--fpicker/source/win32/filepicker/FileOpenDlg.cxx695
-rw-r--r--fpicker/source/win32/filepicker/FileOpenDlg.hxx327
-rw-r--r--fpicker/source/win32/filepicker/FilePicker.cxx799
-rw-r--r--fpicker/source/win32/filepicker/FilePicker.hxx255
-rw-r--r--fpicker/source/win32/filepicker/FilterContainer.cxx337
-rw-r--r--fpicker/source/win32/filepicker/FilterContainer.hxx115
-rw-r--r--fpicker/source/win32/filepicker/Fps.rc438
-rw-r--r--fpicker/source/win32/filepicker/IVistaFilePickerInternalNotify.hxx75
-rw-r--r--fpicker/source/win32/filepicker/PreviewCtrl.cxx615
-rw-r--r--fpicker/source/win32/filepicker/PreviewCtrl.hxx199
-rw-r--r--fpicker/source/win32/filepicker/SolarMutex.cxx55
-rw-r--r--fpicker/source/win32/filepicker/SolarMutex.hxx30
-rw-r--r--fpicker/source/win32/filepicker/VistaFilePicker.cxx725
-rw-r--r--fpicker/source/win32/filepicker/VistaFilePicker.hxx315
-rw-r--r--fpicker/source/win32/filepicker/VistaFilePickerEventHandler.cxx507
-rw-r--r--fpicker/source/win32/filepicker/VistaFilePickerEventHandler.hxx225
-rw-r--r--fpicker/source/win32/filepicker/VistaFilePickerImpl.cxx1212
-rw-r--r--fpicker/source/win32/filepicker/VistaFilePickerImpl.hxx353
-rw-r--r--fpicker/source/win32/filepicker/WinFileOpenImpl.cxx996
-rw-r--r--fpicker/source/win32/filepicker/WinFileOpenImpl.hxx234
-rw-r--r--fpicker/source/win32/filepicker/afxres.h2
-rw-r--r--fpicker/source/win32/filepicker/asynceventnotifier.cxx327
-rw-r--r--fpicker/source/win32/filepicker/asynceventnotifier.hxx109
-rw-r--r--fpicker/source/win32/filepicker/asyncrequests.cxx228
-rw-r--r--fpicker/source/win32/filepicker/asyncrequests.hxx227
-rw-r--r--fpicker/source/win32/filepicker/comptr.hxx222
-rw-r--r--fpicker/source/win32/filepicker/controlaccess.cxx261
-rw-r--r--fpicker/source/win32/filepicker/controlaccess.hxx80
-rw-r--r--fpicker/source/win32/filepicker/controlcommand.cxx282
-rw-r--r--fpicker/source/win32/filepicker/controlcommand.hxx143
-rw-r--r--fpicker/source/win32/filepicker/controlcommandrequest.hxx86
-rw-r--r--fpicker/source/win32/filepicker/controlcommandresult.hxx108
-rw-r--r--fpicker/source/win32/filepicker/customcontrol.cxx67
-rw-r--r--fpicker/source/win32/filepicker/customcontrol.hxx60
-rw-r--r--fpicker/source/win32/filepicker/customcontrolcontainer.cxx143
-rw-r--r--fpicker/source/win32/filepicker/customcontrolcontainer.hxx60
-rw-r--r--fpicker/source/win32/filepicker/customcontrolfactory.cxx86
-rw-r--r--fpicker/source/win32/filepicker/customcontrolfactory.hxx61
-rw-r--r--fpicker/source/win32/filepicker/dialogcustomcontrols.cxx195
-rw-r--r--fpicker/source/win32/filepicker/dialogcustomcontrols.hxx123
-rw-r--r--fpicker/source/win32/filepicker/dibpreview.cxx472
-rw-r--r--fpicker/source/win32/filepicker/dibpreview.hxx116
-rw-r--r--fpicker/source/win32/filepicker/eventnotification.hxx53
-rw-r--r--fpicker/source/win32/filepicker/filepickereventnotification.cxx84
-rw-r--r--fpicker/source/win32/filepicker/filepickereventnotification.hxx73
-rw-r--r--fpicker/source/win32/filepicker/filepickerstate.cxx717
-rw-r--r--fpicker/source/win32/filepicker/filepickerstate.hxx162
-rw-r--r--fpicker/source/win32/filepicker/fps.xml51
-rw-r--r--fpicker/source/win32/filepicker/getfilenamewrapper.cxx296
-rw-r--r--fpicker/source/win32/filepicker/getfilenamewrapper.hxx66
-rw-r--r--fpicker/source/win32/filepicker/helppopupwindow.cxx615
-rw-r--r--fpicker/source/win32/filepicker/helppopupwindow.hxx143
-rw-r--r--fpicker/source/win32/filepicker/makefile.mk84
-rw-r--r--fpicker/source/win32/filepicker/platform_vista.h87
-rw-r--r--fpicker/source/win32/filepicker/platform_xp.h55
-rw-r--r--fpicker/source/win32/filepicker/previewadapter.cxx713
-rw-r--r--fpicker/source/win32/filepicker/previewadapter.hxx107
-rw-r--r--fpicker/source/win32/filepicker/previewbase.cxx150
-rw-r--r--fpicker/source/win32/filepicker/previewbase.hxx88
-rw-r--r--fpicker/source/win32/filepicker/propmap.hxx101
-rw-r--r--fpicker/source/win32/filepicker/resource.h21
-rw-r--r--fpicker/source/win32/filepicker/shared.hxx38
-rw-r--r--fpicker/source/win32/filepicker/vistatypes.h68
-rw-r--r--fpicker/source/win32/filepicker/workbench/Test_fps.cxx387
-rw-r--r--fpicker/source/win32/filepicker/workbench/makefile.mk62
-rw-r--r--fpicker/source/win32/folderpicker/FOPServiceInfo.hxx54
-rw-r--r--fpicker/source/win32/folderpicker/FolderPicker.cxx219
-rw-r--r--fpicker/source/win32/folderpicker/FolderPicker.hxx129
-rw-r--r--fpicker/source/win32/folderpicker/FopEvtDisp.hxx45
-rw-r--r--fpicker/source/win32/folderpicker/Fopentry.cxx119
-rw-r--r--fpicker/source/win32/folderpicker/MtaFop.cxx839
-rw-r--r--fpicker/source/win32/folderpicker/MtaFop.hxx191
-rw-r--r--fpicker/source/win32/folderpicker/WinFOPImpl.cxx168
-rw-r--r--fpicker/source/win32/folderpicker/WinFOPImpl.hxx83
-rw-r--r--fpicker/source/win32/folderpicker/fop.xml40
-rw-r--r--fpicker/source/win32/folderpicker/makefile.mk51
-rw-r--r--fpicker/source/win32/folderpicker/workbench/Test_fops.cxx203
-rw-r--r--fpicker/source/win32/folderpicker/workbench/makefile.mk62
-rw-r--r--fpicker/source/win32/misc/AutoBuffer.cxx169
-rw-r--r--fpicker/source/win32/misc/AutoBuffer.hxx82
-rw-r--r--fpicker/source/win32/misc/WinImplHelper.cxx610
-rw-r--r--fpicker/source/win32/misc/WinImplHelper.hxx123
-rw-r--r--fpicker/source/win32/misc/makefile.mk57
-rw-r--r--fpicker/source/win32/misc/resourceprovider.cxx194
-rw-r--r--fpicker/source/win32/misc/resourceprovider.hxx60
-rw-r--r--fpicker/test/makefile.mk106
-rw-r--r--fpicker/test/svdem.cxx217
-rw-r--r--fpicker/util/exports.dxp2
-rw-r--r--fpicker/util/fop.component34
-rw-r--r--fpicker/util/fps.component34
-rw-r--r--fpicker/util/makefile.mk115
-rw-r--r--framework/dtd/accelerator.dtd44
-rw-r--r--framework/dtd/event.dtd45
-rw-r--r--framework/dtd/groupuinames.dtd35
-rw-r--r--framework/dtd/image.dtd67
-rw-r--r--framework/dtd/menubar.dtd46
-rw-r--r--framework/dtd/statusbar.dtd48
-rw-r--r--framework/dtd/toolbar.dtd67
-rw-r--r--framework/inc/acceleratorconst.h88
-rw-r--r--framework/inc/arguments.h173
-rw-r--r--framework/inc/classes/actiontriggercontainer.hxx77
-rw-r--r--framework/inc/classes/actiontriggerpropertyset.hxx133
-rw-r--r--framework/inc/classes/actiontriggerseparatorpropertyset.hxx115
-rw-r--r--framework/inc/classes/addonmenu.hxx140
-rw-r--r--framework/inc/classes/addonsoptions.hxx374
-rw-r--r--framework/inc/classes/bmkmenu.hxx81
-rw-r--r--framework/inc/classes/checkediterator.hxx345
-rw-r--r--framework/inc/classes/converter.hxx91
-rw-r--r--framework/inc/classes/droptargetlistener.hxx108
-rw-r--r--framework/inc/classes/filtercache.hxx447
-rw-r--r--framework/inc/classes/filtercachedata.hxx859
-rw-r--r--framework/inc/classes/framecontainer.hxx151
-rw-r--r--framework/inc/classes/framelistanalyzer.hxx213
-rw-r--r--framework/inc/classes/fwkresid.hxx46
-rw-r--r--framework/inc/classes/fwktabwindow.hxx135
-rwxr-xr-xframework/inc/classes/fwlresid.hxx46
-rw-r--r--framework/inc/classes/imagewrapper.hxx70
-rw-r--r--framework/inc/classes/menuextensionsupplier.hxx50
-rw-r--r--framework/inc/classes/menumanager.hxx168
-rw-r--r--framework/inc/classes/propertysethelper.hxx257
-rw-r--r--framework/inc/classes/protocolhandlercache.hxx199
-rw-r--r--framework/inc/classes/resource.hrc87
-rw-r--r--framework/inc/classes/rootactiontriggercontainer.hxx127
-rw-r--r--framework/inc/classes/servicemanager.hxx280
-rw-r--r--framework/inc/classes/sfxhelperfunctions.hxx73
-rw-r--r--framework/inc/classes/taskcreator.hxx102
-rw-r--r--framework/inc/classes/wildcard.hxx184
-rw-r--r--framework/inc/commands.h56
-rw-r--r--framework/inc/dispatch/basedispatcher.hxx391
-rw-r--r--framework/inc/dispatch/blankdispatcher.hxx129
-rw-r--r--framework/inc/dispatch/closedispatcher.hxx322
-rw-r--r--framework/inc/dispatch/createdispatcher.hxx127
-rw-r--r--framework/inc/dispatch/dispatchinformationprovider.hxx111
-rw-r--r--framework/inc/dispatch/dispatchprovider.hxx173
-rw-r--r--framework/inc/dispatch/helpagentdispatcher.hxx205
-rw-r--r--framework/inc/dispatch/interaction.hxx325
-rw-r--r--framework/inc/dispatch/interceptionhelper.hxx326
-rw-r--r--framework/inc/dispatch/mailtodispatcher.hxx145
-rw-r--r--framework/inc/dispatch/menudispatcher.hxx336
-rw-r--r--framework/inc/dispatch/oxt_handler.hxx215
-rw-r--r--framework/inc/dispatch/popupmenudispatcher.hxx199
-rw-r--r--framework/inc/dispatch/selfdispatcher.hxx112
-rw-r--r--framework/inc/dispatch/servicehandler.hxx149
-rw-r--r--framework/inc/dispatch/startmoduledispatcher.hxx197
-rw-r--r--framework/inc/dispatch/systemexec.hxx145
-rw-r--r--framework/inc/dispatchcommands.h52
-rw-r--r--framework/inc/framework.hrc85
-rw-r--r--framework/inc/general.h82
-rw-r--r--framework/inc/helper/acceleratorinfo.hxx49
-rw-r--r--framework/inc/helper/actiontriggerhelper.hxx78
-rw-r--r--framework/inc/helper/configimporter.hxx52
-rw-r--r--framework/inc/helper/dockingareadefaultacceptor.hxx111
-rw-r--r--framework/inc/helper/fixeddocumentproperties.hxx57
-rw-r--r--framework/inc/helper/imageproducer.hxx50
-rw-r--r--framework/inc/helper/mischelper.hxx124
-rw-r--r--framework/inc/helper/networkdomain.hxx45
-rw-r--r--framework/inc/helper/ocomponentaccess.hxx275
-rw-r--r--framework/inc/helper/ocomponentenumeration.hxx262
-rw-r--r--framework/inc/helper/oframes.hxx355
-rw-r--r--framework/inc/helper/otasksaccess.hxx254
-rw-r--r--framework/inc/helper/otasksenumeration.hxx272
-rw-r--r--framework/inc/helper/persistentwindowstate.hxx227
-rw-r--r--framework/inc/helper/propertysetcontainer.hxx97
-rw-r--r--framework/inc/helper/shareablemutex.hxx95
-rw-r--r--framework/inc/helper/statusindicator.hxx142
-rw-r--r--framework/inc/helper/statusindicatorfactory.hxx341
-rw-r--r--framework/inc/helper/tagwindowasmodified.hxx157
-rw-r--r--framework/inc/helper/timerhelper.hxx53
-rw-r--r--framework/inc/helper/titlebarupdate.hxx249
-rw-r--r--framework/inc/helper/titlehelper.hxx227
-rw-r--r--framework/inc/helper/uiconfigelementwrapperbase.hxx161
-rw-r--r--framework/inc/helper/uielementwrapperbase.hxx130
-rw-r--r--framework/inc/helper/vclstatusindicator.hxx133
-rw-r--r--framework/inc/helper/wakeupthread.hxx100
-rw-r--r--framework/inc/helpid.hrc39
-rw-r--r--framework/inc/interaction/preventduplicateinteraction.hxx271
-rw-r--r--framework/inc/interaction/quietinteraction.hxx164
-rw-r--r--framework/inc/jobs/configaccess.hxx117
-rw-r--r--framework/inc/jobs/helponstartup.hxx231
-rw-r--r--framework/inc/jobs/job.hxx247
-rw-r--r--framework/inc/jobs/jobconst.hxx73
-rw-r--r--framework/inc/jobs/jobdata.hxx285
-rw-r--r--framework/inc/jobs/jobdispatch.hxx158
-rw-r--r--framework/inc/jobs/jobexecutor.hxx129
-rw-r--r--framework/inc/jobs/jobresult.hxx147
-rw-r--r--framework/inc/jobs/joburl.hxx177
-rw-r--r--framework/inc/jobs/shelljob.hxx169
-rw-r--r--framework/inc/loadstate.h115
-rw-r--r--framework/inc/macros/debug.hxx137
-rw-r--r--framework/inc/macros/debug/assertion.hxx235
-rw-r--r--framework/inc/macros/debug/event.hxx132
-rw-r--r--framework/inc/macros/debug/filterdbg.hxx130
-rw-r--r--framework/inc/macros/debug/logmechanism.hxx102
-rw-r--r--framework/inc/macros/debug/memorymeasure.hxx223
-rw-r--r--framework/inc/macros/debug/mutex.hxx117
-rw-r--r--framework/inc/macros/debug/plugin.hxx202
-rw-r--r--framework/inc/macros/debug/registration.hxx79
-rw-r--r--framework/inc/macros/debug/targeting.hxx252
-rw-r--r--framework/inc/macros/debug/timemeasure.hxx140
-rw-r--r--framework/inc/macros/generic.hxx78
-rw-r--r--framework/inc/macros/registration.hxx134
-rw-r--r--framework/inc/macros/xinterface.hxx708
-rw-r--r--framework/inc/macros/xserviceinfo.hxx272
-rw-r--r--framework/inc/macros/xtypeprovider.hxx714
-rw-r--r--framework/inc/makefile.mk47
-rw-r--r--framework/inc/mediadescriptor.h77
-rw-r--r--framework/inc/pch/precompiled_framework.cxx29
-rw-r--r--framework/inc/pch/precompiled_framework.hxx495
-rw-r--r--framework/inc/properties.h354
-rw-r--r--framework/inc/protocols.h157
-rw-r--r--framework/inc/queries.h402
-rw-r--r--framework/inc/recording/dispatchrecorder.hxx88
-rw-r--r--framework/inc/recording/dispatchrecordersupplier.hxx137
-rw-r--r--framework/inc/services.h218
-rw-r--r--framework/inc/services/autorecovery.hxx1022
-rw-r--r--framework/inc/services/backingcomp.hxx166
-rw-r--r--framework/inc/services/contenthandlerfactory.hxx242
-rw-r--r--framework/inc/services/desktop.hxx513
-rw-r--r--framework/inc/services/detectorfactory.hxx461
-rw-r--r--framework/inc/services/dispatchhelper.hxx135
-rw-r--r--framework/inc/services/frame.hxx480
-rw-r--r--framework/inc/services/frameloaderfactory.hxx388
-rw-r--r--framework/inc/services/layoutmanager.hxx522
-rw-r--r--framework/inc/services/license.hxx123
-rw-r--r--framework/inc/services/licensedlg.hxx104
-rw-r--r--framework/inc/services/logindialog.hrc52
-rw-r--r--framework/inc/services/logindialog.hxx890
-rw-r--r--framework/inc/services/mediatypedetectionhelper.hxx151
-rw-r--r--framework/inc/services/modulemanager.hxx201
-rw-r--r--framework/inc/services/pathsettings.hxx295
-rw-r--r--framework/inc/services/pluginframe.hxx375
-rw-r--r--framework/inc/services/sessionlistener.hxx188
-rw-r--r--framework/inc/services/substitutepathvars.hxx306
-rw-r--r--framework/inc/services/tabwindowservice.hxx232
-rw-r--r--framework/inc/services/task.hxx610
-rw-r--r--framework/inc/services/taskcreatorsrv.hxx167
-rw-r--r--framework/inc/services/uriabbreviation.hxx66
-rw-r--r--framework/inc/services/urltransformer.hxx223
-rw-r--r--framework/inc/stdtypes.h213
-rw-r--r--framework/inc/tabwin/tabwindow.hxx200
-rw-r--r--framework/inc/tabwin/tabwinfactory.hxx83
-rw-r--r--framework/inc/targets.h69
-rw-r--r--framework/inc/threadhelp/fairrwlock.hxx286
-rw-r--r--framework/inc/threadhelp/gate.hxx248
-rw-r--r--framework/inc/threadhelp/igate.h73
-rw-r--r--framework/inc/threadhelp/imutex.h67
-rw-r--r--framework/inc/threadhelp/inoncopyable.h77
-rw-r--r--framework/inc/threadhelp/irwlock.h87
-rw-r--r--framework/inc/threadhelp/itransactionmanager.h149
-rw-r--r--framework/inc/threadhelp/lockhelper.hxx179
-rw-r--r--framework/inc/threadhelp/readguard.hxx204
-rw-r--r--framework/inc/threadhelp/resetableguard.hxx200
-rw-r--r--framework/inc/threadhelp/threadhelpbase.hxx96
-rw-r--r--framework/inc/threadhelp/transactionbase.hxx85
-rw-r--r--framework/inc/threadhelp/transactionguard.hxx188
-rw-r--r--framework/inc/threadhelp/transactionmanager.hxx118
-rw-r--r--framework/inc/threadhelp/writeguard.hxx264
-rw-r--r--framework/inc/uiconfiguration/globalsettings.hxx97
-rw-r--r--framework/inc/uiconfiguration/graphicnameaccess.hxx74
-rw-r--r--framework/inc/uiconfiguration/imagemanager.hxx128
-rw-r--r--framework/inc/uiconfiguration/imagetype.hxx57
-rw-r--r--framework/inc/uiconfiguration/moduleimagemanager.hxx123
-rw-r--r--framework/inc/uiconfiguration/moduleuicfgsupplier.hxx119
-rw-r--r--framework/inc/uiconfiguration/moduleuiconfigurationmanager.hxx226
-rw-r--r--framework/inc/uiconfiguration/uicategorydescription.hxx74
-rw-r--r--framework/inc/uiconfiguration/uiconfigurationmanager.hxx210
-rw-r--r--framework/inc/uiconfiguration/windowstateconfiguration.hxx131
-rw-r--r--framework/inc/uielement/addonstoolbarmanager.hxx100
-rw-r--r--framework/inc/uielement/addonstoolbarwrapper.hxx79
-rw-r--r--framework/inc/uielement/buttontoolbarcontroller.hxx111
-rw-r--r--framework/inc/uielement/comboboxtoolbarcontroller.hxx96
-rw-r--r--framework/inc/uielement/commandinfo.hxx68
-rw-r--r--framework/inc/uielement/complextoolbarcontroller.hxx110
-rw-r--r--framework/inc/uielement/constitemcontainer.hxx137
-rw-r--r--framework/inc/uielement/controlmenucontroller.hxx115
-rw-r--r--framework/inc/uielement/dropdownboxtoolbarcontroller.hxx92
-rw-r--r--framework/inc/uielement/edittoolbarcontroller.hxx92
-rw-r--r--framework/inc/uielement/fontmenucontroller.hxx93
-rw-r--r--framework/inc/uielement/fontsizemenucontroller.hxx96
-rw-r--r--framework/inc/uielement/footermenucontroller.hxx57
-rw-r--r--framework/inc/uielement/generictoolbarcontroller.hxx99
-rw-r--r--framework/inc/uielement/headermenucontroller.hxx91
-rw-r--r--framework/inc/uielement/imagebuttontoolbarcontroller.hxx70
-rw-r--r--framework/inc/uielement/itemcontainer.hxx117
-rw-r--r--framework/inc/uielement/langselectionmenucontroller.hxx115
-rw-r--r--framework/inc/uielement/langselectionstatusbarcontroller.hxx107
-rw-r--r--framework/inc/uielement/logoimagestatusbarcontroller.hxx88
-rw-r--r--framework/inc/uielement/logotextstatusbarcontroller.hxx88
-rw-r--r--framework/inc/uielement/macrosmenucontroller.hxx88
-rw-r--r--framework/inc/uielement/menubarmanager.hxx278
-rw-r--r--framework/inc/uielement/menubarmerger.hxx124
-rw-r--r--framework/inc/uielement/menubarwrapper.hxx109
-rw-r--r--framework/inc/uielement/newmenucontroller.hxx136
-rw-r--r--framework/inc/uielement/objectmenucontroller.hxx86
-rw-r--r--framework/inc/uielement/popupmenucontroller.hxx80
-rw-r--r--framework/inc/uielement/progressbarwrapper.hxx108
-rw-r--r--framework/inc/uielement/recentfilesmenucontroller.hxx121
-rw-r--r--framework/inc/uielement/rootitemcontainer.hxx156
-rw-r--r--framework/inc/uielement/simpletextstatusbarcontroller.hxx90
-rw-r--r--framework/inc/uielement/spinfieldtoolbarcontroller.hxx115
-rw-r--r--framework/inc/uielement/statusbar.hxx76
-rw-r--r--framework/inc/uielement/statusbarmanager.hxx143
-rw-r--r--framework/inc/uielement/statusbarwrapper.hxx77
-rw-r--r--framework/inc/uielement/statusindicatorinterfacewrapper.hxx82
-rw-r--r--framework/inc/uielement/togglebuttontoolbarcontroller.hxx86
-rw-r--r--framework/inc/uielement/toolbar.hxx73
-rw-r--r--framework/inc/uielement/toolbarmanager.hxx257
-rw-r--r--framework/inc/uielement/toolbarmerger.hxx161
-rw-r--r--framework/inc/uielement/toolbarsmenucontroller.hxx125
-rw-r--r--framework/inc/uielement/toolbarwrapper.hxx101
-rw-r--r--framework/inc/uielement/uicommanddescription.hxx117
-rw-r--r--framework/inc/uielement/uielementtypenames.hxx12
-rw-r--r--framework/inc/uifactory/addonstoolboxfactory.hxx88
-rwxr-xr-xframework/inc/uifactory/factoryconfiguration.hxx124
-rw-r--r--framework/inc/uifactory/menubarfactory.hxx91
-rw-r--r--framework/inc/uifactory/popupmenucontrollerfactory.hxx67
-rw-r--r--framework/inc/uifactory/statusbarcontrollerfactory.hxx62
-rw-r--r--framework/inc/uifactory/statusbarfactory.hxx67
-rw-r--r--framework/inc/uifactory/toolbarcontrollerfactory.hxx91
-rw-r--r--framework/inc/uifactory/toolboxfactory.hxx66
-rw-r--r--framework/inc/uifactory/uielementfactorymanager.hxx151
-rw-r--r--framework/inc/uifactory/windowcontentfactorymanager.hxx90
-rw-r--r--framework/inc/xml/acceleratorconfigurationreader.hxx220
-rw-r--r--framework/inc/xml/acceleratorconfigurationwriter.hxx119
-rw-r--r--framework/inc/xml/eventsconfiguration.hxx65
-rw-r--r--framework/inc/xml/eventsdocumenthandler.hxx187
-rw-r--r--framework/inc/xml/imagesconfiguration.hxx127
-rw-r--r--framework/inc/xml/imagesdocumenthandler.hxx201
-rw-r--r--framework/inc/xml/menuconfiguration.hxx125
-rw-r--r--framework/inc/xml/menudocumenthandler.hxx318
-rw-r--r--framework/inc/xml/saxnamespacefilter.hxx104
-rw-r--r--framework/inc/xml/statusbarconfiguration.hxx58
-rw-r--r--framework/inc/xml/statusbardocumenthandler.hxx184
-rw-r--r--framework/inc/xml/toolboxconfiguration.hxx38
-rw-r--r--framework/inc/xml/toolboxconfigurationdefines.hxx86
-rw-r--r--framework/inc/xml/toolboxdocumenthandler.hxx213
-rw-r--r--framework/inc/xml/xmlnamespaces.hxx65
-rw-r--r--framework/prj/build.lst57
-rw-r--r--framework/prj/d.lst55
-rw-r--r--framework/qa/complex/ModuleManager/CheckXModuleManager.java358
-rw-r--r--framework/qa/complex/ModuleManager/makefile.mk60
-rw-r--r--framework/qa/complex/XUserInputInterception/EventTest.java627
-rw-r--r--framework/qa/complex/XUserInputInterception/makefile.mk133
-rw-r--r--framework/qa/complex/accelerators/AcceleratorsConfigurationTest.java859
-rw-r--r--framework/qa/complex/accelerators/KeyMapping.java168
-rw-r--r--framework/qa/complex/accelerators/helper/makefile.mk46
-rw-r--r--framework/qa/complex/accelerators/makefile.mk67
-rwxr-xr-xframework/qa/complex/api_internal/CheckAPI.java249
-rwxr-xr-xframework/qa/complex/api_internal/CheckAPI.props4
-rwxr-xr-xframework/qa/complex/api_internal/api.lst325
-rwxr-xr-xframework/qa/complex/api_internal/makefile.mk63
-rwxr-xr-xframework/qa/complex/api_internal/tests.sce3
-rwxr-xr-xframework/qa/complex/api_internal/worksforme.sce39
-rwxr-xr-xframework/qa/complex/broken_document/LoadDocument.java136
-rw-r--r--framework/qa/complex/broken_document/TestDocument.java41
-rwxr-xr-xframework/qa/complex/broken_document/makefile.mk65
-rwxr-xr-xframework/qa/complex/broken_document/test_documents/dbf.dbf.emf1
-rw-r--r--framework/qa/complex/contextMenuInterceptor/CheckContextMenuInterceptor.java352
-rw-r--r--framework/qa/complex/contextMenuInterceptor/ContextMenuInterceptor.java114
-rw-r--r--framework/qa/complex/contextMenuInterceptor/makefile.mk63
-rw-r--r--framework/qa/complex/contextMenuInterceptor/space-metal.jpgbin0 -> 4313 bytes-rwxr-xr-xframework/qa/complex/desktop/DesktopTerminate.java195
-rwxr-xr-xframework/qa/complex/desktop/makefile.mk62
-rw-r--r--framework/qa/complex/dispatches/Interceptor.java345
-rw-r--r--framework/qa/complex/dispatches/checkdispatchapi.java498
-rw-r--r--framework/qa/complex/dispatches/helper/makefile.mk47
-rw-r--r--framework/qa/complex/dispatches/makefile.mk131
-rwxr-xr-xframework/qa/complex/disposing/GetServiceWhileDisposingOffice.java118
-rwxr-xr-xframework/qa/complex/disposing/makefile.mk61
-rw-r--r--framework/qa/complex/framework/autosave/AutoSave.java489
-rw-r--r--framework/qa/complex/framework/autosave/ConfigHelper.java115
-rw-r--r--framework/qa/complex/framework/autosave/Protocol.java999
-rw-r--r--framework/qa/complex/framework/autosave/makefile.mk127
-rw-r--r--framework/qa/complex/framework/recovery/CrashThread.java80
-rw-r--r--framework/qa/complex/framework/recovery/KlickButtonThread.java57
-rw-r--r--framework/qa/complex/framework/recovery/RecoveryTest.java1022
-rw-r--r--framework/qa/complex/framework/recovery/RecoveryTools.java366
-rw-r--r--framework/qa/complex/framework/recovery/TimeoutThread.java41
-rwxr-xr-xframework/qa/complex/framework/recovery/makefile.mk103
-rwxr-xr-xframework/qa/complex/imageManager/CheckImageManager.java223
-rwxr-xr-xframework/qa/complex/imageManager/_XComponent.java187
-rwxr-xr-xframework/qa/complex/imageManager/_XImageManager.java117
-rwxr-xr-xframework/qa/complex/imageManager/_XInitialization.java94
-rwxr-xr-xframework/qa/complex/imageManager/_XTypeProvider.java102
-rwxr-xr-xframework/qa/complex/imageManager/_XUIConfiguration.java82
-rwxr-xr-xframework/qa/complex/imageManager/_XUIConfigurationPersistence.java93
-rwxr-xr-xframework/qa/complex/imageManager/interfaces/makefile.mk63
-rwxr-xr-xframework/qa/complex/imageManager/makefile.mk123
-rw-r--r--framework/qa/complex/loadAllDocuments/CheckXComponentLoader.java750
-rw-r--r--framework/qa/complex/loadAllDocuments/CheckXComponentLoader.props3
-rw-r--r--framework/qa/complex/loadAllDocuments/InteractionHandler.java155
-rw-r--r--framework/qa/complex/loadAllDocuments/StatusIndicator.java237
-rw-r--r--framework/qa/complex/loadAllDocuments/StreamSimulator.java474
-rw-r--r--framework/qa/complex/loadAllDocuments/TestDocument.java41
-rw-r--r--framework/qa/complex/loadAllDocuments/helper/makefile.mk47
-rw-r--r--framework/qa/complex/loadAllDocuments/makefile.mk134
-rw-r--r--framework/qa/complex/loadAllDocuments/testdocuments/Calc_6.sxcbin0 -> 9547 bytes-rw-r--r--framework/qa/complex/loadAllDocuments/testdocuments/Writer6.sxwbin0 -> 5754 bytes-rw-r--r--framework/qa/complex/loadAllDocuments/testdocuments/draw1.sxdbin0 -> 11821 bytes-rw-r--r--framework/qa/complex/loadAllDocuments/testdocuments/imp1.sxibin0 -> 35135 bytes-rw-r--r--framework/qa/complex/loadAllDocuments/testdocuments/password_check.sxwbin0 -> 5128 bytes-rw-r--r--framework/qa/complex/loadAllDocuments/testdocuments/pic.gifbin0 -> 1433 bytes-rw-r--r--framework/qa/complex/loadAllDocuments/testdocuments/pic.jpgbin0 -> 2651 bytes-rwxr-xr-xframework/qa/complex/path_settings/PathSettingsTest.java1018
-rwxr-xr-xframework/qa/complex/path_settings/makefile.mk62
-rwxr-xr-xframework/qa/complex/path_substitution/PathSubstitutionTest.java321
-rwxr-xr-xframework/qa/complex/path_substitution/makefile.mk122
-rw-r--r--framework/qa/unoapi/Test.java51
-rwxr-xr-xframework/qa/unoapi/framework.sce35
-rwxr-xr-xframework/qa/unoapi/knownissues.xcl59
-rwxr-xr-xframework/qa/unoapi/makefile.mk48
-rw-r--r--framework/qa/unoapi/testdocuments/Calc_Link.sxcbin0 -> 5410 bytes-rw-r--r--framework/qa/unoapi/testdocuments/Writer_link.sxwbin0 -> 5188 bytes-rw-r--r--framework/qa/unoapi/testdocuments/XTypeDetection.sxwbin0 -> 4995 bytes-rwxr-xr-xframework/qa/unoapi/testdocuments/delete.cfgbin0 -> 2799 bytes-rw-r--r--framework/source/accelerators/acceleratorcache.cxx250
-rw-r--r--framework/source/accelerators/acceleratorconfiguration.cxx1717
-rw-r--r--framework/source/accelerators/acceleratorexecute.cxx382
-rw-r--r--framework/source/accelerators/acceleratorexecute.hxx255
-rw-r--r--framework/source/accelerators/documentacceleratorconfiguration.cxx240
-rw-r--r--framework/source/accelerators/globalacceleratorconfiguration.cxx127
-rw-r--r--framework/source/accelerators/keymapping.cxx229
-rw-r--r--framework/source/accelerators/makefile.mk52
-rw-r--r--framework/source/accelerators/moduleacceleratorconfiguration.cxx175
-rw-r--r--framework/source/accelerators/presethandler.cxx937
-rw-r--r--framework/source/accelerators/storageholder.cxx637
-rw-r--r--framework/source/application/framework.cxx286
-rw-r--r--framework/source/application/login.cxx298
-rw-r--r--framework/source/application/makefile.mk45
-rw-r--r--framework/source/classes/actiontriggercontainer.cxx203
-rw-r--r--framework/source/classes/actiontriggerpropertyset.cxx478
-rw-r--r--framework/source/classes/actiontriggerseparatorpropertyset.cxx349
-rw-r--r--framework/source/classes/addonmenu.cxx456
-rw-r--r--framework/source/classes/addonsoptions.cxx1858
-rw-r--r--framework/source/classes/bmkmenu.cxx254
-rw-r--r--framework/source/classes/converter.cxx316
-rw-r--r--framework/source/classes/droptargetlistener.cxx254
-rw-r--r--framework/source/classes/framecontainer.cxx418
-rw-r--r--framework/source/classes/framelistanalyzer.cxx302
-rw-r--r--framework/source/classes/fwkresid.cxx65
-rw-r--r--framework/source/classes/fwktabwindow.cxx412
-rwxr-xr-xframework/source/classes/fwlresid.cxx65
-rw-r--r--framework/source/classes/imagewrapper.cxx120
-rw-r--r--framework/source/classes/makefile.mk69
-rw-r--r--framework/source/classes/menuextensionsupplier.cxx64
-rw-r--r--framework/source/classes/menumanager.cxx1181
-rw-r--r--framework/source/classes/propertysethelper.cxx450
-rw-r--r--framework/source/classes/protocolhandlercache.cxx361
-rw-r--r--framework/source/classes/resource.src358
-rw-r--r--framework/source/classes/rootactiontriggercontainer.cxx379
-rw-r--r--framework/source/classes/sfxhelperfunctions.cxx181
-rw-r--r--framework/source/classes/taskcreator.cxx171
-rw-r--r--framework/source/constant/containerquery.cxx42
-rw-r--r--framework/source/constant/contenthandler.cxx42
-rw-r--r--framework/source/constant/frameloader.cxx42
-rw-r--r--framework/source/constant/makefile.mk45
-rw-r--r--framework/source/dispatch/closedispatcher.cxx653
-rw-r--r--framework/source/dispatch/dispatchinformationprovider.cxx190
-rw-r--r--framework/source/dispatch/dispatchprovider.cxx795
-rw-r--r--framework/source/dispatch/helpagentdispatcher.cxx444
-rw-r--r--framework/source/dispatch/interaction.cxx209
-rw-r--r--framework/source/dispatch/interceptionhelper.cxx342
-rw-r--r--framework/source/dispatch/loaddispatcher.cxx198
-rw-r--r--framework/source/dispatch/mailtodispatcher.cxx330
-rw-r--r--framework/source/dispatch/makefile.mk63
-rw-r--r--framework/source/dispatch/menudispatcher.cxx488
-rw-r--r--framework/source/dispatch/oxt_handler.cxx298
-rw-r--r--framework/source/dispatch/popupmenudispatcher.cxx421
-rw-r--r--framework/source/dispatch/servicehandler.cxx351
-rw-r--r--framework/source/dispatch/startmoduledispatcher.cxx241
-rw-r--r--framework/source/dispatch/systemexec.cxx234
-rwxr-xr-xframework/source/dispatch/windowcommanddispatch.cxx191
-rw-r--r--framework/source/helper/acceleratorinfo.cxx71
-rw-r--r--framework/source/helper/actiontriggerhelper.cxx408
-rw-r--r--framework/source/helper/configimporter.cxx93
-rw-r--r--framework/source/helper/dockingareadefaultacceptor.cxx187
-rw-r--r--framework/source/helper/imageproducer.cxx56
-rw-r--r--framework/source/helper/makefile.mk69
-rw-r--r--framework/source/helper/mischelper.cxx239
-rw-r--r--framework/source/helper/networkdomain.cxx295
-rw-r--r--framework/source/helper/ocomponentaccess.cxx262
-rw-r--r--framework/source/helper/ocomponentenumeration.cxx237
-rw-r--r--framework/source/helper/oframes.cxx524
-rw-r--r--framework/source/helper/persistentwindowstate.cxx352
-rw-r--r--framework/source/helper/propertysetcontainer.cxx196
-rw-r--r--framework/source/helper/shareablemutex.cxx81
-rw-r--r--framework/source/helper/statusindicator.cxx152
-rw-r--r--framework/source/helper/statusindicatorfactory.cxx654
-rw-r--r--framework/source/helper/tagwindowasmodified.cxx256
-rw-r--r--framework/source/helper/titlebarupdate.cxx413
-rw-r--r--framework/source/helper/titlehelper.cxx760
-rw-r--r--framework/source/helper/uiconfigelementwrapperbase.cxx571
-rw-r--r--framework/source/helper/uielementwrapperbase.cxx282
-rw-r--r--framework/source/helper/vclstatusindicator.cxx231
-rw-r--r--framework/source/helper/wakeupthread.cxx83
-rw-r--r--framework/source/inc/accelerators/acceleratorcache.hxx187
-rw-r--r--framework/source/inc/accelerators/acceleratorconfiguration.hxx476
-rw-r--r--framework/source/inc/accelerators/documentacceleratorconfiguration.hxx124
-rw-r--r--framework/source/inc/accelerators/globalacceleratorconfiguration.hxx109
-rw-r--r--framework/source/inc/accelerators/istoragelistener.hxx64
-rw-r--r--framework/source/inc/accelerators/keymapping.hxx162
-rw-r--r--framework/source/inc/accelerators/moduleacceleratorconfiguration.hxx115
-rw-r--r--framework/source/inc/accelerators/presethandler.hxx535
-rw-r--r--framework/source/inc/accelerators/storageholder.hxx261
-rw-r--r--framework/source/inc/constant/containerquery.hxx47
-rw-r--r--framework/source/inc/constant/contenthandler.hxx47
-rw-r--r--framework/source/inc/constant/frameloader.hxx47
-rw-r--r--framework/source/inc/dispatch/loaddispatcher.hxx161
-rw-r--r--framework/source/inc/dispatch/uieventloghelper.hxx82
-rwxr-xr-xframework/source/inc/dispatch/windowcommanddispatch.hxx174
-rw-r--r--framework/source/inc/loadenv/actionlockguard.hxx209
-rw-r--r--framework/source/inc/loadenv/loadenv.hxx704
-rw-r--r--framework/source/inc/loadenv/loadenvexception.hxx197
-rw-r--r--framework/source/inc/loadenv/targethelper.hxx124
-rw-r--r--framework/source/inc/pattern/configuration.hxx176
-rw-r--r--framework/source/inc/pattern/frame.hxx130
-rw-r--r--framework/source/inc/pattern/storages.hxx102
-rw-r--r--framework/source/inc/pattern/window.hxx155
-rw-r--r--framework/source/interaction/makefile.mk49
-rw-r--r--framework/source/interaction/preventduplicateinteraction.cxx294
-rw-r--r--framework/source/interaction/quietinteraction.cxx206
-rw-r--r--framework/source/jobs/configaccess.cxx242
-rw-r--r--framework/source/jobs/helponstartup.cxx423
-rw-r--r--framework/source/jobs/job.cxx944
-rw-r--r--framework/source/jobs/jobconst.cxx74
-rw-r--r--framework/source/jobs/jobdata.cxx714
-rw-r--r--framework/source/jobs/jobdispatch.cxx475
-rw-r--r--framework/source/jobs/jobexecutor.cxx364
-rw-r--r--framework/source/jobs/jobresult.cxx261
-rw-r--r--framework/source/jobs/joburl.cxx657
-rw-r--r--framework/source/jobs/makefile.mk53
-rw-r--r--framework/source/jobs/shelljob.cxx214
-rw-r--r--framework/source/layoutmanager/layoutmanager.cxx7563
-rw-r--r--framework/source/layoutmanager/makefile.mk47
-rw-r--r--framework/source/loadenv/loadenv.cxx1911
-rw-r--r--framework/source/loadenv/makefile.mk46
-rw-r--r--framework/source/loadenv/targethelper.cxx109
-rw-r--r--framework/source/recording/dispatchrecorder.cxx493
-rw-r--r--framework/source/recording/dispatchrecordersupplier.cxx221
-rw-r--r--framework/source/recording/makefile.mk47
-rw-r--r--framework/source/register/makefile.mk50
-rw-r--r--framework/source/register/register3rdcomponents.cxx66
-rw-r--r--framework/source/register/registerlogindialog.cxx64
-rw-r--r--framework/source/register/registerservices.cxx176
-rw-r--r--framework/source/register/registertemp.cxx104
-rw-r--r--framework/source/services/autorecovery.cxx3743
-rw-r--r--framework/source/services/backingcomp.cxx874
-rw-r--r--framework/source/services/backingwindow.cxx1147
-rw-r--r--framework/source/services/backingwindow.hxx184
-rw-r--r--framework/source/services/desktop.cxx2036
-rw-r--r--framework/source/services/dispatchhelper.cxx227
-rw-r--r--framework/source/services/frame.cxx3311
-rw-r--r--framework/source/services/fwk_services.src227
-rw-r--r--framework/source/services/license.cxx631
-rw-r--r--framework/source/services/makefile.mk64
-rw-r--r--framework/source/services/mediatypedetectionhelper.cxx111
-rw-r--r--framework/source/services/modulemanager.cxx425
-rw-r--r--framework/source/services/pathsettings.cxx1182
-rw-r--r--framework/source/services/sessionlistener.cxx368
-rw-r--r--framework/source/services/substitutepathvars.cxx1249
-rw-r--r--framework/source/services/tabwindowservice.cxx485
-rw-r--r--framework/source/services/taskcreatorsrv.cxx404
-rw-r--r--framework/source/services/uriabbreviation.cxx90
-rw-r--r--framework/source/services/urltransformer.cxx372
-rw-r--r--framework/source/tabwin/makefile.mk48
-rw-r--r--framework/source/tabwin/tabwindow.cxx976
-rw-r--r--framework/source/tabwin/tabwinfactory.cxx176
-rw-r--r--framework/source/threadhelp/lockhelper.cxx549
-rw-r--r--framework/source/threadhelp/makefile.mk45
-rw-r--r--framework/source/threadhelp/transactionmanager.cxx373
-rw-r--r--framework/source/uiconfiguration/globalsettings.cxx356
-rw-r--r--framework/source/uiconfiguration/graphicnameaccess.cxx112
-rw-r--r--framework/source/uiconfiguration/imagemanager.cxx254
-rwxr-xr-xframework/source/uiconfiguration/imagemanagerimpl.cxx1463
-rwxr-xr-xframework/source/uiconfiguration/imagemanagerimpl.hxx222
-rw-r--r--framework/source/uiconfiguration/makefile.mk54
-rw-r--r--framework/source/uiconfiguration/moduleimagemanager.cxx226
-rw-r--r--framework/source/uiconfiguration/moduleuicfgsupplier.cxx398
-rw-r--r--framework/source/uiconfiguration/moduleuiconfigurationmanager.cxx1622
-rw-r--r--framework/source/uiconfiguration/uicategorydescription.cxx476
-rw-r--r--framework/source/uiconfiguration/uiconfigurationmanager.cxx1355
-rwxr-xr-xframework/source/uiconfiguration/uiconfigurationmanagerimpl.cxx1710
-rwxr-xr-xframework/source/uiconfiguration/uiconfigurationmanagerimpl.hxx218
-rw-r--r--framework/source/uiconfiguration/windowstateconfiguration.cxx1490
-rw-r--r--framework/source/uielement/addonstoolbarmanager.cxx559
-rw-r--r--framework/source/uielement/addonstoolbarwrapper.cxx196
-rw-r--r--framework/source/uielement/buttontoolbarcontroller.cxx337
-rw-r--r--framework/source/uielement/comboboxtoolbarcontroller.cxx438
-rw-r--r--framework/source/uielement/complextoolbarcontroller.cxx390
-rw-r--r--framework/source/uielement/constitemcontainer.cxx479
-rw-r--r--framework/source/uielement/controlmenucontroller.cxx443
-rw-r--r--framework/source/uielement/dropdownboxtoolbarcontroller.cxx353
-rw-r--r--framework/source/uielement/edittoolbarcontroller.cxx268
-rw-r--r--framework/source/uielement/fontmenucontroller.cxx262
-rw-r--r--framework/source/uielement/fontsizemenucontroller.cxx363
-rw-r--r--framework/source/uielement/footermenucontroller.cxx97
-rw-r--r--framework/source/uielement/generictoolbarcontroller.cxx393
-rw-r--r--framework/source/uielement/headermenucontroller.cxx276
-rw-r--r--framework/source/uielement/imagebuttontoolbarcontroller.cxx235
-rw-r--r--framework/source/uielement/itemcontainer.cxx266
-rw-r--r--framework/source/uielement/langselectionmenucontroller.cxx378
-rw-r--r--framework/source/uielement/langselectionstatusbarcontroller.cxx440
-rw-r--r--framework/source/uielement/logoimagestatusbarcontroller.cxx177
-rw-r--r--framework/source/uielement/logotextstatusbarcontroller.cxx180
-rw-r--r--framework/source/uielement/macrosmenucontroller.cxx232
-rw-r--r--framework/source/uielement/makefile.mk87
-rw-r--r--framework/source/uielement/menubarmanager.cxx2148
-rw-r--r--framework/source/uielement/menubarmerger.cxx441
-rw-r--r--framework/source/uielement/menubarwrapper.cxx379
-rw-r--r--framework/source/uielement/newmenucontroller.cxx596
-rw-r--r--framework/source/uielement/objectmenucontroller.cxx166
-rw-r--r--framework/source/uielement/popupmenucontroller.cxx248
-rw-r--r--framework/source/uielement/progressbarwrapper.cxx365
-rw-r--r--framework/source/uielement/recentfilesmenucontroller.cxx480
-rw-r--r--framework/source/uielement/rootitemcontainer.cxx466
-rw-r--r--framework/source/uielement/simpletextstatusbarcontroller.cxx196
-rw-r--r--framework/source/uielement/spinfieldtoolbarcontroller.cxx577
-rw-r--r--framework/source/uielement/statusbar.cxx113
-rw-r--r--framework/source/uielement/statusbarmanager.cxx712
-rw-r--r--framework/source/uielement/statusbarwrapper.cxx205
-rw-r--r--framework/source/uielement/statusindicatorinterfacewrapper.cxx130
-rw-r--r--framework/source/uielement/togglebuttontoolbarcontroller.cxx322
-rw-r--r--framework/source/uielement/toolbar.cxx77
-rw-r--r--framework/source/uielement/toolbarmanager.cxx2356
-rw-r--r--framework/source/uielement/toolbarmerger.cxx716
-rw-r--r--framework/source/uielement/toolbarsmenucontroller.cxx918
-rw-r--r--framework/source/uielement/toolbarwrapper.cxx353
-rw-r--r--framework/source/uielement/uicommanddescription.cxx795
-rw-r--r--framework/source/uifactory/addonstoolboxfactory.cxx221
-rwxr-xr-xframework/source/uifactory/factoryconfiguration.cxx341
-rw-r--r--framework/source/uifactory/makefile.mk54
-rw-r--r--framework/source/uifactory/menubarfactory.cxx212
-rw-r--r--framework/source/uifactory/popupmenucontrollerfactory.cxx93
-rw-r--r--framework/source/uifactory/statusbarcontrollerfactory.cxx91
-rw-r--r--framework/source/uifactory/statusbarfactory.cxx109
-rw-r--r--framework/source/uifactory/toolbarcontrollerfactory.cxx262
-rw-r--r--framework/source/uifactory/toolboxfactory.cxx105
-rw-r--r--framework/source/uifactory/uielementfactorymanager.cxx547
-rw-r--r--framework/source/uifactory/windowcontentfactorymanager.cxx266
-rw-r--r--framework/source/unotypes/fwk.xml459
-rw-r--r--framework/source/unotypes/fwl.xml97
-rw-r--r--framework/source/unotypes/lgd.xml34
-rw-r--r--framework/source/xml/acceleratorconfigurationreader.cxx338
-rw-r--r--framework/source/xml/acceleratorconfigurationwriter.cxx156
-rw-r--r--framework/source/xml/eventsconfiguration.cxx165
-rw-r--r--framework/source/xml/eventsdocumenthandler.cxx552
-rw-r--r--framework/source/xml/imagesconfiguration.cxx238
-rw-r--r--framework/source/xml/imagesdocumenthandler.cxx851
-rw-r--r--framework/source/xml/makefile.mk58
-rw-r--r--framework/source/xml/menuconfiguration.cxx187
-rw-r--r--framework/source/xml/menudocumenthandler.cxx1022
-rw-r--r--framework/source/xml/saxnamespacefilter.cxx198
-rw-r--r--framework/source/xml/statusbarconfiguration.cxx166
-rw-r--r--framework/source/xml/statusbardocumenthandler.cxx698
-rw-r--r--framework/source/xml/toolboxconfiguration.cxx156
-rw-r--r--framework/source/xml/toolboxdocumenthandler.cxx901
-rw-r--r--framework/source/xml/xmlnamespaces.cxx191
-rw-r--r--framework/test/makefile.mk94
-rw-r--r--framework/test/test.cxx1346
-rw-r--r--framework/test/test_componentenumeration.bas78
-rw-r--r--framework/test/test_documentproperties.bas1083
-rw-r--r--framework/test/test_filterregistration.bas95
-rw-r--r--framework/test/test_statusindicatorfactory.bas69
-rw-r--r--framework/test/threadtest.cxx738
-rw-r--r--framework/test/threadtest/makefile.mk67
-rw-r--r--framework/test/threadtest/test.btm29
-rw-r--r--framework/test/threadtest/threadtest.cxx736
-rw-r--r--framework/test/typecfg/build.btm26
-rw-r--r--framework/test/typecfg/cfgview.cxx1512
-rw-r--r--framework/test/typecfg/makefile.mk73
-rw-r--r--framework/test/typecfg/typecfg.cxx249
-rw-r--r--framework/test/typecfg/xml2xcd.cxx2360
-rw-r--r--framework/uiconfig/startmodule/menubar/menubar.xml83
-rw-r--r--framework/uiconfig/startmodule/statusbar/statusbar.xml4
-rw-r--r--framework/uiconfig/startmodule/toolbar/standardbar.xml11
-rw-r--r--framework/util/fwk.component142
-rw-r--r--framework/util/fwl.component100
-rw-r--r--framework/util/fwm.component43
-rw-r--r--framework/util/guiapps/makefile.mk67
-rw-r--r--framework/util/hidother.src32
-rw-r--r--framework/util/lgd.xml34
-rw-r--r--framework/util/makefile.mk445
-rw-r--r--framework/util/makefile.pmk38
-rw-r--r--framework/util/target.pmk34
-rw-r--r--graphite/graphite-2.3.1.patch2396
-rwxr-xr-xgraphite/graphite-2.3.1.patch.mingw159
-rw-r--r--graphite/makefile.mk175
-rw-r--r--graphite/prj/build.lst3
-rw-r--r--graphite/prj/d.lst15
-rw-r--r--guw/guw.cc686
-rw-r--r--guw/makefile5
-rwxr-xr-xhsqldb/makefile.mk83
-rw-r--r--hsqldb/patches/i103528.patch11
-rw-r--r--hsqldb/patches/i104901.patch27
-rw-r--r--hsqldb/patches/i96823.patch94
-rw-r--r--hsqldb/patches/i97032.patch10
-rwxr-xr-xhsqldb/prj/build.lst2
-rwxr-xr-xhsqldb/prj/d.lst1
-rwxr-xr-xhsqldb/version.mk6
-rw-r--r--hunspell/hunspell-1.2.8-thesfix.patch28
-rw-r--r--hunspell/hunspell-mingw.patch12
-rw-r--r--hunspell/hunspell-solaris.patch12
-rw-r--r--hunspell/hunspell-stacksmash.patch28
-rw-r--r--hunspell/hunspell-wntconfig.patch4
-rw-r--r--hunspell/makefile.mk98
-rw-r--r--hunspell/prj/build.lst3
-rw-r--r--hunspell/prj/d.lst5
-rw-r--r--hwpfilter/inc/makefile.mk47
-rw-r--r--hwpfilter/inc/pch/precompiled_hwpfilter.cxx29
-rw-r--r--hwpfilter/inc/pch/precompiled_hwpfilter.hxx32
-rw-r--r--hwpfilter/prj/build.lst5
-rw-r--r--hwpfilter/prj/d.lst5
-rw-r--r--hwpfilter/source/attributes.cxx168
-rw-r--r--hwpfilter/source/attributes.hxx74
-rw-r--r--hwpfilter/source/cspline.cpp173
-rw-r--r--hwpfilter/source/cspline.h36
-rw-r--r--hwpfilter/source/datecode.h57
-rw-r--r--hwpfilter/source/drawdef.h262
-rw-r--r--hwpfilter/source/drawing.h811
-rw-r--r--hwpfilter/source/fontmap.cpp174
-rw-r--r--hwpfilter/source/formula.cpp686
-rw-r--r--hwpfilter/source/formula.h102
-rw-r--r--hwpfilter/source/grammar.cpp1475
-rw-r--r--hwpfilter/source/grammar.h65
-rw-r--r--hwpfilter/source/hbox.cpp714
-rw-r--r--hwpfilter/source/hbox.h1041
-rw-r--r--hwpfilter/source/hcode.cpp1538
-rw-r--r--hwpfilter/source/hcode.h84
-rw-r--r--hwpfilter/source/hfont.cpp107
-rw-r--r--hwpfilter/source/hfont.h77
-rw-r--r--hwpfilter/source/hgzip.cpp337
-rw-r--r--hwpfilter/source/hgzip.h114
-rw-r--r--hwpfilter/source/himgutil.cpp169
-rw-r--r--hwpfilter/source/himgutil.h76
-rw-r--r--hwpfilter/source/hinfo.cpp221
-rw-r--r--hwpfilter/source/hinfo.h264
-rw-r--r--hwpfilter/source/hiodev.cpp365
-rw-r--r--hwpfilter/source/hiodev.h171
-rw-r--r--hwpfilter/source/hpara.cpp320
-rw-r--r--hwpfilter/source/hpara.h182
-rw-r--r--hwpfilter/source/hstream.cpp80
-rw-r--r--hwpfilter/source/hstream.h66
-rw-r--r--hwpfilter/source/hstyle.cpp153
-rw-r--r--hwpfilter/source/hstyle.h61
-rw-r--r--hwpfilter/source/htags.cpp168
-rw-r--r--hwpfilter/source/htags.h89
-rw-r--r--hwpfilter/source/hutil.cpp101
-rw-r--r--hwpfilter/source/hutil.h47
-rw-r--r--hwpfilter/source/hwp.component34
-rw-r--r--hwpfilter/source/hwpeq.cpp765
-rw-r--r--hwpfilter/source/hwpeq.h44
-rw-r--r--hwpfilter/source/hwpfile.cpp680
-rw-r--r--hwpfilter/source/hwpfile.h312
-rw-r--r--hwpfilter/source/hwplib.h244
-rw-r--r--hwpfilter/source/hwpread.cpp813
-rw-r--r--hwpfilter/source/hwpreader.cxx4949
-rw-r--r--hwpfilter/source/hwpreader.hxx377
-rw-r--r--hwpfilter/source/ksc5601.h760
-rw-r--r--hwpfilter/source/lexer.cpp2416
-rw-r--r--hwpfilter/source/list.hxx283
-rw-r--r--hwpfilter/source/makefile.mk103
-rw-r--r--hwpfilter/source/mapping.h398
-rw-r--r--hwpfilter/source/mzstring.cpp314
-rw-r--r--hwpfilter/source/mzstring.h187
-rw-r--r--hwpfilter/source/nodes.h107
-rw-r--r--hwpfilter/source/precompile.h44
-rw-r--r--hwpfilter/source/solver.cpp183
-rw-r--r--hwpfilter/source/solver.h50
-rw-r--r--hyphen/hyphen-2.4.patch169
-rw-r--r--hyphen/makefile.mk107
-rw-r--r--hyphen/prj/build.lst3
-rw-r--r--hyphen/prj/d.lst5
-rw-r--r--i18npool/inc/breakiteratorImpl.hxx152
-rw-r--r--i18npool/inc/breakiterator_cjk.hxx78
-rw-r--r--i18npool/inc/breakiterator_ctl.hxx64
-rw-r--r--i18npool/inc/breakiterator_th.hxx48
-rw-r--r--i18npool/inc/breakiterator_unicode.hxx102
-rw-r--r--i18npool/inc/bullet.h331
-rw-r--r--i18npool/inc/calendarImpl.hxx106
-rw-r--r--i18npool/inc/calendar_gregorian.hxx174
-rw-r--r--i18npool/inc/calendar_hijri.hxx84
-rw-r--r--i18npool/inc/calendar_jewish.hxx54
-rw-r--r--i18npool/inc/cclass_cjk.hxx95
-rw-r--r--i18npool/inc/cclass_unicode.hxx188
-rw-r--r--i18npool/inc/chaptercollator.hxx62
-rw-r--r--i18npool/inc/characterclassificationImpl.hxx118
-rw-r--r--i18npool/inc/chartonum.hxx61
-rw-r--r--i18npool/inc/collatorImpl.hxx118
-rw-r--r--i18npool/inc/collator_unicode.hxx85
-rw-r--r--i18npool/inc/defaultnumberingprovider.hxx106
-rw-r--r--i18npool/inc/i18npool/i18npooldllapi.h41
-rw-r--r--i18npool/inc/i18npool/lang.h520
-rw-r--r--i18npool/inc/i18npool/mslangid.hxx314
-rw-r--r--i18npool/inc/i18npool/paper.hxx147
-rw-r--r--i18npool/inc/indexentrysupplier.hxx110
-rw-r--r--i18npool/inc/indexentrysupplier_asian.hxx65
-rw-r--r--i18npool/inc/indexentrysupplier_common.hxx110
-rw-r--r--i18npool/inc/indexentrysupplier_default.hxx114
-rw-r--r--i18npool/inc/indexentrysupplier_ja_phonetic.hxx75
-rw-r--r--i18npool/inc/inputsequencechecker.hxx90
-rw-r--r--i18npool/inc/inputsequencechecker_hi.hxx55
-rw-r--r--i18npool/inc/inputsequencechecker_th.hxx52
-rw-r--r--i18npool/inc/localedata.hxx139
-rw-r--r--i18npool/inc/makefile.mk48
-rw-r--r--i18npool/inc/nativenumbersupplier.hxx91
-rw-r--r--i18npool/inc/numberformatcode.hxx81
-rw-r--r--i18npool/inc/numtochar.hxx62
-rw-r--r--i18npool/inc/numtotext_cjk.hxx77
-rw-r--r--i18npool/inc/ordinalsuffix.hxx57
-rw-r--r--i18npool/inc/pch/precompiled_i18npool.cxx29
-rw-r--r--i18npool/inc/pch/precompiled_i18npool.hxx32
-rw-r--r--i18npool/inc/scripttypedetector.hxx66
-rw-r--r--i18npool/inc/servicename.hxx86
-rw-r--r--i18npool/inc/textToPronounce_zh.hxx81
-rw-r--r--i18npool/inc/textconversion.hxx211
-rw-r--r--i18npool/inc/textconversionImpl.hxx103
-rw-r--r--i18npool/inc/texttonum.hxx59
-rw-r--r--i18npool/inc/transliterationImpl.hxx155
-rw-r--r--i18npool/inc/transliteration_Ignore.hxx188
-rw-r--r--i18npool/inc/transliteration_Numeric.hxx73
-rw-r--r--i18npool/inc/transliteration_OneToOne.hxx127
-rw-r--r--i18npool/inc/transliteration_body.hxx120
-rw-r--r--i18npool/inc/transliteration_caseignore.hxx76
-rw-r--r--i18npool/inc/transliteration_commonclass.hxx122
-rw-r--r--i18npool/inc/warnings_guard_unicode_brkiter.h48
-rw-r--r--i18npool/inc/warnings_guard_unicode_calendar.h48
-rw-r--r--i18npool/inc/warnings_guard_unicode_tblcoll.h48
-rw-r--r--i18npool/inc/wtt.h74
-rw-r--r--i18npool/inc/xdictionary.hxx96
-rw-r--r--i18npool/prj/build.lst26
-rw-r--r--i18npool/prj/d.lst50
-rw-r--r--i18npool/source/breakiterator/breakiteratorImpl.cxx605
-rw-r--r--i18npool/source/breakiterator/breakiterator_cjk.cxx186
-rw-r--r--i18npool/source/breakiterator/breakiterator_ctl.cxx145
-rw-r--r--i18npool/source/breakiterator/breakiterator_th.cxx157
-rw-r--r--i18npool/source/breakiterator/breakiterator_unicode.cxx445
-rw-r--r--i18npool/source/breakiterator/data/char_in.txt108
-rw-r--r--i18npool/source/breakiterator/data/count_word.txt125
-rw-r--r--i18npool/source/breakiterator/data/count_word_fi.txt134
-rw-r--r--i18npool/source/breakiterator/data/dict.map12
-rw-r--r--i18npool/source/breakiterator/data/dict_word.txt148
-rw-r--r--i18npool/source/breakiterator/data/dict_word_ca.txt139
-rw-r--r--i18npool/source/breakiterator/data/dict_word_fi.txt147
-rw-r--r--i18npool/source/breakiterator/data/dict_word_he.txt139
-rw-r--r--i18npool/source/breakiterator/data/dict_word_hu.txt162
-rw-r--r--i18npool/source/breakiterator/data/dict_word_nodash.txt147
-rw-r--r--i18npool/source/breakiterator/data/dict_word_prepostdash.txt157
-rw-r--r--i18npool/source/breakiterator/data/edit_word.txt142
-rw-r--r--i18npool/source/breakiterator/data/edit_word_he.txt142
-rw-r--r--i18npool/source/breakiterator/data/edit_word_hu.txt159
-rw-r--r--i18npool/source/breakiterator/data/ja.dic119817
-rw-r--r--i18npool/source/breakiterator/data/line.txt634
-rw-r--r--i18npool/source/breakiterator/data/makefile.mk84
-rw-r--r--i18npool/source/breakiterator/data/sent.txt128
-rw-r--r--i18npool/source/breakiterator/data/zh.dic251404
-rw-r--r--i18npool/source/breakiterator/gendict.cxx205
-rw-r--r--i18npool/source/breakiterator/makefile.mk100
-rw-r--r--i18npool/source/breakiterator/xdictionary.cxx402
-rw-r--r--i18npool/source/calendar/calendarImpl.cxx324
-rw-r--r--i18npool/source/calendar/calendar_gregorian.cxx1098
-rw-r--r--i18npool/source/calendar/calendar_hijri.cxx341
-rw-r--r--i18npool/source/calendar/calendar_jewish.cxx306
-rw-r--r--i18npool/source/calendar/makefile.mk53
-rw-r--r--i18npool/source/characterclassification/cclass_unicode.cxx288
-rw-r--r--i18npool/source/characterclassification/cclass_unicode_parser.cxx1067
-rw-r--r--i18npool/source/characterclassification/characterclassificationImpl.cxx236
-rw-r--r--i18npool/source/characterclassification/makefile.mk52
-rw-r--r--i18npool/source/characterclassification/scripttypedetector.cxx182
-rw-r--r--i18npool/source/collator/chaptercollator.cxx111
-rw-r--r--i18npool/source/collator/collatorImpl.cxx260
-rw-r--r--i18npool/source/collator/collator_unicode.cxx176
-rw-r--r--i18npool/source/collator/data/collator_data.map25
-rw-r--r--i18npool/source/collator/data/dz_charset.txt74
-rw-r--r--i18npool/source/collator/data/hu_charset.txt14
-rw-r--r--i18npool/source/collator/data/ja_charset.txt1446
-rw-r--r--i18npool/source/collator/data/ja_phonetic_alphanumeric_first.txt1466
-rw-r--r--i18npool/source/collator/data/ja_phonetic_alphanumeric_last.txt1466
-rw-r--r--i18npool/source/collator/data/ko_charset.txt733
-rw-r--r--i18npool/source/collator/data/ku_alphanumeric.txt9
-rw-r--r--i18npool/source/collator/data/ln_charset.txt6
-rw-r--r--i18npool/source/collator/data/makefile.mk64
-rw-r--r--i18npool/source/collator/data/my_dictionary.txt373
-rw-r--r--i18npool/source/collator/data/ne_charset.txt5
-rw-r--r--i18npool/source/collator/data/zh_TW_charset.txt1337
-rw-r--r--i18npool/source/collator/data/zh_TW_radical.txt2787
-rw-r--r--i18npool/source/collator/data/zh_TW_stroke.txt2787
-rw-r--r--i18npool/source/collator/data/zh_charset.txt2099
-rw-r--r--i18npool/source/collator/data/zh_pinyin.txt2099
-rw-r--r--i18npool/source/collator/data/zh_radical.txt2787
-rw-r--r--i18npool/source/collator/data/zh_stroke.txt2101
-rw-r--r--i18npool/source/collator/data/zh_zhuyin.txt1702
-rw-r--r--i18npool/source/collator/gencoll_rule.cxx140
-rw-r--r--i18npool/source/collator/makefile.mk73
-rw-r--r--i18npool/source/defaultnumberingprovider/defaultnumberingprovider.cxx899
-rw-r--r--i18npool/source/defaultnumberingprovider/makefile.mk49
-rw-r--r--i18npool/source/indexentry/data/index_data.map17
-rw-r--r--i18npool/source/indexentry/data/indexdata_alphanumeric.h47
-rw-r--r--i18npool/source/indexentry/data/indexdata_ja_phonetic.h120
-rw-r--r--i18npool/source/indexentry/data/indexdata_ko_dict.txt16167
-rw-r--r--i18npool/source/indexentry/data/indexdata_zh_TW_radical.txt27786
-rw-r--r--i18npool/source/indexentry/data/indexdata_zh_TW_stroke.txt27786
-rw-r--r--i18npool/source/indexentry/data/indexdata_zh_pinyin.txt20903
-rw-r--r--i18npool/source/indexentry/data/indexdata_zh_radical.txt27786
-rw-r--r--i18npool/source/indexentry/data/indexdata_zh_stroke.txt20923
-rw-r--r--i18npool/source/indexentry/data/indexdata_zh_zhuyin.txt16971
-rw-r--r--i18npool/source/indexentry/data/ko_phonetic.txt16153
-rw-r--r--i18npool/source/indexentry/data/makefile.mk67
-rw-r--r--i18npool/source/indexentry/data/zh_pinyin.txt20378
-rw-r--r--i18npool/source/indexentry/data/zh_zhuyin.txt16936
-rw-r--r--i18npool/source/indexentry/genindex_data.cxx166
-rw-r--r--i18npool/source/indexentry/indexentrysupplier.cxx209
-rw-r--r--i18npool/source/indexentry/indexentrysupplier_asian.cxx154
-rw-r--r--i18npool/source/indexentry/indexentrysupplier_common.cxx150
-rw-r--r--i18npool/source/indexentry/indexentrysupplier_default.cxx290
-rw-r--r--i18npool/source/indexentry/indexentrysupplier_ja_phonetic.cxx106
-rw-r--r--i18npool/source/indexentry/makefile.mk66
-rw-r--r--i18npool/source/inputchecker/inputsequencechecker.cxx166
-rw-r--r--i18npool/source/inputchecker/inputsequencechecker_hi.cxx148
-rw-r--r--i18npool/source/inputchecker/inputsequencechecker_th.cxx154
-rw-r--r--i18npool/source/inputchecker/makefile.mk51
-rw-r--r--i18npool/source/isolang/insys.cxx43
-rw-r--r--i18npool/source/isolang/inunx.cxx150
-rw-r--r--i18npool/source/isolang/inwnt.cxx107
-rw-r--r--i18npool/source/isolang/isolang.cxx1105
-rwxr-xr-xi18npool/source/isolang/langid.pl424
-rw-r--r--i18npool/source/isolang/lcid.awk171
-rw-r--r--i18npool/source/isolang/makefile.mk69
-rw-r--r--i18npool/source/isolang/mslangid.cxx467
-rw-r--r--i18npool/source/localedata/LocaleNode.cxx1800
-rw-r--r--i18npool/source/localedata/LocaleNode.hxx259
-rw-r--r--i18npool/source/localedata/data/af_NA.xml25
-rw-r--r--i18npool/source/localedata/data/af_ZA.xml186
-rw-r--r--i18npool/source/localedata/data/ak_GH.xml374
-rw-r--r--i18npool/source/localedata/data/am_ET.xml193
-rw-r--r--i18npool/source/localedata/data/ar_DZ.xml437
-rw-r--r--i18npool/source/localedata/data/ar_EG.xml523
-rw-r--r--i18npool/source/localedata/data/ar_LB.xml290
-rw-r--r--i18npool/source/localedata/data/ar_OM.xml357
-rw-r--r--i18npool/source/localedata/data/ar_SA.xml290
-rw-r--r--i18npool/source/localedata/data/ar_TN.xml290
-rw-r--r--i18npool/source/localedata/data/ast_ES.xml359
-rw-r--r--i18npool/source/localedata/data/az_AZ.xml339
-rw-r--r--i18npool/source/localedata/data/be_BY.xml334
-rw-r--r--i18npool/source/localedata/data/bg_BG.xml409
-rw-r--r--i18npool/source/localedata/data/bn_BD.xml178
-rw-r--r--i18npool/source/localedata/data/bn_IN.xml352
-rw-r--r--i18npool/source/localedata/data/br_FR.xml347
-rw-r--r--i18npool/source/localedata/data/bs_BA.xml460
-rw-r--r--i18npool/source/localedata/data/ca_ES.xml343
-rw-r--r--i18npool/source/localedata/data/cs_CZ.xml380
-rw-r--r--i18npool/source/localedata/data/currency-check.awk318
-rw-r--r--i18npool/source/localedata/data/cv_RU.xml341
-rw-r--r--i18npool/source/localedata/data/cy_GB.xml143
-rw-r--r--i18npool/source/localedata/data/da_DK.xml336
-rw-r--r--i18npool/source/localedata/data/de_AT.xml321
-rw-r--r--i18npool/source/localedata/data/de_CH.xml199
-rw-r--r--i18npool/source/localedata/data/de_DE.xml355
-rw-r--r--i18npool/source/localedata/data/de_LI.xml196
-rw-r--r--i18npool/source/localedata/data/de_LU.xml321
-rw-r--r--i18npool/source/localedata/data/dz_BT.xml509
-rw-r--r--i18npool/source/localedata/data/ee_GH.xml368
-rw-r--r--i18npool/source/localedata/data/el_GR.xml341
-rw-r--r--i18npool/source/localedata/data/en_AU.xml314
-rw-r--r--i18npool/source/localedata/data/en_BZ.xml65
-rw-r--r--i18npool/source/localedata/data/en_CA.xml206
-rw-r--r--i18npool/source/localedata/data/en_GB.xml240
-rw-r--r--i18npool/source/localedata/data/en_GH.xml361
-rw-r--r--i18npool/source/localedata/data/en_IE.xml79
-rw-r--r--i18npool/source/localedata/data/en_IN.xml43
-rw-r--r--i18npool/source/localedata/data/en_JM.xml314
-rw-r--r--i18npool/source/localedata/data/en_NA.xml322
-rw-r--r--i18npool/source/localedata/data/en_NZ.xml173
-rw-r--r--i18npool/source/localedata/data/en_PH.xml33
-rw-r--r--i18npool/source/localedata/data/en_TT.xml173
-rw-r--r--i18npool/source/localedata/data/en_US.xml569
-rw-r--r--i18npool/source/localedata/data/en_ZA.xml314
-rw-r--r--i18npool/source/localedata/data/en_ZW.xml173
-rw-r--r--i18npool/source/localedata/data/eo.xml349
-rw-r--r--i18npool/source/localedata/data/es_AR.xml209
-rw-r--r--i18npool/source/localedata/data/es_BO.xml220
-rw-r--r--i18npool/source/localedata/data/es_CL.xml206
-rw-r--r--i18npool/source/localedata/data/es_CO.xml199
-rw-r--r--i18npool/source/localedata/data/es_CR.xml218
-rw-r--r--i18npool/source/localedata/data/es_DO.xml243
-rw-r--r--i18npool/source/localedata/data/es_EC.xml206
-rw-r--r--i18npool/source/localedata/data/es_ES.xml349
-rw-r--r--i18npool/source/localedata/data/es_GT.xml243
-rw-r--r--i18npool/source/localedata/data/es_HN.xml36
-rw-r--r--i18npool/source/localedata/data/es_MX.xml36
-rw-r--r--i18npool/source/localedata/data/es_NI.xml58
-rw-r--r--i18npool/source/localedata/data/es_PA.xml43
-rw-r--r--i18npool/source/localedata/data/es_PE.xml243
-rw-r--r--i18npool/source/localedata/data/es_PR.xml36
-rw-r--r--i18npool/source/localedata/data/es_PY.xml36
-rw-r--r--i18npool/source/localedata/data/es_SV.xml36
-rw-r--r--i18npool/source/localedata/data/es_UY.xml58
-rw-r--r--i18npool/source/localedata/data/es_VE.xml43
-rw-r--r--i18npool/source/localedata/data/et_EE.xml341
-rw-r--r--i18npool/source/localedata/data/eu.xml356
-rw-r--r--i18npool/source/localedata/data/fa_IR.xml640
-rw-r--r--i18npool/source/localedata/data/fi_FI.xml342
-rw-r--r--i18npool/source/localedata/data/fo_FO.xml379
-rw-r--r--i18npool/source/localedata/data/fr_BE.xml206
-rw-r--r--i18npool/source/localedata/data/fr_CA.xml209
-rw-r--r--i18npool/source/localedata/data/fr_CH.xml206
-rw-r--r--i18npool/source/localedata/data/fr_FR.xml347
-rw-r--r--i18npool/source/localedata/data/fr_LU.xml203
-rw-r--r--i18npool/source/localedata/data/fr_MC.xml26
-rw-r--r--i18npool/source/localedata/data/fur_IT.xml361
-rw-r--r--i18npool/source/localedata/data/fy_NL.xml360
-rw-r--r--i18npool/source/localedata/data/ga_IE.xml186
-rw-r--r--i18npool/source/localedata/data/gl_ES.xml343
-rw-r--r--i18npool/source/localedata/data/gsc_FR.xml361
-rw-r--r--i18npool/source/localedata/data/gu_IN.xml173
-rw-r--r--i18npool/source/localedata/data/gug_PY.xml361
-rw-r--r--i18npool/source/localedata/data/ha_GH.xml371
-rw-r--r--i18npool/source/localedata/data/he_IL.xml472
-rw-r--r--i18npool/source/localedata/data/hi_IN.xml394
-rw-r--r--i18npool/source/localedata/data/hil_PH.xml362
-rw-r--r--i18npool/source/localedata/data/hr_HR.xml452
-rw-r--r--i18npool/source/localedata/data/hsb_DE.xml350
-rw-r--r--i18npool/source/localedata/data/hu_HU.xml342
-rw-r--r--i18npool/source/localedata/data/hy_AM.xml348
-rw-r--r--i18npool/source/localedata/data/ia.xml384
-rw-r--r--i18npool/source/localedata/data/id_ID.xml329
-rw-r--r--i18npool/source/localedata/data/is_IS.xml408
-rw-r--r--i18npool/source/localedata/data/it_CH.xml196
-rw-r--r--i18npool/source/localedata/data/it_IT.xml349
-rw-r--r--i18npool/source/localedata/data/ja_JP.xml591
-rw-r--r--i18npool/source/localedata/data/ka_GE.xml348
-rw-r--r--i18npool/source/localedata/data/kk_KZ.xml360
-rw-r--r--i18npool/source/localedata/data/kl_GL.xml335
-rw-r--r--i18npool/source/localedata/data/km_KH.xml440
-rw-r--r--i18npool/source/localedata/data/kn_IN.xml173
-rw-r--r--i18npool/source/localedata/data/ko_KR.xml671
-rw-r--r--i18npool/source/localedata/data/ku_TR.xml424
-rw-r--r--i18npool/source/localedata/data/ky_KG.xml334
-rw-r--r--i18npool/source/localedata/data/la_VA.xml349
-rw-r--r--i18npool/source/localedata/data/lb_LU.xml348
-rw-r--r--i18npool/source/localedata/data/lg_UG.xml361
-rw-r--r--i18npool/source/localedata/data/linkermapfile-check.awk105
-rw-r--r--i18npool/source/localedata/data/list-locales.awk75
-rw-r--r--i18npool/source/localedata/data/ln_CD.xml365
-rw-r--r--i18npool/source/localedata/data/lo_LA.xml520
-rw-r--r--i18npool/source/localedata/data/locale.dtd550
-rw-r--r--i18npool/source/localedata/data/localedata_en.map246
-rw-r--r--i18npool/source/localedata/data/localedata_es.map348
-rw-r--r--i18npool/source/localedata/data/localedata_euro.map1197
-rw-r--r--i18npool/source/localedata/data/localedata_others.map1333
-rw-r--r--i18npool/source/localedata/data/lt_LT.xml440
-rw-r--r--i18npool/source/localedata/data/ltg_LV.xml350
-rw-r--r--i18npool/source/localedata/data/lv_LV.xml417
-rw-r--r--i18npool/source/localedata/data/mai_IN.xml357
-rwxr-xr-xi18npool/source/localedata/data/makefile.mk355
-rw-r--r--i18npool/source/localedata/data/mk_MK.xml416
-rw-r--r--i18npool/source/localedata/data/ml_IN.xml350
-rw-r--r--i18npool/source/localedata/data/mn_MN.xml378
-rwxr-xr-xi18npool/source/localedata/data/mr_IN.xml25
-rw-r--r--i18npool/source/localedata/data/ms_MY.xml188
-rw-r--r--i18npool/source/localedata/data/mt_MT.xml362
-rw-r--r--i18npool/source/localedata/data/my_MM.xml489
-rw-r--r--i18npool/source/localedata/data/nb_NO.xml25
-rw-r--r--i18npool/source/localedata/data/ne_NP.xml416
-rw-r--r--i18npool/source/localedata/data/nl_BE.xml210
-rw-r--r--i18npool/source/localedata/data/nl_NL.xml387
-rw-r--r--i18npool/source/localedata/data/nn_NO.xml71
-rw-r--r--i18npool/source/localedata/data/no_NO.xml388
-rw-r--r--i18npool/source/localedata/data/nr_ZA.xml158
-rw-r--r--i18npool/source/localedata/data/nso_ZA.xml149
-rw-r--r--i18npool/source/localedata/data/oc_FR.xml360
-rw-r--r--i18npool/source/localedata/data/om_ET.xml358
-rw-r--r--i18npool/source/localedata/data/or_IN.xml366
-rw-r--r--i18npool/source/localedata/data/pa_IN.xml195
-rw-r--r--i18npool/source/localedata/data/pl_PL.xml346
-rw-r--r--i18npool/source/localedata/data/plt_MG.xml358
-rw-r--r--i18npool/source/localedata/data/pt_BR.xml240
-rw-r--r--i18npool/source/localedata/data/pt_PT.xml380
-rw-r--r--i18npool/source/localedata/data/ro_RO.xml391
-rw-r--r--i18npool/source/localedata/data/ru_RU.xml341
-rw-r--r--i18npool/source/localedata/data/rue_SK.xml359
-rw-r--r--i18npool/source/localedata/data/rw_RW.xml384
-rw-r--r--i18npool/source/localedata/data/sc_IT.xml358
-rw-r--r--i18npool/source/localedata/data/sg_CF.xml361
-rw-r--r--i18npool/source/localedata/data/sh_ME.xml41
-rw-r--r--i18npool/source/localedata/data/sh_RS.xml239
-rw-r--r--i18npool/source/localedata/data/sh_YU.xml41
-rw-r--r--i18npool/source/localedata/data/shs_CA.xml417
-rw-r--r--i18npool/source/localedata/data/sk_SK.xml463
-rw-r--r--i18npool/source/localedata/data/sl_SI.xml425
-rw-r--r--i18npool/source/localedata/data/so_SO.xml368
-rw-r--r--i18npool/source/localedata/data/sr_ME.xml41
-rw-r--r--i18npool/source/localedata/data/sr_RS.xml444
-rw-r--r--i18npool/source/localedata/data/sr_YU.xml41
-rw-r--r--i18npool/source/localedata/data/ss_ZA.xml143
-rw-r--r--i18npool/source/localedata/data/st_ZA.xml143
-rw-r--r--i18npool/source/localedata/data/sv_FI.xml321
-rw-r--r--i18npool/source/localedata/data/sv_SE.xml342
-rw-r--r--i18npool/source/localedata/data/sw_TZ.xml350
-rw-r--r--i18npool/source/localedata/data/ta_IN.xml173
-rw-r--r--i18npool/source/localedata/data/te_IN.xml172
-rw-r--r--i18npool/source/localedata/data/tg_TJ.xml341
-rw-r--r--i18npool/source/localedata/data/th_TH.xml674
-rw-r--r--i18npool/source/localedata/data/ti_ER.xml334
-rw-r--r--i18npool/source/localedata/data/tk_TM.xml361
-rw-r--r--i18npool/source/localedata/data/tn_ZA.xml143
-rw-r--r--i18npool/source/localedata/data/tpi_PG.xml361
-rw-r--r--i18npool/source/localedata/data/tr_TR.xml343
-rw-r--r--i18npool/source/localedata/data/ts_ZA.xml164
-rw-r--r--i18npool/source/localedata/data/ug_CN.xml364
-rw-r--r--i18npool/source/localedata/data/uk_UA.xml463
-rw-r--r--i18npool/source/localedata/data/uz_UZ.xml334
-rw-r--r--i18npool/source/localedata/data/ve_ZA.xml164
-rw-r--r--i18npool/source/localedata/data/vi_VN.xml417
-rw-r--r--i18npool/source/localedata/data/wa_BE.xml342
-rw-r--r--i18npool/source/localedata/data/xh_ZA.xml158
-rw-r--r--i18npool/source/localedata/data/zh_CN.xml521
-rw-r--r--i18npool/source/localedata/data/zh_HK.xml276
-rw-r--r--i18npool/source/localedata/data/zh_MO.xml265
-rw-r--r--i18npool/source/localedata/data/zh_SG.xml262
-rw-r--r--i18npool/source/localedata/data/zh_TW.xml450
-rw-r--r--i18npool/source/localedata/data/zu_ZA.xml143
-rw-r--r--i18npool/source/localedata/filewriter.cxx213
-rw-r--r--i18npool/source/localedata/localedata.cxx1473
-rw-r--r--i18npool/source/localedata/makefile.mk84
-rw-r--r--i18npool/source/localedata/saxparser.cxx395
-rw-r--r--i18npool/source/nativenumber/data/numberchar.h277
-rw-r--r--i18npool/source/nativenumber/makefile.mk49
-rw-r--r--i18npool/source/nativenumber/nativenumbersupplier.cxx917
-rw-r--r--i18npool/source/numberformatcode/makefile.mk49
-rw-r--r--i18npool/source/numberformatcode/numberformatcode.cxx304
-rw-r--r--i18npool/source/ordinalsuffix/makefile.mk50
-rw-r--r--i18npool/source/ordinalsuffix/ordinalsuffix.cxx117
-rw-r--r--i18npool/source/paper/makefile.mk71
-rw-r--r--i18npool/source/paper/paper.cxx510
-rw-r--r--i18npool/source/registerservices/makefile.mk46
-rw-r--r--i18npool/source/registerservices/registerservices.cxx616
-rw-r--r--i18npool/source/search/i18nsearch.component34
-rw-r--r--i18npool/source/search/levdis.cxx779
-rw-r--r--i18npool/source/search/levdis.hxx229
-rw-r--r--i18npool/source/search/makefile.mk86
-rw-r--r--i18npool/source/search/textsearch.cxx1019
-rw-r--r--i18npool/source/search/textsearch.hxx154
-rw-r--r--i18npool/source/textconversion/data/hhc_char.dic502
-rw-r--r--i18npool/source/textconversion/data/makefile.mk68
-rw-r--r--i18npool/source/textconversion/data/stc_char.dic2835
-rw-r--r--i18npool/source/textconversion/data/stc_word.dic1150
-rw-r--r--i18npool/source/textconversion/data/textconv_dict.map23
-rw-r--r--i18npool/source/textconversion/genconv_dict.cxx483
-rw-r--r--i18npool/source/textconversion/makefile.mk59
-rw-r--r--i18npool/source/textconversion/textconversion.cxx91
-rw-r--r--i18npool/source/textconversion/textconversionImpl.cxx145
-rw-r--r--i18npool/source/textconversion/textconversion_ko.cxx343
-rw-r--r--i18npool/source/textconversion/textconversion_zh.cxx296
-rw-r--r--i18npool/source/transliteration/chartonum.cxx64
-rw-r--r--i18npool/source/transliteration/data/numberchar.h163
-rw-r--r--i18npool/source/transliteration/fullwidthToHalfwidth.cxx155
-rw-r--r--i18npool/source/transliteration/halfwidthToFullwidth.cxx135
-rw-r--r--i18npool/source/transliteration/hiraganaToKatakana.cxx61
-rw-r--r--i18npool/source/transliteration/ignoreBaFa_ja_JP.cxx59
-rw-r--r--i18npool/source/transliteration/ignoreHyuByu_ja_JP.cxx60
-rw-r--r--i18npool/source/transliteration/ignoreIandEfollowedByYa_ja_JP.cxx149
-rw-r--r--i18npool/source/transliteration/ignoreIterationMark_ja_JP.cxx157
-rw-r--r--i18npool/source/transliteration/ignoreKana.cxx71
-rw-r--r--i18npool/source/transliteration/ignoreKiKuFollowedBySa_ja_JP.cxx106
-rw-r--r--i18npool/source/transliteration/ignoreMiddleDot_ja_JP.cxx60
-rw-r--r--i18npool/source/transliteration/ignoreMinusSign_ja_JP.cxx67
-rw-r--r--i18npool/source/transliteration/ignoreProlongedSoundMark_ja_JP.cxx365
-rw-r--r--i18npool/source/transliteration/ignoreSeZe_ja_JP.cxx65
-rw-r--r--i18npool/source/transliteration/ignoreSeparator_ja_JP.cxx126
-rw-r--r--i18npool/source/transliteration/ignoreSize_ja_JP.cxx72
-rw-r--r--i18npool/source/transliteration/ignoreSpace_ja_JP.cxx67
-rw-r--r--i18npool/source/transliteration/ignoreTiJi_ja_JP.cxx70
-rw-r--r--i18npool/source/transliteration/ignoreTraditionalKana_ja_JP.cxx68
-rw-r--r--i18npool/source/transliteration/ignoreTraditionalKanji_ja_JP.cxx747
-rw-r--r--i18npool/source/transliteration/ignoreWidth.cxx72
-rw-r--r--i18npool/source/transliteration/ignoreZiZu_ja_JP.cxx68
-rw-r--r--i18npool/source/transliteration/katakanaToHiragana.cxx58
-rw-r--r--i18npool/source/transliteration/largeToSmall_ja_JP.cxx93
-rw-r--r--i18npool/source/transliteration/makefile.mk84
-rw-r--r--i18npool/source/transliteration/numtochar.cxx69
-rw-r--r--i18npool/source/transliteration/numtotext_cjk.cxx92
-rw-r--r--i18npool/source/transliteration/smallToLarge_ja_JP.cxx93
-rw-r--r--i18npool/source/transliteration/textToPronounce_zh.cxx168
-rw-r--r--i18npool/source/transliteration/texttonum.cxx64
-rw-r--r--i18npool/source/transliteration/transliterationImpl.cxx684
-rw-r--r--i18npool/source/transliteration/transliteration_Ignore.cxx220
-rw-r--r--i18npool/source/transliteration/transliteration_Numeric.cxx149
-rw-r--r--i18npool/source/transliteration/transliteration_OneToOne.cxx108
-rwxr-xr-xi18npool/source/transliteration/transliteration_body.cxx473
-rw-r--r--i18npool/source/transliteration/transliteration_caseignore.cxx172
-rw-r--r--i18npool/source/transliteration/transliteration_commonclass.cxx164
-rw-r--r--i18npool/util/i18npool.component484
-rw-r--r--i18npool/util/makefile.mk89
-rw-r--r--i18npool/util/makefile.pmk31
-rw-r--r--i18npool/version.mk40
-rw-r--r--i18npool/xml/BreakIterator.xml82
-rw-r--r--i18npool/xml/Calendar.xml54
-rw-r--r--i18npool/xml/ChapterCollator.xml35
-rw-r--r--i18npool/xml/CharacterClassification.xml52
-rw-r--r--i18npool/xml/Collator.xml35
-rw-r--r--i18npool/xml/DefaultNumberingProvider.xml52
-rw-r--r--i18npool/xml/IndexEntrySupplier.xml53
-rw-r--r--i18npool/xml/LocaleData.xml60
-rw-r--r--i18npool/xml/NumberFormatCodeMapper.xml64
-rw-r--r--i18npool/xml/OrdinalSuffix.xml34
-rw-r--r--i18npool/xml/TextSearch.xml52
-rw-r--r--i18npool/xml/Transliteration.xml73
-rw-r--r--i18nutil/inc/i18nutil/casefolding.hxx84
-rw-r--r--i18nutil/inc/i18nutil/oneToOneMapping.hxx100
-rw-r--r--i18nutil/inc/i18nutil/unicode.hxx67
-rw-r--r--i18nutil/inc/i18nutil/widthfolding.hxx59
-rw-r--r--i18nutil/inc/i18nutil/x_rtl_ustring.h78
-rw-r--r--i18nutil/prj/build.lst3
-rw-r--r--i18nutil/prj/d.lst13
-rw-r--r--i18nutil/source/utility/casefolding.cxx167
-rw-r--r--i18nutil/source/utility/casefolding_data.h865
-rw-r--r--i18nutil/source/utility/makefile.mk78
-rw-r--r--i18nutil/source/utility/oneToOneMapping.cxx161
-rw-r--r--i18nutil/source/utility/unicode.cxx494
-rw-r--r--i18nutil/source/utility/unicode_data.h1650
-rw-r--r--i18nutil/source/utility/widthfolding.cxx301
-rw-r--r--i18nutil/source/utility/widthfolding_data.h959
-rw-r--r--icc/README39
-rw-r--r--icc/SampleICC-1.3.2.patch5146
-rw-r--r--icc/makefile.mk58
-rw-r--r--icc/makefiles.zipbin0 -> 4073 bytes-rw-r--r--icc/prj/build.lst3
-rw-r--r--icc/prj/d.lst5
-rw-r--r--icc/source/create_sRGB_profile/Makefile.am13
-rw-r--r--icc/source/create_sRGB_profile/Makefile.in378
-rw-r--r--icc/source/create_sRGB_profile/create_sRGB_profile.cpp551
-rw-r--r--icu/Readme4
-rw-r--r--icu/createmak.cfg452
-rw-r--r--icu/createmak.pl1109
-rw-r--r--icu/icu-mp.patch24
-rw-r--r--icu/icu4c-4_0_1-src.patch247
-rwxr-xr-xicu/icuversion.mk33
-rw-r--r--icu/makefile.mk262
-rw-r--r--icu/prj/build.lst4
-rw-r--r--icu/prj/d.lst36
-rw-r--r--idl/inc/attrib.hxx77
-rw-r--r--idl/inc/basobj.hxx294
-rw-r--r--idl/inc/bastype.hxx290
-rw-r--r--idl/inc/char.hxx41
-rw-r--r--idl/inc/command.hxx78
-rw-r--r--idl/inc/database.hxx182
-rw-r--r--idl/inc/globals.hxx242
-rw-r--r--idl/inc/hash.hxx125
-rw-r--r--idl/inc/lex.hxx271
-rw-r--r--idl/inc/makefile.mk47
-rw-r--r--idl/inc/module.hxx117
-rw-r--r--idl/inc/object.hxx170
-rw-r--r--idl/inc/pch/precompiled_idl.cxx29
-rw-r--r--idl/inc/pch/precompiled_idl.hxx32
-rw-r--r--idl/inc/slot.hxx279
-rw-r--r--idl/inc/types.hxx345
-rw-r--r--idl/prj/build.lst8
-rw-r--r--idl/prj/d.lst2
-rw-r--r--idl/source/cmptools/char.cxx107
-rw-r--r--idl/source/cmptools/hash.cxx327
-rw-r--r--idl/source/cmptools/lex.cxx503
-rw-r--r--idl/source/cmptools/makefile.mk47
-rw-r--r--idl/source/objects/basobj.cxx786
-rw-r--r--idl/source/objects/bastype.cxx611
-rw-r--r--idl/source/objects/makefile.mk50
-rw-r--r--idl/source/objects/module.cxx688
-rw-r--r--idl/source/objects/object.cxx1047
-rw-r--r--idl/source/objects/slot.cxx1820
-rw-r--r--idl/source/objects/types.cxx2699
-rw-r--r--idl/source/prj/command.cxx433
-rw-r--r--idl/source/prj/database.cxx1038
-rw-r--r--idl/source/prj/globals.cxx189
-rw-r--r--idl/source/prj/makefile.mk49
-rw-r--r--idl/source/prj/svidl.cxx447
-rw-r--r--idl/source/svidl.datbin0 -> 204 bytes-rw-r--r--idl/util/idlpch.cxx49
-rw-r--r--idl/util/makefile.mk68
-rw-r--r--idlc/inc/idlc/astarray.hxx62
-rw-r--r--idlc/inc/idlc/astattribute.hxx121
-rw-r--r--idlc/inc/idlc/astbasetype.hxx62
-rw-r--r--idlc/inc/idlc/astconstant.hxx57
-rw-r--r--idlc/inc/idlc/astconstants.hxx42
-rw-r--r--idlc/inc/idlc/astdeclaration.hxx148
-rw-r--r--idlc/inc/idlc/astenum.hxx57
-rw-r--r--idlc/inc/idlc/astexception.hxx43
-rw-r--r--idlc/inc/idlc/astexpression.hxx186
-rw-r--r--idlc/inc/idlc/astinterface.hxx143
-rw-r--r--idlc/inc/idlc/astinterfacemember.hxx53
-rw-r--r--idlc/inc/idlc/astmember.hxx57
-rw-r--r--idlc/inc/idlc/astmodule.hxx51
-rw-r--r--idlc/inc/idlc/astneeds.hxx48
-rw-r--r--idlc/inc/idlc/astobserves.hxx48
-rw-r--r--idlc/inc/idlc/astoperation.hxx76
-rw-r--r--idlc/inc/idlc/astparameter.hxx54
-rw-r--r--idlc/inc/idlc/astscope.hxx78
-rw-r--r--idlc/inc/idlc/astsequence.hxx59
-rw-r--r--idlc/inc/idlc/astservice.hxx60
-rw-r--r--idlc/inc/idlc/astservicemember.hxx53
-rw-r--r--idlc/inc/idlc/aststack.hxx56
-rw-r--r--idlc/inc/idlc/aststruct.hxx69
-rw-r--r--idlc/inc/idlc/aststructinstance.hxx56
-rw-r--r--idlc/inc/idlc/asttype.hxx45
-rw-r--r--idlc/inc/idlc/asttypedef.hxx53
-rw-r--r--idlc/inc/idlc/astunion.hxx68
-rw-r--r--idlc/inc/idlc/astunionbranch.hxx46
-rw-r--r--idlc/inc/idlc/astunionlabel.hxx52
-rw-r--r--idlc/inc/idlc/errorhandler.hxx157
-rw-r--r--idlc/inc/idlc/fehelper.hxx98
-rw-r--r--idlc/inc/idlc/idlc.hxx168
-rw-r--r--idlc/inc/idlc/idlctypes.hxx266
-rw-r--r--idlc/inc/idlc/inheritedinterface.hxx61
-rw-r--r--idlc/inc/idlc/options.hxx82
-rw-r--r--idlc/inc/makefile.mk47
-rw-r--r--idlc/inc/pch/precompiled_idlc.cxx29
-rw-r--r--idlc/inc/pch/precompiled_idlc.hxx32
-rw-r--r--idlc/prj/build.lst5
-rw-r--r--idlc/prj/d.lst7
-rw-r--r--idlc/source/astarray.cxx74
-rw-r--r--idlc/source/astconstant.cxx136
-rw-r--r--idlc/source/astdeclaration.cxx211
-rw-r--r--idlc/source/astdump.cxx454
-rw-r--r--idlc/source/astenum.cxx125
-rw-r--r--idlc/source/astexpression.cxx1266
-rw-r--r--idlc/source/astinterface.cxx427
-rw-r--r--idlc/source/astoperation.cxx153
-rw-r--r--idlc/source/astscope.cxx356
-rw-r--r--idlc/source/astservice.cxx70
-rw-r--r--idlc/source/aststack.cxx137
-rw-r--r--idlc/source/aststruct.cxx191
-rw-r--r--idlc/source/aststructinstance.cxx70
-rw-r--r--idlc/source/astunion.cxx401
-rw-r--r--idlc/source/attributeexceptions.hxx42
-rw-r--r--idlc/source/errorhandler.cxx695
-rw-r--r--idlc/source/fehelper.cxx144
-rw-r--r--idlc/source/idlc.cxx341
-rw-r--r--idlc/source/idlccompile.cxx418
-rw-r--r--idlc/source/idlcmain.cxx148
-rw-r--r--idlc/source/idlcproduce.cxx210
-rw-r--r--idlc/source/makefile.mk129
-rw-r--r--idlc/source/options.cxx371
-rw-r--r--idlc/source/parser.y3292
-rw-r--r--idlc/source/preproc/cpp.c498
-rw-r--r--idlc/source/preproc/cpp.h213
-rw-r--r--idlc/source/preproc/eval.c790
-rw-r--r--idlc/source/preproc/include.c256
-rw-r--r--idlc/source/preproc/lex.c695
-rw-r--r--idlc/source/preproc/macro.c700
-rw-r--r--idlc/source/preproc/makefile.mk75
-rw-r--r--idlc/source/preproc/nlist.c143
-rw-r--r--idlc/source/preproc/tokens.c534
-rw-r--r--idlc/source/preproc/unix.c247
-rw-r--r--idlc/source/scanner.ll523
-rw-r--r--idlc/source/wrap_parser.cxx31
-rw-r--r--idlc/source/wrap_scanner.cxx31
-rw-r--r--idlc/test/const.idl50
-rw-r--r--idlc/test/enum.idl24
-rw-r--r--idlc/test/exception.idl20
-rw-r--r--idlc/test/identifiers.idl22
-rw-r--r--idlc/test/interface.idl51
-rw-r--r--idlc/test/parser/attribute.tests223
-rw-r--r--idlc/test/parser/constant.tests295
-rw-r--r--idlc/test/parser/constructor.tests199
-rw-r--r--idlc/test/parser/interfaceinheritance.tests280
-rw-r--r--idlc/test/parser/makefile.mk55
-rw-r--r--idlc/test/parser/methodoverload.tests124
-rw-r--r--idlc/test/parser/polystruct.tests255
-rw-r--r--idlc/test/parser/published.tests708
-rw-r--r--idlc/test/parser/struct.tests55
-rw-r--r--idlc/test/parser/typedef.tests67
-rw-r--r--idlc/test/service.idl44
-rw-r--r--idlc/test/singleton.idl41
-rw-r--r--idlc/test/struct.idl107
-rw-r--r--idlc/test/typelookup.idl63
-rw-r--r--idlc/test/union.idl35
-rw-r--r--install-sh276
-rw-r--r--instsetoo_native/inc_broffice/windows/msi_templates/Binary/Banner.bmpbin0 -> 7112 bytes-rw-r--r--instsetoo_native/inc_broffice/windows/msi_templates/Binary/Image.bmpbin0 -> 51772 bytes-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/ActionTe.idt73
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/AdminExe.idt13
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/AdminUIS.idt14
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/AdvtExec.idt19
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/Binary.idt20
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/Binary/Banner.bmpbin0 -> 6400 bytes-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/Binary/Image.bmpbin0 -> 52248 bytes-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/Binary/caution.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/Binary/dontinstall.icobin0 -> 766 bytes-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/Binary/install.icobin0 -> 766 bytes-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/Binary/installfirstuse.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/Binary/installpartial.icobin0 -> 766 bytes-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/Binary/installstatemenu.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/Binary/networkinstall.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/Binary/newfolder.icobin0 -> 894 bytes-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/Binary/openfolder.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/Binary/setup.icobin0 -> 11502 bytes-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/Binary/setupcomplete.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/Binary/setuppartial.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/Binary/setuprepair.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/Binary/trashcan.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/Binary/up.icobin0 -> 894 bytes-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/CheckBox.idt4
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/Control.idt380
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/ControlC.idt70
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/ControlE.idt138
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/CustomAc.idt10
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/Dialog.idt33
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/Error.idt133
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/EventMap.idt19
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/InstallE.idt74
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/InstallU.idt30
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/LaunchCo.idt4
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/ListBox.idt3
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/Property.idt56
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/RadioBut.idt11
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/TextStyl.idt25
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/UIText.idt53
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/_Validat.idt461
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/bro_patchcodes.txt3
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/brodev_patchcodes.txt3
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/codes.txt152
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/codes_broo.txt67
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/codes_ooodev.txt152
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/components.txt0
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/ooo_patchcodes.txt3
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/ooodev_patchcodes.txt3
-rw-r--r--instsetoo_native/inc_openoffice/unix/find-requires-gnome.sh7
-rw-r--r--instsetoo_native/inc_openoffice/unix/find-requires-x11.sh6
-rw-r--r--instsetoo_native/inc_openoffice/unix/makefile.mk55
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_languages/ActionTe.ulf373
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_languages/Control.ulf736
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_languages/CustomAc.ulf11
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_languages/Error.ulf391
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_languages/LaunchCo.ulf4
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_languages/Nsis.ulf41
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_languages/Property.ulf47
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_languages/RadioBut.ulf27
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_languages/SIS.ulf18
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_languages/UIText.ulf148
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_languages/makefile.mk62
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/ActionTe.idt73
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/AdminExe.idt13
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/AdminUIS.idt14
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/AdvtExec.idt19
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/AppSearc.idt5
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/Binary.idt20
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/Binary/Banner.bmpbin0 -> 6400 bytes-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/Binary/Image.bmpbin0 -> 52248 bytes-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/Binary/caution.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/Binary/dontinstall.icobin0 -> 766 bytes-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/Binary/install.icobin0 -> 766 bytes-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/Binary/installfirstuse.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/Binary/installpartial.icobin0 -> 766 bytes-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/Binary/installstatemenu.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/Binary/networkinstall.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/Binary/newfolder.icobin0 -> 894 bytes-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/Binary/openfolder.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/Binary/setup.icobin0 -> 11502 bytes-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/Binary/setupcomplete.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/Binary/setuppartial.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/Binary/setuprepair.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/Binary/trashcan.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/Binary/up.icobin0 -> 894 bytes-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/CheckBox.idt6
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/Control.idt395
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/ControlC.idt79
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/ControlE.idt152
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/CustomAc.idt131
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/Dialog.idt36
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/Error.idt133
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/EventMap.idt18
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/InstallE.idt191
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/InstallU.idt31
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/LaunchCo.idt5
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/ListBox.idt3
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/Property.idt62
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/RadioBut.idt12
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/RegLocat.idt5
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/Signatur.idt3
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/TextStyl.idt25
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/UIText.idt53
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/_Validat.idt461
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/codes.txt37
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/codes_broo.txt5
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/codes_broodev.txt5
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/codes_ooodev.txt37
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/components.txt0
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/upgradecode_remove_ooo.txt121
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/ActionTe.idt73
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/AdminExe.idt13
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/AdminUIS.idt14
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/AdvtExec.idt19
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/AppSearc.idt5
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/Binary.idt20
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/Binary/Banner.bmpbin0 -> 6400 bytes-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/Binary/Image.bmpbin0 -> 154544 bytes-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/Binary/caution.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/Binary/dontinstall.icobin0 -> 766 bytes-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/Binary/install.icobin0 -> 766 bytes-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/Binary/installfirstuse.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/Binary/installpartial.icobin0 -> 766 bytes-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/Binary/installstatemenu.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/Binary/networkinstall.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/Binary/newfolder.icobin0 -> 894 bytes-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/Binary/openfolder.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/Binary/setup.icobin0 -> 11502 bytes-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/Binary/setupcomplete.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/Binary/setuppartial.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/Binary/setuprepair.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/Binary/trashcan.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/Binary/up.icobin0 -> 894 bytes-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/CheckBox.idt4
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/Control.idt377
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/ControlC.idt70
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/ControlE.idt139
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/CustomAc.idt8
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/Dialog.idt33
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/Error.idt133
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/EventMap.idt18
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/InstallE.idt72
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/InstallU.idt29
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/LaunchCo.idt4
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/ListBox.idt3
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/Property.idt56
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/RadioBut.idt12
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/RegLocat.idt5
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/Signatur.idt3
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/TextStyl.idt25
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/UIText.idt53
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/_Validat.idt461
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/codes.txt36
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/components.txt0
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/ActionTe.idt73
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/AdminExe.idt13
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/AdminUIS.idt14
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/AdvtExec.idt19
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/AppSearc.idt3
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/Binary.idt20
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/Binary/Banner.bmpbin0 -> 7112 bytes-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/Binary/Image.bmpbin0 -> 52248 bytes-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/Binary/caution.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/Binary/dontinstall.icobin0 -> 766 bytes-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/Binary/install.icobin0 -> 766 bytes-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/Binary/installfirstuse.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/Binary/installpartial.icobin0 -> 766 bytes-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/Binary/installstatemenu.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/Binary/networkinstall.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/Binary/newfolder.icobin0 -> 894 bytes-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/Binary/openfolder.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/Binary/setup.icobin0 -> 11502 bytes-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/Binary/setupcomplete.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/Binary/setuppartial.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/Binary/setuprepair.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/Binary/trashcan.icobin0 -> 3262 bytes-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/Binary/up.icobin0 -> 894 bytes-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/CheckBox.idt4
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/Control.idt377
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/ControlC.idt70
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/ControlE.idt139
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/CustomAc.idt10
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/Dialog.idt33
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/Error.idt133
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/EventMap.idt18
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/InstallE.idt74
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/InstallU.idt31
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/LaunchCo.idt4
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/ListBox.idt3
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/Property.idt57
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/RadioBut.idt12
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/RegLocat.idt3
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/Signatur.idt3
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/TextStyl.idt25
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/UIText.idt53
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/_Validat.idt461
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/codes.txt36
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/components.txt0
-rw-r--r--instsetoo_native/prj/build.lst5
-rw-r--r--instsetoo_native/prj/d.lst3
-rw-r--r--instsetoo_native/res/nologoinstall.bmpbin0 -> 52244 bytes-rw-r--r--instsetoo_native/util/makefile.mk333
-rw-r--r--instsetoo_native/util/openoffice.lst595
-rw-r--r--instsetoo_native/util/pack.lst24
-rw-r--r--instsetoo_native/util/update.xml10
-rw-r--r--io/inc/makefile.mk49
-rw-r--r--io/inc/pch/precompiled_io.cxx29
-rw-r--r--io/inc/pch/precompiled_io.hxx32
-rw-r--r--io/prj/build.lst8
-rw-r--r--io/prj/d.lst12
-rw-r--r--io/source/TextInputStream/TextInputStream.cxx531
-rw-r--r--io/source/TextInputStream/makefile.mk69
-rw-r--r--io/source/TextInputStream/textinstream.component34
-rw-r--r--io/source/TextOutputStream/TextOutputStream.cxx329
-rw-r--r--io/source/TextOutputStream/makefile.mk70
-rw-r--r--io/source/TextOutputStream/textoutstream.component34
-rw-r--r--io/source/acceptor/acc_pipe.cxx224
-rw-r--r--io/source/acceptor/acc_socket.cxx416
-rw-r--r--io/source/acceptor/acceptor.component34
-rw-r--r--io/source/acceptor/acceptor.cxx377
-rw-r--r--io/source/acceptor/acceptor.hxx78
-rw-r--r--io/source/acceptor/acceptor.xml44
-rw-r--r--io/source/acceptor/makefile.mk81
-rw-r--r--io/source/connector/connector.component34
-rw-r--r--io/source/connector/connector.cxx289
-rw-r--r--io/source/connector/connector.hxx144
-rw-r--r--io/source/connector/connectr.xml44
-rw-r--r--io/source/connector/ctr_pipe.cxx118
-rw-r--r--io/source/connector/ctr_socket.cxx255
-rw-r--r--io/source/connector/makefile.mk81
-rw-r--r--io/source/stm/factreg.cxx119
-rw-r--r--io/source/stm/factreg.hxx66
-rw-r--r--io/source/stm/makefile.mk84
-rw-r--r--io/source/stm/odata.cxx1664
-rw-r--r--io/source/stm/omark.cxx1015
-rw-r--r--io/source/stm/opipe.cxx492
-rw-r--r--io/source/stm/opump.cxx504
-rw-r--r--io/source/stm/stm.xml280
-rw-r--r--io/source/stm/streamhelper.cxx244
-rw-r--r--io/source/stm/streamhelper.hxx162
-rw-r--r--io/source/stm/streams.component55
-rw-r--r--io/test/makefile.mk92
-rw-r--r--io/test/stm/datatest.cxx1123
-rw-r--r--io/test/stm/exports.dxp3
-rw-r--r--io/test/stm/makefile.mk99
-rw-r--r--io/test/stm/marktest.cxx677
-rw-r--r--io/test/stm/pipetest.cxx439
-rw-r--r--io/test/stm/pumptest.cxx449
-rw-r--r--io/test/stm/testfactreg.cxx216
-rw-r--r--io/test/stm/testfactreg.hxx119
-rw-r--r--io/test/testcomponent.cxx217
-rw-r--r--io/test/testconnection.cxx286
-rwxr-xr-xjavainstaller2/build.xml105
-rwxr-xr-xjavainstaller2/makefile.mk35
-rwxr-xr-xjavainstaller2/nbproject/private/private.xml4
-rwxr-xr-xjavainstaller2/nbproject/project.xml56
-rwxr-xr-xjavainstaller2/prj/build.lst5
-rwxr-xr-xjavainstaller2/prj/d.lst2
-rwxr-xr-xjavainstaller2/src/Helpfiles/create_helpfiles.pl268
-rwxr-xr-xjavainstaller2/src/Helpfiles/helpfilenames.txt43
-rwxr-xr-xjavainstaller2/src/Helpfiles/makefile.mk57
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Controller/AcceptLicenseCtrl.java77
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Controller/ChooseComponentsCtrl.java204
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Controller/ChooseDirectoryCtrl.java256
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Controller/ChooseInstallationTypeCtrl.java174
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Controller/ChooseUninstallationComponentsCtrl.java131
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Controller/ChooseUninstallationTypeCtrl.java133
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Controller/InstallationCompletedCtrl.java111
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Controller/InstallationImminentCtrl.java155
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Controller/InstallationOngoingCtrl.java195
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Controller/PrologueCtrl.java200
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Controller/UninstallationCompletedCtrl.java103
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Controller/UninstallationImminentCtrl.java112
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Controller/UninstallationOngoingCtrl.java146
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Controller/UninstallationPrologueCtrl.java186
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/DeckOfPanels.java54
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Dialogs/DatabaseDialog.java64
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Dialogs/DetailsDialog.java139
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Dialogs/HelpDialog.java166
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Icons/Back.gifbin0 -> 91 bytes-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Icons/DontInstall.pngbin0 -> 154 bytes-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Icons/DontKnow.pngbin0 -> 180 bytes-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Icons/Forward.gifbin0 -> 91 bytes-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Icons/Install.pngbin0 -> 163 bytes-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Icons/Installed.pngbin0 -> 110 bytes-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Icons/Remove.pngbin0 -> 198 bytes-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/InstallData.java746
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Installer/Installer.java79
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Installer/InstallerFactory.java67
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Installer/LinuxInstaller.java720
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Installer/SolarisInstaller.java574
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/InstallerHelper/LinuxHelper.java540
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/InstallerHelper/SolarisHelper.java404
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Main.java98
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Panel/AcceptLicense.java104
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Panel/ChooseComponents.java189
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Panel/ChooseDirectory.java185
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Panel/ChooseInstallationType.java180
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Panel/ChooseUninstallationComponents.java182
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Panel/ChooseUninstallationType.java176
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Panel/InstallationImminent.java115
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Panel/InstallationOngoing.java121
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Panel/Prologue.java76
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Panel/UninstallationCompleted.java108
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Panel/UninstallationImminent.java110
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Panel/UninstallationOngoing.java109
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Panel/UninstallationPrologue.java62
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Panel/installationCompleted.java107
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/PanelController.java97
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/PanelHelper/PanelLabel.java82
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/PanelHelper/PanelTitle.java116
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/PanelHelper/TreeNodeRenderer.java89
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/ResourceManager.java171
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/SetupActionListener.java116
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/SetupData/DisplayPackageDescription.java200
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/SetupData/PackageDescription.java659
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/SetupData/ProductDescription.java277
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/SetupData/SetupDataProvider.java109
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/SetupData/XMLPackageDescription.java307
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/SetupFrame.java300
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Util/AbortInstaller.java52
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Util/Calculator.java88
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Util/Controller.java291
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Util/Converter.java95
-rw-r--r--javainstaller2/src/JavaSetup/org/openoffice/setup/Util/DialogFocusTraversalPolicy.java115
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Util/Dumper.java202
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Util/ExecuteProcess.java114
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Util/FileExtensionFilter.java53
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Util/InfoCtrl.java163
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Util/InfoDir.java319
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Util/Informer.java45
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Util/InstallChangeCtrl.java137
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Util/LogManager.java105
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Util/ModuleCtrl.java1004
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Util/PackageCollector.java179
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Util/Parser.java49
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Util/SystemManager.java484
-rwxr-xr-xjavainstaller2/src/Localization/makefile.mk54
-rwxr-xr-xjavainstaller2/src/Localization/setupstrings.ulf455
-rwxr-xr-xjavainstaller2/src/Properties/create_property.pl303
-rwxr-xr-xjavainstaller2/src/Properties/makefile.mk50
-rw-r--r--javainstaller2/src/Properties/setupfiles_template.properties26
-rw-r--r--javainstaller2/src/Properties/setupstrings_template.properties123
-rw-r--r--javaunohelper/com/sun/star/comp/JavaUNOHelperServices.java64
-rw-r--r--javaunohelper/com/sun/star/comp/helper/Bootstrap.java329
-rw-r--r--javaunohelper/com/sun/star/comp/helper/BootstrapException.java91
-rw-r--r--javaunohelper/com/sun/star/comp/helper/ComponentContext.java310
-rw-r--r--javaunohelper/com/sun/star/comp/helper/ComponentContextEntry.java73
-rw-r--r--javaunohelper/com/sun/star/comp/helper/RegistryServiceFactory.java168
-rw-r--r--javaunohelper/com/sun/star/comp/helper/SharedLibraryLoader.java159
-rw-r--r--javaunohelper/com/sun/star/comp/helper/UnoInfo.java115
-rw-r--r--javaunohelper/com/sun/star/comp/helper/makefile.mk54
-rw-r--r--javaunohelper/com/sun/star/comp/juhtest/SmoketestCommandEnvironment.java151
-rw-r--r--javaunohelper/com/sun/star/comp/juhtest/makefile.mk50
-rw-r--r--javaunohelper/com/sun/star/comp/makefile.mk49
-rwxr-xr-xjavaunohelper/com/sun/star/lib/uno/adapter/ByteArrayToXInputStreamAdapter.java161
-rw-r--r--javaunohelper/com/sun/star/lib/uno/adapter/InputStreamToXInputStreamAdapter.java166
-rw-r--r--javaunohelper/com/sun/star/lib/uno/adapter/OutputStreamToXOutputStreamAdapter.java87
-rw-r--r--javaunohelper/com/sun/star/lib/uno/adapter/XInputStreamToInputStreamAdapter.java207
-rwxr-xr-xjavaunohelper/com/sun/star/lib/uno/adapter/XOutputStreamToByteArrayAdapter.java121
-rw-r--r--javaunohelper/com/sun/star/lib/uno/adapter/XOutputStreamToOutputStreamAdapter.java111
-rw-r--r--javaunohelper/com/sun/star/lib/uno/adapter/makefile.mk54
-rw-r--r--javaunohelper/com/sun/star/lib/uno/helper/ComponentBase.java141
-rw-r--r--javaunohelper/com/sun/star/lib/uno/helper/Factory.java244
-rw-r--r--javaunohelper/com/sun/star/lib/uno/helper/InterfaceContainer.java856
-rw-r--r--javaunohelper/com/sun/star/lib/uno/helper/MultiTypeInterfaceContainer.java165
-rw-r--r--javaunohelper/com/sun/star/lib/uno/helper/PropertySet.java1102
-rw-r--r--javaunohelper/com/sun/star/lib/uno/helper/PropertySetMixin.java1093
-rw-r--r--javaunohelper/com/sun/star/lib/uno/helper/UnoUrl.java412
-rw-r--r--javaunohelper/com/sun/star/lib/uno/helper/WeakAdapter.java102
-rw-r--r--javaunohelper/com/sun/star/lib/uno/helper/WeakBase.java143
-rw-r--r--javaunohelper/com/sun/star/lib/uno/helper/makefile.mk49
-rw-r--r--javaunohelper/inc/makefile.mk47
-rw-r--r--javaunohelper/inc/pch/precompiled_javaunohelper.cxx29
-rw-r--r--javaunohelper/inc/pch/precompiled_javaunohelper.hxx32
-rw-r--r--javaunohelper/prj/build.lst10
-rw-r--r--javaunohelper/prj/d.lst7
-rw-r--r--javaunohelper/source/bootstrap.cxx189
-rw-r--r--javaunohelper/source/javaunohelper.cxx323
-rw-r--r--javaunohelper/source/javaunohelper.map9
-rw-r--r--javaunohelper/source/makefile.mk134
-rw-r--r--javaunohelper/source/preload.cxx158
-rw-r--r--javaunohelper/source/vm.cxx147
-rw-r--r--javaunohelper/source/vm.hxx55
-rw-r--r--javaunohelper/test/com/sun/star/comp/helper/Bootstrap_Test.java117
-rw-r--r--javaunohelper/test/com/sun/star/comp/helper/ComponentContext_Test.java99
-rw-r--r--javaunohelper/test/com/sun/star/comp/helper/RegistryServiceFactory_Test.java100
-rw-r--r--javaunohelper/test/com/sun/star/comp/helper/SharedLibraryLoader_Test.java194
-rw-r--r--javaunohelper/test/com/sun/star/comp/helper/makefile.mk52
-rw-r--r--javaunohelper/test/com/sun/star/lib/uno/helper/AWeakBase.java50
-rw-r--r--javaunohelper/test/com/sun/star/lib/uno/helper/ComponentBase_Test.java153
-rw-r--r--javaunohelper/test/com/sun/star/lib/uno/helper/Factory_Test.java207
-rw-r--r--javaunohelper/test/com/sun/star/lib/uno/helper/InterfaceContainer_Test.java992
-rw-r--r--javaunohelper/test/com/sun/star/lib/uno/helper/MultiTypeInterfaceContainer_Test.java372
-rw-r--r--javaunohelper/test/com/sun/star/lib/uno/helper/PropertySet_Test.java1693
-rw-r--r--javaunohelper/test/com/sun/star/lib/uno/helper/ProxyProvider.java165
-rw-r--r--javaunohelper/test/com/sun/star/lib/uno/helper/UnoUrlTest.java261
-rw-r--r--javaunohelper/test/com/sun/star/lib/uno/helper/WeakBase_Test.java251
-rw-r--r--javaunohelper/test/com/sun/star/lib/uno/helper/makefile.mk68
-rw-r--r--javaunohelper/util/delzip0
-rw-r--r--javaunohelper/util/juh.component34
-rw-r--r--javaunohelper/util/makefile.mk58
-rw-r--r--javaunohelper/util/manifest3
-rw-r--r--javaunohelper/util/settings.pmk28
-rw-r--r--jfreereport/java/flute/makefile.mk73
-rw-r--r--jfreereport/java/jfreereport/makefile.mk71
-rw-r--r--jfreereport/java/libbase/makefile.mk85
-rw-r--r--jfreereport/java/libfonts/makefile.mk72
-rw-r--r--jfreereport/java/libformula/makefile.mk77
-rw-r--r--jfreereport/java/liblayout/makefile.mk71
-rw-r--r--jfreereport/java/libloader/makefile.mk71
-rw-r--r--jfreereport/java/librepository/makefile.mk71
-rw-r--r--jfreereport/java/libserializer/makefile.mk71
-rw-r--r--jfreereport/java/libxml/makefile.mk71
-rw-r--r--jfreereport/java/sac/makefile.mk83
-rw-r--r--jfreereport/nbprojects/flute/nbproject/project.xml42
-rw-r--r--jfreereport/nbprojects/jcommon-serializer/nbproject/project.xml42
-rw-r--r--jfreereport/nbprojects/jfreereport/nbproject/project.xml42
-rw-r--r--jfreereport/nbprojects/libfonts/nbproject/project.xml42
-rw-r--r--jfreereport/nbprojects/libformula/nbproject/project.xml42
-rw-r--r--jfreereport/nbprojects/liblayout/nbproject/project.xml42
-rw-r--r--jfreereport/nbprojects/libloader/nbproject/project.xml42
-rw-r--r--jfreereport/nbprojects/librepository/nbproject/project.xml42
-rw-r--r--jfreereport/nbprojects/libxml/nbproject/project.xml42
-rw-r--r--jfreereport/patches/flow-engine.patch10
-rw-r--r--jfreereport/patches/flute.patch19
-rw-r--r--jfreereport/patches/libbase.patch19
-rw-r--r--jfreereport/patches/libfonts.patch10
-rw-r--r--jfreereport/patches/libformula.patch27
-rw-r--r--jfreereport/patches/liblayout.patch10
-rw-r--r--jfreereport/patches/libloader.patch11
-rw-r--r--jfreereport/patches/librepository.patch10
-rw-r--r--jfreereport/patches/libserializer.patch10
-rw-r--r--jfreereport/patches/libxml.patch10
-rw-r--r--jfreereport/patches/sac.patch73
-rw-r--r--jfreereport/prj/build.lst13
-rw-r--r--jfreereport/prj/d.lst1
-rw-r--r--jpeg/jpeg-6b.patch113
-rw-r--r--jpeg/makefile.mk67
-rw-r--r--jpeg/prj/build.lst2
-rw-r--r--jpeg/prj/d.lst10
-rw-r--r--jurt/com/sun/star/comp/bridgefactory/BridgeFactory.java216
-rw-r--r--jurt/com/sun/star/comp/bridgefactory/makefile.mk43
-rw-r--r--jurt/com/sun/star/comp/connections/Acceptor.java155
-rw-r--r--jurt/com/sun/star/comp/connections/Connector.java136
-rw-r--r--jurt/com/sun/star/comp/connections/ConstantInstanceProvider.java125
-rw-r--r--jurt/com/sun/star/comp/connections/Implementation.java101
-rw-r--r--jurt/com/sun/star/comp/connections/PipedConnection.java270
-rw-r--r--jurt/com/sun/star/comp/connections/makefile.mk43
-rw-r--r--jurt/com/sun/star/comp/loader/FactoryHelper.java564
-rw-r--r--jurt/com/sun/star/comp/loader/JavaLoader.java483
-rw-r--r--jurt/com/sun/star/comp/loader/JavaLoaderFactory.java104
-rw-r--r--jurt/com/sun/star/comp/loader/RegistrationClassFinder.java133
-rw-r--r--jurt/com/sun/star/comp/loader/makefile.mk47
-rw-r--r--jurt/com/sun/star/comp/servicemanager/ServiceManager.java926
-rw-r--r--jurt/com/sun/star/comp/servicemanager/makefile.mk43
-rw-r--r--jurt/com/sun/star/comp/urlresolver/UrlResolver.java157
-rw-r--r--jurt/com/sun/star/comp/urlresolver/makefile.mk43
-rw-r--r--jurt/com/sun/star/lib/connections/pipe/PipeConnection.java232
-rw-r--r--jurt/com/sun/star/lib/connections/pipe/makefile.mk41
-rw-r--r--jurt/com/sun/star/lib/connections/pipe/pipeAcceptor.java131
-rw-r--r--jurt/com/sun/star/lib/connections/pipe/pipeConnector.java127
-rw-r--r--jurt/com/sun/star/lib/connections/socket/ConnectionDescriptor.java107
-rw-r--r--jurt/com/sun/star/lib/connections/socket/SocketConnection.java252
-rw-r--r--jurt/com/sun/star/lib/connections/socket/makefile.mk42
-rw-r--r--jurt/com/sun/star/lib/connections/socket/socketAcceptor.java192
-rw-r--r--jurt/com/sun/star/lib/connections/socket/socketConnector.java166
-rw-r--r--jurt/com/sun/star/lib/uno/Proxy.java40
-rw-r--r--jurt/com/sun/star/lib/uno/bridges/java_remote/BridgedObject.java49
-rw-r--r--jurt/com/sun/star/lib/uno/bridges/java_remote/ProxyFactory.java185
-rw-r--r--jurt/com/sun/star/lib/uno/bridges/java_remote/RequestHandler.java41
-rw-r--r--jurt/com/sun/star/lib/uno/bridges/java_remote/XConnectionInputStream_Adapter.java82
-rw-r--r--jurt/com/sun/star/lib/uno/bridges/java_remote/XConnectionOutputStream_Adapter.java91
-rw-r--r--jurt/com/sun/star/lib/uno/bridges/java_remote/java_remote_bridge.java711
-rw-r--r--jurt/com/sun/star/lib/uno/bridges/java_remote/makefile.mk44
-rw-r--r--jurt/com/sun/star/lib/uno/environments/java/java_environment.java311
-rw-r--r--jurt/com/sun/star/lib/uno/environments/java/makefile.mk44
-rw-r--r--jurt/com/sun/star/lib/uno/environments/remote/IProtocol.java97
-rw-r--r--jurt/com/sun/star/lib/uno/environments/remote/IReceiver.java48
-rw-r--r--jurt/com/sun/star/lib/uno/environments/remote/IThreadPool.java127
-rw-r--r--jurt/com/sun/star/lib/uno/environments/remote/JavaThreadPool.java132
-rw-r--r--jurt/com/sun/star/lib/uno/environments/remote/JavaThreadPoolFactory.java94
-rw-r--r--jurt/com/sun/star/lib/uno/environments/remote/Job.java180
-rw-r--r--jurt/com/sun/star/lib/uno/environments/remote/JobQueue.java396
-rw-r--r--jurt/com/sun/star/lib/uno/environments/remote/Message.java195
-rw-r--r--jurt/com/sun/star/lib/uno/environments/remote/NativeThreadPool.java100
-rw-r--r--jurt/com/sun/star/lib/uno/environments/remote/ThreadId.java95
-rw-r--r--jurt/com/sun/star/lib/uno/environments/remote/ThreadPoolManager.java80
-rw-r--r--jurt/com/sun/star/lib/uno/environments/remote/makefile.mk50
-rw-r--r--jurt/com/sun/star/lib/uno/environments/remote/remote_environment.java72
-rw-r--r--jurt/com/sun/star/lib/uno/makefile.mk37
-rw-r--r--jurt/com/sun/star/lib/uno/protocols/urp/Cache.java120
-rw-r--r--jurt/com/sun/star/lib/uno/protocols/urp/Marshal.java390
-rw-r--r--jurt/com/sun/star/lib/uno/protocols/urp/PendingRequests.java71
-rw-r--r--jurt/com/sun/star/lib/uno/protocols/urp/Unmarshal.java490
-rw-r--r--jurt/com/sun/star/lib/uno/protocols/urp/UrpMessage.java54
-rw-r--r--jurt/com/sun/star/lib/uno/protocols/urp/makefile.mk44
-rw-r--r--jurt/com/sun/star/lib/uno/protocols/urp/urp.java734
-rw-r--r--jurt/com/sun/star/lib/util/AsynchronousFinalizer.java102
-rw-r--r--jurt/com/sun/star/lib/util/NativeLibraryLoader.java118
-rw-r--r--jurt/com/sun/star/lib/util/StringHelper.java51
-rw-r--r--jurt/com/sun/star/lib/util/UrlToFileMapper.java161
-rw-r--r--jurt/com/sun/star/lib/util/makefile.mk42
-rw-r--r--jurt/com/sun/star/uno/AnyConverter.java543
-rw-r--r--jurt/com/sun/star/uno/Ascii.java50
-rw-r--r--jurt/com/sun/star/uno/AsciiString.java51
-rw-r--r--jurt/com/sun/star/uno/MappingException.java70
-rw-r--r--jurt/com/sun/star/uno/WeakReference.java147
-rw-r--r--jurt/com/sun/star/uno/makefile.mk52
-rw-r--r--jurt/demo/com/sun/star/demo/DemoServer.java101
-rw-r--r--jurt/demo/com/sun/star/demo/TestOffice.java193
-rw-r--r--jurt/demo/com/sun/star/demo/makefile.mk57
-rw-r--r--jurt/prj/build.lst19
-rw-r--r--jurt/prj/d.lst7
-rw-r--r--jurt/source/pipe/com_sun_star_lib_connections_pipe_PipeConnection.c566
-rw-r--r--jurt/source/pipe/makefile.mk57
-rw-r--r--jurt/source/pipe/wrapper/makefile.mk52
-rw-r--r--jurt/source/pipe/wrapper/wrapper.c99
-rw-r--r--jurt/test/com/sun/star/comp/bridgefactory/BridgeFactory_Test.java106
-rw-r--r--jurt/test/com/sun/star/comp/bridgefactory/makefile.mk36
-rw-r--r--jurt/test/com/sun/star/comp/connections/PipedConnection_Test.java147
-rw-r--r--jurt/test/com/sun/star/comp/connections/makefile.mk36
-rw-r--r--jurt/test/com/sun/star/lib/uno/bridges/java_remote/BridgedObject_Test.java73
-rw-r--r--jurt/test/com/sun/star/lib/uno/bridges/java_remote/ProxyFactory_Test.java145
-rw-r--r--jurt/test/com/sun/star/lib/uno/bridges/java_remote/java_remote_bridge_Test.java251
-rw-r--r--jurt/test/com/sun/star/lib/uno/bridges/java_remote/makefile.mk39
-rw-r--r--jurt/test/com/sun/star/lib/uno/environments/java/java_environment_Test.java66
-rw-r--r--jurt/test/com/sun/star/lib/uno/environments/java/makefile.mk36
-rw-r--r--jurt/test/com/sun/star/lib/uno/environments/remote/JavaThreadPoolFactory_Test.java56
-rw-r--r--jurt/test/com/sun/star/lib/uno/environments/remote/JobQueue_Test.java274
-rw-r--r--jurt/test/com/sun/star/lib/uno/environments/remote/TestIWorkAt.java49
-rw-r--r--jurt/test/com/sun/star/lib/uno/environments/remote/TestMessage.java89
-rw-r--r--jurt/test/com/sun/star/lib/uno/environments/remote/TestReceiver.java33
-rw-r--r--jurt/test/com/sun/star/lib/uno/environments/remote/TestWorkAt.java97
-rw-r--r--jurt/test/com/sun/star/lib/uno/environments/remote/ThreadId_Test.java63
-rw-r--r--jurt/test/com/sun/star/lib/uno/environments/remote/ThreadPool_Test.java443
-rw-r--r--jurt/test/com/sun/star/lib/uno/environments/remote/makefile.mk44
-rw-r--r--jurt/test/com/sun/star/lib/uno/protocols/urp/Cache_Test.java106
-rw-r--r--jurt/test/com/sun/star/lib/uno/protocols/urp/Marshaling_Test.java369
-rw-r--r--jurt/test/com/sun/star/lib/uno/protocols/urp/Protocol_Test.java317
-rw-r--r--jurt/test/com/sun/star/lib/uno/protocols/urp/TestBridge.java115
-rw-r--r--jurt/test/com/sun/star/lib/uno/protocols/urp/TestObject.java70
-rw-r--r--jurt/test/com/sun/star/lib/uno/protocols/urp/interfaces.idl119
-rw-r--r--jurt/test/com/sun/star/lib/uno/protocols/urp/makefile.mk42
-rw-r--r--jurt/test/com/sun/star/lib/util/NativeLibraryLoader_Test.java83
-rw-r--r--jurt/test/com/sun/star/lib/util/makefile.mk36
-rw-r--r--jurt/test/com/sun/star/uno/AnyConverter_Test.java905
-rw-r--r--jurt/test/com/sun/star/uno/UnoRuntime_EnvironmentTest.java96
-rw-r--r--jurt/test/com/sun/star/uno/WeakReference_Test.java118
-rw-r--r--jurt/test/com/sun/star/uno/makefile.mk39
-rw-r--r--jurt/test/makefile.mk39
-rw-r--r--jurt/util/delzip0
-rw-r--r--jurt/util/makefile.mk52
-rw-r--r--jurt/util/makefile.pmk32
-rw-r--r--jurt/util/manifest7
-rw-r--r--jurt/workbench/com/sun/star/comp/urlresolver/UrlResolver_Test.java95
-rw-r--r--jurt/workbench/com/sun/star/comp/urlresolver/makefile.mk53
-rw-r--r--jvmaccess/inc/jvmaccess/classpath.hxx151
-rw-r--r--jvmaccess/inc/jvmaccess/unovirtualmachine.hxx109
-rw-r--r--jvmaccess/inc/jvmaccess/virtualmachine.hxx163
-rw-r--r--jvmaccess/prj/build.lst4
-rw-r--r--jvmaccess/prj/d.lst8
-rw-r--r--jvmaccess/source/classpath.cxx174
-rw-r--r--jvmaccess/source/makefile.mk41
-rw-r--r--jvmaccess/source/unovirtualmachine.cxx96
-rw-r--r--jvmaccess/source/virtualmachine.cxx124
-rw-r--r--jvmaccess/util/cc5_solaris_sparc.map81
-rw-r--r--jvmaccess/util/gcc3.map88
-rw-r--r--jvmaccess/util/makefile.mk66
-rw-r--r--jvmaccess/util/mingw.map71
-rw-r--r--jvmaccess/util/msvc_win32_intel.map37
-rw-r--r--jvmaccess/workbench/exceptiontest1.cxx46
-rw-r--r--jvmaccess/workbench/exceptiontest2.cxx46
-rw-r--r--jvmaccess/workbench/java/TestComponent.java104
-rw-r--r--jvmaccess/workbench/java/makefile.mk43
-rw-r--r--jvmaccess/workbench/java/manifest1
-rw-r--r--jvmaccess/workbench/javainfo/javainfotest.cxx372
-rw-r--r--jvmaccess/workbench/javainfo/makefile.mk43
-rw-r--r--jvmaccess/workbench/makefile.mk51
-rw-r--r--jvmfwk/distributions/OpenOfficeorg/javavendors.xsd77
-rw-r--r--jvmfwk/distributions/OpenOfficeorg/javavendors_freebsd.xml25
-rw-r--r--jvmfwk/distributions/OpenOfficeorg/javavendors_linux.xml33
-rw-r--r--jvmfwk/distributions/OpenOfficeorg/javavendors_macosx.xml20
-rw-r--r--jvmfwk/distributions/OpenOfficeorg/javavendors_os2.xml21
-rw-r--r--jvmfwk/distributions/OpenOfficeorg/javavendors_template.xml35
-rwxr-xr-xjvmfwk/distributions/OpenOfficeorg/javavendors_unx.xml17
-rw-r--r--jvmfwk/distributions/OpenOfficeorg/javavendors_wnt.xml21
-rwxr-xr-xjvmfwk/distributions/OpenOfficeorg/makefile.mk65
-rw-r--r--jvmfwk/inc/jvmfwk/framework.h867
-rw-r--r--jvmfwk/inc/jvmfwk/vendorplugin.h246
-rw-r--r--jvmfwk/inc/makefile.mk47
-rw-r--r--jvmfwk/inc/pch/precompiled_jvmfwk.cxx29
-rw-r--r--jvmfwk/inc/pch/precompiled_jvmfwk.hxx32
-rwxr-xr-xjvmfwk/plugins/sunmajor/javaenvsetup/javaldx.cxx188
-rwxr-xr-xjvmfwk/plugins/sunmajor/javaenvsetup/makefile.mk56
-rw-r--r--jvmfwk/plugins/sunmajor/pluginlib/JREProperties.java85
-rw-r--r--jvmfwk/plugins/sunmajor/pluginlib/diagnostics.h120
-rw-r--r--jvmfwk/plugins/sunmajor/pluginlib/gnujre.cxx287
-rw-r--r--jvmfwk/plugins/sunmajor/pluginlib/gnujre.hxx55
-rw-r--r--jvmfwk/plugins/sunmajor/pluginlib/makefile.mk117
-rw-r--r--jvmfwk/plugins/sunmajor/pluginlib/otherjre.cxx131
-rw-r--r--jvmfwk/plugins/sunmajor/pluginlib/otherjre.hxx53
-rw-r--r--jvmfwk/plugins/sunmajor/pluginlib/sunjavaplugin.cxx618
-rw-r--r--jvmfwk/plugins/sunmajor/pluginlib/sunjavaplugin.map8
-rwxr-xr-xjvmfwk/plugins/sunmajor/pluginlib/sunjavapluginrc2
-rw-r--r--jvmfwk/plugins/sunmajor/pluginlib/sunjre.cxx124
-rw-r--r--jvmfwk/plugins/sunmajor/pluginlib/sunjre.hxx52
-rw-r--r--jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx427
-rw-r--r--jvmfwk/plugins/sunmajor/pluginlib/sunversion.hxx127
-rw-r--r--jvmfwk/plugins/sunmajor/pluginlib/util.cxx1267
-rw-r--r--jvmfwk/plugins/sunmajor/pluginlib/util.hxx130
-rw-r--r--jvmfwk/plugins/sunmajor/pluginlib/vendorbase.cxx276
-rw-r--r--jvmfwk/plugins/sunmajor/pluginlib/vendorbase.hxx185
-rw-r--r--jvmfwk/plugins/sunmajor/pluginlib/vendorlist.cxx91
-rw-r--r--jvmfwk/plugins/sunmajor/pluginlib/vendorlist.hxx75
-rw-r--r--jvmfwk/prj/build.lst6
-rw-r--r--jvmfwk/prj/d.lst22
-rw-r--r--jvmfwk/source/elements.cxx1231
-rw-r--r--jvmfwk/source/elements.hxx391
-rw-r--r--jvmfwk/source/framework.cxx1277
-rw-r--r--jvmfwk/source/framework.hxx124
-rw-r--r--jvmfwk/source/framework.map31
-rw-r--r--jvmfwk/source/fwkbase.cxx718
-rw-r--r--jvmfwk/source/fwkbase.hxx158
-rw-r--r--jvmfwk/source/fwkutil.cxx354
-rw-r--r--jvmfwk/source/fwkutil.hxx138
-rw-r--r--jvmfwk/source/javasettings.xsd54
-rw-r--r--jvmfwk/source/javasettings_template.xml35
-rw-r--r--jvmfwk/source/javasettingsunopkginstall.xml3
-rw-r--r--jvmfwk/source/jvmfwk3rc4
-rw-r--r--jvmfwk/source/libxmlutil.cxx184
-rw-r--r--jvmfwk/source/libxmlutil.hxx129
-rw-r--r--jvmfwk/source/makefile.mk90
-rw-r--r--jvmfwk/source/readme.txt9
-rw-r--r--l10ntools/inc/cfgmerge.hxx205
-rw-r--r--l10ntools/inc/export.hxx585
-rw-r--r--l10ntools/inc/gsicheck.hxx128
-rw-r--r--l10ntools/inc/helpmerge.hxx84
-rw-r--r--l10ntools/inc/inireader.hxx52
-rw-r--r--l10ntools/inc/l10ntools/directory.hxx54
-rw-r--r--l10ntools/inc/l10ntools/file.hxx23
-rw-r--r--l10ntools/inc/l10ntools/vosapp.hxx33
-rw-r--r--l10ntools/inc/lngmerge.hxx66
-rw-r--r--l10ntools/inc/makefile.mk47
-rw-r--r--l10ntools/inc/pch/precompiled_l10ntools.cxx29
-rw-r--r--l10ntools/inc/pch/precompiled_l10ntools.hxx32
-rw-r--r--l10ntools/inc/srciter.hxx58
-rw-r--r--l10ntools/inc/tagtest.hxx396
-rw-r--r--l10ntools/inc/tokens.h109
-rw-r--r--l10ntools/inc/treeconfig.hxx28
-rw-r--r--l10ntools/inc/utf8conv.hxx44
-rw-r--r--l10ntools/inc/wtranode.hxx118
-rw-r--r--l10ntools/inc/wtratree.hxx159
-rw-r--r--l10ntools/inc/xmlparse.hxx550
-rw-r--r--l10ntools/inc/xmlutil.hxx9
-rw-r--r--l10ntools/inc/xrmmerge.hxx158
-rwxr-xr-xl10ntools/java/jpropex/build.xml169
-rw-r--r--l10ntools/java/jpropex/java/JPropEx.java509
-rw-r--r--l10ntools/java/jpropex/java/Main.java38
-rw-r--r--l10ntools/java/jpropex/java/NoLocalizeFilter.java54
-rw-r--r--l10ntools/java/jpropex/java/OrderedHashMap.java96
-rw-r--r--l10ntools/java/jpropex/java/SdfData.java108
-rw-r--r--l10ntools/java/jpropex/java/SdfEntity.java255
-rwxr-xr-xl10ntools/java/jpropex/jpropex12
-rwxr-xr-xl10ntools/java/jpropex/jpropex.MF1
-rwxr-xr-xl10ntools/java/jpropex/makefile.mk36
-rwxr-xr-xl10ntools/java/l10nconv/build.xml229
-rwxr-xr-xl10ntools/java/l10nconv/converter.MF1
-rwxr-xr-xl10ntools/java/l10nconv/documentation/readmeConverter.sxwbin0 -> 9824 bytes-rwxr-xr-xl10ntools/java/l10nconv/java/com/sun/star/tooling/DirtyTags/DirtyTagWrapCheck.java82
-rwxr-xr-xl10ntools/java/l10nconv/java/com/sun/star/tooling/DirtyTags/DirtyTagWrapper.java249
-rwxr-xr-xl10ntools/java/l10nconv/java/com/sun/star/tooling/DirtyTags/Tag.java246
-rwxr-xr-xl10ntools/java/l10nconv/java/com/sun/star/tooling/DirtyTags/TagPair.java307
-rwxr-xr-xl10ntools/java/l10nconv/java/com/sun/star/tooling/converter/Convert.java550
-rwxr-xr-xl10ntools/java/l10nconv/java/com/sun/star/tooling/converter/Converter.java520
-rwxr-xr-xl10ntools/java/l10nconv/java/com/sun/star/tooling/converter/ConverterException.java76
-rwxr-xr-xl10ntools/java/l10nconv/java/com/sun/star/tooling/converter/DataHandler.java146
-rwxr-xr-xl10ntools/java/l10nconv/java/com/sun/star/tooling/converter/DataReader.java76
-rwxr-xr-xl10ntools/java/l10nconv/java/com/sun/star/tooling/converter/DataWriter.java88
-rwxr-xr-xl10ntools/java/l10nconv/java/com/sun/star/tooling/converter/ExtMap.java94
-rwxr-xr-xl10ntools/java/l10nconv/java/com/sun/star/tooling/converter/FileMaker.java84
-rwxr-xr-xl10ntools/java/l10nconv/java/com/sun/star/tooling/converter/GSIReader.java247
-rwxr-xr-xl10ntools/java/l10nconv/java/com/sun/star/tooling/converter/GSIWriter.java243
-rwxr-xr-xl10ntools/java/l10nconv/java/com/sun/star/tooling/converter/GSIandSDFMerger.java164
-rwxr-xr-xl10ntools/java/l10nconv/java/com/sun/star/tooling/converter/LineErrorException.java78
-rwxr-xr-xl10ntools/java/l10nconv/java/com/sun/star/tooling/converter/OutputHandler.java225
-rwxr-xr-xl10ntools/java/l10nconv/java/com/sun/star/tooling/converter/ResTypeResolver.java68
-rwxr-xr-xl10ntools/java/l10nconv/java/com/sun/star/tooling/converter/Resolver.java95
-rwxr-xr-xl10ntools/java/l10nconv/java/com/sun/star/tooling/converter/SDFReader.java632
-rwxr-xr-xl10ntools/java/l10nconv/java/com/sun/star/tooling/converter/SDFWriter.java172
-rwxr-xr-xl10ntools/java/l10nconv/java/com/sun/star/tooling/converter/XLIFFReader.java742
-rwxr-xr-xl10ntools/java/l10nconv/java/com/sun/star/tooling/converter/XLIFFWriter.java532
-rwxr-xr-xl10ntools/java/l10nconv/java/com/sun/star/tooling/converter/dtd/xliff.dtd391
-rwxr-xr-xl10ntools/java/l10nconv/java/com/sun/star/tooling/languageResolver/LanguageResolver.java198
-rwxr-xr-xl10ntools/java/l10nconv/java/com/sun/star/tooling/languageResolver/lang.map41
-rwxr-xr-xl10ntools/java/l10nconv/makefile.mk35
-rwxr-xr-xl10ntools/java/receditor/build.xml169
-rw-r--r--l10ntools/java/receditor/java/transex3/controller/EditorController.java334
-rw-r--r--l10ntools/java/receditor/java/transex3/controller/Main.java10
-rw-r--r--l10ntools/java/receditor/java/transex3/model/ResourceFile.java77
-rw-r--r--l10ntools/java/receditor/java/transex3/model/SdfEntity.java211
-rw-r--r--l10ntools/java/receditor/java/transex3/model/SdfString.java167
-rw-r--r--l10ntools/java/receditor/java/transex3/view/Editor.java97
-rw-r--r--l10ntools/java/receditor/java/transex3/view/SdfTable.java24
-rwxr-xr-xl10ntools/java/receditor/makefile.mk35
-rwxr-xr-xl10ntools/java/receditor/receditor.MF1
-rw-r--r--l10ntools/layout/README27
-rw-r--r--l10ntools/layout/layoutparse.cxx135
-rw-r--r--l10ntools/layout/layoutparse.hxx51
-rw-r--r--l10ntools/layout/loc.sdf24
-rw-r--r--l10ntools/layout/makefile.mk77
-rw-r--r--l10ntools/layout/tralay.cxx399
-rw-r--r--l10ntools/layout/zoom.xml40
-rw-r--r--l10ntools/prj/build.lst10
-rw-r--r--l10ntools/prj/d.lst77
-rw-r--r--l10ntools/scripts/fast_merge.pl334
-rw-r--r--l10ntools/scripts/keyidGen.pl185
-rwxr-xr-xl10ntools/scripts/localize.pl1077
-rwxr-xr-xl10ntools/scripts/localize_old.pl1070
-rw-r--r--l10ntools/scripts/makefile.mk59
-rw-r--r--l10ntools/scripts/tool/const.py39
-rw-r--r--l10ntools/scripts/tool/l10ntool.py210
-rw-r--r--l10ntools/scripts/tool/pseudo.py184
-rw-r--r--l10ntools/scripts/tool/sdf.py170
-rw-r--r--l10ntools/scripts/tool/xhtex.py136
-rw-r--r--l10ntools/scripts/tool/xtxex.py94
-rwxr-xr-xl10ntools/scripts/xhtex46
-rwxr-xr-xl10ntools/scripts/xtxex47
-rw-r--r--l10ntools/source/cfg_yy_wrapper.c2
-rw-r--r--l10ntools/source/cfglex.l217
-rw-r--r--l10ntools/source/cfgmerge.cxx872
-rw-r--r--l10ntools/source/directory.cxx273
-rw-r--r--l10ntools/source/export.cxx2645
-rw-r--r--l10ntools/source/export2.cxx734
-rw-r--r--l10ntools/source/file.cxx55
-rw-r--r--l10ntools/source/filter/merge/FCFGMerge.cfg121
-rw-r--r--l10ntools/source/filter/merge/FCFGMerge.java128
-rw-r--r--l10ntools/source/filter/merge/Manifest.mf1
-rw-r--r--l10ntools/source/filter/merge/Merger.java361
-rw-r--r--l10ntools/source/filter/merge/makefile.mk92
-rw-r--r--l10ntools/source/filter/utils/AnalyzeStartupLog.java325
-rw-r--r--l10ntools/source/filter/utils/Cache.java2446
-rw-r--r--l10ntools/source/filter/utils/ConfigHelper.java300
-rw-r--r--l10ntools/source/filter/utils/FileHelper.java763
-rw-r--r--l10ntools/source/filter/utils/Logger.java174
-rw-r--r--l10ntools/source/filter/utils/MalformedCommandLineException.java47
-rw-r--r--l10ntools/source/filter/utils/XMLHelper.java822
-rw-r--r--l10ntools/source/filter/utils/makefile.mk53
-rw-r--r--l10ntools/source/gsicheck.cxx1174
-rw-r--r--l10ntools/source/gsiconv.cxx369
-rw-r--r--l10ntools/source/help/HelpCompiler.cxx590
-rw-r--r--l10ntools/source/help/HelpCompiler.hxx317
-rw-r--r--l10ntools/source/help/HelpFileDocument.java86
-rw-r--r--l10ntools/source/help/HelpIndexerTool.java401
-rw-r--r--l10ntools/source/help/HelpLinker.cxx1211
-rw-r--r--l10ntools/source/help/compilehelp.hxx79
-rw-r--r--l10ntools/source/help/helplinker.pmk31
-rw-r--r--l10ntools/source/help/makefile.mk116
-rw-r--r--l10ntools/source/helpex.cxx290
-rw-r--r--l10ntools/source/helpmerge.cxx716
-rw-r--r--l10ntools/source/inireader.cxx132
-rw-r--r--l10ntools/source/lngex.cxx205
-rw-r--r--l10ntools/source/lngmerge.cxx356
-rw-r--r--l10ntools/source/localize.cxx970
-rw-r--r--l10ntools/source/makefile.mk206
-rw-r--r--l10ntools/source/merge.cxx459
-rw-r--r--l10ntools/source/src_yy_wrapper.c2
-rw-r--r--l10ntools/source/srciter.cxx138
-rw-r--r--l10ntools/source/srclex.l302
-rw-r--r--l10ntools/source/tagtest.cxx1574
-rw-r--r--l10ntools/source/treeconfig.cxx128
-rw-r--r--l10ntools/source/utf8conv.cxx74
-rw-r--r--l10ntools/source/wtranode.cxx108
-rw-r--r--l10ntools/source/wtratree.cxx418
-rw-r--r--l10ntools/source/xgfconv.cxx66
-rw-r--r--l10ntools/source/xmlparse.cxx1453
-rw-r--r--l10ntools/source/xrm_yy_wrapper.c2
-rw-r--r--l10ntools/source/xrmlex.l224
-rw-r--r--l10ntools/source/xrmmerge.cxx731
-rw-r--r--l10ntools/workbench/gsicheck_errors.sdf15
-rw-r--r--l10ntools/workbench/gsicheck_errors_err-.sdf11
-rw-r--r--l10ntools/workbench/gsicheck_errors_err-l.sdf2
-rw-r--r--l10ntools/workbench/gsicheck_errors_err-s.sdf9
-rw-r--r--l10ntools/workbench/gsicheck_errors_err-t.sdf9
-rw-r--r--l10ntools/workbench/gsicheck_errors_ok-.sdf5
-rw-r--r--l10ntools/workbench/gsicheck_errors_ok-l.sdf12
-rw-r--r--l10ntools/workbench/gsicheck_errors_ok-s.sdf6
-rw-r--r--l10ntools/workbench/gsicheck_errors_ok-t.sdf6
-rw-r--r--l10ntools/workbench/gsicheckcheck.btm17
-rw-r--r--libegg/README7
-rw-r--r--libegg/inc/eggtrayicon.h35
-rw-r--r--libegg/prj/build.lst2
-rw-r--r--libegg/prj/d.lst5
-rw-r--r--libegg/source/eggtrayicon-impl.h76
-rw-r--r--libegg/source/eggtrayicon.c573
-rw-r--r--libegg/source/makefile.mk66
-rw-r--r--libtextcat/data/new_fingerprints/LICENSE30
-rw-r--r--libtextcat/data/new_fingerprints/fpdb.conf85
-rw-r--r--libtextcat/data/new_fingerprints/lm/afrikaans.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/albanian.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/amharic_utf.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/arabic.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/armenian.lm0
-rw-r--r--libtextcat/data/new_fingerprints/lm/basque.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/belarus.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/bosnian.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/breton.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/catalan.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/chinese_simplified.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/chinese_traditional.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/croatian.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/czech.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/danish.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/drents.lm0
-rw-r--r--libtextcat/data/new_fingerprints/lm/dutch.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/english.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/esperanto.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/estonian.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/finnish.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/french.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/frisian.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/georgian.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/german.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/greek.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/hebrew.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/hindi.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/hungarian.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/icelandic.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/indonesian.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/irish_gaelic.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/italian.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/japanese.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/korean.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/latin.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/latvian.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/lithuanian.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/luxembourgish.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/malay.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/manx_gaelic.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/marathi.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/middle_frisian.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/mingo.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/mongolian_cyrillic.lm363
-rw-r--r--libtextcat/data/new_fingerprints/lm/nepali.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/norwegian.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/persian.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/polish.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/portuguese.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/quechua.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/romanian.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/romansh.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/russian.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/sanskrit.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/scots.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/scots_gaelic.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/serbian_ascii.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/slovak_ascii.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/slovenian.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/spanish.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/swahili.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/swedish.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/tagalog.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/tamil.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/thai.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/turkish.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/ukrainian.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/vietnamese.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/welsh.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/yiddish_utf.lm400
-rw-r--r--libtextcat/data/new_fingerprints/lm/zulu.lm400
-rw-r--r--libtextcat/libtextcat-2.2.patch4078
-rw-r--r--libtextcat/makefile.mk91
-rw-r--r--libtextcat/prj/build.lst3
-rw-r--r--libtextcat/prj/d.lst12
-rw-r--r--libwpd/libwpd-0.8.8.diff908
-rw-r--r--libwpd/makefile.mk55
-rw-r--r--libwpd/prj/build.lst3
-rw-r--r--libwpd/prj/d.lst12
-rw-r--r--libxml2/libxml2-configure.patch118
-rw-r--r--libxml2/libxml2-global-symbols.patch59
-rw-r--r--libxml2/libxml2-gnome599717.patch20
-rw-r--r--libxml2/libxml2-mingw.patch48
-rw-r--r--libxml2/makefile.mk136
-rw-r--r--libxml2/prj/build.lst3
-rw-r--r--libxml2/prj/d.lst9
-rw-r--r--libxmlsec/makefile.mk192
-rw-r--r--libxmlsec/prj/build.lst3
-rw-r--r--libxmlsec/prj/d.lst9
-rw-r--r--libxmlsec/readme.txt32
-rw-r--r--libxmlsec/xmlsec1-configure-libxml-libxslt.patch40
-rw-r--r--libxmlsec/xmlsec1-configure.patch765
-rw-r--r--libxmlsec/xmlsec1-customkeymanage.patch6065
-rw-r--r--libxmlsec/xmlsec1-mingw-keymgr-mscrypto.patch62
-rw-r--r--libxmlsec/xmlsec1-mingw32.patch257
-rw-r--r--libxmlsec/xmlsec1-noverify.patch59
-rw-r--r--libxmlsec/xmlsec1-nssdisablecallbacks.patch36
-rw-r--r--libxmlsec/xmlsec1-nssmangleciphers.patch1134
-rw-r--r--libxmlsec/xmlsec1-olderlibxml2.patch23
-rw-r--r--libxmlsec/xmlsec1-update-config-sub-and-guess.patch2314
-rw-r--r--libxslt/libxslt-configure.patch79
-rw-r--r--libxslt/libxslt-internal-symbols.patch66
-rw-r--r--libxslt/libxslt-mingw.patch36
-rw-r--r--libxslt/libxslt-win_manifest.patch11
-rw-r--r--libxslt/libxsltversion.mk33
-rw-r--r--libxslt/makefile.mk154
-rw-r--r--libxslt/prj/build.lst3
-rw-r--r--libxslt/prj/d.lst11
-rw-r--r--lingucomponent/config/Linguistic-lingucomponent-hyphenator.xcu14
-rw-r--r--lingucomponent/config/Linguistic-lingucomponent-spellchecker.xcu14
-rw-r--r--lingucomponent/config/Linguistic-lingucomponent-thesaurus.xcu14
-rw-r--r--lingucomponent/inc/makefile.mk47
-rw-r--r--lingucomponent/inc/pch/precompiled_lingucomponent.cxx29
-rw-r--r--lingucomponent/inc/pch/precompiled_lingucomponent.hxx33
-rw-r--r--lingucomponent/prj/build.lst10
-rw-r--r--lingucomponent/prj/d.lst53
-rw-r--r--lingucomponent/source/hyphenator/altlinuxhyph/hyphen/exports.dxp2
-rw-r--r--lingucomponent/source/hyphenator/altlinuxhyph/hyphen/hreg.cxx77
-rw-r--r--lingucomponent/source/hyphenator/altlinuxhyph/hyphen/hyphen.component34
-rwxr-xr-xlingucomponent/source/hyphenator/altlinuxhyph/hyphen/hyphenimp.cxx980
-rwxr-xr-xlingucomponent/source/hyphenator/altlinuxhyph/hyphen/hyphenimp.hxx160
-rw-r--r--lingucomponent/source/hyphenator/altlinuxhyph/hyphen/makefile.mk101
-rw-r--r--lingucomponent/source/languageguessing/altstrfunc.cxx48
-rw-r--r--lingucomponent/source/languageguessing/altstrfunc.hxx41
-rw-r--r--lingucomponent/source/languageguessing/guess.cxx136
-rw-r--r--lingucomponent/source/languageguessing/guess.hxx71
-rw-r--r--lingucomponent/source/languageguessing/guesslang.component34
-rw-r--r--lingucomponent/source/languageguessing/guesslang.cxx477
-rw-r--r--lingucomponent/source/languageguessing/makefile.mk88
-rw-r--r--lingucomponent/source/languageguessing/simpleguesser.cxx234
-rw-r--r--lingucomponent/source/languageguessing/simpleguesser.hxx121
-rwxr-xr-xlingucomponent/source/lingutil/lingutil.cxx293
-rw-r--r--lingucomponent/source/lingutil/lingutil.hxx113
-rw-r--r--lingucomponent/source/lingutil/makefile.mk63
-rw-r--r--lingucomponent/source/spellcheck/macosxspell/MacOSXSpell.component34
-rw-r--r--lingucomponent/source/spellcheck/macosxspell/macreg.cxx78
-rw-r--r--lingucomponent/source/spellcheck/macosxspell/macspellimp.cxx667
-rwxr-xr-xlingucomponent/source/spellcheck/macosxspell/macspellimp.hxx152
-rw-r--r--lingucomponent/source/spellcheck/macosxspell/makefile.mk101
-rw-r--r--lingucomponent/source/spellcheck/spell/exports.dxp2
-rw-r--r--lingucomponent/source/spellcheck/spell/makefile.mk95
-rw-r--r--lingucomponent/source/spellcheck/spell/spell.component34
-rw-r--r--lingucomponent/source/spellcheck/spell/sreg.cxx77
-rw-r--r--lingucomponent/source/spellcheck/spell/sspellimp.cxx695
-rwxr-xr-xlingucomponent/source/spellcheck/spell/sspellimp.hxx142
-rw-r--r--lingucomponent/source/thesaurus/libnth/exports.dxp2
-rw-r--r--lingucomponent/source/thesaurus/libnth/lnth.component34
-rw-r--r--lingucomponent/source/thesaurus/libnth/makefile.mk115
-rw-r--r--lingucomponent/source/thesaurus/libnth/nthesdta.cxx116
-rwxr-xr-xlingucomponent/source/thesaurus/libnth/nthesdta.hxx86
-rwxr-xr-xlingucomponent/source/thesaurus/libnth/nthesimp.cxx784
-rwxr-xr-xlingucomponent/source/thesaurus/libnth/nthesimp.hxx170
-rw-r--r--lingucomponent/source/thesaurus/libnth/ntreg.cxx76
-rw-r--r--linguistic/inc/hyphdta.hxx146
-rw-r--r--linguistic/inc/iprcache.hxx131
-rw-r--r--linguistic/inc/lngprophelp.hxx288
-rw-r--r--linguistic/inc/lngprops.hxx62
-rw-r--r--linguistic/inc/makefile.mk47
-rw-r--r--linguistic/inc/misc.hxx269
-rw-r--r--linguistic/inc/pch/precompiled_linguistic.cxx29
-rw-r--r--linguistic/inc/pch/precompiled_linguistic.hxx32
-rw-r--r--linguistic/inc/spelldta.hxx134
-rw-r--r--linguistic/inc/thesdta.hxx84
-rw-r--r--linguistic/prj/build.lst10
-rw-r--r--linguistic/prj/d.lst11
-rw-r--r--linguistic/qa/complex/linguistic/HangulHanjaConversion.java363
-rw-r--r--linguistic/qa/complex/linguistic/TestDocument.java41
-rw-r--r--linguistic/qa/complex/linguistic/makefile.mk61
-rw-r--r--linguistic/qa/complex/linguistic/testdocuments/hangulhanja.sxcbin0 -> 6366 bytes-rw-r--r--linguistic/qa/unoapi/Test.java51
-rw-r--r--linguistic/qa/unoapi/knownissues.xcl9
-rw-r--r--linguistic/qa/unoapi/lng.sce3
-rw-r--r--linguistic/qa/unoapi/makefile.mk48
-rw-r--r--linguistic/source/convdic.cxx744
-rw-r--r--linguistic/source/convdic.hxx179
-rw-r--r--linguistic/source/convdiclist.cxx716
-rw-r--r--linguistic/source/convdiclist.hxx122
-rw-r--r--linguistic/source/convdicxml.cxx462
-rw-r--r--linguistic/source/convdicxml.hxx134
-rw-r--r--linguistic/source/defs.hxx136
-rwxr-xr-xlinguistic/source/dicimp.cxx1154
-rw-r--r--linguistic/source/dicimp.hxx238
-rw-r--r--linguistic/source/dlistimp.cxx944
-rw-r--r--linguistic/source/dlistimp.hxx151
-rw-r--r--linguistic/source/gciterator.cxx1335
-rw-r--r--linguistic/source/gciterator.hxx209
-rw-r--r--linguistic/source/grammarchecker.cxx305
-rw-r--r--linguistic/source/grammarchecker.hxx108
-rw-r--r--linguistic/source/hhconvdic.cxx169
-rw-r--r--linguistic/source/hhconvdic.hxx78
-rw-r--r--linguistic/source/hyphdsp.cxx736
-rw-r--r--linguistic/source/hyphdsp.hxx172
-rw-r--r--linguistic/source/hyphdta.cxx189
-rw-r--r--linguistic/source/iprcache.cxx284
-rw-r--r--linguistic/source/lng.component46
-rw-r--r--linguistic/source/lngopt.cxx688
-rw-r--r--linguistic/source/lngopt.hxx186
-rw-r--r--linguistic/source/lngprophelp.cxx717
-rw-r--r--linguistic/source/lngreg.cxx140
-rw-r--r--linguistic/source/lngsvcmgr.cxx2027
-rw-r--r--linguistic/source/lngsvcmgr.hxx201
-rw-r--r--linguistic/source/makefile.mk118
-rw-r--r--linguistic/source/misc.cxx1009
-rw-r--r--linguistic/source/misc2.cxx300
-rw-r--r--linguistic/source/spelldsp.cxx871
-rw-r--r--linguistic/source/spelldsp.hxx163
-rw-r--r--linguistic/source/spelldta.cxx366
-rw-r--r--linguistic/source/thesdsp.cxx282
-rw-r--r--linguistic/source/thesdsp.hxx129
-rw-r--r--linguistic/source/thesdta.cxx83
-rw-r--r--linguistic/workben/exports.dxp3
-rw-r--r--linguistic/workben/makefile.mk107
-rw-r--r--linguistic/workben/sprophelp.cxx372
-rw-r--r--linguistic/workben/sprophelp.hxx172
-rw-r--r--linguistic/workben/sreg.cxx85
-rw-r--r--linguistic/workben/sspellimp.cxx512
-rw-r--r--linguistic/workben/sspellimp.hxx177
-rw-r--r--linguistic/xml/linguistic.xml51
-rw-r--r--lpsolve/lp_solve_5.5-windows.patch40
-rw-r--r--lpsolve/lp_solve_5.5.patch94
-rw-r--r--lpsolve/makefile.mk93
-rw-r--r--lpsolve/prj/build.lst3
-rw-r--r--lpsolve/prj/d.lst9
-rw-r--r--lucene/lucene.patch12
-rw-r--r--lucene/makefile.mk69
-rw-r--r--lucene/prj/build.lst3
-rw-r--r--lucene/prj/d.lst3
-rw-r--r--lucene/version.mk27
-rw-r--r--makefile.rc99
-rw-r--r--mdds/makefile.mk66
-rw-r--r--mdds/prj/build.lst3
-rw-r--r--mdds/prj/d.lst5
-rw-r--r--migrationanalysis/Read Me.odtbin0 -> 15137 bytes-rw-r--r--migrationanalysis/no_localization1
-rw-r--r--migrationanalysis/prj/build.lst7
-rw-r--r--migrationanalysis/prj/d.lst1
-rw-r--r--migrationanalysis/src/driver_docs/CreateDriverDocs.wsf221
-rw-r--r--migrationanalysis/src/driver_docs/DocAnalysisRunMacro.vbs438
-rw-r--r--migrationanalysis/src/driver_docs/PAW/_OOoDocAnalysisExcelDriver.xlsbin0 -> 696832 bytes-rw-r--r--migrationanalysis/src/driver_docs/PAW/_OOoDocAnalysisPPTDriver.pptbin0 -> 284672 bytes-rw-r--r--migrationanalysis/src/driver_docs/PAW/_OOoDocAnalysisWordDriver.docbin0 -> 664064 bytes-rw-r--r--migrationanalysis/src/driver_docs/allstrings.ulf2371
-rw-r--r--migrationanalysis/src/driver_docs/makefile.mk127
-rw-r--r--migrationanalysis/src/driver_docs/sources/AnalysisDriver.bas3646
-rw-r--r--migrationanalysis/src/driver_docs/sources/CollectedFiles.cls378
-rw-r--r--migrationanalysis/src/driver_docs/sources/CommonMigrationAnalyser.bas1119
-rw-r--r--migrationanalysis/src/driver_docs/sources/CommonPreparation.bas226
-rw-r--r--migrationanalysis/src/driver_docs/sources/DocumentAnalysis.cls342
-rw-r--r--migrationanalysis/src/driver_docs/sources/FileTypeAssociation.cls56
-rw-r--r--migrationanalysis/src/driver_docs/sources/IssueInfo.cls206
-rw-r--r--migrationanalysis/src/driver_docs/sources/LocalizeResults.bas308
-rw-r--r--migrationanalysis/src/driver_docs/sources/PrepareInfo.cls42
-rw-r--r--migrationanalysis/src/driver_docs/sources/StringDataManager.cls131
-rw-r--r--migrationanalysis/src/driver_docs/sources/Stripped_OOoDocAnalysisExcelDriver.xlsbin0 -> 31232 bytes-rw-r--r--migrationanalysis/src/driver_docs/sources/Stripped_OOoDocAnalysisPPTDriver.pptbin0 -> 64512 bytes-rw-r--r--migrationanalysis/src/driver_docs/sources/Stripped_OOoDocAnalysisWordDriver.docbin0 -> 38912 bytes-rw-r--r--migrationanalysis/src/driver_docs/sources/common_res.bas284
-rw-r--r--migrationanalysis/src/driver_docs/sources/excel/ApplicationSpecific.bas164
-rw-r--r--migrationanalysis/src/driver_docs/sources/excel/MigrationAnalyser.cls2319
-rw-r--r--migrationanalysis/src/driver_docs/sources/excel/Preparation.bas51
-rw-r--r--migrationanalysis/src/driver_docs/sources/excel/SetTextBoxFont.bas50
-rw-r--r--migrationanalysis/src/driver_docs/sources/excel/ThisWorkbook.cls53
-rw-r--r--migrationanalysis/src/driver_docs/sources/excel/excel_res.bas375
-rw-r--r--migrationanalysis/src/driver_docs/sources/powerpoint/ApplicationSpecific.bas176
-rw-r--r--migrationanalysis/src/driver_docs/sources/powerpoint/Loader.bas62
-rw-r--r--migrationanalysis/src/driver_docs/sources/powerpoint/MigrationAnalyser.cls824
-rw-r--r--migrationanalysis/src/driver_docs/sources/powerpoint/Preparation.bas41
-rw-r--r--migrationanalysis/src/driver_docs/sources/powerpoint/Slide1.cls54
-rw-r--r--migrationanalysis/src/driver_docs/sources/powerpoint/powerpoint_res.bas107
-rw-r--r--migrationanalysis/src/driver_docs/sources/results_res.bas613
-rw-r--r--migrationanalysis/src/driver_docs/sources/word/ApplicationSpecific.bas156
-rw-r--r--migrationanalysis/src/driver_docs/sources/word/MigrationAnalyser.cls1522
-rw-r--r--migrationanalysis/src/driver_docs/sources/word/Preparation.bas151
-rw-r--r--migrationanalysis/src/driver_docs/sources/word/ThisDocument.cls52
-rw-r--r--migrationanalysis/src/driver_docs/sources/word/word_res.bas289
-rw-r--r--migrationanalysis/src/driver_docs/ulf2dat.pl153
-rw-r--r--migrationanalysis/src/exe/LaunchDrivers.exebin0 -> 28672 bytes-rw-r--r--migrationanalysis/src/exe/ProAnalysisWizard.exebin0 -> 843776 bytes-rw-r--r--migrationanalysis/src/msokill/StdAfx.cpp35
-rw-r--r--migrationanalysis/src/msokill/StdAfx.h54
-rw-r--r--migrationanalysis/src/msokill/makefile.mk83
-rw-r--r--migrationanalysis/src/msokill/msokill.cpp259
-rw-r--r--migrationanalysis/src/resources/analysis.dtd52
-rw-r--r--migrationanalysis/src/resources/makefile.mk59
-rw-r--r--migrationanalysis/src/resources/results_paw.xltbin0 -> 140800 bytes-rw-r--r--migrationanalysis/src/wizard/Analyse.bas589
-rw-r--r--migrationanalysis/src/wizard/CollectedFiles.cls530
-rw-r--r--migrationanalysis/src/wizard/DocAnalysisWizard.exe.manifest22
-rw-r--r--migrationanalysis/src/wizard/Get Directory Dialog.bas143
-rw-r--r--migrationanalysis/src/wizard/IniSupport.bas269
-rw-r--r--migrationanalysis/src/wizard/LaunchDrivers.vbp42
-rw-r--r--migrationanalysis/src/wizard/LaunchDrivers.vbw1
-rw-r--r--migrationanalysis/src/wizard/OOo3_Analysis.icobin0 -> 295606 bytes-rw-r--r--migrationanalysis/src/wizard/OOo_AnalysisBitmap.pngbin0 -> 8625 bytes-rw-r--r--migrationanalysis/src/wizard/Office10Issues.bas361
-rw-r--r--migrationanalysis/src/wizard/ProAnalysisWizard.vbp65
-rw-r--r--migrationanalysis/src/wizard/RunServer.bas199
-rw-r--r--migrationanalysis/src/wizard/ScanFolders.frm157
-rw-r--r--migrationanalysis/src/wizard/SearchDocs.frm124
-rw-r--r--migrationanalysis/src/wizard/Terminate.frm81
-rw-r--r--migrationanalysis/src/wizard/Utilities.bas552
-rw-r--r--migrationanalysis/src/wizard/Wizard.DCAbin0 -> 3927 bytes-rw-r--r--migrationanalysis/src/wizard/Wizard.Dsr79
-rw-r--r--migrationanalysis/src/wizard/Wizard.FRXbin0 -> 416643 bytes-rw-r--r--migrationanalysis/src/wizard/Wizard.bas651
-rw-r--r--migrationanalysis/src/wizard/Wizard.frm3453
-rw-r--r--migrationanalysis/src/wizard/makefile.mk116
-rw-r--r--migrationanalysis/src/wizard/rcfooter.txt1
-rw-r--r--migrationanalysis/src/wizard/rcheader.txt17
-rw-r--r--migrationanalysis/src/wizard/rctmpl.txt126
-rw-r--r--migrationanalysis/src/wizard/res_defines.h150
-rw-r--r--migrationanalysis/src/wizard/wizard.ulf352
-rw-r--r--migrationanalysis/util/delzip1
-rw-r--r--migrationanalysis/util/makefile.mk53
-rw-r--r--more_fonts/fonts/fc_local.conf24
-rw-r--r--more_fonts/fonts/ttf_dejavu/makefile.mk61
-rw-r--r--more_fonts/fonts/ttf_gentium/makefile.mk61
-rw-r--r--more_fonts/fonts/ttf_liberation/makefile.mk60
-rw-r--r--more_fonts/prj/build.lst5
-rw-r--r--more_fonts/prj/d.lst10
-rwxr-xr-xmoz/README4
-rw-r--r--moz/extractfiles.mk459
-rw-r--r--moz/makefile.mk425
-rw-r--r--moz/patches/arm_build_fix.patch189
-rw-r--r--moz/patches/brokenmakefile.patch13
-rw-r--r--moz/patches/consecutive_ldap_queries.patch13
-rw-r--r--moz/patches/cygwin_paths_in_ldap_sdk.patch12
-rw-r--r--moz/patches/dtoa.patch237
-rwxr-xr-xmoz/patches/embed_manifest.patch142
-rw-r--r--moz/patches/index.txt65
-rw-r--r--moz/patches/link_fontconfig.patch11
-rw-r--r--moz/patches/no_core_abspath_in_nss.patch52
-rw-r--r--moz/patches/respect_disable_pango.patch54
-rw-r--r--moz/patches/wchart_on_msvc8.patch20
-rw-r--r--moz/prj/build.lst4
-rw-r--r--moz/prj/d.lst240
-rw-r--r--moz/seamonkey-source-1.1.14.patch6346
-rw-r--r--moz/zipped/makefile.mk213
-rw-r--r--mysqlc/prj/build.lst3
-rw-r--r--mysqlc/prj/d.lst4
-rw-r--r--mysqlc/source/DataAccess.xcu19
-rw-r--r--mysqlc/source/README65
-rw-r--r--mysqlc/source/delzip0
-rwxr-xr-xmysqlc/source/description.xml29
-rw-r--r--mysqlc/source/description/description_de.txt1
-rwxr-xr-xmysqlc/source/description/description_en-US.txt1
-rw-r--r--mysqlc/source/description/description_es.txt1
-rw-r--r--mysqlc/source/description/description_fr.txt1
-rw-r--r--mysqlc/source/description/description_hu.txt1
-rw-r--r--mysqlc/source/description/description_it.txt1
-rw-r--r--mysqlc/source/description/description_ja.txt1
-rw-r--r--mysqlc/source/description/description_ko.txt1
-rw-r--r--mysqlc/source/description/description_nl.txt1
-rw-r--r--mysqlc/source/description/description_pl.txt1
-rw-r--r--mysqlc/source/description/description_pt-BR.txt1
-rw-r--r--mysqlc/source/description/description_pt.txt1
-rw-r--r--mysqlc/source/description/description_ru.txt1
-rw-r--r--mysqlc/source/description/description_sv.txt1
-rw-r--r--mysqlc/source/description/description_zh-CN.txt1
-rw-r--r--mysqlc/source/description/description_zh-TW.txt1
-rw-r--r--mysqlc/source/exports.dxp3
-rwxr-xr-xmysqlc/source/makefile.mk335
-rw-r--r--mysqlc/source/manifest.xml8
-rw-r--r--mysqlc/source/mysqlc.map8
-rw-r--r--mysqlc/source/mysqlc.xml81
-rw-r--r--mysqlc/source/mysqlc_connection.cxx793
-rw-r--r--mysqlc/source/mysqlc_connection.hxx252
-rw-r--r--mysqlc/source/mysqlc_databasemetadata.cxx2217
-rw-r--r--mysqlc/source/mysqlc_databasemetadata.hxx245
-rw-r--r--mysqlc/source/mysqlc_driver.cxx369
-rw-r--r--mysqlc/source/mysqlc_driver.hxx120
-rw-r--r--mysqlc/source/mysqlc_general.cxx176
-rw-r--r--mysqlc/source/mysqlc_general.hxx68
-rw-r--r--mysqlc/source/mysqlc_preparedstatement.cxx944
-rw-r--r--mysqlc/source/mysqlc_preparedstatement.hxx196
-rw-r--r--mysqlc/source/mysqlc_propertyids.cxx210
-rw-r--r--mysqlc/source/mysqlc_propertyids.hxx136
-rw-r--r--mysqlc/source/mysqlc_resultset.cxx1526
-rw-r--r--mysqlc/source/mysqlc_resultset.hxx337
-rw-r--r--mysqlc/source/mysqlc_resultsetmetadata.cxx468
-rw-r--r--mysqlc/source/mysqlc_resultsetmetadata.hxx123
-rw-r--r--mysqlc/source/mysqlc_services.cxx183
-rw-r--r--mysqlc/source/mysqlc_statement.cxx531
-rw-r--r--mysqlc/source/mysqlc_statement.hxx189
-rw-r--r--mysqlc/source/mysqlc_subcomponent.hxx255
-rw-r--r--mysqlc/source/mysqlc_types.cxx792
-rw-r--r--mysqlc/source/mysqlc_types.hxx56
-rw-r--r--mysqlc/source/registry/data/org/openoffice/Office/DataAccess/Drivers.xcu103
-rw-r--r--mysqlc/version.mk38
-rw-r--r--mysqlcppconn/cppconn_config.pmk33
-rw-r--r--mysqlcppconn/makefile.mk91
-rw-r--r--mysqlcppconn/mysql-connector-cpp.patch385
-rw-r--r--mysqlcppconn/mysql_config.pmk49
-rw-r--r--mysqlcppconn/patches/default_to_protocol_tcp.patch12
-rw-r--r--mysqlcppconn/prj/build.lst3
-rw-r--r--mysqlcppconn/prj/d.lst15
-rw-r--r--mythes/makefile.mk114
-rw-r--r--mythes/mythes-1.2.0-makefile-mk.diff94
-rw-r--r--mythes/mythes-1.2.0-vanilla-th-gen-idx.patch97
-rw-r--r--mythes/prj/build.lst3
-rw-r--r--mythes/prj/d.lst7
-rw-r--r--neon/makefile.mk91
-rw-r--r--neon/neon.patch927
-rw-r--r--neon/neon_exports_unix.patch291
-rw-r--r--neon/neon_exports_win.patch297
-rwxr-xr-xneon/prj/build.lst3
-rw-r--r--neon/prj/d.lst8
-rw-r--r--neon/version.mk37
-rw-r--r--np_sdk/mozsrc/LEGAL43
-rw-r--r--np_sdk/mozsrc/LICENSE567
-rw-r--r--np_sdk/mozsrc/README2
-rw-r--r--np_sdk/mozsrc/jri.h689
-rw-r--r--np_sdk/mozsrc/jri_md.h572
-rw-r--r--np_sdk/mozsrc/jritypes.h242
-rw-r--r--np_sdk/mozsrc/makefile.mk59
-rw-r--r--np_sdk/mozsrc/npapi.h610
-rw-r--r--np_sdk/mozsrc/npunix.c505
-rw-r--r--np_sdk/mozsrc/npupp.h1292
-rw-r--r--np_sdk/mozsrc/npwin.cpp369
-rw-r--r--np_sdk/prj/build.lst3
-rw-r--r--np_sdk/prj/d.lst7
-rw-r--r--nss/makefile.mk182
-rw-r--r--nss/nss.patch191
-rwxr-xr-xnss/nss.patch.mingw167
-rw-r--r--nss/nss_macosx.patch12
-rw-r--r--nss/prj/build.lst3
-rwxr-xr-xnss/prj/d.lst31
-rwxr-xr-xnss/readme.txt75
-rw-r--r--o3tl/inc/o3tl/cow_wrapper.hxx328
-rw-r--r--o3tl/inc/o3tl/heap_ptr.hxx311
-rw-r--r--o3tl/inc/o3tl/lazy_update.hxx271
-rw-r--r--o3tl/inc/o3tl/range.hxx189
-rw-r--r--o3tl/inc/o3tl/vector_pool.hxx132
-rw-r--r--o3tl/prj/build.lst5
-rw-r--r--o3tl/prj/d.lst2
-rw-r--r--o3tl/qa/cow_wrapper_clients.cxx180
-rw-r--r--o3tl/qa/cow_wrapper_clients.hxx128
-rw-r--r--o3tl/qa/export.map34
-rw-r--r--o3tl/qa/makefile.mk84
-rw-r--r--o3tl/qa/test-cow_wrapper.cxx129
-rw-r--r--o3tl/qa/test-heap_ptr.cxx167
-rw-r--r--o3tl/qa/test-range.cxx236
-rw-r--r--o3tl/qa/test-vector_pool.cxx71
-rw-r--r--odk/cfgWin.js981
-rw-r--r--odk/configure.pl795
-rw-r--r--odk/docs/common/ref/idl.css130
-rw-r--r--odk/docs/cpp/ref/cpp.css127
-rw-r--r--odk/docs/images/arrow-1.gifbin0 -> 98 bytes-rw-r--r--odk/docs/images/arrow-2.gifbin0 -> 68 bytes-rw-r--r--odk/docs/images/arrow-3.gifbin0 -> 98 bytes-rw-r--r--odk/docs/images/bg_table.gifbin0 -> 42 bytes-rw-r--r--odk/docs/images/bg_table.pngbin0 -> 128 bytes-rwxr-xr-xodk/docs/images/bg_table2.gifbin0 -> 44 bytes-rw-r--r--odk/docs/images/bg_table2.pngbin0 -> 128 bytes-rwxr-xr-xodk/docs/images/bg_table3.gifbin0 -> 44 bytes-rw-r--r--odk/docs/images/bg_table3.pngbin0 -> 128 bytes-rw-r--r--odk/docs/images/bluball.gifbin0 -> 103 bytes-rw-r--r--odk/docs/images/nada.gifbin0 -> 49 bytes-rw-r--r--odk/docs/images/nav_down.pngbin0 -> 224 bytes-rw-r--r--odk/docs/images/nav_home.pngbin0 -> 471 bytes-rw-r--r--odk/docs/images/nav_left.pngbin0 -> 223 bytes-rw-r--r--odk/docs/images/nav_right.pngbin0 -> 225 bytes-rw-r--r--odk/docs/images/nav_up.pngbin0 -> 211 bytes-rw-r--r--odk/docs/images/odk-footer-logo.gifbin0 -> 850 bytes-rw-r--r--odk/docs/images/ooo-main-app_32.pngbin0 -> 2429 bytes-rw-r--r--odk/docs/images/orc-main-app_32.pngbin0 -> 2496 bytes-rw-r--r--odk/docs/images/sdk_head-1.pngbin0 -> 11767 bytes-rw-r--r--odk/docs/images/sdk_head-2.pngbin0 -> 175 bytes-rw-r--r--odk/docs/images/sdk_line-1.gifbin0 -> 43 bytes-rw-r--r--odk/docs/images/sdk_line-2.gifbin0 -> 113 bytes-rw-r--r--odk/docs/install.html420
-rw-r--r--odk/docs/notsupported.html4
-rw-r--r--odk/docs/sdk_styles.css130
-rw-r--r--odk/docs/tools.html1094
-rw-r--r--odk/examples/CLI/CSharp/Spreadsheet/GeneralTableSample.cs206
-rw-r--r--odk/examples/CLI/CSharp/Spreadsheet/Makefile79
-rw-r--r--odk/examples/CLI/CSharp/Spreadsheet/SpreadsheetDocHelper.cs344
-rw-r--r--odk/examples/CLI/CSharp/Spreadsheet/SpreadsheetSample.cs1478
-rw-r--r--odk/examples/CLI/CSharp/Spreadsheet/ViewSample.cs165
-rw-r--r--odk/examples/CLI/VB.NET/WriterDemo/Makefile61
-rw-r--r--odk/examples/CLI/VB.NET/WriterDemo/WriterDemo.vb242
-rw-r--r--odk/examples/CLI/makefile.mk72
-rw-r--r--odk/examples/DevelopersGuide/Accessibility/ConnectionTask.java208
-rw-r--r--odk/examples/DevelopersGuide/Accessibility/EventHandler.java447
-rw-r--r--odk/examples/DevelopersGuide/Accessibility/EventListenerProxy.java232
-rw-r--r--odk/examples/DevelopersGuide/Accessibility/GraphicalDisplay.java189
-rw-r--r--odk/examples/DevelopersGuide/Accessibility/IAccessibleObjectDisplay.java46
-rw-r--r--odk/examples/DevelopersGuide/Accessibility/Makefile113
-rw-r--r--odk/examples/DevelopersGuide/Accessibility/MessageArea.java133
-rw-r--r--odk/examples/DevelopersGuide/Accessibility/NameProvider.java290
-rw-r--r--odk/examples/DevelopersGuide/Accessibility/RegistrationThread.java156
-rw-r--r--odk/examples/DevelopersGuide/Accessibility/SSR.java171
-rw-r--r--odk/examples/DevelopersGuide/Accessibility/TextualDisplay.java230
-rw-r--r--odk/examples/DevelopersGuide/Accessibility/makefile.mk73
-rw-r--r--odk/examples/DevelopersGuide/BasicAndDialogs/CreatingDialogs/CreatingDialogs.odtbin0 -> 8654 bytes-rw-r--r--odk/examples/DevelopersGuide/BasicAndDialogs/CreatingDialogs/Makefile139
-rw-r--r--odk/examples/DevelopersGuide/BasicAndDialogs/CreatingDialogs/SampleDialog.java275
-rw-r--r--odk/examples/DevelopersGuide/BasicAndDialogs/FirstStepsBasic.odtbin0 -> 18560 bytes-rw-r--r--odk/examples/DevelopersGuide/BasicAndDialogs/ToolkitControls/Makefile126
-rw-r--r--odk/examples/DevelopersGuide/BasicAndDialogs/ToolkitControls/ToolkitControls.odtbin0 -> 7793 bytes-rw-r--r--odk/examples/DevelopersGuide/BasicAndDialogs/ToolkitControls/ToolkitControls/FileDialog.xba73
-rw-r--r--odk/examples/DevelopersGuide/BasicAndDialogs/ToolkitControls/ToolkitControls/FileDialogDlg.xdl12
-rw-r--r--odk/examples/DevelopersGuide/BasicAndDialogs/ToolkitControls/ToolkitControls/MultiPage.xba286
-rw-r--r--odk/examples/DevelopersGuide/BasicAndDialogs/ToolkitControls/ToolkitControls/MultiPageDlg.xdl75
-rw-r--r--odk/examples/DevelopersGuide/BasicAndDialogs/ToolkitControls/ToolkitControls/ProgressBar.xba76
-rw-r--r--odk/examples/DevelopersGuide/BasicAndDialogs/ToolkitControls/ToolkitControls/ProgressBarDlg.xdl11
-rw-r--r--odk/examples/DevelopersGuide/BasicAndDialogs/ToolkitControls/ToolkitControls/ScrollBar.xba86
-rw-r--r--odk/examples/DevelopersGuide/BasicAndDialogs/ToolkitControls/ToolkitControls/ScrollBarDlg.xdl13
-rw-r--r--odk/examples/DevelopersGuide/BasicAndDialogs/ToolkitControls/ToolkitControls/dialog.xlb8
-rw-r--r--odk/examples/DevelopersGuide/BasicAndDialogs/ToolkitControls/ToolkitControls/script.xlb8
-rw-r--r--odk/examples/DevelopersGuide/BasicAndDialogs/makefile.mk84
-rw-r--r--odk/examples/DevelopersGuide/Charts/AddInChart.odsbin0 -> 18045 bytes-rw-r--r--odk/examples/DevelopersGuide/Charts/CalcHelper.java412
-rw-r--r--odk/examples/DevelopersGuide/Charts/ChartHelper.java261
-rw-r--r--odk/examples/DevelopersGuide/Charts/ChartInCalc.java424
-rw-r--r--odk/examples/DevelopersGuide/Charts/ChartInDraw.java308
-rw-r--r--odk/examples/DevelopersGuide/Charts/ChartInWriter.java178
-rw-r--r--odk/examples/DevelopersGuide/Charts/Helper.java170
-rw-r--r--odk/examples/DevelopersGuide/Charts/JavaSampleChartAddIn.java476
-rw-r--r--odk/examples/DevelopersGuide/Charts/ListenAtCalcRangeInDraw.java211
-rw-r--r--odk/examples/DevelopersGuide/Charts/Makefile198
-rw-r--r--odk/examples/DevelopersGuide/Charts/SelectionChangeListener.java219
-rw-r--r--odk/examples/DevelopersGuide/Charts/bullet.gifbin0 -> 335 bytes-rw-r--r--odk/examples/DevelopersGuide/Charts/makefile.mk75
-rw-r--r--odk/examples/DevelopersGuide/Components/Addons/JobsAddon/Addons.xcu81
-rw-r--r--odk/examples/DevelopersGuide/Components/Addons/JobsAddon/AsyncJob.java426
-rw-r--r--odk/examples/DevelopersGuide/Components/Addons/JobsAddon/Jobs.xcu27
-rw-r--r--odk/examples/DevelopersGuide/Components/Addons/JobsAddon/Makefile136
-rw-r--r--odk/examples/DevelopersGuide/Components/Addons/ProtocolHandlerAddon_cpp/Addons.xcu220
-rw-r--r--odk/examples/DevelopersGuide/Components/Addons/ProtocolHandlerAddon_cpp/Makefile148
-rw-r--r--odk/examples/DevelopersGuide/Components/Addons/ProtocolHandlerAddon_cpp/ProtocolHandler.xcu11
-rw-r--r--odk/examples/DevelopersGuide/Components/Addons/ProtocolHandlerAddon_cpp/addon.cxx250
-rw-r--r--odk/examples/DevelopersGuide/Components/Addons/ProtocolHandlerAddon_cpp/addon.hxx125
-rw-r--r--odk/examples/DevelopersGuide/Components/Addons/ProtocolHandlerAddon_cpp/component.cxx131
-rw-r--r--odk/examples/DevelopersGuide/Components/Addons/ProtocolHandlerAddon_java/Addons.xcu220
-rw-r--r--odk/examples/DevelopersGuide/Components/Addons/ProtocolHandlerAddon_java/Makefile138
-rw-r--r--odk/examples/DevelopersGuide/Components/Addons/ProtocolHandlerAddon_java/ProtocolHandler.xcu10
-rw-r--r--odk/examples/DevelopersGuide/Components/Addons/ProtocolHandlerAddon_java/ProtocolHandlerAddon.java283
-rw-r--r--odk/examples/DevelopersGuide/Components/CppComponent/Makefile220
-rw-r--r--odk/examples/DevelopersGuide/Components/CppComponent/SimpleComponent.odtbin0 -> 8841 bytes-rw-r--r--odk/examples/DevelopersGuide/Components/CppComponent/TestCppComponent.cxx89
-rw-r--r--odk/examples/DevelopersGuide/Components/CppComponent/service1_impl.cxx309
-rw-r--r--odk/examples/DevelopersGuide/Components/CppComponent/service2_impl.cxx225
-rw-r--r--odk/examples/DevelopersGuide/Components/CppComponent/some.idl54
-rw-r--r--odk/examples/DevelopersGuide/Components/JavaComponent/Makefile204
-rw-r--r--odk/examples/DevelopersGuide/Components/JavaComponent/SomethingA.idl46
-rw-r--r--odk/examples/DevelopersGuide/Components/JavaComponent/SomethingB.idl46
-rw-r--r--odk/examples/DevelopersGuide/Components/JavaComponent/TestComponentA.java71
-rw-r--r--odk/examples/DevelopersGuide/Components/JavaComponent/TestComponentB.java100
-rw-r--r--odk/examples/DevelopersGuide/Components/JavaComponent/TestJavaComponent.java143
-rw-r--r--odk/examples/DevelopersGuide/Components/JavaComponent/TestServiceProvider.java71
-rw-r--r--odk/examples/DevelopersGuide/Components/JavaComponent/XSomethingA.idl48
-rw-r--r--odk/examples/DevelopersGuide/Components/JavaComponent/XSomethingB.idl48
-rw-r--r--odk/examples/DevelopersGuide/Components/SimpleLicense/LicenseTest.idl50
-rw-r--r--odk/examples/DevelopersGuide/Components/SimpleLicense/LicenseTest.java171
-rw-r--r--odk/examples/DevelopersGuide/Components/SimpleLicense/Makefile170
-rw-r--r--odk/examples/DevelopersGuide/Components/SimpleLicense/description.xml12
-rw-r--r--odk/examples/DevelopersGuide/Components/SimpleLicense/registration/license_de.txt1
-rw-r--r--odk/examples/DevelopersGuide/Components/SimpleLicense/registration/license_en_US.txt1
-rw-r--r--odk/examples/DevelopersGuide/Components/Thumbs/Makefile81
-rw-r--r--odk/examples/DevelopersGuide/Components/Thumbs/org/openoffice/comp/test/ImageShrink.java158
-rw-r--r--odk/examples/DevelopersGuide/Components/Thumbs/org/openoffice/comp/test/Makefile128
-rw-r--r--odk/examples/DevelopersGuide/Components/Thumbs/org/openoffice/comp/test/Thumbs.java79
-rw-r--r--odk/examples/DevelopersGuide/Components/Thumbs/org/openoffice/test/ImageShrink.idl46
-rw-r--r--odk/examples/DevelopersGuide/Components/Thumbs/org/openoffice/test/Makefile73
-rw-r--r--odk/examples/DevelopersGuide/Components/Thumbs/org/openoffice/test/XImageShrink.idl53
-rw-r--r--odk/examples/DevelopersGuide/Components/Thumbs/org/openoffice/test/XImageShrinkFilter.idl50
-rw-r--r--odk/examples/DevelopersGuide/Components/Thumbs/thumbs.mk27
-rw-r--r--odk/examples/DevelopersGuide/Components/dialogcomponent/DialogComponent.java324
-rw-r--r--odk/examples/DevelopersGuide/Components/dialogcomponent/DialogComponent.odtbin0 -> 11902 bytes-rw-r--r--odk/examples/DevelopersGuide/Components/dialogcomponent/Makefile177
-rw-r--r--odk/examples/DevelopersGuide/Components/dialogcomponent/TestDialogHandler.idl47
-rw-r--r--odk/examples/DevelopersGuide/Components/dialogcomponent/XTestDialogHandler.idl53
-rw-r--r--odk/examples/DevelopersGuide/Components/makefile.mk123
-rw-r--r--odk/examples/DevelopersGuide/Config/ConfigExamples.java1123
-rw-r--r--odk/examples/DevelopersGuide/Config/Makefile99
-rw-r--r--odk/examples/DevelopersGuide/Config/makefile.mk64
-rw-r--r--odk/examples/DevelopersGuide/Database/CodeSamples.java356
-rw-r--r--odk/examples/DevelopersGuide/Database/DriverSkeleton/How_to_write_my_own_driver.txt25
-rw-r--r--odk/examples/DevelopersGuide/Database/DriverSkeleton/Makefile150
-rw-r--r--odk/examples/DevelopersGuide/Database/DriverSkeleton/OSubComponent.hxx252
-rw-r--r--odk/examples/DevelopersGuide/Database/DriverSkeleton/OTypeInfo.hxx98
-rw-r--r--odk/examples/DevelopersGuide/Database/DriverSkeleton/SConnection.cxx402
-rw-r--r--odk/examples/DevelopersGuide/Database/DriverSkeleton/SConnection.hxx155
-rw-r--r--odk/examples/DevelopersGuide/Database/DriverSkeleton/SDatabaseMetaData.cxx887
-rw-r--r--odk/examples/DevelopersGuide/Database/DriverSkeleton/SDatabaseMetaData.hxx218
-rw-r--r--odk/examples/DevelopersGuide/Database/DriverSkeleton/SDriver.cxx210
-rw-r--r--odk/examples/DevelopersGuide/Database/DriverSkeleton/SDriver.hxx85
-rw-r--r--odk/examples/DevelopersGuide/Database/DriverSkeleton/SPreparedStatement.cxx388
-rw-r--r--odk/examples/DevelopersGuide/Database/DriverSkeleton/SPreparedStatement.hxx146
-rw-r--r--odk/examples/DevelopersGuide/Database/DriverSkeleton/SResultSet.cxx873
-rw-r--r--odk/examples/DevelopersGuide/Database/DriverSkeleton/SResultSet.hxx218
-rw-r--r--odk/examples/DevelopersGuide/Database/DriverSkeleton/SResultSetMetaData.cxx169
-rw-r--r--odk/examples/DevelopersGuide/Database/DriverSkeleton/SResultSetMetaData.hxx90
-rw-r--r--odk/examples/DevelopersGuide/Database/DriverSkeleton/SServices.cxx180
-rw-r--r--odk/examples/DevelopersGuide/Database/DriverSkeleton/SStatement.cxx368
-rw-r--r--odk/examples/DevelopersGuide/Database/DriverSkeleton/SStatement.hxx175
-rw-r--r--odk/examples/DevelopersGuide/Database/DriverSkeleton/propertyids.cxx182
-rw-r--r--odk/examples/DevelopersGuide/Database/DriverSkeleton/propertyids.hxx161
-rw-r--r--odk/examples/DevelopersGuide/Database/Makefile134
-rw-r--r--odk/examples/DevelopersGuide/Database/OpenQuery.java162
-rw-r--r--odk/examples/DevelopersGuide/Database/RowSet.java241
-rw-r--r--odk/examples/DevelopersGuide/Database/RowSetEventListener.java77
-rw-r--r--odk/examples/DevelopersGuide/Database/Sales.java250
-rw-r--r--odk/examples/DevelopersGuide/Database/SalesMan.java145
-rw-r--r--odk/examples/DevelopersGuide/Database/makefile.mk95
-rw-r--r--odk/examples/DevelopersGuide/Database/sdbcx.java420
-rw-r--r--odk/examples/DevelopersGuide/Drawing/ChangeOrderDemo.java115
-rw-r--r--odk/examples/DevelopersGuide/Drawing/ControlAndSelectDemo.java143
-rw-r--r--odk/examples/DevelopersGuide/Drawing/CustomShowDemo.java173
-rw-r--r--odk/examples/DevelopersGuide/Drawing/DrawViewDemo.java141
-rw-r--r--odk/examples/DevelopersGuide/Drawing/DrawingDemo.java426
-rw-r--r--odk/examples/DevelopersGuide/Drawing/FillAndLineStyleDemo.java133
-rw-r--r--odk/examples/DevelopersGuide/Drawing/GluePointDemo.java188
-rw-r--r--odk/examples/DevelopersGuide/Drawing/GraphicExportDemo.java152
-rw-r--r--odk/examples/DevelopersGuide/Drawing/Helper.java83
-rw-r--r--odk/examples/DevelopersGuide/Drawing/LayerDemo.java156
-rw-r--r--odk/examples/DevelopersGuide/Drawing/Makefile175
-rw-r--r--odk/examples/DevelopersGuide/Drawing/ObjectTransformationDemo.java133
-rw-r--r--odk/examples/DevelopersGuide/Drawing/Organigram.java191
-rw-r--r--odk/examples/DevelopersGuide/Drawing/PageHelper.java223
-rw-r--r--odk/examples/DevelopersGuide/Drawing/PresentationDemo.java239
-rw-r--r--odk/examples/DevelopersGuide/Drawing/ShapeHelper.java145
-rw-r--r--odk/examples/DevelopersGuide/Drawing/SimplePresentation.odpbin0 -> 74753 bytes-rw-r--r--odk/examples/DevelopersGuide/Drawing/StyleDemo.java174
-rw-r--r--odk/examples/DevelopersGuide/Drawing/TextDemo.java155
-rw-r--r--odk/examples/DevelopersGuide/Drawing/makefile.mk81
-rw-r--r--odk/examples/DevelopersGuide/Extensions/DialogWithHelp/Addons.xcu58
-rw-r--r--odk/examples/DevelopersGuide/Extensions/DialogWithHelp/DialogWithHelp/Dialog1.xdl10
-rw-r--r--odk/examples/DevelopersGuide/Extensions/DialogWithHelp/DialogWithHelp/Module1.xba16
-rw-r--r--odk/examples/DevelopersGuide/Extensions/DialogWithHelp/DialogWithHelp/dialog.xlb5
-rw-r--r--odk/examples/DevelopersGuide/Extensions/DialogWithHelp/DialogWithHelp/script.xlb5
-rw-r--r--odk/examples/DevelopersGuide/Extensions/DialogWithHelp/META-INF/manifest.xml6
-rw-r--r--odk/examples/DevelopersGuide/Extensions/DialogWithHelp/Makefile118
-rw-r--r--odk/examples/DevelopersGuide/Extensions/DialogWithHelp/description.xml8
-rw-r--r--odk/examples/DevelopersGuide/Extensions/DialogWithHelp/help/de/com.foocorp.foo-ext/page1.xhp73
-rw-r--r--odk/examples/DevelopersGuide/Extensions/DialogWithHelp/help/de/com.foocorp.foo-ext/page2.xhp27
-rw-r--r--odk/examples/DevelopersGuide/Extensions/DialogWithHelp/help/de/com.foocorp.foo-ext/subfolder/anotherpage.xhp100
-rw-r--r--odk/examples/DevelopersGuide/Extensions/DialogWithHelp/help/en/com.foocorp.foo-ext/page1.xhp73
-rw-r--r--odk/examples/DevelopersGuide/Extensions/DialogWithHelp/help/en/com.foocorp.foo-ext/page2.xhp26
-rw-r--r--odk/examples/DevelopersGuide/Extensions/DialogWithHelp/help/en/com.foocorp.foo-ext/subfolder/anotherpage.xhp100
-rw-r--r--odk/examples/DevelopersGuide/FirstSteps/FirstConnection.java58
-rw-r--r--odk/examples/DevelopersGuide/FirstSteps/FirstLoadComponent.java329
-rw-r--r--odk/examples/DevelopersGuide/FirstSteps/FirstUnoContact.java58
-rw-r--r--odk/examples/DevelopersGuide/FirstSteps/HelloTextTableShape.java462
-rw-r--r--odk/examples/DevelopersGuide/FirstSteps/Makefile101
-rw-r--r--odk/examples/DevelopersGuide/FirstSteps/build_FirstUnoContact.xml64
-rw-r--r--odk/examples/DevelopersGuide/FirstSteps/makefile.mk67
-rw-r--r--odk/examples/DevelopersGuide/Forms/BooleanValidator.java85
-rw-r--r--odk/examples/DevelopersGuide/Forms/ButtonOperator.java223
-rw-r--r--odk/examples/DevelopersGuide/Forms/ComponentTreeTraversal.java91
-rw-r--r--odk/examples/DevelopersGuide/Forms/ControlLock.java219
-rw-r--r--odk/examples/DevelopersGuide/Forms/ControlValidation.java100
-rw-r--r--odk/examples/DevelopersGuide/Forms/ControlValidator.java60
-rw-r--r--odk/examples/DevelopersGuide/Forms/DataAwareness.java932
-rw-r--r--odk/examples/DevelopersGuide/Forms/DateValidator.java102
-rw-r--r--odk/examples/DevelopersGuide/Forms/DocumentBasedExample.java228
-rw-r--r--odk/examples/DevelopersGuide/Forms/DocumentHelper.java320
-rw-r--r--odk/examples/DevelopersGuide/Forms/DocumentType.java59
-rw-r--r--odk/examples/DevelopersGuide/Forms/DocumentViewHelper.java230
-rw-r--r--odk/examples/DevelopersGuide/Forms/FLTools.java270
-rw-r--r--odk/examples/DevelopersGuide/Forms/FormLayer.java294
-rw-r--r--odk/examples/DevelopersGuide/Forms/GridFieldValidator.java176
-rw-r--r--odk/examples/DevelopersGuide/Forms/HsqlDatabase.java256
-rw-r--r--odk/examples/DevelopersGuide/Forms/InteractionRequest.java76
-rw-r--r--odk/examples/DevelopersGuide/Forms/KeyGenerator.java432
-rw-r--r--odk/examples/DevelopersGuide/Forms/ListSelectionValidator.java69
-rw-r--r--odk/examples/DevelopersGuide/Forms/Makefile197
-rw-r--r--odk/examples/DevelopersGuide/Forms/NumericValidator.java89
-rw-r--r--odk/examples/DevelopersGuide/Forms/ProgrammaticScriptAssignment.odtbin0 -> 19198 bytes-rw-r--r--odk/examples/DevelopersGuide/Forms/RowSet.java290
-rw-r--r--odk/examples/DevelopersGuide/Forms/SalesFilter.java512
-rw-r--r--odk/examples/DevelopersGuide/Forms/SingleControlValidation.java187
-rw-r--r--odk/examples/DevelopersGuide/Forms/SpreadsheetDocument.java131
-rw-r--r--odk/examples/DevelopersGuide/Forms/SpreadsheetValueBinding.java136
-rw-r--r--odk/examples/DevelopersGuide/Forms/SpreadsheetView.java76
-rw-r--r--odk/examples/DevelopersGuide/Forms/TableCellTextBinding.java210
-rw-r--r--odk/examples/DevelopersGuide/Forms/TextValidator.java89
-rw-r--r--odk/examples/DevelopersGuide/Forms/TimeValidator.java94
-rw-r--r--odk/examples/DevelopersGuide/Forms/UNO.java90
-rw-r--r--odk/examples/DevelopersGuide/Forms/URLHelper.java72
-rw-r--r--odk/examples/DevelopersGuide/Forms/ValueBinding.java88
-rw-r--r--odk/examples/DevelopersGuide/Forms/WaitForInput.java64
-rw-r--r--odk/examples/DevelopersGuide/Forms/makefile.mk97
-rw-r--r--odk/examples/DevelopersGuide/GUI/DialogDocument.java145
-rw-r--r--odk/examples/DevelopersGuide/GUI/ImageControlSample.java163
-rw-r--r--odk/examples/DevelopersGuide/GUI/Makefile142
-rw-r--r--odk/examples/DevelopersGuide/GUI/MessageBox.java245
-rw-r--r--odk/examples/DevelopersGuide/GUI/RoadmapItemStateChangeListener.java68
-rw-r--r--odk/examples/DevelopersGuide/GUI/SystemDialog.java186
-rw-r--r--odk/examples/DevelopersGuide/GUI/UnoDialogSample.java1482
-rw-r--r--odk/examples/DevelopersGuide/GUI/UnoDialogSample2.java264
-rw-r--r--odk/examples/DevelopersGuide/GUI/UnoMenu.java167
-rw-r--r--odk/examples/DevelopersGuide/GUI/UnoMenu2.java95
-rw-r--r--odk/examples/DevelopersGuide/GUI/oologo.gifbin0 -> 2563 bytes-rw-r--r--odk/examples/DevelopersGuide/OfficeBean/Makefile89
-rw-r--r--odk/examples/DevelopersGuide/OfficeBean/OOoBeanViewer.java407
-rw-r--r--odk/examples/DevelopersGuide/OfficeBean/OfficeIconColor16.jpgbin0 -> 321 bytes-rw-r--r--odk/examples/DevelopersGuide/OfficeBean/OfficeIconColor32.jpgbin0 -> 569 bytes-rw-r--r--odk/examples/DevelopersGuide/OfficeBean/OfficeIconMono16.jpgbin0 -> 321 bytes-rw-r--r--odk/examples/DevelopersGuide/OfficeBean/OfficeIconMono32.jpgbin0 -> 569 bytes-rw-r--r--odk/examples/DevelopersGuide/OfficeBean/makefile.mk68
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/Clipboard/Clipboard.java229
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/Clipboard/ClipboardListener.java55
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/Clipboard/ClipboardOwner.java60
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/Clipboard/Makefile99
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/Clipboard/TextTransferable.java85
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/ContextMenuInterceptor.java256
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/CustomizeView.java298
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/Desk.java96
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/DocumentView.java430
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/FunctionHelper.java1060
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/IOnewayLink.java70
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/IShutdownListener.java47
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/Install.txt10
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/Interceptor.java672
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/JavaWindowPeerFake.java107
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/Makefile128
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/NativeView.java182
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/OfficeConnect.java205
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/OnewayExecutor.java240
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/StatusListener.java478
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/StatusView.java266
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/ViewContainer.java269
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/nativelib/unix/Makefile73
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/nativelib/unix/nativeview.c111
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/nativelib/unix/nativeview.h63
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/nativelib/windows/Makefile78
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/nativelib/windows/nativeview.c178
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/nativelib/windows/nativeview.def3
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/nativelib/windows/nativeview.h63
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DisableCommands/DisableCommandsTest.java411
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DisableCommands/Makefile92
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/AsciiFilter/AsciiReplaceFilter.java733
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/AsciiFilter/FilterOptions.java230
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/AsciiFilter/Makefile138
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/AsciiFilter/TypeDetection.xcu29
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/FlatXmlFilterDetection/FlatXmlTypeDetection.xcu71
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/FlatXmlFilterDetection/Makefile150
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/FlatXmlFilterDetection/fdcomp.cxx109
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/FlatXmlFilterDetection/filterdetect.cxx254
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/FlatXmlFilterDetection/filterdetect.hxx118
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/FlatXmlFilter_cpp/FlatXml.cxx373
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/FlatXmlFilter_cpp/FlatXmlFilter_cpp.uno.xml59
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/FlatXmlFilter_cpp/FlatXmlFilter_cpp.xcu86
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/FlatXmlFilter_cpp/Makefile148
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/FlatXmlFilter_java/FlatXml.java273
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/FlatXmlFilter_java/FlatXmlFilter_java.xcu86
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/FlatXmlFilter_java/Makefile141
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/Linguistic/LinguisticExamples.java368
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/Linguistic/Makefile237
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/Linguistic/OneInstanceFactory.java155
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/Linguistic/PropChgHelper.java194
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/Linguistic/PropChgHelper_Hyph.java86
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/Linguistic/PropChgHelper_Spell.java110
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/Linguistic/SampleHyphenator.java548
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/Linguistic/SampleSpellChecker.java491
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/Linguistic/SampleThesaurus.java328
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/Linguistic/XHyphenatedWord_impl.java97
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/Linguistic/XMeaning_impl.java69
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/Linguistic/XPossibleHyphens_impl.java89
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/Linguistic/XSpellAlternatives_impl.java92
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/Makefile106
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/MenuElement.java56
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/Number_Formats.java253
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/OfficeConnect.java184
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/PathSettings/Makefile92
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/PathSettings/PathSettingsTest.java168
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/PathSubstitution/Makefile92
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/PathSubstitution/PathSubstitutionTest.java119
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/TerminationTest/Makefile97
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/TerminationTest/TerminateListener.java60
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/TerminationTest/TerminationTest.java101
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/makefile.mk180
-rw-r--r--odk/examples/DevelopersGuide/ProfUNO/CppBinding/Makefile140
-rw-r--r--odk/examples/DevelopersGuide/ProfUNO/CppBinding/office_connect.cxx104
-rw-r--r--odk/examples/DevelopersGuide/ProfUNO/CppBinding/office_connect.ini2
-rw-r--r--odk/examples/DevelopersGuide/ProfUNO/CppBinding/office_connectrc2
-rw-r--r--odk/examples/DevelopersGuide/ProfUNO/CppBinding/string_samples.cxx84
-rw-r--r--odk/examples/DevelopersGuide/ProfUNO/InterprocessConn/ConnectionAwareClient.java260
-rw-r--r--odk/examples/DevelopersGuide/ProfUNO/InterprocessConn/Makefile86
-rw-r--r--odk/examples/DevelopersGuide/ProfUNO/InterprocessConn/UrlResolver.java111
-rw-r--r--odk/examples/DevelopersGuide/ProfUNO/Lifetime/Makefile113
-rw-r--r--odk/examples/DevelopersGuide/ProfUNO/Lifetime/MyUnoObject.java60
-rw-r--r--odk/examples/DevelopersGuide/ProfUNO/Lifetime/object_lifetime.cxx68
-rw-r--r--odk/examples/DevelopersGuide/ProfUNO/SimpleBootstrap_cpp/Makefile101
-rw-r--r--odk/examples/DevelopersGuide/ProfUNO/SimpleBootstrap_cpp/SimpleBootstrap_cpp.cxx102
-rw-r--r--odk/examples/DevelopersGuide/ProfUNO/SimpleBootstrap_java/Makefile91
-rw-r--r--odk/examples/DevelopersGuide/ProfUNO/SimpleBootstrap_java/SimpleBootstrap_java.java76
-rw-r--r--odk/examples/DevelopersGuide/ProfUNO/SimpleBootstrap_java/manifest.mf4
-rw-r--r--odk/examples/DevelopersGuide/ProfUNO/makefile.mk95
-rw-r--r--odk/examples/DevelopersGuide/ScriptingFramework/SayHello/META-INF/manifest.xml5
-rw-r--r--odk/examples/DevelopersGuide/ScriptingFramework/SayHello/Makefile129
-rw-r--r--odk/examples/DevelopersGuide/ScriptingFramework/SayHello/SayHello.odtbin0 -> 8874 bytes-rw-r--r--odk/examples/DevelopersGuide/ScriptingFramework/SayHello/SayHello/SayHello.java46
-rw-r--r--odk/examples/DevelopersGuide/ScriptingFramework/SayHello/SayHello/parcel-descriptor.xml17
-rwxr-xr-xodk/examples/DevelopersGuide/ScriptingFramework/SayHello/build.xml81
-rw-r--r--odk/examples/DevelopersGuide/ScriptingFramework/ScriptSelector/META-INF/manifest.xml5
-rw-r--r--odk/examples/DevelopersGuide/ScriptingFramework/ScriptSelector/Makefile131
-rw-r--r--odk/examples/DevelopersGuide/ScriptingFramework/ScriptSelector/ScriptSelector.odtbin0 -> 8921 bytes-rw-r--r--odk/examples/DevelopersGuide/ScriptingFramework/ScriptSelector/ScriptSelector/ScriptSelector.java397
-rw-r--r--odk/examples/DevelopersGuide/ScriptingFramework/ScriptSelector/ScriptSelector/container.gifbin0 -> 164 bytes-rw-r--r--odk/examples/DevelopersGuide/ScriptingFramework/ScriptSelector/ScriptSelector/parcel-descriptor.xml17
-rw-r--r--odk/examples/DevelopersGuide/ScriptingFramework/ScriptSelector/ScriptSelector/script.gifbin0 -> 187 bytes-rw-r--r--odk/examples/DevelopersGuide/ScriptingFramework/ScriptSelector/ScriptSelector/soffice.gifbin0 -> 136 bytes-rwxr-xr-xodk/examples/DevelopersGuide/ScriptingFramework/ScriptSelector/build.xml81
-rw-r--r--odk/examples/DevelopersGuide/ScriptingFramework/makefile.mk79
-rw-r--r--odk/examples/DevelopersGuide/Spreadsheet/DataPilotReadme.txt30
-rw-r--r--odk/examples/DevelopersGuide/Spreadsheet/ExampleAddIn.java314
-rw-r--r--odk/examples/DevelopersGuide/Spreadsheet/ExampleAddIn.odsbin0 -> 8961 bytes-rw-r--r--odk/examples/DevelopersGuide/Spreadsheet/ExampleDataPilotSource.java981
-rw-r--r--odk/examples/DevelopersGuide/Spreadsheet/GeneralTableSample.java241
-rw-r--r--odk/examples/DevelopersGuide/Spreadsheet/Makefile306
-rw-r--r--odk/examples/DevelopersGuide/Spreadsheet/SpreadsheetDocHelper.java405
-rw-r--r--odk/examples/DevelopersGuide/Spreadsheet/SpreadsheetSample.java1417
-rw-r--r--odk/examples/DevelopersGuide/Spreadsheet/ViewSample.java170
-rw-r--r--odk/examples/DevelopersGuide/Spreadsheet/XExampleAddIn.idl60
-rw-r--r--odk/examples/DevelopersGuide/Spreadsheet/makefile.mk72
-rw-r--r--odk/examples/DevelopersGuide/Text/Makefile96
-rw-r--r--odk/examples/DevelopersGuide/Text/PrintDemo.odtbin0 -> 6909 bytes-rw-r--r--odk/examples/DevelopersGuide/Text/TextDocuments.java1792
-rw-r--r--odk/examples/DevelopersGuide/Text/TextTemplateWithUserFields.odtbin0 -> 6641 bytes-rw-r--r--odk/examples/DevelopersGuide/Text/makefile.mk67
-rw-r--r--odk/examples/DevelopersGuide/UCB/ChildrenRetriever.java348
-rw-r--r--odk/examples/DevelopersGuide/UCB/DataStreamComposer.java258
-rw-r--r--odk/examples/DevelopersGuide/UCB/DataStreamRetriever.java233
-rw-r--r--odk/examples/DevelopersGuide/UCB/Helper.java250
-rw-r--r--odk/examples/DevelopersGuide/UCB/Makefile156
-rw-r--r--odk/examples/DevelopersGuide/UCB/MyActiveDataSink.java73
-rw-r--r--odk/examples/DevelopersGuide/UCB/MyInputStream.java190
-rw-r--r--odk/examples/DevelopersGuide/UCB/PropertiesComposer.java299
-rw-r--r--odk/examples/DevelopersGuide/UCB/PropertiesRetriever.java254
-rw-r--r--odk/examples/DevelopersGuide/UCB/ResourceCreator.java313
-rw-r--r--odk/examples/DevelopersGuide/UCB/ResourceManager.java289
-rw-r--r--odk/examples/DevelopersGuide/UCB/ResourceRemover.java180
-rw-r--r--odk/examples/DevelopersGuide/UCB/data/data.txt1
-rw-r--r--odk/examples/DevelopersGuide/UCB/makefile.mk75
-rw-r--r--odk/examples/DevelopersGuide/examples.html3032
-rw-r--r--odk/examples/OLE/activex/Makefile122
-rw-r--r--odk/examples/OLE/activex/README.txt39
-rw-r--r--odk/examples/OLE/activex/SOActiveX.cpp645
-rw-r--r--odk/examples/OLE/activex/SOActiveX.h166
-rw-r--r--odk/examples/OLE/activex/SOActiveX.rgs33
-rw-r--r--odk/examples/OLE/activex/SOComWindowPeer.cpp58
-rw-r--r--odk/examples/OLE/activex/SOComWindowPeer.h162
-rw-r--r--odk/examples/OLE/activex/SOComWindowPeer.rgs23
-rw-r--r--odk/examples/OLE/activex/StdAfx2.cpp46
-rw-r--r--odk/examples/OLE/activex/StdAfx2.h65
-rw-r--r--odk/examples/OLE/activex/example.html26
-rw-r--r--odk/examples/OLE/activex/resource.h55
-rw-r--r--odk/examples/OLE/activex/so_activex.cpp108
-rw-r--r--odk/examples/OLE/activex/so_activex.def5
-rw-r--r--odk/examples/OLE/activex/so_activex.idl138
-rw-r--r--odk/examples/OLE/activex/so_activex.rc136
-rw-r--r--odk/examples/OLE/delphi/InsertTables/Project1.dpr14
-rw-r--r--odk/examples/OLE/delphi/InsertTables/Project1.res0
-rw-r--r--odk/examples/OLE/delphi/InsertTables/SampleCode.pas393
-rw-r--r--odk/examples/OLE/delphi/InsertTables/SampleUI.dfm4
-rw-r--r--odk/examples/OLE/delphi/InsertTables/SampleUI.pas168
-rw-r--r--odk/examples/OLE/delphi/StarOffice_Delphi.sxwbin0 -> 34970 bytes-rw-r--r--odk/examples/OLE/delphi/StarOffice_and_Delphi.pdfbin0 -> 60963 bytes-rw-r--r--odk/examples/OLE/makefile.mk93
-rw-r--r--odk/examples/OLE/vbscript/WriterDemo.vbs172
-rw-r--r--odk/examples/OLE/vbscript/readme.txt4
-rw-r--r--odk/examples/basic/drawing/dirtree.txt20
-rw-r--r--odk/examples/basic/drawing/importexportofasciifiles.odgbin0 -> 11125 bytes-rw-r--r--odk/examples/basic/forms_and_controls/beef.wmfbin0 -> 9856 bytes-rw-r--r--odk/examples/basic/forms_and_controls/burger.wmfbin0 -> 84308 bytes-rw-r--r--odk/examples/basic/forms_and_controls/burger_factory.odtbin0 -> 18934 bytes-rw-r--r--odk/examples/basic/forms_and_controls/chicken.wmfbin0 -> 14272 bytes-rw-r--r--odk/examples/basic/forms_and_controls/fish.wmfbin0 -> 13716 bytes-rw-r--r--odk/examples/basic/forms_and_controls/vegetable.wmfbin0 -> 17862 bytes-rw-r--r--odk/examples/basic/makefile.mk91
-rw-r--r--odk/examples/basic/sheet/adapting_to_euroland.odsbin0 -> 9964 bytes-rw-r--r--odk/examples/basic/stock_quotes_updater/stock.odsbin0 -> 21540 bytes-rw-r--r--odk/examples/basic/text/creating_an_index/index.odtbin0 -> 13160 bytes-rw-r--r--odk/examples/basic/text/creating_an_index/indexlist.txt9
-rw-r--r--odk/examples/basic/text/modifying_text_automatically/changing_appearance.odtbin0 -> 9883 bytes-rw-r--r--odk/examples/basic/text/modifying_text_automatically/inserting_bookmarks.odtbin0 -> 10207 bytes-rw-r--r--odk/examples/basic/text/modifying_text_automatically/replacing_text.odtbin0 -> 10021 bytes-rw-r--r--odk/examples/basic/text/modifying_text_automatically/using_regular_expressions.odtbin0 -> 10072 bytes-rw-r--r--odk/examples/cpp/DocumentLoader/DocumentLoader.cxx167
-rw-r--r--odk/examples/cpp/DocumentLoader/Makefile127
-rw-r--r--odk/examples/cpp/DocumentLoader/test.odtbin0 -> 6737 bytes-rw-r--r--odk/examples/cpp/complextoolbarcontrols/Addons.xcu170
-rw-r--r--odk/examples/cpp/complextoolbarcontrols/CalcListener.cxx39
-rw-r--r--odk/examples/cpp/complextoolbarcontrols/CalcWindowState.xcu21
-rw-r--r--odk/examples/cpp/complextoolbarcontrols/Jobs.xcu23
-rw-r--r--odk/examples/cpp/complextoolbarcontrols/ListenerHelper.cxx144
-rw-r--r--odk/examples/cpp/complextoolbarcontrols/ListenerHelper.h82
-rw-r--r--odk/examples/cpp/complextoolbarcontrols/Makefile166
-rw-r--r--odk/examples/cpp/complextoolbarcontrols/MyJob.cxx109
-rw-r--r--odk/examples/cpp/complextoolbarcontrols/MyJob.h150
-rw-r--r--odk/examples/cpp/complextoolbarcontrols/MyListener.cxx167
-rw-r--r--odk/examples/cpp/complextoolbarcontrols/MyListener.h96
-rw-r--r--odk/examples/cpp/complextoolbarcontrols/MyProtocolHandler.cxx539
-rw-r--r--odk/examples/cpp/complextoolbarcontrols/MyProtocolHandler.h141
-rw-r--r--odk/examples/cpp/complextoolbarcontrols/ProtocolHandler.xcu10
-rw-r--r--odk/examples/cpp/complextoolbarcontrols/WriterListener.cxx47
-rw-r--r--odk/examples/cpp/complextoolbarcontrols/WriterWindowState.xcu21
-rw-r--r--odk/examples/cpp/complextoolbarcontrols/exports.cxx120
-rw-r--r--odk/examples/cpp/complextoolbarcontrols/logo_big.pngbin0 -> 616 bytes-rw-r--r--odk/examples/cpp/complextoolbarcontrols/logo_small.pngbin0 -> 585 bytes-rw-r--r--odk/examples/cpp/counter/Makefile161
-rw-r--r--odk/examples/cpp/counter/XCountable.idl55
-rw-r--r--odk/examples/cpp/counter/counter.cxx238
-rw-r--r--odk/examples/cpp/counter/countermain.cxx122
-rw-r--r--odk/examples/cpp/makefile.mk80
-rw-r--r--odk/examples/cpp/remoteclient/Makefile160
-rw-r--r--odk/examples/cpp/remoteclient/remoteclient.cxx283
-rw-r--r--odk/examples/examples.html750
-rw-r--r--odk/examples/java/ConverterServlet/ConverterServlet.html46
-rw-r--r--odk/examples/java/ConverterServlet/ConverterServlet.java336
-rw-r--r--odk/examples/java/ConverterServlet/Makefile94
-rw-r--r--odk/examples/java/ConverterServlet/README38
-rw-r--r--odk/examples/java/ConverterServlet/web.xml23
-rw-r--r--odk/examples/java/DocumentHandling/DocumentConverter.java225
-rw-r--r--odk/examples/java/DocumentHandling/DocumentLoader.java92
-rw-r--r--odk/examples/java/DocumentHandling/DocumentPrinter.java109
-rw-r--r--odk/examples/java/DocumentHandling/DocumentSaver.java131
-rw-r--r--odk/examples/java/DocumentHandling/Makefile145
-rw-r--r--odk/examples/java/DocumentHandling/test/test1.odtbin0 -> 7999 bytes-rw-r--r--odk/examples/java/Drawing/Makefile92
-rw-r--r--odk/examples/java/Drawing/SDraw.java272
-rw-r--r--odk/examples/java/EmbedDocument/Container1/EmbedContApp.java1024
-rw-r--r--odk/examples/java/EmbedDocument/Container1/EmbedContFrame.java108
-rw-r--r--odk/examples/java/EmbedDocument/Container1/Makefile48
-rwxr-xr-xodk/examples/java/EmbedDocument/EmbeddedObject/EditorFrame.java121
-rw-r--r--odk/examples/java/EmbedDocument/EmbeddedObject/EmbeddedObject.odtbin0 -> 9975 bytes-rwxr-xr-xodk/examples/java/EmbedDocument/EmbeddedObject/EmbeddedObject.xcu28
-rw-r--r--odk/examples/java/EmbedDocument/EmbeddedObject/Makefile147
-rwxr-xr-xodk/examples/java/EmbedDocument/EmbeddedObject/OwnEmbeddedObject.java1124
-rwxr-xr-xodk/examples/java/EmbedDocument/EmbeddedObject/OwnEmbeddedObjectFactory.java101
-rwxr-xr-xodk/examples/java/Inspector/Addon.xcu28
-rwxr-xr-xodk/examples/java/Inspector/Addons.xcu23
-rw-r--r--odk/examples/java/Inspector/HideableMutableTreeNode.java88
-rw-r--r--odk/examples/java/Inspector/HideableTreeModel.java298
-rw-r--r--odk/examples/java/Inspector/Inspector.java461
-rw-r--r--odk/examples/java/Inspector/InspectorAddon.java228
-rw-r--r--odk/examples/java/Inspector/InspectorPane.java629
-rw-r--r--odk/examples/java/Inspector/InstanceInspector.idl52
-rw-r--r--odk/examples/java/Inspector/InstanceInspectorTest.odtbin0 -> 12272 bytes-rw-r--r--odk/examples/java/Inspector/Introspector.java667
-rw-r--r--odk/examples/java/Inspector/Makefile195
-rw-r--r--odk/examples/java/Inspector/MethodParametersDialog.java353
-rwxr-xr-xodk/examples/java/Inspector/ObjectInspector.xcs18
-rwxr-xr-xodk/examples/java/Inspector/ObjectInspector.xcu18
-rwxr-xr-xodk/examples/java/Inspector/ProtocolHandler.xcu11
-rw-r--r--odk/examples/java/Inspector/ProtocolHandlerAddon.java283
-rw-r--r--odk/examples/java/Inspector/SourceCodeGenerator.java1766
-rw-r--r--odk/examples/java/Inspector/SwingDialogProvider.java442
-rw-r--r--odk/examples/java/Inspector/SwingTreeControlProvider.java427
-rw-r--r--odk/examples/java/Inspector/SwingTreePathProvider.java40
-rw-r--r--odk/examples/java/Inspector/SwingUnoFacetteNode.java84
-rw-r--r--odk/examples/java/Inspector/SwingUnoMethodNode.java138
-rw-r--r--odk/examples/java/Inspector/SwingUnoNode.java156
-rw-r--r--odk/examples/java/Inspector/SwingUnoPropertyNode.java96
-rw-r--r--odk/examples/java/Inspector/TDocSupplier.java168
-rw-r--r--odk/examples/java/Inspector/TestInspector.java88
-rw-r--r--odk/examples/java/Inspector/UnoFacetteNode.java85
-rw-r--r--odk/examples/java/Inspector/UnoMethodNode.java228
-rw-r--r--odk/examples/java/Inspector/UnoNode.java437
-rw-r--r--odk/examples/java/Inspector/UnoPropertyNode.java225
-rw-r--r--odk/examples/java/Inspector/UnoTreeRenderer.java135
-rw-r--r--odk/examples/java/Inspector/XDialogProvider.java65
-rw-r--r--odk/examples/java/Inspector/XInstanceInspector.idl56
-rw-r--r--odk/examples/java/Inspector/XLanguageSourceCodeGenerator.java106
-rw-r--r--odk/examples/java/Inspector/XMethodParametersDialog.java37
-rw-r--r--odk/examples/java/Inspector/XTreeControlProvider.java93
-rw-r--r--odk/examples/java/Inspector/XTreePathProvider.java25
-rw-r--r--odk/examples/java/Inspector/XUnoFacetteNode.java63
-rw-r--r--odk/examples/java/Inspector/XUnoMethodNode.java68
-rw-r--r--odk/examples/java/Inspector/XUnoNode.java84
-rw-r--r--odk/examples/java/Inspector/XUnoPropertyNode.java51
-rwxr-xr-xodk/examples/java/Inspector/images/containers_16.pngbin0 -> 233 bytes-rwxr-xr-xodk/examples/java/Inspector/images/content_16.pngbin0 -> 370 bytes-rwxr-xr-xodk/examples/java/Inspector/images/interfaces_16.pngbin0 -> 433 bytes-rwxr-xr-xodk/examples/java/Inspector/images/methods_16.pngbin0 -> 380 bytes-rwxr-xr-xodk/examples/java/Inspector/images/properties_16.pngbin0 -> 242 bytes-rwxr-xr-xodk/examples/java/Inspector/images/services_16.pngbin0 -> 258 bytes-rwxr-xr-xodk/examples/java/Inspector/manifest.mf3
-rw-r--r--odk/examples/java/MinimalComponent/BuildMinimalComponent.xml64
-rw-r--r--odk/examples/java/MinimalComponent/Makefile203
-rw-r--r--odk/examples/java/MinimalComponent/MinimalComponent.idl52
-rw-r--r--odk/examples/java/MinimalComponent/MinimalComponent.java171
-rw-r--r--odk/examples/java/MinimalComponent/TestMinimalComponent.java69
-rw-r--r--odk/examples/java/NotesAccess/Makefile113
-rw-r--r--odk/examples/java/NotesAccess/NotesAccess.java288
-rw-r--r--odk/examples/java/NotesAccess/Stocks.nsfbin0 -> 262144 bytes-rw-r--r--odk/examples/java/PropertySet/Makefile134
-rw-r--r--odk/examples/java/PropertySet/PropTest.java265
-rw-r--r--odk/examples/java/PropertySet/PropertySet.odtbin0 -> 8391 bytes-rw-r--r--odk/examples/java/Spreadsheet/CalcAddins.java304
-rw-r--r--odk/examples/java/Spreadsheet/CalcAddins.odsbin0 -> 8653 bytes-rw-r--r--odk/examples/java/Spreadsheet/ChartTypeChange.java355
-rw-r--r--odk/examples/java/Spreadsheet/EuroAdaption.java389
-rw-r--r--odk/examples/java/Spreadsheet/Makefile213
-rw-r--r--odk/examples/java/Spreadsheet/SCalc.java412
-rw-r--r--odk/examples/java/Spreadsheet/XCalcAddins.idl100
-rw-r--r--odk/examples/java/Storage/Makefile58
-rw-r--r--odk/examples/java/Storage/StorageFunctionality.java147
-rw-r--r--odk/examples/java/Storage/StorageTest.java7
-rw-r--r--odk/examples/java/Storage/Test01.java158
-rw-r--r--odk/examples/java/Storage/Test02.java152
-rw-r--r--odk/examples/java/Storage/Test03.java209
-rw-r--r--odk/examples/java/Storage/Test04.java273
-rw-r--r--odk/examples/java/Storage/Test05.java268
-rw-r--r--odk/examples/java/Storage/Test06.java278
-rw-r--r--odk/examples/java/Storage/Test07.java137
-rw-r--r--odk/examples/java/Storage/Test08.java213
-rw-r--r--odk/examples/java/Storage/Test09.java123
-rw-r--r--odk/examples/java/Storage/TestHelper.java864
-rw-r--r--odk/examples/java/Text/BookmarkInsertion.java284
-rw-r--r--odk/examples/java/Text/GraphicsInserter.java179
-rw-r--r--odk/examples/java/Text/HardFormatting.java286
-rw-r--r--odk/examples/java/Text/Makefile136
-rw-r--r--odk/examples/java/Text/SWriter.java397
-rw-r--r--odk/examples/java/Text/StyleCreation.java226
-rw-r--r--odk/examples/java/Text/StyleInitialization.java320
-rw-r--r--odk/examples/java/Text/TextDocumentStructure.java205
-rw-r--r--odk/examples/java/Text/TextReplace.java231
-rw-r--r--odk/examples/java/Text/WriterSelector.java162
-rw-r--r--odk/examples/java/Text/oo_smiley.gifbin0 -> 46109 bytes-rw-r--r--odk/examples/java/ToDo/Makefile166
-rw-r--r--odk/examples/java/ToDo/ToDo.idl50
-rw-r--r--odk/examples/java/ToDo/ToDo.java965
-rw-r--r--odk/examples/java/ToDo/ToDo.odsbin0 -> 13276 bytes-rw-r--r--odk/examples/java/ToDo/XToDo.idl50
-rw-r--r--odk/examples/java/makefile.mk155
-rw-r--r--odk/inc/makefile.mk47
-rw-r--r--odk/inc/pch/precompiled_odk.cxx29
-rw-r--r--odk/inc/pch/precompiled_odk.hxx32
-rw-r--r--odk/index.html203
-rw-r--r--odk/no_localization1
-rw-r--r--odk/pack/checkbin/makefile.mk51
-rw-r--r--odk/pack/checkidl/makefile.mk51
-rw-r--r--odk/pack/checkinc/makefile.mk54
-rw-r--r--odk/pack/checkinc2/makefile.mk54
-rwxr-xr-xodk/pack/copying/addsym-macosx.sh11
-rw-r--r--odk/pack/copying/dk.mk3
-rw-r--r--odk/pack/copying/idl_chapter_refs.txt7555
-rw-r--r--odk/pack/copying/makefile.mk262
-rw-r--r--odk/pack/gendocu/java/package-list135
-rw-r--r--odk/pack/gendocu/makefile.mk122
-rw-r--r--odk/pack/gendocu/uno/package-list53
-rw-r--r--odk/pack/unzip_udk/deltree.txt0
-rw-r--r--odk/pack/unzip_udk/makefile.mk46
-rw-r--r--odk/prj/build.lst15
-rw-r--r--odk/prj/d.lst5
-rw-r--r--odk/setsdkenv_unix67
-rw-r--r--odk/setsdkenv_unix.csh.in313
-rw-r--r--odk/setsdkenv_unix.sh.in343
-rwxr-xr-xodk/setsdkenv_windows.bat64
-rwxr-xr-xodk/setsdkenv_windows.template183
-rwxr-xr-xodk/setsdkname.bat3
-rw-r--r--odk/settings/component.uno.def4
-rw-r--r--odk/settings/settings.mk607
-rw-r--r--odk/settings/std.mk63
-rw-r--r--odk/settings/stdtarget.mk16
-rw-r--r--odk/source/com/sun/star/lib/loader/InstallationFinder.java584
-rw-r--r--odk/source/com/sun/star/lib/loader/Loader.java385
-rw-r--r--odk/source/com/sun/star/lib/loader/WinRegKey.java200
-rw-r--r--odk/source/com/sun/star/lib/loader/WinRegKeyException.java51
-rw-r--r--odk/source/com/sun/star/lib/loader/makefile.mk56
-rw-r--r--odk/source/unoapploader/unx/makefile.mk60
-rw-r--r--odk/source/unoapploader/unx/unoapploader.c301
-rw-r--r--odk/source/unoapploader/win/makefile.mk57
-rw-r--r--odk/source/unoapploader/win/unoapploader.c423
-rw-r--r--odk/source/unowinreg/win/makefile.mk114
-rw-r--r--odk/source/unowinreg/win/unowinreg.cxx185
-rw-r--r--odk/source/unowinreg/win/unowinreg.dxp9
-rw-r--r--odk/util/check.pl485
-rw-r--r--odk/util/checkdiff.pl62
-rw-r--r--odk/util/delzip1
-rw-r--r--odk/util/makefile.mk58
-rw-r--r--odk/util/makefile.pmk224
-rw-r--r--odk/util/odk_rules.pmk193
-rw-r--r--offapi/com/sun/star/accessibility/AccessBridge.idl54
-rw-r--r--offapi/com/sun/star/accessibility/Accessible.idl56
-rw-r--r--offapi/com/sun/star/accessibility/AccessibleContext.idl67
-rw-r--r--offapi/com/sun/star/accessibility/AccessibleEventId.idl387
-rw-r--r--offapi/com/sun/star/accessibility/AccessibleEventObject.idl69
-rw-r--r--offapi/com/sun/star/accessibility/AccessibleRelation.idl68
-rw-r--r--offapi/com/sun/star/accessibility/AccessibleRelationType.idl121
-rw-r--r--offapi/com/sun/star/accessibility/AccessibleRole.idl720
-rw-r--r--offapi/com/sun/star/accessibility/AccessibleStateType.idl225
-rw-r--r--offapi/com/sun/star/accessibility/AccessibleTableModelChange.idl90
-rw-r--r--offapi/com/sun/star/accessibility/AccessibleTableModelChangeType.idl82
-rw-r--r--offapi/com/sun/star/accessibility/AccessibleTextType.idl105
-rw-r--r--offapi/com/sun/star/accessibility/IllegalAccessibleComponentStateException.idl54
-rw-r--r--offapi/com/sun/star/accessibility/TextSegment.idl85
-rw-r--r--offapi/com/sun/star/accessibility/XAccessible.idl86
-rw-r--r--offapi/com/sun/star/accessibility/XAccessibleAction.idl123
-rw-r--r--offapi/com/sun/star/accessibility/XAccessibleComponent.idl236
-rw-r--r--offapi/com/sun/star/accessibility/XAccessibleContext.idl215
-rw-r--r--offapi/com/sun/star/accessibility/XAccessibleEditableText.idl240
-rw-r--r--offapi/com/sun/star/accessibility/XAccessibleEventBroadcaster.idl64
-rw-r--r--offapi/com/sun/star/accessibility/XAccessibleEventListener.idl59
-rw-r--r--offapi/com/sun/star/accessibility/XAccessibleExtendedComponent.idl109
-rw-r--r--offapi/com/sun/star/accessibility/XAccessibleHyperlink.idl142
-rw-r--r--offapi/com/sun/star/accessibility/XAccessibleHypertext.idl118
-rw-r--r--offapi/com/sun/star/accessibility/XAccessibleImage.idl86
-rw-r--r--offapi/com/sun/star/accessibility/XAccessibleKeyBinding.idl93
-rw-r--r--offapi/com/sun/star/accessibility/XAccessibleMultiLineText.idl148
-rw-r--r--offapi/com/sun/star/accessibility/XAccessibleRelationSet.idl113
-rw-r--r--offapi/com/sun/star/accessibility/XAccessibleSelection.idl164
-rw-r--r--offapi/com/sun/star/accessibility/XAccessibleStateSet.idl109
-rw-r--r--offapi/com/sun/star/accessibility/XAccessibleTable.idl387
-rw-r--r--offapi/com/sun/star/accessibility/XAccessibleText.idl519
-rw-r--r--offapi/com/sun/star/accessibility/XAccessibleTextAttributes.idl105
-rw-r--r--offapi/com/sun/star/accessibility/XAccessibleTextMarkup.idl140
-rw-r--r--offapi/com/sun/star/accessibility/XAccessibleValue.idl106
-rw-r--r--offapi/com/sun/star/accessibility/makefile.mk80
-rw-r--r--offapi/com/sun/star/animations/AnimationAdditiveMode.idl69
-rw-r--r--offapi/com/sun/star/animations/AnimationCalcMode.idl74
-rw-r--r--offapi/com/sun/star/animations/AnimationColorSpace.idl58
-rw-r--r--offapi/com/sun/star/animations/AnimationEndSync.idl81
-rw-r--r--offapi/com/sun/star/animations/AnimationFill.idl84
-rw-r--r--offapi/com/sun/star/animations/AnimationNodeType.idl87
-rw-r--r--offapi/com/sun/star/animations/AnimationRestart.idl75
-rw-r--r--offapi/com/sun/star/animations/AnimationTransformType.idl67
-rw-r--r--offapi/com/sun/star/animations/AnimationValueType.idl57
-rw-r--r--offapi/com/sun/star/animations/Event.idl69
-rw-r--r--offapi/com/sun/star/animations/EventTrigger.idl91
-rw-r--r--offapi/com/sun/star/animations/TargetProperties.idl59
-rw-r--r--offapi/com/sun/star/animations/TimeFilterPair.idl51
-rw-r--r--offapi/com/sun/star/animations/Timing.idl53
-rw-r--r--offapi/com/sun/star/animations/TransitionSubType.idl163
-rw-r--r--offapi/com/sun/star/animations/TransitionType.idl91
-rw-r--r--offapi/com/sun/star/animations/ValuePair.idl48
-rw-r--r--offapi/com/sun/star/animations/XAnimate.idl155
-rw-r--r--offapi/com/sun/star/animations/XAnimateColor.idl74
-rw-r--r--offapi/com/sun/star/animations/XAnimateMotion.idl65
-rw-r--r--offapi/com/sun/star/animations/XAnimateSet.idl66
-rw-r--r--offapi/com/sun/star/animations/XAnimateTransform.idl79
-rw-r--r--offapi/com/sun/star/animations/XAnimationListener.idl88
-rw-r--r--offapi/com/sun/star/animations/XAnimationNode.idl261
-rw-r--r--offapi/com/sun/star/animations/XAnimationNodeSupplier.idl51
-rw-r--r--offapi/com/sun/star/animations/XAudio.idl58
-rw-r--r--offapi/com/sun/star/animations/XCommand.idl66
-rw-r--r--offapi/com/sun/star/animations/XIterateContainer.idl79
-rw-r--r--offapi/com/sun/star/animations/XTargetPropertiesCreator.idl78
-rw-r--r--offapi/com/sun/star/animations/XTimeContainer.idl132
-rw-r--r--offapi/com/sun/star/animations/XTransitionFilter.idl99
-rw-r--r--offapi/com/sun/star/animations/makefile.mk76
-rw-r--r--offapi/com/sun/star/auth/AuthenticationFailedException.idl47
-rw-r--r--offapi/com/sun/star/auth/InvalidArgumentException.idl47
-rw-r--r--offapi/com/sun/star/auth/InvalidContextException.idl47
-rw-r--r--offapi/com/sun/star/auth/InvalidCredentialException.idl47
-rw-r--r--offapi/com/sun/star/auth/InvalidPrincipalException.idl48
-rw-r--r--offapi/com/sun/star/auth/PersistenceFailureException.idl48
-rw-r--r--offapi/com/sun/star/auth/SSOExceptions.idl53
-rw-r--r--offapi/com/sun/star/auth/SSOManagerFactory.idl75
-rw-r--r--offapi/com/sun/star/auth/SSOPasswordCache.idl53
-rw-r--r--offapi/com/sun/star/auth/UnsupportedException.idl48
-rw-r--r--offapi/com/sun/star/auth/XSSOAcceptorContext.idl75
-rw-r--r--offapi/com/sun/star/auth/XSSOContext.idl77
-rw-r--r--offapi/com/sun/star/auth/XSSOInitiatorContext.idl80
-rw-r--r--offapi/com/sun/star/auth/XSSOManager.idl113
-rw-r--r--offapi/com/sun/star/auth/XSSOManagerFactory.idl60
-rw-r--r--offapi/com/sun/star/auth/XSSOPasswordCache.idl105
-rw-r--r--offapi/com/sun/star/auth/makefile.mk28
-rw-r--r--offapi/com/sun/star/awt/AccessibleButton.idl136
-rw-r--r--offapi/com/sun/star/awt/AccessibleCheckBox.idl137
-rw-r--r--offapi/com/sun/star/awt/AccessibleComboBox.idl108
-rw-r--r--offapi/com/sun/star/awt/AccessibleDropDownComboBox.idl119
-rw-r--r--offapi/com/sun/star/awt/AccessibleDropDownListBox.idl119
-rw-r--r--offapi/com/sun/star/awt/AccessibleEdit.idl135
-rw-r--r--offapi/com/sun/star/awt/AccessibleFixedText.idl114
-rw-r--r--offapi/com/sun/star/awt/AccessibleIconChoiceControl.idl115
-rw-r--r--offapi/com/sun/star/awt/AccessibleIconChoiceControlEntry.idl107
-rw-r--r--offapi/com/sun/star/awt/AccessibleList.idl138
-rw-r--r--offapi/com/sun/star/awt/AccessibleListBox.idl107
-rw-r--r--offapi/com/sun/star/awt/AccessibleListBoxList.idl52
-rw-r--r--offapi/com/sun/star/awt/AccessibleListItem.idl104
-rw-r--r--offapi/com/sun/star/awt/AccessibleMenu.idl152
-rw-r--r--offapi/com/sun/star/awt/AccessibleMenuBar.idl115
-rw-r--r--offapi/com/sun/star/awt/AccessibleMenuItem.idl141
-rw-r--r--offapi/com/sun/star/awt/AccessibleMenuSeparator.idl107
-rw-r--r--offapi/com/sun/star/awt/AccessiblePopupMenu.idl115
-rw-r--r--offapi/com/sun/star/awt/AccessibleRadioButton.idl141
-rw-r--r--offapi/com/sun/star/awt/AccessibleScrollBar.idl129
-rw-r--r--offapi/com/sun/star/awt/AccessibleStatusBar.idl98
-rw-r--r--offapi/com/sun/star/awt/AccessibleStatusBarItem.idl107
-rw-r--r--offapi/com/sun/star/awt/AccessibleTabBar.idl109
-rw-r--r--offapi/com/sun/star/awt/AccessibleTabBarPage.idl105
-rw-r--r--offapi/com/sun/star/awt/AccessibleTabBarPageList.idl108
-rw-r--r--offapi/com/sun/star/awt/AccessibleTabControl.idl113
-rw-r--r--offapi/com/sun/star/awt/AccessibleTabPage.idl117
-rw-r--r--offapi/com/sun/star/awt/AccessibleTextField.idl116
-rw-r--r--offapi/com/sun/star/awt/AccessibleToolBox.idl116
-rw-r--r--offapi/com/sun/star/awt/AccessibleToolBoxItem.idl134
-rw-r--r--offapi/com/sun/star/awt/AccessibleTreeListBox.idl115
-rw-r--r--offapi/com/sun/star/awt/AccessibleTreeListBoxEntry.idl133
-rw-r--r--offapi/com/sun/star/awt/AccessibleWindow.idl125
-rw-r--r--offapi/com/sun/star/awt/ActionEvent.idl69
-rw-r--r--offapi/com/sun/star/awt/AdjustmentEvent.idl67
-rw-r--r--offapi/com/sun/star/awt/AdjustmentType.idl72
-rw-r--r--offapi/com/sun/star/awt/AsyncCallback.idl47
-rw-r--r--offapi/com/sun/star/awt/CharSet.idl123
-rw-r--r--offapi/com/sun/star/awt/Command.idl134
-rw-r--r--offapi/com/sun/star/awt/ContainerWindowProvider.idl56
-rw-r--r--offapi/com/sun/star/awt/DeviceCapability.idl65
-rw-r--r--offapi/com/sun/star/awt/DeviceInfo.idl110
-rw-r--r--offapi/com/sun/star/awt/DialogProvider.idl59
-rw-r--r--offapi/com/sun/star/awt/DialogProvider2.idl55
-rw-r--r--offapi/com/sun/star/awt/DockingData.idl63
-rw-r--r--offapi/com/sun/star/awt/DockingEvent.idl84
-rw-r--r--offapi/com/sun/star/awt/EndDockingEvent.idl72
-rw-r--r--offapi/com/sun/star/awt/EndPopupModeEvent.idl68
-rw-r--r--offapi/com/sun/star/awt/EnhancedMouseEvent.idl63
-rw-r--r--offapi/com/sun/star/awt/FieldUnit.idl63
-rw-r--r--offapi/com/sun/star/awt/FocusChangeReason.idl93
-rw-r--r--offapi/com/sun/star/awt/FocusEvent.idl90
-rw-r--r--offapi/com/sun/star/awt/FontDescriptor.idl190
-rw-r--r--offapi/com/sun/star/awt/FontEmphasisMark.idl94
-rw-r--r--offapi/com/sun/star/awt/FontFamily.idl91
-rw-r--r--offapi/com/sun/star/awt/FontPitch.idl68
-rw-r--r--offapi/com/sun/star/awt/FontRelief.idl68
-rw-r--r--offapi/com/sun/star/awt/FontSlant.idl83
-rw-r--r--offapi/com/sun/star/awt/FontStrikeout.idl91
-rw-r--r--offapi/com/sun/star/awt/FontType.idl73
-rw-r--r--offapi/com/sun/star/awt/FontUnderline.idl163
-rw-r--r--offapi/com/sun/star/awt/FontWeight.idl109
-rw-r--r--offapi/com/sun/star/awt/FontWidth.idl109
-rw-r--r--offapi/com/sun/star/awt/Gradient.idl115
-rw-r--r--offapi/com/sun/star/awt/GradientStyle.idl83
-rw-r--r--offapi/com/sun/star/awt/ImageAlign.idl71
-rw-r--r--offapi/com/sun/star/awt/ImagePosition.idl100
-rw-r--r--offapi/com/sun/star/awt/ImageScaleMode.idl62
-rw-r--r--offapi/com/sun/star/awt/ImageStatus.idl73
-rw-r--r--offapi/com/sun/star/awt/InputEvent.idl65
-rw-r--r--offapi/com/sun/star/awt/InvalidateStyle.idl89
-rw-r--r--offapi/com/sun/star/awt/ItemEvent.idl69
-rw-r--r--offapi/com/sun/star/awt/ItemListEvent.idl76
-rw-r--r--offapi/com/sun/star/awt/Key.idl574
-rw-r--r--offapi/com/sun/star/awt/KeyEvent.idl76
-rw-r--r--offapi/com/sun/star/awt/KeyFunction.idl123
-rw-r--r--offapi/com/sun/star/awt/KeyGroup.idl85
-rw-r--r--offapi/com/sun/star/awt/KeyModifier.idl68
-rw-r--r--offapi/com/sun/star/awt/KeyStroke.idl81
-rw-r--r--offapi/com/sun/star/awt/LineEndFormat.idl66
-rw-r--r--offapi/com/sun/star/awt/MaxChildrenException.idl29
-rw-r--r--offapi/com/sun/star/awt/MenuBar.idl56
-rw-r--r--offapi/com/sun/star/awt/MenuEvent.idl57
-rw-r--r--offapi/com/sun/star/awt/MenuItemStyle.idl68
-rw-r--r--offapi/com/sun/star/awt/MenuItemType.idl68
-rwxr-xr-xoffapi/com/sun/star/awt/MenuLogo.idl70
-rw-r--r--offapi/com/sun/star/awt/MessageBoxButtons.idl97
-rw-r--r--offapi/com/sun/star/awt/MessageBoxCommand.idl69
-rw-r--r--offapi/com/sun/star/awt/MouseButton.idl65
-rw-r--r--offapi/com/sun/star/awt/MouseEvent.idl101
-rwxr-xr-xoffapi/com/sun/star/awt/MouseWheelBehavior.idl62
-rw-r--r--offapi/com/sun/star/awt/PaintEvent.idl75
-rw-r--r--offapi/com/sun/star/awt/Point.idl57
-rw-r--r--offapi/com/sun/star/awt/PopupMenu.idl55
-rw-r--r--offapi/com/sun/star/awt/PopupMenuDirection.idl92
-rw-r--r--offapi/com/sun/star/awt/PosSize.idl89
-rw-r--r--offapi/com/sun/star/awt/PrinterException.idl54
-rw-r--r--offapi/com/sun/star/awt/PushButtonType.idl71
-rw-r--r--offapi/com/sun/star/awt/RasterOperation.idl79
-rw-r--r--offapi/com/sun/star/awt/Rectangle.idl69
-rw-r--r--offapi/com/sun/star/awt/RoadmapItem.idl78
-rw-r--r--offapi/com/sun/star/awt/ScrollBarOrientation.idl59
-rw-r--r--offapi/com/sun/star/awt/Selection.idl59
-rw-r--r--offapi/com/sun/star/awt/SimpleFontMetric.idl101
-rw-r--r--offapi/com/sun/star/awt/Size.idl59
-rw-r--r--offapi/com/sun/star/awt/SpinEvent.idl57
-rw-r--r--offapi/com/sun/star/awt/Style.idl60
-rw-r--r--offapi/com/sun/star/awt/SystemDependentXWindow.idl67
-rw-r--r--offapi/com/sun/star/awt/SystemPointer.idl492
-rw-r--r--offapi/com/sun/star/awt/TabController.idl53
-rw-r--r--offapi/com/sun/star/awt/TabControllerModel.idl59
-rw-r--r--offapi/com/sun/star/awt/TextAlign.idl65
-rw-r--r--offapi/com/sun/star/awt/TextEvent.idl57
-rw-r--r--offapi/com/sun/star/awt/Toolkit.idl76
-rw-r--r--offapi/com/sun/star/awt/UnoControl.idl94
-rw-r--r--offapi/com/sun/star/awt/UnoControlButton.idl65
-rw-r--r--offapi/com/sun/star/awt/UnoControlButtonModel.idl282
-rw-r--r--offapi/com/sun/star/awt/UnoControlCheckBox.idl65
-rw-r--r--offapi/com/sun/star/awt/UnoControlCheckBoxModel.idl240
-rw-r--r--offapi/com/sun/star/awt/UnoControlComboBox.idl59
-rw-r--r--offapi/com/sun/star/awt/UnoControlComboBoxModel.idl240
-rw-r--r--offapi/com/sun/star/awt/UnoControlContainer.idl71
-rw-r--r--offapi/com/sun/star/awt/UnoControlContainerModel.idl116
-rw-r--r--offapi/com/sun/star/awt/UnoControlCurrencyField.idl73
-rw-r--r--offapi/com/sun/star/awt/UnoControlCurrencyFieldModel.idl279
-rw-r--r--offapi/com/sun/star/awt/UnoControlDateField.idl72
-rw-r--r--offapi/com/sun/star/awt/UnoControlDateFieldModel.idl291
-rw-r--r--offapi/com/sun/star/awt/UnoControlDialog.idl65
-rw-r--r--offapi/com/sun/star/awt/UnoControlDialogElement.idl97
-rw-r--r--offapi/com/sun/star/awt/UnoControlDialogModel.idl197
-rw-r--r--offapi/com/sun/star/awt/UnoControlEdit.idl71
-rw-r--r--offapi/com/sun/star/awt/UnoControlEditModel.idl291
-rw-r--r--offapi/com/sun/star/awt/UnoControlFileControl.idl56
-rw-r--r--offapi/com/sun/star/awt/UnoControlFileControlModel.idl185
-rw-r--r--offapi/com/sun/star/awt/UnoControlFixedHyperlink.idl65
-rw-r--r--offapi/com/sun/star/awt/UnoControlFixedHyperlinkModel.idl188
-rw-r--r--offapi/com/sun/star/awt/UnoControlFixedLine.idl54
-rw-r--r--offapi/com/sun/star/awt/UnoControlFixedLineModel.idl134
-rw-r--r--offapi/com/sun/star/awt/UnoControlFixedText.idl65
-rw-r--r--offapi/com/sun/star/awt/UnoControlFixedTextModel.idl182
-rw-r--r--offapi/com/sun/star/awt/UnoControlFormattedField.idl64
-rw-r--r--offapi/com/sun/star/awt/UnoControlFormattedFieldModel.idl324
-rw-r--r--offapi/com/sun/star/awt/UnoControlGroupBox.idl53
-rw-r--r--offapi/com/sun/star/awt/UnoControlGroupBoxModel.idl132
-rw-r--r--offapi/com/sun/star/awt/UnoControlImageControl.idl59
-rw-r--r--offapi/com/sun/star/awt/UnoControlImageControlModel.idl161
-rw-r--r--offapi/com/sun/star/awt/UnoControlListBox.idl74
-rw-r--r--offapi/com/sun/star/awt/UnoControlListBoxModel.idl235
-rw-r--r--offapi/com/sun/star/awt/UnoControlModel.idl105
-rw-r--r--offapi/com/sun/star/awt/UnoControlNumericField.idl73
-rw-r--r--offapi/com/sun/star/awt/UnoControlNumericFieldModel.idl267
-rw-r--r--offapi/com/sun/star/awt/UnoControlPatternField.idl73
-rw-r--r--offapi/com/sun/star/awt/UnoControlPatternFieldModel.idl226
-rw-r--r--offapi/com/sun/star/awt/UnoControlProgressBar.idl60
-rw-r--r--offapi/com/sun/star/awt/UnoControlProgressBarModel.idl134
-rw-r--r--offapi/com/sun/star/awt/UnoControlRadioButton.idl65
-rw-r--r--offapi/com/sun/star/awt/UnoControlRadioButtonModel.idl234
-rw-r--r--offapi/com/sun/star/awt/UnoControlRoadmap.idl85
-rw-r--r--offapi/com/sun/star/awt/UnoControlRoadmapModel.idl169
-rw-r--r--offapi/com/sun/star/awt/UnoControlScrollBar.idl60
-rw-r--r--offapi/com/sun/star/awt/UnoControlScrollBarModel.idl201
-rw-r--r--offapi/com/sun/star/awt/UnoControlSimpleAnimation.idl65
-rw-r--r--offapi/com/sun/star/awt/UnoControlSimpleAnimationModel.idl78
-rw-r--r--offapi/com/sun/star/awt/UnoControlSpinButton.idl63
-rw-r--r--offapi/com/sun/star/awt/UnoControlSpinButtonModel.idl183
-rw-r--r--offapi/com/sun/star/awt/UnoControlThrobber.idl65
-rw-r--r--offapi/com/sun/star/awt/UnoControlThrobberModel.idl60
-rw-r--r--offapi/com/sun/star/awt/UnoControlTimeField.idl73
-rw-r--r--offapi/com/sun/star/awt/UnoControlTimeFieldModel.idl271
-rw-r--r--offapi/com/sun/star/awt/VclContainerEvent.idl66
-rw-r--r--offapi/com/sun/star/awt/VclWindowPeerAttribute.idl156
-rw-r--r--offapi/com/sun/star/awt/VisualEffect.idl63
-rw-r--r--offapi/com/sun/star/awt/WindowAttribute.idl135
-rw-r--r--offapi/com/sun/star/awt/WindowClass.idl72
-rw-r--r--offapi/com/sun/star/awt/WindowDescriptor.idl179
-rw-r--r--offapi/com/sun/star/awt/WindowEvent.idl111
-rw-r--r--offapi/com/sun/star/awt/XActionListener.idl61
-rw-r--r--offapi/com/sun/star/awt/XActivateListener.idl78
-rw-r--r--offapi/com/sun/star/awt/XAdjustmentListener.idl61
-rw-r--r--offapi/com/sun/star/awt/XBitmap.idl73
-rw-r--r--offapi/com/sun/star/awt/XButton.idl79
-rw-r--r--offapi/com/sun/star/awt/XCallback.idl60
-rw-r--r--offapi/com/sun/star/awt/XCheckBox.idl92
-rw-r--r--offapi/com/sun/star/awt/XComboBox.idl132
-rw-r--r--offapi/com/sun/star/awt/XContainerWindowEventHandler.idl107
-rw-r--r--offapi/com/sun/star/awt/XContainerWindowProvider.idl130
-rw-r--r--offapi/com/sun/star/awt/XControl.idl146
-rw-r--r--offapi/com/sun/star/awt/XControlContainer.idl87
-rw-r--r--offapi/com/sun/star/awt/XControlModel.idl51
-rw-r--r--offapi/com/sun/star/awt/XCurrencyField.idl149
-rw-r--r--offapi/com/sun/star/awt/XDataTransferProviderAccess.idl111
-rw-r--r--offapi/com/sun/star/awt/XDateField.idl152
-rw-r--r--offapi/com/sun/star/awt/XDevice.idl127
-rw-r--r--offapi/com/sun/star/awt/XDialog.idl77
-rw-r--r--offapi/com/sun/star/awt/XDialog2.idl35
-rw-r--r--offapi/com/sun/star/awt/XDialogEventHandler.idl106
-rw-r--r--offapi/com/sun/star/awt/XDialogProvider.idl75
-rw-r--r--offapi/com/sun/star/awt/XDialogProvider2.idl138
-rw-r--r--offapi/com/sun/star/awt/XDisplayBitmap.idl54
-rw-r--r--offapi/com/sun/star/awt/XDisplayConnection.idl109
-rw-r--r--offapi/com/sun/star/awt/XDockableWindow.idl146
-rw-r--r--offapi/com/sun/star/awt/XDockableWindowListener.idl121
-rw-r--r--offapi/com/sun/star/awt/XEnhancedMouseClickHandler.idl70
-rw-r--r--offapi/com/sun/star/awt/XEventHandler.idl66
-rwxr-xr-xoffapi/com/sun/star/awt/XExtendedToolkit.idl230
-rw-r--r--offapi/com/sun/star/awt/XFileDialog.idl84
-rw-r--r--offapi/com/sun/star/awt/XFixedHyperlink.idl109
-rw-r--r--offapi/com/sun/star/awt/XFixedText.idl81
-rw-r--r--offapi/com/sun/star/awt/XFocusListener.idl74
-rw-r--r--offapi/com/sun/star/awt/XFont.idl126
-rw-r--r--offapi/com/sun/star/awt/XFont2.idl68
-rw-r--r--offapi/com/sun/star/awt/XGraphics.idl321
-rw-r--r--offapi/com/sun/star/awt/XImageButton.idl74
-rw-r--r--offapi/com/sun/star/awt/XImageConsumer.idl132
-rw-r--r--offapi/com/sun/star/awt/XImageProducer.idl91
-rw-r--r--offapi/com/sun/star/awt/XInfoPrinter.idl63
-rw-r--r--offapi/com/sun/star/awt/XItemEventBroadcaster.idl70
-rw-r--r--offapi/com/sun/star/awt/XItemList.idl286
-rw-r--r--offapi/com/sun/star/awt/XItemListListener.idl85
-rw-r--r--offapi/com/sun/star/awt/XItemListener.idl62
-rw-r--r--offapi/com/sun/star/awt/XKeyHandler.idl101
-rw-r--r--offapi/com/sun/star/awt/XKeyListener.idl67
-rw-r--r--offapi/com/sun/star/awt/XLayoutConstrains.idl73
-rw-r--r--offapi/com/sun/star/awt/XLayoutContainer.idl89
-rw-r--r--offapi/com/sun/star/awt/XLayoutFlow.idl32
-rw-r--r--offapi/com/sun/star/awt/XLayoutFlowContainer.idl27
-rw-r--r--offapi/com/sun/star/awt/XLayoutRoot.idl33
-rw-r--r--offapi/com/sun/star/awt/XLayoutUnit.idl31
-rw-r--r--offapi/com/sun/star/awt/XListBox.idl199
-rw-r--r--offapi/com/sun/star/awt/XMenu.idl142
-rw-r--r--offapi/com/sun/star/awt/XMenuBar.idl51
-rwxr-xr-xoffapi/com/sun/star/awt/XMenuBarExtended.idl69
-rw-r--r--offapi/com/sun/star/awt/XMenuExtended.idl80
-rwxr-xr-xoffapi/com/sun/star/awt/XMenuExtended2.idl112
-rw-r--r--offapi/com/sun/star/awt/XMenuListener.idl79
-rw-r--r--offapi/com/sun/star/awt/XMessageBox.idl83
-rw-r--r--offapi/com/sun/star/awt/XMessageBoxFactory.idl108
-rw-r--r--offapi/com/sun/star/awt/XMetricField.idl163
-rw-r--r--offapi/com/sun/star/awt/XMouseClickHandler.idl83
-rw-r--r--offapi/com/sun/star/awt/XMouseListener.idl88
-rw-r--r--offapi/com/sun/star/awt/XMouseMotionHandler.idl90
-rw-r--r--offapi/com/sun/star/awt/XMouseMotionListener.idl74
-rw-r--r--offapi/com/sun/star/awt/XNumericField.idl149
-rw-r--r--offapi/com/sun/star/awt/XPaintListener.idl62
-rw-r--r--offapi/com/sun/star/awt/XPatternField.idl89
-rw-r--r--offapi/com/sun/star/awt/XPointer.idl64
-rw-r--r--offapi/com/sun/star/awt/XPopupMenu.idl96
-rwxr-xr-xoffapi/com/sun/star/awt/XPopupMenuExtended.idl361
-rw-r--r--offapi/com/sun/star/awt/XPrinter.idl124
-rw-r--r--offapi/com/sun/star/awt/XPrinterPropertySet.idl109
-rw-r--r--offapi/com/sun/star/awt/XPrinterServer.idl84
-rw-r--r--offapi/com/sun/star/awt/XProgressBar.idl89
-rw-r--r--offapi/com/sun/star/awt/XProgressMonitor.idl71
-rw-r--r--offapi/com/sun/star/awt/XRadioButton.idl86
-rw-r--r--offapi/com/sun/star/awt/XRegion.idl130
-rw-r--r--offapi/com/sun/star/awt/XRequestCallback.idl64
-rw-r--r--offapi/com/sun/star/awt/XReschedule.idl60
-rw-r--r--offapi/com/sun/star/awt/XScrollBar.idl150
-rw-r--r--offapi/com/sun/star/awt/XSimpleAnimation.idl72
-rw-r--r--offapi/com/sun/star/awt/XSimpleTabController.idl172
-rw-r--r--offapi/com/sun/star/awt/XSpinField.idl98
-rw-r--r--offapi/com/sun/star/awt/XSpinListener.idl79
-rw-r--r--offapi/com/sun/star/awt/XSpinValue.idl148
-rw-r--r--offapi/com/sun/star/awt/XStyleChangeListener.idl54
-rw-r--r--offapi/com/sun/star/awt/XStyleSettings.idl239
-rw-r--r--offapi/com/sun/star/awt/XStyleSettingsSupplier.idl53
-rw-r--r--offapi/com/sun/star/awt/XSystemChildFactory.idl84
-rw-r--r--offapi/com/sun/star/awt/XSystemDependentMenuPeer.idl77
-rw-r--r--offapi/com/sun/star/awt/XSystemDependentWindowPeer.idl87
-rw-r--r--offapi/com/sun/star/awt/XTabController.idl119
-rw-r--r--offapi/com/sun/star/awt/XTabControllerModel.idl107
-rw-r--r--offapi/com/sun/star/awt/XTabListener.idl97
-rw-r--r--offapi/com/sun/star/awt/XTextArea.idl57
-rw-r--r--offapi/com/sun/star/awt/XTextComponent.idl133
-rw-r--r--offapi/com/sun/star/awt/XTextEditField.idl57
-rw-r--r--offapi/com/sun/star/awt/XTextLayoutConstrains.idl68
-rw-r--r--offapi/com/sun/star/awt/XTextListener.idl61
-rw-r--r--offapi/com/sun/star/awt/XThrobber.idl65
-rw-r--r--offapi/com/sun/star/awt/XTimeField.idl141
-rw-r--r--offapi/com/sun/star/awt/XToggleButton.idl57
-rw-r--r--offapi/com/sun/star/awt/XToolkit.idl118
-rw-r--r--offapi/com/sun/star/awt/XTopWindow.idl93
-rw-r--r--offapi/com/sun/star/awt/XTopWindow2.idl77
-rw-r--r--offapi/com/sun/star/awt/XTopWindowListener.idl101
-rw-r--r--offapi/com/sun/star/awt/XUnitConversion.idl118
-rw-r--r--offapi/com/sun/star/awt/XUnoControlContainer.idl79
-rw-r--r--offapi/com/sun/star/awt/XUserInputInterception.idl100
-rw-r--r--offapi/com/sun/star/awt/XVclContainer.idl81
-rw-r--r--offapi/com/sun/star/awt/XVclContainerListener.idl74
-rw-r--r--offapi/com/sun/star/awt/XVclContainerPeer.idl77
-rw-r--r--offapi/com/sun/star/awt/XVclWindowPeer.idl121
-rw-r--r--offapi/com/sun/star/awt/XView.idl101
-rw-r--r--offapi/com/sun/star/awt/XWindow.idl210
-rw-r--r--offapi/com/sun/star/awt/XWindow2.idl102
-rw-r--r--offapi/com/sun/star/awt/XWindowListener.idl88
-rw-r--r--offapi/com/sun/star/awt/XWindowListener2.idl61
-rw-r--r--offapi/com/sun/star/awt/XWindowPeer.idl93
-rw-r--r--offapi/com/sun/star/awt/grid/DefaultGridColumnModel.idl52
-rw-r--r--offapi/com/sun/star/awt/grid/DefaultGridDataModel.idl53
-rw-r--r--offapi/com/sun/star/awt/grid/GridColumn.idl53
-rw-r--r--offapi/com/sun/star/awt/grid/GridColumnEvent.idl63
-rw-r--r--offapi/com/sun/star/awt/grid/GridControlEvent.idl54
-rw-r--r--offapi/com/sun/star/awt/grid/GridDataEvent.idl78
-rw-r--r--offapi/com/sun/star/awt/grid/GridInvalidDataException.idl58
-rw-r--r--offapi/com/sun/star/awt/grid/GridInvalidModelException.idl57
-rw-r--r--offapi/com/sun/star/awt/grid/GridSelectionEvent.idl71
-rw-r--r--offapi/com/sun/star/awt/grid/ScrollBarMode.idl70
-rw-r--r--offapi/com/sun/star/awt/grid/SelectionEventType.idl66
-rw-r--r--offapi/com/sun/star/awt/grid/UnoControlGrid.idl82
-rw-r--r--offapi/com/sun/star/awt/grid/UnoControlGridModel.idl163
-rw-r--r--offapi/com/sun/star/awt/grid/XGridCell.idl56
-rw-r--r--offapi/com/sun/star/awt/grid/XGridCellRenderer.idl52
-rw-r--r--offapi/com/sun/star/awt/grid/XGridColumn.idl111
-rw-r--r--offapi/com/sun/star/awt/grid/XGridColumnListener.idl73
-rw-r--r--offapi/com/sun/star/awt/grid/XGridColumnModel.idl119
-rw-r--r--offapi/com/sun/star/awt/grid/XGridControl.idl70
-rw-r--r--offapi/com/sun/star/awt/grid/XGridControlListener.idl49
-rw-r--r--offapi/com/sun/star/awt/grid/XGridDataListener.idl75
-rw-r--r--offapi/com/sun/star/awt/grid/XGridDataModel.idl134
-rw-r--r--offapi/com/sun/star/awt/grid/XGridSelection.idl127
-rw-r--r--offapi/com/sun/star/awt/grid/XGridSelectionListener.idl63
-rw-r--r--offapi/com/sun/star/awt/grid/makefile.mk66
-rw-r--r--offapi/com/sun/star/awt/makefile.mk342
-rw-r--r--offapi/com/sun/star/awt/tree/ExpandVetoException.idl58
-rw-r--r--offapi/com/sun/star/awt/tree/MutableTreeDataModel.idl55
-rw-r--r--offapi/com/sun/star/awt/tree/MutableTreeNode.idl50
-rw-r--r--offapi/com/sun/star/awt/tree/TreeControl.idl97
-rw-r--r--offapi/com/sun/star/awt/tree/TreeControlModel.idl114
-rw-r--r--offapi/com/sun/star/awt/tree/TreeDataModelEvent.idl68
-rw-r--r--offapi/com/sun/star/awt/tree/TreeExpansionEvent.idl59
-rw-r--r--offapi/com/sun/star/awt/tree/XMutableTreeDataModel.idl85
-rw-r--r--offapi/com/sun/star/awt/tree/XMutableTreeNode.idl122
-rw-r--r--offapi/com/sun/star/awt/tree/XTreeControl.idl295
-rw-r--r--offapi/com/sun/star/awt/tree/XTreeDataModel.idl92
-rw-r--r--offapi/com/sun/star/awt/tree/XTreeDataModelListener.idl95
-rw-r--r--offapi/com/sun/star/awt/tree/XTreeEditListener.idl89
-rw-r--r--offapi/com/sun/star/awt/tree/XTreeExpansionListener.idl92
-rw-r--r--offapi/com/sun/star/awt/tree/XTreeNode.idl105
-rw-r--r--offapi/com/sun/star/awt/tree/makefile.mk61
-rw-r--r--offapi/com/sun/star/chart/AccessibleChartDocumentView.idl143
-rw-r--r--offapi/com/sun/star/chart/AccessibleChartElement.idl195
-rw-r--r--offapi/com/sun/star/chart/AreaDiagram.idl82
-rw-r--r--offapi/com/sun/star/chart/BarDiagram.idl138
-rw-r--r--offapi/com/sun/star/chart/BubbleDiagram.idl66
-rw-r--r--offapi/com/sun/star/chart/Chart3DBarProperties.idl59
-rw-r--r--offapi/com/sun/star/chart/ChartArea.idl76
-rw-r--r--offapi/com/sun/star/chart/ChartAxis.idl311
-rw-r--r--offapi/com/sun/star/chart/ChartAxisArrangeOrderType.idl76
-rw-r--r--offapi/com/sun/star/chart/ChartAxisAssign.idl59
-rw-r--r--offapi/com/sun/star/chart/ChartAxisLabelPosition.idl75
-rw-r--r--offapi/com/sun/star/chart/ChartAxisMarkPosition.idl67
-rw-r--r--offapi/com/sun/star/chart/ChartAxisMarks.idl70
-rw-r--r--offapi/com/sun/star/chart/ChartAxisPosition.idl73
-rw-r--r--offapi/com/sun/star/chart/ChartAxisXSupplier.idl90
-rw-r--r--offapi/com/sun/star/chart/ChartAxisYSupplier.idl89
-rw-r--r--offapi/com/sun/star/chart/ChartAxisZSupplier.idl88
-rw-r--r--offapi/com/sun/star/chart/ChartData.idl53
-rw-r--r--offapi/com/sun/star/chart/ChartDataArray.idl65
-rw-r--r--offapi/com/sun/star/chart/ChartDataCaption.idl93
-rw-r--r--offapi/com/sun/star/chart/ChartDataChangeEvent.idl85
-rw-r--r--offapi/com/sun/star/chart/ChartDataChangeType.idl88
-rw-r--r--offapi/com/sun/star/chart/ChartDataPoint.idl47
-rw-r--r--offapi/com/sun/star/chart/ChartDataPointProperties.idl173
-rw-r--r--offapi/com/sun/star/chart/ChartDataRow.idl63
-rw-r--r--offapi/com/sun/star/chart/ChartDataRowProperties.idl127
-rw-r--r--offapi/com/sun/star/chart/ChartDataRowSource.idl61
-rw-r--r--offapi/com/sun/star/chart/ChartDataValue.idl67
-rw-r--r--offapi/com/sun/star/chart/ChartDocument.idl100
-rw-r--r--offapi/com/sun/star/chart/ChartErrorCategory.idl101
-rw-r--r--offapi/com/sun/star/chart/ChartErrorIndicatorType.idl70
-rw-r--r--offapi/com/sun/star/chart/ChartGrid.idl74
-rw-r--r--offapi/com/sun/star/chart/ChartLegend.idl100
-rw-r--r--offapi/com/sun/star/chart/ChartLegendPosition.idl93
-rw-r--r--offapi/com/sun/star/chart/ChartLine.idl57
-rw-r--r--offapi/com/sun/star/chart/ChartPieSegmentProperties.idl75
-rw-r--r--offapi/com/sun/star/chart/ChartRegressionCurveType.idl98
-rw-r--r--offapi/com/sun/star/chart/ChartSeriesAddress.idl69
-rw-r--r--offapi/com/sun/star/chart/ChartSolidType.idl72
-rw-r--r--offapi/com/sun/star/chart/ChartStatistics.idl183
-rw-r--r--offapi/com/sun/star/chart/ChartSymbolType.idl139
-rw-r--r--offapi/com/sun/star/chart/ChartTableAddressSupplier.idl80
-rw-r--r--offapi/com/sun/star/chart/ChartTitle.idl98
-rw-r--r--offapi/com/sun/star/chart/ChartTwoAxisXSupplier.idl87
-rw-r--r--offapi/com/sun/star/chart/ChartTwoAxisYSupplier.idl88
-rw-r--r--offapi/com/sun/star/chart/DataLabelPlacement.idl60
-rw-r--r--offapi/com/sun/star/chart/Diagram.idl148
-rw-r--r--offapi/com/sun/star/chart/Dim3DDiagram.idl84
-rw-r--r--offapi/com/sun/star/chart/DonutDiagram.idl54
-rwxr-xr-xoffapi/com/sun/star/chart/ErrorBarStyle.idl98
-rw-r--r--offapi/com/sun/star/chart/FilledNetDiagram.idl69
-rw-r--r--offapi/com/sun/star/chart/LineDiagram.idl161
-rw-r--r--offapi/com/sun/star/chart/MissingValueTreatment.idl50
-rw-r--r--offapi/com/sun/star/chart/NetDiagram.idl65
-rw-r--r--offapi/com/sun/star/chart/PieDiagram.idl57
-rw-r--r--offapi/com/sun/star/chart/StackableDiagram.idl68
-rw-r--r--offapi/com/sun/star/chart/StockDiagram.idl151
-rw-r--r--offapi/com/sun/star/chart/X3DDefaultSetter.idl67
-rw-r--r--offapi/com/sun/star/chart/X3DDisplay.idl84
-rw-r--r--offapi/com/sun/star/chart/XAxisXSupplier.idl105
-rw-r--r--offapi/com/sun/star/chart/XAxisYSupplier.idl105
-rw-r--r--offapi/com/sun/star/chart/XAxisZSupplier.idl102
-rw-r--r--offapi/com/sun/star/chart/XChartData.idl116
-rw-r--r--offapi/com/sun/star/chart/XChartDataArray.idl114
-rw-r--r--offapi/com/sun/star/chart/XChartDataChangeEventListener.idl71
-rw-r--r--offapi/com/sun/star/chart/XChartDocument.idl180
-rwxr-xr-xoffapi/com/sun/star/chart/XComplexDescriptionAccess.idl98
-rw-r--r--offapi/com/sun/star/chart/XDiagram.idl98
-rw-r--r--offapi/com/sun/star/chart/XDiagramPositioning.idl107
-rw-r--r--offapi/com/sun/star/chart/XSecondAxisTitleSupplier.idl24
-rw-r--r--offapi/com/sun/star/chart/XStatisticDisplay.idl99
-rw-r--r--offapi/com/sun/star/chart/XTwoAxisXSupplier.idl71
-rw-r--r--offapi/com/sun/star/chart/XTwoAxisYSupplier.idl68
-rw-r--r--offapi/com/sun/star/chart/XYDiagram.idl77
-rw-r--r--offapi/com/sun/star/chart/makefile.mk119
-rw-r--r--offapi/com/sun/star/chart2/Axis.idl142
-rw-r--r--offapi/com/sun/star/chart2/AxisOrientation.idl51
-rw-r--r--offapi/com/sun/star/chart2/AxisType.idl60
-rw-r--r--offapi/com/sun/star/chart2/Break.idl46
-rw-r--r--offapi/com/sun/star/chart2/CandleStickChartType.idl119
-rw-r--r--offapi/com/sun/star/chart2/ChartDocument.idl92
-rw-r--r--offapi/com/sun/star/chart2/ChartDocumentWrapper.idl67
-rw-r--r--offapi/com/sun/star/chart2/ChartType.idl63
-rw-r--r--offapi/com/sun/star/chart2/ChartTypeManager.idl56
-rw-r--r--offapi/com/sun/star/chart2/ChartTypeTemplate.idl25
-rw-r--r--offapi/com/sun/star/chart2/CoordinateSystem.idl56
-rw-r--r--offapi/com/sun/star/chart2/CoordinateSystemType.idl36
-rw-r--r--offapi/com/sun/star/chart2/CoordinateSystemTypeID.idl17
-rw-r--r--offapi/com/sun/star/chart2/CurveStyle.idl69
-rw-r--r--offapi/com/sun/star/chart2/CustomLegendEntry.idl50
-rw-r--r--offapi/com/sun/star/chart2/DataPoint.idl74
-rw-r--r--offapi/com/sun/star/chart2/DataPointGeometry3D.idl73
-rw-r--r--offapi/com/sun/star/chart2/DataPointLabel.idl78
-rw-r--r--offapi/com/sun/star/chart2/DataPointProperties.idl328
-rw-r--r--offapi/com/sun/star/chart2/DataSeries.idl198
-rw-r--r--offapi/com/sun/star/chart2/Diagram.idl135
-rw-r--r--offapi/com/sun/star/chart2/ErrorBar.idl89
-rw-r--r--offapi/com/sun/star/chart2/ExplicitIncrementData.idl96
-rw-r--r--offapi/com/sun/star/chart2/ExplicitScaleData.idl45
-rw-r--r--offapi/com/sun/star/chart2/ExplicitSubIncrement.idl30
-rw-r--r--offapi/com/sun/star/chart2/ExponentialScaling.idl55
-rw-r--r--offapi/com/sun/star/chart2/FillBitmap.idl119
-rw-r--r--offapi/com/sun/star/chart2/FormattedString.idl44
-rw-r--r--offapi/com/sun/star/chart2/GridProperties.idl63
-rw-r--r--offapi/com/sun/star/chart2/IncrementData.idl69
-rw-r--r--offapi/com/sun/star/chart2/InterpretedData.idl62
-rw-r--r--offapi/com/sun/star/chart2/Legend.idl101
-rw-r--r--offapi/com/sun/star/chart2/LegendExpansion.idl75
-rw-r--r--offapi/com/sun/star/chart2/LegendPosition.idl71
-rw-r--r--offapi/com/sun/star/chart2/LegendSymbolStyle.idl107
-rw-r--r--offapi/com/sun/star/chart2/LightSource.idl68
-rw-r--r--offapi/com/sun/star/chart2/LinearScaling.idl56
-rw-r--r--offapi/com/sun/star/chart2/LogarithmicScaling.idl54
-rw-r--r--offapi/com/sun/star/chart2/LogicTargetModel.idl41
-rw-r--r--offapi/com/sun/star/chart2/MutableDataSequence.idl62
-rw-r--r--offapi/com/sun/star/chart2/PieChartOffsetMode.idl60
-rw-r--r--offapi/com/sun/star/chart2/PowerScaling.idl55
-rw-r--r--offapi/com/sun/star/chart2/PropertyPool.idl68
-rw-r--r--offapi/com/sun/star/chart2/RegressionCurve.idl69
-rw-r--r--offapi/com/sun/star/chart2/RegressionCurveEquation.idl65
-rw-r--r--offapi/com/sun/star/chart2/RelativePosition.idl88
-rw-r--r--offapi/com/sun/star/chart2/RelativeSize.idl84
-rw-r--r--offapi/com/sun/star/chart2/ScaleData.idl97
-rw-r--r--offapi/com/sun/star/chart2/Scaling.idl53
-rw-r--r--offapi/com/sun/star/chart2/StackingDirection.idl52
-rw-r--r--offapi/com/sun/star/chart2/StandardDiagramCreationParameters.idl59
-rw-r--r--offapi/com/sun/star/chart2/SubIncrement.idl31
-rw-r--r--offapi/com/sun/star/chart2/Symbol.idl122
-rw-r--r--offapi/com/sun/star/chart2/SymbolStyle.idl73
-rw-r--r--offapi/com/sun/star/chart2/TextAnchor.idl51
-rw-r--r--offapi/com/sun/star/chart2/TickmarkStyle.idl61
-rw-r--r--offapi/com/sun/star/chart2/Title.idl94
-rw-r--r--offapi/com/sun/star/chart2/TransparencyStyle.idl62
-rw-r--r--offapi/com/sun/star/chart2/ViewLegendEntry.idl58
-rw-r--r--offapi/com/sun/star/chart2/XAxis.idl56
-rw-r--r--offapi/com/sun/star/chart2/XChartDocument.idl141
-rw-r--r--offapi/com/sun/star/chart2/XChartShape.idl96
-rw-r--r--offapi/com/sun/star/chart2/XChartShapeContainer.idl36
-rw-r--r--offapi/com/sun/star/chart2/XChartType.idl75
-rw-r--r--offapi/com/sun/star/chart2/XChartTypeContainer.idl82
-rw-r--r--offapi/com/sun/star/chart2/XChartTypeManager.idl27
-rw-r--r--offapi/com/sun/star/chart2/XChartTypeTemplate.idl240
-rw-r--r--offapi/com/sun/star/chart2/XColorScheme.idl67
-rw-r--r--offapi/com/sun/star/chart2/XCoordinateSystem.idl73
-rw-r--r--offapi/com/sun/star/chart2/XCoordinateSystemContainer.idl80
-rw-r--r--offapi/com/sun/star/chart2/XDataInterpreter.idl107
-rw-r--r--offapi/com/sun/star/chart2/XDataSeries.idl88
-rw-r--r--offapi/com/sun/star/chart2/XDataSeriesContainer.idl82
-rw-r--r--offapi/com/sun/star/chart2/XDefaultSizeTransmitter.idl64
-rw-r--r--offapi/com/sun/star/chart2/XDiagram.idl97
-rw-r--r--offapi/com/sun/star/chart2/XDiagramProvider.idl65
-rw-r--r--offapi/com/sun/star/chart2/XFastPropertyState.idl146
-rw-r--r--offapi/com/sun/star/chart2/XFormattedString.idl35
-rw-r--r--offapi/com/sun/star/chart2/XInternalDataProvider.idl95
-rw-r--r--offapi/com/sun/star/chart2/XLabeled.idl93
-rw-r--r--offapi/com/sun/star/chart2/XLegend.idl59
-rw-r--r--offapi/com/sun/star/chart2/XLegendEntry.idl30
-rw-r--r--offapi/com/sun/star/chart2/XLegendSymbolProvider.idl35
-rw-r--r--offapi/com/sun/star/chart2/XPlotter.idl128
-rw-r--r--offapi/com/sun/star/chart2/XRegressionCurve.idl66
-rw-r--r--offapi/com/sun/star/chart2/XRegressionCurveCalculator.idl152
-rw-r--r--offapi/com/sun/star/chart2/XRegressionCurveContainer.idl81
-rw-r--r--offapi/com/sun/star/chart2/XScaling.idl32
-rw-r--r--offapi/com/sun/star/chart2/XStyleSupplier.idl75
-rw-r--r--offapi/com/sun/star/chart2/XTarget.idl33
-rw-r--r--offapi/com/sun/star/chart2/XTitle.idl61
-rw-r--r--offapi/com/sun/star/chart2/XTitled.idl64
-rw-r--r--offapi/com/sun/star/chart2/XTransformation.idl101
-rw-r--r--offapi/com/sun/star/chart2/XUndoHelper.idl90
-rw-r--r--offapi/com/sun/star/chart2/XUndoManager.idl111
-rw-r--r--offapi/com/sun/star/chart2/XUndoSupplier.idl57
-rw-r--r--offapi/com/sun/star/chart2/data/DataFilter.idl68
-rw-r--r--offapi/com/sun/star/chart2/data/DataProvider.idl69
-rw-r--r--offapi/com/sun/star/chart2/data/DataSequence.idl157
-rw-r--r--offapi/com/sun/star/chart2/data/DataSequenceRole.idl108
-rw-r--r--offapi/com/sun/star/chart2/data/DataSink.idl60
-rw-r--r--offapi/com/sun/star/chart2/data/DataSource.idl60
-rw-r--r--offapi/com/sun/star/chart2/data/HighlightedRange.idl74
-rw-r--r--offapi/com/sun/star/chart2/data/LabelOrigin.idl100
-rw-r--r--offapi/com/sun/star/chart2/data/LabeledDataSequence.idl83
-rw-r--r--offapi/com/sun/star/chart2/data/RangeHighlightListener.idl60
-rw-r--r--offapi/com/sun/star/chart2/data/RangeHighlighter.idl58
-rw-r--r--offapi/com/sun/star/chart2/data/TabularDataProviderArguments.idl161
-rw-r--r--offapi/com/sun/star/chart2/data/XDataProvider.idl164
-rw-r--r--offapi/com/sun/star/chart2/data/XDataReceiver.idl122
-rw-r--r--offapi/com/sun/star/chart2/data/XDataSequence.idl138
-rw-r--r--offapi/com/sun/star/chart2/data/XDataSink.idl78
-rw-r--r--offapi/com/sun/star/chart2/data/XDataSource.idl83
-rw-r--r--offapi/com/sun/star/chart2/data/XDatabaseDataProvider.idl224
-rw-r--r--offapi/com/sun/star/chart2/data/XLabeledDataSequence.idl80
-rw-r--r--offapi/com/sun/star/chart2/data/XNumericalDataSequence.idl60
-rw-r--r--offapi/com/sun/star/chart2/data/XRangeHighlighter.idl80
-rw-r--r--offapi/com/sun/star/chart2/data/XRangeXMLConversion.idl72
-rw-r--r--offapi/com/sun/star/chart2/data/XTextualDataSequence.idl59
-rw-r--r--offapi/com/sun/star/chart2/data/makefile.mk60
-rw-r--r--offapi/com/sun/star/chart2/makefile.mk111
-rw-r--r--offapi/com/sun/star/configuration/AccessRootElement.idl176
-rw-r--r--offapi/com/sun/star/configuration/AdministrationProvider.idl191
-rw-r--r--offapi/com/sun/star/configuration/CannotLoadConfigurationException.idl51
-rw-r--r--offapi/com/sun/star/configuration/ConfigurationAccess.idl265
-rw-r--r--offapi/com/sun/star/configuration/ConfigurationProvider.idl251
-rw-r--r--offapi/com/sun/star/configuration/ConfigurationRegistry.idl108
-rw-r--r--offapi/com/sun/star/configuration/ConfigurationUpdateAccess.idl144
-rw-r--r--offapi/com/sun/star/configuration/CorruptedConfigurationException.idl61
-rw-r--r--offapi/com/sun/star/configuration/CorruptedUIConfigurationException.idl55
-rw-r--r--offapi/com/sun/star/configuration/DefaultProvider.idl100
-rw-r--r--offapi/com/sun/star/configuration/GroupAccess.idl143
-rw-r--r--offapi/com/sun/star/configuration/GroupElement.idl89
-rw-r--r--offapi/com/sun/star/configuration/GroupUpdate.idl93
-rw-r--r--offapi/com/sun/star/configuration/HierarchyAccess.idl187
-rw-r--r--offapi/com/sun/star/configuration/HierarchyElement.idl132
-rw-r--r--offapi/com/sun/star/configuration/InstallationIncompleteException.idl51
-rw-r--r--offapi/com/sun/star/configuration/InvalidBootstrapFileException.idl53
-rw-r--r--offapi/com/sun/star/configuration/MissingBootstrapFileException.idl53
-rw-r--r--offapi/com/sun/star/configuration/PropertyHierarchy.idl104
-rw-r--r--offapi/com/sun/star/configuration/SetAccess.idl105
-rw-r--r--offapi/com/sun/star/configuration/SetElement.idl186
-rw-r--r--offapi/com/sun/star/configuration/SetUpdate.idl105
-rw-r--r--offapi/com/sun/star/configuration/SimpleSetAccess.idl122
-rw-r--r--offapi/com/sun/star/configuration/SimpleSetUpdate.idl184
-rw-r--r--offapi/com/sun/star/configuration/Update.idl45
-rw-r--r--offapi/com/sun/star/configuration/UpdateRootElement.idl110
-rw-r--r--offapi/com/sun/star/configuration/XTemplateContainer.idl80
-rw-r--r--offapi/com/sun/star/configuration/XTemplateInstance.idl70
-rw-r--r--offapi/com/sun/star/configuration/XUpdate.idl57
-rw-r--r--offapi/com/sun/star/configuration/backend/AuthenticationFailedException.idl50
-rw-r--r--offapi/com/sun/star/configuration/backend/Backend.idl100
-rw-r--r--offapi/com/sun/star/configuration/backend/BackendAccessException.idl51
-rw-r--r--offapi/com/sun/star/configuration/backend/BackendAdapter.idl94
-rw-r--r--offapi/com/sun/star/configuration/backend/BackendSetupException.idl59
-rw-r--r--offapi/com/sun/star/configuration/backend/CannotConnectException.idl59
-rw-r--r--offapi/com/sun/star/configuration/backend/ComponentChangeEvent.idl58
-rw-r--r--offapi/com/sun/star/configuration/backend/ConnectionLostException.idl54
-rw-r--r--offapi/com/sun/star/configuration/backend/CopyImporter.idl89
-rw-r--r--offapi/com/sun/star/configuration/backend/DataImporter.idl127
-rw-r--r--offapi/com/sun/star/configuration/backend/DefaultBackend.idl64
-rw-r--r--offapi/com/sun/star/configuration/backend/HierarchyBrowser.idl85
-rw-r--r--offapi/com/sun/star/configuration/backend/Importer.idl87
-rw-r--r--offapi/com/sun/star/configuration/backend/InsufficientAccessRightsException.idl60
-rw-r--r--offapi/com/sun/star/configuration/backend/InteractionHandler.idl102
-rw-r--r--offapi/com/sun/star/configuration/backend/InvalidAuthenticationMechanismException.idl51
-rw-r--r--offapi/com/sun/star/configuration/backend/Layer.idl117
-rw-r--r--offapi/com/sun/star/configuration/backend/LayerDescriber.idl41
-rw-r--r--offapi/com/sun/star/configuration/backend/LayerFilter.idl94
-rw-r--r--offapi/com/sun/star/configuration/backend/LayerUpdateMerger.idl101
-rw-r--r--offapi/com/sun/star/configuration/backend/LdapMultiLayerStratum.idl60
-rw-r--r--offapi/com/sun/star/configuration/backend/LdapSingleBackend.idl61
-rw-r--r--offapi/com/sun/star/configuration/backend/LdapSingleStratum.idl60
-rw-r--r--offapi/com/sun/star/configuration/backend/LocalDataImporter.idl111
-rw-r--r--offapi/com/sun/star/configuration/backend/LocalHierarchyBrowser.idl92
-rw-r--r--offapi/com/sun/star/configuration/backend/LocalSchemaSupplier.idl61
-rw-r--r--offapi/com/sun/star/configuration/backend/LocalSingleBackend.idl61
-rw-r--r--offapi/com/sun/star/configuration/backend/LocalSingleStratum.idl60
-rw-r--r--offapi/com/sun/star/configuration/backend/MalformedDataException.idl91
-rw-r--r--offapi/com/sun/star/configuration/backend/MergeImporter.idl77
-rw-r--r--offapi/com/sun/star/configuration/backend/MergeRecoveryRequest.idl90
-rw-r--r--offapi/com/sun/star/configuration/backend/MultiLayerStratum.idl73
-rw-r--r--offapi/com/sun/star/configuration/backend/MultiStratumBackend.idl76
-rw-r--r--offapi/com/sun/star/configuration/backend/NodeAttribute.idl101
-rw-r--r--offapi/com/sun/star/configuration/backend/OfflineBackend.idl78
-rw-r--r--offapi/com/sun/star/configuration/backend/OnlineBackend.idl65
-rw-r--r--offapi/com/sun/star/configuration/backend/PlatformBackend.idl60
-rw-r--r--offapi/com/sun/star/configuration/backend/PropertyInfo.idl69
-rw-r--r--offapi/com/sun/star/configuration/backend/Schema.idl87
-rw-r--r--offapi/com/sun/star/configuration/backend/SchemaAttribute.idl80
-rw-r--r--offapi/com/sun/star/configuration/backend/SchemaSupplier.idl60
-rw-r--r--offapi/com/sun/star/configuration/backend/SingleBackend.idl101
-rw-r--r--offapi/com/sun/star/configuration/backend/SingleBackendAdapter.idl65
-rw-r--r--offapi/com/sun/star/configuration/backend/SingleLayerStratum.idl73
-rw-r--r--offapi/com/sun/star/configuration/backend/StratumCreationException.idl62
-rw-r--r--offapi/com/sun/star/configuration/backend/SystemIntegration.idl72
-rw-r--r--offapi/com/sun/star/configuration/backend/TemplateIdentifier.idl67
-rw-r--r--offapi/com/sun/star/configuration/backend/UpdatableLayer.idl127
-rw-r--r--offapi/com/sun/star/configuration/backend/XBackend.idl206
-rw-r--r--offapi/com/sun/star/configuration/backend/XBackendChangesListener.idl65
-rw-r--r--offapi/com/sun/star/configuration/backend/XBackendChangesNotifier.idl80
-rw-r--r--offapi/com/sun/star/configuration/backend/XBackendEntities.idl142
-rw-r--r--offapi/com/sun/star/configuration/backend/XCompositeLayer.idl118
-rw-r--r--offapi/com/sun/star/configuration/backend/XLayer.idl91
-rw-r--r--offapi/com/sun/star/configuration/backend/XLayerContentDescriber.idl95
-rw-r--r--offapi/com/sun/star/configuration/backend/XLayerHandler.idl570
-rw-r--r--offapi/com/sun/star/configuration/backend/XLayerImporter.idl163
-rw-r--r--offapi/com/sun/star/configuration/backend/XMultiLayerStratum.idl347
-rw-r--r--offapi/com/sun/star/configuration/backend/XSchema.idl148
-rw-r--r--offapi/com/sun/star/configuration/backend/XSchemaHandler.idl538
-rw-r--r--offapi/com/sun/star/configuration/backend/XSchemaSupplier.idl89
-rw-r--r--offapi/com/sun/star/configuration/backend/XSingleLayerStratum.idl151
-rw-r--r--offapi/com/sun/star/configuration/backend/XUpdatableLayer.idl92
-rw-r--r--offapi/com/sun/star/configuration/backend/XUpdateHandler.idl673
-rw-r--r--offapi/com/sun/star/configuration/backend/XVersionedSchemaSupplier.idl97
-rw-r--r--offapi/com/sun/star/configuration/backend/makefile.mk103
-rw-r--r--offapi/com/sun/star/configuration/backend/xml/LayerParser.idl98
-rw-r--r--offapi/com/sun/star/configuration/backend/xml/LayerWriter.idl93
-rw-r--r--offapi/com/sun/star/configuration/backend/xml/SchemaParser.idl93
-rw-r--r--offapi/com/sun/star/configuration/backend/xml/makefile.mk43
-rw-r--r--offapi/com/sun/star/configuration/bootstrap/BootstrapContext.idl76
-rw-r--r--offapi/com/sun/star/configuration/bootstrap/makefile.mk41
-rw-r--r--offapi/com/sun/star/configuration/makefile.mk74
-rw-r--r--offapi/com/sun/star/datatransfer/DataFlavor.idl64
-rw-r--r--offapi/com/sun/star/datatransfer/DataFormatTranslator.idl78
-rw-r--r--offapi/com/sun/star/datatransfer/MimeContentTypeFactory.idl86
-rw-r--r--offapi/com/sun/star/datatransfer/UnsupportedFlavorException.idl54
-rw-r--r--offapi/com/sun/star/datatransfer/XDataFormatTranslator.idl84
-rw-r--r--offapi/com/sun/star/datatransfer/XMimeContentType.idl115
-rw-r--r--offapi/com/sun/star/datatransfer/XMimeContentTypeFactory.idl82
-rw-r--r--offapi/com/sun/star/datatransfer/XSystemTransferable.idl72
-rw-r--r--offapi/com/sun/star/datatransfer/XTransferDataAccess.idl84
-rw-r--r--offapi/com/sun/star/datatransfer/XTransferable.idl110
-rw-r--r--offapi/com/sun/star/datatransfer/XTransferableEx.idl71
-rw-r--r--offapi/com/sun/star/datatransfer/XTransferableSource.idl59
-rw-r--r--offapi/com/sun/star/datatransfer/XTransferableSupplier.idl77
-rw-r--r--offapi/com/sun/star/datatransfer/clipboard/ClipboardEvent.idl61
-rw-r--r--offapi/com/sun/star/datatransfer/clipboard/ClipboardManager.idl84
-rw-r--r--offapi/com/sun/star/datatransfer/clipboard/GenericClipboard.idl96
-rw-r--r--offapi/com/sun/star/datatransfer/clipboard/RenderingCapabilities.idl59
-rw-r--r--offapi/com/sun/star/datatransfer/clipboard/SystemClipboard.idl114
-rw-r--r--offapi/com/sun/star/datatransfer/clipboard/XClipboard.idl100
-rw-r--r--offapi/com/sun/star/datatransfer/clipboard/XClipboardEx.idl62
-rw-r--r--offapi/com/sun/star/datatransfer/clipboard/XClipboardFactory.idl75
-rw-r--r--offapi/com/sun/star/datatransfer/clipboard/XClipboardListener.idl65
-rw-r--r--offapi/com/sun/star/datatransfer/clipboard/XClipboardManager.idl114
-rw-r--r--offapi/com/sun/star/datatransfer/clipboard/XClipboardNotifier.idl70
-rw-r--r--offapi/com/sun/star/datatransfer/clipboard/XClipboardOwner.idl73
-rw-r--r--offapi/com/sun/star/datatransfer/clipboard/XFlushableClipboard.idl60
-rw-r--r--offapi/com/sun/star/datatransfer/clipboard/makefile.mk59
-rw-r--r--offapi/com/sun/star/datatransfer/dnd/DNDConstants.idl89
-rw-r--r--offapi/com/sun/star/datatransfer/dnd/DragGestureEvent.idl96
-rw-r--r--offapi/com/sun/star/datatransfer/dnd/DragSourceDragEvent.idl72
-rw-r--r--offapi/com/sun/star/datatransfer/dnd/DragSourceDropEvent.idl70
-rw-r--r--offapi/com/sun/star/datatransfer/dnd/DragSourceEvent.idl73
-rw-r--r--offapi/com/sun/star/datatransfer/dnd/DropTargetDragEnterEvent.idl69
-rw-r--r--offapi/com/sun/star/datatransfer/dnd/DropTargetDragEvent.idl97
-rw-r--r--offapi/com/sun/star/datatransfer/dnd/DropTargetDropEvent.idl106
-rw-r--r--offapi/com/sun/star/datatransfer/dnd/DropTargetEvent.idl61
-rw-r--r--offapi/com/sun/star/datatransfer/dnd/InvalidDNDOperationException.idl56
-rw-r--r--offapi/com/sun/star/datatransfer/dnd/OleDragSource.idl102
-rw-r--r--offapi/com/sun/star/datatransfer/dnd/OleDropTarget.idl94
-rw-r--r--offapi/com/sun/star/datatransfer/dnd/X11DragSource.idl97
-rw-r--r--offapi/com/sun/star/datatransfer/dnd/X11DropTarget.idl100
-rw-r--r--offapi/com/sun/star/datatransfer/dnd/XAutoscroll.idl90
-rw-r--r--offapi/com/sun/star/datatransfer/dnd/XDragGestureListener.idl70
-rw-r--r--offapi/com/sun/star/datatransfer/dnd/XDragGestureRecognizer.idl84
-rw-r--r--offapi/com/sun/star/datatransfer/dnd/XDragSource.idl139
-rw-r--r--offapi/com/sun/star/datatransfer/dnd/XDragSourceContext.idl107
-rw-r--r--offapi/com/sun/star/datatransfer/dnd/XDragSourceListener.idl114
-rw-r--r--offapi/com/sun/star/datatransfer/dnd/XDropTarget.idl130
-rw-r--r--offapi/com/sun/star/datatransfer/dnd/XDropTargetDragContext.idl91
-rw-r--r--offapi/com/sun/star/datatransfer/dnd/XDropTargetDropContext.idl96
-rw-r--r--offapi/com/sun/star/datatransfer/dnd/XDropTargetListener.idl116
-rw-r--r--offapi/com/sun/star/datatransfer/dnd/makefile.mk70
-rw-r--r--offapi/com/sun/star/datatransfer/makefile.mk59
-rw-r--r--offapi/com/sun/star/deployment/DependencyException.idl71
-rw-r--r--offapi/com/sun/star/deployment/DeploymentException.idl49
-rw-r--r--offapi/com/sun/star/deployment/ExtensionManager.idl49
-rw-r--r--offapi/com/sun/star/deployment/ExtensionRemovedException.idl50
-rw-r--r--offapi/com/sun/star/deployment/InstallException.idl57
-rw-r--r--offapi/com/sun/star/deployment/InvalidRemovedParameterException.idl62
-rw-r--r--offapi/com/sun/star/deployment/LicenseException.idl61
-rw-r--r--offapi/com/sun/star/deployment/PackageInformationProvider.idl40
-rw-r--r--offapi/com/sun/star/deployment/PackageRegistryBackend.idl70
-rw-r--r--offapi/com/sun/star/deployment/PlatformException.idl50
-rw-r--r--offapi/com/sun/star/deployment/Prerequisites.idl45
-rw-r--r--offapi/com/sun/star/deployment/UpdateInformationEntry.idl52
-rw-r--r--offapi/com/sun/star/deployment/UpdateInformationProvider.idl40
-rw-r--r--offapi/com/sun/star/deployment/VersionException.idl65
-rw-r--r--offapi/com/sun/star/deployment/XExtensionManager.idl342
-rw-r--r--offapi/com/sun/star/deployment/XPackage.idl358
-rw-r--r--offapi/com/sun/star/deployment/XPackageInformationProvider.idl70
-rw-r--r--offapi/com/sun/star/deployment/XPackageManager.idl314
-rw-r--r--offapi/com/sun/star/deployment/XPackageManagerFactory.idl100
-rw-r--r--offapi/com/sun/star/deployment/XPackageRegistry.idl122
-rw-r--r--offapi/com/sun/star/deployment/XPackageTypeInfo.idl94
-rw-r--r--offapi/com/sun/star/deployment/XUpdateInformationProvider.idl109
-rw-r--r--offapi/com/sun/star/deployment/makefile.mk64
-rw-r--r--offapi/com/sun/star/deployment/test/SmoketestCommandEnvironment.idl43
-rw-r--r--offapi/com/sun/star/deployment/test/makefile.mk41
-rw-r--r--offapi/com/sun/star/deployment/thePackageManagerFactory.idl53
-rw-r--r--offapi/com/sun/star/deployment/ui/LicenseDialog.idl61
-rw-r--r--offapi/com/sun/star/deployment/ui/PackageManagerDialog.idl74
-rw-r--r--offapi/com/sun/star/deployment/ui/UpdateRequiredDialog.idl54
-rw-r--r--offapi/com/sun/star/deployment/ui/makefile.mk43
-rw-r--r--offapi/com/sun/star/document/AmbigousFilterRequest.idl75
-rw-r--r--offapi/com/sun/star/document/BrokenPackageRequest.idl56
-rw-r--r--offapi/com/sun/star/document/ChangedByOthersRequest.idl61
-rw-r--r--offapi/com/sun/star/document/CorruptedFilterConfigurationException.idl57
-rw-r--r--offapi/com/sun/star/document/DocumentEvent.idl85
-rw-r--r--offapi/com/sun/star/document/DocumentInfo.idl272
-rwxr-xr-xoffapi/com/sun/star/document/DocumentProperties.idl64
-rw-r--r--offapi/com/sun/star/document/DocumentRevisionListPersistence.idl51
-rw-r--r--offapi/com/sun/star/document/EventDescriptor.idl68
-rw-r--r--offapi/com/sun/star/document/EventObject.idl63
-rw-r--r--offapi/com/sun/star/document/Events.idl105
-rw-r--r--offapi/com/sun/star/document/ExportFilter.idl136
-rw-r--r--offapi/com/sun/star/document/ExtendedTypeDetection.idl109
-rw-r--r--offapi/com/sun/star/document/ExtendedTypeDetectionFactory.idl154
-rw-r--r--offapi/com/sun/star/document/FilterAdapter.idl53
-rw-r--r--offapi/com/sun/star/document/FilterFactory.idl251
-rw-r--r--offapi/com/sun/star/document/FilterOptionsRequest.idl68
-rw-r--r--offapi/com/sun/star/document/HeaderFooterSettings.idl73
-rw-r--r--offapi/com/sun/star/document/ImportFilter.idl136
-rw-r--r--offapi/com/sun/star/document/LinkTarget.idl69
-rw-r--r--offapi/com/sun/star/document/LinkTargets.idl58
-rw-r--r--offapi/com/sun/star/document/LinkUpdateModes.idl61
-rw-r--r--offapi/com/sun/star/document/LockFileIgnoreRequest.idl61
-rw-r--r--offapi/com/sun/star/document/LockedDocumentRequest.idl68
-rw-r--r--offapi/com/sun/star/document/LockedOnSavingRequest.idl69
-rw-r--r--offapi/com/sun/star/document/MacroExecMode.idl132
-rw-r--r--offapi/com/sun/star/document/MediaDescriptor.idl617
-rw-r--r--offapi/com/sun/star/document/NoSuchFilterRequest.idl69
-rw-r--r--offapi/com/sun/star/document/OOXMLDocumentPropertiesImporter.idl48
-rw-r--r--offapi/com/sun/star/document/OfficeDocument.idl230
-rw-r--r--offapi/com/sun/star/document/OleEmbeddedServerRegistration.idl64
-rw-r--r--offapi/com/sun/star/document/OwnLockOnDocumentRequest.idl72
-rw-r--r--offapi/com/sun/star/document/PDFDialog.idl64
-rw-r--r--offapi/com/sun/star/document/PrinterIndependentLayout.idl66
-rw-r--r--offapi/com/sun/star/document/RedlineDisplayType.idl60
-rw-r--r--offapi/com/sun/star/document/Settings.idl291
-rw-r--r--offapi/com/sun/star/document/StandaloneDocumentInfo.idl79
-rw-r--r--offapi/com/sun/star/document/TypeDetection.idl198
-rw-r--r--offapi/com/sun/star/document/UpdateDocMode.idl75
-rw-r--r--offapi/com/sun/star/document/XActionLockable.idl88
-rw-r--r--offapi/com/sun/star/document/XBinaryStreamResolver.idl84
-rwxr-xr-xoffapi/com/sun/star/document/XCodeNameQuery.idl56
-rw-r--r--offapi/com/sun/star/document/XDocumentEventBroadcaster.idl125
-rw-r--r--offapi/com/sun/star/document/XDocumentEventListener.idl65
-rw-r--r--offapi/com/sun/star/document/XDocumentInfo.idl147
-rw-r--r--offapi/com/sun/star/document/XDocumentInfoSupplier.idl74
-rw-r--r--offapi/com/sun/star/document/XDocumentInsertable.idl72
-rw-r--r--offapi/com/sun/star/document/XDocumentLanguages.idl64
-rwxr-xr-xoffapi/com/sun/star/document/XDocumentProperties.idl460
-rw-r--r--offapi/com/sun/star/document/XDocumentPropertiesSupplier.idl70
-rw-r--r--offapi/com/sun/star/document/XDocumentRecovery.idl127
-rw-r--r--offapi/com/sun/star/document/XDocumentRevisionListPersistence.idl90
-rw-r--r--offapi/com/sun/star/document/XDocumentSubStorageSupplier.idl87
-rw-r--r--offapi/com/sun/star/document/XEmbeddedObjectResolver.idl54
-rw-r--r--offapi/com/sun/star/document/XEmbeddedObjectSupplier.idl60
-rw-r--r--offapi/com/sun/star/document/XEmbeddedObjectSupplier2.idl80
-rw-r--r--offapi/com/sun/star/document/XEmbeddedScripts.idl72
-rw-r--r--offapi/com/sun/star/document/XEventBroadcaster.idl72
-rw-r--r--offapi/com/sun/star/document/XEventListener.idl66
-rw-r--r--offapi/com/sun/star/document/XEventsSupplier.idl57
-rw-r--r--offapi/com/sun/star/document/XExporter.idl78
-rw-r--r--offapi/com/sun/star/document/XExtendedFilterDetection.idl82
-rw-r--r--offapi/com/sun/star/document/XFilter.idl88
-rw-r--r--offapi/com/sun/star/document/XFilterAdapter.idl67
-rw-r--r--offapi/com/sun/star/document/XGraphicObjectResolver.idl54
-rw-r--r--offapi/com/sun/star/document/XImporter.idl78
-rw-r--r--offapi/com/sun/star/document/XInteractionFilterOptions.idl69
-rw-r--r--offapi/com/sun/star/document/XInteractionFilterSelect.idl80
-rw-r--r--offapi/com/sun/star/document/XLinkTargetSupplier.idl65
-rw-r--r--offapi/com/sun/star/document/XMLBasicExporter.idl84
-rw-r--r--offapi/com/sun/star/document/XMLBasicImporter.idl75
-rw-r--r--offapi/com/sun/star/document/XMLOasisBasicExporter.idl84
-rw-r--r--offapi/com/sun/star/document/XMLOasisBasicImporter.idl75
-rw-r--r--offapi/com/sun/star/document/XMimeTypeInfo.idl63
-rw-r--r--offapi/com/sun/star/document/XOOXMLDocumentPropertiesImporter.idl105
-rw-r--r--offapi/com/sun/star/document/XRedlinesSupplier.idl60
-rw-r--r--offapi/com/sun/star/document/XScriptInvocationContext.idl73
-rw-r--r--offapi/com/sun/star/document/XStandaloneDocumentInfo.idl105
-rw-r--r--offapi/com/sun/star/document/XStorageBasedDocument.idl123
-rw-r--r--offapi/com/sun/star/document/XStorageChangeListener.idl70
-rw-r--r--offapi/com/sun/star/document/XTypeDetection.idl124
-rw-r--r--offapi/com/sun/star/document/XViewDataSupplier.idl76
-rw-r--r--offapi/com/sun/star/document/makefile.mk123
-rw-r--r--offapi/com/sun/star/drawing/AccessibleDrawDocumentView.idl142
-rw-r--r--offapi/com/sun/star/drawing/AccessibleGraphControl.idl83
-rw-r--r--offapi/com/sun/star/drawing/AccessibleGraphicShape.idl100
-rw-r--r--offapi/com/sun/star/drawing/AccessibleImageBullet.idl111
-rw-r--r--offapi/com/sun/star/drawing/AccessibleOLEShape.idl87
-rw-r--r--offapi/com/sun/star/drawing/AccessibleShape.idl206
-rw-r--r--offapi/com/sun/star/drawing/AccessibleSlideView.idl65
-rw-r--r--offapi/com/sun/star/drawing/AccessibleSlideViewObject.idl64
-rw-r--r--offapi/com/sun/star/drawing/Alignment.idl104
-rw-r--r--offapi/com/sun/star/drawing/AppletShape.idl98
-rw-r--r--offapi/com/sun/star/drawing/Arrangement.idl80
-rw-r--r--offapi/com/sun/star/drawing/Background.idl54
-rw-r--r--offapi/com/sun/star/drawing/BezierPoint.idl77
-rw-r--r--offapi/com/sun/star/drawing/BitmapMode.idl66
-rw-r--r--offapi/com/sun/star/drawing/BitmapTable.idl64
-rw-r--r--offapi/com/sun/star/drawing/BoundVolume.idl60
-rw-r--r--offapi/com/sun/star/drawing/CameraGeometry.idl64
-rw-r--r--offapi/com/sun/star/drawing/CaptionEscapeDirection.idl67
-rw-r--r--offapi/com/sun/star/drawing/CaptionShape.idl158
-rw-r--r--offapi/com/sun/star/drawing/CaptionType.idl66
-rw-r--r--offapi/com/sun/star/drawing/CircleKind.idl77
-rw-r--r--offapi/com/sun/star/drawing/ClosedBezierShape.idl89
-rw-r--r--offapi/com/sun/star/drawing/ColorMode.idl79
-rw-r--r--offapi/com/sun/star/drawing/ConnectionType.idl92
-rw-r--r--offapi/com/sun/star/drawing/ConnectorProperties.idl82
-rw-r--r--offapi/com/sun/star/drawing/ConnectorShape.idl152
-rw-r--r--offapi/com/sun/star/drawing/ConnectorType.idl78
-rw-r--r--offapi/com/sun/star/drawing/ControlShape.idl61
-rw-r--r--offapi/com/sun/star/drawing/CoordinateSequence.idl45
-rw-r--r--offapi/com/sun/star/drawing/CoordinateSequenceSequence.idl48
-rw-r--r--offapi/com/sun/star/drawing/CustomShape.idl116
-rw-r--r--offapi/com/sun/star/drawing/CustomShapeEngine.idl64
-rw-r--r--offapi/com/sun/star/drawing/DashStyle.idl79
-rw-r--r--offapi/com/sun/star/drawing/DashTable.idl64
-rw-r--r--offapi/com/sun/star/drawing/Defaults.idl80
-rw-r--r--offapi/com/sun/star/drawing/Direction3D.idl64
-rw-r--r--offapi/com/sun/star/drawing/DocumentSettings.idl109
-rw-r--r--offapi/com/sun/star/drawing/DoubleSequence.idl44
-rw-r--r--offapi/com/sun/star/drawing/DoubleSequenceSequence.idl48
-rw-r--r--offapi/com/sun/star/drawing/DrawPage.idl88
-rw-r--r--offapi/com/sun/star/drawing/DrawPages.idl80
-rw-r--r--offapi/com/sun/star/drawing/DrawViewMode.idl72
-rw-r--r--offapi/com/sun/star/drawing/DrawingDocument.idl54
-rw-r--r--offapi/com/sun/star/drawing/DrawingDocumentDrawView.idl203
-rw-r--r--offapi/com/sun/star/drawing/DrawingDocumentFactory.idl54
-rw-r--r--offapi/com/sun/star/drawing/EllipseShape.idl105
-rw-r--r--offapi/com/sun/star/drawing/EnhancedCustomShapeAdjustmentValue.idl58
-rw-r--r--offapi/com/sun/star/drawing/EnhancedCustomShapeExtrusion.idl176
-rw-r--r--offapi/com/sun/star/drawing/EnhancedCustomShapeGeometry.idl119
-rw-r--r--offapi/com/sun/star/drawing/EnhancedCustomShapeGluePointType.idl64
-rw-r--r--offapi/com/sun/star/drawing/EnhancedCustomShapeHandle.idl121
-rw-r--r--offapi/com/sun/star/drawing/EnhancedCustomShapeParameter.idl54
-rw-r--r--offapi/com/sun/star/drawing/EnhancedCustomShapeParameterPair.idl56
-rw-r--r--offapi/com/sun/star/drawing/EnhancedCustomShapeParameterType.idl107
-rw-r--r--offapi/com/sun/star/drawing/EnhancedCustomShapePath.idl119
-rw-r--r--offapi/com/sun/star/drawing/EnhancedCustomShapeSegment.idl54
-rw-r--r--offapi/com/sun/star/drawing/EnhancedCustomShapeSegmentCommand.idl115
-rw-r--r--offapi/com/sun/star/drawing/EnhancedCustomShapeTextFrame.idl57
-rw-r--r--offapi/com/sun/star/drawing/EnhancedCustomShapeTextPath.idl63
-rw-r--r--offapi/com/sun/star/drawing/EnhancedCustomShapeTextPathMode.idl57
-rw-r--r--offapi/com/sun/star/drawing/EscapeDirection.idl76
-rw-r--r--offapi/com/sun/star/drawing/FillProperties.idl274
-rw-r--r--offapi/com/sun/star/drawing/FillStyle.idl89
-rw-r--r--offapi/com/sun/star/drawing/FlagSequence.idl48
-rw-r--r--offapi/com/sun/star/drawing/FlagSequenceSequence.idl49
-rw-r--r--offapi/com/sun/star/drawing/GenericDrawPage.idl238
-rw-r--r--offapi/com/sun/star/drawing/GenericDrawingDocument.idl240
-rw-r--r--offapi/com/sun/star/drawing/GluePoint.idl91
-rw-r--r--offapi/com/sun/star/drawing/GluePoint2.idl89
-rw-r--r--offapi/com/sun/star/drawing/GradientTable.idl64
-rw-r--r--offapi/com/sun/star/drawing/GraphicExportFilter.idl104
-rw-r--r--offapi/com/sun/star/drawing/GraphicFilterRequest.idl56
-rw-r--r--offapi/com/sun/star/drawing/GraphicObjectShape.idl160
-rw-r--r--offapi/com/sun/star/drawing/GroupShape.idl76
-rw-r--r--offapi/com/sun/star/drawing/Hatch.idl86
-rw-r--r--offapi/com/sun/star/drawing/HatchStyle.idl70
-rw-r--r--offapi/com/sun/star/drawing/HatchTable.idl64
-rw-r--r--offapi/com/sun/star/drawing/HomogenMatrix.idl74
-rw-r--r--offapi/com/sun/star/drawing/HomogenMatrix3.idl64
-rw-r--r--offapi/com/sun/star/drawing/HomogenMatrix4.idl68
-rw-r--r--offapi/com/sun/star/drawing/HomogenMatrixLine.idl70
-rw-r--r--offapi/com/sun/star/drawing/HomogenMatrixLine3.idl59
-rw-r--r--offapi/com/sun/star/drawing/HomogenMatrixLine4.idl63
-rw-r--r--offapi/com/sun/star/drawing/HorizontalDimensioning.idl79
-rw-r--r--offapi/com/sun/star/drawing/Layer.idl106
-rw-r--r--offapi/com/sun/star/drawing/LayerManager.idl80
-rw-r--r--offapi/com/sun/star/drawing/LayerType.idl77
-rw-r--r--offapi/com/sun/star/drawing/LineDash.idl94
-rw-r--r--offapi/com/sun/star/drawing/LineEndType.idl92
-rw-r--r--offapi/com/sun/star/drawing/LineJoint.idl74
-rw-r--r--offapi/com/sun/star/drawing/LineProperties.idl161
-rw-r--r--offapi/com/sun/star/drawing/LineShape.idl82
-rw-r--r--offapi/com/sun/star/drawing/LineStyle.idl74
-rw-r--r--offapi/com/sun/star/drawing/MarkerTable.idl64
-rw-r--r--offapi/com/sun/star/drawing/MasterPage.idl77
-rw-r--r--offapi/com/sun/star/drawing/MasterPages.idl60
-rw-r--r--offapi/com/sun/star/drawing/MeasureKind.idl69
-rw-r--r--offapi/com/sun/star/drawing/MeasureProperties.idl154
-rw-r--r--offapi/com/sun/star/drawing/MeasureShape.idl94
-rw-r--r--offapi/com/sun/star/drawing/MeasureTextHorzPos.idl75
-rw-r--r--offapi/com/sun/star/drawing/MeasureTextVertPos.idl80
-rw-r--r--offapi/com/sun/star/drawing/MirrorAxis.idl63
-rw-r--r--offapi/com/sun/star/drawing/NormalsKind.idl73
-rw-r--r--offapi/com/sun/star/drawing/OLE2Shape.idl89
-rw-r--r--offapi/com/sun/star/drawing/OpenBezierShape.idl84
-rw-r--r--offapi/com/sun/star/drawing/PageShape.idl67
-rw-r--r--offapi/com/sun/star/drawing/PluginShape.idl82
-rw-r--r--offapi/com/sun/star/drawing/PointSequence.idl48
-rw-r--r--offapi/com/sun/star/drawing/PointSequenceSequence.idl48
-rw-r--r--offapi/com/sun/star/drawing/PolyLineShape.idl84
-rw-r--r--offapi/com/sun/star/drawing/PolyPolygonBezierCoords.idl66
-rw-r--r--offapi/com/sun/star/drawing/PolyPolygonBezierDescriptor.idl75
-rw-r--r--offapi/com/sun/star/drawing/PolyPolygonBezierShape.idl90
-rw-r--r--offapi/com/sun/star/drawing/PolyPolygonDescriptor.idl74
-rw-r--r--offapi/com/sun/star/drawing/PolyPolygonShape.idl92
-rw-r--r--offapi/com/sun/star/drawing/PolyPolygonShape3D.idl68
-rw-r--r--offapi/com/sun/star/drawing/PolygonFlags.idl81
-rw-r--r--offapi/com/sun/star/drawing/PolygonKind.idl112
-rw-r--r--offapi/com/sun/star/drawing/Position3D.idl70
-rw-r--r--offapi/com/sun/star/drawing/ProjectionMode.idl66
-rw-r--r--offapi/com/sun/star/drawing/RectanglePoint.idl121
-rw-r--r--offapi/com/sun/star/drawing/RectangleShape.idl90
-rw-r--r--offapi/com/sun/star/drawing/RotationDescriptor.idl77
-rw-r--r--offapi/com/sun/star/drawing/ShadeMode.idl80
-rw-r--r--offapi/com/sun/star/drawing/ShadowProperties.idl86
-rw-r--r--offapi/com/sun/star/drawing/Shape.idl210
-rw-r--r--offapi/com/sun/star/drawing/ShapeCollection.idl67
-rw-r--r--offapi/com/sun/star/drawing/Shapes.idl56
-rw-r--r--offapi/com/sun/star/drawing/SlideRenderer.idl48
-rw-r--r--offapi/com/sun/star/drawing/SlideSorter.idl160
-rw-r--r--offapi/com/sun/star/drawing/SnapObjectType.idl67
-rw-r--r--offapi/com/sun/star/drawing/Text.idl65
-rw-r--r--offapi/com/sun/star/drawing/TextAdjust.idl90
-rw-r--r--offapi/com/sun/star/drawing/TextAnimationDirection.idl73
-rw-r--r--offapi/com/sun/star/drawing/TextAnimationKind.idl84
-rw-r--r--offapi/com/sun/star/drawing/TextFitToSizeType.idl74
-rw-r--r--offapi/com/sun/star/drawing/TextHorizontalAdjust.idl73
-rw-r--r--offapi/com/sun/star/drawing/TextProperties.idl334
-rw-r--r--offapi/com/sun/star/drawing/TextShape.idl87
-rw-r--r--offapi/com/sun/star/drawing/TextVerticalAdjust.idl76
-rw-r--r--offapi/com/sun/star/drawing/TextureKind.idl67
-rw-r--r--offapi/com/sun/star/drawing/TextureKind2.idl66
-rw-r--r--offapi/com/sun/star/drawing/TextureMode.idl71
-rw-r--r--offapi/com/sun/star/drawing/TextureProjectionMode.idl76
-rw-r--r--offapi/com/sun/star/drawing/TransparencyGradientTable.idl64
-rw-r--r--offapi/com/sun/star/drawing/VerticalDimensioning.idl79
-rw-r--r--offapi/com/sun/star/drawing/XConnectableShape.idl72
-rw-r--r--offapi/com/sun/star/drawing/XConnectorShape.idl92
-rw-r--r--offapi/com/sun/star/drawing/XControlShape.idl83
-rw-r--r--offapi/com/sun/star/drawing/XCustomShapeEngine.idl87
-rw-r--r--offapi/com/sun/star/drawing/XCustomShapeHandle.idl68
-rw-r--r--offapi/com/sun/star/drawing/XDrawPage.idl52
-rw-r--r--offapi/com/sun/star/drawing/XDrawPageDuplicator.idl73
-rw-r--r--offapi/com/sun/star/drawing/XDrawPageExpander.idl74
-rw-r--r--offapi/com/sun/star/drawing/XDrawPageSummarizer.idl72
-rw-r--r--offapi/com/sun/star/drawing/XDrawPageSupplier.idl71
-rw-r--r--offapi/com/sun/star/drawing/XDrawPages.idl90
-rw-r--r--offapi/com/sun/star/drawing/XDrawPagesSupplier.idl62
-rw-r--r--offapi/com/sun/star/drawing/XDrawSubController.idl74
-rw-r--r--offapi/com/sun/star/drawing/XDrawView.idl76
-rw-r--r--offapi/com/sun/star/drawing/XEnhancedCustomShapeDefaulter.idl295
-rw-r--r--offapi/com/sun/star/drawing/XGluePointsSupplier.idl58
-rw-r--r--offapi/com/sun/star/drawing/XLayer.idl52
-rw-r--r--offapi/com/sun/star/drawing/XLayerManager.idl117
-rw-r--r--offapi/com/sun/star/drawing/XLayerSupplier.idl66
-rw-r--r--offapi/com/sun/star/drawing/XMasterPageTarget.idl74
-rw-r--r--offapi/com/sun/star/drawing/XMasterPagesSupplier.idl64
-rw-r--r--offapi/com/sun/star/drawing/XPresenterHelper.idl179
-rw-r--r--offapi/com/sun/star/drawing/XSelectionFunction.idl86
-rw-r--r--offapi/com/sun/star/drawing/XShape.idl102
-rw-r--r--offapi/com/sun/star/drawing/XShapeAligner.idl72
-rw-r--r--offapi/com/sun/star/drawing/XShapeArranger.idl121
-rw-r--r--offapi/com/sun/star/drawing/XShapeBinder.idl89
-rw-r--r--offapi/com/sun/star/drawing/XShapeCombiner.idl92
-rw-r--r--offapi/com/sun/star/drawing/XShapeDescriptor.idl61
-rw-r--r--offapi/com/sun/star/drawing/XShapeGroup.idl85
-rw-r--r--offapi/com/sun/star/drawing/XShapeGrouper.idl93
-rw-r--r--offapi/com/sun/star/drawing/XShapeMirror.idl83
-rw-r--r--offapi/com/sun/star/drawing/XShapes.idl80
-rw-r--r--offapi/com/sun/star/drawing/XSlidePreviewCache.idl143
-rw-r--r--offapi/com/sun/star/drawing/XSlideRenderer.idl112
-rw-r--r--offapi/com/sun/star/drawing/XUniversalShapeDescriptor.idl59
-rw-r--r--offapi/com/sun/star/drawing/framework/AnchorBindingMode.idl54
-rw-r--r--offapi/com/sun/star/drawing/framework/BasicPaneFactory.idl62
-rw-r--r--offapi/com/sun/star/drawing/framework/BasicToolBarFactory.idl65
-rw-r--r--offapi/com/sun/star/drawing/framework/BasicViewFactory.idl67
-rw-r--r--offapi/com/sun/star/drawing/framework/Configuration.idl58
-rw-r--r--offapi/com/sun/star/drawing/framework/ConfigurationChangeEvent.idl87
-rw-r--r--offapi/com/sun/star/drawing/framework/ConfigurationController.idl63
-rw-r--r--offapi/com/sun/star/drawing/framework/ModuleController.idl59
-rw-r--r--offapi/com/sun/star/drawing/framework/ResourceActivationMode.idl54
-rw-r--r--offapi/com/sun/star/drawing/framework/ResourceId.idl70
-rw-r--r--offapi/com/sun/star/drawing/framework/TabBarButton.idl64
-rw-r--r--offapi/com/sun/star/drawing/framework/XConfiguration.idl138
-rw-r--r--offapi/com/sun/star/drawing/framework/XConfigurationChangeListener.idl57
-rw-r--r--offapi/com/sun/star/drawing/framework/XConfigurationChangeRequest.idl68
-rw-r--r--offapi/com/sun/star/drawing/framework/XConfigurationController.idl272
-rw-r--r--offapi/com/sun/star/drawing/framework/XConfigurationControllerBroadcaster.idl91
-rw-r--r--offapi/com/sun/star/drawing/framework/XConfigurationControllerRequestQueue.idl77
-rw-r--r--offapi/com/sun/star/drawing/framework/XControllerManager.idl63
-rw-r--r--offapi/com/sun/star/drawing/framework/XModuleController.idl67
-rw-r--r--offapi/com/sun/star/drawing/framework/XPane.idl75
-rw-r--r--offapi/com/sun/star/drawing/framework/XPane2.idl76
-rw-r--r--offapi/com/sun/star/drawing/framework/XPaneBorderPainter.idl161
-rw-r--r--offapi/com/sun/star/drawing/framework/XRelocatableResource.idl56
-rw-r--r--offapi/com/sun/star/drawing/framework/XResource.idl63
-rw-r--r--offapi/com/sun/star/drawing/framework/XResourceFactory.idl92
-rw-r--r--offapi/com/sun/star/drawing/framework/XResourceFactoryManager.idl98
-rw-r--r--offapi/com/sun/star/drawing/framework/XResourceId.idl157
-rw-r--r--offapi/com/sun/star/drawing/framework/XTabBar.idl106
-rw-r--r--offapi/com/sun/star/drawing/framework/XToolBar.idl48
-rw-r--r--offapi/com/sun/star/drawing/framework/XView.idl56
-rw-r--r--offapi/com/sun/star/drawing/framework/makefile.mk75
-rw-r--r--offapi/com/sun/star/drawing/makefile.mk227
-rw-r--r--offapi/com/sun/star/drawing/modules.idl65
-rw-r--r--offapi/com/sun/star/embed/Actions.idl70
-rw-r--r--offapi/com/sun/star/embed/Aspects.idl84
-rw-r--r--offapi/com/sun/star/embed/BaseStorage.idl82
-rw-r--r--offapi/com/sun/star/embed/DocumentCloser.idl88
-rw-r--r--offapi/com/sun/star/embed/ElementModes.idl116
-rw-r--r--offapi/com/sun/star/embed/EmbedMapUnits.idl112
-rw-r--r--offapi/com/sun/star/embed/EmbedMisc.idl188
-rw-r--r--offapi/com/sun/star/embed/EmbedStates.idl99
-rw-r--r--offapi/com/sun/star/embed/EmbedUpdateModes.idl68
-rw-r--r--offapi/com/sun/star/embed/EmbedVerbs.idl84
-rw-r--r--offapi/com/sun/star/embed/EmbeddedObjectDescriptor.idl114
-rw-r--r--offapi/com/sun/star/embed/EntryInitModes.idl81
-rw-r--r--offapi/com/sun/star/embed/FileSystemStorage.idl117
-rw-r--r--offapi/com/sun/star/embed/FileSystemStorageFactory.idl109
-rw-r--r--offapi/com/sun/star/embed/InsertedObjectInfo.idl71
-rw-r--r--offapi/com/sun/star/embed/InstanceLocker.idl117
-rw-r--r--offapi/com/sun/star/embed/InvalidStorageException.idl56
-rw-r--r--offapi/com/sun/star/embed/LinkageMisuseException.idl56
-rw-r--r--offapi/com/sun/star/embed/NeedsRunningStateException.idl59
-rw-r--r--offapi/com/sun/star/embed/NoVisualAreaSizeException.idl53
-rw-r--r--offapi/com/sun/star/embed/OLESimpleStorage.idl82
-rw-r--r--offapi/com/sun/star/embed/ObjectSaveVetoException.idl55
-rw-r--r--offapi/com/sun/star/embed/StateChangeInProgressException.idl62
-rw-r--r--offapi/com/sun/star/embed/Storage.idl367
-rw-r--r--offapi/com/sun/star/embed/StorageFactory.idl126
-rw-r--r--offapi/com/sun/star/embed/StorageFormats.idl65
-rw-r--r--offapi/com/sun/star/embed/StorageStream.idl239
-rw-r--r--offapi/com/sun/star/embed/StorageWrappedTargetException.idl53
-rw-r--r--offapi/com/sun/star/embed/UnreachableStateException.idl61
-rw-r--r--offapi/com/sun/star/embed/UseBackupException.idl66
-rw-r--r--offapi/com/sun/star/embed/VerbAttributes.idl59
-rw-r--r--offapi/com/sun/star/embed/VerbDescriptor.idl76
-rw-r--r--offapi/com/sun/star/embed/VisualRepresentation.idl61
-rw-r--r--offapi/com/sun/star/embed/WrongStateException.idl53
-rw-r--r--offapi/com/sun/star/embed/XActionsApproval.idl70
-rw-r--r--offapi/com/sun/star/embed/XClassifiedObject.idl86
-rw-r--r--offapi/com/sun/star/embed/XCommonEmbedPersist.idl136
-rw-r--r--offapi/com/sun/star/embed/XComponentSupplier.idl61
-rw-r--r--offapi/com/sun/star/embed/XEmbedObjectClipboardCreator.idl122
-rw-r--r--offapi/com/sun/star/embed/XEmbedObjectCreator.idl206
-rw-r--r--offapi/com/sun/star/embed/XEmbedObjectFactory.idl134
-rw-r--r--offapi/com/sun/star/embed/XEmbedPersist.idl275
-rw-r--r--offapi/com/sun/star/embed/XEmbeddedClient.idl90
-rw-r--r--offapi/com/sun/star/embed/XEmbeddedObject.idl306
-rw-r--r--offapi/com/sun/star/embed/XEncryptionProtectedSource.idl74
-rw-r--r--offapi/com/sun/star/embed/XExtendedStorageStream.idl134
-rw-r--r--offapi/com/sun/star/embed/XHatchWindow.idl75
-rw-r--r--offapi/com/sun/star/embed/XHatchWindowController.idl83
-rw-r--r--offapi/com/sun/star/embed/XHatchWindowFactory.idl91
-rw-r--r--offapi/com/sun/star/embed/XHierarchicalStorageAccess.idl235
-rw-r--r--offapi/com/sun/star/embed/XInplaceClient.idl242
-rw-r--r--offapi/com/sun/star/embed/XInplaceObject.idl133
-rw-r--r--offapi/com/sun/star/embed/XInsertObjectDialog.idl112
-rw-r--r--offapi/com/sun/star/embed/XLinkCreator.idl116
-rw-r--r--offapi/com/sun/star/embed/XLinkFactory.idl119
-rw-r--r--offapi/com/sun/star/embed/XLinkageSupport.idl146
-rw-r--r--offapi/com/sun/star/embed/XOLESimpleStorage.idl105
-rw-r--r--offapi/com/sun/star/embed/XOptimizedStorage.idl226
-rw-r--r--offapi/com/sun/star/embed/XPackageStructureCreator.idl71
-rw-r--r--offapi/com/sun/star/embed/XPersistanceHolder.idl88
-rw-r--r--offapi/com/sun/star/embed/XRelationshipAccess.idl283
-rw-r--r--offapi/com/sun/star/embed/XStateChangeBroadcaster.idl67
-rw-r--r--offapi/com/sun/star/embed/XStateChangeListener.idl102
-rw-r--r--offapi/com/sun/star/embed/XStorage.idl661
-rw-r--r--offapi/com/sun/star/embed/XStorageRawAccess.idl235
-rw-r--r--offapi/com/sun/star/embed/XTransactedObject.idl71
-rw-r--r--offapi/com/sun/star/embed/XTransactionBroadcaster.idl68
-rw-r--r--offapi/com/sun/star/embed/XTransactionListener.idl81
-rw-r--r--offapi/com/sun/star/embed/XTransferableSupplier.idl62
-rw-r--r--offapi/com/sun/star/embed/XVisualObject.idl179
-rw-r--r--offapi/com/sun/star/embed/XWindowSupplier.idl57
-rw-r--r--offapi/com/sun/star/embed/makefile.mk116
-rw-r--r--offapi/com/sun/star/form/DataAwareControlModel.idl195
-rw-r--r--offapi/com/sun/star/form/DataSelectionType.idl58
-rw-r--r--offapi/com/sun/star/form/DatabaseDeleteEvent.idl55
-rw-r--r--offapi/com/sun/star/form/DatabaseParameterEvent.idl70
-rw-r--r--offapi/com/sun/star/form/ErrorEvent.idl60
-rw-r--r--offapi/com/sun/star/form/FormButtonType.idl77
-rw-r--r--offapi/com/sun/star/form/FormComponent.idl129
-rw-r--r--offapi/com/sun/star/form/FormComponentType.idl144
-rw-r--r--offapi/com/sun/star/form/FormComponents.idl107
-rw-r--r--offapi/com/sun/star/form/FormControlModel.idl110
-rw-r--r--offapi/com/sun/star/form/FormController.idl114
-rw-r--r--offapi/com/sun/star/form/FormControllerDispatcher.idl57
-rw-r--r--offapi/com/sun/star/form/FormSubmitEncoding.idl71
-rw-r--r--offapi/com/sun/star/form/FormSubmitMethod.idl63
-rw-r--r--offapi/com/sun/star/form/Forms.idl72
-rw-r--r--offapi/com/sun/star/form/ListSourceType.idl89
-rw-r--r--offapi/com/sun/star/form/NavigationBarMode.idl83
-rw-r--r--offapi/com/sun/star/form/PropertyBrowserController.idl147
-rw-r--r--offapi/com/sun/star/form/TabulatorCycle.idl84
-rw-r--r--offapi/com/sun/star/form/XApproveActionBroadcaster.idl81
-rw-r--r--offapi/com/sun/star/form/XApproveActionListener.idl77
-rw-r--r--offapi/com/sun/star/form/XBoundComponent.idl75
-rw-r--r--offapi/com/sun/star/form/XBoundControl.idl74
-rw-r--r--offapi/com/sun/star/form/XChangeBroadcaster.idl85
-rw-r--r--offapi/com/sun/star/form/XChangeListener.idl73
-rw-r--r--offapi/com/sun/star/form/XConfirmDeleteBroadcaster.idl86
-rw-r--r--offapi/com/sun/star/form/XConfirmDeleteListener.idl71
-rw-r--r--offapi/com/sun/star/form/XDatabaseParameterBroadcaster.idl83
-rw-r--r--offapi/com/sun/star/form/XDatabaseParameterBroadcaster2.idl79
-rw-r--r--offapi/com/sun/star/form/XDatabaseParameterListener.idl72
-rw-r--r--offapi/com/sun/star/form/XDeleteListener.idl80
-rw-r--r--offapi/com/sun/star/form/XErrorBroadcaster.idl75
-rw-r--r--offapi/com/sun/star/form/XErrorListener.idl75
-rw-r--r--offapi/com/sun/star/form/XForm.idl59
-rw-r--r--offapi/com/sun/star/form/XFormComponent.idl59
-rw-r--r--offapi/com/sun/star/form/XFormController.idl67
-rw-r--r--offapi/com/sun/star/form/XFormControllerListener.idl84
-rw-r--r--offapi/com/sun/star/form/XFormsSupplier.idl105
-rw-r--r--offapi/com/sun/star/form/XFormsSupplier2.idl68
-rw-r--r--offapi/com/sun/star/form/XGrid.idl79
-rw-r--r--offapi/com/sun/star/form/XGridColumnFactory.idl93
-rw-r--r--offapi/com/sun/star/form/XGridControl.idl69
-rw-r--r--offapi/com/sun/star/form/XGridControlListener.idl57
-rw-r--r--offapi/com/sun/star/form/XGridFieldDataSupplier.idl97
-rw-r--r--offapi/com/sun/star/form/XGridPeer.idl80
-rw-r--r--offapi/com/sun/star/form/XImageProducerSupplier.idl69
-rw-r--r--offapi/com/sun/star/form/XInsertListener.idl77
-rw-r--r--offapi/com/sun/star/form/XLoadListener.idl114
-rw-r--r--offapi/com/sun/star/form/XLoadable.idl107
-rw-r--r--offapi/com/sun/star/form/XPositioningListener.idl70
-rw-r--r--offapi/com/sun/star/form/XReset.idl85
-rw-r--r--offapi/com/sun/star/form/XResetListener.idl91
-rw-r--r--offapi/com/sun/star/form/XRestoreListener.idl74
-rw-r--r--offapi/com/sun/star/form/XSubmit.idl106
-rw-r--r--offapi/com/sun/star/form/XSubmitListener.idl79
-rw-r--r--offapi/com/sun/star/form/XUpdateBroadcaster.idl84
-rw-r--r--offapi/com/sun/star/form/XUpdateListener.idl87
-rw-r--r--offapi/com/sun/star/form/binding/BindableControlModel.idl92
-rw-r--r--offapi/com/sun/star/form/binding/BindableDataAwareControlModel.idl132
-rw-r--r--offapi/com/sun/star/form/binding/BindableDatabaseCheckBox.idl95
-rw-r--r--offapi/com/sun/star/form/binding/BindableDatabaseComboBox.idl73
-rw-r--r--offapi/com/sun/star/form/binding/BindableDatabaseDateField.idl70
-rw-r--r--offapi/com/sun/star/form/binding/BindableDatabaseFormattedField.idl69
-rw-r--r--offapi/com/sun/star/form/binding/BindableDatabaseListBox.idl81
-rw-r--r--offapi/com/sun/star/form/binding/BindableDatabaseNumericField.idl69
-rw-r--r--offapi/com/sun/star/form/binding/BindableDatabaseRadioButton.idl92
-rw-r--r--offapi/com/sun/star/form/binding/BindableDatabaseTextField.idl72
-rw-r--r--offapi/com/sun/star/form/binding/BindableDatabaseTimeField.idl70
-rw-r--r--offapi/com/sun/star/form/binding/BindableIntegerValueRange.idl75
-rw-r--r--offapi/com/sun/star/form/binding/IncompatibleTypesException.idl54
-rw-r--r--offapi/com/sun/star/form/binding/InvalidBindingStateException.idl54
-rw-r--r--offapi/com/sun/star/form/binding/ListEntryEvent.idl74
-rw-r--r--offapi/com/sun/star/form/binding/ListEntrySource.idl74
-rw-r--r--offapi/com/sun/star/form/binding/ValueBinding.idl124
-rw-r--r--offapi/com/sun/star/form/binding/XBindableValue.idl78
-rw-r--r--offapi/com/sun/star/form/binding/XListEntryListener.idl89
-rw-r--r--offapi/com/sun/star/form/binding/XListEntrySink.idl68
-rw-r--r--offapi/com/sun/star/form/binding/XListEntrySource.idl100
-rw-r--r--offapi/com/sun/star/form/binding/XValueBinding.idl104
-rw-r--r--offapi/com/sun/star/form/binding/makefile.mk69
-rw-r--r--offapi/com/sun/star/form/component/CheckBox.idl92
-rw-r--r--offapi/com/sun/star/form/component/ComboBox.idl78
-rw-r--r--offapi/com/sun/star/form/component/CommandButton.idl116
-rw-r--r--offapi/com/sun/star/form/component/CurrencyField.idl77
-rw-r--r--offapi/com/sun/star/form/component/DataForm.idl232
-rw-r--r--offapi/com/sun/star/form/component/DatabaseCheckBox.idl64
-rw-r--r--offapi/com/sun/star/form/component/DatabaseComboBox.idl96
-rw-r--r--offapi/com/sun/star/form/component/DatabaseCurrencyField.idl59
-rw-r--r--offapi/com/sun/star/form/component/DatabaseDateField.idl59
-rw-r--r--offapi/com/sun/star/form/component/DatabaseFormattedField.idl73
-rw-r--r--offapi/com/sun/star/form/component/DatabaseImageControl.idl122
-rw-r--r--offapi/com/sun/star/form/component/DatabaseListBox.idl159
-rw-r--r--offapi/com/sun/star/form/component/DatabaseNumericField.idl59
-rw-r--r--offapi/com/sun/star/form/component/DatabasePatternField.idl74
-rw-r--r--offapi/com/sun/star/form/component/DatabaseRadioButton.idl59
-rw-r--r--offapi/com/sun/star/form/component/DatabaseTextField.idl73
-rw-r--r--offapi/com/sun/star/form/component/DatabaseTimeField.idl59
-rw-r--r--offapi/com/sun/star/form/component/DateField.idl81
-rw-r--r--offapi/com/sun/star/form/component/FileControl.idl78
-rw-r--r--offapi/com/sun/star/form/component/FixedText.idl64
-rw-r--r--offapi/com/sun/star/form/component/Form.idl93
-rw-r--r--offapi/com/sun/star/form/component/FormattedField.idl72
-rw-r--r--offapi/com/sun/star/form/component/GridControl.idl210
-rw-r--r--offapi/com/sun/star/form/component/GroupBox.idl60
-rw-r--r--offapi/com/sun/star/form/component/HTMLForm.idl106
-rw-r--r--offapi/com/sun/star/form/component/HiddenControl.idl65
-rw-r--r--offapi/com/sun/star/form/component/ImageButton.idl116
-rw-r--r--offapi/com/sun/star/form/component/ListBox.idl84
-rw-r--r--offapi/com/sun/star/form/component/NavigationToolBar.idl150
-rw-r--r--offapi/com/sun/star/form/component/NumericField.idl80
-rw-r--r--offapi/com/sun/star/form/component/PatternField.idl78
-rw-r--r--offapi/com/sun/star/form/component/RadioButton.idl112
-rw-r--r--offapi/com/sun/star/form/component/RichTextControl.idl91
-rw-r--r--offapi/com/sun/star/form/component/ScrollBar.idl78
-rw-r--r--offapi/com/sun/star/form/component/SpinButton.idl78
-rw-r--r--offapi/com/sun/star/form/component/SubmitButton.idl72
-rw-r--r--offapi/com/sun/star/form/component/TextField.idl89
-rw-r--r--offapi/com/sun/star/form/component/TimeField.idl81
-rw-r--r--offapi/com/sun/star/form/component/makefile.mk83
-rw-r--r--offapi/com/sun/star/form/control/CheckBox.idl70
-rw-r--r--offapi/com/sun/star/form/control/ComboBox.idl70
-rw-r--r--offapi/com/sun/star/form/control/CommandButton.idl88
-rw-r--r--offapi/com/sun/star/form/control/CurrencyField.idl71
-rw-r--r--offapi/com/sun/star/form/control/DateField.idl71
-rw-r--r--offapi/com/sun/star/form/control/FormattedField.idl76
-rw-r--r--offapi/com/sun/star/form/control/GridControl.idl172
-rw-r--r--offapi/com/sun/star/form/control/GroupBox.idl68
-rw-r--r--offapi/com/sun/star/form/control/ImageButton.idl88
-rw-r--r--offapi/com/sun/star/form/control/ImageControl.idl74
-rw-r--r--offapi/com/sun/star/form/control/InteractionGridControl.idl85
-rw-r--r--offapi/com/sun/star/form/control/ListBox.idl86
-rw-r--r--offapi/com/sun/star/form/control/NavigationToolBar.idl57
-rw-r--r--offapi/com/sun/star/form/control/NumericField.idl71
-rw-r--r--offapi/com/sun/star/form/control/PatternField.idl71
-rw-r--r--offapi/com/sun/star/form/control/RadioButton.idl70
-rw-r--r--offapi/com/sun/star/form/control/SubmitButton.idl88
-rw-r--r--offapi/com/sun/star/form/control/TextField.idl90
-rw-r--r--offapi/com/sun/star/form/control/TimeField.idl71
-rw-r--r--offapi/com/sun/star/form/control/makefile.mk64
-rw-r--r--offapi/com/sun/star/form/inspection/ButtonNavigationHandler.idl65
-rw-r--r--offapi/com/sun/star/form/inspection/CellBindingPropertyHandler.idl68
-rw-r--r--offapi/com/sun/star/form/inspection/DefaultFormComponentInspectorModel.idl101
-rw-r--r--offapi/com/sun/star/form/inspection/EditPropertyHandler.idl69
-rw-r--r--offapi/com/sun/star/form/inspection/EventHandler.idl63
-rw-r--r--offapi/com/sun/star/form/inspection/FormComponentPropertyHandler.idl56
-rw-r--r--offapi/com/sun/star/form/inspection/SubmissionPropertyHandler.idl67
-rw-r--r--offapi/com/sun/star/form/inspection/XMLFormsPropertyHandler.idl73
-rw-r--r--offapi/com/sun/star/form/inspection/XSDValidationPropertyHandler.idl77
-rw-r--r--offapi/com/sun/star/form/inspection/makefile.mk54
-rw-r--r--offapi/com/sun/star/form/makefile.mk104
-rw-r--r--offapi/com/sun/star/form/modules.idl68
-rw-r--r--offapi/com/sun/star/form/runtime/FeatureState.idl62
-rw-r--r--offapi/com/sun/star/form/runtime/FilterEvent.idl65
-rw-r--r--offapi/com/sun/star/form/runtime/FormController.idl52
-rw-r--r--offapi/com/sun/star/form/runtime/FormFeature.idl155
-rw-r--r--offapi/com/sun/star/form/runtime/FormOperations.idl91
-rw-r--r--offapi/com/sun/star/form/runtime/XFeatureInvalidation.idl76
-rw-r--r--offapi/com/sun/star/form/runtime/XFilterController.idl181
-rw-r--r--offapi/com/sun/star/form/runtime/XFilterControllerListener.idl85
-rw-r--r--offapi/com/sun/star/form/runtime/XFormController.idl374
-rw-r--r--offapi/com/sun/star/form/runtime/XFormControllerContext.idl58
-rw-r--r--offapi/com/sun/star/form/runtime/XFormOperations.idl284
-rw-r--r--offapi/com/sun/star/form/runtime/makefile.mk56
-rw-r--r--offapi/com/sun/star/form/submission/XSubmission.idl114
-rw-r--r--offapi/com/sun/star/form/submission/XSubmissionSupplier.idl60
-rw-r--r--offapi/com/sun/star/form/submission/XSubmissionVetoListener.idl71
-rw-r--r--offapi/com/sun/star/form/submission/makefile.mk48
-rw-r--r--offapi/com/sun/star/form/validation/ValidatableBindableControlModel.idl79
-rw-r--r--offapi/com/sun/star/form/validation/ValidatableControlModel.idl97
-rw-r--r--offapi/com/sun/star/form/validation/XFormComponentValidityListener.idl63
-rw-r--r--offapi/com/sun/star/form/validation/XValidatable.idl77
-rw-r--r--offapi/com/sun/star/form/validation/XValidatableFormComponent.idl126
-rw-r--r--offapi/com/sun/star/form/validation/XValidator.idl107
-rw-r--r--offapi/com/sun/star/form/validation/XValidityConstraintListener.idl60
-rw-r--r--offapi/com/sun/star/form/validation/makefile.mk53
-rw-r--r--offapi/com/sun/star/formula/AccessibleFormulaText.idl69
-rw-r--r--offapi/com/sun/star/formula/AccessibleFormulaView.idl70
-rw-r--r--offapi/com/sun/star/formula/FormulaProperties.idl347
-rw-r--r--offapi/com/sun/star/formula/SymbolDescriptor.idl113
-rw-r--r--offapi/com/sun/star/formula/makefile.mk49
-rw-r--r--offapi/com/sun/star/frame/BorderWidths.idl68
-rw-r--r--offapi/com/sun/star/frame/CommandGroup.idl179
-rw-r--r--offapi/com/sun/star/frame/Components.idl61
-rw-r--r--offapi/com/sun/star/frame/ContentHandler.idl70
-rw-r--r--offapi/com/sun/star/frame/ContentHandlerFactory.idl111
-rw-r--r--offapi/com/sun/star/frame/ControlCommand.idl67
-rw-r--r--offapi/com/sun/star/frame/ControlEvent.idl74
-rw-r--r--offapi/com/sun/star/frame/Controller.idl130
-rw-r--r--offapi/com/sun/star/frame/Desktop.idl100
-rw-r--r--offapi/com/sun/star/frame/DesktopTask.idl109
-rw-r--r--offapi/com/sun/star/frame/DesktopTasks.idl50
-rw-r--r--offapi/com/sun/star/frame/DispatchDescriptor.idl93
-rw-r--r--offapi/com/sun/star/frame/DispatchHelper.idl67
-rw-r--r--offapi/com/sun/star/frame/DispatchInformation.idl67
-rw-r--r--offapi/com/sun/star/frame/DispatchProvider.idl86
-rw-r--r--offapi/com/sun/star/frame/DispatchRecorder.idl75
-rw-r--r--offapi/com/sun/star/frame/DispatchRecorderSupplier.idl68
-rw-r--r--offapi/com/sun/star/frame/DispatchResultEvent.idl73
-rw-r--r--offapi/com/sun/star/frame/DispatchResultState.idl59
-rw-r--r--offapi/com/sun/star/frame/DispatchStatement.idl105
-rw-r--r--offapi/com/sun/star/frame/DocumentTemplates.idl55
-rw-r--r--offapi/com/sun/star/frame/DoubleInitializationException.idl54
-rw-r--r--offapi/com/sun/star/frame/FeatureStateEvent.idl95
-rw-r--r--offapi/com/sun/star/frame/Frame.idl206
-rw-r--r--offapi/com/sun/star/frame/FrameAction.idl151
-rw-r--r--offapi/com/sun/star/frame/FrameActionEvent.idl69
-rw-r--r--offapi/com/sun/star/frame/FrameControl.idl80
-rw-r--r--offapi/com/sun/star/frame/FrameLoader.idl99
-rw-r--r--offapi/com/sun/star/frame/FrameLoaderFactory.idl110
-rw-r--r--offapi/com/sun/star/frame/FrameSearchFlag.idl130
-rw-r--r--offapi/com/sun/star/frame/FramesContainer.idl61
-rw-r--r--offapi/com/sun/star/frame/GlobalEventBroadcaster.idl66
-rw-r--r--offapi/com/sun/star/frame/IllegalArgumentIOException.idl54
-rw-r--r--offapi/com/sun/star/frame/LayoutManager.idl132
-rw-r--r--offapi/com/sun/star/frame/LayoutManagerEvents.idl133
-rw-r--r--offapi/com/sun/star/frame/MediaTypeDetectionHelper.idl61
-rw-r--r--offapi/com/sun/star/frame/ModuleManager.idl78
-rw-r--r--offapi/com/sun/star/frame/PopupMenuController.idl153
-rw-r--r--offapi/com/sun/star/frame/PopupMenuControllerFactory.idl85
-rw-r--r--offapi/com/sun/star/frame/ProtocolHandler.idl97
-rw-r--r--offapi/com/sun/star/frame/SessionManager.idl84
-rw-r--r--offapi/com/sun/star/frame/Settings.idl50
-rw-r--r--offapi/com/sun/star/frame/StatusbarController.idl142
-rw-r--r--offapi/com/sun/star/frame/StatusbarControllerFactory.idl91
-rw-r--r--offapi/com/sun/star/frame/SynchronousFrameLoader.idl99
-rw-r--r--offapi/com/sun/star/frame/Task.idl78
-rw-r--r--offapi/com/sun/star/frame/TemplateAccess.idl62
-rw-r--r--offapi/com/sun/star/frame/TerminationVetoException.idl61
-rw-r--r--offapi/com/sun/star/frame/TitleChangedEvent.idl53
-rw-r--r--offapi/com/sun/star/frame/ToolbarController.idl146
-rw-r--r--offapi/com/sun/star/frame/TransientDocumentsDocumentContentFactory.idl56
-rw-r--r--offapi/com/sun/star/frame/UnknownModuleException.idl51
-rw-r--r--offapi/com/sun/star/frame/WindowArrange.idl74
-rw-r--r--offapi/com/sun/star/frame/XBorderResizeListener.idl66
-rw-r--r--offapi/com/sun/star/frame/XBrowseHistoryRegistry.idl66
-rw-r--r--offapi/com/sun/star/frame/XComponentLoader.idl192
-rw-r--r--offapi/com/sun/star/frame/XComponentRegistry.idl60
-rw-r--r--offapi/com/sun/star/frame/XConfigManager.idl118
-rw-r--r--offapi/com/sun/star/frame/XControlNotificationListener.idl65
-rw-r--r--offapi/com/sun/star/frame/XController.idl125
-rw-r--r--offapi/com/sun/star/frame/XController2.idl81
-rw-r--r--offapi/com/sun/star/frame/XControllerBorder.idl91
-rw-r--r--offapi/com/sun/star/frame/XDesktop.idl165
-rw-r--r--offapi/com/sun/star/frame/XDesktopTask.idl69
-rw-r--r--offapi/com/sun/star/frame/XDispatch.idl164
-rw-r--r--offapi/com/sun/star/frame/XDispatchHelper.idl96
-rw-r--r--offapi/com/sun/star/frame/XDispatchInformationProvider.idl91
-rw-r--r--offapi/com/sun/star/frame/XDispatchProvider.idl109
-rw-r--r--offapi/com/sun/star/frame/XDispatchProviderInterception.idl90
-rw-r--r--offapi/com/sun/star/frame/XDispatchProviderInterceptor.idl100
-rw-r--r--offapi/com/sun/star/frame/XDispatchRecorder.idl146
-rw-r--r--offapi/com/sun/star/frame/XDispatchRecorderSupplier.idl130
-rw-r--r--offapi/com/sun/star/frame/XDispatchResultListener.idl64
-rw-r--r--offapi/com/sun/star/frame/XDocumentTemplates.idl215
-rw-r--r--offapi/com/sun/star/frame/XExtendedFilterDetection.idl65
-rw-r--r--offapi/com/sun/star/frame/XFilterDetect.idl58
-rw-r--r--offapi/com/sun/star/frame/XFrame.idl388
-rw-r--r--offapi/com/sun/star/frame/XFrameActionListener.idl70
-rw-r--r--offapi/com/sun/star/frame/XFrameLoader.idl109
-rw-r--r--offapi/com/sun/star/frame/XFrameLoaderQuery.idl82
-rw-r--r--offapi/com/sun/star/frame/XFrameSetModel.idl58
-rw-r--r--offapi/com/sun/star/frame/XFrames.idl102
-rw-r--r--offapi/com/sun/star/frame/XFramesSupplier.idl106
-rw-r--r--offapi/com/sun/star/frame/XInplaceLayout.idl67
-rw-r--r--offapi/com/sun/star/frame/XInterceptorInfo.idl73
-rw-r--r--offapi/com/sun/star/frame/XLayoutManager.idl510
-rw-r--r--offapi/com/sun/star/frame/XLayoutManagerEventBroadcaster.idl68
-rw-r--r--offapi/com/sun/star/frame/XLayoutManagerListener.idl72
-rw-r--r--offapi/com/sun/star/frame/XLoadEventListener.idl68
-rw-r--r--offapi/com/sun/star/frame/XLoadable.idl85
-rw-r--r--offapi/com/sun/star/frame/XMenuBarAcceptor.idl68
-rw-r--r--offapi/com/sun/star/frame/XMenuBarMergingAcceptor.idl82
-rw-r--r--offapi/com/sun/star/frame/XModel.idl236
-rw-r--r--offapi/com/sun/star/frame/XModel2.idl152
-rw-r--r--offapi/com/sun/star/frame/XModule.idl79
-rw-r--r--offapi/com/sun/star/frame/XModuleManager.idl115
-rw-r--r--offapi/com/sun/star/frame/XNotifyingDispatch.idl73
-rw-r--r--offapi/com/sun/star/frame/XPopupMenuController.idl81
-rw-r--r--offapi/com/sun/star/frame/XRecordableDispatch.idl114
-rw-r--r--offapi/com/sun/star/frame/XSessionManagerClient.idl106
-rw-r--r--offapi/com/sun/star/frame/XSessionManagerListener.idl103
-rw-r--r--offapi/com/sun/star/frame/XSessionManagerListener2.idl53
-rw-r--r--offapi/com/sun/star/frame/XStatusListener.idl70
-rw-r--r--offapi/com/sun/star/frame/XStatusbarController.idl172
-rw-r--r--offapi/com/sun/star/frame/XStorable.idl176
-rw-r--r--offapi/com/sun/star/frame/XStorable2.idl92
-rw-r--r--offapi/com/sun/star/frame/XSubToolbarController.idl102
-rw-r--r--offapi/com/sun/star/frame/XSynchronousDispatch.idl77
-rw-r--r--offapi/com/sun/star/frame/XSynchronousFrameLoader.idl95
-rw-r--r--offapi/com/sun/star/frame/XTask.idl73
-rw-r--r--offapi/com/sun/star/frame/XTasksSupplier.idl70
-rw-r--r--offapi/com/sun/star/frame/XTerminateListener.idl89
-rw-r--r--offapi/com/sun/star/frame/XTerminateListener2.idl69
-rw-r--r--offapi/com/sun/star/frame/XTitle.idl62
-rw-r--r--offapi/com/sun/star/frame/XTitleChangeBroadcaster.idl62
-rw-r--r--offapi/com/sun/star/frame/XTitleChangeListener.idl57
-rw-r--r--offapi/com/sun/star/frame/XToolbarController.idl110
-rw-r--r--offapi/com/sun/star/frame/XToolbarControllerListener.idl64
-rw-r--r--offapi/com/sun/star/frame/XTransientDocumentsDocumentContentFactory.idl92
-rw-r--r--offapi/com/sun/star/frame/XUIControllerRegistration.idl107
-rw-r--r--offapi/com/sun/star/frame/XUntitledNumbers.idl118
-rw-r--r--offapi/com/sun/star/frame/XUrlList.idl52
-rw-r--r--offapi/com/sun/star/frame/XWindowArranger.idl59
-rw-r--r--offapi/com/sun/star/frame/makefile.mk166
-rw-r--r--offapi/com/sun/star/frame/status/ClipboardFormats.idl63
-rw-r--r--offapi/com/sun/star/frame/status/FontHeight.idl70
-rw-r--r--offapi/com/sun/star/frame/status/ItemState.idl85
-rw-r--r--offapi/com/sun/star/frame/status/ItemStatus.idl62
-rw-r--r--offapi/com/sun/star/frame/status/LeftRightMargin.idl58
-rw-r--r--offapi/com/sun/star/frame/status/Template.idl60
-rw-r--r--offapi/com/sun/star/frame/status/UpperLowerMargin.idl58
-rw-r--r--offapi/com/sun/star/frame/status/UpperLowerMarginScale.idl70
-rw-r--r--offapi/com/sun/star/frame/status/Verb.idl72
-rw-r--r--offapi/com/sun/star/frame/status/Visibility.idl53
-rw-r--r--offapi/com/sun/star/frame/status/makefile.mk55
-rw-r--r--offapi/com/sun/star/gallery/GalleryItem.idl100
-rw-r--r--offapi/com/sun/star/gallery/GalleryItemType.idl62
-rw-r--r--offapi/com/sun/star/gallery/GalleryTheme.idl57
-rw-r--r--offapi/com/sun/star/gallery/GalleryThemeProvider.idl73
-rw-r--r--offapi/com/sun/star/gallery/XGalleryItem.idl59
-rw-r--r--offapi/com/sun/star/gallery/XGalleryTheme.idl172
-rw-r--r--offapi/com/sun/star/gallery/XGalleryThemeProvider.idl94
-rw-r--r--offapi/com/sun/star/gallery/makefile.mk51
-rw-r--r--offapi/com/sun/star/geometry/AffineMatrix2D.idl93
-rw-r--r--offapi/com/sun/star/geometry/AffineMatrix3D.idl113
-rw-r--r--offapi/com/sun/star/geometry/EllipticalArc.idl94
-rw-r--r--offapi/com/sun/star/geometry/IntegerBezierSegment2D.idl67
-rw-r--r--offapi/com/sun/star/geometry/IntegerPoint2D.idl52
-rw-r--r--offapi/com/sun/star/geometry/IntegerRectangle2D.idl79
-rw-r--r--offapi/com/sun/star/geometry/IntegerSize2D.idl51
-rw-r--r--offapi/com/sun/star/geometry/Matrix2D.idl90
-rw-r--r--offapi/com/sun/star/geometry/RealBezierSegment2D.idl67
-rw-r--r--offapi/com/sun/star/geometry/RealPoint2D.idl52
-rw-r--r--offapi/com/sun/star/geometry/RealRectangle2D.idl79
-rw-r--r--offapi/com/sun/star/geometry/RealRectangle3D.idl79
-rw-r--r--offapi/com/sun/star/geometry/RealSize2D.idl51
-rw-r--r--offapi/com/sun/star/geometry/XMapping2D.idl72
-rw-r--r--offapi/com/sun/star/geometry/makefile.mk59
-rwxr-xr-xoffapi/com/sun/star/graphic/Graphic.idl62
-rw-r--r--offapi/com/sun/star/graphic/GraphicColorMode.idl59
-rwxr-xr-xoffapi/com/sun/star/graphic/GraphicDescriptor.idl151
-rw-r--r--offapi/com/sun/star/graphic/GraphicObject.idl63
-rwxr-xr-xoffapi/com/sun/star/graphic/GraphicProvider.idl53
-rwxr-xr-xoffapi/com/sun/star/graphic/GraphicRendererVCL.idl79
-rwxr-xr-xoffapi/com/sun/star/graphic/GraphicType.idl57
-rwxr-xr-xoffapi/com/sun/star/graphic/MediaProperties.idl128
-rwxr-xr-xoffapi/com/sun/star/graphic/XGraphic.idl65
-rw-r--r--offapi/com/sun/star/graphic/XGraphicObject.idl65
-rwxr-xr-xoffapi/com/sun/star/graphic/XGraphicProvider.idl119
-rwxr-xr-xoffapi/com/sun/star/graphic/XGraphicRenderer.idl54
-rw-r--r--offapi/com/sun/star/graphic/XGraphicTransformer.idl57
-rw-r--r--offapi/com/sun/star/graphic/XPrimitive2D.idl93
-rw-r--r--offapi/com/sun/star/graphic/XPrimitive3D.idl80
-rw-r--r--offapi/com/sun/star/graphic/XPrimitiveFactory2D.idl101
-rwxr-xr-xoffapi/com/sun/star/graphic/makefile.mk62
-rw-r--r--offapi/com/sun/star/i18n/AmPmValue.idl50
-rw-r--r--offapi/com/sun/star/i18n/Boundary.idl56
-rw-r--r--offapi/com/sun/star/i18n/BreakIterator.idl59
-rw-r--r--offapi/com/sun/star/i18n/BreakType.idl56
-rw-r--r--offapi/com/sun/star/i18n/CTLScriptType.idl68
-rw-r--r--offapi/com/sun/star/i18n/Calendar.idl68
-rw-r--r--offapi/com/sun/star/i18n/CalendarDisplayCode.idl90
-rw-r--r--offapi/com/sun/star/i18n/CalendarDisplayIndex.idl58
-rw-r--r--offapi/com/sun/star/i18n/CalendarFieldIndex.idl137
-rw-r--r--offapi/com/sun/star/i18n/CalendarItem.idl60
-rw-r--r--offapi/com/sun/star/i18n/ChapterCollator.idl49
-rw-r--r--offapi/com/sun/star/i18n/CharType.idl85
-rw-r--r--offapi/com/sun/star/i18n/CharacterClassification.idl55
-rw-r--r--offapi/com/sun/star/i18n/CharacterIteratorMode.idl57
-rw-r--r--offapi/com/sun/star/i18n/Collator.idl55
-rw-r--r--offapi/com/sun/star/i18n/CollatorOptions.idl53
-rw-r--r--offapi/com/sun/star/i18n/Currency.idl84
-rw-r--r--offapi/com/sun/star/i18n/Currency2.idl68
-rw-r--r--offapi/com/sun/star/i18n/DirectionProperty.idl67
-rw-r--r--offapi/com/sun/star/i18n/ForbiddenCharacters.idl57
-rw-r--r--offapi/com/sun/star/i18n/FormatElement.idl77
-rw-r--r--offapi/com/sun/star/i18n/Implementation.idl55
-rw-r--r--offapi/com/sun/star/i18n/IndexEntrySupplier.idl53
-rw-r--r--offapi/com/sun/star/i18n/InputSequenceCheckMode.idl61
-rw-r--r--offapi/com/sun/star/i18n/InputSequenceChecker.idl55
-rw-r--r--offapi/com/sun/star/i18n/KCharacterType.idl78
-rw-r--r--offapi/com/sun/star/i18n/KNumberFormatType.idl54
-rw-r--r--offapi/com/sun/star/i18n/KNumberFormatUsage.idl63
-rw-r--r--offapi/com/sun/star/i18n/KParseTokens.idl178
-rw-r--r--offapi/com/sun/star/i18n/KParseType.idl92
-rw-r--r--offapi/com/sun/star/i18n/LanguageCountryInfo.idl63
-rw-r--r--offapi/com/sun/star/i18n/LineBreakHyphenationOptions.idl59
-rw-r--r--offapi/com/sun/star/i18n/LineBreakResults.idl57
-rw-r--r--offapi/com/sun/star/i18n/LineBreakUserOptions.idl62
-rw-r--r--offapi/com/sun/star/i18n/LocaleCalendar.idl53
-rw-r--r--offapi/com/sun/star/i18n/LocaleData.idl52
-rw-r--r--offapi/com/sun/star/i18n/LocaleDataItem.idl85
-rw-r--r--offapi/com/sun/star/i18n/LocaleItem.idl102
-rw-r--r--offapi/com/sun/star/i18n/Months.idl72
-rw-r--r--offapi/com/sun/star/i18n/MultipleCharsOutputException.idl58
-rw-r--r--offapi/com/sun/star/i18n/NativeNumberMode.idl144
-rw-r--r--offapi/com/sun/star/i18n/NativeNumberSupplier.idl53
-rw-r--r--offapi/com/sun/star/i18n/NativeNumberXmlAttributes.idl68
-rw-r--r--offapi/com/sun/star/i18n/NumberFormatCode.idl62
-rw-r--r--offapi/com/sun/star/i18n/NumberFormatIndex.idl280
-rw-r--r--offapi/com/sun/star/i18n/NumberFormatMapper.idl52
-rw-r--r--offapi/com/sun/star/i18n/OrdinalSuffix.idl59
-rw-r--r--offapi/com/sun/star/i18n/ParseResult.idl83
-rw-r--r--offapi/com/sun/star/i18n/ScriptDirection.idl60
-rw-r--r--offapi/com/sun/star/i18n/ScriptType.idl61
-rw-r--r--offapi/com/sun/star/i18n/TextConversion.idl57
-rw-r--r--offapi/com/sun/star/i18n/TextConversionOption.idl71
-rw-r--r--offapi/com/sun/star/i18n/TextConversionResult.idl67
-rw-r--r--offapi/com/sun/star/i18n/TextConversionType.idl64
-rw-r--r--offapi/com/sun/star/i18n/Transliteration.idl53
-rw-r--r--offapi/com/sun/star/i18n/TransliterationModules.idl119
-rw-r--r--offapi/com/sun/star/i18n/TransliterationModulesExtra.idl76
-rw-r--r--offapi/com/sun/star/i18n/TransliterationModulesNew.idl175
-rw-r--r--offapi/com/sun/star/i18n/TransliterationType.idl81
-rw-r--r--offapi/com/sun/star/i18n/UnicodeScript.idl136
-rw-r--r--offapi/com/sun/star/i18n/UnicodeType.idl79
-rw-r--r--offapi/com/sun/star/i18n/Weekdays.idl65
-rw-r--r--offapi/com/sun/star/i18n/WordType.idl73
-rw-r--r--offapi/com/sun/star/i18n/XBreakIterator.idl374
-rw-r--r--offapi/com/sun/star/i18n/XCalendar.idl228
-rw-r--r--offapi/com/sun/star/i18n/XCharacterClassification.idl286
-rw-r--r--offapi/com/sun/star/i18n/XCollator.idl174
-rw-r--r--offapi/com/sun/star/i18n/XExtendedCalendar.idl85
-rw-r--r--offapi/com/sun/star/i18n/XExtendedIndexEntrySupplier.idl157
-rw-r--r--offapi/com/sun/star/i18n/XExtendedInputSequenceChecker.idl64
-rw-r--r--offapi/com/sun/star/i18n/XExtendedTextConversion.idl82
-rw-r--r--offapi/com/sun/star/i18n/XExtendedTransliteration.idl105
-rw-r--r--offapi/com/sun/star/i18n/XForbiddenCharacters.idl86
-rw-r--r--offapi/com/sun/star/i18n/XIndexEntrySupplier.idl78
-rw-r--r--offapi/com/sun/star/i18n/XInputSequenceChecker.idl60
-rw-r--r--offapi/com/sun/star/i18n/XLocaleData.idl137
-rw-r--r--offapi/com/sun/star/i18n/XLocaleData2.idl62
-rw-r--r--offapi/com/sun/star/i18n/XNativeNumberSupplier.idl95
-rw-r--r--offapi/com/sun/star/i18n/XNumberFormatCode.idl97
-rw-r--r--offapi/com/sun/star/i18n/XOrdinalSuffix.idl70
-rw-r--r--offapi/com/sun/star/i18n/XScriptTypeDetector.idl91
-rw-r--r--offapi/com/sun/star/i18n/XTextConversion.idl161
-rw-r--r--offapi/com/sun/star/i18n/XTransliteration.idl331
-rw-r--r--offapi/com/sun/star/i18n/makefile.mk129
-rw-r--r--offapi/com/sun/star/i18n/reservedWords.idl80
-rw-r--r--offapi/com/sun/star/image/ImageMap.idl64
-rw-r--r--offapi/com/sun/star/image/ImageMapCircleObject.idl65
-rw-r--r--offapi/com/sun/star/image/ImageMapObject.idl84
-rw-r--r--offapi/com/sun/star/image/ImageMapPolygonObject.idl63
-rw-r--r--offapi/com/sun/star/image/ImageMapRectangleObject.idl62
-rw-r--r--offapi/com/sun/star/image/makefile.mk50
-rw-r--r--offapi/com/sun/star/inspection/DefaultHelpProvider.idl71
-rw-r--r--offapi/com/sun/star/inspection/GenericPropertyHandler.idl63
-rw-r--r--offapi/com/sun/star/inspection/InteractiveSelectionResult.idl76
-rw-r--r--offapi/com/sun/star/inspection/LineDescriptor.idl201
-rw-r--r--offapi/com/sun/star/inspection/ObjectInspector.idl111
-rw-r--r--offapi/com/sun/star/inspection/ObjectInspectorModel.idl121
-rw-r--r--offapi/com/sun/star/inspection/PropertyCategoryDescriptor.idl67
-rw-r--r--offapi/com/sun/star/inspection/PropertyControlType.idl153
-rw-r--r--offapi/com/sun/star/inspection/PropertyLineElement.idl61
-rw-r--r--offapi/com/sun/star/inspection/XHyperlinkControl.idl69
-rw-r--r--offapi/com/sun/star/inspection/XNumericControl.idl98
-rw-r--r--offapi/com/sun/star/inspection/XObjectInspector.idl133
-rw-r--r--offapi/com/sun/star/inspection/XObjectInspectorModel.idl192
-rw-r--r--offapi/com/sun/star/inspection/XObjectInspectorUI.idl187
-rw-r--r--offapi/com/sun/star/inspection/XPropertyControl.idl120
-rw-r--r--offapi/com/sun/star/inspection/XPropertyControlContext.idl60
-rw-r--r--offapi/com/sun/star/inspection/XPropertyControlFactory.idl81
-rw-r--r--offapi/com/sun/star/inspection/XPropertyControlObserver.idl75
-rw-r--r--offapi/com/sun/star/inspection/XPropertyHandler.idl471
-rw-r--r--offapi/com/sun/star/inspection/XStringListControl.idl73
-rw-r--r--offapi/com/sun/star/inspection/XStringRepresentation.idl76
-rw-r--r--offapi/com/sun/star/inspection/makefile.mk66
-rw-r--r--offapi/com/sun/star/installation/InstallationCheck.idl64
-rw-r--r--offapi/com/sun/star/installation/InstallationCheckService.idl61
-rw-r--r--offapi/com/sun/star/installation/InternetSettings.idl52
-rw-r--r--offapi/com/sun/star/installation/ProtDlgRes.idl72
-rw-r--r--offapi/com/sun/star/installation/ProtocolHandlerCheck.idl52
-rw-r--r--offapi/com/sun/star/installation/ProtocolHandlerCheckService.idl52
-rw-r--r--offapi/com/sun/star/installation/XInstallationCheck.idl114
-rw-r--r--offapi/com/sun/star/installation/XProtocolHandlerCheck.idl91
-rw-r--r--offapi/com/sun/star/installation/makefile.mk55
-rw-r--r--offapi/com/sun/star/installation/protocols.idl94
-rw-r--r--offapi/com/sun/star/ldap/LdapConnectionException.idl49
-rw-r--r--offapi/com/sun/star/ldap/LdapGenericException.idl55
-rw-r--r--offapi/com/sun/star/ldap/makefile.mk47
-rw-r--r--offapi/com/sun/star/linguistic2/ConversionDictionary.idl81
-rw-r--r--offapi/com/sun/star/linguistic2/ConversionDictionaryList.idl70
-rw-r--r--offapi/com/sun/star/linguistic2/ConversionDictionaryType.idl56
-rw-r--r--offapi/com/sun/star/linguistic2/ConversionDirection.idl57
-rw-r--r--offapi/com/sun/star/linguistic2/ConversionPropertyType.idl114
-rw-r--r--offapi/com/sun/star/linguistic2/Dictionary.idl82
-rw-r--r--offapi/com/sun/star/linguistic2/DictionaryEvent.idl83
-rw-r--r--offapi/com/sun/star/linguistic2/DictionaryEventFlags.idl86
-rw-r--r--offapi/com/sun/star/linguistic2/DictionaryList.idl64
-rw-r--r--offapi/com/sun/star/linguistic2/DictionaryListEvent.idl95
-rw-r--r--offapi/com/sun/star/linguistic2/DictionaryListEventFlags.idl102
-rw-r--r--offapi/com/sun/star/linguistic2/DictionaryType.idl71
-rw-r--r--offapi/com/sun/star/linguistic2/HangulHanjaConversionDictionary.idl60
-rw-r--r--offapi/com/sun/star/linguistic2/Hyphenator.idl67
-rw-r--r--offapi/com/sun/star/linguistic2/LanguageGuessing.idl44
-rw-r--r--offapi/com/sun/star/linguistic2/LinguProperties.idl183
-rw-r--r--offapi/com/sun/star/linguistic2/LinguServiceEvent.idl71
-rw-r--r--offapi/com/sun/star/linguistic2/LinguServiceEventFlags.idl73
-rw-r--r--offapi/com/sun/star/linguistic2/LinguServiceManager.idl60
-rw-r--r--offapi/com/sun/star/linguistic2/Proofreader.idl63
-rw-r--r--offapi/com/sun/star/linguistic2/ProofreadingIterator.idl57
-rw-r--r--offapi/com/sun/star/linguistic2/ProofreadingResult.idl99
-rw-r--r--offapi/com/sun/star/linguistic2/SingleProofreadingError.idl81
-rw-r--r--offapi/com/sun/star/linguistic2/SpellChecker.idl67
-rw-r--r--offapi/com/sun/star/linguistic2/SpellFailure.idl68
-rw-r--r--offapi/com/sun/star/linguistic2/Thesaurus.idl65
-rw-r--r--offapi/com/sun/star/linguistic2/XAvailableLocales.idl66
-rw-r--r--offapi/com/sun/star/linguistic2/XConversionDictionary.idl243
-rw-r--r--offapi/com/sun/star/linguistic2/XConversionDictionaryList.idl219
-rw-r--r--offapi/com/sun/star/linguistic2/XConversionPropertyType.idl110
-rw-r--r--offapi/com/sun/star/linguistic2/XDictionary.idl275
-rw-r--r--offapi/com/sun/star/linguistic2/XDictionary1.idl112
-rw-r--r--offapi/com/sun/star/linguistic2/XDictionaryEntry.idl97
-rw-r--r--offapi/com/sun/star/linguistic2/XDictionaryEventListener.idl72
-rw-r--r--offapi/com/sun/star/linguistic2/XDictionaryList.idl261
-rw-r--r--offapi/com/sun/star/linguistic2/XDictionaryListEventListener.idl74
-rw-r--r--offapi/com/sun/star/linguistic2/XHyphenatedWord.idl117
-rw-r--r--offapi/com/sun/star/linguistic2/XHyphenator.idl215
-rw-r--r--offapi/com/sun/star/linguistic2/XLanguageGuessing.idl203
-rw-r--r--offapi/com/sun/star/linguistic2/XLinguServiceEventBroadcaster.idl93
-rw-r--r--offapi/com/sun/star/linguistic2/XLinguServiceEventListener.idl71
-rw-r--r--offapi/com/sun/star/linguistic2/XLinguServiceManager.idl194
-rw-r--r--offapi/com/sun/star/linguistic2/XMeaning.idl72
-rw-r--r--offapi/com/sun/star/linguistic2/XPossibleHyphens.idl102
-rw-r--r--offapi/com/sun/star/linguistic2/XProofreader.idl129
-rw-r--r--offapi/com/sun/star/linguistic2/XProofreadingIterator.idl127
-rw-r--r--offapi/com/sun/star/linguistic2/XSearchableDictionary.idl71
-rw-r--r--offapi/com/sun/star/linguistic2/XSearchableDictionaryList.idl95
-rw-r--r--offapi/com/sun/star/linguistic2/XSetSpellAlternatives.idl74
-rw-r--r--offapi/com/sun/star/linguistic2/XSpellAlternatives.idl100
-rw-r--r--offapi/com/sun/star/linguistic2/XSpellChecker.idl137
-rw-r--r--offapi/com/sun/star/linguistic2/XSpellChecker1.idl81
-rw-r--r--offapi/com/sun/star/linguistic2/XSupportedLanguages.idl60
-rw-r--r--offapi/com/sun/star/linguistic2/XSupportedLocales.idl85
-rw-r--r--offapi/com/sun/star/linguistic2/XThesaurus.idl99
-rw-r--r--offapi/com/sun/star/linguistic2/makefile.mk101
-rw-r--r--offapi/com/sun/star/logging/ConsoleHandler.idl82
-rw-r--r--offapi/com/sun/star/logging/CsvLogFormatter.idl63
-rw-r--r--offapi/com/sun/star/logging/DocumentIOLogRing.idl63
-rw-r--r--offapi/com/sun/star/logging/FileHandler.idl97
-rw-r--r--offapi/com/sun/star/logging/LogLevel.idl87
-rw-r--r--offapi/com/sun/star/logging/LogRecord.idl96
-rw-r--r--offapi/com/sun/star/logging/LoggerPool.idl34
-rw-r--r--offapi/com/sun/star/logging/PlainTextFormatter.idl60
-rw-r--r--offapi/com/sun/star/logging/SimpleLogRing.idl69
-rw-r--r--offapi/com/sun/star/logging/XConsoleHandler.idl67
-rw-r--r--offapi/com/sun/star/logging/XCsvLogFormatter.idl83
-rw-r--r--offapi/com/sun/star/logging/XLogFormatter.idl88
-rw-r--r--offapi/com/sun/star/logging/XLogHandler.idl110
-rw-r--r--offapi/com/sun/star/logging/XLogger.idl148
-rw-r--r--offapi/com/sun/star/logging/XLoggerPool.idl73
-rw-r--r--offapi/com/sun/star/logging/XSimpleLogRing.idl74
-rw-r--r--offapi/com/sun/star/logging/makefile.mk55
-rw-r--r--offapi/com/sun/star/mail/MailAttachment.idl67
-rw-r--r--offapi/com/sun/star/mail/MailException.idl49
-rw-r--r--offapi/com/sun/star/mail/MailMessage.idl111
-rw-r--r--offapi/com/sun/star/mail/MailServer.idl65
-rw-r--r--offapi/com/sun/star/mail/MailServiceProvider.idl62
-rw-r--r--offapi/com/sun/star/mail/MailServiceType.idl50
-rw-r--r--offapi/com/sun/star/mail/NoMailServiceProviderException.idl52
-rw-r--r--offapi/com/sun/star/mail/NoMailTransportProviderException.idl52
-rw-r--r--offapi/com/sun/star/mail/SendMailMessageFailedException.idl68
-rw-r--r--offapi/com/sun/star/mail/XAuthenticator.idl66
-rw-r--r--offapi/com/sun/star/mail/XConnectionListener.idl73
-rw-r--r--offapi/com/sun/star/mail/XMailMessage.idl158
-rw-r--r--offapi/com/sun/star/mail/XMailServer.idl279
-rw-r--r--offapi/com/sun/star/mail/XMailService.idl229
-rw-r--r--offapi/com/sun/star/mail/XMailServiceProvider.idl70
-rw-r--r--offapi/com/sun/star/mail/XSmtpService.idl107
-rw-r--r--offapi/com/sun/star/mail/makefile.mk58
-rw-r--r--offapi/com/sun/star/makefile.mk46
-rw-r--r--offapi/com/sun/star/media/Manager.idl42
-rw-r--r--offapi/com/sun/star/media/XFrameGrabber.idl51
-rw-r--r--offapi/com/sun/star/media/XManager.idl53
-rw-r--r--offapi/com/sun/star/media/XPlayer.idl182
-rw-r--r--offapi/com/sun/star/media/XPlayerWindow.idl65
-rw-r--r--offapi/com/sun/star/media/ZoomLevel.idl94
-rw-r--r--offapi/com/sun/star/media/makefile.mk50
-rw-r--r--offapi/com/sun/star/modules.idl259
-rw-r--r--offapi/com/sun/star/mozilla/MenuMultipleChange.idl116
-rw-r--r--offapi/com/sun/star/mozilla/MenuProxy.idl63
-rw-r--r--offapi/com/sun/star/mozilla/MenuProxyListener.idl62
-rw-r--r--offapi/com/sun/star/mozilla/MenuSingleChange.idl74
-rw-r--r--offapi/com/sun/star/mozilla/MozillaBootstrap.idl62
-rw-r--r--offapi/com/sun/star/mozilla/MozillaProductType.idl64
-rw-r--r--offapi/com/sun/star/mozilla/XCloseSessionListener.idl62
-rw-r--r--offapi/com/sun/star/mozilla/XCodeProxy.idl67
-rw-r--r--offapi/com/sun/star/mozilla/XMenuProxy.idl91
-rw-r--r--offapi/com/sun/star/mozilla/XMenuProxyListener.idl89
-rw-r--r--offapi/com/sun/star/mozilla/XMozillaBootstrap.idl69
-rw-r--r--offapi/com/sun/star/mozilla/XPluginInstance.idl146
-rw-r--r--offapi/com/sun/star/mozilla/XPluginInstanceNotifySink.idl65
-rw-r--r--offapi/com/sun/star/mozilla/XPluginInstancePeer.idl170
-rw-r--r--offapi/com/sun/star/mozilla/XPluginInstanceSyncPeer.idl73
-rw-r--r--offapi/com/sun/star/mozilla/XPluginWindowPeer.idl62
-rw-r--r--offapi/com/sun/star/mozilla/XProfileDiscover.idl127
-rw-r--r--offapi/com/sun/star/mozilla/XProfileManager.idl116
-rw-r--r--offapi/com/sun/star/mozilla/XProxyRunner.idl69
-rw-r--r--offapi/com/sun/star/mozilla/XRemoteServiceManagerProvider.idl61
-rw-r--r--offapi/com/sun/star/mozilla/makefile.mk67
-rw-r--r--offapi/com/sun/star/office/XAnnotation.idl102
-rw-r--r--offapi/com/sun/star/office/XAnnotationAccess.idl72
-rw-r--r--offapi/com/sun/star/office/XAnnotationEnumeration.idl71
-rw-r--r--offapi/com/sun/star/office/makefile.mk47
-rw-r--r--offapi/com/sun/star/oooimprovement/Core.idl55
-rw-r--r--offapi/com/sun/star/oooimprovement/CoreController.idl56
-rw-r--r--offapi/com/sun/star/oooimprovement/XCore.idl59
-rw-r--r--offapi/com/sun/star/oooimprovement/XCoreController.idl57
-rw-r--r--offapi/com/sun/star/oooimprovement/makefile.mk44
-rw-r--r--offapi/com/sun/star/packages/EncryptionNotAllowedException.idl53
-rw-r--r--offapi/com/sun/star/packages/NoEncryptionException.idl53
-rw-r--r--offapi/com/sun/star/packages/NoRawFormatException.idl54
-rw-r--r--offapi/com/sun/star/packages/Package.idl126
-rw-r--r--offapi/com/sun/star/packages/PackageFolder.idl108
-rw-r--r--offapi/com/sun/star/packages/PackageFolderEnumeration.idl54
-rw-r--r--offapi/com/sun/star/packages/PackageStream.idl95
-rw-r--r--offapi/com/sun/star/packages/WrongPasswordException.idl53
-rw-r--r--offapi/com/sun/star/packages/XDataSinkEncrSupport.idl171
-rw-r--r--offapi/com/sun/star/packages/makefile.mk55
-rw-r--r--offapi/com/sun/star/packages/manifest/XManifestReader.idl56
-rw-r--r--offapi/com/sun/star/packages/manifest/XManifestWriter.idl57
-rw-r--r--offapi/com/sun/star/packages/manifest/makefile.mk47
-rw-r--r--offapi/com/sun/star/packages/zip/XZipFileAccess.idl79
-rw-r--r--offapi/com/sun/star/packages/zip/ZipConstants.idl311
-rw-r--r--offapi/com/sun/star/packages/zip/ZipEntry.idl122
-rw-r--r--offapi/com/sun/star/packages/zip/ZipException.idl60
-rw-r--r--offapi/com/sun/star/packages/zip/ZipFileAccess.idl72
-rwxr-xr-xoffapi/com/sun/star/packages/zip/ZipIOException.idl55
-rw-r--r--offapi/com/sun/star/packages/zip/makefile.mk51
-rw-r--r--offapi/com/sun/star/plugin/PluginDescription.idl56
-rw-r--r--offapi/com/sun/star/plugin/PluginException.idl57
-rw-r--r--offapi/com/sun/star/plugin/PluginManager.idl52
-rw-r--r--offapi/com/sun/star/plugin/PluginMode.idl49
-rw-r--r--offapi/com/sun/star/plugin/PluginVariable.idl57
-rw-r--r--offapi/com/sun/star/plugin/XPlugin.idl82
-rw-r--r--offapi/com/sun/star/plugin/XPluginContext.idl198
-rw-r--r--offapi/com/sun/star/plugin/XPluginManager.idl137
-rw-r--r--offapi/com/sun/star/plugin/makefile.mk53
-rw-r--r--offapi/com/sun/star/presentation/AnimationEffect.idl944
-rw-r--r--offapi/com/sun/star/presentation/AnimationSpeed.idl65
-rw-r--r--offapi/com/sun/star/presentation/ChartShape.idl62
-rw-r--r--offapi/com/sun/star/presentation/ClickAction.idl132
-rw-r--r--offapi/com/sun/star/presentation/CustomPresentation.idl68
-rw-r--r--offapi/com/sun/star/presentation/CustomPresentationAccess.idl71
-rw-r--r--offapi/com/sun/star/presentation/DateTimeShape.idl62
-rw-r--r--offapi/com/sun/star/presentation/DocumentSettings.idl120
-rw-r--r--offapi/com/sun/star/presentation/DrawPage.idl177
-rw-r--r--offapi/com/sun/star/presentation/EffectCommands.idl76
-rw-r--r--offapi/com/sun/star/presentation/EffectNodeType.idl81
-rw-r--r--offapi/com/sun/star/presentation/EffectPresetClass.idl81
-rw-r--r--offapi/com/sun/star/presentation/FadeEffect.idl388
-rw-r--r--offapi/com/sun/star/presentation/FooterShape.idl62
-rw-r--r--offapi/com/sun/star/presentation/GraphicObjectShape.idl62
-rw-r--r--offapi/com/sun/star/presentation/HandoutShape.idl62
-rw-r--r--offapi/com/sun/star/presentation/HandoutView.idl59
-rw-r--r--offapi/com/sun/star/presentation/HeaderShape.idl62
-rw-r--r--offapi/com/sun/star/presentation/NotesShape.idl62
-rw-r--r--offapi/com/sun/star/presentation/NotesView.idl59
-rw-r--r--offapi/com/sun/star/presentation/OLE2Shape.idl62
-rw-r--r--offapi/com/sun/star/presentation/OutlineView.idl109
-rw-r--r--offapi/com/sun/star/presentation/OutlinerShape.idl62
-rw-r--r--offapi/com/sun/star/presentation/PageShape.idl62
-rw-r--r--offapi/com/sun/star/presentation/ParagraphTarget.idl58
-rw-r--r--offapi/com/sun/star/presentation/Presentation.idl159
-rw-r--r--offapi/com/sun/star/presentation/Presentation2.idl65
-rw-r--r--offapi/com/sun/star/presentation/PresentationDocument.idl105
-rw-r--r--offapi/com/sun/star/presentation/PresentationRange.idl63
-rw-r--r--offapi/com/sun/star/presentation/PresentationView.idl117
-rw-r--r--offapi/com/sun/star/presentation/PreviewView.idl119
-rw-r--r--offapi/com/sun/star/presentation/Shape.idl180
-rw-r--r--offapi/com/sun/star/presentation/ShapeAnimationSubType.idl66
-rw-r--r--offapi/com/sun/star/presentation/SlideNumberShape.idl62
-rw-r--r--offapi/com/sun/star/presentation/SlidesView.idl110
-rw-r--r--offapi/com/sun/star/presentation/SubtitleShape.idl62
-rw-r--r--offapi/com/sun/star/presentation/TextAnimationType.idl63
-rw-r--r--offapi/com/sun/star/presentation/TitleTextShape.idl62
-rw-r--r--offapi/com/sun/star/presentation/XCustomPresentationSupplier.idl66
-rw-r--r--offapi/com/sun/star/presentation/XHandoutMasterSupplier.idl58
-rw-r--r--offapi/com/sun/star/presentation/XPresentation.idl72
-rw-r--r--offapi/com/sun/star/presentation/XPresentation2.idl99
-rw-r--r--offapi/com/sun/star/presentation/XPresentationPage.idl61
-rw-r--r--offapi/com/sun/star/presentation/XPresentationSupplier.idl62
-rw-r--r--offapi/com/sun/star/presentation/XShapeEventListener.idl66
-rw-r--r--offapi/com/sun/star/presentation/XSlideShow.idl378
-rw-r--r--offapi/com/sun/star/presentation/XSlideShowController.idl308
-rw-r--r--offapi/com/sun/star/presentation/XSlideShowListener.idl80
-rw-r--r--offapi/com/sun/star/presentation/XSlideShowView.idl187
-rw-r--r--offapi/com/sun/star/presentation/XTransition.idl64
-rw-r--r--offapi/com/sun/star/presentation/XTransitionFactory.idl92
-rw-r--r--offapi/com/sun/star/presentation/makefile.mk96
-rw-r--r--offapi/com/sun/star/presentation/textfield/DateTime.idl51
-rw-r--r--offapi/com/sun/star/presentation/textfield/Footer.idl51
-rw-r--r--offapi/com/sun/star/presentation/textfield/Header.idl51
-rw-r--r--offapi/com/sun/star/presentation/textfield/makefile.mk48
-rw-r--r--offapi/com/sun/star/rdf/BlankNode.idl82
-rw-r--r--offapi/com/sun/star/rdf/FileFormat.idl82
-rw-r--r--offapi/com/sun/star/rdf/Literal.idl92
-rw-r--r--offapi/com/sun/star/rdf/ParseException.idl55
-rw-r--r--offapi/com/sun/star/rdf/QueryException.idl56
-rw-r--r--offapi/com/sun/star/rdf/Repository.idl60
-rw-r--r--offapi/com/sun/star/rdf/RepositoryException.idl56
-rw-r--r--offapi/com/sun/star/rdf/Statement.idl63
-rw-r--r--offapi/com/sun/star/rdf/URI.idl102
-rw-r--r--offapi/com/sun/star/rdf/URIs.idl333
-rw-r--r--offapi/com/sun/star/rdf/XBlankNode.idl60
-rw-r--r--offapi/com/sun/star/rdf/XDocumentMetadataAccess.idl452
-rw-r--r--offapi/com/sun/star/rdf/XDocumentRepository.idl243
-rw-r--r--offapi/com/sun/star/rdf/XLiteral.idl72
-rw-r--r--offapi/com/sun/star/rdf/XMetadatable.idl106
-rw-r--r--offapi/com/sun/star/rdf/XNamedGraph.idl229
-rw-r--r--offapi/com/sun/star/rdf/XNode.idl79
-rw-r--r--offapi/com/sun/star/rdf/XQuerySelectResult.idl76
-rw-r--r--offapi/com/sun/star/rdf/XReifiedStatement.idl57
-rw-r--r--offapi/com/sun/star/rdf/XRepository.idl465
-rw-r--r--offapi/com/sun/star/rdf/XRepositorySupplier.idl63
-rw-r--r--offapi/com/sun/star/rdf/XResource.idl61
-rw-r--r--offapi/com/sun/star/rdf/XURI.idl77
-rw-r--r--offapi/com/sun/star/rdf/makefile.mk71
-rw-r--r--offapi/com/sun/star/rendering/AnimationAttributes.idl71
-rw-r--r--offapi/com/sun/star/rendering/AnimationRepeat.idl84
-rwxr-xr-xoffapi/com/sun/star/rendering/BlendMode.idl62
-rw-r--r--offapi/com/sun/star/rendering/CanvasFactory.idl58
-rw-r--r--offapi/com/sun/star/rendering/Caret.idl70
-rw-r--r--offapi/com/sun/star/rendering/ColorComponentTag.idl140
-rw-r--r--offapi/com/sun/star/rendering/ColorProfile.idl43
-rw-r--r--offapi/com/sun/star/rendering/ColorSpaceType.idl126
-rw-r--r--offapi/com/sun/star/rendering/CompositeOperation.idl158
-rw-r--r--offapi/com/sun/star/rendering/EmphasisMark.idl87
-rw-r--r--offapi/com/sun/star/rendering/FillRule.idl63
-rw-r--r--offapi/com/sun/star/rendering/FloatingPointBitmapFormat.idl67
-rw-r--r--offapi/com/sun/star/rendering/FloatingPointBitmapLayout.idl113
-rw-r--r--offapi/com/sun/star/rendering/FontInfo.idl126
-rw-r--r--offapi/com/sun/star/rendering/FontMetrics.idl107
-rw-r--r--offapi/com/sun/star/rendering/FontRequest.idl121
-rw-r--r--offapi/com/sun/star/rendering/IntegerBitmapLayout.idl127
-rw-r--r--offapi/com/sun/star/rendering/InterpolationMode.idl97
-rw-r--r--offapi/com/sun/star/rendering/Panose.idl67
-rw-r--r--offapi/com/sun/star/rendering/PanoseArmStyle.idl50
-rw-r--r--offapi/com/sun/star/rendering/PanoseContrast.idl48
-rw-r--r--offapi/com/sun/star/rendering/PanoseFamilyTypes.idl44
-rw-r--r--offapi/com/sun/star/rendering/PanoseLetterForm.idl54
-rw-r--r--offapi/com/sun/star/rendering/PanoseMidline.idl52
-rw-r--r--offapi/com/sun/star/rendering/PanoseProportion.idl48
-rw-r--r--offapi/com/sun/star/rendering/PanoseSerifStyle.idl54
-rw-r--r--offapi/com/sun/star/rendering/PanoseStrokeVariation.idl47
-rw-r--r--offapi/com/sun/star/rendering/PanoseWeight.idl50
-rw-r--r--offapi/com/sun/star/rendering/PanoseXHeight.idl46
-rw-r--r--offapi/com/sun/star/rendering/PathCapType.idl59
-rw-r--r--offapi/com/sun/star/rendering/PathJoinType.idl73
-rw-r--r--offapi/com/sun/star/rendering/RenderState.idl108
-rw-r--r--offapi/com/sun/star/rendering/RenderingIntent.idl89
-rw-r--r--offapi/com/sun/star/rendering/RepaintResult.idl58
-rw-r--r--offapi/com/sun/star/rendering/StringContext.idl68
-rw-r--r--offapi/com/sun/star/rendering/StrokeAttributes.idl154
-rw-r--r--offapi/com/sun/star/rendering/TextDirection.idl53
-rw-r--r--offapi/com/sun/star/rendering/TextHit.idl70
-rw-r--r--offapi/com/sun/star/rendering/Texture.idl156
-rw-r--r--offapi/com/sun/star/rendering/TexturingMode.idl70
-rw-r--r--offapi/com/sun/star/rendering/ViewState.idl77
-rw-r--r--offapi/com/sun/star/rendering/VolatileContentDestroyedException.idl49
-rw-r--r--offapi/com/sun/star/rendering/XAnimatedSprite.idl196
-rw-r--r--offapi/com/sun/star/rendering/XAnimation.idl123
-rw-r--r--offapi/com/sun/star/rendering/XBezierPolyPolygon2D.idl175
-rw-r--r--offapi/com/sun/star/rendering/XBitmap.idl115
-rw-r--r--offapi/com/sun/star/rendering/XBitmapCanvas.idl151
-rw-r--r--offapi/com/sun/star/rendering/XBitmapPalette.idl126
-rw-r--r--offapi/com/sun/star/rendering/XBufferController.idl134
-rw-r--r--offapi/com/sun/star/rendering/XCachedPrimitive.idl73
-rw-r--r--offapi/com/sun/star/rendering/XCanvas.idl744
-rw-r--r--offapi/com/sun/star/rendering/XCanvasFont.idl140
-rw-r--r--offapi/com/sun/star/rendering/XColorSpace.idl292
-rw-r--r--offapi/com/sun/star/rendering/XCustomSprite.idl77
-rw-r--r--offapi/com/sun/star/rendering/XGraphicDevice.idl303
-rw-r--r--offapi/com/sun/star/rendering/XHalfFloatBitmap.idl97
-rw-r--r--offapi/com/sun/star/rendering/XHalfFloatReadOnlyBitmap.idl113
-rw-r--r--offapi/com/sun/star/rendering/XIeeeDoubleBitmap.idl141
-rw-r--r--offapi/com/sun/star/rendering/XIeeeDoubleReadOnlyBitmap.idl140
-rw-r--r--offapi/com/sun/star/rendering/XIeeeFloatBitmap.idl140
-rw-r--r--offapi/com/sun/star/rendering/XIeeeFloatReadOnlyBitmap.idl139
-rw-r--r--offapi/com/sun/star/rendering/XIntegerBitmap.idl147
-rw-r--r--offapi/com/sun/star/rendering/XIntegerBitmapColorSpace.idl276
-rw-r--r--offapi/com/sun/star/rendering/XIntegerReadOnlyBitmap.idl160
-rw-r--r--offapi/com/sun/star/rendering/XLinePolyPolygon2D.idl123
-rw-r--r--offapi/com/sun/star/rendering/XParametricPolyPolygon2D.idl108
-rw-r--r--offapi/com/sun/star/rendering/XPolyPolygon2D.idl136
-rw-r--r--offapi/com/sun/star/rendering/XSimpleCanvas.idl291
-rw-r--r--offapi/com/sun/star/rendering/XSprite.idl214
-rw-r--r--offapi/com/sun/star/rendering/XSpriteCanvas.idl160
-rw-r--r--offapi/com/sun/star/rendering/XTextLayout.idl432
-rw-r--r--offapi/com/sun/star/rendering/XVolatileBitmap.idl54
-rw-r--r--offapi/com/sun/star/rendering/makefile.mk117
-rw-r--r--offapi/com/sun/star/report/Calculation.idl136
-rw-r--r--offapi/com/sun/star/report/ForceNewPage.idl69
-rw-r--r--offapi/com/sun/star/report/GroupKeepTogether.idl61
-rw-r--r--offapi/com/sun/star/report/GroupOn.idl92
-rw-r--r--offapi/com/sun/star/report/KeepTogether.idl64
-rw-r--r--offapi/com/sun/star/report/ReportPrintOption.idl67
-rw-r--r--offapi/com/sun/star/report/SectionPageBreak.idl60
-rw-r--r--offapi/com/sun/star/report/XFixedLine.idl108
-rw-r--r--offapi/com/sun/star/report/XFixedText.idl55
-rw-r--r--offapi/com/sun/star/report/XFormatCondition.idl61
-rw-r--r--offapi/com/sun/star/report/XFormattedField.idl72
-rw-r--r--offapi/com/sun/star/report/XFunction.idl90
-rw-r--r--offapi/com/sun/star/report/XFunctions.idl80
-rw-r--r--offapi/com/sun/star/report/XFunctionsSupplier.idl51
-rw-r--r--offapi/com/sun/star/report/XGroup.idl149
-rw-r--r--offapi/com/sun/star/report/XGroups.idl83
-rw-r--r--offapi/com/sun/star/report/XImageControl.idl92
-rw-r--r--offapi/com/sun/star/report/XReportComponent.idl200
-rw-r--r--offapi/com/sun/star/report/XReportControlFormat.idl613
-rw-r--r--offapi/com/sun/star/report/XReportControlModel.idl115
-rw-r--r--offapi/com/sun/star/report/XReportDefinition.idl362
-rw-r--r--offapi/com/sun/star/report/XReportEngine.idl169
-rw-r--r--offapi/com/sun/star/report/XSection.idl195
-rw-r--r--offapi/com/sun/star/report/XShape.idl96
-rw-r--r--offapi/com/sun/star/report/inspection/DataProviderHandler.idl55
-rw-r--r--offapi/com/sun/star/report/inspection/DefaultComponentInspectorModel.idl96
-rw-r--r--offapi/com/sun/star/report/inspection/ReportComponentHandler.idl55
-rw-r--r--offapi/com/sun/star/report/inspection/makefile.mk49
-rw-r--r--offapi/com/sun/star/report/makefile.mk69
-rw-r--r--offapi/com/sun/star/report/meta/XFormulaParser.idl72
-rw-r--r--offapi/com/sun/star/report/meta/XFunctionCategory.idl76
-rw-r--r--offapi/com/sun/star/report/meta/XFunctionDescription.idl87
-rw-r--r--offapi/com/sun/star/report/meta/XFunctionManager.idl74
-rw-r--r--offapi/com/sun/star/report/meta/makefile.mk49
-rw-r--r--offapi/com/sun/star/report/modules.idl45
-rw-r--r--offapi/com/sun/star/resource/MissingResourceException.idl53
-rw-r--r--offapi/com/sun/star/resource/OfficeResourceLoader.idl81
-rw-r--r--offapi/com/sun/star/resource/StringResource.idl51
-rw-r--r--offapi/com/sun/star/resource/StringResourceWithLocation.idl97
-rw-r--r--offapi/com/sun/star/resource/StringResourceWithStorage.idl92
-rw-r--r--offapi/com/sun/star/resource/XLocale.idl275
-rw-r--r--offapi/com/sun/star/resource/XResourceBundle.idl243
-rw-r--r--offapi/com/sun/star/resource/XResourceBundleLoader.idl86
-rw-r--r--offapi/com/sun/star/resource/XStringResourceManager.idl317
-rw-r--r--offapi/com/sun/star/resource/XStringResourcePersistence.idl247
-rw-r--r--offapi/com/sun/star/resource/XStringResourceResolver.idl201
-rw-r--r--offapi/com/sun/star/resource/XStringResourceSupplier.idl70
-rw-r--r--offapi/com/sun/star/resource/XStringResourceWithLocation.idl89
-rw-r--r--offapi/com/sun/star/resource/XStringResourceWithStorage.idl89
-rw-r--r--offapi/com/sun/star/resource/makefile.mk59
-rw-r--r--offapi/com/sun/star/scanner/ScanError.idl83
-rw-r--r--offapi/com/sun/star/scanner/ScannerContext.idl58
-rw-r--r--offapi/com/sun/star/scanner/ScannerException.idl61
-rw-r--r--offapi/com/sun/star/scanner/ScannerManager.idl56
-rw-r--r--offapi/com/sun/star/scanner/XScannerManager.idl107
-rw-r--r--offapi/com/sun/star/scanner/makefile.mk50
-rw-r--r--offapi/com/sun/star/script/DocumentDialogLibraryContainer.idl82
-rw-r--r--offapi/com/sun/star/script/DocumentScriptLibraryContainer.idl83
-rw-r--r--offapi/com/sun/star/script/LibraryNotLoadedException.idl55
-rw-r--r--offapi/com/sun/star/script/ModuleInfo.idl55
-rw-r--r--offapi/com/sun/star/script/ModuleSizeExceededRequest.idl55
-rw-r--r--offapi/com/sun/star/script/ModuleType.idl72
-rw-r--r--offapi/com/sun/star/script/XLibraryContainer.idl123
-rw-r--r--offapi/com/sun/star/script/XLibraryContainer2.idl99
-rw-r--r--offapi/com/sun/star/script/XLibraryContainer3.idl66
-rw-r--r--offapi/com/sun/star/script/XLibraryContainerExport.idl80
-rw-r--r--offapi/com/sun/star/script/XLibraryContainerPassword.idl143
-rw-r--r--offapi/com/sun/star/script/XPersistentLibraryContainer.idl104
-rw-r--r--offapi/com/sun/star/script/XStorageBasedLibraryContainer.idl105
-rwxr-xr-xoffapi/com/sun/star/script/browse/BrowseNode.idl62
-rwxr-xr-xoffapi/com/sun/star/script/browse/BrowseNodeFactory.idl64
-rwxr-xr-xoffapi/com/sun/star/script/browse/BrowseNodeFactoryViewTypes.idl51
-rwxr-xr-xoffapi/com/sun/star/script/browse/BrowseNodeTypes.idl56
-rwxr-xr-xoffapi/com/sun/star/script/browse/XBrowseNode.idl83
-rw-r--r--offapi/com/sun/star/script/browse/XBrowseNodeFactory.idl66
-rw-r--r--offapi/com/sun/star/script/browse/makefile.mk52
-rw-r--r--offapi/com/sun/star/script/makefile.mk58
-rwxr-xr-xoffapi/com/sun/star/script/provider/LanguageScriptProvider.idl55
-rwxr-xr-xoffapi/com/sun/star/script/provider/MasterScriptProvider.idl55
-rwxr-xr-xoffapi/com/sun/star/script/provider/MasterScriptProviderFactory.idl64
-rw-r--r--offapi/com/sun/star/script/provider/ScriptErrorRaisedException.idl59
-rw-r--r--offapi/com/sun/star/script/provider/ScriptExceptionRaisedException.idl53
-rw-r--r--offapi/com/sun/star/script/provider/ScriptFrameworkErrorException.idl59
-rw-r--r--offapi/com/sun/star/script/provider/ScriptFrameworkErrorType.idl62
-rwxr-xr-xoffapi/com/sun/star/script/provider/ScriptProvider.idl61
-rw-r--r--offapi/com/sun/star/script/provider/ScriptProviderForBasic.idl54
-rwxr-xr-xoffapi/com/sun/star/script/provider/ScriptProviderForBeanShell.idl54
-rwxr-xr-xoffapi/com/sun/star/script/provider/ScriptProviderForJava.idl54
-rwxr-xr-xoffapi/com/sun/star/script/provider/ScriptProviderForJavaScript.idl54
-rwxr-xr-xoffapi/com/sun/star/script/provider/ScriptURIHelper.idl72
-rw-r--r--offapi/com/sun/star/script/provider/XScript.idl102
-rw-r--r--offapi/com/sun/star/script/provider/XScriptContext.idl114
-rw-r--r--offapi/com/sun/star/script/provider/XScriptProvider.idl74
-rw-r--r--offapi/com/sun/star/script/provider/XScriptProviderFactory.idl72
-rw-r--r--offapi/com/sun/star/script/provider/XScriptProviderSupplier.idl64
-rw-r--r--offapi/com/sun/star/script/provider/XScriptURIHelper.idl88
-rwxr-xr-xoffapi/com/sun/star/script/provider/makefile.mk68
-rwxr-xr-xoffapi/com/sun/star/script/vba/VBAEventId.idl140
-rwxr-xr-xoffapi/com/sun/star/script/vba/VBAEventProcessor.idl49
-rwxr-xr-xoffapi/com/sun/star/script/vba/VBASpreadsheetEventProcessor.idl50
-rwxr-xr-xoffapi/com/sun/star/script/vba/VBATextEventProcessor.idl50
-rw-r--r--offapi/com/sun/star/script/vba/XVBACompatibility.idl50
-rwxr-xr-xoffapi/com/sun/star/script/vba/XVBAEventProcessor.idl106
-rw-r--r--offapi/com/sun/star/script/vba/XVBAModuleInfo.idl75
-rwxr-xr-xoffapi/com/sun/star/script/vba/makefile.mk52
-rw-r--r--offapi/com/sun/star/sdb/BooleanComparisonMode.idl74
-rw-r--r--offapi/com/sun/star/sdb/CallableStatement.idl59
-rw-r--r--offapi/com/sun/star/sdb/Column.idl59
-rw-r--r--offapi/com/sun/star/sdb/ColumnDescriptorControl.idl52
-rw-r--r--offapi/com/sun/star/sdb/ColumnDescriptorControlModel.idl94
-rw-r--r--offapi/com/sun/star/sdb/ColumnSettings.idl134
-rw-r--r--offapi/com/sun/star/sdb/CommandType.idl61
-rw-r--r--offapi/com/sun/star/sdb/Connection.idl98
-rw-r--r--offapi/com/sun/star/sdb/ContentLoader.idl103
-rw-r--r--offapi/com/sun/star/sdb/DataAccessDescriptor.idl270
-rw-r--r--offapi/com/sun/star/sdb/DataAccessDescriptorFactory.idl49
-rw-r--r--offapi/com/sun/star/sdb/DataColumn.idl76
-rw-r--r--offapi/com/sun/star/sdb/DataSettings.idl98
-rw-r--r--offapi/com/sun/star/sdb/DataSource.idl255
-rw-r--r--offapi/com/sun/star/sdb/DataSourceBrowser.idl290
-rw-r--r--offapi/com/sun/star/sdb/DatabaseAccess.idl119
-rw-r--r--offapi/com/sun/star/sdb/DatabaseAccessConnection.idl100
-rw-r--r--offapi/com/sun/star/sdb/DatabaseAccessContext.idl92
-rw-r--r--offapi/com/sun/star/sdb/DatabaseAccessDataSource.idl79
-rw-r--r--offapi/com/sun/star/sdb/DatabaseContext.idl110
-rw-r--r--offapi/com/sun/star/sdb/DatabaseDocument.idl76
-rw-r--r--offapi/com/sun/star/sdb/DatabaseEnvironment.idl72
-rw-r--r--offapi/com/sun/star/sdb/DatabaseInteractionHandler.idl71
-rw-r--r--offapi/com/sun/star/sdb/DatabaseRegistrationEvent.idl61
-rw-r--r--offapi/com/sun/star/sdb/DatasourceAdministrationDialog.idl129
-rw-r--r--offapi/com/sun/star/sdb/DefinitionContainer.idl97
-rw-r--r--offapi/com/sun/star/sdb/DefinitionContent.idl76
-rw-r--r--offapi/com/sun/star/sdb/Document.idl64
-rw-r--r--offapi/com/sun/star/sdb/DocumentContainer.idl129
-rw-r--r--offapi/com/sun/star/sdb/DocumentDataSource.idl65
-rw-r--r--offapi/com/sun/star/sdb/DocumentDefinition.idl100
-rw-r--r--offapi/com/sun/star/sdb/DocumentSaveRequest.idl70
-rw-r--r--offapi/com/sun/star/sdb/ErrorCondition.idl180
-rw-r--r--offapi/com/sun/star/sdb/ErrorMessageDialog.idl171
-rw-r--r--offapi/com/sun/star/sdb/Forms.idl55
-rw-r--r--offapi/com/sun/star/sdb/InteractionHandler.idl49
-rw-r--r--offapi/com/sun/star/sdb/OfficeDatabaseDocument.idl250
-rw-r--r--offapi/com/sun/star/sdb/OrderColumn.idl55
-rw-r--r--offapi/com/sun/star/sdb/ParametersRequest.idl78
-rw-r--r--offapi/com/sun/star/sdb/PreparedStatement.idl62
-rw-r--r--offapi/com/sun/star/sdb/Query.idl91
-rw-r--r--offapi/com/sun/star/sdb/QueryDefinition.idl88
-rw-r--r--offapi/com/sun/star/sdb/QueryDescriptor.idl106
-rw-r--r--offapi/com/sun/star/sdb/QueryDesign.idl201
-rw-r--r--offapi/com/sun/star/sdb/RelationDesign.idl93
-rw-r--r--offapi/com/sun/star/sdb/Reports.idl55
-rw-r--r--offapi/com/sun/star/sdb/ResultColumn.idl123
-rw-r--r--offapi/com/sun/star/sdb/ResultSet.idl62
-rw-r--r--offapi/com/sun/star/sdb/RowChangeAction.idl59
-rw-r--r--offapi/com/sun/star/sdb/RowChangeEvent.idl59
-rw-r--r--offapi/com/sun/star/sdb/RowSet.idl400
-rw-r--r--offapi/com/sun/star/sdb/RowSetVetoException.idl51
-rw-r--r--offapi/com/sun/star/sdb/RowsChangeEvent.idl52
-rw-r--r--offapi/com/sun/star/sdb/SQLContext.idl65
-rw-r--r--offapi/com/sun/star/sdb/SQLErrorEvent.idl55
-rw-r--r--offapi/com/sun/star/sdb/SQLFilterOperator.idl78
-rw-r--r--offapi/com/sun/star/sdb/SQLQueryComposer.idl75
-rw-r--r--offapi/com/sun/star/sdb/SingleSelectQueryAnalyzer.idl90
-rw-r--r--offapi/com/sun/star/sdb/SingleSelectQueryComposer.idl73
-rw-r--r--offapi/com/sun/star/sdb/Table.idl67
-rw-r--r--offapi/com/sun/star/sdb/TableDescriptor.idl61
-rw-r--r--offapi/com/sun/star/sdb/TableDesign.idl96
-rw-r--r--offapi/com/sun/star/sdb/XAlterQuery.idl63
-rw-r--r--offapi/com/sun/star/sdb/XBookmarksSupplier.idl68
-rw-r--r--offapi/com/sun/star/sdb/XColumn.idl304
-rw-r--r--offapi/com/sun/star/sdb/XColumnUpdate.idl230
-rw-r--r--offapi/com/sun/star/sdb/XCommandPreparation.idl81
-rw-r--r--offapi/com/sun/star/sdb/XCompletedConnection.idl72
-rw-r--r--offapi/com/sun/star/sdb/XCompletedExecution.idl63
-rw-r--r--offapi/com/sun/star/sdb/XDataAccessDescriptorFactory.idl64
-rw-r--r--offapi/com/sun/star/sdb/XDatabaseAccess.idl74
-rw-r--r--offapi/com/sun/star/sdb/XDatabaseAccessListener.idl53
-rw-r--r--offapi/com/sun/star/sdb/XDatabaseEnvironment.idl73
-rw-r--r--offapi/com/sun/star/sdb/XDatabaseRegistrations.idl159
-rw-r--r--offapi/com/sun/star/sdb/XDatabaseRegistrationsListener.idl71
-rw-r--r--offapi/com/sun/star/sdb/XDocumentDataSource.idl75
-rw-r--r--offapi/com/sun/star/sdb/XFormDocumentsSupplier.idl61
-rw-r--r--offapi/com/sun/star/sdb/XInteractionDocumentSave.idl65
-rw-r--r--offapi/com/sun/star/sdb/XInteractionSupplyParameters.idl62
-rw-r--r--offapi/com/sun/star/sdb/XOfficeDatabaseDocument.idl78
-rw-r--r--offapi/com/sun/star/sdb/XParametersSupplier.idl60
-rw-r--r--offapi/com/sun/star/sdb/XQueriesSupplier.idl63
-rw-r--r--offapi/com/sun/star/sdb/XQueryDefinitionsSupplier.idl59
-rw-r--r--offapi/com/sun/star/sdb/XReportDocumentsSupplier.idl61
-rw-r--r--offapi/com/sun/star/sdb/XResultSetAccess.idl70
-rw-r--r--offapi/com/sun/star/sdb/XRowSetApproveBroadcaster.idl66
-rw-r--r--offapi/com/sun/star/sdb/XRowSetApproveListener.idl77
-rw-r--r--offapi/com/sun/star/sdb/XRowSetChangeBroadcaster.idl63
-rw-r--r--offapi/com/sun/star/sdb/XRowSetChangeListener.idl59
-rw-r--r--offapi/com/sun/star/sdb/XRowSetSupplier.idl73
-rw-r--r--offapi/com/sun/star/sdb/XRowsChangeBroadcaster.idl66
-rw-r--r--offapi/com/sun/star/sdb/XRowsChangeListener.idl60
-rw-r--r--offapi/com/sun/star/sdb/XSQLErrorBroadcaster.idl70
-rw-r--r--offapi/com/sun/star/sdb/XSQLErrorListener.idl62
-rw-r--r--offapi/com/sun/star/sdb/XSQLQueryComposer.idl175
-rw-r--r--offapi/com/sun/star/sdb/XSQLQueryComposerFactory.idl60
-rw-r--r--offapi/com/sun/star/sdb/XSingleSelectQueryAnalyzer.idl262
-rw-r--r--offapi/com/sun/star/sdb/XSingleSelectQueryComposer.idl274
-rw-r--r--offapi/com/sun/star/sdb/XSubDocument.idl102
-rw-r--r--offapi/com/sun/star/sdb/application/CopyTableContinuation.idl69
-rw-r--r--offapi/com/sun/star/sdb/application/CopyTableOperation.idl72
-rw-r--r--offapi/com/sun/star/sdb/application/CopyTableRowEvent.idl71
-rw-r--r--offapi/com/sun/star/sdb/application/CopyTableWizard.idl231
-rw-r--r--offapi/com/sun/star/sdb/application/DatabaseObject.idl77
-rw-r--r--offapi/com/sun/star/sdb/application/DatabaseObjectContainer.idl104
-rw-r--r--offapi/com/sun/star/sdb/application/DefaultViewController.idl101
-rw-r--r--offapi/com/sun/star/sdb/application/NamedDatabaseObject.idl87
-rw-r--r--offapi/com/sun/star/sdb/application/XCopyTableListener.idl98
-rw-r--r--offapi/com/sun/star/sdb/application/XCopyTableWizard.idl153
-rw-r--r--offapi/com/sun/star/sdb/application/XDatabaseDocumentUI.idl330
-rw-r--r--offapi/com/sun/star/sdb/application/XTableUIProvider.idl123
-rw-r--r--offapi/com/sun/star/sdb/application/makefile.mk60
-rw-r--r--offapi/com/sun/star/sdb/makefile.mk147
-rw-r--r--offapi/com/sun/star/sdb/tools/CompositionType.idl89
-rw-r--r--offapi/com/sun/star/sdb/tools/XConnectionSupplier.idl67
-rw-r--r--offapi/com/sun/star/sdb/tools/XConnectionTools.idl146
-rw-r--r--offapi/com/sun/star/sdb/tools/XDataSourceMetaData.idl53
-rw-r--r--offapi/com/sun/star/sdb/tools/XIndexAlteration.idl96
-rw-r--r--offapi/com/sun/star/sdb/tools/XKeyAlteration.idl96
-rw-r--r--offapi/com/sun/star/sdb/tools/XObjectNames.idl179
-rw-r--r--offapi/com/sun/star/sdb/tools/XTableAlteration.idl115
-rw-r--r--offapi/com/sun/star/sdb/tools/XTableName.idl154
-rw-r--r--offapi/com/sun/star/sdb/tools/XTableRename.idl78
-rw-r--r--offapi/com/sun/star/sdb/tools/XViewAccess.idl88
-rw-r--r--offapi/com/sun/star/sdb/tools/makefile.mk59
-rw-r--r--offapi/com/sun/star/sdbc/BatchUpdateException.idl68
-rw-r--r--offapi/com/sun/star/sdbc/BestRowScope.idl86
-rw-r--r--offapi/com/sun/star/sdbc/BestRowType.idl83
-rw-r--r--offapi/com/sun/star/sdbc/CallableStatement.idl110
-rw-r--r--offapi/com/sun/star/sdbc/ChangeAction.idl61
-rw-r--r--offapi/com/sun/star/sdbc/ChangeEvent.idl53
-rw-r--r--offapi/com/sun/star/sdbc/ColumnSearch.idl107
-rw-r--r--offapi/com/sun/star/sdbc/ColumnType.idl83
-rw-r--r--offapi/com/sun/star/sdbc/ColumnValue.idl57
-rw-r--r--offapi/com/sun/star/sdbc/Connection.idl92
-rw-r--r--offapi/com/sun/star/sdbc/ConnectionPool.idl57
-rw-r--r--offapi/com/sun/star/sdbc/ConnectionProperties.idl71
-rw-r--r--offapi/com/sun/star/sdbc/DBASEConnectionProperties.idl66
-rw-r--r--offapi/com/sun/star/sdbc/DataTruncation.idl92
-rw-r--r--offapi/com/sun/star/sdbc/DataType.idl147
-rw-r--r--offapi/com/sun/star/sdbc/Deferrability.idl77
-rw-r--r--offapi/com/sun/star/sdbc/Driver.idl75
-rw-r--r--offapi/com/sun/star/sdbc/DriverManager.idl76
-rw-r--r--offapi/com/sun/star/sdbc/DriverPropertyInfo.idl87
-rw-r--r--offapi/com/sun/star/sdbc/FILEConnectionProperties.idl69
-rw-r--r--offapi/com/sun/star/sdbc/FLATConnectionProperties.idl86
-rw-r--r--offapi/com/sun/star/sdbc/FetchDirection.idl61
-rw-r--r--offapi/com/sun/star/sdbc/IndexType.idl103
-rw-r--r--offapi/com/sun/star/sdbc/JDBCConnectionProperties.idl119
-rw-r--r--offapi/com/sun/star/sdbc/KeyRule.idl192
-rw-r--r--offapi/com/sun/star/sdbc/ODBCConnectionProperties.idl94
-rw-r--r--offapi/com/sun/star/sdbc/PreparedStatement.idl272
-rw-r--r--offapi/com/sun/star/sdbc/ProcedureColumn.idl116
-rw-r--r--offapi/com/sun/star/sdbc/ProcedureResult.idl89
-rw-r--r--offapi/com/sun/star/sdbc/ResultSet.idl249
-rw-r--r--offapi/com/sun/star/sdbc/ResultSetConcurrency.idl58
-rw-r--r--offapi/com/sun/star/sdbc/ResultSetType.idl67
-rw-r--r--offapi/com/sun/star/sdbc/RowSet.idl188
-rw-r--r--offapi/com/sun/star/sdbc/SQLException.idl81
-rw-r--r--offapi/com/sun/star/sdbc/SQLWarning.idl55
-rw-r--r--offapi/com/sun/star/sdbc/Statement.idl233
-rw-r--r--offapi/com/sun/star/sdbc/TransactionIsolation.idl85
-rw-r--r--offapi/com/sun/star/sdbc/XArray.idl255
-rw-r--r--offapi/com/sun/star/sdbc/XBatchExecution.idl83
-rw-r--r--offapi/com/sun/star/sdbc/XBlob.idl251
-rw-r--r--offapi/com/sun/star/sdbc/XClob.idl210
-rw-r--r--offapi/com/sun/star/sdbc/XCloseable.idl59
-rw-r--r--offapi/com/sun/star/sdbc/XColumnLocate.idl76
-rw-r--r--offapi/com/sun/star/sdbc/XConnection.idl438
-rw-r--r--offapi/com/sun/star/sdbc/XDataSource.idl106
-rw-r--r--offapi/com/sun/star/sdbc/XDatabaseMetaData.idl2610
-rw-r--r--offapi/com/sun/star/sdbc/XDatabaseMetaData2.idl66
-rw-r--r--offapi/com/sun/star/sdbc/XDriver.idl182
-rw-r--r--offapi/com/sun/star/sdbc/XDriverAccess.idl64
-rw-r--r--offapi/com/sun/star/sdbc/XDriverManager.idl126
-rw-r--r--offapi/com/sun/star/sdbc/XGeneratedResultSet.idl71
-rw-r--r--offapi/com/sun/star/sdbc/XIsolatedConnection.idl85
-rw-r--r--offapi/com/sun/star/sdbc/XMultipleResults.idl117
-rw-r--r--offapi/com/sun/star/sdbc/XOutParameters.idl148
-rw-r--r--offapi/com/sun/star/sdbc/XParameters.idl458
-rw-r--r--offapi/com/sun/star/sdbc/XPooledConnection.idl80
-rw-r--r--offapi/com/sun/star/sdbc/XPreparedBatchExecution.idl86
-rw-r--r--offapi/com/sun/star/sdbc/XPreparedStatement.idl117
-rw-r--r--offapi/com/sun/star/sdbc/XRef.idl65
-rw-r--r--offapi/com/sun/star/sdbc/XResultSet.idl345
-rw-r--r--offapi/com/sun/star/sdbc/XResultSetMetaData.idl286
-rw-r--r--offapi/com/sun/star/sdbc/XResultSetMetaDataSupplier.idl73
-rw-r--r--offapi/com/sun/star/sdbc/XResultSetUpdate.idl143
-rw-r--r--offapi/com/sun/star/sdbc/XRow.idl349
-rw-r--r--offapi/com/sun/star/sdbc/XRowSet.idl86
-rw-r--r--offapi/com/sun/star/sdbc/XRowSetListener.idl73
-rw-r--r--offapi/com/sun/star/sdbc/XRowUpdate.idl269
-rw-r--r--offapi/com/sun/star/sdbc/XSQLData.idl146
-rw-r--r--offapi/com/sun/star/sdbc/XSQLInput.idl300
-rw-r--r--offapi/com/sun/star/sdbc/XSQLOutput.idl310
-rw-r--r--offapi/com/sun/star/sdbc/XStatement.idl142
-rw-r--r--offapi/com/sun/star/sdbc/XStruct.idl111
-rw-r--r--offapi/com/sun/star/sdbc/XWarningsSupplier.idl84
-rw-r--r--offapi/com/sun/star/sdbc/makefile.mk118
-rw-r--r--offapi/com/sun/star/sdbcx/CheckOption.idl61
-rw-r--r--offapi/com/sun/star/sdbcx/Column.idl125
-rw-r--r--offapi/com/sun/star/sdbcx/ColumnDescriptor.idl107
-rw-r--r--offapi/com/sun/star/sdbcx/CompareBookmark.idl69
-rw-r--r--offapi/com/sun/star/sdbcx/Container.idl101
-rw-r--r--offapi/com/sun/star/sdbcx/DatabaseDefinition.idl80
-rw-r--r--offapi/com/sun/star/sdbcx/Descriptor.idl67
-rw-r--r--offapi/com/sun/star/sdbcx/Driver.idl78
-rw-r--r--offapi/com/sun/star/sdbcx/Group.idl68
-rw-r--r--offapi/com/sun/star/sdbcx/GroupDescriptor.idl53
-rw-r--r--offapi/com/sun/star/sdbcx/Index.idl97
-rw-r--r--offapi/com/sun/star/sdbcx/IndexColumn.idl56
-rw-r--r--offapi/com/sun/star/sdbcx/IndexColumnDescriptor.idl56
-rw-r--r--offapi/com/sun/star/sdbcx/IndexDescriptor.idl73
-rw-r--r--offapi/com/sun/star/sdbcx/Key.idl93
-rw-r--r--offapi/com/sun/star/sdbcx/KeyColumn.idl54
-rw-r--r--offapi/com/sun/star/sdbcx/KeyColumnDescriptor.idl57
-rw-r--r--offapi/com/sun/star/sdbcx/KeyDescriptor.idl75
-rw-r--r--offapi/com/sun/star/sdbcx/KeyType.idl59
-rw-r--r--offapi/com/sun/star/sdbcx/PreparedStatement.idl59
-rw-r--r--offapi/com/sun/star/sdbcx/Privilege.idl91
-rw-r--r--offapi/com/sun/star/sdbcx/PrivilegeObject.idl60
-rw-r--r--offapi/com/sun/star/sdbcx/ReferenceColumn.idl57
-rw-r--r--offapi/com/sun/star/sdbcx/ResultSet.idl84
-rw-r--r--offapi/com/sun/star/sdbcx/Statement.idl64
-rw-r--r--offapi/com/sun/star/sdbcx/Table.idl134
-rw-r--r--offapi/com/sun/star/sdbcx/TableDescriptor.idl88
-rw-r--r--offapi/com/sun/star/sdbcx/User.idl68
-rw-r--r--offapi/com/sun/star/sdbcx/UserDescriptor.idl56
-rw-r--r--offapi/com/sun/star/sdbcx/View.idl108
-rw-r--r--offapi/com/sun/star/sdbcx/ViewDescriptor.idl74
-rw-r--r--offapi/com/sun/star/sdbcx/XAlterTable.idl97
-rw-r--r--offapi/com/sun/star/sdbcx/XAlterView.idl67
-rw-r--r--offapi/com/sun/star/sdbcx/XAppend.idl75
-rw-r--r--offapi/com/sun/star/sdbcx/XAuthorizable.idl110
-rw-r--r--offapi/com/sun/star/sdbcx/XColumnsSupplier.idl64
-rw-r--r--offapi/com/sun/star/sdbcx/XCreateCatalog.idl74
-rw-r--r--offapi/com/sun/star/sdbcx/XDataDefinitionSupplier.idl92
-rw-r--r--offapi/com/sun/star/sdbcx/XDataDescriptorFactory.idl58
-rw-r--r--offapi/com/sun/star/sdbcx/XDeleteRows.idl67
-rw-r--r--offapi/com/sun/star/sdbcx/XDrop.idl81
-rw-r--r--offapi/com/sun/star/sdbcx/XDropCatalog.idl76
-rw-r--r--offapi/com/sun/star/sdbcx/XGroupsSupplier.idl60
-rw-r--r--offapi/com/sun/star/sdbcx/XIndexesSupplier.idl60
-rw-r--r--offapi/com/sun/star/sdbcx/XKeysSupplier.idl60
-rw-r--r--offapi/com/sun/star/sdbcx/XRename.idl70
-rw-r--r--offapi/com/sun/star/sdbcx/XRowLocate.idl158
-rw-r--r--offapi/com/sun/star/sdbcx/XTablesSupplier.idl60
-rw-r--r--offapi/com/sun/star/sdbcx/XUser.idl59
-rw-r--r--offapi/com/sun/star/sdbcx/XUsersSupplier.idl64
-rw-r--r--offapi/com/sun/star/sdbcx/XViewsSupplier.idl60
-rw-r--r--offapi/com/sun/star/sdbcx/makefile.mk97
-rw-r--r--offapi/com/sun/star/security/CertificateCharacters.idl61
-rw-r--r--offapi/com/sun/star/security/CertificateContainer.idl46
-rw-r--r--offapi/com/sun/star/security/CertificateContainerStatus.idl64
-rw-r--r--offapi/com/sun/star/security/CertificateException.idl54
-rw-r--r--offapi/com/sun/star/security/CertificateValidity.idl133
-rw-r--r--offapi/com/sun/star/security/CryptographyException.idl55
-rw-r--r--offapi/com/sun/star/security/DocumentDigitalSignatures.idl55
-rw-r--r--offapi/com/sun/star/security/DocumentSignatureInformation.idl86
-rw-r--r--offapi/com/sun/star/security/EncryptionException.idl55
-rw-r--r--offapi/com/sun/star/security/KeyException.idl55
-rw-r--r--offapi/com/sun/star/security/KeyUsage.idl49
-rw-r--r--offapi/com/sun/star/security/NoPasswordException.idl55
-rw-r--r--offapi/com/sun/star/security/SecurityInfrastructureException.idl55
-rw-r--r--offapi/com/sun/star/security/SerialNumberAdapter.idl57
-rw-r--r--offapi/com/sun/star/security/SignatureException.idl55
-rw-r--r--offapi/com/sun/star/security/XCertificate.idl137
-rw-r--r--offapi/com/sun/star/security/XCertificateContainer.idl66
-rw-r--r--offapi/com/sun/star/security/XCertificateExtension.idl65
-rw-r--r--offapi/com/sun/star/security/XDocumentDigitalSignatures.idl153
-rw-r--r--offapi/com/sun/star/security/XSerialNumberAdapter.idl59
-rw-r--r--offapi/com/sun/star/security/makefile.mk67
-rw-r--r--offapi/com/sun/star/setup/ActionType.idl67
-rw-r--r--offapi/com/sun/star/setup/BaseAction.idl48
-rw-r--r--offapi/com/sun/star/setup/CopyFileAction.idl64
-rw-r--r--offapi/com/sun/star/setup/DeleteDirAction.idl44
-rw-r--r--offapi/com/sun/star/setup/DeleteFileAction.idl60
-rw-r--r--offapi/com/sun/star/setup/DeleteFolderAction.idl44
-rw-r--r--offapi/com/sun/star/setup/DeleteFolderItemAction.idl47
-rw-r--r--offapi/com/sun/star/setup/DownloadAction.idl50
-rw-r--r--offapi/com/sun/star/setup/FontAction.idl50
-rw-r--r--offapi/com/sun/star/setup/InstallEnvironment.idl116
-rw-r--r--offapi/com/sun/star/setup/InstallResponse.idl62
-rw-r--r--offapi/com/sun/star/setup/InstallType.idl61
-rw-r--r--offapi/com/sun/star/setup/MakeDirAction.idl47
-rw-r--r--offapi/com/sun/star/setup/MakeFolderAction.idl47
-rw-r--r--offapi/com/sun/star/setup/MakeFolderItemAction.idl56
-rw-r--r--offapi/com/sun/star/setup/MakeShortcutAction.idl53
-rw-r--r--offapi/com/sun/star/setup/MirrorEntry.idl46
-rw-r--r--offapi/com/sun/star/setup/ModuleInfo.idl70
-rw-r--r--offapi/com/sun/star/setup/ModuleState.idl46
-rw-r--r--offapi/com/sun/star/setup/OSType.idl74
-rw-r--r--offapi/com/sun/star/setup/ProductRegistration.idl93
-rw-r--r--offapi/com/sun/star/setup/ProfileItemAction.idl56
-rw-r--r--offapi/com/sun/star/setup/Setup.idl49
-rw-r--r--offapi/com/sun/star/setup/SizeInfo.idl49
-rw-r--r--offapi/com/sun/star/setup/UnzipAction.idl70
-rw-r--r--offapi/com/sun/star/setup/UpdateType.idl49
-rw-r--r--offapi/com/sun/star/setup/VersionIdentifier.idl57
-rw-r--r--offapi/com/sun/star/setup/WindowsRegistryAction.idl62
-rw-r--r--offapi/com/sun/star/setup/XSetup.idl108
-rw-r--r--offapi/com/sun/star/setup/makefile.mk74
-rw-r--r--offapi/com/sun/star/sheet/AccessibleCell.idl135
-rw-r--r--offapi/com/sun/star/sheet/AccessibleCsvCell.idl81
-rw-r--r--offapi/com/sun/star/sheet/AccessibleCsvRuler.idl80
-rw-r--r--offapi/com/sun/star/sheet/AccessibleCsvTable.idl91
-rw-r--r--offapi/com/sun/star/sheet/AccessiblePageHeaderFooterAreasView.idl148
-rw-r--r--offapi/com/sun/star/sheet/AccessibleSpreadsheet.idl157
-rw-r--r--offapi/com/sun/star/sheet/AccessibleSpreadsheetDocumentView.idl166
-rw-r--r--offapi/com/sun/star/sheet/AccessibleSpreadsheetPageView.idl183
-rw-r--r--offapi/com/sun/star/sheet/ActivationEvent.idl64
-rw-r--r--offapi/com/sun/star/sheet/AddIn.idl160
-rw-r--r--offapi/com/sun/star/sheet/AddressConvention.idl70
-rw-r--r--offapi/com/sun/star/sheet/Border.idl72
-rw-r--r--offapi/com/sun/star/sheet/CellAnnotation.idl91
-rw-r--r--offapi/com/sun/star/sheet/CellAnnotationShape.idl57
-rw-r--r--offapi/com/sun/star/sheet/CellAnnotations.idl75
-rw-r--r--offapi/com/sun/star/sheet/CellAnnotationsEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/CellAreaLink.idl121
-rw-r--r--offapi/com/sun/star/sheet/CellAreaLinks.idl83
-rw-r--r--offapi/com/sun/star/sheet/CellAreaLinksEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/CellDeleteMode.idl78
-rw-r--r--offapi/com/sun/star/sheet/CellFlags.idl114
-rw-r--r--offapi/com/sun/star/sheet/CellFormatRanges.idl79
-rw-r--r--offapi/com/sun/star/sheet/CellFormatRangesEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/CellInsertMode.idl78
-rw-r--r--offapi/com/sun/star/sheet/Cells.idl62
-rw-r--r--offapi/com/sun/star/sheet/CellsEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/ComplexReference.idl63
-rw-r--r--offapi/com/sun/star/sheet/ConditionOperator.idl108
-rw-r--r--offapi/com/sun/star/sheet/ConsolidationDescriptor.idl61
-rw-r--r--offapi/com/sun/star/sheet/DDEItemInfo.idl65
-rw-r--r--offapi/com/sun/star/sheet/DDELink.idl94
-rw-r--r--offapi/com/sun/star/sheet/DDELinkInfo.idl80
-rw-r--r--offapi/com/sun/star/sheet/DDELinkMode.idl70
-rw-r--r--offapi/com/sun/star/sheet/DDELinks.idl98
-rw-r--r--offapi/com/sun/star/sheet/DDELinksEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/DataImportMode.idl72
-rw-r--r--offapi/com/sun/star/sheet/DataPilotDescriptor.idl151
-rw-r--r--offapi/com/sun/star/sheet/DataPilotField.idl248
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldAutoShowInfo.idl83
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldFilter.idl51
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldGroup.idl133
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldGroupBy.idl138
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldGroupEnumeration.idl64
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldGroupInfo.idl164
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldGroupItem.idl60
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldGroups.idl127
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldGroupsEnumeration.idl64
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldLayoutInfo.idl66
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldLayoutMode.idl86
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldOrientation.idl78
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldReference.idl91
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldReferenceItemType.idl68
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldReferenceType.idl175
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldShowItemsMode.idl64
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldSortInfo.idl74
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldSortMode.idl81
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFields.idl84
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldsEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/DataPilotItem.idl90
-rw-r--r--offapi/com/sun/star/sheet/DataPilotItems.idl80
-rw-r--r--offapi/com/sun/star/sheet/DataPilotItemsEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/DataPilotOutputRangeType.idl72
-rw-r--r--offapi/com/sun/star/sheet/DataPilotSource.idl129
-rw-r--r--offapi/com/sun/star/sheet/DataPilotSourceDimension.idl174
-rw-r--r--offapi/com/sun/star/sheet/DataPilotSourceDimensions.idl62
-rw-r--r--offapi/com/sun/star/sheet/DataPilotSourceHierarchies.idl64
-rw-r--r--offapi/com/sun/star/sheet/DataPilotSourceHierarchy.idl72
-rw-r--r--offapi/com/sun/star/sheet/DataPilotSourceLevel.idl110
-rw-r--r--offapi/com/sun/star/sheet/DataPilotSourceLevels.idl63
-rw-r--r--offapi/com/sun/star/sheet/DataPilotSourceMember.idl99
-rw-r--r--offapi/com/sun/star/sheet/DataPilotSourceMembers.idl63
-rw-r--r--offapi/com/sun/star/sheet/DataPilotTable.idl80
-rw-r--r--offapi/com/sun/star/sheet/DataPilotTableHeaderData.idl79
-rw-r--r--offapi/com/sun/star/sheet/DataPilotTablePositionData.idl90
-rw-r--r--offapi/com/sun/star/sheet/DataPilotTablePositionType.idl78
-rw-r--r--offapi/com/sun/star/sheet/DataPilotTableResultData.idl86
-rw-r--r--offapi/com/sun/star/sheet/DataPilotTables.idl77
-rw-r--r--offapi/com/sun/star/sheet/DataPilotTablesEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/DataResult.idl62
-rw-r--r--offapi/com/sun/star/sheet/DataResultFlags.idl69
-rw-r--r--offapi/com/sun/star/sheet/DatabaseImportDescriptor.idl94
-rw-r--r--offapi/com/sun/star/sheet/DatabaseRange.idl172
-rw-r--r--offapi/com/sun/star/sheet/DatabaseRanges.idl83
-rw-r--r--offapi/com/sun/star/sheet/DatabaseRangesEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/DimensionFlags.idl74
-rw-r--r--offapi/com/sun/star/sheet/DocumentSettings.idl137
-rw-r--r--offapi/com/sun/star/sheet/ExternalDocLink.idl54
-rw-r--r--offapi/com/sun/star/sheet/ExternalDocLinks.idl52
-rw-r--r--offapi/com/sun/star/sheet/ExternalLinkInfo.idl77
-rw-r--r--offapi/com/sun/star/sheet/ExternalLinkType.idl64
-rw-r--r--offapi/com/sun/star/sheet/ExternalReference.idl96
-rw-r--r--offapi/com/sun/star/sheet/ExternalSheetCache.idl52
-rw-r--r--offapi/com/sun/star/sheet/FillDateMode.idl75
-rw-r--r--offapi/com/sun/star/sheet/FillDirection.idl73
-rw-r--r--offapi/com/sun/star/sheet/FillMode.idl93
-rw-r--r--offapi/com/sun/star/sheet/FilterConnection.idl61
-rw-r--r--offapi/com/sun/star/sheet/FilterFormulaParser.idl52
-rw-r--r--offapi/com/sun/star/sheet/FilterOperator.idl120
-rw-r--r--offapi/com/sun/star/sheet/FilterOperator2.idl161
-rw-r--r--offapi/com/sun/star/sheet/FormulaLanguage.idl70
-rw-r--r--offapi/com/sun/star/sheet/FormulaMapGroup.idl77
-rw-r--r--offapi/com/sun/star/sheet/FormulaMapGroupSpecialOffset.idl210
-rw-r--r--offapi/com/sun/star/sheet/FormulaOpCodeMapEntry.idl65
-rw-r--r--offapi/com/sun/star/sheet/FormulaParser.idl118
-rw-r--r--offapi/com/sun/star/sheet/FormulaResult.idl66
-rw-r--r--offapi/com/sun/star/sheet/FormulaToken.idl64
-rw-r--r--offapi/com/sun/star/sheet/FunctionAccess.idl95
-rw-r--r--offapi/com/sun/star/sheet/FunctionArgument.idl69
-rw-r--r--offapi/com/sun/star/sheet/FunctionCategory.idl116
-rw-r--r--offapi/com/sun/star/sheet/FunctionDescription.idl89
-rw-r--r--offapi/com/sun/star/sheet/FunctionDescriptionEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/FunctionDescriptions.idl91
-rw-r--r--offapi/com/sun/star/sheet/GeneralFunction.idl128
-rw-r--r--offapi/com/sun/star/sheet/GlobalSheetSettings.idl192
-rw-r--r--offapi/com/sun/star/sheet/GoalResult.idl58
-rw-r--r--offapi/com/sun/star/sheet/HeaderFooterContent.idl60
-rw-r--r--offapi/com/sun/star/sheet/LabelRange.idl61
-rw-r--r--offapi/com/sun/star/sheet/LabelRanges.idl87
-rw-r--r--offapi/com/sun/star/sheet/LabelRangesEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/LocalizedName.idl65
-rw-r--r--offapi/com/sun/star/sheet/MemberResult.idl68
-rw-r--r--offapi/com/sun/star/sheet/MemberResultFlags.idl77
-rw-r--r--offapi/com/sun/star/sheet/MoveDirection.idl73
-rw-r--r--offapi/com/sun/star/sheet/NamedRange.idl112
-rw-r--r--offapi/com/sun/star/sheet/NamedRangeFlag.idl72
-rw-r--r--offapi/com/sun/star/sheet/NamedRanges.idl102
-rw-r--r--offapi/com/sun/star/sheet/NamedRangesEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/NoConvergenceException.idl52
-rw-r--r--offapi/com/sun/star/sheet/PasteOperation.idl79
-rw-r--r--offapi/com/sun/star/sheet/RangeSelectionArguments.idl72
-rw-r--r--offapi/com/sun/star/sheet/RangeSelectionEvent.idl57
-rw-r--r--offapi/com/sun/star/sheet/RecentFunctions.idl58
-rw-r--r--offapi/com/sun/star/sheet/ReferenceFlags.idl97
-rw-r--r--offapi/com/sun/star/sheet/ResultEvent.idl63
-rw-r--r--offapi/com/sun/star/sheet/Scenario.idl122
-rw-r--r--offapi/com/sun/star/sheet/Scenarios.idl81
-rw-r--r--offapi/com/sun/star/sheet/ScenariosEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/Shape.idl82
-rw-r--r--offapi/com/sun/star/sheet/SheetCell.idl340
-rw-r--r--offapi/com/sun/star/sheet/SheetCellCursor.idl92
-rw-r--r--offapi/com/sun/star/sheet/SheetCellRange.idl434
-rw-r--r--offapi/com/sun/star/sheet/SheetCellRanges.idl257
-rw-r--r--offapi/com/sun/star/sheet/SheetCellRangesEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/SheetFilterDescriptor.idl148
-rw-r--r--offapi/com/sun/star/sheet/SheetLink.idl109
-rw-r--r--offapi/com/sun/star/sheet/SheetLinkMode.idl70
-rw-r--r--offapi/com/sun/star/sheet/SheetLinks.idl89
-rw-r--r--offapi/com/sun/star/sheet/SheetLinksEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/SheetRangesQuery.idl68
-rw-r--r--offapi/com/sun/star/sheet/SheetSortDescriptor.idl102
-rw-r--r--offapi/com/sun/star/sheet/SheetSortDescriptor2.idl116
-rw-r--r--offapi/com/sun/star/sheet/SingleReference.idl90
-rw-r--r--offapi/com/sun/star/sheet/Solver.idl50
-rw-r--r--offapi/com/sun/star/sheet/SolverConstraint.idl66
-rw-r--r--offapi/com/sun/star/sheet/SolverConstraintOperator.idl62
-rw-r--r--offapi/com/sun/star/sheet/Spreadsheet.idl279
-rw-r--r--offapi/com/sun/star/sheet/SpreadsheetDocument.idl288
-rw-r--r--offapi/com/sun/star/sheet/SpreadsheetDocumentSettings.idl250
-rw-r--r--offapi/com/sun/star/sheet/SpreadsheetDrawPage.idl97
-rw-r--r--offapi/com/sun/star/sheet/SpreadsheetView.idl148
-rw-r--r--offapi/com/sun/star/sheet/SpreadsheetViewPane.idl71
-rw-r--r--offapi/com/sun/star/sheet/SpreadsheetViewPanesEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/SpreadsheetViewSettings.idl193
-rw-r--r--offapi/com/sun/star/sheet/Spreadsheets.idl95
-rw-r--r--offapi/com/sun/star/sheet/SpreadsheetsEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/StatusBarFunction.idl91
-rw-r--r--offapi/com/sun/star/sheet/SubTotalColumn.idl66
-rw-r--r--offapi/com/sun/star/sheet/SubTotalDescriptor.idl150
-rw-r--r--offapi/com/sun/star/sheet/SubTotalField.idl63
-rw-r--r--offapi/com/sun/star/sheet/SubTotalFieldsEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/TableAutoFormat.idl141
-rw-r--r--offapi/com/sun/star/sheet/TableAutoFormatEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/TableAutoFormatField.idl329
-rw-r--r--offapi/com/sun/star/sheet/TableAutoFormats.idl85
-rw-r--r--offapi/com/sun/star/sheet/TableAutoFormatsEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/TableCellStyle.idl112
-rw-r--r--offapi/com/sun/star/sheet/TableConditionalEntry.idl70
-rw-r--r--offapi/com/sun/star/sheet/TableConditionalEntryEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/TableConditionalFormat.idl103
-rw-r--r--offapi/com/sun/star/sheet/TableFilterField.idl95
-rw-r--r--offapi/com/sun/star/sheet/TableFilterField2.idl103
-rw-r--r--offapi/com/sun/star/sheet/TableOperationMode.idl76
-rw-r--r--offapi/com/sun/star/sheet/TablePageBreakData.idl62
-rw-r--r--offapi/com/sun/star/sheet/TablePageStyle.idl221
-rw-r--r--offapi/com/sun/star/sheet/TableValidation.idl148
-rw-r--r--offapi/com/sun/star/sheet/TableValidationVisibility.idl67
-rw-r--r--offapi/com/sun/star/sheet/UniqueCellFormatRanges.idl80
-rw-r--r--offapi/com/sun/star/sheet/UniqueCellFormatRangesEnumeration.idl63
-rw-r--r--offapi/com/sun/star/sheet/ValidationAlertStyle.idl74
-rw-r--r--offapi/com/sun/star/sheet/ValidationType.idl96
-rw-r--r--offapi/com/sun/star/sheet/VolatileResult.idl64
-rw-r--r--offapi/com/sun/star/sheet/XActivationBroadcaster.idl85
-rw-r--r--offapi/com/sun/star/sheet/XActivationEventListener.idl74
-rw-r--r--offapi/com/sun/star/sheet/XAddIn.idl218
-rw-r--r--offapi/com/sun/star/sheet/XAreaLink.idl89
-rw-r--r--offapi/com/sun/star/sheet/XAreaLinks.idl95
-rw-r--r--offapi/com/sun/star/sheet/XArrayFormulaRange.idl69
-rw-r--r--offapi/com/sun/star/sheet/XArrayFormulaTokens.idl68
-rw-r--r--offapi/com/sun/star/sheet/XCalculatable.idl95
-rw-r--r--offapi/com/sun/star/sheet/XCellAddressable.idl66
-rw-r--r--offapi/com/sun/star/sheet/XCellFormatRangesSupplier.idl75
-rw-r--r--offapi/com/sun/star/sheet/XCellRangeAddressable.idl66
-rw-r--r--offapi/com/sun/star/sheet/XCellRangeData.idl69
-rw-r--r--offapi/com/sun/star/sheet/XCellRangeFormula.idl79
-rw-r--r--offapi/com/sun/star/sheet/XCellRangeMovement.idl131
-rw-r--r--offapi/com/sun/star/sheet/XCellRangeReferrer.idl68
-rw-r--r--offapi/com/sun/star/sheet/XCellRangesAccess.idl152
-rw-r--r--offapi/com/sun/star/sheet/XCellRangesQuery.idl172
-rw-r--r--offapi/com/sun/star/sheet/XCellSeries.idl110
-rw-r--r--offapi/com/sun/star/sheet/XCompatibilityNames.idl82
-rw-r--r--offapi/com/sun/star/sheet/XConsolidatable.idl87
-rw-r--r--offapi/com/sun/star/sheet/XConsolidationDescriptor.idl150
-rw-r--r--offapi/com/sun/star/sheet/XDDELink.idl75
-rw-r--r--offapi/com/sun/star/sheet/XDDELinkResults.idl77
-rw-r--r--offapi/com/sun/star/sheet/XDDELinks.idl92
-rw-r--r--offapi/com/sun/star/sheet/XDataPilotDataLayoutFieldSupplier.idl74
-rw-r--r--offapi/com/sun/star/sheet/XDataPilotDescriptor.idl150
-rw-r--r--offapi/com/sun/star/sheet/XDataPilotField.idl67
-rw-r--r--offapi/com/sun/star/sheet/XDataPilotFieldGrouping.idl174
-rw-r--r--offapi/com/sun/star/sheet/XDataPilotMemberResults.idl70
-rw-r--r--offapi/com/sun/star/sheet/XDataPilotResults.idl70
-rw-r--r--offapi/com/sun/star/sheet/XDataPilotTable.idl73
-rw-r--r--offapi/com/sun/star/sheet/XDataPilotTable2.idl131
-rw-r--r--offapi/com/sun/star/sheet/XDataPilotTables.idl106
-rw-r--r--offapi/com/sun/star/sheet/XDataPilotTablesSupplier.idl66
-rw-r--r--offapi/com/sun/star/sheet/XDatabaseRange.idl127
-rw-r--r--offapi/com/sun/star/sheet/XDatabaseRanges.idl72
-rw-r--r--offapi/com/sun/star/sheet/XDimensionsSupplier.idl66
-rw-r--r--offapi/com/sun/star/sheet/XDocumentAuditing.idl62
-rw-r--r--offapi/com/sun/star/sheet/XDrillDownDataSupplier.idl87
-rw-r--r--offapi/com/sun/star/sheet/XEnhancedMouseClickBroadcaster.idl91
-rw-r--r--offapi/com/sun/star/sheet/XExternalDocLink.idl98
-rw-r--r--offapi/com/sun/star/sheet/XExternalDocLinks.idl63
-rw-r--r--offapi/com/sun/star/sheet/XExternalSheetCache.idl99
-rw-r--r--offapi/com/sun/star/sheet/XExternalSheetName.idl82
-rw-r--r--offapi/com/sun/star/sheet/XFillAcrossSheet.idl60
-rw-r--r--offapi/com/sun/star/sheet/XFilterFormulaParser.idl59
-rw-r--r--offapi/com/sun/star/sheet/XFormulaOpCodeMapper.idl155
-rw-r--r--offapi/com/sun/star/sheet/XFormulaParser.idl68
-rw-r--r--offapi/com/sun/star/sheet/XFormulaQuery.idl100
-rw-r--r--offapi/com/sun/star/sheet/XFormulaTokens.idl68
-rw-r--r--offapi/com/sun/star/sheet/XFunctionAccess.idl125
-rw-r--r--offapi/com/sun/star/sheet/XFunctionDescriptions.idl83
-rw-r--r--offapi/com/sun/star/sheet/XGoalSeek.idl83
-rw-r--r--offapi/com/sun/star/sheet/XHeaderFooterContent.idl86
-rw-r--r--offapi/com/sun/star/sheet/XHierarchiesSupplier.idl68
-rw-r--r--offapi/com/sun/star/sheet/XLabelRange.idl87
-rw-r--r--offapi/com/sun/star/sheet/XLabelRanges.idl80
-rw-r--r--offapi/com/sun/star/sheet/XLevelsSupplier.idl68
-rw-r--r--offapi/com/sun/star/sheet/XMembersSupplier.idl68
-rw-r--r--offapi/com/sun/star/sheet/XMultiFormulaTokens.idl99
-rw-r--r--offapi/com/sun/star/sheet/XMultipleOperation.idl102
-rw-r--r--offapi/com/sun/star/sheet/XNamedRange.idl111
-rw-r--r--offapi/com/sun/star/sheet/XNamedRanges.idl142
-rw-r--r--offapi/com/sun/star/sheet/XPrintAreas.idl165
-rw-r--r--offapi/com/sun/star/sheet/XRangeSelection.idl94
-rw-r--r--offapi/com/sun/star/sheet/XRangeSelectionChangeListener.idl64
-rw-r--r--offapi/com/sun/star/sheet/XRangeSelectionListener.idl67
-rw-r--r--offapi/com/sun/star/sheet/XRecentFunctions.idl83
-rw-r--r--offapi/com/sun/star/sheet/XResultListener.idl64
-rw-r--r--offapi/com/sun/star/sheet/XScenario.idl93
-rw-r--r--offapi/com/sun/star/sheet/XScenarioEnhanced.idl72
-rw-r--r--offapi/com/sun/star/sheet/XScenarios.idl84
-rw-r--r--offapi/com/sun/star/sheet/XScenariosSupplier.idl64
-rw-r--r--offapi/com/sun/star/sheet/XSheetAnnotation.idl91
-rw-r--r--offapi/com/sun/star/sheet/XSheetAnnotationAnchor.idl65
-rw-r--r--offapi/com/sun/star/sheet/XSheetAnnotationShapeSupplier.idl66
-rw-r--r--offapi/com/sun/star/sheet/XSheetAnnotations.idl90
-rw-r--r--offapi/com/sun/star/sheet/XSheetAnnotationsSupplier.idl64
-rw-r--r--offapi/com/sun/star/sheet/XSheetAuditing.idl124
-rw-r--r--offapi/com/sun/star/sheet/XSheetCellCursor.idl113
-rw-r--r--offapi/com/sun/star/sheet/XSheetCellRange.idl70
-rw-r--r--offapi/com/sun/star/sheet/XSheetCellRangeContainer.idl127
-rw-r--r--offapi/com/sun/star/sheet/XSheetCellRanges.idl92
-rw-r--r--offapi/com/sun/star/sheet/XSheetCondition.idl132
-rw-r--r--offapi/com/sun/star/sheet/XSheetConditionalEntries.idl102
-rw-r--r--offapi/com/sun/star/sheet/XSheetConditionalEntry.idl69
-rw-r--r--offapi/com/sun/star/sheet/XSheetFilterDescriptor.idl71
-rw-r--r--offapi/com/sun/star/sheet/XSheetFilterDescriptor2.idl76
-rw-r--r--offapi/com/sun/star/sheet/XSheetFilterable.idl81
-rw-r--r--offapi/com/sun/star/sheet/XSheetFilterableEx.idl71
-rw-r--r--offapi/com/sun/star/sheet/XSheetLinkable.idl134
-rw-r--r--offapi/com/sun/star/sheet/XSheetOperation.idl87
-rw-r--r--offapi/com/sun/star/sheet/XSheetOutline.idl141
-rw-r--r--offapi/com/sun/star/sheet/XSheetPageBreak.idl94
-rw-r--r--offapi/com/sun/star/sheet/XSheetPastable.idl100
-rw-r--r--offapi/com/sun/star/sheet/XSolver.idl84
-rw-r--r--offapi/com/sun/star/sheet/XSolverDescription.idl65
-rw-r--r--offapi/com/sun/star/sheet/XSpreadsheet.idl76
-rw-r--r--offapi/com/sun/star/sheet/XSpreadsheetDocument.idl66
-rw-r--r--offapi/com/sun/star/sheet/XSpreadsheetView.idl69
-rw-r--r--offapi/com/sun/star/sheet/XSpreadsheets.idl93
-rw-r--r--offapi/com/sun/star/sheet/XSubTotalCalculatable.idl95
-rw-r--r--offapi/com/sun/star/sheet/XSubTotalDescriptor.idl80
-rw-r--r--offapi/com/sun/star/sheet/XSubTotalField.idl87
-rw-r--r--offapi/com/sun/star/sheet/XUniqueCellFormatRangesSupplier.idl77
-rw-r--r--offapi/com/sun/star/sheet/XUsedAreaCursor.idl78
-rw-r--r--offapi/com/sun/star/sheet/XViewFreezable.idl75
-rw-r--r--offapi/com/sun/star/sheet/XViewPane.idl89
-rw-r--r--offapi/com/sun/star/sheet/XViewPanesSupplier.idl64
-rw-r--r--offapi/com/sun/star/sheet/XViewSplitable.idl102
-rw-r--r--offapi/com/sun/star/sheet/XVolatileResult.idl73
-rw-r--r--offapi/com/sun/star/sheet/_NamedRange.idl73
-rw-r--r--offapi/com/sun/star/sheet/makefile.mk349
-rw-r--r--offapi/com/sun/star/smarttags/SmartTagAction.idl58
-rw-r--r--offapi/com/sun/star/smarttags/SmartTagRecognizer.idl60
-rw-r--r--offapi/com/sun/star/smarttags/SmartTagRecognizerMode.idl60
-rw-r--r--offapi/com/sun/star/smarttags/XSmartTagAction.idl358
-rw-r--r--offapi/com/sun/star/smarttags/XSmartTagRecognizer.idl231
-rw-r--r--offapi/com/sun/star/smarttags/makefile.mk66
-rw-r--r--offapi/com/sun/star/style/BreakType.idl131
-rw-r--r--offapi/com/sun/star/style/CaseMap.idl87
-rw-r--r--offapi/com/sun/star/style/CellStyle.idl60
-rw-r--r--offapi/com/sun/star/style/CharacterProperties.idl450
-rw-r--r--offapi/com/sun/star/style/CharacterPropertiesAsian.idl91
-rw-r--r--offapi/com/sun/star/style/CharacterPropertiesComplex.idl91
-rw-r--r--offapi/com/sun/star/style/CharacterStyle.idl86
-rw-r--r--offapi/com/sun/star/style/DropCapFormat.idl70
-rw-r--r--offapi/com/sun/star/style/GraphicLocation.idl137
-rw-r--r--offapi/com/sun/star/style/HorizontalAlignment.idl76
-rw-r--r--offapi/com/sun/star/style/LineNumberPosition.idl80
-rw-r--r--offapi/com/sun/star/style/LineSpacing.idl63
-rw-r--r--offapi/com/sun/star/style/LineSpacingMode.idl79
-rw-r--r--offapi/com/sun/star/style/NumberingAlignment.idl83
-rw-r--r--offapi/com/sun/star/style/NumberingLevel.idl121
-rw-r--r--offapi/com/sun/star/style/NumberingRule.idl68
-rw-r--r--offapi/com/sun/star/style/NumberingType.idl480
-rw-r--r--offapi/com/sun/star/style/PageProperties.idl502
-rw-r--r--offapi/com/sun/star/style/PageStyle.idl70
-rw-r--r--offapi/com/sun/star/style/PageStyleLayout.idl73
-rw-r--r--offapi/com/sun/star/style/ParagraphAdjust.idl86
-rw-r--r--offapi/com/sun/star/style/ParagraphProperties.idl463
-rw-r--r--offapi/com/sun/star/style/ParagraphPropertiesAsian.idl63
-rw-r--r--offapi/com/sun/star/style/ParagraphPropertiesComplex.idl53
-rw-r--r--offapi/com/sun/star/style/ParagraphStyle.idl163
-rw-r--r--offapi/com/sun/star/style/ParagraphStyleCategory.idl86
-rw-r--r--offapi/com/sun/star/style/Style.idl174
-rw-r--r--offapi/com/sun/star/style/StyleFamilies.idl119
-rw-r--r--offapi/com/sun/star/style/StyleFamily.idl89
-rw-r--r--offapi/com/sun/star/style/TabAlign.idl91
-rw-r--r--offapi/com/sun/star/style/TabStop.idl84
-rw-r--r--offapi/com/sun/star/style/VerticalAlignment.idl76
-rw-r--r--offapi/com/sun/star/style/XAutoStyle.idl74
-rw-r--r--offapi/com/sun/star/style/XAutoStyleFamily.idl65
-rw-r--r--offapi/com/sun/star/style/XAutoStyles.idl64
-rw-r--r--offapi/com/sun/star/style/XAutoStylesSupplier.idl66
-rw-r--r--offapi/com/sun/star/style/XDefaultsSupplier.idl62
-rw-r--r--offapi/com/sun/star/style/XStyle.idl85
-rw-r--r--offapi/com/sun/star/style/XStyleCondition.idl70
-rw-r--r--offapi/com/sun/star/style/XStyleFamiliesSupplier.idl68
-rw-r--r--offapi/com/sun/star/style/XStyleLoader.idl97
-rw-r--r--offapi/com/sun/star/style/makefile.mk87
-rw-r--r--offapi/com/sun/star/svg/XSVGPrinter.idl61
-rw-r--r--offapi/com/sun/star/svg/XSVGWriter.idl52
-rw-r--r--offapi/com/sun/star/svg/makefile.mk48
-rw-r--r--offapi/com/sun/star/sync/SyncAction.idl62
-rw-r--r--offapi/com/sun/star/sync/SyncCollector.idl49
-rw-r--r--offapi/com/sun/star/sync/SyncElement.idl72
-rw-r--r--offapi/com/sun/star/sync/SyncEvent.idl56
-rw-r--r--offapi/com/sun/star/sync/SyncInfo.idl61
-rw-r--r--offapi/com/sun/star/sync/SyncMode.idl54
-rw-r--r--offapi/com/sun/star/sync/SyncOptions.idl60
-rw-r--r--offapi/com/sun/star/sync/SyncScheme.idl56
-rw-r--r--offapi/com/sun/star/sync/SyncType.idl59
-rw-r--r--offapi/com/sun/star/sync/Synchronizer.idl49
-rw-r--r--offapi/com/sun/star/sync/XSyncCollector.idl88
-rw-r--r--offapi/com/sun/star/sync/XSynchronizer.idl61
-rw-r--r--offapi/com/sun/star/sync/makefile.mk57
-rw-r--r--offapi/com/sun/star/sync2/BadPartnershipException.idl54
-rw-r--r--offapi/com/sun/star/sync2/makefile.mk39
-rw-r--r--offapi/com/sun/star/system/ProxySettings.idl78
-rw-r--r--offapi/com/sun/star/system/SOffice52ProxySettings.idl65
-rw-r--r--offapi/com/sun/star/system/SimpleCommandMail.idl82
-rw-r--r--offapi/com/sun/star/system/SimpleMailClientFlags.idl72
-rw-r--r--offapi/com/sun/star/system/SimpleSystemMail.idl77
-rw-r--r--offapi/com/sun/star/system/SystemProxySettings.idl63
-rw-r--r--offapi/com/sun/star/system/SystemShellExecute.idl76
-rw-r--r--offapi/com/sun/star/system/SystemShellExecuteException.idl62
-rw-r--r--offapi/com/sun/star/system/SystemShellExecuteFlags.idl56
-rw-r--r--offapi/com/sun/star/system/XProxySettings.idl144
-rw-r--r--offapi/com/sun/star/system/XSimpleMailClient.idl105
-rw-r--r--offapi/com/sun/star/system/XSimpleMailClientSupplier.idl77
-rw-r--r--offapi/com/sun/star/system/XSimpleMailMessage.idl165
-rw-r--r--offapi/com/sun/star/system/XSystemShellExecute.idl94
-rw-r--r--offapi/com/sun/star/system/makefile.mk59
-rw-r--r--offapi/com/sun/star/table/AccessibleCellView.idl157
-rw-r--r--offapi/com/sun/star/table/AccessibleTableView.idl161
-rw-r--r--offapi/com/sun/star/table/BorderLine.idl82
-rw-r--r--offapi/com/sun/star/table/Cell.idl78
-rw-r--r--offapi/com/sun/star/table/CellAddress.idl66
-rw-r--r--offapi/com/sun/star/table/CellContentType.idl72
-rw-r--r--offapi/com/sun/star/table/CellCursor.idl61
-rw-r--r--offapi/com/sun/star/table/CellHoriJustify.idl84
-rw-r--r--offapi/com/sun/star/table/CellOrientation.idl73
-rw-r--r--offapi/com/sun/star/table/CellProperties.idl265
-rw-r--r--offapi/com/sun/star/table/CellRange.idl68
-rw-r--r--offapi/com/sun/star/table/CellRangeAddress.idl78
-rw-r--r--offapi/com/sun/star/table/CellRangeListSource.idl93
-rw-r--r--offapi/com/sun/star/table/CellValueBinding.idl106
-rw-r--r--offapi/com/sun/star/table/CellVertJustify.idl72
-rw-r--r--offapi/com/sun/star/table/ListPositionCellBinding.idl61
-rw-r--r--offapi/com/sun/star/table/ShadowFormat.idl80
-rw-r--r--offapi/com/sun/star/table/ShadowLocation.idl78
-rw-r--r--offapi/com/sun/star/table/TableBorder.idl154
-rw-r--r--offapi/com/sun/star/table/TableBorderDistances.idl109
-rw-r--r--offapi/com/sun/star/table/TableChart.idl83
-rw-r--r--offapi/com/sun/star/table/TableCharts.idl82
-rw-r--r--offapi/com/sun/star/table/TableChartsEnumeration.idl62
-rw-r--r--offapi/com/sun/star/table/TableColumn.idl112
-rw-r--r--offapi/com/sun/star/table/TableColumns.idl85
-rw-r--r--offapi/com/sun/star/table/TableColumnsEnumeration.idl62
-rw-r--r--offapi/com/sun/star/table/TableOrientation.idl60
-rw-r--r--offapi/com/sun/star/table/TableRow.idl100
-rw-r--r--offapi/com/sun/star/table/TableRows.idl72
-rw-r--r--offapi/com/sun/star/table/TableRowsEnumeration.idl62
-rw-r--r--offapi/com/sun/star/table/TableSortDescriptor.idl104
-rw-r--r--offapi/com/sun/star/table/TableSortDescriptor2.idl87
-rw-r--r--offapi/com/sun/star/table/TableSortField.idl107
-rw-r--r--offapi/com/sun/star/table/TableSortFieldType.idl65
-rw-r--r--offapi/com/sun/star/table/XAutoFormattable.idl69
-rw-r--r--offapi/com/sun/star/table/XCell.idl116
-rw-r--r--offapi/com/sun/star/table/XCellCursor.idl100
-rw-r--r--offapi/com/sun/star/table/XCellRange.idl135
-rw-r--r--offapi/com/sun/star/table/XColumnRowRange.idl79
-rw-r--r--offapi/com/sun/star/table/XMergeableCell.idl76
-rw-r--r--offapi/com/sun/star/table/XMergeableCellRange.idl97
-rw-r--r--offapi/com/sun/star/table/XTable.idl147
-rw-r--r--offapi/com/sun/star/table/XTableChart.idl100
-rw-r--r--offapi/com/sun/star/table/XTableCharts.idl102
-rw-r--r--offapi/com/sun/star/table/XTableChartsSupplier.idl65
-rw-r--r--offapi/com/sun/star/table/XTableColumns.idl85
-rw-r--r--offapi/com/sun/star/table/XTableRows.idl84
-rw-r--r--offapi/com/sun/star/table/makefile.mk92
-rw-r--r--offapi/com/sun/star/task/AsyncJob.idl66
-rw-r--r--offapi/com/sun/star/task/ClassifiedInteractionRequest.idl63
-rw-r--r--offapi/com/sun/star/task/DocumentMSPasswordRequest.idl64
-rwxr-xr-xoffapi/com/sun/star/task/DocumentMSPasswordRequest2.idl68
-rw-r--r--offapi/com/sun/star/task/DocumentMacroConfirmationRequest.idl79
-rw-r--r--offapi/com/sun/star/task/DocumentPasswordRequest.idl63
-rwxr-xr-xoffapi/com/sun/star/task/DocumentPasswordRequest2.idl67
-rw-r--r--offapi/com/sun/star/task/ErrorCodeIOException.idl56
-rw-r--r--offapi/com/sun/star/task/ErrorCodeRequest.idl56
-rw-r--r--offapi/com/sun/star/task/FutureDocumentVersionProductUpdateRequest.idl65
-rw-r--r--offapi/com/sun/star/task/InteractionClassification.idl86
-rw-r--r--offapi/com/sun/star/task/InteractionHandler.idl187
-rw-r--r--offapi/com/sun/star/task/InteractionRequestStringResolver.idl46
-rw-r--r--offapi/com/sun/star/task/Job.idl66
-rw-r--r--offapi/com/sun/star/task/JobExecutor.idl63
-rw-r--r--offapi/com/sun/star/task/MasterPasswordRequest.idl58
-rw-r--r--offapi/com/sun/star/task/NoMasterException.idl59
-rw-r--r--offapi/com/sun/star/task/OfficeRestartManager.idl53
-rw-r--r--offapi/com/sun/star/task/PasswordContainer.idl82
-rw-r--r--offapi/com/sun/star/task/PasswordContainerInteractionHandler.idl57
-rw-r--r--offapi/com/sun/star/task/PasswordRequest.idl67
-rw-r--r--offapi/com/sun/star/task/PasswordRequestMode.idl79
-rw-r--r--offapi/com/sun/star/task/UnsupportedOverwriteRequest.idl63
-rw-r--r--offapi/com/sun/star/task/UrlRecord.idl54
-rw-r--r--offapi/com/sun/star/task/UserRecord.idl50
-rw-r--r--offapi/com/sun/star/task/XAbortChannel.idl49
-rw-r--r--offapi/com/sun/star/task/XAsyncJob.idl92
-rw-r--r--offapi/com/sun/star/task/XInteractionApprove.idl52
-rw-r--r--offapi/com/sun/star/task/XInteractionAskLater.idl51
-rw-r--r--offapi/com/sun/star/task/XInteractionDisapprove.idl52
-rw-r--r--offapi/com/sun/star/task/XInteractionPassword.idl66
-rw-r--r--offapi/com/sun/star/task/XInteractionPassword2.idl80
-rw-r--r--offapi/com/sun/star/task/XInteractionRequestStringResolver.idl82
-rw-r--r--offapi/com/sun/star/task/XJob.idl96
-rw-r--r--offapi/com/sun/star/task/XJobExecutor.idl74
-rw-r--r--offapi/com/sun/star/task/XJobListener.idl73
-rw-r--r--offapi/com/sun/star/task/XMasterPasswordHandling.idl112
-rw-r--r--offapi/com/sun/star/task/XMasterPasswordHandling2.idl70
-rw-r--r--offapi/com/sun/star/task/XPasswordContainer.idl147
-rw-r--r--offapi/com/sun/star/task/XRestartManager.idl99
-rw-r--r--offapi/com/sun/star/task/XStatusIndicator.idl130
-rw-r--r--offapi/com/sun/star/task/XStatusIndicatorFactory.idl65
-rw-r--r--offapi/com/sun/star/task/XStatusIndicatorSupplier.idl61
-rw-r--r--offapi/com/sun/star/task/XUrlContainer.idl91
-rwxr-xr-xoffapi/com/sun/star/task/makefile.mk90
-rw-r--r--offapi/com/sun/star/text/AccessibleEndnoteView.idl138
-rw-r--r--offapi/com/sun/star/text/AccessibleFootnoteView.idl138
-rw-r--r--offapi/com/sun/star/text/AccessibleHeaderFooterView.idl143
-rw-r--r--offapi/com/sun/star/text/AccessiblePageView.idl214
-rw-r--r--offapi/com/sun/star/text/AccessibleParagraphView.idl212
-rw-r--r--offapi/com/sun/star/text/AccessibleTextDocumentPageView.idl116
-rw-r--r--offapi/com/sun/star/text/AccessibleTextDocumentView.idl218
-rw-r--r--offapi/com/sun/star/text/AccessibleTextEmbeddedObject.idl136
-rw-r--r--offapi/com/sun/star/text/AccessibleTextFrameView.idl149
-rw-r--r--offapi/com/sun/star/text/AccessibleTextGraphicObject.idl130
-rw-r--r--offapi/com/sun/star/text/AdvancedTextDocument.idl162
-rw-r--r--offapi/com/sun/star/text/AuthorDisplayFormat.idl72
-rw-r--r--offapi/com/sun/star/text/AutoTextContainer.idl61
-rw-r--r--offapi/com/sun/star/text/AutoTextEntry.idl68
-rw-r--r--offapi/com/sun/star/text/AutoTextGroup.idl72
-rw-r--r--offapi/com/sun/star/text/BaseFrame.idl118
-rw-r--r--offapi/com/sun/star/text/BaseFrameProperties.idl380
-rw-r--r--offapi/com/sun/star/text/BaseIndex.idl188
-rw-r--r--offapi/com/sun/star/text/BaseIndexMark.idl61
-rw-r--r--offapi/com/sun/star/text/Bibliography.idl62
-rw-r--r--offapi/com/sun/star/text/BibliographyDataField.idl208
-rw-r--r--offapi/com/sun/star/text/BibliographyDataType.idl157
-rw-r--r--offapi/com/sun/star/text/Bookmark.idl66
-rw-r--r--offapi/com/sun/star/text/Bookmarks.idl69
-rw-r--r--offapi/com/sun/star/text/Cell.idl119
-rw-r--r--offapi/com/sun/star/text/CellProperties.idl176
-rw-r--r--offapi/com/sun/star/text/CellRange.idl160
-rw-r--r--offapi/com/sun/star/text/ChainedTextFrame.idl73
-rw-r--r--offapi/com/sun/star/text/ChapterFormat.idl84
-rw-r--r--offapi/com/sun/star/text/ChapterNumberingRule.idl87
-rw-r--r--offapi/com/sun/star/text/CharacterCompressionType.idl61
-rw-r--r--offapi/com/sun/star/text/ContentIndex.idl74
-rw-r--r--offapi/com/sun/star/text/ContentIndexMark.idl65
-rw-r--r--offapi/com/sun/star/text/ControlCharacter.idl94
-rw-r--r--offapi/com/sun/star/text/DateDisplayFormat.idl96
-rw-r--r--offapi/com/sun/star/text/DefaultNumberingProvider.idl50
-rw-r--r--offapi/com/sun/star/text/Defaults.idl89
-rw-r--r--offapi/com/sun/star/text/DependentTextField.idl68
-rw-r--r--offapi/com/sun/star/text/DocumentIndex.idl102
-rw-r--r--offapi/com/sun/star/text/DocumentIndexFormat.idl86
-rw-r--r--offapi/com/sun/star/text/DocumentIndexLevelFormat.idl156
-rw-r--r--offapi/com/sun/star/text/DocumentIndexMark.idl73
-rw-r--r--offapi/com/sun/star/text/DocumentIndexMarkAsian.idl70
-rw-r--r--offapi/com/sun/star/text/DocumentIndexParagraphStyles.idl63
-rw-r--r--offapi/com/sun/star/text/DocumentIndexes.idl73
-rw-r--r--offapi/com/sun/star/text/DocumentSettings.idl204
-rw-r--r--offapi/com/sun/star/text/DocumentStatistic.idl73
-rw-r--r--offapi/com/sun/star/text/Endnote.idl52
-rw-r--r--offapi/com/sun/star/text/EndnoteSettings.idl52
-rw-r--r--offapi/com/sun/star/text/FilenameDisplayFormat.idl77
-rw-r--r--offapi/com/sun/star/text/FontEmphasis.idl85
-rw-r--r--offapi/com/sun/star/text/FontRelief.idl60
-rw-r--r--offapi/com/sun/star/text/Footnote.idl71
-rw-r--r--offapi/com/sun/star/text/FootnoteNumbering.idl70
-rw-r--r--offapi/com/sun/star/text/FootnoteSettings.idl139
-rw-r--r--offapi/com/sun/star/text/Footnotes.idl60
-rw-r--r--offapi/com/sun/star/text/GenericTextDocument.idl273
-rw-r--r--offapi/com/sun/star/text/GlobalDocument.idl52
-rw-r--r--offapi/com/sun/star/text/GlobalSettings.idl64
-rw-r--r--offapi/com/sun/star/text/GraphicCrop.idl88
-rw-r--r--offapi/com/sun/star/text/HoriOrientation.idl112
-rw-r--r--offapi/com/sun/star/text/HoriOrientationFormat.idl87
-rw-r--r--offapi/com/sun/star/text/HorizontalAdjust.idl69
-rw-r--r--offapi/com/sun/star/text/HypertextDocument.idl81
-rw-r--r--offapi/com/sun/star/text/IllustrationsIndex.idl61
-rwxr-xr-xoffapi/com/sun/star/text/InContentMetadata.idl88
-rw-r--r--offapi/com/sun/star/text/InvalidTextContentException.idl66
-rw-r--r--offapi/com/sun/star/text/LabelFollow.idl66
-rw-r--r--offapi/com/sun/star/text/LineNumberingProperties.idl117
-rw-r--r--offapi/com/sun/star/text/LineNumberingSettings.idl111
-rw-r--r--offapi/com/sun/star/text/MailMerge.idl412
-rw-r--r--offapi/com/sun/star/text/MailMergeEvent.idl67
-rw-r--r--offapi/com/sun/star/text/MailMergeType.idl67
-rw-r--r--offapi/com/sun/star/text/NotePrintMode.idl78
-rw-r--r--offapi/com/sun/star/text/NumberingLevel.idl267
-rw-r--r--offapi/com/sun/star/text/NumberingRules.idl107
-rw-r--r--offapi/com/sun/star/text/NumberingStyle.idl59
-rw-r--r--offapi/com/sun/star/text/ObjectIndex.idl82
-rw-r--r--offapi/com/sun/star/text/PageFootnoteInfo.idl106
-rw-r--r--offapi/com/sun/star/text/PageNumberType.idl65
-rw-r--r--offapi/com/sun/star/text/PagePrintSettings.idl112
-rw-r--r--offapi/com/sun/star/text/Paragraph.idl154
-rw-r--r--offapi/com/sun/star/text/ParagraphEnumeration.idl60
-rw-r--r--offapi/com/sun/star/text/ParagraphVertAlign.idl69
-rw-r--r--offapi/com/sun/star/text/PlaceholderType.idl83
-rw-r--r--offapi/com/sun/star/text/PositionAndSpaceMode.idl61
-rw-r--r--offapi/com/sun/star/text/PositionLayoutDir.idl64
-rwxr-xr-xoffapi/com/sun/star/text/PrintPreviewSettings.idl82
-rw-r--r--offapi/com/sun/star/text/PrintSettings.idl154
-rw-r--r--offapi/com/sun/star/text/RedlinePortion.idl98
-rw-r--r--offapi/com/sun/star/text/ReferenceFieldPart.idl136
-rw-r--r--offapi/com/sun/star/text/ReferenceFieldSource.idl69
-rw-r--r--offapi/com/sun/star/text/ReferenceMark.idl57
-rw-r--r--offapi/com/sun/star/text/ReferenceMarks.idl57
-rw-r--r--offapi/com/sun/star/text/RelOrientation.idl121
-rw-r--r--offapi/com/sun/star/text/RubyAdjust.idl67
-rw-r--r--offapi/com/sun/star/text/SectionFileLink.idl76
-rw-r--r--offapi/com/sun/star/text/SetVariableType.idl72
-rw-r--r--offapi/com/sun/star/text/Shape.idl242
-rw-r--r--offapi/com/sun/star/text/SizeType.idl75
-rw-r--r--offapi/com/sun/star/text/TableColumnSeparator.idl86
-rw-r--r--offapi/com/sun/star/text/TableColumns.idl71
-rw-r--r--offapi/com/sun/star/text/TableIndex.idl71
-rw-r--r--offapi/com/sun/star/text/TableRows.idl67
-rw-r--r--offapi/com/sun/star/text/TemplateDisplayFormat.idl91
-rw-r--r--offapi/com/sun/star/text/Text.idl149
-rw-r--r--offapi/com/sun/star/text/TextColumn.idl78
-rw-r--r--offapi/com/sun/star/text/TextColumnSequence.idl47
-rw-r--r--offapi/com/sun/star/text/TextColumns.idl93
-rw-r--r--offapi/com/sun/star/text/TextContent.idl98
-rw-r--r--offapi/com/sun/star/text/TextContentAnchorType.idl98
-rw-r--r--offapi/com/sun/star/text/TextContentCollection.idl71
-rw-r--r--offapi/com/sun/star/text/TextCursor.idl136
-rw-r--r--offapi/com/sun/star/text/TextDocument.idl52
-rw-r--r--offapi/com/sun/star/text/TextDocumentView.idl120
-rw-r--r--offapi/com/sun/star/text/TextEmbeddedObject.idl85
-rw-r--r--offapi/com/sun/star/text/TextEmbeddedObjects.idl71
-rw-r--r--offapi/com/sun/star/text/TextField.idl98
-rw-r--r--offapi/com/sun/star/text/TextFieldEnumeration.idl55
-rw-r--r--offapi/com/sun/star/text/TextFieldMaster.idl74
-rw-r--r--offapi/com/sun/star/text/TextFieldMasters.idl62
-rw-r--r--offapi/com/sun/star/text/TextFields.idl69
-rw-r--r--offapi/com/sun/star/text/TextFrame.idl172
-rw-r--r--offapi/com/sun/star/text/TextFrames.idl86
-rw-r--r--offapi/com/sun/star/text/TextGraphicObject.idl179
-rw-r--r--offapi/com/sun/star/text/TextGraphicObjects.idl72
-rw-r--r--offapi/com/sun/star/text/TextGridMode.idl62
-rw-r--r--offapi/com/sun/star/text/TextLayoutCursor.idl63
-rw-r--r--offapi/com/sun/star/text/TextMarkupDescriptor.idl70
-rw-r--r--offapi/com/sun/star/text/TextMarkupType.idl70
-rw-r--r--offapi/com/sun/star/text/TextPageStyle.idl200
-rw-r--r--offapi/com/sun/star/text/TextPortion.idl178
-rw-r--r--offapi/com/sun/star/text/TextPortionEnumeration.idl56
-rw-r--r--offapi/com/sun/star/text/TextRange.idl112
-rw-r--r--offapi/com/sun/star/text/TextRangeContentProperties.idl133
-rw-r--r--offapi/com/sun/star/text/TextRanges.idl55
-rw-r--r--offapi/com/sun/star/text/TextSection.idl254
-rw-r--r--offapi/com/sun/star/text/TextSections.idl62
-rw-r--r--offapi/com/sun/star/text/TextSortDescriptor.idl143
-rw-r--r--offapi/com/sun/star/text/TextSortDescriptor2.idl77
-rw-r--r--offapi/com/sun/star/text/TextSortable.idl67
-rw-r--r--offapi/com/sun/star/text/TextTable.idl295
-rw-r--r--offapi/com/sun/star/text/TextTableCursor.idl90
-rw-r--r--offapi/com/sun/star/text/TextTableRow.idl126
-rw-r--r--offapi/com/sun/star/text/TextTables.idl62
-rw-r--r--offapi/com/sun/star/text/TextViewCursor.idl64
-rw-r--r--offapi/com/sun/star/text/TimeDisplayFormat.idl91
-rw-r--r--offapi/com/sun/star/text/UserDataPart.idl154
-rw-r--r--offapi/com/sun/star/text/UserDefinedIndex.idl89
-rw-r--r--offapi/com/sun/star/text/UserFieldFormat.idl70
-rw-r--r--offapi/com/sun/star/text/UserIndex.idl84
-rw-r--r--offapi/com/sun/star/text/UserIndexMark.idl63
-rw-r--r--offapi/com/sun/star/text/VertOrientation.idl121
-rw-r--r--offapi/com/sun/star/text/VertOrientationFormat.idl77
-rw-r--r--offapi/com/sun/star/text/ViewSettings.idl362
-rw-r--r--offapi/com/sun/star/text/WebDocument.idl52
-rw-r--r--offapi/com/sun/star/text/WrapInfluenceOnPosition.idl70
-rw-r--r--offapi/com/sun/star/text/WrapTextMode.idl91
-rw-r--r--offapi/com/sun/star/text/WritingMode.idl77
-rw-r--r--offapi/com/sun/star/text/WritingMode2.idl100
-rw-r--r--offapi/com/sun/star/text/XAutoTextContainer.idl107
-rw-r--r--offapi/com/sun/star/text/XAutoTextEntry.idl78
-rw-r--r--offapi/com/sun/star/text/XAutoTextGroup.idl121
-rw-r--r--offapi/com/sun/star/text/XBookmarkInsertTool.idl69
-rw-r--r--offapi/com/sun/star/text/XBookmarksSupplier.idl66
-rw-r--r--offapi/com/sun/star/text/XChapterNumberingSupplier.idl69
-rw-r--r--offapi/com/sun/star/text/XDefaultNumberingProvider.idl79
-rw-r--r--offapi/com/sun/star/text/XDependentTextField.idl101
-rw-r--r--offapi/com/sun/star/text/XDocumentIndex.idl82
-rw-r--r--offapi/com/sun/star/text/XDocumentIndexMark.idl76
-rw-r--r--offapi/com/sun/star/text/XDocumentIndexesSupplier.idl69
-rw-r--r--offapi/com/sun/star/text/XEndnotesSettingsSupplier.idl68
-rw-r--r--offapi/com/sun/star/text/XEndnotesSupplier.idl80
-rw-r--r--offapi/com/sun/star/text/XFlatParagraph.idl201
-rw-r--r--offapi/com/sun/star/text/XFlatParagraphIterator.idl118
-rw-r--r--offapi/com/sun/star/text/XFlatParagraphIteratorProvider.idl87
-rw-r--r--offapi/com/sun/star/text/XFootnote.idl71
-rw-r--r--offapi/com/sun/star/text/XFootnotesSettingsSupplier.idl66
-rw-r--r--offapi/com/sun/star/text/XFootnotesSupplier.idl76
-rw-r--r--offapi/com/sun/star/text/XFormField.idl20
-rw-r--r--offapi/com/sun/star/text/XHeaderFooter.idl73
-rw-r--r--offapi/com/sun/star/text/XHeaderFooterPageStyle.idl74
-rw-r--r--offapi/com/sun/star/text/XLineNumberingProperties.idl60
-rw-r--r--offapi/com/sun/star/text/XLineNumberingSupplier.idl77
-rw-r--r--offapi/com/sun/star/text/XMailMergeBroadcaster.idl83
-rw-r--r--offapi/com/sun/star/text/XMailMergeListener.idl72
-rw-r--r--offapi/com/sun/star/text/XModule.idl53
-rw-r--r--offapi/com/sun/star/text/XMultiTextMarkup.idl79
-rw-r--r--offapi/com/sun/star/text/XNumberingFormatter.idl65
-rw-r--r--offapi/com/sun/star/text/XNumberingRulesSupplier.idl62
-rw-r--r--offapi/com/sun/star/text/XNumberingTypeInfo.idl63
-rw-r--r--offapi/com/sun/star/text/XPageCursor.idl115
-rw-r--r--offapi/com/sun/star/text/XPagePrintable.idl96
-rw-r--r--offapi/com/sun/star/text/XParagraphAppend.idl94
-rw-r--r--offapi/com/sun/star/text/XParagraphCursor.idl105
-rw-r--r--offapi/com/sun/star/text/XRedline.idl73
-rw-r--r--offapi/com/sun/star/text/XReferenceMarksSupplier.idl72
-rw-r--r--offapi/com/sun/star/text/XRelativeTextContentInsert.idl86
-rw-r--r--offapi/com/sun/star/text/XRelativeTextContentRemove.idl82
-rw-r--r--offapi/com/sun/star/text/XRubySelection.idl75
-rw-r--r--offapi/com/sun/star/text/XSentenceCursor.idl105
-rw-r--r--offapi/com/sun/star/text/XSimpleText.idl151
-rw-r--r--offapi/com/sun/star/text/XText.idl105
-rw-r--r--offapi/com/sun/star/text/XTextAppend.idl60
-rw-r--r--offapi/com/sun/star/text/XTextAppendAndConvert.idl61
-rw-r--r--offapi/com/sun/star/text/XTextColumns.idl115
-rw-r--r--offapi/com/sun/star/text/XTextContent.idl100
-rw-r--r--offapi/com/sun/star/text/XTextContentAppend.idl88
-rw-r--r--offapi/com/sun/star/text/XTextConvert.idl117
-rw-r--r--offapi/com/sun/star/text/XTextCopy.idl59
-rw-r--r--offapi/com/sun/star/text/XTextCursor.idl134
-rw-r--r--offapi/com/sun/star/text/XTextDocument.idl76
-rw-r--r--offapi/com/sun/star/text/XTextEmbeddedObject.idl77
-rw-r--r--offapi/com/sun/star/text/XTextEmbeddedObjectsSupplier.idl65
-rw-r--r--offapi/com/sun/star/text/XTextField.idl69
-rw-r--r--offapi/com/sun/star/text/XTextFieldsSupplier.idl80
-rw-r--r--offapi/com/sun/star/text/XTextFrame.idl66
-rw-r--r--offapi/com/sun/star/text/XTextFramesSupplier.idl64
-rw-r--r--offapi/com/sun/star/text/XTextGraphicObjectsSupplier.idl65
-rw-r--r--offapi/com/sun/star/text/XTextMarkup.idl90
-rw-r--r--offapi/com/sun/star/text/XTextPortionAppend.idl86
-rw-r--r--offapi/com/sun/star/text/XTextRange.idl104
-rw-r--r--offapi/com/sun/star/text/XTextRangeCompare.idl94
-rw-r--r--offapi/com/sun/star/text/XTextRangeMover.idl73
-rw-r--r--offapi/com/sun/star/text/XTextSection.idl68
-rw-r--r--offapi/com/sun/star/text/XTextSectionsSupplier.idl64
-rw-r--r--offapi/com/sun/star/text/XTextShapesSupplier.idl65
-rw-r--r--offapi/com/sun/star/text/XTextTable.idl143
-rw-r--r--offapi/com/sun/star/text/XTextTableCursor.idl179
-rw-r--r--offapi/com/sun/star/text/XTextTablesSupplier.idl64
-rw-r--r--offapi/com/sun/star/text/XTextViewCursor.idl80
-rw-r--r--offapi/com/sun/star/text/XTextViewCursorSupplier.idl71
-rw-r--r--offapi/com/sun/star/text/XWordCursor.idl113
-rw-r--r--offapi/com/sun/star/text/fieldmaster/Bibliography.idl100
-rw-r--r--offapi/com/sun/star/text/fieldmaster/DDE.idl73
-rw-r--r--offapi/com/sun/star/text/fieldmaster/Database.idl96
-rw-r--r--offapi/com/sun/star/text/fieldmaster/SetExpression.idl67
-rw-r--r--offapi/com/sun/star/text/fieldmaster/User.idl65
-rw-r--r--offapi/com/sun/star/text/fieldmaster/makefile.mk50
-rw-r--r--offapi/com/sun/star/text/makefile.mk278
-rw-r--r--offapi/com/sun/star/text/textfield/Annotation.idl65
-rw-r--r--offapi/com/sun/star/text/textfield/Author.idl74
-rw-r--r--offapi/com/sun/star/text/textfield/Bibliography.idl58
-rw-r--r--offapi/com/sun/star/text/textfield/Chapter.idl60
-rw-r--r--offapi/com/sun/star/text/textfield/CharacterCount.idl57
-rw-r--r--offapi/com/sun/star/text/textfield/CombinedCharacters.idl55
-rw-r--r--offapi/com/sun/star/text/textfield/ConditionalText.idl70
-rw-r--r--offapi/com/sun/star/text/textfield/DDE.idl54
-rw-r--r--offapi/com/sun/star/text/textfield/Database.idl69
-rw-r--r--offapi/com/sun/star/text/textfield/DatabaseName.idl81
-rw-r--r--offapi/com/sun/star/text/textfield/DatabaseNextSet.idl85
-rw-r--r--offapi/com/sun/star/text/textfield/DatabaseNumberOfSet.idl90
-rw-r--r--offapi/com/sun/star/text/textfield/DatabaseSetNumber.idl91
-rw-r--r--offapi/com/sun/star/text/textfield/DateTime.idl98
-rw-r--r--offapi/com/sun/star/text/textfield/DropDown.idl70
-rw-r--r--offapi/com/sun/star/text/textfield/EmbeddedObjectCount.idl57
-rw-r--r--offapi/com/sun/star/text/textfield/ExtendedUser.idl67
-rw-r--r--offapi/com/sun/star/text/textfield/FileName.idl63
-rw-r--r--offapi/com/sun/star/text/textfield/GetExpression.idl85
-rw-r--r--offapi/com/sun/star/text/textfield/GetReference.idl74
-rw-r--r--offapi/com/sun/star/text/textfield/GraphicObjectCount.idl57
-rw-r--r--offapi/com/sun/star/text/textfield/HiddenParagraph.idl60
-rw-r--r--offapi/com/sun/star/text/textfield/HiddenText.idl64
-rw-r--r--offapi/com/sun/star/text/textfield/Input.idl73
-rw-r--r--offapi/com/sun/star/text/textfield/InputUser.idl63
-rw-r--r--offapi/com/sun/star/text/textfield/JumpEdit.idl62
-rw-r--r--offapi/com/sun/star/text/textfield/Macro.idl61
-rwxr-xr-xoffapi/com/sun/star/text/textfield/MetadataField.idl111
-rw-r--r--offapi/com/sun/star/text/textfield/PageCount.idl57
-rw-r--r--offapi/com/sun/star/text/textfield/PageNumber.idl70
-rw-r--r--offapi/com/sun/star/text/textfield/ParagraphCount.idl57
-rw-r--r--offapi/com/sun/star/text/textfield/ReferencePageGet.idl58
-rw-r--r--offapi/com/sun/star/text/textfield/ReferencePageSet.idl59
-rw-r--r--offapi/com/sun/star/text/textfield/Script.idl62
-rw-r--r--offapi/com/sun/star/text/textfield/SetExpression.idl101
-rw-r--r--offapi/com/sun/star/text/textfield/TableCount.idl57
-rw-r--r--offapi/com/sun/star/text/textfield/TableFormula.idl68
-rw-r--r--offapi/com/sun/star/text/textfield/TemplateName.idl57
-rw-r--r--offapi/com/sun/star/text/textfield/URL.idl70
-rw-r--r--offapi/com/sun/star/text/textfield/User.idl72
-rw-r--r--offapi/com/sun/star/text/textfield/WordCount.idl57
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/ChangeAuthor.idl66
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/ChangeDateTime.idl83
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/CreateAuthor.idl66
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/CreateDateTime.idl83
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/Custom.idl70
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/Description.idl65
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/EditTime.idl78
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/Info0.idl65
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/Info1.idl65
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/Info2.idl65
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/Info3.idl65
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/Keywords.idl65
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/PrintAuthor.idl66
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/PrintDateTime.idl83
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/Revision.idl65
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/Subject.idl65
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/Title.idl65
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/makefile.mk63
-rw-r--r--offapi/com/sun/star/text/textfield/makefile.mk86
-rw-r--r--offapi/com/sun/star/ucb/AlreadyInitializedException.idl54
-rw-r--r--offapi/com/sun/star/ucb/AnyCompareFactory.idl57
-rw-r--r--offapi/com/sun/star/ucb/AuthenticationRequest.idl114
-rw-r--r--offapi/com/sun/star/ucb/CHAOSProgressStart.idl69
-rw-r--r--offapi/com/sun/star/ucb/CachedContentResultSet.idl84
-rw-r--r--offapi/com/sun/star/ucb/CachedContentResultSetFactory.idl55
-rw-r--r--offapi/com/sun/star/ucb/CachedContentResultSetStub.idl76
-rw-r--r--offapi/com/sun/star/ucb/CachedContentResultSetStubFactory.idl55
-rw-r--r--offapi/com/sun/star/ucb/CachedDynamicResultSet.idl83
-rw-r--r--offapi/com/sun/star/ucb/CachedDynamicResultSetFactory.idl56
-rw-r--r--offapi/com/sun/star/ucb/CachedDynamicResultSetStub.idl84
-rw-r--r--offapi/com/sun/star/ucb/CachedDynamicResultSetStubFactory.idl56
-rwxr-xr-xoffapi/com/sun/star/ucb/CertificateValidationRequest.idl65
-rw-r--r--offapi/com/sun/star/ucb/Command.idl70
-rw-r--r--offapi/com/sun/star/ucb/CommandAbortedException.idl55
-rw-r--r--offapi/com/sun/star/ucb/CommandEnvironment.idl64
-rw-r--r--offapi/com/sun/star/ucb/CommandFailedException.idl65
-rw-r--r--offapi/com/sun/star/ucb/CommandInfo.idl68
-rw-r--r--offapi/com/sun/star/ucb/CommandInfoChange.idl58
-rw-r--r--offapi/com/sun/star/ucb/CommandInfoChangeEvent.idl71
-rw-r--r--offapi/com/sun/star/ucb/ConnectionMode.idl59
-rw-r--r--offapi/com/sun/star/ucb/Content.idl756
-rw-r--r--offapi/com/sun/star/ucb/ContentAction.idl161
-rw-r--r--offapi/com/sun/star/ucb/ContentCreationError.idl75
-rw-r--r--offapi/com/sun/star/ucb/ContentCreationException.idl60
-rw-r--r--offapi/com/sun/star/ucb/ContentEvent.idl114
-rw-r--r--offapi/com/sun/star/ucb/ContentInfo.idl108
-rw-r--r--offapi/com/sun/star/ucb/ContentInfoAttribute.idl78
-rw-r--r--offapi/com/sun/star/ucb/ContentProvider.idl88
-rw-r--r--offapi/com/sun/star/ucb/ContentProviderInfo.idl62
-rw-r--r--offapi/com/sun/star/ucb/ContentProviderProxy.idl95
-rw-r--r--offapi/com/sun/star/ucb/ContentProviderProxyFactory.idl55
-rw-r--r--offapi/com/sun/star/ucb/ContentResultSet.idl233
-rw-r--r--offapi/com/sun/star/ucb/ContentResultSetCapability.idl53
-rw-r--r--offapi/com/sun/star/ucb/ContentTransmitter.idl60
-rw-r--r--offapi/com/sun/star/ucb/Cookie.idl89
-rw-r--r--offapi/com/sun/star/ucb/CookiePolicy.idl61
-rw-r--r--offapi/com/sun/star/ucb/CookieRequest.idl56
-rw-r--r--offapi/com/sun/star/ucb/CrossReference.idl61
-rw-r--r--offapi/com/sun/star/ucb/DefaultHierarchyDataSource.idl64
-rw-r--r--offapi/com/sun/star/ucb/DocumentHeaderField.idl57
-rw-r--r--offapi/com/sun/star/ucb/DocumentStoreMode.idl59
-rw-r--r--offapi/com/sun/star/ucb/DuplicateCommandIdentifierException.idl60
-rw-r--r--offapi/com/sun/star/ucb/DuplicateProviderException.idl55
-rw-r--r--offapi/com/sun/star/ucb/DynamicResultSet.idl62
-rw-r--r--offapi/com/sun/star/ucb/Error.idl444
-rw-r--r--offapi/com/sun/star/ucb/ExpandContentProvider.idl55
-rw-r--r--offapi/com/sun/star/ucb/ExportStreamInfo.idl61
-rw-r--r--offapi/com/sun/star/ucb/FTPContent.idl233
-rw-r--r--offapi/com/sun/star/ucb/FTPContentProvider.idl69
-rw-r--r--offapi/com/sun/star/ucb/FetchError.idl71
-rw-r--r--offapi/com/sun/star/ucb/FetchResult.idl86
-rw-r--r--offapi/com/sun/star/ucb/FileContent.idl268
-rw-r--r--offapi/com/sun/star/ucb/FileContentProvider.idl115
-rw-r--r--offapi/com/sun/star/ucb/FileSystemNotation.idl70
-rw-r--r--offapi/com/sun/star/ucb/FolderList.idl64
-rw-r--r--offapi/com/sun/star/ucb/FolderListCommand.idl62
-rw-r--r--offapi/com/sun/star/ucb/FolderListEntry.idl78
-rw-r--r--offapi/com/sun/star/ucb/GIOContentProvider.idl15
-rw-r--r--offapi/com/sun/star/ucb/GlobalTransferCommandArgument.idl84
-rw-r--r--offapi/com/sun/star/ucb/GnomeVFSContentProvider.idl21
-rw-r--r--offapi/com/sun/star/ucb/GnomeVFSDocumentContent.idl97
-rw-r--r--offapi/com/sun/star/ucb/GnomeVFSFolderContent.idl109
-rw-r--r--offapi/com/sun/star/ucb/HandleCookiesRequest.idl73
-rw-r--r--offapi/com/sun/star/ucb/HelpContent.idl215
-rw-r--r--offapi/com/sun/star/ucb/HelpContentProvider.idl66
-rw-r--r--offapi/com/sun/star/ucb/HierarchyContentProvider.idl112
-rw-r--r--offapi/com/sun/star/ucb/HierarchyDataReadAccess.idl171
-rw-r--r--offapi/com/sun/star/ucb/HierarchyDataReadWriteAccess.idl105
-rw-r--r--offapi/com/sun/star/ucb/HierarchyDataSource.idl119
-rw-r--r--offapi/com/sun/star/ucb/HierarchyFolderContent.idl228
-rw-r--r--offapi/com/sun/star/ucb/HierarchyLinkContent.idl191
-rw-r--r--offapi/com/sun/star/ucb/HierarchyRootFolderContent.idl226
-rw-r--r--offapi/com/sun/star/ucb/IOErrorCode.idl233
-rw-r--r--offapi/com/sun/star/ucb/IllegalIdentifierException.idl55
-rw-r--r--offapi/com/sun/star/ucb/InsertCommandArgument.idl72
-rw-r--r--offapi/com/sun/star/ucb/InteractiveAppException.idl60
-rw-r--r--offapi/com/sun/star/ucb/InteractiveAugmentedIOException.idl57
-rw-r--r--offapi/com/sun/star/ucb/InteractiveBadTransferURLException.idl53
-rw-r--r--offapi/com/sun/star/ucb/InteractiveCHAOSException.idl68
-rw-r--r--offapi/com/sun/star/ucb/InteractiveFileIOException.idl63
-rw-r--r--offapi/com/sun/star/ucb/InteractiveIOException.idl58
-rw-r--r--offapi/com/sun/star/ucb/InteractiveLockingException.idl58
-rw-r--r--offapi/com/sun/star/ucb/InteractiveLockingLockExpiredException.idl53
-rw-r--r--offapi/com/sun/star/ucb/InteractiveLockingLockedException.idl59
-rw-r--r--offapi/com/sun/star/ucb/InteractiveLockingNotLockedException.idl56
-rw-r--r--offapi/com/sun/star/ucb/InteractiveNetworkConnectException.idl55
-rw-r--r--offapi/com/sun/star/ucb/InteractiveNetworkException.idl52
-rw-r--r--offapi/com/sun/star/ucb/InteractiveNetworkGeneralException.idl50
-rw-r--r--offapi/com/sun/star/ucb/InteractiveNetworkOffLineException.idl50
-rw-r--r--offapi/com/sun/star/ucb/InteractiveNetworkReadException.idl56
-rw-r--r--offapi/com/sun/star/ucb/InteractiveNetworkResolveNameException.idl55
-rw-r--r--offapi/com/sun/star/ucb/InteractiveNetworkWriteException.idl56
-rw-r--r--offapi/com/sun/star/ucb/InteractiveWrongMediumException.idl55
-rw-r--r--offapi/com/sun/star/ucb/Link.idl56
-rw-r--r--offapi/com/sun/star/ucb/ListAction.idl122
-rw-r--r--offapi/com/sun/star/ucb/ListActionType.idl191
-rw-r--r--offapi/com/sun/star/ucb/ListEvent.idl60
-rw-r--r--offapi/com/sun/star/ucb/ListenerAlreadySetException.idl54
-rw-r--r--offapi/com/sun/star/ucb/Lock.idl83
-rw-r--r--offapi/com/sun/star/ucb/LockDepth.idl61
-rw-r--r--offapi/com/sun/star/ucb/LockEntry.idl61
-rw-r--r--offapi/com/sun/star/ucb/LockScope.idl57
-rw-r--r--offapi/com/sun/star/ucb/LockType.idl63
-rw-r--r--offapi/com/sun/star/ucb/MissingInputStreamException.idl59
-rw-r--r--offapi/com/sun/star/ucb/MissingPropertiesException.idl62
-rw-r--r--offapi/com/sun/star/ucb/NameClash.idl78
-rw-r--r--offapi/com/sun/star/ucb/NameClashException.idl53
-rw-r--r--offapi/com/sun/star/ucb/NameClashResolveRequest.idl83
-rw-r--r--offapi/com/sun/star/ucb/NumberedSortingInfo.idl58
-rw-r--r--offapi/com/sun/star/ucb/ODMAContent.idl211
-rw-r--r--offapi/com/sun/star/ucb/ODMAContentProvider.idl90
-rw-r--r--offapi/com/sun/star/ucb/OpenCommandArgument.idl93
-rw-r--r--offapi/com/sun/star/ucb/OpenCommandArgument2.idl67
-rw-r--r--offapi/com/sun/star/ucb/OpenMode.idl94
-rw-r--r--offapi/com/sun/star/ucb/OutgoingMessageState.idl88
-rw-r--r--offapi/com/sun/star/ucb/PackageContentProvider.idl132
-rw-r--r--offapi/com/sun/star/ucb/PackageFolderContent.idl256
-rw-r--r--offapi/com/sun/star/ucb/PackageStreamContent.idl206
-rw-r--r--offapi/com/sun/star/ucb/PersistentPropertySet.idl78
-rw-r--r--offapi/com/sun/star/ucb/PostCommandArgument.idl63
-rw-r--r--offapi/com/sun/star/ucb/PostCommandArgument2.idl62
-rw-r--r--offapi/com/sun/star/ucb/Priority.idl74
-rw-r--r--offapi/com/sun/star/ucb/PropertiesManager.idl59
-rw-r--r--offapi/com/sun/star/ucb/PropertySetRegistry.idl62
-rw-r--r--offapi/com/sun/star/ucb/PropertyValueInfo.idl60
-rw-r--r--offapi/com/sun/star/ucb/PropertyValueState.idl71
-rw-r--r--offapi/com/sun/star/ucb/RecipientInfo.idl129
-rw-r--r--offapi/com/sun/star/ucb/RememberAuthentication.idl63
-rw-r--r--offapi/com/sun/star/ucb/RemoteAccessContentProvider.idl75
-rw-r--r--offapi/com/sun/star/ucb/RemoteContentProviderAcceptor.idl62
-rw-r--r--offapi/com/sun/star/ucb/RemoteContentProviderChangeAction.idl58
-rw-r--r--offapi/com/sun/star/ucb/RemoteContentProviderChangeEvent.idl65
-rw-r--r--offapi/com/sun/star/ucb/RemoteProxyContentProvider.idl77
-rw-r--r--offapi/com/sun/star/ucb/ResultSetException.idl54
-rw-r--r--offapi/com/sun/star/ucb/Rule.idl91
-rw-r--r--offapi/com/sun/star/ucb/RuleAction.idl112
-rw-r--r--offapi/com/sun/star/ucb/RuleOperator.idl92
-rw-r--r--offapi/com/sun/star/ucb/RuleSet.idl65
-rw-r--r--offapi/com/sun/star/ucb/RuleTerm.idl79
-rw-r--r--offapi/com/sun/star/ucb/SearchCommandArgument.idl69
-rw-r--r--offapi/com/sun/star/ucb/SearchCriterium.idl56
-rw-r--r--offapi/com/sun/star/ucb/SearchInfo.idl90
-rw-r--r--offapi/com/sun/star/ucb/SearchRecursion.idl64
-rw-r--r--offapi/com/sun/star/ucb/SendInfo.idl59
-rw-r--r--offapi/com/sun/star/ucb/SendMediaTypes.idl58
-rw-r--r--offapi/com/sun/star/ucb/ServiceNotFoundException.idl50
-rw-r--r--offapi/com/sun/star/ucb/SimpleFileAccess.idl56
-rw-r--r--offapi/com/sun/star/ucb/SortedDynamicResultSetFactory.idl56
-rw-r--r--offapi/com/sun/star/ucb/SortingInfo.idl56
-rw-r--r--offapi/com/sun/star/ucb/Store.idl54
-rw-r--r--offapi/com/sun/star/ucb/SynchronizePolicy.idl64
-rw-r--r--offapi/com/sun/star/ucb/TransferCommandOperation.idl59
-rw-r--r--offapi/com/sun/star/ucb/TransferInfo.idl87
-rw-r--r--offapi/com/sun/star/ucb/TransferResult.idl60
-rw-r--r--offapi/com/sun/star/ucb/TransientDocumentsContentProvider.idl158
-rw-r--r--offapi/com/sun/star/ucb/TransientDocumentsDocumentContent.idl230
-rw-r--r--offapi/com/sun/star/ucb/TransientDocumentsFolderContent.idl240
-rw-r--r--offapi/com/sun/star/ucb/TransientDocumentsRootContent.idl190
-rw-r--r--offapi/com/sun/star/ucb/TransientDocumentsStreamContent.idl197
-rw-r--r--offapi/com/sun/star/ucb/URLAuthenticationRequest.idl57
-rw-r--r--offapi/com/sun/star/ucb/UniversalContentBroker.idl200
-rw-r--r--offapi/com/sun/star/ucb/UnsupportedCommandException.idl55
-rw-r--r--offapi/com/sun/star/ucb/UnsupportedDataSinkException.idl65
-rw-r--r--offapi/com/sun/star/ucb/UnsupportedNameClashException.idl73
-rw-r--r--offapi/com/sun/star/ucb/UnsupportedOpenModeException.idl62
-rw-r--r--offapi/com/sun/star/ucb/VerificationMode.idl64
-rw-r--r--offapi/com/sun/star/ucb/WebDAVContentProvider.idl117
-rw-r--r--offapi/com/sun/star/ucb/WebDAVDocumentContent.idl211
-rw-r--r--offapi/com/sun/star/ucb/WebDAVFolderContent.idl243
-rw-r--r--offapi/com/sun/star/ucb/WelcomeDynamicResultSetStruct.idl66
-rw-r--r--offapi/com/sun/star/ucb/XAnyCompare.idl74
-rw-r--r--offapi/com/sun/star/ucb/XAnyCompareFactory.idl69
-rw-r--r--offapi/com/sun/star/ucb/XCachedContentResultSetFactory.idl76
-rw-r--r--offapi/com/sun/star/ucb/XCachedContentResultSetStubFactory.idl66
-rw-r--r--offapi/com/sun/star/ucb/XCachedDynamicResultSetFactory.idl86
-rw-r--r--offapi/com/sun/star/ucb/XCachedDynamicResultSetStubFactory.idl127
-rw-r--r--offapi/com/sun/star/ucb/XCommandEnvironment.idl83
-rw-r--r--offapi/com/sun/star/ucb/XCommandInfo.idl123
-rw-r--r--offapi/com/sun/star/ucb/XCommandInfoChangeListener.idl66
-rw-r--r--offapi/com/sun/star/ucb/XCommandInfoChangeNotifier.idl74
-rw-r--r--offapi/com/sun/star/ucb/XCommandProcessor.idl153
-rw-r--r--offapi/com/sun/star/ucb/XCommandProcessor2.idl69
-rw-r--r--offapi/com/sun/star/ucb/XContent.idl103
-rw-r--r--offapi/com/sun/star/ucb/XContentAccess.idl90
-rw-r--r--offapi/com/sun/star/ucb/XContentCreator.idl97
-rw-r--r--offapi/com/sun/star/ucb/XContentEventListener.idl65
-rw-r--r--offapi/com/sun/star/ucb/XContentIdentifier.idl88
-rw-r--r--offapi/com/sun/star/ucb/XContentIdentifierFactory.idl69
-rw-r--r--offapi/com/sun/star/ucb/XContentIdentifierMapping.idl125
-rw-r--r--offapi/com/sun/star/ucb/XContentProvider.idl103
-rw-r--r--offapi/com/sun/star/ucb/XContentProviderFactory.idl68
-rw-r--r--offapi/com/sun/star/ucb/XContentProviderManager.idl184
-rw-r--r--offapi/com/sun/star/ucb/XContentProviderSupplier.idl64
-rw-r--r--offapi/com/sun/star/ucb/XContentTransmitter.idl65
-rw-r--r--offapi/com/sun/star/ucb/XDataContainer.idl104
-rw-r--r--offapi/com/sun/star/ucb/XDynamicResultSet.idl207
-rw-r--r--offapi/com/sun/star/ucb/XDynamicResultSetListener.idl80
-rw-r--r--offapi/com/sun/star/ucb/XFetchProvider.idl76
-rw-r--r--offapi/com/sun/star/ucb/XFetchProviderForContentAccess.idl125
-rw-r--r--offapi/com/sun/star/ucb/XFileIdentifierConverter.idl100
-rw-r--r--offapi/com/sun/star/ucb/XInteractionCookieHandling.idl90
-rw-r--r--offapi/com/sun/star/ucb/XInteractionHandlerSupplier.idl65
-rw-r--r--offapi/com/sun/star/ucb/XInteractionReplaceExistingData.idl57
-rw-r--r--offapi/com/sun/star/ucb/XInteractionSupplyAuthentication.idl177
-rw-r--r--offapi/com/sun/star/ucb/XInteractionSupplyAuthentication2.idl78
-rw-r--r--offapi/com/sun/star/ucb/XInteractionSupplyName.idl63
-rw-r--r--offapi/com/sun/star/ucb/XParameterizedContentProvider.idl118
-rw-r--r--offapi/com/sun/star/ucb/XPersistentPropertySet.idl71
-rw-r--r--offapi/com/sun/star/ucb/XProgressHandler.idl83
-rw-r--r--offapi/com/sun/star/ucb/XPropertyMatcher.idl74
-rw-r--r--offapi/com/sun/star/ucb/XPropertyMatcherFactory.idl68
-rw-r--r--offapi/com/sun/star/ucb/XPropertySetRegistry.idl80
-rw-r--r--offapi/com/sun/star/ucb/XPropertySetRegistryFactory.idl68
-rw-r--r--offapi/com/sun/star/ucb/XRecycler.idl77
-rw-r--r--offapi/com/sun/star/ucb/XRemoteContentProviderAcceptor.idl105
-rw-r--r--offapi/com/sun/star/ucb/XRemoteContentProviderActivator.idl74
-rw-r--r--offapi/com/sun/star/ucb/XRemoteContentProviderChangeListener.idl64
-rw-r--r--offapi/com/sun/star/ucb/XRemoteContentProviderChangeNotifier.idl74
-rw-r--r--offapi/com/sun/star/ucb/XRemoteContentProviderConnectionControl.idl79
-rw-r--r--offapi/com/sun/star/ucb/XRemoteContentProviderDistributor.idl106
-rw-r--r--offapi/com/sun/star/ucb/XRemoteContentProviderDoneListener.idl64
-rw-r--r--offapi/com/sun/star/ucb/XRemoteContentProviderSupplier.idl69
-rw-r--r--offapi/com/sun/star/ucb/XSimpleFileAccess.idl292
-rw-r--r--offapi/com/sun/star/ucb/XSimpleFileAccess2.idl74
-rw-r--r--offapi/com/sun/star/ucb/XSimpleFileAccess3.idl83
-rw-r--r--offapi/com/sun/star/ucb/XSortedDynamicResultSetFactory.idl81
-rw-r--r--offapi/com/sun/star/ucb/XSourceInitialization.idl77
-rw-r--r--offapi/com/sun/star/ucb/XWebDAVCommandEnvironment.idl77
-rw-r--r--offapi/com/sun/star/ucb/makefile.mk274
-rw-r--r--offapi/com/sun/star/ucb/smart/makefile.mk49
-rw-r--r--offapi/com/sun/star/ui/ActionTrigger.idl68
-rw-r--r--offapi/com/sun/star/ui/ActionTriggerContainer.idl97
-rw-r--r--offapi/com/sun/star/ui/ActionTriggerSeparator.idl45
-rw-r--r--offapi/com/sun/star/ui/ActionTriggerSeparatorType.idl52
-rw-r--r--offapi/com/sun/star/ui/ConfigurableUIElement.idl128
-rw-r--r--offapi/com/sun/star/ui/ConfigurationEvent.idl59
-rw-r--r--offapi/com/sun/star/ui/ContextMenuExecuteEvent.idl66
-rw-r--r--offapi/com/sun/star/ui/ContextMenuInterceptorAction.idl58
-rw-r--r--offapi/com/sun/star/ui/DockingArea.idl76
-rw-r--r--offapi/com/sun/star/ui/GlobalAcceleratorConfiguration.idl50
-rw-r--r--offapi/com/sun/star/ui/ImageType.idl64
-rw-r--r--offapi/com/sun/star/ui/ItemDescriptor.idl102
-rw-r--r--offapi/com/sun/star/ui/ItemStyle.idl158
-rw-r--r--offapi/com/sun/star/ui/ItemType.idl59
-rw-r--r--offapi/com/sun/star/ui/ModuleUICategoryDescription.idl77
-rw-r--r--offapi/com/sun/star/ui/ModuleUICommandDescription.idl84
-rw-r--r--offapi/com/sun/star/ui/ModuleUIConfigurationManager.idl117
-rw-r--r--offapi/com/sun/star/ui/ModuleUIConfigurationManagerSupplier.idl66
-rw-r--r--offapi/com/sun/star/ui/ModuleWindowStateConfiguration.idl98
-rw-r--r--offapi/com/sun/star/ui/UICategoryDescription.idl77
-rw-r--r--offapi/com/sun/star/ui/UICommandDescription.idl71
-rw-r--r--offapi/com/sun/star/ui/UIConfigurationManager.idl94
-rw-r--r--offapi/com/sun/star/ui/UIElement.idl112
-rw-r--r--offapi/com/sun/star/ui/UIElementFactory.idl67
-rw-r--r--offapi/com/sun/star/ui/UIElementFactoryManager.idl76
-rw-r--r--offapi/com/sun/star/ui/UIElementSettings.idl94
-rw-r--r--offapi/com/sun/star/ui/UIElementType.idl88
-rw-r--r--offapi/com/sun/star/ui/WindowContentFactory.idl59
-rw-r--r--offapi/com/sun/star/ui/WindowStateConfiguration.idl74
-rw-r--r--offapi/com/sun/star/ui/XAcceleratorConfiguration.idl304
-rw-r--r--offapi/com/sun/star/ui/XContextMenuInterception.idl57
-rw-r--r--offapi/com/sun/star/ui/XContextMenuInterceptor.idl57
-rw-r--r--offapi/com/sun/star/ui/XDockingAreaAcceptor.idl119
-rw-r--r--offapi/com/sun/star/ui/XImageManager.idl256
-rw-r--r--offapi/com/sun/star/ui/XModuleUIConfigurationManager.idl113
-rw-r--r--offapi/com/sun/star/ui/XModuleUIConfigurationManagerSupplier.idl71
-rw-r--r--offapi/com/sun/star/ui/XToolPanel.idl64
-rw-r--r--offapi/com/sun/star/ui/XUIConfiguration.idl85
-rw-r--r--offapi/com/sun/star/ui/XUIConfigurationListener.idl87
-rw-r--r--offapi/com/sun/star/ui/XUIConfigurationManager.idl274
-rw-r--r--offapi/com/sun/star/ui/XUIConfigurationManagerSupplier.idl61
-rw-r--r--offapi/com/sun/star/ui/XUIConfigurationPersistence.idl105
-rw-r--r--offapi/com/sun/star/ui/XUIConfigurationStorage.idl86
-rw-r--r--offapi/com/sun/star/ui/XUIElement.idl97
-rw-r--r--offapi/com/sun/star/ui/XUIElementFactory.idl130
-rw-r--r--offapi/com/sun/star/ui/XUIElementFactoryRegistration.idl182
-rw-r--r--offapi/com/sun/star/ui/XUIElementSettings.idl102
-rw-r--r--offapi/com/sun/star/ui/XUIFunctionListener.idl64
-rw-r--r--offapi/com/sun/star/ui/dialogs/CommonFilePickerElementIds.idl86
-rw-r--r--offapi/com/sun/star/ui/dialogs/ControlActions.idl111
-rw-r--r--offapi/com/sun/star/ui/dialogs/DialogClosedEvent.idl65
-rw-r--r--offapi/com/sun/star/ui/dialogs/ExecutableDialogException.idl54
-rw-r--r--offapi/com/sun/star/ui/dialogs/ExecutableDialogResults.idl58
-rw-r--r--offapi/com/sun/star/ui/dialogs/ExtendedFilePickerElementIds.idl127
-rw-r--r--offapi/com/sun/star/ui/dialogs/FilePicker.idl165
-rw-r--r--offapi/com/sun/star/ui/dialogs/FilePickerEvent.idl62
-rw-r--r--offapi/com/sun/star/ui/dialogs/FilePreviewImageFormats.idl53
-rw-r--r--offapi/com/sun/star/ui/dialogs/FilterOptionsDialog.idl89
-rw-r--r--offapi/com/sun/star/ui/dialogs/FolderPicker.idl88
-rw-r--r--offapi/com/sun/star/ui/dialogs/ListboxControlActions.idl91
-rw-r--r--offapi/com/sun/star/ui/dialogs/TemplateDescription.idl143
-rw-r--r--offapi/com/sun/star/ui/dialogs/Wizard.idl75
-rw-r--r--offapi/com/sun/star/ui/dialogs/WizardButton.idl60
-rw-r--r--offapi/com/sun/star/ui/dialogs/WizardTravelType.idl54
-rw-r--r--offapi/com/sun/star/ui/dialogs/XAsynchronousExecutableDialog.idl72
-rw-r--r--offapi/com/sun/star/ui/dialogs/XControlAccess.idl105
-rw-r--r--offapi/com/sun/star/ui/dialogs/XControlInformation.idl111
-rw-r--r--offapi/com/sun/star/ui/dialogs/XDialogClosedListener.idl68
-rw-r--r--offapi/com/sun/star/ui/dialogs/XExecutableDialog.idl75
-rw-r--r--offapi/com/sun/star/ui/dialogs/XFilePicker.idl145
-rw-r--r--offapi/com/sun/star/ui/dialogs/XFilePicker2.idl75
-rw-r--r--offapi/com/sun/star/ui/dialogs/XFilePickerControlAccess.idl153
-rw-r--r--offapi/com/sun/star/ui/dialogs/XFilePickerListener.idl120
-rw-r--r--offapi/com/sun/star/ui/dialogs/XFilePickerNotifier.idl75
-rw-r--r--offapi/com/sun/star/ui/dialogs/XFilePreview.idl144
-rw-r--r--offapi/com/sun/star/ui/dialogs/XFilterGroupManager.idl80
-rw-r--r--offapi/com/sun/star/ui/dialogs/XFilterManager.idl97
-rw-r--r--offapi/com/sun/star/ui/dialogs/XFolderPicker.idl100
-rw-r--r--offapi/com/sun/star/ui/dialogs/XWizard.idl228
-rw-r--r--offapi/com/sun/star/ui/dialogs/XWizardController.idl85
-rw-r--r--offapi/com/sun/star/ui/dialogs/XWizardPage.idl86
-rw-r--r--offapi/com/sun/star/ui/dialogs/makefile.mk79
-rw-r--r--offapi/com/sun/star/ui/makefile.mk93
-rw-r--r--offapi/com/sun/star/util/AliasProgrammaticPair.idl56
-rw-r--r--offapi/com/sun/star/util/AtomClassRequest.idl61
-rw-r--r--offapi/com/sun/star/util/AtomDescription.idl60
-rw-r--r--offapi/com/sun/star/util/CellProtection.idl66
-rw-r--r--offapi/com/sun/star/util/ChangesEvent.idl77
-rw-r--r--offapi/com/sun/star/util/ChangesSet.idl61
-rw-r--r--offapi/com/sun/star/util/CloseVetoException.idl52
-rw-r--r--offapi/com/sun/star/util/Color.idl52
-rw-r--r--offapi/com/sun/star/util/DataEditorEvent.idl55
-rw-r--r--offapi/com/sun/star/util/DataEditorEventType.idl51
-rw-r--r--offapi/com/sun/star/util/Date.idl63
-rw-r--r--offapi/com/sun/star/util/DateTime.idl87
-rw-r--r--offapi/com/sun/star/util/DateTimeRange.idl116
-rw-r--r--offapi/com/sun/star/util/DiskFullException.idl51
-rw-r--r--offapi/com/sun/star/util/Duration.idl101
-rw-r--r--offapi/com/sun/star/util/ElementChange.idl65
-rw-r--r--offapi/com/sun/star/util/Endianness.idl64
-rw-r--r--offapi/com/sun/star/util/FileIOException.idl50
-rw-r--r--offapi/com/sun/star/util/InvalidStateException.idl50
-rw-r--r--offapi/com/sun/star/util/JobManager.idl46
-rw-r--r--offapi/com/sun/star/util/Language.idl44
-rw-r--r--offapi/com/sun/star/util/MalformedNumberFormatException.idl60
-rw-r--r--offapi/com/sun/star/util/MeasureUnit.idl106
-rw-r--r--offapi/com/sun/star/util/ModeChangeEvent.idl63
-rw-r--r--offapi/com/sun/star/util/NotNumericException.idl51
-rw-r--r--offapi/com/sun/star/util/NumberFormat.idl126
-rw-r--r--offapi/com/sun/star/util/NumberFormatProperties.idl81
-rw-r--r--offapi/com/sun/star/util/NumberFormatSettings.idl88
-rw-r--r--offapi/com/sun/star/util/NumberFormats.idl64
-rw-r--r--offapi/com/sun/star/util/NumberFormatsSupplier.idl77
-rw-r--r--offapi/com/sun/star/util/NumberFormatter.idl69
-rw-r--r--offapi/com/sun/star/util/OfficeInstallationDirectories.idl79
-rw-r--r--offapi/com/sun/star/util/PathSettings.idl173
-rw-r--r--offapi/com/sun/star/util/PathSubstitution.idl108
-rw-r--r--offapi/com/sun/star/util/ReplaceDescriptor.idl59
-rw-r--r--offapi/com/sun/star/util/RevisionTag.idl71
-rw-r--r--offapi/com/sun/star/util/SearchDescriptor.idl140
-rw-r--r--offapi/com/sun/star/util/SortDescriptor.idl111
-rw-r--r--offapi/com/sun/star/util/SortDescriptor2.idl57
-rw-r--r--offapi/com/sun/star/util/SortField.idl67
-rw-r--r--offapi/com/sun/star/util/SortFieldType.idl64
-rw-r--r--offapi/com/sun/star/util/Sortable.idl67
-rw-r--r--offapi/com/sun/star/util/TextSearch.idl53
-rw-r--r--offapi/com/sun/star/util/Time.idl66
-rw-r--r--offapi/com/sun/star/util/TriState.idl66
-rw-r--r--offapi/com/sun/star/util/URL.idl131
-rw-r--r--offapi/com/sun/star/util/URLTransformer.idl54
-rw-r--r--offapi/com/sun/star/util/UriAbbreviation.idl48
-rw-r--r--offapi/com/sun/star/util/VetoException.idl54
-rw-r--r--offapi/com/sun/star/util/XArchiver.idl80
-rw-r--r--offapi/com/sun/star/util/XAtomServer.idl146
-rw-r--r--offapi/com/sun/star/util/XBroadcaster.idl84
-rw-r--r--offapi/com/sun/star/util/XCancelManager.idl67
-rw-r--r--offapi/com/sun/star/util/XCancellable.idl58
-rw-r--r--offapi/com/sun/star/util/XChainable.idl83
-rw-r--r--offapi/com/sun/star/util/XChangesBatch.idl86
-rw-r--r--offapi/com/sun/star/util/XChangesListener.idl64
-rw-r--r--offapi/com/sun/star/util/XChangesNotifier.idl64
-rw-r--r--offapi/com/sun/star/util/XChangesSet.idl73
-rw-r--r--offapi/com/sun/star/util/XCloneable.idl56
-rw-r--r--offapi/com/sun/star/util/XCloseBroadcaster.idl80
-rw-r--r--offapi/com/sun/star/util/XCloseListener.idl139
-rw-r--r--offapi/com/sun/star/util/XCloseable.idl135
-rw-r--r--offapi/com/sun/star/util/XDataEditor.idl76
-rw-r--r--offapi/com/sun/star/util/XDataEditorListener.idl56
-rw-r--r--offapi/com/sun/star/util/XFlushListener.idl60
-rw-r--r--offapi/com/sun/star/util/XFlushable.idl70
-rw-r--r--offapi/com/sun/star/util/XImportable.idl71
-rw-r--r--offapi/com/sun/star/util/XIndent.idl60
-rw-r--r--offapi/com/sun/star/util/XJobManager.idl65
-rw-r--r--offapi/com/sun/star/util/XLinkUpdate.idl59
-rw-r--r--offapi/com/sun/star/util/XLocalizedAliases.idl117
-rw-r--r--offapi/com/sun/star/util/XMergeable.idl63
-rw-r--r--offapi/com/sun/star/util/XModeChangeApproveListener.idl74
-rw-r--r--offapi/com/sun/star/util/XModeChangeBroadcaster.idl97
-rw-r--r--offapi/com/sun/star/util/XModeChangeListener.idl63
-rw-r--r--offapi/com/sun/star/util/XModeSelector.idl78
-rw-r--r--offapi/com/sun/star/util/XModifiable.idl74
-rw-r--r--offapi/com/sun/star/util/XModifiable2.idl88
-rw-r--r--offapi/com/sun/star/util/XModifyBroadcaster.idl69
-rw-r--r--offapi/com/sun/star/util/XModifyListener.idl66
-rw-r--r--offapi/com/sun/star/util/XNumberFormatPreviewer.idl137
-rw-r--r--offapi/com/sun/star/util/XNumberFormatTypes.idl111
-rw-r--r--offapi/com/sun/star/util/XNumberFormats.idl136
-rw-r--r--offapi/com/sun/star/util/XNumberFormatsSupplier.idl75
-rw-r--r--offapi/com/sun/star/util/XNumberFormatter.idl149
-rw-r--r--offapi/com/sun/star/util/XOfficeInstallationDirectories.idl114
-rw-r--r--offapi/com/sun/star/util/XPropertyReplace.idl101
-rw-r--r--offapi/com/sun/star/util/XProtectable.idl72
-rw-r--r--offapi/com/sun/star/util/XRefreshListener.idl60
-rw-r--r--offapi/com/sun/star/util/XRefreshable.idl70
-rw-r--r--offapi/com/sun/star/util/XReplaceDescriptor.idl62
-rw-r--r--offapi/com/sun/star/util/XReplaceable.idl80
-rw-r--r--offapi/com/sun/star/util/XSearchDescriptor.idl62
-rw-r--r--offapi/com/sun/star/util/XSearchable.idl112
-rw-r--r--offapi/com/sun/star/util/XSimpleErrorHandler.idl54
-rw-r--r--offapi/com/sun/star/util/XSortable.idl113
-rw-r--r--offapi/com/sun/star/util/XStringAbbreviation.idl83
-rw-r--r--offapi/com/sun/star/util/XStringEscape.idl83
-rw-r--r--offapi/com/sun/star/util/XStringMapping.idl55
-rw-r--r--offapi/com/sun/star/util/XStringSubstitution.idl134
-rw-r--r--offapi/com/sun/star/util/XStringWidth.idl63
-rw-r--r--offapi/com/sun/star/util/XTextSearch.idl190
-rw-r--r--offapi/com/sun/star/util/XTimeStamped.idl73
-rw-r--r--offapi/com/sun/star/util/XURLTransformer.idl146
-rw-r--r--offapi/com/sun/star/util/XUniqueIDFactory.idl51
-rw-r--r--offapi/com/sun/star/util/XUpdatable.idl58
-rw-r--r--offapi/com/sun/star/util/makefile.mk152
-rw-r--r--offapi/com/sun/star/view/DocumentZoomType.idl72
-rw-r--r--offapi/com/sun/star/view/DuplexMode.idl66
-rw-r--r--offapi/com/sun/star/view/OfficeDocumentView.idl80
-rw-r--r--offapi/com/sun/star/view/PaperFormat.idl92
-rw-r--r--offapi/com/sun/star/view/PaperOrientation.idl57
-rw-r--r--offapi/com/sun/star/view/PrintJobEvent.idl62
-rw-r--r--offapi/com/sun/star/view/PrintOptions.idl98
-rw-r--r--offapi/com/sun/star/view/PrintSettings.idl111
-rw-r--r--offapi/com/sun/star/view/PrintableState.idl78
-rw-r--r--offapi/com/sun/star/view/PrintableStateEvent.idl60
-rw-r--r--offapi/com/sun/star/view/PrinterDescriptor.idl117
-rw-r--r--offapi/com/sun/star/view/RenderDescriptor.idl59
-rw-r--r--offapi/com/sun/star/view/RenderOptions.idl112
-rw-r--r--offapi/com/sun/star/view/SelectionType.idl72
-rw-r--r--offapi/com/sun/star/view/ViewSettings.idl76
-rw-r--r--offapi/com/sun/star/view/XControlAccess.idl71
-rw-r--r--offapi/com/sun/star/view/XFormLayerAccess.idl109
-rw-r--r--offapi/com/sun/star/view/XLineCursor.idl83
-rw-r--r--offapi/com/sun/star/view/XMultiSelectionSupplier.idl131
-rw-r--r--offapi/com/sun/star/view/XPrintJob.idl77
-rw-r--r--offapi/com/sun/star/view/XPrintJobBroadcaster.idl66
-rw-r--r--offapi/com/sun/star/view/XPrintJobListener.idl64
-rw-r--r--offapi/com/sun/star/view/XPrintPreview.idl57
-rw-r--r--offapi/com/sun/star/view/XPrintSettingsSupplier.idl65
-rw-r--r--offapi/com/sun/star/view/XPrintable.idl91
-rw-r--r--offapi/com/sun/star/view/XPrintableBroadcaster.idl64
-rw-r--r--offapi/com/sun/star/view/XPrintableListener.idl66
-rw-r--r--offapi/com/sun/star/view/XRenderable.idl110
-rw-r--r--offapi/com/sun/star/view/XScreenCursor.idl61
-rw-r--r--offapi/com/sun/star/view/XSelectionChangeListener.idl67
-rw-r--r--offapi/com/sun/star/view/XSelectionSupplier.idl89
-rw-r--r--offapi/com/sun/star/view/XViewCursor.idl116
-rw-r--r--offapi/com/sun/star/view/XViewSettingsSupplier.idl64
-rw-r--r--offapi/com/sun/star/view/makefile.mk78
-rw-r--r--offapi/com/sun/star/xforms/Binding.idl94
-rw-r--r--offapi/com/sun/star/xforms/InvalidDataOnSubmitException.idl57
-rw-r--r--offapi/com/sun/star/xforms/XDataTypeRepository.idl120
-rw-r--r--offapi/com/sun/star/xforms/XFormsEvent.idl43
-rw-r--r--offapi/com/sun/star/xforms/XFormsSupplier.idl65
-rw-r--r--offapi/com/sun/star/xforms/XFormsUIHelper1.idl165
-rw-r--r--offapi/com/sun/star/xforms/XModel.idl238
-rw-r--r--offapi/com/sun/star/xforms/XSubmission.idl76
-rw-r--r--offapi/com/sun/star/xforms/makefile.mk55
-rw-r--r--offapi/com/sun/star/xml/Attribute.idl61
-rw-r--r--offapi/com/sun/star/xml/AttributeContainer.idl56
-rw-r--r--offapi/com/sun/star/xml/AttributeData.idl65
-rw-r--r--offapi/com/sun/star/xml/ExportFilter.idl65
-rw-r--r--offapi/com/sun/star/xml/FastAttribute.idl56
-rw-r--r--offapi/com/sun/star/xml/ImportFilter.idl49
-rw-r--r--offapi/com/sun/star/xml/NamespaceContainer.idl52
-rw-r--r--offapi/com/sun/star/xml/ParaUserDefinedAttributesSupplier.idl62
-rw-r--r--offapi/com/sun/star/xml/TextUserDefinedAttributesSupplier.idl62
-rw-r--r--offapi/com/sun/star/xml/UserDefinedAttributeSupplier.idl71
-rw-r--r--offapi/com/sun/star/xml/UserDefinedAttributesSupplier.idl62
-rw-r--r--offapi/com/sun/star/xml/XExportFilter.idl77
-rw-r--r--offapi/com/sun/star/xml/XImportFilter.idl81
-rw-r--r--offapi/com/sun/star/xml/XMLExportFilter.idl60
-rw-r--r--offapi/com/sun/star/xml/XMLImportFilter.idl64
-rw-r--r--offapi/com/sun/star/xml/crypto/SEInitializer.idl56
-rw-r--r--offapi/com/sun/star/xml/crypto/SecurityEnvironment.idl60
-rw-r--r--offapi/com/sun/star/xml/crypto/SecurityOperationStatus.idl150
-rw-r--r--offapi/com/sun/star/xml/crypto/XMLEncryption.idl57
-rw-r--r--offapi/com/sun/star/xml/crypto/XMLEncryptionException.idl55
-rw-r--r--offapi/com/sun/star/xml/crypto/XMLEncryptionTemplate.idl58
-rw-r--r--offapi/com/sun/star/xml/crypto/XMLSecurityContext.idl58
-rw-r--r--offapi/com/sun/star/xml/crypto/XMLSignature.idl58
-rw-r--r--offapi/com/sun/star/xml/crypto/XMLSignatureException.idl55
-rw-r--r--offapi/com/sun/star/xml/crypto/XMLSignatureTemplate.idl58
-rw-r--r--offapi/com/sun/star/xml/crypto/XSEInitializer.idl68
-rw-r--r--offapi/com/sun/star/xml/crypto/XSecurityEnvironment.idl122
-rw-r--r--offapi/com/sun/star/xml/crypto/XUriBinding.idl72
-rw-r--r--offapi/com/sun/star/xml/crypto/XXMLEncryption.idl87
-rw-r--r--offapi/com/sun/star/xml/crypto/XXMLEncryptionTemplate.idl97
-rw-r--r--offapi/com/sun/star/xml/crypto/XXMLSecurityContext.idl87
-rw-r--r--offapi/com/sun/star/xml/crypto/XXMLSecurityTemplate.idl89
-rw-r--r--offapi/com/sun/star/xml/crypto/XXMLSignature.idl88
-rw-r--r--offapi/com/sun/star/xml/crypto/XXMLSignatureTemplate.idl85
-rw-r--r--offapi/com/sun/star/xml/crypto/makefile.mk66
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/Decryptor.idl66
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/Encryptor.idl68
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/SAXEventKeeper.idl64
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/SignatureCreator.idl67
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/SignatureVerifier.idl68
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/XBlockerMonitor.idl60
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/XDecryptionResultBroadcaster.idl75
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/XDecryptionResultListener.idl64
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/XElementStackKeeper.idl94
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/XEncryptionResultBroadcaster.idl75
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/XEncryptionResultListener.idl64
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/XKeyCollector.idl61
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/XMissionTaker.idl60
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/XReferenceCollector.idl70
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/XReferenceResolvedBroadcaster.idl82
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/XReferenceResolvedListener.idl61
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/XSAXEventKeeper.idl147
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/XSAXEventKeeperStatusChangeBroadcaster.idl76
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/XSAXEventKeeperStatusChangeListener.idl78
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/XSecurityController.idl55
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/XSecuritySAXEventKeeper.idl133
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/XSignatureCreationResultBroadcaster.idl76
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/XSignatureCreationResultListener.idl64
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/XSignatureVerifyResultBroadcaster.idl76
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/XSignatureVerifyResultListener.idl64
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/makefile.mk72
-rw-r--r--offapi/com/sun/star/xml/csax/XCompressedDocumentHandler.idl96
-rw-r--r--offapi/com/sun/star/xml/csax/makefile.mk48
-rw-r--r--offapi/com/sun/star/xml/dom/DOMException.idl54
-rw-r--r--offapi/com/sun/star/xml/dom/DOMExceptionType.idl54
-rw-r--r--offapi/com/sun/star/xml/dom/DocumentBuilder.idl14
-rw-r--r--offapi/com/sun/star/xml/dom/NodeType.idl51
-rw-r--r--offapi/com/sun/star/xml/dom/SAXDocumentBuilder.idl19
-rw-r--r--offapi/com/sun/star/xml/dom/SAXDocumentBuilderState.idl44
-rw-r--r--offapi/com/sun/star/xml/dom/XAttr.idl73
-rw-r--r--offapi/com/sun/star/xml/dom/XCDATASection.idl42
-rw-r--r--offapi/com/sun/star/xml/dom/XCharacterData.idl112
-rw-r--r--offapi/com/sun/star/xml/dom/XComment.idl43
-rw-r--r--offapi/com/sun/star/xml/dom/XDOMImplementation.idl88
-rw-r--r--offapi/com/sun/star/xml/dom/XDocument.idl195
-rw-r--r--offapi/com/sun/star/xml/dom/XDocumentBuilder.idl126
-rw-r--r--offapi/com/sun/star/xml/dom/XDocumentFragment.idl42
-rw-r--r--offapi/com/sun/star/xml/dom/XDocumentType.idl78
-rw-r--r--offapi/com/sun/star/xml/dom/XElement.idl156
-rw-r--r--offapi/com/sun/star/xml/dom/XEntity.idl57
-rw-r--r--offapi/com/sun/star/xml/dom/XEntityReference.idl42
-rw-r--r--offapi/com/sun/star/xml/dom/XNamedNodeMap.idl104
-rw-r--r--offapi/com/sun/star/xml/dom/XNode.idl282
-rw-r--r--offapi/com/sun/star/xml/dom/XNodeList.idl53
-rw-r--r--offapi/com/sun/star/xml/dom/XNotation.idl52
-rw-r--r--offapi/com/sun/star/xml/dom/XProcessingInstruction.idl61
-rw-r--r--offapi/com/sun/star/xml/dom/XSAXDocumentBuilder.idl65
-rw-r--r--offapi/com/sun/star/xml/dom/XText.idl49
-rw-r--r--offapi/com/sun/star/xml/dom/events/AttrChangeType.idl42
-rw-r--r--offapi/com/sun/star/xml/dom/events/EventException.idl43
-rw-r--r--offapi/com/sun/star/xml/dom/events/EventType.idl174
-rw-r--r--offapi/com/sun/star/xml/dom/events/PhaseType.idl40
-rw-r--r--offapi/com/sun/star/xml/dom/events/XDocumentEvent.idl42
-rw-r--r--offapi/com/sun/star/xml/dom/events/XEvent.idl66
-rw-r--r--offapi/com/sun/star/xml/dom/events/XEventListener.idl42
-rw-r--r--offapi/com/sun/star/xml/dom/events/XEventTarget.idl55
-rw-r--r--offapi/com/sun/star/xml/dom/events/XMouseEvent.idl69
-rw-r--r--offapi/com/sun/star/xml/dom/events/XMutationEvent.idl60
-rw-r--r--offapi/com/sun/star/xml/dom/events/XUIEvent.idl49
-rw-r--r--offapi/com/sun/star/xml/dom/events/makefile.mk62
-rw-r--r--offapi/com/sun/star/xml/dom/makefile.mk75
-rw-r--r--offapi/com/sun/star/xml/dom/views/XAbstractView.idl41
-rw-r--r--offapi/com/sun/star/xml/dom/views/XDocumentView.idl39
-rw-r--r--offapi/com/sun/star/xml/dom/views/makefile.mk53
-rw-r--r--offapi/com/sun/star/xml/input/SaxDocumentHandler.idl56
-rw-r--r--offapi/com/sun/star/xml/input/XAttributes.idl127
-rw-r--r--offapi/com/sun/star/xml/input/XElement.idl120
-rw-r--r--offapi/com/sun/star/xml/input/XNamespaceMapping.idl65
-rw-r--r--offapi/com/sun/star/xml/input/XRoot.idl97
-rw-r--r--offapi/com/sun/star/xml/input/makefile.mk51
-rw-r--r--offapi/com/sun/star/xml/makefile.mk60
-rw-r--r--offapi/com/sun/star/xml/sax/FastShapeContextHandler.idl45
-rw-r--r--offapi/com/sun/star/xml/sax/FastToken.idl59
-rw-r--r--offapi/com/sun/star/xml/sax/FastTokenHandler.idl43
-rw-r--r--offapi/com/sun/star/xml/sax/InputSource.idl88
-rw-r--r--offapi/com/sun/star/xml/sax/SAXException.idl66
-rw-r--r--offapi/com/sun/star/xml/sax/SAXInvalidCharacterException.idl54
-rw-r--r--offapi/com/sun/star/xml/sax/SAXParseException.idl78
-rw-r--r--offapi/com/sun/star/xml/sax/XAttributeList.idl102
-rw-r--r--offapi/com/sun/star/xml/sax/XDTDHandler.idl79
-rw-r--r--offapi/com/sun/star/xml/sax/XDocumentHandler.idl125
-rw-r--r--offapi/com/sun/star/xml/sax/XEntityResolver.idl71
-rw-r--r--offapi/com/sun/star/xml/sax/XErrorHandler.idl84
-rw-r--r--offapi/com/sun/star/xml/sax/XExtendedDocumentHandler.idl95
-rw-r--r--offapi/com/sun/star/xml/sax/XFastAttributeList.idl180
-rw-r--r--offapi/com/sun/star/xml/sax/XFastContextHandler.idl161
-rw-r--r--offapi/com/sun/star/xml/sax/XFastDocumentHandler.idl89
-rw-r--r--offapi/com/sun/star/xml/sax/XFastParser.idl196
-rw-r--r--offapi/com/sun/star/xml/sax/XFastSAXSerializable.idl99
-rw-r--r--offapi/com/sun/star/xml/sax/XFastSerializer.idl191
-rw-r--r--offapi/com/sun/star/xml/sax/XFastShapeContextHandler.idl62
-rw-r--r--offapi/com/sun/star/xml/sax/XFastTokenHandler.idl93
-rw-r--r--offapi/com/sun/star/xml/sax/XLocator.idl77
-rw-r--r--offapi/com/sun/star/xml/sax/XParser.idl126
-rw-r--r--offapi/com/sun/star/xml/sax/XSAXSerializable.idl82
-rw-r--r--offapi/com/sun/star/xml/sax/makefile.mk69
-rw-r--r--offapi/com/sun/star/xml/wrapper/XMLDocumentWrapper.idl58
-rw-r--r--offapi/com/sun/star/xml/wrapper/XMLElementWrapper.idl60
-rw-r--r--offapi/com/sun/star/xml/wrapper/XXMLDocumentWrapper.idl176
-rw-r--r--offapi/com/sun/star/xml/wrapper/XXMLElementWrapper.idl55
-rw-r--r--offapi/com/sun/star/xml/wrapper/makefile.mk51
-rw-r--r--offapi/com/sun/star/xml/xpath/Libxml2ExtensionHandle.idl49
-rw-r--r--offapi/com/sun/star/xml/xpath/XPathAPI.idl14
-rw-r--r--offapi/com/sun/star/xml/xpath/XPathException.idl50
-rw-r--r--offapi/com/sun/star/xml/xpath/XPathExtension.idl14
-rw-r--r--offapi/com/sun/star/xml/xpath/XPathObjectType.idl51
-rw-r--r--offapi/com/sun/star/xml/xpath/XXPathAPI.idl207
-rw-r--r--offapi/com/sun/star/xml/xpath/XXPathExtension.idl47
-rw-r--r--offapi/com/sun/star/xml/xpath/XXPathObject.idl102
-rw-r--r--offapi/com/sun/star/xml/xpath/makefile.mk60
-rw-r--r--offapi/com/sun/star/xsd/Boolean.idl53
-rw-r--r--offapi/com/sun/star/xsd/DataTypeClass.idl125
-rw-r--r--offapi/com/sun/star/xsd/Date.idl75
-rw-r--r--offapi/com/sun/star/xsd/DateTime.idl75
-rw-r--r--offapi/com/sun/star/xsd/Day.idl73
-rw-r--r--offapi/com/sun/star/xsd/Decimal.idl90
-rw-r--r--offapi/com/sun/star/xsd/Month.idl73
-rw-r--r--offapi/com/sun/star/xsd/String.idl73
-rw-r--r--offapi/com/sun/star/xsd/Time.idl75
-rw-r--r--offapi/com/sun/star/xsd/WhiteSpaceTreatment.idl59
-rw-r--r--offapi/com/sun/star/xsd/XDataType.idl102
-rw-r--r--offapi/com/sun/star/xsd/Year.idl73
-rw-r--r--offapi/com/sun/star/xsd/makefile.mk58
-rw-r--r--offapi/drafts/com/sun/star/form/IncompatibleTypesException.idl57
-rw-r--r--offapi/drafts/com/sun/star/form/ListEntryEvent.idl77
-rw-r--r--offapi/drafts/com/sun/star/form/XBindableValue.idl81
-rw-r--r--offapi/drafts/com/sun/star/form/XListEntryListener.idl92
-rw-r--r--offapi/drafts/com/sun/star/form/XListEntrySink.idl71
-rw-r--r--offapi/drafts/com/sun/star/form/XListEntrySource.idl103
-rw-r--r--offapi/drafts/com/sun/star/form/XValueBinding.idl101
-rw-r--r--offapi/drafts/com/sun/star/form/makefile.mk52
-rw-r--r--offapi/prj/build.lst109
-rw-r--r--offapi/prj/d.lst230
-rw-r--r--offapi/type_reference/typelibrary_history.txt160
-rw-r--r--offapi/type_reference/types.rdbbin0 -> 7307264 bytes-rwxr-xr-xoffapi/util/checknewapi.pl198
-rw-r--r--offapi/util/makefile.mk188
-rw-r--r--offapi/util/makefile.pmk34
-rw-r--r--offapi/util/regfilter.sed2
-rw-r--r--offapi/util/target.pmk33
-rw-r--r--officecfg/prj/build.lst17
-rw-r--r--officecfg/prj/d.lst69
-rw-r--r--officecfg/registry/component-schema.dtd152
-rw-r--r--officecfg/registry/component-update.dtd120
-rw-r--r--officecfg/registry/data.dtd40
-rw-r--r--officecfg/registry/data/org/openoffice/FirstStartWizard.xcu56
-rw-r--r--officecfg/registry/data/org/openoffice/Inet.xcu407
-rw-r--r--officecfg/registry/data/org/openoffice/Interaction.xcu56
-rw-r--r--officecfg/registry/data/org/openoffice/Langpack.xcu.tmpl36
-rwxr-xr-xofficecfg/registry/data/org/openoffice/Office/Accelerators.xcu5833
-rw-r--r--officecfg/registry/data/org/openoffice/Office/Calc.xcu223
-rwxr-xr-xofficecfg/registry/data/org/openoffice/Office/Canvas.xcu80
-rw-r--r--officecfg/registry/data/org/openoffice/Office/Common.xcu713
-rw-r--r--officecfg/registry/data/org/openoffice/Office/Compatibility.xcu47
-rw-r--r--officecfg/registry/data/org/openoffice/Office/DataAccess.xcu730
-rw-r--r--officecfg/registry/data/org/openoffice/Office/Embedding.xcu333
-rw-r--r--officecfg/registry/data/org/openoffice/Office/ExtensionManager.xcu36
-rwxr-xr-xofficecfg/registry/data/org/openoffice/Office/FormWizard.xcu155
-rw-r--r--officecfg/registry/data/org/openoffice/Office/Histories.xcu55
-rw-r--r--officecfg/registry/data/org/openoffice/Office/Impress.xcu166
-rw-r--r--officecfg/registry/data/org/openoffice/Office/Jobs.xcu48
-rw-r--r--officecfg/registry/data/org/openoffice/Office/Labels.xcu13808
-rw-r--r--officecfg/registry/data/org/openoffice/Office/Linguistic.xcu35
-rw-r--r--officecfg/registry/data/org/openoffice/Office/Logging.xcu32
-rwxr-xr-xofficecfg/registry/data/org/openoffice/Office/Math.xcu1001
-rw-r--r--officecfg/registry/data/org/openoffice/Office/Paths.xcu242
-rw-r--r--officecfg/registry/data/org/openoffice/Office/ProtocolHandler.xcu72
-rw-r--r--officecfg/registry/data/org/openoffice/Office/Recovery.xcu42
-rw-r--r--officecfg/registry/data/org/openoffice/Office/SFX.xcu56
-rw-r--r--officecfg/registry/data/org/openoffice/Office/Scripting.xcu47
-rw-r--r--officecfg/registry/data/org/openoffice/Office/Security.xcu477
-rw-r--r--officecfg/registry/data/org/openoffice/Office/TableWizard.xcu9751
-rw-r--r--officecfg/registry/data/org/openoffice/Office/TypeDetection.xcu41
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI.xcu567
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/BaseWindowState.xcu113
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/BasicIDECommands.xcu10
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/BasicIDEWindowState.xcu152
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/BibliographyCommands.xcu64
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu1605
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/CalcWindowState.xcu575
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/ChartCommands.xcu709
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/ChartWindowState.xcu162
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/Controller.xcu500
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/DbBrowserWindowState.xcu37
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/DbQueryWindowState.xcu71
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/DbRelationWindowState.xcu32
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/DbTableDataWindowState.xcu37
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/DbTableWindowState.xcu32
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/DbuCommands.xcu526
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/DrawImpressCommands.xcu2125
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/DrawWindowState.xcu745
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/Effects.xcu2149
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/Factories.xcu104
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/GenericCategories.xcu190
-rwxr-xr-xofficecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu5470
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/ImpressWindowState.xcu895
-rwxr-xr-xofficecfg/registry/data/org/openoffice/Office/UI/MathCommands.xcu174
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/MathWindowState.xcu101
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/StartModuleCommands.xcu246
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/StartModuleWindowState.xcu53
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu2279
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/WriterFormWindowState.xcu700
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/WriterGlobalWindowState.xcu654
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/WriterReportWindowState.xcu700
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/WriterWebWindowState.xcu601
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/WriterWindowState.xcu660
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/XFormsWindowState.xcu711
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/makefile.mk79
-rw-r--r--officecfg/registry/data/org/openoffice/Office/Views.xcu37
-rw-r--r--officecfg/registry/data/org/openoffice/Office/WebWizard.xcu1542
-rw-r--r--officecfg/registry/data/org/openoffice/Office/Writer.xcu714
-rw-r--r--officecfg/registry/data/org/openoffice/Office/makefile.mk118
-rwxr-xr-xofficecfg/registry/data/org/openoffice/Setup.xcu960
-rw-r--r--officecfg/registry/data/org/openoffice/System.xcu45
-rw-r--r--officecfg/registry/data/org/openoffice/TypeDetection/UISort.xcu67
-rw-r--r--officecfg/registry/data/org/openoffice/TypeDetection/makefile.mk51
-rw-r--r--officecfg/registry/data/org/openoffice/UserProfile.xcu45
-rw-r--r--officecfg/registry/data/org/openoffice/VCL.xcu8292
-rwxr-xr-xofficecfg/registry/data/org/openoffice/makefile.mk70
-rw-r--r--officecfg/registry/data/org/openoffice/ucb/Configuration.xcu206
-rw-r--r--officecfg/registry/data/org/openoffice/ucb/makefile.mk45
-rw-r--r--officecfg/registry/makefile.mk44
-rw-r--r--officecfg/registry/schema/makefile.mk46
-rw-r--r--officecfg/registry/schema/oo-ad-ldap.xcd.sample153
-rw-r--r--officecfg/registry/schema/oo-common-ad.ldf119
-rw-r--r--officecfg/registry/schema/oo-common.conf22
-rw-r--r--officecfg/registry/schema/oo-common.ldif20
-rw-r--r--officecfg/registry/schema/oo-ldap-attr-map.properties49
-rw-r--r--officecfg/registry/schema/oo-ldap.xcd.sample156
-rw-r--r--officecfg/registry/schema/oo-org-map.properties22
-rw-r--r--officecfg/registry/schema/org/openoffice/FirstStartWizard.xcs69
-rw-r--r--officecfg/registry/schema/org/openoffice/Inet.xcs396
-rw-r--r--officecfg/registry/schema/org/openoffice/Interaction.xcs86
-rw-r--r--officecfg/registry/schema/org/openoffice/LDAP.xcs64
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Accelerators.xcs81
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Addons.xcs322
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Calc.xcs1524
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/CalcAddIns.xcs77
-rwxr-xr-xofficecfg/registry/schema/org/openoffice/Office/Canvas.xcs126
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Chart.xcs54
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Commands.xcs68
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Common.xcs6471
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Compatibility.xcs113
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/DataAccess.xcs1115
-rwxr-xr-xofficecfg/registry/schema/org/openoffice/Office/DataAccess/Drivers.xcs97
-rwxr-xr-xofficecfg/registry/schema/org/openoffice/Office/DataAccess/makefile.mk42
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Draw.xcs1126
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Embedding.xcs154
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Events.xcs57
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/ExtendedColorScheme.xcs119
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/ExtensionManager.xcs53
-rwxr-xr-xofficecfg/registry/schema/org/openoffice/Office/FormWizard.xcs67
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Histories.xcs102
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Impress.xcs1520
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Java.xcs402
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Jobs.xcs89
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Labels.xcs76
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Linguistic.xcs633
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Logging.xcs115
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Math.xcs1258
-rwxr-xr-xofficecfg/registry/schema/org/openoffice/Office/OOoImprovement/Settings.xcs98
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/OOoImprovement/makefile.mk42
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/OptionsDialog.xcs293
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Paths.xcs99
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/ProtocolHandler.xcs60
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Recovery.xcs163
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/SFX.xcs56
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Scripting.xcs75
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Security.xcs70
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Substitution.xcs96
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/TabBrowse.xcs61
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/TableWizard.xcs128
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/TypeDetection.xcs160
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI.xcs700
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/BaseWindowState.xcs49
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/BasicIDECommands.xcs54
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/BasicIDEWindowState.xcs49
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/BibliographyCommands.xcs54
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/BibliographyWindowState.xcs49
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/CalcCommands.xcs54
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/CalcWindowState.xcs49
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/Category.xcs46
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/ChartCommands.xcs54
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/ChartWindowState.xcs49
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/Commands.xcs63
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/Controller.xcs83
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/DbBrowserWindowState.xcs49
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/DbQueryWindowState.xcs49
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/DbRelationWindowState.xcs49
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/DbTableDataWindowState.xcs49
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/DbTableWindowState.xcs49
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/DbuCommands.xcs54
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/DrawImpressCommands.xcs54
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/DrawWindowState.xcs49
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/Effects.xcs114
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/Factories.xcs72
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/GenericCategories.xcs49
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/GenericCommands.xcs54
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/GlobalSettings.xcs78
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/ImpressWindowState.xcs49
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/MathCommands.xcs54
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/MathWindowState.xcs49
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/StartModuleCommands.xcs54
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/StartModuleWindowState.xcs50
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/WindowContentFactories.xcs72
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/WindowState.xcs145
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/WriterCommands.xcs54
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/WriterFormWindowState.xcs49
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/WriterGlobalWindowState.xcs49
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/WriterReportWindowState.xcs49
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/WriterWebWindowState.xcs49
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/WriterWindowState.xcs49
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/XFormsWindowState.xcs49
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/makefile.mk80
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Views.xcs135
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/WebWizard.xcs547
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Writer.xcs7035
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/WriterWeb.xcs1061
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/makefile.mk82
-rw-r--r--officecfg/registry/schema/org/openoffice/Setup.xcs477
-rw-r--r--officecfg/registry/schema/org/openoffice/System.xcs63
-rw-r--r--officecfg/registry/schema/org/openoffice/TypeDetection/Filter.xcs79
-rw-r--r--officecfg/registry/schema/org/openoffice/TypeDetection/GraphicFilter.xcs62
-rw-r--r--officecfg/registry/schema/org/openoffice/TypeDetection/Misc.xcs69
-rw-r--r--officecfg/registry/schema/org/openoffice/TypeDetection/Types.xcs83
-rw-r--r--officecfg/registry/schema/org/openoffice/TypeDetection/UISort.xcs54
-rw-r--r--officecfg/registry/schema/org/openoffice/TypeDetection/makefile.mk46
-rw-r--r--officecfg/registry/schema/org/openoffice/UserProfile.xcs284
-rw-r--r--officecfg/registry/schema/org/openoffice/VCL.xcs115
-rw-r--r--officecfg/registry/schema/org/openoffice/makefile.mk49
-rw-r--r--officecfg/registry/schema/org/openoffice/ucb/Configuration.xcs94
-rw-r--r--officecfg/registry/schema/org/openoffice/ucb/Hierarchy.xcs81
-rw-r--r--officecfg/registry/schema/org/openoffice/ucb/InteractionHandler.xcs53
-rw-r--r--officecfg/registry/schema/org/openoffice/ucb/Store.xcs93
-rw-r--r--officecfg/registry/schema/org/openoffice/ucb/makefile.mk45
-rw-r--r--officecfg/util/alllang.xsl345
-rw-r--r--officecfg/util/component-conf.gen88
-rw-r--r--officecfg/util/component-ldif.gen85
-rw-r--r--officecfg/util/component-map.gen97
-rw-r--r--officecfg/util/data_val.xsl300
-rw-r--r--officecfg/util/delcomment.sed1
-rw-r--r--officecfg/util/makefile.mk49
-rw-r--r--officecfg/util/makefile.pmk34
-rw-r--r--officecfg/util/resource.xsl79
-rw-r--r--officecfg/util/sanity.xsl61
-rw-r--r--officecfg/util/schema_trim.xsl85
-rw-r--r--officecfg/util/schema_val.xsl132
-rw-r--r--officecfg/util/template.gen34
-rw-r--r--offuh/prj/build.lst4
-rw-r--r--offuh/prj/d.lst379
-rw-r--r--offuh/source/makefile.mk44
-rw-r--r--oovbaapi/genconstidl/ApiSymbols.dtd114
-rw-r--r--oovbaapi/genconstidl/access.api41368
-rw-r--r--oovbaapi/genconstidl/adodb.api6604
-rw-r--r--oovbaapi/genconstidl/api-to-idl.pl212
-rw-r--r--oovbaapi/genconstidl/dao.api6313
-rw-r--r--oovbaapi/genconstidl/excel.api109247
-rw-r--r--oovbaapi/genconstidl/makefile.mk67
-rw-r--r--oovbaapi/genconstidl/msforms.api11840
-rw-r--r--oovbaapi/genconstidl/oovbaconsts.xsl88
-rw-r--r--oovbaapi/genconstidl/powerpoint.api48000
-rw-r--r--oovbaapi/genconstidl/stdole.api233
-rw-r--r--oovbaapi/genconstidl/vba.api5697
-rw-r--r--oovbaapi/genconstidl/word.api99016
-rw-r--r--oovbaapi/ooo/vba/ControlProvider.idl51
-rw-r--r--oovbaapi/ooo/vba/XApplicationBase.idl63
-rw-r--r--oovbaapi/ooo/vba/XAssistant.idl57
-rw-r--r--oovbaapi/ooo/vba/XCollection.idl61
-rw-r--r--oovbaapi/ooo/vba/XCommandBar.idl59
-rw-r--r--oovbaapi/ooo/vba/XCommandBarButton.idl44
-rw-r--r--oovbaapi/ooo/vba/XCommandBarControl.idl59
-rw-r--r--oovbaapi/ooo/vba/XCommandBarControls.idl53
-rw-r--r--oovbaapi/ooo/vba/XCommandBarPopup.idl44
-rw-r--r--oovbaapi/ooo/vba/XCommandBars.idl53
-rw-r--r--oovbaapi/ooo/vba/XControlProvider.idl61
-rw-r--r--oovbaapi/ooo/vba/XDialogBase.idl55
-rw-r--r--oovbaapi/ooo/vba/XDialogsBase.idl57
-rw-r--r--oovbaapi/ooo/vba/XDocumentBase.idl62
-rw-r--r--oovbaapi/ooo/vba/XDocumentProperties.idl68
-rw-r--r--oovbaapi/ooo/vba/XDocumentProperty.idl103
-rw-r--r--oovbaapi/ooo/vba/XDocumentsBase.idl52
-rw-r--r--oovbaapi/ooo/vba/XErrObject.idl55
-rw-r--r--oovbaapi/ooo/vba/XFontBase.idl68
-rw-r--r--oovbaapi/ooo/vba/XGlobalsBase.idl50
-rw-r--r--oovbaapi/ooo/vba/XHelperInterface.idl68
-rw-r--r--oovbaapi/ooo/vba/XPageSetupBase.idl64
-rw-r--r--oovbaapi/ooo/vba/XPropValue.idl52
-rwxr-xr-xoovbaapi/ooo/vba/XVBAAppService.idl72
-rwxr-xr-xoovbaapi/ooo/vba/XVBADocService.idl72
-rw-r--r--oovbaapi/ooo/vba/XVBAToOOEventDescGen.idl46
-rw-r--r--oovbaapi/ooo/vba/XWindowBase.idl54
-rw-r--r--oovbaapi/ooo/vba/constants/makefile.mk61
-rw-r--r--oovbaapi/ooo/vba/excel/Globals.idl45
-rw-r--r--oovbaapi/ooo/vba/excel/Hyperlink.idl46
-rw-r--r--oovbaapi/ooo/vba/excel/Range.idl46
-rwxr-xr-xoovbaapi/ooo/vba/excel/SheetObject.idl131
-rwxr-xr-xoovbaapi/ooo/vba/excel/SheetObjects.idl150
-rw-r--r--oovbaapi/ooo/vba/excel/TextFrame.idl45
-rw-r--r--oovbaapi/ooo/vba/excel/Window.idl46
-rw-r--r--oovbaapi/ooo/vba/excel/Workbook.idl46
-rw-r--r--oovbaapi/ooo/vba/excel/Worksheet.idl50
-rw-r--r--oovbaapi/ooo/vba/excel/XApplication.idl102
-rw-r--r--oovbaapi/ooo/vba/excel/XAxes.idl56
-rw-r--r--oovbaapi/ooo/vba/excel/XAxis.idl259
-rw-r--r--oovbaapi/ooo/vba/excel/XAxisTitle.idl49
-rw-r--r--oovbaapi/ooo/vba/excel/XBorder.idl59
-rw-r--r--oovbaapi/ooo/vba/excel/XBorders.idl59
-rw-r--r--oovbaapi/ooo/vba/excel/XCharacters.idl62
-rw-r--r--oovbaapi/ooo/vba/excel/XChart.idl87
-rw-r--r--oovbaapi/ooo/vba/excel/XChartObject.idl61
-rw-r--r--oovbaapi/ooo/vba/excel/XChartObjects.idl60
-rw-r--r--oovbaapi/ooo/vba/excel/XChartTitle.idl50
-rw-r--r--oovbaapi/ooo/vba/excel/XCharts.idl60
-rw-r--r--oovbaapi/ooo/vba/excel/XComment.idl59
-rw-r--r--oovbaapi/ooo/vba/excel/XComments.idl55
-rw-r--r--oovbaapi/ooo/vba/excel/XDataLabel.idl59
-rw-r--r--oovbaapi/ooo/vba/excel/XDataLabels.idl56
-rw-r--r--oovbaapi/ooo/vba/excel/XDialog.idl52
-rw-r--r--oovbaapi/ooo/vba/excel/XDialogs.idl51
-rw-r--r--oovbaapi/ooo/vba/excel/XFont.idl59
-rw-r--r--oovbaapi/ooo/vba/excel/XFormat.idl135
-rw-r--r--oovbaapi/ooo/vba/excel/XFormatCondition.idl81
-rw-r--r--oovbaapi/ooo/vba/excel/XFormatConditions.idl68
-rw-r--r--oovbaapi/ooo/vba/excel/XGlobals.idl90
-rw-r--r--oovbaapi/ooo/vba/excel/XHPageBreak.idl52
-rw-r--r--oovbaapi/ooo/vba/excel/XHPageBreaks.idl67
-rw-r--r--oovbaapi/ooo/vba/excel/XHyperlink.idl64
-rwxr-xr-xoovbaapi/ooo/vba/excel/XHyperlinks.idl70
-rw-r--r--oovbaapi/ooo/vba/excel/XInterior.idl62
-rw-r--r--oovbaapi/ooo/vba/excel/XName.idl66
-rw-r--r--oovbaapi/ooo/vba/excel/XNames.idl54
-rw-r--r--oovbaapi/ooo/vba/excel/XOLEObject.idl63
-rw-r--r--oovbaapi/ooo/vba/excel/XOLEObjects.idl51
-rw-r--r--oovbaapi/ooo/vba/excel/XOutline.idl61
-rw-r--r--oovbaapi/ooo/vba/excel/XPageBreak.idl70
-rw-r--r--oovbaapi/ooo/vba/excel/XPageSetup.idl77
-rw-r--r--oovbaapi/ooo/vba/excel/XPane.idl54
-rw-r--r--oovbaapi/ooo/vba/excel/XPivotCache.idl57
-rw-r--r--oovbaapi/ooo/vba/excel/XPivotTable.idl61
-rw-r--r--oovbaapi/ooo/vba/excel/XPivotTables.idl59
-rw-r--r--oovbaapi/ooo/vba/excel/XRange.idl177
-rw-r--r--oovbaapi/ooo/vba/excel/XSeries.idl60
-rw-r--r--oovbaapi/ooo/vba/excel/XSeriesCollection.idl57
-rw-r--r--oovbaapi/ooo/vba/excel/XStyle.idl99
-rw-r--r--oovbaapi/ooo/vba/excel/XStyles.idl68
-rw-r--r--oovbaapi/ooo/vba/excel/XTextFrame.idl39
-rw-r--r--oovbaapi/ooo/vba/excel/XTitle.idl116
-rw-r--r--oovbaapi/ooo/vba/excel/XVPageBreak.idl51
-rw-r--r--oovbaapi/ooo/vba/excel/XVPageBreaks.idl68
-rw-r--r--oovbaapi/ooo/vba/excel/XValidation.idl68
-rw-r--r--oovbaapi/ooo/vba/excel/XWindow.idl95
-rw-r--r--oovbaapi/ooo/vba/excel/XWindows.idl56
-rw-r--r--oovbaapi/ooo/vba/excel/XWorkbook.idl69
-rw-r--r--oovbaapi/ooo/vba/excel/XWorkbooks.idl55
-rw-r--r--oovbaapi/ooo/vba/excel/XWorksheet.idl132
-rw-r--r--oovbaapi/ooo/vba/excel/XWorksheetFunction.idl65
-rw-r--r--oovbaapi/ooo/vba/excel/XWorksheets.idl56
-rw-r--r--oovbaapi/ooo/vba/excel/XlBuildInDialog.idl277
-rw-r--r--oovbaapi/ooo/vba/excel/makefile.mk110
-rw-r--r--oovbaapi/ooo/vba/makefile.mk68
-rw-r--r--oovbaapi/ooo/vba/msforms/MSFormReturnTypes.idl51
-rw-r--r--oovbaapi/ooo/vba/msforms/XButton.idl49
-rw-r--r--oovbaapi/ooo/vba/msforms/XColorFormat.idl43
-rw-r--r--oovbaapi/ooo/vba/msforms/XComboBox.idl58
-rw-r--r--oovbaapi/ooo/vba/msforms/XControl.idl74
-rw-r--r--oovbaapi/ooo/vba/msforms/XControls.idl55
-rw-r--r--oovbaapi/ooo/vba/msforms/XFillFormat.idl50
-rw-r--r--oovbaapi/ooo/vba/msforms/XGroupBox.idl48
-rw-r--r--oovbaapi/ooo/vba/msforms/XImage.idl48
-rw-r--r--oovbaapi/ooo/vba/msforms/XLabel.idl50
-rw-r--r--oovbaapi/ooo/vba/msforms/XLineFormat.idl57
-rw-r--r--oovbaapi/ooo/vba/msforms/XListBox.idl59
-rw-r--r--oovbaapi/ooo/vba/msforms/XMultiPage.idl50
-rw-r--r--oovbaapi/ooo/vba/msforms/XPages.idl53
-rw-r--r--oovbaapi/ooo/vba/msforms/XPictureFormat.idl45
-rw-r--r--oovbaapi/ooo/vba/msforms/XProgressBar.idl49
-rw-r--r--oovbaapi/ooo/vba/msforms/XRadioButton.idl50
-rw-r--r--oovbaapi/ooo/vba/msforms/XScrollBar.idl53
-rw-r--r--oovbaapi/ooo/vba/msforms/XShape.idl81
-rw-r--r--oovbaapi/ooo/vba/msforms/XShapeRange.idl71
-rw-r--r--oovbaapi/ooo/vba/msforms/XShapes.idl56
-rw-r--r--oovbaapi/ooo/vba/msforms/XSpinButton.idl51
-rw-r--r--oovbaapi/ooo/vba/msforms/XTextBox.idl52
-rw-r--r--oovbaapi/ooo/vba/msforms/XTextBoxShape.idl53
-rw-r--r--oovbaapi/ooo/vba/msforms/XTextFrame.idl47
-rw-r--r--oovbaapi/ooo/vba/msforms/XToggleButton.idl52
-rw-r--r--oovbaapi/ooo/vba/msforms/XUserForm.idl50
-rw-r--r--oovbaapi/ooo/vba/msforms/makefile.mk69
-rw-r--r--oovbaapi/ooo/vba/word/XAddin.idl58
-rw-r--r--oovbaapi/ooo/vba/word/XAddins.idl52
-rw-r--r--oovbaapi/ooo/vba/word/XApplication.idl67
-rw-r--r--oovbaapi/ooo/vba/word/XAutoTextEntries.idl52
-rw-r--r--oovbaapi/ooo/vba/word/XAutoTextEntry.idl56
-rw-r--r--oovbaapi/ooo/vba/word/XBookmark.idl58
-rw-r--r--oovbaapi/ooo/vba/word/XBookmarks.idl58
-rw-r--r--oovbaapi/ooo/vba/word/XBorder.idl56
-rw-r--r--oovbaapi/ooo/vba/word/XBorders.idl56
-rw-r--r--oovbaapi/ooo/vba/word/XDialog.idl52
-rw-r--r--oovbaapi/ooo/vba/word/XDialogs.idl51
-rw-r--r--oovbaapi/ooo/vba/word/XDocument.idl72
-rw-r--r--oovbaapi/ooo/vba/word/XDocuments.idl55
-rw-r--r--oovbaapi/ooo/vba/word/XField.idl44
-rw-r--r--oovbaapi/ooo/vba/word/XFields.idl54
-rw-r--r--oovbaapi/ooo/vba/word/XFind.idl84
-rw-r--r--oovbaapi/ooo/vba/word/XFont.idl55
-rw-r--r--oovbaapi/ooo/vba/word/XGlobals.idl59
-rw-r--r--oovbaapi/ooo/vba/word/XHeaderFooter.idl56
-rw-r--r--oovbaapi/ooo/vba/word/XOptions.idl65
-rw-r--r--oovbaapi/ooo/vba/word/XPageSetup.idl60
-rw-r--r--oovbaapi/ooo/vba/word/XPane.idl52
-rw-r--r--oovbaapi/ooo/vba/word/XPanes.idl52
-rw-r--r--oovbaapi/ooo/vba/word/XParagraph.idl52
-rw-r--r--oovbaapi/ooo/vba/word/XParagraphFormat.idl67
-rw-r--r--oovbaapi/ooo/vba/word/XParagraphs.idl52
-rw-r--r--oovbaapi/ooo/vba/word/XRange.idl75
-rw-r--r--oovbaapi/ooo/vba/word/XReplacement.idl51
-rw-r--r--oovbaapi/ooo/vba/word/XSection.idl55
-rw-r--r--oovbaapi/ooo/vba/word/XSections.idl54
-rw-r--r--oovbaapi/ooo/vba/word/XSelection.idl86
-rw-r--r--oovbaapi/ooo/vba/word/XStyle.idl55
-rw-r--r--oovbaapi/ooo/vba/word/XStyles.idl52
-rw-r--r--oovbaapi/ooo/vba/word/XSystem.idl53
-rw-r--r--oovbaapi/ooo/vba/word/XTable.idl78
-rw-r--r--oovbaapi/ooo/vba/word/XTables.idl71
-rw-r--r--oovbaapi/ooo/vba/word/XTemplate.idl53
-rw-r--r--oovbaapi/ooo/vba/word/XVariable.idl57
-rw-r--r--oovbaapi/ooo/vba/word/XVariables.idl54
-rw-r--r--oovbaapi/ooo/vba/word/XView.idl54
-rw-r--r--oovbaapi/ooo/vba/word/XWindow.idl59
-rw-r--r--oovbaapi/ooo/vba/word/XWrapFormat.idl45
-rw-r--r--oovbaapi/ooo/vba/word/makefile.mk86
-rw-r--r--oovbaapi/prj/build.lst9
-rw-r--r--oovbaapi/prj/d.lst15
-rw-r--r--oovbaapi/util/makefile.mk51
-rw-r--r--oovbaapi/util/makefile.pmk34
-rwxr-xr-xoowintool391
-rw-r--r--oox/inc/oox/core/binarycodec.hxx292
-rw-r--r--oox/inc/oox/core/binaryfilterbase.hxx62
-rw-r--r--oox/inc/oox/core/contexthandler.hxx117
-rw-r--r--oox/inc/oox/core/contexthandler2.hxx253
-rw-r--r--oox/inc/oox/core/fasttokenhandler.hxx65
-rw-r--r--oox/inc/oox/core/filterbase.hxx291
-rw-r--r--oox/inc/oox/core/filterdetect.hxx166
-rw-r--r--oox/inc/oox/core/fragmenthandler.hxx137
-rw-r--r--oox/inc/oox/core/fragmenthandler2.hxx115
-rw-r--r--oox/inc/oox/core/recordparser.hxx98
-rw-r--r--oox/inc/oox/core/relations.hxx102
-rw-r--r--oox/inc/oox/core/relationshandler.hxx61
-rw-r--r--oox/inc/oox/core/xmlfilterbase.hxx225
-rw-r--r--oox/inc/oox/dllapi.h39
-rw-r--r--oox/inc/oox/drawingml/chart/axiscontext.hxx127
-rw-r--r--oox/inc/oox/drawingml/chart/axisconverter.hxx71
-rw-r--r--oox/inc/oox/drawingml/chart/axismodel.hxx112
-rw-r--r--oox/inc/oox/drawingml/chart/chartcontextbase.hxx102
-rw-r--r--oox/inc/oox/drawingml/chart/chartconverter.hxx111
-rw-r--r--oox/inc/oox/drawingml/chart/chartdrawingfragment.hxx122
-rw-r--r--oox/inc/oox/drawingml/chart/chartspaceconverter.hxx64
-rw-r--r--oox/inc/oox/drawingml/chart/chartspacefragment.hxx62
-rw-r--r--oox/inc/oox/drawingml/chart/chartspacemodel.hxx78
-rw-r--r--oox/inc/oox/drawingml/chart/converterbase.hxx158
-rw-r--r--oox/inc/oox/drawingml/chart/datasourcecontext.hxx101
-rw-r--r--oox/inc/oox/drawingml/chart/datasourceconverter.hxx78
-rw-r--r--oox/inc/oox/drawingml/chart/datasourcemodel.hxx72
-rw-r--r--oox/inc/oox/drawingml/chart/modelbase.hxx141
-rw-r--r--oox/inc/oox/drawingml/chart/objectformatter.hxx173
-rw-r--r--oox/inc/oox/drawingml/chart/plotareacontext.hxx90
-rw-r--r--oox/inc/oox/drawingml/chart/plotareaconverter.hxx110
-rw-r--r--oox/inc/oox/drawingml/chart/plotareamodel.hxx94
-rw-r--r--oox/inc/oox/drawingml/chart/seriescontext.hxx273
-rw-r--r--oox/inc/oox/drawingml/chart/seriesconverter.hxx174
-rw-r--r--oox/inc/oox/drawingml/chart/seriesmodel.hxx244
-rw-r--r--oox/inc/oox/drawingml/chart/titlecontext.hxx90
-rw-r--r--oox/inc/oox/drawingml/chart/titleconverter.hxx113
-rw-r--r--oox/inc/oox/drawingml/chart/titlemodel.hxx96
-rw-r--r--oox/inc/oox/drawingml/chart/typegroupcontext.hxx171
-rw-r--r--oox/inc/oox/drawingml/chart/typegroupconverter.hxx205
-rw-r--r--oox/inc/oox/drawingml/chart/typegroupmodel.hxx103
-rw-r--r--oox/inc/oox/drawingml/clrscheme.hxx68
-rw-r--r--oox/inc/oox/drawingml/clrschemecontext.hxx68
-rw-r--r--oox/inc/oox/drawingml/color.hxx150
-rw-r--r--oox/inc/oox/drawingml/colorchoicecontext.hxx87
-rw-r--r--oox/inc/oox/drawingml/connectorshapecontext.hxx46
-rw-r--r--oox/inc/oox/drawingml/customshapegeometry.hxx77
-rw-r--r--oox/inc/oox/drawingml/customshapeproperties.hxx161
-rw-r--r--oox/inc/oox/drawingml/diagram/datamodelcontext.hxx54
-rw-r--r--oox/inc/oox/drawingml/diagram/diagram.hxx256
-rw-r--r--oox/inc/oox/drawingml/diagram/diagramfragmenthandler.hxx100
-rw-r--r--oox/inc/oox/drawingml/diagram/diagramlayoutatoms.hxx209
-rw-r--r--oox/inc/oox/drawingml/drawingmltypes.hxx188
-rw-r--r--oox/inc/oox/drawingml/embeddedwavaudiofile.hxx57
-rw-r--r--oox/inc/oox/drawingml/fillproperties.hxx206
-rw-r--r--oox/inc/oox/drawingml/fillpropertiesgroupcontext.hxx215
-rw-r--r--oox/inc/oox/drawingml/graphicshapecontext.hxx116
-rw-r--r--oox/inc/oox/drawingml/guidcontext.hxx49
-rw-r--r--oox/inc/oox/drawingml/lineproperties.hxx127
-rw-r--r--oox/inc/oox/drawingml/linepropertiescontext.hxx57
-rw-r--r--oox/inc/oox/drawingml/objectdefaultcontext.hxx49
-rw-r--r--oox/inc/oox/drawingml/shape.hxx218
-rw-r--r--oox/inc/oox/drawingml/shapecontext.hxx58
-rw-r--r--oox/inc/oox/drawingml/shapegroupcontext.hxx51
-rw-r--r--oox/inc/oox/drawingml/shapepropertiescontext.hxx49
-rw-r--r--oox/inc/oox/drawingml/shapestylecontext.hxx51
-rw-r--r--oox/inc/oox/drawingml/spdefcontext.hxx48
-rw-r--r--oox/inc/oox/drawingml/table/tablebackgroundstylecontext.hxx53
-rw-r--r--oox/inc/oox/drawingml/table/tablecell.hxx121
-rw-r--r--oox/inc/oox/drawingml/table/tablecellcontext.hxx54
-rw-r--r--oox/inc/oox/drawingml/table/tablecontext.hxx54
-rw-r--r--oox/inc/oox/drawingml/table/tablepartstylecontext.hxx53
-rw-r--r--oox/inc/oox/drawingml/table/tableproperties.hxx87
-rw-r--r--oox/inc/oox/drawingml/table/tablerow.hxx55
-rw-r--r--oox/inc/oox/drawingml/table/tablerowcontext.hxx55
-rw-r--r--oox/inc/oox/drawingml/table/tablestyle.hxx91
-rw-r--r--oox/inc/oox/drawingml/table/tablestylecellstylecontext.hxx54
-rw-r--r--oox/inc/oox/drawingml/table/tablestylecontext.hxx55
-rw-r--r--oox/inc/oox/drawingml/table/tablestylelist.hxx60
-rw-r--r--oox/inc/oox/drawingml/table/tablestylelistfragmenthandler.hxx63
-rw-r--r--oox/inc/oox/drawingml/table/tablestylepart.hxx79
-rw-r--r--oox/inc/oox/drawingml/table/tablestyletextstylecontext.hxx55
-rw-r--r--oox/inc/oox/drawingml/textbody.hxx77
-rw-r--r--oox/inc/oox/drawingml/textbodycontext.hxx69
-rw-r--r--oox/inc/oox/drawingml/textbodyproperties.hxx56
-rw-r--r--oox/inc/oox/drawingml/textbodypropertiescontext.hxx53
-rw-r--r--oox/inc/oox/drawingml/textcharacterproperties.hxx89
-rw-r--r--oox/inc/oox/drawingml/textcharacterpropertiescontext.hxx54
-rw-r--r--oox/inc/oox/drawingml/textfield.hxx68
-rw-r--r--oox/inc/oox/drawingml/textfieldcontext.hxx58
-rw-r--r--oox/inc/oox/drawingml/textfont.hxx80
-rw-r--r--oox/inc/oox/drawingml/textliststyle.hxx67
-rw-r--r--oox/inc/oox/drawingml/textliststylecontext.hxx51
-rw-r--r--oox/inc/oox/drawingml/textparagraph.hxx80
-rw-r--r--oox/inc/oox/drawingml/textparagraphproperties.hxx133
-rw-r--r--oox/inc/oox/drawingml/textparagraphpropertiescontext.hxx64
-rw-r--r--oox/inc/oox/drawingml/textrun.hxx68
-rw-r--r--oox/inc/oox/drawingml/textspacing.hxx81
-rw-r--r--oox/inc/oox/drawingml/theme.hxx116
-rw-r--r--oox/inc/oox/drawingml/themeelementscontext.hxx58
-rw-r--r--oox/inc/oox/drawingml/themefragmenthandler.hxx61
-rw-r--r--oox/inc/oox/drawingml/transform2dcontext.hxx58
-rw-r--r--oox/inc/oox/dump/biffdumper.hxx569
-rw-r--r--oox/inc/oox/dump/dffdumper.hxx82
-rw-r--r--oox/inc/oox/dump/dumperbase.hxx1979
-rw-r--r--oox/inc/oox/dump/oledumper.hxx935
-rw-r--r--oox/inc/oox/dump/pptxdumper.hxx78
-rw-r--r--oox/inc/oox/dump/xlsbdumper.hxx259
-rw-r--r--oox/inc/oox/export/drawingml.hxx115
-rw-r--r--oox/inc/oox/export/shapes.hxx162
-rw-r--r--oox/inc/oox/export/utils.hxx70
-rw-r--r--oox/inc/oox/export/vmlexport.hxx115
-rw-r--r--oox/inc/oox/helper/attributelist.hxx192
-rw-r--r--oox/inc/oox/helper/binaryinputstream.hxx291
-rw-r--r--oox/inc/oox/helper/binaryoutputstream.hxx161
-rw-r--r--oox/inc/oox/helper/binarystreambase.hxx147
-rw-r--r--oox/inc/oox/helper/containerhelper.hxx702
-rw-r--r--oox/inc/oox/helper/graphichelper.hxx179
-rw-r--r--oox/inc/oox/helper/helper.hxx325
-rw-r--r--oox/inc/oox/helper/modelobjecthelper.hxx94
-rw-r--r--oox/inc/oox/helper/progressbar.hxx145
-rw-r--r--oox/inc/oox/helper/propertymap.hxx106
-rw-r--r--oox/inc/oox/helper/propertyset.hxx170
-rw-r--r--oox/inc/oox/helper/recordinputstream.hxx58
-rw-r--r--oox/inc/oox/helper/storagebase.hxx195
-rwxr-xr-xoox/inc/oox/helper/textinputstream.hxx58
-rw-r--r--oox/inc/oox/helper/zipstorage.hxx95
-rwxr-xr-xoox/inc/oox/ole/axbinaryreader.hxx296
-rw-r--r--oox/inc/oox/ole/axcontrol.hxx836
-rw-r--r--oox/inc/oox/ole/axcontrolfragment.hxx81
-rw-r--r--oox/inc/oox/ole/olehelper.hxx143
-rw-r--r--oox/inc/oox/ole/oleobjecthelper.hxx86
-rwxr-xr-xoox/inc/oox/ole/olestorage.hxx116
-rwxr-xr-xoox/inc/oox/ole/vbacontrol.hxx209
-rw-r--r--oox/inc/oox/ole/vbahelper.hxx110
-rw-r--r--oox/inc/oox/ole/vbainputstream.hxx72
-rwxr-xr-xoox/inc/oox/ole/vbamodule.hxx96
-rw-r--r--oox/inc/oox/ole/vbaproject.hxx138
-rw-r--r--oox/inc/oox/ppt/animationspersist.hxx132
-rw-r--r--oox/inc/oox/ppt/backgroundproperties.hxx50
-rw-r--r--oox/inc/oox/ppt/headerfooter.hxx51
-rw-r--r--oox/inc/oox/ppt/layoutfragmenthandler.hxx49
-rw-r--r--oox/inc/oox/ppt/pptimport.hxx89
-rw-r--r--oox/inc/oox/ppt/pptshape.hxx72
-rw-r--r--oox/inc/oox/ppt/pptshapecontext.hxx46
-rw-r--r--oox/inc/oox/ppt/pptshapegroupcontext.hxx58
-rw-r--r--oox/inc/oox/ppt/pptshapepropertiescontext.hxx46
-rw-r--r--oox/inc/oox/ppt/presentationfragmenthandler.hxx72
-rw-r--r--oox/inc/oox/ppt/slidefragmenthandler.hxx62
-rw-r--r--oox/inc/oox/ppt/slidemastertextstylescontext.hxx51
-rw-r--r--oox/inc/oox/ppt/slidepersist.hxx155
-rw-r--r--oox/inc/oox/ppt/slidetimingcontext.hxx57
-rw-r--r--oox/inc/oox/ppt/slidetransition.hxx75
-rw-r--r--oox/inc/oox/ppt/slidetransitioncontext.hxx60
-rw-r--r--oox/inc/oox/ppt/soundactioncontext.hxx61
-rw-r--r--oox/inc/oox/ppt/timenode.hxx134
-rw-r--r--oox/inc/oox/ppt/timenodelistcontext.hxx74
-rw-r--r--oox/inc/oox/token/propertylist.hxx50
-rw-r--r--oox/inc/oox/token/tokenmap.hxx81
-rw-r--r--oox/inc/oox/vml/vmldrawing.hxx179
-rw-r--r--oox/inc/oox/vml/vmldrawingfragment.hxx66
-rw-r--r--oox/inc/oox/vml/vmlformatting.hxx190
-rw-r--r--oox/inc/oox/vml/vmlinputstream.hxx69
-rw-r--r--oox/inc/oox/vml/vmlshape.hxx330
-rw-r--r--oox/inc/oox/vml/vmlshapecontainer.hxx139
-rw-r--r--oox/inc/oox/vml/vmlshapecontext.hxx148
-rw-r--r--oox/inc/oox/xls/addressconverter.hxx692
-rw-r--r--oox/inc/oox/xls/autofiltercontext.hxx158
-rw-r--r--oox/inc/oox/xls/biffcodec.hxx185
-rw-r--r--oox/inc/oox/xls/biffdetector.hxx97
-rw-r--r--oox/inc/oox/xls/biffhelper.hxx608
-rw-r--r--oox/inc/oox/xls/biffinputstream.hxx447
-rw-r--r--oox/inc/oox/xls/biffoutputstream.hxx165
-rw-r--r--oox/inc/oox/xls/chartsheetfragment.hxx88
-rw-r--r--oox/inc/oox/xls/commentsbuffer.hxx102
-rw-r--r--oox/inc/oox/xls/commentsfragment.hxx74
-rw-r--r--oox/inc/oox/xls/condformatbuffer.hxx195
-rw-r--r--oox/inc/oox/xls/condformatcontext.hxx65
-rw-r--r--oox/inc/oox/xls/connectionsfragment.hxx65
-rw-r--r--oox/inc/oox/xls/defnamesbuffer.hxx221
-rw-r--r--oox/inc/oox/xls/drawingfragment.hxx206
-rw-r--r--oox/inc/oox/xls/excelchartconverter.hxx62
-rw-r--r--oox/inc/oox/xls/excelfilter.hxx101
-rw-r--r--oox/inc/oox/xls/excelhandlers.hxx386
-rw-r--r--oox/inc/oox/xls/externallinkbuffer.hxx401
-rw-r--r--oox/inc/oox/xls/externallinkfragment.hxx159
-rw-r--r--oox/inc/oox/xls/formulabase.hxx936
-rw-r--r--oox/inc/oox/xls/formulaparser.hxx170
-rw-r--r--oox/inc/oox/xls/numberformatsbuffer.hxx140
-rw-r--r--oox/inc/oox/xls/ooxformulaparser.hxx112
-rw-r--r--oox/inc/oox/xls/pagesettings.hxx220
-rw-r--r--oox/inc/oox/xls/pivotcachebuffer.hxx511
-rw-r--r--oox/inc/oox/xls/pivotcachefragment.hxx156
-rw-r--r--oox/inc/oox/xls/pivottablebuffer.hxx449
-rw-r--r--oox/inc/oox/xls/pivottablefragment.hxx118
-rw-r--r--oox/inc/oox/xls/querytablefragment.hxx57
-rw-r--r--oox/inc/oox/xls/richstring.hxx295
-rw-r--r--oox/inc/oox/xls/richstringcontext.hxx74
-rw-r--r--oox/inc/oox/xls/scenariobuffer.hxx155
-rw-r--r--oox/inc/oox/xls/scenariocontext.hxx81
-rw-r--r--oox/inc/oox/xls/sharedformulabuffer.hxx112
-rw-r--r--oox/inc/oox/xls/sharedstringsbuffer.hxx70
-rw-r--r--oox/inc/oox/xls/sharedstringsfragment.hxx64
-rw-r--r--oox/inc/oox/xls/sheetdatacontext.hxx174
-rw-r--r--oox/inc/oox/xls/stylesbuffer.hxx1078
-rw-r--r--oox/inc/oox/xls/stylesfragment.hxx160
-rw-r--r--oox/inc/oox/xls/tablebuffer.hxx135
-rw-r--r--oox/inc/oox/xls/tablefragment.hxx66
-rw-r--r--oox/inc/oox/xls/themebuffer.hxx64
-rw-r--r--oox/inc/oox/xls/unitconverter.hxx124
-rw-r--r--oox/inc/oox/xls/viewsettings.hxx231
-rw-r--r--oox/inc/oox/xls/webquerybuffer.hxx127
-rw-r--r--oox/inc/oox/xls/workbookfragment.hxx103
-rw-r--r--oox/inc/oox/xls/workbookhelper.hxx334
-rw-r--r--oox/inc/oox/xls/workbooksettings.hxx165
-rw-r--r--oox/inc/oox/xls/worksheetbuffer.hxx133
-rw-r--r--oox/inc/oox/xls/worksheetfragment.hxx197
-rw-r--r--oox/inc/oox/xls/worksheethelper.hxx471
-rw-r--r--oox/inc/oox/xls/worksheetsettings.hxx143
-rw-r--r--oox/prj/build.lst18
-rw-r--r--oox/prj/d.lst43
-rw-r--r--oox/source/core/binarycodec.cxx390
-rw-r--r--oox/source/core/binaryfilterbase.cxx67
-rw-r--r--oox/source/core/contexthandler.cxx153
-rw-r--r--oox/source/core/contexthandler2.cxx274
-rw-r--r--oox/source/core/facreg.cxx137
-rw-r--r--oox/source/core/fasttokenhandler.cxx92
-rw-r--r--oox/source/core/filterbase.cxx572
-rw-r--r--oox/source/core/filterdetect.cxx657
-rw-r--r--oox/source/core/fragmenthandler.cxx142
-rw-r--r--oox/source/core/fragmenthandler2.cxx152
-rw-r--r--oox/source/core/makefile.mk65
-rw-r--r--oox/source/core/recordparser.cxx351
-rw-r--r--oox/source/core/relations.cxx146
-rw-r--r--oox/source/core/relationshandler.cxx109
-rw-r--r--oox/source/core/xmlfilterbase.cxx539
-rw-r--r--oox/source/docprop/docprophandler.cxx693
-rw-r--r--oox/source/docprop/docprophandler.hxx92
-rw-r--r--oox/source/docprop/makefile.mk49
-rw-r--r--oox/source/docprop/ooxmldocpropimport.cxx227
-rw-r--r--oox/source/docprop/ooxmldocpropimport.hxx71
-rw-r--r--oox/source/drawingml/chart/axiscontext.cxx318
-rw-r--r--oox/source/drawingml/chart/axisconverter.cxx333
-rw-r--r--oox/source/drawingml/chart/axismodel.cxx81
-rw-r--r--oox/source/drawingml/chart/chartcontextbase.cxx120
-rw-r--r--oox/source/drawingml/chart/chartconverter.cxx93
-rw-r--r--oox/source/drawingml/chart/chartdrawingfragment.cxx235
-rw-r--r--oox/source/drawingml/chart/chartspaceconverter.cxx209
-rw-r--r--oox/source/drawingml/chart/chartspacefragment.cxx127
-rw-r--r--oox/source/drawingml/chart/chartspacemodel.cxx54
-rw-r--r--oox/source/drawingml/chart/converterbase.cxx422
-rw-r--r--oox/source/drawingml/chart/datasourcecontext.cxx231
-rw-r--r--oox/source/drawingml/chart/datasourceconverter.cxx92
-rw-r--r--oox/source/drawingml/chart/datasourcemodel.cxx60
-rw-r--r--oox/source/drawingml/chart/makefile.mk74
-rw-r--r--oox/source/drawingml/chart/modelbase.cxx76
-rw-r--r--oox/source/drawingml/chart/objectformatter.cxx1214
-rw-r--r--oox/source/drawingml/chart/plotareacontext.cxx185
-rw-r--r--oox/source/drawingml/chart/plotareaconverter.cxx455
-rw-r--r--oox/source/drawingml/chart/plotareamodel.cxx72
-rw-r--r--oox/source/drawingml/chart/seriescontext.cxx760
-rw-r--r--oox/source/drawingml/chart/seriesconverter.cxx624
-rw-r--r--oox/source/drawingml/chart/seriesmodel.cxx157
-rw-r--r--oox/source/drawingml/chart/titlecontext.cxx163
-rw-r--r--oox/source/drawingml/chart/titleconverter.cxx273
-rw-r--r--oox/source/drawingml/chart/titlemodel.cxx72
-rw-r--r--oox/source/drawingml/chart/typegroupcontext.cxx402
-rw-r--r--oox/source/drawingml/chart/typegroupconverter.cxx573
-rw-r--r--oox/source/drawingml/chart/typegroupmodel.cxx83
-rw-r--r--oox/source/drawingml/clrscheme.cxx82
-rw-r--r--oox/source/drawingml/clrschemecontext.cxx107
-rw-r--r--oox/source/drawingml/color.cxx670
-rw-r--r--oox/source/drawingml/colorchoicecontext.cxx161
-rw-r--r--oox/source/drawingml/connectorshapecontext.cxx81
-rw-r--r--oox/source/drawingml/customshapegeometry.cxx2068
-rw-r--r--oox/source/drawingml/customshapeproperties.cxx271
-rw-r--r--oox/source/drawingml/diagram/datamodelcontext.cxx337
-rw-r--r--oox/source/drawingml/diagram/diagram.cxx299
-rw-r--r--oox/source/drawingml/diagram/diagramdefinitioncontext.cxx117
-rw-r--r--oox/source/drawingml/diagram/diagramdefinitioncontext.hxx51
-rw-r--r--oox/source/drawingml/diagram/diagramfragmenthandler.cxx224
-rw-r--r--oox/source/drawingml/diagram/diagramlayoutatoms.cxx141
-rw-r--r--oox/source/drawingml/diagram/layoutnodecontext.cxx357
-rw-r--r--oox/source/drawingml/diagram/layoutnodecontext.hxx52
-rw-r--r--oox/source/drawingml/diagram/makefile.mk53
-rw-r--r--oox/source/drawingml/drawingmltypes.cxx295
-rw-r--r--oox/source/drawingml/embeddedwavaudiofile.cxx56
-rw-r--r--oox/source/drawingml/fillproperties.cxx490
-rw-r--r--oox/source/drawingml/fillpropertiesgroupcontext.cxx309
-rw-r--r--oox/source/drawingml/graphicshapecontext.cxx427
-rw-r--r--oox/source/drawingml/guidcontext.cxx50
-rw-r--r--oox/source/drawingml/hyperlinkcontext.cxx181
-rw-r--r--oox/source/drawingml/hyperlinkcontext.hxx58
-rw-r--r--oox/source/drawingml/lineproperties.cxx478
-rw-r--r--oox/source/drawingml/linepropertiescontext.cxx108
-rw-r--r--oox/source/drawingml/makefile.mk91
-rw-r--r--oox/source/drawingml/objectdefaultcontext.cxx61
-rw-r--r--oox/source/drawingml/shape.cxx541
-rw-r--r--oox/source/drawingml/shapecontext.cxx129
-rw-r--r--oox/source/drawingml/shapegroupcontext.cxx121
-rw-r--r--oox/source/drawingml/shapepropertiescontext.cxx121
-rw-r--r--oox/source/drawingml/shapestylecontext.cxx88
-rw-r--r--oox/source/drawingml/spdefcontext.cxx78
-rw-r--r--oox/source/drawingml/table/makefile.mk62
-rw-r--r--oox/source/drawingml/table/tablebackgroundstylecontext.cxx92
-rw-r--r--oox/source/drawingml/table/tablecell.cxx366
-rw-r--r--oox/source/drawingml/table/tablecellcontext.cxx127
-rw-r--r--oox/source/drawingml/table/tablecontext.cxx109
-rw-r--r--oox/source/drawingml/table/tablepartstylecontext.cxx77
-rw-r--r--oox/source/drawingml/table/tableproperties.cxx180
-rw-r--r--oox/source/drawingml/table/tablerow.cxx55
-rw-r--r--oox/source/drawingml/table/tablerowcontext.cxx80
-rw-r--r--oox/source/drawingml/table/tablestyle.cxx40
-rw-r--r--oox/source/drawingml/table/tablestylecellstylecontext.cxx126
-rw-r--r--oox/source/drawingml/table/tablestylecontext.cxx117
-rw-r--r--oox/source/drawingml/table/tablestylelist.cxx41
-rw-r--r--oox/source/drawingml/table/tablestylelistfragmenthandler.cxx84
-rw-r--r--oox/source/drawingml/table/tablestylepart.cxx49
-rw-r--r--oox/source/drawingml/table/tablestyletextstylecontext.cxx109
-rw-r--r--oox/source/drawingml/textbody.cxx72
-rw-r--r--oox/source/drawingml/textbodycontext.cxx214
-rw-r--r--oox/source/drawingml/textbodyproperties.cxx55
-rw-r--r--oox/source/drawingml/textbodypropertiescontext.cxx190
-rw-r--r--oox/source/drawingml/textcharacterproperties.cxx170
-rw-r--r--oox/source/drawingml/textcharacterpropertiescontext.cxx179
-rw-r--r--oox/source/drawingml/textfield.cxx195
-rw-r--r--oox/source/drawingml/textfieldcontext.cxx91
-rw-r--r--oox/source/drawingml/textfont.cxx104
-rw-r--r--oox/source/drawingml/textliststyle.cxx79
-rw-r--r--oox/source/drawingml/textliststylecontext.cxx112
-rw-r--r--oox/source/drawingml/textparagraph.cxx130
-rw-r--r--oox/source/drawingml/textparagraphproperties.cxx426
-rw-r--r--oox/source/drawingml/textparagraphpropertiescontext.cxx286
-rw-r--r--oox/source/drawingml/textrun.cxx121
-rw-r--r--oox/source/drawingml/textspacingcontext.cxx78
-rw-r--r--oox/source/drawingml/textspacingcontext.hxx57
-rw-r--r--oox/source/drawingml/texttabstoplistcontext.cxx97
-rw-r--r--oox/source/drawingml/texttabstoplistcontext.hxx58
-rw-r--r--oox/source/drawingml/theme.cxx109
-rw-r--r--oox/source/drawingml/themeelementscontext.cxx243
-rw-r--r--oox/source/drawingml/themefragmenthandler.cxx87
-rw-r--r--oox/source/drawingml/transform2dcontext.cxx81
-rw-r--r--oox/source/dump/biffdumper.cxx4371
-rw-r--r--oox/source/dump/biffdumper.ini2238
-rw-r--r--oox/source/dump/dffdumper.cxx323
-rw-r--r--oox/source/dump/dffdumper.ini651
-rw-r--r--oox/source/dump/dumperbase.cxx3215
-rw-r--r--oox/source/dump/dumperbase.ini396
-rw-r--r--oox/source/dump/makefile.mk53
-rw-r--r--oox/source/dump/oledumper.cxx2315
-rw-r--r--oox/source/dump/oledumper.ini888
-rw-r--r--oox/source/dump/pptxdumper.cxx147
-rw-r--r--oox/source/dump/pptxdumper.ini19
-rw-r--r--oox/source/dump/xlsbdumper.cxx2272
-rw-r--r--oox/source/dump/xlsbdumper.ini1079
-rw-r--r--oox/source/export/README2
-rw-r--r--oox/source/export/drawingml.cxx1394
-rw-r--r--oox/source/export/makefile.mk27
-rw-r--r--oox/source/export/preset-definitions-to-shape-types.pl1242
-rw-r--r--oox/source/export/presetShapeDefinitions.xml19915
-rw-r--r--oox/source/export/presetTextWarpDefinitions.xml1885
-rw-r--r--oox/source/export/shapes.cxx995
-rw-r--r--oox/source/export/vmlexport.cxx837
-rw-r--r--oox/source/helper/attributelist.cxx317
-rw-r--r--oox/source/helper/binaryinputstream.cxx333
-rw-r--r--oox/source/helper/binaryoutputstream.cxx137
-rw-r--r--oox/source/helper/binarystreambase.cxx161
-rw-r--r--oox/source/helper/containerhelper.cxx224
-rw-r--r--oox/source/helper/graphichelper.cxx383
-rw-r--r--oox/source/helper/makefile.mk61
-rw-r--r--oox/source/helper/modelobjecthelper.cxx91
-rw-r--r--oox/source/helper/progressbar.cxx185
-rw-r--r--oox/source/helper/propertymap.cxx307
-rw-r--r--oox/source/helper/propertyset.cxx185
-rw-r--r--oox/source/helper/recordinputstream.cxx71
-rw-r--r--oox/source/helper/storagebase.cxx274
-rwxr-xr-xoox/source/helper/textinputstream.cxx128
-rw-r--r--oox/source/helper/zipstorage.cxx211
-rwxr-xr-xoox/source/ole/axbinaryreader.cxx343
-rw-r--r--oox/source/ole/axcontrol.cxx1750
-rw-r--r--oox/source/ole/axcontrolfragment.cxx156
-rw-r--r--oox/source/ole/makefile.mk59
-rw-r--r--oox/source/ole/olehelper.cxx300
-rw-r--r--oox/source/ole/oleobjecthelper.cxx141
-rwxr-xr-xoox/source/ole/olestorage.cxx423
-rw-r--r--oox/source/ole/vbacontrol.cxx845
-rw-r--r--oox/source/ole/vbahelper.cxx85
-rw-r--r--oox/source/ole/vbainputstream.cxx185
-rw-r--r--oox/source/ole/vbamodule.cxx235
-rw-r--r--oox/source/ole/vbaproject.cxx453
-rw-r--r--oox/source/ppt/animationspersist.cxx202
-rw-r--r--oox/source/ppt/animationtypes.cxx74
-rw-r--r--oox/source/ppt/animationtypes.hxx47
-rw-r--r--oox/source/ppt/animvariantcontext.cxx124
-rw-r--r--oox/source/ppt/animvariantcontext.hxx60
-rw-r--r--oox/source/ppt/backgroundproperties.cxx65
-rw-r--r--oox/source/ppt/buildlistcontext.cxx113
-rw-r--r--oox/source/ppt/buildlistcontext.hxx64
-rw-r--r--oox/source/ppt/commonbehaviorcontext.cxx180
-rw-r--r--oox/source/ppt/commonbehaviorcontext.hxx82
-rw-r--r--oox/source/ppt/commontimenodecontext.cxx710
-rw-r--r--oox/source/ppt/commontimenodecontext.hxx62
-rw-r--r--oox/source/ppt/conditioncontext.cxx214
-rw-r--r--oox/source/ppt/conditioncontext.hxx84
-rw-r--r--oox/source/ppt/customshowlistcontext.cxx121
-rw-r--r--oox/source/ppt/customshowlistcontext.hxx63
-rw-r--r--oox/source/ppt/headerfootercontext.cxx66
-rw-r--r--oox/source/ppt/headerfootercontext.hxx50
-rw-r--r--oox/source/ppt/layoutfragmenthandler.cxx88
-rw-r--r--oox/source/ppt/makefile.mk76
-rw-r--r--oox/source/ppt/pptfilterhelpers.cxx140
-rw-r--r--oox/source/ppt/pptfilterhelpers.hxx104
-rw-r--r--oox/source/ppt/pptimport.cxx188
-rw-r--r--oox/source/ppt/pptshape.cxx281
-rw-r--r--oox/source/ppt/pptshapecontext.cxx219
-rw-r--r--oox/source/ppt/pptshapegroupcontext.cxx123
-rw-r--r--oox/source/ppt/pptshapepropertiescontext.cxx86
-rw-r--r--oox/source/ppt/presentationfragmenthandler.cxx392
-rw-r--r--oox/source/ppt/slidefragmenthandler.cxx208
-rw-r--r--oox/source/ppt/slidemastertextstylescontext.cxx90
-rw-r--r--oox/source/ppt/slidepersist.cxx319
-rw-r--r--oox/source/ppt/slidetimingcontext.cxx103
-rw-r--r--oox/source/ppt/slidetransition.cxx419
-rw-r--r--oox/source/ppt/slidetransitioncontext.cxx203
-rw-r--r--oox/source/ppt/soundactioncontext.cxx137
-rw-r--r--oox/source/ppt/timeanimvaluecontext.cxx102
-rw-r--r--oox/source/ppt/timeanimvaluecontext.hxx64
-rw-r--r--oox/source/ppt/timenode.cxx630
-rw-r--r--oox/source/ppt/timenodelistcontext.cxx1165
-rw-r--r--oox/source/ppt/timetargetelementcontext.cxx176
-rw-r--r--oox/source/ppt/timetargetelementcontext.hxx53
-rw-r--r--oox/source/shape/FastTokenHandlerService.cxx116
-rw-r--r--oox/source/shape/FastTokenHandlerService.hxx81
-rw-r--r--oox/source/shape/ShapeContextHandler.cxx373
-rw-r--r--oox/source/shape/ShapeContextHandler.hxx191
-rw-r--r--oox/source/shape/ShapeFilterBase.cxx74
-rw-r--r--oox/source/shape/ShapeFilterBase.hxx78
-rw-r--r--oox/source/shape/makefile.mk50
-rw-r--r--oox/source/token/gennamespaces.pl66
-rw-r--r--oox/source/token/genproperties.pl46
-rw-r--r--oox/source/token/gentoken.pl61
-rw-r--r--oox/source/token/makefile.mk78
-rw-r--r--oox/source/token/namespaces.txt49
-rw-r--r--oox/source/token/parsexsd.pl48
-rw-r--r--oox/source/token/properties.txt462
-rw-r--r--oox/source/token/propertylist.cxx56
-rw-r--r--oox/source/token/tokenmap.cxx114
-rw-r--r--oox/source/token/tokens.txt5665
-rw-r--r--oox/source/vml/makefile.mk54
-rw-r--r--oox/source/vml/vmldrawing.cxx167
-rw-r--r--oox/source/vml/vmldrawingfragment.cxx93
-rw-r--r--oox/source/vml/vmlformatting.cxx603
-rw-r--r--oox/source/vml/vmlinputstream.cxx280
-rw-r--r--oox/source/vml/vmlshape.cxx555
-rw-r--r--oox/source/vml/vmlshapecontainer.cxx133
-rw-r--r--oox/source/vml/vmlshapecontext.cxx330
-rw-r--r--oox/source/xls/addressconverter.cxx784
-rw-r--r--oox/source/xls/autofiltercontext.cxx775
-rw-r--r--oox/source/xls/biffcodec.cxx334
-rw-r--r--oox/source/xls/biffdetector.cxx233
-rw-r--r--oox/source/xls/biffhelper.cxx287
-rw-r--r--oox/source/xls/biffinputstream.cxx631
-rw-r--r--oox/source/xls/biffoutputstream.cxx208
-rw-r--r--oox/source/xls/chartsheetfragment.cxx292
-rw-r--r--oox/source/xls/commentsbuffer.cxx157
-rw-r--r--oox/source/xls/commentsfragment.cxx153
-rw-r--r--oox/source/xls/condformatbuffer.cxx787
-rw-r--r--oox/source/xls/condformatcontext.cxx107
-rw-r--r--oox/source/xls/connectionsfragment.cxx113
-rw-r--r--oox/source/xls/defnamesbuffer.cxx712
-rw-r--r--oox/source/xls/drawingfragment.cxx680
-rw-r--r--oox/source/xls/excelchartconverter.cxx125
-rw-r--r--oox/source/xls/excelfilter.cxx244
-rw-r--r--oox/source/xls/excelhandlers.cxx259
-rw-r--r--oox/source/xls/externallinkbuffer.cxx1143
-rw-r--r--oox/source/xls/externallinkfragment.cxx551
-rw-r--r--oox/source/xls/formulabase.cxx1750
-rw-r--r--oox/source/xls/formulaparser.cxx2861
-rw-r--r--oox/source/xls/makefile.mk100
-rw-r--r--oox/source/xls/numberformatsbuffer.cxx2123
-rw-r--r--oox/source/xls/ooxformulaparser.cxx225
-rw-r--r--oox/source/xls/pagesettings.cxx1255
-rw-r--r--oox/source/xls/pivotcachebuffer.cxx1548
-rw-r--r--oox/source/xls/pivotcachefragment.cxx465
-rw-r--r--oox/source/xls/pivottablebuffer.cxx1553
-rw-r--r--oox/source/xls/pivottablefragment.cxx317
-rw-r--r--oox/source/xls/querytablefragment.cxx56
-rw-r--r--oox/source/xls/richstring.cxx613
-rw-r--r--oox/source/xls/richstringcontext.cxx95
-rw-r--r--oox/source/xls/scenariobuffer.cxx306
-rw-r--r--oox/source/xls/scenariocontext.cxx124
-rw-r--r--oox/source/xls/sharedformulabuffer.cxx215
-rw-r--r--oox/source/xls/sharedstringsbuffer.cxx84
-rw-r--r--oox/source/xls/sharedstringsfragment.cxx104
-rw-r--r--oox/source/xls/sheetdatacontext.cxx992
-rw-r--r--oox/source/xls/stylesbuffer.cxx3447
-rw-r--r--oox/source/xls/stylesfragment.cxx331
-rw-r--r--oox/source/xls/tablebuffer.cxx173
-rw-r--r--oox/source/xls/tablefragment.cxx86
-rw-r--r--oox/source/xls/themebuffer.cxx122
-rw-r--r--oox/source/xls/unitconverter.cxx258
-rw-r--r--oox/source/xls/viewsettings.cxx832
-rw-r--r--oox/source/xls/webquerybuffer.cxx199
-rw-r--r--oox/source/xls/workbookfragment.cxx738
-rw-r--r--oox/source/xls/workbookhelper.cxx1005
-rw-r--r--oox/source/xls/workbooksettings.cxx370
-rw-r--r--oox/source/xls/worksheetbuffer.cxx261
-rw-r--r--oox/source/xls/worksheetfragment.cxx1202
-rw-r--r--oox/source/xls/worksheethelper.cxx2211
-rw-r--r--oox/source/xls/worksheetsettings.cxx338
-rw-r--r--oox/util/makefile.mk104
-rw-r--r--oox/util/makefile.pmk30
-rw-r--r--oox/util/oox.component58
-rw-r--r--oox/workben/ooxml-export-notes.txt220
-rw-r--r--openssl/makefile.mk173
-rw-r--r--openssl/openssl.patch134
-rw-r--r--openssl/openssllnx.patch3816
-rw-r--r--openssl/opensslmacosx.patch3751
-rwxr-xr-xopenssl/opensslmingw.patch109
-rw-r--r--openssl/opensslsol.patch3831
-rw-r--r--openssl/prj/build.lst3
-rw-r--r--openssl/prj/d.lst11
-rw-r--r--openssl/version.mk33
-rw-r--r--package/dtd/Manifest.dtd58
-rw-r--r--package/inc/ByteChucker.hxx67
-rw-r--r--package/inc/ByteGrabber.hxx77
-rw-r--r--package/inc/CRC32.hxx56
-rw-r--r--package/inc/Deflater.hxx66
-rw-r--r--package/inc/EncryptedDataHeader.hxx51
-rw-r--r--package/inc/EncryptionData.hxx43
-rw-r--r--package/inc/HashMaps.hxx63
-rw-r--r--package/inc/Inflater.hxx57
-rw-r--r--package/inc/PackageConstants.hxx52
-rw-r--r--package/inc/ZipEntry.hxx46
-rw-r--r--package/inc/ZipEnumeration.hxx43
-rw-r--r--package/inc/ZipFile.hxx198
-rw-r--r--package/inc/ZipOutputStream.hxx103
-rw-r--r--package/inc/ZipPackage.hxx189
-rw-r--r--package/inc/ZipPackageBuffer.hxx84
-rw-r--r--package/inc/ZipPackageFolder.hxx144
-rw-r--r--package/inc/makefile.mk47
-rw-r--r--package/inc/mutexholder.hxx131
-rw-r--r--package/inc/pch/precompiled_package.cxx29
-rw-r--r--package/inc/pch/precompiled_package.hxx32
-rw-r--r--package/inc/zipfileaccess.hxx109
-rw-r--r--package/prj/build.lst9
-rw-r--r--package/prj/d.lst7
-rw-r--r--package/qa/ofopxmlstorages/StorageTest.java7
-rw-r--r--package/qa/ofopxmlstorages/StorageUnitTest.java158
-rw-r--r--package/qa/ofopxmlstorages/Test01.java200
-rw-r--r--package/qa/ofopxmlstorages/Test02.java164
-rw-r--r--package/qa/ofopxmlstorages/Test03.java233
-rw-r--r--package/qa/ofopxmlstorages/Test04.java308
-rw-r--r--package/qa/ofopxmlstorages/Test05.java314
-rw-r--r--package/qa/ofopxmlstorages/Test06.java277
-rw-r--r--package/qa/ofopxmlstorages/Test07.java258
-rw-r--r--package/qa/ofopxmlstorages/Test08.java261
-rw-r--r--package/qa/ofopxmlstorages/TestHelper.java1098
-rw-r--r--package/qa/ofopxmlstorages/makefile.mk91
-rw-r--r--package/qa/storages/BorderedStream.java195
-rw-r--r--package/qa/storages/RegressionTest_114358.java190
-rw-r--r--package/qa/storages/RegressionTest_125919.java134
-rw-r--r--package/qa/storages/RegressionTest_i26398.java146
-rw-r--r--package/qa/storages/RegressionTest_i27773.java299
-rw-r--r--package/qa/storages/RegressionTest_i29169.java369
-rw-r--r--package/qa/storages/RegressionTest_i29321.java170
-rw-r--r--package/qa/storages/RegressionTest_i30400.java435
-rw-r--r--package/qa/storages/RegressionTest_i30677.java263
-rw-r--r--package/qa/storages/RegressionTest_i35095.java166
-rw-r--r--package/qa/storages/RegressionTest_i46848.java191
-rw-r--r--package/qa/storages/RegressionTest_i49755.java272
-rw-r--r--package/qa/storages/RegressionTest_i55821.java111
-rw-r--r--package/qa/storages/RegressionTest_i59886.java243
-rw-r--r--package/qa/storages/RegressionTest_i61909.java167
-rw-r--r--package/qa/storages/RegressionTest_i84234.java134
-rw-r--r--package/qa/storages/StorageTest.java7
-rw-r--r--package/qa/storages/StorageUnitTest.java326
-rw-r--r--package/qa/storages/Test01.java177
-rw-r--r--package/qa/storages/Test02.java163
-rw-r--r--package/qa/storages/Test03.java231
-rw-r--r--package/qa/storages/Test04.java307
-rw-r--r--package/qa/storages/Test05.java299
-rw-r--r--package/qa/storages/Test06.java279
-rw-r--r--package/qa/storages/Test07.java162
-rw-r--r--package/qa/storages/Test08.java230
-rw-r--r--package/qa/storages/Test09.java138
-rw-r--r--package/qa/storages/Test10.java232
-rw-r--r--package/qa/storages/Test11.java218
-rw-r--r--package/qa/storages/Test12.java240
-rw-r--r--package/qa/storages/Test13.java215
-rw-r--r--package/qa/storages/Test14.java188
-rw-r--r--package/qa/storages/Test15.java268
-rw-r--r--package/qa/storages/Test16.java159
-rw-r--r--package/qa/storages/Test17.java142
-rw-r--r--package/qa/storages/Test18.java172
-rw-r--r--package/qa/storages/TestHelper.java1661
-rw-r--r--package/qa/storages/makefile.mk116
-rw-r--r--package/source/manifest/Base64Codec.cxx204
-rw-r--r--package/source/manifest/Base64Codec.hxx45
-rw-r--r--package/source/manifest/ManifestDefines.hxx67
-rw-r--r--package/source/manifest/ManifestExport.cxx323
-rw-r--r--package/source/manifest/ManifestExport.hxx46
-rw-r--r--package/source/manifest/ManifestImport.cxx332
-rw-r--r--package/source/manifest/ManifestImport.hxx131
-rw-r--r--package/source/manifest/ManifestReader.cxx150
-rw-r--r--package/source/manifest/ManifestReader.hxx73
-rw-r--r--package/source/manifest/ManifestWriter.cxx135
-rw-r--r--package/source/manifest/ManifestWriter.hxx74
-rw-r--r--package/source/manifest/UnoRegister.cxx91
-rw-r--r--package/source/manifest/makefile.mk55
-rw-r--r--package/source/xstor/disposelistener.cxx57
-rw-r--r--package/source/xstor/disposelistener.hxx51
-rw-r--r--package/source/xstor/makefile.mk83
-rw-r--r--package/source/xstor/ocompinstream.cxx759
-rw-r--r--package/source/xstor/ocompinstream.hxx128
-rw-r--r--package/source/xstor/ohierarchyholder.cxx356
-rw-r--r--package/source/xstor/ohierarchyholder.hxx139
-rw-r--r--package/source/xstor/oseekinstream.cxx180
-rw-r--r--package/source/xstor/oseekinstream.hxx68
-rw-r--r--package/source/xstor/owriteablestream.cxx3613
-rw-r--r--package/source/xstor/owriteablestream.hxx411
-rw-r--r--package/source/xstor/register.cxx73
-rw-r--r--package/source/xstor/selfterminatefilestream.cxx153
-rw-r--r--package/source/xstor/selfterminatefilestream.hxx76
-rw-r--r--package/source/xstor/switchpersistencestream.cxx488
-rw-r--r--package/source/xstor/switchpersistencestream.hxx120
-rw-r--r--package/source/xstor/xfactory.cxx324
-rw-r--r--package/source/xstor/xfactory.hxx74
-rw-r--r--package/source/xstor/xstor.component35
-rw-r--r--package/source/xstor/xstor.dxp2
-rw-r--r--package/source/xstor/xstorage.cxx6175
-rw-r--r--package/source/xstor/xstorage.hxx807
-rw-r--r--package/source/zipapi/ByteChucker.cxx112
-rw-r--r--package/source/zipapi/ByteGrabber.cxx191
-rw-r--r--package/source/zipapi/CRC32.cxx96
-rw-r--r--package/source/zipapi/Deflater.cxx212
-rw-r--r--package/source/zipapi/EntryInputStream.cxx201
-rw-r--r--package/source/zipapi/EntryInputStream.hxx86
-rw-r--r--package/source/zipapi/Inflater.cxx162
-rw-r--r--package/source/zipapi/MemoryByteGrabber.hxx177
-rw-r--r--package/source/zipapi/XFileStream.cxx227
-rw-r--r--package/source/zipapi/XFileStream.hxx96
-rw-r--r--package/source/zipapi/XMemoryStream.cxx52
-rw-r--r--package/source/zipapi/XMemoryStream.hxx42
-rw-r--r--package/source/zipapi/XUnbufferedStream.cxx360
-rw-r--r--package/source/zipapi/XUnbufferedStream.hxx108
-rw-r--r--package/source/zipapi/ZipEnumeration.cxx53
-rw-r--r--package/source/zipapi/ZipFile.cxx1057
-rw-r--r--package/source/zipapi/ZipOutputStream.cxx429
-rw-r--r--package/source/zipapi/makefile.mk59
-rw-r--r--package/source/zippackage/ContentInfo.hxx69
-rw-r--r--package/source/zippackage/ZipPackage.cxx1719
-rw-r--r--package/source/zippackage/ZipPackageBuffer.cxx136
-rw-r--r--package/source/zippackage/ZipPackageEntry.cxx136
-rw-r--r--package/source/zippackage/ZipPackageEntry.hxx105
-rw-r--r--package/source/zippackage/ZipPackageFolder.cxx811
-rw-r--r--package/source/zippackage/ZipPackageFolderEnumeration.cxx79
-rw-r--r--package/source/zippackage/ZipPackageFolderEnumeration.hxx68
-rw-r--r--package/source/zippackage/ZipPackageSink.cxx48
-rw-r--r--package/source/zippackage/ZipPackageSink.hxx48
-rw-r--r--package/source/zippackage/ZipPackageStream.cxx797
-rw-r--r--package/source/zippackage/ZipPackageStream.hxx201
-rw-r--r--package/source/zippackage/makefile.mk63
-rw-r--r--package/source/zippackage/wrapstreamforshare.cxx180
-rw-r--r--package/source/zippackage/wrapstreamforshare.hxx73
-rw-r--r--package/source/zippackage/zipfileaccess.cxx492
-rw-r--r--package/util/exports.dxp2
-rw-r--r--package/util/makefile.mk85
-rw-r--r--package/util/package2.component44
-rw-r--r--packimages/pack/image-sort.lst342
-rw-r--r--packimages/pack/makefile.mk109
-rw-r--r--packimages/prj/build.lst3
-rw-r--r--packimages/prj/d.lst2
-rw-r--r--padmin/prj/build.lst3
-rw-r--r--padmin/prj/d.lst8
-rw-r--r--padmin/source/adddlg.cxx1128
-rw-r--r--padmin/source/adddlg.hxx248
-rw-r--r--padmin/source/cmddlg.cxx551
-rw-r--r--padmin/source/cmddlg.hxx122
-rw-r--r--padmin/source/desktopcontext.cxx59
-rw-r--r--padmin/source/desktopcontext.hxx52
-rw-r--r--padmin/source/fontentry.cxx668
-rw-r--r--padmin/source/fontentry.hxx137
-rw-r--r--padmin/source/helper.cxx327
-rw-r--r--padmin/source/helper.hxx126
-rw-r--r--padmin/source/makefile.mk115
-rw-r--r--padmin/source/newppdlg.cxx226
-rw-r--r--padmin/source/newppdlg.hxx76
-rw-r--r--padmin/source/padialog.cxx769
-rw-r--r--padmin/source/padialog.hrc285
-rw-r--r--padmin/source/padialog.hxx120
-rw-r--r--padmin/source/padialog.src1222
-rw-r--r--padmin/source/pamain.cxx176
-rw-r--r--padmin/source/progress.cxx103
-rw-r--r--padmin/source/progress.hxx66
-rw-r--r--padmin/source/prtsetup.cxx840
-rw-r--r--padmin/source/prtsetup.hxx214
-rw-r--r--padmin/source/psetupl.xpm76
-rw-r--r--padmin/source/rtsetup.hrc120
-rw-r--r--padmin/source/rtsetup.src614
-rw-r--r--padmin/source/spadmin.sh76
-rw-r--r--padmin/source/titlectrl.cxx102
-rw-r--r--padmin/source/titlectrl.hxx66
-rw-r--r--postprocess/checkdeliver/checkdeliver.pl307
-rw-r--r--postprocess/checkdeliver/makefile.mk43
-rw-r--r--postprocess/checkxml/checkxml.pl140
-rw-r--r--postprocess/checkxml/makefile.mk42
-rw-r--r--postprocess/packcomponents/makefile.mk382
-rw-r--r--postprocess/packconfig/macosx/macosx_menubar_modification.xsl26
-rw-r--r--postprocess/packconfig/makefile.mk42
-rwxr-xr-xpostprocess/packconfig/packconfig.pl291
-rw-r--r--postprocess/packregistry/makefile.mk547
-rw-r--r--postprocess/prj/build.lst9
-rw-r--r--postprocess/prj/d.lst7
-rwxr-xr-xpostprocess/rebase/coffbase.txt350
-rwxr-xr-xpostprocess/rebase/makefile.mk59
-rw-r--r--postprocess/rebase/no_rebase.txt33
-rwxr-xr-xpostprocess/rebase/rebase.pl302
-rw-r--r--postprocess/signing/makefile.mk60
-rw-r--r--postprocess/signing/no_signing.txt13
-rw-r--r--postprocess/signing/signing.pl273
-rw-r--r--psprint_config/configuration/delzip0
-rw-r--r--psprint_config/configuration/makefile.mk11
-rw-r--r--psprint_config/configuration/ppds/ADISTILL.PS416
-rw-r--r--psprint_config/configuration/ppds/APLW3101.PS385
-rw-r--r--psprint_config/configuration/ppds/APLW3201.PS496
-rw-r--r--psprint_config/configuration/ppds/APLW3601.PS666
-rw-r--r--psprint_config/configuration/ppds/APLW6101.PS597
-rw-r--r--psprint_config/configuration/ppds/APLW8101.PS885
-rw-r--r--psprint_config/configuration/ppds/APLW81F1.PS885
-rw-r--r--psprint_config/configuration/ppds/APLWBGR1.PS1081
-rw-r--r--psprint_config/configuration/ppds/APLWCOB1.PS565
-rw-r--r--psprint_config/configuration/ppds/APLWCSB1.PS580
-rw-r--r--psprint_config/configuration/ppds/APLWGRF1.PS747
-rw-r--r--psprint_config/configuration/ppds/APLWGRI1.PS746
-rw-r--r--psprint_config/configuration/ppds/APLWGRJ1.PS709
-rw-r--r--psprint_config/configuration/ppds/APLWIIF2.PS428
-rw-r--r--psprint_config/configuration/ppds/APLWIIG2.PS440
-rw-r--r--psprint_config/configuration/ppds/APLWLOT1.PS563
-rw-r--r--psprint_config/configuration/ppds/APL_IIF1.PS520
-rw-r--r--psprint_config/configuration/ppds/APL_IIG1.PS483
-rw-r--r--psprint_config/configuration/ppds/APL_NTR1.PS416
-rw-r--r--psprint_config/configuration/ppds/APNT518_.PS351
-rw-r--r--psprint_config/configuration/ppds/APNTX501.PS351
-rw-r--r--psprint_config/configuration/ppds/APNTXJ1_.PS412
-rw-r--r--psprint_config/configuration/ppds/APPL_230.PS350
-rw-r--r--psprint_config/configuration/ppds/APPL_380.PS329
-rw-r--r--psprint_config/configuration/ppds/APPL_422.PS330
-rw-r--r--psprint_config/configuration/ppds/APTOLLD1.PS660
-rw-r--r--psprint_config/configuration/ppds/APTOLLW1.PS656
-rw-r--r--psprint_config/configuration/ppds/CAECOGR1.PS591
-rw-r--r--psprint_config/configuration/ppds/DC1152_1.PS476
-rw-r--r--psprint_config/configuration/ppds/EFAX3010.PS1698
-rw-r--r--psprint_config/configuration/ppds/EFAX4010.PS1976
-rw-r--r--psprint_config/configuration/ppds/EFAX5010.PS2190
-rw-r--r--psprint_config/configuration/ppds/EFAX7010.PS1698
-rw-r--r--psprint_config/configuration/ppds/EFMX3010.PS1669
-rw-r--r--psprint_config/configuration/ppds/EFMX5010.PS2183
-rw-r--r--psprint_config/configuration/ppds/EFMX7010.PS1669
-rw-r--r--psprint_config/configuration/ppds/EFXJK1F3.PS1945
-rw-r--r--psprint_config/configuration/ppds/EFXJK2F3.PS2479
-rw-r--r--psprint_config/configuration/ppds/EFXJK303.PS1075
-rw-r--r--psprint_config/configuration/ppds/EFXJK3F3.PS1135
-rw-r--r--psprint_config/configuration/ppds/EP_08001.PS671
-rw-r--r--psprint_config/configuration/ppds/EP_15201.PS917
-rw-r--r--psprint_config/configuration/ppds/EP_30001.PS916
-rw-r--r--psprint_config/configuration/ppds/EP_50001.PS876
-rw-r--r--psprint_config/configuration/ppds/EP_82F21.PS952
-rw-r--r--psprint_config/configuration/ppds/EP_82F51.PS1051
-rw-r--r--psprint_config/configuration/ppds/EP_P0701.PS1356
-rw-r--r--psprint_config/configuration/ppds/EP_P1201.PS713
-rw-r--r--psprint_config/configuration/ppds/EP_STPH1.PS640
-rw-r--r--psprint_config/configuration/ppds/GENERIC.PS2
-rw-r--r--psprint_config/configuration/ppds/HP1200C1.PS585
-rw-r--r--psprint_config/configuration/ppds/HP2500C1.PS1099
-rw-r--r--psprint_config/configuration/ppds/HP3SI52_.PS435
-rw-r--r--psprint_config/configuration/ppds/HP3SIL21.PS588
-rw-r--r--psprint_config/configuration/ppds/HP4M3_V1.PS540
-rw-r--r--psprint_config/configuration/ppds/HP4M6_V1.PS540
-rw-r--r--psprint_config/configuration/ppds/HP4ML_V1.PS486
-rw-r--r--psprint_config/configuration/ppds/HP4MP3_1.PS428
-rw-r--r--psprint_config/configuration/ppds/HP4MP6_1.PS432
-rw-r--r--psprint_config/configuration/ppds/HP4PLUS3.PS306
-rw-r--r--psprint_config/configuration/ppds/HP4PLUS6.PS313
-rw-r--r--psprint_config/configuration/ppds/HP4SI3_1.PS751
-rw-r--r--psprint_config/configuration/ppds/HP4SI6_1.PS753
-rw-r--r--psprint_config/configuration/ppds/HPIID52_.PS406
-rw-r--r--psprint_config/configuration/ppds/HPIII52_.PS381
-rw-r--r--psprint_config/configuration/ppds/HPIIP52_.PS374
-rw-r--r--psprint_config/configuration/ppds/HPLJ3D1_.PS563
-rw-r--r--psprint_config/configuration/ppds/HPLJ3P1_.PS462
-rw-r--r--psprint_config/configuration/ppds/HPLJ4MV1.PS793
-rw-r--r--psprint_config/configuration/ppds/HPLJ5M_4.PS695
-rw-r--r--psprint_config/configuration/ppds/HPLJ5P_1.PS541
-rw-r--r--psprint_config/configuration/ppds/HPLJ5SI1.PS953
-rw-r--r--psprint_config/configuration/ppds/HPLJ5SIM.PS1006
-rw-r--r--psprint_config/configuration/ppds/HPLJ__31.PS407
-rw-r--r--psprint_config/configuration/ppds/HP_3D52_.PS430
-rw-r--r--psprint_config/configuration/ppds/HP_3P52_.PS382
-rw-r--r--psprint_config/configuration/ppds/HP__CLJ1.PS689
-rw-r--r--psprint_config/configuration/ppds/KD8650P1.PS946
-rw-r--r--psprint_config/configuration/ppds/KD92P001.PS1127
-rw-r--r--psprint_config/configuration/ppds/KDH00001.PS1533
-rw-r--r--psprint_config/configuration/ppds/KDH00002.PS1554
-rw-r--r--psprint_config/configuration/ppds/L10__425.PS424
-rw-r--r--psprint_config/configuration/ppds/L20__471.PS566
-rw-r--r--psprint_config/configuration/ppds/L20__493.PS564
-rw-r--r--psprint_config/configuration/ppds/L30__471.PS593
-rw-r--r--psprint_config/configuration/ppds/L30__493.PS592
-rw-r--r--psprint_config/configuration/ppds/L333_523.PS723
-rw-r--r--psprint_config/configuration/ppds/L33__523.PS487
-rw-r--r--psprint_config/configuration/ppds/L50__493.PS564
-rw-r--r--psprint_config/configuration/ppds/L533_523.PS632
-rw-r--r--psprint_config/configuration/ppds/L53__523.PS448
-rw-r--r--psprint_config/configuration/ppds/LEX4039P.PS673
-rw-r--r--psprint_config/configuration/ppds/LEX4079P.PS641
-rw-r--r--psprint_config/configuration/ppds/LEXOPTR_.PS741
-rw-r--r--psprint_config/configuration/ppds/LHCFLRJ5.PS2034
-rw-r--r--psprint_config/configuration/ppds/LHCOFLC5.PS1866
-rw-r--r--psprint_config/configuration/ppds/LHCOFLR5.PS1814
-rw-r--r--psprint_config/configuration/ppds/LHGUBEH3.PS1568
-rw-r--r--psprint_config/configuration/ppds/LHGUBHJ4.PS3358
-rw-r--r--psprint_config/configuration/ppds/LHHERHJ4.PS3680
-rw-r--r--psprint_config/configuration/ppds/LHHERIJ4.PS3672
-rw-r--r--psprint_config/configuration/ppds/LHHERKH3.PS1729
-rw-r--r--psprint_config/configuration/ppds/LHHERKI4.PS3468
-rw-r--r--psprint_config/configuration/ppds/LHHKPHJ7.PS3328
-rw-r--r--psprint_config/configuration/ppds/LHHKPIJ7.PS3136
-rw-r--r--psprint_config/configuration/ppds/LHHRKPH7.PS3108
-rw-r--r--psprint_config/configuration/ppds/LHHRKPI7.PS2916
-rw-r--r--psprint_config/configuration/ppds/LHQUSHJ4.PS3074
-rw-r--r--psprint_config/configuration/ppds/LHQUSIJ4.PS3204
-rw-r--r--psprint_config/configuration/ppds/LHQUSRH3.PS1426
-rw-r--r--psprint_config/configuration/ppds/LHQUSRI3.PS1491
-rw-r--r--psprint_config/configuration/ppds/LHSIGHJ4.PS3750
-rw-r--r--psprint_config/configuration/ppds/LHSIGIJ4.PS4192
-rw-r--r--psprint_config/configuration/ppds/LHSIGNH3.PS1764
-rw-r--r--psprint_config/configuration/ppds/LHSIGNI3.PS1985
-rw-r--r--psprint_config/configuration/ppds/LOPC1200.PS810
-rw-r--r--psprint_config/configuration/ppds/LOPC40.PS713
-rw-r--r--psprint_config/configuration/ppds/LOPC45.PS774
-rw-r--r--psprint_config/configuration/ppds/LOPE310.PS659
-rw-r--r--psprint_config/configuration/ppds/LOPM410.PS726
-rw-r--r--psprint_config/configuration/ppds/LOPS1255.PS1122
-rw-r--r--psprint_config/configuration/ppds/LOPS1625.PS1122
-rw-r--r--psprint_config/configuration/ppds/LOPS1855.PS1122
-rw-r--r--psprint_config/configuration/ppds/LOPS2455.PS1121
-rw-r--r--psprint_config/configuration/ppds/LOPS3455.PS1122
-rw-r--r--psprint_config/configuration/ppds/LOPT610.PS1113
-rw-r--r--psprint_config/configuration/ppds/LOPT612.PS1114
-rw-r--r--psprint_config/configuration/ppds/LOPT614.PS1109
-rw-r--r--psprint_config/configuration/ppds/LOPT616.PS1113
-rw-r--r--psprint_config/configuration/ppds/LOPTRAC.PS546
-rw-r--r--psprint_config/configuration/ppds/LOPTRAEP.PS693
-rw-r--r--psprint_config/configuration/ppds/LOPTRAK.PS752
-rw-r--r--psprint_config/configuration/ppds/LOPTRAN.PS1001
-rw-r--r--psprint_config/configuration/ppds/LOPTRAP.PS759
-rw-r--r--psprint_config/configuration/ppds/LOPTRAS.PS1141
-rw-r--r--psprint_config/configuration/ppds/LOPTRASC.PS714
-rw-r--r--psprint_config/configuration/ppds/LOPW810.PS1018
-rw-r--r--psprint_config/configuration/ppds/LOS1255P.PS1205
-rw-r--r--psprint_config/configuration/ppds/LOS1625P.PS1198
-rw-r--r--psprint_config/configuration/ppds/LOS1855P.PS1198
-rw-r--r--psprint_config/configuration/ppds/LOS2455P.PS1196
-rw-r--r--psprint_config/configuration/ppds/LOS3455P.PS1197
-rw-r--r--psprint_config/configuration/ppds/LWNT_518.PS345
-rw-r--r--psprint_config/configuration/ppds/SGENPRT.PS589
-rw-r--r--psprint_config/configuration/ppds/SGENT42.PS29
-rw-r--r--psprint_config/configuration/ppds/SNSPREC1.PS760
-rw-r--r--psprint_config/configuration/ppds/TK300PJ1.PS1284
-rw-r--r--psprint_config/configuration/ppds/TK300XJ1.PS1309
-rw-r--r--psprint_config/configuration/ppds/TK350171.PS551
-rw-r--r--psprint_config/configuration/ppds/TK350172.PS563
-rw-r--r--psprint_config/configuration/ppds/TK350691.PS1
-rw-r--r--psprint_config/configuration/ppds/TK350692.PS597
-rw-r--r--psprint_config/configuration/ppds/TK350PJ2.PS590
-rw-r--r--psprint_config/configuration/ppds/TK360J21.PS923
-rw-r--r--psprint_config/configuration/ppds/TK360J51.PS986
-rw-r--r--psprint_config/configuration/ppds/TK360J71.PS1030
-rw-r--r--psprint_config/configuration/ppds/TK450PJ1.PS1134
-rw-r--r--psprint_config/configuration/ppds/TK550171.PS692
-rw-r--r--psprint_config/configuration/ppds/TK550391.PS780
-rw-r--r--psprint_config/configuration/ppds/TK550PJ1.PS828
-rw-r--r--psprint_config/configuration/ppds/TKP350J2.PS599
-rw-r--r--psprint_config/configuration/ppds/TKP360P1.PS863
-rw-r--r--psprint_config/configuration/ppds/TKP380J1.PS1350
-rw-r--r--psprint_config/configuration/ppds/TKP380P1.PS1351
-rw-r--r--psprint_config/configuration/ppds/TKP450J1.PS1103
-rw-r--r--psprint_config/configuration/ppds/TKP450P1.PS1089
-rw-r--r--psprint_config/configuration/ppds/TKP550J1.PS760
-rw-r--r--psprint_config/configuration/ppds/TKP600J1.PS1459
-rw-r--r--psprint_config/configuration/ppds/TKPH3801.PS1271
-rw-r--r--psprint_config/configuration/ppds/TKPH4501.PS1060
-rw-r--r--psprint_config/configuration/ppds/TKPH6001.PS1401
-rw-r--r--psprint_config/configuration/ppds/XRD61354.PS789
-rw-r--r--psprint_config/configuration/ppds/XRD61801.PS789
-rw-r--r--psprint_config/configuration/ppds/XRN17000.PS1267
-rw-r--r--psprint_config/configuration/ppds/XRN24320.PS1696
-rw-r--r--psprint_config/configuration/ppds/XR_DC230.PS1178
-rw-r--r--psprint_config/configuration/ppds/delzip0
-rw-r--r--psprint_config/configuration/ppds/makefile.mk46
-rw-r--r--psprint_config/configuration/psprint.conf114
-rw-r--r--psprint_config/prj/build.lst4
-rw-r--r--psprint_config/prj/d.lst4
-rw-r--r--python/Python-2.6.1-mingw.patch1269
-rw-r--r--python/Python-2.6.1.patch232
-rw-r--r--python/Python-parallel-make.patch36
-rw-r--r--python/Python-ssl.patch210
-rw-r--r--python/makefile.mk154
-rw-r--r--python/prj/build.lst3
-rw-r--r--python/prj/d.lst109
-rw-r--r--python/pyversion.mk26
-rw-r--r--pyuno/demo/Addons.xcu21
-rw-r--r--pyuno/demo/biblioaccess.py35
-rw-r--r--pyuno/demo/hello_world_comp.py40
-rw-r--r--pyuno/demo/makefile.mk229
-rw-r--r--pyuno/demo/ooextract.py109
-rw-r--r--pyuno/demo/pyunoenv.bat6
-rw-r--r--pyuno/demo/pyunoenv.tcsh25
-rw-r--r--pyuno/demo/swriter.py105
-rw-r--r--pyuno/demo/swritercomp.py112
-rw-r--r--pyuno/demo/swritercompclient.py13
-rw-r--r--pyuno/doc/modes.sxdbin0 -> 7181 bytes-rw-r--r--pyuno/inc/pyuno/pyuno.hxx296
-rw-r--r--pyuno/prj/build.lst5
-rw-r--r--pyuno/prj/d.lst26
-rw-r--r--pyuno/source/loader/makefile.mk94
-rw-r--r--pyuno/source/loader/pythonloader.component34
-rw-r--r--pyuno/source/loader/pythonloader.py151
-rw-r--r--pyuno/source/loader/pyuno_loader.cxx239
-rw-r--r--pyuno/source/module/makefile.mk165
-rw-r--r--pyuno/source/module/pyuno4
-rw-r--r--pyuno/source/module/pyuno.cxx744
-rwxr-xr-xpyuno/source/module/pyuno.flt14
-rw-r--r--pyuno/source/module/pyuno_adapter.cxx437
-rw-r--r--pyuno/source/module/pyuno_callable.cxx273
-rw-r--r--pyuno/source/module/pyuno_dlopenwrapper.c60
-rw-r--r--pyuno/source/module/pyuno_except.cxx251
-rw-r--r--pyuno/source/module/pyuno_gc.cxx117
-rw-r--r--pyuno/source/module/pyuno_impl.hxx293
-rw-r--r--pyuno/source/module/pyuno_module.cxx717
-rw-r--r--pyuno/source/module/pyuno_runtime.cxx1058
-rw-r--r--pyuno/source/module/pyuno_type.cxx431
-rw-r--r--pyuno/source/module/pyuno_util.cxx249
-rw-r--r--pyuno/source/module/uno.py352
-rw-r--r--pyuno/source/module/unohelper.py304
-rwxr-xr-xpyuno/zipcore/makefile.mk132
-rw-r--r--pyuno/zipcore/python.cxx303
-rw-r--r--pyuno/zipcore/python.sh65
-rw-r--r--pyuno/zipcore/pyversion.inc28
-rwxr-xr-xqadevOOo/build.xml52
-rwxr-xr-xqadevOOo/makefile.mk51
-rw-r--r--qadevOOo/objdsc/acceptor.uno/com.sun.star.comp.io.Acceptor.csv2
-rw-r--r--qadevOOo/objdsc/acceptor/com.sun.star.comp.io.Acceptor.csv2
-rw-r--r--qadevOOo/objdsc/adabas/com.sun.star.comp.sdbcx.adabas.ODriver.csv5
-rw-r--r--qadevOOo/objdsc/ado/com.sun.star.comp.sdbc.ado.ODriver.csv5
-rw-r--r--qadevOOo/objdsc/basctl/com.sun.star.comp.basctl.AccessibleShape.csv23
-rw-r--r--qadevOOo/objdsc/basctl/com.sun.star.comp.basctl.AccessibleWindow.csv24
-rw-r--r--qadevOOo/objdsc/brdgfctr/com.sun.star.comp.remotebridges.BridgeFactory.csv6
-rw-r--r--qadevOOo/objdsc/bridgefac.uno/com.sun.star.comp.remotebridges.BridgeFactory.csv6
-rw-r--r--qadevOOo/objdsc/cached/com.sun.star.comp.ucb.CachedContentResultSetFactory.csv1
-rw-r--r--qadevOOo/objdsc/cached/com.sun.star.comp.ucb.CachedContentResultSetStubFactory.csv1
-rw-r--r--qadevOOo/objdsc/cached/com.sun.star.comp.ucb.CachedDynamicResultSetFactory.csv1
-rw-r--r--qadevOOo/objdsc/cached/com.sun.star.comp.ucb.CachedDynamicResultSetStubFactory.csv2
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.AdministrationProvider.csv6
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.ConfigurationProvider.csv6
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.ConfigurationProviderWrapper.csv6
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.OConfigurationRegistry.csv11
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.OInnerGroupInfoAccess.csv61
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.OInnerGroupUpdateAccess.csv72
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.OInnerSetInfoAccess.csv61
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.OInnerTreeSetUpdateAccess.csv72
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.OInnerValueSetUpdateAccess.csv72
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.ORootElementGroupInfoAccess.csv61
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.ORootElementGroupUpdateAccess.csv72
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.ORootElementSetInfoAccess.csv61
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.ORootElementTreeSetUpdateAccess.csv72
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.ORootElementValueSetUpdateAccess.csv72
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.OSetElementGroupInfoAccess.csv61
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.OSetElementGroupUpdateAccess.csv72
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.OSetElementSetInfoAccess.csv61
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.OSetElementTreeSetUpdateAccess.csv72
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.OSetElementValueSetUpdateAccess.csv72
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.backend.CopyImporter.csv5
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.backend.LayerUpdateMerger.csv18
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.backend.LocalDataImporter.csv1
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.backend.LocalHierarchyBrowser.csv1
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.backend.LocalSchemaSupplier.csv1
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.backend.LocalSingleBackend.csv11
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.backend.LocalSingleStratum.csv6
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.backend.MergeImporter.csv5
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.backend.MultiStratumBackend.csv10
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.backend.SingleBackendAdapter.csv10
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.backend.xml.LayerParser.csv4
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.backend.xml.LayerWriter.csv16
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.backend.xml.SchemaParser.csv6
-rw-r--r--qadevOOo/objdsc/cfgmgr2/com.sun.star.comp.configuration.bootstrap.BootstrapContext.csv2
-rw-r--r--qadevOOo/objdsc/cmdmail/com.sun.star.comp.system.SimpleCommandMail.csv6
-rw-r--r--qadevOOo/objdsc/configmgr/com.sun.star.comp.configuration.ConfigurationProvider.csv45
-rw-r--r--qadevOOo/objdsc/configmgr/com.sun.star.comp.configuration.DefaultProvider.csv33
-rw-r--r--qadevOOo/objdsc/connector.uno/com.sun.star.comp.io.Connector.csv1
-rw-r--r--qadevOOo/objdsc/connectr/com.sun.star.comp.io.Connector.csv1
-rw-r--r--qadevOOo/objdsc/corefl/com.sun.star.comp.stoc.CoreReflection.csv5
-rw-r--r--qadevOOo/objdsc/corereflection.uno/com.sun.star.comp.stoc.CoreReflection.csv5
-rw-r--r--qadevOOo/objdsc/cpld/com.sun.star.comp.stoc.DLLComponentLoader.csv5
-rw-r--r--qadevOOo/objdsc/dbaccess/com.sun.star.comp.dba.OCommandDefinition.csv13
-rw-r--r--qadevOOo/objdsc/dbaccess/com.sun.star.comp.dba.ODatabaseContext.csv13
-rw-r--r--qadevOOo/objdsc/dbaccess/com.sun.star.comp.dba.ODatabaseSource.csv29
-rw-r--r--qadevOOo/objdsc/dbaccess/com.sun.star.comp.dba.ORowSet.csv154
-rw-r--r--qadevOOo/objdsc/dbaccess/com.sun.star.comp.dbu.OInteractionHandler.csv1
-rw-r--r--qadevOOo/objdsc/dbaccess/com.sun.star.comp.dbu.SbaXGridControl.csv63
-rwxr-xr-xqadevOOo/objdsc/dbaccess/org.openoffice.comp.dba.OSingleSelectQueryComposer.csv24
-rw-r--r--qadevOOo/objdsc/dbaccess/org.openoffice.comp.dbu.ConnectionLineAccessibility.csv13
-rw-r--r--qadevOOo/objdsc/dbaccess/org.openoffice.comp.dbu.DBContentLoader.csv5
-rw-r--r--qadevOOo/objdsc/dbaccess/org.openoffice.comp.dbu.JoinViewAccessibility.csv13
-rw-r--r--qadevOOo/objdsc/dbaccess/org.openoffice.comp.dbu.ODatasourceAdministrationDialog.csv12
-rw-r--r--qadevOOo/objdsc/dbaccess/org.openoffice.comp.dbu.ODatasourceBrowser.csv40
-rw-r--r--qadevOOo/objdsc/dbaccess/org.openoffice.comp.dbu.OQueryDesign.csv11
-rw-r--r--qadevOOo/objdsc/dbaccess/org.openoffice.comp.dbu.OSQLMessageDialog.csv13
-rw-r--r--qadevOOo/objdsc/dbaccess/org.openoffice.comp.dbu.TableWindowAccessibility.csv13
-rw-r--r--qadevOOo/objdsc/dbpool/com.sun.star.comp.sdbc.OConnectionPool.csv4
-rw-r--r--qadevOOo/objdsc/defreg/com.sun.star.comp.stoc.NestedRegistry.csv9
-rw-r--r--qadevOOo/objdsc/dnd/com.sun.star.comp.datatransfer.dnd.OleDragAndDrop.csv18
-rw-r--r--qadevOOo/objdsc/dtrans/com.sun.star.comp.datatransfer.generic.csv19
-rw-r--r--qadevOOo/objdsc/dtransX11/com.sun.star.comp.datatransfer.X11.csv25
-rw-r--r--qadevOOo/objdsc/dynamicloader/com.sun.star.loader.Dynamic.csv5
-rw-r--r--qadevOOo/objdsc/file/com.sun.star.comp.sdbc.dbase.ODriver.csv9
-rw-r--r--qadevOOo/objdsc/file/com.sun.star.comp.sdbc.evoab.OEvoabDriver.csv9
-rw-r--r--qadevOOo/objdsc/file/com.sun.star.comp.sdbc.flat.ODriver.csv9
-rw-r--r--qadevOOo/objdsc/file/com.sun.star.sdbc.driver.calc.ODriver.csv9
-rw-r--r--qadevOOo/objdsc/file/com.sun.star.sdbc.driver.file.Driver.csv9
-rw-r--r--qadevOOo/objdsc/fileacc/com.sun.star.comp.ucb.SimpleFileAccess.csv17
-rw-r--r--qadevOOo/objdsc/fop/com.sun.star.comp.ui.dialogs.FolderPicker.csv12
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.form.ONavigationBarControl.csv36
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.form.ONavigationBarModel.csv60
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OButtonControl.csv49
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OButtonModel.csv78
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OCheckBoxControl.csv47
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OCheckBoxModel.csv95
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OComboBoxControl.csv67
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OComboBoxModel.csv97
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OCurrencyControl.csv78
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OCurrencyModel.csv97
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.ODatabaseForm.csv225
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.ODateControl.csv78
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.ODateModel.csv98
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OEditControl.csv57
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OEditModel.csv235
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OFileControlModel.csv67
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OFixedTextModel.csv63
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OFormattedControl.csv62
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OFormattedFieldWrapper.csv101
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OFormsCollection.csv27
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OGridControlModel.csv90
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OGroupBoxControl.csv36
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OGroupBoxModel.csv57
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OHiddenModel.csv23
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OImageButtonControl.csv45
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OImageButtonModel.csv63
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OImageControlControl.csv41
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OImageControlModel.csv75
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OListBoxControl.csv67
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OListBoxModel.csv95
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.ONumericControl.csv78
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.ONumericModel.csv97
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OPatternControl.csv68
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OPatternModel.csv84
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.ORadioButtonControl.csv46
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.ORadioButtonModel.csv95
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OScrollBarModel.csv69
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OSpinButtonModel.csv66
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OTimeControl.csv76
-rw-r--r--qadevOOo/objdsc/forms/com.sun.star.comp.forms.OTimeModel.csv96
-rw-r--r--qadevOOo/objdsc/fps/com.sun.star.comp.ui.dialogs.FilePicker.csv36
-rw-r--r--qadevOOo/objdsc/ftransl/com.sun.star.comp.datatransfer.DataFormatTranslator.csv7
-rwxr-xr-xqadevOOo/objdsc/fwk/com.sun.star.comp.framework.ControlMenuController.csv5
-rw-r--r--qadevOOo/objdsc/fwk/com.sun.star.comp.framework.Desktop.csv37
-rw-r--r--qadevOOo/objdsc/fwk/com.sun.star.comp.framework.DispatchRecorder.csv10
-rw-r--r--qadevOOo/objdsc/fwk/com.sun.star.comp.framework.DispatchRecorderSupplier.csv3
-rwxr-xr-xqadevOOo/objdsc/fwk/com.sun.star.comp.framework.FontMenuController.csv5
-rwxr-xr-xqadevOOo/objdsc/fwk/com.sun.star.comp.framework.FontSizeMenuController.csv5
-rwxr-xr-xqadevOOo/objdsc/fwk/com.sun.star.comp.framework.FooterMenuController.csv5
-rw-r--r--qadevOOo/objdsc/fwk/com.sun.star.comp.framework.Frame.csv30
-rwxr-xr-xqadevOOo/objdsc/fwk/com.sun.star.comp.framework.HeaderMenuController.csv5
-rw-r--r--qadevOOo/objdsc/fwk/com.sun.star.comp.framework.JobExecutor.csv1
-rw-r--r--qadevOOo/objdsc/fwk/com.sun.star.comp.framework.JobHandler.csv3
-rwxr-xr-xqadevOOo/objdsc/fwk/com.sun.star.comp.framework.LayoutManager.csv30
-rwxr-xr-xqadevOOo/objdsc/fwk/com.sun.star.comp.framework.MacrosMenuController.csv5
-rw-r--r--qadevOOo/objdsc/fwk/com.sun.star.comp.framework.MailToDispatcher.csv3
-rwxr-xr-xqadevOOo/objdsc/fwk/com.sun.star.comp.framework.MenuBarFactory.csv1
-rwxr-xr-xqadevOOo/objdsc/fwk/com.sun.star.comp.framework.ModuleManager.csv6
-rwxr-xr-xqadevOOo/objdsc/fwk/com.sun.star.comp.framework.ModuleUIConfigurationManager.csv21
-rwxr-xr-xqadevOOo/objdsc/fwk/com.sun.star.comp.framework.ModuleUIConfigurationManagerSupplier.csv1
-rwxr-xr-xqadevOOo/objdsc/fwk/com.sun.star.comp.framework.ObjectMenuController.csv5
-rwxr-xr-xqadevOOo/objdsc/fwk/com.sun.star.comp.framework.PopupMenuControllerFactory.csv6
-rw-r--r--qadevOOo/objdsc/fwk/com.sun.star.comp.framework.ServiceHandler.csv3
-rw-r--r--qadevOOo/objdsc/fwk/com.sun.star.comp.framework.SoundHandler.csv4
-rwxr-xr-xqadevOOo/objdsc/fwk/com.sun.star.comp.framework.StatusBarControllerFactory.csv6
-rwxr-xr-xqadevOOo/objdsc/fwk/com.sun.star.comp.framework.ToolBarsMenuController.csv5
-rwxr-xr-xqadevOOo/objdsc/fwk/com.sun.star.comp.framework.UICategoryDescription.csv5
-rwxr-xr-xqadevOOo/objdsc/fwk/com.sun.star.comp.framework.UICommandDescription.csv5
-rwxr-xr-xqadevOOo/objdsc/fwk/com.sun.star.comp.framework.UIConfigurationManager.csv23
-rwxr-xr-xqadevOOo/objdsc/fwk/com.sun.star.comp.framework.UIElementFactoryManager.csv5
-rw-r--r--qadevOOo/objdsc/fwk/com.sun.star.comp.framework.URLTransformer.csv4
-rw-r--r--qadevOOo/objdsc/fwl/com.sun.star.comp.framework.ContentHandlerFactory.csv10
-rw-r--r--qadevOOo/objdsc/fwl/com.sun.star.comp.framework.FilterFactory.csv16
-rw-r--r--qadevOOo/objdsc/fwl/com.sun.star.comp.framework.FrameLoaderFactory.csv10
-rw-r--r--qadevOOo/objdsc/fwl/com.sun.star.comp.framework.PathSettings.csv39
-rw-r--r--qadevOOo/objdsc/fwl/com.sun.star.comp.framework.SubstituteVariables.csv3
-rw-r--r--qadevOOo/objdsc/fwl/com.sun.star.comp.framework.TypeDetection.csv15
-rw-r--r--qadevOOo/objdsc/i18n/com.sun.star.i18n.BreakIterator.csv23
-rw-r--r--qadevOOo/objdsc/i18n/com.sun.star.i18n.CalendarImpl.csv24
-rw-r--r--qadevOOo/objdsc/i18n/com.sun.star.i18n.ChapterCollator.csv10
-rw-r--r--qadevOOo/objdsc/i18n/com.sun.star.i18n.CharacterClassification.csv13
-rw-r--r--qadevOOo/objdsc/i18n/com.sun.star.i18n.Collator.csv10
-rw-r--r--qadevOOo/objdsc/i18n/com.sun.star.i18n.IndexEntrySupplier.csv12
-rw-r--r--qadevOOo/objdsc/i18n/com.sun.star.i18n.LocaleData.csv15
-rw-r--r--qadevOOo/objdsc/i18n/com.sun.star.i18n.NumberFormatCodeMapper.csv7
-rw-r--r--qadevOOo/objdsc/i18n/com.sun.star.i18n.Transliteration.csv19
-rw-r--r--qadevOOo/objdsc/i18n/com.sun.star.util.TextSearch.csv3
-rw-r--r--qadevOOo/objdsc/implreg.uno/com.sun.star.comp.stoc.ImplementationRegistration.csv4
-rw-r--r--qadevOOo/objdsc/impreg/com.sun.star.comp.stoc.ImplementationRegistration.csv4
-rw-r--r--qadevOOo/objdsc/insp/com.sun.star.comp.stoc.Introspection.csv1
-rw-r--r--qadevOOo/objdsc/introspection.uno/com.sun.star.comp.stoc.Introspection.csv1
-rw-r--r--qadevOOo/objdsc/inv/com.sun.star.comp.stoc.Invocation.csv2
-rw-r--r--qadevOOo/objdsc/invadp/com.sun.star.comp.stoc.InvocationAdapterFactory.csv2
-rw-r--r--qadevOOo/objdsc/invocadapt.uno/com.sun.star.comp.stoc.InvocationAdapterFactory.csv2
-rw-r--r--qadevOOo/objdsc/invocation.uno/com.sun.star.comp.stoc.Invocation.csv2
-rw-r--r--qadevOOo/objdsc/javaloader.uno/com.sun.star.comp.stoc.JavaComponentLoader.csv5
-rw-r--r--qadevOOo/objdsc/javaloader/com.sun.star.comp.stoc.JavaComponentLoader.csv5
-rw-r--r--qadevOOo/objdsc/javavm.uno/com.sun.star.comp.stoc.JavaVirtualMachine.csv6
-rw-r--r--qadevOOo/objdsc/jdbc/com.sun.star.comp.sdbc.JDBCDriver.csv5
-rw-r--r--qadevOOo/objdsc/jen/com.sun.star.comp.stoc.JavaVirtualMachine.csv6
-rw-r--r--qadevOOo/objdsc/lng/com.sun.star.lingu2.DicList.csv18
-rw-r--r--qadevOOo/objdsc/lng/com.sun.star.lingu2.LinguProps.csv34
-rw-r--r--qadevOOo/objdsc/lng/com.sun.star.lingu2.LngSvcMgr.csv15
-rw-r--r--qadevOOo/objdsc/lnn/com.sun.star.lingu2.Hyphenator.csv15
-rw-r--r--qadevOOo/objdsc/lnn/com.sun.star.lingu2.SpellChecker.csv14
-rw-r--r--qadevOOo/objdsc/lnn/com.sun.star.lingu2.Thesaurus.csv11
-rw-r--r--qadevOOo/objdsc/mcnttype/com.sun.star.comp.datatransfer.MimeContentTypeFactory.csv6
-rw-r--r--qadevOOo/objdsc/mozab/com.sun.star.comp.sdbc.MozabDriver.csv5
-rw-r--r--qadevOOo/objdsc/namingservice.uno/com.sun.star.comp.stoc.NamingService.csv3
-rw-r--r--qadevOOo/objdsc/namingservice/com.sun.star.comp.stoc.NamingService.csv3
-rw-r--r--qadevOOo/objdsc/nestedreg.uno/com.sun.star.comp.stoc.NestedRegistry.csv9
-rw-r--r--qadevOOo/objdsc/odbc/com.sun.star.comp.sdbc.ODBCDriver.csv5
-rw-r--r--qadevOOo/objdsc/odbc/org.openoffice.comp.drivers.MySQL.Driver.csv9
-rw-r--r--qadevOOo/objdsc/pcr/com.sun.star.comp.extensions.ButtonNavigationHandler.csv19
-rw-r--r--qadevOOo/objdsc/pcr/com.sun.star.comp.extensions.CellBindingPropertyHandler.csv19
-rw-r--r--qadevOOo/objdsc/pcr/com.sun.star.comp.extensions.DefaultFormComponentInspectorModel.csv7
-rw-r--r--qadevOOo/objdsc/pcr/com.sun.star.comp.extensions.EFormsPropertyHandler.csv19
-rw-r--r--qadevOOo/objdsc/pcr/com.sun.star.comp.extensions.EditPropertyHandler.csv19
-rw-r--r--qadevOOo/objdsc/pcr/com.sun.star.comp.extensions.EventHandler.csv19
-rw-r--r--qadevOOo/objdsc/pcr/com.sun.star.comp.extensions.FormComponentPropertyHandler.csv19
-rwxr-xr-xqadevOOo/objdsc/pcr/com.sun.star.comp.extensions.GenericPropertyHandler.csv19
-rw-r--r--qadevOOo/objdsc/pcr/com.sun.star.comp.extensions.XSDValidationPropertyHandler.csv19
-rw-r--r--qadevOOo/objdsc/pcr/org.openoffice.comp.extensions.FormController.csv27
-rwxr-xr-xqadevOOo/objdsc/pcr/org.openoffice.comp.extensions.ObjectInspector.csv13
-rw-r--r--qadevOOo/objdsc/pcr/org.openoffice.comp.extensions.ObjectInspectorModel.csv7
-rw-r--r--qadevOOo/objdsc/proxyfac.uno/com.sun.star.comp.stoc.ProxyFactory.csv1
-rw-r--r--qadevOOo/objdsc/proxyfac/com.sun.star.comp.stoc.ProxyFactory.csv1
-rw-r--r--qadevOOo/objdsc/proxyset/com.sun.star.comp.system.SystemProxySettings.csv17
-rwxr-xr-xqadevOOo/objdsc/qadevOOo/bogus.SelfTest.csv7
-rw-r--r--qadevOOo/objdsc/rdbtdp/com.sun.star.comp.stoc.RegistryTypeDescriptionProvider.csv6
-rw-r--r--qadevOOo/objdsc/regtypeprov.uno/com.sun.star.comp.stoc.RegistryTypeDescriptionProvider.csv6
-rw-r--r--qadevOOo/objdsc/remotebridge.uno/com.sun.star.comp.remotebridges.Bridge.various.csv7
-rw-r--r--qadevOOo/objdsc/remotebridge/com.sun.star.comp.remotebridges.Bridge.various.csv7
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.Calc.XMLContentExporter.csv6
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.Calc.XMLContentImporter.csv14
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.Calc.XMLExporter.csv6
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.Calc.XMLImporter.csv14
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.Calc.XMLMetaExporter.csv6
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.Calc.XMLMetaImporter.csv14
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.Calc.XMLSettingsExporter.csv6
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.Calc.XMLSettingsImporter.csv14
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.Calc.XMLStylesExporter.csv6
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.Calc.XMLStylesImporter.csv14
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScAnnotationObj.csv17
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScAnnotationShapeObj.csv244
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScAnnotationsObj.csv7
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScAreaLinkObj.csv19
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScAreaLinksObj.csv7
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScAutoFormatFieldObj.csv50
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScAutoFormatObj.csv20
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScAutoFormatsObj.csv11
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScCellCursorObj.csv239
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScCellFieldObj.csv16
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScCellFieldsObj.csv6
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScCellFormatsEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScCellFormatsObj.csv5
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScCellObj.csv223
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScCellRangeObj.csv226
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScCellRangesObj.csv206
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScCellSearchObj.csv21
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScCellTextCursor.csv180
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScCellsEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScCellsObj.csv3
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScChartObj.csv9
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScChartsObj.csv10
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScConsolidationDescriptor.csv12
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScDDELinkObj.csv8
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScDDELinksObj.csv8
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScDataPilotFieldGroupItemObj.csv2
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScDataPilotFieldGroupObj.csv10
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScDataPilotFieldGroupsObj.csv8
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScDataPilotFieldObj.csv28
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScDataPilotFieldsObj.csv8
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScDataPilotItemObj.csv11
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScDataPilotItemsObj.csv8
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScDataPilotTableObj.csv20
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScDataPilotTablesObj.csv11
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScDatabaseRangeObj.csv28
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScDatabaseRangesObj.csv10
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScDocumentConfiguration.csv49
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScDrawPageObj.csv11
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScDrawPagesObj.csv8
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScFilterDescriptorBase.csv18
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScFunctionListObj.csv9
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScHeaderFieldObj.csv16
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScHeaderFieldsObj.csv6
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScHeaderFooterContentObj.csv3
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScHeaderFooterTextCursor.csv180
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScHeaderFooterTextObj.csv21
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScIndexEnumeration_CellAnnotationsEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScIndexEnumeration_CellAreaLinksEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScIndexEnumeration_DDELinksEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScIndexEnumeration_DataPilotFieldsEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScIndexEnumeration_DataPilotItemsEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScIndexEnumeration_DataPilotTablesEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScIndexEnumeration_DatabaseRangesEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScIndexEnumeration_FunctionDescriptionEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScIndexEnumeration_LabelRangesEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScIndexEnumeration_NamedRangesEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScIndexEnumeration_ScenariosEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScIndexEnumeration_SheetCellRangesEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScIndexEnumeration_SheetLinksEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScIndexEnumeration_SpreadsheetViewPanesEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScIndexEnumeration_SpreadsheetsEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScIndexEnumeration_SubTotalFieldsEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScIndexEnumeration_TableAutoFormatEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScIndexEnumeration_TableChartsEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScIndexEnumeration_TableColumnsEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScIndexEnumeration_TableConditionalEntryEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScIndexEnumeration_TableRowsEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScIndexEnumeration_TextFieldEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScLabelRangeObj.csv4
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScLabelRangesObj.csv7
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScModelObj.csv94
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScNamedRangeObj.csv9
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScNamedRangesObj.csv12
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScPageObj.csv11
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScRecentFunctionsObj.csv3
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScScenariosObj.csv10
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScShapeObj.csv29
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScSheetLinkObj.csv15
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScSheetLinksObj.csv8
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScSpreadsheetSettings.csv25
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScSpreadsheetSettingsObj.csv24
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScStyleFamiliesObj.csv7
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScStyleFamilyObj.csv10
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScStyleObj.csv27
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScSubTotalDescriptorBase.csv22
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScSubTotalFieldObj.csv4
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScTabViewObj.csv86
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScTableColumnObj.csv16
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScTableColumnsObj.csv10
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScTableConditionalEntry.csv10
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScTableConditionalFormat.csv11
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScTableRowObj.csv14
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScTableRowsObj.csv7
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScTableSheetObj.csv293
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScTableSheetsObj.csv14
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScTableValidationObj.csv25
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScUniqueCellFormatsEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScUniqueCellFormatsObj.csv5
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.office.ScViewPaneObj.csv11
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.unknown.AccessibleEditableTextPara_HeaderFooter.csv52
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.unknown.AccessibleEditableTextPara_PreviewCell.csv52
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.unknown.AccessibleEditableTextPara_PreviewNote.csv52
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.unknown.ScAccessibleCell.csv40
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.unknown.ScAccessibleCsvCell.csv36
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.unknown.ScAccessibleCsvGrid.csv45
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.unknown.ScAccessibleCsvRuler.csv36
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.unknown.ScAccessibleDocument.csv28
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.unknown.ScAccessibleDocumentPagePreview.csv21
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.unknown.ScAccessiblePageHeader.csv21
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.unknown.ScAccessiblePageHeaderArea.csv21
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.unknown.ScAccessiblePreviewCell.csv32
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.unknown.ScAccessiblePreviewHeaderCell.csv32
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.unknown.ScAccessiblePreviewTable.csv47
-rw-r--r--qadevOOo/objdsc/sc/com.sun.star.comp.unknown.ScAccessibleSpreadsheet.csv47
-rw-r--r--qadevOOo/objdsc/sch/com.sun.star.comp.chart.AccAxis.csv25
-rw-r--r--qadevOOo/objdsc/sch/com.sun.star.comp.chart.AccDataPoint.csv25
-rw-r--r--qadevOOo/objdsc/sch/com.sun.star.comp.chart.AccDataSeries.csv25
-rw-r--r--qadevOOo/objdsc/sch/com.sun.star.comp.chart.AccDiagram.csv25
-rw-r--r--qadevOOo/objdsc/sch/com.sun.star.comp.chart.AccFloor.csv25
-rw-r--r--qadevOOo/objdsc/sch/com.sun.star.comp.chart.AccGrid.csv25
-rw-r--r--qadevOOo/objdsc/sch/com.sun.star.comp.chart.AccLegend.csv25
-rw-r--r--qadevOOo/objdsc/sch/com.sun.star.comp.chart.AccLegendEntry.csv25
-rw-r--r--qadevOOo/objdsc/sch/com.sun.star.comp.chart.AccStatisticsObject.csv25
-rw-r--r--qadevOOo/objdsc/sch/com.sun.star.comp.chart.AccTitle.csv25
-rw-r--r--qadevOOo/objdsc/sch/com.sun.star.comp.chart.AccWall.csv25
-rw-r--r--qadevOOo/objdsc/sch/com.sun.star.comp.chart.AccessibleDocumentView.csv22
-rw-r--r--qadevOOo/objdsc/sch/com.sun.star.comp.office.AccArea.csv25
-rw-r--r--qadevOOo/objdsc/sch/com.sun.star.comp.office.ChXChartAxis.csv92
-rw-r--r--qadevOOo/objdsc/sch/com.sun.star.comp.office.ChXChartData.csv4
-rw-r--r--qadevOOo/objdsc/sch/com.sun.star.comp.office.ChXChartDataArray.csv10
-rw-r--r--qadevOOo/objdsc/sch/com.sun.star.comp.office.ChXChartDocument.csv37
-rw-r--r--qadevOOo/objdsc/sch/com.sun.star.comp.office.ChXChartView.csv10
-rw-r--r--qadevOOo/objdsc/sch/com.sun.star.comp.office.ChXDataPoint.csv97
-rw-r--r--qadevOOo/objdsc/sch/com.sun.star.comp.office.ChXDataRow.csv109
-rw-r--r--qadevOOo/objdsc/sch/com.sun.star.comp.office.ChXDiagram.csv80
-rw-r--r--qadevOOo/objdsc/sch/com.sun.star.comp.office.ChartArea.csv43
-rw-r--r--qadevOOo/objdsc/sch/com.sun.star.comp.office.ChartGrid.csv21
-rw-r--r--qadevOOo/objdsc/sch/com.sun.star.comp.office.ChartLegend.csv113
-rw-r--r--qadevOOo/objdsc/sch/com.sun.star.comp.office.ChartLine.csv21
-rw-r--r--qadevOOo/objdsc/sch/com.sun.star.comp.office.ChartTitle.csv79
-rw-r--r--qadevOOo/objdsc/sd/com.sun.star.comp.office.SdDocLinkTargets.csv5
-rw-r--r--qadevOOo/objdsc/sd/com.sun.star.comp.office.SdDrawPage.csv37
-rw-r--r--qadevOOo/objdsc/sd/com.sun.star.comp.office.SdDrawPagesAccess.csv8
-rw-r--r--qadevOOo/objdsc/sd/com.sun.star.comp.office.SdGenericDrawPage.csv34
-rw-r--r--qadevOOo/objdsc/sd/com.sun.star.comp.office.SdLayer.csv11
-rw-r--r--qadevOOo/objdsc/sd/com.sun.star.comp.office.SdLayerManager.csv11
-rw-r--r--qadevOOo/objdsc/sd/com.sun.star.comp.office.SdMasterPage.csv34
-rw-r--r--qadevOOo/objdsc/sd/com.sun.star.comp.office.SdMasterPagesAccess.csv6
-rw-r--r--qadevOOo/objdsc/sd/com.sun.star.comp.office.SdPageLinkTargets.csv5
-rw-r--r--qadevOOo/objdsc/sd/com.sun.star.comp.office.SdXCustomPresentation.csv9
-rw-r--r--qadevOOo/objdsc/sd/com.sun.star.comp.office.SdXCustomPresentationAccess.csv10
-rw-r--r--qadevOOo/objdsc/sd/com.sun.star.comp.office.SdXImpressDocument.csv60
-rw-r--r--qadevOOo/objdsc/sd/com.sun.star.comp.office.SdXPresentation.csv22
-rw-r--r--qadevOOo/objdsc/sd/com.sun.star.comp.office.SdXShape.csv29
-rw-r--r--qadevOOo/objdsc/sd/com.sun.star.comp.unknown.AccessibleDrawDocumentView.csv22
-rw-r--r--qadevOOo/objdsc/sd/com.sun.star.comp.unknown.AccessibleOutlineView.csv13
-rw-r--r--qadevOOo/objdsc/sd/com.sun.star.comp.unknown.AccessibleSlideView.csv22
-rw-r--r--qadevOOo/objdsc/sd/com.sun.star.comp.unknown.DrawController_DrawView.csv58
-rw-r--r--qadevOOo/objdsc/sd/com.sun.star.comp.unknown.DrawController_HandoutView.csv58
-rw-r--r--qadevOOo/objdsc/sd/com.sun.star.comp.unknown.DrawController_NotesView.csv58
-rw-r--r--qadevOOo/objdsc/sd/com.sun.star.comp.unknown.DrawController_OutlineView.csv58
-rw-r--r--qadevOOo/objdsc/sd/com.sun.star.comp.unknown.DrawController_PresentationView.csv58
-rw-r--r--qadevOOo/objdsc/servicemgr.uno/com.sun.star.comp.stoc.OServiceManager.csv28
-rw-r--r--qadevOOo/objdsc/sfx/com.sun.star.comp.office.FrameLoader.csv5
-rw-r--r--qadevOOo/objdsc/sfx/com.sun.star.comp.sfx2.AppDispatchProvider.csv3
-rw-r--r--qadevOOo/objdsc/sfx/com.sun.star.comp.sfx2.DocumentTemplates.csv9
-rw-r--r--qadevOOo/objdsc/sfx/com.sun.star.comp.sfx2.SfxMacroLoader.csv3
-rw-r--r--qadevOOo/objdsc/sfx/com.sun.star.comp.sfx2.StandaloneDocumentInfo.csv46
-rw-r--r--qadevOOo/objdsc/shlibloader.uno/com.sun.star.comp.stoc.DLLComponentLoader.csv5
-rw-r--r--qadevOOo/objdsc/simplereg.uno/com.sun.star.comp.stoc.SimpleRegistry.csv8
-rw-r--r--qadevOOo/objdsc/simreg/com.sun.star.comp.stoc.SimpleRegistry.csv8
-rw-r--r--qadevOOo/objdsc/sm/com.sun.star.comp.Math.XMLExporter.csv6
-rw-r--r--qadevOOo/objdsc/sm/com.sun.star.comp.Math.XMLImporter.csv14
-rw-r--r--qadevOOo/objdsc/sm/com.sun.star.comp.Math.XMLMetaExporter.csv6
-rw-r--r--qadevOOo/objdsc/sm/com.sun.star.comp.Math.XMLMetaImporter.csv14
-rw-r--r--qadevOOo/objdsc/sm/com.sun.star.comp.Math.XMLSettingsExporter.csv6
-rw-r--r--qadevOOo/objdsc/sm/com.sun.star.comp.Math.XMLSettingsImporter.csv14
-rw-r--r--qadevOOo/objdsc/sm/com.sun.star.comp.unknown.SmEditAccessible.csv22
-rw-r--r--qadevOOo/objdsc/sm/com.sun.star.comp.unknown.SmGraphicAccessible.csv39
-rw-r--r--qadevOOo/objdsc/sm/math.SmModel.csv55
-rw-r--r--qadevOOo/objdsc/smgr/com.sun.star.comp.stoc.OServiceManager.csv28
-rw-r--r--qadevOOo/objdsc/smplmail/com.sun.star.comp.system.SimpleSystemMail.csv6
-rw-r--r--qadevOOo/objdsc/srtrs/com.sun.star.comp.ucb.SortedDynamicResultSetFactory.csv1
-rw-r--r--qadevOOo/objdsc/stm/com.sun.star.comp.io.stm.DataInputStream.csv20
-rw-r--r--qadevOOo/objdsc/stm/com.sun.star.comp.io.stm.DataOutputStream.csv14
-rw-r--r--qadevOOo/objdsc/stm/com.sun.star.comp.io.stm.MarkableInputStream.csv16
-rw-r--r--qadevOOo/objdsc/stm/com.sun.star.comp.io.stm.MarkableOutputStream.csv14
-rw-r--r--qadevOOo/objdsc/stm/com.sun.star.comp.io.stm.ObjectInputStream.csv26
-rw-r--r--qadevOOo/objdsc/stm/com.sun.star.comp.io.stm.ObjectOutputStream.csv19
-rw-r--r--qadevOOo/objdsc/stm/com.sun.star.comp.io.stm.Pipe.csv8
-rw-r--r--qadevOOo/objdsc/stm/com.sun.star.comp.stoc.Pump.csv8
-rw-r--r--qadevOOo/objdsc/streams.uno/com.sun.star.comp.io.stm.DataInputStream.csv20
-rw-r--r--qadevOOo/objdsc/streams.uno/com.sun.star.comp.io.stm.DataOutputStream.csv14
-rw-r--r--qadevOOo/objdsc/streams.uno/com.sun.star.comp.io.stm.MarkableInputStream.csv16
-rw-r--r--qadevOOo/objdsc/streams.uno/com.sun.star.comp.io.stm.MarkableOutputStream.csv14
-rw-r--r--qadevOOo/objdsc/streams.uno/com.sun.star.comp.io.stm.ObjectInputStream.csv26
-rw-r--r--qadevOOo/objdsc/streams.uno/com.sun.star.comp.io.stm.ObjectOutputStream.csv19
-rw-r--r--qadevOOo/objdsc/streams.uno/com.sun.star.comp.io.stm.Pipe.csv8
-rw-r--r--qadevOOo/objdsc/streams.uno/com.sun.star.comp.stoc.Pump.csv8
-rw-r--r--qadevOOo/objdsc/svtools/com.sun.star.comp.svtools.AccessibleBrowseBox.csv12
-rw-r--r--qadevOOo/objdsc/svtools/com.sun.star.comp.svtools.AccessibleBrowseBoxHeaderBar.csv12
-rw-r--r--qadevOOo/objdsc/svtools/com.sun.star.comp.svtools.AccessibleBrowseBoxHeaderCell.csv12
-rw-r--r--qadevOOo/objdsc/svtools/com.sun.star.comp.svtools.AccessibleBrowseBoxTable.csv12
-rw-r--r--qadevOOo/objdsc/svtools/com.sun.star.comp.svtools.AccessibleBrowseBoxTableCell.csv12
-rw-r--r--qadevOOo/objdsc/svtools/com.sun.star.comp.svtools.AccessibleIconChoiceCtrl.csv28
-rw-r--r--qadevOOo/objdsc/svtools/com.sun.star.comp.svtools.AccessibleIconChoiceCtrlEntry.csv38
-rw-r--r--qadevOOo/objdsc/svtools/com.sun.star.comp.svtools.AccessibleTabBar.csv24
-rw-r--r--qadevOOo/objdsc/svtools/com.sun.star.comp.svtools.AccessibleTabBarPage.csv24
-rw-r--r--qadevOOo/objdsc/svtools/com.sun.star.comp.svtools.AccessibleTabBarPageList.csv31
-rw-r--r--qadevOOo/objdsc/svtools/com.sun.star.comp.svtools.AccessibleTreeListBox.csv28
-rw-r--r--qadevOOo/objdsc/svtools/com.sun.star.comp.svtools.AccessibleTreeListBoxEntry.csv49
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.Draw.GraphicExporter.csv5
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.office.SvxDrawPage.csv37
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.office.SvxGraphicObject.csv212
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.office.SvxShape.csv236
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.office.SvxShapeCircle.csv238
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.office.SvxShapeCollection.csv6
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.office.SvxShapeConnector.csv227
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.office.SvxShapeControl.csv31
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.office.SvxShapeDimensioning.csv233
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.office.SvxShapeGroup.csv37
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.office.SvxShapePolyPolygon.csv238
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.office.SvxShapePolyPolygonBezier.csv238
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.office.SvxUnoNumberingRules.csv16
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.office.SvxUnoText.csv21
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.office.SvxUnoTextContent.csv205
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.office.SvxUnoTextContentEnum.csv2
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.office.SvxUnoTextCursor.csv180
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.office.SvxUnoTextField.csv16
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.office.SvxUnoTextRange.csv147
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.office.SvxUnoTextRangeEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.ui.SvxGraphCtrlAccessibleContext.csv29
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.unknown.AccessibleControlShape.csv25
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.unknown.AccessibleEditableTextPara.csv53
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.unknown.AccessibleGraphicShape.csv25
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.unknown.AccessibleImageBullet.csv13
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.unknown.AccessibleOLEShape.csv25
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.unknown.AccessiblePageShape.csv25
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.unknown.AccessiblePresentationGraphicShape.csv25
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.unknown.AccessiblePresentationOLEShape.csv25
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.unknown.AccessiblePresentationShape.csv25
-rw-r--r--qadevOOo/objdsc/svx/com.sun.star.comp.unknown.AccessibleShape.csv25
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.Writer.DocumentSettings.csv65
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.Writer.SwAccessibleDocumentPageView.csv22
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.Writer.SwAccessibleDocumentView.csv29
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.Writer.SwAccessibleEndnoteView.csv22
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.Writer.SwAccessibleFooterView.csv22
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.Writer.SwAccessibleFootnoteView.csv22
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.Writer.SwAccessibleHeaderView.csv22
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.Writer.SwAccessiblePageView.csv22
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.Writer.SwAccessibleParagraphView.csv53
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.Writer.SwAccessibleTableCellView.csv33
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.Writer.SwAccessibleTableView.csv48
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.Writer.SwAccessibleTextEmbeddedObject.csv25
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.Writer.SwAccessibleTextFrameView.csv22
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.Writer.SwAccessibleTextGraphicObject.csv25
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.Writer.XMLContentExporter.csv6
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.Writer.XMLContentImporter.csv14
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.Writer.XMLExporter.csv6
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.Writer.XMLImporter.csv14
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.Writer.XMLMetaExporter.csv6
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.Writer.XMLMetaImporter.csv14
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.Writer.XMLSettingsExporter.csv6
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.Writer.XMLSettingsImporter.csv14
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.Writer.XMLStylesExporter.csv6
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.Writer.XMLStylesImporter.csv14
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXAutoTextContainer.csv9
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXAutoTextEntry.csv12
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXAutoTextGroup.csv13
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXBodyText.csv21
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXBookmark.csv10
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXBookmarks.csv7
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXCell.csv26
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXCellRange.csv148
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXChapterNumbering.csv16
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXDocumentIndex.csv42
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXDocumentIndexMark.csv12
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXDocumentIndexes.csv7
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXDrawPage.csv34
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXEndnoteProperties.csv11
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXFieldEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXFieldMaster.csv10
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXFootnote.csv19
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXFootnoteProperties.csv11
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXFootnoteText.csv21
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXFootnotes.csv4
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXFrames.csv9
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXHeadFootText.csv21
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXLineNumberingProperties.csv10
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXMailMerge.csv36
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXModule.csv2
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXNumberingRules.csv16
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXParagraph.csv205
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXParagraphEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXPrintSettings.csv13
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXPropertySet.csv7
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXPropertySetInfo.csv3
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXReferenceMark.csv7
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXReferenceMarks.csv7
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXShape.csv26
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXStyleFamilies.csv7
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXStyleFamily.csv10
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTableCellText.csv21
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTableColumns.csv6
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTableRows.csv6
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTextColumns.csv12
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTextCursor.csv180
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTextDefaults.csv137
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTextDocument.csv87
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTextEmbeddedObject.csv73
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTextEmbeddedObjects.csv7
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTextField.csv16
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTextFieldMasters.csv5
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTextFieldTypes.csv6
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTextFrame.csv78
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTextFrameText.csv21
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTextGraphicObject.csv90
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTextGraphicObjects.csv7
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTextPortion.csv155
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTextPortionEnumeration.csv2
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTextRange.csv147
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTextRanges.csv4
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTextSearch.csv19
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTextSection.csv52
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTextSections.csv7
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTextTable.csv59
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTextTableCursor.csv142
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTextTableRow.csv16
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTextTables.csv7
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTextView.csv11
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXTextViewCursor.csv190
-rw-r--r--qadevOOo/objdsc/sw/com.sun.star.comp.office.SwXViewSettings.csv37
-rwxr-xr-xqadevOOo/objdsc/sw/com.sun.star.style.CharacterStyle.csv105
-rwxr-xr-xqadevOOo/objdsc/sw/com.sun.star.style.ConditionalParagraphStyle.csv95
-rwxr-xr-xqadevOOo/objdsc/sw/com.sun.star.style.PageStyle.csv125
-rwxr-xr-xqadevOOo/objdsc/sw/com.sun.star.style.ParagraphStyle.csv95
-rw-r--r--qadevOOo/objdsc/sysdtrans/com.sun.star.comp.datatransfer.SystemClipboard.csv16
-rwxr-xr-xqadevOOo/objdsc/sysmgr1/com.sun.star.comp.configuration.backend.SystemIntegration.csv5
-rw-r--r--qadevOOo/objdsc/syssh/com.sun.star.comp.system.SystemShellExecute.csv6
-rw-r--r--qadevOOo/objdsc/tcv/com.sun.star.comp.stoc.TypeConverter.csv2
-rw-r--r--qadevOOo/objdsc/tdmgr/com.sun.star.comp.stoc.TypeDescriptionManager.csv12
-rw-r--r--qadevOOo/objdsc/text/com.sun.star.text.DefaultNumberingProvider.csv2
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.TabController.csv9
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.TabControllerModel.csv11
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.Toolkit.csv12
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlButton.csv43
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlButtonModel.csv55
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlCheckBox.csv45
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlCheckBoxModel.csv50
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlComboBox.csv65
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlComboBoxModel.csv51
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlContainer.csv47
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlContainerModel.csv37
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlCurrencyField.csv76
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlCurrencyFieldModel.csv56
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlDateField.csv76
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlDateFieldModel.csv55
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlDialog.csv56
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlDialogModel.csv55
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlEdit.csv53
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlEditModel.csv53
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlFileControl.csv53
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlFileControlModel.csv45
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlFixedLineModel.csv40
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlFixedText.csv43
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlFixedTextModel.csv45
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlFormattedField.csv60
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlFormattedFieldModel.csv58
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlGroupBox.csv36
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlGroupBoxModel.csv39
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlImageControl.csv39
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlImageControlModel.csv40
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlListBox.csv63
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlListBoxModel.csv49
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlNumericField.csv76
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlNumericFieldModel.csv54
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlPatternField.csv66
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlPatternFieldModel.csv49
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlProgressBarModel.csv40
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlRadioButton.csv44
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlRadioButtonModel.csv49
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlScrollBarModel.csv47
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlTimeField.csv74
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.awt.UnoControlTimeFieldModel.csv53
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.AccessibleButton.csv49
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.AccessibleCheckBox.csv49
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.AccessibleComboBox.csv24
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.AccessibleDropDownComboBox.csv28
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.AccessibleDropDownListBox.csv28
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.AccessibleEdit.csv48
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.AccessibleFixedText.csv41
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.AccessibleList.csv32
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.AccessibleListBox.csv24
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.AccessibleListItem.csv38
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.AccessibleMenu.csv56
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.AccessibleMenuBar.csv31
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.AccessibleMenuItem.csv49
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.AccessibleMenuSeparator.csv24
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.AccessiblePopupMenu.csv31
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.AccessibleRadioButton.csv49
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.AccessibleScrollBar.csv32
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.AccessibleStatusBar.csv24
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.AccessibleStatusBarItem.csv41
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.AccessibleTabControl.csv31
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.AccessibleTabPage.csv41
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.AccessibleToolBox.csv24
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.AccessibleToolBoxItem.csv49
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.AccessibleWindow.csv24
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.UnoSimpleAnimationControl.csv36
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.UnoSimpleAnimationControlModel.csv29
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.UnoSpinButtonControl.csv49
-rw-r--r--qadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.UnoSpinButtonControlModel.csv44
-rwxr-xr-xqadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.UnoThrobberControl.csv36
-rwxr-xr-xqadevOOo/objdsc/toolkit/com.sun.star.comp.toolkit.UnoThrobberControlModel.csv29
-rwxr-xr-xqadevOOo/objdsc/toolkit/stardiv.Toolkit.UnoTreeControl.csv28
-rwxr-xr-xqadevOOo/objdsc/toolkit/stardiv.Toolkit.UnoTreeModel.csv37
-rw-r--r--qadevOOo/objdsc/toolkit/stardiv.toolkit.UnoScrollBarControl.csv51
-rwxr-xr-xqadevOOo/objdsc/toolkit/toolkit.MutableTreeDataModel.csv8
-rwxr-xr-xqadevOOo/objdsc/toolkit/toolkit.MutableTreeNode.csv18
-rw-r--r--qadevOOo/objdsc/typeconverter.uno/com.sun.star.comp.stoc.TypeConverter.csv2
-rw-r--r--qadevOOo/objdsc/typemgr.uno/com.sun.star.comp.stoc.TypeDescriptionManager.csv12
-rw-r--r--qadevOOo/objdsc/ucb/com.sun.star.comp.ucb.UcbContentProviderProxyFactory.csv1
-rw-r--r--qadevOOo/objdsc/ucb/com.sun.star.comp.ucb.UcbPropertiesManager.csv3
-rw-r--r--qadevOOo/objdsc/ucb/com.sun.star.comp.ucb.UcbStore.csv1
-rw-r--r--qadevOOo/objdsc/ucb/com.sun.star.comp.ucb.UniversalContentBroker.csv15
-rw-r--r--qadevOOo/objdsc/ucpchelp/com.sun.star.comp.unknown.CHelpContentProvider.csv2
-rw-r--r--qadevOOo/objdsc/ucpdav/com.sun.star.comp.ucb.WebDAVContentProvider.csv2
-rw-r--r--qadevOOo/objdsc/ucpfile/com.sun.star.comp.ucb.FileProvider.csv13
-rw-r--r--qadevOOo/objdsc/ucpftp/com.sun.star.comp.ucb.FTPContentProvider.csv2
-rw-r--r--qadevOOo/objdsc/ucphier/com.sun.star.comp.ucb.HierarchyContentProvider.csv2
-rw-r--r--qadevOOo/objdsc/ucphier/com.sun.star.comp.ucb.HierarchyDataSource.csv6
-rw-r--r--qadevOOo/objdsc/ucppkg/com.sun.star.comp.ucb.PackageContentProvider.csv2
-rw-r--r--qadevOOo/objdsc/ucprmt/com.sun.star.comp.ucb.ucp.remote.ContentProvider.csv5
-rw-r--r--qadevOOo/objdsc/ucprmt/com.sun.star.comp.ucb.ucp.remote.ProviderAcceptor.csv3
-rw-r--r--qadevOOo/objdsc/ucprmt/com.sun.star.comp.ucb.ucp.remote.ProxyProvider.csv5
-rw-r--r--qadevOOo/objdsc/uui/com.sun.star.comp.uui.UUIInteractionHandler.csv2
-rw-r--r--qadevOOo/objdsc/uuresolver.uno/com.sun.star.comp.bridge.UnoUrlResolver.csv1
-rw-r--r--qadevOOo/objdsc/uuresolver/com.sun.star.comp.bridge.UnoUrlResolver.csv1
-rw-r--r--qadevOOo/objdsc/xmloff/com.sun.star.comp.Chart.XMLContentExporter.csv6
-rw-r--r--qadevOOo/objdsc/xmloff/com.sun.star.comp.Chart.XMLContentImporter.csv14
-rw-r--r--qadevOOo/objdsc/xmloff/com.sun.star.comp.Chart.XMLExporter.csv6
-rw-r--r--qadevOOo/objdsc/xmloff/com.sun.star.comp.Chart.XMLImporter.csv14
-rw-r--r--qadevOOo/objdsc/xmloff/com.sun.star.comp.Chart.XMLStylesExporter.csv6
-rw-r--r--qadevOOo/objdsc/xmloff/com.sun.star.comp.Chart.XMLStylesImporter.csv14
-rw-r--r--qadevOOo/objdsc/xmloff/com.sun.star.comp.Draw.XMLContentExporter.csv6
-rw-r--r--qadevOOo/objdsc/xmloff/com.sun.star.comp.Draw.XMLContentImporter.csv14
-rw-r--r--qadevOOo/objdsc/xmloff/com.sun.star.comp.Draw.XMLExporter.csv6
-rw-r--r--qadevOOo/objdsc/xmloff/com.sun.star.comp.Draw.XMLImporter.csv14
-rw-r--r--qadevOOo/objdsc/xmloff/com.sun.star.comp.Draw.XMLMetaExporter.csv6
-rw-r--r--qadevOOo/objdsc/xmloff/com.sun.star.comp.Draw.XMLMetaImporter.csv14
-rw-r--r--qadevOOo/objdsc/xmloff/com.sun.star.comp.Draw.XMLSettingsExporter.csv6
-rw-r--r--qadevOOo/objdsc/xmloff/com.sun.star.comp.Draw.XMLSettingsImporter.csv14
-rw-r--r--qadevOOo/objdsc/xmloff/com.sun.star.comp.Draw.XMLStylesExporter.csv6
-rw-r--r--qadevOOo/objdsc/xmloff/com.sun.star.comp.Draw.XMLStylesImporter.csv14
-rw-r--r--qadevOOo/objdsc/xmloff/com.sun.star.comp.Impress.XMLContentExporter.csv6
-rw-r--r--qadevOOo/objdsc/xmloff/com.sun.star.comp.Impress.XMLContentImporter.csv14
-rw-r--r--qadevOOo/objdsc/xmloff/com.sun.star.comp.Impress.XMLExporter.csv6
-rw-r--r--qadevOOo/objdsc/xmloff/com.sun.star.comp.Impress.XMLImporter.csv14
-rw-r--r--qadevOOo/objdsc/xmloff/com.sun.star.comp.Impress.XMLMetaExporter.csv6
-rw-r--r--qadevOOo/objdsc/xmloff/com.sun.star.comp.Impress.XMLMetaImporter.csv14
-rw-r--r--qadevOOo/objdsc/xmloff/com.sun.star.comp.Impress.XMLSettingsExporter.csv6
-rw-r--r--qadevOOo/objdsc/xmloff/com.sun.star.comp.Impress.XMLSettingsImporter.csv14
-rw-r--r--qadevOOo/objdsc/xmloff/com.sun.star.comp.Impress.XMLStylesExporter.csv6
-rw-r--r--qadevOOo/objdsc/xmloff/com.sun.star.comp.Impress.XMLStylesImporter.csv14
-rw-r--r--qadevOOo/prj/build.lst7
-rw-r--r--qadevOOo/prj/d.lst1
-rw-r--r--qadevOOo/qa/complex/junitskeleton/Skeleton.java194
-rw-r--r--qadevOOo/qa/complex/junitskeleton/TestDocument.java41
-rw-r--r--qadevOOo/qa/complex/junitskeleton/justatest.java38
-rw-r--r--qadevOOo/qa/complex/junitskeleton/makefile.mk63
-rw-r--r--qadevOOo/qa/complex/junitskeleton/test_documents/README.txt1
-rw-r--r--qadevOOo/qa/unoapi/Test.java51
-rwxr-xr-xqadevOOo/qa/unoapi/knownissues.xcl1
-rwxr-xr-xqadevOOo/qa/unoapi/makefile.mk48
-rwxr-xr-xqadevOOo/qa/unoapi/qadevOOo.sce1
-rw-r--r--qadevOOo/runner/base/TestBase.java39
-rw-r--r--qadevOOo/runner/base/basic_fat.java457
-rw-r--r--qadevOOo/runner/base/java_cmp.java83
-rw-r--r--qadevOOo/runner/base/java_complex.java170
-rw-r--r--qadevOOo/runner/base/java_fat.java602
-rw-r--r--qadevOOo/runner/base/java_fat_service.java267
-rw-r--r--qadevOOo/runner/base/makefile.mk52
-rw-r--r--qadevOOo/runner/basicrunner/BasicException.java42
-rw-r--r--qadevOOo/runner/basicrunner/BasicHandler.java612
-rw-r--r--qadevOOo/runner/basicrunner/BasicHandlerProvider.java153
-rw-r--r--qadevOOo/runner/basicrunner/BasicIfcTest.java169
-rw-r--r--qadevOOo/runner/basicrunner/BasicTestCase.java178
-rw-r--r--qadevOOo/runner/basicrunner/basichelper/AttributeList.java138
-rw-r--r--qadevOOo/runner/basicrunner/basichelper/Connector.java272
-rw-r--r--qadevOOo/runner/basicrunner/basichelper/DispatchProviderInterceptor.java194
-rw-r--r--qadevOOo/runner/basicrunner/basichelper/DocumentHandler.java344
-rw-r--r--qadevOOo/runner/basicrunner/basichelper/Filter.java269
-rw-r--r--qadevOOo/runner/basicrunner/basichelper/ThreadRunner.java254
-rw-r--r--qadevOOo/runner/basicrunner/basichelper/makefile.mk47
-rw-r--r--qadevOOo/runner/basicrunner/makefile.mk46
-rw-r--r--qadevOOo/runner/complexlib/Assurance.java407
-rw-r--r--qadevOOo/runner/complexlib/ComplexTestCase.java315
-rw-r--r--qadevOOo/runner/complexlib/MethodThread.java112
-rw-r--r--qadevOOo/runner/complexlib/ShowTargets.java138
-rw-r--r--qadevOOo/runner/complexlib/makefile.mk49
-rw-r--r--qadevOOo/runner/convwatch/Basename.java61
-rw-r--r--qadevOOo/runner/convwatch/BorderRemover.java319
-rw-r--r--qadevOOo/runner/convwatch/BuildID.java163
-rw-r--r--qadevOOo/runner/convwatch/ConvWatch.java432
-rw-r--r--qadevOOo/runner/convwatch/ConvWatchCancelException.java38
-rw-r--r--qadevOOo/runner/convwatch/ConvWatchException.java37
-rw-r--r--qadevOOo/runner/convwatch/ConvWatchStarter.java445
-rw-r--r--qadevOOo/runner/convwatch/CrashLoopTest.java57
-rw-r--r--qadevOOo/runner/convwatch/DB.java541
-rw-r--r--qadevOOo/runner/convwatch/DBHelper.java316
-rwxr-xr-xqadevOOo/runner/convwatch/DateHelper.java58
-rw-r--r--qadevOOo/runner/convwatch/DirectoryHelper.java156
-rw-r--r--qadevOOo/runner/convwatch/DocumentConverter.java277
-rw-r--r--qadevOOo/runner/convwatch/EnhancedComplexTestCase.java130
-rw-r--r--qadevOOo/runner/convwatch/FileHelper.java405
-rw-r--r--qadevOOo/runner/convwatch/FilenameHelper.java398
-rw-r--r--qadevOOo/runner/convwatch/GfxCompare.java196
-rw-r--r--qadevOOo/runner/convwatch/GlobalLogWriter.java57
-rw-r--r--qadevOOo/runner/convwatch/GraphicalDifferenceCheck.java410
-rw-r--r--qadevOOo/runner/convwatch/GraphicalTestArguments.java744
-rw-r--r--qadevOOo/runner/convwatch/HTMLOutputter.java418
-rw-r--r--qadevOOo/runner/convwatch/INIOutputter.java207
-rw-r--r--qadevOOo/runner/convwatch/ImageHelper.java116
-rw-r--r--qadevOOo/runner/convwatch/IniFile.java452
-rw-r--r--qadevOOo/runner/convwatch/LISTOutputter.java104
-rw-r--r--qadevOOo/runner/convwatch/MSOfficePrint.java870
-rw-r--r--qadevOOo/runner/convwatch/NameHelper.java89
-rw-r--r--qadevOOo/runner/convwatch/OSHelper.java84
-rw-r--r--qadevOOo/runner/convwatch/OfficePrint.java1377
-rw-r--r--qadevOOo/runner/convwatch/PRNCompare.java805
-rw-r--r--qadevOOo/runner/convwatch/PerformanceContainer.java250
-rw-r--r--qadevOOo/runner/convwatch/PixelCounter.java206
-rw-r--r--qadevOOo/runner/convwatch/PropertyName.java67
-rw-r--r--qadevOOo/runner/convwatch/ReferenceBuilder.java304
-rwxr-xr-xqadevOOo/runner/convwatch/ReportDesignerTest.java694
-rw-r--r--qadevOOo/runner/convwatch/SimpleFileSemaphore.java189
-rw-r--r--qadevOOo/runner/convwatch/StatusHelper.java108
-rw-r--r--qadevOOo/runner/convwatch/StringHelper.java103
-rwxr-xr-xqadevOOo/runner/convwatch/TimeHelper.java44
-rw-r--r--qadevOOo/runner/convwatch/TriState.java76
-rw-r--r--qadevOOo/runner/convwatch/ValueNotFoundException.java36
-rw-r--r--qadevOOo/runner/convwatch/makefile.mk86
-rw-r--r--qadevOOo/runner/graphical/BuildID.java226
-rw-r--r--qadevOOo/runner/graphical/DateHelper.java58
-rw-r--r--qadevOOo/runner/graphical/DirectoryHelper.java160
-rw-r--r--qadevOOo/runner/graphical/EnhancedComplexTestCase.java530
-rw-r--r--qadevOOo/runner/graphical/FileHelper.java767
-rw-r--r--qadevOOo/runner/graphical/GlobalLogWriter.java72
-rw-r--r--qadevOOo/runner/graphical/GraphicalComparator.java31
-rw-r--r--qadevOOo/runner/graphical/HTMLResult.java212
-rw-r--r--qadevOOo/runner/graphical/IDocument.java46
-rw-r--r--qadevOOo/runner/graphical/IOffice.java63
-rw-r--r--qadevOOo/runner/graphical/ImageHelper.java120
-rw-r--r--qadevOOo/runner/graphical/IniFile.java693
-rw-r--r--qadevOOo/runner/graphical/JPEGComparator.java816
-rw-r--r--qadevOOo/runner/graphical/JPEGCreator.java476
-rw-r--r--qadevOOo/runner/graphical/JPEGEvaluator.java165
-rw-r--r--qadevOOo/runner/graphical/MSOfficePostscriptCreator.java1004
-rw-r--r--qadevOOo/runner/graphical/Office.java171
-rw-r--r--qadevOOo/runner/graphical/OfficeException.java45
-rw-r--r--qadevOOo/runner/graphical/OpenOfficeDatabaseReportExtractor.java560
-rw-r--r--qadevOOo/runner/graphical/OpenOfficePostscriptCreator.java1428
-rw-r--r--qadevOOo/runner/graphical/ParameterHelper.java434
-rw-r--r--qadevOOo/runner/graphical/PerformanceContainer.java271
-rw-r--r--qadevOOo/runner/graphical/PixelCounter.java247
-rw-r--r--qadevOOo/runner/graphical/PostscriptCreator.java138
-rw-r--r--qadevOOo/runner/graphical/PropertyName.java73
-rw-r--r--qadevOOo/runner/graphical/TimeHelper.java91
-rw-r--r--qadevOOo/runner/graphical/Tolerance.java23
-rw-r--r--qadevOOo/runner/graphical/WrongEnvironmentException.java42
-rw-r--r--qadevOOo/runner/graphical/WrongSuffixException.java42
-rw-r--r--qadevOOo/runner/graphical/makefile.mk76
-rw-r--r--qadevOOo/runner/helper/APIDescGetter.java985
-rw-r--r--qadevOOo/runner/helper/AppProvider.java55
-rw-r--r--qadevOOo/runner/helper/BuildEnvTools.java195
-rw-r--r--qadevOOo/runner/helper/CfgParser.java192
-rw-r--r--qadevOOo/runner/helper/ClParser.java193
-rw-r--r--qadevOOo/runner/helper/ComplexDescGetter.java194
-rw-r--r--qadevOOo/runner/helper/ConfigHelper.java348
-rw-r--r--qadevOOo/runner/helper/ConfigurationRead.java141
-rw-r--r--qadevOOo/runner/helper/ContextMenuInterceptor.java140
-rw-r--r--qadevOOo/runner/helper/CwsDataExchangeImpl.java157
-rw-r--r--qadevOOo/runner/helper/FileTools.java160
-rw-r--r--qadevOOo/runner/helper/InetTools.java88
-rw-r--r--qadevOOo/runner/helper/LoggingThread.java96
-rw-r--r--qadevOOo/runner/helper/OSHelper.java88
-rw-r--r--qadevOOo/runner/helper/ObjectInspectorModelImpl.java145
-rw-r--r--qadevOOo/runner/helper/OfficeProvider.java833
-rw-r--r--qadevOOo/runner/helper/OfficeWatcher.java132
-rw-r--r--qadevOOo/runner/helper/ParameterNotFoundException.java39
-rw-r--r--qadevOOo/runner/helper/ProcessHandler.java1010
-rw-r--r--qadevOOo/runner/helper/PropertyHandlerFactroy.java49
-rw-r--r--qadevOOo/runner/helper/PropertyHandlerImpl.java258
-rwxr-xr-xqadevOOo/runner/helper/PropertyHelper.java81
-rw-r--r--qadevOOo/runner/helper/SimpleMailSender.java171
-rw-r--r--qadevOOo/runner/helper/StreamSimulator.java533
-rw-r--r--qadevOOo/runner/helper/StringHelper.java125
-rw-r--r--qadevOOo/runner/helper/URLHelper.java292
-rw-r--r--qadevOOo/runner/helper/UnoProvider.java165
-rw-r--r--qadevOOo/runner/helper/WindowListener.java78
-rw-r--r--qadevOOo/runner/helper/makefile.mk65
-rw-r--r--qadevOOo/runner/lib/DynamicClassLoader.java94
-rw-r--r--qadevOOo/runner/lib/ExceptionStatus.java48
-rw-r--r--qadevOOo/runner/lib/MultiMethodTest.java511
-rw-r--r--qadevOOo/runner/lib/MultiPropertyTest.java608
-rw-r--r--qadevOOo/runner/lib/Parameters.java233
-rw-r--r--qadevOOo/runner/lib/SimpleStatus.java149
-rw-r--r--qadevOOo/runner/lib/Status.java173
-rw-r--r--qadevOOo/runner/lib/StatusException.java81
-rw-r--r--qadevOOo/runner/lib/TestCase.java182
-rw-r--r--qadevOOo/runner/lib/TestEnvironment.java153
-rw-r--r--qadevOOo/runner/lib/TestParameters.java343
-rw-r--r--qadevOOo/runner/lib/TestResult.java106
-rw-r--r--qadevOOo/runner/lib/makefile.mk58
-rw-r--r--qadevOOo/runner/makefile.mk60
-rw-r--r--qadevOOo/runner/manifest3
-rw-r--r--qadevOOo/runner/org/openoffice/Runner.java261
-rw-r--r--qadevOOo/runner/org/openoffice/RunnerService.java397
-rw-r--r--qadevOOo/runner/org/openoffice/makefile.mk46
-rw-r--r--qadevOOo/runner/share/ComplexTest.java39
-rw-r--r--qadevOOo/runner/share/CwsDataExchange.java51
-rw-r--r--qadevOOo/runner/share/DescEntry.java97
-rw-r--r--qadevOOo/runner/share/DescGetter.java197
-rw-r--r--qadevOOo/runner/share/LogWriter.java68
-rw-r--r--qadevOOo/runner/share/Watcher.java42
-rw-r--r--qadevOOo/runner/share/makefile.mk52
-rw-r--r--qadevOOo/runner/stats/ComplexDataBaseOutProducer.java181
-rw-r--r--qadevOOo/runner/stats/DataBaseOutProducer.java207
-rw-r--r--qadevOOo/runner/stats/FatDataBaseOutProducer.java147
-rw-r--r--qadevOOo/runner/stats/FileLogWriter.java141
-rw-r--r--qadevOOo/runner/stats/InternalLogWriter.java124
-rw-r--r--qadevOOo/runner/stats/OutProducerFactory.java137
-rw-r--r--qadevOOo/runner/stats/SQLExecution.java337
-rw-r--r--qadevOOo/runner/stats/SimpleFileOutProducer.java114
-rw-r--r--qadevOOo/runner/stats/SimpleLogWriter.java111
-rw-r--r--qadevOOo/runner/stats/SimpleOutProducer.java77
-rw-r--r--qadevOOo/runner/stats/Summarizer.java114
-rw-r--r--qadevOOo/runner/stats/makefile.mk59
-rw-r--r--qadevOOo/runner/util/AccessibilityTools.java461
-rw-r--r--qadevOOo/runner/util/BasicMacroTools.java261
-rw-r--r--qadevOOo/runner/util/BookmarkDsc.java84
-rw-r--r--qadevOOo/runner/util/CalcTools.java160
-rw-r--r--qadevOOo/runner/util/ControlDsc.java80
-rw-r--r--qadevOOo/runner/util/DBTools.java824
-rw-r--r--qadevOOo/runner/util/DefaultDsc.java81
-rw-r--r--qadevOOo/runner/util/DesktopTools.java515
-rw-r--r--qadevOOo/runner/util/DrawTools.java162
-rw-r--r--qadevOOo/runner/util/DynamicClassLoader.java123
-rw-r--r--qadevOOo/runner/util/FootnoteDsc.java84
-rw-r--r--qadevOOo/runner/util/FormTools.java349
-rw-r--r--qadevOOo/runner/util/FrameDsc.java126
-rw-r--r--qadevOOo/runner/util/InstCreator.java122
-rw-r--r--qadevOOo/runner/util/InstDescr.java53
-rw-r--r--qadevOOo/runner/util/ParagraphDsc.java85
-rw-r--r--qadevOOo/runner/util/PropertyName.java169
-rw-r--r--qadevOOo/runner/util/ReferenceMarkDsc.java84
-rw-r--r--qadevOOo/runner/util/RegistryTools.java370
-rw-r--r--qadevOOo/runner/util/SOfficeFactory.java629
-rw-r--r--qadevOOo/runner/util/ShapeDsc.java101
-rw-r--r--qadevOOo/runner/util/StyleFamilyDsc.java80
-rw-r--r--qadevOOo/runner/util/SysUtils.java153
-rw-r--r--qadevOOo/runner/util/TableDsc.java96
-rw-r--r--qadevOOo/runner/util/TextSectionDsc.java84
-rw-r--r--qadevOOo/runner/util/UITools.java814
-rw-r--r--qadevOOo/runner/util/ValueChanger.java994
-rw-r--r--qadevOOo/runner/util/ValueComparer.java266
-rw-r--r--qadevOOo/runner/util/WaitUnreachable.java127
-rw-r--r--qadevOOo/runner/util/WriterTools.java121
-rw-r--r--qadevOOo/runner/util/XInstCreator.java38
-rw-r--r--qadevOOo/runner/util/XLayerHandlerImpl.java119
-rw-r--r--qadevOOo/runner/util/XLayerImpl.java45
-rw-r--r--qadevOOo/runner/util/XMLTools.java939
-rw-r--r--qadevOOo/runner/util/XSchemaHandlerImpl.java137
-rw-r--r--qadevOOo/runner/util/compare/DocComparator.java52
-rw-r--r--qadevOOo/runner/util/compare/DocComparatorFactory.java64
-rw-r--r--qadevOOo/runner/util/compare/GraphicalComparator.java260
-rw-r--r--qadevOOo/runner/util/compare/PDFComparator.java62
-rw-r--r--qadevOOo/runner/util/compare/XMLComparator.java58
-rw-r--r--qadevOOo/runner/util/compare/makefile.mk54
-rw-r--r--qadevOOo/runner/util/db/DataSource.java163
-rw-r--r--qadevOOo/runner/util/db/DataSourceDescriptor.java74
-rw-r--r--qadevOOo/runner/util/db/DatabaseDocument.java90
-rw-r--r--qadevOOo/runner/util/dbg.java347
-rw-r--r--qadevOOo/runner/util/makefile.mk87
-rw-r--r--qadevOOo/runner/util/utils.java1020
-rw-r--r--qadevOOo/testdocs/10test.csv19
-rw-r--r--qadevOOo/testdocs/BasicBridge.sxwbin0 -> 27011 bytes-rw-r--r--qadevOOo/testdocs/BasicDB/DBTest.dbfbin0 -> 1575 bytes-rw-r--r--qadevOOo/testdocs/Calc_Link.sxcbin0 -> 5410 bytes-rw-r--r--qadevOOo/testdocs/ChXChartObject.sdsbin0 -> 52736 bytes-rw-r--r--qadevOOo/testdocs/FiexdTextDialog.sxwbin0 -> 8259 bytes-rw-r--r--qadevOOo/testdocs/FixedTextDialog.sxwbin0 -> 8259 bytes-rw-r--r--qadevOOo/testdocs/Iterator.sxwbin0 -> 5627 bytes-rw-r--r--qadevOOo/testdocs/JAJPIterator.sxwbin0 -> 5853 bytes-rw-r--r--qadevOOo/testdocs/MailMerge.sxwbin0 -> 5391 bytes-rw-r--r--qadevOOo/testdocs/ORowSet.dbfbin0 -> 39449 bytes-rw-r--r--qadevOOo/testdocs/RunnerStart.sxwbin0 -> 8224 bytes-rw-r--r--qadevOOo/testdocs/ScAnnotationShapeObj.sxcbin0 -> 6542 bytes-rw-r--r--qadevOOo/testdocs/ScDDELinksObj.sdcbin0 -> 17408 bytes-rw-r--r--qadevOOo/testdocs/ScSheetLinksObj.sdcbin0 -> 16896 bytes-rw-r--r--qadevOOo/testdocs/SfxStandaloneDocInfoObject.sdwbin0 -> 8192 bytes-rw-r--r--qadevOOo/testdocs/SvxShape.sdabin0 -> 39424 bytes-rw-r--r--qadevOOo/testdocs/SvxShape.sxdbin0 -> 6344 bytes-rw-r--r--qadevOOo/testdocs/SwOLE.sxwbin0 -> 8603 bytes-rw-r--r--qadevOOo/testdocs/SwXTextEmbeddedObject.sdwbin0 -> 180736 bytes-rw-r--r--qadevOOo/testdocs/SwXTextEmbeddedObject.sxwbin0 -> 24763 bytes-rw-r--r--qadevOOo/testdocs/SwXTextSection.sdwbin0 -> 8704 bytes-rw-r--r--qadevOOo/testdocs/TestDB/testDB.dbfbin0 -> 949 bytes-rw-r--r--qadevOOo/testdocs/TestDB/testDB.dbtbin0 -> 512 bytes-rw-r--r--qadevOOo/testdocs/TransparencyCalcChart.sxcbin0 -> 8755 bytes-rw-r--r--qadevOOo/testdocs/TransparencyChart.sxsbin0 -> 10846 bytes-rw-r--r--qadevOOo/testdocs/TwoShapes.sxibin0 -> 7283 bytes-rw-r--r--qadevOOo/testdocs/Writer_link.sxwbin0 -> 5188 bytes-rw-r--r--qadevOOo/testdocs/XDocumentInsertable.sxwbin0 -> 4914 bytes-rw-r--r--qadevOOo/testdocs/XPageCursor.sdwbin0 -> 16896 bytes-rw-r--r--qadevOOo/testdocs/XSimpleFileAccess/XSimpleFileAccess.txt1
-rw-r--r--qadevOOo/testdocs/XSimpleFileAccess/XSimpleFileAccess2.txt1
-rw-r--r--qadevOOo/testdocs/XSimpleFileAccessBASIC/File1.txt1
-rw-r--r--qadevOOo/testdocs/XSimpleFileAccessBASIC/File2.txt1
-rw-r--r--qadevOOo/testdocs/XSimpleRegistry.rdbbin0 -> 8192 bytes-rw-r--r--qadevOOo/testdocs/XTypeDetection.sxwbin0 -> 4995 bytes-rw-r--r--qadevOOo/testdocs/ZHCNIterator.sxwbin0 -> 5883 bytes-rw-r--r--qadevOOo/testdocs/ZHTWIterator.sxwbin0 -> 6247 bytes-rw-r--r--qadevOOo/testdocs/_BasicBridge.sxwbin0 -> 25191 bytes-rw-r--r--qadevOOo/testdocs/backend/org/openoffice/JavaSystemBackend.java259
-rw-r--r--qadevOOo/testdocs/backend/org/openoffice/makefile.mk64
-rw-r--r--qadevOOo/testdocs/backend/org/openoffice/manifest1
-rw-r--r--qadevOOo/testdocs/basDialog.odtbin0 -> 9950 bytes-rw-r--r--qadevOOo/testdocs/calcshapes.sxcbin0 -> 13030 bytes-rw-r--r--qadevOOo/testdocs/chinese.sxwbin0 -> 5757 bytes-rw-r--r--qadevOOo/testdocs/crazy-blue.jpgbin0 -> 4451 bytes-rwxr-xr-xqadevOOo/testdocs/delete.cfgbin0 -> 2799 bytes-rw-r--r--qadevOOo/testdocs/emptyChart.sdsbin0 -> 44544 bytes-rw-r--r--qadevOOo/testdocs/filter.sxwbin0 -> 14359 bytes-rw-r--r--qadevOOo/testdocs/ok.wavbin0 -> 4454 bytes-rw-r--r--qadevOOo/testdocs/poliball.gifbin0 -> 945 bytes-rw-r--r--qadevOOo/testdocs/qadevlibs/JobExecutor.jarbin0 -> 3912 bytes-rw-r--r--qadevOOo/testdocs/qadevlibs/MyPersistObjectImpl.jarbin0 -> 4346 bytes-rw-r--r--qadevOOo/testdocs/qadevlibs/source/com/sun/star/cmp/MyPersistObject.java356
-rw-r--r--qadevOOo/testdocs/qadevlibs/source/com/sun/star/cmp/makefile.mk64
-rw-r--r--qadevOOo/testdocs/qadevlibs/source/com/sun/star/cmp/manifest1
-rw-r--r--qadevOOo/testdocs/qadevlibs/source/test/Job.java128
-rw-r--r--qadevOOo/testdocs/qadevlibs/source/test/makefile.mk64
-rw-r--r--qadevOOo/testdocs/qadevlibs/source/test/manifest2
-rw-r--r--qadevOOo/testdocs/report.stwbin0 -> 11186 bytes-rw-r--r--qadevOOo/testdocs/report2.stwbin0 -> 11000 bytes-rw-r--r--qadevOOo/testdocs/sForm.sxwbin0 -> 5568 bytes-rw-r--r--qadevOOo/testdocs/setexpression.sxwbin0 -> 6364 bytes-rw-r--r--qadevOOo/testdocs/small_submit_test.sdwbin0 -> 18944 bytes-rw-r--r--qadevOOo/testdocs/space-metal.jpgbin0 -> 4313 bytes-rw-r--r--qadevOOo/tests/basic/ifc/accessibility/XAccessible/accessibility_XAccessible.xba64
-rw-r--r--qadevOOo/tests/basic/ifc/accessibility/XAccessible/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/accessibility/XAccessibleAction/accessibility_XAccessibleAction.xba99
-rw-r--r--qadevOOo/tests/basic/ifc/accessibility/XAccessibleAction/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/accessibility/XAccessibleComponent/accessibility_XAccessibleComponent.xba247
-rw-r--r--qadevOOo/tests/basic/ifc/accessibility/XAccessibleComponent/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/accessibility/XAccessibleContext/accessibility_XAccessibleContext.xba156
-rw-r--r--qadevOOo/tests/basic/ifc/accessibility/XAccessibleContext/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/accessibility/XAccessibleEditableText/accessibility_XAccessibleEditableText.xba181
-rw-r--r--qadevOOo/tests/basic/ifc/accessibility/XAccessibleEditableText/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/accessibility/XAccessibleEventBroadcaster/accessibility_XAccessibleEventBroadcaster.xba149
-rw-r--r--qadevOOo/tests/basic/ifc/accessibility/XAccessibleEventBroadcaster/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/accessibility/XAccessibleExtendedComponent/accessibility_XAccessibleExtendedComponent.xba86
-rw-r--r--qadevOOo/tests/basic/ifc/accessibility/XAccessibleExtendedComponent/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/accessibility/XAccessibleImage/accessibility_XAccessibleImage.xba79
-rw-r--r--qadevOOo/tests/basic/ifc/accessibility/XAccessibleImage/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/accessibility/XAccessibleSelection/accessibility_XAccessibleSelection.xba259
-rw-r--r--qadevOOo/tests/basic/ifc/accessibility/XAccessibleSelection/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/accessibility/XAccessibleTable/accessibility_XAccessibleTable.xba291
-rw-r--r--qadevOOo/tests/basic/ifc/accessibility/XAccessibleTable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/accessibility/XAccessibleText/accessibility_XAccessibleText.xba197
-rw-r--r--qadevOOo/tests/basic/ifc/accessibility/XAccessibleText/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/accessibility/XAccessibleValue/accessibility_XAccessibleValue.xba119
-rw-r--r--qadevOOo/tests/basic/ifc/accessibility/XAccessibleValue/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlButtonModel/awt_UnoControlButtonModel.xba84
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlButtonModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlCheckBoxModel/awt_UnoControlCheckBoxModel.xba80
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlCheckBoxModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlComboBoxModel/awt_UnoControlComboBoxModel.xba95
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlComboBoxModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlContainerModel/awt_UnoControlContainerModel.xba65
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlContainerModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlCurrencyFieldModel/awt_UnoControlCurrencyFieldModel.xba134
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlCurrencyFieldModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlDateFieldModel/awt_UnoControlDateFieldModel.xba93
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlDateFieldModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlDialogElement/awt_UnoControlDialogElement.xba66
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlDialogElement/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlDialogModel/awt_UnoControlDialogModel.xba82
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlDialogModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlEditModel/awt_UnoControlEditModel.xba96
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlEditModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlFileControlModel/awt_UnoControlFileControlModel.xba82
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlFileControlModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlFixedLineModel/awt_UnoControlFixedLineModel.xba78
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlFixedLineModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlFixedTextModel/awt_UnoControlFixedTextModel.xba82
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlFixedTextModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlFormattedFieldModel/awt_UnoControlFormattedFieldModel.xba141
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlFormattedFieldModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlGroupBoxModel/awt_UnoControlGroupBoxModel.xba74
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlGroupBoxModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlImageControlModel/awt_UnoControlImageControlModel.xba72
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlImageControlModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlListBoxModel/awt_UnoControlListBoxModel.xba90
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlListBoxModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlModel/awt_UnoControlModel.xba59
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlNumericFieldModel/awt_UnoControlNumericFieldModel.xba132
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlNumericFieldModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlPatternFieldModel/awt_UnoControlPatternFieldModel.xba90
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlPatternFieldModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlProgressBarModel/awt_UnoControlProgressBarModel.xba74
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlProgressBarModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlRadioButtonModel/awt_UnoControlRadioButtonModel.xba78
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlRadioButtonModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlScrollBarModel/awt_UnoControlScrollBarModel.xba76
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlScrollBarModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlTimeFieldModel/awt_UnoControlTimeFieldModel.xba91
-rw-r--r--qadevOOo/tests/basic/ifc/awt/UnoControlTimeFieldModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XButton/awt_XButton.xba92
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XButton/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XCheckBox/awt_XCheckBox.xba107
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XCheckBox/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XComboBox/awt_XComboBox.xba146
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XComboBox/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XControl/awt_XControl.xba123
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XControlContainer/awt_XControlContainer.xba104
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XControlContainer/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XCurrencyField/awt_XCurrencyField.xba144
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XCurrencyField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XDataTransferProviderAccess/awt_XDataTransferProviderAccess.xba117
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XDataTransferProviderAccess/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XDateField/awt_XDateField.xba123
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XDateField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XDialog/awt_XDialog.xba73
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XDialog/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XFixedText/awt_XFixedText.xba87
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XFixedText/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XItemListener/awt_XItemListener.xba82
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XItemListener/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XLayoutConstrains/awt_XLayoutConstrains.xba75
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XLayoutConstrains/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XListBox/awt_XListBox.xba239
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XListBox/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XNumericField/awt_XNumericField.xba157
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XNumericField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XPatternField/awt_XPatternField.xba99
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XPatternField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XRadioButton/awt_XRadioButton.xba98
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XRadioButton/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XSpinField/awt_XSpinField.xba126
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XSpinField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XTabController/awt_XTabController.xba116
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XTabController/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XTabControllerModel/awt_XTabControllerModel.xba117
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XTabControllerModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XTextComponent/awt_XTextComponent.xba191
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XTextComponent/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XTextLayoutConstrains/awt_XTextLayoutConstrains.xba70
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XTextLayoutConstrains/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XTextListener/awt_XTextListener.xba62
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XTextListener/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XTimeField/awt_XTimeField.xba145
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XTimeField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XToolkit/awt_XToolkit.xba168
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XToolkit/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XTopWindow/awt_XTopWindow.xba138
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XTopWindow/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XView/awt_XView.xba92
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XWindow/awt_XWindow.xba482
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XWindow/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/beans/XExactName/beans_XExactName.xba85
-rw-r--r--qadevOOo/tests/basic/ifc/beans/XExactName/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/beans/XFastPropertySet/beans_XFastPropertySet.xba122
-rw-r--r--qadevOOo/tests/basic/ifc/beans/XFastPropertySet/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/beans/XIntrospection/beans_XIntrospection.xba61
-rw-r--r--qadevOOo/tests/basic/ifc/beans/XIntrospection/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/beans/XMultiPropertySet/beans_XMultiPropertySet.xba261
-rw-r--r--qadevOOo/tests/basic/ifc/beans/XMultiPropertySet/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/beans/XMultiPropertyStates/beans_XMultiPropertyStates.xba183
-rw-r--r--qadevOOo/tests/basic/ifc/beans/XMultiPropertyStates/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/beans/XProperty/beans_XProperty.xba58
-rw-r--r--qadevOOo/tests/basic/ifc/beans/XProperty/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/beans/XPropertySet/beans_XPropertySet.xba357
-rw-r--r--qadevOOo/tests/basic/ifc/beans/XPropertySet/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/beans/XPropertySetInfo/beans_XPropertySetInfo.xba74
-rw-r--r--qadevOOo/tests/basic/ifc/beans/XPropertySetInfo/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/beans/XPropertyState/beans_XPropertyState.xba178
-rw-r--r--qadevOOo/tests/basic/ifc/beans/XPropertyState/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/bridge/XBridge/bridge_XBridge.xba88
-rw-r--r--qadevOOo/tests/basic/ifc/bridge/XBridge/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/bridge/XBridgeFactory/bridge_XBridgeFactory.xba123
-rw-r--r--qadevOOo/tests/basic/ifc/bridge/XBridgeFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/bridge/XUnoUrlResolver/bridge_XUnoUrlResolver.xba62
-rw-r--r--qadevOOo/tests/basic/ifc/bridge/XUnoUrlResolver/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/BarDiagram/chart_BarDiagram.xba101
-rw-r--r--qadevOOo/tests/basic/ifc/chart/BarDiagram/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/Chart3DBarProperties/chart_Chart3DBarProperties.xba56
-rw-r--r--qadevOOo/tests/basic/ifc/chart/Chart3DBarProperties/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/ChartAxis/chart_ChartAxis.xba105
-rw-r--r--qadevOOo/tests/basic/ifc/chart/ChartAxis/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/ChartAxisXSupplier/chart_ChartAxisXSupplier.xba68
-rw-r--r--qadevOOo/tests/basic/ifc/chart/ChartAxisXSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/ChartAxisYSupplier/chart_ChartAxisYSupplier.xba67
-rw-r--r--qadevOOo/tests/basic/ifc/chart/ChartAxisYSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/ChartAxisZSupplier/chart_ChartAxisZSupplier.xba68
-rw-r--r--qadevOOo/tests/basic/ifc/chart/ChartAxisZSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/ChartDataPointProperties/chart_ChartDataPointProperties.xba72
-rw-r--r--qadevOOo/tests/basic/ifc/chart/ChartDataPointProperties/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/ChartDataRowProperties/chart_ChartDataRowProperties.xba62
-rw-r--r--qadevOOo/tests/basic/ifc/chart/ChartDataRowProperties/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/ChartDocument/chart_ChartDocument.xba60
-rw-r--r--qadevOOo/tests/basic/ifc/chart/ChartDocument/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/ChartLegend/chart_ChartLegend.xba56
-rw-r--r--qadevOOo/tests/basic/ifc/chart/ChartLegend/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/ChartStatistics/chart_ChartStatistics.xba70
-rw-r--r--qadevOOo/tests/basic/ifc/chart/ChartStatistics/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/ChartTableAddressSupplier/chart_ChartTableAddressSupplier.xba62
-rw-r--r--qadevOOo/tests/basic/ifc/chart/ChartTableAddressSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/ChartTitle/chart_ChartTitle.xba58
-rw-r--r--qadevOOo/tests/basic/ifc/chart/ChartTitle/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/ChartTwoAxisXSupplier/chart_ChartTwoAxisXSupplier.xba58
-rw-r--r--qadevOOo/tests/basic/ifc/chart/ChartTwoAxisXSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/ChartTwoAxisYSupplier/chart_ChartTwoAxisYSupplier.xba58
-rw-r--r--qadevOOo/tests/basic/ifc/chart/ChartTwoAxisYSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/Diagram/chart_Diagram.xba65
-rw-r--r--qadevOOo/tests/basic/ifc/chart/Diagram/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/Dim3DDiagram/chart_Dim3DDiagram.xba56
-rw-r--r--qadevOOo/tests/basic/ifc/chart/Dim3DDiagram/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/LineDiagram/chart_LineDiagram.xba107
-rw-r--r--qadevOOo/tests/basic/ifc/chart/LineDiagram/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/StackableDiagram/chart_StackableDiagram.xba79
-rw-r--r--qadevOOo/tests/basic/ifc/chart/StackableDiagram/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/StockDiagram/chart_StockDiagram.xba78
-rw-r--r--qadevOOo/tests/basic/ifc/chart/StockDiagram/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/X3DDisplay/chart_X3DDisplay.xba61
-rw-r--r--qadevOOo/tests/basic/ifc/chart/X3DDisplay/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/XAxisXSupplier/chart_XAxisXSupplier.xba69
-rw-r--r--qadevOOo/tests/basic/ifc/chart/XAxisXSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/XAxisYSupplier/chart_XAxisYSupplier.xba69
-rw-r--r--qadevOOo/tests/basic/ifc/chart/XAxisYSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/XAxisZSupplier/chart_XAxisZSupplier.xba69
-rw-r--r--qadevOOo/tests/basic/ifc/chart/XAxisZSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/XChartData/chart_XChartData.xba130
-rw-r--r--qadevOOo/tests/basic/ifc/chart/XChartData/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/XChartDataArray/chart_XChartDataArray.xba179
-rw-r--r--qadevOOo/tests/basic/ifc/chart/XChartDataArray/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/XChartDocument/chart_XChartDocument.xba129
-rw-r--r--qadevOOo/tests/basic/ifc/chart/XChartDocument/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/XDiagram/chart_XDiagram.xba73
-rw-r--r--qadevOOo/tests/basic/ifc/chart/XDiagram/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/XStatisticDisplay/chart_XStatisticDisplay.xba74
-rw-r--r--qadevOOo/tests/basic/ifc/chart/XStatisticDisplay/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/XTwoAxisXSupplier/chart_XTwoAxisXSupplier.xba61
-rw-r--r--qadevOOo/tests/basic/ifc/chart/XTwoAxisXSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/chart/XTwoAxisYSupplier/chart_XTwoAxisYSupplier.xba61
-rw-r--r--qadevOOo/tests/basic/ifc/chart/XTwoAxisYSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/connection/XAcceptor/connection_XAcceptor.xba132
-rw-r--r--qadevOOo/tests/basic/ifc/connection/XAcceptor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/connection/XConnector/connection_XConnector.xba70
-rw-r--r--qadevOOo/tests/basic/ifc/connection/XConnector/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/container/XChild/container_XChild.xba79
-rw-r--r--qadevOOo/tests/basic/ifc/container/XChild/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/container/XContainer/container_XContainer.xba228
-rw-r--r--qadevOOo/tests/basic/ifc/container/XContainer/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/container/XContentEnumerationAccess/container_XContentEnumerationAccess.xba65
-rw-r--r--qadevOOo/tests/basic/ifc/container/XContentEnumerationAccess/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/container/XElementAccess/container_XElementAccess.xba67
-rw-r--r--qadevOOo/tests/basic/ifc/container/XElementAccess/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/container/XEnumeration/container_XEnumeration.xba64
-rw-r--r--qadevOOo/tests/basic/ifc/container/XEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/container/XEnumerationAccess/container_XEnumerationAccess.xba64
-rw-r--r--qadevOOo/tests/basic/ifc/container/XEnumerationAccess/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/container/XHierarchicalName/container_XHierarchicalName.xba97
-rw-r--r--qadevOOo/tests/basic/ifc/container/XHierarchicalName/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/container/XHierarchicalNameAccess/container_XHierarchicalNameAccess.xba79
-rw-r--r--qadevOOo/tests/basic/ifc/container/XHierarchicalNameAccess/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/container/XIndexAccess/container_XIndexAccess.xba73
-rw-r--r--qadevOOo/tests/basic/ifc/container/XIndexAccess/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/container/XIndexContainer/container_XIndexContainer.xba82
-rw-r--r--qadevOOo/tests/basic/ifc/container/XIndexContainer/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/container/XIndexReplace/container_XIndexReplace.xba84
-rw-r--r--qadevOOo/tests/basic/ifc/container/XIndexReplace/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/container/XNameAccess/container_XNameAccess.xba81
-rw-r--r--qadevOOo/tests/basic/ifc/container/XNameAccess/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/container/XNameContainer/container_XNameContainer.xba79
-rw-r--r--qadevOOo/tests/basic/ifc/container/XNameContainer/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/container/XNameReplace/container_XNameReplace.xba116
-rw-r--r--qadevOOo/tests/basic/ifc/container/XNameReplace/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/container/XNamed/container_XNamed.xba111
-rw-r--r--qadevOOo/tests/basic/ifc/container/XNamed/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/container/XSet/container_XSet.xba78
-rw-r--r--qadevOOo/tests/basic/ifc/container/XSet/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/datatransfer/XDataFormatTranslator/datatransfer_XDataFormatTranslator.xba95
-rw-r--r--qadevOOo/tests/basic/ifc/datatransfer/XDataFormatTranslator/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/datatransfer/XMimeContentTypeFactory/datatransfer_XMimeContentTypeFactory.xba63
-rw-r--r--qadevOOo/tests/basic/ifc/datatransfer/XMimeContentTypeFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/datatransfer/clipboard/XClipboard/datatransfer_clipboard_XClipboard.xba105
-rw-r--r--qadevOOo/tests/basic/ifc/datatransfer/clipboard/XClipboard/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/datatransfer/clipboard/XClipboardEx/datatransfer_clipboard_XClipboardEx.xba63
-rw-r--r--qadevOOo/tests/basic/ifc/datatransfer/clipboard/XClipboardEx/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/datatransfer/clipboard/XClipboardNotifier/datatransfer_clipboard_XClipboardNotifier.xba133
-rw-r--r--qadevOOo/tests/basic/ifc/datatransfer/clipboard/XClipboardNotifier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/datatransfer/clipboard/XFlushableClipboard/datatransfer_clipboard_XFlushableClipboard.xba67
-rw-r--r--qadevOOo/tests/basic/ifc/datatransfer/clipboard/XFlushableClipboard/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/document/DocumentInfo/document_DocumentInfo.xba206
-rw-r--r--qadevOOo/tests/basic/ifc/document/DocumentInfo/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/document/OfficeDocument/document_OfficeDocument.xba55
-rw-r--r--qadevOOo/tests/basic/ifc/document/OfficeDocument/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/document/XActionLockable/document_XActionLockable.xba85
-rw-r--r--qadevOOo/tests/basic/ifc/document/XActionLockable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/document/XDocumentInfo/document_XDocumentInfo.xba94
-rw-r--r--qadevOOo/tests/basic/ifc/document/XDocumentInfo/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/document/XDocumentInfoSupplier/document_XDocumentInfoSupplier.xba61
-rw-r--r--qadevOOo/tests/basic/ifc/document/XDocumentInfoSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/document/XDocumentInsertable/document_XDocumentInsertable.xba64
-rw-r--r--qadevOOo/tests/basic/ifc/document/XDocumentInsertable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/document/XEmbeddedObjectSupplier/document_XEmbeddedObjectSupplier.xba64
-rw-r--r--qadevOOo/tests/basic/ifc/document/XEmbeddedObjectSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/document/XEventsSupplier/document_XEventsSupplier.xba58
-rw-r--r--qadevOOo/tests/basic/ifc/document/XEventsSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/document/XExporter/document_XExporter.xba71
-rw-r--r--qadevOOo/tests/basic/ifc/document/XExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/document/XFilter/document_XFilter.xba89
-rw-r--r--qadevOOo/tests/basic/ifc/document/XFilter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/document/XImporter/document_XImporter.xba71
-rw-r--r--qadevOOo/tests/basic/ifc/document/XImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/document/XLinkTargetSupplier/document_XLinkTargetSupplier.xba61
-rw-r--r--qadevOOo/tests/basic/ifc/document/XLinkTargetSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/document/XMimeTypeInfo/document_XMimeTypeInfo.xba67
-rw-r--r--qadevOOo/tests/basic/ifc/document/XMimeTypeInfo/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/document/XStandaloneDocumentInfo/document_XStandaloneDocumentInfo.xba85
-rw-r--r--qadevOOo/tests/basic/ifc/document/XStandaloneDocumentInfo/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/document/XTypeDetection/document_XTypeDetection.xba79
-rw-r--r--qadevOOo/tests/basic/ifc/document/XTypeDetection/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/document/XViewDataSupplier/document_XViewDataSupplier.xba62
-rw-r--r--qadevOOo/tests/basic/ifc/document/XViewDataSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/ConnectorProperties/drawing_ConnectorProperties.xba75
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/ConnectorProperties/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/ConnectorShape/drawing_ConnectorShape.xba74
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/ConnectorShape/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/DrawingDocument/drawing_DrawingDocument.xba62
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/DrawingDocument/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/DrawingDocumentDrawView/drawing_DrawingDocumentDrawView.xba73
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/DrawingDocumentDrawView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/EllipseShape/drawing_EllipseShape.xba71
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/EllipseShape/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/FillProperties/drawing_FillProperties.xba121
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/FillProperties/drawing__FillProperties.xba121
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/FillProperties/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/GenericDrawPage/drawing_GenericDrawPage.xba71
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/GenericDrawPage/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/GraphicObjectShape/drawing_GraphicObjectShape.xba82
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/GraphicObjectShape/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/Layer/drawing_Layer.xba62
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/Layer/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/LineProperties/drawing_LineProperties.xba92
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/LineProperties/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/MeasureProperties/drawing_MeasureProperties.xba120
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/MeasureProperties/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/MeasureShape/drawing_MeasureShape.xba61
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/MeasureShape/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/PolyPolygonBezierDescriptor/drawing_PolyPolygonBezierDescriptor.xba60
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/PolyPolygonBezierDescriptor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/PolyPolygonDescriptor/drawing_PolyPolygonDescriptor.xba60
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/PolyPolygonDescriptor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/RotationDescriptor/drawing_RotationDescriptor.xba64
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/RotationDescriptor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/ShadowProperties/drawing_ShadowProperties.xba64
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/ShadowProperties/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/Shape/drawing_Shape.xba93
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/Shape/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/TextProperties/drawing_TextProperties.xba104
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/TextProperties/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/TextShape/drawing_TextShape.xba56
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/TextShape/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XControlShape/drawing_XControlShape.xba82
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XControlShape/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XDrawPageDuplicator/drawing_XDrawPageDuplicator.xba74
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XDrawPageDuplicator/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XDrawPageExpander/drawing_XDrawPageExpander.xba64
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XDrawPageExpander/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XDrawPageSummarizer/drawing_XDrawPageSummarizer.xba63
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XDrawPageSummarizer/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XDrawPageSupplier/drawing_XDrawPageSupplier.xba57
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XDrawPageSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XDrawPages/drawing_XDrawPages.xba71
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XDrawPages/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XDrawPagesSupplier/drawing_XDrawPagesSupplier.xba60
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XDrawPagesSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XDrawView/drawing_XDrawView.xba89
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XDrawView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XGluePointsSupplier/drawing_XGluePointsSupplier.xba69
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XGluePointsSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XLayerManager/drawing_XLayerManager.xba94
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XLayerManager/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XLayerSupplier/drawing_XLayerSupplier.xba62
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XLayerSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XMasterPageTarget/drawing_XMasterPageTarget.xba74
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XMasterPageTarget/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XMasterPagesSupplier/drawing_XMasterPagesSupplier.xba61
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XMasterPagesSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XShape/drawing_XShape.xba133
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XShape/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XShapeBinder/drawing_XShapeBinder.xba94
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XShapeBinder/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XShapeCombiner/drawing_XShapeCombiner.xba86
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XShapeCombiner/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XShapeDescriptor/drawing_XShapeDescriptor.xba90
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XShapeDescriptor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XShapeGroup/drawing_XShapeGroup.xba67
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XShapeGroup/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XShapeGrouper/drawing_XShapeGrouper.xba78
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XShapeGrouper/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XShapes/drawing_XShapes.xba82
-rw-r--r--qadevOOo/tests/basic/ifc/drawing/XShapes/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/DataAwareControlModel/form_DataAwareControlModel.xba60
-rw-r--r--qadevOOo/tests/basic/ifc/form/DataAwareControlModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/FormComponent/form_FormComponent.xba56
-rw-r--r--qadevOOo/tests/basic/ifc/form/FormComponent/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/FormControlModel/form_FormControlModel.xba60
-rw-r--r--qadevOOo/tests/basic/ifc/form/FormControlModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/XApproveActionBroadcaster/form_XApproveActionBroadcaster.xba99
-rw-r--r--qadevOOo/tests/basic/ifc/form/XApproveActionBroadcaster/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/XBoundComponent/form_XBoundComponent.xba79
-rw-r--r--qadevOOo/tests/basic/ifc/form/XBoundComponent/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/XBoundControl/form_XBoundControl.xba70
-rw-r--r--qadevOOo/tests/basic/ifc/form/XBoundControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/XChangeBroadcaster/form_XChangeBroadcaster.xba103
-rw-r--r--qadevOOo/tests/basic/ifc/form/XChangeBroadcaster/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/XFormController/form_XFormController.xba123
-rw-r--r--qadevOOo/tests/basic/ifc/form/XFormController/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/XFormsSupplier/form_XFormsSupplier.xba57
-rw-r--r--qadevOOo/tests/basic/ifc/form/XFormsSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/XGrid/form_XGrid.xba73
-rw-r--r--qadevOOo/tests/basic/ifc/form/XGrid/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/XGridColumnFactory/form_XGridColumnFactory.xba65
-rw-r--r--qadevOOo/tests/basic/ifc/form/XGridColumnFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/XGridFieldDataSupplier/form_XGridFieldDataSupplier.xba91
-rw-r--r--qadevOOo/tests/basic/ifc/form/XGridFieldDataSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/XImageProducerSupplier/form_XImageProducerSupplier.xba62
-rw-r--r--qadevOOo/tests/basic/ifc/form/XImageProducerSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/XLoadListener/form_XLoadListener.xba79
-rw-r--r--qadevOOo/tests/basic/ifc/form/XLoadListener/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/XLoadable/form_XLoadable.xba139
-rw-r--r--qadevOOo/tests/basic/ifc/form/XLoadable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/XReset/form_XReset.xba116
-rw-r--r--qadevOOo/tests/basic/ifc/form/XReset/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/XSubmit/form_XSubmit.xba107
-rw-r--r--qadevOOo/tests/basic/ifc/form/XSubmit/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/XUpdateBroadcaster/form_XUpdateBroadcaster.xba172
-rw-r--r--qadevOOo/tests/basic/ifc/form/XUpdateBroadcaster/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/CheckBox/form_component_CheckBox.xba61
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/CheckBox/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/ComboBox/form_component_ComboBox.xba59
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/ComboBox/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/CommandButton/form_component_CommandButton.xba78
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/CommandButton/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/CurrencyField/form_component_CurrencyField.xba71
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/CurrencyField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/DataForm/form_component_DataForm.xba89
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/DataForm/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/DatabaseComboBox/form_component_DatabaseComboBox.xba63
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/DatabaseComboBox/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/DatabaseFormattedField/form_component_DatabaseFormattedField.xba59
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/DatabaseFormattedField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/DatabaseImageControl/form_component_DatabaseImageControl.xba59
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/DatabaseImageControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/DatabaseListBox/form_component_DatabaseListBox.xba76
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/DatabaseListBox/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/DatabasePatternField/form_component_DatabasePatternField.xba59
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/DatabasePatternField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/DatabaseTextField/form_component_DatabaseTextField.xba59
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/DatabaseTextField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/DateField/form_component_DateField.xba71
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/DateField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/FileControl/form_component_FileControl.xba59
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/FileControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/GridControl/form_component_GridControl.xba69
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/GridControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/HTMLForm/form_component_HTMLForm.xba83
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/HTMLForm/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/HiddenControl/form_component_HiddenControl.xba59
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/HiddenControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/ImageButton/form_component_ImageButton.xba72
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/ImageButton/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/ListBox/form_component_ListBox.xba80
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/ListBox/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/NumericField/form_component_NumericField.xba74
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/NumericField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/PatternField/form_component_PatternField.xba59
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/PatternField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/RadioButton/form_component_RadioButton.xba61
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/RadioButton/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/TextField/form_component_TextField.xba59
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/TextField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/TimeField/form_component_TimeField.xba71
-rw-r--r--qadevOOo/tests/basic/ifc/form/component/TimeField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/formula/FormulaProperties/formula_FormulaProperties.xba170
-rw-r--r--qadevOOo/tests/basic/ifc/formula/FormulaProperties/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/frame/Frame/frame_Frame.xba61
-rw-r--r--qadevOOo/tests/basic/ifc/frame/Frame/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XComponentLoader/frame_XComponentLoader.xba109
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XComponentLoader/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XController/frame_XController.xba134
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XController/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XDesktop/frame_XDesktop.xba97
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XDesktop/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XDispatch/frame_XDispatch.xba120
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XDispatch/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XDispatchProvider/frame_XDispatchProvider.xba110
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XDispatchProvider/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XDispatchProviderInterception/frame_XDispatchProviderInterception.xba71
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XDispatchProviderInterception/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XDispatchRecorder/frame_XDispatchRecorder.xba154
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XDispatchRecorder/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XDispatchRecorderSupplier/frame_XDispatchRecorderSupplier.xba109
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XDispatchRecorderSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XDocumentTemplates/frame_XDocumentTemplates.xba191
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XDocumentTemplates/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XFrame/frame_XFrame.xba347
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XFrame/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XFrameLoader/frame_XFrameLoader.xba127
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XFrameLoader/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XFramesSupplier/frame_XFramesSupplier.xba129
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XFramesSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XModel/frame_XModel.xba145
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XStorable/frame_XStorable.xba116
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XStorable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XSynchronousFrameLoader/frame_XSynchronousFrameLoader.xba87
-rw-r--r--qadevOOo/tests/basic/ifc/frame/XSynchronousFrameLoader/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/i18n/XBreakIterator/i18n_XBreakIterator.xba408
-rw-r--r--qadevOOo/tests/basic/ifc/i18n/XBreakIterator/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/i18n/XCalendar/i18n_XCalendar.xba306
-rw-r--r--qadevOOo/tests/basic/ifc/i18n/XCalendar/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/i18n/XCharacterClassification/i18n_XCharacterClassification.xba223
-rw-r--r--qadevOOo/tests/basic/ifc/i18n/XCharacterClassification/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/i18n/XCollator/i18n_XCollator.xba133
-rw-r--r--qadevOOo/tests/basic/ifc/i18n/XCollator/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/i18n/XIndexEntrySupplier/i18n_XIndexEntrySupplier.xba84
-rw-r--r--qadevOOo/tests/basic/ifc/i18n/XIndexEntrySupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/i18n/XLocaleData/i18n_XLocaleData.xba245
-rw-r--r--qadevOOo/tests/basic/ifc/i18n/XLocaleData/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/i18n/XNumberFormatCode/i18n_XNumberFormatCode.xba78
-rw-r--r--qadevOOo/tests/basic/ifc/i18n/XNumberFormatCode/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/i18n/XTransliteration/i18n_XTransliteration.xba282
-rw-r--r--qadevOOo/tests/basic/ifc/i18n/XTransliteration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/io/XActiveDataControl/io_XActiveDataControl.xba204
-rw-r--r--qadevOOo/tests/basic/ifc/io/XActiveDataControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/io/XActiveDataSink/io_XActiveDataSink.xba112
-rw-r--r--qadevOOo/tests/basic/ifc/io/XActiveDataSink/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/io/XActiveDataSource/io_XActiveDataSource.xba68
-rw-r--r--qadevOOo/tests/basic/ifc/io/XActiveDataSource/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/io/XConnectable/io_XConnectable.xba77
-rw-r--r--qadevOOo/tests/basic/ifc/io/XConnectable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/io/XDataInputStream/io_XDataInputStream.xba170
-rw-r--r--qadevOOo/tests/basic/ifc/io/XDataInputStream/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/io/XDataOutputStream/io_XDataOutputStream.xba173
-rw-r--r--qadevOOo/tests/basic/ifc/io/XDataOutputStream/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/io/XInputStream/io_XInputStream.xba115
-rw-r--r--qadevOOo/tests/basic/ifc/io/XInputStream/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/io/XMarkableStream/io_XMarkableStream.xba253
-rw-r--r--qadevOOo/tests/basic/ifc/io/XMarkableStream/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/io/XObjectInputStream/io_XObjectInputStream.xba79
-rw-r--r--qadevOOo/tests/basic/ifc/io/XObjectInputStream/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/io/XObjectOutputStream/io_XObjectOutputStream.xba75
-rw-r--r--qadevOOo/tests/basic/ifc/io/XObjectOutputStream/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/io/XOutputStream/io_XOutputStream.xba88
-rw-r--r--qadevOOo/tests/basic/ifc/io/XOutputStream/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/io/XPersistObject/io_XPersistObject.xba130
-rw-r--r--qadevOOo/tests/basic/ifc/io/XPersistObject/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/java/XJavaVM/javajava_XJavaVM.xba79
-rw-r--r--qadevOOo/tests/basic/ifc/java/XJavaVM/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/lang/ServiceManager/lang_ServiceManager.xba61
-rw-r--r--qadevOOo/tests/basic/ifc/lang/ServiceManager/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/lang/XComponent/lang_XComponent.xba112
-rw-r--r--qadevOOo/tests/basic/ifc/lang/XComponent/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/lang/XEventListener/lang_XEventListener.xba64
-rw-r--r--qadevOOo/tests/basic/ifc/lang/XEventListener/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/lang/XInitialization/lang_XInitialization.xba86
-rw-r--r--qadevOOo/tests/basic/ifc/lang/XInitialization/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/lang/XMultiComponentFactory/lang_XMultiComponentFactory.xba91
-rw-r--r--qadevOOo/tests/basic/ifc/lang/XMultiComponentFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/lang/XMultiServiceFactory/lang_XMultiServiceFactory.xba99
-rw-r--r--qadevOOo/tests/basic/ifc/lang/XMultiServiceFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/lang/XServiceDisplayName/lang_XServiceDisplayName.xba65
-rw-r--r--qadevOOo/tests/basic/ifc/lang/XServiceDisplayName/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/lang/XServiceInfo/lang_XServiceInfo.xba67
-rw-r--r--qadevOOo/tests/basic/ifc/lang/XServiceInfo/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/lang/XSingleServiceFactory/lang_XSingleServiceFactory.xba106
-rw-r--r--qadevOOo/tests/basic/ifc/lang/XSingleServiceFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/lang/XTypeProvider/lang_XTypeProvider.xba88
-rw-r--r--qadevOOo/tests/basic/ifc/lang/XTypeProvider/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/linguistic2/LinguProperties/linguistic2_LinguProperties.xba92
-rw-r--r--qadevOOo/tests/basic/ifc/linguistic2/LinguProperties/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/linguistic2/XDictionaryList/linguistic2_XDictionaryList.xba191
-rw-r--r--qadevOOo/tests/basic/ifc/linguistic2/XDictionaryList/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/linguistic2/XHyphenator/linguistic2_XHyphenator.xba85
-rw-r--r--qadevOOo/tests/basic/ifc/linguistic2/XHyphenator/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/linguistic2/XLinguServiceEventBroadcaster/linguistic2_XLinguServiceEventBroadcaster.xba77
-rw-r--r--qadevOOo/tests/basic/ifc/linguistic2/XLinguServiceEventBroadcaster/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/linguistic2/XLinguServiceManager/linguistic2_XLinguServiceManager.xba138
-rw-r--r--qadevOOo/tests/basic/ifc/linguistic2/XLinguServiceManager/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/linguistic2/XSearchableDictionaryList/linguistic2_XSearchableDictionaryList.xba67
-rw-r--r--qadevOOo/tests/basic/ifc/linguistic2/XSearchableDictionaryList/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/linguistic2/XSpellChecker/linguistic2_XSpellChecker.xba78
-rw-r--r--qadevOOo/tests/basic/ifc/linguistic2/XSpellChecker/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/linguistic2/XSupportedLocales/linguistic2_XSupportedLocales.xba78
-rw-r--r--qadevOOo/tests/basic/ifc/linguistic2/XSupportedLocales/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/linguistic2/XThesaurus/linguistic2_XThesaurus.xba69
-rw-r--r--qadevOOo/tests/basic/ifc/linguistic2/XThesaurus/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/loader/XImplementationLoader/loader_XImplementationLoader.xba94
-rw-r--r--qadevOOo/tests/basic/ifc/loader/XImplementationLoader/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/presentation/OutlineView/presentation_OutlineView.xba59
-rw-r--r--qadevOOo/tests/basic/ifc/presentation/OutlineView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/presentation/Presentation/presentation_Presentation.xba85
-rw-r--r--qadevOOo/tests/basic/ifc/presentation/Presentation/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/presentation/PresentationView/presentation_PresentationView.xba61
-rw-r--r--qadevOOo/tests/basic/ifc/presentation/PresentationView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/presentation/PreviewView/presentation_PreviewView.xba64
-rw-r--r--qadevOOo/tests/basic/ifc/presentation/PreviewView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/presentation/XCustomPresentationSupplier/presentation_XCustomPresentationSupplier.xba62
-rw-r--r--qadevOOo/tests/basic/ifc/presentation/XCustomPresentationSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/presentation/XPresentation/presentation_XPresentation.xba68
-rw-r--r--qadevOOo/tests/basic/ifc/presentation/XPresentation/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/presentation/XPresentationSupplier/presentation_XPresentationSupplier.xba61
-rw-r--r--qadevOOo/tests/basic/ifc/presentation/XPresentationSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/reflection/XIdlReflection/reflection_XIdlReflection.xba68
-rw-r--r--qadevOOo/tests/basic/ifc/reflection/XIdlReflection/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/reflection/XProxyFactory/reflection_XProxyFactory.xba59
-rw-r--r--qadevOOo/tests/basic/ifc/reflection/XProxyFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/registry/XImplementationRegistration/registry_XImplementationRegistration.xba168
-rw-r--r--qadevOOo/tests/basic/ifc/registry/XImplementationRegistration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/registry/XSimpleRegistry/registry_XSimpleRegistry.xba132
-rw-r--r--qadevOOo/tests/basic/ifc/registry/XSimpleRegistry/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/script/XEventAttacherManager/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/script/XEventAttacherManager/script_XEventAttacherManager.xba160
-rw-r--r--qadevOOo/tests/basic/ifc/script/XInvocationAdapterFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/script/XInvocationAdapterFactory/script_XInvocationAdapterFactory.xba81
-rw-r--r--qadevOOo/tests/basic/ifc/script/XInvocationAdapterFactory2/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/script/XInvocationAdapterFactory2/script_XInvocationAdapterFactory2.xba80
-rw-r--r--qadevOOo/tests/basic/ifc/script/XTypeConverter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/script/XTypeConverter/script_XTypeConverter.xba109
-rw-r--r--qadevOOo/tests/basic/ifc/sdb/DataAccessDescriptor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdb/DataAccessDescriptor/sdb_DataAccessDescriptor.xba81
-rw-r--r--qadevOOo/tests/basic/ifc/sdb/DataSource/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdb/DataSource/sdb_DataSource.xba111
-rw-r--r--qadevOOo/tests/basic/ifc/sdb/DatasourceAdministrationDialog/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdb/DatasourceAdministrationDialog/sdb_DatasourceAdministrationDialog.xba59
-rw-r--r--qadevOOo/tests/basic/ifc/sdb/ErrorMessageDialog/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdb/ErrorMessageDialog/sdb_ErrorMessageDialog.xba74
-rw-r--r--qadevOOo/tests/basic/ifc/sdb/QueryDefinition/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdb/QueryDefinition/sdb_QueryDefinition.xba66
-rw-r--r--qadevOOo/tests/basic/ifc/sdb/RowSet/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdb/RowSet/sdb_RowSet.xba100
-rw-r--r--qadevOOo/tests/basic/ifc/sdb/XBookmarksSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdb/XBookmarksSupplier/sdb_XBookmarksSupplier.xba63
-rw-r--r--qadevOOo/tests/basic/ifc/sdb/XCompletedConnection/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdb/XCompletedConnection/sdb_XCompletedConnection.xba64
-rw-r--r--qadevOOo/tests/basic/ifc/sdb/XQueryDefinitionsSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdb/XQueryDefinitionsSupplier/sdb_XQueryDefinitionsSupplier.xba61
-rw-r--r--qadevOOo/tests/basic/ifc/sdb/XResultSetAccess/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdb/XResultSetAccess/sdb_XResultSetAccess.xba60
-rw-r--r--qadevOOo/tests/basic/ifc/sdb/XRowSetApproveBroadcaster/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdb/XRowSetApproveBroadcaster/sdb_XRowSetApproveBroadcaster.xba214
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/ResultSet/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/ResultSet/sdbc_ResultSet.xba64
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/RowSet/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/RowSet/sdbc_RowSet.xba78
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XCloseable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XCloseable/sdbc_XCloseable.xba79
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XColumnLocate/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XColumnLocate/sdbc_XColumnLocate.xba71
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XDataSource/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XDataSource/sdbc_XDataSource.xba74
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XDriver/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XDriver/sdbc_XDriver.xba104
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XDriverManager/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XDriverManager/sdbc_XDriverManager.xba86
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XIsolatedConnection/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XIsolatedConnection/sdbc_XIsolatedConnection.xba76
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XParameters/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XParameters/sdbc_XParameters.xba211
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XResultSet/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XResultSet/sdbc_XResultSet.xba311
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XResultSetMetaDataSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XResultSetMetaDataSupplier/sdbc_XResultSetMetaDataSupplier.xba61
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XResultSetUpdate/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XResultSetUpdate/sdbc_XResultSetUpdate.xba138
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XRow/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XRow/sdbc_XRow.xba317
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XRowSet/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XRowSet/sdbc_XRowSet.xba107
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XRowUpdate/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XRowUpdate/sdbc_XRowUpdate.xba514
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XWarningsSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XWarningsSupplier/sdbc_XWarningsSupplier.xba64
-rw-r--r--qadevOOo/tests/basic/ifc/sdbcx/ResultSet/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdbcx/ResultSet/sdbcx_ResultSet.xba58
-rw-r--r--qadevOOo/tests/basic/ifc/sdbcx/XColumnsSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdbcx/XColumnsSupplier/sdbcx_XColumnsSupplier.xba67
-rw-r--r--qadevOOo/tests/basic/ifc/sdbcx/XDataDefinitionSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdbcx/XDataDefinitionSupplier/sdbcx_XDataDefinitionSupplier.xba74
-rw-r--r--qadevOOo/tests/basic/ifc/sdbcx/XDeleteRows/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdbcx/XDeleteRows/sdbcx_XDeleteRows.xba84
-rw-r--r--qadevOOo/tests/basic/ifc/sdbcx/XRowLocate/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sdbcx/XRowLocate/sdbcx_XRowLocate.xba128
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/CellAreaLink/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/CellAreaLink/sheet_CellAreaLink.xba65
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/DataPilotField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/DataPilotField/sheet_DataPilotField.xba57
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/DatabaseRange/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/DatabaseRange/sheet_DatabaseRange.xba68
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/GlobalSheetSettings/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/GlobalSheetSettings/sheet_GlobalSheetSettings.xba90
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/SheetCell/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/SheetCell/sheet_SheetCell.xba66
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/SheetCellRange/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/SheetCellRange/sheet_SheetCellRange.xba65
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/SheetCellRanges/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/SheetCellRanges/sheet_SheetCellRanges.xba58
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/SheetFilterDescriptor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/SheetFilterDescriptor/sheet_SheetFilterDescriptor.xba72
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/SheetLink/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/SheetLink/sheet_SheetLink.xba70
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/Spreadsheet/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/Spreadsheet/sheet_Spreadsheet.xba70
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/SpreadsheetDocument/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/SpreadsheetDocument/sheet_SpreadsheetDocument.xba70
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/SpreadsheetDocumentSettings/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/SpreadsheetDocumentSettings/sheet_SpreadsheetDocumentSettings.xba75
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/SpreadsheetViewSettings/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/SpreadsheetViewSettings/sheet_SpreadsheetViewSettings.xba96
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/SubTotalDescriptor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/SubTotalDescriptor/sheet_SubTotalDescriptor.xba70
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/TableAutoFormat/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/TableAutoFormat/sheet_TableAutoFormat.xba66
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/TableAutoFormatField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/TableAutoFormatField/sheet_TableAutoFormatField.xba163
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/TableValidation/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/TableValidation/sheet_TableValidation.xba72
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XAreaLink/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XAreaLink/sheet_XAreaLink.xba111
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XAreaLinks/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XAreaLinks/sheet_XAreaLinks.xba85
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XArrayFormulaRange/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XArrayFormulaRange/sheet_XArrayFormulaRange.xba85
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XCellAddressable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XCellAddressable/sheet_XCellAddressable.xba63
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XCellRangeAddressable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XCellRangeAddressable/sheet_XCellRangeAddressable.xba67
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XCellRangeData/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XCellRangeData/sheet_XCellRangeData.xba72
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XCellRangeMovement/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XCellRangeMovement/sheet_XCellRangeMovement.xba167
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XCellRangeReferrer/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XCellRangeReferrer/sheet_XCellRangeReferrer.xba92
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XCellSeries/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XCellSeries/sheet_XCellSeries.xba126
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XConsolidationDescriptor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XConsolidationDescriptor/sheet_XConsolidationDescriptor.xba144
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XDDELink/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XDDELink/sheet_XDDELink.xba84
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XDataPilotDescriptor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XDataPilotDescriptor/sheet_XDataPilotDescriptor.xba143
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XDataPilotTable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XDataPilotTable/sheet_XDataPilotTable.xba92
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XDataPilotTables/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XDataPilotTables/sheet_XDataPilotTables.xba88
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XDataPilotTablesSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XDataPilotTablesSupplier/sheet_XDataPilotTablesSupplier.xba60
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XDatabaseRange/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XDatabaseRange/sheet_XDatabaseRange.xba106
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XDatabaseRanges/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XDatabaseRanges/sheet_XDatabaseRanges.xba76
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XFunctionDescriptions/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XFunctionDescriptions/sheet_XFunctionDescriptions.xba78
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XHeaderFooterContent/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XHeaderFooterContent/sheet_XHeaderFooterContent.xba94
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XLabelRange/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XLabelRange/sheet_XLabelRange.xba116
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XLabelRanges/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XLabelRanges/sheet_XLabelRanges.xba88
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XNamedRange/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XNamedRange/sheet_XNamedRange.xba110
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XNamedRanges/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XNamedRanges/sheet_XNamedRanges.xba131
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XRecentFunctions/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XRecentFunctions/sheet_XRecentFunctions.xba110
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XScenarios/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XScenarios/sheet_XScenarios.xba80
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XScenariosSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XScenariosSupplier/sheet_XScenariosSupplier.xba61
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSheetAnnotation/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSheetAnnotation/sheet_XSheetAnnotation.xba92
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSheetAnnotations/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSheetAnnotations/sheet_XSheetAnnotations.xba75
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSheetAnnotationsSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSheetAnnotationsSupplier/sheet_XSheetAnnotationsSupplier.xba60
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSheetCellCursor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSheetCellCursor/sheet_XSheetCellCursor.xba135
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSheetCellRange/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSheetCellRange/sheet_XSheetCellRange.xba63
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSheetCellRangeContainer/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSheetCellRangeContainer/sheet_XSheetCellRangeContainer.xba90
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSheetCellRanges/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSheetCellRanges/sheet_XSheetCellRanges.xba81
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSheetCondition/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSheetCondition/sheet_XSheetCondition.xba103
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSheetConditionalEntries/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSheetConditionalEntries/sheet_XSheetConditionalEntries.xba78
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSheetConditionalEntry/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSheetConditionalEntry/sheet_XSheetConditionalEntry.xba70
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSheetFilterDescriptor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSheetFilterDescriptor/sheet_XSheetFilterDescriptor.xba77
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSheetOperation/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSheetOperation/sheet_XSheetOperation.xba70
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSheetPageBreak/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSheetPageBreak/sheet_XSheetPageBreak.xba103
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSpreadsheet/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSpreadsheet/sheet_XSpreadsheet.xba66
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSpreadsheetDocument/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSpreadsheetDocument/sheet_XSpreadsheetDocument.xba63
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSpreadsheetView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSpreadsheetView/sheet_XSpreadsheetView.xba95
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSpreadsheets/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSpreadsheets/sheet_XSpreadsheets.xba130
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSubTotalDescriptor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSubTotalDescriptor/sheet_XSubTotalDescriptor.xba79
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSubTotalField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XSubTotalField/sheet_XSubTotalField.xba87
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XUsedAreaCursor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XUsedAreaCursor/sheet_XUsedAreaCursor.xba86
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XViewFreezable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XViewFreezable/sheet_XViewFreezable.xba75
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XViewPane/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XViewPane/sheet_XViewPane.xba87
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XViewSplitable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/sheet/XViewSplitable/sheet_XViewSplitable.xba133
-rw-r--r--qadevOOo/tests/basic/ifc/style/CharacterProperties/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/style/CharacterProperties/style_CharacterProperties.xba292
-rw-r--r--qadevOOo/tests/basic/ifc/style/CharacterPropertiesAsian/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/style/CharacterPropertiesAsian/style_CharacterPropertiesAsian.xba100
-rw-r--r--qadevOOo/tests/basic/ifc/style/CharacterPropertiesComplex/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/style/CharacterPropertiesComplex/style_CharacterPropertiesComplex.xba94
-rw-r--r--qadevOOo/tests/basic/ifc/style/ParagraphProperties/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/style/ParagraphProperties/style_ParagraphProperties.xba212
-rw-r--r--qadevOOo/tests/basic/ifc/style/ParagraphPropertiesAsian/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/style/ParagraphPropertiesAsian/style_ParagraphPropertiesAsian.xba63
-rw-r--r--qadevOOo/tests/basic/ifc/style/ParagraphPropertiesComplex/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/style/ParagraphPropertiesComplex/style_ParagraphPropertiesComplex.xba58
-rw-r--r--qadevOOo/tests/basic/ifc/style/Style/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/style/Style/style_Style.xba62
-rw-r--r--qadevOOo/tests/basic/ifc/style/XStyle/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/style/XStyle/style_XStyle.xba90
-rw-r--r--qadevOOo/tests/basic/ifc/style/XStyleFamiliesSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/style/XStyleFamiliesSupplier/style_XStyleFamiliesSupplier.xba62
-rw-r--r--qadevOOo/tests/basic/ifc/system/XProxySettings/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/system/XProxySettings/system_XProxySettings.xba114
-rw-r--r--qadevOOo/tests/basic/ifc/system/XSimpleMailClientSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/system/XSimpleMailClientSupplier/system_XSimpleMailClientSupplier.xba65
-rw-r--r--qadevOOo/tests/basic/ifc/system/XSystemShellExecute/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/system/XSystemShellExecute/system_XSystemShellExecute.xba105
-rw-r--r--qadevOOo/tests/basic/ifc/table/CellProperties/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/table/CellProperties/table_CellProperties.xba109
-rw-r--r--qadevOOo/tests/basic/ifc/table/TableColumn/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/table/TableColumn/table_TableColumn.xba64
-rw-r--r--qadevOOo/tests/basic/ifc/table/TableRow/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/table/TableRow/table_TableRow.xba62
-rw-r--r--qadevOOo/tests/basic/ifc/table/XAutoFormattable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/table/XAutoFormattable/table_XAutoFormattable.xba67
-rw-r--r--qadevOOo/tests/basic/ifc/table/XCell/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/table/XCell/table_XCell.xba100
-rw-r--r--qadevOOo/tests/basic/ifc/table/XCellCursor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/table/XCellCursor/table_XCellCursor.xba144
-rw-r--r--qadevOOo/tests/basic/ifc/table/XCellRange/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/table/XCellRange/table_XCellRange.xba142
-rw-r--r--qadevOOo/tests/basic/ifc/table/XColumnRowRange/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/table/XColumnRowRange/table_XColumnRowRange.xba71
-rw-r--r--qadevOOo/tests/basic/ifc/table/XTableChart/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/table/XTableChart/table_XTableChart.xba106
-rw-r--r--qadevOOo/tests/basic/ifc/table/XTableCharts/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/table/XTableCharts/table_XTableCharts.xba99
-rw-r--r--qadevOOo/tests/basic/ifc/table/XTableChartsSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/table/XTableChartsSupplier/table_XTableChartsSupplier.xba59
-rw-r--r--qadevOOo/tests/basic/ifc/table/XTableColumns/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/table/XTableColumns/table_XTableColumns.xba87
-rw-r--r--qadevOOo/tests/basic/ifc/table/XTableRows/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/table/XTableRows/table_XTableRows.xba88
-rw-r--r--qadevOOo/tests/basic/ifc/task/XInteractionHandler/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/task/XInteractionHandler/task_XInteractionHandler.xba79
-rw-r--r--qadevOOo/tests/basic/ifc/task/XJob/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/task/XJob/task_XJob.xba88
-rw-r--r--qadevOOo/tests/basic/ifc/task/XStatusIndicatorFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/task/XStatusIndicatorFactory/task_XStatusIndicatorFactory.xba77
-rw-r--r--qadevOOo/tests/basic/ifc/text/BaseFrame/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/BaseFrame/text_BaseFrame.xba63
-rw-r--r--qadevOOo/tests/basic/ifc/text/BaseFrameProperties/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/BaseFrameProperties/text_BaseFrameProperties.xba183
-rw-r--r--qadevOOo/tests/basic/ifc/text/BaseIndex/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/BaseIndex/text_BaseIndex.xba102
-rw-r--r--qadevOOo/tests/basic/ifc/text/BaseIndexMark/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/BaseIndexMark/text_BaseIndexMark.xba56
-rw-r--r--qadevOOo/tests/basic/ifc/text/CellProperties/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/CellProperties/text_CellProperties.xba109
-rw-r--r--qadevOOo/tests/basic/ifc/text/CellRange/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/CellRange/text_CellRange.xba74
-rw-r--r--qadevOOo/tests/basic/ifc/text/Defaults/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/Defaults/text_Defaults.xba56
-rw-r--r--qadevOOo/tests/basic/ifc/text/DocumentIndex/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/DocumentIndex/text_DocumentIndex.xba66
-rw-r--r--qadevOOo/tests/basic/ifc/text/DocumentIndexMark/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/DocumentIndexMark/text_DocumentIndexMark.xba60
-rw-r--r--qadevOOo/tests/basic/ifc/text/Footnote/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/Footnote/text_Footnote.xba56
-rw-r--r--qadevOOo/tests/basic/ifc/text/FootnoteSettings/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/FootnoteSettings/text_FootnoteSettings.xba90
-rw-r--r--qadevOOo/tests/basic/ifc/text/LineNumberingProperties/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/LineNumberingProperties/text_LineNumberingProperties.xba80
-rw-r--r--qadevOOo/tests/basic/ifc/text/MailMerge/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/MailMerge/text_MailMerge.xba94
-rw-r--r--qadevOOo/tests/basic/ifc/text/NumberingRules/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/NumberingRules/text_NumberingRules.xba62
-rw-r--r--qadevOOo/tests/basic/ifc/text/PrintSettings/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/PrintSettings/text_PrintSettings.xba83
-rw-r--r--qadevOOo/tests/basic/ifc/text/Text/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/Text/text_Text.xba56
-rw-r--r--qadevOOo/tests/basic/ifc/text/TextColumns/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/TextColumns/text_TextColumns.xba75
-rw-r--r--qadevOOo/tests/basic/ifc/text/TextContent/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/TextContent/text_TextContent.xba78
-rw-r--r--qadevOOo/tests/basic/ifc/text/TextDocument/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/TextDocument/text_TextDocument.xba70
-rw-r--r--qadevOOo/tests/basic/ifc/text/TextFieldMaster/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/TextFieldMaster/text_TextFieldMaster.xba57
-rw-r--r--qadevOOo/tests/basic/ifc/text/TextFrame/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/TextFrame/text_TextFrame.xba75
-rw-r--r--qadevOOo/tests/basic/ifc/text/TextGraphicObject/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/TextGraphicObject/text_TextGraphicObject.xba207
-rw-r--r--qadevOOo/tests/basic/ifc/text/TextPortion/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/TextPortion/text_TextPortion.xba66
-rw-r--r--qadevOOo/tests/basic/ifc/text/TextSection/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/TextSection/text_TextSection.xba139
-rw-r--r--qadevOOo/tests/basic/ifc/text/TextTable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/TextTable/text_TextTable.xba128
-rw-r--r--qadevOOo/tests/basic/ifc/text/TextTableRow/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/TextTableRow/text_TextTableRow.xba75
-rw-r--r--qadevOOo/tests/basic/ifc/text/ViewSettings/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/ViewSettings/text_ViewSettings.xba114
-rw-r--r--qadevOOo/tests/basic/ifc/text/XAutoTextContainer/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XAutoTextContainer/text_XAutoTextContainer.xba95
-rw-r--r--qadevOOo/tests/basic/ifc/text/XAutoTextEntry/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XAutoTextEntry/text_XAutoTextEntry.xba66
-rw-r--r--qadevOOo/tests/basic/ifc/text/XAutoTextGroup/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XAutoTextGroup/text_XAutoTextGroup.xba100
-rw-r--r--qadevOOo/tests/basic/ifc/text/XChapterNumberingSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XChapterNumberingSupplier/text_XChapterNumberingSupplier.xba60
-rw-r--r--qadevOOo/tests/basic/ifc/text/XDefaultNumberingProvider/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XDefaultNumberingProvider/text_XDefaultNumberingProvider.xba119
-rw-r--r--qadevOOo/tests/basic/ifc/text/XDocumentIndex/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XDocumentIndex/text_XDocumentIndex.xba65
-rw-r--r--qadevOOo/tests/basic/ifc/text/XEndnotesSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XEndnotesSupplier/text_XEndnotesSupplier.xba64
-rw-r--r--qadevOOo/tests/basic/ifc/text/XFootnote/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XFootnote/text_XFootnote.xba68
-rw-r--r--qadevOOo/tests/basic/ifc/text/XFootnotesSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XFootnotesSupplier/text_XFootnotesSupplier.xba64
-rw-r--r--qadevOOo/tests/basic/ifc/text/XLineNumberingSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XLineNumberingSupplier/text_XLineNumberingSupplier.xba67
-rw-r--r--qadevOOo/tests/basic/ifc/text/XMailMergeBroadcaster/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XMailMergeBroadcaster/text_XMailMergeBroadcaster.xba106
-rw-r--r--qadevOOo/tests/basic/ifc/text/XPageCursor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XPageCursor/text_XPageCursor.xba123
-rw-r--r--qadevOOo/tests/basic/ifc/text/XPagePrintable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XPagePrintable/text_XPagePrintable.xba98
-rw-r--r--qadevOOo/tests/basic/ifc/text/XParagraphCursor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XParagraphCursor/text_XParagraphCursor.xba121
-rw-r--r--qadevOOo/tests/basic/ifc/text/XReferenceMarksSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XReferenceMarksSupplier/text_XReferenceMarksSupplier.xba59
-rw-r--r--qadevOOo/tests/basic/ifc/text/XRelativeTextContentInsert/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XRelativeTextContentInsert/text_XRelativeTextContentInsert.xba164
-rw-r--r--qadevOOo/tests/basic/ifc/text/XSentenceCursor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XSentenceCursor/text_XSentenceCursor.xba105
-rw-r--r--qadevOOo/tests/basic/ifc/text/XSimpleText/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XSimpleText/text_XSimpleText.xba113
-rw-r--r--qadevOOo/tests/basic/ifc/text/XText/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XText/text_XText.xba153
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextColumns/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextColumns/text_XTextColumns.xba119
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextContent/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextContent/text_XTextContent.xba83
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextCursor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextCursor/text_XTextCursor.xba134
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextDocument/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextDocument/text_XTextDocument.xba65
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextEmbeddedObjectsSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextEmbeddedObjectsSupplier/text_XTextEmbeddedObjectsSupplier.xba59
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextField/text_XTextField.xba67
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextFrame/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextFrame/text_XTextFrame.xba70
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextGraphicObjectsSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextGraphicObjectsSupplier/text_XTextGraphicObjectsSupplier.xba59
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextRange/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextRange/text_XTextRange.xba86
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextRangeCompare/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextRangeCompare/text_XTextRangeCompare.xba98
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextRangeMover/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextRangeMover/text_XTextRangeMover.xba71
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextSection/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextSection/text_XTextSection.xba106
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextTable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextTable/text_XTextTable.xba140
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextTableCursor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextTableCursor/text_XTextTableCursor.xba142
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextTablesSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextTablesSupplier/text_XTextTablesSupplier.xba59
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextViewCursorSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextViewCursorSupplier/text_XTextViewCursorSupplier.xba61
-rw-r--r--qadevOOo/tests/basic/ifc/text/XWordCursor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/text/XWordCursor/text_XWordCursor.xba99
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XCachedContentResultSetFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XCachedContentResultSetFactory/ucb_XCachedContentResultSetFactory.xba91
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XCachedContentResultSetStubFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XCachedContentResultSetStubFactory/ucb_XCachedContentResultSetStubFactory.xba91
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XCachedDynamicResultSetFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XCachedDynamicResultSetFactory/ucb_XCachedDynamicResultSetFactory.xba97
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XCachedDynamicResultSetStubFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XCachedDynamicResultSetStubFactory/ucb_XCachedDynamicResultSetStubFactory.xba125
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XCommandProcessor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XCommandProcessor/ucb_XCommandProcessor.xba85
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XContentIdentifierFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XContentIdentifierFactory/ucb_XContentIdentifierFactory.xba77
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XContentProvider/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XContentProvider/ucb_XContentProvider.xba95
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XContentProviderFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XContentProviderFactory/ucb_XContentProviderFactory.xba61
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XContentProviderManager/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XContentProviderManager/ucb_XContentProviderManager.xba115
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XDataContainer/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XDataContainer/ucb_XDataContainer.xba155
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XFileIdentifierConverter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XFileIdentifierConverter/ucb_XFileIdentifierConverter.xba90
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XPropertyMatcherFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XPropertyMatcherFactory/ucb_XPropertyMatcherFactory.xba71
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XPropertySetRegistryFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XPropertySetRegistryFactory/ucb_XPropertySetRegistryFactory.xba62
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XSimpleFileAccess/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XSimpleFileAccess/ucb_XSimpleFileAccess.xba242
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XSimpleFileAccess2/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XSimpleFileAccess2/ucb_XSimpleFileAccess2.xba77
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XSortedDynamicResultSetFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/ucb/XSortedDynamicResultSetFactory/ucb_XSortedDynamicResultSetFactory.xba111
-rw-r--r--qadevOOo/tests/basic/ifc/ui/dialogs/FilePicker/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/ui/dialogs/FilePicker/ui_dialogs_FilePicker.xba55
-rw-r--r--qadevOOo/tests/basic/ifc/ui/dialogs/XExecutableDialog/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/ui/dialogs/XExecutableDialog/ui_dialogs_XExecutableDialog.xba68
-rw-r--r--qadevOOo/tests/basic/ifc/ui/dialogs/XFilePicker/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/ui/dialogs/XFilePicker/ui_dialogs_XFilePicker.xba93
-rw-r--r--qadevOOo/tests/basic/ifc/ui/dialogs/XFilePickerControlAccess/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/ui/dialogs/XFilePickerControlAccess/ui_dialogs_XFilePickerControlAccess.xba102
-rw-r--r--qadevOOo/tests/basic/ifc/ui/dialogs/XFilePickerNotifier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/ui/dialogs/XFilePickerNotifier/ui_dialogs_XFilePickerNotifier.xba93
-rw-r--r--qadevOOo/tests/basic/ifc/ui/dialogs/XFilePreview/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/ui/dialogs/XFilePreview/ui_dialogs_XFilePreview.xba112
-rw-r--r--qadevOOo/tests/basic/ifc/ui/dialogs/XFilterManager/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/ui/dialogs/XFilterManager/ui_dialogs_XFilterManager.xba73
-rw-r--r--qadevOOo/tests/basic/ifc/ui/dialogs/XFolderPicker/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/ui/dialogs/XFolderPicker/ui_dialogs_XFolderPicker.xba82
-rw-r--r--qadevOOo/tests/basic/ifc/uno/XNamingService/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/uno/XNamingService/uno_XNamingService.xba92
-rw-r--r--qadevOOo/tests/basic/ifc/util/PathSettings/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/util/PathSettings/util_PathSettings.xba151
-rw-r--r--qadevOOo/tests/basic/ifc/util/SearchDescriptor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/util/SearchDescriptor/util_SearchDescriptor.xba74
-rw-r--r--qadevOOo/tests/basic/ifc/util/XCancellable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/util/XCancellable/util_XCancellable.xba58
-rw-r--r--qadevOOo/tests/basic/ifc/util/XCloneable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/util/XCloneable/util_XCloneable.xba66
-rw-r--r--qadevOOo/tests/basic/ifc/util/XFlushable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/util/XFlushable/util_XFlushable.xba98
-rw-r--r--qadevOOo/tests/basic/ifc/util/XMergeable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/util/XMergeable/util_XMergeable.xba71
-rw-r--r--qadevOOo/tests/basic/ifc/util/XModeSelector/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/util/XModeSelector/util_XModeSelector.xba84
-rw-r--r--qadevOOo/tests/basic/ifc/util/XModifyBroadcaster/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/util/XModifyBroadcaster/util_XModifyBroadcaster.xba82
-rw-r--r--qadevOOo/tests/basic/ifc/util/XNumberFormatsSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/util/XNumberFormatsSupplier/util_XNumberFormatsSupplier.xba71
-rw-r--r--qadevOOo/tests/basic/ifc/util/XRefreshable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/util/XRefreshable/util_XRefreshable.xba106
-rw-r--r--qadevOOo/tests/basic/ifc/util/XReplaceDescriptor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/util/XReplaceDescriptor/util_XReplaceDescriptor.xba68
-rw-r--r--qadevOOo/tests/basic/ifc/util/XReplaceable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/util/XReplaceable/util_XReplaceable.xba93
-rw-r--r--qadevOOo/tests/basic/ifc/util/XSearchDescriptor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/util/XSearchDescriptor/util_XSearchDescriptor.xba70
-rw-r--r--qadevOOo/tests/basic/ifc/util/XSearchable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/util/XSearchable/util_XSearchable.xba111
-rw-r--r--qadevOOo/tests/basic/ifc/util/XSortable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/util/XSortable/util_XSortable.xba80
-rw-r--r--qadevOOo/tests/basic/ifc/util/XStringEscape/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/util/XStringEscape/util_XStringEscape.xba71
-rw-r--r--qadevOOo/tests/basic/ifc/util/XTextSearch/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/util/XTextSearch/util_XTextSearch.xba104
-rw-r--r--qadevOOo/tests/basic/ifc/view/XControlAccess/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/view/XControlAccess/view_XControlAccess.xba68
-rw-r--r--qadevOOo/tests/basic/ifc/view/XPrintSettingsSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/view/XPrintSettingsSupplier/view_XPrintSettingsSupplier.xba59
-rw-r--r--qadevOOo/tests/basic/ifc/view/XPrintable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/view/XPrintable/view_XPrintable.xba119
-rw-r--r--qadevOOo/tests/basic/ifc/view/XScreenCursor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/view/XScreenCursor/view_XScreenCursor.xba69
-rw-r--r--qadevOOo/tests/basic/ifc/view/XSelectionSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/view/XSelectionSupplier/view_XSelectionSupplier.xba146
-rw-r--r--qadevOOo/tests/basic/ifc/view/XViewSettingsSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/view/XViewSettingsSupplier/view_XViewSettingsSupplier.xba60
-rw-r--r--qadevOOo/tests/basic/ifc/xml/UserDefinedAttributeSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/xml/UserDefinedAttributeSupplier/xml_UserDefinedAttributeSupplier.xba72
-rw-r--r--qadevOOo/tests/basic/ifc/xml/sax/XDocumentHandler/script.xlb5
-rw-r--r--qadevOOo/tests/basic/ifc/xml/sax/XDocumentHandler/xml_sax_XDocumentHandler.xba137
-rw-r--r--qadevOOo/tests/basic/mod/acceptor.uno/Acceptor/acceptor_uno_Acceptor.xba49
-rw-r--r--qadevOOo/tests/basic/mod/acceptor.uno/Acceptor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/acceptor/Acceptor/acceptor_Acceptor.xba49
-rw-r--r--qadevOOo/tests/basic/mod/acceptor/Acceptor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/adabas/ODriver/adabas_ODriver.xba69
-rw-r--r--qadevOOo/tests/basic/mod/adabas/ODriver/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/ado/ODriver/ado_ODriver.xba67
-rw-r--r--qadevOOo/tests/basic/mod/ado/ODriver/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/brdgfctr/BridgeFactory/brdgfctr_BridgeFactory.xba70
-rw-r--r--qadevOOo/tests/basic/mod/brdgfctr/BridgeFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/bridgefac.uno/BridgeFactory/bridgefac_uno_BridgeFactory.xba70
-rw-r--r--qadevOOo/tests/basic/mod/bridgefac.uno/BridgeFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/cached/CachedContentResultSetFactory/cached_CachedContentResultSetFactory.xba100
-rw-r--r--qadevOOo/tests/basic/mod/cached/CachedContentResultSetFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/cached/CachedContentResultSetStubFactory/cached_CachedContentResultSetStubFactory.xba94
-rw-r--r--qadevOOo/tests/basic/mod/cached/CachedContentResultSetStubFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/cached/CachedDynamicResultSetFactory/cached_CachedDynamicResultSetFactory.xba96
-rw-r--r--qadevOOo/tests/basic/mod/cached/CachedDynamicResultSetFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/cached/CachedDynamicResultSetStubFactory/cached_CachedDynamicResultSetStubFactory.xba94
-rw-r--r--qadevOOo/tests/basic/mod/cached/CachedDynamicResultSetStubFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/cmdmail/SimpleCommandMail/cmdmail_SimpleCommandMail.xba56
-rw-r--r--qadevOOo/tests/basic/mod/cmdmail/SimpleCommandMail/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/cnt/ChaosContentProvider/cnt_ChaosContentProvider.xba59
-rw-r--r--qadevOOo/tests/basic/mod/cnt/ChaosContentProvider/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/cnt/CntUnoDataContainer/cnt_CntUnoDataContainer.xba94
-rw-r--r--qadevOOo/tests/basic/mod/cnt/CntUnoDataContainer/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/cnt/PropertyMatcherFactory/cnt_PropertyMatcherFactory.xba49
-rw-r--r--qadevOOo/tests/basic/mod/cnt/PropertyMatcherFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/connector.uno/Connector/connector_uno_Connector.xba49
-rw-r--r--qadevOOo/tests/basic/mod/connector.uno/Connector/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/connectr/Connector/connectr_Connector.xba49
-rw-r--r--qadevOOo/tests/basic/mod/connectr/Connector/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/corefl/CoreReflection/corefl_CoreReflection.xba57
-rw-r--r--qadevOOo/tests/basic/mod/corefl/CoreReflection/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/corereflection.uno/CoreReflection/corereflection_uno_CoreReflection.xba57
-rw-r--r--qadevOOo/tests/basic/mod/corereflection.uno/CoreReflection/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/cpld/DLLComponentLoader/cpld_DLLComponentLoader.xba59
-rw-r--r--qadevOOo/tests/basic/mod/cpld/DLLComponentLoader/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/dbaccess/ConnectionLineAccessibility/dbaccess_ConnectionLineAccessibility.xba147
-rw-r--r--qadevOOo/tests/basic/mod/dbaccess/ConnectionLineAccessibility/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/dbaccess/DBContentLoader/dbaccess_DBContentLoader.xba63
-rw-r--r--qadevOOo/tests/basic/mod/dbaccess/DBContentLoader/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/dbaccess/JoinViewAccessibility/dbaccess_JoinViewAccessibility.xba148
-rw-r--r--qadevOOo/tests/basic/mod/dbaccess/JoinViewAccessibility/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/dbaccess/OCommandDefinition/dbaccess_OCommandDefinition.xba56
-rw-r--r--qadevOOo/tests/basic/mod/dbaccess/OCommandDefinition/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/dbaccess/ODatabaseContext/dbaccess_ODatabaseContext.xba56
-rw-r--r--qadevOOo/tests/basic/mod/dbaccess/ODatabaseContext/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/dbaccess/ODatabaseSource/dbaccess_ODatabaseSource.xba88
-rw-r--r--qadevOOo/tests/basic/mod/dbaccess/ODatabaseSource/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/dbaccess/ODatasourceAdministrationDialog/dbaccess_ODatasourceAdministrationDialog.xba67
-rw-r--r--qadevOOo/tests/basic/mod/dbaccess/ODatasourceAdministrationDialog/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/dbaccess/ODatasourceBrowser/dbaccess_ODatasourceBrowser.xba142
-rw-r--r--qadevOOo/tests/basic/mod/dbaccess/ODatasourceBrowser/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/dbaccess/OInteractionHandler/dbaccess_OInteractionHandler.xba56
-rw-r--r--qadevOOo/tests/basic/mod/dbaccess/OInteractionHandler/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/dbaccess/ORowSet/dbaccess_ORowSet.xba176
-rw-r--r--qadevOOo/tests/basic/mod/dbaccess/ORowSet/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/dbaccess/OSQLMessageDialog/dbaccess_OSQLMessageDialog.xba56
-rw-r--r--qadevOOo/tests/basic/mod/dbaccess/OSQLMessageDialog/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/dbaccess/SbaXGridControl/dbaccess_SbaXGridControl.xba222
-rw-r--r--qadevOOo/tests/basic/mod/dbaccess/SbaXGridControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/dbaccess/TableWindowAccessibility/dbaccess_TableWindowAccessibility.xba147
-rw-r--r--qadevOOo/tests/basic/mod/dbaccess/TableWindowAccessibility/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/dbpool/OConnectionPool/dbpool_OConnectionPool.xba55
-rw-r--r--qadevOOo/tests/basic/mod/dbpool/OConnectionPool/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/defreg/NestedRegistry/defreg_NestedRegistry.xba94
-rw-r--r--qadevOOo/tests/basic/mod/defreg/NestedRegistry/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/dtrans/generic/dtrans_generic.xba58
-rw-r--r--qadevOOo/tests/basic/mod/dtrans/generic/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/dynamicloader.uno/Dynamic/dynamicloader_uno_Dynamic.xba64
-rw-r--r--qadevOOo/tests/basic/mod/dynamicloader.uno/Dynamic/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/dynamicloader/Dynamic/dynamicloader_Dynamic.xba64
-rw-r--r--qadevOOo/tests/basic/mod/dynamicloader/Dynamic/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/file/calc/ODriver/file_calc_ODriver.xba67
-rw-r--r--qadevOOo/tests/basic/mod/file/calc/ODriver/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/file/dbase/ODriver/file_dbase_ODriver.xba67
-rw-r--r--qadevOOo/tests/basic/mod/file/dbase/ODriver/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/file/flat/ODriver/file_flat_ODriver.xba67
-rw-r--r--qadevOOo/tests/basic/mod/file/flat/ODriver/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/fileacc/SimpleFileAccess/fileacc_SimpleFileAccess.xba49
-rw-r--r--qadevOOo/tests/basic/mod/fileacc/SimpleFileAccess/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/fop/FolderPicker/fop_FolderPicker.xba56
-rw-r--r--qadevOOo/tests/basic/mod/fop/FolderPicker/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OButtonControl/forms_OButtonControl.xba107
-rw-r--r--qadevOOo/tests/basic/mod/forms/OButtonControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OButtonModel/forms_OButtonModel.xba72
-rw-r--r--qadevOOo/tests/basic/mod/forms/OButtonModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OCheckBoxControl/forms_OCheckBoxControl.xba127
-rw-r--r--qadevOOo/tests/basic/mod/forms/OCheckBoxControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OCheckBoxModel/forms_OCheckBoxModel.xba71
-rw-r--r--qadevOOo/tests/basic/mod/forms/OCheckBoxModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OComboBoxControl/forms_OComboBoxControl.xba108
-rw-r--r--qadevOOo/tests/basic/mod/forms/OComboBoxControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OComboBoxModel/forms_OComboBoxModel.xba131
-rw-r--r--qadevOOo/tests/basic/mod/forms/OComboBoxModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OCurrencyControl/forms_OCurrencyControl.xba106
-rw-r--r--qadevOOo/tests/basic/mod/forms/OCurrencyControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OCurrencyModel/forms_OCurrencyModel.xba137
-rw-r--r--qadevOOo/tests/basic/mod/forms/OCurrencyModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/ODatabaseForm/forms_ODatabaseForm.xba212
-rw-r--r--qadevOOo/tests/basic/mod/forms/ODatabaseForm/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/ODateControl/forms_ODateControl.xba107
-rw-r--r--qadevOOo/tests/basic/mod/forms/ODateControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/ODateModel/forms_ODateModel.xba140
-rw-r--r--qadevOOo/tests/basic/mod/forms/ODateModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OEditControl/forms_OEditControl.xba106
-rw-r--r--qadevOOo/tests/basic/mod/forms/OEditControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OEditModel/forms_OEditModel.xba128
-rw-r--r--qadevOOo/tests/basic/mod/forms/OEditModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OFileControlModel/forms_OFileControlModel.xba76
-rw-r--r--qadevOOo/tests/basic/mod/forms/OFileControlModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OFixedTextModel/forms_OFixedTextModel.xba74
-rw-r--r--qadevOOo/tests/basic/mod/forms/OFixedTextModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OFormattedControl/forms_OFormattedControl.xba107
-rw-r--r--qadevOOo/tests/basic/mod/forms/OFormattedControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OFormattedFieldWrapper/forms_OFormattedFieldWrapper.xba166
-rw-r--r--qadevOOo/tests/basic/mod/forms/OFormattedFieldWrapper/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OFormsCollection/forms_OFormsCollection.xba97
-rw-r--r--qadevOOo/tests/basic/mod/forms/OFormsCollection/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OGridControlModel/forms_OGridControlModel.xba123
-rw-r--r--qadevOOo/tests/basic/mod/forms/OGridControlModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OGroupBoxControl/forms_OGroupBoxControl.xba104
-rw-r--r--qadevOOo/tests/basic/mod/forms/OGroupBoxControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OGroupBoxModel/forms_OGroupBoxModel.xba75
-rw-r--r--qadevOOo/tests/basic/mod/forms/OGroupBoxModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OHiddenModel/forms_OHiddenModel.xba101
-rw-r--r--qadevOOo/tests/basic/mod/forms/OHiddenModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OImageButtonControl/forms_OImageButtonControl.xba105
-rw-r--r--qadevOOo/tests/basic/mod/forms/OImageButtonControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OImageButtonModel/forms_OImageButtonModel.xba74
-rw-r--r--qadevOOo/tests/basic/mod/forms/OImageButtonModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OImageControlControl/forms_OImageControlControl.xba108
-rw-r--r--qadevOOo/tests/basic/mod/forms/OImageControlControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OImageControlModel/forms_OImageControlModel.xba75
-rw-r--r--qadevOOo/tests/basic/mod/forms/OImageControlModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OListBoxControl/forms_OListBoxControl.xba121
-rw-r--r--qadevOOo/tests/basic/mod/forms/OListBoxControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OListBoxModel/forms_OListBoxModel.xba158
-rw-r--r--qadevOOo/tests/basic/mod/forms/OListBoxModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/ONumericControl/forms_ONumericControl.xba106
-rw-r--r--qadevOOo/tests/basic/mod/forms/ONumericControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/ONumericModel/forms_ONumericModel.xba127
-rw-r--r--qadevOOo/tests/basic/mod/forms/ONumericModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OPatternControl/forms_OPatternControl.xba104
-rw-r--r--qadevOOo/tests/basic/mod/forms/OPatternControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OPatternModel/forms_OPatternModel.xba128
-rw-r--r--qadevOOo/tests/basic/mod/forms/OPatternModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/ORadioButtonControl/forms_ORadioButtonControl.xba105
-rw-r--r--qadevOOo/tests/basic/mod/forms/ORadioButtonControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/ORadioButtonModel/forms_ORadioButtonModel.xba132
-rw-r--r--qadevOOo/tests/basic/mod/forms/ORadioButtonModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OTimeControl/forms_OTimeControl.xba106
-rw-r--r--qadevOOo/tests/basic/mod/forms/OTimeControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/forms/OTimeModel/forms_OTimeModel.xba182
-rw-r--r--qadevOOo/tests/basic/mod/forms/OTimeModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/fps/FilePicker/fps_FilePicker.xba80
-rw-r--r--qadevOOo/tests/basic/mod/fps/FilePicker/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/ftransl/DataFormatTranslator/ftransl_DataFormatTranslator.xba53
-rw-r--r--qadevOOo/tests/basic/mod/ftransl/DataFormatTranslator/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/fwk/Desktop/fwk_Desktop.xba66
-rw-r--r--qadevOOo/tests/basic/mod/fwk/Desktop/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/fwk/DispatchRecorder/fwk_DispatchRecorder.xba76
-rw-r--r--qadevOOo/tests/basic/mod/fwk/DispatchRecorder/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/fwk/DispatchRecorderSupplier/fwk_DispatchRecorderSupplier.xba53
-rw-r--r--qadevOOo/tests/basic/mod/fwk/DispatchRecorderSupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/fwk/DocumentProperties/fwk_DocumentProperties.xba60
-rw-r--r--qadevOOo/tests/basic/mod/fwk/DocumentProperties/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/fwk/Frame/fwk_Frame.xba64
-rw-r--r--qadevOOo/tests/basic/mod/fwk/Frame/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/fwk/JobHandler/fwk_JobHandler.xba59
-rw-r--r--qadevOOo/tests/basic/mod/fwk/JobHandler/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/fwl/FilterFactory/fwl_FilterFactory.xba94
-rw-r--r--qadevOOo/tests/basic/mod/fwl/FilterFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/fwl/FrameLoaderFactory/fwl_FrameLoaderFactory.xba65
-rw-r--r--qadevOOo/tests/basic/mod/fwl/FrameLoaderFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/fwl/PathSettings/fwl_PathSettings.xba55
-rw-r--r--qadevOOo/tests/basic/mod/fwl/PathSettings/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/fwl/TypeDetection/fwl_TypeDetection.xba55
-rw-r--r--qadevOOo/tests/basic/mod/fwl/TypeDetection/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/i18n/BreakIterator/i18n_BreakIterator.xba72
-rw-r--r--qadevOOo/tests/basic/mod/i18n/BreakIterator/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/i18n/CalendarImpl/i18n_CalendarImpl.xba55
-rw-r--r--qadevOOo/tests/basic/mod/i18n/CalendarImpl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/i18n/ChapterCollator/i18n_ChapterCollator.xba70
-rw-r--r--qadevOOo/tests/basic/mod/i18n/ChapterCollator/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/i18n/CharacterClassification/i18n_CharacterClassification.xba56
-rw-r--r--qadevOOo/tests/basic/mod/i18n/CharacterClassification/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/i18n/Collator/i18n_Collator.xba70
-rw-r--r--qadevOOo/tests/basic/mod/i18n/Collator/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/i18n/IndexEntrySupplier/i18n_IndexEntrySupplier.xba71
-rw-r--r--qadevOOo/tests/basic/mod/i18n/IndexEntrySupplier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/i18n/LocaleData/i18n_LocaleData.xba55
-rw-r--r--qadevOOo/tests/basic/mod/i18n/LocaleData/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/i18n/NumberFormatCodeMapper/i18n_NumberFormatCodeMapper.xba56
-rw-r--r--qadevOOo/tests/basic/mod/i18n/NumberFormatCodeMapper/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/i18n/TextSearch/i18n_TextSearch.xba59
-rw-r--r--qadevOOo/tests/basic/mod/i18n/TextSearch/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/i18n/Transliteration/i18n_Transliteration.xba71
-rw-r--r--qadevOOo/tests/basic/mod/i18n/Transliteration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/implreg.uno/ImplementationRegistration/implreg_uno_ImplementationRegistration.xba53
-rw-r--r--qadevOOo/tests/basic/mod/implreg.uno/ImplementationRegistration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/impreg/ImplementationRegistration/impreg_ImplementationRegistration.xba53
-rw-r--r--qadevOOo/tests/basic/mod/impreg/ImplementationRegistration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/insp/Introspection/insp_Introspection.xba53
-rw-r--r--qadevOOo/tests/basic/mod/insp/Introspection/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/introspection.uno/Introspection/introspection_uno_Introspection.xba53
-rw-r--r--qadevOOo/tests/basic/mod/introspection.uno/Introspection/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/inv/Invocation/inv_Invocation.xba66
-rw-r--r--qadevOOo/tests/basic/mod/inv/Invocation/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/invadp/InvocationAdapterFactory/invadp_InvocationAdapterFactory.xba56
-rw-r--r--qadevOOo/tests/basic/mod/invadp/InvocationAdapterFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/invocadapt.uno/InvocationAdapterFactory/invocadapt_uno_InvocationAdapterFactory.xba56
-rw-r--r--qadevOOo/tests/basic/mod/invocadapt.uno/InvocationAdapterFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/invocation.uno/Invocation/invocation_uno_Invocation.xba66
-rw-r--r--qadevOOo/tests/basic/mod/invocation.uno/Invocation/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/javaloader.uno/JavaComponentLoader/javaloader_uno_JavaComponentLoader.xba59
-rw-r--r--qadevOOo/tests/basic/mod/javaloader.uno/JavaComponentLoader/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/javaloader/JavaComponentLoader/javaloader_JavaComponentLoader.xba59
-rw-r--r--qadevOOo/tests/basic/mod/javaloader/JavaComponentLoader/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/javavm.uno/JavaVirtualMachine/javavm_uno_JavaVirtualMachine.xba72
-rw-r--r--qadevOOo/tests/basic/mod/javavm.uno/JavaVirtualMachine/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/jdbc/JDBCDriver/jdbc_JDBCDriver.xba71
-rw-r--r--qadevOOo/tests/basic/mod/jdbc/JDBCDriver/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/jen/JavaVirtualMachine/jen_JavaVirtualMachine.xba72
-rw-r--r--qadevOOo/tests/basic/mod/jen/JavaVirtualMachine/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/lng/DicList/lng_DicList.xba89
-rw-r--r--qadevOOo/tests/basic/mod/lng/DicList/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/lng/LinguProps/lng_LinguProps.xba59
-rw-r--r--qadevOOo/tests/basic/mod/lng/LinguProps/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/lng/LngSvcMgr/lng_LngSvcMgr.xba59
-rw-r--r--qadevOOo/tests/basic/mod/lng/LngSvcMgr/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/lnn/Hyphenator/lnn_Hyphenator.xba62
-rw-r--r--qadevOOo/tests/basic/mod/lnn/Hyphenator/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/lnn/SpellChecker/lnn_SpellChecker.xba62
-rw-r--r--qadevOOo/tests/basic/mod/lnn/SpellChecker/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/lnn/Thesaurus/lnn_Thesaurus.xba62
-rw-r--r--qadevOOo/tests/basic/mod/lnn/Thesaurus/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/mcnttype/MimeContentTypeFactory/mcnttype_MimeContentTypeFactory.xba53
-rw-r--r--qadevOOo/tests/basic/mod/mcnttype/MimeContentTypeFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/mozab/MozabDriver/mozab_MozabDriver.xba67
-rw-r--r--qadevOOo/tests/basic/mod/mozab/MozabDriver/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/namingservice.uno/NamingService/namingservice_uno_NamingService.xba60
-rw-r--r--qadevOOo/tests/basic/mod/namingservice.uno/NamingService/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/namingservice/NamingService/namingservice_NamingService.xba60
-rw-r--r--qadevOOo/tests/basic/mod/namingservice/NamingService/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/nestedreg.uno/NestedRegistry/nestedreg_uno_NestedRegistry.xba94
-rw-r--r--qadevOOo/tests/basic/mod/nestedreg.uno/NestedRegistry/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/odbc/ODBCDriver/odbc_ODBCDriver.xba67
-rw-r--r--qadevOOo/tests/basic/mod/odbc/ODBCDriver/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/proxyfac.uno/ProxyFactory/proxyfac_ProxyFactory.xba53
-rw-r--r--qadevOOo/tests/basic/mod/proxyfac.uno/ProxyFactory/proxyfac_uno_ProxyFactory.xba53
-rw-r--r--qadevOOo/tests/basic/mod/proxyfac.uno/ProxyFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/proxyfac/ProxyFactory/proxyfac_ProxyFactory.xba53
-rw-r--r--qadevOOo/tests/basic/mod/proxyfac/ProxyFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/proxyset/SOffice52ProxySettings/proxyset_SOffice52ProxySettings.xba53
-rw-r--r--qadevOOo/tests/basic/mod/proxyset/SOffice52ProxySettings/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/proxyset/SystemProxySettings/proxyset_SystemProxySettings.xba53
-rw-r--r--qadevOOo/tests/basic/mod/proxyset/SystemProxySettings/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/rdbtdp/RegistryTypeDescriptionProvider/rdbtdp_RegistryTypeDescriptionProvider.xba70
-rw-r--r--qadevOOo/tests/basic/mod/rdbtdp/RegistryTypeDescriptionProvider/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/regtypeprov.uno/RegistryTypeDescriptionProvider/regtypeprov_uno_RegistryTypeDescriptionProvider.xba70
-rw-r--r--qadevOOo/tests/basic/mod/regtypeprov.uno/RegistryTypeDescriptionProvider/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/remotebridge.uno/various/remotebridge_uno_various.xba95
-rw-r--r--qadevOOo/tests/basic/mod/remotebridge.uno/various/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/remotebridge/various/remotebridge_various.xba98
-rw-r--r--qadevOOo/tests/basic/mod/remotebridge/various/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/AccessibleEditableTextPara_HeaderFooter/sc_AccessibleEditableTextPara_HeaderFooter.xba99
-rw-r--r--qadevOOo/tests/basic/mod/sc/AccessibleEditableTextPara_HeaderFooter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/AccessibleEditableTextPara_PreviewCell/sc_AccessibleEditableTextPara_PreviewCell.xba109
-rw-r--r--qadevOOo/tests/basic/mod/sc/AccessibleEditableTextPara_PreviewCell/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAccessibleCell/sc_ScAccessibleCell.xba69
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAccessibleCell/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAccessibleCsvCell/sc_ScAccessibleCsvCell.xba86
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAccessibleCsvCell/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAccessibleCsvGrid/sc_ScAccessibleCsvGrid.xba80
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAccessibleCsvGrid/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAccessibleCsvRuler/sc_ScAccessibleCsvRuler.xba87
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAccessibleCsvRuler/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAccessibleDocument/sc_ScAccessibleDocument.xba68
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAccessibleDocument/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAccessibleDocumentPagePreview/sc_ScAccessibleDocumentPagePreview.xba91
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAccessibleDocumentPagePreview/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAccessiblePageHeader/sc_ScAccessiblePageHeader.xba100
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAccessiblePageHeader/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAccessiblePageHeaderArea/sc_ScAccessiblePageHeaderArea.xba86
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAccessiblePageHeaderArea/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAccessiblePreviewCell/sc_ScAccessiblePreviewCell.xba85
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAccessiblePreviewCell/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAccessiblePreviewHeaderCell/sc_ScAccessiblePreviewHeaderCell.xba87
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAccessiblePreviewHeaderCell/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAccessiblePreviewTable/sc_ScAccessiblePreviewTable.xba85
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAccessiblePreviewTable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAccessibleSpreadsheet/sc_ScAccessibleSpreadsheet.xba79
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAccessibleSpreadsheet/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAnnotationObj/sc_ScAnnotationObj.xba63
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAnnotationObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAnnotationsObj/sc_ScAnnotationsObj.xba71
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAnnotationsObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAreaLinkObj/sc_ScAreaLinkObj.xba65
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAreaLinkObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAreaLinksObj/sc_ScAreaLinksObj.xba65
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAreaLinksObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAutoFormatFieldObj/sc_ScAutoFormatFieldObj.xba64
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAutoFormatFieldObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAutoFormatObj/sc_ScAutoFormatObj.xba79
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAutoFormatObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAutoFormatsObj/sc_ScAutoFormatsObj.xba76
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScAutoFormatsObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScCellCursorObj/sc_ScCellCursorObj.xba145
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScCellCursorObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScCellFieldObj/sc_ScCellFieldObj.xba86
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScCellFieldObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScCellFieldsObj/sc_ScCellFieldsObj.xba86
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScCellFieldsObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScCellFormatsEnumeration/sc_ScCellFormatsEnumeration.xba62
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScCellFormatsEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScCellFormatsObj/sc_ScCellFormatsObj.xba60
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScCellFormatsObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScCellObj/sc_ScCellObj.xba68
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScCellObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScCellRangeObj/sc_ScCellRangeObj.xba135
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScCellRangeObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScCellRangesObj/sc_ScCellRangesObj.xba78
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScCellRangesObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScCellSearchObj/sc_ScCellSearchObj.xba57
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScCellSearchObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScCellTextCursor/sc_ScCellTextCursor.xba72
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScCellTextCursor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScCellsEnumeration/sc_ScCellsEnumeration.xba71
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScCellsEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScCellsObj/sc_ScCellsObj.xba74
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScCellsObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScChartObj/sc_ScChartObj.xba98
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScChartObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScChartsObj/sc_ScChartsObj.xba95
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScChartsObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScConsolidationDescriptor/sc_ScConsolidationDescriptor.xba62
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScConsolidationDescriptor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScDDELinkObj/sc_ScDDELinkObj.xba91
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScDDELinkObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScDDELinksObj/sc_ScDDELinksObj.xba79
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScDDELinksObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScDataPilotFieldObj/sc_ScDataPilotFieldObj.xba100
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScDataPilotFieldObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScDataPilotFieldsObj/sc_ScDataPilotFieldsObj.xba94
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScDataPilotFieldsObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScDataPilotTableObj/sc_ScDataPilotTableObj.xba122
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScDataPilotTableObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScDataPilotTablesObj/sc_ScDataPilotTablesObj.xba91
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScDataPilotTablesObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScDatabaseRangeObj/sc_ScDatabaseRangeObj.xba75
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScDatabaseRangeObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScDatabaseRangesObj/sc_ScDatabaseRangesObj.xba74
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScDatabaseRangesObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScDrawPageObj/sc_ScDrawPageObj.xba103
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScDrawPageObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScDrawPagesObj/sc_ScDrawPagesObj.xba55
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScDrawPagesObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScFilterDescriptorBase/sc_ScFilterDescriptorBase.xba64
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScFilterDescriptorBase/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScFunctionListObj/sc_ScFunctionListObj.xba59
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScFunctionListObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScHeaderFieldObj/sc_ScHeaderFieldObj.xba86
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScHeaderFieldObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScHeaderFieldsObj/sc_ScHeaderFieldsObj.xba70
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScHeaderFieldsObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScHeaderFooterContentObj/sc_ScHeaderFooterContentObj.xba82
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScHeaderFooterContentObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScHeaderFooterTextCursor/sc_ScHeaderFooterTextCursor.xba77
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScHeaderFooterTextCursor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScHeaderFooterTextObj/sc_ScHeaderFooterTextObj.xba80
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScHeaderFooterTextObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_CellAnnotationsEnumeration/sc_ScIndexEnumeration_CellAnnotationsEnumeration.xba85
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_CellAnnotationsEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_CellAreaLinksEnumeration/sc_ScIndexEnumeration_CellAreaLinksEnumeration.xba63
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_CellAreaLinksEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_DDELinksEnumeration/sc_ScIndexEnumeration_DDELinksEnumeration.xba79
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_DDELinksEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_DataPilotFieldsEnumeration/sc_ScIndexEnumeration_DataPilotFieldsEnumeration.xba90
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_DataPilotFieldsEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_DataPilotTablesEnumeration/sc_ScIndexEnumeration_DataPilotTablesEnumeration.xba89
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_DataPilotTablesEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_DatabaseRangesEnumeration/sc_ScIndexEnumeration_DatabaseRangesEnumeration.xba70
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_DatabaseRangesEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_FunctionDescriptionEnumeration/sc_ScIndexEnumeration_FunctionDescriptionEnumeration.xba59
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_FunctionDescriptionEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_LabelRangesEnumeration/sc_ScIndexEnumeration_LabelRangesEnumeration.xba78
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_LabelRangesEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_NamedRangesEnumeration/sc_ScIndexEnumeration_NamedRangesEnumeration.xba70
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_NamedRangesEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_ScenariosEnumeration/sc_ScIndexEnumeration_ScenariosEnumeration.xba80
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_ScenariosEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_SheetCellRangesEnumeration/sc_ScIndexEnumeration_SheetCellRangesEnumeration.xba72
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_SheetCellRangesEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_SheetLinksEnumeration/sc_ScIndexEnumeration_SheetLinksEnumeration.xba64
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_SheetLinksEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_SpreadsheetViewPanesEnumeration/sc_ScIndexEnumeration_SpreadsheetViewPanesEnumeration.xba64
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_SpreadsheetViewPanesEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_SpreadsheetsEnumeration/sc_ScIndexEnumeration_SpreadsheetsEnumeration.xba59
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_SpreadsheetsEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_SubTotalFieldsEnumeration/sc_ScIndexEnumeration_SubTotalFieldsEnumeration.xba69
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_SubTotalFieldsEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_TableAutoFormatEnumeration/sc_ScIndexEnumeration_TableAutoFormatEnumeration.xba59
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_TableAutoFormatEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_TableChartsEnumeration/sc_ScIndexEnumeration_TableChartsEnumeration.xba95
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_TableChartsEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_TableColumnsEnumeration/sc_ScIndexEnumeration_TableColumnsEnumeration.xba59
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_TableColumnsEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_TableConditionalEntryEnumeration/sc_ScIndexEnumeration_TableConditionalEntryEnumeration.xba106
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_TableConditionalEntryEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_TableRowsEnumeration/sc_ScIndexEnumeration_TableRowsEnumeration.xba59
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_TableRowsEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_TextFieldEnumeration/sc_ScIndexEnumeration_TextFieldEnumeration.xba71
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_TextFieldEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScLabelRangeObj/sc_ScLabelRangeObj.xba77
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScLabelRangeObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScLabelRangesObj/sc_ScLabelRangesObj.xba77
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScLabelRangesObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScModelObj/sc_ScModelObj.xba73
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScModelObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScNamedRangeObj/sc_ScNamedRangeObj.xba82
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScNamedRangeObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScNamedRangesObj/sc_ScNamedRangesObj.xba69
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScNamedRangesObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScPageObj/sc_ScPageObj.xba106
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScPageObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScRecentFunctionsObj/sc_ScRecentFunctionsObj.xba61
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScRecentFunctionsObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScScenariosObj/sc_ScScenariosObj.xba75
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScScenariosObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScSheetLinkObj/sc_ScSheetLinkObj.xba68
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScSheetLinkObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScSheetLinksObj/sc_ScSheetLinksObj.xba62
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScSheetLinksObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScSpreadsheetSettings/sc_ScSpreadsheetSettings.xba61
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScSpreadsheetSettings/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScSpreadsheetSettingsObj/sc_ScSpreadsheetSettingsObj.xba56
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScSpreadsheetSettingsObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScStyleFamiliesObj/sc_ScStyleFamiliesObj.xba62
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScStyleFamiliesObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScStyleFamilyObj/sc_ScStyleFamilyObj.xba84
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScStyleFamilyObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScStyleObj/sc_ScStyleObj.xba77
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScStyleObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScSubTotalDescriptorBase/sc_ScSubTotalDescriptorBase.xba61
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScSubTotalDescriptorBase/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScSubTotalFieldObj/sc_ScSubTotalFieldObj.xba66
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScSubTotalFieldObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScTabViewObj/sc_ScTabViewObj.xba64
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScTabViewObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScTableColumnObj/sc_ScTableColumnObj.xba69
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScTableColumnObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScTableColumnsObj/sc_ScTableColumnsObj.xba62
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScTableColumnsObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScTableConditionalEntry/sc_ScTableConditionalEntry.xba103
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScTableConditionalEntry/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScTableConditionalFormat/sc_ScTableConditionalFormat.xba104
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScTableConditionalFormat/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScTableRowObj/sc_ScTableRowObj.xba64
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScTableRowObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScTableRowsObj/sc_ScTableRowsObj.xba62
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScTableRowsObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScTableSheetObj/sc_ScTableSheetObj.xba123
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScTableSheetObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScTableSheetsObj/sc_ScTableSheetsObj.xba78
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScTableSheetsObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScTableValidationObj/sc_ScTableValidationObj.xba60
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScTableValidationObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScViewPaneObj/sc_ScViewPaneObj.xba69
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScViewPaneObj/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/XMLContentExporter/sc_XMLContentExporter.xba124
-rw-r--r--qadevOOo/tests/basic/mod/sc/XMLContentExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/XMLContentImporter/sc_XMLContentImporter.xba92
-rw-r--r--qadevOOo/tests/basic/mod/sc/XMLContentImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/XMLExporter/sc_XMLExporter.xba122
-rw-r--r--qadevOOo/tests/basic/mod/sc/XMLExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/XMLImporter/sc_XMLImporter.xba92
-rw-r--r--qadevOOo/tests/basic/mod/sc/XMLImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/XMLMetaExporter/sc_XMLMetaExporter.xba110
-rw-r--r--qadevOOo/tests/basic/mod/sc/XMLMetaExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/XMLMetaImporter/sc_XMLMetaImporter.xba93
-rw-r--r--qadevOOo/tests/basic/mod/sc/XMLMetaImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/XMLSettingsExporter/sc_XMLSettingsExporter.xba118
-rw-r--r--qadevOOo/tests/basic/mod/sc/XMLSettingsExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/XMLSettingsImporter/sc_XMLSettingsImporter.xba99
-rw-r--r--qadevOOo/tests/basic/mod/sc/XMLSettingsImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/XMLStylesExporter/sc_XMLStylesExporter.xba110
-rw-r--r--qadevOOo/tests/basic/mod/sc/XMLStylesExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sc/XMLStylesImporter/sc_XMLStylesImporter.xba100
-rw-r--r--qadevOOo/tests/basic/mod/sc/XMLStylesImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sch/AccArea/sch_AccArea.xba72
-rw-r--r--qadevOOo/tests/basic/mod/sch/AccArea/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sch/AccAxis/sch_AccAxis.xba71
-rw-r--r--qadevOOo/tests/basic/mod/sch/AccAxis/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sch/AccDataPoint/sch_AccDataPoint.xba68
-rw-r--r--qadevOOo/tests/basic/mod/sch/AccDataPoint/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sch/AccDataSeries/sch_AccDataSeries.xba67
-rw-r--r--qadevOOo/tests/basic/mod/sch/AccDataSeries/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sch/AccDiagram/sch_AccDiagram.xba67
-rw-r--r--qadevOOo/tests/basic/mod/sch/AccDiagram/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sch/AccFloor/sch_AccFloor.xba70
-rw-r--r--qadevOOo/tests/basic/mod/sch/AccFloor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sch/AccGrid/sch_AccGrid.xba67
-rw-r--r--qadevOOo/tests/basic/mod/sch/AccGrid/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sch/AccLegend/sch_AccLegend.xba66
-rw-r--r--qadevOOo/tests/basic/mod/sch/AccLegend/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sch/AccLegendEntry/sch_AccLegendEntry.xba67
-rw-r--r--qadevOOo/tests/basic/mod/sch/AccLegendEntry/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sch/AccStatisticsObject/sch_AccStatisticsObject.xba71
-rw-r--r--qadevOOo/tests/basic/mod/sch/AccStatisticsObject/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sch/AccTitle/sch_AccTitle.xba67
-rw-r--r--qadevOOo/tests/basic/mod/sch/AccTitle/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sch/AccWall/sch_AccWall.xba66
-rw-r--r--qadevOOo/tests/basic/mod/sch/AccWall/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sch/AccessibleDocumentView/sch_AccessibleDocumentView.xba72
-rw-r--r--qadevOOo/tests/basic/mod/sch/AccessibleDocumentView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sch/ChXChartAxis/sch_ChXChartAxis.xba57
-rw-r--r--qadevOOo/tests/basic/mod/sch/ChXChartAxis/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sch/ChXChartData/sch_ChXChartData.xba68
-rw-r--r--qadevOOo/tests/basic/mod/sch/ChXChartData/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sch/ChXChartDataArray/sch_ChXChartDataArray.xba74
-rw-r--r--qadevOOo/tests/basic/mod/sch/ChXChartDataArray/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sch/ChXChartDocument/sch_ChXChartDocument.xba89
-rw-r--r--qadevOOo/tests/basic/mod/sch/ChXChartDocument/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sch/ChXChartView/sch_ChXChartView.xba64
-rw-r--r--qadevOOo/tests/basic/mod/sch/ChXChartView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sch/ChXDataPoint/sch_ChXDataPoint.xba72
-rw-r--r--qadevOOo/tests/basic/mod/sch/ChXDataPoint/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sch/ChXDataRow/sch_ChXDataRow.xba71
-rw-r--r--qadevOOo/tests/basic/mod/sch/ChXDataRow/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sch/ChXDiagram/sch_ChXDiagram.xba143
-rw-r--r--qadevOOo/tests/basic/mod/sch/ChXDiagram/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sch/ChartArea/sch_ChartArea.xba72
-rw-r--r--qadevOOo/tests/basic/mod/sch/ChartArea/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sch/ChartGrid/sch_ChartGrid.xba58
-rw-r--r--qadevOOo/tests/basic/mod/sch/ChartGrid/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sch/ChartLegend/sch_ChartLegend.xba83
-rw-r--r--qadevOOo/tests/basic/mod/sch/ChartLegend/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sch/ChartLine/sch_ChartLine.xba58
-rw-r--r--qadevOOo/tests/basic/mod/sch/ChartLine/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sch/ChartTitle/sch_ChartTitle.xba92
-rw-r--r--qadevOOo/tests/basic/mod/sch/ChartTitle/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sd/AccessibleDrawDocumentView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sd/AccessibleDrawDocumentView/sd_AccessibleDrawDocumentView.xba82
-rw-r--r--qadevOOo/tests/basic/mod/sd/AccessibleOutlineView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sd/AccessibleOutlineView/sd_AccessibleOutlineView.xba136
-rw-r--r--qadevOOo/tests/basic/mod/sd/AccessibleSlideView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sd/AccessibleSlideView/sd_AccessibleSlideView.xba113
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdDocLinkTargets/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdDocLinkTargets/sd_SdDocLinkTargets.xba54
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdDrawPage/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdDrawPage/sd_SdDrawPage.xba107
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdDrawPagesAccess/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdDrawPagesAccess/sd_SdDrawPagesAccess.xba61
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdGenericDrawPage/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdGenericDrawPage/sd_SdGenericDrawPage.xba109
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdLayer/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdLayer/sd_SdLayer.xba58
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdLayerManager/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdLayerManager/sd_SdLayerManager.xba59
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdMasterPage/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdMasterPage/sd_SdMasterPage.xba110
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdMasterPagesAccess/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdMasterPagesAccess/sd_SdMasterPagesAccess.xba58
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdPageLinkTargets/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdPageLinkTargets/sd_SdPageLinkTargets.xba79
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdUnoDrawView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdUnoDrawView/sd_SdUnoDrawView.xba123
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdUnoOutlineView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdUnoOutlineView/sd_SdUnoOutlineView.xba130
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdUnoPresView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdUnoPresView/sd_SdUnoPresView.xba137
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdXCustomPresentation/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdXCustomPresentation/sd_SdXCustomPresentation.xba84
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdXCustomPresentationAccess/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdXCustomPresentationAccess/sd_SdXCustomPresentationAccess.xba77
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdXImpressDocument/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdXImpressDocument/sd_SdXImpressDocument.xba100
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdXPresentation/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdXPresentation/sd_SdXPresentation.xba63
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdXShape/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sd/SdXShape/sd_SdXShape.xba98
-rw-r--r--qadevOOo/tests/basic/mod/servicemgr.uno/OServiceManager/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/servicemgr.uno/OServiceManager/servicemgr_uno_OServiceManager.xba79
-rw-r--r--qadevOOo/tests/basic/mod/sfx/DocumentTemplates/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sfx/DocumentTemplates/sfx_DocumentTemplates.xba64
-rw-r--r--qadevOOo/tests/basic/mod/sfx/FrameLoader/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sfx/FrameLoader/sfx_FrameLoader.xba72
-rw-r--r--qadevOOo/tests/basic/mod/sfx/SfxMacroLoader/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sfx/SfxMacroLoader/sfx_SfxMacroLoader.xba62
-rw-r--r--qadevOOo/tests/basic/mod/sfx/StandaloneDocumentInfo/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sfx/StandaloneDocumentInfo/sfx_StandaloneDocumentInfo.xba77
-rw-r--r--qadevOOo/tests/basic/mod/shlibloader.uno/DLLComponentLoader/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/shlibloader.uno/DLLComponentLoader/shlibloader_uno_DLLComponentLoader.xba59
-rw-r--r--qadevOOo/tests/basic/mod/simplereg.uno/SimpleRegistry/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/simplereg.uno/SimpleRegistry/simplereg_uno_SimpleRegistry.xba53
-rw-r--r--qadevOOo/tests/basic/mod/simreg/SimpleRegistry/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/simreg/SimpleRegistry/simreg_SimpleRegistry.xba53
-rw-r--r--qadevOOo/tests/basic/mod/sm/SmEditAccessible/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sm/SmEditAccessible/sm_SmEditAccessible.xba78
-rw-r--r--qadevOOo/tests/basic/mod/sm/SmGraphicAccessible/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sm/SmGraphicAccessible/sm_SmGraphicAccessible.xba79
-rw-r--r--qadevOOo/tests/basic/mod/sm/SmModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sm/SmModel/sm_SmModel.xba54
-rw-r--r--qadevOOo/tests/basic/mod/sm/XMLExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sm/XMLExporter/sm_XMLExporter.xba109
-rw-r--r--qadevOOo/tests/basic/mod/sm/XMLImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sm/XMLImporter/sm_XMLImporter.xba85
-rw-r--r--qadevOOo/tests/basic/mod/sm/XMLMetaExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sm/XMLMetaExporter/sm_XMLMetaExporter.xba111
-rw-r--r--qadevOOo/tests/basic/mod/sm/XMLMetaImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sm/XMLMetaImporter/sm_XMLMetaImporter.xba113
-rw-r--r--qadevOOo/tests/basic/mod/sm/XMLSettingsExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sm/XMLSettingsExporter/sm_XMLSettingsExporter.xba107
-rw-r--r--qadevOOo/tests/basic/mod/sm/XMLSettingsImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sm/XMLSettingsImporter/sm_XMLSettingsImporter.xba98
-rw-r--r--qadevOOo/tests/basic/mod/smgr/OServiceManager/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/smgr/OServiceManager/smgr_OServiceManager.xba79
-rw-r--r--qadevOOo/tests/basic/mod/smplmail/SimpleSystemMail/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/smplmail/SimpleSystemMail/smplmail_SimpleSystemMail.xba62
-rw-r--r--qadevOOo/tests/basic/mod/srtrs/SortedDynamicResultSetFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/srtrs/SortedDynamicResultSetFactory/srtrs_SortedDynamicResultSetFactory.xba56
-rw-r--r--qadevOOo/tests/basic/mod/stm/DataInputStream/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/stm/DataInputStream/stm_DataInputStream.xba131
-rw-r--r--qadevOOo/tests/basic/mod/stm/DataOutputStream/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/stm/DataOutputStream/stm_DataOutputStream.xba115
-rw-r--r--qadevOOo/tests/basic/mod/stm/MarkableInputStream/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/stm/MarkableInputStream/stm_MarkableInputStream.xba125
-rw-r--r--qadevOOo/tests/basic/mod/stm/MarkableOutputStream/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/stm/MarkableOutputStream/stm_MarkableOutputStream.xba127
-rw-r--r--qadevOOo/tests/basic/mod/stm/ObjectInputStream/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/stm/ObjectInputStream/stm_ObjectInputStream.xba109
-rw-r--r--qadevOOo/tests/basic/mod/stm/ObjectOutputStream/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/stm/ObjectOutputStream/stm_ObjectOutputStream.xba104
-rw-r--r--qadevOOo/tests/basic/mod/stm/Pipe/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/stm/Pipe/stm_Pipe.xba81
-rw-r--r--qadevOOo/tests/basic/mod/stm/Pump/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/stm/Pump/stm_Pump.xba92
-rw-r--r--qadevOOo/tests/basic/mod/streams.uno/DataInputStream/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/streams.uno/DataInputStream/streams_uno_DataInputStream.xba131
-rw-r--r--qadevOOo/tests/basic/mod/streams.uno/DataOutputStream/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/streams.uno/DataOutputStream/streams_uno_DataOutputStream.xba115
-rw-r--r--qadevOOo/tests/basic/mod/streams.uno/MarkableInputStream/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/streams.uno/MarkableInputStream/streams_uno_MarkableInputStream.xba125
-rw-r--r--qadevOOo/tests/basic/mod/streams.uno/MarkableOutputStream/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/streams.uno/MarkableOutputStream/streams_uno_MarkableOutputStream.xba127
-rw-r--r--qadevOOo/tests/basic/mod/streams.uno/ObjectInputStream/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/streams.uno/ObjectInputStream/streams_uno_ObjectInputStream.xba109
-rw-r--r--qadevOOo/tests/basic/mod/streams.uno/ObjectOutputStream/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/streams.uno/ObjectOutputStream/streams_uno_ObjectOutputStream.xba104
-rw-r--r--qadevOOo/tests/basic/mod/streams.uno/Pipe/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/streams.uno/Pipe/streams_uno_Pipe.xba81
-rw-r--r--qadevOOo/tests/basic/mod/streams.uno/Pump/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/streams.uno/Pump/streams_uno_Pump.xba92
-rw-r--r--qadevOOo/tests/basic/mod/svtools/AccessibleBrowseBox/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svtools/AccessibleBrowseBox/svtools_AccessibleBrowseBox.xba115
-rw-r--r--qadevOOo/tests/basic/mod/svtools/AccessibleBrowseBoxHeaderBar/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svtools/AccessibleBrowseBoxHeaderBar/svtools_AccessibleBrowseBoxHeaderBar.xba85
-rw-r--r--qadevOOo/tests/basic/mod/svtools/AccessibleBrowseBoxHeaderCell/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svtools/AccessibleBrowseBoxHeaderCell/svtools_AccessibleBrowseBoxHeaderCell.xba98
-rw-r--r--qadevOOo/tests/basic/mod/svtools/AccessibleBrowseBoxTable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svtools/AccessibleBrowseBoxTable/svtools_AccessibleBrowseBoxTable.xba81
-rw-r--r--qadevOOo/tests/basic/mod/svtools/AccessibleBrowseBoxTableCell/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svtools/AccessibleBrowseBoxTableCell/svtools_AccessibleBrowseBoxTableCell.xba98
-rw-r--r--qadevOOo/tests/basic/mod/svtools/AccessibleIconChoiceCtrl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svtools/AccessibleIconChoiceCtrl/svtools_AccessibleIconChoiceCtrl.xba98
-rw-r--r--qadevOOo/tests/basic/mod/svtools/AccessibleIconChoiceCtrlEntry/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svtools/AccessibleIconChoiceCtrlEntry/svtools_AccessibleIconChoiceCtrlEntry.xba97
-rw-r--r--qadevOOo/tests/basic/mod/svtools/AccessibleTabBarPage/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svtools/AccessibleTabBarPage/svtools_AccessibleTabBarPage.xba66
-rw-r--r--qadevOOo/tests/basic/mod/svtools/AccessibleTabBarPageList/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svtools/AccessibleTabBarPageList/svtools_AccessibleTabBarPageList.xba75
-rw-r--r--qadevOOo/tests/basic/mod/svtools/AccessibleTreeListBox/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svtools/AccessibleTreeListBox/svtools_AccessibleTreeListBox.xba87
-rw-r--r--qadevOOo/tests/basic/mod/svtools/AccessibleTreeListBoxEntry/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svtools/AccessibleTreeListBoxEntry/svtools_AccessibleTreeListBoxEntry.xba93
-rw-r--r--qadevOOo/tests/basic/mod/svx/AccessibleControlShape/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/AccessibleControlShape/svx_AccessibleControlShape.xba89
-rw-r--r--qadevOOo/tests/basic/mod/svx/AccessibleEditableTextPara/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/AccessibleEditableTextPara/svx_AccessibleEditableTextPara.xba108
-rw-r--r--qadevOOo/tests/basic/mod/svx/AccessibleGraphicShape/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/AccessibleGraphicShape/svx_AccessibleGraphicShape.xba83
-rw-r--r--qadevOOo/tests/basic/mod/svx/AccessibleOLEShape/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/AccessibleOLEShape/svx_AccessibleOLEShape.xba83
-rw-r--r--qadevOOo/tests/basic/mod/svx/AccessiblePageShape/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/AccessiblePageShape/svx_AccessiblePageShape.xba86
-rw-r--r--qadevOOo/tests/basic/mod/svx/AccessiblePresentationGraphicShape/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/AccessiblePresentationGraphicShape/svx_AccessiblePresentationGraphicShape.xba86
-rw-r--r--qadevOOo/tests/basic/mod/svx/AccessiblePresentationOLEShape/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/AccessiblePresentationOLEShape/svx_AccessiblePresentationOLEShape.xba85
-rw-r--r--qadevOOo/tests/basic/mod/svx/AccessiblePresentationShape/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/AccessiblePresentationShape/svx_AccessiblePresentationShape.xba87
-rw-r--r--qadevOOo/tests/basic/mod/svx/AccessibleShape/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/AccessibleShape/svx_AccessibleShape.xba83
-rw-r--r--qadevOOo/tests/basic/mod/svx/GraphicExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/GraphicExporter/svx_GraphicExporter.xba109
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxDrawPage/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxDrawPage/svx_SvxDrawPage.xba125
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxGraphCtrlAccessibleContext/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxGraphCtrlAccessibleContext/svx_SvxGraphCtrlAccessibleContext.xba102
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxGraphicObject/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxGraphicObject/svx_SvxGraphicObject.xba102
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxShape/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxShape/svx_SvxShape.xba80
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxShapeCircle/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxShapeCircle/svx_SvxShapeCircle.xba102
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxShapeCollection/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxShapeCollection/svx_SvxShapeCollection.xba68
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxShapeConnector/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxShapeConnector/svx_SvxShapeConnector.xba78
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxShapeControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxShapeControl/svx_SvxShapeControl.xba108
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxShapeDimensioning/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxShapeDimensioning/svx_SvxShapeDimensioning.xba98
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxShapeGroup/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxShapeGroup/svx_SvxShapeGroup.xba102
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxShapePolyPolygon/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxShapePolyPolygon/svx_SvxShapePolyPolygon.xba107
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxShapePolyPolygonBezier/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxShapePolyPolygonBezier/svx_SvxShapePolyPolygonBezier.xba121
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxUnoNumberingRules/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxUnoNumberingRules/svx_SvxUnoNumberingRules.xba58
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxUnoText/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxUnoText/svx_SvxUnoText.xba91
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxUnoTextContent/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxUnoTextContent/svx_SvxUnoTextContent.xba90
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxUnoTextContentEnum/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxUnoTextContentEnum/svx_SvxUnoTextContentEnum.xba81
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxUnoTextCursor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxUnoTextCursor/svx_SvxUnoTextCursor.xba85
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxUnoTextField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxUnoTextField/svx_SvxUnoTextField.xba94
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxUnoTextRange/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxUnoTextRange/svx_SvxUnoTextRange.xba80
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxUnoTextRangeEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/svx/SvxUnoTextRangeEnumeration/svx_SvxUnoTextRangeEnumeration.xba81
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwAccessibleDocumentPageView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwAccessibleDocumentPageView/sw_SwAccessibleDocumentPageView.xba110
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwAccessibleDocumentView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwAccessibleDocumentView/sw_SwAccessibleDocumentView.xba76
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwAccessibleEndnoteView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwAccessibleEndnoteView/sw_SwAccessibleEndnoteView.xba86
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwAccessibleFooterView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwAccessibleFooterView/sw_SwAccessibleFooterView.xba76
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwAccessibleFootnoteView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwAccessibleFootnoteView/sw_SwAccessibleFootnoteView.xba86
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwAccessibleHeaderView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwAccessibleHeaderView/sw_SwAccessibleHeaderView.xba80
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwAccessiblePageView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwAccessiblePageView/sw_SwAccessiblePageView.xba114
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwAccessibleParagraphView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwAccessibleParagraphView/sw_SwAccessibleParagraphView.xba85
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwAccessibleTableCellView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwAccessibleTableCellView/sw_SwAccessibleTableCellView.xba73
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwAccessibleTableView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwAccessibleTableView/sw_SwAccessibleTableView.xba84
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwAccessibleTextEmbeddedObject/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwAccessibleTextEmbeddedObject/sw_SwAccessibleTextEmbeddedObject.xba75
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwAccessibleTextFrameView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwAccessibleTextFrameView/sw_SwAccessibleTextFrameView.xba91
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwAccessibleTextGraphicObject/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwAccessibleTextGraphicObject/sw_SwAccessibleTextGraphicObject.xba86
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXAutoTextContainer/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXAutoTextContainer/sw_SwXAutoTextContainer.xba59
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXAutoTextEntry/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXAutoTextEntry/sw_SwXAutoTextEntry.xba108
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXAutoTextGroup/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXAutoTextGroup/sw_SwXAutoTextGroup.xba83
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXBodyText/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXBodyText/sw_SwXBodyText.xba70
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXBookmark/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXBookmark/sw_SwXBookmark.xba104
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXBookmarks/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXBookmarks/sw_SwXBookmarks.xba92
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXCell/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXCell/sw_SwXCell.xba79
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXCellRange/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXCellRange/sw_SwXCellRange.xba77
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXChapterNumbering/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXChapterNumbering/sw_SwXChapterNumbering.xba70
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXDocumentIndex/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXDocumentIndex/sw_SwXDocumentIndex.xba107
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXDocumentIndexMark/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXDocumentIndexMark/sw_SwXDocumentIndexMark.xba82
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXDocumentIndexes/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXDocumentIndexes/sw_SwXDocumentIndexes.xba70
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXDrawPage/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXDrawPage/sw_SwXDrawPage.xba86
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXEndnoteProperties/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXEndnoteProperties/sw_SwXEndnoteProperties.xba66
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXFieldEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXFieldEnumeration/sw_SwXFieldEnumeration.xba72
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXFieldMaster/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXFieldMaster/sw_SwXFieldMaster.xba54
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXFootnote/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXFootnote/sw_SwXFootnote.xba85
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXFootnoteProperties/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXFootnoteProperties/sw_SwXFootnoteProperties.xba64
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXFootnoteText/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXFootnoteText/sw_SwXFootnoteText.xba76
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXFootnotes/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXFootnotes/sw_SwXFootnotes.xba66
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXFrames/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXFrames/sw_SwXFrames.xba81
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXHeadFootText/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXHeadFootText/sw_SwXHeadFootText.xba87
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXLineNumberingProperties/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXLineNumberingProperties/sw_SwXLineNumberingProperties.xba66
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXMailMerge/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXMailMerge/sw_SwXMailMerge.xba155
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXModule/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXModule/sw_SwXModule.xba50
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXNumberingRules/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXNumberingRules/sw_SwXNumberingRules.xba75
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXParagraph/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXParagraph/sw_SwXParagraph.xba101
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXParagraphEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXParagraphEnumeration/sw_SwXParagraphEnumeration.xba71
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXPrintSettings/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXPrintSettings/sw_SwXPrintSettings.xba60
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXPropertySet/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXPropertySet/sw_SwXPropertySet.xba51
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXPropertySetInfo/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXPropertySetInfo/sw_SwXPropertySetInfo.xba51
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXReferenceMark/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXReferenceMark/sw_SwXReferenceMark.xba92
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXReferenceMarks/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXReferenceMarks/sw_SwXReferenceMarks.xba85
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXShape/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXShape/sw_SwXShape.xba92
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXStyle/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXStyle/sw_SwXStyle.xba104
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXStyleFamilies/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXStyleFamilies/sw_SwXStyleFamilies.xba57
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXStyleFamily/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXStyleFamily/sw_SwXStyleFamily.xba78
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTableCellText/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTableCellText/sw_SwXTableCellText.xba75
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTableColumns/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTableColumns/sw_SwXTableColumns.xba84
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTableRows/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTableRows/sw_SwXTableRows.xba87
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextColumns/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextColumns/sw_SwXTextColumns.xba70
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextCursor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextCursor/sw_SwXTextCursor.xba67
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextDefaults/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextDefaults/sw_SwXTextDefaults.xba75
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextDocument/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextDocument/sw_SwXTextDocument.xba98
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextEmbeddedObject/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextEmbeddedObject/sw_SwXTextEmbeddedObject.xba68
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextEmbeddedObjects/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextEmbeddedObjects/sw_SwXTextEmbeddedObjects.xba54
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextField/sw_SwXTextField.xba93
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextFieldMasters/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextFieldMasters/sw_SwXTextFieldMasters.xba76
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextFieldTypes/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextFieldTypes/sw_SwXTextFieldTypes.xba71
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextFrame/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextFrame/sw_SwXTextFrame.xba120
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextFrameText/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextFrameText/sw_SwXTextFrameText.xba83
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextGraphicObject/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextGraphicObject/sw_SwXTextGraphicObject.xba89
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextGraphicObjects/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextGraphicObjects/sw_SwXTextGraphicObjects.xba64
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextPortion/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextPortion/sw_SwXTextPortion.xba74
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextPortionEnumeration/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextPortionEnumeration/sw_SwXTextPortionEnumeration.xba67
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextRange/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextRange/sw_SwXTextRange.xba57
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextRanges/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextRanges/sw_SwXTextRanges.xba79
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextSearch/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextSearch/sw_SwXTextSearch.xba58
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextSection/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextSection/sw_SwXTextSection.xba103
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextSections/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextSections/sw_SwXTextSections.xba77
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextTable/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextTable/sw_SwXTextTable.xba148
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextTableCursor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextTableCursor/sw_SwXTextTableCursor.xba64
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextTableRow/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextTableRow/sw_SwXTextTableRow.xba64
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextTables/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextTables/sw_SwXTextTables.xba77
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextView/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextView/sw_SwXTextView.xba120
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextViewCursor/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXTextViewCursor/sw_SwXTextViewCursor.xba67
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXViewSettings/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/SwXViewSettings/sw_SwXViewSettings.xba58
-rw-r--r--qadevOOo/tests/basic/mod/sw/XMLContentExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/XMLContentExporter/sw_XMLContentExporter.xba119
-rw-r--r--qadevOOo/tests/basic/mod/sw/XMLContentImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/XMLContentImporter/sw_XMLContentImporter.xba90
-rw-r--r--qadevOOo/tests/basic/mod/sw/XMLExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/XMLExporter/sw_XMLExporter.xba121
-rw-r--r--qadevOOo/tests/basic/mod/sw/XMLImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/XMLImporter/sw_XMLImporter.xba91
-rw-r--r--qadevOOo/tests/basic/mod/sw/XMLMetaExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/XMLMetaExporter/sw_XMLMetaExporter.xba111
-rw-r--r--qadevOOo/tests/basic/mod/sw/XMLMetaImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/XMLMetaImporter/sw_XMLMetaImporter.xba92
-rw-r--r--qadevOOo/tests/basic/mod/sw/XMLSettingsExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/XMLSettingsExporter/sw_XMLSettingsExporter.xba113
-rw-r--r--qadevOOo/tests/basic/mod/sw/XMLSettingsImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/XMLSettingsImporter/sw_XMLSettingsImporter.xba110
-rw-r--r--qadevOOo/tests/basic/mod/sw/XMLStylesExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/XMLStylesExporter/sw_XMLStylesExporter.xba106
-rw-r--r--qadevOOo/tests/basic/mod/sw/XMLStylesImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sw/XMLStylesImporter/sw_XMLStylesImporter.xba93
-rw-r--r--qadevOOo/tests/basic/mod/sysdtrans/SystemClipboard/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/sysdtrans/SystemClipboard/sysdtrans_SystemClipboard.xba86
-rw-r--r--qadevOOo/tests/basic/mod/syssh/SystemShellExecute/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/syssh/SystemShellExecute/syssh_SystemShellExecute.xba53
-rw-r--r--qadevOOo/tests/basic/mod/tcv/TypeConverter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/tcv/TypeConverter/tcv_TypeConverter.xba53
-rw-r--r--qadevOOo/tests/basic/mod/tdmgr/TypeDescriptionManager/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/tdmgr/TypeDescriptionManager/tdmgr_TypeDescriptionManager.xba59
-rw-r--r--qadevOOo/tests/basic/mod/text/DefaultNumberingProvider/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/text/DefaultNumberingProvider/text_DefaultNumberingProvider.xba53
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleButton/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleButton/toolkit_AccessibleButton.xba90
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleCheckBox/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleCheckBox/toolkit_AccessibleCheckBox.xba89
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleComboBox/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleComboBox/toolkit_AccessibleComboBox.xba92
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleDropDownComboBox/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleDropDownComboBox/toolkit_AccessibleDropDownComboBox.xba65
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleDropDownListBox/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleDropDownListBox/toolkit_AccessibleDropDownListBox.xba70
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleEdit/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleEdit/toolkit_AccessibleEdit.xba111
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleFixedText/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleFixedText/toolkit_AccessibleFixedText.xba97
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleList/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleList/toolkit_AccessibleList.xba122
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleListBox/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleListBox/toolkit_AccessibleListBox.xba99
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleListItem/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleListItem/toolkit_AccessibleListItem.xba107
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleMenu/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleMenu/toolkit_AccessibleMenu.xba86
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleMenuBar/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleMenuBar/toolkit_AccessibleMenuBar.xba75
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleMenuItem/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleMenuItem/toolkit_AccessibleMenuItem.xba82
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleMenuSeparator/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleMenuSeparator/toolkit_AccessibleMenuSeparator.xba77
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleRadioButton/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleRadioButton/toolkit_AccessibleRadioButton.xba102
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleScrollBar/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleScrollBar/toolkit_AccessibleScrollBar.xba78
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleStatusBar/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleStatusBar/toolkit_AccessibleStatusBar.xba73
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleStatusBarItem/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleStatusBarItem/toolkit_AccessibleStatusBarItem.xba91
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleTabControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleTabControl/toolkit_AccessibleTabControl.xba101
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleTabPage/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleTabPage/toolkit_AccessibleTabPage.xba106
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleToolBox/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleToolBox/toolkit_AccessibleToolBox.xba79
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleToolBoxItem/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/AccessibleToolBoxItem/toolkit_AccessibleToolBoxItem.xba79
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/TabController/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/TabController/toolkit_TabController.xba75
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/TabControllerModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/TabControllerModel/toolkit_TabControllerModel.xba74
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/Toolkit/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/Toolkit/toolkit_Toolkit.xba65
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlButton/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlButton/toolkit_UnoControlButton.xba111
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlButtonModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlButtonModel/toolkit_UnoControlButtonModel.xba57
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlCheckBox/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlCheckBox/toolkit_UnoControlCheckBox.xba119
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlCheckBoxModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlCheckBoxModel/toolkit_UnoControlCheckBoxModel.xba56
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlComboBox/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlComboBox/toolkit_UnoControlComboBox.xba103
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlComboBoxModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlComboBoxModel/toolkit_UnoControlComboBoxModel.xba56
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlContainer/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlContainer/toolkit_UnoControlContainer.xba113
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlContainerModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlContainerModel/toolkit_UnoControlContainerModel.xba57
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlCurrencyField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlCurrencyField/toolkit_UnoControlCurrencyField.xba105
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlCurrencyFieldModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlCurrencyFieldModel/toolkit_UnoControlCurrencyFieldModel.xba57
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlDateField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlDateField/toolkit_UnoControlDateField.xba102
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlDateFieldModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlDateFieldModel/toolkit_UnoControlDateFieldModel.xba57
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlDialog/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlDialog/toolkit_UnoControlDialog.xba108
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlDialogModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlDialogModel/toolkit_UnoControlDialogModel.xba57
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlEdit/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlEdit/toolkit_UnoControlEdit.xba101
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlEditModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlEditModel/toolkit_UnoControlEditModel.xba57
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlFileControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlFileControl/toolkit_UnoControlFileControl.xba103
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlFileControlModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlFileControlModel/toolkit_UnoControlFileControlModel.xba57
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlFixedLineModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlFixedLineModel/toolkit_UnoControlFixedLineModel.xba57
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlFixedText/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlFixedText/toolkit_UnoControlFixedText.xba102
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlFixedTextModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlFixedTextModel/toolkit_UnoControlFixedTextModel.xba57
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlFormattedField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlFormattedField/toolkit_UnoControlFormattedField.xba100
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlFormattedFieldModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlFormattedFieldModel/toolkit_UnoControlFormattedFieldModel.xba57
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlGroupBox/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlGroupBox/toolkit_UnoControlGroupBox.xba102
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlGroupBoxModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlGroupBoxModel/toolkit_UnoControlGroupBoxModel.xba57
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlImageControl/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlImageControl/toolkit_UnoControlImageControl.xba99
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlImageControlModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlImageControlModel/toolkit_UnoControlImageControlModel.xba57
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlListBox/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlListBox/toolkit_UnoControlListBox.xba120
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlListBoxModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlListBoxModel/toolkit_UnoControlListBoxModel.xba57
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlNumericField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlNumericField/toolkit_UnoControlNumericField.xba101
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlNumericFieldModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlNumericFieldModel/toolkit_UnoControlNumericFieldModel.xba57
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlPatternField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlPatternField/toolkit_UnoControlPatternField.xba101
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlPatternFieldModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlPatternFieldModel/toolkit_UnoControlPatternFieldModel.xba57
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlProgressBarModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlProgressBarModel/toolkit_UnoControlProgressBarModel.xba57
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlRadioButton/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlRadioButton/toolkit_UnoControlRadioButton.xba101
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlRadioButtonModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlRadioButtonModel/toolkit_UnoControlRadioButtonModel.xba57
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlScrollBarModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlScrollBarModel/toolkit_UnoControlScrollBarModel.xba57
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlTimeField/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlTimeField/toolkit_UnoControlTimeField.xba101
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlTimeFieldModel/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/toolkit/UnoControlTimeFieldModel/toolkit_UnoControlTimeFieldModel.xba59
-rw-r--r--qadevOOo/tests/basic/mod/typeconverter.uno/TypeConverter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/typeconverter.uno/TypeConverter/typeconverter_uno_TypeConverter.xba53
-rw-r--r--qadevOOo/tests/basic/mod/typemgr.uno/TypeDescriptionManager/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/typemgr.uno/TypeDescriptionManager/typemgr_uno_TypeDescriptionManager.xba59
-rw-r--r--qadevOOo/tests/basic/mod/ucb/UcbContentProviderProxyFactory/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/ucb/UcbContentProviderProxyFactory/ucb_UcbContentProviderProxyFactory.xba53
-rw-r--r--qadevOOo/tests/basic/mod/ucb/UcbPropertiesManager/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/ucb/UcbPropertiesManager/ucb_UcbPropertiesManager.xba53
-rw-r--r--qadevOOo/tests/basic/mod/ucb/UcbStore/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/ucb/UcbStore/ucb_UcbStore.xba53
-rw-r--r--qadevOOo/tests/basic/mod/ucb/UniversalContentBroker/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/ucb/UniversalContentBroker/ucb_UniversalContentBroker.xba80
-rw-r--r--qadevOOo/tests/basic/mod/ucpdav/WebDAVContentProvider/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/ucpdav/WebDAVContentProvider/ucpdav_WebDAVContentProvider.xba69
-rw-r--r--qadevOOo/tests/basic/mod/ucpfile/FileProvider/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/ucpfile/FileProvider/ucpfile_FileProvider.xba73
-rw-r--r--qadevOOo/tests/basic/mod/ucphier/HierarchyContentProvider/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/ucphier/HierarchyContentProvider/ucphier_HierarchyContentProvider.xba65
-rw-r--r--qadevOOo/tests/basic/mod/ucphier/HierarchyDataSource/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/ucphier/HierarchyDataSource/ucphier_HierarchyDataSource.xba71
-rw-r--r--qadevOOo/tests/basic/mod/ucppkg/PackageContentProvider/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/ucppkg/PackageContentProvider/ucppkg_PackageContentProvider.xba65
-rw-r--r--qadevOOo/tests/basic/mod/uui/UUIInteractionHandler/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/uui/UUIInteractionHandler/uui_UUIInteractionHandler.xba53
-rw-r--r--qadevOOo/tests/basic/mod/uuresolver.uno/UnoUrlResolver/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/uuresolver.uno/UnoUrlResolver/uuresolver_uno_UnoUrlResolver.xba53
-rw-r--r--qadevOOo/tests/basic/mod/uuresolver/UnoUrlResolver/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/uuresolver/UnoUrlResolver/uuresolver_UnoUrlResolver.xba53
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Chart/XMLContentExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Chart/XMLContentExporter/xmloff_Chart_XMLContentExporter.xba111
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Chart/XMLContentImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Chart/XMLContentImporter/xmloff_Chart_XMLContentImporter.xba101
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Chart/XMLExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Chart/XMLExporter/xmloff_Chart_XMLExporter.xba112
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Chart/XMLImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Chart/XMLImporter/xmloff_Chart_XMLImporter.xba101
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Chart/XMLStylesExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Chart/XMLStylesExporter/xmloff_Chart_XMLStylesExporter.xba99
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Chart/XMLStylesImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Chart/XMLStylesImporter/xmloff_Chart_XMLStylesImporter.xba87
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Draw/XMLContentExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Draw/XMLContentExporter/xmloff_Draw_XMLContentExporter.xba115
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Draw/XMLContentImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Draw/XMLContentImporter/xmloff_Draw_XMLContentImporter.xba115
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Draw/XMLExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Draw/XMLExporter/xmloff_Draw_XMLExporter.xba110
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Draw/XMLImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Draw/XMLImporter/xmloff_Draw_XMLImporter.xba115
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Draw/XMLMetaExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Draw/XMLMetaExporter/xmloff_Draw_XMLMetaExporter.xba111
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Draw/XMLMetaImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Draw/XMLMetaImporter/xmloff_Draw_XMLMetaImporter.xba94
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Draw/XMLSettingsExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Draw/XMLSettingsExporter/xmloff_Draw_XMLSettingsExporter.xba119
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Draw/XMLSettingsImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Draw/XMLSettingsImporter/xmloff_Draw_XMLSettingsImporter.xba95
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Draw/XMLStylesExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Draw/XMLStylesExporter/xmloff_Draw_XMLStylesExporter.xba116
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Draw/XMLStylesImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Draw/XMLStylesImporter/xmloff_Draw_XMLStylesImporter.xba93
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Impress/XMLContentExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Impress/XMLContentExporter/xmloff_Impress_XMLContentExporter.xba112
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Impress/XMLContentImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Impress/XMLContentImporter/xmloff_Impress_XMLContentImporter.xba128
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Impress/XMLExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Impress/XMLExporter/xmloff_Impress_XMLExporter.xba112
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Impress/XMLImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Impress/XMLImporter/xmloff_Impress_XMLImporter.xba90
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Impress/XMLMetaExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Impress/XMLMetaExporter/xmloff_Impress_XMLMetaExporter.xba111
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Impress/XMLMetaImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Impress/XMLMetaImporter/xmloff_Impress_XMLMetaImporter.xba93
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Impress/XMLSettingsExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Impress/XMLSettingsExporter/xmloff_Impress_XMLSettingsExporter.xba123
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Impress/XMLSettingsImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Impress/XMLSettingsImporter/xmloff_Impress_XMLSettingsImporter.xba95
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Impress/XMLStylesExporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Impress/XMLStylesExporter/xmloff_Impress_XMLStylesExporter.xba113
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Impress/XMLStylesImporter/script.xlb5
-rw-r--r--qadevOOo/tests/basic/mod/xmloff/Impress/XMLStylesImporter/xmloff_Impress_XMLStylesImporter.xba95
-rw-r--r--qadevOOo/tests/java/complex/unoapi/CheckModuleAPI.java654
-rw-r--r--qadevOOo/tests/java/ifc/accessibility/_XAccessible.java57
-rw-r--r--qadevOOo/tests/java/ifc/accessibility/_XAccessibleAction.java167
-rw-r--r--qadevOOo/tests/java/ifc/accessibility/_XAccessibleComponent.java651
-rw-r--r--qadevOOo/tests/java/ifc/accessibility/_XAccessibleContext.java354
-rw-r--r--qadevOOo/tests/java/ifc/accessibility/_XAccessibleEditableText.java542
-rw-r--r--qadevOOo/tests/java/ifc/accessibility/_XAccessibleEventBroadcaster.java212
-rw-r--r--qadevOOo/tests/java/ifc/accessibility/_XAccessibleExtendedComponent.java123
-rw-r--r--qadevOOo/tests/java/ifc/accessibility/_XAccessibleImage.java74
-rw-r--r--qadevOOo/tests/java/ifc/accessibility/_XAccessibleSelection.java600
-rw-r--r--qadevOOo/tests/java/ifc/accessibility/_XAccessibleTable.java1010
-rw-r--r--qadevOOo/tests/java/ifc/accessibility/_XAccessibleText.java1195
-rw-r--r--qadevOOo/tests/java/ifc/accessibility/_XAccessibleValue.java351
-rw-r--r--qadevOOo/tests/java/ifc/awt/_UnoControlButtonModel.java122
-rw-r--r--qadevOOo/tests/java/ifc/awt/_UnoControlCheckBoxModel.java109
-rw-r--r--qadevOOo/tests/java/ifc/awt/_UnoControlComboBoxModel.java138
-rw-r--r--qadevOOo/tests/java/ifc/awt/_UnoControlContainerModel.java72
-rw-r--r--qadevOOo/tests/java/ifc/awt/_UnoControlCurrencyFieldModel.java133
-rw-r--r--qadevOOo/tests/java/ifc/awt/_UnoControlDateFieldModel.java173
-rw-r--r--qadevOOo/tests/java/ifc/awt/_UnoControlDialogElement.java35
-rw-r--r--qadevOOo/tests/java/ifc/awt/_UnoControlDialogModel.java87
-rw-r--r--qadevOOo/tests/java/ifc/awt/_UnoControlEditModel.java130
-rw-r--r--qadevOOo/tests/java/ifc/awt/_UnoControlFileControlModel.java117
-rw-r--r--qadevOOo/tests/java/ifc/awt/_UnoControlFixedLineModel.java76
-rw-r--r--qadevOOo/tests/java/ifc/awt/_UnoControlFixedTextModel.java111
-rw-r--r--qadevOOo/tests/java/ifc/awt/_UnoControlFormattedFieldModel.java251
-rw-r--r--qadevOOo/tests/java/ifc/awt/_UnoControlGroupBoxModel.java85
-rw-r--r--qadevOOo/tests/java/ifc/awt/_UnoControlImageControlModel.java109
-rw-r--r--qadevOOo/tests/java/ifc/awt/_UnoControlListBoxModel.java126
-rw-r--r--qadevOOo/tests/java/ifc/awt/_UnoControlModel.java35
-rw-r--r--qadevOOo/tests/java/ifc/awt/_UnoControlNumericFieldModel.java133
-rw-r--r--qadevOOo/tests/java/ifc/awt/_UnoControlPatternFieldModel.java116
-rw-r--r--qadevOOo/tests/java/ifc/awt/_UnoControlProgressBarModel.java90
-rw-r--r--qadevOOo/tests/java/ifc/awt/_UnoControlRadioButtonModel.java108
-rw-r--r--qadevOOo/tests/java/ifc/awt/_UnoControlScrollBarModel.java115
-rw-r--r--qadevOOo/tests/java/ifc/awt/_UnoControlSpinButtonModel.java71
-rw-r--r--qadevOOo/tests/java/ifc/awt/_UnoControlTimeFieldModel.java137
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XButton.java118
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XCheckBox.java150
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XComboBox.java285
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XControl.java222
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XControlContainer.java142
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XCurrencyField.java308
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XDataTransferProviderAccess.java135
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XDateField.java340
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XDialog.java158
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XFixedText.java120
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XImageConsumer.java144
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XImageProducer.java165
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XItemListener.java119
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XLayoutConstrains.java77
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XListBox.java513
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XMessageBoxFactory.java110
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XNumericField.java311
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XPatternField.java176
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XRadioButton.java151
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XScrollBar.java228
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XSpinField.java216
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XSpinValue.java220
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XSystemChildFactory.java40
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XTabController.java168
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XTabControllerModel.java166
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XTextComponent.java270
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XTextLayoutConstrains.java80
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XTextListener.java128
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XTimeField.java295
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XToolkit.java156
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XTopWindow.java206
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XUnoControlContainer.java181
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XUserInputInterception.java539
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XView.java143
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XWindow.java624
-rw-r--r--qadevOOo/tests/java/ifc/awt/tree/_TreeControlModel.java37
-rw-r--r--qadevOOo/tests/java/ifc/awt/tree/_XMutableTreeDataModel.java99
-rw-r--r--qadevOOo/tests/java/ifc/awt/tree/_XMutableTreeNode.java295
-rw-r--r--qadevOOo/tests/java/ifc/awt/tree/_XTreeControl.java671
-rw-r--r--qadevOOo/tests/java/ifc/awt/tree/_XTreeDataModel.java183
-rw-r--r--qadevOOo/tests/java/ifc/awt/tree/_XTreeNode.java261
-rw-r--r--qadevOOo/tests/java/ifc/beans/_XExactName.java94
-rw-r--r--qadevOOo/tests/java/ifc/beans/_XFastPropertySet.java235
-rw-r--r--qadevOOo/tests/java/ifc/beans/_XHierarchicalPropertySet.java161
-rw-r--r--qadevOOo/tests/java/ifc/beans/_XIntrospection.java62
-rw-r--r--qadevOOo/tests/java/ifc/beans/_XMultiHierarchicalPropertySet.java157
-rw-r--r--qadevOOo/tests/java/ifc/beans/_XMultiPropertySet.java378
-rw-r--r--qadevOOo/tests/java/ifc/beans/_XMultiPropertyStates.java235
-rw-r--r--qadevOOo/tests/java/ifc/beans/_XProperty.java44
-rw-r--r--qadevOOo/tests/java/ifc/beans/_XPropertyAccess.java236
-rw-r--r--qadevOOo/tests/java/ifc/beans/_XPropertyContainer.java309
-rw-r--r--qadevOOo/tests/java/ifc/beans/_XPropertySet.java674
-rw-r--r--qadevOOo/tests/java/ifc/beans/_XPropertySetInfo.java126
-rw-r--r--qadevOOo/tests/java/ifc/beans/_XPropertyState.java274
-rw-r--r--qadevOOo/tests/java/ifc/beans/_XPropertyWithState.java113
-rw-r--r--qadevOOo/tests/java/ifc/beans/_XTolerantMultiPropertySet.java346
-rw-r--r--qadevOOo/tests/java/ifc/bridge/_XBridge.java148
-rw-r--r--qadevOOo/tests/java/ifc/bridge/_XBridgeFactory.java233
-rw-r--r--qadevOOo/tests/java/ifc/bridge/_XUnoUrlResolver.java207
-rw-r--r--qadevOOo/tests/java/ifc/chart/_BarDiagram.java159
-rw-r--r--qadevOOo/tests/java/ifc/chart/_Chart3DBarProperties.java132
-rw-r--r--qadevOOo/tests/java/ifc/chart/_ChartAxis.java196
-rw-r--r--qadevOOo/tests/java/ifc/chart/_ChartAxisXSupplier.java141
-rw-r--r--qadevOOo/tests/java/ifc/chart/_ChartAxisYSupplier.java167
-rw-r--r--qadevOOo/tests/java/ifc/chart/_ChartAxisZSupplier.java204
-rw-r--r--qadevOOo/tests/java/ifc/chart/_ChartDataPointProperties.java115
-rw-r--r--qadevOOo/tests/java/ifc/chart/_ChartDataRowProperties.java63
-rw-r--r--qadevOOo/tests/java/ifc/chart/_ChartDocument.java44
-rw-r--r--qadevOOo/tests/java/ifc/chart/_ChartLegend.java42
-rw-r--r--qadevOOo/tests/java/ifc/chart/_ChartStatistics.java74
-rw-r--r--qadevOOo/tests/java/ifc/chart/_ChartTableAddressSupplier.java67
-rw-r--r--qadevOOo/tests/java/ifc/chart/_ChartTitle.java57
-rw-r--r--qadevOOo/tests/java/ifc/chart/_ChartTwoAxisXSupplier.java108
-rw-r--r--qadevOOo/tests/java/ifc/chart/_ChartTwoAxisYSupplier.java108
-rw-r--r--qadevOOo/tests/java/ifc/chart/_Diagram.java68
-rw-r--r--qadevOOo/tests/java/ifc/chart/_Dim3DDiagram.java67
-rw-r--r--qadevOOo/tests/java/ifc/chart/_LineDiagram.java194
-rw-r--r--qadevOOo/tests/java/ifc/chart/_StackableDiagram.java89
-rw-r--r--qadevOOo/tests/java/ifc/chart/_StockDiagram.java87
-rw-r--r--qadevOOo/tests/java/ifc/chart/_X3DDisplay.java77
-rw-r--r--qadevOOo/tests/java/ifc/chart/_XAxisXSupplier.java106
-rw-r--r--qadevOOo/tests/java/ifc/chart/_XAxisYSupplier.java109
-rw-r--r--qadevOOo/tests/java/ifc/chart/_XAxisZSupplier.java109
-rw-r--r--qadevOOo/tests/java/ifc/chart/_XChartData.java184
-rw-r--r--qadevOOo/tests/java/ifc/chart/_XChartDataArray.java233
-rw-r--r--qadevOOo/tests/java/ifc/chart/_XChartDocument.java164
-rw-r--r--qadevOOo/tests/java/ifc/chart/_XDiagram.java156
-rw-r--r--qadevOOo/tests/java/ifc/chart/_XStatisticDisplay.java91
-rw-r--r--qadevOOo/tests/java/ifc/chart/_XTwoAxisXSupplier.java63
-rw-r--r--qadevOOo/tests/java/ifc/chart/_XTwoAxisYSupplier.java71
-rw-r--r--qadevOOo/tests/java/ifc/configuration/_XTemplateContainer.java50
-rw-r--r--qadevOOo/tests/java/ifc/configuration/_XTemplateInstance.java50
-rw-r--r--qadevOOo/tests/java/ifc/configuration/backend/_XBackend.java265
-rw-r--r--qadevOOo/tests/java/ifc/configuration/backend/_XBackendEntities.java181
-rw-r--r--qadevOOo/tests/java/ifc/configuration/backend/_XLayer.java90
-rw-r--r--qadevOOo/tests/java/ifc/configuration/backend/_XLayerHandler.java266
-rw-r--r--qadevOOo/tests/java/ifc/configuration/backend/_XLayerImporter.java166
-rw-r--r--qadevOOo/tests/java/ifc/configuration/backend/_XMultiLayerStratum.java316
-rw-r--r--qadevOOo/tests/java/ifc/configuration/backend/_XSchema.java263
-rw-r--r--qadevOOo/tests/java/ifc/configuration/backend/_XSchemaSupplier.java118
-rw-r--r--qadevOOo/tests/java/ifc/configuration/backend/_XSingleLayerStratum.java152
-rw-r--r--qadevOOo/tests/java/ifc/configuration/backend/_XUpdateHandler.java260
-rw-r--r--qadevOOo/tests/java/ifc/connection/_XAcceptor.java323
-rw-r--r--qadevOOo/tests/java/ifc/connection/_XConnector.java198
-rw-r--r--qadevOOo/tests/java/ifc/container/_XChild.java100
-rw-r--r--qadevOOo/tests/java/ifc/container/_XContainer.java370
-rw-r--r--qadevOOo/tests/java/ifc/container/_XContainerQuery.java162
-rw-r--r--qadevOOo/tests/java/ifc/container/_XContentEnumerationAccess.java95
-rw-r--r--qadevOOo/tests/java/ifc/container/_XElementAccess.java69
-rw-r--r--qadevOOo/tests/java/ifc/container/_XEnumeration.java137
-rw-r--r--qadevOOo/tests/java/ifc/container/_XEnumerationAccess.java57
-rw-r--r--qadevOOo/tests/java/ifc/container/_XHierarchicalName.java80
-rw-r--r--qadevOOo/tests/java/ifc/container/_XHierarchicalNameAccess.java92
-rw-r--r--qadevOOo/tests/java/ifc/container/_XIndexAccess.java158
-rw-r--r--qadevOOo/tests/java/ifc/container/_XIndexContainer.java210
-rw-r--r--qadevOOo/tests/java/ifc/container/_XIndexReplace.java211
-rw-r--r--qadevOOo/tests/java/ifc/container/_XNameAccess.java164
-rw-r--r--qadevOOo/tests/java/ifc/container/_XNameContainer.java259
-rw-r--r--qadevOOo/tests/java/ifc/container/_XNameReplace.java226
-rw-r--r--qadevOOo/tests/java/ifc/container/_XNamed.java165
-rw-r--r--qadevOOo/tests/java/ifc/container/_XSet.java150
-rw-r--r--qadevOOo/tests/java/ifc/datatransfer/_XDataFormatTranslator.java77
-rw-r--r--qadevOOo/tests/java/ifc/datatransfer/_XMimeContentTypeFactory.java95
-rw-r--r--qadevOOo/tests/java/ifc/datatransfer/clipboard/_XClipboard.java146
-rw-r--r--qadevOOo/tests/java/ifc/datatransfer/clipboard/_XClipboardEx.java55
-rw-r--r--qadevOOo/tests/java/ifc/datatransfer/clipboard/_XClipboardNotifier.java175
-rw-r--r--qadevOOo/tests/java/ifc/datatransfer/clipboard/_XFlushableClipboard.java56
-rw-r--r--qadevOOo/tests/java/ifc/document/_DocumentInfo.java151
-rw-r--r--qadevOOo/tests/java/ifc/document/_ExportFilter.java51
-rw-r--r--qadevOOo/tests/java/ifc/document/_ImportFilter.java52
-rw-r--r--qadevOOo/tests/java/ifc/document/_LinkTarget.java75
-rw-r--r--qadevOOo/tests/java/ifc/document/_OfficeDocument.java45
-rw-r--r--qadevOOo/tests/java/ifc/document/_Settings.java174
-rw-r--r--qadevOOo/tests/java/ifc/document/_XActionLockable.java109
-rw-r--r--qadevOOo/tests/java/ifc/document/_XDocumentInfo.java224
-rw-r--r--qadevOOo/tests/java/ifc/document/_XDocumentInfoSupplier.java56
-rw-r--r--qadevOOo/tests/java/ifc/document/_XDocumentInsertable.java198
-rw-r--r--qadevOOo/tests/java/ifc/document/_XEmbeddedObjectSupplier.java56
-rw-r--r--qadevOOo/tests/java/ifc/document/_XEventBroadcaster.java83
-rw-r--r--qadevOOo/tests/java/ifc/document/_XEventsSupplier.java60
-rw-r--r--qadevOOo/tests/java/ifc/document/_XExporter.java90
-rw-r--r--qadevOOo/tests/java/ifc/document/_XFilter.java183
-rw-r--r--qadevOOo/tests/java/ifc/document/_XImporter.java77
-rw-r--r--qadevOOo/tests/java/ifc/document/_XLinkTargetSupplier.java59
-rw-r--r--qadevOOo/tests/java/ifc/document/_XMimeTypeInfo.java91
-rw-r--r--qadevOOo/tests/java/ifc/document/_XStandaloneDocumentInfo.java131
-rw-r--r--qadevOOo/tests/java/ifc/document/_XTypeDetection.java123
-rw-r--r--qadevOOo/tests/java/ifc/document/_XViewDataSupplier.java123
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_AreaShapeDescriptor.java115
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_CaptionShape.java35
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_ConnectorProperties.java48
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_ConnectorShape.java78
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_ConnectorShapeDescriptor.java43
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_DimensioningShapeDescriptor.java48
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_DrawingDocument.java45
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_DrawingDocumentDrawView.java177
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_EllipseShape.java46
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_EllipseShapeDescriptor.java36
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_FillProperties.java219
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_GenericDrawPage.java96
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_GenericDrawingDocument.java34
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_GraphicObjectShape.java177
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_GraphicObjectShapeDescriptor.java71
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_Layer.java47
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_LineProperties.java86
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_LineShapeDescriptor.java150
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_MeasureProperties.java60
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_MeasureShape.java46
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_PolyPolygonBezierDescriptor.java47
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_PolyPolygonDescriptor.java47
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_RotationDescriptor.java102
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_ShadowDescriptor.java43
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_ShadowProperties.java48
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_Shape.java158
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_ShapeDescriptor.java147
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_Text.java72
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_TextProperties.java67
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_TextShape.java44
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_TextShapeDescriptor.java36
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_XConnectorShape.java147
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_XControlShape.java106
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_XDrawPageDuplicator.java91
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_XDrawPageExpander.java74
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_XDrawPageSummarizer.java74
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_XDrawPageSupplier.java44
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_XDrawPages.java94
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_XDrawPagesSupplier.java64
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_XDrawView.java113
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_XGluePointsSupplier.java64
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_XLayerManager.java166
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_XLayerSupplier.java70
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_XMasterPageTarget.java108
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_XMasterPagesSupplier.java63
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_XShape.java196
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_XShapeBinder.java109
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_XShapeCombiner.java110
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_XShapeDescriptor.java97
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_XShapeGroup.java70
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_XShapeGrouper.java110
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_XShapes.java109
-rw-r--r--qadevOOo/tests/java/ifc/form/_DataAwareControlModel.java168
-rw-r--r--qadevOOo/tests/java/ifc/form/_FormComponent.java43
-rw-r--r--qadevOOo/tests/java/ifc/form/_FormControlModel.java45
-rw-r--r--qadevOOo/tests/java/ifc/form/_XApproveActionBroadcaster.java110
-rw-r--r--qadevOOo/tests/java/ifc/form/_XBoundComponent.java58
-rw-r--r--qadevOOo/tests/java/ifc/form/_XBoundControl.java82
-rw-r--r--qadevOOo/tests/java/ifc/form/_XChangeBroadcaster.java200
-rw-r--r--qadevOOo/tests/java/ifc/form/_XConfirmDeleteBroadcaster.java75
-rwxr-xr-xqadevOOo/tests/java/ifc/form/_XDatabaseParameterBroadcaster.java100
-rw-r--r--qadevOOo/tests/java/ifc/form/_XFormController.java173
-rw-r--r--qadevOOo/tests/java/ifc/form/_XFormsSupplier.java44
-rw-r--r--qadevOOo/tests/java/ifc/form/_XGrid.java83
-rw-r--r--qadevOOo/tests/java/ifc/form/_XGridColumnFactory.java80
-rw-r--r--qadevOOo/tests/java/ifc/form/_XGridFieldDataSupplier.java68
-rw-r--r--qadevOOo/tests/java/ifc/form/_XImageProducerSupplier.java61
-rw-r--r--qadevOOo/tests/java/ifc/form/_XLoadListener.java94
-rw-r--r--qadevOOo/tests/java/ifc/form/_XLoadable.java247
-rw-r--r--qadevOOo/tests/java/ifc/form/_XReset.java194
-rw-r--r--qadevOOo/tests/java/ifc/form/_XSubmit.java191
-rw-r--r--qadevOOo/tests/java/ifc/form/_XUpdateBroadcaster.java248
-rw-r--r--qadevOOo/tests/java/ifc/form/binding/_BindableDatabaseCheckBox.java36
-rw-r--r--qadevOOo/tests/java/ifc/form/binding/_BindableDatabaseRadioButton.java36
-rw-r--r--qadevOOo/tests/java/ifc/form/binding/_XBindableValue.java122
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_CheckBox.java44
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_ComboBox.java43
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_CommandButton.java45
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_CurrencyField.java58
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_DataForm.java89
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_DatabaseComboBox.java46
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_DatabaseForm.java93
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_DatabaseFormattedField.java44
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_DatabaseImageControl.java44
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_DatabaseListBox.java46
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_DatabasePatternField.java45
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_DatabaseTextField.java45
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_DateField.java55
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_FileControl.java44
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_FormattedField.java35
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_GridControl.java101
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_HTMLForm.java47
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_HiddenControl.java44
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_ImageButton.java46
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_ListBox.java46
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_NavigationToolBar.java52
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_NumericField.java57
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_PatternField.java44
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_RadioButton.java46
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_RichTextControl.java34
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_ScrollBar.java34
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_SpinButton.java34
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_TextField.java44
-rw-r--r--qadevOOo/tests/java/ifc/form/component/_TimeField.java57
-rw-r--r--qadevOOo/tests/java/ifc/form/submission/_XSubmission.java192
-rw-r--r--qadevOOo/tests/java/ifc/form/submission/_XSubmissionSupplier.java81
-rw-r--r--qadevOOo/tests/java/ifc/form/validation/_XValidatable.java85
-rw-r--r--qadevOOo/tests/java/ifc/form/validation/_XValidatableFormComponent.java247
-rw-r--r--qadevOOo/tests/java/ifc/form/validation/_XValidityConstraintListener.java90
-rw-r--r--qadevOOo/tests/java/ifc/formula/_FormulaProperties.java99
-rw-r--r--qadevOOo/tests/java/ifc/frame/_Desktop.java54
-rw-r--r--qadevOOo/tests/java/ifc/frame/_Frame.java35
-rw-r--r--qadevOOo/tests/java/ifc/frame/_FrameLoader.java45
-rw-r--r--qadevOOo/tests/java/ifc/frame/_SynchronousFrameLoader.java45
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XComponentLoader.java157
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XController.java226
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XDesktop.java130
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XDispatch.java243
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XDispatchProvider.java167
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XDispatchProviderInterception.java142
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XDispatchRecorder.java224
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XDispatchRecorderSupplier.java245
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XDocumentTemplates.java276
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XFrame.java583
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XFrameActionListener.java44
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XFrameLoader.java210
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XFramesSupplier.java211
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XInplaceLayout.java48
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XLayoutManager.java198
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XModel.java258
-rwxr-xr-xqadevOOo/tests/java/ifc/frame/_XModuleManager.java163
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XNotifyingDispatch.java131
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XPopupMenuController.java139
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XStatusListener.java48
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XStorable.java228
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XSynchronousFrameLoader.java183
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XTasksSupplier.java100
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XUIControllerRegistration.java63
-rw-r--r--qadevOOo/tests/java/ifc/i18n/_XBreakIterator.java681
-rw-r--r--qadevOOo/tests/java/ifc/i18n/_XCalendar.java561
-rw-r--r--qadevOOo/tests/java/ifc/i18n/_XCharacterClassification.java416
-rw-r--r--qadevOOo/tests/java/ifc/i18n/_XCollator.java430
-rw-r--r--qadevOOo/tests/java/ifc/i18n/_XExtendedCalendar.java138
-rwxr-xr-xqadevOOo/tests/java/ifc/i18n/_XExtendedIndexEntrySupplier.java336
-rw-r--r--qadevOOo/tests/java/ifc/i18n/_XExtendedTransliteration.java95
-rw-r--r--qadevOOo/tests/java/ifc/i18n/_XIndexEntrySupplier.java107
-rw-r--r--qadevOOo/tests/java/ifc/i18n/_XLocaleData.java497
-rw-r--r--qadevOOo/tests/java/ifc/i18n/_XNumberFormatCode.java163
-rw-r--r--qadevOOo/tests/java/ifc/i18n/_XTransliteration.java456
-rw-r--r--qadevOOo/tests/java/ifc/inspection/_XObjectInspector.java157
-rw-r--r--qadevOOo/tests/java/ifc/inspection/_XObjectInspectorModel.java160
-rw-r--r--qadevOOo/tests/java/ifc/io/_XActiveDataControl.java249
-rw-r--r--qadevOOo/tests/java/ifc/io/_XActiveDataSink.java111
-rw-r--r--qadevOOo/tests/java/ifc/io/_XActiveDataSource.java104
-rw-r--r--qadevOOo/tests/java/ifc/io/_XConnectable.java132
-rw-r--r--qadevOOo/tests/java/ifc/io/_XDataInputStream.java421
-rw-r--r--qadevOOo/tests/java/ifc/io/_XDataOutputStream.java282
-rw-r--r--qadevOOo/tests/java/ifc/io/_XInputStream.java247
-rw-r--r--qadevOOo/tests/java/ifc/io/_XMarkableStream.java197
-rw-r--r--qadevOOo/tests/java/ifc/io/_XObjectInputStream.java174
-rw-r--r--qadevOOo/tests/java/ifc/io/_XObjectOutputStream.java95
-rw-r--r--qadevOOo/tests/java/ifc/io/_XOutputStream.java173
-rw-r--r--qadevOOo/tests/java/ifc/io/_XPersistObject.java269
-rw-r--r--qadevOOo/tests/java/ifc/java/_XJavaThreadRegister_11.java70
-rw-r--r--qadevOOo/tests/java/ifc/java/_XJavaVM.java70
-rw-r--r--qadevOOo/tests/java/ifc/lang/_ServiceManager.java60
-rw-r--r--qadevOOo/tests/java/ifc/lang/_XComponent.java181
-rw-r--r--qadevOOo/tests/java/ifc/lang/_XEventListener.java62
-rw-r--r--qadevOOo/tests/java/ifc/lang/_XInitialization.java110
-rw-r--r--qadevOOo/tests/java/ifc/lang/_XLocalizable.java72
-rw-r--r--qadevOOo/tests/java/ifc/lang/_XMain.java72
-rw-r--r--qadevOOo/tests/java/ifc/lang/_XMultiComponentFactory.java128
-rw-r--r--qadevOOo/tests/java/ifc/lang/_XMultiServiceFactory.java197
-rw-r--r--qadevOOo/tests/java/ifc/lang/_XServiceDisplayName.java59
-rw-r--r--qadevOOo/tests/java/ifc/lang/_XServiceInfo.java97
-rw-r--r--qadevOOo/tests/java/ifc/lang/_XSingleServiceFactory.java168
-rw-r--r--qadevOOo/tests/java/ifc/lang/_XTypeProvider.java93
-rw-r--r--qadevOOo/tests/java/ifc/linguistic2/_LinguProperties.java61
-rw-r--r--qadevOOo/tests/java/ifc/linguistic2/_XAvailableLocales.java58
-rw-r--r--qadevOOo/tests/java/ifc/linguistic2/_XDictionaryList.java295
-rw-r--r--qadevOOo/tests/java/ifc/linguistic2/_XHyphenator.java111
-rw-r--r--qadevOOo/tests/java/ifc/linguistic2/_XLinguServiceEventBroadcaster.java94
-rw-r--r--qadevOOo/tests/java/ifc/linguistic2/_XLinguServiceManager.java185
-rw-r--r--qadevOOo/tests/java/ifc/linguistic2/_XSearchableDictionaryList.java73
-rw-r--r--qadevOOo/tests/java/ifc/linguistic2/_XSpellChecker.java116
-rw-r--r--qadevOOo/tests/java/ifc/linguistic2/_XSupportedLocales.java89
-rw-r--r--qadevOOo/tests/java/ifc/linguistic2/_XThesaurus.java72
-rw-r--r--qadevOOo/tests/java/ifc/loader/_XImplementationLoader.java188
-rw-r--r--qadevOOo/tests/java/ifc/presentation/_OutlineView.java36
-rw-r--r--qadevOOo/tests/java/ifc/presentation/_Presentation.java91
-rw-r--r--qadevOOo/tests/java/ifc/presentation/_PresentationView.java56
-rw-r--r--qadevOOo/tests/java/ifc/presentation/_PreviewView.java39
-rw-r--r--qadevOOo/tests/java/ifc/presentation/_SlidesView.java34
-rw-r--r--qadevOOo/tests/java/ifc/presentation/_XCustomPresentationSupplier.java58
-rw-r--r--qadevOOo/tests/java/ifc/presentation/_XPresentation.java83
-rw-r--r--qadevOOo/tests/java/ifc/presentation/_XPresentationSupplier.java58
-rwxr-xr-xqadevOOo/tests/java/ifc/qadevooo/_SelfTest.java83
-rw-r--r--qadevOOo/tests/java/ifc/reflection/_XIdlReflection.java107
-rw-r--r--qadevOOo/tests/java/ifc/reflection/_XProxyFactory.java97
-rw-r--r--qadevOOo/tests/java/ifc/reflection/_XTypeDescriptionEnumerationAccess.java95
-rw-r--r--qadevOOo/tests/java/ifc/registry/_XImplementationRegistration.java198
-rw-r--r--qadevOOo/tests/java/ifc/registry/_XSimpleRegistry.java414
-rw-r--r--qadevOOo/tests/java/ifc/script/_XEventAttacherManager.java498
-rw-r--r--qadevOOo/tests/java/ifc/script/_XInvocationAdapterFactory.java112
-rw-r--r--qadevOOo/tests/java/ifc/script/_XInvocationAdapterFactory2.java114
-rw-r--r--qadevOOo/tests/java/ifc/script/_XTypeConverter.java131
-rw-r--r--qadevOOo/tests/java/ifc/sdb/_DataAccessDescriptor.java125
-rw-r--r--qadevOOo/tests/java/ifc/sdb/_DataSource.java171
-rw-r--r--qadevOOo/tests/java/ifc/sdb/_DatasourceAdministrationDialog.java45
-rw-r--r--qadevOOo/tests/java/ifc/sdb/_ErrorMessageDialog.java69
-rw-r--r--qadevOOo/tests/java/ifc/sdb/_QueryDefinition.java55
-rw-r--r--qadevOOo/tests/java/ifc/sdb/_RowSet.java149
-rw-r--r--qadevOOo/tests/java/ifc/sdb/_SingleSelectQueryComposer.java50
-rw-r--r--qadevOOo/tests/java/ifc/sdb/_XBookmarksSupplier.java60
-rw-r--r--qadevOOo/tests/java/ifc/sdb/_XCompletedConnection.java84
-rwxr-xr-xqadevOOo/tests/java/ifc/sdb/_XCompletedExecution.java84
-rw-r--r--qadevOOo/tests/java/ifc/sdb/_XFormDocumentsSupplier.java64
-rw-r--r--qadevOOo/tests/java/ifc/sdb/_XParametersSupplier.java61
-rw-r--r--qadevOOo/tests/java/ifc/sdb/_XQueryDefinitionsSupplier.java69
-rw-r--r--qadevOOo/tests/java/ifc/sdb/_XReportDocumentsSupplier.java64
-rw-r--r--qadevOOo/tests/java/ifc/sdb/_XResultSetAccess.java69
-rw-r--r--qadevOOo/tests/java/ifc/sdb/_XRowSetApproveBroadcaster.java214
-rw-r--r--qadevOOo/tests/java/ifc/sdb/_XSQLErrorBroadcaster.java38
-rw-r--r--qadevOOo/tests/java/ifc/sdb/_XSingleSelectQueryAnalyzer.java299
-rw-r--r--qadevOOo/tests/java/ifc/sdb/_XSingleSelectQueryComposer.java396
-rw-r--r--qadevOOo/tests/java/ifc/sdbc/_ResultSet.java49
-rw-r--r--qadevOOo/tests/java/ifc/sdbc/_RowSet.java81
-rw-r--r--qadevOOo/tests/java/ifc/sdbc/_XCloseable.java94
-rw-r--r--qadevOOo/tests/java/ifc/sdbc/_XColumnLocate.java85
-rw-r--r--qadevOOo/tests/java/ifc/sdbc/_XDataSource.java114
-rw-r--r--qadevOOo/tests/java/ifc/sdbc/_XDriver.java213
-rw-r--r--qadevOOo/tests/java/ifc/sdbc/_XDriverManager.java160
-rw-r--r--qadevOOo/tests/java/ifc/sdbc/_XIsolatedConnection.java123
-rw-r--r--qadevOOo/tests/java/ifc/sdbc/_XParameters.java574
-rw-r--r--qadevOOo/tests/java/ifc/sdbc/_XResultSet.java505
-rw-r--r--qadevOOo/tests/java/ifc/sdbc/_XResultSetMetaDataSupplier.java69
-rw-r--r--qadevOOo/tests/java/ifc/sdbc/_XResultSetUpdate.java263
-rw-r--r--qadevOOo/tests/java/ifc/sdbc/_XRow.java544
-rw-r--r--qadevOOo/tests/java/ifc/sdbc/_XRowSet.java193
-rw-r--r--qadevOOo/tests/java/ifc/sdbc/_XRowUpdate.java695
-rw-r--r--qadevOOo/tests/java/ifc/sdbc/_XWarningsSupplier.java139
-rw-r--r--qadevOOo/tests/java/ifc/sdbcx/_ResultSet.java45
-rw-r--r--qadevOOo/tests/java/ifc/sdbcx/_XColumnsSupplier.java79
-rw-r--r--qadevOOo/tests/java/ifc/sdbcx/_XCreateCatalog.java50
-rw-r--r--qadevOOo/tests/java/ifc/sdbcx/_XDataDefinitionSupplier.java179
-rw-r--r--qadevOOo/tests/java/ifc/sdbcx/_XDeleteRows.java94
-rw-r--r--qadevOOo/tests/java/ifc/sdbcx/_XDropCatalog.java50
-rw-r--r--qadevOOo/tests/java/ifc/sdbcx/_XRowLocate.java234
-rw-r--r--qadevOOo/tests/java/ifc/sdbcx/_XTablesSupplier.java81
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_CellAreaLink.java48
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_DataPilotField.java169
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_DataPilotItem.java33
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_DatabaseImportDescriptor.java108
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_DatabaseRange.java48
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_DocumentSettings.java39
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_FunctionDescription.java156
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_GlobalSheetSettings.java56
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_Scenario.java41
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_Shape.java62
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_SheetCell.java38
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_SheetCellRange.java44
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_SheetCellRanges.java33
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_SheetFilterDescriptor.java52
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_SheetLink.java84
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_SheetSortDescriptor.java148
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_Spreadsheet.java63
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_SpreadsheetDocument.java50
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_SpreadsheetDocumentSettings.java150
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_SpreadsheetViewSettings.java75
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_SubTotalDescriptor.java49
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_TableAutoFormat.java49
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_TableAutoFormatField.java130
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_TableValidation.java52
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XActivationBroadcaster.java105
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XAreaLink.java159
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XAreaLinks.java107
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XArrayFormulaRange.java182
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XCalculatable.java105
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XCellAddressable.java59
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XCellFormatRangesSupplier.java92
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XCellRangeAddressable.java57
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XCellRangeData.java85
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XCellRangeFormula.java71
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XCellRangeMovement.java246
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XCellRangeReferrer.java103
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XCellRangesQuery.java307
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XCellSeries.java244
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XConsolidatable.java56
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XConsolidationDescriptor.java264
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XDDELink.java111
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XDataPilotDescriptor.java429
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XDataPilotField.java70
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XDataPilotFieldGrouping.java73
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XDataPilotTable.java105
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XDataPilotTable2.java576
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XDataPilotTables.java157
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XDataPilotTablesSupplier.java59
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XDatabaseRange.java244
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XDatabaseRanges.java121
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XDocumentAuditing.java228
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XEnhancedMouseClickBroadcaster.java163
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XFormulaQuery.java201
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XFunctionDescriptions.java131
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XGoalSeek.java112
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XHeaderFooterContent.java82
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XLabelRange.java109
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XLabelRanges.java97
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XMultipleOperation.java182
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XNamedRange.java209
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XNamedRanges.java327
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XPrintAreas.java158
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XRangeSelection.java380
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XRecentFunctions.java168
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XScenario.java100
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XScenarioEnhanced.java93
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XScenarios.java88
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XScenariosSupplier.java56
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSheetAnnotation.java141
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSheetAnnotationAnchor.java132
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSheetAnnotationShapeSupplier.java43
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSheetAnnotations.java90
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSheetAnnotationsSupplier.java58
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSheetAuditing.java206
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSheetCellCursor.java403
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSheetCellRange.java57
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSheetCellRangeContainer.java205
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSheetCellRanges.java89
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSheetCondition.java158
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSheetConditionalEntries.java137
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSheetConditionalEntry.java75
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSheetFilterDescriptor.java82
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSheetFilterable.java135
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSheetFilterableEx.java99
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSheetLinkable.java112
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSheetOperation.java104
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSheetOutline.java145
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSheetPageBreak.java93
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSpreadsheet.java90
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSpreadsheetDocument.java59
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSpreadsheetView.java92
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSpreadsheets.java184
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSubTotalCalculatable.java125
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSubTotalDescriptor.java77
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSubTotalField.java115
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XUniqueCellFormatRangesSupplier.java83
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XUsedAreaCursor.java138
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XViewFreezable.java78
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XViewPane.java133
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XViewSplitable.java136
-rw-r--r--qadevOOo/tests/java/ifc/style/_CharacterProperties.java544
-rw-r--r--qadevOOo/tests/java/ifc/style/_CharacterPropertiesAsian.java77
-rw-r--r--qadevOOo/tests/java/ifc/style/_CharacterPropertiesComplex.java69
-rwxr-xr-xqadevOOo/tests/java/ifc/style/_CharacterStyle.java50
-rwxr-xr-xqadevOOo/tests/java/ifc/style/_PageProperties.java125
-rwxr-xr-xqadevOOo/tests/java/ifc/style/_PageStyle.java56
-rw-r--r--qadevOOo/tests/java/ifc/style/_ParagraphProperties.java507
-rw-r--r--qadevOOo/tests/java/ifc/style/_ParagraphPropertiesAsian.java86
-rw-r--r--qadevOOo/tests/java/ifc/style/_ParagraphPropertiesComplex.java55
-rw-r--r--qadevOOo/tests/java/ifc/style/_ParagraphStyle.java36
-rw-r--r--qadevOOo/tests/java/ifc/style/_Style.java54
-rw-r--r--qadevOOo/tests/java/ifc/style/_XStyle.java117
-rw-r--r--qadevOOo/tests/java/ifc/style/_XStyleFamiliesSupplier.java55
-rw-r--r--qadevOOo/tests/java/ifc/system/_XProxySettings.java305
-rw-r--r--qadevOOo/tests/java/ifc/system/_XSimpleMailClientSupplier.java77
-rw-r--r--qadevOOo/tests/java/ifc/system/_XSystemShellExecute.java130
-rw-r--r--qadevOOo/tests/java/ifc/table/_CellProperties.java110
-rw-r--r--qadevOOo/tests/java/ifc/table/_TableColumn.java74
-rw-r--r--qadevOOo/tests/java/ifc/table/_TableRow.java47
-rw-r--r--qadevOOo/tests/java/ifc/table/_XAutoFormattable.java134
-rw-r--r--qadevOOo/tests/java/ifc/table/_XCell.java167
-rw-r--r--qadevOOo/tests/java/ifc/table/_XCellCursor.java247
-rw-r--r--qadevOOo/tests/java/ifc/table/_XCellRange.java151
-rw-r--r--qadevOOo/tests/java/ifc/table/_XColumnRowRange.java66
-rw-r--r--qadevOOo/tests/java/ifc/table/_XTableChart.java125
-rw-r--r--qadevOOo/tests/java/ifc/table/_XTableCharts.java94
-rw-r--r--qadevOOo/tests/java/ifc/table/_XTableChartsSupplier.java60
-rw-r--r--qadevOOo/tests/java/ifc/table/_XTableColumns.java399
-rw-r--r--qadevOOo/tests/java/ifc/table/_XTableRows.java138
-rw-r--r--qadevOOo/tests/java/ifc/task/_XInteractionHandler.java151
-rw-r--r--qadevOOo/tests/java/ifc/task/_XJob.java98
-rw-r--r--qadevOOo/tests/java/ifc/task/_XJobExecutor.java79
-rw-r--r--qadevOOo/tests/java/ifc/task/_XStatusIndicatorFactory.java78
-rw-r--r--qadevOOo/tests/java/ifc/text/_BaseFrame.java124
-rw-r--r--qadevOOo/tests/java/ifc/text/_BaseFrameProperties.java45
-rw-r--r--qadevOOo/tests/java/ifc/text/_BaseIndex.java204
-rw-r--r--qadevOOo/tests/java/ifc/text/_BaseIndexMark.java45
-rw-r--r--qadevOOo/tests/java/ifc/text/_CellProperties.java155
-rw-r--r--qadevOOo/tests/java/ifc/text/_CellRange.java101
-rw-r--r--qadevOOo/tests/java/ifc/text/_Defaults.java41
-rw-r--r--qadevOOo/tests/java/ifc/text/_DocumentIndex.java54
-rw-r--r--qadevOOo/tests/java/ifc/text/_DocumentIndexMark.java47
-rw-r--r--qadevOOo/tests/java/ifc/text/_DocumentSettings.java35
-rw-r--r--qadevOOo/tests/java/ifc/text/_Footnote.java56
-rw-r--r--qadevOOo/tests/java/ifc/text/_FootnoteSettings.java104
-rw-r--r--qadevOOo/tests/java/ifc/text/_GenericTextDocument.java48
-rw-r--r--qadevOOo/tests/java/ifc/text/_LineNumberingProperties.java63
-rw-r--r--qadevOOo/tests/java/ifc/text/_MailMerge.java174
-rw-r--r--qadevOOo/tests/java/ifc/text/_NumberingLevel.java174
-rw-r--r--qadevOOo/tests/java/ifc/text/_NumberingRules.java48
-rw-r--r--qadevOOo/tests/java/ifc/text/_PrintPreviewSettings.java35
-rw-r--r--qadevOOo/tests/java/ifc/text/_PrintSettings.java56
-rw-r--r--qadevOOo/tests/java/ifc/text/_Text.java35
-rw-r--r--qadevOOo/tests/java/ifc/text/_TextColumns.java73
-rw-r--r--qadevOOo/tests/java/ifc/text/_TextContent.java46
-rw-r--r--qadevOOo/tests/java/ifc/text/_TextDocument.java48
-rw-r--r--qadevOOo/tests/java/ifc/text/_TextEmbeddedObject.java68
-rw-r--r--qadevOOo/tests/java/ifc/text/_TextFieldMaster.java46
-rw-r--r--qadevOOo/tests/java/ifc/text/_TextFrame.java69
-rw-r--r--qadevOOo/tests/java/ifc/text/_TextGraphicObject.java171
-rw-r--r--qadevOOo/tests/java/ifc/text/_TextPortion.java57
-rw-r--r--qadevOOo/tests/java/ifc/text/_TextSection.java148
-rw-r--r--qadevOOo/tests/java/ifc/text/_TextTable.java118
-rw-r--r--qadevOOo/tests/java/ifc/text/_TextTableRow.java52
-rw-r--r--qadevOOo/tests/java/ifc/text/_ViewSettings.java71
-rw-r--r--qadevOOo/tests/java/ifc/text/_XAutoTextContainer.java141
-rw-r--r--qadevOOo/tests/java/ifc/text/_XAutoTextEntry.java78
-rw-r--r--qadevOOo/tests/java/ifc/text/_XAutoTextGroup.java308
-rw-r--r--qadevOOo/tests/java/ifc/text/_XBookmarksSupplier.java64
-rw-r--r--qadevOOo/tests/java/ifc/text/_XChapterNumberingSupplier.java63
-rw-r--r--qadevOOo/tests/java/ifc/text/_XDefaultNumberingProvider.java74
-rw-r--r--qadevOOo/tests/java/ifc/text/_XDocumentIndex.java129
-rw-r--r--qadevOOo/tests/java/ifc/text/_XDocumentIndexesSupplier.java63
-rw-r--r--qadevOOo/tests/java/ifc/text/_XEndnotesSupplier.java81
-rw-r--r--qadevOOo/tests/java/ifc/text/_XFootnote.java116
-rw-r--r--qadevOOo/tests/java/ifc/text/_XFootnotesSettingsSupplier.java63
-rw-r--r--qadevOOo/tests/java/ifc/text/_XFootnotesSupplier.java82
-rw-r--r--qadevOOo/tests/java/ifc/text/_XLineNumberingProperties.java61
-rw-r--r--qadevOOo/tests/java/ifc/text/_XLineNumberingSupplier.java64
-rw-r--r--qadevOOo/tests/java/ifc/text/_XMailMergeBroadcaster.java162
-rw-r--r--qadevOOo/tests/java/ifc/text/_XPageCursor.java171
-rw-r--r--qadevOOo/tests/java/ifc/text/_XPagePrintable.java161
-rw-r--r--qadevOOo/tests/java/ifc/text/_XParagraphCursor.java140
-rw-r--r--qadevOOo/tests/java/ifc/text/_XReferenceMarksSupplier.java66
-rw-r--r--qadevOOo/tests/java/ifc/text/_XRelativeTextContentInsert.java136
-rw-r--r--qadevOOo/tests/java/ifc/text/_XSentenceCursor.java127
-rw-r--r--qadevOOo/tests/java/ifc/text/_XSimpleText.java136
-rw-r--r--qadevOOo/tests/java/ifc/text/_XText.java170
-rw-r--r--qadevOOo/tests/java/ifc/text/_XTextColumns.java114
-rw-r--r--qadevOOo/tests/java/ifc/text/_XTextContent.java117
-rw-r--r--qadevOOo/tests/java/ifc/text/_XTextCursor.java242
-rw-r--r--qadevOOo/tests/java/ifc/text/_XTextDocument.java71
-rw-r--r--qadevOOo/tests/java/ifc/text/_XTextEmbeddedObject.java60
-rw-r--r--qadevOOo/tests/java/ifc/text/_XTextEmbeddedObjectsSupplier.java61
-rw-r--r--qadevOOo/tests/java/ifc/text/_XTextField.java66
-rwxr-xr-xqadevOOo/tests/java/ifc/text/_XTextFieldsSupplier.java191
-rw-r--r--qadevOOo/tests/java/ifc/text/_XTextFrame.java68
-rw-r--r--qadevOOo/tests/java/ifc/text/_XTextFramesSupplier.java64
-rw-r--r--qadevOOo/tests/java/ifc/text/_XTextGraphicObjectsSupplier.java67
-rw-r--r--qadevOOo/tests/java/ifc/text/_XTextRange.java184
-rw-r--r--qadevOOo/tests/java/ifc/text/_XTextRangeCompare.java189
-rw-r--r--qadevOOo/tests/java/ifc/text/_XTextRangeMover.java97
-rw-r--r--qadevOOo/tests/java/ifc/text/_XTextSection.java77
-rw-r--r--qadevOOo/tests/java/ifc/text/_XTextSectionsSupplier.java75
-rw-r--r--qadevOOo/tests/java/ifc/text/_XTextTable.java181
-rw-r--r--qadevOOo/tests/java/ifc/text/_XTextTableCursor.java294
-rw-r--r--qadevOOo/tests/java/ifc/text/_XTextTablesSupplier.java66
-rw-r--r--qadevOOo/tests/java/ifc/text/_XTextViewCursorSupplier.java62
-rw-r--r--qadevOOo/tests/java/ifc/text/_XWordCursor.java132
-rw-r--r--qadevOOo/tests/java/ifc/ucb/_XCachedContentResultSetFactory.java114
-rw-r--r--qadevOOo/tests/java/ifc/ucb/_XCachedContentResultSetStubFactory.java112
-rw-r--r--qadevOOo/tests/java/ifc/ucb/_XCachedDynamicResultSetFactory.java122
-rw-r--r--qadevOOo/tests/java/ifc/ucb/_XCachedDynamicResultSetStubFactory.java192
-rw-r--r--qadevOOo/tests/java/ifc/ucb/_XCommandProcessor.java249
-rw-r--r--qadevOOo/tests/java/ifc/ucb/_XCommandProcessor2.java50
-rw-r--r--qadevOOo/tests/java/ifc/ucb/_XContentIdentifierFactory.java77
-rw-r--r--qadevOOo/tests/java/ifc/ucb/_XContentProvider.java138
-rw-r--r--qadevOOo/tests/java/ifc/ucb/_XContentProviderFactory.java60
-rw-r--r--qadevOOo/tests/java/ifc/ucb/_XContentProviderManager.java278
-rw-r--r--qadevOOo/tests/java/ifc/ucb/_XDataContainer.java136
-rw-r--r--qadevOOo/tests/java/ifc/ucb/_XFileIdentifierConverter.java100
-rw-r--r--qadevOOo/tests/java/ifc/ucb/_XParameterizedContentProvider.java93
-rw-r--r--qadevOOo/tests/java/ifc/ucb/_XPropertyMatcherFactory.java71
-rw-r--r--qadevOOo/tests/java/ifc/ucb/_XPropertySetRegistryFactory.java59
-rw-r--r--qadevOOo/tests/java/ifc/ucb/_XRemoteContentProviderAcceptor.java100
-rw-r--r--qadevOOo/tests/java/ifc/ucb/_XRemoteContentProviderActivator.java79
-rw-r--r--qadevOOo/tests/java/ifc/ucb/_XSimpleFileAccess.java542
-rw-r--r--qadevOOo/tests/java/ifc/ucb/_XSimpleFileAccess2.java92
-rw-r--r--qadevOOo/tests/java/ifc/ucb/_XSortedDynamicResultSetFactory.java162
-rw-r--r--qadevOOo/tests/java/ifc/ui/_XContextMenuInterception.java212
-rwxr-xr-xqadevOOo/tests/java/ifc/ui/_XModuleUIConfigurationManager.java81
-rwxr-xr-xqadevOOo/tests/java/ifc/ui/_XModuleUIConfigurationManagerSupplier.java64
-rwxr-xr-xqadevOOo/tests/java/ifc/ui/_XUIConfiguration.java102
-rwxr-xr-xqadevOOo/tests/java/ifc/ui/_XUIConfigurationListener.java53
-rwxr-xr-xqadevOOo/tests/java/ifc/ui/_XUIConfigurationManager.java363
-rwxr-xr-xqadevOOo/tests/java/ifc/ui/_XUIConfigurationPersistence.java83
-rwxr-xr-xqadevOOo/tests/java/ifc/ui/_XUIConfigurationStorage.java76
-rwxr-xr-xqadevOOo/tests/java/ifc/ui/_XUIElementFactory.java56
-rwxr-xr-xqadevOOo/tests/java/ifc/ui/_XUIElementFactoryRegistration.java83
-rw-r--r--qadevOOo/tests/java/ifc/ui/dialogs/_FilePicker.java36
-rw-r--r--qadevOOo/tests/java/ifc/ui/dialogs/_XControlAccess.java142
-rw-r--r--qadevOOo/tests/java/ifc/ui/dialogs/_XControlInformation.java192
-rw-r--r--qadevOOo/tests/java/ifc/ui/dialogs/_XExecutableDialog.java195
-rw-r--r--qadevOOo/tests/java/ifc/ui/dialogs/_XFilePicker.java160
-rw-r--r--qadevOOo/tests/java/ifc/ui/dialogs/_XFilePickerControlAccess.java202
-rw-r--r--qadevOOo/tests/java/ifc/ui/dialogs/_XFilePickerNotifier.java290
-rw-r--r--qadevOOo/tests/java/ifc/ui/dialogs/_XFilePreview.java122
-rw-r--r--qadevOOo/tests/java/ifc/ui/dialogs/_XFilterGroupManager.java64
-rw-r--r--qadevOOo/tests/java/ifc/ui/dialogs/_XFilterManager.java106
-rw-r--r--qadevOOo/tests/java/ifc/ui/dialogs/_XFolderPicker.java115
-rw-r--r--qadevOOo/tests/java/ifc/uno/_XComponentContext.java81
-rw-r--r--qadevOOo/tests/java/ifc/uno/_XNamingService.java155
-rw-r--r--qadevOOo/tests/java/ifc/util/_PathSettings.java89
-rw-r--r--qadevOOo/tests/java/ifc/util/_SearchDescriptor.java53
-rw-r--r--qadevOOo/tests/java/ifc/util/_XCancellable.java65
-rw-r--r--qadevOOo/tests/java/ifc/util/_XChangesBatch.java172
-rw-r--r--qadevOOo/tests/java/ifc/util/_XChangesNotifier.java222
-rw-r--r--qadevOOo/tests/java/ifc/util/_XCloneable.java112
-rw-r--r--qadevOOo/tests/java/ifc/util/_XFlushable.java111
-rw-r--r--qadevOOo/tests/java/ifc/util/_XImportable.java202
-rw-r--r--qadevOOo/tests/java/ifc/util/_XIndent.java98
-rw-r--r--qadevOOo/tests/java/ifc/util/_XMergeable.java74
-rw-r--r--qadevOOo/tests/java/ifc/util/_XModeSelector.java104
-rw-r--r--qadevOOo/tests/java/ifc/util/_XModifiable.java57
-rw-r--r--qadevOOo/tests/java/ifc/util/_XModifyBroadcaster.java86
-rw-r--r--qadevOOo/tests/java/ifc/util/_XNumberFormatsSupplier.java98
-rw-r--r--qadevOOo/tests/java/ifc/util/_XNumberFormatter.java128
-rw-r--r--qadevOOo/tests/java/ifc/util/_XProtectable.java84
-rw-r--r--qadevOOo/tests/java/ifc/util/_XRefreshable.java119
-rw-r--r--qadevOOo/tests/java/ifc/util/_XReplaceDescriptor.java75
-rw-r--r--qadevOOo/tests/java/ifc/util/_XReplaceable.java147
-rw-r--r--qadevOOo/tests/java/ifc/util/_XSearchDescriptor.java87
-rw-r--r--qadevOOo/tests/java/ifc/util/_XSearchable.java185
-rw-r--r--qadevOOo/tests/java/ifc/util/_XSortable.java238
-rw-r--r--qadevOOo/tests/java/ifc/util/_XStringEscape.java64
-rw-r--r--qadevOOo/tests/java/ifc/util/_XStringSubstitution.java101
-rw-r--r--qadevOOo/tests/java/ifc/util/_XTextSearch.java119
-rw-r--r--qadevOOo/tests/java/ifc/util/_XURLTransformer.java471
-rw-r--r--qadevOOo/tests/java/ifc/view/_XControlAccess.java124
-rw-r--r--qadevOOo/tests/java/ifc/view/_XFormLayerAccess.java158
-rw-r--r--qadevOOo/tests/java/ifc/view/_XMultiSelectionSupplier.java427
-rw-r--r--qadevOOo/tests/java/ifc/view/_XPrintJobBroadcaster.java150
-rw-r--r--qadevOOo/tests/java/ifc/view/_XPrintSettingsSupplier.java62
-rw-r--r--qadevOOo/tests/java/ifc/view/_XPrintable.java196
-rw-r--r--qadevOOo/tests/java/ifc/view/_XScreenCursor.java87
-rw-r--r--qadevOOo/tests/java/ifc/view/_XSelectionSupplier.java208
-rw-r--r--qadevOOo/tests/java/ifc/view/_XViewSettingsSupplier.java62
-rw-r--r--qadevOOo/tests/java/ifc/xml/_UserDefinedAttributeSupplier.java72
-rw-r--r--qadevOOo/tests/java/ifc/xml/sax/_XDocumentHandler.java408
-rw-r--r--qadevOOo/tests/java/mod/_acceptor.uno/Acceptor.java122
-rw-r--r--qadevOOo/tests/java/mod/_acceptor/Acceptor.java127
-rw-r--r--qadevOOo/tests/java/mod/_acceptor/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_adabas/ODriver.java121
-rw-r--r--qadevOOo/tests/java/mod/_ado/ODriver.java105
-rw-r--r--qadevOOo/tests/java/mod/_basctl/AccessibleShape.java155
-rw-r--r--qadevOOo/tests/java/mod/_brdgfctr/BridgeFactory.java118
-rw-r--r--qadevOOo/tests/java/mod/_brdgfctr/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_bridgefac.uno/BridgeFactory.java116
-rw-r--r--qadevOOo/tests/java/mod/_bridgefac.uno/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_cached/CachedContentResultSetFactory.java186
-rw-r--r--qadevOOo/tests/java/mod/_cached/CachedContentResultSetStubFactory.java176
-rw-r--r--qadevOOo/tests/java/mod/_cached/CachedDynamicResultSetFactory.java183
-rw-r--r--qadevOOo/tests/java/mod/_cached/CachedDynamicResultSetStubFactory.java169
-rw-r--r--qadevOOo/tests/java/mod/_cmdmail/SimpleCommandMail.java71
-rw-r--r--qadevOOo/tests/java/mod/_cnt/ChaosContentProvider.java110
-rw-r--r--qadevOOo/tests/java/mod/_cnt/CntUnoDataContainer.java131
-rw-r--r--qadevOOo/tests/java/mod/_cnt/PropertyMatcherFactory.java86
-rw-r--r--qadevOOo/tests/java/mod/_configmgr/ConfigurationProvider.java57
-rw-r--r--qadevOOo/tests/java/mod/_configmgr/DefaultProvider.java54
-rw-r--r--qadevOOo/tests/java/mod/_configmgr/ProviderTestEnvironment.java51
-rw-r--r--qadevOOo/tests/java/mod/_connector.uno/Connector.java122
-rw-r--r--qadevOOo/tests/java/mod/_connector.uno/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_connectr/Connector.java125
-rw-r--r--qadevOOo/tests/java/mod/_connectr/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_corefl/CoreReflection.java87
-rw-r--r--qadevOOo/tests/java/mod/_corefl/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_corereflection.uno/CoreReflection.java83
-rw-r--r--qadevOOo/tests/java/mod/_corereflection.uno/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_cpld/DLLComponentLoader.java117
-rw-r--r--qadevOOo/tests/java/mod/_cpld/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_dbaccess/ConnectionLineAccessibility.java421
-rw-r--r--qadevOOo/tests/java/mod/_dbaccess/DBContentLoader.java110
-rw-r--r--qadevOOo/tests/java/mod/_dbaccess/JoinViewAccessibility.java392
-rw-r--r--qadevOOo/tests/java/mod/_dbaccess/OCommandDefinition.java91
-rw-r--r--qadevOOo/tests/java/mod/_dbaccess/ODatabaseContext.java149
-rw-r--r--qadevOOo/tests/java/mod/_dbaccess/ODatabaseSource.java245
-rw-r--r--qadevOOo/tests/java/mod/_dbaccess/ODatasourceAdministrationDialog.java100
-rw-r--r--qadevOOo/tests/java/mod/_dbaccess/ODatasourceBrowser.java332
-rw-r--r--qadevOOo/tests/java/mod/_dbaccess/OInteractionHandler.java117
-rw-r--r--qadevOOo/tests/java/mod/_dbaccess/OQueryDesign.java325
-rw-r--r--qadevOOo/tests/java/mod/_dbaccess/ORowSet.java644
-rw-r--r--qadevOOo/tests/java/mod/_dbaccess/OSQLMessageDialog.java157
-rw-r--r--qadevOOo/tests/java/mod/_dbaccess/OSingleSelectQueryComposer.java283
-rw-r--r--qadevOOo/tests/java/mod/_dbaccess/SbaXGridControl.java485
-rw-r--r--qadevOOo/tests/java/mod/_dbaccess/TableWindowAccessibility.java380
-rw-r--r--qadevOOo/tests/java/mod/_dbaccess/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_dbpool/OConnectionPool.java114
-rw-r--r--qadevOOo/tests/java/mod/_defreg/NestedRegistry.java202
-rw-r--r--qadevOOo/tests/java/mod/_defreg/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_dtrans/generic.java77
-rw-r--r--qadevOOo/tests/java/mod/_dynamicloader/Dynamic.java101
-rw-r--r--qadevOOo/tests/java/mod/_file/calc/ODriver.java112
-rw-r--r--qadevOOo/tests/java/mod/_file/dbase/ODriver.java109
-rw-r--r--qadevOOo/tests/java/mod/_file/flat/ODriver.java107
-rw-r--r--qadevOOo/tests/java/mod/_fileacc/SimpleFileAccess.java86
-rw-r--r--qadevOOo/tests/java/mod/_fileacc/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_fop/FolderPicker.java102
-rw-r--r--qadevOOo/tests/java/mod/_forms/GenericModelTest.java565
-rw-r--r--qadevOOo/tests/java/mod/_forms/OButtonControl.java223
-rw-r--r--qadevOOo/tests/java/mod/_forms/OButtonModel.java134
-rw-r--r--qadevOOo/tests/java/mod/_forms/OCheckBoxControl.java237
-rw-r--r--qadevOOo/tests/java/mod/_forms/OCheckBoxModel.java149
-rw-r--r--qadevOOo/tests/java/mod/_forms/OComboBoxControl.java244
-rw-r--r--qadevOOo/tests/java/mod/_forms/OComboBoxModel.java164
-rw-r--r--qadevOOo/tests/java/mod/_forms/OCurrencyControl.java251
-rw-r--r--qadevOOo/tests/java/mod/_forms/OCurrencyModel.java159
-rw-r--r--qadevOOo/tests/java/mod/_forms/ODatabaseForm.java901
-rw-r--r--qadevOOo/tests/java/mod/_forms/ODateControl.java243
-rw-r--r--qadevOOo/tests/java/mod/_forms/ODateModel.java178
-rw-r--r--qadevOOo/tests/java/mod/_forms/OEditControl.java261
-rw-r--r--qadevOOo/tests/java/mod/_forms/OEditModel.java170
-rw-r--r--qadevOOo/tests/java/mod/_forms/OFileControlModel.java210
-rw-r--r--qadevOOo/tests/java/mod/_forms/OFixedTextModel.java128
-rw-r--r--qadevOOo/tests/java/mod/_forms/OFormattedControl.java240
-rw-r--r--qadevOOo/tests/java/mod/_forms/OFormattedFieldWrapper.java162
-rw-r--r--qadevOOo/tests/java/mod/_forms/OFormsCollection.java184
-rw-r--r--qadevOOo/tests/java/mod/_forms/OGridControlModel.java431
-rw-r--r--qadevOOo/tests/java/mod/_forms/OGroupBoxControl.java214
-rw-r--r--qadevOOo/tests/java/mod/_forms/OGroupBoxModel.java128
-rw-r--r--qadevOOo/tests/java/mod/_forms/OHiddenModel.java203
-rw-r--r--qadevOOo/tests/java/mod/_forms/OImageButtonControl.java219
-rw-r--r--qadevOOo/tests/java/mod/_forms/OImageButtonModel.java132
-rw-r--r--qadevOOo/tests/java/mod/_forms/OImageControlControl.java220
-rw-r--r--qadevOOo/tests/java/mod/_forms/OImageControlModel.java161
-rw-r--r--qadevOOo/tests/java/mod/_forms/OListBoxControl.java180
-rw-r--r--qadevOOo/tests/java/mod/_forms/OListBoxModel.java236
-rw-r--r--qadevOOo/tests/java/mod/_forms/ONavigationBarControl.java180
-rw-r--r--qadevOOo/tests/java/mod/_forms/ONavigationBarModel.java81
-rw-r--r--qadevOOo/tests/java/mod/_forms/ONumericControl.java245
-rw-r--r--qadevOOo/tests/java/mod/_forms/ONumericModel.java160
-rw-r--r--qadevOOo/tests/java/mod/_forms/OPatternControl.java243
-rw-r--r--qadevOOo/tests/java/mod/_forms/OPatternModel.java166
-rw-r--r--qadevOOo/tests/java/mod/_forms/ORadioButtonControl.java222
-rw-r--r--qadevOOo/tests/java/mod/_forms/ORadioButtonModel.java173
-rw-r--r--qadevOOo/tests/java/mod/_forms/OScrollBarModel.java99
-rw-r--r--qadevOOo/tests/java/mod/_forms/OSpinButtonModel.java102
-rw-r--r--qadevOOo/tests/java/mod/_forms/OTimeControl.java258
-rw-r--r--qadevOOo/tests/java/mod/_forms/OTimeModel.java237
-rw-r--r--qadevOOo/tests/java/mod/_forms/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_fps/FilePicker.java133
-rw-r--r--qadevOOo/tests/java/mod/_ftransl/DataFormatTranslator.java91
-rwxr-xr-xqadevOOo/tests/java/mod/_fwk/ControlMenuController.java110
-rw-r--r--qadevOOo/tests/java/mod/_fwk/Desktop.java137
-rw-r--r--qadevOOo/tests/java/mod/_fwk/DispatchRecorder.java174
-rw-r--r--qadevOOo/tests/java/mod/_fwk/DispatchRecorderSupplier.java74
-rw-r--r--qadevOOo/tests/java/mod/_fwk/DocumentProperties.java130
-rwxr-xr-xqadevOOo/tests/java/mod/_fwk/FontMenuController.java60
-rwxr-xr-xqadevOOo/tests/java/mod/_fwk/FontSizeMenuController.java60
-rwxr-xr-xqadevOOo/tests/java/mod/_fwk/FooterMenuController.java60
-rwxr-xr-xqadevOOo/tests/java/mod/_fwk/FormatMenuController.java60
-rw-r--r--qadevOOo/tests/java/mod/_fwk/Frame.java119
-rwxr-xr-xqadevOOo/tests/java/mod/_fwk/HeaderMenuController.java60
-rw-r--r--qadevOOo/tests/java/mod/_fwk/JobExecutor.java317
-rw-r--r--qadevOOo/tests/java/mod/_fwk/JobHandler.java91
-rwxr-xr-xqadevOOo/tests/java/mod/_fwk/LayoutManager.java124
-rwxr-xr-xqadevOOo/tests/java/mod/_fwk/MacrosMenuController.java60
-rw-r--r--qadevOOo/tests/java/mod/_fwk/MailToDispatcher.java80
-rwxr-xr-xqadevOOo/tests/java/mod/_fwk/MenuBarFactory.java58
-rwxr-xr-xqadevOOo/tests/java/mod/_fwk/ModuleManager.java281
-rwxr-xr-xqadevOOo/tests/java/mod/_fwk/ModuleUIConfigurationManager.java245
-rwxr-xr-xqadevOOo/tests/java/mod/_fwk/ModuleUIConfigurationManagerSupplier.java60
-rwxr-xr-xqadevOOo/tests/java/mod/_fwk/ObjectMenuController.java97
-rwxr-xr-xqadevOOo/tests/java/mod/_fwk/PopupMenuControllerFactory.java124
-rw-r--r--qadevOOo/tests/java/mod/_fwk/ServiceHandler.java80
-rw-r--r--qadevOOo/tests/java/mod/_fwk/SoundHandler.java81
-rw-r--r--qadevOOo/tests/java/mod/_fwk/StatusBarControllerFactory.java74
-rw-r--r--qadevOOo/tests/java/mod/_fwk/ToolBarsMenuController.java60
-rw-r--r--qadevOOo/tests/java/mod/_fwk/UICategoryDescription.java60
-rwxr-xr-xqadevOOo/tests/java/mod/_fwk/UICommandDescription.java61
-rwxr-xr-xqadevOOo/tests/java/mod/_fwk/UIConfigurationManager.java205
-rwxr-xr-xqadevOOo/tests/java/mod/_fwk/UIElementFactoryManager.java101
-rw-r--r--qadevOOo/tests/java/mod/_fwk/URLTransformer.java73
-rw-r--r--qadevOOo/tests/java/mod/_fwl/ContentHandlerFactory.java115
-rw-r--r--qadevOOo/tests/java/mod/_fwl/FilterFactory.java205
-rw-r--r--qadevOOo/tests/java/mod/_fwl/FrameLoaderFactory.java113
-rw-r--r--qadevOOo/tests/java/mod/_fwl/PathSettings.java161
-rw-r--r--qadevOOo/tests/java/mod/_fwl/SubstituteVariables.java94
-rw-r--r--qadevOOo/tests/java/mod/_fwl/TypeDetection.java187
-rw-r--r--qadevOOo/tests/java/mod/_i18n/BreakIterator.java123
-rw-r--r--qadevOOo/tests/java/mod/_i18n/CalendarImpl.java80
-rw-r--r--qadevOOo/tests/java/mod/_i18n/ChapterCollator.java84
-rw-r--r--qadevOOo/tests/java/mod/_i18n/CharacterClassification.java87
-rw-r--r--qadevOOo/tests/java/mod/_i18n/Collator.java81
-rw-r--r--qadevOOo/tests/java/mod/_i18n/IndexEntrySupplier.java86
-rw-r--r--qadevOOo/tests/java/mod/_i18n/LocaleData.java85
-rw-r--r--qadevOOo/tests/java/mod/_i18n/NumberFormatCodeMapper.java91
-rw-r--r--qadevOOo/tests/java/mod/_i18n/TextSearch.java81
-rw-r--r--qadevOOo/tests/java/mod/_i18n/Transliteration.java81
-rw-r--r--qadevOOo/tests/java/mod/_implreg.uno/ImplementationRegistration.java81
-rw-r--r--qadevOOo/tests/java/mod/_implreg.uno/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_impreg/ImplementationRegistration.java86
-rw-r--r--qadevOOo/tests/java/mod/_impreg/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_insp/Introspection.java81
-rw-r--r--qadevOOo/tests/java/mod/_insp/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_introspection.uno/Introspection.java76
-rw-r--r--qadevOOo/tests/java/mod/_introspection.uno/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_inv/Invocation.java106
-rw-r--r--qadevOOo/tests/java/mod/_inv/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_invadp/InvocationAdapterFactory.java75
-rw-r--r--qadevOOo/tests/java/mod/_invadp/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_invocadapt.uno/InvocationAdapterFactory.java74
-rw-r--r--qadevOOo/tests/java/mod/_invocadapt.uno/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_invocation.uno/Invocation.java104
-rw-r--r--qadevOOo/tests/java/mod/_invocation.uno/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_javaloader.uno/JavaComponentLoader.java96
-rw-r--r--qadevOOo/tests/java/mod/_javaloader/JavaComponentLoader.java101
-rw-r--r--qadevOOo/tests/java/mod/_javavm.uno/JavaVirtualMachine.java75
-rw-r--r--qadevOOo/tests/java/mod/_javavm.uno/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_jdbc/JDBCDriver.java123
-rw-r--r--qadevOOo/tests/java/mod/_jen/JavaVirtualMachine.java77
-rw-r--r--qadevOOo/tests/java/mod/_jen/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_lng/DicList.java113
-rw-r--r--qadevOOo/tests/java/mod/_lng/LinguProps.java98
-rw-r--r--qadevOOo/tests/java/mod/_lng/LngSvcMgr.java92
-rw-r--r--qadevOOo/tests/java/mod/_lnn/Hyphenator.java111
-rw-r--r--qadevOOo/tests/java/mod/_lnn/SpellChecker.java109
-rw-r--r--qadevOOo/tests/java/mod/_lnn/Thesaurus.java98
-rw-r--r--qadevOOo/tests/java/mod/_mcnttype/MimeContentTypeFactory.java90
-rw-r--r--qadevOOo/tests/java/mod/_mozab/MozabDriver.java104
-rw-r--r--qadevOOo/tests/java/mod/_namingservice.uno/NamingService.java99
-rw-r--r--qadevOOo/tests/java/mod/_namingservice/NamingService.java102
-rw-r--r--qadevOOo/tests/java/mod/_namingservice/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_nestedreg.uno/NestedRegistry.java198
-rw-r--r--qadevOOo/tests/java/mod/_nestedreg.uno/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_odbc/ODBCDriver.java101
-rw-r--r--qadevOOo/tests/java/mod/_pcr/ObjectInspector.java215
-rw-r--r--qadevOOo/tests/java/mod/_pcr/ObjectInspectorModel.java174
-rw-r--r--qadevOOo/tests/java/mod/_proxyfac.uno/ProxyFactory.java76
-rw-r--r--qadevOOo/tests/java/mod/_proxyfac/ProxyFactory.java78
-rw-r--r--qadevOOo/tests/java/mod/_proxyfac/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_proxyset/SOffice52ProxySettings.java144
-rw-r--r--qadevOOo/tests/java/mod/_proxyset/SystemProxySettings.java145
-rwxr-xr-xqadevOOo/tests/java/mod/_qadevOOo/SelfTest.java92
-rw-r--r--qadevOOo/tests/java/mod/_rdbtdp/RegistryTypeDescriptionProvider.java131
-rw-r--r--qadevOOo/tests/java/mod/_rdbtdp/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_regtypeprov.uno/RegistryTypeDescriptionProvider.java126
-rw-r--r--qadevOOo/tests/java/mod/_remotebridge.uno/various.java309
-rw-r--r--qadevOOo/tests/java/mod/_remotebridge/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_remotebridge/various.java305
-rw-r--r--qadevOOo/tests/java/mod/_sc/AccessibleEditableTextPara_HeaderFooter.java220
-rw-r--r--qadevOOo/tests/java/mod/_sc/AccessibleEditableTextPara_PreviewCell.java193
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScAccessibleCell.java200
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScAccessibleCsvCell.java208
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScAccessibleCsvGrid.java202
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScAccessibleCsvRuler.java229
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScAccessibleDocument.java172
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScAccessibleDocumentPagePreview.java242
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScAccessiblePageHeader.java282
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScAccessiblePageHeaderArea.java233
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScAccessiblePreviewCell.java208
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScAccessiblePreviewHeaderCell.java293
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScAccessiblePreviewTable.java222
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScAccessibleSpreadsheet.java168
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScAnnotationObj.java178
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScAnnotationShapeObj.java213
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScAnnotationTextCursor.java152
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScAnnotationsObj.java175
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScAreaLinkObj.java152
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScAreaLinksObj.java150
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScAutoFormatFieldObj.java106
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScAutoFormatObj.java109
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScAutoFormatsObj.java158
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScCellCursorObj.java326
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScCellFieldObj.java196
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScCellFieldsObj.java167
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScCellFormatsEnumeration.java157
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScCellFormatsObj.java141
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScCellObj.java216
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScCellRangeObj.java312
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScCellRangesObj.java264
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScCellSearchObj.java151
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScCellTextCursor.java195
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScCellsEnumeration.java172
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScCellsObj.java167
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScChartObj.java289
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScChartsObj.java273
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScConsolidationDescriptor.java116
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScDDELinkObj.java245
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScDDELinksObj.java208
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScDataPilotFieldGroupItemObj.java371
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScDataPilotFieldGroupObj.java369
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScDataPilotFieldGroupsObj.java367
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScDataPilotFieldObj.java396
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScDataPilotFieldsObj.java183
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScDataPilotItemObj.java414
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScDataPilotItemsObj.java402
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScDataPilotTableObj.java355
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScDataPilotTablesObj.java195
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScDatabaseRangeObj.java258
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScDatabaseRangesObj.java154
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScDocumentConfiguration.java90
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScDrawPageObj.java162
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScDrawPagesObj.java135
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScFilterDescriptorBase.java159
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScFunctionDescriptionObj.java118
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScFunctionListObj.java130
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScHeaderFieldObj.java241
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScHeaderFieldsObj.java221
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScHeaderFooterContentObj.java190
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScHeaderFooterTextCursor.java228
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScHeaderFooterTextObj.java278
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScImportDescriptorBase.java149
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_CellAnnotationsEnumeration.java138
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_CellAreaLinksEnumeration.java131
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_DDELinksEnumeration.java187
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_DataPilotFieldsEnumeration.java165
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_DataPilotItemsEnumeration.java408
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_DataPilotTablesEnumeration.java166
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_DatabaseRangesEnumeration.java134
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_FunctionDescriptionEnumeration.java113
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_LabelRangesEnumeration.java126
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_NamedRangesEnumeration.java133
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_ScenariosEnumeration.java145
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_SheetCellRangesEnumeration.java167
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_SheetLinksEnumeration.java148
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_SpreadsheetViewPanesEnumeration.java116
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_SpreadsheetsEnumeration.java97
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_SubTotalFieldsEnumeration.java141
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_TableAutoFormatEnumeration.java105
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_TableChartsEnumeration.java238
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_TableColumnsEnumeration.java129
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_TableConditionalEntryEnumeration.java207
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_TableRowsEnumeration.java128
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_TextFieldEnumeration.java166
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScLabelRangeObj.java154
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScLabelRangesObj.java147
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScModelObj.java232
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScNamedRangeObj.java177
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScNamedRangesObj.java178
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScRecentFunctionsObj.java133
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScScenariosObj.java174
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScShapeObj.java117
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScSheetLinkObj.java193
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScSheetLinksObj.java167
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScSortDescriptorBase.java151
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScSpreadsheetSettings.java84
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScSpreadsheetSettingsObj.java110
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScStyleFamiliesObj.java121
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScStyleFamilyObj.java216
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScStyleObj.java270
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScSubTotalDescriptorBase.java154
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScSubTotalFieldObj.java169
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScTabViewObj.java283
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScTableColumnObj.java176
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScTableColumnsObj.java153
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScTableConditionalEntry.java230
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScTableConditionalFormat.java208
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScTableRowObj.java161
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScTableRowsObj.java148
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScTableSheetObj.java421
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScTableSheetsObj.java171
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScTableValidationObj.java164
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScUniqueCellFormatsEnumeration.java145
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScUniqueCellFormatsObj.java139
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScViewPaneObj.java209
-rw-r--r--qadevOOo/tests/java/mod/_sc/XMLContentExporter.java216
-rw-r--r--qadevOOo/tests/java/mod/_sc/XMLContentImporter.java198
-rw-r--r--qadevOOo/tests/java/mod/_sc/XMLExporter.java224
-rw-r--r--qadevOOo/tests/java/mod/_sc/XMLImporter.java195
-rw-r--r--qadevOOo/tests/java/mod/_sc/XMLMetaExporter.java205
-rw-r--r--qadevOOo/tests/java/mod/_sc/XMLMetaImporter.java197
-rw-r--r--qadevOOo/tests/java/mod/_sc/XMLSettingsExporter.java206
-rw-r--r--qadevOOo/tests/java/mod/_sc/XMLSettingsImporter.java219
-rw-r--r--qadevOOo/tests/java/mod/_sc/XMLStylesExporter.java211
-rw-r--r--qadevOOo/tests/java/mod/_sc/XMLStylesImporter.java215
-rw-r--r--qadevOOo/tests/java/mod/_sc/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_sch/AccArea.java121
-rw-r--r--qadevOOo/tests/java/mod/_sch/AccAxis.java119
-rw-r--r--qadevOOo/tests/java/mod/_sch/AccDataPoint.java120
-rw-r--r--qadevOOo/tests/java/mod/_sch/AccDataSeries.java120
-rw-r--r--qadevOOo/tests/java/mod/_sch/AccDiagram.java120
-rw-r--r--qadevOOo/tests/java/mod/_sch/AccFloor.java145
-rw-r--r--qadevOOo/tests/java/mod/_sch/AccGrid.java121
-rw-r--r--qadevOOo/tests/java/mod/_sch/AccLegend.java119
-rw-r--r--qadevOOo/tests/java/mod/_sch/AccLegendEntry.java119
-rw-r--r--qadevOOo/tests/java/mod/_sch/AccStatisticsObject.java124
-rw-r--r--qadevOOo/tests/java/mod/_sch/AccTitle.java119
-rw-r--r--qadevOOo/tests/java/mod/_sch/AccWall.java144
-rw-r--r--qadevOOo/tests/java/mod/_sch/AccessibleDocumentView.java133
-rw-r--r--qadevOOo/tests/java/mod/_sch/ChXChartAxis.java130
-rw-r--r--qadevOOo/tests/java/mod/_sch/ChXChartData.java102
-rw-r--r--qadevOOo/tests/java/mod/_sch/ChXChartDataArray.java106
-rw-r--r--qadevOOo/tests/java/mod/_sch/ChXChartDocument.java172
-rw-r--r--qadevOOo/tests/java/mod/_sch/ChXChartView.java147
-rw-r--r--qadevOOo/tests/java/mod/_sch/ChXDataPoint.java162
-rw-r--r--qadevOOo/tests/java/mod/_sch/ChXDataRow.java169
-rw-r--r--qadevOOo/tests/java/mod/_sch/ChXDiagram.java413
-rw-r--r--qadevOOo/tests/java/mod/_sch/ChartArea.java122
-rw-r--r--qadevOOo/tests/java/mod/_sch/ChartGrid.java122
-rw-r--r--qadevOOo/tests/java/mod/_sch/ChartLegend.java142
-rw-r--r--qadevOOo/tests/java/mod/_sch/ChartLine.java150
-rw-r--r--qadevOOo/tests/java/mod/_sch/ChartTitle.java120
-rw-r--r--qadevOOo/tests/java/mod/_sd/AccessibleDrawDocumentView.java183
-rw-r--r--qadevOOo/tests/java/mod/_sd/AccessibleOutlineView.java182
-rw-r--r--qadevOOo/tests/java/mod/_sd/AccessibleSlideView.java191
-rw-r--r--qadevOOo/tests/java/mod/_sd/DrawController_DrawView.java303
-rw-r--r--qadevOOo/tests/java/mod/_sd/DrawController_HandoutView.java337
-rw-r--r--qadevOOo/tests/java/mod/_sd/DrawController_NotesView.java334
-rw-r--r--qadevOOo/tests/java/mod/_sd/DrawController_OutlineView.java334
-rw-r--r--qadevOOo/tests/java/mod/_sd/DrawController_PresentationView.java334
-rw-r--r--qadevOOo/tests/java/mod/_sd/SdDocLinkTargets.java111
-rw-r--r--qadevOOo/tests/java/mod/_sd/SdDrawPage.java216
-rw-r--r--qadevOOo/tests/java/mod/_sd/SdDrawPagesAccess.java129
-rw-r--r--qadevOOo/tests/java/mod/_sd/SdGenericDrawPage.java189
-rw-r--r--qadevOOo/tests/java/mod/_sd/SdLayer.java139
-rw-r--r--qadevOOo/tests/java/mod/_sd/SdLayerManager.java171
-rw-r--r--qadevOOo/tests/java/mod/_sd/SdMasterPage.java194
-rw-r--r--qadevOOo/tests/java/mod/_sd/SdMasterPagesAccess.java122
-rw-r--r--qadevOOo/tests/java/mod/_sd/SdPageLinkTargets.java153
-rw-r--r--qadevOOo/tests/java/mod/_sd/SdUnoDrawView.java299
-rw-r--r--qadevOOo/tests/java/mod/_sd/SdUnoOutlineView.java246
-rw-r--r--qadevOOo/tests/java/mod/_sd/SdUnoPresView.java301
-rw-r--r--qadevOOo/tests/java/mod/_sd/SdUnoSlideView.java222
-rw-r--r--qadevOOo/tests/java/mod/_sd/SdXCustomPresentation.java243
-rw-r--r--qadevOOo/tests/java/mod/_sd/SdXCustomPresentationAccess.java212
-rw-r--r--qadevOOo/tests/java/mod/_sd/SdXImpressDocument.java199
-rw-r--r--qadevOOo/tests/java/mod/_sd/SdXPresentation.java164
-rw-r--r--qadevOOo/tests/java/mod/_sd/SdXShape.java219
-rw-r--r--qadevOOo/tests/java/mod/_sd/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_servicemgr.uno/OServiceManager.java169
-rw-r--r--qadevOOo/tests/java/mod/_servicemgr.uno/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_sfx/AppDispatchProvider.java104
-rw-r--r--qadevOOo/tests/java/mod/_sfx/DocumentTemplates.java97
-rw-r--r--qadevOOo/tests/java/mod/_sfx/FrameLoader.java103
-rw-r--r--qadevOOo/tests/java/mod/_sfx/SfxMacroLoader.java107
-rw-r--r--qadevOOo/tests/java/mod/_sfx/StandaloneDocumentInfo.java133
-rw-r--r--qadevOOo/tests/java/mod/_shlibloader.uno/DLLComponentLoader.java117
-rw-r--r--qadevOOo/tests/java/mod/_shlibloader.uno/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_simplereg.uno/SimpleRegistry.java163
-rw-r--r--qadevOOo/tests/java/mod/_simplereg.uno/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_simreg/SimpleRegistry.java167
-rw-r--r--qadevOOo/tests/java/mod/_simreg/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_sm/SmEditAccessible.java178
-rw-r--r--qadevOOo/tests/java/mod/_sm/SmGraphicAccessible.java182
-rw-r--r--qadevOOo/tests/java/mod/_sm/SmModel.java100
-rw-r--r--qadevOOo/tests/java/mod/_sm/XMLExporter.java197
-rw-r--r--qadevOOo/tests/java/mod/_sm/XMLImporter.java170
-rw-r--r--qadevOOo/tests/java/mod/_sm/XMLMetaExporter.java198
-rw-r--r--qadevOOo/tests/java/mod/_sm/XMLMetaImporter.java198
-rw-r--r--qadevOOo/tests/java/mod/_sm/XMLSettingsExporter.java198
-rw-r--r--qadevOOo/tests/java/mod/_sm/XMLSettingsImporter.java180
-rw-r--r--qadevOOo/tests/java/mod/_smgr/OServiceManager.java171
-rw-r--r--qadevOOo/tests/java/mod/_smgr/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_smplmail/SimpleSystemMail.java121
-rw-r--r--qadevOOo/tests/java/mod/_srtrs/SortedDynamicResultSetFactory.java83
-rw-r--r--qadevOOo/tests/java/mod/_stm/DataInputStream.java197
-rw-r--r--qadevOOo/tests/java/mod/_stm/DataOutputStream.java182
-rw-r--r--qadevOOo/tests/java/mod/_stm/MarkableInputStream.java147
-rw-r--r--qadevOOo/tests/java/mod/_stm/MarkableOutputStream.java207
-rw-r--r--qadevOOo/tests/java/mod/_stm/ObjectInputStream.java299
-rw-r--r--qadevOOo/tests/java/mod/_stm/ObjectOutputStream.java320
-rw-r--r--qadevOOo/tests/java/mod/_stm/Pipe.java115
-rw-r--r--qadevOOo/tests/java/mod/_stm/Pump.java190
-rw-r--r--qadevOOo/tests/java/mod/_stm/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_streams.uno/DataInputStream.java194
-rw-r--r--qadevOOo/tests/java/mod/_streams.uno/DataOutputStream.java179
-rw-r--r--qadevOOo/tests/java/mod/_streams.uno/MarkableInputStream.java144
-rw-r--r--qadevOOo/tests/java/mod/_streams.uno/MarkableOutputStream.java204
-rw-r--r--qadevOOo/tests/java/mod/_streams.uno/ObjectInputStream.java296
-rw-r--r--qadevOOo/tests/java/mod/_streams.uno/ObjectOutputStream.java317
-rw-r--r--qadevOOo/tests/java/mod/_streams.uno/Pipe.java111
-rw-r--r--qadevOOo/tests/java/mod/_streams.uno/Pump.java187
-rw-r--r--qadevOOo/tests/java/mod/_streams.uno/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_svtools/AccessibleBrowseBox.java202
-rw-r--r--qadevOOo/tests/java/mod/_svtools/AccessibleBrowseBoxHeaderBar.java255
-rw-r--r--qadevOOo/tests/java/mod/_svtools/AccessibleBrowseBoxHeaderCell.java240
-rw-r--r--qadevOOo/tests/java/mod/_svtools/AccessibleBrowseBoxTable.java238
-rw-r--r--qadevOOo/tests/java/mod/_svtools/AccessibleBrowseBoxTableCell.java226
-rw-r--r--qadevOOo/tests/java/mod/_svtools/AccessibleIconChoiceCtrl.java287
-rw-r--r--qadevOOo/tests/java/mod/_svtools/AccessibleIconChoiceCtrlEntry.java264
-rw-r--r--qadevOOo/tests/java/mod/_svtools/AccessibleTabBar.java162
-rw-r--r--qadevOOo/tests/java/mod/_svtools/AccessibleTabBarPage.java194
-rw-r--r--qadevOOo/tests/java/mod/_svtools/AccessibleTabBarPageList.java209
-rw-r--r--qadevOOo/tests/java/mod/_svtools/AccessibleTreeListBox.java249
-rw-r--r--qadevOOo/tests/java/mod/_svtools/AccessibleTreeListBoxEntry.java295
-rw-r--r--qadevOOo/tests/java/mod/_svx/AccessibleControlShape.java125
-rw-r--r--qadevOOo/tests/java/mod/_svx/AccessibleEditableTextPara.java162
-rw-r--r--qadevOOo/tests/java/mod/_svx/AccessibleGraphicShape.java129
-rw-r--r--qadevOOo/tests/java/mod/_svx/AccessibleOLEShape.java151
-rw-r--r--qadevOOo/tests/java/mod/_svx/AccessiblePageShape.java141
-rw-r--r--qadevOOo/tests/java/mod/_svx/AccessiblePresentationGraphicShape.java149
-rw-r--r--qadevOOo/tests/java/mod/_svx/AccessiblePresentationOLEShape.java158
-rw-r--r--qadevOOo/tests/java/mod/_svx/AccessiblePresentationShape.java147
-rw-r--r--qadevOOo/tests/java/mod/_svx/AccessibleShape.java128
-rw-r--r--qadevOOo/tests/java/mod/_svx/GraphicExporter.java237
-rw-r--r--qadevOOo/tests/java/mod/_svx/SvxDrawPage.java224
-rw-r--r--qadevOOo/tests/java/mod/_svx/SvxGraphCtrlAccessibleContext.java251
-rw-r--r--qadevOOo/tests/java/mod/_svx/SvxGraphicObject.java263
-rw-r--r--qadevOOo/tests/java/mod/_svx/SvxShape.java227
-rw-r--r--qadevOOo/tests/java/mod/_svx/SvxShapeCircle.java247
-rw-r--r--qadevOOo/tests/java/mod/_svx/SvxShapeCollection.java148
-rw-r--r--qadevOOo/tests/java/mod/_svx/SvxShapeConnector.java204
-rw-r--r--qadevOOo/tests/java/mod/_svx/SvxShapeControl.java158
-rw-r--r--qadevOOo/tests/java/mod/_svx/SvxShapeDimensioning.java169
-rw-r--r--qadevOOo/tests/java/mod/_svx/SvxShapeGroup.java195
-rw-r--r--qadevOOo/tests/java/mod/_svx/SvxShapePolyPolygon.java265
-rw-r--r--qadevOOo/tests/java/mod/_svx/SvxShapePolyPolygonBezier.java278
-rw-r--r--qadevOOo/tests/java/mod/_svx/SvxUnoNumberingRules.java94
-rw-r--r--qadevOOo/tests/java/mod/_svx/SvxUnoText.java170
-rw-r--r--qadevOOo/tests/java/mod/_svx/SvxUnoTextContent.java150
-rw-r--r--qadevOOo/tests/java/mod/_svx/SvxUnoTextContentEnum.java152
-rw-r--r--qadevOOo/tests/java/mod/_svx/SvxUnoTextCursor.java144
-rw-r--r--qadevOOo/tests/java/mod/_svx/SvxUnoTextField.java161
-rw-r--r--qadevOOo/tests/java/mod/_svx/SvxUnoTextRange.java156
-rw-r--r--qadevOOo/tests/java/mod/_svx/SvxUnoTextRangeEnumeration.java157
-rw-r--r--qadevOOo/tests/java/mod/_svx/package.html6
-rwxr-xr-xqadevOOo/tests/java/mod/_sw/CharacterStyle.java207
-rwxr-xr-xqadevOOo/tests/java/mod/_sw/ConditionalParagraphStyle.java201
-rw-r--r--qadevOOo/tests/java/mod/_sw/DocumentSettings.java85
-rwxr-xr-xqadevOOo/tests/java/mod/_sw/PageStyle.java201
-rwxr-xr-xqadevOOo/tests/java/mod/_sw/ParagraphStyle.java192
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwAccessibleDocumentPageView.java200
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwAccessibleDocumentView.java187
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwAccessibleEndnoteView.java195
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwAccessibleFooterView.java200
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwAccessibleFootnoteView.java195
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwAccessibleHeaderView.java188
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwAccessiblePageView.java286
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwAccessibleParagraphView.java139
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwAccessibleTableCellView.java154
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwAccessibleTableView.java174
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwAccessibleTextEmbeddedObject.java156
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwAccessibleTextFrameView.java187
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwAccessibleTextGraphicObject.java177
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXAutoTextContainer.java89
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXAutoTextEntry.java217
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXAutoTextGroup.java178
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXBodyText.java148
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXBookmark.java121
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXBookmarks.java119
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXCell.java135
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXCellRange.java169
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXChapterNumbering.java123
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXDocumentIndex.java144
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXDocumentIndexMark.java145
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXDocumentIndexes.java135
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXDrawPage.java164
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXEndnoteProperties.java134
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXFieldEnumeration.java176
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXFieldMaster.java111
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXFootnote.java158
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXFootnoteProperties.java132
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXFootnoteText.java176
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXFootnotes.java134
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXFrames.java143
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXHeadFootText.java198
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXLineNumberingProperties.java119
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXMailMerge.java439
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXModule.java90
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXNumberingRules.java178
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXParagraph.java279
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXParagraphEnumeration.java154
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXPrintSettings.java110
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXPropertySet.java85
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXPropertySetInfo.java97
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXReferenceMark.java142
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXReferenceMarks.java164
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXShape.java133
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXStyle.java248
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXStyleFamilies.java111
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXStyleFamily.java197
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTableCellText.java172
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTableColumns.java136
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTableRows.java128
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextColumns.java184
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextCursor.java316
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextDefaults.java123
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextDocument.java268
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextEmbeddedObject.java173
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextEmbeddedObjects.java137
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextField.java168
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextFieldMasters.java140
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextFieldTypes.java140
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextFrame.java159
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextFrameText.java156
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextGraphicObject.java207
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextGraphicObjects.java165
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextPortion.java187
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextPortionEnumeration.java161
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextRange.java99
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextRanges.java129
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextSearch.java131
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextSection.java187
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextSections.java152
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextTable.java261
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextTableCursor.java124
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextTableRow.java127
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextTables.java154
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextView.java297
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextViewCursor.java122
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXViewSettings.java112
-rw-r--r--qadevOOo/tests/java/mod/_sw/XMLContentExporter.java196
-rw-r--r--qadevOOo/tests/java/mod/_sw/XMLContentImporter.java178
-rw-r--r--qadevOOo/tests/java/mod/_sw/XMLExporter.java199
-rw-r--r--qadevOOo/tests/java/mod/_sw/XMLImporter.java171
-rw-r--r--qadevOOo/tests/java/mod/_sw/XMLMetaExporter.java200
-rw-r--r--qadevOOo/tests/java/mod/_sw/XMLMetaImporter.java189
-rw-r--r--qadevOOo/tests/java/mod/_sw/XMLSettingsExporter.java209
-rw-r--r--qadevOOo/tests/java/mod/_sw/XMLSettingsImporter.java208
-rw-r--r--qadevOOo/tests/java/mod/_sw/XMLStylesExporter.java203
-rw-r--r--qadevOOo/tests/java/mod/_sw/XMLStylesImporter.java188
-rw-r--r--qadevOOo/tests/java/mod/_sw/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_sysdtrans/SystemClipboard.java60
-rw-r--r--qadevOOo/tests/java/mod/_sysdtrans/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_syssh/SystemShellExecute.java60
-rw-r--r--qadevOOo/tests/java/mod/_tcv/TypeConverter.java71
-rw-r--r--qadevOOo/tests/java/mod/_tcv/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_tdmgr/TypeDescriptionManager.java89
-rw-r--r--qadevOOo/tests/java/mod/_tdmgr/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_text/DefaultNumberingProvider.java83
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/AccessibleButton.java246
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/AccessibleCheckBox.java261
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/AccessibleComboBox.java246
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/AccessibleDropDownComboBox.java139
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/AccessibleDropDownListBox.java154
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/AccessibleEdit.java235
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/AccessibleFixedText.java209
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/AccessibleList.java237
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/AccessibleListBox.java250
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/AccessibleListItem.java241
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/AccessibleMenu.java196
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/AccessibleMenuBar.java156
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/AccessibleMenuItem.java203
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/AccessibleMenuSeparator.java170
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/AccessiblePopupMenu.java230
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/AccessibleRadioButton.java310
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/AccessibleScrollBar.java186
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/AccessibleStatusBar.java182
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/AccessibleStatusBarItem.java197
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/AccessibleTabControl.java282
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/AccessibleTabPage.java292
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/AccessibleToolBox.java188
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/AccessibleToolBoxItem.java207
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/AccessibleWindow.java207
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/MutableTreeDataModel.java105
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/MutableTreeNode.java191
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/TabController.java143
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/TabControllerModel.java105
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/Toolkit.java142
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlButton.java156
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlButtonModel.java87
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlCheckBox.java164
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlCheckBoxModel.java87
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlComboBox.java160
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlComboBoxModel.java84
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlContainer.java252
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlContainerModel.java66
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlCurrencyField.java162
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlCurrencyFieldModel.java85
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlDateField.java166
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlDateFieldModel.java84
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlDialog.java254
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlDialogModel.java189
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlEdit.java161
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlEditModel.java84
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlFileControl.java162
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlFileControlModel.java84
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlFixedLineModel.java97
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlFixedText.java152
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlFixedTextModel.java84
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlFormattedField.java167
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlFormattedFieldModel.java85
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlGroupBox.java151
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlGroupBoxModel.java84
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlImageControl.java160
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlImageControlModel.java62
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlListBox.java161
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlListBoxModel.java84
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlNumericField.java171
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlNumericFieldModel.java84
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlPatternField.java162
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlPatternFieldModel.java62
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlProgressBarModel.java94
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlRadioButton.java152
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlRadioButtonModel.java62
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlScrollBarModel.java97
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlTimeField.java162
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoControlTimeFieldModel.java62
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoScrollBarControl.java179
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoSpinButtonControl.java149
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoSpinButtonControlModel.java69
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoTreeControl.java303
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/UnoTreeModel.java84
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_typeconverter.uno/TypeConverter.java66
-rw-r--r--qadevOOo/tests/java/mod/_typeconverter.uno/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_typemgr.uno/TypeDescriptionManager.java84
-rw-r--r--qadevOOo/tests/java/mod/_typemgr.uno/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_ucb/UcbContentProviderProxyFactory.java77
-rw-r--r--qadevOOo/tests/java/mod/_ucb/UcbPropertiesManager.java68
-rw-r--r--qadevOOo/tests/java/mod/_ucb/UcbStore.java77
-rw-r--r--qadevOOo/tests/java/mod/_ucb/UniversalContentBroker.java88
-rw-r--r--qadevOOo/tests/java/mod/_ucpchelp/CHelpContentProvider.java82
-rw-r--r--qadevOOo/tests/java/mod/_ucpdav/WebDAVContentProvider.java90
-rw-r--r--qadevOOo/tests/java/mod/_ucpfile/FileProvider.java80
-rw-r--r--qadevOOo/tests/java/mod/_ucpftp/FTPContentProvider.java81
-rw-r--r--qadevOOo/tests/java/mod/_ucphier/HierarchyContentProvider.java80
-rw-r--r--qadevOOo/tests/java/mod/_ucphier/HierarchyDataSource.java68
-rw-r--r--qadevOOo/tests/java/mod/_ucppkg/PackageContentProvider.java83
-rw-r--r--qadevOOo/tests/java/mod/_ucprmt/ContentProvider.java118
-rw-r--r--qadevOOo/tests/java/mod/_ucprmt/ProviderAcceptor.java72
-rw-r--r--qadevOOo/tests/java/mod/_ucprmt/ProxyProvider.java81
-rw-r--r--qadevOOo/tests/java/mod/_uui/UUIInteractionHandler.java82
-rw-r--r--qadevOOo/tests/java/mod/_uuresolver.uno/UnoUrlResolver.java68
-rw-r--r--qadevOOo/tests/java/mod/_uuresolver.uno/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_uuresolver/UnoUrlResolver.java81
-rw-r--r--qadevOOo/tests/java/mod/_uuresolver/package.html6
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Chart/XMLContentExporter.java201
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Chart/XMLContentImporter.java206
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Chart/XMLExporter.java204
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Chart/XMLImporter.java204
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Chart/XMLStylesExporter.java191
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Chart/XMLStylesImporter.java185
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Draw/XMLContentExporter.java215
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Draw/XMLContentImporter.java211
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Draw/XMLExporter.java215
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Draw/XMLImporter.java211
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Draw/XMLMetaExporter.java205
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Draw/XMLMetaImporter.java189
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Draw/XMLSettingsExporter.java211
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Draw/XMLSettingsImporter.java199
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Draw/XMLStylesExporter.java214
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Draw/XMLStylesImporter.java197
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Impress/XMLContentExporter.java207
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Impress/XMLContentImporter.java221
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Impress/XMLExporter.java210
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Impress/XMLImporter.java180
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Impress/XMLMetaExporter.java206
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Impress/XMLMetaImporter.java189
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Impress/XMLSettingsExporter.java219
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Impress/XMLSettingsImporter.java213
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Impress/XMLStylesExporter.java209
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Impress/XMLStylesImporter.java202
-rw-r--r--rdbmaker/inc/codemaker/dependency.hxx170
-rw-r--r--rdbmaker/inc/codemaker/global.hxx138
-rw-r--r--rdbmaker/inc/codemaker/options.hxx98
-rw-r--r--rdbmaker/inc/codemaker/registry.hxx208
-rw-r--r--rdbmaker/inc/codemaker/typemanager.hxx172
-rw-r--r--rdbmaker/prj/build.lst6
-rw-r--r--rdbmaker/prj/d.lst4
-rw-r--r--rdbmaker/source/codemaker/dependency.cxx301
-rw-r--r--rdbmaker/source/codemaker/global.cxx171
-rw-r--r--rdbmaker/source/codemaker/makefile.mk55
-rw-r--r--rdbmaker/source/codemaker/options.cxx67
-rw-r--r--rdbmaker/source/codemaker/typemanager.cxx273
-rw-r--r--rdbmaker/source/rdbmaker/makefile.mk63
-rw-r--r--rdbmaker/source/rdbmaker/rdbmaker.cxx508
-rw-r--r--rdbmaker/source/rdbmaker/rdboptions.cxx381
-rw-r--r--rdbmaker/source/rdbmaker/rdboptions.hxx57
-rw-r--r--rdbmaker/source/rdbmaker/rdbtype.cxx195
-rw-r--r--rdbmaker/source/rdbmaker/rdbtype.hxx52
-rw-r--r--rdbmaker/source/rdbmaker/specialtypemanager.cxx101
-rw-r--r--rdbmaker/source/rdbmaker/specialtypemanager.hxx71
-rw-r--r--rdbmaker/source/rdbmaker/typeblop.cxx535
-rwxr-xr-xreadlicense_oo/docs/readme.dtd33
-rw-r--r--readlicense_oo/docs/readme.xsl173
-rw-r--r--readlicense_oo/docs/readme/eval.xsl91
-rwxr-xr-xreadlicense_oo/docs/readme/makefile.mk44
-rwxr-xr-xreadlicense_oo/docs/readme/readme.xrm309
-rw-r--r--readlicense_oo/html/THIRDPARTYLICENSEREADME.html9925
-rw-r--r--readlicense_oo/html/makefile.mk47
-rwxr-xr-xreadlicense_oo/makefile.mk48
-rw-r--r--readlicense_oo/prj/build.lst6
-rw-r--r--readlicense_oo/prj/d.lst35
-rw-r--r--readlicense_oo/source/license/license_en-US.html875
-rw-r--r--readlicense_oo/source/license/license_en-US.rtf374
-rw-r--r--readlicense_oo/source/license/license_en-US.txt858
-rwxr-xr-xreadlicense_oo/util/makefile.pmk86
-rw-r--r--redland/LICENSE.txt11
-rw-r--r--redland/README38
-rw-r--r--redland/prj/build.lst5
-rw-r--r--redland/prj/d.lst19
-rw-r--r--redland/raptor/makefile.mk164
-rw-r--r--redland/raptor/raptor-1.4.18.patch.autotools46
-rw-r--r--redland/raptor/raptor-1.4.18.patch.dmake124
-rw-r--r--redland/raptor/raptor-1.4.18.patch.legal18
-rw-r--r--redland/raptor/raptor-1.4.18.patch.mingw30
-rw-r--r--redland/raptor/raptor-1.4.18.patch.ooo_build43
-rw-r--r--redland/raptor/raptor-1.4.18.patch.win3278
-rw-r--r--redland/raptor/raptor2.map294
-rw-r--r--redland/rasqal/makefile.mk159
-rw-r--r--redland/rasqal/rasqal-0.9.16.patch.autotools38
-rw-r--r--redland/rasqal/rasqal-0.9.16.patch.dmake98
-rw-r--r--redland/rasqal/rasqal-0.9.16.patch.legal18
-rw-r--r--redland/rasqal/rasqal-0.9.16.patch.ooo_build56
-rw-r--r--redland/rasqal/rasqal-0.9.16.patch.win3243
-rw-r--r--redland/rasqal/rasqal2.map194
-rw-r--r--redland/redland/makefile.mk160
-rw-r--r--redland/redland/redland-1.0.8.patch.autotools58
-rw-r--r--redland/redland/redland-1.0.8.patch.dmake115
-rw-r--r--redland/redland/redland-1.0.8.patch.legal54
-rw-r--r--redland/redland/redland-1.0.8.patch.ooo_build22
-rw-r--r--redland/redland/redland-1.0.8.patch.win32154
-rw-r--r--redland/redland/redland2.map316
-rw-r--r--redland/redlandversion.mk32
-rw-r--r--regexp/inc/makefile.mk47
-rw-r--r--regexp/inc/pch/precompiled_regexp.cxx29
-rw-r--r--regexp/inc/pch/precompiled_regexp.hxx32
-rw-r--r--regexp/orig/regex.c5880
-rw-r--r--regexp/orig/regex.h542
-rw-r--r--regexp/prj/build.lst4
-rw-r--r--regexp/prj/d.lst8
-rw-r--r--regexp/source/makefile.mk70
-rw-r--r--regexp/source/reclass.cxx2947
-rw-r--r--regexp/source/reclass.hxx395
-rw-r--r--registry/inc/makefile.mk47
-rw-r--r--registry/inc/pch/precompiled_registry.cxx29
-rw-r--r--registry/inc/pch/precompiled_registry.hxx32
-rw-r--r--registry/inc/registry/reader.h610
-rw-r--r--registry/inc/registry/reader.hxx632
-rw-r--r--registry/inc/registry/reflread.hxx519
-rw-r--r--registry/inc/registry/refltype.hxx86
-rw-r--r--registry/inc/registry/reflwrit.hxx355
-rw-r--r--registry/inc/registry/registry.h477
-rw-r--r--registry/inc/registry/registry.hxx1258
-rw-r--r--registry/inc/registry/regtype.h179
-rw-r--r--registry/inc/registry/types.h340
-rw-r--r--registry/inc/registry/version.h77
-rw-r--r--registry/inc/registry/writer.h269
-rw-r--r--registry/inc/registry/writer.hxx303
-rw-r--r--registry/prj/build.lst7
-rw-r--r--registry/prj/d.lst19
-rw-r--r--registry/source/keyimpl.cxx1078
-rw-r--r--registry/source/keyimpl.hxx151
-rw-r--r--registry/source/makefile.mk53
-rw-r--r--registry/source/reflcnst.hxx295
-rw-r--r--registry/source/reflread.cxx1774
-rw-r--r--registry/source/reflwrit.cxx1491
-rw-r--r--registry/source/regimpl.cxx1760
-rw-r--r--registry/source/regimpl.hxx184
-rw-r--r--registry/source/registry.cxx632
-rw-r--r--registry/source/regkey.cxx1022
-rw-r--r--registry/source/regkey.hxx80
-rw-r--r--registry/test/makefile.mk90
-rw-r--r--registry/test/regcompare/makefile.mk107
-rw-r--r--registry/test/regcompare/other1.idl1
-rw-r--r--registry/test/regcompare/other2.idl1
-rw-r--r--registry/test/regcompare/pe.idl1
-rw-r--r--registry/test/regcompare/psa.idl1
-rw-r--r--registry/test/regcompare/psb.idl1
-rw-r--r--registry/test/regcompare/ue.idl1
-rw-r--r--registry/test/regcompare/usa.idl1
-rw-r--r--registry/test/regcompare/usb.idl1
-rw-r--r--registry/test/regdiagnose.h44
-rw-r--r--registry/test/testmerge.cxx422
-rw-r--r--registry/test/testregcpp.cxx707
-rw-r--r--registry/tools/checksingleton.cxx483
-rw-r--r--registry/tools/makefile.mk80
-rw-r--r--registry/tools/regcompare.cxx2399
-rw-r--r--registry/tools/regmerge.cxx282
-rw-r--r--registry/tools/regview.cxx161
-rw-r--r--registry/util/makefile.mk76
-rw-r--r--registry/util/reg.map88
-rw-r--r--registry/version.mk39
-rw-r--r--registry/workben/makefile.mk86
-rw-r--r--registry/workben/regspeed.cxx271
-rw-r--r--registry/workben/regtest.cxx340
-rw-r--r--registry/workben/test.cxx54
-rw-r--r--remotebridges/examples/exports.dxp3
-rw-r--r--remotebridges/examples/makefile.mk62
-rw-r--r--remotebridges/examples/officeclient.cxx333
-rw-r--r--remotebridges/prj/build.lst6
-rw-r--r--remotebridges/prj/d.lst20
-rw-r--r--remotebridges/source/bridge/bridge_connection.cxx139
-rw-r--r--remotebridges/source/bridge/bridge_connection.hxx57
-rw-r--r--remotebridges/source/bridge/bridge_provider.cxx179
-rw-r--r--remotebridges/source/bridge/makefile.mk72
-rw-r--r--remotebridges/source/bridge/remote_bridge.cxx470
-rw-r--r--remotebridges/source/bridge/remote_bridge.hxx147
-rw-r--r--remotebridges/source/bridge/remotebridge.component36
-rw-r--r--remotebridges/source/bridge/remotebridge.xml47
-rw-r--r--remotebridges/source/dynamicloader/dynamicloader.cxx403
-rw-r--r--remotebridges/source/dynamicloader/dynamicloader.xml36
-rwxr-xr-xremotebridges/source/dynamicloader/makefile.mk69
-rw-r--r--remotebridges/source/factory/brdgfctr.xml44
-rw-r--r--remotebridges/source/factory/bridgefac.component34
-rw-r--r--remotebridges/source/factory/bridgefactory.cxx493
-rw-r--r--remotebridges/source/factory/bridgeimpl.cxx270
-rw-r--r--remotebridges/source/factory/bridgeimpl.hxx106
-rw-r--r--remotebridges/source/factory/makefile.mk73
-rw-r--r--remotebridges/source/unourl_resolver/makefile.mk72
-rw-r--r--remotebridges/source/unourl_resolver/unourl_resolver.cxx247
-rw-r--r--remotebridges/source/unourl_resolver/uuresolver.component34
-rw-r--r--remotebridges/source/unourl_resolver/uuresolver.xml38
-rw-r--r--reportbuilder/java/com/sun/star/report/DataRow.java46
-rw-r--r--reportbuilder/java/com/sun/star/report/DataSource.java48
-rw-r--r--reportbuilder/java/com/sun/star/report/DataSourceException.java94
-rw-r--r--reportbuilder/java/com/sun/star/report/DataSourceFactory.java43
-rw-r--r--reportbuilder/java/com/sun/star/report/ImageService.java70
-rw-r--r--reportbuilder/java/com/sun/star/report/InputRepository.java88
-rw-r--r--reportbuilder/java/com/sun/star/report/JobDefinitionException.java64
-rw-r--r--reportbuilder/java/com/sun/star/report/JobProgressIndicator.java79
-rw-r--r--reportbuilder/java/com/sun/star/report/JobProperties.java45
-rw-r--r--reportbuilder/java/com/sun/star/report/OfficeToken.java65
-rw-r--r--reportbuilder/java/com/sun/star/report/OutputRepository.java71
-rw-r--r--reportbuilder/java/com/sun/star/report/ParameterMap.java68
-rw-r--r--reportbuilder/java/com/sun/star/report/ReportAddIn.java45
-rw-r--r--reportbuilder/java/com/sun/star/report/ReportEngine.java56
-rw-r--r--reportbuilder/java/com/sun/star/report/ReportEngineMetaData.java59
-rw-r--r--reportbuilder/java/com/sun/star/report/ReportEngineParameterNames.java55
-rw-r--r--reportbuilder/java/com/sun/star/report/ReportExecutionException.java86
-rw-r--r--reportbuilder/java/com/sun/star/report/ReportExpression.java51
-rw-r--r--reportbuilder/java/com/sun/star/report/ReportExpressionMetaData.java47
-rw-r--r--reportbuilder/java/com/sun/star/report/ReportFunction.java44
-rw-r--r--reportbuilder/java/com/sun/star/report/ReportJob.java91
-rw-r--r--reportbuilder/java/com/sun/star/report/ReportJobDefinition.java57
-rw-r--r--reportbuilder/java/com/sun/star/report/ReportJobFactory.java41
-rw-r--r--reportbuilder/java/com/sun/star/report/SDBCReportData.java381
-rw-r--r--reportbuilder/java/com/sun/star/report/SDBCReportDataFactory.java591
-rw-r--r--reportbuilder/java/com/sun/star/report/SOImageService.java189
-rw-r--r--reportbuilder/java/com/sun/star/report/StorageRepository.java353
-rw-r--r--reportbuilder/java/com/sun/star/report/function/metadata/Author-Function.properties30
-rw-r--r--reportbuilder/java/com/sun/star/report/function/metadata/Author-Function_en_US.properties30
-rw-r--r--reportbuilder/java/com/sun/star/report/function/metadata/AuthorFunction.java61
-rw-r--r--reportbuilder/java/com/sun/star/report/function/metadata/AuthorFunctionDescription.java70
-rw-r--r--reportbuilder/java/com/sun/star/report/function/metadata/MetaDataFunctionCategory.java46
-rw-r--r--reportbuilder/java/com/sun/star/report/function/metadata/Title-Function.properties30
-rw-r--r--reportbuilder/java/com/sun/star/report/function/metadata/Title-Function_en_US.properties30
-rw-r--r--reportbuilder/java/com/sun/star/report/function/metadata/TitleFunction.java65
-rw-r--r--reportbuilder/java/com/sun/star/report/function/metadata/TitleFunctionDescription.java70
-rw-r--r--reportbuilder/java/com/sun/star/report/function/metadata/category.properties30
-rw-r--r--reportbuilder/java/com/sun/star/report/function/metadata/category_en_US.properties30
-rw-r--r--reportbuilder/java/com/sun/star/report/function/metadata/makefile.mk64
-rw-r--r--reportbuilder/java/com/sun/star/report/makefile.mk74
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/DefaultNameGenerator.java156
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/Manifest.mf7
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/OfficeNamespaces.java72
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/PentahoFormulaContext.java97
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/PentahoReportAddIn.java60
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/PentahoReportEngine.java72
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/PentahoReportEngineMetaData.java147
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/PentahoReportJob.java419
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/SOFormulaOpCodeMapper.java153
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/SOFormulaParser.java446
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/SOFunctionManager.java172
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/SOReportJobFactory.java448
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/StarFunctionCategory.java161
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/StarFunctionDescription.java194
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/StarReportData.java168
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/StarReportDataFactory.java125
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/StarReportModule.java56
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/configuration.properties156
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/expressions/SumExpression.java56
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/expressions/SumExpressionMetaData.java78
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/layoutprocessor/AbstractReportElementLayoutController.java269
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/layoutprocessor/FixedTextLayoutController.java85
-rwxr-xr-xreportbuilder/java/com/sun/star/report/pentaho/layoutprocessor/FormatValueUtility.java222
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/layoutprocessor/FormattedTextLayoutController.java229
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/layoutprocessor/ImageElementContext.java90
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/layoutprocessor/ImageElementLayoutController.java325
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/layoutprocessor/ObjectOleLayoutController.java124
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/layoutprocessor/OfficeDetailLayoutController.java159
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/layoutprocessor/OfficeGroupInstanceSectionLayoutController.java153
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/layoutprocessor/OfficeGroupLayoutController.java204
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/layoutprocessor/OfficeGroupSectionLayoutController.java109
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/layoutprocessor/OfficePageSectionLayoutController.java30
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/layoutprocessor/OfficeRepeatingStructureLayoutController.java43
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/layoutprocessor/OfficeReportLayoutController.java270
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/layoutprocessor/OfficeTableLayoutController.java79
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/layoutprocessor/OfficeTableTemplateLayoutController.java189
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/layoutprocessor/TableCellLayoutController.java214
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/layoutprocessor/VariablesCollection.java97
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/layoutprocessor/VariablesDeclarationLayoutController.java191
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/loader/InputRepositoryLoader.java172
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/loader/InputRepositoryResourceData.java85
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/loader/InputResourceKey.java63
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/makefile.mk135
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/model/DataStyle.java55
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/model/FixedTextElement.java52
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/model/FontFaceDeclsSection.java74
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/model/FontFaceElement.java55
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/model/FormatCondition.java67
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/model/FormattedTextElement.java58
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/model/ImageElement.java87
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/model/ObjectOleElement.java88
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/model/OfficeDetailSection.java43
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/model/OfficeDocument.java73
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/model/OfficeGroup.java94
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/model/OfficeGroupInstanceSection.java16
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/model/OfficeGroupSection.java54
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/model/OfficeMasterPage.java66
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/model/OfficeMasterStyles.java83
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/model/OfficeReport.java148
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/model/OfficeStyle.java130
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/model/OfficeStyles.java198
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/model/OfficeStylesCollection.java123
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/model/OfficeTableSection.java42
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/model/PageLayout.java68
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/model/PageSection.java60
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/model/RawText.java46
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/model/ReportElement.java110
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/model/TableCellElement.java43
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/model/VariablesDeclarationSection.java52
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/module.properties45
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/oasis-datastyle.css5
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/oasis-draw.css5
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/oasis-form.css5
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/oasis-style.css10
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/oasis-table.css37
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/oasis-text.css9
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/output/ImageProducer.java498
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/output/OfficeDocumentReportTarget.java1671
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/output/OleProducer.java139
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/output/StyleUtilities.java615
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/output/StylesWriter.java390
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/output/chart/ChartRawReportProcessor.java106
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/output/chart/ChartRawReportTarget.java286
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/output/spreadsheet/SpreadsheetRawReportProcessor.java121
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/output/spreadsheet/SpreadsheetRawReportTarget.java968
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/output/text/MasterPageFactory.java417
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/output/text/PageBreakDefinition.java49
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/output/text/PageContext.java228
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/output/text/TextRawReportProcessor.java116
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/output/text/TextRawReportTarget.java1466
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/output/text/VariablesDeclarations.java108
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/AttributeSpecification.java57
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/ElementReadHandler.java91
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/OfficeDocumentXmlResourceFactory.java51
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/OfficeParserUtil.java191
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/OfficeStylesXmlResourceFactory.java59
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/StarStyleXmlFactoryModule.java62
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/StarXmlFactoryModule.java62
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/StyleMapper.java38
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/chart/ChartReadHandler.java115
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/data/DataStyleReadHandler.java130
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/draw/ObjectOleReadHandler.java85
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/office/BodyReadHandler.java91
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/office/DocumentContentReadHandler.java236
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/office/DocumentStylesReadHandler.java106
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/office/FontFaceDeclsReadHandler.java117
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/office/MasterStylesReadHandler.java125
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/rpt-schema-v1.0-os.xsd414
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/rpt/ConditionalPrintExpressionReadHandler.java81
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/rpt/DetailRootTableReadHandler.java38
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/rpt/FixedContentReadHandler.java98
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/rpt/FormatConditionReadHandler.java100
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/rpt/FormattedTextReadHandler.java118
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/rpt/FunctionReadHandler.java116
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/rpt/GroupReadHandler.java182
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/rpt/GroupSectionReadHandler.java38
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/rpt/ImageReadHandler.java141
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/rpt/MasterDetailReadHandler.java109
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/rpt/ReportElementReadHandler.java109
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/rpt/ReportReadHandler.java239
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/rpt/RootTableReadHandler.java105
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/rpt/SubDocumentReadHandler.java137
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/selectors.properties113
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/style-mapping.txt8
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/style/FontFaceReadHandler.java56
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/style/MasterPageReadHandler.java106
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/style/OfficeStyleReadHandler.java105
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/style/OfficeStylesReadHandler.java143
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/style/PageLayoutReadHandler.java104
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/style/StyleDefinitionReadHandler.java99
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/stylemapper/OneOfConstantsMapper.java77
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/stylemapper/draw/TextAreaVerticalAlignMapper.java45
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/stylemapper/fo/BackgroundColorMapper.java50
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/stylemapper/fo/BorderRightMapper.java55
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/stylemapper/fo/ColorMapper.java52
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/stylemapper/fo/FontSizeMapper.java46
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/stylemapper/fo/FontStyleMapper.java46
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/stylemapper/fo/FontWeightMapper.java46
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/stylemapper/fo/TextAlignMapper.java47
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/stylemapper/style/FontFamilyGenericMapper.java65
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/stylemapper/style/FontFamilyMapper.java65
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/stylemapper/style/FontNameMapper.java49
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/stylemapper/style/FontPitchMapper.java43
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/stylemapper/style/FontReliefMapper.java46
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/stylemapper/style/TextEmphasizeMapper.java45
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/stylemapper/style/TextUnderlineColorMapper.java54
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/stylemapper/style/TextUnderlineStyleMapper.java49
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/stylemapper/style/TextUnderlineWidthMapper.java76
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/stylemapper/style/TextUnderlineWordMode.java43
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/stylemapper/style/VerticalAlignMapper.java47
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/stylemapper/table/ColumnWidthMapper.java53
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/stylemapper/table/RowHeightMapper.java53
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/table/CoveredCellReadHandler.java54
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/table/TableCellReadHandler.java46
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/table/TableColumnReadHandler.java53
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/table/TableColumnsReadHandler.java103
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/table/TableReadHandler.java145
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/table/TableRowReadHandler.java126
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/table/TableRowsReadHandler.java102
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/text/NoCDATATextContentReadHandler.java168
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/text/TextContentReadHandler.java70
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/parser/xlink/XLinkReadHandler.java97
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/smil.css5
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/star-office.css5
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/star-report.css73
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/star-rpt.css5
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/styles/LengthCalculator.java110
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/styles/StyleMapper.java96
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/styles/StyleMapperKey.java118
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/styles/StyleMapperXmlFactoryModule.java70
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/styles/StyleMapperXmlResourceFactory.java56
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/styles/StyleMappingDocumentReadHandler.java107
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/styles/StyleMappingReadHandler.java101
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/styles/StyleMappingRule.java64
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/styles/stylemapper.xml168
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/styles/stylemapper.xsd91
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/svg.css5
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/xsl-fo.css5
-rw-r--r--reportbuilder/java/com/sun/star/report/util/DefaultJobProperties.java80
-rw-r--r--reportbuilder/java/com/sun/star/report/util/DefaultParameterMap.java123
-rw-r--r--reportbuilder/java/com/sun/star/report/util/DefaultReportJobDefinition.java116
-rw-r--r--reportbuilder/java/com/sun/star/report/util/ManifestWriter.java123
-rw-r--r--reportbuilder/java/com/sun/star/report/util/ReportUtil.java46
-rw-r--r--reportbuilder/java/com/sun/star/report/util/makefile.mk45
-rw-r--r--reportbuilder/java/jfreereport.properties30
-rw-r--r--reportbuilder/java/libformula.properties43
-rw-r--r--reportbuilder/java/loader.properties31
-rw-r--r--reportbuilder/java/makefile.mk45
-rw-r--r--reportbuilder/license/THIRDPARTYREADMELICENSE.html768
-rw-r--r--reportbuilder/license/readme_en-US.html30
-rw-r--r--reportbuilder/license/readme_en-US.txt34
-rw-r--r--reportbuilder/prj/build.lst16
-rw-r--r--reportbuilder/prj/d.lst12
-rw-r--r--reportbuilder/prj/rpt.xml14
-rw-r--r--reportbuilder/registry/data/org/openoffice/Office/Accelerators.xcu156
-rw-r--r--reportbuilder/registry/data/org/openoffice/Office/DataAccess.xcu44
-rw-r--r--reportbuilder/registry/data/org/openoffice/Office/Embedding.xcu71
-rw-r--r--reportbuilder/registry/data/org/openoffice/Office/ExtendedColorScheme.xcu195
-rw-r--r--reportbuilder/registry/data/org/openoffice/Office/Paths.xcu39
-rw-r--r--reportbuilder/registry/data/org/openoffice/Office/ReportDesign.xcu34
-rw-r--r--reportbuilder/registry/data/org/openoffice/Office/UI/Controller.xcu167
-rw-r--r--reportbuilder/registry/data/org/openoffice/Office/UI/DbReportWindowState.xcu154
-rw-r--r--reportbuilder/registry/data/org/openoffice/Office/UI/ReportCommands.xcu403
-rw-r--r--reportbuilder/registry/data/org/openoffice/Office/UI/makefile.mk48
-rw-r--r--reportbuilder/registry/data/org/openoffice/Office/makefile.mk68
-rw-r--r--reportbuilder/registry/data/org/openoffice/Setup.xcu54
-rw-r--r--reportbuilder/registry/data/org/openoffice/TypeDetection/Filter.xcu76
-rw-r--r--reportbuilder/registry/data/org/openoffice/TypeDetection/Types.xcu81
-rw-r--r--reportbuilder/registry/data/org/openoffice/TypeDetection/makefile.mk55
-rw-r--r--reportbuilder/registry/data/org/openoffice/makefile.mk50
-rw-r--r--reportbuilder/registry/schema/org/openoffice/Office/ReportDesign.xcs71
-rw-r--r--reportbuilder/registry/schema/org/openoffice/Office/UI/DbReportWindowState.xcs48
-rw-r--r--reportbuilder/registry/schema/org/openoffice/Office/UI/ReportCommands.xcs53
-rw-r--r--reportbuilder/registry/schema/org/openoffice/Office/UI/makefile.mk58
-rw-r--r--reportbuilder/registry/schema/org/openoffice/Office/makefile.mk46
-rw-r--r--reportbuilder/template/delzip0
-rw-r--r--reportbuilder/template/en-US/wizard/report/default.otrbin0 -> 2561 bytes-rw-r--r--reportbuilder/template/en-US/wizard/report/makefile.mk69
-rw-r--r--reportbuilder/template/makefile.mk122
-rw-r--r--reportbuilder/template/manifest.xml3
-rw-r--r--reportbuilder/template/post.xml8
-rw-r--r--reportbuilder/template/pre.xml6
-rw-r--r--reportbuilder/template/registry/data/org/openoffice/Office/Paths.xcu40
-rw-r--r--reportbuilder/template/registry/data/org/openoffice/Office/makefile.mk49
-rw-r--r--reportbuilder/template/wizard/report/default.odr1
-rw-r--r--reportbuilder/template/wizard/report/finance.odr1
-rw-r--r--reportbuilder/template/wizard/report/finance_2.odr1
-rw-r--r--reportbuilder/template/wizard/report/makefile.mk69
-rw-r--r--reportbuilder/template/wizard/report/yellow.odr1
-rwxr-xr-xreportbuilder/util/component.txt1
-rw-r--r--reportbuilder/util/delzip1
-rw-r--r--reportbuilder/util/description.xml30
-rwxr-xr-xreportbuilder/util/makefile.mk155
-rwxr-xr-xreportbuilder/util/makefile.pmk66
-rw-r--r--reportbuilder/util/manifest.xml5
-rw-r--r--reportbuilder/util/target.pmk34
-rw-r--r--reportdesign/images/em42.pngbin0 -> 1965 bytes-rw-r--r--reportdesign/images/em42_hc.pngbin0 -> 1160 bytes-rw-r--r--reportdesign/inc/ModuleHelper.hxx100
-rw-r--r--reportdesign/inc/PropertyForward.hxx92
-rw-r--r--reportdesign/inc/ReportDefinition.hxx395
-rw-r--r--reportdesign/inc/ReportHelperDefines.hxx195
-rw-r--r--reportdesign/inc/ReportVisitor.hxx67
-rw-r--r--reportdesign/inc/RptDef.hxx120
-rw-r--r--reportdesign/inc/RptModel.hxx103
-rw-r--r--reportdesign/inc/RptObject.hxx286
-rw-r--r--reportdesign/inc/RptPage.hxx98
-rw-r--r--reportdesign/inc/RptResId.hrc298
-rw-r--r--reportdesign/inc/UndoActions.hxx300
-rw-r--r--reportdesign/inc/UndoEnv.hxx150
-rw-r--r--reportdesign/inc/conditionalexpression.hxx123
-rw-r--r--reportdesign/inc/dllapi.h41
-rw-r--r--reportdesign/inc/helpids.hrc122
-rw-r--r--reportdesign/inc/makefile.mk47
-rw-r--r--reportdesign/inc/pch/precompiled_reportdesign.cxx29
-rw-r--r--reportdesign/inc/pch/precompiled_reportdesign.hxx45
-rw-r--r--reportdesign/inc/reportformula.hxx134
-rw-r--r--reportdesign/inc/rptui_slotid.hrc212
-rw-r--r--reportdesign/prj/build.lst18
-rw-r--r--reportdesign/prj/d.lst24
-rw-r--r--reportdesign/prj/rpt.xml14
-rw-r--r--reportdesign/qa/complex/reportdesign/FileURL.java62
-rwxr-xr-xreportdesign/qa/complex/reportdesign/ReportDesignerTest.java652
-rw-r--r--reportdesign/qa/complex/reportdesign/TestDocument.java41
-rwxr-xr-xreportdesign/qa/complex/reportdesign/makefile.mk62
-rw-r--r--reportdesign/qa/complex/reportdesign/mysql-connector-exists.pl9
-rwxr-xr-xreportdesign/qa/complex/reportdesign/runner.props22
-rwxr-xr-xreportdesign/qa/complex/reportdesign/test_documents/RPTCalcTests.odbbin0 -> 6715 bytes-rwxr-xr-xreportdesign/qa/complex/reportdesign/test_documents/RPTWriterTests.odbbin0 -> 5762 bytes-rw-r--r--reportdesign/source/core/api/FixedLine.cxx585
-rw-r--r--reportdesign/source/core/api/FixedText.cxx347
-rw-r--r--reportdesign/source/core/api/FormatCondition.cxx166
-rw-r--r--reportdesign/source/core/api/FormattedField.cxx387
-rw-r--r--reportdesign/source/core/api/Function.cxx222
-rw-r--r--reportdesign/source/core/api/Functions.cxx204
-rw-r--r--reportdesign/source/core/api/Group.cxx357
-rw-r--r--reportdesign/source/core/api/Groups.cxx217
-rw-r--r--reportdesign/source/core/api/ImageControl.cxx505
-rw-r--r--reportdesign/source/core/api/ReportComponent.cxx153
-rw-r--r--reportdesign/source/core/api/ReportControlModel.cxx158
-rw-r--r--reportdesign/source/core/api/ReportDefinition.cxx2939
-rw-r--r--reportdesign/source/core/api/ReportEngineJFree.cxx426
-rw-r--r--reportdesign/source/core/api/ReportVisitor.cxx93
-rw-r--r--reportdesign/source/core/api/Section.cxx723
-rw-r--r--reportdesign/source/core/api/Shape.cxx522
-rw-r--r--reportdesign/source/core/api/Tools.cxx77
-rw-r--r--reportdesign/source/core/api/makefile.mk63
-rw-r--r--reportdesign/source/core/api/services.cxx93
-rw-r--r--reportdesign/source/core/inc/FixedLine.hxx175
-rw-r--r--reportdesign/source/core/inc/FixedText.hxx160
-rw-r--r--reportdesign/source/core/inc/FormatCondition.hxx117
-rw-r--r--reportdesign/source/core/inc/FormattedField.hxx167
-rw-r--r--reportdesign/source/core/inc/Function.hxx129
-rw-r--r--reportdesign/source/core/inc/Functions.hxx105
-rw-r--r--reportdesign/source/core/inc/Group.hxx163
-rw-r--r--reportdesign/source/core/inc/Groups.hxx108
-rw-r--r--reportdesign/source/core/inc/ImageControl.hxx164
-rw-r--r--reportdesign/source/core/inc/ReportComponent.hxx88
-rw-r--r--reportdesign/source/core/inc/ReportControlModel.hxx137
-rw-r--r--reportdesign/source/core/inc/ReportDrawPage.hxx50
-rw-r--r--reportdesign/source/core/inc/ReportEngineJFree.hxx138
-rw-r--r--reportdesign/source/core/inc/ReportHelperImpl.hxx1291
-rw-r--r--reportdesign/source/core/inc/ReportUndoFactory.hxx85
-rw-r--r--reportdesign/source/core/inc/RptObjectListener.hxx63
-rw-r--r--reportdesign/source/core/inc/Section.hxx208
-rw-r--r--reportdesign/source/core/inc/Shape.hxx182
-rw-r--r--reportdesign/source/core/inc/Tools.hxx183
-rw-r--r--reportdesign/source/core/inc/conditionupdater.hxx75
-rw-r--r--reportdesign/source/core/inc/core_resource.hrc59
-rw-r--r--reportdesign/source/core/inc/core_resource.hxx78
-rw-r--r--reportdesign/source/core/misc/conditionalexpression.cxx204
-rw-r--r--reportdesign/source/core/misc/conditionupdater.cxx135
-rw-r--r--reportdesign/source/core/misc/makefile.mk46
-rw-r--r--reportdesign/source/core/misc/reportformula.cxx183
-rw-r--r--reportdesign/source/core/resource/core_resource.cxx90
-rw-r--r--reportdesign/source/core/resource/makefile.mk48
-rw-r--r--reportdesign/source/core/resource/strings.src95
-rw-r--r--reportdesign/source/core/sdr/ModuleHelper.cxx141
-rw-r--r--reportdesign/source/core/sdr/PropertyForward.cxx205
-rw-r--r--reportdesign/source/core/sdr/ReportDrawPage.cxx156
-rw-r--r--reportdesign/source/core/sdr/ReportUndoFactory.cxx181
-rw-r--r--reportdesign/source/core/sdr/RptModel.cxx233
-rw-r--r--reportdesign/source/core/sdr/RptObject.cxx1256
-rw-r--r--reportdesign/source/core/sdr/RptObjectListener.cxx95
-rw-r--r--reportdesign/source/core/sdr/RptPage.cxx251
-rw-r--r--reportdesign/source/core/sdr/UndoActions.cxx449
-rw-r--r--reportdesign/source/core/sdr/UndoEnv.cxx629
-rw-r--r--reportdesign/source/core/sdr/formatnormalizer.cxx279
-rw-r--r--reportdesign/source/core/sdr/formatnormalizer.hxx94
-rw-r--r--reportdesign/source/core/sdr/makefile.mk52
-rw-r--r--reportdesign/source/filter/xml/dbloader2.cxx125
-rw-r--r--reportdesign/source/filter/xml/dbloader2.hxx102
-rw-r--r--reportdesign/source/filter/xml/makefile.mk70
-rw-r--r--reportdesign/source/filter/xml/xmlAutoStyle.cxx99
-rw-r--r--reportdesign/source/filter/xml/xmlAutoStyle.hxx61
-rw-r--r--reportdesign/source/filter/xml/xmlCell.cxx293
-rw-r--r--reportdesign/source/filter/xml/xmlCell.hxx74
-rw-r--r--reportdesign/source/filter/xml/xmlColumn.cxx190
-rw-r--r--reportdesign/source/filter/xml/xmlColumn.hxx64
-rw-r--r--reportdesign/source/filter/xml/xmlComponent.cxx117
-rw-r--r--reportdesign/source/filter/xml/xmlComponent.hxx60
-rw-r--r--reportdesign/source/filter/xml/xmlCondPrtExpr.cxx103
-rw-r--r--reportdesign/source/filter/xml/xmlCondPrtExpr.hxx58
-rw-r--r--reportdesign/source/filter/xml/xmlControlProperty.cxx360
-rw-r--r--reportdesign/source/filter/xml/xmlControlProperty.hxx86
-rw-r--r--reportdesign/source/filter/xml/xmlEnums.hxx179
-rw-r--r--reportdesign/source/filter/xml/xmlExport.cxx1672
-rw-r--r--reportdesign/source/filter/xml/xmlExport.hxx281
-rw-r--r--reportdesign/source/filter/xml/xmlExportDocumentHandler.cxx455
-rw-r--r--reportdesign/source/filter/xml/xmlExportDocumentHandler.hxx105
-rw-r--r--reportdesign/source/filter/xml/xmlFixedContent.cxx241
-rw-r--r--reportdesign/source/filter/xml/xmlFixedContent.hxx71
-rw-r--r--reportdesign/source/filter/xml/xmlFormatCondition.cxx118
-rw-r--r--reportdesign/source/filter/xml/xmlFormatCondition.hxx57
-rw-r--r--reportdesign/source/filter/xml/xmlFormattedField.cxx105
-rw-r--r--reportdesign/source/filter/xml/xmlFormattedField.hxx55
-rw-r--r--reportdesign/source/filter/xml/xmlFunction.cxx141
-rw-r--r--reportdesign/source/filter/xml/xmlFunction.hxx67
-rw-r--r--reportdesign/source/filter/xml/xmlGroup.cxx279
-rw-r--r--reportdesign/source/filter/xml/xmlGroup.hxx66
-rw-r--r--reportdesign/source/filter/xml/xmlHelper.cxx418
-rw-r--r--reportdesign/source/filter/xml/xmlHelper.hxx93
-rw-r--r--reportdesign/source/filter/xml/xmlImage.cxx130
-rw-r--r--reportdesign/source/filter/xml/xmlImage.hxx55
-rw-r--r--reportdesign/source/filter/xml/xmlImportDocumentHandler.cxx397
-rw-r--r--reportdesign/source/filter/xml/xmlImportDocumentHandler.hxx105
-rw-r--r--reportdesign/source/filter/xml/xmlMasterFields.cxx121
-rw-r--r--reportdesign/source/filter/xml/xmlMasterFields.hxx57
-rw-r--r--reportdesign/source/filter/xml/xmlPropertyHandler.cxx57
-rw-r--r--reportdesign/source/filter/xml/xmlPropertyHandler.hxx49
-rw-r--r--reportdesign/source/filter/xml/xmlReport.cxx236
-rw-r--r--reportdesign/source/filter/xml/xmlReport.hxx70
-rw-r--r--reportdesign/source/filter/xml/xmlReportElement.cxx143
-rw-r--r--reportdesign/source/filter/xml/xmlReportElement.hxx58
-rw-r--r--reportdesign/source/filter/xml/xmlReportElementBase.cxx115
-rw-r--r--reportdesign/source/filter/xml/xmlReportElementBase.hxx76
-rw-r--r--reportdesign/source/filter/xml/xmlRow.cxx184
-rw-r--r--reportdesign/source/filter/xml/xmlRow.hxx63
-rw-r--r--reportdesign/source/filter/xml/xmlSection.cxx158
-rw-r--r--reportdesign/source/filter/xml/xmlSection.hxx64
-rw-r--r--reportdesign/source/filter/xml/xmlStyleImport.cxx459
-rw-r--r--reportdesign/source/filter/xml/xmlStyleImport.hxx166
-rw-r--r--reportdesign/source/filter/xml/xmlSubDocument.cxx164
-rw-r--r--reportdesign/source/filter/xml/xmlSubDocument.hxx71
-rw-r--r--reportdesign/source/filter/xml/xmlTable.cxx323
-rw-r--r--reportdesign/source/filter/xml/xmlTable.hxx99
-rw-r--r--reportdesign/source/filter/xml/xmlfilter.cxx1137
-rw-r--r--reportdesign/source/filter/xml/xmlfilter.hxx247
-rw-r--r--reportdesign/source/filter/xml/xmlservices.cxx94
-rw-r--r--reportdesign/source/inc/GroupProperties.hxx54
-rw-r--r--reportdesign/source/inc/constasciistring.hxx61
-rw-r--r--reportdesign/source/inc/corestrings.hrc41
-rw-r--r--reportdesign/source/inc/stringconstants.hrc288
-rw-r--r--reportdesign/source/inc/uistrings.hrc78
-rw-r--r--reportdesign/source/inc/xmlstrings.hrc56
-rw-r--r--reportdesign/source/shared/corestrings.cxx35
-rw-r--r--reportdesign/source/shared/makefile.mk67
-rw-r--r--reportdesign/source/shared/stringconstants.cxx276
-rw-r--r--reportdesign/source/shared/uistrings.cxx69
-rw-r--r--reportdesign/source/shared/xmlstrings.cxx45
-rw-r--r--reportdesign/source/ui/dlg/AddField.cxx574
-rw-r--r--reportdesign/source/ui/dlg/CondFormat.cxx625
-rw-r--r--reportdesign/source/ui/dlg/CondFormat.hrc87
-rw-r--r--reportdesign/source/ui/dlg/CondFormat.src445
-rw-r--r--reportdesign/source/ui/dlg/Condition.cxx740
-rw-r--r--reportdesign/source/ui/dlg/Condition.hxx198
-rw-r--r--reportdesign/source/ui/dlg/DateTime.cxx273
-rw-r--r--reportdesign/source/ui/dlg/DateTime.hrc55
-rw-r--r--reportdesign/source/ui/dlg/DateTime.src132
-rw-r--r--reportdesign/source/ui/dlg/Formula.cxx273
-rw-r--r--reportdesign/source/ui/dlg/GroupExchange.cxx76
-rw-r--r--reportdesign/source/ui/dlg/GroupExchange.hxx53
-rw-r--r--reportdesign/source/ui/dlg/GroupsSorting.cxx1562
-rw-r--r--reportdesign/source/ui/dlg/GroupsSorting.hrc79
-rw-r--r--reportdesign/source/ui/dlg/GroupsSorting.src502
-rw-r--r--reportdesign/source/ui/dlg/Navigator.cxx986
-rw-r--r--reportdesign/source/ui/dlg/Navigator.src182
-rw-r--r--reportdesign/source/ui/dlg/PageNumber.cxx162
-rw-r--r--reportdesign/source/ui/dlg/PageNumber.hrc59
-rw-r--r--reportdesign/source/ui/dlg/PageNumber.src170
-rw-r--r--reportdesign/source/ui/dlg/dlgpage.cxx93
-rw-r--r--reportdesign/source/ui/dlg/dlgpage.src304
-rw-r--r--reportdesign/source/ui/dlg/makefile.mk77
-rw-r--r--reportdesign/source/ui/inc/AddField.hxx143
-rw-r--r--reportdesign/source/ui/inc/ColorChanger.hxx70
-rw-r--r--reportdesign/source/ui/inc/ColorListener.hxx84
-rw-r--r--reportdesign/source/ui/inc/ColumnInfo.hxx57
-rw-r--r--reportdesign/source/ui/inc/CondFormat.hxx186
-rw-r--r--reportdesign/source/ui/inc/DataProviderHandler.hxx129
-rw-r--r--reportdesign/source/ui/inc/DateTime.hxx109
-rw-r--r--reportdesign/source/ui/inc/DefaultInspection.hxx111
-rw-r--r--reportdesign/source/ui/inc/DesignView.hxx298
-rw-r--r--reportdesign/source/ui/inc/EndMarker.hxx53
-rw-r--r--reportdesign/source/ui/inc/FixedTextColor.hxx73
-rw-r--r--reportdesign/source/ui/inc/FormattedFieldBeautifier.hxx70
-rw-r--r--reportdesign/source/ui/inc/Formula.hxx112
-rw-r--r--reportdesign/source/ui/inc/FunctionHelper.hxx112
-rw-r--r--reportdesign/source/ui/inc/GeometryHandler.hxx321
-rw-r--r--reportdesign/source/ui/inc/GroupsSorting.hxx204
-rw-r--r--reportdesign/source/ui/inc/IReportControllerObserver.hxx54
-rw-r--r--reportdesign/source/ui/inc/InsertFunctions.hxx46
-rw-r--r--reportdesign/source/ui/inc/MarkedSection.hxx60
-rw-r--r--reportdesign/source/ui/inc/Navigator.hxx55
-rw-r--r--reportdesign/source/ui/inc/PageNumber.hxx88
-rw-r--r--reportdesign/source/ui/inc/ReportComponentHandler.hxx115
-rw-r--r--reportdesign/source/ui/inc/ReportController.hxx487
-rw-r--r--reportdesign/source/ui/inc/ReportControllerObserver.hxx132
-rw-r--r--reportdesign/source/ui/inc/ReportDefines.hxx39
-rw-r--r--reportdesign/source/ui/inc/ReportRuler.hxx63
-rw-r--r--reportdesign/source/ui/inc/ReportSection.hxx173
-rw-r--r--reportdesign/source/ui/inc/ReportWindow.hxx238
-rw-r--r--reportdesign/source/ui/inc/ScrollHelper.hxx229
-rw-r--r--reportdesign/source/ui/inc/SectionView.hxx77
-rw-r--r--reportdesign/source/ui/inc/SectionWindow.hxx140
-rw-r--r--reportdesign/source/ui/inc/StartMarker.hxx88
-rw-r--r--reportdesign/source/ui/inc/UITools.hxx189
-rw-r--r--reportdesign/source/ui/inc/Undo.hxx153
-rw-r--r--reportdesign/source/ui/inc/ViewsWindow.hxx361
-rw-r--r--reportdesign/source/ui/inc/dlgedclip.hxx86
-rw-r--r--reportdesign/source/ui/inc/dlgedfac.hxx50
-rw-r--r--reportdesign/source/ui/inc/dlgedfunc.hxx160
-rw-r--r--reportdesign/source/ui/inc/dlgpage.hxx54
-rw-r--r--reportdesign/source/ui/inc/metadata.hxx162
-rw-r--r--reportdesign/source/ui/inc/propbrw.hxx118
-rw-r--r--reportdesign/source/ui/inc/statusbarcontroller.hxx92
-rw-r--r--reportdesign/source/ui/inc/toolboxcontroller.hxx91
-rw-r--r--reportdesign/source/ui/inspection/DataProviderHandler.cxx565
-rw-r--r--reportdesign/source/ui/inspection/DefaultInspection.cxx284
-rw-r--r--reportdesign/source/ui/inspection/GeometryHandler.cxx2246
-rw-r--r--reportdesign/source/ui/inspection/ReportComponentHandler.cxx232
-rw-r--r--reportdesign/source/ui/inspection/inspection.src394
-rw-r--r--reportdesign/source/ui/inspection/makefile.mk53
-rw-r--r--reportdesign/source/ui/inspection/metadata.cxx339
-rw-r--r--reportdesign/source/ui/misc/ColorListener.cxx97
-rw-r--r--reportdesign/source/ui/misc/FunctionHelper.cxx257
-rw-r--r--reportdesign/source/ui/misc/UITools.cxx1084
-rw-r--r--reportdesign/source/ui/misc/Undo.cxx416
-rw-r--r--reportdesign/source/ui/misc/makefile.mk62
-rw-r--r--reportdesign/source/ui/misc/rptuiservices.cxx82
-rw-r--r--reportdesign/source/ui/misc/statusbarcontroller.cxx230
-rw-r--r--reportdesign/source/ui/misc/toolboxcontroller.cxx360
-rw-r--r--reportdesign/source/ui/report/DesignView.cxx787
-rw-r--r--reportdesign/source/ui/report/EndMarker.cxx104
-rw-r--r--reportdesign/source/ui/report/FixedTextColor.cxx283
-rw-r--r--reportdesign/source/ui/report/FormattedFieldBeautifier.cxx203
-rw-r--r--reportdesign/source/ui/report/ReportController.cxx4402
-rw-r--r--reportdesign/source/ui/report/ReportControllerObserver.cxx462
-rw-r--r--reportdesign/source/ui/report/ReportRuler.cxx63
-rw-r--r--reportdesign/source/ui/report/ReportSection.cxx878
-rw-r--r--reportdesign/source/ui/report/ReportWindow.cxx444
-rw-r--r--reportdesign/source/ui/report/ScrollHelper.cxx416
-rw-r--r--reportdesign/source/ui/report/SectionView.cxx274
-rw-r--r--reportdesign/source/ui/report/SectionWindow.cxx418
-rw-r--r--reportdesign/source/ui/report/StartMarker.cxx324
-rw-r--r--reportdesign/source/ui/report/ViewsWindow.cxx1869
-rw-r--r--reportdesign/source/ui/report/dlgedclip.cxx107
-rw-r--r--reportdesign/source/ui/report/dlgedfac.cxx113
-rw-r--r--reportdesign/source/ui/report/dlgedfunc.cxx1119
-rw-r--r--reportdesign/source/ui/report/makefile.mk72
-rw-r--r--reportdesign/source/ui/report/propbrw.cxx619
-rw-r--r--reportdesign/source/ui/report/report.src682
-rw-r--r--reportdesign/uiconfig/dbreport/menubar/menubar.xml422
-rw-r--r--reportdesign/uiconfig/dbreport/statusbar/statusbar.xml6
-rw-r--r--reportdesign/uiconfig/dbreport/toolbar/Formatting.xml23
-rw-r--r--reportdesign/uiconfig/dbreport/toolbar/alignmentbar.xml11
-rw-r--r--reportdesign/uiconfig/dbreport/toolbar/arrowshapes.xml34
-rw-r--r--reportdesign/uiconfig/dbreport/toolbar/basicshapes.xml29
-rw-r--r--reportdesign/uiconfig/dbreport/toolbar/calloutshapes.xml11
-rw-r--r--reportdesign/uiconfig/dbreport/toolbar/drawbar.xml10
-rw-r--r--reportdesign/uiconfig/dbreport/toolbar/flowchartshapes.xml36
-rw-r--r--reportdesign/uiconfig/dbreport/toolbar/reportcontrols.xml19
-rw-r--r--reportdesign/uiconfig/dbreport/toolbar/resizebar.xml9
-rw-r--r--reportdesign/uiconfig/dbreport/toolbar/sectionalignmentbar.xml9
-rwxr-xr-xreportdesign/uiconfig/dbreport/toolbar/sectionshrinkbar.xml7
-rw-r--r--reportdesign/uiconfig/dbreport/toolbar/starshapes.xml17
-rw-r--r--reportdesign/uiconfig/dbreport/toolbar/symbolshapes.xml24
-rw-r--r--reportdesign/uiconfig/dbreport/toolbar/toolbar.xml22
-rw-r--r--reportdesign/util/dll.pmk31
-rw-r--r--reportdesign/util/hidother.src175
-rw-r--r--reportdesign/util/makefile.mk253
-rw-r--r--reportdesign/util/rpt.component58
-rw-r--r--reportdesign/util/rptui.component52
-rw-r--r--reportdesign/util/rptxml.component73
-rwxr-xr-xrhino/README12
-rwxr-xr-xrhino/makefile.mk68
-rw-r--r--rhino/prj/build.lst3
-rw-r--r--rhino/prj/d.lst1
-rw-r--r--rhino/rhino1_5R5-find_swing.patch20
-rw-r--r--rhino/rhino1_5R5.patch1205
-rw-r--r--ridljar/com/makefile.mk64
-rw-r--r--ridljar/com/sun/star/lib/uno/typedesc/FieldDescription.java76
-rw-r--r--ridljar/com/sun/star/lib/uno/typedesc/MemberDescriptionHelper.java64
-rw-r--r--ridljar/com/sun/star/lib/uno/typedesc/MethodDescription.java111
-rw-r--r--ridljar/com/sun/star/lib/uno/typedesc/TypeDescription.java721
-rw-r--r--ridljar/com/sun/star/lib/uno/typeinfo/AttributeTypeInfo.java95
-rw-r--r--ridljar/com/sun/star/lib/uno/typeinfo/ConstantTypeInfo.java40
-rw-r--r--ridljar/com/sun/star/lib/uno/typeinfo/MemberTypeInfo.java105
-rw-r--r--ridljar/com/sun/star/lib/uno/typeinfo/MethodTypeInfo.java98
-rw-r--r--ridljar/com/sun/star/lib/uno/typeinfo/ParameterTypeInfo.java114
-rw-r--r--ridljar/com/sun/star/lib/uno/typeinfo/TypeInfo.java85
-rw-r--r--ridljar/com/sun/star/lib/util/DisposeListener.java43
-rw-r--r--ridljar/com/sun/star/lib/util/DisposeNotifier.java53
-rw-r--r--ridljar/com/sun/star/lib/util/WeakMap.java311
-rw-r--r--ridljar/com/sun/star/uno/Any.java140
-rw-r--r--ridljar/com/sun/star/uno/Enum.java61
-rw-r--r--ridljar/com/sun/star/uno/IBridge.java99
-rw-r--r--ridljar/com/sun/star/uno/IEnvironment.java152
-rw-r--r--ridljar/com/sun/star/uno/IFieldDescription.java55
-rw-r--r--ridljar/com/sun/star/uno/IMapping.java49
-rw-r--r--ridljar/com/sun/star/uno/IMemberDescription.java75
-rw-r--r--ridljar/com/sun/star/uno/IMethodDescription.java88
-rw-r--r--ridljar/com/sun/star/uno/IQueryInterface.java69
-rw-r--r--ridljar/com/sun/star/uno/ITypeDescription.java188
-rw-r--r--ridljar/com/sun/star/uno/Type.java652
-rw-r--r--ridljar/com/sun/star/uno/Union.java52
-rw-r--r--ridljar/com/sun/star/uno/UnoRuntime.java696
-rw-r--r--ridljar/javamaker/makefile.mk46
-rw-r--r--ridljar/prj/build.lst6
-rw-r--r--ridljar/prj/d.lst4
-rw-r--r--ridljar/source/unoloader/com/sun/star/lib/unoloader/UnoClassLoader.java214
-rw-r--r--ridljar/source/unoloader/com/sun/star/lib/unoloader/UnoLoader.java94
-rw-r--r--ridljar/source/unoloader/com/sun/star/lib/unoloader/makefile.mk60
-rw-r--r--ridljar/source/unoloader/com/sun/star/lib/unoloader/manifest1
-rw-r--r--ridljar/source/unoloader/delzip0
-rw-r--r--ridljar/source/unoloader/makefile.mk39
-rw-r--r--ridljar/test/com/sun/star/lib/uno/typedesc/TypeDescription_Test.java310
-rw-r--r--ridljar/test/com/sun/star/lib/uno/typedesc/makefile.mk35
-rw-r--r--ridljar/test/com/sun/star/lib/util/WeakMap_Test.java86
-rw-r--r--ridljar/test/com/sun/star/lib/util/makefile.mk36
-rw-r--r--ridljar/test/com/sun/star/uno/Any_Test.java58
-rw-r--r--ridljar/test/com/sun/star/uno/Type_Test.java111
-rw-r--r--ridljar/test/com/sun/star/uno/UnoRuntime_Test.java216
-rw-r--r--ridljar/test/com/sun/star/uno/makefile.mk38
-rw-r--r--ridljar/test/makefile.mk35
-rw-r--r--ridljar/util/delzip0
-rw-r--r--ridljar/util/makefile.mk52
-rw-r--r--rsc/doku/feinkonz.43/rsc.doc4096
-rw-r--r--rsc/doku/feinkonz.43/rscerror.doc2119
-rw-r--r--rsc/doku/feinkonz.43/rscinst.doc4138
-rw-r--r--rsc/doku/schriftw.16/change.doc1105
-rw-r--r--rsc/inc/pch/precompiled_rsc.cxx29
-rw-r--r--rsc/inc/pch/precompiled_rsc.hxx32
-rw-r--r--rsc/inc/rscall.h112
-rw-r--r--rsc/inc/rscarray.hxx136
-rw-r--r--rsc/inc/rscclass.hxx139
-rw-r--r--rsc/inc/rscclobj.hxx112
-rw-r--r--rsc/inc/rscconst.hxx110
-rw-r--r--rsc/inc/rsccont.hxx153
-rw-r--r--rsc/inc/rscdb.hxx360
-rw-r--r--rsc/inc/rscdef.hxx274
-rw-r--r--rsc/inc/rscerror.h162
-rw-r--r--rsc/inc/rscflag.hxx106
-rw-r--r--rsc/inc/rschash.hxx54
-rw-r--r--rsc/inc/rscinst.hxx244
-rw-r--r--rsc/inc/rsckey.hxx61
-rw-r--r--rsc/inc/rsclst.hxx67
-rw-r--r--rsc/inc/rscmgr.hxx80
-rw-r--r--rsc/inc/rscpar.hxx92
-rw-r--r--rsc/inc/rscrange.hxx209
-rw-r--r--rsc/inc/rscrsc.hxx138
-rw-r--r--rsc/inc/rscsfx.hxx62
-rw-r--r--rsc/inc/rscstr.hxx79
-rw-r--r--rsc/inc/rsctools.hxx220
-rw-r--r--rsc/inc/rsctop.hxx247
-rw-r--r--rsc/inc/rsctree.hxx118
-rw-r--r--rsc/inc/vclrsc.hxx347
-rw-r--r--rsc/prj/build.lst9
-rw-r--r--rsc/prj/d.lst9
-rw-r--r--rsc/source/misc/makefile.mk45
-rw-r--r--rsc/source/misc/rscdbl.cxx119
-rw-r--r--rsc/source/misc/rsclst.cxx51
-rw-r--r--rsc/source/parser/erscerr.cxx514
-rw-r--r--rsc/source/parser/makefile.mk67
-rw-r--r--rsc/source/parser/rscdb.cxx1115
-rw-r--r--rsc/source/parser/rscibas.cxx711
-rw-r--r--rsc/source/parser/rscicpx.cxx2389
-rw-r--r--rsc/source/parser/rscinit.cxx943
-rw-r--r--rsc/source/parser/rsckey.cxx214
-rwxr-xr-xrsc/source/parser/rsclex.cxx447
-rw-r--r--rsc/source/parser/rsclex.hxx128
-rw-r--r--rsc/source/parser/rscpar.cxx239
-rw-r--r--rsc/source/parser/rscyacc.cxx267
-rw-r--r--rsc/source/parser/rscyacc.y1118
-rw-r--r--rsc/source/prj/gui.cxx126
-rw-r--r--rsc/source/prj/makefile.mk79
-rw-r--r--rsc/source/prj/start.cxx483
-rw-r--r--rsc/source/res/makefile.mk61
-rw-r--r--rsc/source/res/rscall.cxx64
-rw-r--r--rsc/source/res/rscarray.cxx728
-rw-r--r--rsc/source/res/rscclass.cxx1261
-rw-r--r--rsc/source/res/rscclobj.cxx227
-rw-r--r--rsc/source/res/rscconst.cxx415
-rw-r--r--rsc/source/res/rsccont.cxx1179
-rw-r--r--rsc/source/res/rscflag.cxx490
-rw-r--r--rsc/source/res/rscmgr.cxx717
-rw-r--r--rsc/source/res/rscrange.cxx850
-rw-r--r--rsc/source/res/rscstr.cxx401
-rw-r--r--rsc/source/res/rsctop.cxx994
-rw-r--r--rsc/source/rsc/makefile.mk41
-rw-r--r--rsc/source/rsc/rsc.cxx1384
-rw-r--r--rsc/source/rscpp/cpp.h415
-rw-r--r--rsc/source/rscpp/cpp1.c616
-rw-r--r--rsc/source/rscpp/cpp2.c625
-rw-r--r--rsc/source/rscpp/cpp3.c601
-rw-r--r--rsc/source/rscpp/cpp4.c635
-rw-r--r--rsc/source/rscpp/cpp5.c929
-rw-r--r--rsc/source/rscpp/cpp6.c1148
-rw-r--r--rsc/source/rscpp/cppdef.h346
-rw-r--r--rsc/source/rscpp/cppmain.c45
-rw-r--r--rsc/source/rscpp/makefile.mk92
-rw-r--r--rsc/source/tools/makefile.mk45
-rw-r--r--rsc/source/tools/rscchar.cxx196
-rw-r--r--rsc/source/tools/rscdef.cxx1401
-rw-r--r--rsc/source/tools/rschash.cxx68
-rw-r--r--rsc/source/tools/rsctools.cxx488
-rw-r--r--rsc/source/tools/rsctree.cxx546
-rw-r--r--sal/cpprt/makefile.mk71
-rw-r--r--sal/cpprt/operators_new_delete.cxx251
-rw-r--r--sal/cppunittester/cppunittester.cxx67
-rw-r--r--sal/cppunittester/makefile.mk52
-rw-r--r--sal/inc/internal/once.h79
-rw-r--r--sal/inc/makefile.mk47
-rw-r--r--sal/inc/osl/conditn.h92
-rw-r--r--sal/inc/osl/conditn.hxx128
-rw-r--r--sal/inc/osl/diagnose.h160
-rw-r--r--sal/inc/osl/diagnose.hxx205
-rw-r--r--sal/inc/osl/doublecheckedlocking.h81
-rw-r--r--sal/inc/osl/endian.h235
-rw-r--r--sal/inc/osl/file.h1593
-rw-r--r--sal/inc/osl/file.hxx1953
-rw-r--r--sal/inc/osl/getglobalmutex.hxx50
-rw-r--r--sal/inc/osl/interlck.h57
-rw-r--r--sal/inc/osl/module.h211
-rw-r--r--sal/inc/osl/module.hxx158
-rw-r--r--sal/inc/osl/mutex.h77
-rw-r--r--sal/inc/osl/mutex.hxx253
-rw-r--r--sal/inc/osl/nlsupport.h60
-rw-r--r--sal/inc/osl/pipe.h102
-rw-r--r--sal/inc/osl/pipe.hxx212
-rw-r--r--sal/inc/osl/pipe_decl.hxx235
-rw-r--r--sal/inc/osl/process.h443
-rw-r--r--sal/inc/osl/profile.h140
-rw-r--r--sal/inc/osl/profile.hxx204
-rw-r--r--sal/inc/osl/security.h158
-rw-r--r--sal/inc/osl/security.hxx110
-rw-r--r--sal/inc/osl/security_decl.hxx117
-rw-r--r--sal/inc/osl/semaphor.h95
-rw-r--r--sal/inc/osl/semaphor.hxx126
-rw-r--r--sal/inc/osl/signal.h114
-rw-r--r--sal/inc/osl/socket.h891
-rw-r--r--sal/inc/osl/socket.hxx565
-rw-r--r--sal/inc/osl/socket_decl.hxx722
-rw-r--r--sal/inc/osl/thread.h191
-rw-r--r--sal/inc/osl/thread.hxx233
-rw-r--r--sal/inc/osl/time.h160
-rw-r--r--sal/inc/osl/util.h53
-rw-r--r--sal/inc/pch/precompiled_sal.cxx29
-rw-r--r--sal/inc/pch/precompiled_sal.hxx32
-rw-r--r--sal/inc/rtl/alloc.h266
-rw-r--r--sal/inc/rtl/allocator.hxx192
-rw-r--r--sal/inc/rtl/bootstrap.h233
-rw-r--r--sal/inc/rtl/bootstrap.hxx234
-rw-r--r--sal/inc/rtl/byteseq.h322
-rw-r--r--sal/inc/rtl/byteseq.hxx143
-rw-r--r--sal/inc/rtl/cipher.h319
-rw-r--r--sal/inc/rtl/crc.h66
-rw-r--r--sal/inc/rtl/digest.h639
-rw-r--r--sal/inc/rtl/instance.hxx472
-rw-r--r--sal/inc/rtl/locale.h140
-rw-r--r--sal/inc/rtl/locale.hxx266
-rw-r--r--sal/inc/rtl/logfile.h134
-rw-r--r--sal/inc/rtl/logfile.hxx205
-rw-r--r--sal/inc/rtl/malformeduriexception.hxx74
-rw-r--r--sal/inc/rtl/math.h474
-rw-r--r--sal/inc/rtl/math.hxx432
-rw-r--r--sal/inc/rtl/memory.h51
-rw-r--r--sal/inc/rtl/process.h82
-rw-r--r--sal/inc/rtl/random.h114
-rw-r--r--sal/inc/rtl/ref.hxx242
-rw-r--r--sal/inc/rtl/strbuf.h119
-rw-r--r--sal/inc/rtl/strbuf.hxx665
-rw-r--r--sal/inc/rtl/string.h1193
-rw-r--r--sal/inc/rtl/string.hxx941
-rw-r--r--sal/inc/rtl/tencinfo.h276
-rw-r--r--sal/inc/rtl/textcvt.h180
-rw-r--r--sal/inc/rtl/textenc.h279
-rw-r--r--sal/inc/rtl/tres.h106
-rw-r--r--sal/inc/rtl/tres.hxx112
-rw-r--r--sal/inc/rtl/unload.h315
-rw-r--r--sal/inc/rtl/uri.h354
-rw-r--r--sal/inc/rtl/uri.hxx154
-rw-r--r--sal/inc/rtl/ustrbuf.h165
-rw-r--r--sal/inc/rtl/ustrbuf.hxx774
-rw-r--r--sal/inc/rtl/ustring.h1660
-rw-r--r--sal/inc/rtl/ustring.hxx1540
-rw-r--r--sal/inc/rtl/uuid.h209
-rw-r--r--sal/inc/sal/alloca.h66
-rw-r--r--sal/inc/sal/config.h152
-rw-r--r--sal/inc/sal/macros.h51
-rw-r--r--sal/inc/sal/main.h152
-rw-r--r--sal/inc/sal/mathconf.h147
-rw-r--r--sal/inc/sal/types.h435
-rw-r--r--sal/inc/systools/win32/AutoSystoolInit.hxx62
-rw-r--r--sal/inc/systools/win32/StrConvert.h132
-rw-r--r--sal/inc/systools/win32/SyncObjects.hxx110
-rw-r--r--sal/inc/systools/win32/advapi9x.h209
-rw-r--r--sal/inc/systools/win32/comdlg9x.h80
-rw-r--r--sal/inc/systools/win32/comptr.hxx233
-rw-r--r--sal/inc/systools/win32/comtools.hxx194
-rw-r--r--sal/inc/systools/win32/kernel9x.h383
-rw-r--r--sal/inc/systools/win32/mpr9x.h72
-rw-r--r--sal/inc/systools/win32/shell9x.h101
-rw-r--r--sal/inc/systools/win32/snprintf.h80
-rw-r--r--sal/inc/systools/win32/user9x.h192
-rw-r--r--sal/inc/systools/win32/uwinapi.h121
-rw-r--r--sal/osl/all/debugbase.cxx161
-rw-r--r--sal/osl/all/filepath.c123
-rw-r--r--sal/osl/all/loadmodulerelative.cxx71
-rw-r--r--sal/osl/all/makefile.mk76
-rwxr-xr-xsal/osl/all/utility.cxx103
-rw-r--r--sal/osl/os2/conditn.c124
-rw-r--r--sal/osl/os2/debug.c2152
-rw-r--r--sal/osl/os2/diagnose.c178
-rw-r--r--sal/osl/os2/dllentry.c75
-rw-r--r--sal/osl/os2/except.c1059
-rw-r--r--sal/osl/os2/file.cxx3129
-rw-r--r--sal/osl/os2/file_error_transl.cxx252
-rw-r--r--sal/osl/os2/file_error_transl.h70
-rw-r--r--sal/osl/os2/file_path_helper.cxx377
-rw-r--r--sal/osl/os2/file_path_helper.h292
-rw-r--r--sal/osl/os2/file_path_helper.hxx296
-rw-r--r--sal/osl/os2/file_url.cxx1626
-rw-r--r--sal/osl/os2/file_url.h183
-rw-r--r--sal/osl/os2/helpers/debug.h1779
-rw-r--r--sal/osl/os2/helpers/dosh.h49
-rw-r--r--sal/osl/os2/helpers/except.h255
-rw-r--r--sal/osl/os2/helpers/setup.h147
-rw-r--r--sal/osl/os2/interlck.c51
-rw-r--r--sal/osl/os2/libutil.c52
-rw-r--r--sal/osl/os2/makefile.mk118
-rw-r--r--sal/osl/os2/module.c281
-rw-r--r--sal/osl/os2/mutex.c167
-rw-r--r--sal/osl/os2/nlsupport.c445
-rw-r--r--sal/osl/os2/path_helper.cxx116
-rw-r--r--sal/osl/os2/path_helper.h70
-rw-r--r--sal/osl/os2/path_helper.hxx73
-rw-r--r--sal/osl/os2/pipe.cxx555
-rw-r--r--sal/osl/os2/pipeimpl.cxx755
-rw-r--r--sal/osl/os2/pipeimpl.h82
-rw-r--r--sal/osl/os2/process.c1013
-rw-r--r--sal/osl/os2/process_impl.cxx463
-rw-r--r--sal/osl/os2/procimpl.h52
-rw-r--r--sal/osl/os2/profile.c2295
-rw-r--r--sal/osl/os2/salinit.cxx120
-rw-r--r--sal/osl/os2/secimpl.h50
-rw-r--r--sal/osl/os2/security.c317
-rw-r--r--sal/osl/os2/semaphor.c190
-rw-r--r--sal/osl/os2/signal.c249
-rw-r--r--sal/osl/os2/socket.c3097
-rw-r--r--sal/osl/os2/sockimpl.h80
-rw-r--r--sal/osl/os2/system.h513
-rw-r--r--sal/osl/os2/tempfile.c359
-rw-r--r--sal/osl/os2/thread.c772
-rw-r--r--sal/osl/os2/time.c269
-rw-r--r--sal/osl/os2/util.c37
-rw-r--r--sal/osl/os2/uunxapi.cxx86
-rw-r--r--sal/osl/os2/uunxapi.h86
-rw-r--r--sal/osl/os2/uunxapi.hxx106
-rw-r--r--sal/osl/unx/asm/interlck_sparc.s267
-rw-r--r--sal/osl/unx/asm/interlck_x86.s92
-rwxr-xr-xsal/osl/unx/backtrace.c359
-rwxr-xr-xsal/osl/unx/backtrace.h99
-rw-r--r--sal/osl/unx/conditn.c350
-rw-r--r--sal/osl/unx/diagnose.c332
-rw-r--r--sal/osl/unx/file.cxx1397
-rw-r--r--sal/osl/unx/file_error_transl.cxx255
-rw-r--r--sal/osl/unx/file_error_transl.h70
-rw-r--r--sal/osl/unx/file_impl.hxx54
-rw-r--r--sal/osl/unx/file_misc.cxx1101
-rw-r--r--sal/osl/unx/file_path_helper.cxx350
-rw-r--r--sal/osl/unx/file_path_helper.h247
-rw-r--r--sal/osl/unx/file_path_helper.hxx247
-rw-r--r--sal/osl/unx/file_stat.cxx492
-rw-r--r--sal/osl/unx/file_url.cxx962
-rw-r--r--sal/osl/unx/file_url.h69
-rw-r--r--sal/osl/unx/file_volume.cxx1155
-rw-r--r--sal/osl/unx/interlck.c170
-rw-r--r--sal/osl/unx/makefile.mk189
-rw-r--r--sal/osl/unx/module.c242
-rw-r--r--sal/osl/unx/mutex.c221
-rw-r--r--sal/osl/unx/nlsupport.c949
-rw-r--r--sal/osl/unx/osxlocale.cxx129
-rw-r--r--sal/osl/unx/pipe.c592
-rw-r--r--sal/osl/unx/process.c1536
-rw-r--r--sal/osl/unx/process_impl.cxx517
-rw-r--r--sal/osl/unx/procimpl.h50
-rw-r--r--sal/osl/unx/profile.c2221
-rw-r--r--sal/osl/unx/salinit.cxx43
-rw-r--r--sal/osl/unx/secimpl.h47
-rw-r--r--sal/osl/unx/security.c862
-rw-r--r--sal/osl/unx/semaphor.c314
-rw-r--r--sal/osl/unx/signal.c1093
-rw-r--r--sal/osl/unx/socket.c3062
-rw-r--r--sal/osl/unx/sockimpl.h78
-rw-r--r--sal/osl/unx/system.c599
-rw-r--r--sal/osl/unx/system.h495
-rw-r--r--sal/osl/unx/tempfile.c370
-rw-r--r--sal/osl/unx/thread.c1035
-rw-r--r--sal/osl/unx/time.c269
-rw-r--r--sal/osl/unx/util.c350
-rw-r--r--sal/osl/unx/uunxapi.cxx130
-rw-r--r--sal/osl/unx/uunxapi.h86
-rw-r--r--sal/osl/unx/uunxapi.hxx98
-rw-r--r--sal/osl/w32/MAKEFILE.MK118
-rw-r--r--sal/osl/w32/conditn.c141
-rw-r--r--sal/osl/w32/diagnose.c188
-rw-r--r--sal/osl/w32/dllentry.c370
-rw-r--r--sal/osl/w32/file.cxx1194
-rw-r--r--sal/osl/w32/file_dirvol.cxx1867
-rw-r--r--sal/osl/w32/file_error.c151
-rw-r--r--sal/osl/w32/file_error.h51
-rw-r--r--sal/osl/w32/file_url.cxx1143
-rw-r--r--sal/osl/w32/file_url.h96
-rw-r--r--sal/osl/w32/interlck.c142
-rw-r--r--sal/osl/w32/libutil.c54
-rw-r--r--sal/osl/w32/module.cxx480
-rw-r--r--sal/osl/w32/mutex.c206
-rw-r--r--sal/osl/w32/nlsupport.c231
-rw-r--r--sal/osl/w32/path_helper.cxx118
-rw-r--r--sal/osl/w32/path_helper.h70
-rw-r--r--sal/osl/w32/path_helper.hxx118
-rw-r--r--sal/osl/w32/pipe.c636
-rw-r--r--sal/osl/w32/pipeimpl.cxx785
-rw-r--r--sal/osl/w32/pipeimpl.h88
-rw-r--r--sal/osl/w32/process.cxx639
-rw-r--r--sal/osl/w32/procimpl.cxx606
-rw-r--r--sal/osl/w32/procimpl.h47
-rw-r--r--sal/osl/w32/profile.cxx2707
-rw-r--r--sal/osl/w32/salinit.cxx102
-rw-r--r--sal/osl/w32/secimpl.h54
-rw-r--r--sal/osl/w32/security.c991
-rw-r--r--sal/osl/w32/semaphor.c111
-rw-r--r--sal/osl/w32/signal.cxx436
-rw-r--r--sal/osl/w32/socket.cxx2190
-rw-r--r--sal/osl/w32/sockimpl.h108
-rw-r--r--sal/osl/w32/system.h126
-rw-r--r--sal/osl/w32/tempfile.cxx274
-rw-r--r--sal/osl/w32/thread.c593
-rw-r--r--sal/osl/w32/time.c216
-rw-r--r--sal/osl/w32/util.c37
-rw-r--r--sal/prj/build.lst22
-rw-r--r--sal/prj/d.lst38
-rw-r--r--sal/qa/ByteSequence/ByteSequence.cxx194
-rw-r--r--sal/qa/ByteSequence/makefile.mk55
-rw-r--r--sal/qa/OStringBuffer/makefile.mk80
-rw-r--r--sal/qa/OStringBuffer/rtl_OStringBuffer.cxx18422
-rw-r--r--sal/qa/OStringBuffer/rtl_String_Const.h552
-rw-r--r--sal/qa/OStringBuffer/rtl_String_Utils.cxx615
-rw-r--r--sal/qa/OStringBuffer/rtl_String_Utils.hxx138
-rw-r--r--sal/qa/OStringBuffer/rtl_String_Utils_Const.h74
-rw-r--r--sal/qa/buildall.pl507
-rwxr-xr-xsal/qa/export.map34
-rwxr-xr-xsal/qa/helper/gcov/build_coverage23
-rw-r--r--sal/qa/helper/gcov/deprecated.txt213
-rwxr-xr-xsal/qa/helper/gcov/gcov_all15
-rwxr-xr-xsal/qa/helper/gcov/gcov_filter.pl427
-rw-r--r--sal/qa/helper/gcov/gcov_result.pl232
-rw-r--r--sal/qa/helper/gcov/gcov_resultcompare.pl151
-rw-r--r--sal/qa/helper/gcov/gcov_resultinterpreter.pl172
-rwxr-xr-xsal/qa/helper/gcov/gcov_run.sh64
-rw-r--r--sal/qa/helper/gcov/readme.txt13
-rwxr-xr-xsal/qa/helper/gcov/statistics20
-rw-r--r--sal/qa/inc/stringhelper.hxx16
-rw-r--r--sal/qa/inc/valueequal.hxx133
-rw-r--r--sal/qa/libs2test.txt86
-rw-r--r--sal/qa/makefile.mk62
-rw-r--r--sal/qa/osl/condition/makefile.mk60
-rw-r--r--sal/qa/osl/condition/osl_Condition.cxx384
-rw-r--r--sal/qa/osl/condition/osl_Condition_Const.h72
-rw-r--r--sal/qa/osl/file/makefile.mk85
-rw-r--r--sal/qa/osl/file/osl_File.cxx6856
-rw-r--r--sal/qa/osl/file/osl_File_Const.h242
-rw-r--r--sal/qa/osl/file/osl_old_test_file.cxx273
-rwxr-xr-xsal/qa/osl/file/test_cpy_wrt_file.cxx111
-rw-r--r--sal/qa/osl/module/export_dll.map34
-rw-r--r--sal/qa/osl/module/makefile.mk79
-rw-r--r--sal/qa/osl/module/osl_Module.cxx522
-rw-r--r--sal/qa/osl/module/osl_Module_Const.h66
-rw-r--r--sal/qa/osl/module/osl_Module_DLL.cxx43
-rwxr-xr-xsal/qa/osl/mutex/makefile.mk73
-rwxr-xr-xsal/qa/osl/mutex/osl_Mutex.cxx949
-rwxr-xr-xsal/qa/osl/mutex/osl_Mutex_Const.h56
-rw-r--r--sal/qa/osl/pipe/makefile.mk70
-rw-r--r--sal/qa/osl/pipe/osl_Pipe.cxx1060
-rwxr-xr-xsal/qa/osl/process/batch.bat2
-rw-r--r--sal/qa/osl/process/export.exp1
-rw-r--r--sal/qa/osl/process/makefile.mk110
-rw-r--r--sal/qa/osl/process/osl_Thread.cxx2344
-rw-r--r--sal/qa/osl/process/osl_Thread.xsce1
-rw-r--r--sal/qa/osl/process/osl_process.cxx684
-rw-r--r--sal/qa/osl/process/osl_process_child.cxx131
-rw-r--r--sal/qa/osl/profile/makefile.mk73
-rw-r--r--sal/qa/osl/profile/osl_old_testprofile.cxx99
-rwxr-xr-xsal/qa/osl/security/makefile.mk64
-rwxr-xr-xsal/qa/osl/security/osl_Security.cxx678
-rwxr-xr-xsal/qa/osl/security/osl_Security_Const.h80
-rwxr-xr-xsal/qa/osl/socket/export.exp1
-rwxr-xr-xsal/qa/osl/socket/makefile.mk223
-rw-r--r--sal/qa/osl/socket/osl_AcceptorSocket.cxx302
-rw-r--r--sal/qa/osl/socket/osl_ConnectorSocket.cxx264
-rw-r--r--sal/qa/osl/socket/osl_ConnectorSocket.xsce1
-rw-r--r--sal/qa/osl/socket/osl_DatagramSocket.cxx316
-rwxr-xr-xsal/qa/osl/socket/osl_Socket.cxx3723
-rw-r--r--sal/qa/osl/socket/osl_Socket.xsce5
-rw-r--r--sal/qa/osl/socket/osl_Socket2.cxx1468
-rw-r--r--sal/qa/osl/socket/osl_Socket2.xsce2
-rw-r--r--sal/qa/osl/socket/osl_SocketAddr.cxx895
-rw-r--r--sal/qa/osl/socket/osl_SocketAddr.xsce0
-rw-r--r--sal/qa/osl/socket/osl_SocketOld.xsce14
-rwxr-xr-xsal/qa/osl/socket/osl_Socket_Const.h196
-rw-r--r--sal/qa/osl/socket/osl_Socket_Const_orig.h200
-rw-r--r--sal/qa/osl/socket/osl_Socket_tests.cxx88
-rw-r--r--sal/qa/osl/socket/osl_Socket_tests.xsce1
-rw-r--r--sal/qa/osl/socket/osl_StreamSocket.cxx1506
-rw-r--r--sal/qa/osl/socket/osl_StreamSocket.xsce4
-rw-r--r--sal/qa/osl/socket/sockethelper.cxx401
-rw-r--r--sal/qa/osl/socket/sockethelper.hxx165
-rw-r--r--sal/qa/osl/thread/makefile.mk52
-rw-r--r--sal/qa/osl/thread/test_thread.cxx89
-rw-r--r--sal/qa/osl/thread/version.map34
-rwxr-xr-xsal/qa/rtl/alloc/jobfile.txt8
-rwxr-xr-xsal/qa/rtl/alloc/makefile.mk70
-rwxr-xr-xsal/qa/rtl/alloc/rtl_alloc.cxx179
-rw-r--r--sal/qa/rtl/bootstrap/bootstrap_process.cxx118
-rw-r--r--sal/qa/rtl/bootstrap/makefile.mk90
-rw-r--r--sal/qa/rtl/bootstrap/rtl_Bootstrap.cxx1040
-rw-r--r--sal/qa/rtl/bootstrap/rtl_Bootstrap.xsce7
-rw-r--r--sal/qa/rtl/cipher/makefile.mk70
-rw-r--r--sal/qa/rtl/cipher/rtl_cipher.cxx717
-rwxr-xr-xsal/qa/rtl/crc32/jobfile.txt5
-rwxr-xr-xsal/qa/rtl/crc32/makefile.mk70
-rwxr-xr-xsal/qa/rtl/crc32/rtl_crc32.cxx181
-rw-r--r--sal/qa/rtl/digest/makefile.mk66
-rw-r--r--sal/qa/rtl/digest/rtl_digest.cxx1451
-rw-r--r--sal/qa/rtl/doublelock/makefile.mk72
-rw-r--r--sal/qa/rtl/doublelock/rtl_doublelocking.cxx260
-rw-r--r--sal/qa/rtl/locale/makefile.mk71
-rw-r--r--sal/qa/rtl/locale/rtl_locale.cxx343
-rw-r--r--sal/qa/rtl/logfile/makefile.mk63
-rw-r--r--sal/qa/rtl/logfile/rtl_logfile.cxx260
-rw-r--r--sal/qa/rtl/math/export.exp1
-rw-r--r--sal/qa/rtl/math/makefile.mk97
-rw-r--r--sal/qa/rtl/math/rtl_math.cxx626
-rw-r--r--sal/qa/rtl/math/rtl_old_testint64.cxx122
-rw-r--r--sal/qa/rtl/math/test_rtl_math.cxx674
-rw-r--r--sal/qa/rtl/ostring/joblist.txt10
-rw-r--r--sal/qa/rtl/ostring/makefile.mk93
-rw-r--r--sal/qa/rtl/ostring/rtl_OString2.cxx568
-rw-r--r--sal/qa/rtl/ostring/rtl_str.cxx890
-rw-r--r--sal/qa/rtl/ostring/rtl_str.xsce26
-rw-r--r--sal/qa/rtl/ostring/rtl_string.cxx183
-rw-r--r--sal/qa/rtl/ostring/rtl_string.xsce1
-rw-r--r--sal/qa/rtl/oustring/joblist.txt10
-rw-r--r--sal/qa/rtl/oustring/makefile.mk82
-rw-r--r--sal/qa/rtl/oustring/rtl_OUString2.cxx1280
-rw-r--r--sal/qa/rtl/oustring/rtl_ustr.cxx1424
-rw-r--r--sal/qa/rtl/oustring/rtl_ustr.xsce33
-rw-r--r--sal/qa/rtl/oustringbuffer/makefile.mk70
-rw-r--r--sal/qa/rtl/oustringbuffer/rtl_OUStringBuffer2.cxx101
-rw-r--r--sal/qa/rtl/process/child_process.cxx71
-rw-r--r--sal/qa/rtl/process/child_process_id.cxx63
-rw-r--r--sal/qa/rtl/process/makefile.mk93
-rw-r--r--sal/qa/rtl/process/rtl_Process.cxx296
-rw-r--r--sal/qa/rtl/process/rtl_Process_Const.h26
-rw-r--r--sal/qa/rtl/random/makefile.add19
-rw-r--r--sal/qa/rtl/random/makefile.mk66
-rw-r--r--sal/qa/rtl/random/random.txt5
-rw-r--r--sal/qa/rtl/random/rtl_random.cxx412
-rw-r--r--sal/qa/rtl/strings/makefile.mk55
-rw-r--r--sal/qa/rtl/strings/test_oustring_compare.cxx67
-rw-r--r--sal/qa/rtl/strings/test_oustring_convert.cxx184
-rw-r--r--sal/qa/rtl/strings/test_oustring_endswith.cxx121
-rw-r--r--sal/qa/rtl/strings/test_oustring_noadditional.cxx33
-rw-r--r--sal/qa/rtl/strings/test_oustringbuffer_utf32.cxx130
-rw-r--r--sal/qa/rtl/textenc/makefile.mk75
-rw-r--r--sal/qa/rtl/textenc/rtl_tencinfo.cxx1901
-rw-r--r--sal/qa/rtl/textenc/rtl_textcvt.cxx2901
-rw-r--r--sal/qa/rtl/uri/makefile.mk75
-rw-r--r--sal/qa/rtl/uri/rtl_Uri.cxx297
-rw-r--r--sal/qa/rtl/uri/rtl_testuri.cxx545
-rw-r--r--sal/qa/rtl/uuid/makefile.mk68
-rw-r--r--sal/qa/rtl/uuid/rtl_Uuid.cxx228
-rw-r--r--sal/qa/rtl_strings/export.exp1
-rw-r--r--sal/qa/rtl_strings/makefile.mk153
-rw-r--r--sal/qa/rtl_strings/readme.txt20
-rw-r--r--sal/qa/rtl_strings/rtl_OString.cxx3605
-rw-r--r--sal/qa/rtl_strings/rtl_OUString.cxx3858
-rw-r--r--sal/qa/rtl_strings/rtl_OUStringBuffer.cxx1823
-rw-r--r--sal/qa/rtl_strings/rtl_String_Const.h885
-rw-r--r--sal/qa/rtl_strings/rtl_String_Utils.cxx593
-rw-r--r--sal/qa/rtl_strings/rtl_String_Utils.hxx137
-rw-r--r--sal/qa/rtl_strings/rtl_String_Utils_Const.h74
-rw-r--r--sal/qa/rtl_strings/rtl_old_testostring.cxx266
-rw-r--r--sal/qa/rtl_strings/rtl_old_testowstring.cxx421
-rw-r--r--sal/qa/rtl_strings/rtl_old_teststrbuf.cxx269
-rw-r--r--sal/qa/sal/makefile.mk50
-rw-r--r--sal/qa/sal/test_types.cxx81
-rw-r--r--sal/qa/sal/version.map34
-rw-r--r--sal/qa/systools/makefile.mk70
-rw-r--r--sal/qa/systools/test_comtools.cxx250
-rw-r--r--sal/qa/testHelperFunctions/makefile.mk63
-rw-r--r--sal/qa/testHelperFunctions/testHelperFunctions.cxx454
-rw-r--r--sal/qa/testHelperFunctions/testHelperFunctions2.cxx61
-rw-r--r--sal/rtl/source/alloc.c1541
-rw-r--r--sal/rtl/source/alloc_arena.c1396
-rw-r--r--sal/rtl/source/alloc_arena.h137
-rw-r--r--sal/rtl/source/alloc_cache.c1721
-rw-r--r--sal/rtl/source/alloc_cache.h182
-rw-r--r--sal/rtl/source/alloc_global.c357
-rw-r--r--sal/rtl/source/alloc_impl.h247
-rw-r--r--sal/rtl/source/bootstrap.cxx1059
-rw-r--r--sal/rtl/source/byteseq.c254
-rw-r--r--sal/rtl/source/cipher.c1363
-rw-r--r--sal/rtl/source/cmdargs.cxx109
-rw-r--r--sal/rtl/source/crc.c164
-rw-r--r--sal/rtl/source/debugprint.cxx58
-rw-r--r--sal/rtl/source/digest.c2118
-rw-r--r--sal/rtl/source/gen_makefile.cxx41
-rw-r--r--sal/rtl/source/hash.cxx113
-rw-r--r--sal/rtl/source/hash.h21
-rw-r--r--sal/rtl/source/locale.c362
-rw-r--r--sal/rtl/source/logfile.cxx254
-rw-r--r--sal/rtl/source/macro.hxx110
-rw-r--r--sal/rtl/source/makefile.mk198
-rw-r--r--sal/rtl/source/math.cxx1265
-rw-r--r--sal/rtl/source/memory.c62
-rwxr-xr-xsal/rtl/source/memory_fini.cxx54
-rw-r--r--sal/rtl/source/random.c338
-rw-r--r--sal/rtl/source/rtl_process.c49
-rw-r--r--sal/rtl/source/strbuf.c147
-rw-r--r--sal/rtl/source/strimp.c58
-rw-r--r--sal/rtl/source/strimp.h64
-rw-r--r--sal/rtl/source/string.c320
-rw-r--r--sal/rtl/source/strtmpl.c1567
-rw-r--r--sal/rtl/source/surrogates.h50
-rw-r--r--sal/rtl/source/tres.c686
-rw-r--r--sal/rtl/source/unload.cxx417
-rw-r--r--sal/rtl/source/uri.cxx799
-rw-r--r--sal/rtl/source/ustrbuf.c208
-rw-r--r--sal/rtl/source/ustring.c934
-rw-r--r--sal/rtl/source/uuid.cxx180
-rw-r--r--sal/systools/win32/kill/kill.cxx443
-rw-r--r--sal/systools/win32/kill/makefile.mk64
-rw-r--r--sal/systools/win32/onlineupdate/makefile.mk82
-rw-r--r--sal/systools/win32/onlineupdate/onlinecheck.cxx82
-rw-r--r--sal/systools/win32/onlineupdate/onlinecheck.dxp28
-rw-r--r--sal/systools/win32/uwinapi/CheckTokenMembership.cpp34
-rw-r--r--sal/systools/win32/uwinapi/CommandLineToArgvW.cpp172
-rw-r--r--sal/systools/win32/uwinapi/CopyFileExA.cpp167
-rw-r--r--sal/systools/win32/uwinapi/CopyFileExW.cpp40
-rw-r--r--sal/systools/win32/uwinapi/DeleteVolumeMountPointA.cpp33
-rw-r--r--sal/systools/win32/uwinapi/DeleteVolumeMountPointW.cpp33
-rw-r--r--sal/systools/win32/uwinapi/DllGetVersion.cpp73
-rw-r--r--sal/systools/win32/uwinapi/DllMain.cpp235
-rw-r--r--sal/systools/win32/uwinapi/DrawStateW.cpp74
-rw-r--r--sal/systools/win32/uwinapi/EnumProcesses.cpp41
-rw-r--r--sal/systools/win32/uwinapi/FindFirstVolumeA.cpp30
-rw-r--r--sal/systools/win32/uwinapi/FindFirstVolumeMountPointA.cpp51
-rw-r--r--sal/systools/win32/uwinapi/FindFirstVolumeMountPointW.cpp32
-rw-r--r--sal/systools/win32/uwinapi/FindFirstVolumeW.cpp30
-rw-r--r--sal/systools/win32/uwinapi/FindNextVolumeA.cpp30
-rw-r--r--sal/systools/win32/uwinapi/FindNextVolumeMountPointA.cpp30
-rw-r--r--sal/systools/win32/uwinapi/FindNextVolumeMountPointW.cpp30
-rw-r--r--sal/systools/win32/uwinapi/FindNextVolumeW.cpp30
-rw-r--r--sal/systools/win32/uwinapi/FindVolumeClose.cpp30
-rw-r--r--sal/systools/win32/uwinapi/FindVolumeMountPointClose.cpp30
-rw-r--r--sal/systools/win32/uwinapi/GetDiskFreeSpaceExA.cpp59
-rw-r--r--sal/systools/win32/uwinapi/GetDiskFreeSpaceExW.cpp41
-rw-r--r--sal/systools/win32/uwinapi/GetLogicalDriveStringsW.cpp41
-rw-r--r--sal/systools/win32/uwinapi/GetLongPathName.cpp113
-rw-r--r--sal/systools/win32/uwinapi/GetLongPathNameA.cpp31
-rw-r--r--sal/systools/win32/uwinapi/GetLongPathNameW.cpp63
-rw-r--r--sal/systools/win32/uwinapi/GetModuleFileNameExA.cpp53
-rw-r--r--sal/systools/win32/uwinapi/GetModuleFileNameExW.cpp18
-rw-r--r--sal/systools/win32/uwinapi/GetProcessId.cpp164
-rw-r--r--sal/systools/win32/uwinapi/GetUserDefaultUILanguage.cpp34
-rw-r--r--sal/systools/win32/uwinapi/GetUserDomainA.cpp46
-rw-r--r--sal/systools/win32/uwinapi/GetUserDomainW.cpp47
-rw-r--r--sal/systools/win32/uwinapi/GetUserDomain_NT.cpp30
-rw-r--r--sal/systools/win32/uwinapi/GetUserDomain_WINDOWS.cpp79
-rw-r--r--sal/systools/win32/uwinapi/GetVolumeNameForVolumeMountPointA.cpp30
-rw-r--r--sal/systools/win32/uwinapi/GetVolumeNameForVolumeMountPointW.cpp30
-rw-r--r--sal/systools/win32/uwinapi/GetVolumePathNameA.cpp30
-rw-r--r--sal/systools/win32/uwinapi/GetVolumePathNameW.cpp30
-rw-r--r--sal/systools/win32/uwinapi/MCIWndCreateW.cpp42
-rw-r--r--sal/systools/win32/uwinapi/MoveFileExA.cpp97
-rw-r--r--sal/systools/win32/uwinapi/MoveFileExW.cpp38
-rw-r--r--sal/systools/win32/uwinapi/PathAddBackslashW.cpp42
-rw-r--r--sal/systools/win32/uwinapi/PathCompactPathExW.cpp46
-rw-r--r--sal/systools/win32/uwinapi/PathFileExistsW.cpp40
-rw-r--r--sal/systools/win32/uwinapi/PathFindExtensionW.cpp52
-rw-r--r--sal/systools/win32/uwinapi/PathFindFileNameW.cpp51
-rw-r--r--sal/systools/win32/uwinapi/PathIsFileSpecW.cpp40
-rw-r--r--sal/systools/win32/uwinapi/PathIsUNCW.cpp40
-rw-r--r--sal/systools/win32/uwinapi/PathRemoveExtensionW.cpp41
-rw-r--r--sal/systools/win32/uwinapi/PathRemoveFileSpecW.cpp42
-rw-r--r--sal/systools/win32/uwinapi/PathSetDlgItemPathW.cpp42
-rw-r--r--sal/systools/win32/uwinapi/PathStripToRootW.cpp42
-rw-r--r--sal/systools/win32/uwinapi/ResolveThunk.cpp64
-rw-r--r--sal/systools/win32/uwinapi/ResolveUnicows.cpp510
-rw-r--r--sal/systools/win32/uwinapi/SHCreateItemFromParsingName.cpp33
-rw-r--r--sal/systools/win32/uwinapi/SHILCreateFromPathW.cpp32
-rw-r--r--sal/systools/win32/uwinapi/SetVolumeMountPointA.cpp30
-rw-r--r--sal/systools/win32/uwinapi/SetVolumeMountPointW.cpp30
-rw-r--r--sal/systools/win32/uwinapi/Uwinapi.def22
-rw-r--r--sal/systools/win32/uwinapi/Uwinapi.h137
-rw-r--r--sal/systools/win32/uwinapi/macros.h232
-rw-r--r--sal/systools/win32/uwinapi/makefile.mk167
-rw-r--r--sal/systools/win32/uwinapi/snprintf.c10
-rw-r--r--sal/systools/win32/uwinapi/sntprintf.c118
-rw-r--r--sal/systools/win32/uwinapi/snwprintf.c5
-rw-r--r--sal/systools/win32/uwinapi/toolhelp.cpp57
-rw-r--r--sal/systools/win32/uwinapi/unicows.dxp546
-rw-r--r--sal/systools/win32/uwinapi/unicows_mingw.dxp544
-rw-r--r--sal/systools/win32/uwinapi/uwinapi.dxp86
-rw-r--r--sal/systools/win32/uwinapi/uwinapi_mingw.dxp90
-rw-r--r--sal/systools/win32/uwinapi/win95sys.h348
-rw-r--r--sal/test/bootstrap65
-rwxr-xr-xsal/test/bootstrap.bat62
-rwxr-xr-xsal/test/bootstrap.pl260
-rw-r--r--sal/test/bootstraptest.ini11
-rw-r--r--sal/test/makefile.mk152
-rw-r--r--sal/test/test_salmain.cxx42
-rw-r--r--sal/test/test_salmainwithargs.cxx42
-rw-r--r--sal/test/testbootstrap.cxx134
-rw-r--r--sal/test/testbootstrap.ini4
-rw-r--r--sal/test/unloading/exports.dxp4
-rw-r--r--sal/test/unloading/makefile.mk126
-rw-r--r--sal/test/unloading/readme.txt14
-rw-r--r--sal/test/unloading/samplelib1.cxx269
-rw-r--r--sal/test/unloading/samplelib1.xml41
-rw-r--r--sal/test/unloading/samplelib2.cxx236
-rw-r--r--sal/test/unloading/unloadTest.cxx656
-rw-r--r--sal/textenc/context.c47
-rw-r--r--sal/textenc/context.h52
-rw-r--r--sal/textenc/convertadobe.tab328
-rw-r--r--sal/textenc/convertbig5hkscs.c493
-rw-r--r--sal/textenc/convertbig5hkscs.h81
-rw-r--r--sal/textenc/convertbig5hkscs.tab72
-rw-r--r--sal/textenc/converter.c164
-rw-r--r--sal/textenc/converter.h66
-rw-r--r--sal/textenc/converteuctw.c452
-rw-r--r--sal/textenc/converteuctw.h78
-rw-r--r--sal/textenc/converteuctw.tab69
-rw-r--r--sal/textenc/convertgb18030.c468
-rw-r--r--sal/textenc/convertgb18030.h92
-rw-r--r--sal/textenc/convertgb18030.tab69
-rw-r--r--sal/textenc/convertiscii.tab112
-rw-r--r--sal/textenc/convertiso2022cn.c862
-rw-r--r--sal/textenc/convertiso2022cn.h84
-rw-r--r--sal/textenc/convertiso2022cn.tab77
-rw-r--r--sal/textenc/convertiso2022jp.c569
-rw-r--r--sal/textenc/convertiso2022jp.h78
-rw-r--r--sal/textenc/convertiso2022jp.tab68
-rw-r--r--sal/textenc/convertiso2022kr.c527
-rw-r--r--sal/textenc/convertiso2022kr.h78
-rw-r--r--sal/textenc/convertiso2022kr.tab68
-rw-r--r--sal/textenc/convertsinglebytetobmpunicode.cxx211
-rw-r--r--sal/textenc/convertsinglebytetobmpunicode.hxx126
-rw-r--r--sal/textenc/generate/big5hkscs2001.pl806
-rw-r--r--sal/textenc/generate/big5hkscs2001.tab8824
-rw-r--r--sal/textenc/generate/cns116431992.pl856
-rw-r--r--sal/textenc/generate/cns116431992.tab22869
-rw-r--r--sal/textenc/generate/gb180302000.pl309
-rw-r--r--sal/textenc/generate/gb180302000.tab9038
-rw-r--r--sal/textenc/gettextencodingdata.h46
-rw-r--r--sal/textenc/makefile.mk87
-rw-r--r--sal/textenc/tcvtarb1.tab936
-rw-r--r--sal/textenc/tcvtbyte.c810
-rw-r--r--sal/textenc/tcvteas1.tab436
-rw-r--r--sal/textenc/tcvtest1.tab4584
-rw-r--r--sal/textenc/tcvtjp1.tab1556
-rw-r--r--sal/textenc/tcvtjp2.tab3964
-rw-r--r--sal/textenc/tcvtjp3.tab2914
-rw-r--r--sal/textenc/tcvtjp4.tab3585
-rw-r--r--sal/textenc/tcvtjp5.tab3350
-rw-r--r--sal/textenc/tcvtjp6.tab2660
-rw-r--r--sal/textenc/tcvtkr1.tab3323
-rw-r--r--sal/textenc/tcvtkr2.tab5415
-rw-r--r--sal/textenc/tcvtkr4.tab3503
-rw-r--r--sal/textenc/tcvtkr5.tab5415
-rw-r--r--sal/textenc/tcvtkr6.tab1238
-rw-r--r--sal/textenc/tcvtlat1.tab1775
-rw-r--r--sal/textenc/tcvtmb.c693
-rw-r--r--sal/textenc/tcvtscn1.tab3860
-rw-r--r--sal/textenc/tcvtscn2.tab4463
-rw-r--r--sal/textenc/tcvtscn3.tab1502
-rw-r--r--sal/textenc/tcvtscn4.tab3070
-rw-r--r--sal/textenc/tcvtscn5.tab3235
-rw-r--r--sal/textenc/tcvtscn6.tab2956
-rw-r--r--sal/textenc/tcvtsym1.tab47
-rw-r--r--sal/textenc/tcvttcn1.tab2894
-rw-r--r--sal/textenc/tcvttcn2.tab3715
-rw-r--r--sal/textenc/tcvttcn6.tab1733
-rw-r--r--sal/textenc/tcvtuni1.tab100
-rw-r--r--sal/textenc/tcvtutf7.c588
-rw-r--r--sal/textenc/tcvtutf8.c419
-rw-r--r--sal/textenc/tenchelp.c213
-rw-r--r--sal/textenc/tenchelp.h297
-rw-r--r--sal/textenc/tencinfo.c1154
-rw-r--r--sal/textenc/textcvt.c264
-rw-r--r--sal/textenc/textenc.cxx226
-rw-r--r--sal/textenc/unichars.c136
-rw-r--r--sal/textenc/unichars.h62
-rw-r--r--sal/typesconfig/makefile.mk61
-rw-r--r--sal/typesconfig/typesconfig.c490
-rw-r--r--sal/unosdk.mk47
-rw-r--r--sal/util/makefile.mk241
-rwxr-xr-xsal/util/sal.map620
-rw-r--r--sal/util/salalloc.list7
-rw-r--r--sal/util/salalloc.map10
-rw-r--r--sal/version.mk40
-rw-r--r--sal/workben/clipboardwben/testcopy/StdAfx.cpp8
-rw-r--r--sal/workben/clipboardwben/testcopy/StdAfx.h32
-rw-r--r--sal/workben/clipboardwben/testcopy/TestWin32.icobin0 -> 1590 bytes-rw-r--r--sal/workben/clipboardwben/testcopy/XTDataObject.cxx470
-rw-r--r--sal/workben/clipboardwben/testcopy/XTDataObject.hxx132
-rw-r--r--sal/workben/clipboardwben/testcopy/cbcpytest.cxx402
-rw-r--r--sal/workben/clipboardwben/testcopy/cbcpytest.rc122
-rw-r--r--sal/workben/clipboardwben/testcopy/makefile.mk67
-rw-r--r--sal/workben/clipboardwben/testcopy/resource.h31
-rw-r--r--sal/workben/clipboardwben/testcopy/small.icobin0 -> 318 bytes-rw-r--r--sal/workben/clipboardwben/testpaste/StdAfx.cpp8
-rw-r--r--sal/workben/clipboardwben/testpaste/StdAfx.h32
-rw-r--r--sal/workben/clipboardwben/testpaste/TestWin32.icobin0 -> 1590 bytes-rw-r--r--sal/workben/clipboardwben/testpaste/cbptest.cxx428
-rw-r--r--sal/workben/clipboardwben/testpaste/cbptest.rc120
-rw-r--r--sal/workben/clipboardwben/testpaste/makefile.mk67
-rw-r--r--sal/workben/clipboardwben/testpaste/resource.h28
-rw-r--r--sal/workben/clipboardwben/testpaste/small.icobin0 -> 318 bytes-rw-r--r--sal/workben/clipboardwben/testviewer/StdAfx.cpp8
-rw-r--r--sal/workben/clipboardwben/testviewer/StdAfx.h32
-rw-r--r--sal/workben/clipboardwben/testviewer/TestWin32.icobin0 -> 1590 bytes-rw-r--r--sal/workben/clipboardwben/testviewer/cbvtest.cxx351
-rw-r--r--sal/workben/clipboardwben/testviewer/cbvtest.rc127
-rw-r--r--sal/workben/clipboardwben/testviewer/makefile.mk67
-rw-r--r--sal/workben/clipboardwben/testviewer/resource.h32
-rw-r--r--sal/workben/clipboardwben/testviewer/small.icobin0 -> 318 bytes-rw-r--r--sal/workben/export.exp1
-rw-r--r--sal/workben/getlocaleinfotest.cxx50
-rw-r--r--sal/workben/makefile.mk386
-rw-r--r--sal/workben/saldyntest.c52
-rw-r--r--sal/workben/salstattest.c56
-rw-r--r--sal/workben/t_cipher.c396
-rw-r--r--sal/workben/t_digest.c378
-rw-r--r--sal/workben/t_ojp_exe.cxx55
-rw-r--r--sal/workben/t_osl_getVolInfo.cxx132
-rw-r--r--sal/workben/t_osl_joinProcess.cxx228
-rw-r--r--sal/workben/t_random.c65
-rw-r--r--sal/workben/t_readline.c58
-rw-r--r--sal/workben/test.cxx66
-rw-r--r--sal/workben/testfile.cxx2786
-rw-r--r--sal/workben/testpip2.cxx97
-rw-r--r--sal/workben/testpipe.cxx168
-rw-r--r--sal/workben/testproc.cxx77
-rw-r--r--sal/workben/tgetpwnam.cxx248
-rw-r--r--salhelper/inc/salhelper/condition.hxx124
-rw-r--r--salhelper/inc/salhelper/dynload.hxx206
-rw-r--r--salhelper/inc/salhelper/future.hxx120
-rw-r--r--salhelper/inc/salhelper/futurequeue.hxx108
-rw-r--r--salhelper/inc/salhelper/monitor.hxx288
-rw-r--r--salhelper/inc/salhelper/queue.hxx186
-rw-r--r--salhelper/inc/salhelper/refobj.hxx110
-rwxr-xr-xsalhelper/inc/salhelper/simplereferenceobject.hxx136
-rw-r--r--salhelper/inc/salhelper/singletonref.hxx210
-rw-r--r--salhelper/prj/build.lst3
-rw-r--r--salhelper/prj/d.lst21
-rw-r--r--salhelper/qa/makefile.mk52
-rw-r--r--salhelper/qa/test_api.cxx250
-rwxr-xr-xsalhelper/qa/version.map6
-rw-r--r--salhelper/source/condition.cxx142
-rw-r--r--salhelper/source/dynload.cxx110
-rw-r--r--salhelper/source/gcc3.map73
-rw-r--r--salhelper/source/gcc3os2.map73
-rw-r--r--salhelper/source/makefile.mk82
-rw-r--r--salhelper/source/msci.map38
-rwxr-xr-xsalhelper/source/simplereferenceobject.cxx74
-rw-r--r--salhelper/source/sols.map76
-rw-r--r--salhelper/test/Symbols/loader.cxx37
-rw-r--r--salhelper/test/Symbols/makefile.mk97
-rw-r--r--salhelper/test/Symbols/samplelib.cxx37
-rw-r--r--salhelper/test/Symbols/samplelib.hxx22
-rw-r--r--salhelper/test/dynamicloader/loader.cxx37
-rw-r--r--salhelper/test/dynamicloader/makefile.mk117
-rw-r--r--salhelper/test/dynamicloader/samplelib.cxx37
-rw-r--r--salhelper/test/dynamicloader/samplelib.hxx22
-rw-r--r--salhelper/test/rtti/exports.dxp8
-rw-r--r--salhelper/test/rtti/makefile.mk107
-rw-r--r--salhelper/test/rtti/rttitest.cxx29
-rw-r--r--salhelper/test/rtti/samplelibrtti.cxx39
-rw-r--r--salhelper/test/rtti/samplelibrtti.hxx28
-rw-r--r--salhelper/test/rtti/sols.map34
-rw-r--r--salhelper/version.mk44
-rw-r--r--sane/inc/sane.h213
-rw-r--r--sane/prj/build.lst3
-rw-r--r--sane/prj/d.lst3
-rw-r--r--sax/inc/sax/dllapi.h39
-rw-r--r--sax/inc/sax/fastattribs.hxx91
-rw-r--r--sax/inc/sax/fshelper.hxx118
-rw-r--r--sax/inc/sax/parser/saxparser.hxx150
-rw-r--r--sax/inc/sax/tools/attributemap.hxx70
-rw-r--r--sax/inc/sax/tools/converter.hxx208
-rw-r--r--sax/inc/sax/tools/saxobject.hxx50
-rw-r--r--sax/inc/sax/tools/tokenmap.hxx65
-rw-r--r--sax/inc/xml2utf.hxx147
-rw-r--r--sax/prj/build.lst6
-rw-r--r--sax/prj/d.lst16
-rw-r--r--sax/qa/cppunit/makefile.mk78
-rw-r--r--sax/qa/cppunit/test_converter.cxx246
-rw-r--r--sax/qa/cppunit/version.map34
-rw-r--r--sax/source/expatwrap/attrlistimpl.cxx168
-rw-r--r--sax/source/expatwrap/attrlistimpl.hxx85
-rw-r--r--sax/source/expatwrap/factory.hxx34
-rw-r--r--sax/source/expatwrap/makefile.mk87
-rw-r--r--sax/source/expatwrap/sax.component37
-rw-r--r--sax/source/expatwrap/sax_expat.cxx1076
-rw-r--r--sax/source/expatwrap/saxwriter.cxx1454
-rw-r--r--sax/source/expatwrap/xml2utf.cxx570
-rw-r--r--sax/source/fastparser/facreg.cxx78
-rw-r--r--sax/source/fastparser/fastparser.cxx953
-rw-r--r--sax/source/fastparser/fastparser.hxx164
-rw-r--r--sax/source/fastparser/fastsax.component37
-rw-r--r--sax/source/fastparser/makefile.mk79
-rw-r--r--sax/source/tools/converter.cxx2098
-rw-r--r--sax/source/tools/fastattribs.cxx168
-rw-r--r--sax/source/tools/fastserializer.cxx403
-rw-r--r--sax/source/tools/fastserializer.hxx161
-rw-r--r--sax/source/tools/fshelper.cxx201
-rw-r--r--sax/source/tools/makefile.mk67
-rw-r--r--sax/test/makefile.mk62
-rw-r--r--sax/test/sax/exports.dxp3
-rw-r--r--sax/test/sax/factory.hxx89
-rw-r--r--sax/test/sax/makefile.mk61
-rw-r--r--sax/test/sax/testsax.cxx870
-rw-r--r--sax/test/sax/testwriter.cxx698
-rw-r--r--sax/test/saxdemo.cxx651
-rw-r--r--sax/test/testcomponent.cxx230
-rw-r--r--sax/util/makefile.mk68
-rw-r--r--sax/util/makefile.pmk30
-rw-r--r--saxon/makefile.mk69
-rw-r--r--saxon/prj/build.lst2
-rw-r--r--saxon/prj/d.lst1
-rw-r--r--saxon/saxon-9.0.0.7-bj.patch1031
-rw-r--r--sc/addin/datefunc/dfa.cl729
-rw-r--r--sc/addin/datefunc/dfa.src178
-rw-r--r--sc/addin/datefunc/makefile.mk145
-rw-r--r--sc/addin/inc/addin.h140
-rw-r--r--sc/addin/inc/dfa.hrc61
-rw-r--r--sc/addin/inc/rot13.hrc35
-rw-r--r--sc/addin/makefile.mk45
-rw-r--r--sc/addin/rot13/exports.map11
-rw-r--r--sc/addin/rot13/makefile.mk88
-rw-r--r--sc/addin/rot13/rot13.cl158
-rw-r--r--sc/addin/rot13/rot13.src58
-rw-r--r--sc/addin/util/cl2c.pl238
-rw-r--r--sc/addin/util/makefile.mk47
-rw-r--r--sc/inc/AccessibleFilterMenu.hxx191
-rw-r--r--sc/inc/AccessibleFilterMenuItem.hxx121
-rw-r--r--sc/inc/AccessibleFilterTopWindow.hxx98
-rw-r--r--sc/inc/AccessibleGlobal.hxx69
-rw-r--r--sc/inc/ViewSettingsSequenceDefines.hxx108
-rw-r--r--sc/inc/addincfg.hxx55
-rw-r--r--sc/inc/addincol.hxx247
-rw-r--r--sc/inc/address.hxx820
-rw-r--r--sc/inc/addruno.hxx110
-rw-r--r--sc/inc/afmtuno.hxx310
-rw-r--r--sc/inc/appluno.hxx211
-rw-r--r--sc/inc/appoptio.hxx149
-rw-r--r--sc/inc/arealink.hxx93
-rw-r--r--sc/inc/attarray.hxx242
-rw-r--r--sc/inc/attrib.hxx402
-rw-r--r--sc/inc/autoform.hxx282
-rw-r--r--sc/inc/autonamecache.hxx58
-rw-r--r--sc/inc/bigrange.hxx273
-rw-r--r--sc/inc/brdcst.hxx70
-rw-r--r--sc/inc/callform.hxx118
-rw-r--r--sc/inc/cell.hxx506
-rw-r--r--sc/inc/cellform.hxx65
-rw-r--r--sc/inc/cellsuno.hxx1569
-rw-r--r--sc/inc/cfgids.hxx41
-rw-r--r--sc/inc/chart2uno.hxx698
-rw-r--r--sc/inc/chartarr.hxx127
-rw-r--r--sc/inc/charthelper.hxx54
-rw-r--r--sc/inc/chartlis.hxx218
-rw-r--r--sc/inc/chartlock.hxx86
-rw-r--r--sc/inc/chartpos.hxx170
-rw-r--r--sc/inc/chartuno.hxx204
-rw-r--r--sc/inc/chgtrack.hxx1370
-rw-r--r--sc/inc/chgviset.hxx149
-rw-r--r--sc/inc/clipparam.hxx88
-rw-r--r--sc/inc/collect.hxx204
-rw-r--r--sc/inc/column.hxx443
-rw-r--r--sc/inc/compiler.hxx539
-rw-r--r--sc/inc/compressedarray.hxx669
-rw-r--r--sc/inc/conditio.hxx301
-rw-r--r--sc/inc/confuno.hxx107
-rw-r--r--sc/inc/consoli.hxx134
-rw-r--r--sc/inc/convuno.hxx218
-rw-r--r--sc/inc/cursuno.hxx110
-rw-r--r--sc/inc/dapiuno.hxx991
-rw-r--r--sc/inc/datauno.hxx665
-rw-r--r--sc/inc/dbcolect.hxx242
-rw-r--r--sc/inc/dbdocutl.hxx52
-rw-r--r--sc/inc/dbtoken.hxx54
-rw-r--r--sc/inc/defltuno.hxx130
-rw-r--r--sc/inc/detdata.hxx106
-rw-r--r--sc/inc/detfunc.hxx166
-rw-r--r--sc/inc/dispuno.hxx151
-rw-r--r--sc/inc/dociter.hxx535
-rw-r--r--sc/inc/docoptio.hxx216
-rw-r--r--sc/inc/docpool.hxx83
-rw-r--r--sc/inc/document.hxx1871
-rw-r--r--sc/inc/docuno.hxx860
-rw-r--r--sc/inc/dpcachetable.hxx249
-rw-r--r--sc/inc/dpdimsave.hxx202
-rwxr-xr-xsc/inc/dpglobal.hxx209
-rw-r--r--sc/inc/dpgroup.hxx265
-rw-r--r--sc/inc/dpobject.hxx300
-rw-r--r--sc/inc/dpoutput.hxx174
-rw-r--r--sc/inc/dpoutputgeometry.hxx77
-rw-r--r--sc/inc/dpsave.hxx286
-rw-r--r--sc/inc/dpsdbtab.hxx97
-rw-r--r--sc/inc/dpshttab.hxx110
-rw-r--r--sc/inc/dptabdat.hxx211
-rw-r--r--sc/inc/dptablecache.hxx122
-rw-r--r--sc/inc/dptabres.hxx738
-rw-r--r--sc/inc/dptabsrc.hxx875
-rw-r--r--sc/inc/drawattr.hxx65
-rw-r--r--sc/inc/drawpage.hxx52
-rw-r--r--sc/inc/drdefuno.hxx52
-rw-r--r--sc/inc/drwlayer.hxx233
-rw-r--r--sc/inc/editsrc.hxx193
-rw-r--r--sc/inc/editutil.hxx264
-rwxr-xr-xsc/inc/eventuno.hxx91
-rw-r--r--sc/inc/externalrefmgr.hxx758
-rw-r--r--sc/inc/fielduno.hxx454
-rw-r--r--sc/inc/fillinfo.hxx153
-rw-r--r--sc/inc/filter.hxx145
-rw-r--r--sc/inc/filtopt.hxx62
-rw-r--r--sc/inc/filtuno.hxx111
-rw-r--r--sc/inc/fmtuno.hxx332
-rw-r--r--sc/inc/forbiuno.hxx55
-rw-r--r--sc/inc/formulaparserpool.hxx67
-rw-r--r--sc/inc/formularesult.hxx615
-rw-r--r--sc/inc/funcdesc.hxx180
-rw-r--r--sc/inc/funcuno.hxx148
-rw-r--r--sc/inc/global.hxx894
-rw-r--r--sc/inc/globstr.hrc583
-rw-r--r--sc/inc/helpids.h692
-rw-r--r--sc/inc/hints.hxx185
-rw-r--r--sc/inc/inputopt.hxx105
-rw-r--r--sc/inc/linkuno.hxx634
-rw-r--r--sc/inc/listenercalls.hxx79
-rw-r--r--sc/inc/lookupcache.hxx257
-rw-r--r--sc/inc/makefile.mk48
-rw-r--r--sc/inc/markarr.hxx87
-rw-r--r--sc/inc/markdata.hxx121
-rw-r--r--sc/inc/miscuno.hxx313
-rw-r--r--sc/inc/mutexhlp.hxx46
-rw-r--r--sc/inc/nameuno.hxx351
-rw-r--r--sc/inc/navicfg.hxx58
-rw-r--r--sc/inc/notesuno.hxx321
-rw-r--r--sc/inc/olinetab.hxx179
-rw-r--r--sc/inc/optuno.hxx93
-rw-r--r--sc/inc/optutil.hxx77
-rw-r--r--sc/inc/pagepar.hxx86
-rw-r--r--sc/inc/pageuno.hxx56
-rw-r--r--sc/inc/paramisc.hxx77
-rw-r--r--sc/inc/patattr.hxx193
-rwxr-xr-xsc/inc/pch/precompiled_sc.cxx28
-rw-r--r--sc/inc/pch/precompiled_sc.hxx245
-rw-r--r--sc/inc/pivot.hxx199
-rw-r--r--sc/inc/postit.hxx263
-rw-r--r--sc/inc/printopt.hxx99
-rw-r--r--sc/inc/prnsave.hxx81
-rw-r--r--sc/inc/progress.hxx159
-rw-r--r--sc/inc/queryparam.hxx142
-rw-r--r--sc/inc/rangelst.hxx117
-rw-r--r--sc/inc/rangenam.hxx224
-rw-r--r--sc/inc/rangeseq.hxx114
-rw-r--r--sc/inc/rangeutl.hxx321
-rw-r--r--sc/inc/rechead.hxx170
-rw-r--r--sc/inc/recursionhelper.hxx159
-rw-r--r--sc/inc/refdata.hxx213
-rw-r--r--sc/inc/reffind.hxx68
-rw-r--r--sc/inc/refreshtimer.hxx158
-rw-r--r--sc/inc/reftokenhelper.hxx80
-rw-r--r--sc/inc/sc.hrc1288
-rw-r--r--sc/inc/scabstdlg.hxx502
-rw-r--r--sc/inc/sccommands.h336
-rw-r--r--sc/inc/scdll.hxx78
-rw-r--r--sc/inc/scdllapi.h13
-rw-r--r--sc/inc/scerrors.hxx76
-rw-r--r--sc/inc/scextopt.hxx131
-rw-r--r--sc/inc/scfuncs.hrc42
-rw-r--r--sc/inc/scitems.hxx195
-rw-r--r--sc/inc/scmatrix.hxx443
-rw-r--r--sc/inc/scmod.hxx295
-rw-r--r--sc/inc/scresid.hxx45
-rw-r--r--sc/inc/scwarngs.hxx36
-rw-r--r--sc/inc/segmenttree.hxx172
-rw-r--r--sc/inc/servuno.hxx118
-rw-r--r--sc/inc/shapeuno.hxx242
-rw-r--r--sc/inc/sheetdata.hxx185
-rw-r--r--sc/inc/sheetevents.hxx67
-rw-r--r--sc/inc/shellids.hxx55
-rw-r--r--sc/inc/sortparam.hxx81
-rw-r--r--sc/inc/srchuno.hxx129
-rw-r--r--sc/inc/stlpool.hxx86
-rw-r--r--sc/inc/stlsheet.hxx91
-rw-r--r--sc/inc/stringutil.hxx56
-rw-r--r--sc/inc/strload.hxx51
-rw-r--r--sc/inc/styleuno.hxx378
-rw-r--r--sc/inc/subtotal.hxx57
-rw-r--r--sc/inc/tabbgcolor.hxx54
-rw-r--r--sc/inc/table.hxx927
-rw-r--r--sc/inc/tablink.hxx121
-rw-r--r--sc/inc/tabopparams.hxx104
-rw-r--r--sc/inc/tabprotection.hxx177
-rw-r--r--sc/inc/targuno.hxx206
-rw-r--r--sc/inc/textuno.hxx418
-rw-r--r--sc/inc/token.hxx507
-rw-r--r--sc/inc/tokenarray.hxx97
-rw-r--r--sc/inc/tokenuno.hxx158
-rw-r--r--sc/inc/unitconv.hxx73
-rw-r--r--sc/inc/unoguard.hxx42
-rw-r--r--sc/inc/unonames.hxx645
-rw-r--r--sc/inc/unoreflist.hxx84
-rw-r--r--sc/inc/unowids.hxx96
-rw-r--r--sc/inc/userdat.hxx118
-rw-r--r--sc/inc/userlist.hxx91
-rw-r--r--sc/inc/validat.hxx213
-rw-r--r--sc/inc/viewopti.hxx179
-rw-r--r--sc/inc/viewuno.hxx396
-rw-r--r--sc/inc/waitoff.hxx46
-rw-r--r--sc/inc/warnpassword.hxx48
-rw-r--r--sc/inc/xmlwrap.hxx85
-rw-r--r--sc/inc/zforauto.hxx72
-rw-r--r--sc/prj/build.lst57
-rw-r--r--sc/prj/d.lst37
-rw-r--r--sc/qa/complex/calcPreview/TestDocument.java39
-rwxr-xr-xsc/qa/complex/calcPreview/ViewForwarder.java1102
-rwxr-xr-xsc/qa/complex/calcPreview/makefile.mk123
-rwxr-xr-xsc/qa/complex/calcPreview/test_documents/calcshapes.sxcbin0 -> 13030 bytes-rwxr-xr-xsc/qa/complex/cellRanges/CheckXCellRangesQuery.java286
-rwxr-xr-xsc/qa/complex/cellRanges/makefile.mk51
-rw-r--r--sc/qa/complex/dataPilot/CheckDataPilot.java403
-rw-r--r--sc/qa/complex/dataPilot/_XDataPilotDescriptor.java464
-rw-r--r--sc/qa/complex/dataPilot/_XDataPilotTable.java135
-rw-r--r--sc/qa/complex/dataPilot/_XNamed.java159
-rw-r--r--sc/qa/complex/dataPilot/_XPropertySet.java631
-rw-r--r--sc/qa/complex/dataPilot/interfaceTests/beans/makefile.mk46
-rw-r--r--sc/qa/complex/dataPilot/interfaceTests/container/makefile.mk46
-rw-r--r--sc/qa/complex/dataPilot/interfaceTests/sheet/makefile.mk46
-rw-r--r--sc/qa/complex/dataPilot/makefile.mk59
-rw-r--r--sc/qa/complex/sc/CalcRTL.java601
-rw-r--r--sc/qa/complex/sc/makefile.mk51
-rw-r--r--sc/qa/unoapi/Test.java51
-rw-r--r--sc/qa/unoapi/knownissues.xcl199
-rw-r--r--sc/qa/unoapi/makefile.mk48
-rw-r--r--sc/qa/unoapi/sc.sce125
-rw-r--r--sc/qa/unoapi/testdocuments/10test.csv19
-rw-r--r--sc/qa/unoapi/testdocuments/ScAnnotationShapeObj.sxcbin0 -> 6542 bytes-rw-r--r--sc/qa/unoapi/testdocuments/ScDDELinksObj.sdcbin0 -> 17408 bytes-rw-r--r--sc/qa/unoapi/testdocuments/ScSheetLinksObj.sdcbin0 -> 16896 bytes-rw-r--r--sc/qa/unoapi/testdocuments/calcshapes.sxcbin0 -> 13030 bytes-rw-r--r--sc/qa/unoapi/testdocuments/crazy-blue.jpgbin0 -> 4451 bytes-rw-r--r--sc/qa/unoapi/testdocuments/space-metal.jpgbin0 -> 4313 bytes-rw-r--r--sc/sdi/app.sdi93
-rw-r--r--sc/sdi/auditsh.sdi41
-rw-r--r--sc/sdi/cellsh.sdi422
-rw-r--r--sc/sdi/chartsh.sdi31
-rw-r--r--sc/sdi/docsh.sdi123
-rw-r--r--sc/sdi/drawsh.sdi239
-rw-r--r--sc/sdi/drformsh.sdi31
-rw-r--r--sc/sdi/drtxtob.sdi148
-rw-r--r--sc/sdi/editsh.sdi109
-rw-r--r--sc/sdi/formatsh.sdi149
-rw-r--r--sc/sdi/graphsh.sdi152
-rw-r--r--sc/sdi/makefile.mk75
-rw-r--r--sc/sdi/mediash.sdi41
-rw-r--r--sc/sdi/oleobjsh.sdi31
-rw-r--r--sc/sdi/pgbrksh.sdi31
-rw-r--r--sc/sdi/pivotsh.sdi39
-rw-r--r--sc/sdi/prevwsh.sdi169
-rw-r--r--sc/sdi/scalc.sdi7828
-rw-r--r--sc/sdi/scslots.hrc33
-rw-r--r--sc/sdi/scslots.sdi78
-rw-r--r--sc/sdi/tabpopsh.sdi31
-rw-r--r--sc/sdi/tabvwsh.sdi285
-rw-r--r--sc/source/core/data/attarray.cxx2611
-rw-r--r--sc/source/core/data/attrib.cxx1328
-rw-r--r--sc/source/core/data/autonamecache.cxx109
-rw-r--r--sc/source/core/data/bcaslot.cxx937
-rw-r--r--sc/source/core/data/cell.cxx2037
-rw-r--r--sc/source/core/data/cell2.cxx1627
-rw-r--r--sc/source/core/data/clipparam.cxx200
-rw-r--r--sc/source/core/data/column.cxx2160
-rw-r--r--sc/source/core/data/column2.cxx1866
-rw-r--r--sc/source/core/data/column3.cxx2001
-rw-r--r--sc/source/core/data/compressedarray.cxx906
-rw-r--r--sc/source/core/data/conditio.cxx1603
-rw-r--r--sc/source/core/data/dbdocutl.cxx197
-rw-r--r--sc/source/core/data/dociter.cxx2158
-rw-r--r--sc/source/core/data/docpool.cxx1059
-rw-r--r--sc/source/core/data/documen2.cxx1300
-rw-r--r--sc/source/core/data/documen3.cxx2128
-rw-r--r--sc/source/core/data/documen4.cxx1198
-rw-r--r--sc/source/core/data/documen5.cxx794
-rw-r--r--sc/source/core/data/documen6.cxx184
-rw-r--r--sc/source/core/data/documen7.cxx534
-rw-r--r--sc/source/core/data/documen8.cxx1625
-rw-r--r--sc/source/core/data/documen9.cxx820
-rw-r--r--sc/source/core/data/document.cxx5266
-rw-r--r--sc/source/core/data/dpcachetable.cxx468
-rw-r--r--sc/source/core/data/dpdimsave.cxx584
-rwxr-xr-xsc/source/core/data/dpglobal.cxx150
-rw-r--r--sc/source/core/data/dpgroup.cxx1589
-rw-r--r--sc/source/core/data/dpobject.cxx2642
-rwxr-xr-xsc/source/core/data/dpoutput.cxx2060
-rw-r--r--sc/source/core/data/dpoutputgeometry.cxx214
-rw-r--r--sc/source/core/data/dpsave.cxx1480
-rw-r--r--sc/source/core/data/dpsdbtab.cxx312
-rwxr-xr-xsc/source/core/data/dpshttab.cxx315
-rwxr-xr-xsc/source/core/data/dptabdat.cxx329
-rwxr-xr-xsc/source/core/data/dptablecache.cxx1125
-rwxr-xr-xsc/source/core/data/dptabres.cxx4109
-rw-r--r--sc/source/core/data/dptabsrc.cxx2927
-rw-r--r--sc/source/core/data/drawpage.cxx65
-rwxr-xr-xsc/source/core/data/drwlayer.cxx2107
-rw-r--r--sc/source/core/data/fillinfo.cxx1079
-rw-r--r--sc/source/core/data/global.cxx1991
-rw-r--r--sc/source/core/data/global2.cxx915
-rw-r--r--sc/source/core/data/globalx.cxx171
-rwxr-xr-xsc/source/core/data/makefile.mk179
-rw-r--r--sc/source/core/data/markarr.cxx410
-rw-r--r--sc/source/core/data/markdata.cxx608
-rw-r--r--sc/source/core/data/olinetab.cxx806
-rw-r--r--sc/source/core/data/pagepar.cxx122
-rw-r--r--sc/source/core/data/patattr.cxx1347
-rw-r--r--sc/source/core/data/pivot2.cxx115
-rw-r--r--sc/source/core/data/poolhelp.cxx128
-rw-r--r--sc/source/core/data/postit.cxx920
-rw-r--r--sc/source/core/data/scdpoutputimpl.cxx187
-rwxr-xr-xsc/source/core/data/scdpoutputimpl.hxx79
-rw-r--r--sc/source/core/data/segmenttree.cxx582
-rw-r--r--sc/source/core/data/sheetevents.cxx172
-rw-r--r--sc/source/core/data/sortparam.cxx263
-rw-r--r--sc/source/core/data/stlpool.cxx641
-rw-r--r--sc/source/core/data/stlsheet.cxx346
-rw-r--r--sc/source/core/data/tabbgcolor.cxx62
-rw-r--r--sc/source/core/data/table1.cxx1711
-rw-r--r--sc/source/core/data/table2.cxx3192
-rw-r--r--sc/source/core/data/table3.cxx1957
-rw-r--r--sc/source/core/data/table4.cxx1990
-rw-r--r--sc/source/core/data/table5.cxx1195
-rw-r--r--sc/source/core/data/table6.cxx690
-rw-r--r--sc/source/core/data/tabprotection.cxx429
-rw-r--r--sc/source/core/data/userdat.cxx127
-rw-r--r--sc/source/core/data/validat.cxx996
-rw-r--r--sc/source/core/inc/addinhelpid.hxx60
-rw-r--r--sc/source/core/inc/addinlis.hxx98
-rw-r--r--sc/source/core/inc/adiasync.hxx92
-rw-r--r--sc/source/core/inc/bcaslot.hxx306
-rw-r--r--sc/source/core/inc/cellkeytranslator.hxx91
-rw-r--r--sc/source/core/inc/core_pch.hxx248
-rw-r--r--sc/source/core/inc/ddelink.hxx99
-rw-r--r--sc/source/core/inc/doubleref.hxx193
-rw-r--r--sc/source/core/inc/interpre.hxx905
-rw-r--r--sc/source/core/inc/jumpmatrix.hxx222
-rw-r--r--sc/source/core/inc/makefile.mk26
-rw-r--r--sc/source/core/inc/parclass.hxx180
-rw-r--r--sc/source/core/inc/poolhelp.hxx74
-rw-r--r--sc/source/core/inc/refupdat.hxx100
-rw-r--r--sc/source/core/inc/scrdata.hxx49
-rw-r--r--sc/source/core/src/compiler.src79
-rw-r--r--sc/source/core/src/makefile.mk48
-rw-r--r--sc/source/core/tool/addincfg.cxx72
-rw-r--r--sc/source/core/tool/addincol.cxx1802
-rw-r--r--sc/source/core/tool/addinhelpid.cxx217
-rw-r--r--sc/source/core/tool/addinlis.cxx190
-rw-r--r--sc/source/core/tool/address.cxx2029
-rw-r--r--sc/source/core/tool/adiasync.cxx187
-rw-r--r--sc/source/core/tool/appoptio.cxx745
-rw-r--r--sc/source/core/tool/autoform.cxx1200
-rw-r--r--sc/source/core/tool/callform.cxx469
-rw-r--r--sc/source/core/tool/cellform.cxx216
-rw-r--r--sc/source/core/tool/cellkeytranslator.cxx232
-rw-r--r--sc/source/core/tool/cellkeywords.inl181
-rw-r--r--sc/source/core/tool/chartarr.cxx615
-rw-r--r--sc/source/core/tool/charthelper.cxx298
-rw-r--r--sc/source/core/tool/chartlis.cxx736
-rw-r--r--sc/source/core/tool/chartlock.cxx195
-rw-r--r--sc/source/core/tool/chartpos.cxx623
-rw-r--r--sc/source/core/tool/chgtrack.cxx4869
-rw-r--r--sc/source/core/tool/chgviset.cxx178
-rw-r--r--sc/source/core/tool/collect.cxx522
-rw-r--r--sc/source/core/tool/compiler.cxx5484
-rw-r--r--sc/source/core/tool/consoli.cxx858
-rw-r--r--sc/source/core/tool/dbcolect.cxx891
-rw-r--r--sc/source/core/tool/ddelink.cxx279
-rw-r--r--sc/source/core/tool/detdata.cxx118
-rw-r--r--sc/source/core/tool/detfunc.cxx1712
-rw-r--r--sc/source/core/tool/docoptio.cxx442
-rw-r--r--sc/source/core/tool/doubleref.cxx565
-rw-r--r--sc/source/core/tool/editutil.cxx778
-rw-r--r--sc/source/core/tool/filtopt.cxx120
-rw-r--r--sc/source/core/tool/formulaparserpool.cxx168
-rw-r--r--sc/source/core/tool/hints.cxx162
-rw-r--r--sc/source/core/tool/inputopt.cxx274
-rw-r--r--sc/source/core/tool/interpr1.cxx7444
-rw-r--r--sc/source/core/tool/interpr2.cxx3024
-rw-r--r--sc/source/core/tool/interpr3.cxx4244
-rwxr-xr-xsc/source/core/tool/interpr4.cxx3979
-rw-r--r--sc/source/core/tool/interpr5.cxx2815
-rw-r--r--sc/source/core/tool/interpr6.cxx199
-rw-r--r--sc/source/core/tool/lookupcache.cxx126
-rw-r--r--sc/source/core/tool/makefile.mk167
-rw-r--r--sc/source/core/tool/navicfg.cxx80
-rw-r--r--sc/source/core/tool/odffmap.cxx149
-rw-r--r--sc/source/core/tool/optutil.cxx79
-rw-r--r--sc/source/core/tool/parclass.cxx578
-rw-r--r--sc/source/core/tool/printopt.cxx211
-rw-r--r--sc/source/core/tool/prnsave.cxx135
-rw-r--r--sc/source/core/tool/progress.cxx198
-rw-r--r--sc/source/core/tool/queryparam.cxx369
-rw-r--r--sc/source/core/tool/rangelst.cxx703
-rw-r--r--sc/source/core/tool/rangenam.cxx824
-rw-r--r--sc/source/core/tool/rangeseq.cxx476
-rw-r--r--sc/source/core/tool/rangeutl.cxx1054
-rw-r--r--sc/source/core/tool/rechead.cxx173
-rw-r--r--sc/source/core/tool/refdata.cxx372
-rw-r--r--sc/source/core/tool/reffind.cxx168
-rw-r--r--sc/source/core/tool/refreshtimer.cxx81
-rw-r--r--sc/source/core/tool/reftokenhelper.cxx479
-rw-r--r--sc/source/core/tool/refupdat.cxx939
-rw-r--r--sc/source/core/tool/scmatrix.cxx859
-rw-r--r--sc/source/core/tool/stringutil.cxx131
-rw-r--r--sc/source/core/tool/subtotal.cxx81
-rw-r--r--sc/source/core/tool/token.cxx1836
-rw-r--r--sc/source/core/tool/unitconv.cxx178
-rw-r--r--sc/source/core/tool/userlist.cxx297
-rw-r--r--sc/source/core/tool/viewopti.cxx754
-rw-r--r--sc/source/core/tool/zforauto.cxx106
-rw-r--r--sc/source/filter/dif/difexp.cxx317
-rw-r--r--sc/source/filter/dif/difimp.cxx1008
-rw-r--r--sc/source/filter/dif/makefile.mk54
-rw-r--r--sc/source/filter/excel/colrowst.cxx318
-rw-r--r--sc/source/filter/excel/excdoc.cxx832
-rw-r--r--sc/source/filter/excel/excel.cxx304
-rw-r--r--sc/source/filter/excel/excform.cxx2013
-rw-r--r--sc/source/filter/excel/excform8.cxx1596
-rw-r--r--sc/source/filter/excel/excimp8.cxx727
-rw-r--r--sc/source/filter/excel/excrecds.cxx1051
-rw-r--r--sc/source/filter/excel/exctools.cxx434
-rw-r--r--sc/source/filter/excel/expop2.cxx219
-rw-r--r--sc/source/filter/excel/fontbuff.cxx163
-rw-r--r--sc/source/filter/excel/frmbase.cxx282
-rw-r--r--sc/source/filter/excel/impop.cxx1334
-rw-r--r--sc/source/filter/excel/makefile.mk160
-rw-r--r--sc/source/filter/excel/namebuff.cxx344
-rw-r--r--sc/source/filter/excel/ooxml-export-TODO.txt148
-rw-r--r--sc/source/filter/excel/read.cxx1243
-rw-r--r--sc/source/filter/excel/tokstack.cxx888
-rw-r--r--sc/source/filter/excel/xechart.cxx3303
-rw-r--r--sc/source/filter/excel/xecontent.cxx1462
-rw-r--r--sc/source/filter/excel/xeescher.cxx1284
-rw-r--r--sc/source/filter/excel/xeformula.cxx2646
-rw-r--r--sc/source/filter/excel/xehelper.cxx1144
-rw-r--r--sc/source/filter/excel/xelink.cxx2371
-rw-r--r--sc/source/filter/excel/xename.cxx791
-rw-r--r--sc/source/filter/excel/xepage.cxx414
-rw-r--r--sc/source/filter/excel/xepivot.cxx1810
-rw-r--r--sc/source/filter/excel/xerecord.cxx302
-rw-r--r--sc/source/filter/excel/xeroot.cxx269
-rw-r--r--sc/source/filter/excel/xestream.cxx1034
-rw-r--r--sc/source/filter/excel/xestring.cxx656
-rw-r--r--sc/source/filter/excel/xestyle.cxx2903
-rw-r--r--sc/source/filter/excel/xetable.cxx2579
-rw-r--r--sc/source/filter/excel/xeview.cxx538
-rw-r--r--sc/source/filter/excel/xichart.cxx4147
-rw-r--r--sc/source/filter/excel/xicontent.cxx1319
-rw-r--r--sc/source/filter/excel/xiescher.cxx4120
-rw-r--r--sc/source/filter/excel/xiformula.cxx127
-rw-r--r--sc/source/filter/excel/xihelper.cxx918
-rw-r--r--sc/source/filter/excel/xilink.cxx807
-rw-r--r--sc/source/filter/excel/xiname.cxx262
-rw-r--r--sc/source/filter/excel/xipage.cxx390
-rw-r--r--sc/source/filter/excel/xipivot.cxx1638
-rw-r--r--sc/source/filter/excel/xiroot.cxx299
-rw-r--r--sc/source/filter/excel/xistream.cxx1102
-rw-r--r--sc/source/filter/excel/xistring.cxx213
-rw-r--r--sc/source/filter/excel/xistyle.cxx1823
-rw-r--r--sc/source/filter/excel/xiview.cxx304
-rw-r--r--sc/source/filter/excel/xladdress.cxx161
-rw-r--r--sc/source/filter/excel/xlchart.cxx1328
-rw-r--r--sc/source/filter/excel/xlescher.cxx379
-rw-r--r--sc/source/filter/excel/xlformula.cxx786
-rw-r--r--sc/source/filter/excel/xlpage.cxx248
-rw-r--r--sc/source/filter/excel/xlpivot.cxx1031
-rw-r--r--sc/source/filter/excel/xlroot.cxx419
-rw-r--r--sc/source/filter/excel/xlstyle.cxx1771
-rw-r--r--sc/source/filter/excel/xltools.cxx736
-rw-r--r--sc/source/filter/excel/xltracer.cxx270
-rw-r--r--sc/source/filter/excel/xlview.cxx115
-rw-r--r--sc/source/filter/ftools/fapihelper.cxx412
-rw-r--r--sc/source/filter/ftools/fprogressbar.cxx260
-rw-r--r--sc/source/filter/ftools/ftools.cxx406
-rw-r--r--sc/source/filter/ftools/makefile.mk58
-rw-r--r--sc/source/filter/html/htmlexp.cxx1341
-rw-r--r--sc/source/filter/html/htmlexp2.cxx249
-rw-r--r--sc/source/filter/html/htmlimp.cxx260
-rw-r--r--sc/source/filter/html/htmlpars.cxx3069
-rw-r--r--sc/source/filter/html/makefile.mk62
-rw-r--r--sc/source/filter/inc/XclExpChangeTrack.hxx641
-rw-r--r--sc/source/filter/inc/XclImpChangeTrack.hxx202
-rw-r--r--sc/source/filter/inc/biff.hxx64
-rw-r--r--sc/source/filter/inc/colrowst.hxx80
-rw-r--r--sc/source/filter/inc/decl.h44
-rw-r--r--sc/source/filter/inc/dif.hxx227
-rw-r--r--sc/source/filter/inc/eeimport.hxx68
-rw-r--r--sc/source/filter/inc/eeparser.hxx153
-rw-r--r--sc/source/filter/inc/excdefs.hxx106
-rw-r--r--sc/source/filter/inc/excdoc.hxx120
-rw-r--r--sc/source/filter/inc/excform.hxx160
-rw-r--r--sc/source/filter/inc/excimp8.hxx165
-rw-r--r--sc/source/filter/inc/excrecds.hxx506
-rw-r--r--sc/source/filter/inc/excscen.hxx147
-rw-r--r--sc/source/filter/inc/exp_op.hxx147
-rw-r--r--sc/source/filter/inc/expbase.hxx82
-rw-r--r--sc/source/filter/inc/fapihelper.hxx352
-rw-r--r--sc/source/filter/inc/filt_pch.hxx321
-rw-r--r--sc/source/filter/inc/fkttab.h46
-rw-r--r--sc/source/filter/inc/flttypes.hxx51
-rw-r--r--sc/source/filter/inc/formel.hxx296
-rw-r--r--sc/source/filter/inc/fprogressbar.hxx243
-rw-r--r--sc/source/filter/inc/ftools.hxx544
-rw-r--r--sc/source/filter/inc/funktion.h50
-rw-r--r--sc/source/filter/inc/htmlexp.hxx174
-rw-r--r--sc/source/filter/inc/htmlimp.hxx52
-rw-r--r--sc/source/filter/inc/htmlpars.hxx638
-rw-r--r--sc/source/filter/inc/imp_op.hxx205
-rw-r--r--sc/source/filter/inc/lotattr.hxx153
-rw-r--r--sc/source/filter/inc/lotfntbf.hxx111
-rw-r--r--sc/source/filter/inc/lotform.hxx132
-rw-r--r--sc/source/filter/inc/lotimpop.hxx169
-rw-r--r--sc/source/filter/inc/lotrange.hxx167
-rw-r--r--sc/source/filter/inc/makefile.mk26
-rw-r--r--sc/source/filter/inc/namebuff.hxx356
-rw-r--r--sc/source/filter/inc/op.h70
-rw-r--r--sc/source/filter/inc/optab.h52
-rw-r--r--sc/source/filter/inc/otlnbuff.hxx78
-rw-r--r--sc/source/filter/inc/qpro.hxx59
-rw-r--r--sc/source/filter/inc/qproform.hxx86
-rw-r--r--sc/source/filter/inc/qprostyle.hxx69
-rw-r--r--sc/source/filter/inc/root.hxx119
-rw-r--r--sc/source/filter/inc/rtfexp.hxx52
-rw-r--r--sc/source/filter/inc/rtfimp.hxx41
-rw-r--r--sc/source/filter/inc/rtfparse.hxx89
-rw-r--r--sc/source/filter/inc/scflt.hxx764
-rw-r--r--sc/source/filter/inc/scfobj.hxx45
-rw-r--r--sc/source/filter/inc/scmem.h37
-rw-r--r--sc/source/filter/inc/tokstack.hxx408
-rw-r--r--sc/source/filter/inc/tool.h164
-rw-r--r--sc/source/filter/inc/xcl97dum.hxx90
-rw-r--r--sc/source/filter/inc/xcl97esc.hxx201
-rw-r--r--sc/source/filter/inc/xcl97rec.hxx592
-rw-r--r--sc/source/filter/inc/xechart.hxx1275
-rw-r--r--sc/source/filter/inc/xecontent.hxx352
-rw-r--r--sc/source/filter/inc/xeescher.hxx435
-rw-r--r--sc/source/filter/inc/xeformula.hxx97
-rw-r--r--sc/source/filter/inc/xehelper.hxx451
-rw-r--r--sc/source/filter/inc/xelink.hxx221
-rw-r--r--sc/source/filter/inc/xename.hxx91
-rw-r--r--sc/source/filter/inc/xepage.hxx137
-rw-r--r--sc/source/filter/inc/xepivot.hxx486
-rw-r--r--sc/source/filter/inc/xerecord.hxx419
-rw-r--r--sc/source/filter/inc/xeroot.hxx175
-rw-r--r--sc/source/filter/inc/xestream.hxx355
-rw-r--r--sc/source/filter/inc/xestring.hxx350
-rw-r--r--sc/source/filter/inc/xestyle.hxx781
-rw-r--r--sc/source/filter/inc/xetable.hxx1089
-rw-r--r--sc/source/filter/inc/xeview.hxx180
-rw-r--r--sc/source/filter/inc/xichart.hxx1514
-rw-r--r--sc/source/filter/inc/xicontent.hxx311
-rw-r--r--sc/source/filter/inc/xiescher.hxx1275
-rw-r--r--sc/source/filter/inc/xiformula.hxx68
-rw-r--r--sc/source/filter/inc/xihelper.hxx369
-rw-r--r--sc/source/filter/inc/xilink.hxx210
-rw-r--r--sc/source/filter/inc/xiname.hxx98
-rw-r--r--sc/source/filter/inc/xipage.hxx82
-rw-r--r--sc/source/filter/inc/xipivot.hxx457
-rw-r--r--sc/source/filter/inc/xiroot.hxx219
-rw-r--r--sc/source/filter/inc/xistream.hxx529
-rw-r--r--sc/source/filter/inc/xistring.hxx121
-rw-r--r--sc/source/filter/inc/xistyle.hxx679
-rw-r--r--sc/source/filter/inc/xiview.hxx95
-rw-r--r--sc/source/filter/inc/xladdress.hxx197
-rw-r--r--sc/source/filter/inc/xlchart.hxx1486
-rw-r--r--sc/source/filter/inc/xlconst.hxx277
-rw-r--r--sc/source/filter/inc/xlcontent.hxx194
-rw-r--r--sc/source/filter/inc/xlescher.hxx450
-rw-r--r--sc/source/filter/inc/xlformula.hxx569
-rw-r--r--sc/source/filter/inc/xllink.hxx93
-rw-r--r--sc/source/filter/inc/xlname.hxx75
-rw-r--r--sc/source/filter/inc/xlpage.hxx156
-rw-r--r--sc/source/filter/inc/xlpivot.hxx817
-rw-r--r--sc/source/filter/inc/xlroot.hxx289
-rw-r--r--sc/source/filter/inc/xlstream.hxx53
-rw-r--r--sc/source/filter/inc/xlstring.hxx97
-rw-r--r--sc/source/filter/inc/xlstyle.hxx619
-rw-r--r--sc/source/filter/inc/xltable.hxx202
-rw-r--r--sc/source/filter/inc/xltools.hxx267
-rw-r--r--sc/source/filter/inc/xltracer.hxx148
-rw-r--r--sc/source/filter/inc/xlview.hxx178
-rw-r--r--sc/source/filter/lotus/expop.cxx412
-rw-r--r--sc/source/filter/lotus/export.cxx58
-rw-r--r--sc/source/filter/lotus/filter.cxx248
-rw-r--r--sc/source/filter/lotus/lotattr.cxx299
-rw-r--r--sc/source/filter/lotus/lotform.cxx2074
-rw-r--r--sc/source/filter/lotus/lotimpop.cxx473
-rw-r--r--sc/source/filter/lotus/lotread.cxx324
-rw-r--r--sc/source/filter/lotus/lotus.cxx102
-rw-r--r--sc/source/filter/lotus/makefile.mk69
-rw-r--r--sc/source/filter/lotus/memory.cxx139
-rw-r--r--sc/source/filter/lotus/op.cxx684
-rw-r--r--sc/source/filter/lotus/optab.cxx248
-rw-r--r--sc/source/filter/lotus/tool.cxx651
-rw-r--r--sc/source/filter/qpro/biff.cxx104
-rw-r--r--sc/source/filter/qpro/makefile.mk57
-rw-r--r--sc/source/filter/qpro/qpro.cxx230
-rw-r--r--sc/source/filter/qpro/qproform.cxx745
-rw-r--r--sc/source/filter/qpro/qprostyle.cxx167
-rw-r--r--sc/source/filter/rtf/eeimpars.cxx636
-rw-r--r--sc/source/filter/rtf/expbase.cxx107
-rw-r--r--sc/source/filter/rtf/makefile.mk59
-rw-r--r--sc/source/filter/rtf/rtfexp.cxx305
-rw-r--r--sc/source/filter/rtf/rtfimp.cxx75
-rw-r--r--sc/source/filter/rtf/rtfparse.cxx420
-rw-r--r--sc/source/filter/starcalc/makefile.mk56
-rw-r--r--sc/source/filter/starcalc/scflt.cxx2511
-rw-r--r--sc/source/filter/starcalc/scfobj.cxx104
-rw-r--r--sc/source/filter/xcl97/XclExpChangeTrack.cxx1248
-rw-r--r--sc/source/filter/xcl97/XclImpChangeTrack.cxx502
-rw-r--r--sc/source/filter/xcl97/makefile.mk62
-rw-r--r--sc/source/filter/xcl97/xcl97dum.cxx163
-rw-r--r--sc/source/filter/xcl97/xcl97esc.cxx512
-rw-r--r--sc/source/filter/xcl97/xcl97rec.cxx1448
-rw-r--r--sc/source/filter/xml/XMLCalculationSettingsContext.cxx273
-rw-r--r--sc/source/filter/xml/XMLCalculationSettingsContext.hxx111
-rw-r--r--sc/source/filter/xml/XMLCellRangeSourceContext.cxx133
-rw-r--r--sc/source/filter/xml/XMLCellRangeSourceContext.hxx80
-rw-r--r--sc/source/filter/xml/XMLChangeTrackingExportHelper.cxx817
-rw-r--r--sc/source/filter/xml/XMLChangeTrackingExportHelper.hxx98
-rw-r--r--sc/source/filter/xml/XMLChangeTrackingImportHelper.cxx935
-rw-r--r--sc/source/filter/xml/XMLChangeTrackingImportHelper.hxx249
-rwxr-xr-xsc/source/filter/xml/XMLCodeNameProvider.cxx204
-rwxr-xr-xsc/source/filter/xml/XMLCodeNameProvider.hxx70
-rw-r--r--sc/source/filter/xml/XMLColumnRowGroupExport.cxx187
-rw-r--r--sc/source/filter/xml/XMLColumnRowGroupExport.hxx73
-rw-r--r--sc/source/filter/xml/XMLConsolidationContext.cxx160
-rw-r--r--sc/source/filter/xml/XMLConsolidationContext.hxx73
-rw-r--r--sc/source/filter/xml/XMLConverter.cxx670
-rw-r--r--sc/source/filter/xml/XMLConverter.hxx177
-rw-r--r--sc/source/filter/xml/XMLDDELinksContext.cxx490
-rw-r--r--sc/source/filter/xml/XMLDDELinksContext.hxx230
-rw-r--r--sc/source/filter/xml/XMLDetectiveContext.cxx265
-rw-r--r--sc/source/filter/xml/XMLDetectiveContext.hxx175
-rw-r--r--sc/source/filter/xml/XMLEmptyContext.cxx63
-rw-r--r--sc/source/filter/xml/XMLEmptyContext.hxx57
-rw-r--r--sc/source/filter/xml/XMLExportDDELinks.cxx221
-rw-r--r--sc/source/filter/xml/XMLExportDDELinks.hxx52
-rw-r--r--sc/source/filter/xml/XMLExportDataPilot.cxx898
-rw-r--r--sc/source/filter/xml/XMLExportDataPilot.hxx80
-rw-r--r--sc/source/filter/xml/XMLExportDatabaseRanges.cxx699
-rw-r--r--sc/source/filter/xml/XMLExportDatabaseRanges.hxx62
-rw-r--r--sc/source/filter/xml/XMLExportIterator.cxx892
-rw-r--r--sc/source/filter/xml/XMLExportIterator.hxx413
-rw-r--r--sc/source/filter/xml/XMLExportSharedData.cxx163
-rw-r--r--sc/source/filter/xml/XMLExportSharedData.hxx90
-rw-r--r--sc/source/filter/xml/XMLStylesExportHelper.cxx1267
-rw-r--r--sc/source/filter/xml/XMLStylesExportHelper.hxx294
-rw-r--r--sc/source/filter/xml/XMLStylesImportHelper.cxx587
-rw-r--r--sc/source/filter/xml/XMLStylesImportHelper.hxx195
-rw-r--r--sc/source/filter/xml/XMLTableHeaderFooterContext.cxx268
-rw-r--r--sc/source/filter/xml/XMLTableHeaderFooterContext.hxx114
-rw-r--r--sc/source/filter/xml/XMLTableMasterPageExport.cxx178
-rw-r--r--sc/source/filter/xml/XMLTableMasterPageExport.hxx66
-rw-r--r--sc/source/filter/xml/XMLTableShapeImportHelper.cxx215
-rw-r--r--sc/source/filter/xml/XMLTableShapeImportHelper.hxx62
-rw-r--r--sc/source/filter/xml/XMLTableShapeResizer.cxx385
-rw-r--r--sc/source/filter/xml/XMLTableShapeResizer.hxx81
-rw-r--r--sc/source/filter/xml/XMLTableShapesContext.cxx87
-rw-r--r--sc/source/filter/xml/XMLTableShapesContext.hxx55
-rw-r--r--sc/source/filter/xml/XMLTableSourceContext.cxx146
-rw-r--r--sc/source/filter/xml/XMLTableSourceContext.hxx63
-rw-r--r--sc/source/filter/xml/XMLTextPContext.cxx224
-rw-r--r--sc/source/filter/xml/XMLTextPContext.hxx72
-rw-r--r--sc/source/filter/xml/XMLTrackedChangesContext.cxx2025
-rw-r--r--sc/source/filter/xml/XMLTrackedChangesContext.hxx62
-rw-r--r--sc/source/filter/xml/makefile.mk109
-rw-r--r--sc/source/filter/xml/sheetdata.cxx283
-rw-r--r--sc/source/filter/xml/xmlannoi.cxx220
-rw-r--r--sc/source/filter/xml/xmlannoi.hxx122
-rw-r--r--sc/source/filter/xml/xmlbodyi.cxx338
-rw-r--r--sc/source/filter/xml/xmlbodyi.hxx61
-rw-r--r--sc/source/filter/xml/xmlcelli.cxx1127
-rw-r--r--sc/source/filter/xml/xmlcelli.hxx130
-rw-r--r--sc/source/filter/xml/xmlcoli.cxx333
-rw-r--r--sc/source/filter/xml/xmlcoli.hxx93
-rw-r--r--sc/source/filter/xml/xmlconti.cxx107
-rw-r--r--sc/source/filter/xml/xmlconti.hxx63
-rw-r--r--sc/source/filter/xml/xmlcvali.cxx696
-rw-r--r--sc/source/filter/xml/xmlcvali.hxx61
-rw-r--r--sc/source/filter/xml/xmldpimp.cxx1835
-rw-r--r--sc/source/filter/xml/xmldpimp.hxx693
-rw-r--r--sc/source/filter/xml/xmldrani.cxx991
-rw-r--r--sc/source/filter/xml/xmldrani.hxx362
-rw-r--r--sc/source/filter/xml/xmlexprt.cxx4611
-rw-r--r--sc/source/filter/xml/xmlexprt.hxx293
-rw-r--r--sc/source/filter/xml/xmlexternaltabi.cxx437
-rw-r--r--sc/source/filter/xml/xmlexternaltabi.hxx176
-rw-r--r--sc/source/filter/xml/xmlfilti.cxx785
-rw-r--r--sc/source/filter/xml/xmlfilti.hxx310
-rw-r--r--sc/source/filter/xml/xmlfonte.cxx152
-rw-r--r--sc/source/filter/xml/xmlimprt.cxx3048
-rw-r--r--sc/source/filter/xml/xmlimprt.hxx1048
-rw-r--r--sc/source/filter/xml/xmllabri.cxx145
-rw-r--r--sc/source/filter/xml/xmllabri.hxx90
-rw-r--r--sc/source/filter/xml/xmlnexpi.cxx250
-rw-r--r--sc/source/filter/xml/xmlnexpi.hxx101
-rw-r--r--sc/source/filter/xml/xmlrowi.cxx360
-rw-r--r--sc/source/filter/xml/xmlrowi.hxx93
-rw-r--r--sc/source/filter/xml/xmlsceni.cxx173
-rw-r--r--sc/source/filter/xml/xmlsceni.hxx70
-rw-r--r--sc/source/filter/xml/xmlsorti.cxx279
-rw-r--r--sc/source/filter/xml/xmlsorti.hxx106
-rw-r--r--sc/source/filter/xml/xmlstyle.cxx1876
-rw-r--r--sc/source/filter/xml/xmlstyle.hxx349
-rw-r--r--sc/source/filter/xml/xmlstyli.cxx1087
-rw-r--r--sc/source/filter/xml/xmlstyli.hxx329
-rw-r--r--sc/source/filter/xml/xmlsubti.cxx833
-rw-r--r--sc/source/filter/xml/xmlsubti.hxx193
-rw-r--r--sc/source/filter/xml/xmltabi.cxx422
-rw-r--r--sc/source/filter/xml/xmltabi.hxx78
-rw-r--r--sc/source/filter/xml/xmlwrap.cxx1024
-rw-r--r--sc/source/ui/Accessibility/AccessibilityHints.cxx112
-rw-r--r--sc/source/ui/Accessibility/AccessibleCell.cxx459
-rw-r--r--sc/source/ui/Accessibility/AccessibleCellBase.cxx345
-rw-r--r--sc/source/ui/Accessibility/AccessibleContextBase.cxx628
-rw-r--r--sc/source/ui/Accessibility/AccessibleCsvControl.cxx1680
-rw-r--r--sc/source/ui/Accessibility/AccessibleDataPilotControl.cxx739
-rw-r--r--sc/source/ui/Accessibility/AccessibleDocument.cxx2120
-rw-r--r--sc/source/ui/Accessibility/AccessibleDocumentBase.cxx51
-rw-r--r--sc/source/ui/Accessibility/AccessibleDocumentPagePreview.cxx1942
-rw-r--r--sc/source/ui/Accessibility/AccessibleEditObject.cxx358
-rw-r--r--sc/source/ui/Accessibility/AccessibleFilterMenu.cxx398
-rw-r--r--sc/source/ui/Accessibility/AccessibleFilterMenuItem.cxx205
-rw-r--r--sc/source/ui/Accessibility/AccessibleFilterTopWindow.cxx127
-rw-r--r--sc/source/ui/Accessibility/AccessibleGlobal.cxx95
-rw-r--r--sc/source/ui/Accessibility/AccessiblePageHeader.cxx441
-rw-r--r--sc/source/ui/Accessibility/AccessiblePageHeaderArea.cxx330
-rw-r--r--sc/source/ui/Accessibility/AccessiblePreviewCell.cxx316
-rw-r--r--sc/source/ui/Accessibility/AccessiblePreviewHeaderCell.cxx443
-rw-r--r--sc/source/ui/Accessibility/AccessiblePreviewTable.cxx769
-rw-r--r--sc/source/ui/Accessibility/AccessibleSpreadsheet.cxx999
-rw-r--r--sc/source/ui/Accessibility/AccessibleTableBase.cxx495
-rw-r--r--sc/source/ui/Accessibility/AccessibleText.cxx1911
-rw-r--r--sc/source/ui/Accessibility/DrawModelBroadcaster.cxx92
-rw-r--r--sc/source/ui/Accessibility/makefile.mk94
-rw-r--r--sc/source/ui/app/client.cxx256
-rw-r--r--sc/source/ui/app/drwtrans.cxx804
-rw-r--r--sc/source/ui/app/inputhdl.cxx3826
-rwxr-xr-xsc/source/ui/app/inputwin.cxx1823
-rw-r--r--sc/source/ui/app/lnktrans.cxx97
-rw-r--r--sc/source/ui/app/makefile.mk75
-rw-r--r--sc/source/ui/app/msgpool.cxx123
-rw-r--r--sc/source/ui/app/rfindlst.cxx67
-rw-r--r--sc/source/ui/app/scdll.cxx365
-rw-r--r--sc/source/ui/app/scmod.cxx2214
-rw-r--r--sc/source/ui/app/scmod2.cxx107
-rw-r--r--sc/source/ui/app/seltrans.cxx449
-rw-r--r--sc/source/ui/app/template.cxx79
-rw-r--r--sc/source/ui/app/transobj.cxx867
-rw-r--r--sc/source/ui/app/typemap.cxx135
-rw-r--r--sc/source/ui/app/uiitems.cxx737
-rw-r--r--sc/source/ui/app/wtcdummy.cxx65
-rw-r--r--sc/source/ui/attrdlg/attrdlg.cxx158
-rw-r--r--sc/source/ui/attrdlg/condfrmt.cxx829
-rw-r--r--sc/source/ui/attrdlg/makefile.mk63
-rw-r--r--sc/source/ui/attrdlg/scabstdlg.cxx56
-rw-r--r--sc/source/ui/attrdlg/scdlgfact.cxx1600
-rw-r--r--sc/source/ui/attrdlg/scdlgfact.hxx593
-rw-r--r--sc/source/ui/attrdlg/scuiexp.cxx55
-rw-r--r--sc/source/ui/attrdlg/tabpages.cxx250
-rw-r--r--sc/source/ui/cctrl/cbuttonw.cxx178
-rw-r--r--sc/source/ui/cctrl/dpcontrol.cxx1422
-rw-r--r--sc/source/ui/cctrl/dpcontrol.src79
-rw-r--r--sc/source/ui/cctrl/editfield.cxx84
-rw-r--r--sc/source/ui/cctrl/makefile.mk71
-rw-r--r--sc/source/ui/cctrl/popmenu.cxx48
-rw-r--r--sc/source/ui/cctrl/tbinsert.cxx232
-rw-r--r--sc/source/ui/cctrl/tbzoomsliderctrl.cxx540
-rw-r--r--sc/source/ui/dbgui/asciiopt.cxx480
-rw-r--r--sc/source/ui/dbgui/asciiopt.hrc71
-rw-r--r--sc/source/ui/dbgui/asciiopt.src322
-rw-r--r--sc/source/ui/dbgui/consdlg.cxx655
-rw-r--r--sc/source/ui/dbgui/consdlg.hrc61
-rw-r--r--sc/source/ui/dbgui/consdlg.src231
-rw-r--r--sc/source/ui/dbgui/csvcontrol.cxx337
-rw-r--r--sc/source/ui/dbgui/csvgrid.cxx1355
-rw-r--r--sc/source/ui/dbgui/csvruler.cxx682
-rw-r--r--sc/source/ui/dbgui/csvsplits.cxx120
-rw-r--r--sc/source/ui/dbgui/csvtablebox.cxx464
-rw-r--r--sc/source/ui/dbgui/dapidata.cxx229
-rw-r--r--sc/source/ui/dbgui/dapitype.cxx142
-rw-r--r--sc/source/ui/dbgui/dapitype.hrc53
-rw-r--r--sc/source/ui/dbgui/dapitype.src319
-rw-r--r--sc/source/ui/dbgui/dbnamdlg.cxx721
-rw-r--r--sc/source/ui/dbgui/dpgroupdlg.cxx360
-rw-r--r--sc/source/ui/dbgui/dpgroupdlg.hrc64
-rw-r--r--sc/source/ui/dbgui/dpgroupdlg.src286
-rw-r--r--sc/source/ui/dbgui/expftext.cxx95
-rw-r--r--sc/source/ui/dbgui/fieldwnd.cxx776
-rw-r--r--sc/source/ui/dbgui/filtdlg.cxx1186
-rw-r--r--sc/source/ui/dbgui/foptmgr.cxx337
-rw-r--r--sc/source/ui/dbgui/imoptdlg.cxx90
-rw-r--r--sc/source/ui/dbgui/imoptdlg.hrc44
-rw-r--r--sc/source/ui/dbgui/imoptdlg.src147
-rw-r--r--sc/source/ui/dbgui/makefile.mk122
-rw-r--r--sc/source/ui/dbgui/outline.src51
-rw-r--r--sc/source/ui/dbgui/pfiltdlg.cxx620
-rw-r--r--sc/source/ui/dbgui/pivot.hrc81
-rw-r--r--sc/source/ui/dbgui/pivot.src342
-rw-r--r--sc/source/ui/dbgui/pvfundlg.cxx790
-rw-r--r--sc/source/ui/dbgui/pvfundlg.hrc83
-rw-r--r--sc/source/ui/dbgui/pvfundlg.src538
-rw-r--r--sc/source/ui/dbgui/pvglob.hxx42
-rw-r--r--sc/source/ui/dbgui/pvlaydlg.cxx1823
-rw-r--r--sc/source/ui/dbgui/scendlg.cxx243
-rw-r--r--sc/source/ui/dbgui/scendlg.hrc57
-rw-r--r--sc/source/ui/dbgui/scendlg.src206
-rw-r--r--sc/source/ui/dbgui/scuiasciiopt.cxx718
-rw-r--r--sc/source/ui/dbgui/scuiimoptdlg.cxx316
-rw-r--r--sc/source/ui/dbgui/sfiltdlg.cxx530
-rw-r--r--sc/source/ui/dbgui/sortdlg.cxx107
-rw-r--r--sc/source/ui/dbgui/subtdlg.cxx69
-rw-r--r--sc/source/ui/dbgui/textimportoptions.cxx121
-rw-r--r--sc/source/ui/dbgui/textimportoptions.src115
-rw-r--r--sc/source/ui/dbgui/tpsort.cxx1080
-rw-r--r--sc/source/ui/dbgui/tpsubt.cxx686
-rw-r--r--sc/source/ui/dbgui/validate.cxx1021
-rw-r--r--sc/source/ui/dbgui/validate.src427
-rw-r--r--sc/source/ui/docshell/arealink.cxx530
-rw-r--r--sc/source/ui/docshell/autostyl.cxx244
-rw-r--r--sc/source/ui/docshell/dbdocfun.cxx1503
-rw-r--r--sc/source/ui/docshell/dbdocimp.cxx720
-rw-r--r--sc/source/ui/docshell/docfunc.cxx4881
-rw-r--r--sc/source/ui/docshell/docsh.cxx2948
-rw-r--r--sc/source/ui/docshell/docsh2.cxx263
-rw-r--r--sc/source/ui/docshell/docsh3.cxx1409
-rw-r--r--sc/source/ui/docshell/docsh4.cxx2734
-rw-r--r--sc/source/ui/docshell/docsh5.cxx995
-rw-r--r--sc/source/ui/docshell/docsh6.cxx469
-rw-r--r--sc/source/ui/docshell/docsh7.cxx45
-rw-r--r--sc/source/ui/docshell/docsh8.cxx1098
-rw-r--r--sc/source/ui/docshell/docshimp.hxx57
-rw-r--r--sc/source/ui/docshell/editable.cxx162
-rw-r--r--sc/source/ui/docshell/externalrefmgr.cxx2455
-rw-r--r--sc/source/ui/docshell/hiranges.cxx53
-rw-r--r--sc/source/ui/docshell/impex.cxx2094
-rw-r--r--sc/source/ui/docshell/makefile.mk139
-rw-r--r--sc/source/ui/docshell/olinefun.cxx790
-rw-r--r--sc/source/ui/docshell/pagedata.cxx139
-rw-r--r--sc/source/ui/docshell/pntlock.cxx61
-rw-r--r--sc/source/ui/docshell/servobj.cxx273
-rw-r--r--sc/source/ui/docshell/sizedev.cxx77
-rw-r--r--sc/source/ui/docshell/tablink.cxx621
-rw-r--r--sc/source/ui/docshell/tpstat.cxx101
-rw-r--r--sc/source/ui/docshell/tpstat.hrc36
-rw-r--r--sc/source/ui/docshell/tpstat.src112
-rw-r--r--sc/source/ui/drawfunc/chartsh.cxx83
-rw-r--r--sc/source/ui/drawfunc/drawsh.cxx503
-rw-r--r--sc/source/ui/drawfunc/drawsh2.cxx399
-rw-r--r--sc/source/ui/drawfunc/drawsh4.cxx115
-rw-r--r--sc/source/ui/drawfunc/drawsh5.cxx760
-rw-r--r--sc/source/ui/drawfunc/drformsh.cxx83
-rw-r--r--sc/source/ui/drawfunc/drformsh.src250
-rw-r--r--sc/source/ui/drawfunc/drtxtob.cxx1095
-rw-r--r--sc/source/ui/drawfunc/drtxtob1.cxx156
-rw-r--r--sc/source/ui/drawfunc/drtxtob2.cxx299
-rw-r--r--sc/source/ui/drawfunc/fuconarc.cxx234
-rw-r--r--sc/source/ui/drawfunc/fuconcustomshape.cxx288
-rw-r--r--sc/source/ui/drawfunc/fuconpol.cxx355
-rw-r--r--sc/source/ui/drawfunc/fuconrec.cxx315
-rw-r--r--sc/source/ui/drawfunc/fuconstr.cxx335
-rw-r--r--sc/source/ui/drawfunc/fuconuno.cxx190
-rw-r--r--sc/source/ui/drawfunc/fudraw.cxx863
-rw-r--r--sc/source/ui/drawfunc/fuins1.cxx447
-rw-r--r--sc/source/ui/drawfunc/fuins2.cxx849
-rw-r--r--sc/source/ui/drawfunc/fumark.cxx290
-rw-r--r--sc/source/ui/drawfunc/fupoor.cxx385
-rw-r--r--sc/source/ui/drawfunc/fusel.cxx649
-rw-r--r--sc/source/ui/drawfunc/fusel2.cxx185
-rw-r--r--sc/source/ui/drawfunc/futext.cxx882
-rw-r--r--sc/source/ui/drawfunc/futext2.cxx303
-rw-r--r--sc/source/ui/drawfunc/futext3.cxx249
-rw-r--r--sc/source/ui/drawfunc/graphsh.cxx148
-rw-r--r--sc/source/ui/drawfunc/makefile.mk88
-rw-r--r--sc/source/ui/drawfunc/mediash.cxx143
-rw-r--r--sc/source/ui/drawfunc/objdraw.src699
-rw-r--r--sc/source/ui/drawfunc/oleobjsh.cxx83
-rw-r--r--sc/source/ui/formdlg/dwfunctr.cxx1182
-rw-r--r--sc/source/ui/formdlg/dwfunctr.hrc37
-rw-r--r--sc/source/ui/formdlg/dwfunctr.src159
-rw-r--r--sc/source/ui/formdlg/formdata.cxx61
-rw-r--r--sc/source/ui/formdlg/formdlgs.src29
-rw-r--r--sc/source/ui/formdlg/formula.cxx667
-rw-r--r--sc/source/ui/formdlg/makefile.mk55
-rw-r--r--sc/source/ui/formdlg/privsplt.cxx422
-rw-r--r--sc/source/ui/inc/AccessibilityHints.hxx97
-rw-r--r--sc/source/ui/inc/AccessibleCell.hxx173
-rw-r--r--sc/source/ui/inc/AccessibleCellBase.hxx153
-rw-r--r--sc/source/ui/inc/AccessibleContextBase.hxx344
-rw-r--r--sc/source/ui/inc/AccessibleCsvControl.hxx666
-rw-r--r--sc/source/ui/inc/AccessibleDataPilotControl.hxx145
-rw-r--r--sc/source/ui/inc/AccessibleDocument.hxx328
-rw-r--r--sc/source/ui/inc/AccessibleDocumentBase.hxx50
-rw-r--r--sc/source/ui/inc/AccessibleDocumentPagePreview.hxx159
-rw-r--r--sc/source/ui/inc/AccessibleEditObject.hxx178
-rw-r--r--sc/source/ui/inc/AccessiblePageHeader.hxx111
-rw-r--r--sc/source/ui/inc/AccessiblePageHeaderArea.hxx138
-rw-r--r--sc/source/ui/inc/AccessiblePreviewCell.hxx121
-rw-r--r--sc/source/ui/inc/AccessiblePreviewHeaderCell.hxx152
-rw-r--r--sc/source/ui/inc/AccessiblePreviewTable.hxx182
-rw-r--r--sc/source/ui/inc/AccessibleSpreadsheet.hxx289
-rw-r--r--sc/source/ui/inc/AccessibleTableBase.hxx298
-rw-r--r--sc/source/ui/inc/AccessibleText.hxx359
-rw-r--r--sc/source/ui/inc/ChartRangeSelectionListener.hxx79
-rw-r--r--sc/source/ui/inc/DrawModelBroadcaster.hxx59
-rw-r--r--sc/source/ui/inc/IAnyRefDialog.hxx64
-rw-r--r--sc/source/ui/inc/ScDevChart.hxx84
-rw-r--r--sc/source/ui/inc/acredlin.hrc75
-rw-r--r--sc/source/ui/inc/acredlin.hxx264
-rw-r--r--sc/source/ui/inc/anyrefdg.hxx281
-rw-r--r--sc/source/ui/inc/areasave.hxx84
-rw-r--r--sc/source/ui/inc/areasdlg.hxx108
-rw-r--r--sc/source/ui/inc/asciiopt.hxx211
-rw-r--r--sc/source/ui/inc/attrdlg.hrc51
-rw-r--r--sc/source/ui/inc/attrdlg.hxx69
-rw-r--r--sc/source/ui/inc/auditsh.hxx59
-rw-r--r--sc/source/ui/inc/autofmt.hxx210
-rw-r--r--sc/source/ui/inc/autostyl.hxx68
-rw-r--r--sc/source/ui/inc/cbutton.hxx84
-rw-r--r--sc/source/ui/inc/cellsh.hxx106
-rw-r--r--sc/source/ui/inc/chartsh.hxx52
-rw-r--r--sc/source/ui/inc/client.hxx64
-rw-r--r--sc/source/ui/inc/colrowba.hxx110
-rw-r--r--sc/source/ui/inc/condfrmt.hrc73
-rw-r--r--sc/source/ui/inc/condfrmt.hxx155
-rw-r--r--sc/source/ui/inc/conflictsdlg.hrc43
-rw-r--r--sc/source/ui/inc/conflictsdlg.hxx216
-rw-r--r--sc/source/ui/inc/consdlg.hxx136
-rw-r--r--sc/source/ui/inc/content.hxx169
-rw-r--r--sc/source/ui/inc/corodlg.hxx81
-rw-r--r--sc/source/ui/inc/crdlg.hxx66
-rw-r--r--sc/source/ui/inc/crnrdlg.hrc46
-rw-r--r--sc/source/ui/inc/crnrdlg.hxx112
-rw-r--r--sc/source/ui/inc/csvcontrol.hxx432
-rw-r--r--sc/source/ui/inc/csvgrid.hxx358
-rw-r--r--sc/source/ui/inc/csvruler.hxx200
-rw-r--r--sc/source/ui/inc/csvsplits.hxx103
-rw-r--r--sc/source/ui/inc/csvtablebox.hxx161
-rw-r--r--sc/source/ui/inc/dapidata.hxx72
-rw-r--r--sc/source/ui/inc/dapitype.hxx95
-rw-r--r--sc/source/ui/inc/dbdocfun.hxx124
-rw-r--r--sc/source/ui/inc/dbfunc.hxx136
-rw-r--r--sc/source/ui/inc/dbnamdlg.hrc51
-rw-r--r--sc/source/ui/inc/dbnamdlg.hxx127
-rw-r--r--sc/source/ui/inc/delcldlg.hxx64
-rw-r--r--sc/source/ui/inc/delcodlg.hxx74
-rw-r--r--sc/source/ui/inc/docfunc.hxx189
-rw-r--r--sc/source/ui/inc/docsh.hxx468
-rw-r--r--sc/source/ui/inc/dpcontrol.hrc40
-rw-r--r--sc/source/ui/inc/dpcontrol.hxx363
-rw-r--r--sc/source/ui/inc/dpgroupdlg.hxx172
-rw-r--r--sc/source/ui/inc/drawsh.hxx94
-rw-r--r--sc/source/ui/inc/drawutil.hxx51
-rw-r--r--sc/source/ui/inc/drawview.hxx151
-rw-r--r--sc/source/ui/inc/drformsh.hxx55
-rw-r--r--sc/source/ui/inc/drtxtob.hxx89
-rw-r--r--sc/source/ui/inc/drwtrans.hxx110
-rw-r--r--sc/source/ui/inc/dwfunctr.hxx158
-rw-r--r--sc/source/ui/inc/editable.hxx86
-rw-r--r--sc/source/ui/inc/editfield.hxx50
-rw-r--r--sc/source/ui/inc/editsh.hxx86
-rw-r--r--sc/source/ui/inc/expftext.hxx45
-rwxr-xr-xsc/source/ui/inc/fieldwnd.hxx220
-rw-r--r--sc/source/ui/inc/filldlg.hxx144
-rw-r--r--sc/source/ui/inc/filtdlg.hxx267
-rw-r--r--sc/source/ui/inc/filter.hrc82
-rw-r--r--sc/source/ui/inc/foptmgr.hxx121
-rw-r--r--sc/source/ui/inc/formatsh.hxx79
-rw-r--r--sc/source/ui/inc/formdata.hxx66
-rw-r--r--sc/source/ui/inc/formula.hxx138
-rw-r--r--sc/source/ui/inc/fuconarc.hxx62
-rw-r--r--sc/source/ui/inc/fuconcustomshape.hxx61
-rw-r--r--sc/source/ui/inc/fuconpol.hxx63
-rw-r--r--sc/source/ui/inc/fuconrec.hxx62
-rw-r--r--sc/source/ui/inc/fuconstr.hxx67
-rw-r--r--sc/source/ui/inc/fuconuno.hxx67
-rw-r--r--sc/source/ui/inc/fudraw.hxx77
-rw-r--r--sc/source/ui/inc/fuedipo.hxx60
-rw-r--r--sc/source/ui/inc/fuinsert.hxx85
-rw-r--r--sc/source/ui/inc/fumark.hxx74
-rw-r--r--sc/source/ui/inc/funcpage.hxx128
-rw-r--r--sc/source/ui/inc/funcutl.hxx198
-rw-r--r--sc/source/ui/inc/fupoor.hxx136
-rw-r--r--sc/source/ui/inc/fusel.hxx81
-rw-r--r--sc/source/ui/inc/futext.hxx81
-rw-r--r--sc/source/ui/inc/graphsh.hxx57
-rw-r--r--sc/source/ui/inc/gridmerg.hxx64
-rw-r--r--sc/source/ui/inc/gridwin.hxx426
-rw-r--r--sc/source/ui/inc/groupdlg.hxx61
-rw-r--r--sc/source/ui/inc/hdrcont.hxx141
-rw-r--r--sc/source/ui/inc/hfedtdlg.hxx56
-rw-r--r--sc/source/ui/inc/highred.hrc71
-rw-r--r--sc/source/ui/inc/highred.hxx124
-rw-r--r--sc/source/ui/inc/hintwin.hxx54
-rw-r--r--sc/source/ui/inc/hiranges.hxx64
-rw-r--r--sc/source/ui/inc/imoptdlg.hxx108
-rw-r--r--sc/source/ui/inc/impex.hxx191
-rw-r--r--sc/source/ui/inc/inputhdl.hxx296
-rw-r--r--sc/source/ui/inc/inputwin.hxx228
-rw-r--r--sc/source/ui/inc/inscldlg.hxx62
-rw-r--r--sc/source/ui/inc/inscodlg.hxx122
-rw-r--r--sc/source/ui/inc/instbdlg.hrc52
-rw-r--r--sc/source/ui/inc/instbdlg.hxx136
-rw-r--r--sc/source/ui/inc/invmerge.hxx61
-rw-r--r--sc/source/ui/inc/lbseldlg.hxx70
-rw-r--r--sc/source/ui/inc/linkarea.hrc42
-rw-r--r--sc/source/ui/inc/linkarea.hxx106
-rw-r--r--sc/source/ui/inc/lnktrans.hxx53
-rw-r--r--sc/source/ui/inc/makefile.mk26
-rw-r--r--sc/source/ui/inc/mediash.hxx54
-rw-r--r--sc/source/ui/inc/miscdlgs.hrc188
-rw-r--r--sc/source/ui/inc/msgpool.hxx78
-rw-r--r--sc/source/ui/inc/mtrindlg.hxx76
-rw-r--r--sc/source/ui/inc/mvtabdlg.hxx79
-rw-r--r--sc/source/ui/inc/namecrea.hxx59
-rw-r--r--sc/source/ui/inc/namedlg.hrc52
-rw-r--r--sc/source/ui/inc/namedlg.hxx123
-rw-r--r--sc/source/ui/inc/namepast.hxx62
-rw-r--r--sc/source/ui/inc/navcitem.hxx55
-rw-r--r--sc/source/ui/inc/navipi.hxx366
-rw-r--r--sc/source/ui/inc/navsett.hxx59
-rw-r--r--sc/source/ui/inc/notemark.hxx80
-rw-r--r--sc/source/ui/inc/oleobjsh.hxx52
-rw-r--r--sc/source/ui/inc/olinefun.hxx68
-rw-r--r--sc/source/ui/inc/olinewin.hxx244
-rw-r--r--sc/source/ui/inc/opredlin.hrc38
-rw-r--r--sc/source/ui/inc/opredlin.hxx86
-rw-r--r--sc/source/ui/inc/optdlg.hrc192
-rw-r--r--sc/source/ui/inc/optload.hrc40
-rw-r--r--sc/source/ui/inc/optload.hxx68
-rw-r--r--sc/source/ui/inc/optsolver.hrc98
-rw-r--r--sc/source/ui/inc/optsolver.hxx264
-rw-r--r--sc/source/ui/inc/output.hxx272
-rw-r--r--sc/source/ui/inc/pagedata.hxx95
-rw-r--r--sc/source/ui/inc/parawin.hxx171
-rw-r--r--sc/source/ui/inc/pfiltdlg.hxx145
-rw-r--r--sc/source/ui/inc/pfuncache.hxx125
-rw-r--r--sc/source/ui/inc/pgbrksh.hxx53
-rw-r--r--sc/source/ui/inc/pivotsh.hxx61
-rw-r--r--sc/source/ui/inc/pntlock.hxx67
-rw-r--r--sc/source/ui/inc/popmenu.hxx53
-rw-r--r--sc/source/ui/inc/preview.hxx168
-rw-r--r--sc/source/ui/inc/prevloc.hxx157
-rw-r--r--sc/source/ui/inc/prevwsh.hxx137
-rw-r--r--sc/source/ui/inc/printfun.hxx368
-rw-r--r--sc/source/ui/inc/privsplt.hxx86
-rw-r--r--sc/source/ui/inc/protectiondlg.hrc44
-rw-r--r--sc/source/ui/inc/protectiondlg.hxx82
-rw-r--r--sc/source/ui/inc/pvfundlg.hxx244
-rw-r--r--sc/source/ui/inc/pvlaydlg.hxx239
-rw-r--r--sc/source/ui/inc/redcom.hxx70
-rw-r--r--sc/source/ui/inc/reffact.hxx122
-rw-r--r--sc/source/ui/inc/refundo.hxx69
-rw-r--r--sc/source/ui/inc/retypepassdlg.hrc71
-rw-r--r--sc/source/ui/inc/retypepassdlg.hxx174
-rw-r--r--sc/source/ui/inc/rfindlst.hxx75
-rw-r--r--sc/source/ui/inc/scendlg.hxx80
-rw-r--r--sc/source/ui/inc/scui_def.hxx57
-rw-r--r--sc/source/ui/inc/scuiasciiopt.hxx147
-rw-r--r--sc/source/ui/inc/scuiautofmt.hxx88
-rw-r--r--sc/source/ui/inc/scuiimoptdlg.hxx78
-rw-r--r--sc/source/ui/inc/scuitphfedit.hxx165
-rw-r--r--sc/source/ui/inc/select.hxx127
-rw-r--r--sc/source/ui/inc/selectionstate.hxx79
-rw-r--r--sc/source/ui/inc/seltrans.hxx81
-rw-r--r--sc/source/ui/inc/servobj.hxx76
-rw-r--r--sc/source/ui/inc/sharedocdlg.hrc44
-rw-r--r--sc/source/ui/inc/sharedocdlg.hxx76
-rw-r--r--sc/source/ui/inc/shtabdlg.hxx75
-rw-r--r--sc/source/ui/inc/simpref.hrc37
-rw-r--r--sc/source/ui/inc/simpref.hxx122
-rw-r--r--sc/source/ui/inc/sizedev.hxx55
-rw-r--r--sc/source/ui/inc/solveroptions.hrc47
-rw-r--r--sc/source/ui/inc/solveroptions.hxx123
-rw-r--r--sc/source/ui/inc/solverutil.hxx50
-rw-r--r--sc/source/ui/inc/solvrdlg.hrc46
-rw-r--r--sc/source/ui/inc/solvrdlg.hxx109
-rw-r--r--sc/source/ui/inc/sortdlg.hrc90
-rw-r--r--sc/source/ui/inc/sortdlg.hxx87
-rw-r--r--sc/source/ui/inc/spelldialog.hxx103
-rw-r--r--sc/source/ui/inc/spelleng.hxx169
-rw-r--r--sc/source/ui/inc/spellparam.hxx87
-rw-r--r--sc/source/ui/inc/strindlg.hxx66
-rw-r--r--sc/source/ui/inc/styledlg.hrc39
-rw-r--r--sc/source/ui/inc/styledlg.hxx59
-rw-r--r--sc/source/ui/inc/submenu.hrc68
-rw-r--r--sc/source/ui/inc/subtdlg.hrc64
-rw-r--r--sc/source/ui/inc/subtdlg.hxx56
-rw-r--r--sc/source/ui/inc/tabbgcolordlg.hxx78
-rw-r--r--sc/source/ui/inc/tabcont.hxx87
-rw-r--r--sc/source/ui/inc/tabopdlg.hrc50
-rw-r--r--sc/source/ui/inc/tabopdlg.hxx114
-rw-r--r--sc/source/ui/inc/tabpages.hxx83
-rw-r--r--sc/source/ui/inc/tabpopsh.hxx53
-rw-r--r--sc/source/ui/inc/tabsplit.hxx60
-rw-r--r--sc/source/ui/inc/tabview.hxx533
-rw-r--r--sc/source/ui/inc/tabvwsh.hxx442
-rw-r--r--sc/source/ui/inc/target.hxx52
-rw-r--r--sc/source/ui/inc/tbinsert.hrc32
-rw-r--r--sc/source/ui/inc/tbinsert.hxx88
-rw-r--r--sc/source/ui/inc/tbzoomsliderctrl.hxx87
-rw-r--r--sc/source/ui/inc/textdlgs.hxx72
-rw-r--r--sc/source/ui/inc/textimportoptions.hrc42
-rw-r--r--sc/source/ui/inc/textimportoptions.hxx76
-rw-r--r--sc/source/ui/inc/tpcalc.hxx102
-rw-r--r--sc/source/ui/inc/tphf.hxx103
-rw-r--r--sc/source/ui/inc/tphfedit.hxx239
-rw-r--r--sc/source/ui/inc/tpprint.hxx56
-rw-r--r--sc/source/ui/inc/tpsort.hxx222
-rw-r--r--sc/source/ui/inc/tpstat.hxx65
-rw-r--r--sc/source/ui/inc/tpsubt.hxx188
-rw-r--r--sc/source/ui/inc/tptable.hxx115
-rw-r--r--sc/source/ui/inc/tpusrlst.hxx117
-rw-r--r--sc/source/ui/inc/tpview.hxx171
-rw-r--r--sc/source/ui/inc/transobj.hxx115
-rw-r--r--sc/source/ui/inc/ui_pch.hxx332
-rw-r--r--sc/source/ui/inc/uiitems.hxx378
-rw-r--r--sc/source/ui/inc/undobase.hxx171
-rw-r--r--sc/source/ui/inc/undoblk.hxx988
-rw-r--r--sc/source/ui/inc/undocell.hxx366
-rw-r--r--sc/source/ui/inc/undodat.hxx535
-rw-r--r--sc/source/ui/inc/undodraw.hxx63
-rw-r--r--sc/source/ui/inc/undoolk.hxx44
-rw-r--r--sc/source/ui/inc/undostyl.hxx117
-rw-r--r--sc/source/ui/inc/undotab.hxx543
-rw-r--r--sc/source/ui/inc/undoutil.hxx66
-rw-r--r--sc/source/ui/inc/validate.hrc88
-rw-r--r--sc/source/ui/inc/validate.hxx347
-rw-r--r--sc/source/ui/inc/viewdata.hxx557
-rw-r--r--sc/source/ui/inc/viewfunc.hxx369
-rw-r--r--sc/source/ui/inc/viewutil.hxx116
-rw-r--r--sc/source/ui/inc/warnbox.hxx74
-rw-r--r--sc/source/ui/miscdlgs/acredlin.cxx2139
-rw-r--r--sc/source/ui/miscdlgs/acredlin.src260
-rw-r--r--sc/source/ui/miscdlgs/anyrefdg.cxx1011
-rw-r--r--sc/source/ui/miscdlgs/autofmt.cxx979
-rw-r--r--sc/source/ui/miscdlgs/conflictsdlg.cxx894
-rw-r--r--sc/source/ui/miscdlgs/conflictsdlg.src113
-rw-r--r--sc/source/ui/miscdlgs/crdlg.cxx87
-rw-r--r--sc/source/ui/miscdlgs/crnrdlg.cxx1172
-rw-r--r--sc/source/ui/miscdlgs/delcldlg.cxx120
-rw-r--r--sc/source/ui/miscdlgs/delcodlg.cxx180
-rw-r--r--sc/source/ui/miscdlgs/filldlg.cxx375
-rw-r--r--sc/source/ui/miscdlgs/groupdlg.cxx83
-rw-r--r--sc/source/ui/miscdlgs/highred.cxx301
-rw-r--r--sc/source/ui/miscdlgs/highred.src138
-rw-r--r--sc/source/ui/miscdlgs/inscldlg.cxx120
-rw-r--r--sc/source/ui/miscdlgs/inscodlg.cxx372
-rw-r--r--sc/source/ui/miscdlgs/instbdlg.cxx433
-rw-r--r--sc/source/ui/miscdlgs/instbdlg.src194
-rw-r--r--sc/source/ui/miscdlgs/lbseldlg.cxx108
-rw-r--r--sc/source/ui/miscdlgs/linkarea.cxx366
-rw-r--r--sc/source/ui/miscdlgs/linkarea.src126
-rw-r--r--sc/source/ui/miscdlgs/makefile.mk127
-rw-r--r--sc/source/ui/miscdlgs/mtrindlg.cxx186
-rw-r--r--sc/source/ui/miscdlgs/mvtabdlg.cxx205
-rw-r--r--sc/source/ui/miscdlgs/namecrea.cxx79
-rw-r--r--sc/source/ui/miscdlgs/namepast.cxx133
-rw-r--r--sc/source/ui/miscdlgs/optsolver.cxx1066
-rw-r--r--sc/source/ui/miscdlgs/protectiondlg.cxx161
-rw-r--r--sc/source/ui/miscdlgs/protectiondlg.src131
-rw-r--r--sc/source/ui/miscdlgs/redcom.cxx186
-rw-r--r--sc/source/ui/miscdlgs/retypepassdlg.cxx544
-rw-r--r--sc/source/ui/miscdlgs/retypepassdlg.src325
-rw-r--r--sc/source/ui/miscdlgs/scuiautofmt.cxx476
-rw-r--r--sc/source/ui/miscdlgs/sharedocdlg.cxx235
-rw-r--r--sc/source/ui/miscdlgs/sharedocdlg.src111
-rw-r--r--sc/source/ui/miscdlgs/shtabdlg.cxx111
-rw-r--r--sc/source/ui/miscdlgs/simpref.cxx257
-rw-r--r--sc/source/ui/miscdlgs/solveroptions.cxx492
-rw-r--r--sc/source/ui/miscdlgs/solverutil.cxx229
-rw-r--r--sc/source/ui/miscdlgs/solvrdlg.cxx313
-rw-r--r--sc/source/ui/miscdlgs/strindlg.cxx89
-rw-r--r--sc/source/ui/miscdlgs/tabbgcolordlg.cxx198
-rw-r--r--sc/source/ui/miscdlgs/tabopdlg.cxx371
-rw-r--r--sc/source/ui/miscdlgs/textdlgs.cxx140
-rw-r--r--sc/source/ui/miscdlgs/warnbox.cxx91
-rw-r--r--sc/source/ui/namedlg/makefile.mk51
-rw-r--r--sc/source/ui/namedlg/namedlg.cxx649
-rw-r--r--sc/source/ui/navipi/content.cxx1526
-rw-r--r--sc/source/ui/navipi/makefile.mk57
-rw-r--r--sc/source/ui/navipi/navcitem.cxx127
-rw-r--r--sc/source/ui/navipi/navipi.cxx1565
-rw-r--r--sc/source/ui/navipi/navipi.hrc63
-rw-r--r--sc/source/ui/navipi/navipi.src414
-rw-r--r--sc/source/ui/navipi/scenwnd.cxx309
-rw-r--r--sc/source/ui/optdlg/makefile.mk59
-rw-r--r--sc/source/ui/optdlg/opredlin.cxx289
-rw-r--r--sc/source/ui/optdlg/tpcalc.cxx305
-rw-r--r--sc/source/ui/optdlg/tpprint.cxx144
-rw-r--r--sc/source/ui/optdlg/tpusrlst.cxx839
-rw-r--r--sc/source/ui/optdlg/tpview.cxx745
-rw-r--r--sc/source/ui/pagedlg/areasdlg.cxx906
-rw-r--r--sc/source/ui/pagedlg/hfedtdlg.cxx186
-rw-r--r--sc/source/ui/pagedlg/hfedtdlg.hrc64
-rw-r--r--sc/source/ui/pagedlg/hfedtdlg.src830
-rw-r--r--sc/source/ui/pagedlg/makefile.mk74
-rw-r--r--sc/source/ui/pagedlg/pagedlg.hrc103
-rw-r--r--sc/source/ui/pagedlg/pagedlg.src442
-rw-r--r--sc/source/ui/pagedlg/scuitphfedit.cxx1001
-rw-r--r--sc/source/ui/pagedlg/tphf.cxx331
-rw-r--r--sc/source/ui/pagedlg/tphf.src64
-rw-r--r--sc/source/ui/pagedlg/tphfedit.cxx874
-rw-r--r--sc/source/ui/pagedlg/tptable.cxx570
-rw-r--r--sc/source/ui/src/attrdlg.src207
-rw-r--r--sc/source/ui/src/autofmt.src281
-rw-r--r--sc/source/ui/src/condfrmt.src425
-rw-r--r--sc/source/ui/src/crnrdlg.src175
-rw-r--r--sc/source/ui/src/dbnamdlg.src208
-rw-r--r--sc/source/ui/src/filter.src874
-rw-r--r--sc/source/ui/src/globstr.src1742
-rw-r--r--sc/source/ui/src/hdrcont.src256
-rw-r--r--sc/source/ui/src/makefile.mk77
-rw-r--r--sc/source/ui/src/miscdlgs.src1544
-rw-r--r--sc/source/ui/src/namedlg.src175
-rw-r--r--sc/source/ui/src/opredlin.src140
-rw-r--r--sc/source/ui/src/optdlg.src779
-rw-r--r--sc/source/ui/src/optsolver.src575
-rw-r--r--sc/source/ui/src/popup.src544
-rw-r--r--sc/source/ui/src/pseudo.src62
-rw-r--r--sc/source/ui/src/sc.src49
-rw-r--r--sc/source/ui/src/scerrors.src170
-rw-r--r--sc/source/ui/src/scfuncs.src9044
-rw-r--r--sc/source/ui/src/scstring.src771
-rw-r--r--sc/source/ui/src/scwarngs.src83
-rw-r--r--sc/source/ui/src/simpref.src107
-rw-r--r--sc/source/ui/src/solveroptions.src193
-rw-r--r--sc/source/ui/src/solvrdlg.src140
-rw-r--r--sc/source/ui/src/sortdlg.src372
-rw-r--r--sc/source/ui/src/subtdlg.src299
-rw-r--r--sc/source/ui/src/tabopdlg.src148
-rw-r--r--sc/source/ui/src/textdlgs.src197
-rw-r--r--sc/source/ui/src/toolbox.src169
-rw-r--r--sc/source/ui/styleui/makefile.mk57
-rw-r--r--sc/source/ui/styleui/scstyles.src70
-rw-r--r--sc/source/ui/styleui/styledlg.cxx234
-rw-r--r--sc/source/ui/styleui/styledlg.src172
-rw-r--r--sc/source/ui/styleui/template.curbin0 -> 326 bytes-rw-r--r--sc/source/ui/undo/areasave.cxx230
-rw-r--r--sc/source/ui/undo/makefile.mk85
-rw-r--r--sc/source/ui/undo/refundo.cxx214
-rw-r--r--sc/source/ui/undo/target.cxx45
-rw-r--r--sc/source/ui/undo/undobase.cxx539
-rw-r--r--sc/source/ui/undo/undoblk.cxx2253
-rw-r--r--sc/source/ui/undo/undoblk2.cxx215
-rw-r--r--sc/source/ui/undo/undoblk3.cxx2127
-rw-r--r--sc/source/ui/undo/undocell.cxx1129
-rw-r--r--sc/source/ui/undo/undodat.cxx2193
-rw-r--r--sc/source/ui/undo/undodraw.cxx269
-rw-r--r--sc/source/ui/undo/undoolk.cxx102
-rw-r--r--sc/source/ui/undo/undostyl.cxx311
-rw-r--r--sc/source/ui/undo/undotab.cxx1725
-rw-r--r--sc/source/ui/undo/undoutil.cxx133
-rw-r--r--sc/source/ui/unoobj/ChartRangeSelectionListener.cxx95
-rw-r--r--sc/source/ui/unoobj/addruno.cxx315
-rw-r--r--sc/source/ui/unoobj/afmtuno.cxx882
-rw-r--r--sc/source/ui/unoobj/appluno.cxx966
-rw-r--r--sc/source/ui/unoobj/celllistsource.cxx449
-rw-r--r--sc/source/ui/unoobj/celllistsource.hxx175
-rw-r--r--sc/source/ui/unoobj/cellsuno.cxx9842
-rw-r--r--sc/source/ui/unoobj/cellvaluebinding.cxx663
-rw-r--r--sc/source/ui/unoobj/cellvaluebinding.hxx171
-rw-r--r--sc/source/ui/unoobj/chart2uno.cxx3914
-rw-r--r--sc/source/ui/unoobj/chartuno.cxx817
-rw-r--r--sc/source/ui/unoobj/confuno.cxx488
-rw-r--r--sc/source/ui/unoobj/convuno.cxx64
-rw-r--r--sc/source/ui/unoobj/cursuno.cxx510
-rwxr-xr-xsc/source/ui/unoobj/dapiuno.cxx3554
-rw-r--r--sc/source/ui/unoobj/datauno.cxx2371
-rw-r--r--sc/source/ui/unoobj/defltuno.cxx387
-rw-r--r--sc/source/ui/unoobj/detreg.cxx90
-rw-r--r--sc/source/ui/unoobj/dispuno.cxx415
-rw-r--r--sc/source/ui/unoobj/docuno.cxx3776
-rw-r--r--sc/source/ui/unoobj/drdefuno.cxx83
-rw-r--r--sc/source/ui/unoobj/editsrc.cxx373
-rwxr-xr-xsc/source/ui/unoobj/eventuno.cxx201
-rw-r--r--sc/source/ui/unoobj/fielduno.cxx1549
-rw-r--r--sc/source/ui/unoobj/filtuno.cxx317
-rw-r--r--sc/source/ui/unoobj/fmtuno.cxx1066
-rw-r--r--sc/source/ui/unoobj/forbiuno.cxx93
-rw-r--r--sc/source/ui/unoobj/funcuno.cxx745
-rw-r--r--sc/source/ui/unoobj/linkuno.cxx1821
-rw-r--r--sc/source/ui/unoobj/listenercalls.cxx89
-rw-r--r--sc/source/ui/unoobj/makefile.mk120
-rw-r--r--sc/source/ui/unoobj/miscuno.cxx424
-rw-r--r--sc/source/ui/unoobj/nameuno.cxx1131
-rw-r--r--sc/source/ui/unoobj/notesuno.cxx729
-rw-r--r--sc/source/ui/unoobj/optuno.cxx237
-rw-r--r--sc/source/ui/unoobj/pageuno.cxx78
-rwxr-xr-xsc/source/ui/unoobj/scdetect.cxx918
-rw-r--r--sc/source/ui/unoobj/scdetect.hxx95
-rw-r--r--sc/source/ui/unoobj/servuno.cxx598
-rw-r--r--sc/source/ui/unoobj/shapeuno.cxx1521
-rw-r--r--sc/source/ui/unoobj/srchuno.cxx276
-rw-r--r--sc/source/ui/unoobj/styleuno.cxx2140
-rw-r--r--sc/source/ui/unoobj/targuno.cxx318
-rw-r--r--sc/source/ui/unoobj/textuno.cxx1152
-rw-r--r--sc/source/ui/unoobj/tokenuno.cxx467
-rw-r--r--sc/source/ui/unoobj/unodoc.cxx67
-rw-r--r--sc/source/ui/unoobj/unoguard.cxx47
-rw-r--r--sc/source/ui/unoobj/unoreflist.cxx73
-rw-r--r--sc/source/ui/unoobj/viewuno.cxx2358
-rw-r--r--sc/source/ui/unoobj/warnpassword.cxx95
-rw-r--r--sc/source/ui/vba/excelvbahelper.cxx268
-rw-r--r--sc/source/ui/vba/excelvbahelper.hxx67
-rw-r--r--sc/source/ui/vba/helperdecl.hxx53
-rw-r--r--sc/source/ui/vba/makefile.mk124
-rw-r--r--sc/source/ui/vba/service.cxx99
-rw-r--r--sc/source/ui/vba/testvba/README37
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/ApplicationRunTest.xlsbin0 -> 25088 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/AutoFilter.xlsbin0 -> 54272 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/CalcFont.xlsbin0 -> 73728 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/CalcZoom.xlsbin0 -> 62976 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/FinancialFuncTests.xlsbin0 -> 71168 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/FinancialFuncs.xlsbin0 -> 47104 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/MiscOperatorTests.xlsbin0 -> 66048 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/MiscRangeTests.xlsbin0 -> 126976 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/PageBreaks.xlsbin0 -> 63488 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/Ranges-2.xlsbin0 -> 2209280 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/Ranges-3.xlsbin0 -> 54784 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/Ranges.xlsbin0 -> 2236416 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/Shapes.xlsbin0 -> 74240 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/StrConv-test.xlsbin0 -> 65024 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/Template.xlsbin0 -> 65024 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/TestAddress.xlsbin0 -> 84480 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/TestCalc_Rangetest.xlsbin0 -> 67584 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/TestCalc_Rangetest2.xlsbin0 -> 71680 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/TestIntersection.xlsbin0 -> 81408 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/TestUnion.xlsbin0 -> 72192 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/VariantTest.xlsbin0 -> 68608 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/Window.xlsbin0 -> 87040 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/bytearraystring.xlsbin0 -> 58880 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/dateserial.xlsbin0 -> 57344 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/datevalue.xlsbin0 -> 61952 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/format.xlsbin0 -> 102400 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/excel/AutoFilter.log20
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/excel/MiscRangeTests.log45
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/excel/Ranges-2.log68
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/excel/Ranges-3.log8
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/excel/Ranges.log280
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/excel/TestAddress.log62
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/excel/TestCalc_Rangetest.log60
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/excel/TestCalc_Rangetest2.log64
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/format.log36
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/AutoFilter.log20
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/CalcFont.log17
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/CalcZoom.log18
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/FinancialFuncTests.log31
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/MiscOperatorTests.log30
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/MiscRangeTests.log45
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/PageBreaks.log10
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/Ranges-2.log68
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/Ranges-3.log8
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/Ranges.log280
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/Shapes.log77
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/StrConv-test.log9
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/Template.log14
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/TestAddress.log67
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/TestCalc_Rangetest.log60
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/TestCalc_Rangetest2.log65
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/TestIntersection.log26
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/TestUnion.log17
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/VariantTest.log47
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/Window.log46
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/bytearraystring.log8
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/dateserial.log9
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/datevalue.log8
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/format.log36
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/pagesetup.log77
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/partition.log11
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/range-4.log16
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/replace.log14
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/stringplusdouble.log62
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/unix/window2.log41
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/AutoFilter.log20
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/CalcFont.log17
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/MiscOperatorTests.log29
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/MiscRangeTests.log45
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/PageBreaks.log10
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/Ranges-2.log68
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/Ranges-3.log8
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/Ranges.log280
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/Shapes.log77
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/StrConv-test.log9
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/Template.log14
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/TestAddress.log67
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/TestCalc_Rangetest.log60
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/TestCalc_Rangetest2.log65
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/TestIntersection.log26
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/TestUnion.log17
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/VariantTest.log47
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/Window.log46
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/bytearraystring.log8
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/dateserial.log9
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/datevalue.log8
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/format.log36
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/pagesetup.log87
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/partition.log11
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/range-4.log16
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/replace.log14
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/stringplusdouble.log62
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/logs/win/window2.log41
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/notwork/error.xlsbin0 -> 38400 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/notwork/imagecontrols.xlsbin0 -> 2415104 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/notwork/keyword.xlsbin0 -> 50688 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/notwork/objectmodule.xlsbin0 -> 62464 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/notwork/stringtodouble.odsbin0 -> 13260 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/partition.xlsbin0 -> 65536 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/range-4.xlsbin0 -> 2192384 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/replace.xlsbin0 -> 64512 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/stringplusdouble.xlsbin0 -> 75264 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments-ooo-build/window2.xlsbin0 -> 72192 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/ApplicationRunTest.xlsbin0 -> 25088 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/AutoFilter.xlsbin0 -> 54272 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/CalcFont.xlsbin0 -> 73728 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/FinancialFuncs.xlsbin0 -> 47104 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/MiscRangeTests.xlsbin0 -> 126976 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/PageBreaks.xlsbin0 -> 63488 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/Ranges-2.xlsbin0 -> 2209280 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/Ranges-3.xlsbin0 -> 54784 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/Ranges.xlsbin0 -> 2236416 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/Shapes.xlsbin0 -> 74240 bytes-rwxr-xr-xsc/source/ui/vba/testvba/TestDocuments/StrConv-test.xlsbin0 -> 65024 bytes-rwxr-xr-xsc/source/ui/vba/testvba/TestDocuments/Template.xlsbin0 -> 65024 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/TestAddress.xlsbin0 -> 84480 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/TestCalc_Rangetest.xlsbin0 -> 67584 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/TestCalc_Rangetest2.xlsbin0 -> 71680 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/TestIntersection.xlsbin0 -> 81408 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/TestUnion.xlsbin0 -> 72192 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/Window.xlsbin0 -> 87040 bytes-rwxr-xr-xsc/source/ui/vba/testvba/TestDocuments/bytearraystring.xlsbin0 -> 58880 bytes-rwxr-xr-xsc/source/ui/vba/testvba/TestDocuments/dateserial.xlsbin0 -> 57344 bytes-rwxr-xr-xsc/source/ui/vba/testvba/TestDocuments/datevalue.xlsbin0 -> 61952 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/format.xlsbin0 -> 102400 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/excel/AutoFilter.log20
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/excel/MiscRangeTests.log45
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/excel/Ranges-2.log68
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/excel/Ranges-3.log8
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/excel/Ranges.log280
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/excel/TestAddress.log62
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/excel/TestCalc_Rangetest.log60
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/excel/TestCalc_Rangetest2.log64
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/unix/AutoFilter.log20
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/unix/CalcFont.log17
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/unix/MiscRangeTests.log45
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/unix/PageBreaks.log10
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/unix/Ranges-2.log68
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/unix/Ranges-3.log8
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/unix/Ranges.log280
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/unix/Shapes.log77
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/unix/StrConv-test.log9
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/unix/Template.log14
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/unix/TestAddress.log67
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/unix/TestCalc_Rangetest.log60
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/unix/TestCalc_Rangetest2.log65
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/unix/TestIntersection.log26
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/unix/TestUnion.log17
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/unix/Window.log46
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/unix/bytearraystring.log8
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/unix/dateserial.log9
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/unix/datevalue.log8
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/unix/format.log36
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/unix/pagesetup.log77
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/unix/partition.log11
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/unix/range-4.log16
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/unix/replace.log14
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/unix/stringplusdouble.log62
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/unix/window2.log41
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/win/AutoFilter.log20
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/win/MiscRangeTests.log45
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/win/Ranges-2.log68
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/win/Ranges-3.log8
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/win/Ranges.log280
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/win/Shapes.log77
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/win/TestAddress.log62
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/win/TestCalc_Rangetest.log60
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/win/TestCalc_Rangetest2.log65
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/win/pagesetup.log87
-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/logs/win/replace.log14
-rwxr-xr-xsc/source/ui/vba/testvba/TestDocuments/pagesetup.xlsbin0 -> 72704 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/partition.xlsbin0 -> 65536 bytes-rwxr-xr-xsc/source/ui/vba/testvba/TestDocuments/range-4.xlsbin0 -> 2192384 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/replace.xlsbin0 -> 64512 bytes-rw-r--r--sc/source/ui/vba/testvba/TestDocuments/stringplusdouble.xlsbin0 -> 75264 bytes-rwxr-xr-xsc/source/ui/vba/testvba/TestDocuments/window2.xlsbin0 -> 72192 bytes-rw-r--r--sc/source/ui/vba/testvba/launchTest.pl45
-rw-r--r--sc/source/ui/vba/testvba/makefile.mk69
-rwxr-xr-xsc/source/ui/vba/testvba/runTests.pl121
-rw-r--r--sc/source/ui/vba/testvba/testResult.pl171
-rwxr-xr-xsc/source/ui/vba/testvba/testResults.pl163
-rwxr-xr-xsc/source/ui/vba/testvba/testclientbin0 -> 50595 bytes-rw-r--r--sc/source/ui/vba/testvba/testvba.cxx309
-rwxr-xr-xsc/source/ui/vba/testvba/timestampsClean.pl73
-rw-r--r--sc/source/ui/vba/vbaapplication.cxx1184
-rw-r--r--sc/source/ui/vba/vbaapplication.hxx123
-rw-r--r--sc/source/ui/vba/vbaassistant.cxx132
-rw-r--r--sc/source/ui/vba/vbaassistant.hxx70
-rw-r--r--sc/source/ui/vba/vbaaxes.cxx203
-rw-r--r--sc/source/ui/vba/vbaaxes.hxx51
-rw-r--r--sc/source/ui/vba/vbaaxis.cxx670
-rw-r--r--sc/source/ui/vba/vbaaxis.hxx98
-rw-r--r--sc/source/ui/vba/vbaaxistitle.cxx58
-rw-r--r--sc/source/ui/vba/vbaaxistitle.hxx44
-rw-r--r--sc/source/ui/vba/vbaborders.cxx574
-rw-r--r--sc/source/ui/vba/vbaborders.hxx76
-rw-r--r--sc/source/ui/vba/vbacharacters.cxx136
-rw-r--r--sc/source/ui/vba/vbacharacters.hxx75
-rw-r--r--sc/source/ui/vba/vbachart.cxx1253
-rw-r--r--sc/source/ui/vba/vbachart.hxx114
-rw-r--r--sc/source/ui/vba/vbachartobject.cxx210
-rw-r--r--sc/source/ui/vba/vbachartobject.hxx80
-rw-r--r--sc/source/ui/vba/vbachartobjects.cxx194
-rw-r--r--sc/source/ui/vba/vbachartobjects.hxx75
-rw-r--r--sc/source/ui/vba/vbacharts.cxx120
-rw-r--r--sc/source/ui/vba/vbacharts.hxx60
-rw-r--r--sc/source/ui/vba/vbacharttitle.cxx58
-rw-r--r--sc/source/ui/vba/vbacharttitle.hxx44
-rw-r--r--sc/source/ui/vba/vbacomment.cxx239
-rw-r--r--sc/source/ui/vba/vbacomment.hxx81
-rw-r--r--sc/source/ui/vba/vbacomments.cxx116
-rw-r--r--sc/source/ui/vba/vbacomments.hxx65
-rw-r--r--sc/source/ui/vba/vbacondition.cxx175
-rw-r--r--sc/source/ui/vba/vbacondition.hxx54
-rw-r--r--sc/source/ui/vba/vbadialog.cxx88
-rw-r--r--sc/source/ui/vba/vbadialog.hxx50
-rw-r--r--sc/source/ui/vba/vbadialogs.cxx68
-rw-r--r--sc/source/ui/vba/vbadialogs.hxx55
-rwxr-xr-xsc/source/ui/vba/vbaeventshelper.cxx753
-rwxr-xr-xsc/source/ui/vba/vbaeventshelper.hxx88
-rw-r--r--sc/source/ui/vba/vbafont.cxx501
-rw-r--r--sc/source/ui/vba/vbafont.hxx90
-rw-r--r--sc/source/ui/vba/vbaformat.cxx843
-rw-r--r--sc/source/ui/vba/vbaformat.hxx108
-rw-r--r--sc/source/ui/vba/vbaformatcondition.cxx176
-rw-r--r--sc/source/ui/vba/vbaformatcondition.hxx70
-rw-r--r--sc/source/ui/vba/vbaformatconditions.cxx301
-rw-r--r--sc/source/ui/vba/vbaformatconditions.hxx65
-rw-r--r--sc/source/ui/vba/vbaglobals.cxx304
-rw-r--r--sc/source/ui/vba/vbaglobals.hxx95
-rw-r--r--sc/source/ui/vba/vbahelper.cxx758
-rw-r--r--sc/source/ui/vba/vbahyperlink.cxx246
-rw-r--r--sc/source/ui/vba/vbahyperlink.hxx88
-rwxr-xr-xsc/source/ui/vba/vbahyperlinks.cxx293
-rwxr-xr-xsc/source/ui/vba/vbahyperlinks.hxx150
-rw-r--r--sc/source/ui/vba/vbainterior.cxx417
-rw-r--r--sc/source/ui/vba/vbainterior.hxx88
-rw-r--r--sc/source/ui/vba/vbaname.cxx269
-rw-r--r--sc/source/ui/vba/vbaname.hxx84
-rw-r--r--sc/source/ui/vba/vbanames.cxx206
-rw-r--r--sc/source/ui/vba/vbanames.hxx82
-rw-r--r--sc/source/ui/vba/vbaoleobject.cxx164
-rw-r--r--sc/source/ui/vba/vbaoleobject.hxx67
-rw-r--r--sc/source/ui/vba/vbaoleobjects.cxx185
-rw-r--r--sc/source/ui/vba/vbaoleobjects.hxx57
-rw-r--r--sc/source/ui/vba/vbaoutline.cxx65
-rw-r--r--sc/source/ui/vba/vbaoutline.hxx52
-rw-r--r--sc/source/ui/vba/vbapagebreak.cxx172
-rw-r--r--sc/source/ui/vba/vbapagebreak.hxx103
-rw-r--r--sc/source/ui/vba/vbapagebreaks.cxx327
-rw-r--r--sc/source/ui/vba/vbapagebreaks.hxx97
-rw-r--r--sc/source/ui/vba/vbapagesetup.cxx626
-rw-r--r--sc/source/ui/vba/vbapagesetup.hxx90
-rw-r--r--sc/source/ui/vba/vbapalette.cxx111
-rw-r--r--sc/source/ui/vba/vbapalette.hxx54
-rw-r--r--sc/source/ui/vba/vbapane.cxx206
-rw-r--r--sc/source/ui/vba/vbapane.hxx67
-rw-r--r--sc/source/ui/vba/vbapivotcache.cxx60
-rw-r--r--sc/source/ui/vba/vbapivotcache.hxx49
-rw-r--r--sc/source/ui/vba/vbapivottable.cxx63
-rw-r--r--sc/source/ui/vba/vbapivottable.hxx49
-rw-r--r--sc/source/ui/vba/vbapivottables.cxx94
-rw-r--r--sc/source/ui/vba/vbapivottables.hxx65
-rw-r--r--sc/source/ui/vba/vbapropvalue.cxx45
-rw-r--r--sc/source/ui/vba/vbapropvalue.hxx57
-rwxr-xr-xsc/source/ui/vba/vbarange.cxx5671
-rw-r--r--sc/source/ui/vba/vbarange.hxx298
-rw-r--r--sc/source/ui/vba/vbaseriescollection.cxx80
-rw-r--r--sc/source/ui/vba/vbaseriescollection.hxx54
-rwxr-xr-xsc/source/ui/vba/vbasheetobject.cxx517
-rwxr-xr-xsc/source/ui/vba/vbasheetobject.hxx220
-rwxr-xr-xsc/source/ui/vba/vbasheetobjects.cxx534
-rwxr-xr-xsc/source/ui/vba/vbasheetobjects.hxx113
-rw-r--r--sc/source/ui/vba/vbastyle.cxx186
-rw-r--r--sc/source/ui/vba/vbastyle.hxx96
-rw-r--r--sc/source/ui/vba/vbastyles.cxx182
-rw-r--r--sc/source/ui/vba/vbastyles.hxx57
-rw-r--r--sc/source/ui/vba/vbatextboxshape.cxx66
-rw-r--r--sc/source/ui/vba/vbatextboxshape.hxx50
-rw-r--r--sc/source/ui/vba/vbatextframe.cxx78
-rw-r--r--sc/source/ui/vba/vbatextframe.hxx49
-rw-r--r--sc/source/ui/vba/vbatitle.hxx163
-rw-r--r--sc/source/ui/vba/vbavalidation.cxx333
-rw-r--r--sc/source/ui/vba/vbavalidation.hxx71
-rw-r--r--sc/source/ui/vba/vbawindow.cxx858
-rw-r--r--sc/source/ui/vba/vbawindow.hxx123
-rw-r--r--sc/source/ui/vba/vbawindows.cxx260
-rw-r--r--sc/source/ui/vba/vbawindows.hxx64
-rw-r--r--sc/source/ui/vba/vbaworkbook.cxx363
-rw-r--r--sc/source/ui/vba/vbaworkbook.hxx80
-rw-r--r--sc/source/ui/vba/vbaworkbooks.cxx367
-rw-r--r--sc/source/ui/vba/vbaworkbooks.hxx71
-rw-r--r--sc/source/ui/vba/vbaworksheet.cxx1019
-rw-r--r--sc/source/ui/vba/vbaworksheet.hxx174
-rw-r--r--sc/source/ui/vba/vbaworksheets.cxx501
-rw-r--r--sc/source/ui/vba/vbaworksheets.hxx83
-rw-r--r--sc/source/ui/vba/vbawsfunction.cxx259
-rw-r--r--sc/source/ui/vba/vbawsfunction.hxx57
-rw-r--r--sc/source/ui/view/auditsh.cxx155
-rw-r--r--sc/source/ui/view/cellsh.cxx1005
-rw-r--r--sc/source/ui/view/cellsh1.cxx2206
-rw-r--r--sc/source/ui/view/cellsh2.cxx1432
-rw-r--r--sc/source/ui/view/cellsh3.cxx966
-rw-r--r--sc/source/ui/view/cellsh4.cxx382
-rw-r--r--sc/source/ui/view/colrowba.cxx419
-rw-r--r--sc/source/ui/view/dbfunc.cxx509
-rw-r--r--sc/source/ui/view/dbfunc2.cxx77
-rwxr-xr-xsc/source/ui/view/dbfunc3.cxx2375
-rw-r--r--sc/source/ui/view/dbfunc4.cxx102
-rw-r--r--sc/source/ui/view/drawattr.cxx82
-rw-r--r--sc/source/ui/view/drawutil.cxx116
-rw-r--r--sc/source/ui/view/drawvie2.cxx62
-rw-r--r--sc/source/ui/view/drawvie3.cxx182
-rw-r--r--sc/source/ui/view/drawvie4.cxx394
-rw-r--r--sc/source/ui/view/drawview.cxx849
-rw-r--r--sc/source/ui/view/editsh.cxx1206
-rw-r--r--sc/source/ui/view/formatsh.cxx2168
-rw-r--r--sc/source/ui/view/galwrap.cxx79
-rw-r--r--sc/source/ui/view/gridmerg.cxx174
-rw-r--r--sc/source/ui/view/gridwin.cxx5706
-rw-r--r--sc/source/ui/view/gridwin2.cxx1061
-rwxr-xr-xsc/source/ui/view/gridwin3.cxx443
-rw-r--r--sc/source/ui/view/gridwin4.cxx2069
-rw-r--r--sc/source/ui/view/gridwin5.cxx439
-rw-r--r--sc/source/ui/view/hdrcont.cxx1046
-rw-r--r--sc/source/ui/view/hintwin.cxx108
-rw-r--r--sc/source/ui/view/imapwrap.cxx76
-rw-r--r--sc/source/ui/view/invmerge.cxx192
-rw-r--r--sc/source/ui/view/makefile.mk173
-rw-r--r--sc/source/ui/view/notemark.cxx200
-rw-r--r--sc/source/ui/view/olinewin.cxx1045
-rw-r--r--sc/source/ui/view/olkact.cxx282
-rw-r--r--sc/source/ui/view/output.cxx2476
-rw-r--r--sc/source/ui/view/output2.cxx3696
-rw-r--r--sc/source/ui/view/output3.cxx276
-rw-r--r--sc/source/ui/view/pfuncache.cxx196
-rw-r--r--sc/source/ui/view/pgbrksh.cxx85
-rw-r--r--sc/source/ui/view/pivotsh.cxx204
-rw-r--r--sc/source/ui/view/preview.cxx1603
-rw-r--r--sc/source/ui/view/prevloc.cxx792
-rw-r--r--sc/source/ui/view/prevwsh.cxx1241
-rw-r--r--sc/source/ui/view/prevwsh2.cxx353
-rwxr-xr-xsc/source/ui/view/printfun.cxx3202
-rw-r--r--sc/source/ui/view/reffact.cxx434
-rw-r--r--sc/source/ui/view/scextopt.cxx224
-rw-r--r--sc/source/ui/view/select.cxx891
-rw-r--r--sc/source/ui/view/selectionstate.cxx89
-rw-r--r--sc/source/ui/view/spelldialog.cxx279
-rw-r--r--sc/source/ui/view/spelleng.cxx458
-rw-r--r--sc/source/ui/view/tabcont.cxx638
-rw-r--r--sc/source/ui/view/tabpopsh.cxx72
-rw-r--r--sc/source/ui/view/tabsplit.cxx105
-rw-r--r--sc/source/ui/view/tabview.cxx2535
-rw-r--r--sc/source/ui/view/tabview2.cxx982
-rw-r--r--sc/source/ui/view/tabview3.cxx2790
-rw-r--r--sc/source/ui/view/tabview4.cxx573
-rw-r--r--sc/source/ui/view/tabview5.cxx722
-rw-r--r--sc/source/ui/view/tabvwsh.cxx117
-rw-r--r--sc/source/ui/view/tabvwsh2.cxx481
-rw-r--r--sc/source/ui/view/tabvwsh3.cxx1234
-rw-r--r--sc/source/ui/view/tabvwsh4.cxx2114
-rw-r--r--sc/source/ui/view/tabvwsh5.cxx428
-rw-r--r--sc/source/ui/view/tabvwsh8.cxx104
-rw-r--r--sc/source/ui/view/tabvwsh9.cxx295
-rw-r--r--sc/source/ui/view/tabvwsha.cxx890
-rw-r--r--sc/source/ui/view/tabvwshb.cxx491
-rw-r--r--sc/source/ui/view/tabvwshc.cxx327
-rw-r--r--sc/source/ui/view/tabvwshd.cxx100
-rw-r--r--sc/source/ui/view/tabvwshe.cxx341
-rw-r--r--sc/source/ui/view/tabvwshf.cxx964
-rw-r--r--sc/source/ui/view/tabvwshg.cxx140
-rw-r--r--sc/source/ui/view/tabvwshh.cxx293
-rw-r--r--sc/source/ui/view/viewdata.cxx3179
-rw-r--r--sc/source/ui/view/viewfun2.cxx3145
-rw-r--r--sc/source/ui/view/viewfun3.cxx1785
-rw-r--r--sc/source/ui/view/viewfun4.cxx846
-rw-r--r--sc/source/ui/view/viewfun5.cxx749
-rw-r--r--sc/source/ui/view/viewfun6.cxx197
-rw-r--r--sc/source/ui/view/viewfun7.cxx454
-rw-r--r--sc/source/ui/view/viewfunc.cxx3018
-rw-r--r--sc/source/ui/view/viewutil.cxx640
-rw-r--r--sc/source/ui/view/waitoff.cxx70
-rw-r--r--sc/uiconfig/layout/delzip1
-rw-r--r--sc/uiconfig/layout/insert-sheet.xml57
-rw-r--r--sc/uiconfig/layout/makefile.mk59
-rw-r--r--sc/uiconfig/layout/move-copy-sheet.xml21
-rw-r--r--sc/uiconfig/layout/sort-options.xml40
-rw-r--r--sc/uiconfig/layout/string-input.xml16
-rw-r--r--sc/uiconfig/scalc/menubar/menubar.xml449
-rw-r--r--sc/uiconfig/scalc/statusbar/statusbar.xml13
-rw-r--r--sc/uiconfig/scalc/toolbar/alignmentbar.xml11
-rw-r--r--sc/uiconfig/scalc/toolbar/arrowshapes.xml34
-rw-r--r--sc/uiconfig/scalc/toolbar/basicshapes.xml29
-rw-r--r--sc/uiconfig/scalc/toolbar/calloutshapes.xml11
-rw-r--r--sc/uiconfig/scalc/toolbar/colorbar.xml15
-rw-r--r--sc/uiconfig/scalc/toolbar/drawbar.xml34
-rw-r--r--sc/uiconfig/scalc/toolbar/drawobjectbar.xml30
-rw-r--r--sc/uiconfig/scalc/toolbar/extrusionobjectbar.xml16
-rw-r--r--sc/uiconfig/scalc/toolbar/findbar.xml8
-rw-r--r--sc/uiconfig/scalc/toolbar/flowchartshapes.xml36
-rw-r--r--sc/uiconfig/scalc/toolbar/fontworkobjectbar.xml11
-rw-r--r--sc/uiconfig/scalc/toolbar/fontworkshapetype.xml38
-rw-r--r--sc/uiconfig/scalc/toolbar/formatobjectbar.xml53
-rw-r--r--sc/uiconfig/scalc/toolbar/formcontrols.xml29
-rw-r--r--sc/uiconfig/scalc/toolbar/formdesign.xml32
-rw-r--r--sc/uiconfig/scalc/toolbar/formsfilterbar.xml7
-rw-r--r--sc/uiconfig/scalc/toolbar/formsnavigationbar.xml33
-rw-r--r--sc/uiconfig/scalc/toolbar/formtextobjectbar.xml28
-rw-r--r--sc/uiconfig/scalc/toolbar/fullscreenbar.xml5
-rw-r--r--sc/uiconfig/scalc/toolbar/graffilterbar.xml17
-rw-r--r--sc/uiconfig/scalc/toolbar/graphicobjectbar.xml32
-rw-r--r--sc/uiconfig/scalc/toolbar/insertbar.xml13
-rw-r--r--sc/uiconfig/scalc/toolbar/insertcellsbar.xml8
-rw-r--r--sc/uiconfig/scalc/toolbar/mediaobjectbar.xml7
-rw-r--r--sc/uiconfig/scalc/toolbar/moreformcontrols.xml20
-rw-r--r--sc/uiconfig/scalc/toolbar/previewbar.xml22
-rw-r--r--sc/uiconfig/scalc/toolbar/standardbar.xml44
-rw-r--r--sc/uiconfig/scalc/toolbar/starshapes.xml17
-rw-r--r--sc/uiconfig/scalc/toolbar/symbolshapes.xml24
-rw-r--r--sc/uiconfig/scalc/toolbar/textobjectbar.xml35
-rw-r--r--sc/uiconfig/scalc/toolbar/toolbar.xml23
-rw-r--r--sc/uiconfig/scalc/toolbar/viewerbar.xml18
-rw-r--r--sc/util/createExtPackage.pl67
-rw-r--r--sc/util/hidother.src472
-rw-r--r--sc/util/makefile.mk364
-rw-r--r--sc/util/makefile.pmk32
-rw-r--r--sc/util/sc.component97
-rw-r--r--sc/util/sc.flt136
-rw-r--r--sc/util/sc.r777
-rw-r--r--sc/util/scd.component34
-rw-r--r--sc/util/scfilt.map6
-rw-r--r--sc/util/scui.map6
-rw-r--r--sc/util/vbaobj.component58
-rw-r--r--sc/workben/addin.cxx595
-rw-r--r--sc/workben/addin.hxx102
-rw-r--r--sc/workben/celltrans/keywords_utf16.txtbin0 -> 1830 bytes-rwxr-xr-xsc/workben/celltrans/parse.py209
-rw-r--r--sc/workben/makefile.mk96
-rw-r--r--sc/workben/map.idl37
-rw-r--r--sc/workben/result.cxx133
-rw-r--r--sc/workben/result.hxx75
-rw-r--r--sc/workben/test.cxx2041
-rw-r--r--sc/workben/testadd.idl67
-rw-r--r--sc/xml/AccessibleEditableTextPara_HeaderFooter.xml30
-rw-r--r--sc/xml/AccessibleEditableTextPara_PreviewCell.xml29
-rw-r--r--sc/xml/AccessibleEditableTextPara_PreviewNote.xml29
-rw-r--r--sc/xml/ScAccessibleCell.xml30
-rw-r--r--sc/xml/ScAccessibleCsvCell.xml28
-rw-r--r--sc/xml/ScAccessibleCsvGrid.xml29
-rw-r--r--sc/xml/ScAccessibleCsvRuler.xml28
-rw-r--r--sc/xml/ScAccessibleDocument.xml28
-rw-r--r--sc/xml/ScAccessibleDocumentPagePreview.xml27
-rw-r--r--sc/xml/ScAccessiblePageHeader.xml27
-rw-r--r--sc/xml/ScAccessiblePageHeaderArea.xml27
-rw-r--r--sc/xml/ScAccessiblePreviewCell.xml28
-rw-r--r--sc/xml/ScAccessiblePreviewHeaderCell.xml28
-rw-r--r--sc/xml/ScAccessiblePreviewTable.xml27
-rw-r--r--sc/xml/ScAccessibleSpreadsheet.xml28
-rw-r--r--sc/xml/ScAnnotationObj.xml203
-rw-r--r--sc/xml/ScAnnotationShapeObj.xml203
-rw-r--r--sc/xml/ScAnnotationsObj.xml295
-rw-r--r--sc/xml/ScAreaLinkObj.xml108
-rw-r--r--sc/xml/ScAreaLinksObj.xml108
-rw-r--r--sc/xml/ScAutoFormatFieldObj.xml135
-rw-r--r--sc/xml/ScAutoFormatObj.xml135
-rw-r--r--sc/xml/ScAutoFormatsObj.xml135
-rw-r--r--sc/xml/ScCellCursorObj.xml200
-rw-r--r--sc/xml/ScCellFieldObj.xml205
-rw-r--r--sc/xml/ScCellFieldsObj.xml205
-rw-r--r--sc/xml/ScCellFormatsEnumeration.xml317
-rw-r--r--sc/xml/ScCellFormatsObj.xml317
-rw-r--r--sc/xml/ScCellObj.xml317
-rw-r--r--sc/xml/ScCellRangeObj.xml317
-rw-r--r--sc/xml/ScCellRangesObj.xml317
-rw-r--r--sc/xml/ScCellSearchObj.xml103
-rw-r--r--sc/xml/ScCellTextCursor.xml121
-rw-r--r--sc/xml/ScCellsEnumeration.xml317
-rw-r--r--sc/xml/ScCellsObj.xml317
-rw-r--r--sc/xml/ScChartObj.xml111
-rw-r--r--sc/xml/ScChartsObj.xml111
-rw-r--r--sc/xml/ScConsolidationDescriptor.xml219
-rw-r--r--sc/xml/ScDDELinkObj.xml108
-rw-r--r--sc/xml/ScDDELinksObj.xml108
-rw-r--r--sc/xml/ScDataPilotFieldGroupItemObj.xml123
-rw-r--r--sc/xml/ScDataPilotFieldGroupObj.xml123
-rw-r--r--sc/xml/ScDataPilotFieldGroupsObj.xml123
-rw-r--r--sc/xml/ScDataPilotFieldObj.xml123
-rw-r--r--sc/xml/ScDataPilotFieldsObj.xml123
-rw-r--r--sc/xml/ScDataPilotItemObj.xml123
-rw-r--r--sc/xml/ScDataPilotItemsObj.xml123
-rw-r--r--sc/xml/ScDataPilotTableObj.xml124
-rw-r--r--sc/xml/ScDataPilotTablesObj.xml123
-rw-r--r--sc/xml/ScDatabaseRangeObj.xml219
-rw-r--r--sc/xml/ScDatabaseRangesObj.xml219
-rw-r--r--sc/xml/ScDocumentConfiguration.xml295
-rw-r--r--sc/xml/ScDrawPageObj.xml295
-rw-r--r--sc/xml/ScDrawPagesObj.xml295
-rw-r--r--sc/xml/ScFilterDescriptorBase.xml219
-rw-r--r--sc/xml/ScFunctionListObj.xml114
-rw-r--r--sc/xml/ScHeaderFieldObj.xml205
-rw-r--r--sc/xml/ScHeaderFieldsObj.xml205
-rw-r--r--sc/xml/ScHeaderFooterContentObj.xml121
-rw-r--r--sc/xml/ScHeaderFooterTextCursor.xml121
-rw-r--r--sc/xml/ScHeaderFooterTextObj.xml121
-rw-r--r--sc/xml/ScIndexEnumeration_CellAnnotationsEnumeration.xml61
-rw-r--r--sc/xml/ScIndexEnumeration_CellAreaLinksEnumeration.xml61
-rw-r--r--sc/xml/ScIndexEnumeration_DDELinksEnumeration.xml61
-rw-r--r--sc/xml/ScIndexEnumeration_DataPilotFieldsEnumeration.xml61
-rw-r--r--sc/xml/ScIndexEnumeration_DataPilotItemsEnumeration.xml61
-rw-r--r--sc/xml/ScIndexEnumeration_DataPilotTablesEnumeration.xml61
-rw-r--r--sc/xml/ScIndexEnumeration_DatabaseRangesEnumeration.xml61
-rw-r--r--sc/xml/ScIndexEnumeration_FunctionDescriptionEnumeration.xml61
-rw-r--r--sc/xml/ScIndexEnumeration_LabelRangesEnumeration.xml61
-rw-r--r--sc/xml/ScIndexEnumeration_NamedRangesEnumeration.xml61
-rw-r--r--sc/xml/ScIndexEnumeration_ScenariosEnumeration.xml61
-rw-r--r--sc/xml/ScIndexEnumeration_SheetCellRangesEnumeration.xml61
-rw-r--r--sc/xml/ScIndexEnumeration_SheetLinksEnumeration.xml61
-rw-r--r--sc/xml/ScIndexEnumeration_SpreadsheetViewPanesEnumeration.xml61
-rw-r--r--sc/xml/ScIndexEnumeration_SpreadsheetsEnumeration.xml61
-rw-r--r--sc/xml/ScIndexEnumeration_SubTotalFieldsEnumeration.xml61
-rw-r--r--sc/xml/ScIndexEnumeration_TableAutoFormatEnumeration.xml61
-rw-r--r--sc/xml/ScIndexEnumeration_TableChartsEnumeration.xml61
-rw-r--r--sc/xml/ScIndexEnumeration_TableColumnsEnumeration.xml61
-rw-r--r--sc/xml/ScIndexEnumeration_TableConditionalEntryEnumeration.xml61
-rw-r--r--sc/xml/ScIndexEnumeration_TableRowsEnumeration.xml61
-rw-r--r--sc/xml/ScIndexEnumeration_TextFieldEnumeration.xml61
-rw-r--r--sc/xml/ScLabelRangeObj.xml217
-rw-r--r--sc/xml/ScLabelRangesObj.xml217
-rw-r--r--sc/xml/ScModelObj.xml295
-rw-r--r--sc/xml/ScNamedRangeObj.xml217
-rw-r--r--sc/xml/ScNamedRangesObj.xml217
-rw-r--r--sc/xml/ScPageObj.xml295
-rw-r--r--sc/xml/ScRecentFunctionsObj.xml114
-rw-r--r--sc/xml/ScScenariosObj.xml295
-rw-r--r--sc/xml/ScShapeObj.xml34
-rw-r--r--sc/xml/ScSheetLinkObj.xml108
-rw-r--r--sc/xml/ScSheetLinksObj.xml108
-rw-r--r--sc/xml/ScSpreadsheetSettings.xml114
-rw-r--r--sc/xml/ScSpreadsheetSettingsObj.xml296
-rw-r--r--sc/xml/ScStyleFamiliesObj.xml135
-rw-r--r--sc/xml/ScStyleFamilyObj.xml134
-rw-r--r--sc/xml/ScStyleObj.xml134
-rw-r--r--sc/xml/ScSubTotalDescriptorBase.xml219
-rw-r--r--sc/xml/ScSubTotalFieldObj.xml219
-rw-r--r--sc/xml/ScTabViewObj.xml250
-rw-r--r--sc/xml/ScTableColumnObj.xml317
-rw-r--r--sc/xml/ScTableColumnsObj.xml295
-rw-r--r--sc/xml/ScTableConditionalEntry.xml73
-rw-r--r--sc/xml/ScTableConditionalFormat.xml73
-rw-r--r--sc/xml/ScTableRowObj.xml317
-rw-r--r--sc/xml/ScTableRowsObj.xml295
-rw-r--r--sc/xml/ScTableSheetObj.xml317
-rw-r--r--sc/xml/ScTableSheetsObj.xml295
-rw-r--r--sc/xml/ScTableValidationObj.xml73
-rw-r--r--sc/xml/ScUniqueCellFormatsEnumeration.xml317
-rw-r--r--sc/xml/ScUniqueCellFormatsObj.xml317
-rw-r--r--sc/xml/ScViewPaneObj.xml250
-rw-r--r--sc/xml/ScXMLExport.xml116
-rw-r--r--sc/xml/ScXMLImport.xml116
-rw-r--r--scaddins/prj/build.lst4
-rw-r--r--scaddins/prj/d.lst11
-rw-r--r--scaddins/source/analysis/analysis.component35
-rw-r--r--scaddins/source/analysis/analysis.cxx1281
-rw-r--r--scaddins/source/analysis/analysis.hrc330
-rw-r--r--scaddins/source/analysis/analysis.hxx241
-rw-r--r--scaddins/source/analysis/analysis.src3604
-rw-r--r--scaddins/source/analysis/analysis_deffuncnames.src874
-rw-r--r--scaddins/source/analysis/analysis_funcnames.src548
-rw-r--r--scaddins/source/analysis/analysisadd.idl599
-rw-r--r--scaddins/source/analysis/analysisdefs.hxx55
-rw-r--r--scaddins/source/analysis/analysishelper.cxx2988
-rw-r--r--scaddins/source/analysis/analysishelper.hxx1105
-rw-r--r--scaddins/source/analysis/bessel.cxx500
-rw-r--r--scaddins/source/analysis/bessel.hxx60
-rw-r--r--scaddins/source/analysis/financial.cxx667
-rw-r--r--scaddins/source/analysis/makefile.mk143
-rw-r--r--scaddins/source/datefunc/date.component35
-rw-r--r--scaddins/source/datefunc/dateadd.idl118
-rw-r--r--scaddins/source/datefunc/datefunc.cxx971
-rw-r--r--scaddins/source/datefunc/datefunc.def6
-rw-r--r--scaddins/source/datefunc/datefunc.hrc75
-rw-r--r--scaddins/source/datefunc/datefunc.hxx428
-rw-r--r--scaddins/source/datefunc/datefunc.src348
-rw-r--r--scaddins/source/datefunc/makefile.mk129
-rw-r--r--scaddins/source/datefunc/msdev.mk116
-rw-r--r--sccomp/prj/build.lst4
-rw-r--r--sccomp/prj/d.lst10
-rw-r--r--sccomp/source/solver/makefile.mk85
-rw-r--r--sccomp/source/solver/solver.component34
-rw-r--r--sccomp/source/solver/solver.cxx629
-rw-r--r--sccomp/source/solver/solver.hrc45
-rw-r--r--sccomp/source/solver/solver.hxx127
-rw-r--r--sccomp/source/solver/solver.src76
-rwxr-xr-xscp2/inc/macros.inc544
-rw-r--r--scp2/macros/macro.pl294
-rw-r--r--scp2/macros/makefile.mk49
-rw-r--r--scp2/prj/build.lst28
-rw-r--r--scp2/prj/d.lst27
-rw-r--r--scp2/source/activex/file_activex.scp60
-rw-r--r--scp2/source/activex/makefile.mk56
-rw-r--r--scp2/source/activex/module_activex.scp38
-rw-r--r--scp2/source/activex/module_activex.ulf35
-rw-r--r--scp2/source/base/file_base.scp87
-rw-r--r--scp2/source/base/folderitem_base.scp41
-rw-r--r--scp2/source/base/folderitem_base.ulf30
-rw-r--r--scp2/source/base/makefile.mk62
-rw-r--r--scp2/source/base/module_base.scp96
-rw-r--r--scp2/source/base/module_base.ulf47
-rwxr-xr-xscp2/source/base/registryitem_base.scp163
-rw-r--r--scp2/source/base/registryitem_base.ulf29
-rw-r--r--scp2/source/binfilter/file_binfilter.scp74
-rw-r--r--scp2/source/binfilter/makefile.mk52
-rw-r--r--scp2/source/binfilter/module_binfilter.scp77
-rw-r--r--scp2/source/binfilter/module_binfilter.ulf32
-rw-r--r--scp2/source/binfilter/registryitem_binfilter.scp931
-rw-r--r--scp2/source/binfilter/registryitem_binfilter.ulf53
-rw-r--r--scp2/source/calc/file_calc.scp94
-rw-r--r--scp2/source/calc/folderitem_calc.scp41
-rw-r--r--scp2/source/calc/folderitem_calc.ulf32
-rw-r--r--scp2/source/calc/makefile.mk61
-rw-r--r--scp2/source/calc/module_calc.scp101
-rw-r--r--scp2/source/calc/module_calc.ulf50
-rwxr-xr-xscp2/source/calc/registryitem_calc.scp1120
-rw-r--r--scp2/source/calc/registryitem_calc.ulf54
-rw-r--r--scp2/source/canvas/cairocanvas.scp40
-rw-r--r--scp2/source/canvas/canvascommons.scp40
-rw-r--r--scp2/source/canvas/directxcanvas.scp36
-rw-r--r--scp2/source/canvas/makefile.mk64
-rw-r--r--scp2/source/canvas/vclcanvas.scp30
-rw-r--r--scp2/source/crashrep/file_crashrep.scp64
-rw-r--r--scp2/source/crashrep/makefile.mk50
-rw-r--r--scp2/source/draw/file_draw.scp64
-rw-r--r--scp2/source/draw/folderitem_draw.scp41
-rw-r--r--scp2/source/draw/folderitem_draw.ulf34
-rw-r--r--scp2/source/draw/makefile.mk58
-rw-r--r--scp2/source/draw/module_draw.scp79
-rw-r--r--scp2/source/draw/module_draw.ulf47
-rwxr-xr-xscp2/source/draw/registryitem_draw.scp927
-rw-r--r--scp2/source/draw/registryitem_draw.ulf42
-rw-r--r--scp2/source/gnome/file_gnome.scp63
-rw-r--r--scp2/source/gnome/makefile.mk71
-rw-r--r--scp2/source/gnome/module_gnome.scp58
-rw-r--r--scp2/source/gnome/module_gnome.ulf33
-rw-r--r--scp2/source/graphicfilter/file_graphicfilter.scp40
-rw-r--r--scp2/source/graphicfilter/makefile.mk50
-rw-r--r--scp2/source/graphicfilter/module_graphicfilter.scp38
-rw-r--r--scp2/source/graphicfilter/module_graphicfilter.ulf119
-rw-r--r--scp2/source/impress/file_impress.scp91
-rw-r--r--scp2/source/impress/folderitem_impress.scp41
-rw-r--r--scp2/source/impress/folderitem_impress.ulf34
-rw-r--r--scp2/source/impress/makefile.mk65
-rw-r--r--scp2/source/impress/module_impress.scp89
-rw-r--r--scp2/source/impress/module_impress.ulf48
-rw-r--r--scp2/source/impress/module_ogltrans.scp62
-rw-r--r--scp2/source/impress/module_ogltrans.ulf34
-rwxr-xr-xscp2/source/impress/registryitem_impress.scp984
-rw-r--r--scp2/source/impress/registryitem_impress.ulf60
-rw-r--r--scp2/source/javafilter/file_javafilter.scp81
-rw-r--r--scp2/source/javafilter/makefile.mk59
-rw-r--r--scp2/source/javafilter/module_javafilter.scp123
-rw-r--r--scp2/source/javafilter/module_javafilter.ulf68
-rw-r--r--scp2/source/javafilter/registryitem_javafilter.scp437
-rw-r--r--scp2/source/javafilter/registryitem_javafilter.ulf59
-rw-r--r--scp2/source/kde/file_kde.scp45
-rw-r--r--scp2/source/kde/makefile.mk62
-rw-r--r--scp2/source/kde/module_kde.scp50
-rw-r--r--scp2/source/kde/module_kde.ulf33
-rw-r--r--scp2/source/layout/layout.scp62
-rw-r--r--scp2/source/layout/makefile.mk50
-rw-r--r--scp2/source/math/file_math.scp80
-rw-r--r--scp2/source/math/folderitem_math.scp41
-rw-r--r--scp2/source/math/folderitem_math.ulf31
-rw-r--r--scp2/source/math/makefile.mk57
-rw-r--r--scp2/source/math/module_math.scp80
-rw-r--r--scp2/source/math/module_math.ulf47
-rw-r--r--scp2/source/math/registryitem_math.scp681
-rw-r--r--scp2/source/math/registryitem_math.ulf36
-rwxr-xr-xscp2/source/mkopenwith.btm52
-rw-r--r--scp2/source/onlineupdate/file_onlineupdate.scp46
-rw-r--r--scp2/source/onlineupdate/makefile.mk51
-rw-r--r--scp2/source/onlineupdate/module_onlineupdate.scp38
-rw-r--r--scp2/source/onlineupdate/module_onlineupdate.ulf33
-rw-r--r--scp2/source/ooo/common_brand.scp1491
-rw-r--r--scp2/source/ooo/common_brand_readme.scp126
-rw-r--r--scp2/source/ooo/datacarrier_ooo.scp34
-rw-r--r--scp2/source/ooo/directory_ooo.scp1331
-rw-r--r--scp2/source/ooo/directory_ooo.ulf54
-rwxr-xr-xscp2/source/ooo/directory_ooo_macosx.scp45
-rw-r--r--scp2/source/ooo/file_extra_ooo.scp445
-rw-r--r--scp2/source/ooo/file_font_ooo.scp150
-rw-r--r--scp2/source/ooo/file_improvement.scp41
-rw-r--r--scp2/source/ooo/file_jre_ooo.scp49
-rwxr-xr-xscp2/source/ooo/file_library_ooo.scp1762
-rw-r--r--scp2/source/ooo/file_ooo.scp2153
-rw-r--r--scp2/source/ooo/file_resource_ooo.scp133
-rw-r--r--scp2/source/ooo/folder_ooo.scp33
-rw-r--r--scp2/source/ooo/folderitem_ooo.scp56
-rw-r--r--scp2/source/ooo/folderitem_ooo.ulf35
-rw-r--r--scp2/source/ooo/installation_ooo.scp49
-rw-r--r--scp2/source/ooo/makefile.mk326
-rwxr-xr-xscp2/source/ooo/mergemodules_ooo.scp56
-rw-r--r--scp2/source/ooo/module_headless.scp27
-rw-r--r--scp2/source/ooo/module_headless.ulf32
-rw-r--r--scp2/source/ooo/module_hidden_ooo.scp812
-rw-r--r--scp2/source/ooo/module_improvement.scp42
-rw-r--r--scp2/source/ooo/module_java.scp100
-rw-r--r--scp2/source/ooo/module_java.ulf32
-rwxr-xr-xscp2/source/ooo/module_lang_template.scp132
-rw-r--r--scp2/source/ooo/module_langpack.scp38
-rw-r--r--scp2/source/ooo/module_langpack.ulf692
-rw-r--r--scp2/source/ooo/module_ooo.scp409
-rw-r--r--scp2/source/ooo/module_ooo.ulf242
-rw-r--r--scp2/source/ooo/module_systemint.scp50
-rw-r--r--scp2/source/ooo/module_systemint.ulf32
-rw-r--r--scp2/source/ooo/ooo_brand.scp62
-rw-r--r--scp2/source/ooo/profile_ooo.scp52
-rw-r--r--scp2/source/ooo/profileitem_ooo.scp463
-rw-r--r--scp2/source/ooo/registryitem_ooo.scp676
-rw-r--r--scp2/source/ooo/registryitem_ooo.ulf41
-rw-r--r--scp2/source/ooo/scpaction_ooo.scp380
-rw-r--r--scp2/source/ooo/shortcut_ooo.scp97
-rw-r--r--scp2/source/ooo/starregistry_ooo.scp34
-rwxr-xr-xscp2/source/ooo/ure.scp1261
-rwxr-xr-xscp2/source/ooo/ure_into_ooo.scp67
-rwxr-xr-xscp2/source/ooo/ure_standalone.scp109
-rw-r--r--scp2/source/ooo/vc_redist.scp52
-rwxr-xr-xscp2/source/ooo/windowscustomaction_ooo.scp506
-rw-r--r--scp2/source/python/file_python.scp311
-rw-r--r--scp2/source/python/makefile.mk63
-rw-r--r--scp2/source/python/module_python.scp39
-rw-r--r--scp2/source/python/module_python.ulf32
-rw-r--r--scp2/source/python/module_python_mailmerge.scp35
-rwxr-xr-xscp2/source/python/module_python_mailmerge.ulf32
-rw-r--r--scp2/source/python/profileitem_python.scp94
-rw-r--r--scp2/source/quickstart/file_quickstart.scp35
-rw-r--r--scp2/source/quickstart/folderitem_quickstart.scp35
-rw-r--r--scp2/source/quickstart/makefile.mk53
-rw-r--r--scp2/source/quickstart/module_quickstart.scp36
-rw-r--r--scp2/source/quickstart/module_quickstart.ulf35
-rw-r--r--scp2/source/quickstart/registryitem_quickstart.scp36
-rw-r--r--scp2/source/sdkoo/makefile.mk46
-rw-r--r--scp2/source/sdkoo/module_sdkoo.scp37
-rw-r--r--scp2/source/sdkoo/module_sdkoo.ulf32
-rw-r--r--scp2/source/sdkoo/sdkoo.scp253
-rwxr-xr-xscp2/source/supported_extensions.txt80
-rwxr-xr-xscp2/source/templates/makefile.mk52
-rwxr-xr-xscp2/source/templates/module_langpack.sct34
-rwxr-xr-xscp2/source/templates/module_langpack_base.sct37
-rw-r--r--scp2/source/templates/module_langpack_binfilter.sct38
-rwxr-xr-xscp2/source/templates/module_langpack_calc.sct37
-rwxr-xr-xscp2/source/templates/module_langpack_draw.sct37
-rwxr-xr-xscp2/source/templates/module_langpack_impress.sct37
-rwxr-xr-xscp2/source/templates/module_langpack_math.sct37
-rwxr-xr-xscp2/source/templates/module_langpack_onlineupdate.sct37
-rwxr-xr-xscp2/source/templates/module_langpack_root.sct83
-rwxr-xr-xscp2/source/templates/module_langpack_writer.sct37
-rwxr-xr-xscp2/source/templates/modules.pl185
-rw-r--r--scp2/source/testtool/file_testtool.scp71
-rw-r--r--scp2/source/testtool/makefile.mk50
-rw-r--r--scp2/source/testtool/module_testtool.scp38
-rw-r--r--scp2/source/testtool/module_testtool.ulf32
-rwxr-xr-xscp2/source/winexplorerext/file_winexplorerext.scp112
-rwxr-xr-xscp2/source/winexplorerext/makefile.mk61
-rwxr-xr-xscp2/source/winexplorerext/module_winexplorerext.scp57
-rw-r--r--scp2/source/winexplorerext/module_winexplorerext.ulf35
-rw-r--r--scp2/source/winexplorerext/registryitem_winexplorerext.scp230
-rw-r--r--scp2/source/writer/file_writer.scp91
-rw-r--r--scp2/source/writer/folderitem_writer.scp41
-rw-r--r--scp2/source/writer/folderitem_writer.ulf35
-rw-r--r--scp2/source/writer/makefile.mk58
-rw-r--r--scp2/source/writer/module_writer.scp106
-rw-r--r--scp2/source/writer/module_writer.ulf50
-rwxr-xr-xscp2/source/writer/registryitem_writer.scp1498
-rw-r--r--scp2/source/writer/registryitem_writer.ulf66
-rw-r--r--scp2/source/xsltfilter/file_xsltfilter.scp85
-rw-r--r--scp2/source/xsltfilter/makefile.mk51
-rw-r--r--scp2/source/xsltfilter/module_xsltfilter.scp50
-rw-r--r--scp2/source/xsltfilter/module_xsltfilter.ulf35
-rw-r--r--scp2/util/makefile.mk362
-rw-r--r--scripting/README67
-rw-r--r--scripting/examples/basic/InsertColouredText.xba124
-rw-r--r--scripting/examples/basic/InsertColouredTextDialog.xdl17
-rw-r--r--scripting/examples/basic/SearchAndReplace.xba109
-rw-r--r--scripting/examples/basic/SearchAndReplaceDialog.xdl13
-rw-r--r--scripting/examples/basic/dialog.xlb6
-rw-r--r--scripting/examples/basic/script.xlb6
-rw-r--r--scripting/examples/beanshell/Capitalise/capitalise.bsh94
-rwxr-xr-xscripting/examples/beanshell/Capitalise/parcel-descriptor.xml16
-rw-r--r--scripting/examples/beanshell/HelloWorld/helloworld.bsh17
-rwxr-xr-xscripting/examples/beanshell/HelloWorld/parcel-descriptor.xml16
-rw-r--r--scripting/examples/beanshell/Highlight/ButtonPressHandler.bsh106
-rw-r--r--scripting/examples/beanshell/Highlight/ShowDialog.bsh124
-rw-r--r--scripting/examples/beanshell/Highlight/highlighter.bsh149
-rwxr-xr-xscripting/examples/beanshell/Highlight/parcel-descriptor.xml25
-rwxr-xr-xscripting/examples/beanshell/InteractiveBeanShell/interactive.bsh4
-rw-r--r--scripting/examples/beanshell/InteractiveBeanShell/parcel-descriptor.xml16
-rw-r--r--scripting/examples/beanshell/MemoryUsage/memusage.bsh120
-rw-r--r--scripting/examples/beanshell/MemoryUsage/parcel-descriptor.xml16
-rwxr-xr-xscripting/examples/beanshell/WordCount/parcel-descriptor.xml16
-rw-r--r--scripting/examples/beanshell/WordCount/wordcount.bsh64
-rw-r--r--scripting/examples/delzip1
-rw-r--r--scripting/examples/java/HelloWorld/HelloWorld.java22
-rw-r--r--scripting/examples/java/HelloWorld/parcel-descriptor.xml16
-rw-r--r--scripting/examples/java/Highlight/HighlightText.java223
-rwxr-xr-xscripting/examples/java/Highlight/parcel-descriptor.xml17
-rw-r--r--scripting/examples/java/MemoryUsage/MemoryUsage.java141
-rw-r--r--scripting/examples/java/MemoryUsage/parcel-descriptor.xml16
-rw-r--r--scripting/examples/java/Newsgroup/MimeConfiguration.java219
-rw-r--r--scripting/examples/java/Newsgroup/NewsGroup.java23
-rw-r--r--scripting/examples/java/Newsgroup/OfficeAttachment.java307
-rw-r--r--scripting/examples/java/Newsgroup/PostNewsgroup.java625
-rw-r--r--scripting/examples/java/Newsgroup/Sender.java126
-rw-r--r--scripting/examples/java/Newsgroup/StatusWindow.java138
-rw-r--r--scripting/examples/java/Newsgroup/SubscribedNewsgroups.java373
-rwxr-xr-xscripting/examples/java/build.xml139
-rw-r--r--scripting/examples/java/debugger/DebugRunner.java71
-rw-r--r--scripting/examples/java/debugger/OOBeanShellDebugger.java374
-rw-r--r--scripting/examples/java/debugger/OORhinoDebugger.java75
-rw-r--r--scripting/examples/java/debugger/OOScriptDebugger.java7
-rw-r--r--scripting/examples/java/debugger/parcel-descriptor.xml18
-rwxr-xr-xscripting/examples/java/makefile.mk38
-rw-r--r--scripting/examples/java/selector/ScriptSelector.java498
-rw-r--r--scripting/examples/java/selector/container.gifbin0 -> 164 bytes-rw-r--r--scripting/examples/java/selector/parcel-descriptor.xml17
-rw-r--r--scripting/examples/java/selector/script.gifbin0 -> 187 bytes-rw-r--r--scripting/examples/java/selector/soffice.gifbin0 -> 136 bytes-rw-r--r--scripting/examples/javascript/ExportSheetsToHTML/exportsheetstohtml.js71
-rwxr-xr-xscripting/examples/javascript/ExportSheetsToHTML/parcel-descriptor.xml16
-rw-r--r--scripting/examples/javascript/HelloWorld/helloworld.js16
-rwxr-xr-xscripting/examples/javascript/HelloWorld/parcel-descriptor.xml16
-rw-r--r--scripting/examples/javascript/Highlight/ButtonPressHandler.js105
-rw-r--r--scripting/examples/javascript/Highlight/ShowDialog.js115
-rw-r--r--scripting/examples/javascript/Highlight/parcel-descriptor.xml25
-rwxr-xr-xscripting/examples/makefile.mk58
-rw-r--r--scripting/examples/python/Capitalise.py61
-rw-r--r--scripting/examples/python/HelloWorld.py13
-rw-r--r--scripting/examples/python/pythonSamples/TableSample.py96
-rw-r--r--scripting/inc/makefile.mk47
-rw-r--r--scripting/inc/pch/precompiled_scripting.cxx29
-rw-r--r--scripting/inc/pch/precompiled_scripting.hxx32
-rw-r--r--scripting/java/Framework/com/sun/star/script/framework/security/SecurityDialog.java541
-rw-r--r--scripting/java/ScriptFramework.component34
-rw-r--r--scripting/java/ScriptProviderForBeanShell.component37
-rw-r--r--scripting/java/ScriptProviderForJava.component37
-rw-r--r--scripting/java/ScriptProviderForJavaScript.component37
-rw-r--r--scripting/java/build.env3
-rwxr-xr-xscripting/java/build.xml285
-rw-r--r--scripting/java/com/sun/star/script/framework/browse/DialogFactory.java423
-rw-r--r--scripting/java/com/sun/star/script/framework/browse/ParcelBrowseNode.java376
-rw-r--r--scripting/java/com/sun/star/script/framework/browse/PkgProviderBrowseNode.java65
-rw-r--r--scripting/java/com/sun/star/script/framework/browse/ProviderBrowseNode.java291
-rw-r--r--scripting/java/com/sun/star/script/framework/browse/ScriptBrowseNode.java335
-rw-r--r--scripting/java/com/sun/star/script/framework/container/DeployedUnoPackagesDB.java231
-rw-r--r--scripting/java/com/sun/star/script/framework/container/Parcel.java308
-rw-r--r--scripting/java/com/sun/star/script/framework/container/ParcelContainer.java746
-rw-r--r--scripting/java/com/sun/star/script/framework/container/ParcelDescriptor.java450
-rw-r--r--scripting/java/com/sun/star/script/framework/container/ParsedScriptUri.java36
-rw-r--r--scripting/java/com/sun/star/script/framework/container/ScriptEntry.java128
-rw-r--r--scripting/java/com/sun/star/script/framework/container/ScriptMetaData.java410
-rw-r--r--scripting/java/com/sun/star/script/framework/container/UnoPkgContainer.java438
-rw-r--r--scripting/java/com/sun/star/script/framework/container/XMLParser.java38
-rw-r--r--scripting/java/com/sun/star/script/framework/container/XMLParserFactory.java180
-rw-r--r--scripting/java/com/sun/star/script/framework/io/UCBStreamHandler.java281
-rw-r--r--scripting/java/com/sun/star/script/framework/io/XInputStreamImpl.java119
-rw-r--r--scripting/java/com/sun/star/script/framework/io/XInputStreamWrapper.java102
-rw-r--r--scripting/java/com/sun/star/script/framework/io/XOutputStreamWrapper.java128
-rw-r--r--scripting/java/com/sun/star/script/framework/io/XStorageHelper.java278
-rw-r--r--scripting/java/com/sun/star/script/framework/log/LogUtils.java68
-rwxr-xr-xscripting/java/com/sun/star/script/framework/provider/ClassLoaderFactory.java74
-rw-r--r--scripting/java/com/sun/star/script/framework/provider/EditorScriptContext.java100
-rwxr-xr-xscripting/java/com/sun/star/script/framework/provider/NoSuitableClassLoaderException.java53
-rw-r--r--scripting/java/com/sun/star/script/framework/provider/PathUtils.java87
-rw-r--r--scripting/java/com/sun/star/script/framework/provider/ScriptContext.java165
-rw-r--r--scripting/java/com/sun/star/script/framework/provider/ScriptEditor.java13
-rwxr-xr-xscripting/java/com/sun/star/script/framework/provider/ScriptProvider.java745
-rwxr-xr-xscripting/java/com/sun/star/script/framework/provider/beanshell/PlainSourceView.java247
-rw-r--r--scripting/java/com/sun/star/script/framework/provider/beanshell/ScriptEditorForBeanShell.java412
-rwxr-xr-xscripting/java/com/sun/star/script/framework/provider/beanshell/ScriptProviderForBeanShell.java383
-rw-r--r--scripting/java/com/sun/star/script/framework/provider/beanshell/ScriptSourceModel.java141
-rw-r--r--scripting/java/com/sun/star/script/framework/provider/beanshell/ScriptSourceView.java35
-rw-r--r--scripting/java/com/sun/star/script/framework/provider/beanshell/template.bsh48
-rwxr-xr-xscripting/java/com/sun/star/script/framework/provider/java/Resolver.java50
-rwxr-xr-xscripting/java/com/sun/star/script/framework/provider/java/ScriptDescriptor.java212
-rwxr-xr-xscripting/java/com/sun/star/script/framework/provider/java/ScriptProviderForJava.java364
-rwxr-xr-xscripting/java/com/sun/star/script/framework/provider/java/ScriptProxy.java92
-rwxr-xr-xscripting/java/com/sun/star/script/framework/provider/java/StrictResolver.java128
-rw-r--r--scripting/java/com/sun/star/script/framework/provider/javascript/ScriptEditorForJavaScript.java376
-rwxr-xr-xscripting/java/com/sun/star/script/framework/provider/javascript/ScriptProviderForJavaScript.java358
-rw-r--r--scripting/java/com/sun/star/script/framework/provider/javascript/template.js37
-rwxr-xr-xscripting/java/makefile.mk72
-rw-r--r--scripting/java/manifest.mf26
-rw-r--r--scripting/java/org/openoffice/idesupport/CommandLineTools.java350
-rw-r--r--scripting/java/org/openoffice/idesupport/ExtensionFinder.java60
-rw-r--r--scripting/java/org/openoffice/idesupport/JavaFinder.java227
-rw-r--r--scripting/java/org/openoffice/idesupport/LocalOffice.java109
-rw-r--r--scripting/java/org/openoffice/idesupport/MethodFinder.java8
-rw-r--r--scripting/java/org/openoffice/idesupport/OfficeDocument.java120
-rw-r--r--scripting/java/org/openoffice/idesupport/OfficeInstallation.java110
-rw-r--r--scripting/java/org/openoffice/idesupport/SVersionRCFile.java237
-rw-r--r--scripting/java/org/openoffice/idesupport/filter/AllFilesFilter.java47
-rw-r--r--scripting/java/org/openoffice/idesupport/filter/BinaryOnlyFilter.java58
-rw-r--r--scripting/java/org/openoffice/idesupport/filter/ExceptParcelFilter.java59
-rw-r--r--scripting/java/org/openoffice/idesupport/filter/FileFilter.java32
-rw-r--r--scripting/java/org/openoffice/idesupport/localoffice/LocalOfficeImpl.java154
-rw-r--r--scripting/java/org/openoffice/idesupport/ui/ConfigurePanel.java236
-rw-r--r--scripting/java/org/openoffice/idesupport/ui/MethodPanel.java186
-rw-r--r--scripting/java/org/openoffice/idesupport/ui/ScriptPanel.java206
-rw-r--r--scripting/java/org/openoffice/idesupport/ui/add.gifbin0 -> 103 bytes-rw-r--r--scripting/java/org/openoffice/idesupport/xml/Manifest.java171
-rw-r--r--scripting/java/org/openoffice/idesupport/zip/ParcelZipper.java600
-rw-r--r--scripting/java/org/openoffice/netbeans/editor/JavaKit.java248
-rw-r--r--scripting/java/org/openoffice/netbeans/editor/NetBeansSourceView.java209
-rw-r--r--scripting/java/org/openoffice/netbeans/editor/OOo.jcb5
-rw-r--r--scripting/java/org/openoffice/netbeans/editor/OOo.jcs21
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/Bundle.properties0
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/Bundle_en_US.properties0
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/actions/BuildParcelAction.java69
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/actions/CompileParcelAction.java44
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/actions/ConfigureParcelAction.java70
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/actions/DeployParcelAction.java244
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/actions/MountDocumentAction.java85
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/actions/MountParcelAction.java84
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/actions/OfficeDocumentCookie.java42
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/actions/OfficeDocumentSupport.java143
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/actions/ParcelCookie.java42
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/actions/ParcelDescriptorEditorSupport.java141
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/actions/ParcelDescriptorParserCookie.java42
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/actions/ParcelDescriptorParserSupport.java121
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/actions/ParcelFolderCookie.java42
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/actions/ParcelFolderSupport.java257
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/actions/ParcelSupport.java191
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/filesystem/Bundle.properties44
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/filesystem/Bundle_en_US.properties0
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/filesystem/OpenOfficeDocFileSystem.java1192
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/filesystem/OpenOfficeDocFileSystemBeanInfo.java125
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/loader/Bundle.properties13
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/loader/OfficeDocumentDataLoader.java112
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/loader/OfficeDocumentDataLoaderBeanInfo.java72
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/loader/OfficeDocumentDataNode.java120
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/loader/OfficeDocumentDataObject.java58
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/loader/ParcelContentsFolder.java137
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/loader/ParcelContentsFolderDataLoader.java82
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/loader/ParcelContentsFolderDataLoaderBeanInfo.java76
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/loader/ParcelDataLoader.java89
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/loader/ParcelDataLoaderBeanInfo.java76
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/loader/ParcelDataNode.java114
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/loader/ParcelDataObject.java77
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/loader/ParcelDescriptorDataLoader.java91
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/loader/ParcelDescriptorDataLoaderBeanInfo.java76
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/loader/ParcelDescriptorDataNode.java81
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/loader/ParcelDescriptorDataObject.java83
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/loader/ParcelFolder.java303
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/loader/ParcelFolderDataLoader.java112
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/loader/ParcelFolderDataLoaderBeanInfo.java76
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/nodes/OfficeDocumentChildren.java147
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/nodes/ParcelDescriptorChildren.java91
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/nodes/ScriptNode.java209
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/options/Bundle.properties14
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/options/OfficeSettings.java133
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/options/OfficeSettingsBeanInfo.java147
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/options/OfficeSettingsIcon.gifbin0 -> 145 bytes-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/options/OfficeSettingsIcon32.gifbin0 -> 253 bytes-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/resources/AppStorage.html11
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/resources/AppStorage.settings7
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/resources/Bundle.properties24
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/resources/EmptyParcel.html11
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/resources/OfficeIcon.gifbin0 -> 588 bytes-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/resources/OfficeIcon32.gifbin0 -> 759 bytes-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/resources/OfficeSettings.settings9
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/resources/OpenOfficeDocFileSystem.html11
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/resources/OpenOfficeDocFileSystem.settings7
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/resources/OpenOfficeDocFileSystemIcon.pngbin0 -> 702 bytes-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/resources/OpenOfficeDocFileSystemIcon32.pngbin0 -> 1533 bytes-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/resources/ParcelIcon.gifbin0 -> 576 bytes-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/resources/ScriptParcel.html11
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/resources/ScriptParcelDescriptor.html11
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/resources/layer.xml98
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/resources/mime-resolver.xml16
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/resources/office-scripting.url1
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/resources/templates/Empty.bsh_24
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/resources/templates/Empty.java_27
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/resources/templates/EmptyParcelDescriptor.xml_4
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/resources/templates/HelloWorld.java_41
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/resources/templates/ParcelDescriptor.xml_8
-rwxr-xr-xscripting/java/org/openoffice/netbeans/modules/office/resources/webLink.gifbin0 -> 969 bytes-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/utils/FrameworkJarChecker.java140
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/utils/ManifestParser.java97
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/utils/NagDialog.java127
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/utils/OfficeModule.java68
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/utils/PackageRemover.java106
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/utils/ZipMounter.java92
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/wizard/Bundle.properties27
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/wizard/Bundle_en_US.properties0
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/wizard/InstallationPathDescriptor.java72
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/wizard/InstallationPathIterator.java136
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/wizard/JavaScriptIterator.java250
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/wizard/ParcelContentsIterator.java254
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/wizard/ParcelPropertiesPanel.java117
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/wizard/ParcelPropertiesVisualPanel.form74
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/wizard/ParcelPropertiesVisualPanel.java157
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/wizard/SelectPathPanel.java123
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/wizard/SelectPathVisualPanel.form82
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/wizard/SelectPathVisualPanel.java196
-rwxr-xr-xscripting/prj/build.lst14
-rw-r--r--scripting/prj/d.lst29
-rw-r--r--scripting/source/basprov/baslibnode.cxx148
-rw-r--r--scripting/source/basprov/baslibnode.hxx87
-rw-r--r--scripting/source/basprov/basmethnode.cxx358
-rw-r--r--scripting/source/basprov/basmethnode.hxx132
-rw-r--r--scripting/source/basprov/basmodnode.cxx153
-rw-r--r--scripting/source/basprov/basmodnode.hxx81
-rw-r--r--scripting/source/basprov/basprov.component37
-rw-r--r--scripting/source/basprov/basprov.cxx599
-rw-r--r--scripting/source/basprov/basprov.hxx115
-rw-r--r--scripting/source/basprov/basprov.xml50
-rw-r--r--scripting/source/basprov/basscript.cxx226
-rw-r--r--scripting/source/basprov/basscript.hxx89
-rw-r--r--scripting/source/basprov/makefile.mk81
-rw-r--r--scripting/source/dlgprov/dlgevtatt.cxx679
-rw-r--r--scripting/source/dlgprov/dlgevtatt.hxx164
-rw-r--r--scripting/source/dlgprov/dlgprov.component36
-rw-r--r--scripting/source/dlgprov/dlgprov.cxx863
-rw-r--r--scripting/source/dlgprov/dlgprov.hxx157
-rw-r--r--scripting/source/dlgprov/dlgprov.xml58
-rw-r--r--scripting/source/dlgprov/makefile.mk90
-rw-r--r--scripting/source/inc/bcholder.hxx70
-rw-r--r--scripting/source/inc/util/MiscUtils.hxx177
-rw-r--r--scripting/source/inc/util/scriptingconstants.hxx79
-rw-r--r--scripting/source/inc/util/util.hxx49
-rw-r--r--scripting/source/protocolhandler/exports.dxp2
-rw-r--r--scripting/source/protocolhandler/makefile.mk71
-rw-r--r--scripting/source/protocolhandler/protocolhandler.component34
-rwxr-xr-xscripting/source/protocolhandler/protocolhandler.xml30
-rw-r--r--scripting/source/protocolhandler/scripthandler.cxx580
-rw-r--r--scripting/source/protocolhandler/scripthandler.hxx151
-rw-r--r--scripting/source/provider/ActiveMSPList.cxx324
-rw-r--r--scripting/source/provider/ActiveMSPList.hxx114
-rw-r--r--scripting/source/provider/BrowseNodeFactoryImpl.cxx797
-rw-r--r--scripting/source/provider/BrowseNodeFactoryImpl.hxx88
-rwxr-xr-xscripting/source/provider/MasterScriptProvider.cxx1001
-rw-r--r--scripting/source/provider/MasterScriptProvider.hxx157
-rw-r--r--scripting/source/provider/MasterScriptProviderFactory.cxx153
-rw-r--r--scripting/source/provider/MasterScriptProviderFactory.hxx85
-rw-r--r--scripting/source/provider/ProviderCache.cxx222
-rw-r--r--scripting/source/provider/ProviderCache.hxx108
-rw-r--r--scripting/source/provider/ScriptImpl.cxx122
-rw-r--r--scripting/source/provider/ScriptImpl.hxx113
-rwxr-xr-xscripting/source/provider/ScriptingContext.cxx116
-rw-r--r--scripting/source/provider/ScriptingContext.hxx91
-rw-r--r--scripting/source/provider/URIHelper.cxx322
-rw-r--r--scripting/source/provider/URIHelper.hxx108
-rw-r--r--scripting/source/provider/exports.dxp2
-rw-r--r--scripting/source/provider/makefile.mk53
-rwxr-xr-xscripting/source/provider/provider.xml34
-rw-r--r--scripting/source/pyprov/mailmerge.component37
-rw-r--r--scripting/source/pyprov/mailmerge.py440
-rw-r--r--scripting/source/pyprov/makefile.mk63
-rw-r--r--scripting/source/pyprov/officehelper.py93
-rw-r--r--scripting/source/pyprov/pythonscript.component35
-rw-r--r--scripting/source/pyprov/pythonscript.py984
-rw-r--r--scripting/source/runtimemgr/ScriptExecDialog.hrc28
-rw-r--r--scripting/source/runtimemgr/ScriptExecDialog.src36
-rw-r--r--scripting/source/runtimemgr/ScriptNameResolverImpl.cxx660
-rw-r--r--scripting/source/runtimemgr/ScriptNameResolverImpl.hxx110
-rwxr-xr-xscripting/source/runtimemgr/ScriptRuntimeManager.cxx504
-rw-r--r--scripting/source/runtimemgr/ScriptRuntimeManager.hxx149
-rw-r--r--scripting/source/runtimemgr/StorageBridge.cxx152
-rw-r--r--scripting/source/runtimemgr/StorageBridge.hxx85
-rw-r--r--scripting/source/runtimemgr/StorageBridgeFactory.cxx69
-rw-r--r--scripting/source/runtimemgr/StorageBridgeFactory.hxx58
-rw-r--r--scripting/source/runtimemgr/exports.dxp2
-rw-r--r--scripting/source/runtimemgr/makefile.mk48
-rwxr-xr-xscripting/source/runtimemgr/runtimemgr.xml47
-rw-r--r--scripting/source/storage/ScriptData.hxx91
-rw-r--r--scripting/source/storage/ScriptElement.cxx161
-rw-r--r--scripting/source/storage/ScriptElement.hxx61
-rw-r--r--scripting/source/storage/ScriptInfo.cxx373
-rw-r--r--scripting/source/storage/ScriptInfo.hxx75
-rw-r--r--scripting/source/storage/ScriptInfoImpl.hxx93
-rw-r--r--scripting/source/storage/ScriptMetadataImporter.cxx532
-rw-r--r--scripting/source/storage/ScriptMetadataImporter.hxx251
-rwxr-xr-xscripting/source/storage/ScriptSecurityManager.cxx605
-rwxr-xr-xscripting/source/storage/ScriptSecurityManager.hxx99
-rw-r--r--scripting/source/storage/ScriptStorage.cxx895
-rw-r--r--scripting/source/storage/ScriptStorage.hxx205
-rw-r--r--scripting/source/storage/ScriptStorageManager.cxx573
-rw-r--r--scripting/source/storage/ScriptStorageManager.hxx225
-rw-r--r--scripting/source/storage/ScriptURI.cxx227
-rw-r--r--scripting/source/storage/ScriptURI.hxx120
-rw-r--r--scripting/source/storage/XMLElement.cxx169
-rw-r--r--scripting/source/storage/XMLElement.hxx140
-rw-r--r--scripting/source/storage/exports.dxp2
-rw-r--r--scripting/source/storage/makefile.mk53
-rw-r--r--scripting/source/storage/storage.xml47
-rw-r--r--scripting/source/stringresource/makefile.mk70
-rw-r--r--scripting/source/stringresource/stringresource.component40
-rw-r--r--scripting/source/stringresource/stringresource.cxx3090
-rw-r--r--scripting/source/stringresource/stringresource.hxx691
-rw-r--r--scripting/source/stringresource/stringresource.xml36
-rw-r--r--scripting/source/vbaevents/eventhelper.cxx1045
-rwxr-xr-xscripting/source/vbaevents/makefile.mk101
-rwxr-xr-xscripting/source/vbaevents/service.cxx121
-rw-r--r--scripting/source/vbaevents/vbaevents.component37
-rwxr-xr-xscripting/source/vbaevents/vbaevents.xml26
-rwxr-xr-xscripting/util/ant.pmk55
-rw-r--r--scripting/util/exports.dxp2
-rw-r--r--scripting/util/makefile.mk75
-rwxr-xr-xscripting/util/makefile.pmk43
-rw-r--r--scripting/util/scriptframe.component49
-rwxr-xr-xscripting/util/target.pmk28
-rw-r--r--scripting/workben/bindings/EditDebug.xdl36
-rw-r--r--scripting/workben/bindings/EventsBinding.xdl61
-rw-r--r--scripting/workben/bindings/HelpBinding.xdl30
-rw-r--r--scripting/workben/bindings/Highlight.xdl14
-rw-r--r--scripting/workben/bindings/KeyBinding.xdl59
-rw-r--r--scripting/workben/bindings/MacroEditor.xdl10
-rw-r--r--scripting/workben/bindings/MenuBinding.xdl65
-rw-r--r--scripting/workben/bindings/ScriptBinding.xba2093
-rw-r--r--scripting/workben/bindings/calckeybinding.xml94
-rw-r--r--scripting/workben/bindings/calcmenubar.xml319
-rw-r--r--scripting/workben/bindings/dialog.xlb6
-rw-r--r--scripting/workben/bindings/drawkeybinding.xml58
-rw-r--r--scripting/workben/bindings/drawmenubar.xml354
-rw-r--r--scripting/workben/bindings/eventbindings.xml4
-rw-r--r--scripting/workben/bindings/impresskeybinding.xml62
-rw-r--r--scripting/workben/bindings/impressmenubar.xml328
-rw-r--r--scripting/workben/bindings/manifest.xml14
-rw-r--r--scripting/workben/bindings/script.xlb4
-rw-r--r--scripting/workben/bindings/writerkeybinding.xml101
-rw-r--r--scripting/workben/bindings/writermenubar.xml281
-rwxr-xr-xscripting/workben/build.xml397
-rw-r--r--scripting/workben/data/ExampleSpreadSheetLatest.sxcbin0 -> 14635 bytes-rw-r--r--scripting/workben/data/doc_with_beanshell_scripts.sxwbin0 -> 7044 bytes-rw-r--r--scripting/workben/data/doc_with_one_script.sxwbin0 -> 6286 bytes-rw-r--r--scripting/workben/data/doc_with_two_scripts.sxwbin0 -> 6308 bytes-rw-r--r--scripting/workben/data/objdsc/drafts.com.sun.star.script.framework.protocolhandler.Dispatch.csv5
-rw-r--r--scripting/workben/data/objdsc/drafts.com.sun.star.script.framework.provider.Function.csv1
-rw-r--r--scripting/workben/data/objdsc/drafts.com.sun.star.script.framework.provider.FunctionProvider.csv1
-rwxr-xr-xscripting/workben/data/objdsc/drafts.com.sun.star.script.framework.runtime.ScriptRuntimeManager.csv2
-rw-r--r--scripting/workben/data/objdsc/drafts.com.sun.star.script.framework.storage.ScriptInfo.csv8
-rw-r--r--scripting/workben/data/objdsc/drafts.com.sun.star.script.framework.storage.ScriptStorage.csv4
-rw-r--r--scripting/workben/data/objdsc/drafts.com.sun.star.script.framework.storage.ScriptStorageManager.csv6
-rw-r--r--scripting/workben/data/script_in_class_file.sxwbin0 -> 6976 bytes-rw-r--r--scripting/workben/data/script_in_jar_file.sxwbin0 -> 8081 bytes-rw-r--r--scripting/workben/data/share_scripts.zipbin0 -> 2248 bytes-rw-r--r--scripting/workben/data/testdata/Function.csv4
-rw-r--r--scripting/workben/data/testdata/FunctionProvider.csv1
-rw-r--r--scripting/workben/data/testdata/ScriptInfo.csv8
-rw-r--r--scripting/workben/data/testdata/ScriptRuntimeManager.csv8
-rw-r--r--scripting/workben/data/testdata/ScriptStorage.csv4
-rw-r--r--scripting/workben/data/testdata/ScriptStorageManager.csv18
-rw-r--r--scripting/workben/data/user_scripts.zipbin0 -> 6890 bytes-rw-r--r--scripting/workben/data/xscriptcontext_test_document.sxwbin0 -> 6580 bytes-rw-r--r--scripting/workben/ifc/scripting/ScriptingUtils.java124
-rw-r--r--scripting/workben/ifc/scripting/SecurityDialogUtil.java176
-rw-r--r--scripting/workben/ifc/scripting/_XFunction.java169
-rw-r--r--scripting/workben/ifc/scripting/_XFunctionProvider.java101
-rw-r--r--scripting/workben/ifc/scripting/_XScriptInfo.java331
-rw-r--r--scripting/workben/ifc/scripting/_XScriptInfoAccess.java228
-rw-r--r--scripting/workben/ifc/scripting/_XScriptInvocation.java232
-rw-r--r--scripting/workben/ifc/scripting/_XScriptNameResolver.java186
-rw-r--r--scripting/workben/ifc/scripting/_XScriptSecurity.java409
-rw-r--r--scripting/workben/ifc/scripting/_XScriptStorageManager.java267
-rw-r--r--scripting/workben/ifc/scripting/_XScriptStorageRefresh.java90
-rw-r--r--scripting/workben/ifc/scripting/makefile.mk40
-rw-r--r--scripting/workben/installer/Banner.java30
-rw-r--r--scripting/workben/installer/ExceptionTraceHelper.java64
-rw-r--r--scripting/workben/installer/ExecCmd.java100
-rw-r--r--scripting/workben/installer/FileUpdater.java232
-rw-r--r--scripting/workben/installer/Final.java136
-rw-r--r--scripting/workben/installer/IdeFinal.java125
-rw-r--r--scripting/workben/installer/IdeUpdater.java172
-rw-r--r--scripting/workben/installer/IdeVersion.java349
-rw-r--r--scripting/workben/installer/IdeWelcome.java79
-rw-r--r--scripting/workben/installer/InstUtil.java463
-rw-r--r--scripting/workben/installer/InstallListener.java6
-rw-r--r--scripting/workben/installer/InstallWizard.java389
-rw-r--r--scripting/workben/installer/InstallationEvent.java22
-rw-r--r--scripting/workben/installer/LogStream.java54
-rw-r--r--scripting/workben/installer/NavPanel.java113
-rw-r--r--scripting/workben/installer/Navigation.java58
-rw-r--r--scripting/workben/installer/ProtocolHandler.xcu10
-rw-r--r--scripting/workben/installer/Register.java144
-rw-r--r--scripting/workben/installer/Scripting.BeanShell.xcu11
-rwxr-xr-xscripting/workben/installer/Scripting.JavaScript.xcu11
-rw-r--r--scripting/workben/installer/Scripting.xcs57
-rw-r--r--scripting/workben/installer/Version.java339
-rw-r--r--scripting/workben/installer/Welcome.java156
-rw-r--r--scripting/workben/installer/XmlUpdater.java427
-rw-r--r--scripting/workben/installer/ZipData.java103
-rw-r--r--scripting/workben/installer/sidebar.jpgbin0 -> 8393 bytes-rwxr-xr-xscripting/workben/makefile.mk35
-rw-r--r--scripting/workben/mod/_scripting/Dispatch.java108
-rw-r--r--scripting/workben/mod/_scripting/Function.java95
-rw-r--r--scripting/workben/mod/_scripting/FunctionProvider.java82
-rw-r--r--scripting/workben/mod/_scripting/ScriptInfo.java108
-rw-r--r--scripting/workben/mod/_scripting/ScriptRuntimeManager.java65
-rw-r--r--scripting/workben/mod/_scripting/ScriptStorage.java103
-rw-r--r--scripting/workben/mod/_scripting/ScriptStorageManager.java82
-rw-r--r--scripting/workben/mod/_scripting/TestDataLoader.java123
-rw-r--r--scripting/workben/mod/_scripting/makefile.mk40
-rw-r--r--sd/inc/CustomAnimationCloner.hxx42
-rw-r--r--sd/inc/CustomAnimationEffect.hxx476
-rw-r--r--sd/inc/CustomAnimationPreset.hxx155
-rw-r--r--sd/inc/EffectMigration.hxx83
-rwxr-xr-xsd/inc/FactoryIds.hxx51
-rwxr-xr-xsd/inc/Outliner.hxx553
-rwxr-xr-xsd/inc/OutlinerIterator.hxx370
-rw-r--r--sd/inc/SdShapeTypes.hxx83
-rw-r--r--sd/inc/TransitionPreset.hxx95
-rw-r--r--sd/inc/animations.hxx30
-rw-r--r--sd/inc/anmdef.hxx41
-rw-r--r--sd/inc/anminfo.hxx89
-rwxr-xr-xsd/inc/app.hrc510
-rw-r--r--sd/inc/app.hxx29
-rwxr-xr-xsd/inc/cusshow.hxx79
-rw-r--r--sd/inc/diadef.h42
-rwxr-xr-xsd/inc/drawdoc.hxx702
-rw-r--r--sd/inc/eetext.hxx34
-rw-r--r--sd/inc/fadedef.h44
-rwxr-xr-xsd/inc/glob.hrc160
-rwxr-xr-xsd/inc/glob.hxx99
-rw-r--r--sd/inc/helper/simplereferencecomponent.hxx115
-rwxr-xr-xsd/inc/helpids.h251
-rw-r--r--sd/inc/imapinfo.hxx71
-rw-r--r--sd/inc/makefile.mk48
-rw-r--r--sd/inc/misc.hxx36
-rw-r--r--sd/inc/misc/scopelock.hxx58
-rw-r--r--sd/inc/movedef.hxx42
-rw-r--r--sd/inc/pch/precompiled_sd.cxx29
-rw-r--r--sd/inc/pch/precompiled_sd.hxx916
-rw-r--r--sd/inc/pglink.hxx63
-rwxr-xr-xsd/inc/pres.hxx141
-rw-r--r--sd/inc/prlayout.hxx56
-rw-r--r--sd/inc/resltn.hxx52
-rw-r--r--sd/inc/sd_primitivetypes2d.hxx49
-rwxr-xr-xsd/inc/sdabstdlg.hxx225
-rw-r--r--sd/inc/sdattr.hrc245
-rw-r--r--sd/inc/sdattr.hxx175
-rw-r--r--sd/inc/sdcgmfilter.hxx50
-rw-r--r--sd/inc/sdcommands.h310
-rw-r--r--sd/inc/sddll.hxx79
-rw-r--r--sd/inc/sddllapi.h40
-rw-r--r--sd/inc/sdenumdef.hxx38
-rw-r--r--sd/inc/sderror.hxx65
-rw-r--r--sd/inc/sdfilter.hxx79
-rw-r--r--sd/inc/sdgrffilter.hxx56
-rw-r--r--sd/inc/sdhtmlfilter.hxx54
-rw-r--r--sd/inc/sdiocmpt.hxx76
-rwxr-xr-xsd/inc/sdmod.hxx216
-rw-r--r--sd/inc/sdobjfac.hxx59
-rwxr-xr-xsd/inc/sdpage.hxx413
-rw-r--r--sd/inc/sdpptwrp.hxx56
-rw-r--r--sd/inc/sdresid.hxx42
-rw-r--r--sd/inc/sduiks.hrc73
-rw-r--r--sd/inc/sdundo.hxx53
-rw-r--r--sd/inc/sdxmlwrp.hxx63
-rwxr-xr-xsd/inc/shapelist.hxx86
-rw-r--r--sd/inc/stlfamily.hxx126
-rwxr-xr-xsd/inc/stlpool.hxx151
-rw-r--r--sd/inc/stlsheet.hxx161
-rw-r--r--sd/inc/strmname.h50
-rwxr-xr-xsd/inc/textapi.hxx69
-rw-r--r--sd/inc/undo/undofactory.hxx50
-rw-r--r--sd/inc/undo/undomanager.hxx81
-rw-r--r--sd/inc/undo/undoobjects.hxx202
-rw-r--r--sd/inc/undoanim.hxx95
-rw-r--r--sd/prj/build.lst48
-rwxr-xr-xsd/prj/d.lst59
-rw-r--r--sd/prj/struct.txt54
-rw-r--r--sd/qa/unoapi/Test.java51
-rwxr-xr-xsd/qa/unoapi/knownissues.xcl63
-rw-r--r--sd/qa/unoapi/makefile.mk48
-rwxr-xr-xsd/qa/unoapi/sd.sce23
-rw-r--r--sd/res/buttons/glas-blue.zipbin0 -> 22010 bytes-rw-r--r--sd/res/buttons/glas-green.zipbin0 -> 25032 bytes-rw-r--r--sd/res/buttons/glas-red.zipbin0 -> 24325 bytes-rw-r--r--sd/res/buttons/round-gorilla.zipbin0 -> 19208 bytes-rw-r--r--sd/res/buttons/round-white.zipbin0 -> 10533 bytes-rw-r--r--sd/res/buttons/simple.zipbin0 -> 4046 bytes-rw-r--r--sd/res/buttons/square-blue.zipbin0 -> 15123 bytes-rw-r--r--sd/res/buttons/square-gray.zipbin0 -> 8919 bytes-rw-r--r--sd/res/buttons/square-green.zipbin0 -> 15750 bytes-rw-r--r--sd/res/buttons/square-red.zipbin0 -> 15319 bytes-rw-r--r--sd/res/buttons/square-yellow.zipbin0 -> 15185 bytes-rw-r--r--sd/res/webview/common.inc110
-rw-r--r--sd/res/webview/common.pl48
-rw-r--r--sd/res/webview/edit.asp9
-rw-r--r--sd/res/webview/edit.pl18
-rw-r--r--sd/res/webview/editpic.asp58
-rw-r--r--sd/res/webview/editpic.pl40
-rw-r--r--sd/res/webview/index.pl17
-rw-r--r--sd/res/webview/poll.asp36
-rw-r--r--sd/res/webview/poll.pl32
-rw-r--r--sd/res/webview/savepic.asp39
-rw-r--r--sd/res/webview/savepic.pl41
-rw-r--r--sd/res/webview/show.asp42
-rw-r--r--sd/res/webview/show.pl39
-rw-r--r--sd/res/webview/webview.asp28
-rw-r--r--sd/res/webview/webview.pl21
-rwxr-xr-xsd/sdi/SlideSorterController.sdi317
-rw-r--r--sd/sdi/ToolPanelViewShell.sdi130
-rwxr-xr-xsd/sdi/ViewShellBase.sdi144
-rw-r--r--sd/sdi/_docsh.sdi84
-rwxr-xr-xsd/sdi/_drvwsh.sdi2516
-rw-r--r--sd/sdi/app.sdi84
-rw-r--r--sd/sdi/docshell.sdi38
-rw-r--r--sd/sdi/drbezob.sdi64
-rw-r--r--sd/sdi/drgrfob.sdi121
-rwxr-xr-xsd/sdi/drtxtob.sdi212
-rw-r--r--sd/sdi/drviewsh.sdi237
-rw-r--r--sd/sdi/grdocsh.sdi38
-rw-r--r--sd/sdi/grviewsh.sdi90
-rwxr-xr-xsd/sdi/makefile.mk97
-rw-r--r--sd/sdi/mediaob.sdi8
-rwxr-xr-xsd/sdi/outlnvsh.sdi532
-rw-r--r--sd/sdi/sdgslots.sdi105
-rw-r--r--sd/sdi/sdnew.sdi77
-rwxr-xr-xsd/sdi/sdraw.sdi7349
-rw-r--r--sd/sdi/sdslots.hrc33
-rwxr-xr-xsd/sdi/sdslots.sdi108
-rw-r--r--sd/sdi/tables.sdi153
-rw-r--r--sd/source/core/CustomAnimationCloner.cxx350
-rwxr-xr-xsd/source/core/CustomAnimationEffect.cxx3834
-rw-r--r--sd/source/core/CustomAnimationPreset.cxx672
-rw-r--r--sd/source/core/EffectMigration.cxx1344
-rw-r--r--sd/source/core/PageListWatcher.cxx223
-rw-r--r--sd/source/core/PageListWatcher.hxx99
-rw-r--r--sd/source/core/TransitionPreset.cxx258
-rw-r--r--sd/source/core/anminfo.cxx152
-rw-r--r--sd/source/core/annotations/Annotation.cxx445
-rw-r--r--sd/source/core/annotations/AnnotationAccess.cxx59
-rw-r--r--sd/source/core/annotations/AnnotationEnumeration.cxx93
-rw-r--r--sd/source/core/annotations/makefile.mk49
-rwxr-xr-xsd/source/core/cusshow.cxx136
-rw-r--r--sd/source/core/drawdoc.cxx1077
-rwxr-xr-xsd/source/core/drawdoc2.cxx1631
-rwxr-xr-xsd/source/core/drawdoc3.cxx2073
-rwxr-xr-xsd/source/core/drawdoc4.cxx1509
-rw-r--r--sd/source/core/drawdoc_animations.cxx64
-rwxr-xr-xsd/source/core/glob.src426
-rw-r--r--sd/source/core/makefile.mk78
-rw-r--r--sd/source/core/pglink.cxx147
-rw-r--r--sd/source/core/sdattr.cxx154
-rw-r--r--sd/source/core/sdiocmpt.cxx136
-rw-r--r--sd/source/core/sdobjfac.cxx79
-rwxr-xr-xsd/source/core/sdpage.cxx3151
-rw-r--r--sd/source/core/sdpage2.cxx648
-rw-r--r--sd/source/core/sdpage_animations.cxx163
-rwxr-xr-xsd/source/core/shapelist.cxx175
-rw-r--r--sd/source/core/stlfamily.cxx603
-rwxr-xr-xsd/source/core/stlpool.cxx1442
-rwxr-xr-xsd/source/core/stlsheet.cxx1443
-rw-r--r--sd/source/core/text/makefile.mk48
-rwxr-xr-xsd/source/core/text/textapi.cxx296
-rw-r--r--sd/source/core/typemap.cxx136
-rw-r--r--sd/source/core/undo/makefile.mk50
-rw-r--r--sd/source/core/undo/undofactory.cxx65
-rw-r--r--sd/source/core/undo/undomanager.cxx109
-rw-r--r--sd/source/core/undo/undoobjects.cxx447
-rw-r--r--sd/source/core/undoanim.cxx296
-rw-r--r--sd/source/filter/cgm/makefile.mk43
-rw-r--r--sd/source/filter/cgm/sdcgmfilter.cxx159
-rwxr-xr-xsd/source/filter/eppt/eppt.cxx2507
-rwxr-xr-xsd/source/filter/eppt/eppt.hxx848
-rw-r--r--sd/source/filter/eppt/epptdef.hxx263
-rwxr-xr-xsd/source/filter/eppt/epptso.cxx5835
-rw-r--r--sd/source/filter/eppt/escherex.cxx294
-rw-r--r--sd/source/filter/eppt/escherex.hxx77
-rw-r--r--sd/source/filter/eppt/makefile.mk52
-rw-r--r--sd/source/filter/eppt/pptexanimations.cxx2191
-rw-r--r--sd/source/filter/eppt/pptexanimations.hxx137
-rw-r--r--sd/source/filter/eppt/pptexsoundcollection.cxx229
-rw-r--r--sd/source/filter/eppt/pptexsoundcollection.hxx83
-rw-r--r--sd/source/filter/grf/makefile.mk44
-rw-r--r--sd/source/filter/grf/sdgrffilter.cxx558
-rw-r--r--sd/source/filter/html/HtmlOptionsDialog.cxx287
-rw-r--r--sd/source/filter/html/buttonset.cxx309
-rw-r--r--sd/source/filter/html/buttonset.hxx53
-rwxr-xr-xsd/source/filter/html/htmlattr.cxx102
-rwxr-xr-xsd/source/filter/html/htmlattr.hxx51
-rwxr-xr-xsd/source/filter/html/htmlex.cxx3392
-rwxr-xr-xsd/source/filter/html/htmlex.hxx239
-rw-r--r--sd/source/filter/html/makefile.mk68
-rwxr-xr-xsd/source/filter/html/pubdlg.cxx1756
-rw-r--r--sd/source/filter/html/pubdlg.src864
-rw-r--r--sd/source/filter/html/sdhtmlfilter.cxx86
-rw-r--r--sd/source/filter/makefile.mk55
-rw-r--r--sd/source/filter/ppt/makefile.mk57
-rwxr-xr-xsd/source/filter/ppt/ppt97animations.cxx799
-rwxr-xr-xsd/source/filter/ppt/ppt97animations.hxx159
-rw-r--r--sd/source/filter/ppt/pptanimations.hxx559
-rwxr-xr-xsd/source/filter/ppt/pptatom.cpp119
-rwxr-xr-xsd/source/filter/ppt/pptatom.hxx141
-rwxr-xr-xsd/source/filter/ppt/pptin.cxx2762
-rw-r--r--sd/source/filter/ppt/pptin.hxx105
-rwxr-xr-xsd/source/filter/ppt/pptinanimations.cxx3890
-rwxr-xr-xsd/source/filter/ppt/pptinanimations.hxx131
-rwxr-xr-xsd/source/filter/ppt/propread.cxx733
-rwxr-xr-xsd/source/filter/ppt/propread.hxx191
-rw-r--r--sd/source/filter/sdfilter.cxx133
-rw-r--r--sd/source/filter/sdpptwrp.cxx199
-rw-r--r--sd/source/filter/xml/makefile.mk47
-rw-r--r--sd/source/filter/xml/sdtransform.cxx376
-rw-r--r--sd/source/filter/xml/sdxmlwrp.cxx1113
-rw-r--r--sd/source/helper/makefile.mk47
-rw-r--r--sd/source/helper/simplereferencecomponent.cxx140
-rw-r--r--sd/source/ui/accessibility/AccessibleDocumentViewBase.cxx842
-rw-r--r--sd/source/ui/accessibility/AccessibleDrawDocumentView.cxx742
-rwxr-xr-xsd/source/ui/accessibility/AccessibleOutlineEditSource.cxx225
-rw-r--r--sd/source/ui/accessibility/AccessibleOutlineView.cxx288
-rw-r--r--sd/source/ui/accessibility/AccessiblePageShape.cxx377
-rw-r--r--sd/source/ui/accessibility/AccessiblePresentationGraphicShape.cxx127
-rw-r--r--sd/source/ui/accessibility/AccessiblePresentationOLEShape.cxx148
-rw-r--r--sd/source/ui/accessibility/AccessiblePresentationShape.cxx180
-rw-r--r--sd/source/ui/accessibility/AccessibleScrollPanel.cxx151
-rwxr-xr-xsd/source/ui/accessibility/AccessibleSlideSorterObject.cxx583
-rw-r--r--sd/source/ui/accessibility/AccessibleSlideSorterView.cxx1125
-rwxr-xr-xsd/source/ui/accessibility/AccessibleTreeNode.cxx701
-rwxr-xr-xsd/source/ui/accessibility/AccessibleViewForwarder.cxx172
-rw-r--r--sd/source/ui/accessibility/SdShapeTypes.cxx147
-rw-r--r--sd/source/ui/accessibility/accessibility.hrc53
-rw-r--r--sd/source/ui/accessibility/accessibility.src115
-rwxr-xr-xsd/source/ui/accessibility/makefile.mk71
-rw-r--r--sd/source/ui/animations/CustomAnimation.hrc144
-rw-r--r--sd/source/ui/animations/CustomAnimation.src495
-rwxr-xr-xsd/source/ui/animations/CustomAnimationCreateDialog.cxx713
-rw-r--r--sd/source/ui/animations/CustomAnimationCreateDialog.hrc38
-rw-r--r--sd/source/ui/animations/CustomAnimationCreateDialog.hxx85
-rw-r--r--sd/source/ui/animations/CustomAnimationCreateDialog.src148
-rw-r--r--sd/source/ui/animations/CustomAnimationDialog.cxx2638
-rw-r--r--sd/source/ui/animations/CustomAnimationDialog.hrc89
-rw-r--r--sd/source/ui/animations/CustomAnimationDialog.hxx186
-rw-r--r--sd/source/ui/animations/CustomAnimationDialog.src688
-rw-r--r--sd/source/ui/animations/CustomAnimationList.cxx1018
-rwxr-xr-xsd/source/ui/animations/CustomAnimationList.hxx130
-rw-r--r--sd/source/ui/animations/CustomAnimationPane.cxx2489
-rw-r--r--sd/source/ui/animations/CustomAnimationPane.hrc60
-rw-r--r--sd/source/ui/animations/CustomAnimationPane.hxx190
-rw-r--r--sd/source/ui/animations/CustomAnimationPane.src225
-rw-r--r--sd/source/ui/animations/DialogListBox.cxx340
-rw-r--r--sd/source/ui/animations/STLPropertySet.cxx124
-rw-r--r--sd/source/ui/animations/STLPropertySet.hxx86
-rwxr-xr-xsd/source/ui/animations/SlideTransitionPane.cxx1321
-rw-r--r--sd/source/ui/animations/SlideTransitionPane.hrc68
-rw-r--r--sd/source/ui/animations/SlideTransitionPane.hxx151
-rw-r--r--sd/source/ui/animations/SlideTransitionPane.src220
-rwxr-xr-xsd/source/ui/animations/makefile.mk65
-rw-r--r--sd/source/ui/animations/motionpathtag.cxx1327
-rw-r--r--sd/source/ui/animations/motionpathtag.hxx133
-rwxr-xr-xsd/source/ui/annotations/annotationmanager.cxx1273
-rwxr-xr-xsd/source/ui/annotations/annotationmanagerimpl.hxx144
-rw-r--r--sd/source/ui/annotations/annotations.hrc65
-rw-r--r--sd/source/ui/annotations/annotations.src210
-rw-r--r--sd/source/ui/annotations/annotationtag.cxx790
-rw-r--r--sd/source/ui/annotations/annotationtag.hxx107
-rwxr-xr-xsd/source/ui/annotations/annotationwindow.cxx848
-rwxr-xr-xsd/source/ui/annotations/annotationwindow.hxx175
-rw-r--r--sd/source/ui/annotations/makefile.mk56
-rw-r--r--sd/source/ui/app/_app.hrc42
-rw-r--r--sd/source/ui/app/accel_tmpl.src117
-rw-r--r--sd/source/ui/app/accelids_tmpl.src54
-rw-r--r--sd/source/ui/app/app.img120
-rw-r--r--sd/source/ui/app/app.src35
-rwxr-xr-xsd/source/ui/app/makefile.mk112
-rw-r--r--sd/source/ui/app/menu_tmpl.src40
-rwxr-xr-xsd/source/ui/app/menuids2_tmpl.src987
-rw-r--r--sd/source/ui/app/menuids3_tmpl.src246
-rw-r--r--sd/source/ui/app/menuids4_tmpl.src79
-rw-r--r--sd/source/ui/app/menuids_tmpl.src1307
-rw-r--r--sd/source/ui/app/menuportal_tmpl.src387
-rwxr-xr-xsd/source/ui/app/optsitem.cxx1588
-rw-r--r--sd/source/ui/app/popup.src554
-rw-r--r--sd/source/ui/app/popup2_tmpl.src872
-rwxr-xr-xsd/source/ui/app/res_bmp.src495
-rw-r--r--sd/source/ui/app/sddll.cxx151
-rwxr-xr-xsd/source/ui/app/sddll1.cxx134
-rwxr-xr-xsd/source/ui/app/sddll2.cxx212
-rwxr-xr-xsd/source/ui/app/sdmod.cxx287
-rwxr-xr-xsd/source/ui/app/sdmod1.cxx1065
-rwxr-xr-xsd/source/ui/app/sdmod2.cxx835
-rw-r--r--sd/source/ui/app/sdpopup.cxx338
-rw-r--r--sd/source/ui/app/sdresid.cxx46
-rw-r--r--sd/source/ui/app/sdstring.src52
-rw-r--r--sd/source/ui/app/sdxfer.cxx881
-rw-r--r--sd/source/ui/app/strings.src1264
-rw-r--r--sd/source/ui/app/tbxids_tmpl.src536
-rw-r--r--sd/source/ui/app/tbxww.cxx472
-rw-r--r--sd/source/ui/app/tmplctrl.cxx160
-rw-r--r--sd/source/ui/app/toolbox.src51
-rw-r--r--sd/source/ui/app/toolbox2_tmpl.src885
-rwxr-xr-xsd/source/ui/controller/makefile.mk54
-rw-r--r--sd/source/ui/controller/slidelayoutcontroller.cxx419
-rw-r--r--sd/source/ui/controller/slidelayoutcontroller.hxx54
-rw-r--r--sd/source/ui/dlg/AnimationChildWindow.cxx81
-rw-r--r--sd/source/ui/dlg/LayerDialog.src59
-rw-r--r--sd/source/ui/dlg/LayerDialogChildWindow.cxx84
-rwxr-xr-xsd/source/ui/dlg/LayerDialogContent.cxx106
-rw-r--r--sd/source/ui/dlg/LayerTabBar.cxx383
-rw-r--r--sd/source/ui/dlg/NavigatorChildWindow.cxx54
-rwxr-xr-xsd/source/ui/dlg/PaneChildWindows.cxx234
-rw-r--r--sd/source/ui/dlg/PaneDockingWindow.cxx147
-rw-r--r--sd/source/ui/dlg/PaneDockingWindow.src76
-rwxr-xr-xsd/source/ui/dlg/PaneShells.cxx139
-rwxr-xr-xsd/source/ui/dlg/SpellDialogChildWindow.cxx213
-rw-r--r--sd/source/ui/dlg/TemplateScanner.cxx493
-rwxr-xr-xsd/source/ui/dlg/animobjs.cxx1312
-rw-r--r--sd/source/ui/dlg/animobjs.src374
-rw-r--r--sd/source/ui/dlg/assclass.cxx220
-rw-r--r--sd/source/ui/dlg/brkdlg.cxx187
-rw-r--r--sd/source/ui/dlg/brkdlg.src97
-rw-r--r--sd/source/ui/dlg/celltempl.cxx120
-rw-r--r--sd/source/ui/dlg/celltempl.src78
-rw-r--r--sd/source/ui/dlg/copydlg.cxx357
-rw-r--r--sd/source/ui/dlg/copydlg.src320
-rwxr-xr-xsd/source/ui/dlg/custsdlg.cxx560
-rw-r--r--sd/source/ui/dlg/custsdlg.src201
-rw-r--r--sd/source/ui/dlg/diactrl.cxx179
-rw-r--r--sd/source/ui/dlg/dlg_char.src129
-rwxr-xr-xsd/source/ui/dlg/dlgass.cxx2043
-rw-r--r--sd/source/ui/dlg/dlgass.src595
-rwxr-xr-xsd/source/ui/dlg/dlgassim.cxx209
-rwxr-xr-xsd/source/ui/dlg/dlgassim.hxx70
-rw-r--r--sd/source/ui/dlg/dlgchar.cxx93
-rwxr-xr-xsd/source/ui/dlg/dlgctrls.cxx122
-rw-r--r--sd/source/ui/dlg/dlgfield.cxx366
-rw-r--r--sd/source/ui/dlg/dlgfield.src132
-rw-r--r--sd/source/ui/dlg/dlgolbul.cxx242
-rw-r--r--sd/source/ui/dlg/dlgolbul.src70
-rw-r--r--sd/source/ui/dlg/dlgpage.cxx118
-rw-r--r--sd/source/ui/dlg/dlgpage.src119
-rwxr-xr-xsd/source/ui/dlg/dlgsnap.cxx235
-rw-r--r--sd/source/ui/dlg/dlgsnap.src214
-rwxr-xr-xsd/source/ui/dlg/docprev.cxx305
-rwxr-xr-xsd/source/ui/dlg/filedlg.cxx368
-rw-r--r--sd/source/ui/dlg/gluectrl.cxx236
-rwxr-xr-xsd/source/ui/dlg/headerfooterdlg.cxx942
-rw-r--r--sd/source/ui/dlg/headerfooterdlg.src317
-rw-r--r--sd/source/ui/dlg/ins_paste.cxx66
-rw-r--r--sd/source/ui/dlg/ins_paste.src101
-rwxr-xr-xsd/source/ui/dlg/inspagob.cxx188
-rw-r--r--sd/source/ui/dlg/inspagob.src119
-rw-r--r--sd/source/ui/dlg/layeroptionsdlg.cxx85
-rw-r--r--sd/source/ui/dlg/layeroptionsdlg.src190
-rwxr-xr-xsd/source/ui/dlg/makefile.mk193
-rw-r--r--sd/source/ui/dlg/masterlayoutdlg.cxx179
-rw-r--r--sd/source/ui/dlg/masterlayoutdlg.src115
-rw-r--r--sd/source/ui/dlg/morphdlg.cxx166
-rw-r--r--sd/source/ui/dlg/morphdlg.src143
-rw-r--r--sd/source/ui/dlg/navigatr.cxx1008
-rw-r--r--sd/source/ui/dlg/navigatr.src161
-rw-r--r--sd/source/ui/dlg/paragr.cxx192
-rw-r--r--sd/source/ui/dlg/paragr.src177
-rw-r--r--sd/source/ui/dlg/present.cxx319
-rw-r--r--sd/source/ui/dlg/present.src294
-rw-r--r--sd/source/ui/dlg/prltempl.cxx357
-rw-r--r--sd/source/ui/dlg/prltempl.src195
-rwxr-xr-xsd/source/ui/dlg/prntopts.cxx311
-rw-r--r--sd/source/ui/dlg/prntopts.src250
-rw-r--r--sd/source/ui/dlg/sdabstdlg.cxx53
-rwxr-xr-xsd/source/ui/dlg/sddlgfact.cxx564
-rwxr-xr-xsd/source/ui/dlg/sddlgfact.hxx300
-rw-r--r--sd/source/ui/dlg/sdpreslt.cxx357
-rw-r--r--sd/source/ui/dlg/sdpreslt.src129
-rwxr-xr-xsd/source/ui/dlg/sdtreelb.cxx1460
-rw-r--r--sd/source/ui/dlg/sduiexp.cxx55
-rw-r--r--sd/source/ui/dlg/tabtempl.cxx223
-rw-r--r--sd/source/ui/dlg/tabtempl.src193
-rwxr-xr-xsd/source/ui/dlg/tpaction.cxx925
-rw-r--r--sd/source/ui/dlg/tpaction.src205
-rw-r--r--sd/source/ui/dlg/tpoption.cxx858
-rw-r--r--sd/source/ui/dlg/tpoption.src379
-rw-r--r--sd/source/ui/dlg/unchss.cxx178
-rw-r--r--sd/source/ui/dlg/vectdlg.cxx400
-rw-r--r--sd/source/ui/dlg/vectdlg.src251
-rw-r--r--sd/source/ui/docshell/docshel2.cxx509
-rw-r--r--sd/source/ui/docshell/docshel3.cxx259
-rwxr-xr-xsd/source/ui/docshell/docshel4.cxx1029
-rwxr-xr-xsd/source/ui/docshell/docshell.cxx608
-rw-r--r--sd/source/ui/docshell/grdocsh.cxx90
-rw-r--r--sd/source/ui/docshell/makefile.mk56
-rw-r--r--sd/source/ui/docshell/sdclient.cxx233
-rw-r--r--sd/source/ui/framework/configuration/ChangeRequestQueue.cxx38
-rw-r--r--sd/source/ui/framework/configuration/ChangeRequestQueue.hxx55
-rwxr-xr-xsd/source/ui/framework/configuration/ChangeRequestQueueProcessor.cxx237
-rw-r--r--sd/source/ui/framework/configuration/ChangeRequestQueueProcessor.hxx136
-rw-r--r--sd/source/ui/framework/configuration/Configuration.cxx420
-rwxr-xr-xsd/source/ui/framework/configuration/ConfigurationClassifier.cxx238
-rw-r--r--sd/source/ui/framework/configuration/ConfigurationClassifier.hxx183
-rwxr-xr-xsd/source/ui/framework/configuration/ConfigurationController.cxx726
-rwxr-xr-xsd/source/ui/framework/configuration/ConfigurationControllerBroadcaster.cxx231
-rw-r--r--sd/source/ui/framework/configuration/ConfigurationControllerBroadcaster.hxx151
-rwxr-xr-xsd/source/ui/framework/configuration/ConfigurationControllerResourceManager.cxx352
-rw-r--r--sd/source/ui/framework/configuration/ConfigurationControllerResourceManager.hxx145
-rwxr-xr-xsd/source/ui/framework/configuration/ConfigurationTracer.cxx83
-rwxr-xr-xsd/source/ui/framework/configuration/ConfigurationTracer.hxx57
-rwxr-xr-xsd/source/ui/framework/configuration/ConfigurationUpdater.cxx468
-rwxr-xr-xsd/source/ui/framework/configuration/ConfigurationUpdater.hxx215
-rw-r--r--sd/source/ui/framework/configuration/GenericConfigurationChangeRequest.cxx104
-rw-r--r--sd/source/ui/framework/configuration/GenericConfigurationChangeRequest.hxx123
-rw-r--r--sd/source/ui/framework/configuration/ResourceFactoryManager.cxx230
-rw-r--r--sd/source/ui/framework/configuration/ResourceFactoryManager.hxx128
-rwxr-xr-xsd/source/ui/framework/configuration/ResourceId.cxx626
-rw-r--r--sd/source/ui/framework/configuration/UpdateRequest.cxx86
-rw-r--r--sd/source/ui/framework/configuration/UpdateRequest.hxx93
-rw-r--r--sd/source/ui/framework/configuration/makefile.mk63
-rwxr-xr-xsd/source/ui/framework/factories/BasicPaneFactory.cxx568
-rwxr-xr-xsd/source/ui/framework/factories/BasicPaneFactory.hxx168
-rwxr-xr-xsd/source/ui/framework/factories/BasicToolBarFactory.cxx245
-rwxr-xr-xsd/source/ui/framework/factories/BasicToolBarFactory.hxx118
-rwxr-xr-xsd/source/ui/framework/factories/BasicViewFactory.cxx616
-rwxr-xr-xsd/source/ui/framework/factories/BasicViewFactory.hxx158
-rwxr-xr-xsd/source/ui/framework/factories/ChildWindowPane.cxx251
-rw-r--r--sd/source/ui/framework/factories/ChildWindowPane.hxx132
-rw-r--r--sd/source/ui/framework/factories/FrameWindowPane.cxx62
-rw-r--r--sd/source/ui/framework/factories/FrameWindowPane.hxx63
-rw-r--r--sd/source/ui/framework/factories/FullScreenPane.cxx294
-rw-r--r--sd/source/ui/framework/factories/FullScreenPane.hxx105
-rw-r--r--sd/source/ui/framework/factories/Pane.cxx267
-rwxr-xr-xsd/source/ui/framework/factories/PresentationFactory.cxx323
-rwxr-xr-xsd/source/ui/framework/factories/TaskPanelFactory.cxx323
-rwxr-xr-xsd/source/ui/framework/factories/TaskPanelFactory.hxx96
-rwxr-xr-xsd/source/ui/framework/factories/ViewShellWrapper.cxx269
-rw-r--r--sd/source/ui/framework/factories/makefile.mk60
-rw-r--r--sd/source/ui/framework/module/CenterViewFocusModule.cxx195
-rw-r--r--sd/source/ui/framework/module/CenterViewFocusModule.hxx112
-rw-r--r--sd/source/ui/framework/module/DrawModule.cxx56
-rwxr-xr-xsd/source/ui/framework/module/ImpressModule.cxx63
-rwxr-xr-xsd/source/ui/framework/module/ModuleController.cxx341
-rwxr-xr-xsd/source/ui/framework/module/PresentationModule.cxx47
-rwxr-xr-xsd/source/ui/framework/module/ReadOnlyModeObserver.cxx220
-rwxr-xr-xsd/source/ui/framework/module/ReadOnlyModeObserver.hxx139
-rwxr-xr-xsd/source/ui/framework/module/ResourceManager.cxx294
-rwxr-xr-xsd/source/ui/framework/module/ResourceManager.hxx133
-rw-r--r--sd/source/ui/framework/module/ShellStackGuard.cxx192
-rw-r--r--sd/source/ui/framework/module/ShellStackGuard.hxx116
-rw-r--r--sd/source/ui/framework/module/SlideSorterModule.cxx155
-rw-r--r--sd/source/ui/framework/module/SlideSorterModule.hxx69
-rw-r--r--sd/source/ui/framework/module/ToolBarModule.cxx234
-rw-r--r--sd/source/ui/framework/module/ToolBarModule.hxx102
-rw-r--r--sd/source/ui/framework/module/ToolPanelModule.cxx165
-rw-r--r--sd/source/ui/framework/module/ToolPanelModule.hxx49
-rw-r--r--sd/source/ui/framework/module/ViewTabBarModule.cxx220
-rw-r--r--sd/source/ui/framework/module/ViewTabBarModule.hxx107
-rwxr-xr-xsd/source/ui/framework/module/makefile.mk62
-rwxr-xr-xsd/source/ui/framework/tools/FrameworkHelper.cxx1234
-rw-r--r--sd/source/ui/framework/tools/makefile.mk51
-rw-r--r--sd/source/ui/func/bulmaper.cxx191
-rw-r--r--sd/source/ui/func/fuarea.cxx117
-rw-r--r--sd/source/ui/func/fubullet.cxx360
-rw-r--r--sd/source/ui/func/fuchar.cxx147
-rw-r--r--sd/source/ui/func/fucon3d.cxx531
-rw-r--r--sd/source/ui/func/fuconarc.cxx339
-rw-r--r--sd/source/ui/func/fuconbez.cxx538
-rw-r--r--sd/source/ui/func/fuconcs.cxx344
-rw-r--r--sd/source/ui/func/fuconnct.cxx91
-rw-r--r--sd/source/ui/func/fuconrec.cxx1024
-rwxr-xr-xsd/source/ui/func/fuconstr.cxx420
-rw-r--r--sd/source/ui/func/fuconuno.cxx221
-rw-r--r--sd/source/ui/func/fucopy.cxx315
-rw-r--r--sd/source/ui/func/fucushow.cxx99
-rwxr-xr-xsd/source/ui/func/fudraw.cxx1142
-rw-r--r--sd/source/ui/func/fudspord.cxx194
-rw-r--r--sd/source/ui/func/fuediglu.cxx464
-rw-r--r--sd/source/ui/func/fuexpand.cxx275
-rw-r--r--sd/source/ui/func/fuformatpaintbrush.cxx295
-rw-r--r--sd/source/ui/func/fuhhconv.cxx290
-rwxr-xr-xsd/source/ui/func/fuinsert.cxx779
-rw-r--r--sd/source/ui/func/fuinsfil.cxx824
-rw-r--r--sd/source/ui/func/fuline.cxx130
-rw-r--r--sd/source/ui/func/fulinend.cxx183
-rw-r--r--sd/source/ui/func/fulink.cxx92
-rw-r--r--sd/source/ui/func/fumeasur.cxx92
-rw-r--r--sd/source/ui/func/fumorph.cxx513
-rw-r--r--sd/source/ui/func/fuoaprms.cxx839
-rw-r--r--sd/source/ui/func/fuolbull.cxx146
-rw-r--r--sd/source/ui/func/fuoltext.cxx361
-rwxr-xr-xsd/source/ui/func/fuoutl.cxx94
-rwxr-xr-xsd/source/ui/func/fupage.cxx637
-rw-r--r--sd/source/ui/func/fuparagr.cxx187
-rwxr-xr-xsd/source/ui/func/fupoor.cxx1277
-rw-r--r--sd/source/ui/func/fuprlout.cxx287
-rw-r--r--sd/source/ui/func/fuprobjs.cxx179
-rw-r--r--sd/source/ui/func/fuscale.cxx216
-rwxr-xr-xsd/source/ui/func/fusearch.cxx178
-rw-r--r--sd/source/ui/func/fusel.cxx1498
-rw-r--r--sd/source/ui/func/fusldlg.cxx265
-rwxr-xr-xsd/source/ui/func/fusnapln.cxx219
-rw-r--r--sd/source/ui/func/fusumry.cxx243
-rwxr-xr-xsd/source/ui/func/futempl.cxx733
-rwxr-xr-xsd/source/ui/func/futext.cxx1550
-rw-r--r--sd/source/ui/func/futhes.cxx170
-rwxr-xr-xsd/source/ui/func/futransf.cxx139
-rw-r--r--sd/source/ui/func/futxtatt.cxx105
-rw-r--r--sd/source/ui/func/fuvect.cxx116
-rw-r--r--sd/source/ui/func/fuzoom.cxx262
-rwxr-xr-xsd/source/ui/func/makefile.mk185
-rw-r--r--sd/source/ui/func/sdundo.cxx36
-rwxr-xr-xsd/source/ui/func/sdundogr.cxx118
-rwxr-xr-xsd/source/ui/func/smarttag.cxx479
-rw-r--r--sd/source/ui/func/undoback.cxx98
-rw-r--r--sd/source/ui/func/undoheaderfooter.cxx65
-rw-r--r--sd/source/ui/func/undolayer.cxx90
-rw-r--r--sd/source/ui/func/undopage.cxx140
-rw-r--r--sd/source/ui/func/unmovss.cxx108
-rwxr-xr-xsd/source/ui/func/unoaprms.cxx141
-rw-r--r--sd/source/ui/func/unprlout.cxx119
-rw-r--r--sd/source/ui/inc/3dchld.hxx50
-rw-r--r--sd/source/ui/inc/AccessibleDocumentViewBase.hxx372
-rw-r--r--sd/source/ui/inc/AccessibleDrawDocumentView.hxx173
-rw-r--r--sd/source/ui/inc/AccessibleOutlineEditSource.hxx104
-rw-r--r--sd/source/ui/inc/AccessibleOutlineView.hxx161
-rw-r--r--sd/source/ui/inc/AccessiblePageShape.hxx178
-rw-r--r--sd/source/ui/inc/AccessiblePresentationGraphicShape.hxx71
-rw-r--r--sd/source/ui/inc/AccessiblePresentationOLEShape.hxx71
-rw-r--r--sd/source/ui/inc/AccessiblePresentationShape.hxx82
-rw-r--r--sd/source/ui/inc/AccessibleScrollPanel.hxx80
-rw-r--r--sd/source/ui/inc/AccessibleSlideSorterObject.hxx249
-rw-r--r--sd/source/ui/inc/AccessibleSlideSorterView.hxx326
-rw-r--r--sd/source/ui/inc/AccessibleSlideView.hxx280
-rwxr-xr-xsd/source/ui/inc/AccessibleTreeNode.hxx294
-rwxr-xr-xsd/source/ui/inc/AccessibleViewForwarder.hxx136
-rw-r--r--sd/source/ui/inc/AnimationChildWindow.hxx55
-rw-r--r--sd/source/ui/inc/BezierObjectBar.hxx60
-rw-r--r--sd/source/ui/inc/BreakDlg.hxx96
-rw-r--r--sd/source/ui/inc/Client.hxx75
-rw-r--r--sd/source/ui/inc/ClientView.hxx65
-rw-r--r--sd/source/ui/inc/CustomAnimation.hxx43
-rw-r--r--sd/source/ui/inc/DialogListBox.hxx75
-rw-r--r--sd/source/ui/inc/DocumentRenderer.hxx82
-rwxr-xr-xsd/source/ui/inc/DrawController.hxx339
-rwxr-xr-xsd/source/ui/inc/DrawDocShell.hxx241
-rwxr-xr-xsd/source/ui/inc/DrawSubController.hxx57
-rwxr-xr-xsd/source/ui/inc/DrawViewShell.hxx499
-rw-r--r--sd/source/ui/inc/EventMultiplexer.hxx222
-rw-r--r--sd/source/ui/inc/FormShellManager.hxx143
-rw-r--r--sd/source/ui/inc/FrameView.hxx237
-rw-r--r--sd/source/ui/inc/GraphicDocShell.hxx79
-rw-r--r--sd/source/ui/inc/GraphicObjectBar.hxx66
-rwxr-xr-xsd/source/ui/inc/GraphicViewShell.hxx85
-rw-r--r--sd/source/ui/inc/GraphicViewShellBase.hxx62
-rw-r--r--sd/source/ui/inc/ImpressViewShellBase.hxx62
-rw-r--r--sd/source/ui/inc/LayerDialog.hrc29
-rw-r--r--sd/source/ui/inc/LayerDialogChildWindow.hxx54
-rwxr-xr-xsd/source/ui/inc/LayerDialogContent.hxx64
-rw-r--r--sd/source/ui/inc/LayerTabBar.hxx93
-rwxr-xr-xsd/source/ui/inc/MasterPageObserver.hxx134
-rw-r--r--sd/source/ui/inc/MediaObjectBar.hxx61
-rw-r--r--sd/source/ui/inc/MutexOwner.hxx47
-rw-r--r--sd/source/ui/inc/NavigatorChildWindow.hxx59
-rw-r--r--sd/source/ui/inc/NotesChildWindow.hrc30
-rw-r--r--sd/source/ui/inc/NotesChildWindow.hxx55
-rw-r--r--sd/source/ui/inc/OutlineBulletDlg.hxx71
-rwxr-xr-xsd/source/ui/inc/OutlineView.hxx264
-rwxr-xr-xsd/source/ui/inc/OutlineViewShell.hxx179
-rw-r--r--sd/source/ui/inc/OutlineViewShellBase.hxx55
-rw-r--r--sd/source/ui/inc/OutlinerIteratorImpl.hxx272
-rwxr-xr-xsd/source/ui/inc/PaneChildWindows.hxx100
-rwxr-xr-xsd/source/ui/inc/PaneDockingWindow.hrc30
-rw-r--r--sd/source/ui/inc/PaneDockingWindow.hxx90
-rwxr-xr-xsd/source/ui/inc/PaneShells.hxx90
-rw-r--r--sd/source/ui/inc/PresentationViewShell.hxx75
-rw-r--r--sd/source/ui/inc/PresentationViewShellBase.hxx58
-rwxr-xr-xsd/source/ui/inc/PreviewRenderer.hxx178
-rw-r--r--sd/source/ui/inc/Ruler.hxx82
-rwxr-xr-xsd/source/ui/inc/SdUnoDrawView.hxx153
-rwxr-xr-xsd/source/ui/inc/SdUnoOutlineView.hxx127
-rwxr-xr-xsd/source/ui/inc/SdUnoSlideView.hxx142
-rw-r--r--sd/source/ui/inc/ShellFactory.hxx73
-rwxr-xr-xsd/source/ui/inc/SlideSorter.hxx287
-rw-r--r--sd/source/ui/inc/SlideSorterChildWindow.hrc30
-rw-r--r--sd/source/ui/inc/SlideSorterChildWindow.hxx58
-rwxr-xr-xsd/source/ui/inc/SlideSorterViewShell.hxx219
-rw-r--r--sd/source/ui/inc/SlideSorterViewShellBase.hxx55
-rwxr-xr-xsd/source/ui/inc/SlideView.hxx144
-rwxr-xr-xsd/source/ui/inc/SlideViewShell.hxx175
-rwxr-xr-xsd/source/ui/inc/SpellDialogChildWindow.hxx95
-rw-r--r--sd/source/ui/inc/TabControl.hxx122
-rw-r--r--sd/source/ui/inc/TemplateScanner.hxx220
-rw-r--r--sd/source/ui/inc/TextLogger.hxx62
-rw-r--r--sd/source/ui/inc/TextObjectBar.hxx69
-rwxr-xr-xsd/source/ui/inc/ToolBarManager.hxx283
-rw-r--r--sd/source/ui/inc/UpdateLockManager.hxx92
-rwxr-xr-xsd/source/ui/inc/View.hxx261
-rw-r--r--sd/source/ui/inc/ViewClipboard.hxx93
-rwxr-xr-xsd/source/ui/inc/ViewShell.hxx606
-rwxr-xr-xsd/source/ui/inc/ViewShellBase.hxx287
-rw-r--r--sd/source/ui/inc/ViewShellHint.hxx68
-rwxr-xr-xsd/source/ui/inc/ViewShellImplementation.hxx166
-rwxr-xr-xsd/source/ui/inc/ViewShellManager.hxx212
-rw-r--r--sd/source/ui/inc/ViewTabBar.hxx210
-rw-r--r--sd/source/ui/inc/ViewTabControl.hxx120
-rwxr-xr-xsd/source/ui/inc/Window.hxx216
-rw-r--r--sd/source/ui/inc/WindowUpdater.hxx152
-rw-r--r--sd/source/ui/inc/animobjs.hrc49
-rwxr-xr-xsd/source/ui/inc/animobjs.hxx202
-rwxr-xr-xsd/source/ui/inc/annotationmanager.hxx59
-rw-r--r--sd/source/ui/inc/assclass.hxx86
-rwxr-xr-xsd/source/ui/inc/bmcache.hxx52
-rw-r--r--sd/source/ui/inc/brkdlg.hrc34
-rw-r--r--sd/source/ui/inc/bulmaper.hxx49
-rw-r--r--sd/source/ui/inc/celltempl.hrc29
-rw-r--r--sd/source/ui/inc/celltempl.hxx59
-rw-r--r--sd/source/ui/inc/cfgids.hxx75
-rw-r--r--sd/source/ui/inc/copydlg.hrc51
-rw-r--r--sd/source/ui/inc/copydlg.hxx105
-rw-r--r--sd/source/ui/inc/custsdlg.hrc47
-rw-r--r--sd/source/ui/inc/custsdlg.hxx116
-rw-r--r--sd/source/ui/inc/diactrl.hxx80
-rw-r--r--sd/source/ui/inc/dialogs.hrc36
-rw-r--r--sd/source/ui/inc/dlg_char.hrc28
-rw-r--r--sd/source/ui/inc/dlg_char.hxx61
-rw-r--r--sd/source/ui/inc/dlgass.hrc88
-rwxr-xr-xsd/source/ui/inc/dlgass.hxx77
-rwxr-xr-xsd/source/ui/inc/dlgctrls.hxx62
-rw-r--r--sd/source/ui/inc/dlgfield.hrc37
-rw-r--r--sd/source/ui/inc/dlgfield.hxx89
-rw-r--r--sd/source/ui/inc/dlgolbul.hrc27
-rw-r--r--sd/source/ui/inc/dlgpage.hrc27
-rw-r--r--sd/source/ui/inc/dlgpage.hxx68
-rw-r--r--sd/source/ui/inc/dlgsnap.hrc44
-rw-r--r--sd/source/ui/inc/dlgsnap.hxx101
-rwxr-xr-xsd/source/ui/inc/docprev.hxx88
-rw-r--r--sd/source/ui/inc/drawview.hxx93
-rw-r--r--sd/source/ui/inc/enumdlg.hrc42
-rwxr-xr-xsd/source/ui/inc/filedlg.hxx72
-rw-r--r--sd/source/ui/inc/fontwork.hrc45
-rw-r--r--sd/source/ui/inc/framework/Configuration.hxx207
-rw-r--r--sd/source/ui/inc/framework/ConfigurationController.hxx231
-rw-r--r--sd/source/ui/inc/framework/DrawModule.hxx48
-rwxr-xr-xsd/source/ui/inc/framework/FrameworkHelper.hxx430
-rw-r--r--sd/source/ui/inc/framework/ImpressModule.hxx47
-rw-r--r--sd/source/ui/inc/framework/ModuleController.hxx148
-rw-r--r--sd/source/ui/inc/framework/Pane.hxx175
-rwxr-xr-xsd/source/ui/inc/framework/PresentationFactory.hxx116
-rw-r--r--sd/source/ui/inc/framework/PresentationModule.hxx47
-rwxr-xr-xsd/source/ui/inc/framework/ResourceId.hxx244
-rwxr-xr-xsd/source/ui/inc/framework/ViewShellWrapper.hxx148
-rw-r--r--sd/source/ui/inc/fuarea.hxx59
-rw-r--r--sd/source/ui/inc/fubullet.hxx65
-rw-r--r--sd/source/ui/inc/fuchar.hxx60
-rw-r--r--sd/source/ui/inc/fucon3d.hxx77
-rw-r--r--sd/source/ui/inc/fuconarc.hxx70
-rw-r--r--sd/source/ui/inc/fuconbez.hxx85
-rw-r--r--sd/source/ui/inc/fuconcs.hxx87
-rw-r--r--sd/source/ui/inc/fuconnct.hxx57
-rw-r--r--sd/source/ui/inc/fuconrec.hxx84
-rwxr-xr-xsd/source/ui/inc/fuconstr.hxx87
-rw-r--r--sd/source/ui/inc/fuconuno.hxx81
-rw-r--r--sd/source/ui/inc/fucopy.hxx58
-rw-r--r--sd/source/ui/inc/fucushow.hxx55
-rwxr-xr-xsd/source/ui/inc/fudraw.hxx102
-rw-r--r--sd/source/ui/inc/fudspord.hxx82
-rw-r--r--sd/source/ui/inc/fuediglu.hxx74
-rw-r--r--sd/source/ui/inc/fuexpand.hxx56
-rw-r--r--sd/source/ui/inc/fuformatpaintbrush.hxx76
-rw-r--r--sd/source/ui/inc/fugrid.hxx59
-rw-r--r--sd/source/ui/inc/fuhhconv.hxx75
-rw-r--r--sd/source/ui/inc/fuinsert.hxx119
-rw-r--r--sd/source/ui/inc/fuinsfil.hxx70
-rw-r--r--sd/source/ui/inc/fuline.hxx60
-rw-r--r--sd/source/ui/inc/fulinend.hxx60
-rw-r--r--sd/source/ui/inc/fulink.hxx58
-rw-r--r--sd/source/ui/inc/fumeasur.hxx57
-rw-r--r--sd/source/ui/inc/fumorph.hxx80
-rw-r--r--sd/source/ui/inc/fuoaprms.hxx60
-rw-r--r--sd/source/ui/inc/fuolbull.hxx68
-rw-r--r--sd/source/ui/inc/fuoltext.hxx85
-rwxr-xr-xsd/source/ui/inc/fuoutl.hxx76
-rwxr-xr-xsd/source/ui/inc/fupage.hxx81
-rw-r--r--sd/source/ui/inc/fuparagr.hxx59
-rwxr-xr-xsd/source/ui/inc/fupoor.hxx212
-rw-r--r--sd/source/ui/inc/fuprlout.hxx64
-rw-r--r--sd/source/ui/inc/fuprobjs.hxx64
-rw-r--r--sd/source/ui/inc/fuscale.hxx56
-rw-r--r--sd/source/ui/inc/fusearch.hxx72
-rw-r--r--sd/source/ui/inc/fusel.hxx112
-rw-r--r--sd/source/ui/inc/fusldlg.hxx55
-rw-r--r--sd/source/ui/inc/fuslhide.hxx63
-rw-r--r--sd/source/ui/inc/fuslid.hxx77
-rw-r--r--sd/source/ui/inc/fuslsel.hxx120
-rw-r--r--sd/source/ui/inc/fusnapln.hxx58
-rw-r--r--sd/source/ui/inc/fusumry.hxx56
-rw-r--r--sd/source/ui/inc/futempl.hxx59
-rw-r--r--sd/source/ui/inc/futext.hxx116
-rw-r--r--sd/source/ui/inc/futhes.hxx57
-rwxr-xr-xsd/source/ui/inc/futransf.hxx59
-rw-r--r--sd/source/ui/inc/futxtatt.hxx56
-rw-r--r--sd/source/ui/inc/fuvect.hxx57
-rw-r--r--sd/source/ui/inc/fuzoom.hxx79
-rw-r--r--sd/source/ui/inc/gluectrl.hxx76
-rw-r--r--sd/source/ui/inc/headerfooterdlg.hrc55
-rwxr-xr-xsd/source/ui/inc/headerfooterdlg.hxx85
-rw-r--r--sd/source/ui/inc/ins_paste.hrc36
-rw-r--r--sd/source/ui/inc/ins_paste.hxx59
-rw-r--r--sd/source/ui/inc/inspagob.hrc33
-rw-r--r--sd/source/ui/inc/inspagob.hxx71
-rw-r--r--sd/source/ui/inc/layeroptionsdlg.hrc44
-rw-r--r--sd/source/ui/inc/layeroptionsdlg.hxx67
-rw-r--r--sd/source/ui/inc/masterlayoutdlg.hrc36
-rw-r--r--sd/source/ui/inc/masterlayoutdlg.hxx78
-rw-r--r--sd/source/ui/inc/morphdlg.hrc35
-rw-r--r--sd/source/ui/inc/morphdlg.hxx81
-rw-r--r--sd/source/ui/inc/navigatr.hrc43
-rw-r--r--sd/source/ui/inc/navigatr.hxx207
-rw-r--r--sd/source/ui/inc/optdlg.hrc34
-rw-r--r--sd/source/ui/inc/optdlg.hxx57
-rwxr-xr-xsd/source/ui/inc/optsitem.hxx679
-rw-r--r--sd/source/ui/inc/packgdlg.hrc46
-rw-r--r--sd/source/ui/inc/paragr.hrc33
-rw-r--r--sd/source/ui/inc/paragr.hxx53
-rw-r--r--sd/source/ui/inc/pgjump.hxx43
-rw-r--r--sd/source/ui/inc/present.hrc67
-rw-r--r--sd/source/ui/inc/present.hxx114
-rw-r--r--sd/source/ui/inc/preview.hrc28
-rw-r--r--sd/source/ui/inc/prltempl.hrc31
-rw-r--r--sd/source/ui/inc/prltempl.hxx101
-rw-r--r--sd/source/ui/inc/prntopts.hrc56
-rwxr-xr-xsd/source/ui/inc/prntopts.hxx109
-rw-r--r--sd/source/ui/inc/pubdlg.hrc153
-rw-r--r--sd/source/ui/inc/pubdlg.hxx235
-rwxr-xr-xsd/source/ui/inc/res_bmp.hrc341
-rw-r--r--sd/source/ui/inc/sdpopup.hxx61
-rw-r--r--sd/source/ui/inc/sdpreslt.hrc36
-rw-r--r--sd/source/ui/inc/sdpreslt.hxx89
-rw-r--r--sd/source/ui/inc/sdstring.hrc35
-rwxr-xr-xsd/source/ui/inc/sdtreelb.hxx271
-rwxr-xr-xsd/source/ui/inc/sdundogr.hxx55
-rw-r--r--sd/source/ui/inc/sdxfer.hxx138
-rwxr-xr-xsd/source/ui/inc/slideshow.hxx232
-rwxr-xr-xsd/source/ui/inc/smarttag.hxx188
-rw-r--r--sd/source/ui/inc/sprite.hxx88
-rwxr-xr-xsd/source/ui/inc/strings.hrc512
-rw-r--r--sd/source/ui/inc/tabtempl.hrc30
-rw-r--r--sd/source/ui/inc/tabtempl.hxx86
-rwxr-xr-xsd/source/ui/inc/taskpane/ControlContainer.hxx197
-rwxr-xr-xsd/source/ui/inc/taskpane/ILayoutableWindow.hxx102
-rw-r--r--sd/source/ui/inc/taskpane/PanelId.hxx62
-rwxr-xr-xsd/source/ui/inc/taskpane/ScrollPanel.hxx185
-rwxr-xr-xsd/source/ui/inc/taskpane/SlideSorterCacheDisplay.hxx201
-rwxr-xr-xsd/source/ui/inc/taskpane/SubToolPanel.hxx134
-rwxr-xr-xsd/source/ui/inc/taskpane/TaskPaneControlFactory.hxx98
-rwxr-xr-xsd/source/ui/inc/taskpane/TaskPaneTreeNode.hxx214
-rwxr-xr-xsd/source/ui/inc/taskpane/TitleBar.hxx169
-rwxr-xr-xsd/source/ui/inc/taskpane/TitledControl.hxx181
-rw-r--r--sd/source/ui/inc/taskpane/ToolPanelViewShell.hxx172
-rw-r--r--sd/source/ui/inc/tbx_ww.hrc29
-rw-r--r--sd/source/ui/inc/tbx_ww.hxx89
-rw-r--r--sd/source/ui/inc/tmplctrl.hxx53
-rw-r--r--sd/source/ui/inc/tools/AsynchronousCall.hxx92
-rw-r--r--sd/source/ui/inc/tools/AsynchronousTask.hxx55
-rw-r--r--sd/source/ui/inc/tools/ConfigurationAccess.hxx152
-rw-r--r--sd/source/ui/inc/tools/IconCache.hxx79
-rw-r--r--sd/source/ui/inc/tools/IdleDetection.hxx91
-rwxr-xr-xsd/source/ui/inc/tools/PropertySet.hxx150
-rwxr-xr-xsd/source/ui/inc/tools/SdGlobalResourceContainer.hxx108
-rwxr-xr-xsd/source/ui/inc/tools/SlotStateListener.hxx160
-rw-r--r--sd/source/ui/inc/tools/TimerBasedTaskExecution.hxx99
-rw-r--r--sd/source/ui/inc/tpaction.hrc51
-rwxr-xr-xsd/source/ui/inc/tpaction.hxx141
-rw-r--r--sd/source/ui/inc/tpoption.hrc95
-rw-r--r--sd/source/ui/inc/tpoption.hxx201
-rw-r--r--sd/source/ui/inc/unchss.hxx59
-rw-r--r--sd/source/ui/inc/undoback.hxx66
-rw-r--r--sd/source/ui/inc/undoheaderfooter.hxx57
-rw-r--r--sd/source/ui/inc/undolayer.hxx67
-rw-r--r--sd/source/ui/inc/undopage.hxx180
-rw-r--r--sd/source/ui/inc/unmodpg.hxx91
-rw-r--r--sd/source/ui/inc/unmovss.hxx54
-rwxr-xr-xsd/source/ui/inc/unoaprms.hxx149
-rw-r--r--sd/source/ui/inc/unokywds.hxx215
-rw-r--r--sd/source/ui/inc/unomodel.hxx354
-rw-r--r--sd/source/ui/inc/unoprnms.hxx100
-rwxr-xr-xsd/source/ui/inc/unosrch.hxx149
-rw-r--r--sd/source/ui/inc/unprlout.hxx65
-rw-r--r--sd/source/ui/inc/unslsel.hxx50
-rw-r--r--sd/source/ui/inc/vectdlg.hrc53
-rw-r--r--sd/source/ui/inc/vectdlg.hxx107
-rwxr-xr-xsd/source/ui/inc/view/viewoverlaymanager.hxx71
-rwxr-xr-xsd/source/ui/inc/zoomlist.hxx61
-rwxr-xr-xsd/source/ui/notes/EditWindow.cxx883
-rwxr-xr-xsd/source/ui/notes/EditWindow.hxx128
-rwxr-xr-xsd/source/ui/notes/NotesChildWindow.cxx63
-rwxr-xr-xsd/source/ui/notes/NotesChildWindow.src46
-rwxr-xr-xsd/source/ui/notes/NotesDockingWindow.cxx114
-rwxr-xr-xsd/source/ui/notes/NotesDockingWindow.hxx56
-rwxr-xr-xsd/source/ui/notes/TextLogger.cxx129
-rwxr-xr-xsd/source/ui/notes/makefile.mk60
-rw-r--r--sd/source/ui/presenter/CanvasUpdateRequester.cxx127
-rw-r--r--sd/source/ui/presenter/CanvasUpdateRequester.hxx80
-rwxr-xr-xsd/source/ui/presenter/PresenterCanvas.cxx1228
-rw-r--r--sd/source/ui/presenter/PresenterCanvas.hxx444
-rw-r--r--sd/source/ui/presenter/PresenterCanvasFactory.cxx307
-rw-r--r--sd/source/ui/presenter/PresenterHelper.cxx343
-rw-r--r--sd/source/ui/presenter/PresenterHelper.hxx120
-rwxr-xr-xsd/source/ui/presenter/PresenterPreviewCache.cxx516
-rw-r--r--sd/source/ui/presenter/PresenterPreviewCache.hxx122
-rwxr-xr-xsd/source/ui/presenter/PresenterTextView.cxx645
-rw-r--r--sd/source/ui/presenter/PresenterTextView.hxx89
-rw-r--r--sd/source/ui/presenter/SlideRenderer.cxx272
-rw-r--r--sd/source/ui/presenter/SlideRenderer.hxx108
-rw-r--r--sd/source/ui/presenter/makefile.mk56
-rwxr-xr-xsd/source/ui/slideshow/PaneHider.cxx117
-rw-r--r--sd/source/ui/slideshow/PaneHider.hxx73
-rw-r--r--sd/source/ui/slideshow/SlideShowRestarter.cxx184
-rw-r--r--sd/source/ui/slideshow/SlideShowRestarter.hxx91
-rw-r--r--sd/source/ui/slideshow/makefile.mk66
-rw-r--r--sd/source/ui/slideshow/showwin.cxx745
-rw-r--r--sd/source/ui/slideshow/showwindow.hxx144
-rwxr-xr-xsd/source/ui/slideshow/slideshow.cxx1272
-rw-r--r--sd/source/ui/slideshow/slideshow.hrc61
-rw-r--r--sd/source/ui/slideshow/slideshow.src221
-rwxr-xr-xsd/source/ui/slideshow/slideshowimpl.cxx4047
-rwxr-xr-xsd/source/ui/slideshow/slideshowimpl.hxx434
-rw-r--r--sd/source/ui/slideshow/slideshowviewimpl.cxx685
-rw-r--r--sd/source/ui/slideshow/slideshowviewimpl.hxx286
-rw-r--r--sd/source/ui/slidesorter/cache/SlsBitmapCache.cxx703
-rw-r--r--sd/source/ui/slidesorter/cache/SlsBitmapCache.hxx235
-rwxr-xr-xsd/source/ui/slidesorter/cache/SlsBitmapCompressor.cxx250
-rwxr-xr-xsd/source/ui/slidesorter/cache/SlsBitmapCompressor.hxx156
-rwxr-xr-xsd/source/ui/slidesorter/cache/SlsBitmapFactory.cxx100
-rwxr-xr-xsd/source/ui/slidesorter/cache/SlsBitmapFactory.hxx65
-rw-r--r--sd/source/ui/slidesorter/cache/SlsCacheCompactor.cxx236
-rw-r--r--sd/source/ui/slidesorter/cache/SlsCacheCompactor.hxx100
-rw-r--r--sd/source/ui/slidesorter/cache/SlsCacheConfiguration.cxx181
-rw-r--r--sd/source/ui/slidesorter/cache/SlsCacheConfiguration.hxx74
-rw-r--r--sd/source/ui/slidesorter/cache/SlsGenericPageCache.cxx379
-rw-r--r--sd/source/ui/slidesorter/cache/SlsGenericPageCache.hxx168
-rw-r--r--sd/source/ui/slidesorter/cache/SlsPageCache.cxx166
-rwxr-xr-xsd/source/ui/slidesorter/cache/SlsPageCacheManager.cxx489
-rwxr-xr-xsd/source/ui/slidesorter/cache/SlsQueueProcessor.cxx256
-rwxr-xr-xsd/source/ui/slidesorter/cache/SlsQueueProcessor.hxx140
-rwxr-xr-xsd/source/ui/slidesorter/cache/SlsQueueProcessorThread.hxx319
-rwxr-xr-xsd/source/ui/slidesorter/cache/SlsRequestFactory.cxx76
-rw-r--r--sd/source/ui/slidesorter/cache/SlsRequestFactory.hxx48
-rw-r--r--sd/source/ui/slidesorter/cache/SlsRequestPriorityClass.hxx55
-rwxr-xr-xsd/source/ui/slidesorter/cache/SlsRequestQueue.cxx289
-rw-r--r--sd/source/ui/slidesorter/cache/SlsRequestQueue.hxx133
-rwxr-xr-xsd/source/ui/slidesorter/cache/makefile.mk64
-rw-r--r--sd/source/ui/slidesorter/controller/SlideSorterController.cxx1130
-rw-r--r--sd/source/ui/slidesorter/controller/SlsAnimationFunction.cxx294
-rwxr-xr-xsd/source/ui/slidesorter/controller/SlsAnimator.cxx395
-rwxr-xr-xsd/source/ui/slidesorter/controller/SlsClipboard.cxx892
-rw-r--r--sd/source/ui/slidesorter/controller/SlsCommand.hxx45
-rw-r--r--sd/source/ui/slidesorter/controller/SlsCurrentSlideManager.cxx319
-rw-r--r--sd/source/ui/slidesorter/controller/SlsDragAndDropContext.cxx199
-rw-r--r--sd/source/ui/slidesorter/controller/SlsDragAndDropContext.hxx100
-rwxr-xr-xsd/source/ui/slidesorter/controller/SlsFocusManager.cxx400
-rwxr-xr-xsd/source/ui/slidesorter/controller/SlsHideSlideFunction.cxx171
-rw-r--r--sd/source/ui/slidesorter/controller/SlsHideSlideFunction.hxx73
-rw-r--r--sd/source/ui/slidesorter/controller/SlsInsertionIndicatorHandler.cxx327
-rwxr-xr-xsd/source/ui/slidesorter/controller/SlsListener.cxx698
-rwxr-xr-xsd/source/ui/slidesorter/controller/SlsListener.hxx194
-rw-r--r--sd/source/ui/slidesorter/controller/SlsPageObjectFactory.cxx100
-rw-r--r--sd/source/ui/slidesorter/controller/SlsPageSelector.cxx488
-rwxr-xr-xsd/source/ui/slidesorter/controller/SlsProperties.cxx273
-rw-r--r--sd/source/ui/slidesorter/controller/SlsScrollBarManager.cxx737
-rwxr-xr-xsd/source/ui/slidesorter/controller/SlsSelectionCommand.cxx85
-rwxr-xr-xsd/source/ui/slidesorter/controller/SlsSelectionCommand.hxx95
-rw-r--r--sd/source/ui/slidesorter/controller/SlsSelectionFunction.cxx2024
-rwxr-xr-xsd/source/ui/slidesorter/controller/SlsSelectionManager.cxx359
-rw-r--r--sd/source/ui/slidesorter/controller/SlsSelectionObserver.cxx173
-rwxr-xr-xsd/source/ui/slidesorter/controller/SlsSlideFunction.cxx80
-rw-r--r--sd/source/ui/slidesorter/controller/SlsSlotManager.cxx1322
-rwxr-xr-xsd/source/ui/slidesorter/controller/SlsTransferable.cxx101
-rw-r--r--sd/source/ui/slidesorter/controller/SlsVisibleAreaManager.cxx305
-rwxr-xr-xsd/source/ui/slidesorter/controller/makefile.mk69
-rwxr-xr-xsd/source/ui/slidesorter/inc/cache/SlsCacheContext.hxx106
-rw-r--r--sd/source/ui/slidesorter/inc/cache/SlsPageCache.hxx179
-rwxr-xr-xsd/source/ui/slidesorter/inc/cache/SlsPageCacheManager.hxx188
-rwxr-xr-xsd/source/ui/slidesorter/inc/controller/SlideSorterController.hxx343
-rw-r--r--sd/source/ui/slidesorter/inc/controller/SlsAnimationFunction.hxx180
-rwxr-xr-xsd/source/ui/slidesorter/inc/controller/SlsAnimator.hxx141
-rwxr-xr-xsd/source/ui/slidesorter/inc/controller/SlsClipboard.hxx233
-rwxr-xr-xsd/source/ui/slidesorter/inc/controller/SlsCurrentSlideManager.hxx128
-rwxr-xr-xsd/source/ui/slidesorter/inc/controller/SlsFocusManager.hxx234
-rw-r--r--sd/source/ui/slidesorter/inc/controller/SlsInsertionIndicatorHandler.hxx153
-rw-r--r--sd/source/ui/slidesorter/inc/controller/SlsPageObjectFactory.hxx97
-rw-r--r--sd/source/ui/slidesorter/inc/controller/SlsPageSelector.hxx229
-rwxr-xr-xsd/source/ui/slidesorter/inc/controller/SlsProperties.hxx144
-rwxr-xr-xsd/source/ui/slidesorter/inc/controller/SlsScrollBarManager.hxx283
-rw-r--r--sd/source/ui/slidesorter/inc/controller/SlsSelectionFunction.hxx205
-rwxr-xr-xsd/source/ui/slidesorter/inc/controller/SlsSelectionManager.hxx167
-rw-r--r--sd/source/ui/slidesorter/inc/controller/SlsSelectionObserver.hxx85
-rwxr-xr-xsd/source/ui/slidesorter/inc/controller/SlsSlideFunction.hxx73
-rw-r--r--sd/source/ui/slidesorter/inc/controller/SlsSlotManager.hxx125
-rw-r--r--sd/source/ui/slidesorter/inc/controller/SlsTransferable.hxx87
-rw-r--r--sd/source/ui/slidesorter/inc/controller/SlsVisibleAreaManager.hxx100
-rw-r--r--sd/source/ui/slidesorter/inc/model/SlideSorterModel.hxx251
-rw-r--r--sd/source/ui/slidesorter/inc/model/SlsEnumeration.hxx53
-rw-r--r--sd/source/ui/slidesorter/inc/model/SlsPageDescriptor.hxx163
-rw-r--r--sd/source/ui/slidesorter/inc/model/SlsPageEnumeration.hxx127
-rw-r--r--sd/source/ui/slidesorter/inc/model/SlsPageEnumerationProvider.hxx60
-rw-r--r--sd/source/ui/slidesorter/inc/model/SlsSharedPageDescriptor.hxx41
-rw-r--r--sd/source/ui/slidesorter/inc/model/SlsVisualState.hxx101
-rw-r--r--sd/source/ui/slidesorter/inc/view/SlideSorterView.hxx301
-rw-r--r--sd/source/ui/slidesorter/inc/view/SlsButtonBar.hxx362
-rw-r--r--sd/source/ui/slidesorter/inc/view/SlsFontProvider.hxx94
-rw-r--r--sd/source/ui/slidesorter/inc/view/SlsILayerPainter.hxx60
-rw-r--r--sd/source/ui/slidesorter/inc/view/SlsInsertAnimator.hxx71
-rw-r--r--sd/source/ui/slidesorter/inc/view/SlsInsertionIndicatorOverlay.hxx131
-rw-r--r--sd/source/ui/slidesorter/inc/view/SlsLayouter.hxx296
-rw-r--r--sd/source/ui/slidesorter/inc/view/SlsPageObject.hxx65
-rw-r--r--sd/source/ui/slidesorter/inc/view/SlsPageObjectLayouter.hxx145
-rw-r--r--sd/source/ui/slidesorter/inc/view/SlsPageObjectPainter.hxx138
-rwxr-xr-xsd/source/ui/slidesorter/inc/view/SlsPageObjectViewContact.hxx89
-rw-r--r--sd/source/ui/slidesorter/inc/view/SlsPageObjectViewObjectContact.hxx225
-rw-r--r--sd/source/ui/slidesorter/inc/view/SlsResource.hrc111
-rw-r--r--sd/source/ui/slidesorter/inc/view/SlsTheme.hxx236
-rw-r--r--sd/source/ui/slidesorter/inc/view/SlsToolTip.hxx97
-rw-r--r--sd/source/ui/slidesorter/makefile.mk58
-rw-r--r--sd/source/ui/slidesorter/model/SlideSorterModel.cxx737
-rw-r--r--sd/source/ui/slidesorter/model/SlsPageDescriptor.cxx289
-rw-r--r--sd/source/ui/slidesorter/model/SlsPageEnumeration.cxx284
-rwxr-xr-xsd/source/ui/slidesorter/model/SlsPageEnumerationProvider.cxx110
-rw-r--r--sd/source/ui/slidesorter/model/SlsVisualState.cxx236
-rwxr-xr-xsd/source/ui/slidesorter/model/makefile.mk57
-rwxr-xr-xsd/source/ui/slidesorter/shell/SlideSorter.cxx700
-rw-r--r--sd/source/ui/slidesorter/shell/SlideSorterChildWindow.cxx66
-rw-r--r--sd/source/ui/slidesorter/shell/SlideSorterChildWindow.src52
-rwxr-xr-xsd/source/ui/slidesorter/shell/SlideSorterService.cxx644
-rwxr-xr-xsd/source/ui/slidesorter/shell/SlideSorterService.hxx216
-rwxr-xr-xsd/source/ui/slidesorter/shell/SlideSorterViewShell.cxx814
-rwxr-xr-xsd/source/ui/slidesorter/shell/makefile.mk55
-rw-r--r--sd/source/ui/slidesorter/view/SlideSorterView.cxx1132
-rw-r--r--sd/source/ui/slidesorter/view/SlsButtonBar.cxx1558
-rw-r--r--sd/source/ui/slidesorter/view/SlsFontProvider.cxx132
-rw-r--r--sd/source/ui/slidesorter/view/SlsFramePainter.cxx265
-rw-r--r--sd/source/ui/slidesorter/view/SlsFramePainter.hxx121
-rw-r--r--sd/source/ui/slidesorter/view/SlsInsertAnimator.cxx537
-rw-r--r--sd/source/ui/slidesorter/view/SlsInsertionIndicatorOverlay.cxx448
-rw-r--r--sd/source/ui/slidesorter/view/SlsLayeredDevice.cxx565
-rw-r--r--sd/source/ui/slidesorter/view/SlsLayeredDevice.hxx99
-rw-r--r--sd/source/ui/slidesorter/view/SlsLayouter.cxx1552
-rw-r--r--sd/source/ui/slidesorter/view/SlsPageObject.cxx80
-rw-r--r--sd/source/ui/slidesorter/view/SlsPageObjectLayouter.cxx287
-rw-r--r--sd/source/ui/slidesorter/view/SlsPageObjectPainter.cxx584
-rw-r--r--sd/source/ui/slidesorter/view/SlsResource.hxx47
-rw-r--r--sd/source/ui/slidesorter/view/SlsResource.src314
-rw-r--r--sd/source/ui/slidesorter/view/SlsTheme.cxx535
-rw-r--r--sd/source/ui/slidesorter/view/SlsToolTip.cxx230
-rwxr-xr-xsd/source/ui/slidesorter/view/SlsViewCacheContext.cxx159
-rwxr-xr-xsd/source/ui/slidesorter/view/SlsViewCacheContext.hxx70
-rwxr-xr-xsd/source/ui/slidesorter/view/makefile.mk69
-rwxr-xr-xsd/source/ui/table/TableDesignPane.cxx951
-rw-r--r--sd/source/ui/table/TableDesignPane.hrc50
-rw-r--r--sd/source/ui/table/TableDesignPane.hxx126
-rw-r--r--sd/source/ui/table/TableDesignPane.src155
-rw-r--r--sd/source/ui/table/makefile.mk56
-rwxr-xr-xsd/source/ui/table/tablefunction.cxx270
-rw-r--r--sd/source/ui/table/tableobjectbar.cxx234
-rw-r--r--sd/source/ui/table/tableobjectbar.hxx64
-rw-r--r--sd/source/ui/toolpanel/ConstrainedIterator.cxx267
-rw-r--r--sd/source/ui/toolpanel/ConstrainedIterator.hxx104
-rwxr-xr-xsd/source/ui/toolpanel/ControlContainer.cxx445
-rw-r--r--sd/source/ui/toolpanel/ControlContainerDescriptor.hxx139
-rw-r--r--sd/source/ui/toolpanel/ControlList.hxx59
-rwxr-xr-xsd/source/ui/toolpanel/LayoutMenu.cxx1012
-rwxr-xr-xsd/source/ui/toolpanel/LayoutMenu.hxx239
-rw-r--r--sd/source/ui/toolpanel/MethodGuard.hxx67
-rwxr-xr-xsd/source/ui/toolpanel/ScrollPanel.cxx815
-rwxr-xr-xsd/source/ui/toolpanel/SlideSorterCacheDisplay.cxx372
-rwxr-xr-xsd/source/ui/toolpanel/SubToolPanel.cxx390
-rwxr-xr-xsd/source/ui/toolpanel/TaskPaneControlFactory.cxx57
-rw-r--r--sd/source/ui/toolpanel/TaskPaneFocusManager.cxx325
-rw-r--r--sd/source/ui/toolpanel/TaskPaneFocusManager.hxx135
-rwxr-xr-xsd/source/ui/toolpanel/TaskPaneShellManager.cxx183
-rwxr-xr-xsd/source/ui/toolpanel/TaskPaneShellManager.hxx121
-rwxr-xr-xsd/source/ui/toolpanel/TaskPaneTreeNode.cxx292
-rwxr-xr-xsd/source/ui/toolpanel/TestMenu.cxx318
-rwxr-xr-xsd/source/ui/toolpanel/TestMenu.hxx84
-rwxr-xr-xsd/source/ui/toolpanel/TestPanel.cxx174
-rwxr-xr-xsd/source/ui/toolpanel/TestPanel.hxx57
-rwxr-xr-xsd/source/ui/toolpanel/TitleBar.cxx585
-rwxr-xr-xsd/source/ui/toolpanel/TitledControl.cxx432
-rwxr-xr-xsd/source/ui/toolpanel/ToolPanel.cxx113
-rw-r--r--sd/source/ui/toolpanel/ToolPanel.hxx80
-rw-r--r--sd/source/ui/toolpanel/ToolPanelDescriptor.hxx89
-rw-r--r--sd/source/ui/toolpanel/ToolPanelFactory.cxx255
-rw-r--r--sd/source/ui/toolpanel/ToolPanelUIElement.cxx134
-rw-r--r--sd/source/ui/toolpanel/ToolPanelUIElement.hxx87
-rwxr-xr-xsd/source/ui/toolpanel/ToolPanelViewShell.cxx901
-rw-r--r--sd/source/ui/toolpanel/controls/AllMasterPagesSelector.cxx208
-rw-r--r--sd/source/ui/toolpanel/controls/AllMasterPagesSelector.hxx94
-rwxr-xr-xsd/source/ui/toolpanel/controls/AnimationSchemesPanel.cxx170
-rwxr-xr-xsd/source/ui/toolpanel/controls/AnimationSchemesPanel.hxx138
-rw-r--r--sd/source/ui/toolpanel/controls/CurrentMasterPagesSelector.cxx343
-rw-r--r--sd/source/ui/toolpanel/controls/CurrentMasterPagesSelector.hxx83
-rwxr-xr-xsd/source/ui/toolpanel/controls/CustomAnimationPanel.cxx113
-rwxr-xr-xsd/source/ui/toolpanel/controls/CustomAnimationPanel.hxx81
-rwxr-xr-xsd/source/ui/toolpanel/controls/DocumentHelper.cxx585
-rw-r--r--sd/source/ui/toolpanel/controls/DocumentHelper.hxx116
-rwxr-xr-xsd/source/ui/toolpanel/controls/MasterPageContainer.cxx1220
-rwxr-xr-xsd/source/ui/toolpanel/controls/MasterPageContainer.hxx220
-rw-r--r--sd/source/ui/toolpanel/controls/MasterPageContainerFiller.cxx199
-rw-r--r--sd/source/ui/toolpanel/controls/MasterPageContainerFiller.hxx95
-rwxr-xr-xsd/source/ui/toolpanel/controls/MasterPageContainerProviders.cxx429
-rwxr-xr-xsd/source/ui/toolpanel/controls/MasterPageContainerProviders.hxx189
-rwxr-xr-xsd/source/ui/toolpanel/controls/MasterPageContainerQueue.cxx304
-rw-r--r--sd/source/ui/toolpanel/controls/MasterPageContainerQueue.hxx136
-rwxr-xr-xsd/source/ui/toolpanel/controls/MasterPageDescriptor.cxx423
-rwxr-xr-xsd/source/ui/toolpanel/controls/MasterPageDescriptor.hxx240
-rwxr-xr-xsd/source/ui/toolpanel/controls/MasterPageObserver.cxx426
-rwxr-xr-xsd/source/ui/toolpanel/controls/MasterPagesPanel.cxx158
-rwxr-xr-xsd/source/ui/toolpanel/controls/MasterPagesPanel.hxx72
-rwxr-xr-xsd/source/ui/toolpanel/controls/MasterPagesSelector.cxx854
-rwxr-xr-xsd/source/ui/toolpanel/controls/MasterPagesSelector.hxx236
-rw-r--r--sd/source/ui/toolpanel/controls/PreviewValueSet.cxx240
-rw-r--r--sd/source/ui/toolpanel/controls/PreviewValueSet.hxx96
-rw-r--r--sd/source/ui/toolpanel/controls/RecentMasterPagesSelector.cxx159
-rw-r--r--sd/source/ui/toolpanel/controls/RecentMasterPagesSelector.hxx76
-rw-r--r--sd/source/ui/toolpanel/controls/RecentlyUsedMasterPages.cxx501
-rw-r--r--sd/source/ui/toolpanel/controls/RecentlyUsedMasterPages.hxx128
-rwxr-xr-xsd/source/ui/toolpanel/controls/SlideTransitionPanel.cxx116
-rwxr-xr-xsd/source/ui/toolpanel/controls/SlideTransitionPanel.hxx81
-rwxr-xr-xsd/source/ui/toolpanel/controls/TableDesignPanel.cxx110
-rwxr-xr-xsd/source/ui/toolpanel/controls/TableDesignPanel.hxx81
-rwxr-xr-xsd/source/ui/toolpanel/controls/makefile.mk67
-rwxr-xr-xsd/source/ui/toolpanel/makefile.mk70
-rw-r--r--sd/source/ui/tools/AsynchronousCall.cxx82
-rwxr-xr-xsd/source/ui/tools/ConfigurationAccess.cxx230
-rw-r--r--sd/source/ui/tools/EventMultiplexer.cxx823
-rw-r--r--sd/source/ui/tools/IconCache.cxx133
-rw-r--r--sd/source/ui/tools/IdleDetection.cxx127
-rw-r--r--sd/source/ui/tools/PreviewRenderer.cxx607
-rwxr-xr-xsd/source/ui/tools/PropertySet.cxx232
-rwxr-xr-xsd/source/ui/tools/SdGlobalResourceContainer.cxx215
-rwxr-xr-xsd/source/ui/tools/SlotStateListener.cxx225
-rw-r--r--sd/source/ui/tools/TimerBasedTaskExecution.cxx180
-rw-r--r--sd/source/ui/tools/makefile.mk61
-rwxr-xr-xsd/source/ui/unoidl/DrawController.cxx938
-rwxr-xr-xsd/source/ui/unoidl/SdUnoDrawView.cxx644
-rwxr-xr-xsd/source/ui/unoidl/SdUnoOutlineView.cxx271
-rwxr-xr-xsd/source/ui/unoidl/SdUnoSlideView.cxx284
-rwxr-xr-xsd/source/ui/unoidl/UnoDocumentSettings.cxx1248
-rw-r--r--sd/source/ui/unoidl/UnoDocumentSettings.hxx40
-rwxr-xr-xsd/source/ui/unoidl/detreg.cxx89
-rwxr-xr-xsd/source/ui/unoidl/facreg.cxx514
-rwxr-xr-xsd/source/ui/unoidl/makefile.mk90
-rw-r--r--sd/source/ui/unoidl/randomnode.cxx703
-rwxr-xr-xsd/source/ui/unoidl/sddetect.cxx546
-rw-r--r--sd/source/ui/unoidl/sddetect.hxx95
-rwxr-xr-xsd/source/ui/unoidl/unocpres.cxx495
-rwxr-xr-xsd/source/ui/unoidl/unocpres.hxx169
-rw-r--r--sd/source/ui/unoidl/unodoc.cxx104
-rw-r--r--sd/source/ui/unoidl/unohelp.hxx59
-rw-r--r--sd/source/ui/unoidl/unokywds.cxx37
-rw-r--r--sd/source/ui/unoidl/unolayer.cxx832
-rw-r--r--sd/source/ui/unoidl/unolayer.hxx189
-rwxr-xr-xsd/source/ui/unoidl/unomodel.cxx3069
-rw-r--r--sd/source/ui/unoidl/unomodule.cxx163
-rw-r--r--sd/source/ui/unoidl/unomodule.hxx98
-rwxr-xr-xsd/source/ui/unoidl/unoobj.cxx1763
-rwxr-xr-xsd/source/ui/unoidl/unoobj.hxx138
-rwxr-xr-xsd/source/ui/unoidl/unopage.cxx3181
-rwxr-xr-xsd/source/ui/unoidl/unopage.hxx319
-rw-r--r--sd/source/ui/unoidl/unopback.cxx463
-rw-r--r--sd/source/ui/unoidl/unopback.hxx92
-rw-r--r--sd/source/ui/unoidl/unopool.cxx99
-rwxr-xr-xsd/source/ui/unoidl/unosrch.cxx879
-rwxr-xr-xsd/source/ui/unoidl/unowcntr.cxx125
-rwxr-xr-xsd/source/ui/unoidl/unowcntr.hxx58
-rwxr-xr-xsd/source/ui/view/DocumentRenderer.cxx2402
-rw-r--r--sd/source/ui/view/DocumentRenderer.hrc77
-rwxr-xr-xsd/source/ui/view/DocumentRenderer.src296
-rw-r--r--sd/source/ui/view/FormShellManager.cxx393
-rw-r--r--sd/source/ui/view/GraphicObjectBar.cxx185
-rwxr-xr-xsd/source/ui/view/GraphicViewShellBase.cxx138
-rwxr-xr-xsd/source/ui/view/ImpressViewShellBase.cxx128
-rw-r--r--sd/source/ui/view/MediaObjectBar.cxx166
-rwxr-xr-xsd/source/ui/view/OutlineViewShellBase.cxx92
-rwxr-xr-xsd/source/ui/view/Outliner.cxx1828
-rwxr-xr-xsd/source/ui/view/OutlinerIterator.cxx898
-rwxr-xr-xsd/source/ui/view/PresentationViewShellBase.cxx130
-rwxr-xr-xsd/source/ui/view/SlideSorterViewShellBase.cxx103
-rwxr-xr-xsd/source/ui/view/ToolBarManager.cxx1697
-rw-r--r--sd/source/ui/view/UpdateLockManager.cxx429
-rwxr-xr-xsd/source/ui/view/ViewClipboard.cxx278
-rw-r--r--sd/source/ui/view/ViewShellBase.cxx1787
-rw-r--r--sd/source/ui/view/ViewShellHint.cxx52
-rwxr-xr-xsd/source/ui/view/ViewShellImplementation.cxx449
-rwxr-xr-xsd/source/ui/view/ViewShellManager.cxx1467
-rwxr-xr-xsd/source/ui/view/ViewTabBar.cxx716
-rw-r--r--sd/source/ui/view/WindowUpdater.cxx189
-rwxr-xr-xsd/source/ui/view/bmcache.cxx78
-rw-r--r--sd/source/ui/view/clview.cxx107
-rwxr-xr-xsd/source/ui/view/drawview.cxx651
-rw-r--r--sd/source/ui/view/drbezob.cxx365
-rwxr-xr-xsd/source/ui/view/drtxtob.cxx591
-rwxr-xr-xsd/source/ui/view/drtxtob1.cxx612
-rwxr-xr-xsd/source/ui/view/drviews1.cxx1449
-rwxr-xr-xsd/source/ui/view/drviews2.cxx976
-rwxr-xr-xsd/source/ui/view/drviews3.cxx950
-rw-r--r--sd/source/ui/view/drviews4.cxx1007
-rwxr-xr-xsd/source/ui/view/drviews5.cxx746
-rwxr-xr-xsd/source/ui/view/drviews6.cxx742
-rwxr-xr-xsd/source/ui/view/drviews7.cxx1727
-rwxr-xr-xsd/source/ui/view/drviews8.cxx557
-rw-r--r--sd/source/ui/view/drviews9.cxx881
-rwxr-xr-xsd/source/ui/view/drviewsa.cxx860
-rw-r--r--sd/source/ui/view/drviewsb.cxx879
-rwxr-xr-xsd/source/ui/view/drviewsc.cxx990
-rw-r--r--sd/source/ui/view/drviewsd.cxx259
-rwxr-xr-xsd/source/ui/view/drviewse.cxx1684
-rwxr-xr-xsd/source/ui/view/drviewsf.cxx576
-rw-r--r--sd/source/ui/view/drviewsg.cxx296
-rw-r--r--sd/source/ui/view/drviewsh.cxx193
-rw-r--r--sd/source/ui/view/drviewsi.cxx207
-rw-r--r--sd/source/ui/view/drviewsj.cxx564
-rwxr-xr-xsd/source/ui/view/drvwshrg.cxx127
-rw-r--r--sd/source/ui/view/frmview.cxx1214
-rwxr-xr-xsd/source/ui/view/grviewsh.cxx156
-rw-r--r--sd/source/ui/view/makefile.mk123
-rwxr-xr-xsd/source/ui/view/outlnvs2.cxx648
-rwxr-xr-xsd/source/ui/view/outlnvsh.cxx2148
-rwxr-xr-xsd/source/ui/view/outlview.cxx2177
-rw-r--r--sd/source/ui/view/presvish.cxx188
-rw-r--r--sd/source/ui/view/sdruler.cxx226
-rwxr-xr-xsd/source/ui/view/sdview.cxx1316
-rw-r--r--sd/source/ui/view/sdview2.cxx1038
-rw-r--r--sd/source/ui/view/sdview3.cxx1485
-rwxr-xr-xsd/source/ui/view/sdview4.cxx637
-rwxr-xr-xsd/source/ui/view/sdview5.cxx114
-rwxr-xr-xsd/source/ui/view/sdwindow.cxx1210
-rw-r--r--sd/source/ui/view/tabcontr.cxx464
-rw-r--r--sd/source/ui/view/unmodpg.cxx249
-rwxr-xr-xsd/source/ui/view/viewoverlaymanager.cxx619
-rwxr-xr-xsd/source/ui/view/viewshe2.cxx1213
-rw-r--r--sd/source/ui/view/viewshe3.cxx447
-rwxr-xr-xsd/source/ui/view/viewshel.cxx1619
-rwxr-xr-xsd/source/ui/view/zoomlist.cxx197
-rw-r--r--sd/source/unotypes/makefile.mk53
-rwxr-xr-xsd/uiconfig/sdraw/menubar/menubar.xml332
-rw-r--r--sd/uiconfig/sdraw/statusbar/statusbar.xml12
-rw-r--r--sd/uiconfig/sdraw/toolbar/3dobjectsbar.xml13
-rw-r--r--sd/uiconfig/sdraw/toolbar/alignmentbar.xml11
-rw-r--r--sd/uiconfig/sdraw/toolbar/arrowsbar.xml16
-rw-r--r--sd/uiconfig/sdraw/toolbar/arrowshapes.xml34
-rw-r--r--sd/uiconfig/sdraw/toolbar/basicshapes.xml29
-rw-r--r--sd/uiconfig/sdraw/toolbar/bezierobjectbar.xml20
-rw-r--r--sd/uiconfig/sdraw/toolbar/calloutshapes.xml11
-rw-r--r--sd/uiconfig/sdraw/toolbar/choosemodebar.xml13
-rw-r--r--sd/uiconfig/sdraw/toolbar/colorbar.xml15
-rw-r--r--sd/uiconfig/sdraw/toolbar/commentsbar.xml11
-rw-r--r--sd/uiconfig/sdraw/toolbar/connectorsbar.xml35
-rw-r--r--sd/uiconfig/sdraw/toolbar/drawingobjectbar.xml21
-rw-r--r--sd/uiconfig/sdraw/toolbar/ellipsesbar.xml19
-rwxr-xr-xsd/uiconfig/sdraw/toolbar/extrusionobjectbar.xml16
-rw-r--r--sd/uiconfig/sdraw/toolbar/findbar.xml8
-rw-r--r--sd/uiconfig/sdraw/toolbar/flowchartshapes.xml36
-rwxr-xr-xsd/uiconfig/sdraw/toolbar/fontworkobjectbar.xml11
-rw-r--r--sd/uiconfig/sdraw/toolbar/fontworkshapetype.xml38
-rw-r--r--sd/uiconfig/sdraw/toolbar/formcontrols.xml26
-rw-r--r--sd/uiconfig/sdraw/toolbar/formdesign.xml29
-rw-r--r--sd/uiconfig/sdraw/toolbar/formsfilterbar.xml8
-rw-r--r--sd/uiconfig/sdraw/toolbar/formsnavigationbar.xml32
-rw-r--r--sd/uiconfig/sdraw/toolbar/formtextobjectbar.xml28
-rw-r--r--sd/uiconfig/sdraw/toolbar/fullscreenbar.xml5
-rw-r--r--sd/uiconfig/sdraw/toolbar/gluepointsobjectbar.xml20
-rw-r--r--sd/uiconfig/sdraw/toolbar/graffilterbar.xml17
-rw-r--r--sd/uiconfig/sdraw/toolbar/graphicobjectbar.xml17
-rw-r--r--sd/uiconfig/sdraw/toolbar/insertbar.xml20
-rw-r--r--sd/uiconfig/sdraw/toolbar/linesbar.xml13
-rw-r--r--sd/uiconfig/sdraw/toolbar/masterviewtoolbar.xml9
-rw-r--r--sd/uiconfig/sdraw/toolbar/mediaobjectbar.xml7
-rw-r--r--sd/uiconfig/sdraw/toolbar/moreformcontrols.xml23
-rw-r--r--sd/uiconfig/sdraw/toolbar/optimizetablebar.xml6
-rw-r--r--sd/uiconfig/sdraw/toolbar/optionsbar.xml25
-rw-r--r--sd/uiconfig/sdraw/toolbar/positionbar.xml13
-rw-r--r--sd/uiconfig/sdraw/toolbar/rectanglesbar.xml13
-rw-r--r--sd/uiconfig/sdraw/toolbar/standardbar.xml37
-rw-r--r--sd/uiconfig/sdraw/toolbar/starshapes.xml17
-rw-r--r--sd/uiconfig/sdraw/toolbar/symbolshapes.xml24
-rw-r--r--sd/uiconfig/sdraw/toolbar/tableobjectbar.xml31
-rw-r--r--sd/uiconfig/sdraw/toolbar/textbar.xml11
-rw-r--r--sd/uiconfig/sdraw/toolbar/textobjectbar.xml40
-rw-r--r--sd/uiconfig/sdraw/toolbar/toolbar.xml45
-rw-r--r--sd/uiconfig/sdraw/toolbar/viewerbar.xml18
-rw-r--r--sd/uiconfig/sdraw/toolbar/zoombar.xml16
-rwxr-xr-xsd/uiconfig/simpress/menubar/menubar.xml306
-rw-r--r--sd/uiconfig/simpress/statusbar/statusbar.xml12
-rw-r--r--sd/uiconfig/simpress/toolbar/3dobjectsbar.xml13
-rw-r--r--sd/uiconfig/simpress/toolbar/alignmentbar.xml11
-rw-r--r--sd/uiconfig/simpress/toolbar/arrowsbar.xml16
-rw-r--r--sd/uiconfig/simpress/toolbar/arrowshapes.xml34
-rw-r--r--sd/uiconfig/simpress/toolbar/basicshapes.xml29
-rw-r--r--sd/uiconfig/simpress/toolbar/bezierobjectbar.xml20
-rw-r--r--sd/uiconfig/simpress/toolbar/calloutshapes.xml11
-rw-r--r--sd/uiconfig/simpress/toolbar/choosemodebar.xml13
-rw-r--r--sd/uiconfig/simpress/toolbar/colorbar.xml15
-rw-r--r--sd/uiconfig/simpress/toolbar/commentsbar.xml11
-rwxr-xr-xsd/uiconfig/simpress/toolbar/commontaskbar.xml11
-rw-r--r--sd/uiconfig/simpress/toolbar/connectorsbar.xml35
-rw-r--r--sd/uiconfig/simpress/toolbar/drawingobjectbar.xml21
-rw-r--r--sd/uiconfig/simpress/toolbar/ellipsesbar.xml19
-rwxr-xr-xsd/uiconfig/simpress/toolbar/extrusionobjectbar.xml16
-rw-r--r--sd/uiconfig/simpress/toolbar/findbar.xml8
-rw-r--r--sd/uiconfig/simpress/toolbar/flowchartshapes.xml36
-rwxr-xr-xsd/uiconfig/simpress/toolbar/fontworkobjectbar.xml11
-rw-r--r--sd/uiconfig/simpress/toolbar/fontworkshapetype.xml38
-rw-r--r--sd/uiconfig/simpress/toolbar/formcontrols.xml26
-rw-r--r--sd/uiconfig/simpress/toolbar/formdesign.xml29
-rw-r--r--sd/uiconfig/simpress/toolbar/formsfilterbar.xml8
-rw-r--r--sd/uiconfig/simpress/toolbar/formsnavigationbar.xml32
-rw-r--r--sd/uiconfig/simpress/toolbar/formtextobjectbar.xml28
-rw-r--r--sd/uiconfig/simpress/toolbar/fullscreenbar.xml5
-rw-r--r--sd/uiconfig/simpress/toolbar/gluepointsobjectbar.xml20
-rw-r--r--sd/uiconfig/simpress/toolbar/graffilterbar.xml17
-rw-r--r--sd/uiconfig/simpress/toolbar/graphicobjectbar.xml17
-rwxr-xr-xsd/uiconfig/simpress/toolbar/insertbar.xml20
-rw-r--r--sd/uiconfig/simpress/toolbar/linesbar.xml13
-rw-r--r--sd/uiconfig/simpress/toolbar/masterviewtoolbar.xml9
-rw-r--r--sd/uiconfig/simpress/toolbar/mediaobjectbar.xml7
-rw-r--r--sd/uiconfig/simpress/toolbar/moreformcontrols.xml23
-rw-r--r--sd/uiconfig/simpress/toolbar/optimizetablebar.xml6
-rw-r--r--sd/uiconfig/simpress/toolbar/optionsbar.xml25
-rw-r--r--sd/uiconfig/simpress/toolbar/outlinetoolbar.xml13
-rw-r--r--sd/uiconfig/simpress/toolbar/positionbar.xml13
-rw-r--r--sd/uiconfig/simpress/toolbar/rectanglesbar.xml13
-rw-r--r--sd/uiconfig/simpress/toolbar/slideviewobjectbar.xml10
-rw-r--r--sd/uiconfig/simpress/toolbar/slideviewtoolbar.xml7
-rw-r--r--sd/uiconfig/simpress/toolbar/standardbar.xml39
-rw-r--r--sd/uiconfig/simpress/toolbar/starshapes.xml17
-rw-r--r--sd/uiconfig/simpress/toolbar/symbolshapes.xml24
-rw-r--r--sd/uiconfig/simpress/toolbar/tableobjectbar.xml31
-rw-r--r--sd/uiconfig/simpress/toolbar/textbar.xml11
-rw-r--r--sd/uiconfig/simpress/toolbar/textobjectbar.xml45
-rw-r--r--sd/uiconfig/simpress/toolbar/toolbar.xml49
-rw-r--r--sd/uiconfig/simpress/toolbar/viewerbar.xml20
-rw-r--r--sd/uiconfig/simpress/toolbar/zoombar.xml16
-rwxr-xr-xsd/util/exports.dxp2
-rw-r--r--sd/util/hidother.hrc43
-rwxr-xr-xsd/util/hidother.src182
-rwxr-xr-xsd/util/makefile.mk291
-rw-r--r--sd/util/makefile.pmk32
-rw-r--r--sd/util/sd.component102
-rw-r--r--sd/util/sd.flt136
-rw-r--r--sd/util/sdd.component34
-rw-r--r--sd/util/sdfilt.map8
-rw-r--r--sd/util/sdui.map6
-rw-r--r--sd/workben/custompanel/ctp_panel.cxx249
-rw-r--r--sd/workben/custompanel/ctp_panel.hxx99
-rw-r--r--sd/workben/testdll/makefile101
-rw-r--r--sd/xml/AccessibleDrawDocumentView.xml41
-rw-r--r--sd/xml/AccessibleOutlineView.xml39
-rw-r--r--sd/xml/AccessiblePageShape.xml39
-rw-r--r--sd/xml/AccessiblePresentationGraphicShape.xml40
-rw-r--r--sd/xml/AccessiblePresentationOLEShape.xml40
-rw-r--r--sd/xml/AccessiblePresentationShape.xml38
-rw-r--r--sd/xml/AccessibleSlideView.xml35
-rw-r--r--sd/xml/AccessibleSlideViewObject.xml34
-rw-r--r--sd/xml/DrawingView.xml17
-rw-r--r--sd/xml/HandoutView.xml17
-rw-r--r--sd/xml/NotesView.xml17
-rw-r--r--sd/xml/OutlineView.xml17
-rw-r--r--sd/xml/PresentationView.xml17
-rw-r--r--sd/xml/SdDocLinkTargets.xml16
-rw-r--r--sd/xml/SdDrawPage.xml16
-rw-r--r--sd/xml/SdDrawPagesAccess.xml16
-rw-r--r--sd/xml/SdGenericDrawPage.xml16
-rw-r--r--sd/xml/SdLayer.xml16
-rw-r--r--sd/xml/SdLayerManager.xml16
-rw-r--r--sd/xml/SdMasterPage.xml16
-rw-r--r--sd/xml/SdMasterPagesAccess.xml16
-rw-r--r--sd/xml/SdPageLinkTargets.xml16
-rw-r--r--sd/xml/SdXCustomPresentation.xml16
-rw-r--r--sd/xml/SdXCustomPresentationAccess.xml16
-rw-r--r--sd/xml/SdXImpressDocument.xml16
-rw-r--r--sd/xml/SdXPresentation.xml16
-rw-r--r--sd/xml/SdXShape.xml16
-rw-r--r--sd/xml/SlidesView.xml17
-rw-r--r--sd/xml/effects.xml2630
-rw-r--r--sd/xml/transitions-ogl.xml33
-rw-r--r--sd/xml/transitions.xml222
-rw-r--r--sd/xsl/effect.xsl563
-rw-r--r--sdext/inc/makefile.mk47
-rw-r--r--sdext/inc/pch/precompiled_sdext.cxx29
-rw-r--r--sdext/inc/pch/precompiled_sdext.hxx32
-rw-r--r--sdext/prj/build.lst19
-rw-r--r--sdext/prj/d.lst10
-rw-r--r--sdext/source/minimizer/basic.txt89
-rw-r--r--sdext/source/minimizer/configurationaccess.cxx537
-rw-r--r--sdext/source/minimizer/configurationaccess.hxx139
-rw-r--r--sdext/source/minimizer/delzip1
-rwxr-xr-xsdext/source/minimizer/description.xml37
-rw-r--r--sdext/source/minimizer/fileopendialog.cxx209
-rw-r--r--sdext/source/minimizer/fileopendialog.hxx72
-rw-r--r--sdext/source/minimizer/graphiccollector.cxx460
-rw-r--r--sdext/source/minimizer/graphiccollector.hxx105
-rwxr-xr-xsdext/source/minimizer/help/component.txt2
-rw-r--r--sdext/source/minimizer/help/help_de.odtbin0 -> 8987 bytes-rw-r--r--sdext/source/minimizer/help/help_en-US.odtbin0 -> 8987 bytes-rw-r--r--sdext/source/minimizer/impoptimizer.cxx772
-rw-r--r--sdext/source/minimizer/impoptimizer.hxx87
-rw-r--r--sdext/source/minimizer/informationdialog.cxx408
-rw-r--r--sdext/source/minimizer/informationdialog.hxx99
-rw-r--r--sdext/source/minimizer/makefile.mk153
-rw-r--r--sdext/source/minimizer/manifest.xml16
-rw-r--r--sdext/source/minimizer/minimizer.pmk28
-rw-r--r--sdext/source/minimizer/optimizationstats.cxx102
-rw-r--r--sdext/source/minimizer/optimizationstats.hxx63
-rw-r--r--sdext/source/minimizer/optimizerdialog.cxx839
-rw-r--r--sdext/source/minimizer/optimizerdialog.hrc36
-rw-r--r--sdext/source/minimizer/optimizerdialog.hxx249
-rw-r--r--sdext/source/minimizer/optimizerdialogcontrols.cxx960
-rw-r--r--sdext/source/minimizer/pagecollector.cxx180
-rw-r--r--sdext/source/minimizer/pagecollector.hxx49
-rw-r--r--sdext/source/minimizer/pppoptimizer.cxx209
-rw-r--r--sdext/source/minimizer/pppoptimizer.hxx100
-rw-r--r--sdext/source/minimizer/pppoptimizerdialog.cxx217
-rw-r--r--sdext/source/minimizer/pppoptimizerdialog.hxx111
-rw-r--r--sdext/source/minimizer/pppoptimizertoken.cxx338
-rw-r--r--sdext/source/minimizer/pppoptimizertoken.hxx283
-rw-r--r--sdext/source/minimizer/pppoptimizeruno.cxx120
-rw-r--r--sdext/source/minimizer/registry/data/org/openoffice/Office/Addons.xcu65
-rw-r--r--sdext/source/minimizer/registry/data/org/openoffice/Office/ProtocolHandler.xcu10
-rw-r--r--sdext/source/minimizer/registry/data/org/openoffice/Office/extension/SunPresentationMinimizer.xcu383
-rw-r--r--sdext/source/minimizer/registry/data/org/openoffice/Office/extension/makefile.mk50
-rw-r--r--sdext/source/minimizer/registry/data/org/openoffice/Office/makefile.mk48
-rw-r--r--sdext/source/minimizer/registry/schema/org/openoffice/Office/extension/SunPresentationMinimizer.xcs326
-rw-r--r--sdext/source/minimizer/unodialog.cxx452
-rw-r--r--sdext/source/minimizer/unodialog.hxx149
-rwxr-xr-xsdext/source/pdfimport/config/description.xml36
-rw-r--r--sdext/source/pdfimport/config/manifest.xml16
-rw-r--r--sdext/source/pdfimport/config/pdf_import_filter.xcu199
-rw-r--r--sdext/source/pdfimport/config/pdf_types.xcu18
-rw-r--r--sdext/source/pdfimport/delzip1
-rw-r--r--sdext/source/pdfimport/dialogs/Module1.xba7
-rw-r--r--sdext/source/pdfimport/dialogs/TargetChooser.xdl21
-rw-r--r--sdext/source/pdfimport/dialogs/dialog.xlb5
-rw-r--r--sdext/source/pdfimport/dialogs/impress.pngbin0 -> 11117 bytes-rw-r--r--sdext/source/pdfimport/dialogs/script.xlb5
-rw-r--r--sdext/source/pdfimport/dialogs/writer.pngbin0 -> 10176 bytes-rwxr-xr-xsdext/source/pdfimport/dialogs/xpdfimport_err.pdfbin0 -> 21204 bytes-rw-r--r--sdext/source/pdfimport/filterdet.cxx776
-rw-r--r--sdext/source/pdfimport/filterdet.hxx114
-rwxr-xr-xsdext/source/pdfimport/help/component.txt1
-rwxr-xr-xsdext/source/pdfimport/inc/contentsink.hxx184
-rw-r--r--sdext/source/pdfimport/inc/odfemitter.hxx45
-rwxr-xr-xsdext/source/pdfimport/inc/pdfihelper.hxx200
-rw-r--r--sdext/source/pdfimport/inc/pdfparse.hxx309
-rw-r--r--sdext/source/pdfimport/inc/saxemitter.hxx46
-rw-r--r--sdext/source/pdfimport/inc/treevisitorfactory.hxx67
-rwxr-xr-xsdext/source/pdfimport/inc/wrapper.hxx63
-rw-r--r--sdext/source/pdfimport/inc/xmlemitter.hxx60
-rw-r--r--sdext/source/pdfimport/makefile.mk155
-rw-r--r--sdext/source/pdfimport/misc/makefile.mk51
-rw-r--r--sdext/source/pdfimport/misc/pdfihelper.cxx80
-rw-r--r--sdext/source/pdfimport/misc/pwdinteract.cxx163
-rw-r--r--sdext/source/pdfimport/odf/makefile.mk50
-rw-r--r--sdext/source/pdfimport/odf/odfemitter.cxx136
-rw-r--r--sdext/source/pdfimport/pdfiadaptor.cxx329
-rw-r--r--sdext/source/pdfimport/pdfiadaptor.hxx138
-rw-r--r--sdext/source/pdfimport/pdfisettings.pmk28
-rw-r--r--sdext/source/pdfimport/pdfparse/makefile.mk58
-rw-r--r--sdext/source/pdfimport/pdfparse/pdfentries.cxx1364
-rw-r--r--sdext/source/pdfimport/pdfparse/pdfparse.cxx701
-rw-r--r--sdext/source/pdfimport/sax/emitcontext.cxx190
-rw-r--r--sdext/source/pdfimport/sax/emitcontext.hxx60
-rw-r--r--sdext/source/pdfimport/sax/makefile.mk51
-rw-r--r--sdext/source/pdfimport/sax/saxattrlist.cxx104
-rw-r--r--sdext/source/pdfimport/sax/saxattrlist.hxx76
-rw-r--r--sdext/source/pdfimport/services.cxx188
-rwxr-xr-xsdext/source/pdfimport/test/export.map34
-rwxr-xr-xsdext/source/pdfimport/test/makefile.mk166
-rw-r--r--sdext/source/pdfimport/test/outputwrap.hxx72
-rw-r--r--sdext/source/pdfimport/test/pdf2xml.cxx105
-rw-r--r--sdext/source/pdfimport/test/pdfunzip.cxx538
-rw-r--r--sdext/source/pdfimport/test/testdocs/graphicformats.pdfbin0 -> 27149 bytes-rw-r--r--sdext/source/pdfimport/test/testdocs/graphicformats_pdfi_unittest_draw.xml242
-rw-r--r--sdext/source/pdfimport/test/testdocs/graphicformats_pdfi_unittest_impress.xml242
-rw-r--r--sdext/source/pdfimport/test/testdocs/graphicformats_pdfi_unittest_writer.xml368
-rw-r--r--sdext/source/pdfimport/test/testdocs/makefile.mk81
-rw-r--r--sdext/source/pdfimport/test/testdocs/pictxt.pdfbin0 -> 24475 bytes-rw-r--r--sdext/source/pdfimport/test/testdocs/pictxt_pdfi_unittest_draw.xml3379
-rw-r--r--sdext/source/pdfimport/test/testdocs/pictxt_pdfi_unittest_impress.xml3379
-rw-r--r--sdext/source/pdfimport/test/testdocs/pictxt_pdfi_unittest_writer.xml533
-rw-r--r--sdext/source/pdfimport/test/testdocs/txtpic.pdfbin0 -> 24486 bytes-rw-r--r--sdext/source/pdfimport/test/testdocs/txtpic_pdfi_unittest_draw.xml3379
-rw-r--r--sdext/source/pdfimport/test/testdocs/txtpic_pdfi_unittest_impress.xml3379
-rw-r--r--sdext/source/pdfimport/test/testdocs/txtpic_pdfi_unittest_writer.xml533
-rw-r--r--sdext/source/pdfimport/test/testdocs/txtpictxt.pdfbin0 -> 24484 bytes-rw-r--r--sdext/source/pdfimport/test/testdocs/txtpictxt_pdfi_unittest_draw.xml3379
-rw-r--r--sdext/source/pdfimport/test/testdocs/txtpictxt_pdfi_unittest_impress.xml3379
-rw-r--r--sdext/source/pdfimport/test/testdocs/txtpictxt_pdfi_unittest_writer.xml533
-rw-r--r--sdext/source/pdfimport/test/testdocs/verticaltext.pdfbin0 -> 16533 bytes-rw-r--r--sdext/source/pdfimport/test/testdocs/verticaltext_pdfi_unittest_draw.xml216
-rw-r--r--sdext/source/pdfimport/test/testdocs/verticaltext_pdfi_unittest_impress.xml216
-rw-r--r--sdext/source/pdfimport/test/testdocs/verticaltext_pdfi_unittest_writer.xml339
-rwxr-xr-xsdext/source/pdfimport/test/testinput.odpbin0 -> 40660 bytes-rwxr-xr-xsdext/source/pdfimport/test/testinput.pdfbin0 -> 67103 bytes-rwxr-xr-xsdext/source/pdfimport/test/tests.cxx579
-rw-r--r--sdext/source/pdfimport/tree/drawtreevisiting.cxx1097
-rw-r--r--sdext/source/pdfimport/tree/drawtreevisiting.hxx120
-rw-r--r--sdext/source/pdfimport/tree/genericelements.cxx489
-rw-r--r--sdext/source/pdfimport/tree/genericelements.hxx323
-rw-r--r--sdext/source/pdfimport/tree/imagecontainer.cxx153
-rw-r--r--sdext/source/pdfimport/tree/imagecontainer.hxx61
-rw-r--r--sdext/source/pdfimport/tree/makefile.mk56
-rw-r--r--sdext/source/pdfimport/tree/pdfiprocessor.cxx1049
-rw-r--r--sdext/source/pdfimport/tree/pdfiprocessor.hxx294
-rw-r--r--sdext/source/pdfimport/tree/style.cxx257
-rw-r--r--sdext/source/pdfimport/tree/style.hxx181
-rw-r--r--sdext/source/pdfimport/tree/treevisiting.hxx80
-rw-r--r--sdext/source/pdfimport/tree/treevisitorfactory.cxx118
-rw-r--r--sdext/source/pdfimport/tree/writertreevisiting.cxx1218
-rw-r--r--sdext/source/pdfimport/tree/writertreevisiting.hxx116
-rwxr-xr-xsdext/source/pdfimport/wrapper/hash.cxx214
-rwxr-xr-xsdext/source/pdfimport/wrapper/keyword_list53
-rwxr-xr-xsdext/source/pdfimport/wrapper/makefile.mk53
-rwxr-xr-xsdext/source/pdfimport/wrapper/wrapper.cxx1112
-rw-r--r--sdext/source/pdfimport/xpdftest/binary_0_out.defbin0 -> 80097 bytes-rw-r--r--sdext/source/pdfimport/xpdftest/binary_1_out.defbin0 -> 75159156 bytes-rw-r--r--sdext/source/pdfimport/xpdftest/book.pdfbin0 -> 463628 bytes-rw-r--r--sdext/source/pdfimport/xpdftest/makefile.mk59
-rw-r--r--sdext/source/pdfimport/xpdftest/testinput.odpbin0 -> 44591 bytes-rw-r--r--sdext/source/pdfimport/xpdftest/testinput.pdfbin0 -> 64488 bytes-rw-r--r--sdext/source/pdfimport/xpdftest/text_0_out.def202
-rw-r--r--sdext/source/pdfimport/xpdftest/text_1_out.def70338
-rw-r--r--sdext/source/pdfimport/xpdfwrapper/makefile.mk82
-rw-r--r--sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx948
-rw-r--r--sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx290
-rw-r--r--sdext/source/pdfimport/xpdfwrapper/pnghelper.cxx415
-rw-r--r--sdext/source/pdfimport/xpdfwrapper/pnghelper.hxx92
-rw-r--r--sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx214
-rwxr-xr-xsdext/source/presenter/PresenterAccessibility.cxx2487
-rwxr-xr-xsdext/source/presenter/PresenterAccessibility.hxx156
-rw-r--r--sdext/source/presenter/PresenterAnimation.cxx140
-rw-r--r--sdext/source/presenter/PresenterAnimation.hxx130
-rw-r--r--sdext/source/presenter/PresenterAnimator.cxx171
-rw-r--r--sdext/source/presenter/PresenterAnimator.hxx72
-rw-r--r--sdext/source/presenter/PresenterBitmapContainer.cxx498
-rw-r--r--sdext/source/presenter/PresenterBitmapContainer.hxx165
-rw-r--r--sdext/source/presenter/PresenterButton.cxx612
-rw-r--r--sdext/source/presenter/PresenterButton.hxx185
-rw-r--r--sdext/source/presenter/PresenterCanvasHelper.cxx328
-rw-r--r--sdext/source/presenter/PresenterCanvasHelper.hxx119
-rw-r--r--sdext/source/presenter/PresenterClock.cxx1449
-rw-r--r--sdext/source/presenter/PresenterClock.hxx199
-rw-r--r--sdext/source/presenter/PresenterComponent.cxx150
-rw-r--r--sdext/source/presenter/PresenterComponent.hxx55
-rw-r--r--sdext/source/presenter/PresenterConfigurationAccess.cxx410
-rw-r--r--sdext/source/presenter/PresenterConfigurationAccess.hxx205
-rw-r--r--sdext/source/presenter/PresenterController.cxx1378
-rw-r--r--sdext/source/presenter/PresenterController.hxx267
-rw-r--r--sdext/source/presenter/PresenterCurrentSlideObserver.cxx154
-rw-r--r--sdext/source/presenter/PresenterCurrentSlideObserver.hxx95
-rw-r--r--sdext/source/presenter/PresenterExtensionIdentifier.txx41
-rw-r--r--sdext/source/presenter/PresenterFrameworkObserver.cxx213
-rw-r--r--sdext/source/presenter/PresenterFrameworkObserver.hxx130
-rw-r--r--sdext/source/presenter/PresenterGeometryHelper.cxx334
-rw-r--r--sdext/source/presenter/PresenterGeometryHelper.hxx131
-rw-r--r--sdext/source/presenter/PresenterHelpView.cxx823
-rw-r--r--sdext/source/presenter/PresenterHelpView.hxx143
-rw-r--r--sdext/source/presenter/PresenterHelper.cxx93
-rw-r--r--sdext/source/presenter/PresenterHelper.hxx77
-rw-r--r--sdext/source/presenter/PresenterNotesView.cxx807
-rw-r--r--sdext/source/presenter/PresenterNotesView.hxx197
-rw-r--r--sdext/source/presenter/PresenterPaintManager.cxx175
-rw-r--r--sdext/source/presenter/PresenterPaintManager.hxx96
-rw-r--r--sdext/source/presenter/PresenterPane.cxx234
-rw-r--r--sdext/source/presenter/PresenterPane.hxx118
-rw-r--r--sdext/source/presenter/PresenterPaneAnimator.cxx1424
-rw-r--r--sdext/source/presenter/PresenterPaneAnimator.hxx94
-rw-r--r--sdext/source/presenter/PresenterPaneBase.cxx558
-rw-r--r--sdext/source/presenter/PresenterPaneBase.hxx173
-rw-r--r--sdext/source/presenter/PresenterPaneBorderManager.cxx582
-rw-r--r--sdext/source/presenter/PresenterPaneBorderManager.hxx174
-rw-r--r--sdext/source/presenter/PresenterPaneBorderPainter.cxx1101
-rw-r--r--sdext/source/presenter/PresenterPaneBorderPainter.hxx163
-rw-r--r--sdext/source/presenter/PresenterPaneContainer.cxx447
-rw-r--r--sdext/source/presenter/PresenterPaneContainer.hxx197
-rw-r--r--sdext/source/presenter/PresenterPaneFactory.cxx378
-rw-r--r--sdext/source/presenter/PresenterPaneFactory.hxx139
-rw-r--r--sdext/source/presenter/PresenterProtocolHandler.cxx1001
-rw-r--r--sdext/source/presenter/PresenterProtocolHandler.hxx103
-rw-r--r--sdext/source/presenter/PresenterScreen.cxx927
-rw-r--r--sdext/source/presenter/PresenterScreen.hxx247
-rw-r--r--sdext/source/presenter/PresenterScrollBar.cxx1345
-rw-r--r--sdext/source/presenter/PresenterScrollBar.hxx337
-rw-r--r--sdext/source/presenter/PresenterSlidePreview.cxx427
-rw-r--r--sdext/source/presenter/PresenterSlidePreview.hxx173
-rw-r--r--sdext/source/presenter/PresenterSlideShowView.cxx1156
-rw-r--r--sdext/source/presenter/PresenterSlideShowView.hxx297
-rw-r--r--sdext/source/presenter/PresenterSlideSorter.cxx2321
-rw-r--r--sdext/source/presenter/PresenterSlideSorter.hxx233
-rw-r--r--sdext/source/presenter/PresenterSprite.cxx289
-rw-r--r--sdext/source/presenter/PresenterSprite.hxx99
-rw-r--r--sdext/source/presenter/PresenterSpritePane.cxx260
-rw-r--r--sdext/source/presenter/PresenterSpritePane.hxx126
-rwxr-xr-xsdext/source/presenter/PresenterTextView.cxx1597
-rwxr-xr-xsdext/source/presenter/PresenterTextView.hxx319
-rw-r--r--sdext/source/presenter/PresenterTheme.cxx1414
-rw-r--r--sdext/source/presenter/PresenterTheme.hxx157
-rw-r--r--sdext/source/presenter/PresenterTimer.cxx678
-rw-r--r--sdext/source/presenter/PresenterTimer.hxx143
-rw-r--r--sdext/source/presenter/PresenterToolBar.cxx2458
-rw-r--r--sdext/source/presenter/PresenterToolBar.hxx315
-rw-r--r--sdext/source/presenter/PresenterUIPainter.cxx256
-rw-r--r--sdext/source/presenter/PresenterUIPainter.hxx70
-rw-r--r--sdext/source/presenter/PresenterViewFactory.cxx653
-rw-r--r--sdext/source/presenter/PresenterViewFactory.hxx186
-rw-r--r--sdext/source/presenter/PresenterWindowManager.cxx1641
-rw-r--r--sdext/source/presenter/PresenterWindowManager.hxx259
-rw-r--r--sdext/source/presenter/bitmaps/Background.pngbin0 -> 3474 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderActiveBottom.pngbin0 -> 214 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderActiveBottomCallout.pngbin0 -> 1425 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderActiveBottomLeft.pngbin0 -> 598 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderActiveBottomRight.pngbin0 -> 626 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderActiveLeft.pngbin0 -> 145 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderActiveRight.pngbin0 -> 141 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderActiveTop.pngbin0 -> 148 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderActiveTopLeft.pngbin0 -> 442 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderActiveTopRight.pngbin0 -> 438 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderBottom.pngbin0 -> 164 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderBottomLeft.pngbin0 -> 576 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderBottomRight.pngbin0 -> 587 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderCurrentSlideBottom.pngbin0 -> 140 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderCurrentSlideBottomLeft.pngbin0 -> 161 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderCurrentSlideBottomRight.pngbin0 -> 159 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderCurrentSlideLeft.pngbin0 -> 140 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderCurrentSlideRight.pngbin0 -> 140 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderCurrentSlideTop.pngbin0 -> 140 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderCurrentSlideTopLeft.pngbin0 -> 164 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderCurrentSlideTopRight.pngbin0 -> 164 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderLeft.pngbin0 -> 147 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderRight.pngbin0 -> 177 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderToolbarBottom.pngbin0 -> 112 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderToolbarLeft.pngbin0 -> 119 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderToolbarRight.pngbin0 -> 121 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderToolbarTop.pngbin0 -> 120 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderToolbarTopLeft.pngbin0 -> 268 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderToolbarTopRight.pngbin0 -> 244 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderTop.pngbin0 -> 174 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderTopLeft.pngbin0 -> 426 bytes-rw-r--r--sdext/source/presenter/bitmaps/BorderTopRight.pngbin0 -> 414 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonEffectNextDisabled.pngbin0 -> 258 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonEffectNextMouseOver.pngbin0 -> 259 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonEffectNextNormal.pngbin0 -> 262 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonEffectNextSelected.pngbin0 -> 257 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonFrameCenterMouseOver.pngbin0 -> 131 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonFrameCenterNormal.pngbin0 -> 138 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonFrameLeftMouseOver.pngbin0 -> 166 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonFrameLeftNormal.pngbin0 -> 166 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonFrameRightMouseOver.pngbin0 -> 163 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonFrameRightNormal.pngbin0 -> 163 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonHelpDisabled.pngbin0 -> 543 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonHelpMouseOver.pngbin0 -> 538 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonHelpNormal.pngbin0 -> 550 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonHelpSelected.pngbin0 -> 623 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonMinusDisabled.pngbin0 -> 243 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonMinusMouseOver.pngbin0 -> 239 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonMinusNormal.pngbin0 -> 244 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonMinusSelected.pngbin0 -> 245 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonNotesDisabled.pngbin0 -> 321 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonNotesMouseOver.pngbin0 -> 314 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonNotesNormal.pngbin0 -> 324 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonNotesSelected.pngbin0 -> 318 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonPlusDisabled.pngbin0 -> 277 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonPlusMouseOver.pngbin0 -> 275 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonPlusNormal.pngbin0 -> 279 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonPlusSelected.pngbin0 -> 280 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonSlideNextDisabled.pngbin0 -> 246 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonSlideNextMouseOver.pngbin0 -> 250 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonSlideNextNormal.pngbin0 -> 250 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonSlidePreviousDisabled.pngbin0 -> 270 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonSlidePreviousMouseOver.pngbin0 -> 263 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonSlidePreviousNormal.pngbin0 -> 271 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonSlidePreviousSelected.pngbin0 -> 270 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonSlideSorterDisabled.pngbin0 -> 342 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonSlideSorterMouseOver.pngbin0 -> 338 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonSlideSorterNormal.pngbin0 -> 347 bytes-rw-r--r--sdext/source/presenter/bitmaps/ButtonSlideSorterSelected.pngbin0 -> 338 bytes-rw-r--r--sdext/source/presenter/bitmaps/LabelMouseOverCenter.pngbin0 -> 208 bytes-rw-r--r--sdext/source/presenter/bitmaps/LabelMouseOverLeft.pngbin0 -> 157 bytes-rw-r--r--sdext/source/presenter/bitmaps/LabelMouseOverRight.pngbin0 -> 154 bytes-rw-r--r--sdext/source/presenter/bitmaps/ScrollbarArrowDownDisabled.pngbin0 -> 324 bytes-rw-r--r--sdext/source/presenter/bitmaps/ScrollbarArrowDownMouseOver.pngbin0 -> 324 bytes-rw-r--r--sdext/source/presenter/bitmaps/ScrollbarArrowDownNormal.pngbin0 -> 331 bytes-rw-r--r--sdext/source/presenter/bitmaps/ScrollbarArrowDownSelected.pngbin0 -> 369 bytes-rw-r--r--sdext/source/presenter/bitmaps/ScrollbarArrowUpDisabled.pngbin0 -> 319 bytes-rw-r--r--sdext/source/presenter/bitmaps/ScrollbarArrowUpMouseOver.pngbin0 -> 323 bytes-rw-r--r--sdext/source/presenter/bitmaps/ScrollbarArrowUpNormal.pngbin0 -> 329 bytes-rw-r--r--sdext/source/presenter/bitmaps/ScrollbarArrowUpSelected.pngbin0 -> 365 bytes-rw-r--r--sdext/source/presenter/bitmaps/ScrollbarPagerMiddleMouseOver.pngbin0 -> 125 bytes-rw-r--r--sdext/source/presenter/bitmaps/ScrollbarPagerMiddleNormal.pngbin0 -> 119 bytes-rw-r--r--sdext/source/presenter/bitmaps/ScrollbarThumbBottomMouseOver.pngbin0 -> 120 bytes-rw-r--r--sdext/source/presenter/bitmaps/ScrollbarThumbBottomNormal.pngbin0 -> 120 bytes-rw-r--r--sdext/source/presenter/bitmaps/ScrollbarThumbMiddleMouseOver.pngbin0 -> 118 bytes-rw-r--r--sdext/source/presenter/bitmaps/ScrollbarThumbMiddleNormal.pngbin0 -> 118 bytes-rw-r--r--sdext/source/presenter/bitmaps/ScrollbarThumbTopMouseOver.pngbin0 -> 120 bytes-rw-r--r--sdext/source/presenter/bitmaps/ScrollbarThumbTopNormal.pngbin0 -> 120 bytes-rw-r--r--sdext/source/presenter/bitmaps/ViewBackground.pngbin0 -> 177 bytes-rw-r--r--sdext/source/presenter/delzip1
-rwxr-xr-xsdext/source/presenter/description.xml37
-rwxr-xr-xsdext/source/presenter/help/component.txt2
-rw-r--r--sdext/source/presenter/help/en-US/com.sun.PresenterScreen/makefile.mk51
-rw-r--r--sdext/source/presenter/help/en-US/com.sun.PresenterScreen/presenter.xhp186
-rw-r--r--sdext/source/presenter/makefile.mk405
-rw-r--r--sdext/source/presenter/manifest.xml18
-rw-r--r--sdext/source/presenter/registry/data/org/openoffice/Office/Jobs.xcu17
-rw-r--r--sdext/source/presenter/registry/data/org/openoffice/Office/ProtocolHandler.xcu10
-rw-r--r--sdext/source/presenter/registry/data/org/openoffice/Office/extension/PresenterScreen.xcu1224
-rw-r--r--sdext/source/presenter/registry/data/org/openoffice/Office/extension/makefile.mk51
-rw-r--r--sdext/source/presenter/registry/data/org/openoffice/Office/makefile.mk48
-rw-r--r--sdext/source/presenter/registry/schema/org/openoffice/Office/extension/PresenterScreen.xcs469
-rw-r--r--sdext/util/makefile.pmk37
-rw-r--r--set_soenv.in2577
-rw-r--r--setup_native/inc/setup_native/qswin32.h49
-rw-r--r--setup_native/prj/build.lst20
-rw-r--r--setup_native/prj/d.lst63
-rw-r--r--setup_native/scripts/admin.pl1443
-rw-r--r--setup_native/scripts/deregister_extensions78
-rw-r--r--setup_native/scripts/downloadscript.sh87
-rw-r--r--setup_native/scripts/fake-db.spec38
-rwxr-xr-xsetup_native/scripts/install_create.pl44
-rw-r--r--setup_native/scripts/install_linux.sh301
-rw-r--r--setup_native/scripts/install_solaris.sh364
-rw-r--r--setup_native/scripts/javaloader.sh498
-rw-r--r--setup_native/scripts/langpackscript.sh153
-rw-r--r--setup_native/scripts/linuxpatchscript.sh84
-rw-r--r--setup_native/scripts/mac_install.script10
-rw-r--r--setup_native/scripts/makefile.mk103
-rw-r--r--setup_native/scripts/osx_install_languagepack.applescript115
-rw-r--r--setup_native/scripts/osx_install_patch.applescript113
-rw-r--r--setup_native/scripts/register_extensions84
-rw-r--r--setup_native/scripts/source/getuid.c135
-rw-r--r--setup_native/scripts/source/makefile.mk90
-rw-r--r--setup_native/scripts/stclient_wrapper.sh66
-rw-r--r--setup_native/scripts/uninstall_linux.sh55
-rw-r--r--setup_native/scripts/uninstall_solaris.sh57
-rw-r--r--setup_native/scripts/unpack_update.sh33
-rw-r--r--setup_native/scripts/update.sh195
-rw-r--r--setup_native/scripts/userland.txt28
-rw-r--r--setup_native/source/java/brofficeorg_setup.gifbin0 -> 3115 bytes-rwxr-xr-xsetup_native/source/java/javaversion.dat57
-rw-r--r--setup_native/source/java/javaversion2.dat57
-rw-r--r--setup_native/source/java/openofficeorg_setup.gifbin0 -> 6641 bytes-rw-r--r--setup_native/source/linux/root3.dat4
-rw-r--r--setup_native/source/linux/root4.dat4
-rw-r--r--setup_native/source/linux/root5.dat4
-rw-r--r--setup_native/source/mac/Info.plist.langpack36
-rw-r--r--setup_native/source/mac/broffice/DS_Storebin0 -> 12292 bytes-rw-r--r--setup_native/source/mac/broffice/osxdndinstall.pngbin0 -> 15942 bytes-rw-r--r--setup_native/source/mac/broffice/osxdndinstall_nologo.pngbin0 -> 14323 bytes-rw-r--r--setup_native/source/mac/macinstall.ulf68
-rw-r--r--setup_native/source/mac/makefile.mk57
-rw-r--r--setup_native/source/mac/ooo/DS_Storebin0 -> 12292 bytes-rw-r--r--setup_native/source/mac/ooo/DS_Store_Langpackbin0 -> 12292 bytes-rw-r--r--setup_native/source/mac/ooo/osxdndinstall.pngbin0 -> 14278 bytes-rw-r--r--setup_native/source/mac/ooo/osxdndinstall_nologo.pngbin0 -> 12672 bytes-rw-r--r--setup_native/source/mac/ooo3_installer.icnsbin0 -> 49809 bytes-rw-r--r--setup_native/source/opensolaris/bundledextensions/README80
-rw-r--r--setup_native/source/opensolaris/bundledextensions/installed1
-rw-r--r--setup_native/source/opensolaris/bundledextensions/ooo_bundled_extensions.xml60
-rw-r--r--setup_native/source/opensolaris/bundledextensions/svc-ooo_bundled_extensions108
-rw-r--r--setup_native/source/packinfo/finals_instsetoo.txt14
-rw-r--r--setup_native/source/packinfo/linuxcopyrightfile2
-rw-r--r--setup_native/source/packinfo/openoffice.pcpbin0 -> 6144 bytes-rw-r--r--setup_native/source/packinfo/openofficelanguagepack.pcpbin0 -> 6144 bytes-rw-r--r--setup_native/source/packinfo/package.txt1
-rw-r--r--setup_native/source/packinfo/package_names.txt73
-rw-r--r--setup_native/source/packinfo/package_names_ext.txt21
-rw-r--r--setup_native/source/packinfo/packinfo_brand.txt139
-rwxr-xr-xsetup_native/source/packinfo/packinfo_office.txt1020
-rwxr-xr-xsetup_native/source/packinfo/packinfo_office_lang.txt209
-rwxr-xr-xsetup_native/source/packinfo/packinfo_sdkoo.txt41
-rwxr-xr-xsetup_native/source/packinfo/packinfo_ure.txt52
-rw-r--r--setup_native/source/packinfo/private1copyrightfile2
-rwxr-xr-xsetup_native/source/packinfo/shellscripts.txt11
-rw-r--r--setup_native/source/packinfo/shellscripts_brand.txt69
-rw-r--r--setup_native/source/packinfo/shellscripts_core01.txt70
-rwxr-xr-xsetup_native/source/packinfo/shellscripts_extensions.txt272
-rwxr-xr-xsetup_native/source/packinfo/shellscripts_module.txt33
-rwxr-xr-xsetup_native/source/packinfo/shellscripts_root.txt11
-rwxr-xr-xsetup_native/source/packinfo/solariscopyrightfile2
-rw-r--r--setup_native/source/packinfo/spellchecker_selection.txt52
-rw-r--r--setup_native/source/packinfo/ure.pcpbin0 -> 6144 bytes-rw-r--r--setup_native/source/ulfconv/makefile.mk54
-rw-r--r--setup_native/source/ulfconv/ulfconv.cxx357
-rw-r--r--setup_native/source/win32/customactions/indexingfilter/exports.dxp3
-rw-r--r--setup_native/source/win32/customactions/indexingfilter/makefile.mk68
-rw-r--r--setup_native/source/win32/customactions/indexingfilter/restartindexingservice.cxx208
-rw-r--r--setup_native/source/win32/customactions/javafilter/exports.dxp2
-rw-r--r--setup_native/source/win32/customactions/javafilter/jfregca.cxx330
-rw-r--r--setup_native/source/win32/customactions/javafilter/makefile.mk70
-rwxr-xr-xsetup_native/source/win32/customactions/languagepacks/checkrunningofficelanguagepack.cxx218
-rw-r--r--setup_native/source/win32/customactions/languagepacks/exports.dxp6
-rw-r--r--setup_native/source/win32/customactions/languagepacks/lngpckinsthelper.cxx204
-rw-r--r--setup_native/source/win32/customactions/languagepacks/makefile.mk100
-rw-r--r--setup_native/source/win32/customactions/languagepacks/respintest.cxx211
-rwxr-xr-xsetup_native/source/win32/customactions/patch/exports.dxp11
-rwxr-xr-xsetup_native/source/win32/customactions/patch/makefile.mk98
-rwxr-xr-xsetup_native/source/win32/customactions/patch/swappatchfiles.cxx898
-rw-r--r--setup_native/source/win32/customactions/quickstarter/exports.dxp3
-rw-r--r--setup_native/source/win32/customactions/quickstarter/makefile.mk102
-rw-r--r--setup_native/source/win32/customactions/quickstarter/qslnkmsi.dxp2
-rw-r--r--setup_native/source/win32/customactions/quickstarter/quickstarter.cxx221
-rw-r--r--setup_native/source/win32/customactions/quickstarter/quickstarter.hxx18
-rw-r--r--setup_native/source/win32/customactions/quickstarter/remove_quickstart_link.cxx60
-rw-r--r--setup_native/source/win32/customactions/quickstarter/sdqsmsi.dxp2
-rw-r--r--setup_native/source/win32/customactions/quickstarter/shutdown_quickstart.cxx79
-rw-r--r--setup_native/source/win32/customactions/rebase/makefile.mk90
-rw-r--r--setup_native/source/win32/customactions/rebase/rebase.cxx166
-rw-r--r--setup_native/source/win32/customactions/rebase/rebase.dxp1
-rw-r--r--setup_native/source/win32/customactions/reg4allmsdoc/exports.dxp3
-rw-r--r--setup_native/source/win32/customactions/reg4allmsdoc/makefile.mk83
-rwxr-xr-xsetup_native/source/win32/customactions/reg4allmsdoc/reg4allmsi.cxx530
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/constants.hxx39
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/exports.dxp3
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/makefile.mk96
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/msihelper.cxx102
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/msihelper.hxx184
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/reg4msdocmsi.cxx189
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/register.cxx340
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/register.hxx84
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/registrar.cxx759
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/registrar.hxx103
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/registrationcontextinformation.cxx351
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/registrationcontextinformation.hxx158
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/registry.cxx242
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/registry.hxx338
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/registryexception.cxx111
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/registryexception.hxx104
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/registryvalueimpl.cxx189
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/registryvalueimpl.hxx108
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/registryw9x.cxx550
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/registryw9x.hxx199
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/registrywnt.cxx619
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/registrywnt.hxx202
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/stringconverter.cxx70
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/stringconverter.hxx41
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/userregistrar.cxx136
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/userregistrar.hxx43
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/windowsregistry.cxx79
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/windowsregistry.hxx40
-rwxr-xr-xsetup_native/source/win32/customactions/reg64/exports.dxp2
-rw-r--r--setup_native/source/win32/customactions/reg64/makefile.mk108
-rwxr-xr-xsetup_native/source/win32/customactions/reg64/reg64.cxx477
-rw-r--r--setup_native/source/win32/customactions/regactivex/exports.dxp2
-rw-r--r--setup_native/source/win32/customactions/regactivex/makefile.mk70
-rw-r--r--setup_native/source/win32/customactions/regactivex/regactivex.cxx438
-rw-r--r--setup_native/source/win32/customactions/regpatchactivex/exports.dxp1
-rw-r--r--setup_native/source/win32/customactions/regpatchactivex/makefile.mk93
-rw-r--r--setup_native/source/win32/customactions/regpatchactivex/regpatchactivex.cxx122
-rw-r--r--setup_native/source/win32/customactions/relnotes/exports.dxp3
-rw-r--r--setup_native/source/win32/customactions/relnotes/makefile.mk83
-rw-r--r--setup_native/source/win32/customactions/relnotes/relnotes.cxx186
-rwxr-xr-xsetup_native/source/win32/customactions/shellextensions/checkdirectory.cxx117
-rw-r--r--setup_native/source/win32/customactions/shellextensions/checkpatches.cxx113
-rwxr-xr-xsetup_native/source/win32/customactions/shellextensions/checkrunningoffice.cxx290
-rw-r--r--setup_native/source/win32/customactions/shellextensions/completeinstallpath.cxx180
-rw-r--r--setup_native/source/win32/customactions/shellextensions/copyeditiondata.cxx130
-rw-r--r--setup_native/source/win32/customactions/shellextensions/copyextensiondata.cxx124
-rw-r--r--setup_native/source/win32/customactions/shellextensions/dotnetcheck.cxx181
-rw-r--r--setup_native/source/win32/customactions/shellextensions/exports.dxp23
-rwxr-xr-xsetup_native/source/win32/customactions/shellextensions/iconcache.cxx110
-rw-r--r--setup_native/source/win32/customactions/shellextensions/layerlinks.cxx257
-rw-r--r--setup_native/source/win32/customactions/shellextensions/makefile.mk108
-rwxr-xr-xsetup_native/source/win32/customactions/shellextensions/migrateinstallpath.cxx117
-rwxr-xr-xsetup_native/source/win32/customactions/shellextensions/postuninstall.cxx155
-rw-r--r--setup_native/source/win32/customactions/shellextensions/registerextensions.cxx427
-rwxr-xr-xsetup_native/source/win32/customactions/shellextensions/setadmininstall.cxx66
-rw-r--r--setup_native/source/win32/customactions/shellextensions/shellextensions.cxx213
-rw-r--r--setup_native/source/win32/customactions/shellextensions/startmenuicon.cxx142
-rw-r--r--setup_native/source/win32/customactions/shellextensions/upgrade.cxx204
-rw-r--r--setup_native/source/win32/customactions/shellextensions/vistaspecial.cxx242
-rw-r--r--setup_native/source/win32/customactions/tools/checkversion.cxx149
-rw-r--r--setup_native/source/win32/customactions/tools/exports.dxp1
-rw-r--r--setup_native/source/win32/customactions/tools/makefile.mk84
-rw-r--r--setup_native/source/win32/customactions/tools/seterror.cxx97
-rw-r--r--setup_native/source/win32/customactions/tools/seterror.hxx54
-rw-r--r--setup_native/source/win32/desktophelper.txt1
-rwxr-xr-xsetup_native/source/win32/get_retval.bat3
-rw-r--r--setup_native/source/win32/msi-encodinglist.txt140
-rw-r--r--setup_native/source/win32/nsis/brobanner.bmpbin0 -> 8964 bytes-rw-r--r--setup_native/source/win32/nsis/brobitmap.bmpbin0 -> 52100 bytes-rw-r--r--setup_native/source/win32/nsis/brosdkbanner.bmpbin0 -> 25818 bytes-rw-r--r--setup_native/source/win32/nsis/downloadtemplate.nsi432
-rw-r--r--setup_native/source/win32/nsis/ooobanner.bmpbin0 -> 9044 bytes-rw-r--r--setup_native/source/win32/nsis/ooobitmap.bmpbin0 -> 52576 bytes-rw-r--r--setup_native/source/win32/nsis/ooosdkbanner.bmpbin0 -> 9044 bytes-rw-r--r--setup_native/source/win32/nsis/ooosdkbitmap.bmpbin0 -> 154544 bytes-rwxr-xr-xsetup_native/source/win32/nsis/ooosetup.icobin0 -> 295606 bytes-rw-r--r--setup_native/source/win32/nsis/urebanner.bmpbin0 -> 25818 bytes-rwxr-xr-xsetup_native/source/win32/nsis/urebitmap.bmpbin0 -> 154544 bytes-rw-r--r--setup_native/source/win32/patchlist.txt2
-rw-r--r--setup_native/source/win32/stwrapper/makefile.mk50
-rw-r--r--setup_native/source/win32/stwrapper/resource.rc125
-rw-r--r--setup_native/source/win32/stwrapper/stwrapper.cxx495
-rw-r--r--setup_native/source/win32/stwrapper/stwrapper.manifest20
-rw-r--r--setup_native/tests/opensolaris/bundledextensions/send_ooo32
-rw-r--r--sfx2/inc/QuerySaveDocument.hxx45
-rw-r--r--sfx2/inc/about.hxx83
-rw-r--r--sfx2/inc/arrdecl.hxx91
-rw-r--r--sfx2/inc/basmgr.hxx35
-rw-r--r--sfx2/inc/bitset.hxx257
-rwxr-xr-xsfx2/inc/brokenpackageint.hxx101
-rw-r--r--sfx2/inc/configmgr.hxx39
-rw-r--r--sfx2/inc/dinfedt.hxx79
-rw-r--r--sfx2/inc/docinsert.hxx89
-rw-r--r--sfx2/inc/docvor.hxx158
-rw-r--r--sfx2/inc/filedlghelper.hrc51
-rw-r--r--sfx2/inc/frmload.hxx153
-rw-r--r--sfx2/inc/fwkhelper.hxx35
-rw-r--r--sfx2/inc/guisaveas.hxx115
-rw-r--r--sfx2/inc/idpool.hxx63
-rw-r--r--sfx2/inc/imagemgr.hxx36
-rw-r--r--sfx2/inc/imgmgr.hxx67
-rw-r--r--sfx2/inc/inettbc.hxx80
-rw-r--r--sfx2/inc/macro.hxx183
-rw-r--r--sfx2/inc/mailmodelapi.hxx141
-rw-r--r--sfx2/inc/makefile.mk48
-rw-r--r--sfx2/inc/mieclip.hxx63
-rw-r--r--sfx2/inc/minfitem.hxx78
-rw-r--r--sfx2/inc/msgnodei.hxx219
-rw-r--r--sfx2/inc/orgmgr.hxx106
-rw-r--r--sfx2/inc/pch/precompiled_sfx2.cxx29
-rw-r--r--sfx2/inc/pch/precompiled_sfx2.hxx668
-rw-r--r--sfx2/inc/progind.hxx83
-rw-r--r--sfx2/inc/resmgr.hxx75
-rw-r--r--sfx2/inc/sfx2/DocumentMetadataAccess.hxx215
-rw-r--r--sfx2/inc/sfx2/Metadatable.hxx187
-rw-r--r--sfx2/inc/sfx2/XmlIdRegistry.hxx98
-rw-r--r--sfx2/inc/sfx2/app.hxx336
-rw-r--r--sfx2/inc/sfx2/appuno.hxx135
-rw-r--r--sfx2/inc/sfx2/basedlgs.hxx227
-rw-r--r--sfx2/inc/sfx2/bindings.hxx262
-rw-r--r--sfx2/inc/sfx2/chalign.hxx63
-rw-r--r--sfx2/inc/sfx2/childwin.hxx369
-rw-r--r--sfx2/inc/sfx2/cntids.hrc428
-rw-r--r--sfx2/inc/sfx2/controlwrapper.hxx671
-rw-r--r--sfx2/inc/sfx2/ctrlitem.hxx111
-rw-r--r--sfx2/inc/sfx2/dialogs.hrc38
-rw-r--r--sfx2/inc/sfx2/dinfdlg.hxx575
-rw-r--r--sfx2/inc/sfx2/dispatch.hxx366
-rw-r--r--sfx2/inc/sfx2/dllapi.h42
-rw-r--r--sfx2/inc/sfx2/docfac.hxx141
-rw-r--r--sfx2/inc/sfx2/docfile.hxx339
-rw-r--r--sfx2/inc/sfx2/docfilt.hxx156
-rw-r--r--sfx2/inc/sfx2/docinf.hxx81
-rw-r--r--sfx2/inc/sfx2/dockwin.hxx142
-rw-r--r--sfx2/inc/sfx2/docmacromode.hxx332
-rw-r--r--sfx2/inc/sfx2/docstoragemodifylistener.hxx95
-rw-r--r--sfx2/inc/sfx2/doctdlg.hxx86
-rw-r--r--sfx2/inc/sfx2/doctempl.hxx148
-rw-r--r--sfx2/inc/sfx2/event.hxx119
-rw-r--r--sfx2/inc/sfx2/evntconf.hxx123
-rw-r--r--sfx2/inc/sfx2/fcontnr.hxx178
-rw-r--r--sfx2/inc/sfx2/filedlghelper.hxx325
-rw-r--r--sfx2/inc/sfx2/frame.hxx313
-rw-r--r--sfx2/inc/sfx2/frmdescr.hxx294
-rw-r--r--sfx2/inc/sfx2/frmhtml.hxx59
-rw-r--r--sfx2/inc/sfx2/frmhtmlw.hxx93
-rw-r--r--sfx2/inc/sfx2/genlink.hxx56
-rw-r--r--sfx2/inc/sfx2/hintpost.hxx80
-rw-r--r--sfx2/inc/sfx2/htmlmode.hxx68
-rw-r--r--sfx2/inc/sfx2/imgdef.hxx33
-rw-r--r--sfx2/inc/sfx2/ipclient.hxx107
-rw-r--r--sfx2/inc/sfx2/itemconnect.hxx595
-rw-r--r--sfx2/inc/sfx2/itemwrapper.hxx207
-rw-r--r--sfx2/inc/sfx2/layout-post.hxx40
-rw-r--r--sfx2/inc/sfx2/layout-pre.hxx49
-rw-r--r--sfx2/inc/sfx2/layout-tabdlg.hxx46
-rw-r--r--sfx2/inc/sfx2/layout.hxx78
-rw-r--r--sfx2/inc/sfx2/linkmgr.hxx168
-rw-r--r--sfx2/inc/sfx2/linksrc.hxx135
-rw-r--r--sfx2/inc/sfx2/lnkbase.hxx185
-rw-r--r--sfx2/inc/sfx2/macrconf.hxx155
-rw-r--r--sfx2/inc/sfx2/macropg.hxx150
-rw-r--r--sfx2/inc/sfx2/mgetempl.hxx115
-rw-r--r--sfx2/inc/sfx2/minarray.hxx529
-rw-r--r--sfx2/inc/sfx2/minstack.hxx99
-rw-r--r--sfx2/inc/sfx2/mnuitem.hxx176
-rw-r--r--sfx2/inc/sfx2/mnumgr.hxx148
-rw-r--r--sfx2/inc/sfx2/module.hxx115
-rw-r--r--sfx2/inc/sfx2/msg.hxx349
-rw-r--r--sfx2/inc/sfx2/msgpool.hxx95
-rw-r--r--sfx2/inc/sfx2/navigat.hxx64
-rw-r--r--sfx2/inc/sfx2/new.hxx112
-rw-r--r--sfx2/inc/sfx2/newstyle.hxx67
-rw-r--r--sfx2/inc/sfx2/objface.hxx154
-rw-r--r--sfx2/inc/sfx2/objitem.hxx54
-rw-r--r--sfx2/inc/sfx2/objsh.hxx893
-rw-r--r--sfx2/inc/sfx2/objuno.hxx192
-rw-r--r--sfx2/inc/sfx2/opengrf.hxx67
-rw-r--r--sfx2/inc/sfx2/passwd.hxx89
-rw-r--r--sfx2/inc/sfx2/printer.hxx143
-rw-r--r--sfx2/inc/sfx2/printopt.hxx155
-rw-r--r--sfx2/inc/sfx2/prnmon.hxx104
-rw-r--r--sfx2/inc/sfx2/progress.hxx91
-rw-r--r--sfx2/inc/sfx2/querystatus.hxx61
-rw-r--r--sfx2/inc/sfx2/request.hxx139
-rwxr-xr-xsfx2/inc/sfx2/securitypage.hxx58
-rwxr-xr-xsfx2/inc/sfx2/sfx.hrc449
-rw-r--r--sfx2/inc/sfx2/sfxbasecontroller.hxx418
-rw-r--r--sfx2/inc/sfx2/sfxbasemodel.hxx1596
-rw-r--r--sfx2/inc/sfx2/sfxcommands.h345
-rw-r--r--sfx2/inc/sfx2/sfxdefs.hxx39
-rw-r--r--sfx2/inc/sfx2/sfxdlg.hxx160
-rw-r--r--sfx2/inc/sfx2/sfxhtml.hxx133
-rw-r--r--sfx2/inc/sfx2/sfxmodelfactory.hxx75
-rw-r--r--sfx2/inc/sfx2/sfxsids.hrc1033
-rw-r--r--sfx2/inc/sfx2/sfxstatuslistener.hxx93
-rw-r--r--sfx2/inc/sfx2/sfxuno.hxx610
-rw-r--r--sfx2/inc/sfx2/shell.hxx393
-rw-r--r--sfx2/inc/sfx2/signaturestate.hxx44
-rw-r--r--sfx2/inc/sfx2/styfitem.hxx121
-rw-r--r--sfx2/inc/sfx2/styledlg.hxx61
-rw-r--r--sfx2/inc/sfx2/tabdlg.hxx318
-rw-r--r--sfx2/inc/sfx2/taskpane.hxx245
-rw-r--r--sfx2/inc/sfx2/tbxctrl.hxx452
-rw-r--r--sfx2/inc/sfx2/templdlg.hxx102
-rw-r--r--sfx2/inc/sfx2/titledockwin.hxx172
-rw-r--r--sfx2/inc/sfx2/unoctitm.hxx211
-rw-r--r--sfx2/inc/sfx2/userinputinterception.hxx83
-rw-r--r--sfx2/inc/sfx2/viewfrm.hxx350
-rw-r--r--sfx2/inc/sfx2/viewsh.hxx383
-rw-r--r--sfx2/inc/sfxbasic.hxx42
-rw-r--r--sfx2/inc/sfxhelp.hxx72
-rw-r--r--sfx2/inc/sfxresid.hxx58
-rw-r--r--sfx2/inc/sorgitm.hxx54
-rw-r--r--sfx2/inc/srchdlg.hxx105
-rw-r--r--sfx2/inc/stbitem.hxx148
-rw-r--r--sfx2/inc/tplpitem.hxx56
-rw-r--r--sfx2/inc/viewfac.hxx75
-rw-r--r--sfx2/prj/build.lst31
-rw-r--r--sfx2/prj/d.lst47
-rw-r--r--sfx2/qa/complex/docinfo/DocumentProperties.java363
-rw-r--r--sfx2/qa/complex/docinfo/makefile.mk63
-rw-r--r--sfx2/qa/complex/framework/CheckGlobalEventBroadcaster_writer1.java281
-rw-r--r--sfx2/qa/complex/framework/DialogThread.java95
-rw-r--r--sfx2/qa/complex/framework/DocHelper/makefile.mk49
-rw-r--r--sfx2/qa/complex/framework/DocumentMetadataAccessTest.java1292
-rw-r--r--sfx2/qa/complex/framework/DocumentPropertiesTest.java565
-rw-r--r--sfx2/qa/complex/framework/TestDocument.java39
-rw-r--r--sfx2/qa/complex/framework/WriterHelper.java287
-rw-r--r--sfx2/qa/complex/framework/makefile.mk65
-rw-r--r--sfx2/qa/complex/framework/testdocuments/CUSTOM.odtbin0 -> 1021 bytes-rw-r--r--sfx2/qa/complex/framework/testdocuments/TEST.odtbin0 -> 13803 bytes-rw-r--r--sfx2/qa/complex/framework/testdocuments/TESTRDFA.odtbin0 -> 7540 bytes-rw-r--r--sfx2/qa/complex/framework/testdocuments/empty.rdf13
-rw-r--r--sfx2/qa/complex/standalonedocumentinfo/StandaloneDocumentInfoTest.java31
-rw-r--r--sfx2/qa/complex/standalonedocumentinfo/StandaloneDocumentInfoUnitTest.java101
-rw-r--r--sfx2/qa/complex/standalonedocumentinfo/Test01.java142
-rw-r--r--sfx2/qa/complex/standalonedocumentinfo/TestHelper.java48
-rw-r--r--sfx2/qa/complex/standalonedocumentinfo/makefile.mk56
-rw-r--r--sfx2/qa/complex/tests.sce3
-rw-r--r--sfx2/qa/cppunit/makefile.mk81
-rw-r--r--sfx2/qa/cppunit/test_metadatable.cxx282
-rw-r--r--sfx2/qa/cppunit/version.map34
-rw-r--r--sfx2/qa/unoapi/Test.java51
-rw-r--r--sfx2/qa/unoapi/knownissues.xcl5
-rw-r--r--sfx2/qa/unoapi/makefile.mk48
-rw-r--r--sfx2/qa/unoapi/sfx.sce5
-rw-r--r--sfx2/qa/unoapi/testdocuments/SfxStandaloneDocInfoObject.sdwbin0 -> 8192 bytes-rw-r--r--sfx2/qa/unoapi/testdocuments/report.stwbin0 -> 11186 bytes-rw-r--r--sfx2/qa/unoapi/testdocuments/report2.stwbin0 -> 11000 bytes-rw-r--r--sfx2/sdi/appslots.sdi295
-rw-r--r--sfx2/sdi/docslots.sdi241
-rw-r--r--sfx2/sdi/frmslots.sdi454
-rw-r--r--sfx2/sdi/makefile.mk59
-rwxr-xr-xsfx2/sdi/sfx.sdi8277
-rw-r--r--sfx2/sdi/sfxitems.sdi90
-rw-r--r--sfx2/sdi/sfxslots.sdi45
-rw-r--r--sfx2/sdi/viwslots.sdi110
-rw-r--r--sfx2/source/appl/app.cxx845
-rw-r--r--sfx2/source/appl/app.hrc274
-rw-r--r--sfx2/source/appl/app.src931
-rw-r--r--sfx2/source/appl/appbas.cxx590
-rw-r--r--sfx2/source/appl/appbaslib.cxx249
-rw-r--r--sfx2/source/appl/appcfg.cxx1040
-rw-r--r--sfx2/source/appl/appchild.cxx176
-rw-r--r--sfx2/source/appl/appdata.cxx187
-rw-r--r--sfx2/source/appl/appdde.cxx710
-rw-r--r--sfx2/source/appl/appinit.cxx321
-rw-r--r--sfx2/source/appl/appmain.cxx207
-rw-r--r--sfx2/source/appl/appmisc.cxx335
-rw-r--r--sfx2/source/appl/appopen.cxx1332
-rw-r--r--sfx2/source/appl/appquit.cxx174
-rw-r--r--sfx2/source/appl/appreg.cxx153
-rw-r--r--sfx2/source/appl/appserv.cxx1354
-rw-r--r--sfx2/source/appl/appuno.cxx2350
-rw-r--r--sfx2/source/appl/childwin.cxx855
-rw-r--r--sfx2/source/appl/dde.hrc40
-rw-r--r--sfx2/source/appl/dde.src95
-rw-r--r--sfx2/source/appl/fileobj.cxx706
-rw-r--r--sfx2/source/appl/fileobj.hxx95
-rw-r--r--sfx2/source/appl/fwkhelper.cxx59
-rw-r--r--sfx2/source/appl/helpdispatch.cxx123
-rw-r--r--sfx2/source/appl/helpdispatch.hxx54
-rw-r--r--sfx2/source/appl/helpinterceptor.cxx367
-rw-r--r--sfx2/source/appl/helpinterceptor.hxx173
-rw-r--r--sfx2/source/appl/imagemgr.cxx234
-rw-r--r--sfx2/source/appl/imestatuswindow.cxx231
-rw-r--r--sfx2/source/appl/imestatuswindow.hxx125
-rw-r--r--sfx2/source/appl/impldde.cxx448
-rw-r--r--sfx2/source/appl/impldde.hxx78
-rw-r--r--sfx2/source/appl/linkmgr2.cxx636
-rw-r--r--sfx2/source/appl/linksrc.cxx435
-rw-r--r--sfx2/source/appl/lnkbase2.cxx699
-rw-r--r--sfx2/source/appl/makefile.mk158
-rw-r--r--sfx2/source/appl/module.cxx450
-rw-r--r--sfx2/source/appl/newhelp.cxx3492
-rw-r--r--sfx2/source/appl/newhelp.hrc84
-rw-r--r--sfx2/source/appl/newhelp.hxx614
-rw-r--r--sfx2/source/appl/newhelp.src592
-rw-r--r--sfx2/source/appl/opengrf.cxx292
-rw-r--r--sfx2/source/appl/panelist.hxx50
-rw-r--r--sfx2/source/appl/sfx.src133
-rw-r--r--sfx2/source/appl/sfxhelp.cxx1077
-rw-r--r--sfx2/source/appl/sfxpicklist.cxx473
-rw-r--r--sfx2/source/appl/shutdownicon.cxx957
-rw-r--r--sfx2/source/appl/shutdownicon.hxx175
-rw-r--r--sfx2/source/appl/shutdowniconOs2.cxx94
-rw-r--r--sfx2/source/appl/shutdowniconaqua.mm510
-rw-r--r--sfx2/source/appl/shutdowniconunx.cxx409
-rw-r--r--sfx2/source/appl/shutdowniconw32.cxx977
-rw-r--r--sfx2/source/appl/workwin.cxx3142
-rw-r--r--sfx2/source/appl/xpackcreator.cxx202
-rw-r--r--sfx2/source/appl/xpackcreator.hxx75
-rw-r--r--sfx2/source/bastyp/bastyp.hrc38
-rw-r--r--sfx2/source/bastyp/bastyp.src66
-rw-r--r--sfx2/source/bastyp/bitset.cxx395
-rw-r--r--sfx2/source/bastyp/fltfnc.cxx1227
-rw-r--r--sfx2/source/bastyp/fltfnc.src75
-rw-r--r--sfx2/source/bastyp/fltlst.cxx118
-rw-r--r--sfx2/source/bastyp/fltlst.hxx67
-rw-r--r--sfx2/source/bastyp/frmhtml.cxx163
-rw-r--r--sfx2/source/bastyp/frmhtmlw.cxx381
-rw-r--r--sfx2/source/bastyp/helper.cxx879
-rw-r--r--sfx2/source/bastyp/makefile.mk66
-rw-r--r--sfx2/source/bastyp/mieclip.cxx95
-rw-r--r--sfx2/source/bastyp/minarray.cxx736
-rw-r--r--sfx2/source/bastyp/misc.cxx75
-rw-r--r--sfx2/source/bastyp/progress.cxx753
-rw-r--r--sfx2/source/bastyp/sfxhtml.cxx447
-rw-r--r--sfx2/source/bastyp/sfxresid.cxx73
-rw-r--r--sfx2/source/config/config.hrc41
-rw-r--r--sfx2/source/config/config.src35
-rw-r--r--sfx2/source/config/evntconf.cxx301
-rw-r--r--sfx2/source/config/makefile.mk47
-rw-r--r--sfx2/source/control/bindings.cxx2433
-rw-r--r--sfx2/source/control/ctrlitem.cxx466
-rw-r--r--sfx2/source/control/dispatch.cxx3180
-rw-r--r--sfx2/source/control/macrconf.cxx874
-rw-r--r--sfx2/source/control/macro.cxx708
-rw-r--r--sfx2/source/control/makefile.mk73
-rw-r--r--sfx2/source/control/minfitem.cxx107
-rw-r--r--sfx2/source/control/msg.cxx75
-rw-r--r--sfx2/source/control/msgpool.cxx422
-rw-r--r--sfx2/source/control/objface.cxx685
-rw-r--r--sfx2/source/control/querystatus.cxx241
-rw-r--r--sfx2/source/control/request.cxx978
-rw-r--r--sfx2/source/control/sfxstatuslistener.cxx290
-rw-r--r--sfx2/source/control/shell.cxx1298
-rw-r--r--sfx2/source/control/sorgitm.cxx136
-rw-r--r--sfx2/source/control/statcach.cxx577
-rw-r--r--sfx2/source/control/unoctitm.cxx1013
-rw-r--r--sfx2/source/dialog/about.cxx424
-rw-r--r--sfx2/source/dialog/alienwarn.cxx177
-rw-r--r--sfx2/source/dialog/alienwarn.hrc61
-rw-r--r--sfx2/source/dialog/alienwarn.src92
-rw-r--r--sfx2/source/dialog/basedlgs.cxx1059
-rw-r--r--sfx2/source/dialog/dialog.hrc84
-rw-r--r--sfx2/source/dialog/dialog.src132
-rw-r--r--sfx2/source/dialog/dinfdlg.cxx2466
-rw-r--r--sfx2/source/dialog/dinfdlg.hrc177
-rw-r--r--sfx2/source/dialog/dinfdlg.src947
-rw-r--r--sfx2/source/dialog/dinfedt.cxx66
-rw-r--r--sfx2/source/dialog/dinfedt.hrc38
-rw-r--r--sfx2/source/dialog/dinfedt.src125
-rw-r--r--sfx2/source/dialog/dockwin.cxx2021
-rw-r--r--sfx2/source/dialog/filedlghelper.cxx2887
-rw-r--r--sfx2/source/dialog/filedlghelper.src173
-rw-r--r--sfx2/source/dialog/filedlgimpl.hxx238
-rw-r--r--sfx2/source/dialog/filtergrouping.cxx1274
-rw-r--r--sfx2/source/dialog/filtergrouping.hxx106
-rw-r--r--sfx2/source/dialog/intro.cxx110
-rw-r--r--sfx2/source/dialog/itemconnect.cxx408
-rw-r--r--sfx2/source/dialog/mailmodel.cxx960
-rw-r--r--sfx2/source/dialog/mailmodelapi.cxx695
-rw-r--r--sfx2/source/dialog/mailwindow.src76
-rwxr-xr-xsfx2/source/dialog/makefile.mk127
-rw-r--r--sfx2/source/dialog/mgetempl.cxx672
-rw-r--r--sfx2/source/dialog/mgetempl.hrc38
-rw-r--r--sfx2/source/dialog/mgetempl.src158
-rw-r--r--sfx2/source/dialog/navigat.cxx100
-rw-r--r--sfx2/source/dialog/newstyle.cxx108
-rw-r--r--sfx2/source/dialog/newstyle.hrc33
-rw-r--r--sfx2/source/dialog/newstyle.src105
-rw-r--r--sfx2/source/dialog/partwnd.cxx257
-rw-r--r--sfx2/source/dialog/passwd.cxx212
-rw-r--r--sfx2/source/dialog/passwd.hrc49
-rw-r--r--sfx2/source/dialog/passwd.src143
-rw-r--r--sfx2/source/dialog/printopt.cxx545
-rw-r--r--sfx2/source/dialog/printopt.hrc64
-rw-r--r--sfx2/source/dialog/printopt.src377
-rw-r--r--sfx2/source/dialog/recfloat.cxx280
-rw-r--r--sfx2/source/dialog/recfloat.src87
-rw-r--r--sfx2/source/dialog/securitypage.cxx553
-rwxr-xr-xsfx2/source/dialog/securitypage.hrc52
-rwxr-xr-xsfx2/source/dialog/securitypage.src174
-rwxr-xr-xsfx2/source/dialog/sfxdlg.cxx44
-rw-r--r--sfx2/source/dialog/splitwin.cxx1304
-rw-r--r--sfx2/source/dialog/srchdlg.cxx202
-rw-r--r--sfx2/source/dialog/srchdlg.hrc43
-rw-r--r--sfx2/source/dialog/srchdlg.src116
-rw-r--r--sfx2/source/dialog/styfitem.cxx187
-rw-r--r--sfx2/source/dialog/styledlg.cxx176
-rw-r--r--sfx2/source/dialog/tabdlg.cxx1798
-rw-r--r--sfx2/source/dialog/taskpane.cxx1299
-rw-r--r--sfx2/source/dialog/taskpane.src47
-rw-r--r--sfx2/source/dialog/templdlg.cxx3039
-rw-r--r--sfx2/source/dialog/templdlg.hrc52
-rw-r--r--sfx2/source/dialog/templdlg.src216
-rw-r--r--sfx2/source/dialog/titledockwin.cxx360
-rw-r--r--sfx2/source/dialog/titledockwin.src39
-rw-r--r--sfx2/source/dialog/tplcitem.cxx188
-rw-r--r--sfx2/source/dialog/tplpitem.cxx123
-rw-r--r--sfx2/source/dialog/versdlg.cxx519
-rw-r--r--sfx2/source/dialog/versdlg.hrc48
-rw-r--r--sfx2/source/dialog/versdlg.src222
-rw-r--r--sfx2/source/doc/DocumentMetadataAccess.cxx1432
-rw-r--r--sfx2/source/doc/Metadatable.cxx1703
-rw-r--r--sfx2/source/doc/QuerySaveDocument.cxx50
-rw-r--r--sfx2/source/doc/SfxDocumentMetaData.cxx2384
-rw-r--r--sfx2/source/doc/doc.hrc221
-rw-r--r--sfx2/source/doc/doc.src528
-rw-r--r--sfx2/source/doc/docfac.cxx491
-rw-r--r--sfx2/source/doc/docfile.cxx3931
-rw-r--r--sfx2/source/doc/docfilt.cxx251
-rw-r--r--sfx2/source/doc/docinf.cxx309
-rw-r--r--sfx2/source/doc/docinsert.cxx305
-rw-r--r--sfx2/source/doc/docmacromode.cxx436
-rw-r--r--sfx2/source/doc/docstoragemodifylistener.cxx96
-rw-r--r--sfx2/source/doc/doctdlg.cxx238
-rw-r--r--sfx2/source/doc/doctdlg.hrc42
-rw-r--r--sfx2/source/doc/doctdlg.src152
-rw-r--r--sfx2/source/doc/doctempl.cxx2735
-rw-r--r--sfx2/source/doc/doctempl.src106
-rw-r--r--sfx2/source/doc/doctemplates.cxx2898
-rw-r--r--sfx2/source/doc/doctemplateslocal.cxx263
-rw-r--r--sfx2/source/doc/doctemplateslocal.hxx88
-rw-r--r--sfx2/source/doc/docvor.cxx2466
-rw-r--r--sfx2/source/doc/docvor.hrc75
-rw-r--r--sfx2/source/doc/docvor.src320
-rw-r--r--sfx2/source/doc/frmdescr.cxx329
-rw-r--r--sfx2/source/doc/graphhelp.cxx529
-rw-r--r--sfx2/source/doc/graphhelp.hxx75
-rw-r--r--sfx2/source/doc/graphhelp.src59
-rw-r--r--sfx2/source/doc/guisaveas.cxx1842
-rw-r--r--sfx2/source/doc/iframe.cxx397
-rw-r--r--sfx2/source/doc/makefile.mk103
-rw-r--r--sfx2/source/doc/new.cxx745
-rw-r--r--sfx2/source/doc/new.hrc57
-rw-r--r--sfx2/source/doc/new.src275
-rw-r--r--sfx2/source/doc/objcont.cxx1281
-rw-r--r--sfx2/source/doc/objembed.cxx317
-rw-r--r--sfx2/source/doc/objitem.cxx135
-rw-r--r--sfx2/source/doc/objmisc.cxx2590
-rw-r--r--sfx2/source/doc/objserv.cxx1514
-rw-r--r--sfx2/source/doc/objstor.cxx3743
-rw-r--r--sfx2/source/doc/objuno.cxx1350
-rw-r--r--sfx2/source/doc/objxtor.cxx1125
-rwxr-xr-xsfx2/source/doc/oleprops.cxx1227
-rwxr-xr-xsfx2/source/doc/oleprops.hxx404
-rw-r--r--sfx2/source/doc/ownsubfilterservice.cxx165
-rw-r--r--sfx2/source/doc/plugin.cxx266
-rwxr-xr-xsfx2/source/doc/printhelper.cxx906
-rwxr-xr-xsfx2/source/doc/printhelper.hxx69
-rw-r--r--sfx2/source/doc/querytemplate.cxx52
-rw-r--r--sfx2/source/doc/querytemplate.hxx44
-rw-r--r--sfx2/source/doc/sfxacldetect.cxx105
-rw-r--r--sfx2/source/doc/sfxbasemodel.cxx4309
-rw-r--r--sfx2/source/doc/sfxmodelfactory.cxx239
-rw-r--r--sfx2/source/doc/syspath.cxx48
-rw-r--r--sfx2/source/doc/syspath.hxx44
-rw-r--r--sfx2/source/doc/syspathw32.cxx83
-rw-r--r--sfx2/source/explorer/makefile.mk47
-rw-r--r--sfx2/source/explorer/nochaos.cxx215
-rw-r--r--sfx2/source/inc/SfxDocumentMetaData.hxx49
-rw-r--r--sfx2/source/inc/alienwarn.hxx56
-rw-r--r--sfx2/source/inc/appbas.hxx44
-rw-r--r--sfx2/source/inc/appbaslib.hxx140
-rw-r--r--sfx2/source/inc/appdata.hxx182
-rw-r--r--sfx2/source/inc/doctemplates.hxx102
-rw-r--r--sfx2/source/inc/eventsupplier.hxx264
-rw-r--r--sfx2/source/inc/fltfnc.hxx35
-rw-r--r--sfx2/source/inc/fltoptint.hxx75
-rw-r--r--sfx2/source/inc/helper.hxx78
-rwxr-xr-xsfx2/source/inc/helpid.hrc342
-rw-r--r--sfx2/source/inc/hexplwnd.hxx101
-rw-r--r--sfx2/source/inc/iframe.hxx93
-rw-r--r--sfx2/source/inc/intro.hxx55
-rw-r--r--sfx2/source/inc/mailmodel.hxx105
-rw-r--r--sfx2/source/inc/mnucfga.hxx52
-rw-r--r--sfx2/source/inc/nfltdlg.hxx66
-rw-r--r--sfx2/source/inc/nochaos.hxx40
-rw-r--r--sfx2/source/inc/objmnctl.hxx56
-rw-r--r--sfx2/source/inc/objshimp.hxx176
-rw-r--r--sfx2/source/inc/openflag.hxx41
-rw-r--r--sfx2/source/inc/ownsubfilterservice.hxx90
-rw-r--r--sfx2/source/inc/partwnd.hxx90
-rw-r--r--sfx2/source/inc/plugin.hxx91
-rw-r--r--sfx2/source/inc/preview.hxx73
-rw-r--r--sfx2/source/inc/recfloat.hxx69
-rw-r--r--sfx2/source/inc/referers.hxx36
-rw-r--r--sfx2/source/inc/sfxlocal.hrc75
-rw-r--r--sfx2/source/inc/sfxpicklist.hxx86
-rw-r--r--sfx2/source/inc/sfxtypes.hxx199
-rw-r--r--sfx2/source/inc/sfxurlrelocator.hxx54
-rw-r--r--sfx2/source/inc/slotserv.hxx84
-rw-r--r--sfx2/source/inc/splitwin.hxx133
-rw-r--r--sfx2/source/inc/statcach.hxx182
-rw-r--r--sfx2/source/inc/templdgi.hxx394
-rw-r--r--sfx2/source/inc/tplcitem.hxx52
-rw-r--r--sfx2/source/inc/tplcomp.hxx224
-rw-r--r--sfx2/source/inc/versdlg.hxx109
-rw-r--r--sfx2/source/inc/virtmenu.hxx159
-rw-r--r--sfx2/source/inc/workwin.hxx391
-rw-r--r--sfx2/source/inet/inettbc.cxx303
-rw-r--r--sfx2/source/inet/makefile.mk48
-rw-r--r--sfx2/source/layout/factory.cxx68
-rw-r--r--sfx2/source/layout/makefile.mk56
-rw-r--r--sfx2/source/layout/sfxdialog.cxx38
-rw-r--r--sfx2/source/layout/sfxtabdialog.cxx72
-rw-r--r--sfx2/source/layout/sfxtabpage.cxx89
-rw-r--r--sfx2/source/menu/makefile.mk55
-rw-r--r--sfx2/source/menu/menu.hrc73
-rw-r--r--sfx2/source/menu/menu.src98
-rw-r--r--sfx2/source/menu/mnuitem.cxx583
-rwxr-xr-xsfx2/source/menu/mnumgr.cxx641
-rw-r--r--sfx2/source/menu/objmnctl.cxx165
-rwxr-xr-xsfx2/source/menu/thessubmenu.cxx241
-rwxr-xr-xsfx2/source/menu/thessubmenu.hxx103
-rw-r--r--sfx2/source/menu/virtmenu.cxx1366
-rw-r--r--sfx2/source/notify/eventsupplier.cxx920
-rw-r--r--sfx2/source/notify/hintpost.cxx110
-rw-r--r--sfx2/source/notify/makefile.mk49
-rw-r--r--sfx2/source/statbar/makefile.mk47
-rw-r--r--sfx2/source/statbar/stbitem.cxx692
-rw-r--r--sfx2/source/toolbox/imgmgr.cxx426
-rw-r--r--sfx2/source/toolbox/makefile.mk48
-rw-r--r--sfx2/source/toolbox/tbxitem.cxx1895
-rw-r--r--sfx2/source/view/frame.cxx994
-rw-r--r--sfx2/source/view/frame2.cxx481
-rw-r--r--sfx2/source/view/frmload.cxx746
-rw-r--r--sfx2/source/view/impframe.hxx100
-rw-r--r--sfx2/source/view/impviewframe.hxx98
-rw-r--r--sfx2/source/view/ipclient.cxx1163
-rw-r--r--sfx2/source/view/makefile.mk65
-rw-r--r--sfx2/source/view/orgmgr.cxx832
-rw-r--r--sfx2/source/view/printer.cxx624
-rw-r--r--sfx2/source/view/prnmon.cxx495
-rw-r--r--sfx2/source/view/sfxbasecontroller.cxx1542
-rw-r--r--sfx2/source/view/userinputinterception.cxx278
-rw-r--r--sfx2/source/view/view.hrc126
-rw-r--r--sfx2/source/view/view.src190
-rw-r--r--sfx2/source/view/viewfac.cxx88
-rw-r--r--sfx2/source/view/viewfrm.cxx3606
-rw-r--r--sfx2/source/view/viewfrm2.cxx523
-rw-r--r--sfx2/source/view/viewimp.hxx84
-rw-r--r--sfx2/source/view/viewprn.cxx1045
-rw-r--r--sfx2/source/view/viewsh.cxx2248
-rw-r--r--sfx2/util/hidother.src108
-rw-r--r--sfx2/util/make_tco.btm1
-rw-r--r--sfx2/util/makefile.mk172
-rw-r--r--sfx2/util/makefile.pmk30
-rw-r--r--sfx2/util/mkdemo.pl7
-rw-r--r--sfx2/util/sfx.component75
-rw-r--r--sfx2/util/sfx.xml97
-rw-r--r--sfx2/workben/custompanel/CalcWindowState.xcu21
-rw-r--r--sfx2/workben/custompanel/DrawWindowState.xcu21
-rw-r--r--sfx2/workben/custompanel/Factories.xcu21
-rw-r--r--sfx2/workben/custompanel/ImpressWindowState.xcu21
-rw-r--r--sfx2/workben/custompanel/WriterWindowState.xcu35
-rw-r--r--sfx2/workben/custompanel/ctp_factory.cxx167
-rw-r--r--sfx2/workben/custompanel/ctp_factory.hxx83
-rw-r--r--sfx2/workben/custompanel/ctp_panel.cxx270
-rw-r--r--sfx2/workben/custompanel/ctp_panel.hxx124
-rw-r--r--sfx2/workben/custompanel/ctp_services.cxx92
-rw-r--r--sfx2/workben/custompanel/delzip0
-rw-r--r--sfx2/workben/custompanel/description.xml16
-rw-r--r--sfx2/workben/custompanel/makefile.mk120
-rw-r--r--sfx2/workben/custompanel/manifest.xml18
-rw-r--r--sfx2/workben/custompanel/panel.pngbin0 -> 202 bytes-rw-r--r--shell/inc/internal/basereader.hxx80
-rw-r--r--shell/inc/internal/columninfo.hxx77
-rw-r--r--shell/inc/internal/config.hxx104
-rw-r--r--shell/inc/internal/contentreader.hxx126
-rw-r--r--shell/inc/internal/dbgmacros.hxx51
-rw-r--r--shell/inc/internal/fileextensions.hxx68
-rw-r--r--shell/inc/internal/global.hxx44
-rw-r--r--shell/inc/internal/i_xml_parser_event_handler.hxx78
-rw-r--r--shell/inc/internal/infotips.hxx100
-rw-r--r--shell/inc/internal/iso8601_converter.hxx47
-rwxr-xr-xshell/inc/internal/metainforeader.hxx148
-rwxr-xr-xshell/inc/internal/propertyhdl.hxx126
-rw-r--r--shell/inc/internal/propsheets.hxx94
-rw-r--r--shell/inc/internal/registry.hxx69
-rw-r--r--shell/inc/internal/resource.h57
-rwxr-xr-xshell/inc/internal/shlxthdl.hxx55
-rwxr-xr-xshell/inc/internal/stream_helper.hxx35
-rw-r--r--shell/inc/internal/thumbviewer.hxx118
-rw-r--r--shell/inc/internal/types.hxx95
-rwxr-xr-xshell/inc/internal/utilities.hxx116
-rw-r--r--shell/inc/internal/xml_parser.hxx134
-rw-r--r--shell/inc/internal/zipfile.hxx162
-rw-r--r--shell/inc/kde_headers.h94
-rw-r--r--shell/inc/makefile.mk47
-rw-r--r--shell/inc/pch/precompiled_shell.cxx29
-rw-r--r--shell/inc/pch/precompiled_shell.hxx32
-rwxr-xr-xshell/prj/build.lst34
-rw-r--r--shell/prj/d.lst34
-rw-r--r--shell/qa/i_xml_parser_event_handler.hxx77
-rwxr-xr-xshell/qa/makefile.mk70
-rwxr-xr-xshell/qa/recent_docs.cxx224
-rwxr-xr-xshell/source/all/makefile.mk73
-rw-r--r--shell/source/all/ooofilereader/autostyletag.cxx100
-rw-r--r--shell/source/all/ooofilereader/autostyletag.hxx72
-rw-r--r--shell/source/all/ooofilereader/basereader.cxx106
-rw-r--r--shell/source/all/ooofilereader/contentreader.cxx235
-rw-r--r--shell/source/all/ooofilereader/dummytag.hxx61
-rw-r--r--shell/source/all/ooofilereader/itag.hxx52
-rw-r--r--shell/source/all/ooofilereader/keywordstag.cxx64
-rw-r--r--shell/source/all/ooofilereader/keywordstag.hxx54
-rw-r--r--shell/source/all/ooofilereader/makefile.mk89
-rw-r--r--shell/source/all/ooofilereader/metainforeader.cxx302
-rw-r--r--shell/source/all/ooofilereader/simpletag.cxx65
-rw-r--r--shell/source/all/ooofilereader/simpletag.hxx58
-rw-r--r--shell/source/all/xml_parser.cxx215
-rw-r--r--shell/source/all/zipfile/makefile.mk58
-rw-r--r--shell/source/all/zipfile/zipexcptn.cxx137
-rw-r--r--shell/source/all/zipfile/zipexcptn.hxx78
-rw-r--r--shell/source/all/zipfile/zipfile.cxx251
-rw-r--r--shell/source/backends/desktopbe/desktopbackend.cxx284
-rw-r--r--shell/source/backends/desktopbe/desktopbe1.component34
-rw-r--r--shell/source/backends/desktopbe/makefile.mk59
-rw-r--r--shell/source/backends/gconfbe/gconfaccess.cxx848
-rw-r--r--shell/source/backends/gconfbe/gconfaccess.hxx119
-rw-r--r--shell/source/backends/gconfbe/gconfbackend.cxx233
-rw-r--r--shell/source/backends/gconfbe/gconfbe1.component34
-rw-r--r--shell/source/backends/gconfbe/makefile.mk97
-rw-r--r--shell/source/backends/gconfbe/orbit.h39
-rw-r--r--shell/source/backends/kde4be/kde4access.cxx319
-rw-r--r--shell/source/backends/kde4be/kde4access.hxx47
-rw-r--r--shell/source/backends/kde4be/kde4backend.cxx252
-rw-r--r--shell/source/backends/kde4be/kde4be1.component34
-rw-r--r--shell/source/backends/kde4be/makefile.mk87
-rw-r--r--shell/source/backends/kdebe/kdeaccess.cxx315
-rw-r--r--shell/source/backends/kdebe/kdeaccess.hxx47
-rw-r--r--shell/source/backends/kdebe/kdebackend.cxx252
-rw-r--r--shell/source/backends/kdebe/kdebe1.component34
-rw-r--r--shell/source/backends/kdebe/makefile.mk87
-rw-r--r--shell/source/backends/localebe/localebackend.cxx367
-rw-r--r--shell/source/backends/localebe/localebackend.hxx149
-rw-r--r--shell/source/backends/localebe/localebe.xml35
-rw-r--r--shell/source/backends/localebe/localebe1.component34
-rw-r--r--shell/source/backends/localebe/localebecdef.cxx87
-rw-r--r--shell/source/backends/localebe/makefile.mk80
-rw-r--r--shell/source/backends/macbe/macbackend.cxx499
-rw-r--r--shell/source/backends/macbe/macbackend.hxx138
-rw-r--r--shell/source/backends/macbe/macbe.xml35
-rw-r--r--shell/source/backends/macbe/macbe1.component34
-rw-r--r--shell/source/backends/macbe/macbecdef.cxx87
-rw-r--r--shell/source/backends/macbe/makefile.mk86
-rw-r--r--shell/source/backends/wininetbe/makefile.mk76
-rw-r--r--shell/source/backends/wininetbe/wininetbackend.cxx403
-rw-r--r--shell/source/backends/wininetbe/wininetbackend.hxx157
-rw-r--r--shell/source/backends/wininetbe/wininetbe.xml35
-rw-r--r--shell/source/backends/wininetbe/wininetbe1.component34
-rw-r--r--shell/source/backends/wininetbe/wininetbecdef.cxx88
-rw-r--r--shell/source/cmdmail/cmdmail.component34
-rw-r--r--shell/source/cmdmail/cmdmail.xml47
-rwxr-xr-xshell/source/cmdmail/cmdmailentry.cxx111
-rwxr-xr-xshell/source/cmdmail/cmdmailmsg.cxx302
-rw-r--r--shell/source/cmdmail/cmdmailmsg.hxx128
-rwxr-xr-xshell/source/cmdmail/cmdmailsuppl.cxx328
-rw-r--r--shell/source/cmdmail/cmdmailsuppl.hxx95
-rw-r--r--shell/source/cmdmail/exports.dxp2
-rw-r--r--shell/source/cmdmail/makefile.mk71
-rw-r--r--shell/source/mingw_intel.map57
-rw-r--r--shell/source/tools/lngconvex/cmdline.cxx175
-rw-r--r--shell/source/tools/lngconvex/cmdline.hxx104
-rw-r--r--shell/source/tools/lngconvex/defs.hxx14
-rw-r--r--shell/source/tools/lngconvex/lngconvex.cxx605
-rw-r--r--shell/source/tools/lngconvex/makefile.mk68
-rw-r--r--shell/source/tools/regsvrex/makefile.mk49
-rw-r--r--shell/source/tools/regsvrex/regsvrex.cxx91
-rw-r--r--shell/source/unix/exec/makefile.mk98
-rw-r--r--shell/source/unix/exec/shellexec.cxx331
-rw-r--r--shell/source/unix/exec/shellexec.hxx79
-rw-r--r--shell/source/unix/exec/shellexecentry.cxx111
-rw-r--r--shell/source/unix/exec/syssh.component34
-rw-r--r--shell/source/unix/exec/syssh.xml33
-rw-r--r--shell/source/unix/exec/urltest.cxx151
-rw-r--r--shell/source/unix/exec/urltest.sh2
-rw-r--r--shell/source/unix/exec/urltest.txt11
-rwxr-xr-xshell/source/unix/misc/cde-open-url.sh13
-rw-r--r--shell/source/unix/misc/gnome-open-url.c146
-rw-r--r--shell/source/unix/misc/gnome-open-url.sh6
-rwxr-xr-xshell/source/unix/misc/kde-open-url.sh10
-rw-r--r--shell/source/unix/misc/makefile.mk90
-rw-r--r--shell/source/unix/misc/open-url.c172
-rw-r--r--shell/source/unix/misc/open-url.def1
-rwxr-xr-xshell/source/unix/misc/open-url.sh93
-rw-r--r--shell/source/unix/misc/senddoc.c204
-rw-r--r--shell/source/unix/misc/senddoc.def1
-rw-r--r--shell/source/unix/misc/senddoc.sh401
-rw-r--r--shell/source/unix/misc/uri-encode.c50
-rw-r--r--shell/source/unix/sysshell/makefile.mk75
-rw-r--r--shell/source/unix/sysshell/recently_used_file.cxx147
-rw-r--r--shell/source/unix/sysshell/recently_used_file.hxx68
-rw-r--r--shell/source/unix/sysshell/recently_used_file_handler.cxx526
-rwxr-xr-xshell/source/unix/sysshell/recfile.map6
-rw-r--r--shell/source/win32/SysShExec.cxx388
-rw-r--r--shell/source/win32/SysShExec.hxx83
-rw-r--r--shell/source/win32/SysShentry.cxx117
-rw-r--r--shell/source/win32/exports.dxp2
-rw-r--r--shell/source/win32/makefile.mk77
-rwxr-xr-xshell/source/win32/shlxthandler/classfactory.cxx171
-rw-r--r--shell/source/win32/shlxthandler/classfactory.hxx77
-rwxr-xr-xshell/source/win32/shlxthandler/columninfo/columninfo.cxx232
-rw-r--r--shell/source/win32/shlxthandler/columninfo/makefile.mk59
-rw-r--r--shell/source/win32/shlxthandler/exports.dxp4
-rwxr-xr-xshell/source/win32/shlxthandler/infotips/infotips.cxx404
-rw-r--r--shell/source/win32/shlxthandler/infotips/makefile.mk60
-rw-r--r--shell/source/win32/shlxthandler/makefile.mk157
-rw-r--r--shell/source/win32/shlxthandler/ooofilt/exports.dxp4
-rw-r--r--shell/source/win32/shlxthandler/ooofilt/makefile.mk141
-rwxr-xr-xshell/source/win32/shlxthandler/ooofilt/ooofilt.cxx1491
-rwxr-xr-xshell/source/win32/shlxthandler/ooofilt/ooofilt.hxx218
-rw-r--r--shell/source/win32/shlxthandler/ooofilt/propspec.cxx238
-rw-r--r--shell/source/win32/shlxthandler/ooofilt/propspec.hxx159
-rwxr-xr-xshell/source/win32/shlxthandler/ooofilt/stream_helper.cxx181
-rwxr-xr-xshell/source/win32/shlxthandler/prophdl/exports.dxp2
-rw-r--r--shell/source/win32/shlxthandler/prophdl/makefile.mk142
-rwxr-xr-xshell/source/win32/shlxthandler/prophdl/propertyhdl.cxx463
-rw-r--r--shell/source/win32/shlxthandler/propsheets/document_statistic.cxx170
-rw-r--r--shell/source/win32/shlxthandler/propsheets/document_statistic.hxx149
-rw-r--r--shell/source/win32/shlxthandler/propsheets/listviewbuilder.cxx281
-rw-r--r--shell/source/win32/shlxthandler/propsheets/listviewbuilder.hxx115
-rw-r--r--shell/source/win32/shlxthandler/propsheets/makefile.mk65
-rwxr-xr-xshell/source/win32/shlxthandler/propsheets/propsheets.cxx385
-rw-r--r--shell/source/win32/shlxthandler/res/ctrylnglist.txt29
-rw-r--r--shell/source/win32/shlxthandler/res/makefile.mk72
-rw-r--r--shell/source/win32/shlxthandler/res/prop_img.bmpbin0 -> 958 bytes-rw-r--r--shell/source/win32/shlxthandler/res/rcfooter.txt4
-rw-r--r--shell/source/win32/shlxthandler/res/rcheader.txt15
-rw-r--r--shell/source/win32/shlxthandler/res/rctmpl.txt71
-rw-r--r--shell/source/win32/shlxthandler/res/shlxthdl.manifest11
-rw-r--r--shell/source/win32/shlxthandler/res/shlxthdl.ulf148
-rw-r--r--shell/source/win32/shlxthandler/res/signet.pngbin0 -> 4836 bytes-rwxr-xr-xshell/source/win32/shlxthandler/shlxthdl.cxx427
-rw-r--r--shell/source/win32/shlxthandler/thumbviewer/makefile.mk62
-rwxr-xr-xshell/source/win32/shlxthandler/thumbviewer/thumbviewer.cxx533
-rw-r--r--shell/source/win32/shlxthandler/util/dbgmacros.cxx58
-rwxr-xr-xshell/source/win32/shlxthandler/util/fileextensions.cxx120
-rw-r--r--shell/source/win32/shlxthandler/util/iso8601_converter.cxx182
-rw-r--r--shell/source/win32/shlxthandler/util/makefile.mk68
-rw-r--r--shell/source/win32/shlxthandler/util/registry.cxx205
-rwxr-xr-xshell/source/win32/shlxthandler/util/utilities.cxx599
-rw-r--r--shell/source/win32/simplemail/exports.dxp2
-rw-r--r--shell/source/win32/simplemail/makefile.mk87
-rw-r--r--shell/source/win32/simplemail/senddoc.cxx347
-rw-r--r--shell/source/win32/simplemail/simplemapi.cxx97
-rw-r--r--shell/source/win32/simplemail/simplemapi.hxx84
-rw-r--r--shell/source/win32/simplemail/smplmail.component34
-rw-r--r--shell/source/win32/simplemail/smplmail.xml37
-rw-r--r--shell/source/win32/simplemail/smplmailclient.cxx289
-rw-r--r--shell/source/win32/simplemail/smplmailclient.hxx54
-rw-r--r--shell/source/win32/simplemail/smplmailentry.cxx117
-rw-r--r--shell/source/win32/simplemail/smplmailmsg.cxx179
-rw-r--r--shell/source/win32/simplemail/smplmailmsg.hxx122
-rw-r--r--shell/source/win32/simplemail/smplmailsuppl.cxx107
-rw-r--r--shell/source/win32/simplemail/smplmailsuppl.hxx75
-rw-r--r--shell/source/win32/syssh.component34
-rw-r--r--shell/source/win32/syssh.xml40
-rw-r--r--shell/source/win32/workbench/TestProxySet.cxx200
-rw-r--r--shell/source/win32/workbench/TestSmplMail.cxx188
-rw-r--r--shell/source/win32/workbench/TestSysShExec.cxx167
-rw-r--r--shell/source/win32/workbench/makefile.mk101
-rw-r--r--slideshow/inc/makefile.mk47
-rw-r--r--slideshow/inc/pch/precompiled_slideshow.cxx29
-rw-r--r--slideshow/inc/pch/precompiled_slideshow.hxx52
-rw-r--r--slideshow/manifest.txt95
-rw-r--r--slideshow/prj/build.lst11
-rw-r--r--slideshow/prj/d.lst8
-rw-r--r--slideshow/qa/debug/colors.sh16
-rw-r--r--slideshow/qa/debug/nodetree.sh50
-rw-r--r--slideshow/qa/debug/readme.txt20
-rw-r--r--slideshow/qa/debug/timings.pl81
-rwxr-xr-xslideshow/qa/tools/mkeffects.pl810
-rw-r--r--slideshow/qa/tools/mktransitions.pl681
-rw-r--r--slideshow/source/engine/OGLTrans/OGLTrans_Shaders.cxx140
-rw-r--r--slideshow/source/engine/OGLTrans/OGLTrans_Shaders.hxx68
-rw-r--r--slideshow/source/engine/OGLTrans/OGLTrans_TransitionImpl.cxx1315
-rw-r--r--slideshow/source/engine/OGLTrans/OGLTrans_TransitionImpl.hxx506
-rw-r--r--slideshow/source/engine/OGLTrans/OGLTrans_TransitionerImpl.cxx1484
-rw-r--r--slideshow/source/engine/OGLTrans/exports.dxp2
-rw-r--r--slideshow/source/engine/OGLTrans/makefile.mk88
-rw-r--r--slideshow/source/engine/OGLTrans/ogltrans.component34
-rw-r--r--slideshow/source/engine/activities/accumulation.hxx92
-rw-r--r--slideshow/source/engine/activities/activitiesfactory.cxx987
-rw-r--r--slideshow/source/engine/activities/activitybase.cxx246
-rw-r--r--slideshow/source/engine/activities/activitybase.hxx152
-rw-r--r--slideshow/source/engine/activities/activityparameters.hxx143
-rw-r--r--slideshow/source/engine/activities/continuousactivitybase.cxx54
-rw-r--r--slideshow/source/engine/activities/continuousactivitybase.hxx73
-rw-r--r--slideshow/source/engine/activities/continuouskeytimeactivitybase.cxx76
-rw-r--r--slideshow/source/engine/activities/continuouskeytimeactivitybase.hxx83
-rw-r--r--slideshow/source/engine/activities/discreteactivitybase.cxx206
-rw-r--r--slideshow/source/engine/activities/discreteactivitybase.hxx87
-rw-r--r--slideshow/source/engine/activities/interpolation.hxx194
-rw-r--r--slideshow/source/engine/activities/makefile.mk53
-rw-r--r--slideshow/source/engine/activities/simplecontinuousactivitybase.cxx258
-rw-r--r--slideshow/source/engine/activities/simplecontinuousactivitybase.hxx87
-rw-r--r--slideshow/source/engine/activitiesqueue.cxx210
-rw-r--r--slideshow/source/engine/animatedsprite.cxx225
-rw-r--r--slideshow/source/engine/animationfactory.cxx1386
-rw-r--r--slideshow/source/engine/animationnodes/animationaudionode.cxx181
-rw-r--r--slideshow/source/engine/animationnodes/animationaudionode.hxx77
-rw-r--r--slideshow/source/engine/animationnodes/animationbasenode.cxx490
-rw-r--r--slideshow/source/engine/animationnodes/animationbasenode.hxx111
-rw-r--r--slideshow/source/engine/animationnodes/animationcolornode.cxx137
-rw-r--r--slideshow/source/engine/animationnodes/animationcolornode.hxx62
-rw-r--r--slideshow/source/engine/animationnodes/animationcommandnode.cxx134
-rw-r--r--slideshow/source/engine/animationnodes/animationcommandnode.hxx69
-rw-r--r--slideshow/source/engine/animationnodes/animationnodefactory.cxx620
-rw-r--r--slideshow/source/engine/animationnodes/animationpathmotionnode.cxx67
-rw-r--r--slideshow/source/engine/animationnodes/animationpathmotionnode.hxx65
-rw-r--r--slideshow/source/engine/animationnodes/animationsetnode.cxx213
-rw-r--r--slideshow/source/engine/animationnodes/animationsetnode.hxx58
-rw-r--r--slideshow/source/engine/animationnodes/animationtransformnode.cxx114
-rw-r--r--slideshow/source/engine/animationnodes/animationtransformnode.hxx66
-rw-r--r--slideshow/source/engine/animationnodes/animationtransitionfilternode.cxx59
-rw-r--r--slideshow/source/engine/animationnodes/animationtransitionfilternode.hxx67
-rw-r--r--slideshow/source/engine/animationnodes/basecontainernode.cxx175
-rw-r--r--slideshow/source/engine/animationnodes/basecontainernode.hxx105
-rw-r--r--slideshow/source/engine/animationnodes/basenode.cxx769
-rw-r--r--slideshow/source/engine/animationnodes/basenode.hxx229
-rw-r--r--slideshow/source/engine/animationnodes/generateevent.cxx246
-rw-r--r--slideshow/source/engine/animationnodes/generateevent.hxx62
-rw-r--r--slideshow/source/engine/animationnodes/makefile.mk61
-rw-r--r--slideshow/source/engine/animationnodes/nodetools.cxx128
-rw-r--r--slideshow/source/engine/animationnodes/nodetools.hxx88
-rw-r--r--slideshow/source/engine/animationnodes/paralleltimecontainer.cxx69
-rw-r--r--slideshow/source/engine/animationnodes/paralleltimecontainer.hxx63
-rw-r--r--slideshow/source/engine/animationnodes/propertyanimationnode.cxx115
-rw-r--r--slideshow/source/engine/animationnodes/propertyanimationnode.hxx58
-rw-r--r--slideshow/source/engine/animationnodes/sequentialtimecontainer.cxx162
-rw-r--r--slideshow/source/engine/animationnodes/sequentialtimecontainer.hxx75
-rw-r--r--slideshow/source/engine/animationnodes/setactivity.hxx155
-rw-r--r--slideshow/source/engine/arith-grammar.txt61
-rw-r--r--slideshow/source/engine/attributemap.cxx123
-rw-r--r--slideshow/source/engine/color.cxx467
-rw-r--r--slideshow/source/engine/debug.cxx324
-rw-r--r--slideshow/source/engine/delayevent.cxx69
-rw-r--r--slideshow/source/engine/effectrewinder.cxx433
-rw-r--r--slideshow/source/engine/effectrewinder.hxx182
-rw-r--r--slideshow/source/engine/eventmultiplexer.cxx1278
-rw-r--r--slideshow/source/engine/eventqueue.cxx335
-rw-r--r--slideshow/source/engine/expressionnodefactory.cxx279
-rw-r--r--slideshow/source/engine/makefile.mk102
-rw-r--r--slideshow/source/engine/rehearsetimingsactivity.cxx581
-rw-r--r--slideshow/source/engine/rehearsetimingsactivity.hxx147
-rw-r--r--slideshow/source/engine/screenupdater.cxx268
-rw-r--r--slideshow/source/engine/shapeattributelayer.cxx856
-rw-r--r--slideshow/source/engine/shapes/appletshape.cxx330
-rw-r--r--slideshow/source/engine/shapes/appletshape.hxx60
-rw-r--r--slideshow/source/engine/shapes/backgroundshape.cxx336
-rw-r--r--slideshow/source/engine/shapes/backgroundshape.hxx62
-rw-r--r--slideshow/source/engine/shapes/drawinglayeranimation.cxx984
-rw-r--r--slideshow/source/engine/shapes/drawinglayeranimation.hxx48
-rw-r--r--slideshow/source/engine/shapes/drawshape.cxx1478
-rw-r--r--slideshow/source/engine/shapes/drawshape.hxx382
-rw-r--r--slideshow/source/engine/shapes/drawshapesubsetting.cxx865
-rw-r--r--slideshow/source/engine/shapes/drawshapesubsetting.hxx288
-rw-r--r--slideshow/source/engine/shapes/externalshapebase.cxx246
-rw-r--r--slideshow/source/engine/shapes/externalshapebase.hxx145
-rw-r--r--slideshow/source/engine/shapes/gdimtftools.cxx549
-rw-r--r--slideshow/source/engine/shapes/gdimtftools.hxx155
-rw-r--r--slideshow/source/engine/shapes/intrinsicanimationactivity.cxx290
-rw-r--r--slideshow/source/engine/shapes/intrinsicanimationactivity.hxx76
-rw-r--r--slideshow/source/engine/shapes/makefile.mk60
-rw-r--r--slideshow/source/engine/shapes/mediashape.cxx297
-rw-r--r--slideshow/source/engine/shapes/mediashape.hxx55
-rw-r--r--slideshow/source/engine/shapes/shapeimporter.cxx670
-rw-r--r--slideshow/source/engine/shapes/viewappletshape.cxx300
-rw-r--r--slideshow/source/engine/shapes/viewappletshape.hxx169
-rw-r--r--slideshow/source/engine/shapes/viewbackgroundshape.cxx212
-rw-r--r--slideshow/source/engine/shapes/viewbackgroundshape.hxx104
-rw-r--r--slideshow/source/engine/shapes/viewmediashape.cxx543
-rw-r--r--slideshow/source/engine/shapes/viewmediashape.hxx174
-rw-r--r--slideshow/source/engine/shapes/viewshape.cxx898
-rw-r--r--slideshow/source/engine/shapes/viewshape.hxx340
-rw-r--r--slideshow/source/engine/shapesubset.cxx141
-rw-r--r--slideshow/source/engine/slide/layer.cxx364
-rw-r--r--slideshow/source/engine/slide/layer.hxx316
-rw-r--r--slideshow/source/engine/slide/layermanager.cxx923
-rw-r--r--slideshow/source/engine/slide/layermanager.hxx385
-rw-r--r--slideshow/source/engine/slide/makefile.mk51
-rw-r--r--slideshow/source/engine/slide/shapemanagerimpl.cxx461
-rw-r--r--slideshow/source/engine/slide/shapemanagerimpl.hxx209
-rw-r--r--slideshow/source/engine/slide/slideanimations.cxx131
-rw-r--r--slideshow/source/engine/slide/slideanimations.hxx125
-rw-r--r--slideshow/source/engine/slide/slideimpl.cxx1283
-rw-r--r--slideshow/source/engine/slide/userpaintoverlay.cxx504
-rw-r--r--slideshow/source/engine/slide/userpaintoverlay.hxx89
-rw-r--r--slideshow/source/engine/slidebitmap.cxx132
-rw-r--r--slideshow/source/engine/slideshowcontext.cxx76
-rw-r--r--slideshow/source/engine/slideshowimpl.cxx2536
-rw-r--r--slideshow/source/engine/slideview.cxx1196
-rw-r--r--slideshow/source/engine/smilfunctionparser.cxx638
-rw-r--r--slideshow/source/engine/soundplayer.cxx183
-rw-r--r--slideshow/source/engine/sp_debug.cxx297
-rw-r--r--slideshow/source/engine/tools.cxx853
-rw-r--r--slideshow/source/engine/transitions/barndoorwipe.cxx65
-rw-r--r--slideshow/source/engine/transitions/barndoorwipe.hxx55
-rw-r--r--slideshow/source/engine/transitions/barwipepolypolygon.cxx56
-rw-r--r--slideshow/source/engine/transitions/barwipepolypolygon.hxx55
-rw-r--r--slideshow/source/engine/transitions/boxwipe.cxx57
-rw-r--r--slideshow/source/engine/transitions/boxwipe.hxx54
-rw-r--r--slideshow/source/engine/transitions/checkerboardwipe.cxx65
-rw-r--r--slideshow/source/engine/transitions/checkerboardwipe.hxx57
-rw-r--r--slideshow/source/engine/transitions/clippingfunctor.cxx238
-rw-r--r--slideshow/source/engine/transitions/clippingfunctor.hxx95
-rw-r--r--slideshow/source/engine/transitions/clockwipe.cxx74
-rw-r--r--slideshow/source/engine/transitions/clockwipe.hxx50
-rw-r--r--slideshow/source/engine/transitions/combtransition.cxx196
-rw-r--r--slideshow/source/engine/transitions/combtransition.hxx72
-rw-r--r--slideshow/source/engine/transitions/doublediamondwipe.cxx66
-rw-r--r--slideshow/source/engine/transitions/doublediamondwipe.hxx53
-rw-r--r--slideshow/source/engine/transitions/ellipsewipe.cxx52
-rw-r--r--slideshow/source/engine/transitions/ellipsewipe.hxx48
-rw-r--r--slideshow/source/engine/transitions/fanwipe.cxx72
-rw-r--r--slideshow/source/engine/transitions/fanwipe.hxx51
-rw-r--r--slideshow/source/engine/transitions/figurewipe.cxx129
-rw-r--r--slideshow/source/engine/transitions/figurewipe.hxx55
-rw-r--r--slideshow/source/engine/transitions/fourboxwipe.cxx85
-rw-r--r--slideshow/source/engine/transitions/fourboxwipe.hxx55
-rw-r--r--slideshow/source/engine/transitions/iriswipe.cxx52
-rw-r--r--slideshow/source/engine/transitions/iriswipe.hxx52
-rw-r--r--slideshow/source/engine/transitions/makefile.mk73
-rw-r--r--slideshow/source/engine/transitions/parametricpolypolygon.hxx98
-rw-r--r--slideshow/source/engine/transitions/parametricpolypolygonfactory.cxx312
-rw-r--r--slideshow/source/engine/transitions/parametricpolypolygonfactory.hxx54
-rw-r--r--slideshow/source/engine/transitions/pinwheelwipe.cxx59
-rw-r--r--slideshow/source/engine/transitions/pinwheelwipe.hxx51
-rw-r--r--slideshow/source/engine/transitions/randomwipe.cxx95
-rw-r--r--slideshow/source/engine/transitions/randomwipe.hxx58
-rw-r--r--slideshow/source/engine/transitions/shapetransitionfactory.cxx408
-rw-r--r--slideshow/source/engine/transitions/slidechangebase.cxx535
-rw-r--r--slideshow/source/engine/transitions/slidechangebase.hxx208
-rw-r--r--slideshow/source/engine/transitions/slidetransitionfactory.cxx1074
-rw-r--r--slideshow/source/engine/transitions/snakewipe.cxx244
-rw-r--r--slideshow/source/engine/transitions/snakewipe.hxx76
-rw-r--r--slideshow/source/engine/transitions/spiralwipe.cxx131
-rw-r--r--slideshow/source/engine/transitions/spiralwipe.hxx68
-rw-r--r--slideshow/source/engine/transitions/sweepwipe.cxx84
-rw-r--r--slideshow/source/engine/transitions/sweepwipe.hxx53
-rw-r--r--slideshow/source/engine/transitions/transitionfactorytab.cxx2132
-rw-r--r--slideshow/source/engine/transitions/transitiontools.cxx69
-rw-r--r--slideshow/source/engine/transitions/transitiontools.hxx55
-rw-r--r--slideshow/source/engine/transitions/veewipe.cxx53
-rw-r--r--slideshow/source/engine/transitions/veewipe.hxx51
-rw-r--r--slideshow/source/engine/transitions/waterfallwipe.cxx77
-rw-r--r--slideshow/source/engine/transitions/waterfallwipe.hxx52
-rw-r--r--slideshow/source/engine/transitions/zigzagwipe.cxx82
-rw-r--r--slideshow/source/engine/transitions/zigzagwipe.hxx60
-rw-r--r--slideshow/source/engine/unoviewcontainer.cxx149
-rw-r--r--slideshow/source/engine/usereventqueue.cxx1007
-rw-r--r--slideshow/source/engine/waitsymbol.cxx208
-rw-r--r--slideshow/source/engine/waitsymbol.hxx108
-rw-r--r--slideshow/source/engine/wakeupevent.cxx99
-rw-r--r--slideshow/source/inc/activitiesfactory.hxx334
-rw-r--r--slideshow/source/inc/activitiesqueue.hxx130
-rw-r--r--slideshow/source/inc/activity.hxx100
-rw-r--r--slideshow/source/inc/animatableshape.hxx88
-rw-r--r--slideshow/source/inc/animatedsprite.hxx186
-rw-r--r--slideshow/source/inc/animation.hxx97
-rw-r--r--slideshow/source/inc/animationactivity.hxx75
-rw-r--r--slideshow/source/inc/animationeventhandler.hxx71
-rw-r--r--slideshow/source/inc/animationfactory.hxx157
-rw-r--r--slideshow/source/inc/animationfunction.hxx71
-rw-r--r--slideshow/source/inc/animationnode.hxx163
-rw-r--r--slideshow/source/inc/animationnodefactory.hxx78
-rw-r--r--slideshow/source/inc/attributableshape.hxx228
-rw-r--r--slideshow/source/inc/attributemap.hxx80
-rw-r--r--slideshow/source/inc/boolanimation.hxx77
-rw-r--r--slideshow/source/inc/coloranimation.hxx77
-rw-r--r--slideshow/source/inc/cursormanager.hxx72
-rw-r--r--slideshow/source/inc/debug.hxx77
-rw-r--r--slideshow/source/inc/delayevent.hxx157
-rw-r--r--slideshow/source/inc/disposable.hxx65
-rw-r--r--slideshow/source/inc/doctreenode.hxx141
-rw-r--r--slideshow/source/inc/doctreenodesupplier.hxx151
-rw-r--r--slideshow/source/inc/enumanimation.hxx79
-rw-r--r--slideshow/source/inc/event.hxx92
-rw-r--r--slideshow/source/inc/eventhandler.hxx67
-rw-r--r--slideshow/source/inc/eventmultiplexer.hxx661
-rw-r--r--slideshow/source/inc/eventqueue.hxx156
-rw-r--r--slideshow/source/inc/expressionnode.hxx66
-rw-r--r--slideshow/source/inc/expressionnodefactory.hxx82
-rw-r--r--slideshow/source/inc/externalmediashape.hxx91
-rw-r--r--slideshow/source/inc/framerate.hxx53
-rw-r--r--slideshow/source/inc/hslcolor.hxx123
-rw-r--r--slideshow/source/inc/hslcoloranimation.hxx77
-rw-r--r--slideshow/source/inc/hyperlinkarea.hxx104
-rw-r--r--slideshow/source/inc/hyperlinkhandler.hxx68
-rw-r--r--slideshow/source/inc/interruptabledelayevent.hxx150
-rw-r--r--slideshow/source/inc/intrinsicanimationeventhandler.hxx60
-rw-r--r--slideshow/source/inc/listenercontainer.hxx315
-rw-r--r--slideshow/source/inc/listenercontainerimpl.hxx225
-rw-r--r--slideshow/source/inc/mouseeventhandler.hxx153
-rw-r--r--slideshow/source/inc/numberanimation.hxx79
-rw-r--r--slideshow/source/inc/pairanimation.hxx78
-rw-r--r--slideshow/source/inc/pauseeventhandler.hxx68
-rw-r--r--slideshow/source/inc/rgbcolor.hxx125
-rw-r--r--slideshow/source/inc/screenupdater.hxx139
-rw-r--r--slideshow/source/inc/shape.hxx273
-rw-r--r--slideshow/source/inc/shapeattributelayer.hxx556
-rw-r--r--slideshow/source/inc/shapeattributelayerholder.hxx110
-rw-r--r--slideshow/source/inc/shapecursoreventhandler.hxx67
-rw-r--r--slideshow/source/inc/shapeimporter.hxx155
-rw-r--r--slideshow/source/inc/shapelistenereventhandler.hxx75
-rw-r--r--slideshow/source/inc/shapemanager.hxx125
-rw-r--r--slideshow/source/inc/shapemaps.hxx61
-rw-r--r--slideshow/source/inc/shapesubset.hxx150
-rw-r--r--slideshow/source/inc/slide.hxx217
-rw-r--r--slideshow/source/inc/slidebitmap.hxx95
-rw-r--r--slideshow/source/inc/slideshowcontext.hxx118
-rw-r--r--slideshow/source/inc/slideshowexceptions.hxx53
-rw-r--r--slideshow/source/inc/slideview.hxx62
-rw-r--r--slideshow/source/inc/smilfunctionparser.hxx167
-rw-r--r--slideshow/source/inc/soundplayer.hxx118
-rw-r--r--slideshow/source/inc/state.hxx73
-rw-r--r--slideshow/source/inc/stringanimation.hxx77
-rw-r--r--slideshow/source/inc/subsettableshapemanager.hxx126
-rw-r--r--slideshow/source/inc/tools.hxx404
-rw-r--r--slideshow/source/inc/transitionfactory.hxx148
-rw-r--r--slideshow/source/inc/transitioninfo.hxx160
-rw-r--r--slideshow/source/inc/unoview.hxx85
-rw-r--r--slideshow/source/inc/unoviewcontainer.hxx110
-rw-r--r--slideshow/source/inc/usereventqueue.hxx327
-rw-r--r--slideshow/source/inc/userpainteventhandler.hxx65
-rw-r--r--slideshow/source/inc/view.hxx95
-rw-r--r--slideshow/source/inc/vieweventhandler.hxx99
-rw-r--r--slideshow/source/inc/viewlayer.hxx175
-rw-r--r--slideshow/source/inc/viewrepainthandler.hxx73
-rw-r--r--slideshow/source/inc/viewupdate.hxx76
-rw-r--r--slideshow/source/inc/wakeupevent.hxx93
-rw-r--r--slideshow/test/demoshow.cxx570
-rw-r--r--slideshow/test/export.map34
-rw-r--r--slideshow/test/makefile.mk101
-rw-r--r--slideshow/test/slidetest.cxx370
-rw-r--r--slideshow/test/tests.hxx72
-rw-r--r--slideshow/test/testshape.cxx221
-rw-r--r--slideshow/test/testview.cxx286
-rw-r--r--slideshow/test/views.cxx90
-rw-r--r--slideshow/util/exports.dxp2
-rw-r--r--slideshow/util/makefile.mk112
-rw-r--r--slideshow/util/makefile.pmk47
-rw-r--r--slideshow/util/slideshow.component34
-rw-r--r--slideshow/util/slideshowtest.flt4
-rwxr-xr-xsmoketestoo_native/com/sun/star/comp/smoketest/MANIFEST.MF2
-rwxr-xr-xsmoketestoo_native/com/sun/star/comp/smoketest/TestExtension.idl40
-rwxr-xr-xsmoketestoo_native/com/sun/star/comp/smoketest/TestExtension.java166
-rwxr-xr-xsmoketestoo_native/com/sun/star/comp/smoketest/delzip1
-rwxr-xr-xsmoketestoo_native/com/sun/star/comp/smoketest/makefile.mk90
-rwxr-xr-xsmoketestoo_native/com/sun/star/comp/smoketest/manifest.xml5
-rw-r--r--smoketestoo_native/data/Events.xml65
-rw-r--r--smoketestoo_native/data/Global.xml786
-rw-r--r--smoketestoo_native/data/OptionsDlg.xml64
-rw-r--r--smoketestoo_native/data/Test_10er.xml921
-rw-r--r--smoketestoo_native/data/Test_DB.xml161
-rw-r--r--smoketestoo_native/data/Test_Ext.xml121
-rw-r--r--smoketestoo_native/data/content.xml28
-rw-r--r--smoketestoo_native/data/dialog-lb.xml31
-rw-r--r--smoketestoo_native/data/dialog-lc.xml31
-rw-r--r--smoketestoo_native/data/makefile.mk70
-rw-r--r--smoketestoo_native/data/manifest.xml49
-rw-r--r--smoketestoo_native/data/meta.xml28
-rw-r--r--smoketestoo_native/data/script-lb.xml35
-rw-r--r--smoketestoo_native/data/script-lc.xml31
-rw-r--r--smoketestoo_native/data/settings.xml28
-rw-r--r--smoketestoo_native/data/styles.xml28
-rw-r--r--smoketestoo_native/makefile.mk73
-rw-r--r--smoketestoo_native/prj/build.lst5
-rw-r--r--smoketestoo_native/prj/d.lst0
-rw-r--r--smoketestoo_native/smoketest.cxx204
-rw-r--r--smoketestoo_native/version.map34
-rw-r--r--soldep/bootstrp/appdef.cxx165
-rw-r--r--soldep/bootstrp/build_list_converter.pl892
-rw-r--r--soldep/bootstrp/dep.cxx116
-rw-r--r--soldep/bootstrp/hashtbl.cxx511
-rw-r--r--soldep/bootstrp/makefile.mk83
-rw-r--r--soldep/bootstrp/minormk.cxx187
-rw-r--r--soldep/bootstrp/prj.cxx2875
-rw-r--r--soldep/bootstrp/prodmap.cxx517
-rw-r--r--soldep/inc/appdef.hxx161
-rw-r--r--soldep/inc/dep.hxx69
-rw-r--r--soldep/inc/dtsodcmp.hrc99
-rw-r--r--soldep/inc/minormk.hxx77
-rw-r--r--soldep/inc/prodmap.hxx86
-rw-r--r--soldep/inc/soldep/connctr.hxx86
-rw-r--r--soldep/inc/soldep/depper.hxx208
-rw-r--r--soldep/inc/soldep/depwin.hxx75
-rw-r--r--soldep/inc/soldep/graphwin.hxx54
-rw-r--r--soldep/inc/soldep/hashobj.hxx45
-rw-r--r--soldep/inc/soldep/hashtbl.hxx204
-rw-r--r--soldep/inc/soldep/objwin.hxx160
-rw-r--r--soldep/inc/soldep/prj.hxx485
-rw-r--r--soldep/inc/soldep/sdtresid.hxx52
-rw-r--r--soldep/inc/soldep/soldep.hxx116
-rw-r--r--soldep/inc/soldep/soldlg.hrc79
-rw-r--r--soldep/inc/soldep/soldlg.hxx160
-rw-r--r--soldep/inc/soldep/tbox.hxx102
-rw-r--r--soldep/prj/build.lst5
-rw-r--r--soldep/prj/d.lst38
-rw-r--r--soldep/source/connctr.cxx272
-rw-r--r--soldep/source/depapp.cxx147
-rw-r--r--soldep/source/depapp.hxx109
-rw-r--r--soldep/source/depper.cxx687
-rw-r--r--soldep/source/depwin.cxx164
-rw-r--r--soldep/source/graphwin.cxx77
-rw-r--r--soldep/source/hashobj.cxx37
-rw-r--r--soldep/source/makefile.mk136
-rw-r--r--soldep/source/objwin.cxx821
-rw-r--r--soldep/source/sdtresid.cxx49
-rw-r--r--soldep/source/soldep.cxx1807
-rw-r--r--soldep/source/soldep.icobin0 -> 10134 bytes-rw-r--r--soldep/source/soldlg.cxx267
-rw-r--r--soldep/source/soldlg.src386
-rw-r--r--soldep/source/tbox.cxx596
-rw-r--r--soldep/util/perl.mk71
-rwxr-xr-xsolenv/bin/_mkout11
-rwxr-xr-xsolenv/bin/addsym-macosx.sh29
-rw-r--r--solenv/bin/addsym-mingw.sh34
-rw-r--r--solenv/bin/addsym.awk41
-rw-r--r--solenv/bin/build.pl3584
-rwxr-xr-xsolenv/bin/build_client.pl445
-rwxr-xr-xsolenv/bin/checkdll.sh83
-rw-r--r--solenv/bin/chrel.sed2
-rw-r--r--solenv/bin/cleandiff.pl45
-rwxr-xr-xsolenv/bin/cleanzip.pl64
-rw-r--r--solenv/bin/clipatchconfig.pl133
-rw-r--r--solenv/bin/convertlinks.pl122
-rw-r--r--solenv/bin/converttags.pl94
-rw-r--r--solenv/bin/createcomponent.xslt51
-rwxr-xr-xsolenv/bin/createpdbrelocators7
-rw-r--r--solenv/bin/createpdbrelocators.btm9
-rw-r--r--solenv/bin/createpdbrelocators.pl82
-rwxr-xr-xsolenv/bin/cws6
-rw-r--r--solenv/bin/cws.btm11
-rw-r--r--solenv/bin/cws.pl2068
-rwxr-xr-xsolenv/bin/cwsattach7
-rw-r--r--solenv/bin/cwsattach.btm11
-rw-r--r--solenv/bin/cwsattach.pl220
-rwxr-xr-xsolenv/bin/cwscreate6
-rwxr-xr-xsolenv/bin/cwstestresult7
-rw-r--r--solenv/bin/cwstestresult.btm11
-rw-r--r--solenv/bin/cwstestresult.pl192
-rwxr-xr-xsolenv/bin/cwstouched6
-rwxr-xr-xsolenv/bin/cwstouched.btm11
-rwxr-xr-xsolenv/bin/cwstouched.pl151
-rwxr-xr-xsolenv/bin/cwstouched.py111
-rw-r--r--solenv/bin/dbgsv.ini29
-rwxr-xr-xsolenv/bin/deliver.pl1528
-rwxr-xr-xsolenv/bin/diffmv.pl76
-rw-r--r--solenv/bin/exectest.pl98
-rw-r--r--solenv/bin/fix_def_file.cmd52
-rw-r--r--solenv/bin/fix_def_ord.cmd19
-rw-r--r--solenv/bin/fix_dxp_file.cmd30
-rw-r--r--solenv/bin/fix_exp_file.cmd54
-rw-r--r--solenv/bin/fix_lin_file.cmd13
-rw-r--r--solenv/bin/fix_shl.cmd11
-rwxr-xr-xsolenv/bin/gccinstlib.pl65
-rw-r--r--solenv/bin/gen_update_info.pl176
-rwxr-xr-xsolenv/bin/gen_userfeedback_VCL_names.pl196
-rwxr-xr-xsolenv/bin/genmap1
-rw-r--r--solenv/bin/getcompver.awk79
-rw-r--r--solenv/bin/getcsym.awk34
-rwxr-xr-xsolenv/bin/gsicheck18
-rwxr-xr-xsolenv/bin/guw.pl347
-rw-r--r--solenv/bin/hicontrast-to-theme.pl125
-rwxr-xr-xsolenv/bin/image-sort.pl149
-rwxr-xr-xsolenv/bin/install-sh3
-rw-r--r--solenv/bin/installoffice.oxtbin0 -> 1680 bytes-rwxr-xr-xsolenv/bin/installoffice_impress.oxtbin0 -> 1311 bytes-rwxr-xr-xsolenv/bin/langwrap131
-rwxr-xr-xsolenv/bin/leconvert.pl91
-rw-r--r--solenv/bin/licinserter.pl138
-rwxr-xr-xsolenv/bin/linkoo360
-rwxr-xr-xsolenv/bin/localize20
-rwxr-xr-xsolenv/bin/localize_sl18
-rw-r--r--solenv/bin/macosx-change-install-names.pl97
-rwxr-xr-xsolenv/bin/macosx-create-bundle105
-rw-r--r--solenv/bin/macosx-dylib-link-list.pl91
-rw-r--r--solenv/bin/make_download.pl129
-rwxr-xr-xsolenv/bin/make_ext_update_info.pl613
-rw-r--r--solenv/bin/make_installer.pl2342
-rwxr-xr-xsolenv/bin/makedepn13
-rw-r--r--solenv/bin/makemani.pl112
-rw-r--r--solenv/bin/mapgen.pl207
-rw-r--r--solenv/bin/mkdir.btm6
-rwxr-xr-xsolenv/bin/mkdir.pl65
-rwxr-xr-xsolenv/bin/mkout.pl162
-rw-r--r--solenv/bin/modules/CreatePDBRelocators.pm206
-rwxr-xr-xsolenv/bin/modules/Cws.pm2153
-rw-r--r--solenv/bin/modules/CwsConfig.pm576
-rwxr-xr-xsolenv/bin/modules/Eis.pm220
-rw-r--r--solenv/bin/modules/GenInfoParser.pm296
-rw-r--r--solenv/bin/modules/RepositoryHelper.pm210
-rwxr-xr-xsolenv/bin/modules/SourceConfig.pm658
-rw-r--r--solenv/bin/modules/SourceConfigHelper.pm422
-rw-r--r--solenv/bin/modules/installer/archivefiles.pm565
-rw-r--r--solenv/bin/modules/installer/configuration.pm901
-rw-r--r--solenv/bin/modules/installer/control.pm729
-rw-r--r--solenv/bin/modules/installer/converter.pm462
-rw-r--r--solenv/bin/modules/installer/copyproject.pm118
-rw-r--r--solenv/bin/modules/installer/download.pm2180
-rw-r--r--solenv/bin/modules/installer/downloadsigner.pm585
-rw-r--r--solenv/bin/modules/installer/environment.pm138
-rw-r--r--solenv/bin/modules/installer/epmfile.pm3454
-rw-r--r--solenv/bin/modules/installer/existence.pm190
-rw-r--r--solenv/bin/modules/installer/exiter.pm113
-rw-r--r--solenv/bin/modules/installer/files.pm219
-rw-r--r--solenv/bin/modules/installer/followme.pm215
-rw-r--r--solenv/bin/modules/installer/globals.pm535
-rw-r--r--solenv/bin/modules/installer/javainstaller.pm1885
-rw-r--r--solenv/bin/modules/installer/languagepack.pm565
-rw-r--r--solenv/bin/modules/installer/languages.pm379
-rw-r--r--solenv/bin/modules/installer/logger.pm339
-rw-r--r--solenv/bin/modules/installer/mail.pm136
-rw-r--r--solenv/bin/modules/installer/packagelist.pm872
-rw-r--r--solenv/bin/modules/installer/packagepool.pm1048
-rw-r--r--solenv/bin/modules/installer/parameter.pm651
-rw-r--r--solenv/bin/modules/installer/pathanalyzer.pm75
-rw-r--r--solenv/bin/modules/installer/profiles.pm231
-rw-r--r--solenv/bin/modules/installer/remover.pm82
-rw-r--r--solenv/bin/modules/installer/scppatchsoname.pm218
-rw-r--r--solenv/bin/modules/installer/scpzipfiles.pm187
-rw-r--r--solenv/bin/modules/installer/scriptitems.pm2944
-rw-r--r--solenv/bin/modules/installer/setupscript.pm540
-rw-r--r--solenv/bin/modules/installer/simplepackage.pm814
-rw-r--r--solenv/bin/modules/installer/sorter.pm116
-rw-r--r--solenv/bin/modules/installer/strip.pm139
-rw-r--r--solenv/bin/modules/installer/substfilenamefiles.pm169
-rw-r--r--solenv/bin/modules/installer/systemactions.pm1738
-rw-r--r--solenv/bin/modules/installer/upx.pm156
-rw-r--r--solenv/bin/modules/installer/windows/admin.pm916
-rw-r--r--solenv/bin/modules/installer/windows/assembly.pm371
-rw-r--r--solenv/bin/modules/installer/windows/binary.pm77
-rw-r--r--solenv/bin/modules/installer/windows/component.pm524
-rw-r--r--solenv/bin/modules/installer/windows/createfolder.pm153
-rw-r--r--solenv/bin/modules/installer/windows/directory.pm456
-rw-r--r--solenv/bin/modules/installer/windows/feature.pm445
-rw-r--r--solenv/bin/modules/installer/windows/featurecomponent.pm244
-rw-r--r--solenv/bin/modules/installer/windows/file.pm971
-rw-r--r--solenv/bin/modules/installer/windows/font.pm110
-rw-r--r--solenv/bin/modules/installer/windows/icon.pm77
-rw-r--r--solenv/bin/modules/installer/windows/idtglobal.pm2423
-rw-r--r--solenv/bin/modules/installer/windows/inifile.pm146
-rw-r--r--solenv/bin/modules/installer/windows/java.pm120
-rw-r--r--solenv/bin/modules/installer/windows/language.pm74
-rw-r--r--solenv/bin/modules/installer/windows/media.pm458
-rwxr-xr-xsolenv/bin/modules/installer/windows/mergemodule.pm1652
-rw-r--r--solenv/bin/modules/installer/windows/msiglobal.pm2265
-rw-r--r--solenv/bin/modules/installer/windows/msp.pm1293
-rw-r--r--solenv/bin/modules/installer/windows/patch.pm155
-rw-r--r--solenv/bin/modules/installer/windows/property.pm656
-rw-r--r--solenv/bin/modules/installer/windows/registry.pm397
-rw-r--r--solenv/bin/modules/installer/windows/removefile.pm152
-rw-r--r--solenv/bin/modules/installer/windows/selfreg.pm88
-rw-r--r--solenv/bin/modules/installer/windows/shortcut.pm697
-rw-r--r--solenv/bin/modules/installer/windows/sign.pm1249
-rw-r--r--solenv/bin/modules/installer/windows/strip.pm159
-rw-r--r--solenv/bin/modules/installer/windows/update.pm600
-rw-r--r--solenv/bin/modules/installer/windows/upgrade.pm167
-rw-r--r--solenv/bin/modules/installer/worker.pm3436
-rw-r--r--solenv/bin/modules/installer/xpdinstaller.pm1832
-rw-r--r--solenv/bin/modules/installer/ziplist.pm812
-rw-r--r--solenv/bin/modules/macosxotoolhelper.pm44
-rwxr-xr-xsolenv/bin/modules/osarch.pm195
-rw-r--r--solenv/bin/modules/packager/check.pm88
-rw-r--r--solenv/bin/modules/packager/existence.pm52
-rw-r--r--solenv/bin/modules/packager/exiter.pm71
-rw-r--r--solenv/bin/modules/packager/files.pm184
-rw-r--r--solenv/bin/modules/packager/globals.pm54
-rw-r--r--solenv/bin/modules/packager/work.pm327
-rw-r--r--solenv/bin/modules/par2script/check.pm347
-rw-r--r--solenv/bin/modules/par2script/converter.pm142
-rw-r--r--solenv/bin/modules/par2script/existence.pm74
-rw-r--r--solenv/bin/modules/par2script/exiter.pm122
-rw-r--r--solenv/bin/modules/par2script/files.pm124
-rw-r--r--solenv/bin/modules/par2script/globals.pm81
-rw-r--r--solenv/bin/modules/par2script/module.pm264
-rw-r--r--solenv/bin/modules/par2script/parameter.pm154
-rw-r--r--solenv/bin/modules/par2script/remover.pm75
-rw-r--r--solenv/bin/modules/par2script/shortcut.pm75
-rw-r--r--solenv/bin/modules/par2script/systemactions.pm184
-rw-r--r--solenv/bin/modules/par2script/undefine.pm144
-rw-r--r--solenv/bin/modules/par2script/work.pm416
-rw-r--r--solenv/bin/modules/pre2par/directory.pm54
-rw-r--r--solenv/bin/modules/pre2par/existence.pm74
-rw-r--r--solenv/bin/modules/pre2par/exiter.pm70
-rw-r--r--solenv/bin/modules/pre2par/files.pm125
-rw-r--r--solenv/bin/modules/pre2par/globals.pm68
-rw-r--r--solenv/bin/modules/pre2par/language.pm172
-rw-r--r--solenv/bin/modules/pre2par/parameter.pm178
-rw-r--r--solenv/bin/modules/pre2par/pathanalyzer.pm75
-rw-r--r--solenv/bin/modules/pre2par/remover.pm67
-rw-r--r--solenv/bin/modules/pre2par/systemactions.pm206
-rw-r--r--solenv/bin/modules/pre2par/work.pm363
-rwxr-xr-xsolenv/bin/msg_filter61
-rw-r--r--solenv/bin/newfolderforce1
-rwxr-xr-xsolenv/bin/oochkpatch6
-rwxr-xr-xsolenv/bin/oochkpatch.btm2
-rw-r--r--solenv/bin/oochkpatch.pl301
-rw-r--r--solenv/bin/packager.pl61
-rw-r--r--solenv/bin/packcomponents.xslt52
-rwxr-xr-xsolenv/bin/packimages.pl437
-rw-r--r--solenv/bin/packregistry.xslt90
-rw-r--r--solenv/bin/par2script.pl115
-rwxr-xr-xsolenv/bin/patch_sanitizer.pl126
-rwxr-xr-xsolenv/bin/pchdelta4
-rwxr-xr-xsolenv/bin/pchdelta.py149
-rw-r--r--solenv/bin/pre2par.pl74
-rwxr-xr-xsolenv/bin/receditor6
-rwxr-xr-xsolenv/bin/relocate233
-rw-r--r--solenv/bin/rmdir.pl46
-rwxr-xr-xsolenv/bin/rpm-wrapper49
-rwxr-xr-xsolenv/bin/slfl.pl176
-rwxr-xr-xsolenv/bin/soirpm.sh32
-rw-r--r--solenv/bin/sort.pl50
-rwxr-xr-xsolenv/bin/subsequenttests158
-rw-r--r--solenv/bin/touch.pl42
-rw-r--r--solenv/bin/transform_description.pl138
-rw-r--r--solenv/bin/unxmap-to-macosx-explist.awk63
-rw-r--r--solenv/bin/update_module_ignore_lists.pl255
-rwxr-xr-xsolenv/bin/zipdep.pl337
-rw-r--r--solenv/config/sdev300.ini3338
-rw-r--r--solenv/config/ssolar.cmn336
-rw-r--r--solenv/inc/_cppunit.mk120
-rw-r--r--solenv/inc/_tg_app.mk2840
-rw-r--r--solenv/inc/_tg_def.mk2810
-rw-r--r--solenv/inc/_tg_lib.mk1020
-rw-r--r--solenv/inc/_tg_rslb.mk610
-rw-r--r--solenv/inc/_tg_scp.mk180
-rw-r--r--solenv/inc/_tg_sdi.mk180
-rw-r--r--solenv/inc/_tg_shl.mk6060
-rw-r--r--solenv/inc/_tg_srs.mk410
-rw-r--r--solenv/inc/_tg_zip.mk1230
-rw-r--r--solenv/inc/ant.mk100
-rw-r--r--solenv/inc/ant.properties12
-rw-r--r--solenv/inc/antsettings.mk87
-rw-r--r--solenv/inc/cppunit.mk56
-rw-r--r--solenv/inc/dummy.flt0
-rw-r--r--solenv/inc/extension_helplink.mk80
-rw-r--r--solenv/inc/extension_post.mk176
-rw-r--r--solenv/inc/extension_pre.mk59
-rw-r--r--solenv/inc/found_no.mk5
-rw-r--r--solenv/inc/installationtest.mk125
-rw-r--r--solenv/inc/javaunittest.mk107
-rw-r--r--solenv/inc/lang.mk57
-rw-r--r--solenv/inc/layout.mk32
-rw-r--r--solenv/inc/libs.mk541
-rw-r--r--solenv/inc/mime.types201
-rw-r--r--solenv/inc/minor.mk5
-rw-r--r--solenv/inc/os2.mk333
-rw-r--r--solenv/inc/os2gcci.mk288
-rw-r--r--solenv/inc/pkg_config.mk49
-rw-r--r--solenv/inc/postmac.h52
-rw-r--r--solenv/inc/postset.mk150
-rw-r--r--solenv/inc/preinclude.h38
-rw-r--r--solenv/inc/premac.h52
-rw-r--r--solenv/inc/pstrules.mk176
-rw-r--r--solenv/inc/rules.mk799
-rw-r--r--solenv/inc/sc.mk28
-rw-r--r--solenv/inc/scpre.mk50
-rw-r--r--solenv/inc/set_ext.mk37
-rwxr-xr-xsolenv/inc/set_wntx64.mk215
-rw-r--r--solenv/inc/settings.mk1373
-rw-r--r--solenv/inc/shlinfo.rc113
-rw-r--r--solenv/inc/startup/OS2/macros.mk30
-rw-r--r--solenv/inc/startup/Readme6
-rw-r--r--solenv/inc/startup/startup.mk109
-rw-r--r--solenv/inc/startup/summary3
-rw-r--r--solenv/inc/startup/wnt/macros.mk32
-rw-r--r--solenv/inc/starview.hid304
-rw-r--r--solenv/inc/target.mk2085
-rw-r--r--solenv/inc/templates/extension_tmpl.mk153
-rw-r--r--solenv/inc/tg_app.mk316
-rw-r--r--solenv/inc/tg_compv.mk158
-rw-r--r--solenv/inc/tg_config.mk203
-rw-r--r--solenv/inc/tg_def.mk313
-rw-r--r--solenv/inc/tg_dep.mk96
-rw-r--r--solenv/inc/tg_ext.mk362
-rw-r--r--solenv/inc/tg_help.mk90
-rw-r--r--solenv/inc/tg_jar.mk89
-rw-r--r--solenv/inc/tg_java.mk84
-rw-r--r--solenv/inc/tg_javav.mk53
-rw-r--r--solenv/inc/tg_lib.mk134
-rw-r--r--solenv/inc/tg_merge.mk66
-rw-r--r--solenv/inc/tg_moz.mk89
-rw-r--r--solenv/inc/tg_obj.mk94
-rwxr-xr-xsolenv/inc/tg_propmerge.mk66
-rw-r--r--solenv/inc/tg_res.mk43
-rw-r--r--solenv/inc/tg_rslb.mk92
-rw-r--r--solenv/inc/tg_scp.mk50
-rw-r--r--solenv/inc/tg_sdi.mk50
-rw-r--r--solenv/inc/tg_shl.mk645
-rw-r--r--solenv/inc/tg_slo.mk98
-rw-r--r--solenv/inc/tg_srs.mk73
-rw-r--r--solenv/inc/tg_wntx64.mk514
-rwxr-xr-xsolenv/inc/tg_xmerge.mk108
-rw-r--r--solenv/inc/tg_yxx.mk48
-rw-r--r--solenv/inc/tg_zip.mk154
-rw-r--r--solenv/inc/trustedinfo.manifest11
-rw-r--r--solenv/inc/udkversion.mk33
-rw-r--r--solenv/inc/unitools.mk186
-rw-r--r--solenv/inc/unx.mk208
-rw-r--r--solenv/inc/unxaixp.mk113
-rw-r--r--solenv/inc/unxbsda.mk99
-rw-r--r--solenv/inc/unxbsdi.mk179
-rw-r--r--solenv/inc/unxbsdi2.mk198
-rw-r--r--solenv/inc/unxbsds.mk179
-rw-r--r--solenv/inc/unxfbsd.mk229
-rw-r--r--solenv/inc/unxfbsdi.mk46
-rw-r--r--solenv/inc/unxfbsdx.mk49
-rw-r--r--solenv/inc/unxhpgr.mk133
-rw-r--r--solenv/inc/unxhpxr.mk131
-rw-r--r--solenv/inc/unxlng.mk265
-rw-r--r--solenv/inc/unxlnga.mk33
-rw-r--r--solenv/inc/unxlngaxp.mk34
-rw-r--r--solenv/inc/unxlnghppa.mk35
-rw-r--r--solenv/inc/unxlngi.mk34
-rw-r--r--solenv/inc/unxlngm68k.mk37
-rw-r--r--solenv/inc/unxlngmips.mk33
-rw-r--r--solenv/inc/unxlngppc.mk37
-rw-r--r--solenv/inc/unxlngppc64.mk34
-rw-r--r--solenv/inc/unxlngr.mk34
-rw-r--r--solenv/inc/unxlngs.mk36
-rw-r--r--solenv/inc/unxlngs390.mk36
-rw-r--r--solenv/inc/unxlngs390x.mk33
-rw-r--r--solenv/inc/unxlngx.mk33
-rw-r--r--solenv/inc/unxmacx.mk289
-rw-r--r--solenv/inc/unxmacxi.mk53
-rw-r--r--solenv/inc/unxmacxp.mk37
-rw-r--r--solenv/inc/unxscoi.mk140
-rw-r--r--solenv/inc/unxsogi.mk141
-rw-r--r--solenv/inc/unxsogs.mk140
-rw-r--r--solenv/inc/unxsoli4.mk241
-rw-r--r--solenv/inc/unxsols4.mk247
-rw-r--r--solenv/inc/unxsolu4.mk242
-rw-r--r--solenv/inc/verinfo.hrc229
-rwxr-xr-xsolenv/inc/version.hrc80
-rw-r--r--solenv/inc/version.lst30
-rwxr-xr-xsolenv/inc/version_so.hrc79
-rw-r--r--solenv/inc/versionlist.mk30
-rw-r--r--solenv/inc/wnt.mk72
-rw-r--r--solenv/inc/wntgcci.mk217
-rw-r--r--solenv/inc/wntmsci10.mk343
-rwxr-xr-xsolenv/inc/wntmsci11.mk391
-rw-r--r--solenv/makefile.mk40
-rw-r--r--solenv/prj/build.lst3
-rw-r--r--solenv/prj/d.lst2
-rwxr-xr-xsolenv/src/component.map7
-rw-r--r--solenv/src/default_description.xml15
-rwxr-xr-xsolenv/src/reg-component.map8
-rw-r--r--solenv/src/solaris_noexstk.map4
-rwxr-xr-xsolenv/src/unloadablecomponent.map8
-rw-r--r--solenv/src/version.c79
-rw-r--r--solenv/unxmacxp/inc/poll.h173
-rw-r--r--soltools/adjustvisibility/adjustvisibility.cxx311
-rw-r--r--soltools/adjustvisibility/makefile.mk59
-rw-r--r--soltools/checkdll/checkdll.c97
-rw-r--r--soltools/checkdll/makefile.mk58
-rw-r--r--soltools/cpp/Test.txt101
-rw-r--r--soltools/cpp/_cpp.c383
-rw-r--r--soltools/cpp/_eval.c766
-rw-r--r--soltools/cpp/_getopt.c71
-rw-r--r--soltools/cpp/_include.c235
-rw-r--r--soltools/cpp/_lex.c688
-rw-r--r--soltools/cpp/_macro.c756
-rw-r--r--soltools/cpp/_mcrvalid.c129
-rw-r--r--soltools/cpp/_nlist.c117
-rw-r--r--soltools/cpp/_tokens.c535
-rw-r--r--soltools/cpp/_unix.c234
-rw-r--r--soltools/cpp/cpp.h239
-rw-r--r--soltools/cpp/makefile.mk76
-rw-r--r--soltools/giparser/gen_info.cxx88
-rw-r--r--soltools/giparser/gi_list.cxx234
-rw-r--r--soltools/giparser/gi_parse.cxx407
-rw-r--r--soltools/giparser/makefile.mk62
-rw-r--r--soltools/giparser/st_gilrw.cxx180
-rw-r--r--soltools/inc/gen_info.hxx89
-rw-r--r--soltools/inc/gi_list.hxx215
-rw-r--r--soltools/inc/gi_parse.hxx165
-rw-r--r--soltools/inc/gilacces.hxx104
-rw-r--r--soltools/inc/pch/precompiled_soltools.cxx29
-rw-r--r--soltools/inc/pch/precompiled_soltools.hxx32
-rw-r--r--soltools/inc/simstr.hxx223
-rw-r--r--soltools/inc/st_gilrw.hxx125
-rw-r--r--soltools/inc/st_list.hxx330
-rw-r--r--soltools/inc/st_types.hxx40
-rw-r--r--soltools/javadep/javadep.c911
-rw-r--r--soltools/javadep/makefile.mk50
-rw-r--r--soltools/ldump/hashtbl.cxx458
-rw-r--r--soltools/ldump/hashtbl.hxx111
-rw-r--r--soltools/ldump/ldump.cxx758
-rw-r--r--soltools/ldump/ldump.hxx78
-rw-r--r--soltools/ldump/makefile.mk59
-rwxr-xr-xsoltools/mkdepend/collectdircontent.cxx83
-rw-r--r--soltools/mkdepend/collectdircontent.hxx58
-rw-r--r--soltools/mkdepend/cppsetup.c234
-rw-r--r--soltools/mkdepend/def.h188
-rw-r--r--soltools/mkdepend/ifparser.c460
-rw-r--r--soltools/mkdepend/ifparser.h75
-rw-r--r--soltools/mkdepend/imakemdep.h730
-rw-r--r--soltools/mkdepend/include.c326
-rw-r--r--soltools/mkdepend/main.c799
-rw-r--r--soltools/mkdepend/makefile.mk82
-rw-r--r--soltools/mkdepend/mkdepend.man368
-rw-r--r--soltools/mkdepend/parse.c614
-rw-r--r--soltools/mkdepend/pr.c137
-rw-r--r--soltools/prj/build.lst13
-rw-r--r--soltools/prj/d.lst11
-rw-r--r--soltools/support/makefile.mk55
-rw-r--r--soltools/support/simstr.cxx833
-rw-r--r--soltools/testSHL/inc/tlog.hxx100
-rw-r--r--soltools/testSHL/inc/tstMgr.hxx73
-rw-r--r--soltools/testSHL/inc/tutil.hxx49
-rw-r--r--soltools/testSHL/makefile.mk52
-rw-r--r--soltools/testSHL/testshl.cxx98
-rw-r--r--soltools/testSHL/util/makefile.mk45
-rw-r--r--soltools/testSHL/util/tlog.cxx108
-rw-r--r--soltools/testSHL/util/tstMgr.cxx164
-rw-r--r--soltools/testSHL/util/tutil.cxx147
-rw-r--r--soltools/testhxx/create.pl125
-rw-r--r--soltools/testhxx/makefile.mk51
-rw-r--r--soltools/testhxx/testhxx.cxx32
-rwxr-xr-xsoltools/util/makefile.pmk52
-rw-r--r--soltools/winunistd/makefile.mk52
-rw-r--r--soltools/winunistd/unistd.h4
-rw-r--r--sot/inc/absdev.hxx48
-rw-r--r--sot/inc/agg.hxx68
-rw-r--r--sot/inc/clsids.hxx33
-rw-r--r--sot/inc/filelist.hxx76
-rw-r--r--sot/inc/makefile.mk48
-rw-r--r--sot/inc/pch/precompiled_sot.cxx29
-rw-r--r--sot/inc/pch/precompiled_sot.hxx32
-rw-r--r--sot/inc/sot/exchange.hxx253
-rw-r--r--sot/inc/sot/factory.hxx91
-rw-r--r--sot/inc/sot/formats.hxx191
-rw-r--r--sot/inc/sot/object.hxx470
-rw-r--r--sot/inc/sot/sotdata.hxx60
-rw-r--r--sot/inc/sot/sotdllapi.h41
-rw-r--r--sot/inc/sot/sotref.hxx77
-rw-r--r--sot/inc/sot/storage.hxx272
-rw-r--r--sot/inc/stg.hxx398
-rw-r--r--sot/inc/storinfo.hxx72
-rw-r--r--sot/prj/build.lst10
-rw-r--r--sot/prj/d.lst28
-rw-r--r--sot/qa/complex/olesimplestorage/OLESimpleStorageTest.java5
-rw-r--r--sot/qa/complex/olesimplestorage/OLESimpleStorageUnitTest.java110
-rw-r--r--sot/qa/complex/olesimplestorage/Test01.java126
-rw-r--r--sot/qa/complex/olesimplestorage/TestHelper.java27
-rw-r--r--sot/qa/complex/olesimplestorage/makefile.mk62
-rw-r--r--sot/source/base/exchange.cxx508
-rw-r--r--sot/source/base/factory.cxx406
-rw-r--r--sot/source/base/filelist.cxx199
-rw-r--r--sot/source/base/formats.cxx1663
-rw-r--r--sot/source/base/makefile.mk58
-rw-r--r--sot/source/base/object.cxx489
-rw-r--r--sot/source/sdstor/makefile.mk64
-rw-r--r--sot/source/sdstor/stg.cxx1091
-rw-r--r--sot/source/sdstor/stgavl.cxx419
-rw-r--r--sot/source/sdstor/stgavl.hxx79
-rw-r--r--sot/source/sdstor/stgcache.cxx546
-rw-r--r--sot/source/sdstor/stgcache.hxx132
-rw-r--r--sot/source/sdstor/stgdir.cxx1054
-rw-r--r--sot/source/sdstor/stgdir.hxx132
-rw-r--r--sot/source/sdstor/stgelem.cxx425
-rw-r--r--sot/source/sdstor/stgelem.hxx166
-rw-r--r--sot/source/sdstor/stgio.cxx389
-rw-r--r--sot/source/sdstor/stgio.hxx80
-rw-r--r--sot/source/sdstor/stgole.cxx230
-rw-r--r--sot/source/sdstor/stgole.hxx77
-rw-r--r--sot/source/sdstor/stgstrms.cxx1241
-rw-r--r--sot/source/sdstor/stgstrms.hxx170
-rw-r--r--sot/source/sdstor/storage.cxx1563
-rw-r--r--sot/source/sdstor/storinfo.cxx111
-rw-r--r--sot/source/sdstor/ucbstorage.cxx3600
-rw-r--r--sot/source/sdstor/unostorageholder.cxx197
-rw-r--r--sot/source/sdstor/unostorageholder.hxx77
-rw-r--r--sot/source/unoolestorage/makefile.mk51
-rw-r--r--sot/source/unoolestorage/register.cxx73
-rw-r--r--sot/source/unoolestorage/xolesimplestorage.cxx811
-rw-r--r--sot/source/unoolestorage/xolesimplestorage.hxx195
-rw-r--r--sot/util/makefile.mk89
-rw-r--r--sot/util/makefile.pmk31
-rw-r--r--sot/util/sot.component34
-rw-r--r--sot/util/sot.flt6
-rw-r--r--sot/workben/makefile.mk53
-rw-r--r--sot/workben/testsot.cxx55
-rw-r--r--splitbuild/base.lst1
-rw-r--r--splitbuild/binfilter.lst1
-rwxr-xr-xsplitbuild/bm4
-rw-r--r--splitbuild/build.lst1
-rw-r--r--splitbuild/calc.lst1
-rw-r--r--splitbuild/common.lst1
-rw-r--r--splitbuild/content.lst1
-rw-r--r--splitbuild/draw.lst1
-rw-r--r--splitbuild/extensions.lst1
-rw-r--r--splitbuild/extern.lst1
-rwxr-xr-xsplitbuild/filter.lst1
-rw-r--r--splitbuild/framework.lst1
-rw-r--r--splitbuild/gui.lst1
-rw-r--r--splitbuild/prj/build.lst1
-rw-r--r--splitbuild/prj/d.lst1
-rw-r--r--splitbuild/start.lst1
-rw-r--r--splitbuild/uno.lst1
-rw-r--r--splitbuild/writer.lst1
-rw-r--r--starmath/inc/action.hxx52
-rw-r--r--starmath/inc/applicat.hxx105
-rw-r--r--starmath/inc/config.hxx58
-rw-r--r--starmath/inc/dialog.hxx524
-rw-r--r--starmath/inc/document.hxx226
-rw-r--r--starmath/inc/edit.hxx151
-rwxr-xr-xstarmath/inc/format.hxx171
-rw-r--r--starmath/inc/helpids.h326
-rw-r--r--starmath/inc/makefile.mk47
-rw-r--r--starmath/inc/node.hxx854
-rw-r--r--starmath/inc/parse.hxx269
-rw-r--r--starmath/inc/pch/precompiled_starmath.cxx29
-rw-r--r--starmath/inc/pch/precompiled_starmath.hxx32
-rw-r--r--starmath/inc/rect.hxx260
-rw-r--r--starmath/inc/smcommands.h68
-rw-r--r--starmath/inc/smdll.hxx50
-rw-r--r--starmath/inc/smmod.hxx180
-rwxr-xr-xstarmath/inc/starmath.hrc475
-rw-r--r--starmath/inc/symbol.hxx189
-rwxr-xr-xstarmath/inc/toolbox.hxx87
-rw-r--r--starmath/inc/types.hxx204
-rw-r--r--starmath/inc/unomodel.hxx109
-rw-r--r--starmath/inc/utility.hxx376
-rw-r--r--starmath/inc/view.hxx298
-rw-r--r--starmath/prj/build.lst9
-rw-r--r--starmath/prj/d.lst23
-rw-r--r--starmath/qa/unoapi/Test.java51
-rw-r--r--starmath/qa/unoapi/knownissues.xcl21
-rw-r--r--starmath/qa/unoapi/makefile.mk48
-rw-r--r--starmath/qa/unoapi/sm.sce9
-rw-r--r--starmath/sdi/makefile.mk58
-rwxr-xr-xstarmath/sdi/smath.sdi964
-rw-r--r--starmath/sdi/smitems.sdi595
-rwxr-xr-xstarmath/sdi/smslots.sdi332
-rw-r--r--starmath/source/accessibility.cxx2068
-rw-r--r--starmath/source/accessibility.hxx411
-rw-r--r--starmath/source/action.cxx67
-rw-r--r--starmath/source/cfgitem.cxx1291
-rw-r--r--starmath/source/cfgitem.hxx214
-rw-r--r--starmath/source/commands.src1561
-rw-r--r--starmath/source/config.cxx128
-rw-r--r--starmath/source/detreg.cxx89
-rwxr-xr-xstarmath/source/dialog.cxx2469
-rw-r--r--starmath/source/dialog.hrc51
-rw-r--r--starmath/source/document.cxx1412
-rw-r--r--starmath/source/edit.cxx982
-rw-r--r--starmath/source/eqnolefilehdr.cxx90
-rw-r--r--starmath/source/eqnolefilehdr.hxx63
-rw-r--r--starmath/source/format.cxx242
-rwxr-xr-xstarmath/source/makefile.mk115
-rw-r--r--starmath/source/math_pch.cxx833
-rw-r--r--starmath/source/mathmlexport.cxx1564
-rw-r--r--starmath/source/mathmlexport.hxx143
-rw-r--r--starmath/source/mathmlimport.cxx3186
-rw-r--r--starmath/source/mathmlimport.hxx347
-rw-r--r--starmath/source/mathtype.cxx3533
-rw-r--r--starmath/source/mathtype.hxx174
-rw-r--r--starmath/source/menu_tmpl.src160
-rwxr-xr-xstarmath/source/node.cxx3053
-rwxr-xr-xstarmath/source/parse.cxx2508
-rw-r--r--starmath/source/rect.cxx776
-rw-r--r--starmath/source/register.cxx233
-rw-r--r--starmath/source/smdetect.cxx490
-rw-r--r--starmath/source/smdetect.hxx95
-rw-r--r--starmath/source/smdll.cxx115
-rw-r--r--starmath/source/smmod.cxx381
-rw-r--r--starmath/source/smres.src1775
-rw-r--r--starmath/source/symbol.cxx363
-rw-r--r--starmath/source/symbol.src345
-rw-r--r--starmath/source/toolbox.cxx404
-rwxr-xr-xstarmath/source/toolbox.hrc46
-rwxr-xr-xstarmath/source/toolbox.src1837
-rw-r--r--starmath/source/typemap.cxx150
-rw-r--r--starmath/source/types.cxx52
-rw-r--r--starmath/source/unodoc.cxx71
-rwxr-xr-xstarmath/source/unomodel.cxx1149
-rw-r--r--starmath/source/utility.cxx383
-rwxr-xr-xstarmath/source/view.cxx1896
-rwxr-xr-xstarmath/uiconfig/smath/menubar/menubar.xml121
-rw-r--r--starmath/uiconfig/smath/statusbar/statusbar.xml8
-rw-r--r--starmath/uiconfig/smath/toolbar/fullscreenbar.xml5
-rw-r--r--starmath/uiconfig/smath/toolbar/standardbar.xml26
-rw-r--r--starmath/uiconfig/smath/toolbar/toolbar.xml12
-rw-r--r--starmath/util/hidother.src116
-rw-r--r--starmath/util/makefile.mk128
-rw-r--r--starmath/util/sm.component61
-rw-r--r--starmath/util/smd.component34
-rw-r--r--starmath/xml/math.xml92
-rw-r--r--stax/makefile.mk78
-rw-r--r--stax/prj/build.lst2
-rw-r--r--stax/prj/d.lst1
-rw-r--r--stlport/STLport-4.0-sunstudio12u1.patch21
-rw-r--r--stlport/STLport-4.0.patch4926
-rw-r--r--stlport/STLport-4.5-0119.patch1328
-rw-r--r--stlport/STLport-4.5-gcc43_warnings.patch113
-rw-r--r--stlport/STLport-4.5.patch1047
-rw-r--r--stlport/dos_lineends.patch60
-rw-r--r--stlport/makefile.mk246
-rw-r--r--stlport/prj/build.lst2
-rw-r--r--stlport/prj/d.lst25
-rw-r--r--stlport/systemstl/functional62
-rw-r--r--stlport/systemstl/hash_map81
-rw-r--r--stlport/systemstl/hash_set52
-rw-r--r--stlport/systemstl/numeric53
-rw-r--r--stlport/systemstl/rope48
-rw-r--r--stlport/systemstl/slist45
-rw-r--r--stlport/systemstl/vector49
-rw-r--r--stlport/systemstlguards/postextstl.h36
-rw-r--r--stlport/systemstlguards/preextstl.h77
-rw-r--r--stlport/win32_custom.bat11
-rwxr-xr-xstlport/win32_custom.sh9
-rwxr-xr-xstlport/win32_sdk.bat11
-rw-r--r--stlport/win32_sdk.sh9
-rw-r--r--stoc/inc/bootstrapservices.hxx111
-rw-r--r--stoc/inc/makefile.mk47
-rw-r--r--stoc/inc/pch/precompiled_stoc.cxx29
-rw-r--r--stoc/inc/pch/precompiled_stoc.hxx289
-rw-r--r--stoc/inc/stocservices.hxx94
-rw-r--r--stoc/prj/build.lst25
-rw-r--r--stoc/prj/d.lst28
-rw-r--r--stoc/source/bootstrap/bootstrap.xml358
-rw-r--r--stoc/source/bootstrap/makefile.mk50
-rw-r--r--stoc/source/bootstrap/services.cxx141
-rw-r--r--stoc/source/corereflection/base.hxx453
-rw-r--r--stoc/source/corereflection/corefl.xml44
-rw-r--r--stoc/source/corereflection/crarray.cxx232
-rw-r--r--stoc/source/corereflection/crbase.cxx291
-rw-r--r--stoc/source/corereflection/crcomp.cxx405
-rw-r--r--stoc/source/corereflection/crefl.cxx516
-rw-r--r--stoc/source/corereflection/crenum.cxx247
-rw-r--r--stoc/source/corereflection/criface.cxx993
-rw-r--r--stoc/source/corereflection/lrucache.hxx243
-rw-r--r--stoc/source/corereflection/makefile.mk82
-rw-r--r--stoc/source/corereflection/reflection.component35
-rw-r--r--stoc/source/cppumaker.mk41
-rw-r--r--stoc/source/defaultregistry/defaultregistry.cxx1423
-rw-r--r--stoc/source/defaultregistry/makefile.mk46
-rw-r--r--stoc/source/implementationregistration/implreg.cxx1937
-rw-r--r--stoc/source/implementationregistration/makefile.mk47
-rw-r--r--stoc/source/implementationregistration/mergekeys.cxx186
-rw-r--r--stoc/source/implementationregistration/mergekeys.hxx52
-rw-r--r--stoc/source/inspect/insp.xml59
-rw-r--r--stoc/source/inspect/introspection.component34
-rw-r--r--stoc/source/inspect/introspection.cxx3091
-rw-r--r--stoc/source/inspect/makefile.mk73
-rw-r--r--stoc/source/invocation/inv.xml77
-rw-r--r--stoc/source/invocation/invocation.component34
-rw-r--r--stoc/source/invocation/invocation.cxx1262
-rw-r--r--stoc/source/invocation/makefile.mk71
-rw-r--r--stoc/source/invocation_adapterfactory/iafactory.cxx1025
-rw-r--r--stoc/source/invocation_adapterfactory/invadp.xml41
-rw-r--r--stoc/source/invocation_adapterfactory/invocadapt.component34
-rw-r--r--stoc/source/invocation_adapterfactory/makefile.mk73
-rw-r--r--stoc/source/javaloader/javaloader.component35
-rw-r--r--stoc/source/javaloader/javaloader.cxx480
-rw-r--r--stoc/source/javaloader/javaloader.xml39
-rw-r--r--stoc/source/javaloader/makefile.mk79
-rw-r--r--stoc/source/javavm/interact.cxx125
-rw-r--r--stoc/source/javavm/interact.hxx75
-rw-r--r--stoc/source/javavm/javavm.component35
-rw-r--r--stoc/source/javavm/javavm.cxx1776
-rw-r--r--stoc/source/javavm/javavm.hxx172
-rw-r--r--stoc/source/javavm/jen.xml70
-rw-r--r--stoc/source/javavm/jvmargs.cxx66
-rw-r--r--stoc/source/javavm/jvmargs.hxx58
-rw-r--r--stoc/source/javavm/makefile.mk94
-rw-r--r--stoc/source/loader/dllcomponentloader.cxx261
-rw-r--r--stoc/source/loader/makefile.mk47
-rw-r--r--stoc/source/module-description.dtd54
-rw-r--r--stoc/source/namingservice/makefile.mk73
-rw-r--r--stoc/source/namingservice/namingservice.component34
-rw-r--r--stoc/source/namingservice/namingservice.cxx246
-rw-r--r--stoc/source/namingservice/namingservice.xml37
-rw-r--r--stoc/source/proxy_factory/makefile.mk73
-rw-r--r--stoc/source/proxy_factory/proxyfac.component34
-rw-r--r--stoc/source/proxy_factory/proxyfac.cxx537
-rw-r--r--stoc/source/proxy_factory/proxyfac.xml37
-rw-r--r--stoc/source/registry_tdprovider/base.hxx647
-rw-r--r--stoc/source/registry_tdprovider/functiondescription.cxx115
-rw-r--r--stoc/source/registry_tdprovider/functiondescription.hxx86
-rw-r--r--stoc/source/registry_tdprovider/makefile.mk61
-rw-r--r--stoc/source/registry_tdprovider/methoddescription.cxx144
-rw-r--r--stoc/source/registry_tdprovider/methoddescription.hxx82
-rw-r--r--stoc/source/registry_tdprovider/rdbtdp_tdenumeration.cxx643
-rw-r--r--stoc/source/registry_tdprovider/rdbtdp_tdenumeration.hxx116
-rw-r--r--stoc/source/registry_tdprovider/structtypedescription.cxx139
-rw-r--r--stoc/source/registry_tdprovider/structtypedescription.hxx105
-rw-r--r--stoc/source/registry_tdprovider/td.cxx80
-rw-r--r--stoc/source/registry_tdprovider/tdcomp.cxx187
-rw-r--r--stoc/source/registry_tdprovider/tdconsts.cxx110
-rw-r--r--stoc/source/registry_tdprovider/tdef.cxx82
-rw-r--r--stoc/source/registry_tdprovider/tdenum.cxx135
-rw-r--r--stoc/source/registry_tdprovider/tdiface.cxx585
-rw-r--r--stoc/source/registry_tdprovider/tdmodule.cxx126
-rw-r--r--stoc/source/registry_tdprovider/tdprop.cxx68
-rw-r--r--stoc/source/registry_tdprovider/tdprovider.cxx632
-rw-r--r--stoc/source/registry_tdprovider/tdservice.cxx565
-rw-r--r--stoc/source/registry_tdprovider/tdsingleton.cxx132
-rw-r--r--stoc/source/security/access_controller.cxx1061
-rw-r--r--stoc/source/security/file_policy.cxx604
-rw-r--r--stoc/source/security/lru_cache.h279
-rw-r--r--stoc/source/security/makefile.mk62
-rw-r--r--stoc/source/security/permissions.cxx666
-rw-r--r--stoc/source/security/permissions.h102
-rw-r--r--stoc/source/servicemanager/makefile.mk47
-rw-r--r--stoc/source/servicemanager/servicemanager.cxx2059
-rw-r--r--stoc/source/simpleregistry/makefile.mk47
-rwxr-xr-xstoc/source/simpleregistry/simpleregistry.cxx1320
-rwxr-xr-xstoc/source/simpleregistry/textualservices.cxx1216
-rw-r--r--stoc/source/simpleregistry/textualservices.hxx67
-rw-r--r--stoc/source/stocservices/makefile.mk49
-rw-r--r--stoc/source/stocservices/stocserv.xml98
-rw-r--r--stoc/source/stocservices/stocservices.cxx111
-rw-r--r--stoc/source/tdmanager/lrucache.hxx247
-rw-r--r--stoc/source/tdmanager/makefile.mk49
-rw-r--r--stoc/source/tdmanager/tdmgr.cxx1163
-rw-r--r--stoc/source/tdmanager/tdmgr_check.cxx556
-rw-r--r--stoc/source/tdmanager/tdmgr_common.hxx60
-rw-r--r--stoc/source/tdmanager/tdmgr_tdenumeration.cxx187
-rw-r--r--stoc/source/tdmanager/tdmgr_tdenumeration.hxx89
-rw-r--r--stoc/source/typeconv/convert.cxx963
-rw-r--r--stoc/source/typeconv/makefile.mk48
-rw-r--r--stoc/source/uriproc/ExternalUriReferenceTranslator.cxx240
-rw-r--r--stoc/source/uriproc/ExternalUriReferenceTranslator.hxx59
-rw-r--r--stoc/source/uriproc/UriReference.cxx206
-rw-r--r--stoc/source/uriproc/UriReference.hxx108
-rw-r--r--stoc/source/uriproc/UriReferenceFactory.cxx724
-rw-r--r--stoc/source/uriproc/UriReferenceFactory.hxx59
-rw-r--r--stoc/source/uriproc/UriSchemeParser_vndDOTsunDOTstarDOTexpand.cxx268
-rw-r--r--stoc/source/uriproc/UriSchemeParser_vndDOTsunDOTstarDOTexpand.hxx62
-rw-r--r--stoc/source/uriproc/UriSchemeParser_vndDOTsunDOTstarDOTscript.cxx485
-rw-r--r--stoc/source/uriproc/UriSchemeParser_vndDOTsunDOTstarDOTscript.hxx61
-rw-r--r--stoc/source/uriproc/VndSunStarPkgUrlReferenceFactory.cxx167
-rw-r--r--stoc/source/uriproc/VndSunStarPkgUrlReferenceFactory.hxx59
-rw-r--r--stoc/source/uriproc/makefile.mk53
-rw-r--r--stoc/source/uriproc/supportsService.cxx51
-rw-r--r--stoc/source/uriproc/supportsService.hxx43
-rw-r--r--stoc/test/excomp/example/ExampleComponent1.idl43
-rw-r--r--stoc/test/excomp/example/ExampleComponent2.idl43
-rw-r--r--stoc/test/excomp/example/XTest.idl49
-rw-r--r--stoc/test/excomp/excomp.cxx136
-rw-r--r--stoc/test/excomp/excomp1.cxx215
-rw-r--r--stoc/test/excomp/excomp1.xml33
-rw-r--r--stoc/test/excomp/excomp2.cxx286
-rw-r--r--stoc/test/excomp/excomp2.xml33
-rw-r--r--stoc/test/excomp/exports.dxp3
-rw-r--r--stoc/test/excomp/makefile.mk130
-rw-r--r--stoc/test/javavm/jvm_interaction/interactionhandler.cxx205
-rw-r--r--stoc/test/javavm/jvm_interaction/makefile.mk81
-rw-r--r--stoc/test/javavm/makefile.mk73
-rw-r--r--stoc/test/javavm/testapplet/TestApplet.html19
-rw-r--r--stoc/test/javavm/testapplet/TestApplet.java58
-rw-r--r--stoc/test/javavm/testapplet/makefile.mk55
-rw-r--r--stoc/test/javavm/testcomponent/TestComponent.java128
-rw-r--r--stoc/test/javavm/testcomponent/makefile.mk58
-rw-r--r--stoc/test/javavm/testcomponent/manifest1
-rw-r--r--stoc/test/javavm/testjavavm.cxx202
-rw-r--r--stoc/test/javavm/testjavavm.java39
-rw-r--r--stoc/test/language_binding.idl177
-rw-r--r--stoc/test/makefile.mk223
-rw-r--r--stoc/test/mergekeys_.cxx31
-rw-r--r--stoc/test/registry_tdprovider/makefile.mk63
-rw-r--r--stoc/test/registry_tdprovider/readme.txt4
-rw-r--r--stoc/test/registry_tdprovider/testregistrytdprovider.cxx943
-rw-r--r--stoc/test/registry_tdprovider/types.idl112
-rw-r--r--stoc/test/security/makefile.mk59
-rw-r--r--stoc/test/security/test_security.cxx523
-rw-r--r--stoc/test/security/test_security.ini6
-rw-r--r--stoc/test/security/test_security.policy37
-rw-r--r--stoc/test/security/test_security_singleuser.ini6
-rw-r--r--stoc/test/tdmanager/makefile.mk75
-rw-r--r--stoc/test/tdmanager/readme.txt4
-rw-r--r--stoc/test/tdmanager/testtdmanager.cxx374
-rw-r--r--stoc/test/tdmanager/types.idl45
-rw-r--r--stoc/test/tdmanager/types2_incomp.idl38
-rw-r--r--stoc/test/tdmanager/types3_incomp.idl33
-rw-r--r--stoc/test/tdmanager/types4_incomp.idl42
-rw-r--r--stoc/test/tdmanager/types5.idl45
-rw-r--r--stoc/test/tdmanager/types5_incomp.idl43
-rw-r--r--stoc/test/tdmanager/types6_incomp.idl43
-rw-r--r--stoc/test/testconv.cxx705
-rw-r--r--stoc/test/testcorefl.cxx412
-rw-r--r--stoc/test/testcorefl.idl102
-rw-r--r--stoc/test/testiadapter.cxx1069
-rw-r--r--stoc/test/testintrosp.cxx1617
-rw-r--r--stoc/test/testintrosp.idl220
-rw-r--r--stoc/test/testloader.cxx137
-rw-r--r--stoc/test/testproxyfac.cxx379
-rw-r--r--stoc/test/testregistry.cxx696
-rw-r--r--stoc/test/testsmgr.cxx105
-rw-r--r--stoc/test/testsmgr2.cxx118
-rw-r--r--stoc/test/testsmgr_cpnt.cxx472
-rw-r--r--stoc/test/testsmgr_cpnt.map9
-rw-r--r--stoc/test/uriproc/makefile.mk83
-rw-r--r--stoc/test/uriproc/test_uriproc.cxx1004
-rw-r--r--stoc/test/uriproc/version.map34
-rw-r--r--stoc/unosdk.mk34
-rw-r--r--stoc/util/bootstrap.component62
-rw-r--r--stoc/util/makefile.mk110
-rw-r--r--stoc/util/stocservices.component51
-rw-r--r--store/inc/makefile.mk47
-rw-r--r--store/inc/pch/precompiled_store.cxx29
-rw-r--r--store/inc/pch/precompiled_store.hxx32
-rw-r--r--store/inc/store/store.h411
-rw-r--r--store/inc/store/store.hxx609
-rw-r--r--store/inc/store/types.h167
-rw-r--r--store/prj/build.lst5
-rw-r--r--store/prj/d.lst13
-rw-r--r--store/source/lockbyte.cxx947
-rw-r--r--store/source/lockbyte.hxx184
-rw-r--r--store/source/makefile.mk71
-rw-r--r--store/source/object.cxx112
-rw-r--r--store/source/object.hxx138
-rw-r--r--store/source/storbase.cxx197
-rw-r--r--store/source/storbase.hxx954
-rw-r--r--store/source/storbios.cxx1129
-rw-r--r--store/source/storbios.hxx267
-rw-r--r--store/source/storcach.cxx561
-rw-r--r--store/source/storcach.hxx112
-rw-r--r--store/source/stordata.cxx1130
-rw-r--r--store/source/stordata.hxx870
-rw-r--r--store/source/stordir.cxx241
-rw-r--r--store/source/stordir.hxx149
-rw-r--r--store/source/store.cxx765
-rw-r--r--store/source/storlckb.cxx451
-rw-r--r--store/source/storlckb.hxx171
-rw-r--r--store/source/storpage.cxx1057
-rw-r--r--store/source/storpage.hxx226
-rw-r--r--store/source/stortree.cxx582
-rw-r--r--store/source/stortree.hxx345
-rw-r--r--store/util/makefile.mk79
-rw-r--r--store/util/store.map31
-rw-r--r--store/util/store.xml7
-rw-r--r--store/version.mk40
-rw-r--r--store/workben/makefile.mk108
-rw-r--r--store/workben/t_base.cxx371
-rw-r--r--store/workben/t_file.cxx244
-rw-r--r--store/workben/t_leak.cxx19
-rw-r--r--store/workben/t_page.cxx1574
-rw-r--r--store/workben/t_store.cxx605
-rw-r--r--svl/inc/PasswordHelper.hxx54
-rw-r--r--svl/inc/adrparse.hxx107
-rw-r--r--svl/inc/broadcast.hxx67
-rw-r--r--svl/inc/cntnrsrt.hxx174
-rw-r--r--svl/inc/cntwids.hrc506
-rw-r--r--svl/inc/converter.hxx43
-rw-r--r--svl/inc/filenotation.hxx71
-rw-r--r--svl/inc/folderrestriction.hxx56
-rw-r--r--svl/inc/fstathelper.hxx65
-rw-r--r--svl/inc/inetdef.hxx29
-rw-r--r--svl/inc/inetmsg.hxx29
-rw-r--r--svl/inc/inetstrm.hxx29
-rw-r--r--svl/inc/instrm.hxx80
-rw-r--r--svl/inc/listener.hxx65
-rw-r--r--svl/inc/listeneriter.hxx79
-rwxr-xr-xsvl/inc/lngmisc.hxx76
-rw-r--r--svl/inc/makefile.mk48
-rw-r--r--svl/inc/nfsymbol.hxx69
-rw-r--r--svl/inc/numuno.hxx99
-rw-r--r--svl/inc/outstrm.hxx66
-rw-r--r--svl/inc/pch/precompiled_svl.cxx29
-rw-r--r--svl/inc/pch/precompiled_svl.hxx432
-rw-r--r--svl/inc/pickerhistory.hxx51
-rw-r--r--svl/inc/pickerhistoryaccess.hxx54
-rw-r--r--svl/inc/poolcach.hxx58
-rw-r--r--svl/inc/strmadpt.hxx135
-rw-r--r--svl/inc/stylepool.hxx100
-rw-r--r--svl/inc/svl/aeitem.hxx71
-rw-r--r--svl/inc/svl/asiancfg.hxx69
-rw-r--r--svl/inc/svl/brdcst.hxx75
-rw-r--r--svl/inc/svl/cancel.hxx142
-rw-r--r--svl/inc/svl/cenumitm.hxx177
-rw-r--r--svl/inc/svl/cintitem.hxx283
-rw-r--r--svl/inc/svl/cjkoptions.hxx79
-rw-r--r--svl/inc/svl/cnclhint.hxx48
-rw-r--r--svl/inc/svl/cntwall.hxx80
-rw-r--r--svl/inc/svl/ctloptions.hxx94
-rw-r--r--svl/inc/svl/ctypeitm.hxx82
-rw-r--r--svl/inc/svl/custritm.hxx92
-rw-r--r--svl/inc/svl/dateitem.hxx106
-rw-r--r--svl/inc/svl/documentlockfile.hxx71
-rw-r--r--svl/inc/svl/eitem.hxx69
-rw-r--r--svl/inc/svl/filerec.hxx1084
-rw-r--r--svl/inc/svl/flagitem.hxx80
-rw-r--r--svl/inc/svl/globalnameitem.hxx59
-rw-r--r--svl/inc/svl/hint.hxx72
-rw-r--r--svl/inc/svl/httpcook.hxx152
-rw-r--r--svl/inc/svl/ilstitem.hxx63
-rw-r--r--svl/inc/svl/imageitm.hxx59
-rw-r--r--svl/inc/svl/inethist.hxx132
-rw-r--r--svl/inc/svl/inettype.hxx476
-rw-r--r--svl/inc/svl/intitem.hxx173
-rw-r--r--svl/inc/svl/isethint.hxx55
-rw-r--r--svl/inc/svl/itemiter.hxx68
-rw-r--r--svl/inc/svl/itempool.hxx303
-rw-r--r--svl/inc/svl/itemprop.hxx219
-rw-r--r--svl/inc/svl/itemset.hxx213
-rw-r--r--svl/inc/svl/languageoptions.hxx128
-rw-r--r--svl/inc/svl/lckbitem.hxx65
-rw-r--r--svl/inc/svl/lockfilecommon.hxx80
-rw-r--r--svl/inc/svl/lstner.hxx78
-rw-r--r--svl/inc/svl/macitem.hxx209
-rw-r--r--svl/inc/svl/mailenum.hxx95
-rw-r--r--svl/inc/svl/memberid.hrc69
-rw-r--r--svl/inc/svl/metitem.hxx53
-rw-r--r--svl/inc/svl/nfkeytab.hxx117
-rw-r--r--svl/inc/svl/nfversi.hxx69
-rw-r--r--svl/inc/svl/nranges.hxx94
-rw-r--r--svl/inc/svl/ondemand.hxx465
-rw-r--r--svl/inc/svl/ownlist.hxx99
-rw-r--r--svl/inc/svl/poolitem.hxx488
-rw-r--r--svl/inc/svl/ptitem.hxx77
-rw-r--r--svl/inc/svl/rectitem.hxx77
-rw-r--r--svl/inc/svl/restrictedpaths.hxx82
-rw-r--r--svl/inc/svl/rngitem.hxx114
-rw-r--r--svl/inc/svl/sfontitm.hxx241
-rw-r--r--svl/inc/svl/sharecontrolfile.hxx85
-rw-r--r--svl/inc/svl/slstitm.hxx84
-rw-r--r--svl/inc/svl/smplhint.hxx99
-rw-r--r--svl/inc/svl/solar.hrc341
-rw-r--r--svl/inc/svl/srchcfg.hxx82
-rw-r--r--svl/inc/svl/srchdefs.hxx49
-rw-r--r--svl/inc/svl/srchitem.hxx293
-rw-r--r--svl/inc/svl/stritem.hxx55
-rw-r--r--svl/inc/svl/style.hrc39
-rw-r--r--svl/inc/svl/style.hxx397
-rw-r--r--svl/inc/svl/svarray.hxx1053
-rw-r--r--svl/inc/svl/svdde.hxx480
-rw-r--r--svl/inc/svl/svl.hrc160
-rw-r--r--svl/inc/svl/svldata.hxx72
-rw-r--r--svl/inc/svl/svldllapi.h41
-rw-r--r--svl/inc/svl/svstdarr.hxx271
-rw-r--r--svl/inc/svl/szitem.hxx77
-rw-r--r--svl/inc/svl/undo.hxx237
-rw-r--r--svl/inc/svl/urlfilter.hxx63
-rw-r--r--svl/inc/svl/visitem.hxx93
-rw-r--r--svl/inc/svl/zforlist.hxx1031
-rw-r--r--svl/inc/svl/zformat.hxx593
-rw-r--r--svl/inc/urihelper.hxx235
-rw-r--r--svl/inc/urlbmk.hxx69
-rw-r--r--svl/inc/whiter.hxx60
-rw-r--r--svl/inc/xmlement.hxx43
-rw-r--r--svl/prj/build.lst26
-rw-r--r--svl/prj/d.lst25
-rw-r--r--svl/qa/complex/ConfigItems/CheckConfigItems.java219
-rw-r--r--svl/qa/complex/ConfigItems/helper/AccessibilityOptTest.cxx392
-rw-r--r--svl/qa/complex/ConfigItems/helper/AccessibilityOptTest.hxx70
-rw-r--r--svl/qa/complex/ConfigItems/helper/ConfigItemTest.cxx245
-rw-r--r--svl/qa/complex/ConfigItems/helper/HistoryOptTest.cxx798
-rw-r--r--svl/qa/complex/ConfigItems/helper/HistoryOptTest.hxx203
-rw-r--r--svl/qa/complex/ConfigItems/helper/PrintOptTest.cxx735
-rw-r--r--svl/qa/complex/ConfigItems/helper/PrintOptTest.hxx84
-rw-r--r--svl/qa/complex/ConfigItems/helper/UserOptTest.cxx266
-rw-r--r--svl/qa/complex/ConfigItems/helper/UserOptTest.hxx70
-rw-r--r--svl/qa/complex/ConfigItems/helper/makefile.mk74
-rw-r--r--svl/qa/complex/ConfigItems/makefile.mk61
-rw-r--r--svl/qa/complex/passwordcontainer/MasterPasswdHandler.java65
-rw-r--r--svl/qa/complex/passwordcontainer/PasswordContainerTest.java32
-rw-r--r--svl/qa/complex/passwordcontainer/PasswordContainerUnitTest.java104
-rw-r--r--svl/qa/complex/passwordcontainer/Test01.java111
-rw-r--r--svl/qa/complex/passwordcontainer/Test02.java154
-rw-r--r--svl/qa/complex/passwordcontainer/Test03.java118
-rw-r--r--svl/qa/complex/passwordcontainer/TestHelper.java90
-rw-r--r--svl/qa/complex/passwordcontainer/makefile.mk134
-rw-r--r--svl/qa/export.map34
-rw-r--r--svl/qa/makefile.mk101
-rw-r--r--svl/qa/test_URIHelper.cxx459
-rw-r--r--svl/source/config/asiancfg.cxx291
-rw-r--r--svl/source/config/cjkoptions.cxx504
-rw-r--r--svl/source/config/ctloptions.cxx492
-rw-r--r--svl/source/config/itemholder2.cxx179
-rw-r--r--svl/source/config/itemholder2.hxx89
-rw-r--r--svl/source/config/languageoptions.cxx276
-rw-r--r--svl/source/config/makefile.mk52
-rw-r--r--svl/source/config/srchcfg.cxx287
-rw-r--r--svl/source/filepicker/makefile.mk46
-rw-r--r--svl/source/filepicker/pickerhistory.cxx138
-rw-r--r--svl/source/filerec/filerec.cxx1016
-rw-r--r--svl/source/filerec/makefile.mk46
-rw-r--r--svl/source/fsstor/fsfactory.cxx268
-rw-r--r--svl/source/fsstor/fsstorage.component35
-rw-r--r--svl/source/fsstor/fsstorage.cxx1614
-rw-r--r--svl/source/fsstor/fsstorage.hxx337
-rw-r--r--svl/source/fsstor/makefile.mk74
-rw-r--r--svl/source/fsstor/oinputstreamcontainer.cxx347
-rw-r--r--svl/source/fsstor/oinputstreamcontainer.hxx96
-rw-r--r--svl/source/fsstor/ostreamcontainer.cxx567
-rw-r--r--svl/source/fsstor/ostreamcontainer.hxx125
-rw-r--r--svl/source/inc/fsfactory.hxx72
-rw-r--r--svl/source/inc/passwordcontainer.hxx426
-rw-r--r--svl/source/inc/poolio.hxx201
-rw-r--r--svl/source/items/aeitem.cxx314
-rw-r--r--svl/source/items/cenumitm.cxx294
-rw-r--r--svl/source/items/cintitem.cxx562
-rw-r--r--svl/source/items/cntwall.cxx167
-rw-r--r--svl/source/items/cstitem.src69
-rw-r--r--svl/source/items/ctypeitm.cxx251
-rw-r--r--svl/source/items/custritm.cxx138
-rw-r--r--svl/source/items/dateitem.cxx278
-rw-r--r--svl/source/items/eitem.cxx47
-rw-r--r--svl/source/items/flagitem.cxx163
-rw-r--r--svl/source/items/globalnameitem.cxx114
-rw-r--r--svl/source/items/ilstitem.cxx103
-rw-r--r--svl/source/items/imageitm.cxx145
-rw-r--r--svl/source/items/intitem.cxx258
-rw-r--r--svl/source/items/itemiter.cxx119
-rw-r--r--svl/source/items/itempool.cxx1173
-rw-r--r--svl/source/items/itemprop.cxx503
-rw-r--r--svl/source/items/itemset.cxx2125
-rw-r--r--svl/source/items/lckbitem.cxx191
-rw-r--r--svl/source/items/macitem.cxx295
-rw-r--r--svl/source/items/makefile.mk84
-rw-r--r--svl/source/items/nranges.cxx850
-rw-r--r--svl/source/items/poolcach.cxx156
-rw-r--r--svl/source/items/poolio.cxx1712
-rw-r--r--svl/source/items/poolitem.cxx524
-rw-r--r--svl/source/items/ptitem.cxx205
-rw-r--r--svl/source/items/rectitem.cxx201
-rw-r--r--svl/source/items/rngitem.cxx54
-rw-r--r--svl/source/items/rngitem_inc.cxx240
-rw-r--r--svl/source/items/sfontitm.cxx139
-rw-r--r--svl/source/items/sitem.cxx113
-rw-r--r--svl/source/items/slstitm.cxx422
-rw-r--r--svl/source/items/srchitem.cxx653
-rw-r--r--svl/source/items/stritem.cxx72
-rw-r--r--svl/source/items/style.cxx1397
-rw-r--r--svl/source/items/stylepool.cxx541
-rw-r--r--svl/source/items/szitem.cxx211
-rw-r--r--svl/source/items/visitem.cxx145
-rw-r--r--svl/source/items/whassert.hxx54
-rw-r--r--svl/source/items/whiter.cxx124
-rw-r--r--svl/source/memtools/makefile.mk46
-rw-r--r--svl/source/memtools/svarray.cxx382
-rw-r--r--svl/source/misc/PasswordHelper.cxx106
-rw-r--r--svl/source/misc/adrparse.cxx918
-rw-r--r--svl/source/misc/documentlockfile.cxx234
-rw-r--r--svl/source/misc/filenotation.cxx144
-rw-r--r--svl/source/misc/folderrestriction.cxx106
-rw-r--r--svl/source/misc/fstathelper.cxx100
-rw-r--r--svl/source/misc/inethist.cxx542
-rw-r--r--svl/source/misc/inettype.cxx1340
-rwxr-xr-xsvl/source/misc/lngmisc.cxx171
-rw-r--r--svl/source/misc/lockfilecommon.cxx272
-rw-r--r--svl/source/misc/makefile.mk70
-rw-r--r--svl/source/misc/mediatyp.src607
-rw-r--r--svl/source/misc/ownlist.cxx327
-rw-r--r--svl/source/misc/restrictedpaths.cxx214
-rw-r--r--svl/source/misc/sharecontrolfile.cxx373
-rw-r--r--svl/source/misc/strmadpt.cxx1045
-rw-r--r--svl/source/misc/svldata.cxx91
-rw-r--r--svl/source/misc/urihelper.cxx948
-rw-r--r--svl/source/notify/brdcst.cxx209
-rw-r--r--svl/source/notify/broadcast.cxx148
-rw-r--r--svl/source/notify/cancel.cxx201
-rw-r--r--svl/source/notify/hint.cxx47
-rw-r--r--svl/source/notify/isethint.cxx75
-rw-r--r--svl/source/notify/listener.cxx166
-rw-r--r--svl/source/notify/listenerbase.cxx81
-rw-r--r--svl/source/notify/listenerbase.hxx57
-rw-r--r--svl/source/notify/listeneriter.cxx192
-rw-r--r--svl/source/notify/lstner.cxx193
-rw-r--r--svl/source/notify/makefile.mk62
-rw-r--r--svl/source/notify/smplhint.cxx47
-rw-r--r--svl/source/numbers/makefile.mk74
-rw-r--r--svl/source/numbers/numfmuno.cxx1140
-rw-r--r--svl/source/numbers/numfmuno.hxx321
-rw-r--r--svl/source/numbers/numhead.cxx249
-rw-r--r--svl/source/numbers/numhead.hxx106
-rw-r--r--svl/source/numbers/numuno.cxx167
-rw-r--r--svl/source/numbers/supservs.cxx229
-rw-r--r--svl/source/numbers/supservs.hxx102
-rw-r--r--svl/source/numbers/zforfind.cxx2816
-rw-r--r--svl/source/numbers/zforfind.hxx288
-rw-r--r--svl/source/numbers/zforlist.cxx4401
-rw-r--r--svl/source/numbers/zformat.cxx4593
-rw-r--r--svl/source/numbers/zforscan.cxx2809
-rw-r--r--svl/source/numbers/zforscan.hxx275
-rw-r--r--svl/source/passwordcontainer/makefile.mk70
-rw-r--r--svl/source/passwordcontainer/passwordcontainer.component34
-rw-r--r--svl/source/passwordcontainer/passwordcontainer.cxx1567
-rw-r--r--svl/source/passwordcontainer/syscreds.cxx300
-rw-r--r--svl/source/passwordcontainer/syscreds.hxx92
-rw-r--r--svl/source/svdde/ddecli.cxx473
-rw-r--r--svl/source/svdde/ddedata.cxx226
-rw-r--r--svl/source/svdde/ddeimp.hxx177
-rw-r--r--svl/source/svdde/ddeinf.cxx190
-rw-r--r--svl/source/svdde/ddeml1.cxx2658
-rw-r--r--svl/source/svdde/ddeml2.cxx1011
-rw-r--r--svl/source/svdde/ddemldeb.cxx280
-rw-r--r--svl/source/svdde/ddemldeb.hxx66
-rw-r--r--svl/source/svdde/ddemlimp.hxx433
-rw-r--r--svl/source/svdde/ddemlos2.h374
-rw-r--r--svl/source/svdde/ddestrg.cxx74
-rw-r--r--svl/source/svdde/ddesvr.cxx1104
-rw-r--r--svl/source/svdde/ddewrap.cxx100
-rw-r--r--svl/source/svdde/ddewrap.hxx24
-rw-r--r--svl/source/svdde/makefile.mk60
-rw-r--r--svl/source/svsql/converter.cxx42
-rw-r--r--svl/source/svsql/makefile.mk46
-rw-r--r--svl/source/undo/makefile.mk47
-rw-r--r--svl/source/undo/undo.cxx816
-rw-r--r--svl/source/uno/makefile.mk47
-rw-r--r--svl/source/uno/pathservice.cxx103
-rw-r--r--svl/source/uno/registerservices.cxx120
-rw-r--r--svl/unx/inc/convert.hxx63
-rw-r--r--svl/unx/source/svdde/ddedummy.cxx338
-rw-r--r--svl/unx/source/svdde/makefile.mk46
-rw-r--r--svl/util/makefile.mk130
-rw-r--r--svl/util/svl.component40
-rw-r--r--svl/util/svl.pmk31
-rw-r--r--svtools/bmpmaker/bmp.cxx248
-rw-r--r--svtools/bmpmaker/bmp.hrc44
-rw-r--r--svtools/bmpmaker/bmp.src124
-rw-r--r--svtools/bmpmaker/bmpcore.cxx420
-rw-r--r--svtools/bmpmaker/bmpcore.hxx97
-rw-r--r--svtools/bmpmaker/bmpsum.cxx508
-rw-r--r--svtools/bmpmaker/g2g.cxx251
-rw-r--r--svtools/bmpmaker/makefile.mk74
-rw-r--r--svtools/inc/DocumentInfoPreview.hxx61
-rw-r--r--svtools/inc/QueryFolderName.hxx66
-rw-r--r--svtools/inc/acceleratorexecute.hxx287
-rw-r--r--svtools/inc/addresstemplate.hxx163
-rw-r--r--svtools/inc/apearcfg.hxx127
-rw-r--r--svtools/inc/asynclink.hxx77
-rw-r--r--svtools/inc/calendar.hxx501
-rw-r--r--svtools/inc/cliplistener.hxx61
-rw-r--r--svtools/inc/collatorres.hxx24
-rw-r--r--svtools/inc/contextmenuhelper.hxx130
-rw-r--r--svtools/inc/controldims.hrc102
-rw-r--r--svtools/inc/ctrlbox.hxx504
-rw-r--r--svtools/inc/ctrltool.hxx251
-rw-r--r--svtools/inc/dialogclosedlistener.hxx77
-rw-r--r--svtools/inc/dialogcontrolling.hxx306
-rw-r--r--svtools/inc/expander.hxx92
-rw-r--r--svtools/inc/extcolorcfg.hxx128
-rw-r--r--svtools/inc/filectrl.hxx111
-rw-r--r--svtools/inc/filedlg.hxx108
-rw-r--r--svtools/inc/filedlg2.hrc41
-rw-r--r--svtools/inc/fileview.hxx271
-rw-r--r--svtools/inc/fltdefs.hxx136
-rw-r--r--svtools/inc/fontsubstconfig.hxx68
-rw-r--r--svtools/inc/framestatuslistener.hxx116
-rw-r--r--svtools/inc/helpagentwindow.hxx88
-rw-r--r--svtools/inc/htmlkywd.hxx801
-rw-r--r--svtools/inc/htmltokn.h569
-rw-r--r--svtools/inc/imagemgr.hrc190
-rw-r--r--svtools/inc/imagemgr.hxx95
-rw-r--r--svtools/inc/imageresourceaccess.hxx90
-rw-r--r--svtools/inc/imgdef.hxx43
-rw-r--r--svtools/inc/indexentryres.hxx23
-rw-r--r--svtools/inc/inetimg.hxx86
-rw-r--r--svtools/inc/itemdel.hxx39
-rw-r--r--svtools/inc/ivctrl.hxx390
-rw-r--r--svtools/inc/localresaccess.hxx82
-rw-r--r--svtools/inc/makefile.mk48
-rw-r--r--svtools/inc/pch/precompiled_svtools.cxx29
-rw-r--r--svtools/inc/pch/precompiled_svtools.hxx437
-rw-r--r--svtools/inc/prgsbar.hxx100
-rw-r--r--svtools/inc/roadmap.hxx137
-rw-r--r--svtools/inc/rtfkeywd.hxx1141
-rw-r--r--svtools/inc/rtfout.hxx67
-rw-r--r--svtools/inc/rtftoken.h1273
-rw-r--r--svtools/inc/ruler.hxx874
-rw-r--r--svtools/inc/scriptedtext.hxx129
-rw-r--r--svtools/inc/scrwin.hxx112
-rw-r--r--svtools/inc/sfxecode.hxx118
-rw-r--r--svtools/inc/soerr.hxx81
-rw-r--r--svtools/inc/sores.hxx179
-rw-r--r--svtools/inc/statusbarcontroller.hxx158
-rw-r--r--svtools/inc/stdmenu.hxx241
-rw-r--r--svtools/inc/svtools/AccessibleBrowseBoxObjType.hxx59
-rw-r--r--svtools/inc/svtools/FilterConfigItem.hxx100
-rw-r--r--svtools/inc/svtools/accessibilityoptions.hxx82
-rwxr-xr-xsvtools/inc/svtools/accessiblefactory.hxx187
-rwxr-xr-xsvtools/inc/svtools/accessibletable.hxx183
-rw-r--r--svtools/inc/svtools/accessibletableprovider.hxx252
-rw-r--r--svtools/inc/svtools/brwbox.hxx877
-rw-r--r--svtools/inc/svtools/brwhead.hxx53
-rw-r--r--svtools/inc/svtools/chartprettypainter.hxx71
-rw-r--r--svtools/inc/svtools/colctrl.hxx202
-rw-r--r--svtools/inc/svtools/colorcfg.hxx152
-rw-r--r--svtools/inc/svtools/colrdlg.hxx107
-rw-r--r--svtools/inc/svtools/editbrowsebox.hxx696
-rw-r--r--svtools/inc/svtools/editimplementation.hxx151
-rw-r--r--svtools/inc/svtools/editsyntaxhighlighter.hxx64
-rw-r--r--svtools/inc/svtools/ehdl.hxx88
-rw-r--r--svtools/inc/svtools/embedhlp.hxx142
-rw-r--r--svtools/inc/svtools/embedtransfer.hxx64
-rw-r--r--svtools/inc/svtools/extensionlistbox.hxx105
-rw-r--r--svtools/inc/svtools/fileurlbox.hxx77
-rw-r--r--svtools/inc/svtools/filter.hxx375
-rw-r--r--svtools/inc/svtools/fixedhyper.hxx231
-rw-r--r--svtools/inc/svtools/fltcall.hxx74
-rw-r--r--svtools/inc/svtools/fmtfield.hxx350
-rw-r--r--svtools/inc/svtools/generictoolboxcontroller.hxx71
-rw-r--r--svtools/inc/svtools/genericunodialog.hxx194
-rw-r--r--svtools/inc/svtools/grfmgr.hxx571
-rw-r--r--svtools/inc/svtools/headbar.hxx395
-rw-r--r--svtools/inc/svtools/helpid.hrc130
-rw-r--r--svtools/inc/svtools/helpopt.hxx96
-rw-r--r--svtools/inc/svtools/htmlcfg.hxx107
-rw-r--r--svtools/inc/svtools/htmlout.hxx125
-rw-r--r--svtools/inc/svtools/hyperlabel.hxx98
-rw-r--r--svtools/inc/svtools/imap.hxx171
-rw-r--r--svtools/inc/svtools/imapcirc.hxx87
-rw-r--r--svtools/inc/svtools/imapobj.hxx163
-rw-r--r--svtools/inc/svtools/imappoly.hxx93
-rw-r--r--svtools/inc/svtools/imaprect.hxx85
-rw-r--r--svtools/inc/svtools/inettbc.hxx111
-rw-r--r--svtools/inc/svtools/insdlg.hxx74
-rw-r--r--svtools/inc/svtools/javacontext.hxx91
-rw-r--r--svtools/inc/svtools/javainteractionhandler.hxx82
-rw-r--r--svtools/inc/svtools/langtab.hxx58
-rw-r--r--svtools/inc/svtools/menuoptions.hxx169
-rw-r--r--svtools/inc/svtools/miscopt.hxx180
-rw-r--r--svtools/inc/svtools/optionsdrawinglayer.hxx238
-rw-r--r--svtools/inc/svtools/parhtml.hxx297
-rw-r--r--svtools/inc/svtools/parrtf.hxx91
-rw-r--r--svtools/inc/svtools/popupmenucontrollerbase.hxx141
-rw-r--r--svtools/inc/svtools/popupwindowcontroller.hxx85
-rw-r--r--svtools/inc/svtools/printdlg.hxx297
-rw-r--r--svtools/inc/svtools/printoptions.hxx124
-rw-r--r--svtools/inc/svtools/prnsetup.hxx122
-rw-r--r--svtools/inc/svtools/roadmapwizard.hxx257
-rw-r--r--svtools/inc/svtools/stdctrl.hxx73
-rw-r--r--svtools/inc/svtools/stringtransfer.hxx83
-rw-r--r--svtools/inc/svtools/svicnvw.hxx291
-rw-r--r--svtools/inc/svtools/svlbitm.hxx299
-rw-r--r--svtools/inc/svtools/svlbox.hxx664
-rw-r--r--svtools/inc/svtools/svmedit.hxx154
-rw-r--r--svtools/inc/svtools/svmedit2.hxx54
-rw-r--r--svtools/inc/svtools/svparser.hxx285
-rw-r--r--svtools/inc/svtools/svtabbx.hxx268
-rw-r--r--svtools/inc/svtools/svtdata.hxx70
-rw-r--r--svtools/inc/svtools/svtdllapi.h41
-rw-r--r--svtools/inc/svtools/svtools.hrc389
-rw-r--r--svtools/inc/svtools/svtreebx.hxx422
-rw-r--r--svtools/inc/svtools/svxbox.hxx189
-rw-r--r--svtools/inc/svtools/syntaxhighlight.hxx191
-rw-r--r--svtools/inc/svtools/table/abstracttablecontrol.hxx134
-rw-r--r--svtools/inc/svtools/table/defaultinputhandler.hxx69
-rw-r--r--svtools/inc/svtools/table/gridtablerenderer.hxx108
-rw-r--r--svtools/inc/svtools/table/tablecontrol.hxx243
-rw-r--r--svtools/inc/svtools/table/tabledatawindow.hxx86
-rw-r--r--svtools/inc/svtools/table/tableinputhandler.hxx78
-rw-r--r--svtools/inc/svtools/table/tablemodel.hxx483
-rw-r--r--svtools/inc/svtools/table/tablerenderer.hxx274
-rw-r--r--svtools/inc/svtools/table/tabletypes.hxx76
-rw-r--r--svtools/inc/svtools/textdata.hxx205
-rw-r--r--svtools/inc/svtools/texteng.hxx329
-rw-r--r--svtools/inc/svtools/textview.hxx224
-rw-r--r--svtools/inc/svtools/textwindowpeer.hxx71
-rw-r--r--svtools/inc/svtools/toolbarmenu.hxx155
-rw-r--r--svtools/inc/svtools/toolboxcontroller.hxx175
-rwxr-xr-xsvtools/inc/svtools/toolpanel/decklayouter.hxx104
-rw-r--r--svtools/inc/svtools/toolpanel/drawerlayouter.hxx102
-rw-r--r--svtools/inc/svtools/toolpanel/paneltabbar.hxx102
-rw-r--r--svtools/inc/svtools/toolpanel/refbase.hxx80
-rw-r--r--svtools/inc/svtools/toolpanel/tabalignment.hxx47
-rw-r--r--svtools/inc/svtools/toolpanel/tabitemcontent.hxx48
-rwxr-xr-xsvtools/inc/svtools/toolpanel/tablayouter.hxx112
-rw-r--r--svtools/inc/svtools/toolpanel/toolpanel.hxx146
-rwxr-xr-xsvtools/inc/svtools/toolpanel/toolpaneldeck.hxx193
-rw-r--r--svtools/inc/svtools/transfer.hxx591
-rw-r--r--svtools/inc/svtools/treelist.hxx514
-rw-r--r--svtools/inc/svtools/ttprops.hxx106
-rw-r--r--svtools/inc/svtools/unitconv.hxx113
-rw-r--r--svtools/inc/svtools/urlcontrol.hxx61
-rw-r--r--svtools/inc/svtools/valueset.hxx445
-rw-r--r--svtools/inc/svtools/wizardmachine.hxx394
-rw-r--r--svtools/inc/svtools/wizdlg.hxx311
-rw-r--r--svtools/inc/svtools/wmf.hxx46
-rw-r--r--svtools/inc/svtools/xtextedt.hxx79
-rwxr-xr-xsvtools/inc/svtools/xwindowitem.hxx70
-rw-r--r--svtools/inc/sychconv.hxx47
-rw-r--r--svtools/inc/tabbar.hxx560
-rw-r--r--svtools/inc/taskbar.hxx490
-rw-r--r--svtools/inc/templatefoldercache.hxx108
-rw-r--r--svtools/inc/templdlg.hxx92
-rw-r--r--svtools/inc/testtool.hxx75
-rw-r--r--svtools/inc/tooltiplbox.hxx67
-rw-r--r--svtools/inc/txtattr.hxx235
-rw-r--r--svtools/inc/txtcmp.hxx33
-rw-r--r--svtools/inc/unoevent.hxx329
-rw-r--r--svtools/inc/unoimap.hxx45
-rw-r--r--svtools/inc/wallitem.hxx65
-rw-r--r--svtools/prj/build.lst33
-rw-r--r--svtools/prj/d.lst43
-rw-r--r--svtools/prj/svtools.xml122
-rw-r--r--svtools/qa/unoapi/Test.java51
-rw-r--r--svtools/qa/unoapi/knownissues.xcl35
-rw-r--r--svtools/qa/unoapi/makefile.mk48
-rw-r--r--svtools/qa/unoapi/svtools.sce12
-rw-r--r--svtools/source/brwbox/brwbox1.cxx2761
-rw-r--r--svtools/source/brwbox/brwbox2.cxx2177
-rw-r--r--svtools/source/brwbox/brwbox3.cxx568
-rw-r--r--svtools/source/brwbox/brwhead.cxx119
-rw-r--r--svtools/source/brwbox/brwimpl.hxx87
-rw-r--r--svtools/source/brwbox/datwin.cxx782
-rw-r--r--svtools/source/brwbox/datwin.hxx254
-rw-r--r--svtools/source/brwbox/ebbcontrols.cxx628
-rw-r--r--svtools/source/brwbox/editbrowsebox.cxx1437
-rw-r--r--svtools/source/brwbox/editbrowsebox.hrc42
-rw-r--r--svtools/source/brwbox/editbrowsebox.src66
-rw-r--r--svtools/source/brwbox/editbrowsebox2.cxx222
-rw-r--r--svtools/source/brwbox/editbrowseboximpl.hxx45
-rw-r--r--svtools/source/brwbox/makefile.mk59
-rw-r--r--svtools/source/config/accessibilityoptions.cxx649
-rw-r--r--svtools/source/config/apearcfg.cxx321
-rw-r--r--svtools/source/config/colorcfg.cxx686
-rw-r--r--svtools/source/config/extcolorcfg.cxx827
-rw-r--r--svtools/source/config/fontsubstconfig.cxx229
-rw-r--r--svtools/source/config/helpopt.cxx764
-rw-r--r--svtools/source/config/htmlcfg.cxx523
-rw-r--r--svtools/source/config/itemholder2.cxx209
-rw-r--r--svtools/source/config/itemholder2.hxx89
-rw-r--r--svtools/source/config/makefile.mk58
-rw-r--r--svtools/source/config/menuoptions.cxx572
-rw-r--r--svtools/source/config/miscopt.cxx831
-rw-r--r--svtools/source/config/optionsdrawinglayer.cxx1713
-rw-r--r--svtools/source/config/printoptions.cxx870
-rw-r--r--svtools/source/config/test/makefile.mk62
-rw-r--r--svtools/source/config/test/test.cxx270
-rw-r--r--svtools/source/contnr/cont_pch.cxx41
-rw-r--r--svtools/source/contnr/contentenumeration.cxx464
-rw-r--r--svtools/source/contnr/contentenumeration.hxx287
-rw-r--r--svtools/source/contnr/fileview.cxx2809
-rw-r--r--svtools/source/contnr/fileview.hrc40
-rw-r--r--svtools/source/contnr/fileview.src200
-rw-r--r--svtools/source/contnr/imivctl.hxx637
-rw-r--r--svtools/source/contnr/imivctl1.cxx4681
-rw-r--r--svtools/source/contnr/imivctl2.cxx848
-rw-r--r--svtools/source/contnr/ivctrl.cxx642
-rw-r--r--svtools/source/contnr/makefile.mk82
-rw-r--r--svtools/source/contnr/svcontnr.src103
-rw-r--r--svtools/source/contnr/svicnvw.cxx830
-rw-r--r--svtools/source/contnr/svimpbox.cxx3642
-rw-r--r--svtools/source/contnr/svimpicn.cxx4162
-rw-r--r--svtools/source/contnr/svlbitm.cxx651
-rw-r--r--svtools/source/contnr/svlbox.cxx1934
-rw-r--r--svtools/source/contnr/svtabbx.cxx1304
-rw-r--r--svtools/source/contnr/svtreebx.cxx2675
-rw-r--r--svtools/source/contnr/templwin.cxx2025
-rw-r--r--svtools/source/contnr/templwin.hrc59
-rw-r--r--svtools/source/contnr/templwin.hxx309
-rw-r--r--svtools/source/contnr/templwin.src378
-rw-r--r--svtools/source/contnr/tooltiplbox.cxx120
-rw-r--r--svtools/source/contnr/treelist.cxx2116
-rw-r--r--svtools/source/control/asynclink.cxx139
-rwxr-xr-xsvtools/source/control/calendar.cxx3051
-rwxr-xr-xsvtools/source/control/calendar.src74
-rwxr-xr-xsvtools/source/control/collatorres.cxx128
-rwxr-xr-xsvtools/source/control/ctrlbox.cxx1509
-rwxr-xr-xsvtools/source/control/ctrlbox.src232
-rwxr-xr-xsvtools/source/control/ctrltool.cxx1016
-rwxr-xr-xsvtools/source/control/ctrltool.src144
-rw-r--r--svtools/source/control/filectrl.cxx236
-rw-r--r--svtools/source/control/filectrl.src58
-rw-r--r--svtools/source/control/filectrl2.cxx94
-rw-r--r--svtools/source/control/fileurlbox.cxx124
-rw-r--r--svtools/source/control/fixedhyper.cxx233
-rw-r--r--svtools/source/control/fmtfield.cxx1398
-rw-r--r--svtools/source/control/headbar.cxx1651
-rw-r--r--svtools/source/control/hyperlabel.cxx270
-rwxr-xr-xsvtools/source/control/indexentryres.cxx133
-rw-r--r--svtools/source/control/inettbc.cxx1375
-rwxr-xr-xsvtools/source/control/makefile.mk87
-rw-r--r--svtools/source/control/prgsbar.cxx262
-rw-r--r--svtools/source/control/roadmap.cxx1025
-rw-r--r--svtools/source/control/ruler.cxx3181
-rw-r--r--svtools/source/control/scriptedtext.cxx395
-rw-r--r--svtools/source/control/scrwin.cxx572
-rw-r--r--svtools/source/control/stdctrl.cxx96
-rw-r--r--svtools/source/control/stdmenu.cxx515
-rw-r--r--svtools/source/control/svxbox.cxx617
-rwxr-xr-xsvtools/source/control/tabbar.cxx2734
-rw-r--r--svtools/source/control/taskbar.cxx594
-rw-r--r--svtools/source/control/taskbox.cxx352
-rw-r--r--svtools/source/control/taskmisc.cxx380
-rw-r--r--svtools/source/control/taskstat.cxx656
-rw-r--r--svtools/source/control/toolbarmenu.cxx1805
-rw-r--r--svtools/source/control/toolbarmenuacc.cxx1003
-rw-r--r--svtools/source/control/toolbarmenuimp.hxx314
-rw-r--r--svtools/source/control/urlcontrol.cxx95
-rw-r--r--svtools/source/control/valueacc.cxx1258
-rwxr-xr-xsvtools/source/control/valueimp.hxx330
-rw-r--r--svtools/source/control/valueset.cxx2758
-rw-r--r--svtools/source/dialogs/addresstemplate.cxx1340
-rw-r--r--svtools/source/dialogs/addresstemplate.hrc88
-rw-r--r--svtools/source/dialogs/addresstemplate.src362
-rw-r--r--svtools/source/dialogs/colctrl.cxx690
-rw-r--r--svtools/source/dialogs/colrdlg.cxx328
-rw-r--r--svtools/source/dialogs/colrdlg.hrc67
-rw-r--r--svtools/source/dialogs/colrdlg.src321
-rw-r--r--svtools/source/dialogs/filedlg.cxx148
-rw-r--r--svtools/source/dialogs/filedlg2.cxx1362
-rw-r--r--svtools/source/dialogs/filedlg2.hxx219
-rw-r--r--svtools/source/dialogs/filedlg2.src126
-rw-r--r--svtools/source/dialogs/formats.src294
-rw-r--r--svtools/source/dialogs/insdlg.cxx389
-rwxr-xr-xsvtools/source/dialogs/makefile.mk75
-rw-r--r--svtools/source/dialogs/mcvmath.cxx305
-rw-r--r--svtools/source/dialogs/mcvmath.hxx228
-rw-r--r--svtools/source/dialogs/printdlg.cxx790
-rw-r--r--svtools/source/dialogs/printdlg.hrc74
-rw-r--r--svtools/source/dialogs/printdlg.src349
-rw-r--r--svtools/source/dialogs/prnsetup.cxx403
-rw-r--r--svtools/source/dialogs/prnsetup.hrc48
-rw-r--r--svtools/source/dialogs/prnsetup.src282
-rw-r--r--svtools/source/dialogs/propctrl.cxx503
-rw-r--r--svtools/source/dialogs/propctrl.hxx115
-rw-r--r--svtools/source/dialogs/property.cxx1560
-rw-r--r--svtools/source/dialogs/roadmapwizard.cxx748
-rw-r--r--svtools/source/dialogs/so3res.src315
-rw-r--r--svtools/source/dialogs/wizardmachine.cxx750
-rw-r--r--svtools/source/dialogs/wizardmachine.src50
-rw-r--r--svtools/source/dialogs/wizdlg.cxx707
-rw-r--r--svtools/source/edit/editsyntaxhighlighter.cxx204
-rw-r--r--svtools/source/edit/makefile.mk63
-rw-r--r--svtools/source/edit/svmedit.cxx1656
-rw-r--r--svtools/source/edit/svmedit2.cxx81
-rw-r--r--svtools/source/edit/sychconv.cxx103
-rw-r--r--svtools/source/edit/syntaxhighlight.cxx909
-rw-r--r--svtools/source/edit/textdat2.hxx306
-rw-r--r--svtools/source/edit/textdata.cxx361
-rw-r--r--svtools/source/edit/textdoc.cxx1047
-rw-r--r--svtools/source/edit/textdoc.hxx148
-rw-r--r--svtools/source/edit/texteng.cxx3303
-rw-r--r--svtools/source/edit/textund2.hxx148
-rw-r--r--svtools/source/edit/textundo.cxx343
-rw-r--r--svtools/source/edit/textundo.hxx84
-rw-r--r--svtools/source/edit/textview.cxx2470
-rw-r--r--svtools/source/edit/textwindowpeer.cxx59
-rw-r--r--svtools/source/edit/txtattr.cxx197
-rw-r--r--svtools/source/edit/xtextedt.cxx421
-rw-r--r--svtools/source/filter.vcl/filter/FilterConfigCache.cxx596
-rw-r--r--svtools/source/filter.vcl/filter/FilterConfigCache.hxx145
-rw-r--r--svtools/source/filter.vcl/filter/FilterConfigItem.cxx623
-rw-r--r--svtools/source/filter.vcl/filter/SvFilterOptionsDialog.cxx270
-rw-r--r--svtools/source/filter.vcl/filter/SvFilterOptionsDialog.hxx105
-rw-r--r--svtools/source/filter.vcl/filter/exportdialog.cxx1513
-rwxr-xr-xsvtools/source/filter.vcl/filter/exportdialog.hrc99
-rwxr-xr-xsvtools/source/filter.vcl/filter/exportdialog.hxx216
-rw-r--r--svtools/source/filter.vcl/filter/exportdialog.src529
-rw-r--r--svtools/source/filter.vcl/filter/filter.cxx2203
-rw-r--r--svtools/source/filter.vcl/filter/filter2.cxx1339
-rw-r--r--svtools/source/filter.vcl/filter/gradwrap.cxx570
-rw-r--r--svtools/source/filter.vcl/filter/makefile.mk81
-rw-r--r--svtools/source/filter.vcl/filter/sgf.ini118
-rw-r--r--svtools/source/filter.vcl/filter/sgfbram.cxx662
-rw-r--r--svtools/source/filter.vcl/filter/sgvmain.cxx1130
-rw-r--r--svtools/source/filter.vcl/filter/sgvspln.cxx890
-rw-r--r--svtools/source/filter.vcl/filter/sgvtext.cxx1334
-rw-r--r--svtools/source/filter.vcl/igif/decode.cxx215
-rw-r--r--svtools/source/filter.vcl/igif/decode.hxx68
-rw-r--r--svtools/source/filter.vcl/igif/gifread.cxx858
-rw-r--r--svtools/source/filter.vcl/igif/makefile.mk45
-rw-r--r--svtools/source/filter.vcl/ixbm/makefile.mk44
-rw-r--r--svtools/source/filter.vcl/ixbm/xbmread.cxx398
-rw-r--r--svtools/source/filter.vcl/ixpm/makefile.mk43
-rw-r--r--svtools/source/filter.vcl/ixpm/rgbtable.hxx695
-rw-r--r--svtools/source/filter.vcl/ixpm/xpmread.cxx702
-rw-r--r--svtools/source/filter.vcl/jpeg/jpeg.cxx779
-rw-r--r--svtools/source/filter.vcl/jpeg/jpeg.h71
-rw-r--r--svtools/source/filter.vcl/jpeg/jpegc.c284
-rw-r--r--svtools/source/filter.vcl/jpeg/makefile.mk45
-rw-r--r--svtools/source/filter.vcl/wmf/emfwr.cxx1415
-rw-r--r--svtools/source/filter.vcl/wmf/emfwr.hxx100
-rw-r--r--svtools/source/filter.vcl/wmf/enhwmf.cxx1343
-rw-r--r--svtools/source/filter.vcl/wmf/makefile.mk50
-rw-r--r--svtools/source/filter.vcl/wmf/winmtf.cxx2203
-rw-r--r--svtools/source/filter.vcl/wmf/winmtf.hxx777
-rw-r--r--svtools/source/filter.vcl/wmf/winwmf.cxx1431
-rw-r--r--svtools/source/filter.vcl/wmf/wmf.cxx114
-rw-r--r--svtools/source/filter.vcl/wmf/wmfwr.cxx2096
-rw-r--r--svtools/source/filter.vcl/wmf/wmfwr.hxx229
-rw-r--r--svtools/source/graphic/descriptor.cxx498
-rw-r--r--svtools/source/graphic/descriptor.hxx140
-rw-r--r--svtools/source/graphic/graphic.cxx300
-rw-r--r--svtools/source/graphic/graphic.hxx103
-rw-r--r--svtools/source/graphic/graphicunofactory.cxx103
-rw-r--r--svtools/source/graphic/grfattr.cxx118
-rw-r--r--svtools/source/graphic/grfcache.cxx1062
-rw-r--r--svtools/source/graphic/grfcache.hxx109
-rw-r--r--svtools/source/graphic/grfmgr.cxx1382
-rw-r--r--svtools/source/graphic/grfmgr2.cxx2382
-rw-r--r--svtools/source/graphic/makefile.mk66
-rw-r--r--svtools/source/graphic/provider.cxx861
-rw-r--r--svtools/source/graphic/renderer.cxx345
-rw-r--r--svtools/source/graphic/transformer.cxx156
-rw-r--r--svtools/source/graphic/transformer.hxx63
-rw-r--r--svtools/source/hatchwindow/documentcloser.cxx295
-rw-r--r--svtools/source/hatchwindow/documentcloser.hxx89
-rw-r--r--svtools/source/hatchwindow/hatchwindow.cxx235
-rw-r--r--svtools/source/hatchwindow/hatchwindow.hxx79
-rw-r--r--svtools/source/hatchwindow/hatchwindowfactory.component38
-rw-r--r--svtools/source/hatchwindow/hatchwindowfactory.cxx148
-rw-r--r--svtools/source/hatchwindow/hatchwindowfactory.hxx74
-rw-r--r--svtools/source/hatchwindow/ipwin.cxx644
-rw-r--r--svtools/source/hatchwindow/ipwin.hxx110
-rw-r--r--svtools/source/hatchwindow/makefile.mk73
-rw-r--r--svtools/source/inc/accessibletableimp.hxx62
-rw-r--r--svtools/source/inc/configitems/accessibilityoptions_const.hxx50
-rw-r--r--svtools/source/inc/filectrl.hrc34
-rw-r--r--svtools/source/inc/gifread.hxx144
-rw-r--r--svtools/source/inc/gradwrap.hxx77
-rw-r--r--svtools/source/inc/iodlg.hrc107
-rw-r--r--svtools/source/inc/jpeg.hxx131
-rw-r--r--svtools/source/inc/msgrd.hxx37
-rw-r--r--svtools/source/inc/msgwr.hxx38
-rw-r--r--svtools/source/inc/property.hxx585
-rw-r--r--svtools/source/inc/provider.hxx82
-rw-r--r--svtools/source/inc/renderer.hxx100
-rw-r--r--svtools/source/inc/sgfbram.hxx157
-rw-r--r--svtools/source/inc/sgffilt.hxx46
-rw-r--r--svtools/source/inc/sgvmain.hxx353
-rw-r--r--svtools/source/inc/sgvspln.hxx73
-rw-r--r--svtools/source/inc/svimpbox.hxx474
-rw-r--r--svtools/source/inc/svimpicn.hxx321
-rw-r--r--svtools/source/inc/svtaccessiblefactory.hxx73
-rw-r--r--svtools/source/inc/unoiface.hxx441
-rw-r--r--svtools/source/inc/xbmread.hxx97
-rw-r--r--svtools/source/inc/xpmread.hxx131
-rw-r--r--svtools/source/java/javacontext.cxx106
-rw-r--r--svtools/source/java/javaerror.src93
-rw-r--r--svtools/source/java/javainteractionhandler.cxx251
-rw-r--r--svtools/source/java/makefile.mk54
-rw-r--r--svtools/source/java/patchjavaerror.src93
-rw-r--r--svtools/source/misc/acceleratorexecute.cxx578
-rw-r--r--svtools/source/misc/chartprettypainter.cxx140
-rw-r--r--svtools/source/misc/cliplistener.cxx98
-rw-r--r--svtools/source/misc/dialogclosedlistener.cxx75
-rw-r--r--svtools/source/misc/dialogcontrolling.cxx314
-rw-r--r--svtools/source/misc/ehdl.cxx489
-rw-r--r--svtools/source/misc/ehdl.src40
-rw-r--r--svtools/source/misc/embedhlp.cxx955
-rw-r--r--svtools/source/misc/embedtransfer.cxx256
-rw-r--r--svtools/source/misc/errtxt.src514
-rw-r--r--svtools/source/misc/helpagent.src41
-rw-r--r--svtools/source/misc/helpagentwindow.cxx192
-rw-r--r--svtools/source/misc/imagemgr.cxx881
-rw-r--r--svtools/source/misc/imagemgr.src452
-rw-r--r--svtools/source/misc/imageresourceaccess.cxx211
-rw-r--r--svtools/source/misc/imap.cxx1222
-rw-r--r--svtools/source/misc/imap2.cxx751
-rw-r--r--svtools/source/misc/imap3.cxx97
-rw-r--r--svtools/source/misc/itemdel.cxx135
-rw-r--r--svtools/source/misc/langtab.cxx208
-rw-r--r--svtools/source/misc/langtab.src329
-rwxr-xr-xsvtools/source/misc/makefile.mk84
-rw-r--r--svtools/source/misc/stringtransfer.cxx112
-rwxr-xr-xsvtools/source/misc/svtaccessiblefactory.cxx355
-rw-r--r--svtools/source/misc/svtdata.cxx73
-rw-r--r--svtools/source/misc/templatefoldercache.cxx919
-rw-r--r--svtools/source/misc/transfer.cxx2422
-rw-r--r--svtools/source/misc/transfer2.cxx635
-rw-r--r--svtools/source/misc/unitconv.cxx763
-rw-r--r--svtools/source/misc/wallitem.cxx65
-rwxr-xr-xsvtools/source/misc/xwindowitem.cxx97
-rw-r--r--svtools/source/plugapp/commtest.cxx261
-rw-r--r--svtools/source/plugapp/commtest.hrc34
-rw-r--r--svtools/source/plugapp/commtest.src60
-rw-r--r--svtools/source/plugapp/makefile.mk61
-rw-r--r--svtools/source/plugapp/testtool.hrc55
-rw-r--r--svtools/source/plugapp/testtool.src201
-rw-r--r--svtools/source/plugapp/ttprops.cxx79
-rw-r--r--svtools/source/productregistration/makefile.mk86
-rw-r--r--svtools/source/productregistration/productregistration.cxx488
-rw-r--r--svtools/source/productregistration/productregistration.hxx100
-rw-r--r--svtools/source/productregistration/productregistration.uno.component34
-rw-r--r--svtools/source/productregistration/registrationdlg.cxx171
-rw-r--r--svtools/source/productregistration/registrationdlg.hrc43
-rw-r--r--svtools/source/productregistration/registrationdlg.hxx87
-rw-r--r--svtools/source/productregistration/registrationdlg.src133
-rw-r--r--svtools/source/svhtml/htmlkywd.cxx1081
-rw-r--r--svtools/source/svhtml/htmlout.cxx980
-rw-r--r--svtools/source/svhtml/htmlsupp.cxx173
-rw-r--r--svtools/source/svhtml/makefile.mk51
-rw-r--r--svtools/source/svhtml/parhtml.cxx2371
-rw-r--r--svtools/source/svrtf/makefile.mk49
-rw-r--r--svtools/source/svrtf/parrtf.cxx710
-rw-r--r--svtools/source/svrtf/rtfkey2.cxx1159
-rw-r--r--svtools/source/svrtf/rtfkeywd.cxx1248
-rw-r--r--svtools/source/svrtf/rtfout.cxx209
-rw-r--r--svtools/source/svrtf/svparser.cxx726
-rw-r--r--svtools/source/table/defaultinputhandler.cxx235
-rw-r--r--svtools/source/table/gridtablerenderer.cxx382
-rw-r--r--svtools/source/table/makefile.mk55
-rw-r--r--svtools/source/table/tablecontrol.cxx628
-rw-r--r--svtools/source/table/tablecontrol_impl.cxx2363
-rw-r--r--svtools/source/table/tablecontrol_impl.hxx358
-rw-r--r--svtools/source/table/tabledatawindow.cxx173
-rw-r--r--svtools/source/table/tablegeometry.cxx131
-rw-r--r--svtools/source/table/tablegeometry.hxx162
-rw-r--r--svtools/source/toolpanel/drawerlayouter.cxx305
-rw-r--r--svtools/source/toolpanel/dummypanel.cxx107
-rw-r--r--svtools/source/toolpanel/dummypanel.hxx70
-rwxr-xr-xsvtools/source/toolpanel/makefile.mk68
-rwxr-xr-xsvtools/source/toolpanel/paneldecklisteners.cxx137
-rwxr-xr-xsvtools/source/toolpanel/paneldecklisteners.hxx72
-rwxr-xr-xsvtools/source/toolpanel/paneltabbar.cxx1354
-rw-r--r--svtools/source/toolpanel/paneltabbarpeer.cxx101
-rw-r--r--svtools/source/toolpanel/paneltabbarpeer.hxx69
-rw-r--r--svtools/source/toolpanel/refbase.cxx56
-rw-r--r--svtools/source/toolpanel/tabbargeometry.cxx328
-rw-r--r--svtools/source/toolpanel/tabbargeometry.hxx137
-rw-r--r--svtools/source/toolpanel/tabitemdescriptor.hxx90
-rwxr-xr-xsvtools/source/toolpanel/tablayouter.cxx262
-rw-r--r--svtools/source/toolpanel/toolpanel.cxx54
-rw-r--r--svtools/source/toolpanel/toolpanel.src57
-rw-r--r--svtools/source/toolpanel/toolpanelcollection.cxx193
-rw-r--r--svtools/source/toolpanel/toolpanelcollection.hxx69
-rwxr-xr-xsvtools/source/toolpanel/toolpaneldeck.cxx560
-rwxr-xr-xsvtools/source/toolpanel/toolpaneldeckpeer.cxx99
-rwxr-xr-xsvtools/source/toolpanel/toolpaneldeckpeer.hxx69
-rw-r--r--svtools/source/toolpanel/toolpaneldrawer.cxx373
-rw-r--r--svtools/source/toolpanel/toolpaneldrawer.hxx113
-rw-r--r--svtools/source/toolpanel/toolpaneldrawerpeer.cxx142
-rw-r--r--svtools/source/toolpanel/toolpaneldrawerpeer.hxx56
-rw-r--r--svtools/source/uno/addrtempuno.cxx245
-rw-r--r--svtools/source/uno/contextmenuhelper.cxx687
-rw-r--r--svtools/source/uno/framestatuslistener.cxx444
-rw-r--r--svtools/source/uno/generictoolboxcontroller.cxx208
-rw-r--r--svtools/source/uno/genericunodialog.cxx373
-rw-r--r--svtools/source/uno/makefile.mk61
-rw-r--r--svtools/source/uno/miscservices.cxx170
-rw-r--r--svtools/source/uno/popupmenucontrollerbase.cxx420
-rw-r--r--svtools/source/uno/popupwindowcontroller.cxx258
-rw-r--r--svtools/source/uno/statusbarcontroller.cxx784
-rwxr-xr-xsvtools/source/uno/svtxgridcontrol.cxx899
-rwxr-xr-xsvtools/source/uno/svtxgridcontrol.hxx117
-rw-r--r--svtools/source/uno/toolboxcontroller.cxx886
-rw-r--r--svtools/source/uno/treecontrolpeer.cxx1765
-rw-r--r--svtools/source/uno/treecontrolpeer.hxx174
-rw-r--r--svtools/source/uno/unocontroltablemodel.cxx513
-rw-r--r--svtools/source/uno/unocontroltablemodel.hxx177
-rw-r--r--svtools/source/uno/unoevent.cxx610
-rw-r--r--svtools/source/uno/unoiface.cxx2367
-rw-r--r--svtools/source/uno/unoimap.cxx824
-rw-r--r--svtools/source/uno/unowizard.hxx117
-rw-r--r--svtools/source/uno/wizard/makefile.mk48
-rw-r--r--svtools/source/uno/wizard/unowizard.cxx473
-rw-r--r--svtools/source/uno/wizard/wizardpagecontroller.cxx190
-rw-r--r--svtools/source/uno/wizard/wizardpagecontroller.hxx75
-rw-r--r--svtools/source/uno/wizard/wizardshell.cxx279
-rw-r--r--svtools/source/uno/wizard/wizardshell.hxx147
-rw-r--r--svtools/source/urlobj/inetimg.cxx149
-rw-r--r--svtools/source/urlobj/makefile.mk46
-rw-r--r--svtools/util/hidother.src79
-rw-r--r--svtools/util/makefile.mk200
-rw-r--r--svtools/util/svt.component49
-rw-r--r--svtools/util/svt.pmk31
-rw-r--r--svtools/workben/browser.cxx810
-rw-r--r--svtools/workben/cui/loadlib.cxx89
-rw-r--r--svtools/workben/cui/makefile.mk60
-rw-r--r--svtools/workben/makefile.mk69
-rw-r--r--svtools/workben/stest.cxx186
-rw-r--r--svtools/workben/svdem.cxx1125
-rw-r--r--svtools/workben/toolpanel/makefile.mk110
-rwxr-xr-xsvtools/workben/toolpanel/toolpaneltest.cxx880
-rw-r--r--svtools/workben/treecontrol/makefile.mk91
-rw-r--r--svtools/workben/treecontrol/treetest.cxx396
-rw-r--r--svtools/workben/unodialog/makefile.mk90
-rw-r--r--svtools/workben/unodialog/roadmapskeleton.cxx113
-rw-r--r--svtools/workben/unodialog/roadmapskeleton.hrc41
-rw-r--r--svtools/workben/unodialog/roadmapskeleton.hxx65
-rw-r--r--svtools/workben/unodialog/roadmapskeleton.src89
-rw-r--r--svtools/workben/unodialog/roadmapskeletonpages.cxx114
-rw-r--r--svtools/workben/unodialog/roadmapskeletonpages.hxx104
-rw-r--r--svtools/workben/unodialog/udlg_global.hrc54
-rw-r--r--svtools/workben/unodialog/udlg_module.cxx42
-rw-r--r--svtools/workben/unodialog/udlg_module.hxx45
-rw-r--r--svtools/workben/unodialog/udlg_services.cxx58
-rw-r--r--svtools/workben/unodialog/unodialogsample.cxx214
-rw-r--r--svtools/workben/urange.cxx220
-rw-r--r--svx/doc/UML/edit_engine_UNO_implementation.zuml1
-rw-r--r--svx/doc/UML/grid_control_implementation.zumlbin0 -> 36412 bytes-rw-r--r--svx/doc/UML/readme.txt9
-rw-r--r--svx/doc/drawing_layer_UNO_objects.odgbin0 -> 13284 bytes-rw-r--r--svx/inc/ActionDescriptionProvider.hxx65
-rw-r--r--svx/inc/DescriptionGenerator.hxx217
-rw-r--r--svx/inc/ParseContext.hxx91
-rw-r--r--svx/inc/UnoNamespaceMap.hxx45
-rw-r--r--svx/inc/XPropertyTable.hxx44
-rw-r--r--svx/inc/accessibility.hrc87
-rw-r--r--svx/inc/anchorid.hxx42
-rw-r--r--svx/inc/chrtitem.hxx385
-rw-r--r--svx/inc/clipboardctl.hxx66
-rw-r--r--svx/inc/clipfmtitem.hxx67
-rw-r--r--svx/inc/connctrl.hxx77
-rw-r--r--svx/inc/databaseregistrationui.hxx53
-rw-r--r--svx/inc/dbexch.hrc57
-rw-r--r--svx/inc/dgdefs_.hxx341
-rw-r--r--svx/inc/dialcontrol.hxx138
-rw-r--r--svx/inc/dialdll.hxx42
-rw-r--r--svx/inc/dlgutil.hxx47
-rw-r--r--svx/inc/dragmt3d.hxx153
-rw-r--r--svx/inc/drawitem.hxx246
-rw-r--r--svx/inc/drawuiks.hxx73
-rw-r--r--svx/inc/extrusiondepthdialog.hxx60
-rw-r--r--svx/inc/flagsdef.hxx103
-rw-r--r--svx/inc/float3d.hrc184
-rw-r--r--svx/inc/fmgridif.hxx551
-rw-r--r--svx/inc/fmhelp.hrc113
-rw-r--r--svx/inc/fmobjfac.hxx51
-rw-r--r--svx/inc/fontlb.hxx138
-rw-r--r--svx/inc/fontworkgallery.hrc72
-rw-r--r--svx/inc/fontworkgallery.hxx131
-rw-r--r--svx/inc/formatpaintbrushctrl.hxx73
-rw-r--r--svx/inc/galbrws.hxx116
-rw-r--r--svx/inc/galbrws2.hxx181
-rw-r--r--svx/inc/galctrl.hxx191
-rw-r--r--svx/inc/gallery.hrc212
-rw-r--r--svx/inc/gallery.hxx174
-rw-r--r--svx/inc/galobj.hxx238
-rw-r--r--svx/inc/galtheme.hrc77
-rw-r--r--svx/inc/galtheme.hxx231
-rw-r--r--svx/inc/globl3d.hxx53
-rw-r--r--svx/inc/globlac.hrc223
-rw-r--r--svx/inc/globlmn_tmpl.hrc1236
-rw-r--r--svx/inc/grafctrl.hxx191
-rw-r--r--svx/inc/helpid.hrc283
-rw-r--r--svx/inc/hlnkitem.hxx110
-rw-r--r--svx/inc/htmlmode.hxx51
-rw-r--r--svx/inc/hyperdlg.hxx58
-rw-r--r--svx/inc/imapdlg.hxx211
-rw-r--r--svx/inc/insctrl.hxx62
-rw-r--r--svx/inc/layctrl.hxx79
-rw-r--r--svx/inc/lboxctrl.hxx86
-rw-r--r--svx/inc/lightdlg.hxx75
-rw-r--r--svx/inc/linectrl.hxx175
-rw-r--r--svx/inc/makefile.mk50
-rw-r--r--svx/inc/measctrl.hxx70
-rw-r--r--svx/inc/modctrl.hxx60
-rw-r--r--svx/inc/numvset.hxx165
-rw-r--r--svx/inc/objfac3d.hxx56
-rw-r--r--svx/inc/ofaitem.hxx53
-rw-r--r--svx/inc/optgenrl.hxx50
-rw-r--r--svx/inc/optgrid.hxx180
-rw-r--r--svx/inc/orienthelper.hxx132
-rw-r--r--svx/inc/passwd.hxx86
-rw-r--r--svx/inc/pch/precompiled_svx.cxx29
-rw-r--r--svx/inc/pch/precompiled_svx.hxx963
-rw-r--r--svx/inc/pfiledlg.hxx62
-rw-r--r--svx/inc/postattr.hxx133
-rw-r--r--svx/inc/prtqry.hxx40
-rw-r--r--svx/inc/pszctrl.hxx62
-rw-r--r--svx/inc/relfld.hxx73
-rw-r--r--svx/inc/rotmodit.hxx69
-rw-r--r--svx/inc/rubydialog.hxx204
-rw-r--r--svx/inc/rulritem.hxx303
-rw-r--r--svx/inc/sdrpaintwindow.hxx167
-rw-r--r--svx/inc/selctrl.hxx61
-rw-r--r--svx/inc/sjctrl.hxx630
-rw-r--r--svx/inc/srchdlg.hxx302
-rw-r--r--svx/inc/srchitem.hxx34
-rw-r--r--svx/inc/svdglob.hxx69
-rw-r--r--svx/inc/svdibrow.hxx144
-rw-r--r--svx/inc/svditer.hxx81
-rw-r--r--svx/inc/svdpomv.hxx58
-rw-r--r--svx/inc/svdshort.hxx91
-rw-r--r--svx/inc/svdstr.hrc790
-rw-r--r--svx/inc/svdviter.hxx126
-rw-r--r--svx/inc/svimbase.hxx212
-rw-r--r--svx/inc/svx/AccessibleControlShape.hxx216
-rw-r--r--svx/inc/svx/AccessibleGraphicShape.hxx123
-rw-r--r--svx/inc/svx/AccessibleOLEShape.hxx133
-rwxr-xr-xsvx/inc/svx/AccessibleShape.hxx410
-rw-r--r--svx/inc/svx/AccessibleShapeInfo.hxx109
-rw-r--r--svx/inc/svx/AccessibleShapeTreeInfo.hxx216
-rw-r--r--svx/inc/svx/AccessibleTableShape.hxx132
-rw-r--r--svx/inc/svx/AccessibleTextHelper.hxx431
-rw-r--r--svx/inc/svx/ChildrenManager.hxx216
-rw-r--r--svx/inc/svx/EnhancedCustomShapeFunctionParser.hxx214
-rw-r--r--svx/inc/svx/IAccessibleParent.hxx95
-rw-r--r--svx/inc/svx/IAccessibleViewForwarder.hxx132
-rw-r--r--svx/inc/svx/IAccessibleViewForwarderListener.hxx74
-rwxr-xr-xsvx/inc/svx/ShapeTypeHandler.hxx237
-rw-r--r--svx/inc/svx/SmartTagCtl.hxx86
-rw-r--r--svx/inc/svx/SmartTagItem.hxx96
-rw-r--r--svx/inc/svx/SmartTagMgr.hxx234
-rw-r--r--svx/inc/svx/SpellDialogChildWindow.hxx125
-rw-r--r--svx/inc/svx/SvxShapeTypes.hxx88
-rw-r--r--svx/inc/svx/algitem.hxx202
-rw-r--r--svx/inc/svx/bmpmask.hxx200
-rw-r--r--svx/inc/svx/camera3d.hxx94
-rw-r--r--svx/inc/svx/charmap.hxx140
-rw-r--r--svx/inc/svx/checklbx.hxx94
-rw-r--r--svx/inc/svx/colrctrl.hxx145
-rw-r--r--svx/inc/svx/contdlg.hxx142
-rw-r--r--svx/inc/svx/ctredlin.hxx431
-rw-r--r--svx/inc/svx/cube3d.hxx95
-rw-r--r--svx/inc/svx/dataaccessdescriptor.hxx164
-rw-r--r--svx/inc/svx/databaselocationinput.hxx97
-rw-r--r--svx/inc/svx/dbaexchange.hxx299
-rw-r--r--svx/inc/svx/dbaobjectex.hxx94
-rwxr-xr-xsvx/inc/svx/dbcharsethelper.hxx66
-rwxr-xr-xsvx/inc/svx/dbtoolsclient.hxx235
-rw-r--r--svx/inc/svx/def3d.hxx54
-rw-r--r--svx/inc/svx/deflt3d.hxx135
-rw-r--r--svx/inc/svx/dialmgr.hxx49
-rwxr-xr-xsvx/inc/svx/dialogs.hrc1053
-rw-r--r--svx/inc/svx/dlgctl3d.hxx215
-rw-r--r--svx/inc/svx/dlgctrl.hxx539
-rw-r--r--svx/inc/svx/dstribut_enum.hxx53
-rw-r--r--svx/inc/svx/e3ditem.hxx73
-rw-r--r--svx/inc/svx/e3dsceneupdater.hxx74
-rw-r--r--svx/inc/svx/e3dundo.hxx124
-rw-r--r--svx/inc/svx/exthelpid.hrc42
-rw-r--r--svx/inc/svx/extrud3d.hxx110
-rw-r--r--svx/inc/svx/extrusionbar.hxx61
-rw-r--r--svx/inc/svx/extrusioncolorcontrol.hxx56
-rw-r--r--svx/inc/svx/f3dchild.hxx51
-rw-r--r--svx/inc/svx/fillctrl.hxx108
-rw-r--r--svx/inc/svx/float3d.hxx313
-rw-r--r--svx/inc/svx/fmdmod.hxx45
-rw-r--r--svx/inc/svx/fmdpage.hxx76
-rw-r--r--svx/inc/svx/fmglob.hxx66
-rw-r--r--svx/inc/svx/fmgridcl.hxx216
-rw-r--r--svx/inc/svx/fmmodel.hxx102
-rw-r--r--svx/inc/svx/fmpage.hxx87
-rw-r--r--svx/inc/svx/fmsearch.hxx95
-rw-r--r--svx/inc/svx/fmshell.hxx191
-rw-r--r--svx/inc/svx/fmtools.hxx234
-rw-r--r--svx/inc/svx/fmview.hxx166
-rw-r--r--svx/inc/svx/fntctl.hxx69
-rw-r--r--svx/inc/svx/fntctrl.hxx90
-rw-r--r--svx/inc/svx/fntszctl.hxx69
-rw-r--r--svx/inc/svx/fontwork.hxx197
-rw-r--r--svx/inc/svx/fontworkbar.hxx61
-rw-r--r--svx/inc/svx/framebordertype.hxx65
-rw-r--r--svx/inc/svx/framelink.hxx727
-rw-r--r--svx/inc/svx/framelinkarray.hxx537
-rw-r--r--svx/inc/svx/frmdirlbox.hxx106
-rw-r--r--svx/inc/svx/frmsel.hxx204
-rw-r--r--svx/inc/svx/gallery1.hxx183
-rw-r--r--svx/inc/svx/galmisc.hxx262
-rw-r--r--svx/inc/svx/graphctl.hxx193
-rw-r--r--svx/inc/svx/grfcrop.hxx80
-rw-r--r--svx/inc/svx/grfflt.hxx69
-rw-r--r--svx/inc/svx/gridctrl.hxx623
-rw-r--r--svx/inc/svx/hdft.hxx136
-rw-r--r--svx/inc/svx/helperhittest3d.hxx110
-rw-r--r--svx/inc/svx/ifaceids.hxx45
-rw-r--r--svx/inc/svx/ipolypolygoneditorcontroller.hxx76
-rw-r--r--svx/inc/svx/itemwin.hxx197
-rw-r--r--svx/inc/svx/langbox.hxx128
-rw-r--r--svx/inc/svx/lathe3d.hxx122
-rw-r--r--svx/inc/svx/msdffdef.hxx1223
-rw-r--r--svx/inc/svx/numfmtsh.hxx267
-rw-r--r--svx/inc/svx/numinf.hxx100
-rw-r--r--svx/inc/svx/obj3d.hxx328
-rw-r--r--svx/inc/svx/pagectrl.hxx170
-rw-r--r--svx/inc/svx/pageitem.hxx157
-rw-r--r--svx/inc/svx/paraprev.hxx113
-rw-r--r--svx/inc/svx/polygn3d.hxx89
-rw-r--r--svx/inc/svx/polypolygoneditor.hxx76
-rw-r--r--svx/inc/svx/polysc3d.hxx50
-rw-r--r--svx/inc/svx/rectenum.hxx46
-rw-r--r--svx/inc/svx/ruler.hxx270
-rw-r--r--svx/inc/svx/scene3d.hxx252
-rw-r--r--svx/inc/svx/sdangitm.hxx59
-rw-r--r--svx/inc/svx/sdasaitm.hxx82
-rw-r--r--svx/inc/svx/sdasitm.hxx146
-rw-r--r--svx/inc/svx/sderitm.hxx42
-rw-r--r--svx/inc/svx/sdgcoitm.hxx86
-rw-r--r--svx/inc/svx/sdgcpitm.hxx54
-rw-r--r--svx/inc/svx/sdggaitm.hxx55
-rw-r--r--svx/inc/svx/sdginitm.hxx52
-rw-r--r--svx/inc/svx/sdgluitm.hxx69
-rw-r--r--svx/inc/svx/sdgmoitm.hxx62
-rw-r--r--svx/inc/svx/sdgtritm.hxx51
-rw-r--r--svx/inc/svx/sdmetitm.hxx61
-rw-r--r--svx/inc/svx/sdooitm.hxx58
-rw-r--r--svx/inc/svx/sdprcitm.hxx79
-rw-r--r--svx/inc/svx/sdr/animation/animationstate.hxx83
-rw-r--r--svx/inc/svx/sdr/animation/objectanimator.hxx57
-rw-r--r--svx/inc/svx/sdr/animation/scheduler.hxx159
-rw-r--r--svx/inc/svx/sdr/attribute/sdrfilltextattribute.hxx80
-rw-r--r--svx/inc/svx/sdr/attribute/sdrformtextattribute.hxx92
-rw-r--r--svx/inc/svx/sdr/attribute/sdrformtextoutlineattribute.hxx82
-rw-r--r--svx/inc/svx/sdr/attribute/sdrlinefillshadowtextattribute.hxx81
-rw-r--r--svx/inc/svx/sdr/attribute/sdrlineshadowtextattribute.hxx79
-rw-r--r--svx/inc/svx/sdr/attribute/sdrshadowtextattribute.hxx76
-rw-r--r--svx/inc/svx/sdr/attribute/sdrtextattribute.hxx130
-rw-r--r--svx/inc/svx/sdr/contact/displayinfo.hxx129
-rw-r--r--svx/inc/svx/sdr/contact/objectcontact.hxx229
-rw-r--r--svx/inc/svx/sdr/contact/objectcontactofobjlistpainter.hxx144
-rw-r--r--svx/inc/svx/sdr/contact/objectcontactofpageview.hxx153
-rw-r--r--svx/inc/svx/sdr/contact/objectcontacttools.hxx62
-rw-r--r--svx/inc/svx/sdr/contact/viewcontact.hxx172
-rw-r--r--svx/inc/svx/sdr/contact/viewcontactofe3d.hxx120
-rw-r--r--svx/inc/svx/sdr/contact/viewcontactofe3dcube.hxx71
-rw-r--r--svx/inc/svx/sdr/contact/viewcontactofe3dextrude.hxx71
-rw-r--r--svx/inc/svx/sdr/contact/viewcontactofe3dlathe.hxx71
-rw-r--r--svx/inc/svx/sdr/contact/viewcontactofe3dpolygon.hxx71
-rw-r--r--svx/inc/svx/sdr/contact/viewcontactofe3dscene.hxx122
-rw-r--r--svx/inc/svx/sdr/contact/viewcontactofe3dsphere.hxx71
-rw-r--r--svx/inc/svx/sdr/contact/viewcontactofgraphic.hxx94
-rw-r--r--svx/inc/svx/sdr/contact/viewcontactofgroup.hxx75
-rw-r--r--svx/inc/svx/sdr/contact/viewcontactofmasterpagedescriptor.hxx85
-rw-r--r--svx/inc/svx/sdr/contact/viewcontactofpageobj.hxx80
-rw-r--r--svx/inc/svx/sdr/contact/viewcontactofsdrcaptionobj.hxx70
-rw-r--r--svx/inc/svx/sdr/contact/viewcontactofsdrcircobj.hxx70
-rw-r--r--svx/inc/svx/sdr/contact/viewcontactofsdredgeobj.hxx70
-rw-r--r--svx/inc/svx/sdr/contact/viewcontactofsdrmeasureobj.hxx70
-rw-r--r--svx/inc/svx/sdr/contact/viewcontactofsdrmediaobj.hxx89
-rw-r--r--svx/inc/svx/sdr/contact/viewcontactofsdrobj.hxx99
-rw-r--r--svx/inc/svx/sdr/contact/viewcontactofsdrobjcustomshape.hxx73
-rw-r--r--svx/inc/svx/sdr/contact/viewcontactofsdrole2obj.hxx81
-rw-r--r--svx/inc/svx/sdr/contact/viewcontactofsdrpage.hxx311
-rw-r--r--svx/inc/svx/sdr/contact/viewcontactofsdrpathobj.hxx70
-rw-r--r--svx/inc/svx/sdr/contact/viewcontactofsdrrectobj.hxx70
-rw-r--r--svx/inc/svx/sdr/contact/viewcontactoftextobj.hxx65
-rw-r--r--svx/inc/svx/sdr/contact/viewcontactofunocontrol.hxx101
-rw-r--r--svx/inc/svx/sdr/contact/viewcontactofvirtobj.hxx70
-rw-r--r--svx/inc/svx/sdr/contact/viewobjectcontact.hxx157
-rw-r--r--svx/inc/svx/sdr/contact/viewobjectcontactofe3d.hxx82
-rw-r--r--svx/inc/svx/sdr/contact/viewobjectcontactofe3dscene.hxx62
-rw-r--r--svx/inc/svx/sdr/contact/viewobjectcontactofgraphic.hxx81
-rw-r--r--svx/inc/svx/sdr/contact/viewobjectcontactofgroup.hxx59
-rw-r--r--svx/inc/svx/sdr/contact/viewobjectcontactofmasterpagedescriptor.hxx65
-rw-r--r--svx/inc/svx/sdr/contact/viewobjectcontactofpageobj.hxx71
-rw-r--r--svx/inc/svx/sdr/contact/viewobjectcontactofsdrmediaobj.hxx72
-rw-r--r--svx/inc/svx/sdr/contact/viewobjectcontactofsdrobj.hxx61
-rw-r--r--svx/inc/svx/sdr/contact/viewobjectcontactofsdrole2obj.hxx62
-rw-r--r--svx/inc/svx/sdr/contact/viewobjectcontactofsdrpage.hxx246
-rw-r--r--svx/inc/svx/sdr/contact/viewobjectcontactofunocontrol.hxx142
-rw-r--r--svx/inc/svx/sdr/contact/viewobjectcontactredirector.hxx74
-rw-r--r--svx/inc/svx/sdr/event/eventhandler.hxx140
-rw-r--r--svx/inc/svx/sdr/overlay/overlayanimatedbitmapex.hxx105
-rw-r--r--svx/inc/svx/sdr/overlay/overlaybitmapex.hxx76
-rw-r--r--svx/inc/svx/sdr/overlay/overlaycrosshair.hxx59
-rw-r--r--svx/inc/svx/sdr/overlay/overlayhatchrect.hxx81
-rw-r--r--svx/inc/svx/sdr/overlay/overlayhelpline.hxx68
-rw-r--r--svx/inc/svx/sdr/overlay/overlayline.hxx68
-rw-r--r--svx/inc/svx/sdr/overlay/overlaymanager.hxx150
-rw-r--r--svx/inc/svx/sdr/overlay/overlaymanagerbuffered.hxx113
-rw-r--r--svx/inc/svx/sdr/overlay/overlayobject.hxx203
-rw-r--r--svx/inc/svx/sdr/overlay/overlayobjectcell.hxx70
-rw-r--r--svx/inc/svx/sdr/overlay/overlayobjectlist.hxx85
-rw-r--r--svx/inc/svx/sdr/overlay/overlaypolypolygon.hxx67
-rw-r--r--svx/inc/svx/sdr/overlay/overlayprimitive2dsequenceobject.hxx70
-rw-r--r--svx/inc/svx/sdr/overlay/overlayrollingrectangle.hxx85
-rw-r--r--svx/inc/svx/sdr/overlay/overlayselection.hxx95
-rw-r--r--svx/inc/svx/sdr/overlay/overlaytools.hxx278
-rw-r--r--svx/inc/svx/sdr/overlay/overlaytriangle.hxx72
-rw-r--r--svx/inc/svx/sdr/primitive2d/primitiveFactory2d.hxx84
-rw-r--r--svx/inc/svx/sdr/primitive2d/sdrattributecreator.hxx140
-rw-r--r--svx/inc/svx/sdr/primitive2d/sdrcaptionprimitive2d.hxx87
-rw-r--r--svx/inc/svx/sdr/primitive2d/sdrconnectorprimitive2d.hxx76
-rw-r--r--svx/inc/svx/sdr/primitive2d/sdrcustomshapeprimitive2d.hxx97
-rw-r--r--svx/inc/svx/sdr/primitive2d/sdrdecompositiontools.hxx88
-rw-r--r--svx/inc/svx/sdr/primitive2d/sdrellipseprimitive2d.hxx120
-rw-r--r--svx/inc/svx/sdr/primitive2d/sdrgrafprimitive2d.hxx84
-rw-r--r--svx/inc/svx/sdr/primitive2d/sdrmeasureprimitive2d.hxx133
-rw-r--r--svx/inc/svx/sdr/primitive2d/sdrole2primitive2d.hxx78
-rw-r--r--svx/inc/svx/sdr/primitive2d/sdrolecontentprimitive2d.hxx92
-rw-r--r--svx/inc/svx/sdr/primitive2d/sdrpathprimitive2d.hxx80
-rw-r--r--svx/inc/svx/sdr/primitive2d/sdrprimitivetools.hxx60
-rw-r--r--svx/inc/svx/sdr/primitive2d/sdrrectangleprimitive2d.hxx90
-rw-r--r--svx/inc/svx/sdr/primitive2d/sdrtextprimitive2d.hxx305
-rw-r--r--svx/inc/svx/sdr/primitive2d/svx_primitivetypes2d.hxx64
-rw-r--r--svx/inc/svx/sdr/primitive3d/sdrattributecreator3d.hxx63
-rw-r--r--svx/inc/svx/sdr/properties/attributeproperties.hxx101
-rw-r--r--svx/inc/svx/sdr/properties/captionproperties.hxx75
-rw-r--r--svx/inc/svx/sdr/properties/circleproperties.hxx75
-rw-r--r--svx/inc/svx/sdr/properties/connectorproperties.hxx71
-rw-r--r--svx/inc/svx/sdr/properties/customshapeproperties.hxx94
-rw-r--r--svx/inc/svx/sdr/properties/defaultproperties.hxx112
-rw-r--r--svx/inc/svx/sdr/properties/e3dcompoundproperties.hxx79
-rw-r--r--svx/inc/svx/sdr/properties/e3dextrudeproperties.hxx66
-rw-r--r--svx/inc/svx/sdr/properties/e3dlatheproperties.hxx66
-rw-r--r--svx/inc/svx/sdr/properties/e3dproperties.hxx72
-rw-r--r--svx/inc/svx/sdr/properties/e3dsceneproperties.hxx96
-rw-r--r--svx/inc/svx/sdr/properties/e3dsphereproperties.hxx66
-rw-r--r--svx/inc/svx/sdr/properties/emptyproperties.hxx104
-rw-r--r--svx/inc/svx/sdr/properties/graphicproperties.hxx75
-rw-r--r--svx/inc/svx/sdr/properties/groupproperties.hxx129
-rw-r--r--svx/inc/svx/sdr/properties/itemsettools.hxx76
-rw-r--r--svx/inc/svx/sdr/properties/measureproperties.hxx75
-rw-r--r--svx/inc/svx/sdr/properties/oleproperties.hxx69
-rw-r--r--svx/inc/svx/sdr/properties/pageproperties.hxx80
-rw-r--r--svx/inc/svx/sdr/properties/properties.hxx197
-rw-r--r--svx/inc/svx/sdr/properties/rectangleproperties.hxx69
-rw-r--r--svx/inc/svx/sdr/properties/textproperties.hxx97
-rw-r--r--svx/inc/svx/sdr/table/tabledesign.hxx54
-rw-r--r--svx/inc/svx/sdrcomment.hxx105
-rw-r--r--svx/inc/svx/sdrhittesthelper.hxx78
-rw-r--r--svx/inc/svx/sdrmasterpagedescriptor.hxx101
-rw-r--r--svx/inc/svx/sdrobjectfilter.hxx58
-rw-r--r--svx/inc/svx/sdrobjectuser.hxx60
-rw-r--r--svx/inc/svx/sdrpageuser.hxx60
-rw-r--r--svx/inc/svx/sdrpagewindow.hxx142
-rw-r--r--svx/inc/svx/sdshcitm.hxx46
-rw-r--r--svx/inc/svx/sdshitm.hxx44
-rw-r--r--svx/inc/svx/sdshtitm.hxx42
-rw-r--r--svx/inc/svx/sdsxyitm.hxx51
-rw-r--r--svx/inc/svx/sdtaaitm.hxx47
-rw-r--r--svx/inc/svx/sdtacitm.hxx40
-rw-r--r--svx/inc/svx/sdtaditm.hxx61
-rw-r--r--svx/inc/svx/sdtagitm.hxx51
-rw-r--r--svx/inc/svx/sdtaiitm.hxx45
-rw-r--r--svx/inc/svx/sdtaitm.hxx89
-rw-r--r--svx/inc/svx/sdtakitm.hxx105
-rw-r--r--svx/inc/svx/sdtayitm.hxx44
-rw-r--r--svx/inc/svx/sdtcfitm.hxx42
-rw-r--r--svx/inc/svx/sdtditm.hxx60
-rw-r--r--svx/inc/svx/sdtfchim.hxx57
-rw-r--r--svx/inc/svx/sdtfsitm.hxx71
-rw-r--r--svx/inc/svx/sdtmfitm.hxx69
-rw-r--r--svx/inc/svx/sdynitm.hxx55
-rw-r--r--svx/inc/svx/selectioncontroller.hxx86
-rwxr-xr-xsvx/inc/svx/shapeproperty.hxx59
-rw-r--r--svx/inc/svx/shapepropertynotifier.hxx148
-rw-r--r--svx/inc/svx/simptabl.hxx180
-rw-r--r--svx/inc/svx/sphere3d.hxx88
-rw-r--r--svx/inc/svx/splitcelldlg.hxx62
-rw-r--r--svx/inc/svx/stddlg.hxx51
-rw-r--r--svx/inc/svx/strarray.hxx53
-rw-r--r--svx/inc/svx/subtoolboxcontrol.hxx55
-rw-r--r--svx/inc/svx/svdattr.hxx76
-rw-r--r--svx/inc/svx/svdattrx.hxx85
-rw-r--r--svx/inc/svx/svdcrtv.hxx209
-rw-r--r--svx/inc/svx/svddef.hxx313
-rw-r--r--svx/inc/svx/svddrag.hxx192
-rw-r--r--svx/inc/svx/svddrgmt.hxx324
-rw-r--r--svx/inc/svx/svddrgv.hxx321
-rw-r--r--svx/inc/svx/svdedtv.hxx461
-rw-r--r--svx/inc/svx/svdedxv.hxx306
-rw-r--r--svx/inc/svx/svdetc.hxx356
-rw-r--r--svx/inc/svx/svdfield.hxx36
-rw-r--r--svx/inc/svx/svdglev.hxx119
-rw-r--r--svx/inc/svx/svdglue.hxx151
-rw-r--r--svx/inc/svx/svdhdl.hxx534
-rw-r--r--svx/inc/svx/svdhlpln.hxx107
-rw-r--r--svx/inc/svx/svdlayer.hxx160
-rw-r--r--svx/inc/svx/svdmark.hxx412
-rw-r--r--svx/inc/svx/svdmodel.hxx771
-rw-r--r--svx/inc/svx/svdmrkv.hxx539
-rw-r--r--svx/inc/svx/svdoashp.hxx265
-rw-r--r--svx/inc/svx/svdoattr.hxx90
-rw-r--r--svx/inc/svx/svdobj.hxx1186
-rw-r--r--svx/inc/svx/svdocapt.hxx171
-rw-r--r--svx/inc/svx/svdocirc.hxx153
-rw-r--r--svx/inc/svx/svdoedge.hxx436
-rw-r--r--svx/inc/svx/svdograf.hxx227
-rw-r--r--svx/inc/svx/svdogrp.hxx125
-rw-r--r--svx/inc/svx/svdomeas.hxx217
-rw-r--r--svx/inc/svx/svdomedia.hxx93
-rw-r--r--svx/inc/svx/svdoole2.hxx190
-rw-r--r--svx/inc/svx/svdopage.hxx76
-rw-r--r--svx/inc/svx/svdopath.hxx195
-rw-r--r--svx/inc/svx/svdorect.hxx137
-rw-r--r--svx/inc/svx/svdotable.hxx342
-rw-r--r--svx/inc/svx/svdotext.hxx610
-rw-r--r--svx/inc/svx/svdouno.hxx163
-rw-r--r--svx/inc/svx/svdoutl.hxx60
-rw-r--r--svx/inc/svx/svdovirt.hxx165
-rw-r--r--svx/inc/svx/svdpage.hxx618
-rw-r--r--svx/inc/svx/svdpagv.hxx294
-rw-r--r--svx/inc/svx/svdpntv.hxx577
-rw-r--r--svx/inc/svx/svdpoev.hxx110
-rw-r--r--svx/inc/svx/svdpool.hxx63
-rw-r--r--svx/inc/svx/svdsnpv.hxx338
-rw-r--r--svx/inc/svx/svdsob.hxx133
-rw-r--r--svx/inc/svx/svdtext.hxx88
-rw-r--r--svx/inc/svx/svdtrans.hxx326
-rw-r--r--svx/inc/svx/svdtypes.hxx169
-rw-r--r--svx/inc/svx/svdundo.hxx882
-rw-r--r--svx/inc/svx/svdview.hxx339
-rw-r--r--svx/inc/svx/svdxcgv.hxx162
-rw-r--r--svx/inc/svx/svx3ditems.hxx377
-rw-r--r--svx/inc/svx/svxcommands.h604
-rw-r--r--svx/inc/svx/svxdlg.hxx507
-rw-r--r--svx/inc/svx/svxdllapi.h40
-rwxr-xr-xsvx/inc/svx/svxids.hrc1328
-rw-r--r--svx/inc/svx/svxitems.hrc174
-rw-r--r--svx/inc/svx/sxallitm.hxx69
-rw-r--r--svx/inc/svx/sxcaitm.hxx60
-rw-r--r--svx/inc/svx/sxcecitm.hxx93
-rw-r--r--svx/inc/svx/sxcgitm.hxx43
-rw-r--r--svx/inc/svx/sxciaitm.hxx51
-rw-r--r--svx/inc/svx/sxcikitm.hxx55
-rw-r--r--svx/inc/svx/sxcllitm.hxx58
-rw-r--r--svx/inc/svx/sxctitm.hxx52
-rw-r--r--svx/inc/svx/sxekitm.hxx58
-rw-r--r--svx/inc/svx/sxelditm.hxx64
-rw-r--r--svx/inc/svx/sxenditm.hxx78
-rw-r--r--svx/inc/svx/sxfiitm.hxx57
-rw-r--r--svx/inc/svx/sxlayitm.hxx56
-rw-r--r--svx/inc/svx/sxlogitm.hxx51
-rw-r--r--svx/inc/svx/sxmbritm.hxx48
-rw-r--r--svx/inc/svx/sxmfsitm.hxx42
-rw-r--r--svx/inc/svx/sxmkitm.hxx55
-rw-r--r--svx/inc/svx/sxmlhitm.hxx85
-rw-r--r--svx/inc/svx/sxmoitm.hxx41
-rw-r--r--svx/inc/svx/sxmovitm.hxx51
-rw-r--r--svx/inc/svx/sxmsitm.hxx43
-rw-r--r--svx/inc/svx/sxmspitm.hxx51
-rw-r--r--svx/inc/svx/sxmsuitm.hxx40
-rw-r--r--svx/inc/svx/sxmtaitm.hxx51
-rw-r--r--svx/inc/svx/sxmtfitm.hxx58
-rw-r--r--svx/inc/svx/sxmtpitm.hxx77
-rw-r--r--svx/inc/svx/sxmtritm.hxx49
-rw-r--r--svx/inc/svx/sxmuitm.hxx54
-rw-r--r--svx/inc/svx/sxoneitm.hxx69
-rw-r--r--svx/inc/svx/sxonitm.hxx44
-rw-r--r--svx/inc/svx/sxopitm.hxx48
-rw-r--r--svx/inc/svx/sxraitm.hxx42
-rw-r--r--svx/inc/svx/sxreaitm.hxx56
-rw-r--r--svx/inc/svx/sxreoitm.hxx56
-rw-r--r--svx/inc/svx/sxroaitm.hxx42
-rw-r--r--svx/inc/svx/sxrooitm.hxx42
-rw-r--r--svx/inc/svx/sxsaitm.hxx42
-rw-r--r--svx/inc/svx/sxsalitm.hxx51
-rw-r--r--svx/inc/svx/sxsiitm.hxx45
-rw-r--r--svx/inc/svx/sxsoitm.hxx51
-rw-r--r--svx/inc/svx/sxtraitm.hxx69
-rw-r--r--svx/inc/svx/tabarea.hxx76
-rw-r--r--svx/inc/svx/tabline.hxx66
-rw-r--r--svx/inc/svx/tbcontrl.hxx447
-rw-r--r--svx/inc/svx/tbxcolorupdate.hxx85
-rw-r--r--svx/inc/svx/ucsubset.hrc155
-rw-r--r--svx/inc/svx/ucsubset.hxx81
-rw-r--r--svx/inc/svx/unomid.hxx117
-rw-r--r--svx/inc/svx/unomod.hxx66
-rw-r--r--svx/inc/svx/unomodel.hxx112
-rw-r--r--svx/inc/svx/unopage.hxx160
-rw-r--r--svx/inc/svx/unoprov.hxx149
-rw-r--r--svx/inc/svx/unoshape.hxx892
-rw-r--r--svx/inc/svx/unoshprp.hxx534
-rw-r--r--svx/inc/svx/unoshtxt.hxx99
-rw-r--r--svx/inc/svx/view3d.hxx277
-rw-r--r--svx/inc/svx/viewlayoutitem.hxx63
-rw-r--r--svx/inc/svx/viewpt3d.hxx132
-rw-r--r--svx/inc/svx/volume3d.hxx33
-rw-r--r--svx/inc/svx/xbitmap.hxx100
-rw-r--r--svx/inc/svx/xbtmpit.hxx76
-rw-r--r--svx/inc/svx/xcolit.hxx67
-rw-r--r--svx/inc/svx/xdash.hxx77
-rw-r--r--svx/inc/svx/xdef.hxx101
-rw-r--r--svx/inc/svx/xenum.hxx62
-rw-r--r--svx/inc/svx/xfillit.hxx51
-rw-r--r--svx/inc/svx/xfillit0.hxx63
-rw-r--r--svx/inc/svx/xflasit.hxx54
-rw-r--r--svx/inc/svx/xflbckit.hxx58
-rw-r--r--svx/inc/svx/xflbmpit.hxx60
-rw-r--r--svx/inc/svx/xflbmsli.hxx56
-rw-r--r--svx/inc/svx/xflbmsxy.hxx88
-rw-r--r--svx/inc/svx/xflbmtit.hxx56
-rw-r--r--svx/inc/svx/xflboxy.hxx79
-rw-r--r--svx/inc/svx/xflbstit.hxx56
-rw-r--r--svx/inc/svx/xflbtoxy.hxx79
-rw-r--r--svx/inc/svx/xflclit.hxx63
-rw-r--r--svx/inc/svx/xflftrit.hxx72
-rw-r--r--svx/inc/svx/xflgrit.hxx74
-rw-r--r--svx/inc/svx/xflhtit.hxx76
-rw-r--r--svx/inc/svx/xfltrit.hxx54
-rw-r--r--svx/inc/svx/xftadit.hxx55
-rw-r--r--svx/inc/svx/xftdiit.hxx50
-rw-r--r--svx/inc/svx/xftmrit.hxx50
-rw-r--r--svx/inc/svx/xftouit.hxx50
-rw-r--r--svx/inc/svx/xftsfit.hxx55
-rw-r--r--svx/inc/svx/xftshcit.hxx53
-rw-r--r--svx/inc/svx/xftshit.hxx56
-rw-r--r--svx/inc/svx/xftshtit.hxx49
-rw-r--r--svx/inc/svx/xftshxy.hxx67
-rw-r--r--svx/inc/svx/xftstit.hxx50
-rw-r--r--svx/inc/svx/xgrad.hxx86
-rw-r--r--svx/inc/svx/xgrscit.hxx54
-rw-r--r--svx/inc/svx/xhatch.hxx65
-rw-r--r--svx/inc/svx/xit.hxx88
-rw-r--r--svx/inc/svx/xlineit.hxx54
-rw-r--r--svx/inc/svx/xlineit0.hxx59
-rw-r--r--svx/inc/svx/xlinjoit.hxx60
-rw-r--r--svx/inc/svx/xlnasit.hxx55
-rw-r--r--svx/inc/svx/xlnclit.hxx58
-rw-r--r--svx/inc/svx/xlndsit.hxx80
-rw-r--r--svx/inc/svx/xlnedcit.hxx55
-rw-r--r--svx/inc/svx/xlnedit.hxx72
-rw-r--r--svx/inc/svx/xlnedwit.hxx59
-rw-r--r--svx/inc/svx/xlnstcit.hxx56
-rw-r--r--svx/inc/svx/xlnstit.hxx72
-rw-r--r--svx/inc/svx/xlnstwit.hxx58
-rw-r--r--svx/inc/svx/xlntrit.hxx54
-rw-r--r--svx/inc/svx/xlnwtit.hxx55
-rw-r--r--svx/inc/svx/xpoly.hxx212
-rw-r--r--svx/inc/svx/xpool.hxx60
-rw-r--r--svx/inc/svx/xsetit.hxx53
-rw-r--r--svx/inc/svx/xsflclit.hxx58
-rw-r--r--svx/inc/svx/xtable.hxx653
-rw-r--r--svx/inc/svx/xtextit.hxx48
-rw-r--r--svx/inc/svx/xtextit0.hxx72
-rw-r--r--svx/inc/svx/zoomitem.hxx91
-rw-r--r--svx/inc/svx/zoomsliderctrl.hxx62
-rw-r--r--svx/inc/svx/zoomslideritem.hxx68
-rw-r--r--svx/inc/svxempty.hxx45
-rw-r--r--svx/inc/svxerr.hxx110
-rw-r--r--svx/inc/svxgrahicitem.hxx54
-rw-r--r--svx/inc/swframeexample.hxx101
-rw-r--r--svx/inc/swframeposstrings.hxx94
-rw-r--r--svx/inc/swframevalidation.hxx87
-rw-r--r--svx/inc/tbunocontroller.hxx89
-rw-r--r--svx/inc/tbunosearchcontrollers.hxx282
-rw-r--r--svx/inc/tbxalign.hxx54
-rw-r--r--svx/inc/tbxcolor.hxx71
-rw-r--r--svx/inc/tbxctl.hxx62
-rw-r--r--svx/inc/tbxcustomshapes.hxx68
-rw-r--r--svx/inc/tbxdraw.hxx75
-rw-r--r--svx/inc/txencbox.hxx121
-rw-r--r--svx/inc/txenctab.hxx55
-rw-r--r--svx/inc/uiks.hxx89
-rw-r--r--svx/inc/unoapi.hxx102
-rw-r--r--svx/inc/unofill.hxx44
-rw-r--r--svx/inc/unomaster.hxx66
-rw-r--r--svx/inc/unomlstr.hxx57
-rw-r--r--svx/inc/unopool.hxx96
-rw-r--r--svx/inc/unoshcol.hxx101
-rw-r--r--svx/inc/verttexttbxctrl.hxx67
-rw-r--r--svx/inc/wrapfield.hxx58
-rw-r--r--svx/inc/xattr.hxx67
-rw-r--r--svx/inc/xexch.hxx67
-rw-r--r--svx/inc/xmleohlp.hxx149
-rw-r--r--svx/inc/xmlexchg.hxx104
-rw-r--r--svx/inc/xmlgrhlp.hxx163
-rw-r--r--svx/inc/xmlsecctrl.hxx59
-rw-r--r--svx/inc/xoutbmp.hxx97
-rw-r--r--svx/inc/xpolyimp.hxx106
-rw-r--r--svx/inc/zoom_def.hxx8
-rw-r--r--svx/inc/zoomctrl.hxx59
-rw-r--r--svx/prj/build.lst39
-rw-r--r--svx/prj/d.lst558
-rw-r--r--svx/qa/unoapi/Test.java51
-rw-r--r--svx/qa/unoapi/knownissues.xcl90
-rw-r--r--svx/qa/unoapi/makefile.mk48
-rw-r--r--svx/qa/unoapi/svx.sce31
-rw-r--r--svx/qa/unoapi/testdocuments/SvxShape.sxdbin0 -> 6344 bytes-rw-r--r--svx/qa/unoapi/testdocuments/crazy-blue.jpgbin0 -> 4451 bytes-rw-r--r--svx/qa/unoapi/testdocuments/space-metal.jpgbin0 -> 4313 bytes-rw-r--r--svx/sdi/fmslots.sdi770
-rw-r--r--svx/sdi/makefile.mk57
-rw-r--r--svx/sdi/svx.sdi15110
-rw-r--r--svx/sdi/svxitems.sdi698
-rw-r--r--svx/sdi/svxslots.hrc33
-rw-r--r--svx/sdi/svxslots.sdi77
-rw-r--r--svx/sdi/xoitems.sdi163
-rw-r--r--svx/source/accessibility/AccessibleControlShape.cxx920
-rw-r--r--svx/source/accessibility/AccessibleEmptyEditSource.cxx356
-rw-r--r--svx/source/accessibility/AccessibleEmptyEditSource.hxx100
-rw-r--r--svx/source/accessibility/AccessibleFrameSelector.cxx740
-rw-r--r--svx/source/accessibility/AccessibleGraphicShape.cxx212
-rw-r--r--svx/source/accessibility/AccessibleOLEShape.cxx232
-rwxr-xr-xsvx/source/accessibility/AccessibleShape.cxx1244
-rw-r--r--svx/source/accessibility/AccessibleShapeInfo.cxx84
-rw-r--r--svx/source/accessibility/AccessibleShapeTreeInfo.cxx223
-rw-r--r--svx/source/accessibility/AccessibleTextEventQueue.cxx111
-rw-r--r--svx/source/accessibility/AccessibleTextEventQueue.hxx103
-rw-r--r--svx/source/accessibility/AccessibleTextHelper.cxx2077
-rw-r--r--svx/source/accessibility/ChildrenManager.cxx180
-rw-r--r--svx/source/accessibility/ChildrenManagerImpl.cxx1098
-rw-r--r--svx/source/accessibility/ChildrenManagerImpl.hxx577
-rw-r--r--svx/source/accessibility/DGColorNameLookUp.cxx148
-rw-r--r--svx/source/accessibility/DescriptionGenerator.cxx484
-rw-r--r--svx/source/accessibility/GraphCtlAccessibleContext.cxx1027
-rwxr-xr-xsvx/source/accessibility/ShapeTypeHandler.cxx338
-rw-r--r--svx/source/accessibility/SvxShapeTypes.cxx207
-rw-r--r--svx/source/accessibility/accessibility.src262
-rw-r--r--svx/source/accessibility/charmapacc.cxx891
-rwxr-xr-xsvx/source/accessibility/makefile.mk68
-rw-r--r--svx/source/accessibility/svxrectctaccessiblecontext.cxx1206
-rw-r--r--svx/source/core/coreservices.cxx145
-rw-r--r--svx/source/core/makefile.mk47
-rw-r--r--svx/source/customshapes/EnhancedCustomShape2d.cxx2175
-rw-r--r--svx/source/customshapes/EnhancedCustomShape2d.hxx221
-rw-r--r--svx/source/customshapes/EnhancedCustomShape3d.cxx752
-rw-r--r--svx/source/customshapes/EnhancedCustomShape3d.hxx78
-rw-r--r--svx/source/customshapes/EnhancedCustomShapeEngine.cxx471
-rw-r--r--svx/source/customshapes/EnhancedCustomShapeEngine.hxx124
-rw-r--r--svx/source/customshapes/EnhancedCustomShapeFontWork.cxx910
-rw-r--r--svx/source/customshapes/EnhancedCustomShapeFontWork.hxx45
-rw-r--r--svx/source/customshapes/EnhancedCustomShapeFunctionParser.cxx1212
-rw-r--r--svx/source/customshapes/EnhancedCustomShapeGeometry.cxx8273
-rw-r--r--svx/source/customshapes/EnhancedCustomShapeGeometry.hxx101
-rw-r--r--svx/source/customshapes/EnhancedCustomShapeHandle.cxx93
-rw-r--r--svx/source/customshapes/EnhancedCustomShapeHandle.hxx69
-rw-r--r--svx/source/customshapes/EnhancedCustomShapeTypeNames.cxx321
-rw-r--r--svx/source/customshapes/EnhancedCustomShapeTypeNames.hxx39
-rw-r--r--svx/source/customshapes/makefile.mk71
-rw-r--r--svx/source/customshapes/tbxcustomshapes.cxx204
-rw-r--r--svx/source/dialog/SpellDialogChildWindow.cxx119
-rw-r--r--svx/source/dialog/_bmpmask.cxx1241
-rw-r--r--svx/source/dialog/_contdlg.cxx1161
-rw-r--r--svx/source/dialog/bmpmask.hrc62
-rw-r--r--svx/source/dialog/bmpmask.src373
-rw-r--r--svx/source/dialog/charmap.cxx893
-rw-r--r--svx/source/dialog/checklbx.cxx277
-rw-r--r--svx/source/dialog/connctrl.cxx387
-rw-r--r--svx/source/dialog/contdlg.hrc87
-rw-r--r--svx/source/dialog/contdlg.src290
-rw-r--r--svx/source/dialog/contimp.hxx127
-rw-r--r--svx/source/dialog/contwnd.cxx358
-rw-r--r--svx/source/dialog/contwnd.hxx90
-rw-r--r--svx/source/dialog/ctredlin.cxx1531
-rw-r--r--svx/source/dialog/ctredlin.hrc70
-rw-r--r--svx/source/dialog/ctredlin.src365
-rw-r--r--svx/source/dialog/databaseregistrationui.cxx69
-rw-r--r--svx/source/dialog/dialcontrol.cxx572
-rw-r--r--svx/source/dialog/dialmgr.cxx54
-rw-r--r--svx/source/dialog/dlgctl3d.cxx1323
-rw-r--r--svx/source/dialog/dlgctrl.cxx2287
-rw-r--r--svx/source/dialog/dlgctrl.src34
-rw-r--r--svx/source/dialog/dlgutil.cxx55
-rw-r--r--svx/source/dialog/docrecovery.cxx2181
-rw-r--r--svx/source/dialog/docrecovery.hrc292
-rw-r--r--svx/source/dialog/docrecovery.src654
-rw-r--r--svx/source/dialog/fntctrl.cxx851
-rw-r--r--svx/source/dialog/fontlb.cxx189
-rw-r--r--svx/source/dialog/fontwork.cxx1283
-rw-r--r--svx/source/dialog/fontwork.hrc67
-rw-r--r--svx/source/dialog/fontwork.src560
-rw-r--r--svx/source/dialog/framelink.cxx1531
-rw-r--r--svx/source/dialog/framelinkarray.cxx1247
-rw-r--r--svx/source/dialog/frmdirlbox.cxx127
-rw-r--r--svx/source/dialog/frmsel.cxx1205
-rw-r--r--svx/source/dialog/frmsel.src70
-rw-r--r--svx/source/dialog/graphctl.cxx960
-rw-r--r--svx/source/dialog/grfflt.cxx793
-rw-r--r--svx/source/dialog/hdft.cxx983
-rw-r--r--svx/source/dialog/hdft.hrc52
-rw-r--r--svx/source/dialog/hdft.src383
-rw-r--r--svx/source/dialog/hyperdlg.cxx107
-rw-r--r--svx/source/dialog/hyprdlg.hxx143
-rw-r--r--svx/source/dialog/hyprlink.cxx999
-rw-r--r--svx/source/dialog/hyprlink.hrc58
-rw-r--r--svx/source/dialog/hyprlink.hxx43
-rw-r--r--svx/source/dialog/hyprlink.src167
-rw-r--r--svx/source/dialog/imapdlg.cxx1055
-rw-r--r--svx/source/dialog/imapdlg.hrc106
-rw-r--r--svx/source/dialog/imapdlg.src369
-rw-r--r--svx/source/dialog/imapimp.hxx56
-rw-r--r--svx/source/dialog/imapwnd.cxx1069
-rw-r--r--svx/source/dialog/imapwnd.hxx226
-rw-r--r--svx/source/dialog/langbox.cxx526
-rw-r--r--svx/source/dialog/langbox.src49
-rw-r--r--svx/source/dialog/language.src66
-rw-r--r--svx/source/dialog/makefile.mk154
-rw-r--r--svx/source/dialog/measctrl.cxx199
-rw-r--r--svx/source/dialog/optgrid.cxx419
-rw-r--r--svx/source/dialog/optgrid.hrc71
-rw-r--r--svx/source/dialog/optgrid.src370
-rw-r--r--svx/source/dialog/orienthelper.cxx206
-rw-r--r--svx/source/dialog/pagectrl.cxx421
-rw-r--r--svx/source/dialog/paraprev.cxx238
-rw-r--r--svx/source/dialog/passwd.cxx136
-rw-r--r--svx/source/dialog/passwd.hrc51
-rw-r--r--svx/source/dialog/passwd.src156
-rw-r--r--svx/source/dialog/pfiledlg.cxx280
-rw-r--r--svx/source/dialog/prtqry.cxx62
-rw-r--r--svx/source/dialog/prtqry.src74
-rw-r--r--svx/source/dialog/relfld.cxx146
-rw-r--r--svx/source/dialog/rlrcitem.cxx166
-rw-r--r--svx/source/dialog/rlrcitem.hxx51
-rw-r--r--svx/source/dialog/rubydialog.cxx990
-rw-r--r--svx/source/dialog/rubydialog.hrc53
-rw-r--r--svx/source/dialog/rubydialog.src221
-rw-r--r--svx/source/dialog/ruler.hrc37
-rw-r--r--svx/source/dialog/ruler.src137
-rw-r--r--svx/source/dialog/rulritem.cxx743
-rw-r--r--svx/source/dialog/sdstring.src1289
-rw-r--r--svx/source/dialog/sendreportgen.cxx53
-rw-r--r--svx/source/dialog/sendreportunx.cxx272
-rw-r--r--svx/source/dialog/sendreportw32.cxx260
-rw-r--r--svx/source/dialog/simptabl.cxx580
-rw-r--r--svx/source/dialog/srchctrl.cxx90
-rw-r--r--svx/source/dialog/srchctrl.hxx51
-rw-r--r--svx/source/dialog/srchdlg.cxx2549
-rw-r--r--svx/source/dialog/srchdlg.hrc93
-rw-r--r--svx/source/dialog/srchdlg.src442
-rw-r--r--svx/source/dialog/stddlg.cxx67
-rw-r--r--svx/source/dialog/strarray.cxx99
-rw-r--r--svx/source/dialog/svxbmpnumvalueset.cxx572
-rw-r--r--svx/source/dialog/svxbmpnumvalueset.src127
-rw-r--r--svx/source/dialog/svxdlg.cxx41
-rw-r--r--svx/source/dialog/svxgrahicitem.cxx50
-rwxr-xr-xsvx/source/dialog/svxruler.cxx3976
-rw-r--r--svx/source/dialog/swframeexample.cxx737
-rw-r--r--svx/source/dialog/swframeposstrings.cxx76
-rw-r--r--svx/source/dialog/swframeposstrings.src245
-rw-r--r--svx/source/dialog/txencbox.cxx254
-rw-r--r--svx/source/dialog/txenctab.cxx76
-rw-r--r--svx/source/dialog/txenctab.src122
-rwxr-xr-xsvx/source/dialog/ucsubset.src511
-rw-r--r--svx/source/dialog/wrapfield.cxx61
-rw-r--r--svx/source/engine3d/camera3d.cxx392
-rw-r--r--svx/source/engine3d/cube3d.cxx199
-rw-r--r--svx/source/engine3d/deflt3d.cxx81
-rw-r--r--svx/source/engine3d/dragmt3d.cxx789
-rw-r--r--svx/source/engine3d/e3dsceneupdater.cxx130
-rw-r--r--svx/source/engine3d/e3dundo.cxx180
-rw-r--r--svx/source/engine3d/extrud3d.cxx264
-rw-r--r--svx/source/engine3d/float3d.cxx3333
-rw-r--r--svx/source/engine3d/float3d.src1490
-rw-r--r--svx/source/engine3d/helperhittest3d.cxx295
-rw-r--r--svx/source/engine3d/helperminimaldepth3d.cxx212
-rw-r--r--svx/source/engine3d/helperminimaldepth3d.hxx60
-rw-r--r--svx/source/engine3d/lathe3d.cxx277
-rw-r--r--svx/source/engine3d/makefile.mk76
-rw-r--r--svx/source/engine3d/obj3d.cxx1280
-rw-r--r--svx/source/engine3d/objfac3d.cxx110
-rw-r--r--svx/source/engine3d/polygn3d.cxx361
-rw-r--r--svx/source/engine3d/polysc3d.cxx74
-rw-r--r--svx/source/engine3d/scene3d.cxx884
-rw-r--r--svx/source/engine3d/sphere3d.cxx226
-rw-r--r--svx/source/engine3d/string3d.src116
-rw-r--r--svx/source/engine3d/svx3ditems.cxx547
-rw-r--r--svx/source/engine3d/view3d.cxx1927
-rw-r--r--svx/source/engine3d/view3d1.cxx230
-rw-r--r--svx/source/engine3d/viewpt3d2.cxx394
-rw-r--r--svx/source/fmcomp/dbaexchange.cxx732
-rw-r--r--svx/source/fmcomp/dbaobjectex.cxx187
-rw-r--r--svx/source/fmcomp/fmgridcl.cxx2144
-rw-r--r--svx/source/fmcomp/fmgridif.cxx2962
-rw-r--r--svx/source/fmcomp/gridcell.cxx4840
-rw-r--r--svx/source/fmcomp/gridcols.cxx114
-rw-r--r--svx/source/fmcomp/gridctrl.cxx3893
-rw-r--r--svx/source/fmcomp/gridctrl.src259
-rw-r--r--svx/source/fmcomp/makefile.mk63
-rw-r--r--svx/source/fmcomp/trace.cxx124
-rw-r--r--svx/source/fmcomp/xmlexchg.cxx93
-rw-r--r--svx/source/form/ParseContext.cxx249
-rw-r--r--svx/source/form/dataaccessdescriptor.cxx567
-rw-r--r--svx/source/form/databaselocationinput.cxx314
-rw-r--r--svx/source/form/datalistener.cxx98
-rw-r--r--svx/source/form/datanavi.cxx3732
-rw-r--r--svx/source/form/datanavi.src1195
-rw-r--r--svx/source/form/dbcharsethelper.cxx59
-rw-r--r--svx/source/form/dbtoolsclient.cxx366
-rw-r--r--svx/source/form/delayedevent.cxx68
-rw-r--r--svx/source/form/filtnav.cxx2085
-rw-r--r--svx/source/form/filtnav.src89
-rw-r--r--svx/source/form/fmPropBrw.cxx722
-rw-r--r--svx/source/form/fmcontrolbordermanager.cxx445
-rw-r--r--svx/source/form/fmcontrollayout.cxx328
-rw-r--r--svx/source/form/fmdmod.cxx131
-rw-r--r--svx/source/form/fmdocumentclassification.cxx214
-rw-r--r--svx/source/form/fmdpage.cxx146
-rw-r--r--svx/source/form/fmexch.cxx443
-rw-r--r--svx/source/form/fmexpl.cxx707
-rw-r--r--svx/source/form/fmexpl.src383
-rw-r--r--svx/source/form/fmitems.cxx69
-rw-r--r--svx/source/form/fmmodel.cxx369
-rw-r--r--svx/source/form/fmobj.cxx736
-rw-r--r--svx/source/form/fmobjfac.cxx278
-rw-r--r--svx/source/form/fmpage.cxx282
-rw-r--r--svx/source/form/fmpgeimp.cxx739
-rw-r--r--svx/source/form/fmscriptingenv.cxx562
-rw-r--r--svx/source/form/fmservs.cxx106
-rw-r--r--svx/source/form/fmshell.cxx1520
-rw-r--r--svx/source/form/fmshimp.cxx4338
-rw-r--r--svx/source/form/fmsrccfg.cxx363
-rw-r--r--svx/source/form/fmsrcimp.cxx1303
-rw-r--r--svx/source/form/fmstring.src491
-rw-r--r--svx/source/form/fmtextcontroldialogs.cxx131
-rw-r--r--svx/source/form/fmtextcontrolfeature.cxx131
-rw-r--r--svx/source/form/fmtextcontrolshell.cxx1398
-rw-r--r--svx/source/form/fmtools.cxx496
-rw-r--r--svx/source/form/fmundo.cxx1346
-rw-r--r--svx/source/form/fmview.cxx626
-rw-r--r--svx/source/form/fmvwimp.cxx1958
-rw-r--r--svx/source/form/formcontrolfactory.cxx733
-rw-r--r--svx/source/form/formcontroller.cxx4317
-rw-r--r--svx/source/form/formcontrolling.cxx604
-rw-r--r--svx/source/form/formdispatchinterceptor.cxx214
-rw-r--r--svx/source/form/formfeaturedispatcher.cxx241
-rw-r--r--svx/source/form/formshell.src228
-rw-r--r--svx/source/form/formtoolbars.cxx117
-rw-r--r--svx/source/form/legacyformcontroller.cxx226
-rw-r--r--svx/source/form/makefile.mk119
-rw-r--r--svx/source/form/navigatortree.cxx2322
-rw-r--r--svx/source/form/navigatortreemodel.cxx1126
-rw-r--r--svx/source/form/sdbdatacolumn.cxx287
-rw-r--r--svx/source/form/sqlparserclient.cxx62
-rw-r--r--svx/source/form/stringlistresource.cxx71
-rw-r--r--svx/source/form/tabwin.cxx476
-rw-r--r--svx/source/form/tbxform.cxx477
-rw-r--r--svx/source/form/typeconversionclient.cxx58
-rw-r--r--svx/source/form/typemap.cxx65
-rw-r--r--svx/source/form/xfm_addcondition.cxx193
-rw-r--r--svx/source/gallery2/codec.cxx173
-rw-r--r--svx/source/gallery2/codec.hxx51
-rw-r--r--svx/source/gallery2/galbrws.cxx285
-rw-r--r--svx/source/gallery2/galbrws1.cxx715
-rw-r--r--svx/source/gallery2/galbrws1.hxx135
-rw-r--r--svx/source/gallery2/galbrws2.cxx1253
-rw-r--r--svx/source/gallery2/galctrl.cxx723
-rw-r--r--svx/source/gallery2/galexpl.cxx515
-rw-r--r--svx/source/gallery2/gallery.src493
-rw-r--r--svx/source/gallery2/gallery1.cxx923
-rw-r--r--svx/source/gallery2/gallerydrawmodel.hxx44
-rw-r--r--svx/source/gallery2/galmisc.cxx669
-rw-r--r--svx/source/gallery2/galobj.cxx607
-rw-r--r--svx/source/gallery2/galtheme.cxx1599
-rw-r--r--svx/source/gallery2/galtheme.src341
-rw-r--r--svx/source/gallery2/makefile.mk69
-rw-r--r--svx/source/gengal/gengal.cxx319
-rw-r--r--svx/source/gengal/gengal.sh101
-rw-r--r--svx/source/gengal/gengalrc.in12
-rw-r--r--svx/source/gengal/makefile.mk85
-rw-r--r--svx/source/inc/AccessibleFrameSelector.hxx149
-rw-r--r--svx/source/inc/DGColorNameLookUp.hxx99
-rw-r--r--svx/source/inc/GraphCtlAccessibleContext.hxx281
-rw-r--r--svx/source/inc/charmapacc.hxx278
-rw-r--r--svx/source/inc/clonelist.hxx57
-rw-r--r--svx/source/inc/datalistener.hxx79
-rw-r--r--svx/source/inc/datanavi.hrc180
-rw-r--r--svx/source/inc/datanavi.hxx601
-rw-r--r--svx/source/inc/delayedevent.hxx87
-rw-r--r--svx/source/inc/docrecovery.hxx973
-rw-r--r--svx/source/inc/filtnav.hxx372
-rw-r--r--svx/source/inc/fmPropBrw.hxx124
-rw-r--r--svx/source/inc/fmcontrolbordermanager.hxx268
-rw-r--r--svx/source/inc/fmcontrollayout.hxx93
-rw-r--r--svx/source/inc/fmdocumentclassification.hxx87
-rw-r--r--svx/source/inc/fmexch.hxx283
-rw-r--r--svx/source/inc/fmexpl.hrc40
-rw-r--r--svx/source/inc/fmexpl.hxx612
-rw-r--r--svx/source/inc/fmgroup.hxx120
-rw-r--r--svx/source/inc/fmhlpids.hrc36
-rw-r--r--svx/source/inc/fmitems.hxx72
-rw-r--r--svx/source/inc/fmobj.hxx134
-rw-r--r--svx/source/inc/fmpgeimp.hxx170
-rw-r--r--svx/source/inc/fmprop.hrc179
-rw-r--r--svx/source/inc/fmresids.hrc264
-rw-r--r--svx/source/inc/fmscriptingenv.hxx99
-rw-r--r--svx/source/inc/fmservs.hxx90
-rw-r--r--svx/source/inc/fmshimp.hxx608
-rw-r--r--svx/source/inc/fmslotinvalidator.hxx55
-rw-r--r--svx/source/inc/fmsrccfg.hxx156
-rw-r--r--svx/source/inc/fmsrcimp.hxx409
-rw-r--r--svx/source/inc/fmtextcontroldialogs.hxx70
-rw-r--r--svx/source/inc/fmtextcontrolfeature.hxx105
-rw-r--r--svx/source/inc/fmtextcontrolshell.hxx224
-rw-r--r--svx/source/inc/fmundo.hxx230
-rw-r--r--svx/source/inc/fmurl.hxx60
-rw-r--r--svx/source/inc/fmvwimp.hxx315
-rw-r--r--svx/source/inc/formcontrolfactory.hxx119
-rw-r--r--svx/source/inc/formcontroller.hxx592
-rw-r--r--svx/source/inc/formcontrolling.hxx308
-rw-r--r--svx/source/inc/formdispatchinterceptor.hxx119
-rw-r--r--svx/source/inc/formfeaturedispatcher.hxx157
-rw-r--r--svx/source/inc/formtoolbars.hxx90
-rw-r--r--svx/source/inc/frmsel.hrc38
-rw-r--r--svx/source/inc/frmselimpl.hxx305
-rw-r--r--svx/source/inc/gridcell.hxx1156
-rw-r--r--svx/source/inc/gridcols.hxx62
-rw-r--r--svx/source/inc/linectrl.hrc28
-rw-r--r--svx/source/inc/recoveryui.hxx155
-rw-r--r--svx/source/inc/sdbdatacolumn.hxx140
-rw-r--r--svx/source/inc/sqlparserclient.hxx79
-rw-r--r--svx/source/inc/stringlistresource.hxx86
-rw-r--r--svx/source/inc/svdoimp.hxx111
-rw-r--r--svx/source/inc/svdoutlinercache.hxx54
-rw-r--r--svx/source/inc/svxrectctaccessiblecontext.hxx566
-rw-r--r--svx/source/inc/tabwin.hxx141
-rw-r--r--svx/source/inc/tbxform.hxx166
-rw-r--r--svx/source/inc/trace.hxx68
-rw-r--r--svx/source/inc/treevisitor.hxx109
-rw-r--r--svx/source/inc/typeconversionclient.hxx93
-rw-r--r--svx/source/inc/unogalthemeprovider.hxx100
-rw-r--r--svx/source/inc/unopolyhelper.hxx55
-rw-r--r--svx/source/inc/xfm_addcondition.hxx92
-rw-r--r--svx/source/inc/xmlxtexp.hxx70
-rw-r--r--svx/source/inc/xmlxtimp.hxx64
-rw-r--r--svx/source/intro/intro_tmpl.hrc1327
-rw-r--r--svx/source/intro/iso.src226
-rw-r--r--svx/source/intro/makefile.mk66
-rw-r--r--svx/source/intro/ooo.src196
-rw-r--r--svx/source/items/SmartTagItem.cxx123
-rw-r--r--svx/source/items/algitem.cxx765
-rw-r--r--svx/source/items/chrtitem.cxx538
-rw-r--r--svx/source/items/clipfmtitem.cxx180
-rw-r--r--svx/source/items/customshapeitem.cxx386
-rw-r--r--svx/source/items/drawitem.cxx557
-rw-r--r--svx/source/items/e3ditem.cxx170
-rw-r--r--svx/source/items/grfitem.cxx197
-rw-r--r--svx/source/items/hlnkitem.cxx430
-rw-r--r--svx/source/items/makefile.mk83
-rw-r--r--svx/source/items/numfmtsh.cxx1869
-rw-r--r--svx/source/items/numinf.cxx250
-rw-r--r--svx/source/items/ofaitem.cxx91
-rw-r--r--svx/source/items/pageitem.cxx338
-rw-r--r--svx/source/items/postattr.cxx192
-rw-r--r--svx/source/items/rotmodit.cxx178
-rw-r--r--svx/source/items/svxempty.cxx40
-rw-r--r--svx/source/items/svxerr.cxx54
-rw-r--r--svx/source/items/svxerr.src174
-rw-r--r--svx/source/items/svxitems.src393
-rw-r--r--svx/source/items/viewlayoutitem.cxx211
-rw-r--r--svx/source/items/zoomitem.cxx231
-rw-r--r--svx/source/items/zoomslideritem.cxx280
-rw-r--r--svx/source/mnuctrls/SmartTagCtl.cxx225
-rw-r--r--svx/source/mnuctrls/clipboardctl.cxx163
-rw-r--r--svx/source/mnuctrls/fntctl.cxx182
-rw-r--r--svx/source/mnuctrls/fntszctl.cxx211
-rw-r--r--svx/source/mnuctrls/makefile.mk71
-rw-r--r--svx/source/mnuctrls/mnuctrls.src81
-rw-r--r--svx/source/sdr/animation/animationstate.cxx148
-rw-r--r--svx/source/sdr/animation/makefile.mk46
-rw-r--r--svx/source/sdr/animation/objectanimator.cxx52
-rw-r--r--svx/source/sdr/animation/scheduler.cxx315
-rw-r--r--svx/source/sdr/attribute/makefile.mk50
-rw-r--r--svx/source/sdr/attribute/sdrfilltextattribute.cxx92
-rw-r--r--svx/source/sdr/attribute/sdrformtextattribute.cxx423
-rw-r--r--svx/source/sdr/attribute/sdrformtextoutlineattribute.cxx185
-rw-r--r--svx/source/sdr/attribute/sdrlinefillshadowtextattribute.cxx95
-rw-r--r--svx/source/sdr/attribute/sdrlineshadowtextattribute.cxx93
-rw-r--r--svx/source/sdr/attribute/sdrshadowtextattribute.cxx85
-rw-r--r--svx/source/sdr/attribute/sdrtextattribute.cxx461
-rw-r--r--svx/source/sdr/contact/displayinfo.cxx110
-rw-r--r--svx/source/sdr/contact/makefile.mk92
-rw-r--r--svx/source/sdr/contact/objectcontact.cxx322
-rw-r--r--svx/source/sdr/contact/objectcontactofobjlistpainter.cxx207
-rw-r--r--svx/source/sdr/contact/objectcontactofpageview.cxx485
-rw-r--r--svx/source/sdr/contact/objectcontacttools.cxx104
-rw-r--r--svx/source/sdr/contact/sdrmediawindow.cxx193
-rw-r--r--svx/source/sdr/contact/sdrmediawindow.hxx69
-rw-r--r--svx/source/sdr/contact/viewcontact.cxx329
-rw-r--r--svx/source/sdr/contact/viewcontactofe3d.cxx227
-rw-r--r--svx/source/sdr/contact/viewcontactofe3dcube.cxx105
-rw-r--r--svx/source/sdr/contact/viewcontactofe3dextrude.cxx100
-rw-r--r--svx/source/sdr/contact/viewcontactofe3dlathe.cxx115
-rw-r--r--svx/source/sdr/contact/viewcontactofe3dpolygon.cxx186
-rw-r--r--svx/source/sdr/contact/viewcontactofe3dscene.cxx478
-rw-r--r--svx/source/sdr/contact/viewcontactofe3dsphere.cxx98
-rw-r--r--svx/source/sdr/contact/viewcontactofgraphic.cxx463
-rw-r--r--svx/source/sdr/contact/viewcontactofgroup.cxx103
-rw-r--r--svx/source/sdr/contact/viewcontactofmasterpagedescriptor.cxx126
-rw-r--r--svx/source/sdr/contact/viewcontactofpageobj.cxx105
-rw-r--r--svx/source/sdr/contact/viewcontactofsdrcaptionobj.cxx179
-rw-r--r--svx/source/sdr/contact/viewcontactofsdrcircobj.cxx117
-rw-r--r--svx/source/sdr/contact/viewcontactofsdredgeobj.cxx79
-rw-r--r--svx/source/sdr/contact/viewcontactofsdrmeasureobj.cxx143
-rw-r--r--svx/source/sdr/contact/viewcontactofsdrmediaobj.cxx184
-rw-r--r--svx/source/sdr/contact/viewcontactofsdrobj.cxx194
-rw-r--r--svx/source/sdr/contact/viewcontactofsdrobjcustomshape.cxx241
-rw-r--r--svx/source/sdr/contact/viewcontactofsdrole2obj.cxx130
-rw-r--r--svx/source/sdr/contact/viewcontactofsdrpage.cxx726
-rw-r--r--svx/source/sdr/contact/viewcontactofsdrpathobj.cxx145
-rw-r--r--svx/source/sdr/contact/viewcontactofsdrrectobj.cxx104
-rw-r--r--svx/source/sdr/contact/viewcontactoftextobj.cxx51
-rw-r--r--svx/source/sdr/contact/viewcontactofunocontrol.cxx181
-rw-r--r--svx/source/sdr/contact/viewcontactofvirtobj.cxx116
-rw-r--r--svx/source/sdr/contact/viewobjectcontact.cxx438
-rw-r--r--svx/source/sdr/contact/viewobjectcontactofe3d.cxx101
-rw-r--r--svx/source/sdr/contact/viewobjectcontactofe3dscene.cxx148
-rw-r--r--svx/source/sdr/contact/viewobjectcontactofgraphic.cxx327
-rw-r--r--svx/source/sdr/contact/viewobjectcontactofgroup.cxx115
-rw-r--r--svx/source/sdr/contact/viewobjectcontactofmasterpagedescriptor.cxx153
-rw-r--r--svx/source/sdr/contact/viewobjectcontactofpageobj.cxx352
-rw-r--r--svx/source/sdr/contact/viewobjectcontactofsdrmediaobj.cxx176
-rwxr-xr-xsvx/source/sdr/contact/viewobjectcontactofsdrobj.cxx152
-rw-r--r--svx/source/sdr/contact/viewobjectcontactofsdrole2obj.cxx243
-rw-r--r--svx/source/sdr/contact/viewobjectcontactofsdrpage.cxx729
-rw-r--r--svx/source/sdr/contact/viewobjectcontactofunocontrol.cxx1925
-rw-r--r--svx/source/sdr/contact/viewobjectcontactredirector.cxx60
-rw-r--r--svx/source/sdr/event/eventhandler.cxx162
-rw-r--r--svx/source/sdr/event/makefile.mk44
-rw-r--r--svx/source/sdr/overlay/makefile.mk59
-rw-r--r--svx/source/sdr/overlay/overlayanimatedbitmapex.cxx217
-rw-r--r--svx/source/sdr/overlay/overlaybitmapex.cxx113
-rw-r--r--svx/source/sdr/overlay/overlaycrosshair.cxx84
-rw-r--r--svx/source/sdr/overlay/overlayhatchrect.cxx94
-rw-r--r--svx/source/sdr/overlay/overlayhelpline.cxx93
-rw-r--r--svx/source/sdr/overlay/overlayline.cxx107
-rw-r--r--svx/source/sdr/overlay/overlaymanager.cxx393
-rw-r--r--svx/source/sdr/overlay/overlaymanagerbuffered.cxx538
-rw-r--r--svx/source/sdr/overlay/overlayobject.cxx216
-rw-r--r--svx/source/sdr/overlay/overlayobjectcell.cxx111
-rw-r--r--svx/source/sdr/overlay/overlayobjectlist.cxx184
-rw-r--r--svx/source/sdr/overlay/overlaypolypolygon.cxx99
-rw-r--r--svx/source/sdr/overlay/overlayprimitive2dsequenceobject.cxx61
-rw-r--r--svx/source/sdr/overlay/overlayrollingrectangle.cxx150
-rw-r--r--svx/source/sdr/overlay/overlayselection.cxx237
-rw-r--r--svx/source/sdr/overlay/overlaytools.cxx493
-rw-r--r--svx/source/sdr/overlay/overlaytriangle.cxx106
-rw-r--r--svx/source/sdr/primitive2d/makefile.mk57
-rw-r--r--svx/source/sdr/primitive2d/primitivefactory2d.cxx132
-rw-r--r--svx/source/sdr/primitive2d/sdrattributecreator.cxx1028
-rw-r--r--svx/source/sdr/primitive2d/sdrcaptionprimitive2d.cxx177
-rw-r--r--svx/source/sdr/primitive2d/sdrconnectorprimitive2d.cxx124
-rw-r--r--svx/source/sdr/primitive2d/sdrcustomshapeprimitive2d.cxx130
-rw-r--r--svx/source/sdr/primitive2d/sdrdecompositiontools.cxx486
-rw-r--r--svx/source/sdr/primitive2d/sdrellipseprimitive2d.cxx278
-rw-r--r--svx/source/sdr/primitive2d/sdrgrafprimitive2d.cxx177
-rw-r--r--svx/source/sdr/primitive2d/sdrmeasureprimitive2d.cxx510
-rw-r--r--svx/source/sdr/primitive2d/sdrole2primitive2d.cxx190
-rw-r--r--svx/source/sdr/primitive2d/sdrolecontentprimitive2d.cxx201
-rw-r--r--svx/source/sdr/primitive2d/sdrpathprimitive2d.cxx147
-rw-r--r--svx/source/sdr/primitive2d/sdrprimitivetools.cxx176
-rw-r--r--svx/source/sdr/primitive2d/sdrrectangleprimitive2d.cxx162
-rw-r--r--svx/source/sdr/primitive2d/sdrtextprimitive2d.cxx497
-rw-r--r--svx/source/sdr/primitive3d/makefile.mk42
-rw-r--r--svx/source/sdr/primitive3d/sdrattributecreator3d.cxx158
-rw-r--r--svx/source/sdr/properties/attributeproperties.cxx628
-rw-r--r--svx/source/sdr/properties/captionproperties.cxx120
-rw-r--r--svx/source/sdr/properties/circleproperties.cxx157
-rw-r--r--svx/source/sdr/properties/connectorproperties.cxx107
-rw-r--r--svx/source/sdr/properties/customshapeproperties.cxx239
-rw-r--r--svx/source/sdr/properties/defaultproperties.cxx237
-rw-r--r--svx/source/sdr/properties/e3dcompoundproperties.cxx165
-rw-r--r--svx/source/sdr/properties/e3dextrudeproperties.cxx90
-rw-r--r--svx/source/sdr/properties/e3dlatheproperties.cxx100
-rw-r--r--svx/source/sdr/properties/e3dproperties.cxx106
-rw-r--r--svx/source/sdr/properties/e3dsceneproperties.cxx334
-rw-r--r--svx/source/sdr/properties/e3dsphereproperties.cxx85
-rw-r--r--svx/source/sdr/properties/emptyproperties.cxx153
-rw-r--r--svx/source/sdr/properties/graphicproperties.cxx143
-rw-r--r--svx/source/sdr/properties/groupproperties.cxx298
-rw-r--r--svx/source/sdr/properties/itemsettools.cxx146
-rw-r--r--svx/source/sdr/properties/makefile.mk65
-rw-r--r--svx/source/sdr/properties/measureproperties.cxx141
-rw-r--r--svx/source/sdr/properties/oleproperties.cxx80
-rw-r--r--svx/source/sdr/properties/pageproperties.cxx101
-rw-r--r--svx/source/sdr/properties/properties.cxx189
-rw-r--r--svx/source/sdr/properties/rectangleproperties.cxx84
-rw-r--r--svx/source/sdr/properties/textproperties.cxx638
-rw-r--r--svx/source/smarttags/SmartTagMgr.cxx552
-rw-r--r--svx/source/smarttags/makefile.mk48
-rw-r--r--svx/source/src/app.hrc445
-rw-r--r--svx/source/src/app.src86
-rw-r--r--svx/source/src/hidgen.hrc33
-rw-r--r--svx/source/src/makefile.mk57
-rw-r--r--svx/source/stbctrls/insctrl.cxx131
-rw-r--r--svx/source/stbctrls/makefile.mk75
-rw-r--r--svx/source/stbctrls/modctrl.cxx98
-rw-r--r--svx/source/stbctrls/pszctrl.cxx447
-rw-r--r--svx/source/stbctrls/selctrl.cxx154
-rw-r--r--svx/source/stbctrls/stbctrls.h55
-rw-r--r--svx/source/stbctrls/stbctrls.src327
-rw-r--r--svx/source/stbctrls/xmlsecctrl.cxx208
-rw-r--r--svx/source/stbctrls/zoomctrl.cxx223
-rw-r--r--svx/source/stbctrls/zoomsliderctrl.cxx448
-rw-r--r--svx/source/svdraw/ActionDescriptionProvider.cxx82
-rw-r--r--svx/source/svdraw/clonelist.cxx134
-rw-r--r--svx/source/svdraw/gradtrns.cxx538
-rw-r--r--svx/source/svdraw/gradtrns.hxx64
-rw-r--r--svx/source/svdraw/impgrfll.cxx255
-rw-r--r--svx/source/svdraw/makefile.mk124
-rw-r--r--svx/source/svdraw/polypolygoneditor.cxx190
-rw-r--r--svx/source/svdraw/sdrcomment.cxx98
-rw-r--r--svx/source/svdraw/sdrhittesthelper.cxx173
-rw-r--r--svx/source/svdraw/sdrmasterpagedescriptor.cxx142
-rw-r--r--svx/source/svdraw/sdrpagewindow.cxx464
-rw-r--r--svx/source/svdraw/sdrpaintwindow.cxx312
-rw-r--r--svx/source/svdraw/selectioncontroller.cxx114
-rw-r--r--svx/source/svdraw/svdattr.cxx2429
-rw-r--r--svx/source/svdraw/svdcrtv.cxx964
-rw-r--r--svx/source/svdraw/svddrag.cxx153
-rw-r--r--svx/source/svdraw/svddrgm1.hxx277
-rw-r--r--svx/source/svdraw/svddrgmt.cxx3652
-rw-r--r--svx/source/svdraw/svddrgv.cxx1006
-rw-r--r--svx/source/svdraw/svdedtv.cxx1046
-rw-r--r--svx/source/svdraw/svdedtv1.cxx1784
-rw-r--r--svx/source/svdraw/svdedtv2.cxx2139
-rw-r--r--svx/source/svdraw/svdedxv.cxx2146
-rw-r--r--svx/source/svdraw/svdetc.cxx1118
-rw-r--r--svx/source/svdraw/svdfmtf.cxx1028
-rw-r--r--svx/source/svdraw/svdfmtf.hxx166
-rw-r--r--svx/source/svdraw/svdglev.cxx422
-rw-r--r--svx/source/svdraw/svdglue.cxx450
-rw-r--r--svx/source/svdraw/svdhdl.cxx2417
-rw-r--r--svx/source/svdraw/svdhlpln.cxx149
-rw-r--r--svx/source/svdraw/svdibrow.cxx1299
-rw-r--r--svx/source/svdraw/svditer.cxx110
-rw-r--r--svx/source/svdraw/svditext.hxx37
-rw-r--r--svx/source/svdraw/svdlayer.cxx458
-rw-r--r--svx/source/svdraw/svdmark.cxx1040
-rw-r--r--svx/source/svdraw/svdmodel.cxx2251
-rw-r--r--svx/source/svdraw/svdmrkv.cxx2177
-rw-r--r--svx/source/svdraw/svdmrkv1.cxx724
-rw-r--r--svx/source/svdraw/svdoashp.cxx3504
-rw-r--r--svx/source/svdraw/svdoattr.cxx180
-rw-r--r--svx/source/svdraw/svdobj.cxx3310
-rw-r--r--svx/source/svdraw/svdocapt.cxx851
-rw-r--r--svx/source/svdraw/svdocirc.cxx1169
-rw-r--r--svx/source/svdraw/svdoedge.cxx2497
-rw-r--r--svx/source/svdraw/svdograf.cxx1282
-rw-r--r--svx/source/svdraw/svdogrp.cxx801
-rw-r--r--svx/source/svdraw/svdomeas.cxx1494
-rw-r--r--svx/source/svdraw/svdomedia.cxx285
-rw-r--r--svx/source/svdraw/svdoole2.cxx2242
-rw-r--r--svx/source/svdraw/svdopage.cxx195
-rw-r--r--svx/source/svdraw/svdopath.cxx3118
-rw-r--r--svx/source/svdraw/svdorect.cxx620
-rw-r--r--svx/source/svdraw/svdotext.cxx2132
-rw-r--r--svx/source/svdraw/svdotextdecomposition.cxx1258
-rw-r--r--svx/source/svdraw/svdotextpathdecomposition.cxx824
-rw-r--r--svx/source/svdraw/svdotxat.cxx462
-rw-r--r--svx/source/svdraw/svdotxdr.cxx285
-rw-r--r--svx/source/svdraw/svdotxed.cxx350
-rw-r--r--svx/source/svdraw/svdotxfl.cxx58
-rw-r--r--svx/source/svdraw/svdotxln.cxx350
-rw-r--r--svx/source/svdraw/svdotxtr.cxx558
-rw-r--r--svx/source/svdraw/svdouno.cxx665
-rw-r--r--svx/source/svdraw/svdoutl.cxx132
-rw-r--r--svx/source/svdraw/svdoutlinercache.cxx115
-rw-r--r--svx/source/svdraw/svdovirt.cxx659
-rw-r--r--svx/source/svdraw/svdpage.cxx2032
-rw-r--r--svx/source/svdraw/svdpagv.cxx1118
-rwxr-xr-xsvx/source/svdraw/svdpntv.cxx1540
-rw-r--r--svx/source/svdraw/svdpoev.cxx745
-rw-r--r--svx/source/svdraw/svdsnpv.cxx730
-rw-r--r--svx/source/svdraw/svdstr.src2940
-rw-r--r--svx/source/svdraw/svdtext.cxx224
-rw-r--r--svx/source/svdraw/svdtrans.cxx1271
-rw-r--r--svx/source/svdraw/svdundo.cxx1871
-rw-r--r--svx/source/svdraw/svdview.cxx1606
-rw-r--r--svx/source/svdraw/svdviter.cxx351
-rw-r--r--svx/source/svdraw/svdxcgv.cxx894
-rw-r--r--svx/source/table/accessiblecell.cxx584
-rw-r--r--svx/source/table/accessiblecell.hxx149
-rw-r--r--svx/source/table/accessibletableshape.cxx723
-rw-r--r--svx/source/table/cell.cxx1809
-rw-r--r--svx/source/table/cell.hxx244
-rw-r--r--svx/source/table/cellcursor.cxx590
-rw-r--r--svx/source/table/cellcursor.hxx83
-rw-r--r--svx/source/table/celleditsource.cxx1056
-rw-r--r--svx/source/table/celleditsource.hxx89
-rw-r--r--svx/source/table/cellrange.cxx132
-rw-r--r--svx/source/table/cellrange.hxx72
-rw-r--r--svx/source/table/celltypes.hxx109
-rw-r--r--svx/source/table/makefile.mk80
-rw-r--r--svx/source/table/propertyset.cxx259
-rw-r--r--svx/source/table/propertyset.hxx109
-rw-r--r--svx/source/table/svdotable.cxx2820
-rw-r--r--svx/source/table/table.src34
-rw-r--r--svx/source/table/tablecolumn.cxx305
-rw-r--r--svx/source/table/tablecolumn.hxx88
-rw-r--r--svx/source/table/tablecolumns.cxx141
-rw-r--r--svx/source/table/tablecolumns.hxx71
-rw-r--r--svx/source/table/tablecontroller.cxx2618
-rw-r--r--svx/source/table/tablecontroller.hxx170
-rw-r--r--svx/source/table/tabledesign.cxx808
-rw-r--r--svx/source/table/tablehandles.cxx314
-rw-r--r--svx/source/table/tablehandles.hxx96
-rw-r--r--svx/source/table/tablelayouter.cxx1300
-rw-r--r--svx/source/table/tablelayouter.hxx178
-rw-r--r--svx/source/table/tablemodel.cxx1258
-rw-r--r--svx/source/table/tablemodel.hxx225
-rw-r--r--svx/source/table/tablerow.cxx381
-rw-r--r--svx/source/table/tablerow.hxx92
-rw-r--r--svx/source/table/tablerows.cxx136
-rw-r--r--svx/source/table/tablerows.hxx71
-rw-r--r--svx/source/table/tablertfexporter.cxx284
-rw-r--r--svx/source/table/tablertfimporter.cxx447
-rw-r--r--svx/source/table/tableundo.cxx559
-rw-r--r--svx/source/table/tableundo.hxx259
-rw-r--r--svx/source/table/viewcontactoftableobj.cxx736
-rw-r--r--svx/source/table/viewcontactoftableobj.hxx72
-rw-r--r--svx/source/tbxctrls/colorwindow.hxx48
-rw-r--r--svx/source/tbxctrls/colrctrl.cxx661
-rw-r--r--svx/source/tbxctrls/colrctrl.src84
-rw-r--r--svx/source/tbxctrls/extrusioncontrols.cxx1051
-rw-r--r--svx/source/tbxctrls/extrusioncontrols.hrc120
-rw-r--r--svx/source/tbxctrls/extrusioncontrols.hxx260
-rw-r--r--svx/source/tbxctrls/extrusioncontrols.src801
-rw-r--r--svx/source/tbxctrls/fillctrl.cxx846
-rw-r--r--svx/source/tbxctrls/fontworkgallery.cxx818
-rw-r--r--svx/source/tbxctrls/fontworkgallery.src328
-rw-r--r--svx/source/tbxctrls/formatpaintbrushctrl.cxx120
-rw-r--r--svx/source/tbxctrls/grafctrl.cxx1290
-rw-r--r--svx/source/tbxctrls/grafctrl.hrc28
-rw-r--r--svx/source/tbxctrls/grafctrl.src192
-rw-r--r--svx/source/tbxctrls/itemwin.cxx825
-rw-r--r--svx/source/tbxctrls/layctrl.cxx899
-rw-r--r--svx/source/tbxctrls/lboxctrl.cxx351
-rw-r--r--svx/source/tbxctrls/lboxctrl.hrc30
-rw-r--r--svx/source/tbxctrls/lboxctrl.src77
-rw-r--r--svx/source/tbxctrls/linectrl.cxx784
-rw-r--r--svx/source/tbxctrls/linectrl.src34
-rw-r--r--svx/source/tbxctrls/makefile.mk83
-rw-r--r--svx/source/tbxctrls/subtoolboxcontrol.cxx84
-rw-r--r--svx/source/tbxctrls/tbcontrl.cxx2858
-rw-r--r--svx/source/tbxctrls/tbcontrl.src189
-rw-r--r--svx/source/tbxctrls/tbunocontroller.cxx429
-rw-r--r--svx/source/tbxctrls/tbunosearchcontrollers.cxx873
-rw-r--r--svx/source/tbxctrls/tbunosearchcontrollers.src33
-rw-r--r--svx/source/tbxctrls/tbxalign.cxx141
-rw-r--r--svx/source/tbxctrls/tbxcolor.cxx118
-rw-r--r--svx/source/tbxctrls/tbxcolorupdate.cxx208
-rw-r--r--svx/source/tbxctrls/tbxdraw.hrc31
-rw-r--r--svx/source/tbxctrls/tbxdrctl.cxx120
-rw-r--r--svx/source/tbxctrls/verttexttbxctrl.cxx123
-rw-r--r--svx/source/toolbars/extrusionbar.cxx1374
-rw-r--r--svx/source/toolbars/extrusionbar.src56
-rw-r--r--svx/source/toolbars/fontworkbar.cxx641
-rw-r--r--svx/source/toolbars/fontworkbar.src53
-rw-r--r--svx/source/toolbars/makefile.mk56
-rw-r--r--svx/source/unodialogs/inc/buttongroup.hrc65
-rw-r--r--svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog.cxx895
-rw-r--r--svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog.hrc53
-rw-r--r--svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog.hxx201
-rw-r--r--svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog.src192
-rw-r--r--svx/source/unodialogs/textconversiondlgs/chinese_direction_ids.hrc34
-rw-r--r--svx/source/unodialogs/textconversiondlgs/chinese_direction_tmpl.hrc51
-rw-r--r--svx/source/unodialogs/textconversiondlgs/chinese_translation_unodialog.cxx285
-rw-r--r--svx/source/unodialogs/textconversiondlgs/chinese_translation_unodialog.hxx143
-rw-r--r--svx/source/unodialogs/textconversiondlgs/chinese_translationdialog.cxx201
-rw-r--r--svx/source/unodialogs/textconversiondlgs/chinese_translationdialog.hrc44
-rw-r--r--svx/source/unodialogs/textconversiondlgs/chinese_translationdialog.hxx90
-rw-r--r--svx/source/unodialogs/textconversiondlgs/chinese_translationdialog.src121
-rw-r--r--svx/source/unodialogs/textconversiondlgs/makefile.mk98
-rw-r--r--svx/source/unodialogs/textconversiondlgs/resid.cxx52
-rw-r--r--svx/source/unodialogs/textconversiondlgs/resid.hxx50
-rw-r--r--svx/source/unodialogs/textconversiondlgs/resids.hrc33
-rw-r--r--svx/source/unodialogs/textconversiondlgs/services.cxx63
-rw-r--r--svx/source/unodialogs/textconversiondlgs/textconversiondlgs.component34
-rw-r--r--svx/source/unodraw/UnoGraphicExporter.cxx1284
-rw-r--r--svx/source/unodraw/UnoGraphicExporter.hxx40
-rw-r--r--svx/source/unodraw/UnoNameItemTable.cxx341
-rw-r--r--svx/source/unodraw/UnoNameItemTable.hxx91
-rw-r--r--svx/source/unodraw/UnoNamespaceMap.cxx314
-rw-r--r--svx/source/unodraw/XPropertyTable.cxx743
-rw-r--r--svx/source/unodraw/gluepts.cxx548
-rw-r--r--svx/source/unodraw/makefile.mk83
-rw-r--r--svx/source/unodraw/recoveryui.cxx399
-rw-r--r--svx/source/unodraw/shapeimpl.hxx129
-rw-r--r--svx/source/unodraw/shapepropertynotifier.cxx207
-rw-r--r--svx/source/unodraw/tableshape.cxx194
-rw-r--r--svx/source/unodraw/unobtabl.cxx122
-rw-r--r--svx/source/unodraw/unoctabl.cxx393
-rw-r--r--svx/source/unodraw/unodraw.src42
-rw-r--r--svx/source/unodraw/unodtabl.cxx108
-rw-r--r--svx/source/unodraw/unogtabl.cxx107
-rw-r--r--svx/source/unodraw/unohtabl.cxx105
-rw-r--r--svx/source/unodraw/unomlstr.cxx72
-rw-r--r--svx/source/unodraw/unomod.cxx778
-rw-r--r--svx/source/unodraw/unomtabl.cxx482
-rw-r--r--svx/source/unodraw/unopage.cxx1008
-rw-r--r--svx/source/unodraw/unopool.cxx430
-rw-r--r--svx/source/unodraw/unoprov.cxx1428
-rw-r--r--svx/source/unodraw/unoshap2.cxx2157
-rw-r--r--svx/source/unodraw/unoshap3.cxx1210
-rw-r--r--svx/source/unodraw/unoshap4.cxx996
-rw-r--r--svx/source/unodraw/unoshape.cxx4660
-rw-r--r--svx/source/unodraw/unoshcol.cxx258
-rw-r--r--svx/source/unodraw/unoshtxt.cxx1149
-rw-r--r--svx/source/unodraw/unottabl.cxx107
-rwxr-xr-xsvx/source/unogallery/makefile.mk48
-rw-r--r--svx/source/unogallery/unogalitem.cxx485
-rw-r--r--svx/source/unogallery/unogalitem.hxx126
-rw-r--r--svx/source/unogallery/unogaltheme.cxx433
-rw-r--r--svx/source/unogallery/unogaltheme.hxx110
-rw-r--r--svx/source/unogallery/unogalthemeprovider.cxx316
-rw-r--r--svx/source/xml/makefile.mk49
-rw-r--r--svx/source/xml/xmleohlp.cxx819
-rw-r--r--svx/source/xml/xmlexport.cxx283
-rw-r--r--svx/source/xml/xmlgrhlp.cxx1154
-rw-r--r--svx/source/xml/xmlxtexp.cxx492
-rw-r--r--svx/source/xml/xmlxtimp.cxx488
-rw-r--r--svx/source/xoutdev/_xoutbmp.cxx768
-rw-r--r--svx/source/xoutdev/_xpoly.cxx2135
-rw-r--r--svx/source/xoutdev/makefile.mk59
-rw-r--r--svx/source/xoutdev/xattr.cxx5778
-rw-r--r--svx/source/xoutdev/xattr2.cxx1712
-rw-r--r--svx/source/xoutdev/xattrbmp.cxx894
-rw-r--r--svx/source/xoutdev/xexch.cxx204
-rw-r--r--svx/source/xoutdev/xpool.cxx235
-rw-r--r--svx/source/xoutdev/xtabbtmp.cxx294
-rw-r--r--svx/source/xoutdev/xtabcolr.cxx548
-rw-r--r--svx/source/xoutdev/xtabdash.cxx378
-rw-r--r--svx/source/xoutdev/xtabgrdt.cxx372
-rw-r--r--svx/source/xoutdev/xtabhtch.cxx374
-rw-r--r--svx/source/xoutdev/xtable.cxx511
-rw-r--r--svx/source/xoutdev/xtablend.cxx395
-rw-r--r--svx/uiconfig/layout/delzip1
-rw-r--r--svx/uiconfig/layout/layout.mk33
-rw-r--r--svx/uiconfig/layout/makefile.mk46
-rw-r--r--svx/uiconfig/layout/zoom.xml59
-rw-r--r--svx/util/cui.dxp1
-rw-r--r--svx/util/cui.flt139
-rw-r--r--svx/util/dl.flt139
-rw-r--r--svx/util/gal.dxp20
-rw-r--r--svx/util/hidother.hrc27
-rw-r--r--svx/util/hidother.src74
-rw-r--r--svx/util/makefile.mk212
-rw-r--r--svx/util/makefile.pmk43
-rw-r--r--svx/util/svx.component76
-rw-r--r--svx/util/svx.dxp2
-rw-r--r--svx/util/svx.flt134
-rw-r--r--svx/util/svxcore.component49
-rw-r--r--svx/util/svxpch.cxx69
-rw-r--r--svx/workben/edittest.cxx1795
-rw-r--r--svx/workben/makefile.mk72
-rw-r--r--svx/workben/msview/makefile.mk72
-rw-r--r--svx/workben/msview/msview.cxx1224
-rw-r--r--svx/workben/msview/msview.xml294
-rw-r--r--svx/workben/msview/xmlconfig.cxx575
-rw-r--r--svx/workben/msview/xmlconfig.hxx108
-rw-r--r--svx/xml/AccessibleControlShape.xml40
-rw-r--r--svx/xml/AccessibleEditableTextPara.xml37
-rw-r--r--svx/xml/AccessibleGraphicShape.xml41
-rw-r--r--svx/xml/AccessibleImageBullet.xml34
-rw-r--r--svx/xml/AccessibleOLEShape.xml41
-rw-r--r--svx/xml/AccessibleShape.xml39
-rw-r--r--svx/xml/SvxDrawPage.xml16
-rw-r--r--svx/xml/SvxGraphCtrlAccessibleContext.xml19
-rw-r--r--svx/xml/SvxGraphicExporter.xml16
-rw-r--r--svx/xml/SvxGraphicObject.xml16
-rw-r--r--svx/xml/SvxShape.xml16
-rw-r--r--svx/xml/SvxShapeCircle.xml16
-rw-r--r--svx/xml/SvxShapeCollection.xml16
-rw-r--r--svx/xml/SvxShapeConnector.xml16
-rw-r--r--svx/xml/SvxShapeControl.xml16
-rw-r--r--svx/xml/SvxShapeDimensioning.xml16
-rw-r--r--svx/xml/SvxShapeGroup.xml16
-rw-r--r--svx/xml/SvxShapePolyPolygon.xml16
-rw-r--r--svx/xml/SvxShapePolyPolygonBezier.xml16
-rw-r--r--svx/xml/SvxUnoNumberingRules.xml16
-rw-r--r--svx/xml/SvxUnoText.xml16
-rw-r--r--svx/xml/SvxUnoTextContent.xml16
-rw-r--r--svx/xml/SvxUnoTextContentEnum.xml16
-rw-r--r--svx/xml/SvxUnoTextCursor.xml16
-rw-r--r--svx/xml/SvxUnoTextField.xml16
-rw-r--r--svx/xml/SvxUnoTextRange.xml16
-rw-r--r--svx/xml/SvxUnoTextRangeEnumeration.xml16
-rw-r--r--sw/inc/AnnotationWin.hxx83
-rw-r--r--sw/inc/EnhancedPDFExportHelper.hxx256
-rw-r--r--sw/inc/HandleAnchorNodeChg.hxx81
-rw-r--r--sw/inc/IDocumentChartDataProviderAccess.hxx69
-rw-r--r--sw/inc/IDocumentContentOperations.hxx203
-rwxr-xr-xsw/inc/IDocumentDeviceAccess.hxx145
-rw-r--r--sw/inc/IDocumentDrawModelAccess.hxx111
-rw-r--r--sw/inc/IDocumentExternalData.hxx69
-rw-r--r--sw/inc/IDocumentFieldsAccess.hxx191
-rw-r--r--sw/inc/IDocumentLayoutAccess.hxx78
-rw-r--r--sw/inc/IDocumentLineNumberAccess.hxx51
-rw-r--r--sw/inc/IDocumentLinksAdministration.hxx91
-rw-r--r--sw/inc/IDocumentListItems.hxx61
-rw-r--r--sw/inc/IDocumentListsAccess.hxx57
-rw-r--r--sw/inc/IDocumentMarkAccess.hxx251
-rw-r--r--sw/inc/IDocumentOutlineNodes.hxx57
-rw-r--r--sw/inc/IDocumentRedlineAccess.hxx259
-rw-r--r--sw/inc/IDocumentSettingAccess.hxx212
-rw-r--r--sw/inc/IDocumentState.hxx87
-rw-r--r--sw/inc/IDocumentStatistics.hxx60
-rw-r--r--sw/inc/IDocumentStylePoolAccess.hxx87
-rw-r--r--sw/inc/IDocumentTimerAccess.hxx60
-rw-r--r--sw/inc/IDocumentUndoRedo.hxx193
-rw-r--r--sw/inc/IGrammarContact.hxx87
-rw-r--r--sw/inc/IInterface.hxx67
-rw-r--r--sw/inc/IMark.hxx119
-rw-r--r--sw/inc/PostItMgr.hxx307
-rw-r--r--sw/inc/RefreshListenerContainer.hxx38
-rw-r--r--sw/inc/SidebarWin.hxx274
-rw-r--r--sw/inc/SidebarWindowsTypes.hxx53
-rw-r--r--sw/inc/SwAppletImpl.hxx79
-rw-r--r--sw/inc/SwCapObjType.hxx35
-rw-r--r--sw/inc/SwGetPoolIdFromName.hxx44
-rw-r--r--sw/inc/SwNodeNum.hxx118
-rw-r--r--sw/inc/SwNumberTree.hxx767
-rw-r--r--sw/inc/SwNumberTreeTypes.hxx39
-rw-r--r--sw/inc/SwRewriter.hxx50
-rw-r--r--sw/inc/SwSmartTagMgr.hxx65
-rw-r--r--sw/inc/SwStyleNameMapper.hxx204
-rw-r--r--sw/inc/SwUndoField.hxx85
-rw-r--r--sw/inc/SwUndoFmt.hxx250
-rw-r--r--sw/inc/SwUndoPageDesc.hxx90
-rw-r--r--sw/inc/SwUndoTOXChange.hxx47
-rw-r--r--sw/inc/SwXMLSectionList.hxx89
-rw-r--r--sw/inc/TextCursorHelper.hxx54
-rw-r--r--sw/inc/access.hrc62
-rw-r--r--sw/inc/accessibilityoptions.hxx53
-rw-r--r--sw/inc/accmap.hxx329
-rw-r--r--sw/inc/acmplwrd.hxx73
-rw-r--r--sw/inc/anchoreddrawobject.hxx223
-rw-r--r--sw/inc/anchoredobject.hxx642
-rw-r--r--sw/inc/authfld.hxx203
-rw-r--r--sw/inc/authratr.hxx54
-rw-r--r--sw/inc/bparr.hxx126
-rw-r--r--sw/inc/breakit.hxx122
-rw-r--r--sw/inc/calbck.hxx250
-rw-r--r--sw/inc/calc.hxx241
-rw-r--r--sw/inc/ccoll.hxx100
-rw-r--r--sw/inc/cellatr.hxx129
-rw-r--r--sw/inc/cellfml.hxx164
-rw-r--r--sw/inc/charatr.hxx178
-rw-r--r--sw/inc/charfmt.hxx61
-rw-r--r--sw/inc/chcmprse.hxx40
-rw-r--r--sw/inc/checkit.hxx54
-rw-r--r--sw/inc/chpfld.hxx102
-rw-r--r--sw/inc/chrdlg.hrc60
-rw-r--r--sw/inc/cmdid.h1310
-rw-r--r--sw/inc/colwd.hxx62
-rw-r--r--sw/inc/comcore.hrc123
-rw-r--r--sw/inc/crsrsh.hxx952
-rw-r--r--sw/inc/crsskip.hxx42
-rw-r--r--sw/inc/crstate.hxx217
-rw-r--r--sw/inc/cshtyp.hxx119
-rw-r--r--sw/inc/dbfld.hxx338
-rw-r--r--sw/inc/dbgoutsw.hxx129
-rw-r--r--sw/inc/dbmgr.hxx399
-rw-r--r--sw/inc/dbui.hrc126
-rw-r--r--sw/inc/dcontact.hxx561
-rw-r--r--sw/inc/ddefld.hxx117
-rw-r--r--sw/inc/dialog.hrc89
-rw-r--r--sw/inc/dlelstnr.hxx95
-rw-r--r--sw/inc/dobjfac.hxx47
-rw-r--r--sw/inc/doc.hxx2223
-rw-r--r--sw/inc/docary.hxx132
-rw-r--r--sw/inc/docfac.hxx48
-rw-r--r--sw/inc/dochdl.hrc54
-rwxr-xr-xsw/inc/docsh.hxx320
-rw-r--r--sw/inc/docstat.hxx52
-rw-r--r--sw/inc/docstyle.hxx245
-rw-r--r--sw/inc/docufld.hxx836
-rw-r--r--sw/inc/dpage.hxx64
-rw-r--r--sw/inc/drawdoc.hxx65
-rw-r--r--sw/inc/edglbldc.hxx77
-rw-r--r--sw/inc/edimp.hxx83
-rw-r--r--sw/inc/editsh.hxx995
-rw-r--r--sw/inc/envelp.hrc97
-rw-r--r--sw/inc/errhdl.hxx76
-rw-r--r--sw/inc/error.h50
-rw-r--r--sw/inc/expfld.hxx436
-rw-r--r--sw/inc/extinput.hxx59
-rw-r--r--sw/inc/fchrfmt.hxx83
-rw-r--r--sw/inc/fesh.hxx786
-rw-r--r--sw/inc/fldbas.hxx465
-rw-r--r--sw/inc/flddat.hxx148
-rw-r--r--sw/inc/flddropdown.hxx279
-rw-r--r--sw/inc/fldinit.hxx38
-rw-r--r--sw/inc/fldui.hrc292
-rw-r--r--sw/inc/fldupde.hxx39
-rw-r--r--sw/inc/flyenum.hxx55
-rw-r--r--sw/inc/flypos.hxx60
-rw-r--r--sw/inc/fmtanchr.hxx92
-rw-r--r--sw/inc/fmtautofmt.hxx75
-rw-r--r--sw/inc/fmtclbl.hxx54
-rw-r--r--sw/inc/fmtclds.hxx179
-rw-r--r--sw/inc/fmtcnct.hxx87
-rw-r--r--sw/inc/fmtcntnt.hxx66
-rw-r--r--sw/inc/fmtcol.hxx304
-rw-r--r--sw/inc/fmtcolfunc.hxx89
-rw-r--r--sw/inc/fmteiro.hxx60
-rw-r--r--sw/inc/fmtflcnt.hxx64
-rw-r--r--sw/inc/fmtfld.hxx119
-rw-r--r--sw/inc/fmtfollowtextflow.hxx66
-rw-r--r--sw/inc/fmtfordr.hxx72
-rw-r--r--sw/inc/fmtfsize.hxx113
-rw-r--r--sw/inc/fmtftn.hxx81
-rw-r--r--sw/inc/fmtftntx.hxx137
-rw-r--r--sw/inc/fmthdft.hxx114
-rw-r--r--sw/inc/fmtinfmt.hxx110
-rw-r--r--sw/inc/fmtline.hxx71
-rw-r--r--sw/inc/fmtlsplt.hxx58
-rwxr-xr-xsw/inc/fmtmeta.hxx229
-rw-r--r--sw/inc/fmtornt.hxx143
-rw-r--r--sw/inc/fmtpdsc.hxx99
-rw-r--r--sw/inc/fmtrfmrk.hxx64
-rw-r--r--sw/inc/fmtrowsplt.hxx58
-rw-r--r--sw/inc/fmtruby.hxx91
-rw-r--r--sw/inc/fmtsrnd.hxx93
-rw-r--r--sw/inc/fmtsrndenum.hxx41
-rw-r--r--sw/inc/fmtui.hrc89
-rw-r--r--sw/inc/fmturl.hxx92
-rw-r--r--sw/inc/fmtwrapinfluenceonobjpos.hxx77
-rw-r--r--sw/inc/format.hxx358
-rw-r--r--sw/inc/frmatr.hxx99
-rw-r--r--sw/inc/frmfmt.hxx323
-rw-r--r--sw/inc/ftnidx.hxx79
-rw-r--r--sw/inc/ftninfo.hxx117
-rw-r--r--sw/inc/globals.hrc290
-rw-r--r--sw/inc/globdoc.hxx53
-rw-r--r--sw/inc/grfatr.hxx370
-rw-r--r--sw/inc/helpid.h992
-rw-r--r--sw/inc/hfspacingitem.hxx59
-rw-r--r--sw/inc/hhcwrp.hxx121
-rw-r--r--sw/inc/hintids.hxx486
-rw-r--r--sw/inc/hints.hxx284
-rw-r--r--sw/inc/htmltbl.hxx491
-rw-r--r--sw/inc/index.hrc66
-rw-r--r--sw/inc/index.hxx217
-rw-r--r--sw/inc/inetfld.hxx109
-rw-r--r--sw/inc/init.hxx48
-rw-r--r--sw/inc/io.hxx176
-rw-r--r--sw/inc/iodetect.hxx127
-rw-r--r--sw/inc/istyleaccess.hxx69
-rw-r--r--sw/inc/itabenum.hxx54
-rw-r--r--sw/inc/lineinfo.hxx109
-rw-r--r--sw/inc/linkenum.hxx39
-rw-r--r--sw/inc/list.hxx74
-rw-r--r--sw/inc/listfunc.hxx38
-rw-r--r--sw/inc/makefile.mk49
-rw-r--r--sw/inc/mdiexp.hxx78
-rw-r--r--sw/inc/modcfg.hxx343
-rw-r--r--sw/inc/modeltoviewhelper.hxx111
-rw-r--r--sw/inc/ndarr.hxx352
-rw-r--r--sw/inc/ndgrf.hxx257
-rw-r--r--sw/inc/ndhints.hxx223
-rw-r--r--sw/inc/ndindex.hxx252
-rw-r--r--sw/inc/ndnotxt.hxx121
-rw-r--r--sw/inc/ndole.hxx171
-rw-r--r--sw/inc/ndtxt.hxx917
-rw-r--r--sw/inc/ndtyp.hxx69
-rw-r--r--sw/inc/newhdl.hxx73
-rw-r--r--sw/inc/node.hxx761
-rw-r--r--sw/inc/numrule.hxx374
-rw-r--r--sw/inc/pagedesc.hxx347
-rw-r--r--sw/inc/pageiter.hxx53
-rw-r--r--sw/inc/pagepreviewlayout.hxx624
-rw-r--r--sw/inc/pam.hxx280
-rw-r--r--sw/inc/paratr.hxx278
-rw-r--r--sw/inc/pausethreadstarting.hxx48
-rw-r--r--sw/inc/pch/precompiled_sw.cxx29
-rw-r--r--sw/inc/pch/precompiled_sw.hxx1003
-rw-r--r--sw/inc/poolfmt.awk73
-rw-r--r--sw/inc/poolfmt.hrc281
-rw-r--r--sw/inc/poolfmt.hxx443
-rw-r--r--sw/inc/postithelper.hxx159
-rwxr-xr-xsw/inc/printdata.hxx323
-rw-r--r--sw/inc/pvprtdat.hxx79
-rw-r--r--sw/inc/rcid.hrc271
-rw-r--r--sw/inc/redline.hxx314
-rw-r--r--sw/inc/redlnaut.hxx54
-rw-r--r--sw/inc/reffld.hxx162
-rw-r--r--sw/inc/ring.hxx52
-rw-r--r--sw/inc/rolbck.hxx452
-rw-r--r--sw/inc/rubylist.hxx54
-rw-r--r--sw/inc/section.hxx389
-rw-r--r--sw/inc/shellid.hxx73
-rw-r--r--sw/inc/shellio.hxx678
-rw-r--r--sw/inc/shellres.hxx120
-rw-r--r--sw/inc/sortopt.hxx69
-rw-r--r--sw/inc/splargs.hxx180
-rw-r--r--sw/inc/statstr.hrc54
-rw-r--r--sw/inc/stringhash.hxx104
-rw-r--r--sw/inc/sw.mk40
-rw-r--r--sw/inc/sw_primitivetypes2d.hxx46
-rw-r--r--sw/inc/swabstdlg.hxx498
-rw-r--r--sw/inc/swacorr.hxx59
-rw-r--r--sw/inc/swatrset.hxx353
-rw-r--r--sw/inc/swbaslnk.hxx95
-rw-r--r--sw/inc/swcalwrp.hxx55
-rw-r--r--sw/inc/swcli.hxx58
-rw-r--r--sw/inc/swcommands.h434
-rw-r--r--sw/inc/swcrsr.hxx312
-rw-r--r--sw/inc/swdbdata.hxx49
-rw-r--r--sw/inc/swdbtoolsclient.hxx76
-rw-r--r--sw/inc/swddetbl.hxx61
-rw-r--r--sw/inc/swdll.hxx69
-rw-r--r--sw/inc/swdllapi.h13
-rw-r--r--sw/inc/swerror.h112
-rw-r--r--sw/inc/swevent.hxx129
-rw-r--r--sw/inc/swfltopt.hxx44
-rw-r--r--sw/inc/swgstr.hxx148
-rw-r--r--sw/inc/swhints.hxx36
-rw-r--r--sw/inc/swmodule.hxx278
-rw-r--r--sw/inc/swpre.mk46
-rw-r--r--sw/inc/swprtopt.hxx102
-rw-r--r--sw/inc/swrect.hxx364
-rw-r--r--sw/inc/swregion.hxx57
-rw-r--r--sw/inc/swserv.hxx93
-rw-r--r--sw/inc/swstyle.h41
-rw-r--r--sw/inc/swtable.hxx490
-rw-r--r--sw/inc/swtblfmt.hxx99
-rw-r--r--sw/inc/swtypes.hxx338
-rw-r--r--sw/inc/swundo.hxx200
-rw-r--r--sw/inc/swunodef.hxx36
-rw-r--r--sw/inc/swunohelper.hxx81
-rw-r--r--sw/inc/swurl.hxx46
-rw-r--r--sw/inc/swwait.hxx44
-rw-r--r--sw/inc/tabcol.hxx107
-rw-r--r--sw/inc/tblafmt.hxx270
-rw-r--r--sw/inc/tblenum.hxx79
-rw-r--r--sw/inc/tblsel.hxx230
-rw-r--r--sw/inc/tgrditem.hxx120
-rw-r--r--sw/inc/tox.hxx793
-rw-r--r--sw/inc/toxe.hxx125
-rw-r--r--sw/inc/toxinit.hxx37
-rw-r--r--sw/inc/toxwrap.hxx77
-rw-r--r--sw/inc/txatbase.hxx244
-rw-r--r--sw/inc/txatritr.hxx99
-rw-r--r--sw/inc/txtatr.hxx118
-rw-r--r--sw/inc/txtflcnt.hxx68
-rw-r--r--sw/inc/txtfld.hxx81
-rw-r--r--sw/inc/txtftn.hxx81
-rw-r--r--sw/inc/txtinet.hxx81
-rw-r--r--sw/inc/txtrfmrk.hxx61
-rw-r--r--sw/inc/txttxmrk.hxx65
-rw-r--r--sw/inc/undobj.hxx1919
-rw-r--r--sw/inc/unoatxt.hxx306
-rw-r--r--sw/inc/unobaseclass.hxx174
-rw-r--r--sw/inc/unobookmark.hxx260
-rw-r--r--sw/inc/unochart.hxx433
-rw-r--r--sw/inc/unocoll.hxx581
-rw-r--r--sw/inc/unocore.hrc48
-rw-r--r--sw/inc/unocrsr.hxx122
-rw-r--r--sw/inc/unocrsrhelper.hxx218
-rw-r--r--sw/inc/unodraw.hxx353
-rw-r--r--sw/inc/unoevent.hxx118
-rw-r--r--sw/inc/unoevtlstnr.hxx58
-rw-r--r--sw/inc/unofield.hxx330
-rw-r--r--sw/inc/unoflatpara.hxx145
-rw-r--r--sw/inc/unofootnote.hxx229
-rw-r--r--sw/inc/unoframe.hxx379
-rw-r--r--sw/inc/unoidx.hxx375
-rw-r--r--sw/inc/unomailmerge.hxx206
-rw-r--r--sw/inc/unomap.hxx349
-rw-r--r--sw/inc/unomid.h157
-rw-r--r--sw/inc/unomod.hxx210
-rw-r--r--sw/inc/unoparaframeenum.hxx127
-rw-r--r--sw/inc/unoparagraph.hxx365
-rw-r--r--sw/inc/unoport.hxx325
-rw-r--r--sw/inc/unoprnms.hxx841
-rw-r--r--sw/inc/unoredline.hxx156
-rw-r--r--sw/inc/unoredlines.hxx105
-rw-r--r--sw/inc/unorefmark.hxx174
-rw-r--r--sw/inc/unosection.hxx255
-rw-r--r--sw/inc/unosett.hxx326
-rw-r--r--sw/inc/unosrch.hxx136
-rw-r--r--sw/inc/unostyle.hxx467
-rw-r--r--sw/inc/unotbl.hxx625
-rw-r--r--sw/inc/unotext.hxx346
-rw-r--r--sw/inc/unotextbodyhf.hxx210
-rw-r--r--sw/inc/unotextcursor.hxx347
-rw-r--r--sw/inc/unotextmarkup.hxx110
-rw-r--r--sw/inc/unotextrange.hxx338
-rwxr-xr-xsw/inc/unotxdoc.hxx615
-rw-r--r--sw/inc/usrfld.hxx132
-rwxr-xr-xsw/inc/viewopt.hxx615
-rwxr-xr-xsw/inc/viewsh.hxx636
-rw-r--r--sw/inc/viscrs.hxx223
-rw-r--r--sw/inc/wdocsh.hxx63
-rw-r--r--sw/prj/build.lst83
-rw-r--r--sw/prj/d.lst62
-rw-r--r--sw/qa/complex/accessibility/AccessibleRelationSet.java217
-rw-r--r--sw/qa/complex/accessibility/makefile.mk50
-rwxr-xr-xsw/qa/complex/checkColor/CheckChangeColor.java89
-rwxr-xr-xsw/qa/complex/checkColor/makefile.mk50
-rwxr-xr-xsw/qa/complex/indeterminateState/CheckIndeterminateState.java125
-rwxr-xr-xsw/qa/complex/indeterminateState/makefile.mk50
-rw-r--r--sw/qa/complex/writer/CheckBookmarks.java262
-rw-r--r--sw/qa/complex/writer/CheckCrossReferences.java291
-rw-r--r--sw/qa/complex/writer/CheckFlies.java222
-rwxr-xr-xsw/qa/complex/writer/CheckIndexedPropertyValues.java116
-rwxr-xr-xsw/qa/complex/writer/CheckNamedPropertyValues.java122
-rw-r--r--sw/qa/complex/writer/TestDocument.java39
-rwxr-xr-xsw/qa/complex/writer/TextPortionEnumerationTest.java4164
-rwxr-xr-xsw/qa/complex/writer/makefile.mk56
-rw-r--r--sw/qa/complex/writer/testdocuments/CheckCrossReferences.odtbin0 -> 11628 bytes-rw-r--r--sw/qa/complex/writer/testdocuments/CheckFlies.odtbin0 -> 65022 bytes-rwxr-xr-xsw/qa/complex/writer/testdocuments/TESTMETA.odtbin0 -> 8678 bytes-rw-r--r--sw/qa/complex/writer/testdocuments/TESTXMLID.odtbin0 -> 10879 bytes-rw-r--r--sw/qa/core/Test-BigPtrArray.cxx877
-rw-r--r--sw/qa/core/bigpointerarray-new.cxx110
-rw-r--r--sw/qa/core/bigpointerarray-new.hxx159
-rw-r--r--sw/qa/core/export.exp1
-rw-r--r--sw/qa/core/export.map34
-rw-r--r--sw/qa/core/makefile.mk69
-rw-r--r--sw/qa/core/performance-jobfile9
-rw-r--r--sw/qa/unoapi/Test.java51
-rw-r--r--sw/qa/unoapi/knownissues.xcl189
-rw-r--r--sw/qa/unoapi/lastCheck.txt1
-rw-r--r--sw/qa/unoapi/makefile.mk48
-rw-r--r--sw/qa/unoapi/sw.sce94
-rw-r--r--sw/qa/unoapi/testdocuments/MailMerge.sxwbin0 -> 5391 bytes-rw-r--r--sw/qa/unoapi/testdocuments/SwXTextEmbeddedObject.sdwbin0 -> 180736 bytes-rw-r--r--sw/qa/unoapi/testdocuments/SwXTextEmbeddedObject.sxwbin0 -> 24763 bytes-rw-r--r--sw/qa/unoapi/testdocuments/XDocumentInsertable.sxwbin0 -> 4914 bytes-rw-r--r--sw/qa/unoapi/testdocuments/sForm.sxwbin0 -> 5568 bytes-rwxr-xr-xsw/sdi/_annotsh.sdi391
-rw-r--r--sw/sdi/_basesh.sdi525
-rw-r--r--sw/sdi/_beziers.sdi128
-rw-r--r--sw/sdi/_docsh.sdi137
-rw-r--r--sw/sdi/_drwbase.sdi139
-rw-r--r--sw/sdi/_formsh.sdi44
-rw-r--r--sw/sdi/_frmsh.sdi305
-rw-r--r--sw/sdi/_grfsh.sdi216
-rw-r--r--sw/sdi/_listsh.sdi111
-rw-r--r--sw/sdi/_mediash.sdi51
-rw-r--r--sw/sdi/_olesh.sdi35
-rw-r--r--sw/sdi/_tabsh.sdi409
-rw-r--r--sw/sdi/_textsh.sdi1610
-rw-r--r--sw/sdi/_viewsh.sdi774
-rwxr-xr-xsw/sdi/annotsh.sdi380
-rw-r--r--sw/sdi/basesh.sdi64
-rw-r--r--sw/sdi/beziersh.sdi135
-rw-r--r--sw/sdi/docsh.sdi83
-rw-r--r--sw/sdi/drawsh.sdi477
-rw-r--r--sw/sdi/drwbassh.sdi47
-rw-r--r--sw/sdi/drwtxtsh.sdi659
-rw-r--r--sw/sdi/formsh.sdi40
-rw-r--r--sw/sdi/frmsh.sdi56
-rw-r--r--sw/sdi/grfsh.sdi44
-rw-r--r--sw/sdi/listsh.sdi43
-rw-r--r--sw/sdi/makefile.mk106
-rw-r--r--sw/sdi/mediash.sdi42
-rw-r--r--sw/sdi/olesh.sdi41
-rw-r--r--sw/sdi/swinterf.c249
-rw-r--r--sw/sdi/switems.sdi82
-rw-r--r--sw/sdi/swpatch.txt21
-rwxr-xr-xsw/sdi/swriter.sdi10293
-rw-r--r--sw/sdi/swslots.hrc33
-rw-r--r--sw/sdi/swslots.sdi125
-rw-r--r--sw/sdi/tabsh.sdi67
-rw-r--r--sw/sdi/textsh.sdi124
-rw-r--r--sw/sdi/viewsh.sdi326
-rw-r--r--sw/sdi/wbasesh.sdi44
-rw-r--r--sw/sdi/wbeziers.sdi38
-rw-r--r--sw/sdi/wdocsh.sdi60
-rw-r--r--sw/sdi/wdrwbase.sdi49
-rw-r--r--sw/sdi/wformsh.sdi40
-rw-r--r--sw/sdi/wfrmsh.sdi44
-rw-r--r--sw/sdi/wgrfsh.sdi43
-rw-r--r--sw/sdi/wlistsh.sdi41
-rw-r--r--sw/sdi/wolesh.sdi43
-rw-r--r--sw/sdi/wrtapp.sdi90
-rw-r--r--sw/sdi/wtabsh.sdi40
-rw-r--r--sw/sdi/wtextsh.sdi49
-rw-r--r--sw/sdi/wviewsh.sdi203
-rw-r--r--sw/source/core/SwNumberTree/SwNodeNum.cxx534
-rw-r--r--sw/source/core/SwNumberTree/SwNumberTree.cxx1409
-rw-r--r--sw/source/core/SwNumberTree/makefile.mk50
-rw-r--r--sw/source/core/access/acccell.cxx375
-rw-r--r--sw/source/core/access/acccell.hxx137
-rw-r--r--sw/source/core/access/acccontext.cxx1604
-rw-r--r--sw/source/core/access/acccontext.hxx459
-rw-r--r--sw/source/core/access/accdoc.cxx515
-rw-r--r--sw/source/core/access/accdoc.hxx213
-rw-r--r--sw/source/core/access/accembedded.cxx97
-rw-r--r--sw/source/core/access/accembedded.hxx69
-rw-r--r--sw/source/core/access/accfootnote.cxx157
-rw-r--r--sw/source/core/access/accfootnote.hxx88
-rw-r--r--sw/source/core/access/accframe.cxx497
-rw-r--r--sw/source/core/access/accframe.hxx175
-rw-r--r--sw/source/core/access/accframebase.cxx277
-rw-r--r--sw/source/core/access/accframebase.hxx72
-rw-r--r--sw/source/core/access/accfrmobj.cxx428
-rw-r--r--sw/source/core/access/accfrmobj.hxx95
-rw-r--r--sw/source/core/access/accfrmobjmap.cxx168
-rw-r--r--sw/source/core/access/accfrmobjmap.hxx96
-rw-r--r--sw/source/core/access/accfrmobjslist.cxx173
-rw-r--r--sw/source/core/access/accfrmobjslist.hxx145
-rw-r--r--sw/source/core/access/accgraphic.cxx97
-rw-r--r--sw/source/core/access/accgraphic.hxx69
-rw-r--r--sw/source/core/access/accheaderfooter.cxx145
-rw-r--r--sw/source/core/access/accheaderfooter.hxx85
-rw-r--r--sw/source/core/access/acchyperlink.cxx190
-rw-r--r--sw/source/core/access/acchyperlink.hxx91
-rw-r--r--sw/source/core/access/acchypertextdata.cxx55
-rw-r--r--sw/source/core/access/acchypertextdata.hxx51
-rw-r--r--sw/source/core/access/accmap.cxx2888
-rw-r--r--sw/source/core/access/accnotextframe.cxx275
-rw-r--r--sw/source/core/access/accnotextframe.hxx110
-rw-r--r--sw/source/core/access/accpage.cxx200
-rw-r--r--sw/source/core/access/accpage.hxx99
-rw-r--r--sw/source/core/access/accpara.cxx2678
-rw-r--r--sw/source/core/access/accpara.hxx449
-rw-r--r--sw/source/core/access/accportions.cxx753
-rw-r--r--sw/source/core/access/accportions.hxx175
-rw-r--r--sw/source/core/access/accpreview.cxx104
-rw-r--r--sw/source/core/access/accpreview.hxx76
-rw-r--r--sw/source/core/access/accselectionhelper.cxx334
-rw-r--r--sw/source/core/access/accselectionhelper.hxx81
-rw-r--r--sw/source/core/access/acctable.cxx1803
-rw-r--r--sw/source/core/access/acctable.hxx332
-rw-r--r--sw/source/core/access/acctextframe.cxx278
-rw-r--r--sw/source/core/access/acctextframe.hxx115
-rw-r--r--sw/source/core/access/makefile.mk100
-rw-r--r--sw/source/core/access/parachangetrackinginfo.cxx231
-rw-r--r--sw/source/core/access/parachangetrackinginfo.hxx59
-rw-r--r--sw/source/core/access/textmarkuphelper.cxx231
-rw-r--r--sw/source/core/access/textmarkuphelper.hxx87
-rw-r--r--sw/source/core/attr/calbck.cxx634
-rw-r--r--sw/source/core/attr/cellatr.cxx269
-rw-r--r--sw/source/core/attr/fmtfollowtextflow.cxx37
-rw-r--r--sw/source/core/attr/fmtwrapinfluenceonobjpos.cxx166
-rw-r--r--sw/source/core/attr/format.cxx694
-rw-r--r--sw/source/core/attr/hints.cxx308
-rw-r--r--sw/source/core/attr/makefile.mk55
-rw-r--r--sw/source/core/attr/swatrset.cxx404
-rw-r--r--sw/source/core/bastyp/SwSmartTagMgr.cxx95
-rw-r--r--sw/source/core/bastyp/bparr.cxx580
-rw-r--r--sw/source/core/bastyp/breakit.cxx186
-rw-r--r--sw/source/core/bastyp/calc.cxx1824
-rw-r--r--sw/source/core/bastyp/checkit.cxx51
-rw-r--r--sw/source/core/bastyp/index.cxx593
-rw-r--r--sw/source/core/bastyp/init.cxx918
-rw-r--r--sw/source/core/bastyp/makefile.mk79
-rw-r--r--sw/source/core/bastyp/ring.cxx125
-rw-r--r--sw/source/core/bastyp/swcache.cxx656
-rw-r--r--sw/source/core/bastyp/swrect.cxx336
-rw-r--r--sw/source/core/bastyp/swregion.cxx254
-rw-r--r--sw/source/core/bastyp/swtypes.cxx133
-rw-r--r--sw/source/core/bastyp/tabcol.cxx142
-rw-r--r--sw/source/core/crsr/BlockCursor.cxx106
-rw-r--r--sw/source/core/crsr/BlockCursor.hxx36
-rw-r--r--sw/source/core/crsr/IBlockCursor.hxx95
-rw-r--r--sw/source/core/crsr/bookmrk.cxx346
-rw-r--r--sw/source/core/crsr/callnk.cxx221
-rw-r--r--sw/source/core/crsr/callnk.hxx56
-rw-r--r--sw/source/core/crsr/crbm.cxx260
-rw-r--r--sw/source/core/crsr/crossrefbookmark.cxx102
-rw-r--r--sw/source/core/crsr/crsrsh.cxx3495
-rw-r--r--sw/source/core/crsr/crstrvl.cxx2216
-rw-r--r--sw/source/core/crsr/crstrvl1.cxx105
-rw-r--r--sw/source/core/crsr/findattr.cxx1309
-rw-r--r--sw/source/core/crsr/findcoll.cxx119
-rw-r--r--sw/source/core/crsr/findfmt.cxx84
-rw-r--r--sw/source/core/crsr/findtxt.cxx707
-rw-r--r--sw/source/core/crsr/makefile.mk83
-rw-r--r--sw/source/core/crsr/pam.cxx1246
-rw-r--r--sw/source/core/crsr/paminit.cxx131
-rw-r--r--sw/source/core/crsr/swcrsr.cxx2360
-rw-r--r--sw/source/core/crsr/trvlcol.cxx133
-rw-r--r--sw/source/core/crsr/trvlfnfl.cxx359
-rw-r--r--sw/source/core/crsr/trvlreg.cxx291
-rw-r--r--sw/source/core/crsr/trvltbl.cxx931
-rw-r--r--sw/source/core/crsr/unocrsr.cxx280
-rw-r--r--sw/source/core/crsr/viscrs.cxx1006
-rw-r--r--sw/source/core/doc/SwStyleNameMapper.cxx1142
-rw-r--r--sw/source/core/doc/acmplwrd.cxx473
-rw-r--r--sw/source/core/doc/dbgoutsw.cxx1105
-rw-r--r--sw/source/core/doc/doc.cxx2763
-rw-r--r--sw/source/core/doc/docbasic.cxx276
-rw-r--r--sw/source/core/doc/docbm.cxx1747
-rw-r--r--sw/source/core/doc/docchart.cxx277
-rw-r--r--sw/source/core/doc/doccomp.cxx1876
-rw-r--r--sw/source/core/doc/doccorr.cxx461
-rw-r--r--sw/source/core/doc/docdde.cxx418
-rw-r--r--sw/source/core/doc/docdesc.cxx1018
-rw-r--r--sw/source/core/doc/docdraw.cxx1074
-rw-r--r--sw/source/core/doc/docedt.cxx2821
-rw-r--r--sw/source/core/doc/docfld.cxx2821
-rw-r--r--sw/source/core/doc/docfly.cxx1068
-rw-r--r--sw/source/core/doc/docfmt.cxx2685
-rw-r--r--sw/source/core/doc/docftn.cxx500
-rw-r--r--sw/source/core/doc/docglbl.cxx855
-rw-r--r--sw/source/core/doc/docglos.cxx203
-rw-r--r--sw/source/core/doc/doclay.cxx2294
-rw-r--r--sw/source/core/doc/docnew.cxx1235
-rw-r--r--sw/source/core/doc/docnum.cxx2969
-rw-r--r--sw/source/core/doc/docredln.cxx3864
-rw-r--r--sw/source/core/doc/docruby.cxx364
-rw-r--r--sw/source/core/doc/docsort.cxx1028
-rw-r--r--sw/source/core/doc/docstat.cxx67
-rw-r--r--sw/source/core/doc/doctxm.cxx2466
-rw-r--r--sw/source/core/doc/docxforms.cxx123
-rw-r--r--sw/source/core/doc/extinput.cxx294
-rw-r--r--sw/source/core/doc/fmtcol.cxx717
-rw-r--r--sw/source/core/doc/ftnidx.cxx398
-rw-r--r--sw/source/core/doc/gctable.cxx451
-rw-r--r--sw/source/core/doc/htmltbl.cxx1903
-rw-r--r--sw/source/core/doc/lineinfo.cxx154
-rw-r--r--sw/source/core/doc/list.cxx303
-rw-r--r--sw/source/core/doc/makefile.mk92
-rw-r--r--sw/source/core/doc/notxtfrm.cxx1100
-rw-r--r--sw/source/core/doc/number.cxx1686
-rw-r--r--sw/source/core/doc/poolfmt.cxx2594
-rw-r--r--sw/source/core/doc/sortopt.cxx103
-rw-r--r--sw/source/core/doc/swserv.cxx371
-rw-r--r--sw/source/core/doc/swstylemanager.cxx173
-rw-r--r--sw/source/core/doc/swstylemanager.hxx38
-rw-r--r--sw/source/core/doc/tblafmt.cxx1106
-rw-r--r--sw/source/core/doc/tblcpy.cxx1100
-rw-r--r--sw/source/core/doc/tblrwcl.cxx4769
-rw-r--r--sw/source/core/doc/visiturl.cxx139
-rw-r--r--sw/source/core/docnode/cancellablejob.cxx40
-rw-r--r--sw/source/core/docnode/cancellablejob.hxx53
-rw-r--r--sw/source/core/docnode/finalthreadmanager.cxx549
-rw-r--r--sw/source/core/docnode/makefile.mk82
-rw-r--r--sw/source/core/docnode/ndcopy.cxx1624
-rw-r--r--sw/source/core/docnode/ndindex.cxx168
-rw-r--r--sw/source/core/docnode/ndnotxt.cxx307
-rw-r--r--sw/source/core/docnode/ndnum.cxx225
-rw-r--r--sw/source/core/docnode/ndsect.cxx1522
-rw-r--r--sw/source/core/docnode/ndtbl.cxx4696
-rw-r--r--sw/source/core/docnode/ndtbl1.cxx1605
-rw-r--r--sw/source/core/docnode/node.cxx2126
-rw-r--r--sw/source/core/docnode/node2lay.cxx405
-rw-r--r--sw/source/core/docnode/nodes.cxx2699
-rw-r--r--sw/source/core/docnode/observablethread.cxx97
-rw-r--r--sw/source/core/docnode/pausethreadstarting.cxx55
-rw-r--r--sw/source/core/docnode/retrievedinputstreamdata.cxx167
-rw-r--r--sw/source/core/docnode/retrieveinputstream.cxx86
-rw-r--r--sw/source/core/docnode/retrieveinputstreamconsumer.cxx72
-rw-r--r--sw/source/core/docnode/section.cxx1862
-rw-r--r--sw/source/core/docnode/swbaslnk.cxx536
-rw-r--r--sw/source/core/docnode/swthreadjoiner.cxx61
-rw-r--r--sw/source/core/docnode/swthreadmanager.cxx87
-rw-r--r--sw/source/core/docnode/threadlistener.cxx57
-rw-r--r--sw/source/core/docnode/threadmanager.cxx258
-rw-r--r--sw/source/core/draw/dcontact.cxx2844
-rw-r--r--sw/source/core/draw/dflyobj.cxx962
-rw-r--r--sw/source/core/draw/dobjfac.cxx57
-rw-r--r--sw/source/core/draw/dpage.cxx265
-rw-r--r--sw/source/core/draw/drawdoc.cxx240
-rw-r--r--sw/source/core/draw/dview.cxx1115
-rw-r--r--sw/source/core/draw/makefile.mk60
-rw-r--r--sw/source/core/edit/acorrect.cxx526
-rw-r--r--sw/source/core/edit/autofmt.cxx2840
-rw-r--r--sw/source/core/edit/edatmisc.cxx189
-rw-r--r--sw/source/core/edit/edattr.cxx646
-rw-r--r--sw/source/core/edit/eddel.cxx354
-rw-r--r--sw/source/core/edit/edfcol.cxx161
-rw-r--r--sw/source/core/edit/edfld.cxx596
-rw-r--r--sw/source/core/edit/edfldexp.cxx101
-rw-r--r--sw/source/core/edit/edfmt.cxx197
-rw-r--r--sw/source/core/edit/edglbldc.cxx404
-rw-r--r--sw/source/core/edit/edglss.cxx373
-rw-r--r--sw/source/core/edit/editsh.cxx1222
-rw-r--r--sw/source/core/edit/edlingu.cxx1979
-rw-r--r--sw/source/core/edit/ednumber.cxx835
-rw-r--r--sw/source/core/edit/edredln.cxx150
-rw-r--r--sw/source/core/edit/edsect.cxx456
-rw-r--r--sw/source/core/edit/edtab.cxx492
-rw-r--r--sw/source/core/edit/edtox.cxx502
-rw-r--r--sw/source/core/edit/edundo.cxx280
-rw-r--r--sw/source/core/edit/edws.cxx385
-rw-r--r--sw/source/core/edit/makefile.mk71
-rw-r--r--sw/source/core/except/dbgloop.cxx168
-rw-r--r--sw/source/core/except/errhdl.cxx132
-rw-r--r--sw/source/core/except/makefile.mk60
-rw-r--r--sw/source/core/fields/authfld.cxx831
-rw-r--r--sw/source/core/fields/cellfml.cxx1232
-rw-r--r--sw/source/core/fields/chpfld.cxx309
-rw-r--r--sw/source/core/fields/dbfld.cxx1076
-rw-r--r--sw/source/core/fields/ddefld.cxx450
-rw-r--r--sw/source/core/fields/ddetbl.cxx187
-rw-r--r--sw/source/core/fields/docufld.cxx2793
-rw-r--r--sw/source/core/fields/expfld.cxx1330
-rw-r--r--sw/source/core/fields/fldbas.cxx814
-rw-r--r--sw/source/core/fields/flddat.cxx321
-rw-r--r--sw/source/core/fields/flddropdown.cxx284
-rw-r--r--sw/source/core/fields/fldlst.cxx233
-rw-r--r--sw/source/core/fields/macrofld.cxx266
-rw-r--r--sw/source/core/fields/makefile.mk94
-rw-r--r--sw/source/core/fields/postithelper.cxx223
-rw-r--r--sw/source/core/fields/reffld.cxx1099
-rw-r--r--sw/source/core/fields/scrptfld.cxx153
-rw-r--r--sw/source/core/fields/tblcalc.cxx264
-rwxr-xr-xsw/source/core/fields/textapi.cxx191
-rw-r--r--sw/source/core/fields/usrfld.cxx378
-rw-r--r--sw/source/core/frmedt/fecopy.cxx1551
-rw-r--r--sw/source/core/frmedt/fedesc.cxx291
-rw-r--r--sw/source/core/frmedt/fefly1.cxx2156
-rw-r--r--sw/source/core/frmedt/feflyole.cxx150
-rw-r--r--sw/source/core/frmedt/feshview.cxx3237
-rw-r--r--sw/source/core/frmedt/fetab.cxx2593
-rw-r--r--sw/source/core/frmedt/fews.cxx1296
-rw-r--r--sw/source/core/frmedt/makefile.mk76
-rw-r--r--sw/source/core/frmedt/tblsel.cxx2728
-rw-r--r--sw/source/core/graphic/grfatr.cxx366
-rw-r--r--sw/source/core/graphic/makefile.mk53
-rw-r--r--sw/source/core/graphic/ndgrf.cxx1221
-rw-r--r--sw/source/core/inc/GetMetricVal.hxx54
-rw-r--r--sw/source/core/inc/MarkManager.hxx97
-rw-r--r--sw/source/core/inc/SwGrammarMarkUp.hxx74
-rw-r--r--sw/source/core/inc/SwPortionHandler.hxx101
-rw-r--r--sw/source/core/inc/SwXMLBlockExport.hxx73
-rw-r--r--sw/source/core/inc/SwXMLBlockImport.hxx89
-rw-r--r--sw/source/core/inc/SwXMLBlockListContext.hxx126
-rw-r--r--sw/source/core/inc/SwXMLTextBlocks.hxx111
-rw-r--r--sw/source/core/inc/SwXTextDefaults.hxx84
-rw-r--r--sw/source/core/inc/acorrect.hxx122
-rw-r--r--sw/source/core/inc/anchoredobjectposition.hxx488
-rw-r--r--sw/source/core/inc/ascharanchoredobjectposition.hxx171
-rw-r--r--sw/source/core/inc/blink.hxx89
-rw-r--r--sw/source/core/inc/bodyfrm.hxx49
-rw-r--r--sw/source/core/inc/bookmrk.hxx261
-rw-r--r--sw/source/core/inc/cellfrm.hxx71
-rw-r--r--sw/source/core/inc/cntfrm.hxx147
-rw-r--r--sw/source/core/inc/colfrm.hxx42
-rw-r--r--sw/source/core/inc/crossrefbookmark.hxx99
-rw-r--r--sw/source/core/inc/dbg_lay.hxx120
-rw-r--r--sw/source/core/inc/dbgloop.hxx77
-rw-r--r--sw/source/core/inc/dflyobj.hxx140
-rw-r--r--sw/source/core/inc/docfld.hxx193
-rw-r--r--sw/source/core/inc/docsort.hxx176
-rw-r--r--sw/source/core/inc/doctxm.hxx147
-rw-r--r--sw/source/core/inc/drawdev.hxx140
-rw-r--r--sw/source/core/inc/drawfont.hxx594
-rw-r--r--sw/source/core/inc/dview.hxx134
-rw-r--r--sw/source/core/inc/environmentofanchoredobject.hxx117
-rw-r--r--sw/source/core/inc/finalthreadmanager.hxx105
-rw-r--r--sw/source/core/inc/flowfrm.hxx273
-rw-r--r--sw/source/core/inc/flyfrm.hxx287
-rw-r--r--sw/source/core/inc/flyfrms.hxx259
-rw-r--r--sw/source/core/inc/fntcache.hxx160
-rw-r--r--sw/source/core/inc/frame.hxx1257
-rw-r--r--sw/source/core/inc/frminf.hxx85
-rw-r--r--sw/source/core/inc/frmtool.hxx582
-rw-r--r--sw/source/core/inc/ftnboss.hxx137
-rw-r--r--sw/source/core/inc/ftnfrm.hxx150
-rw-r--r--sw/source/core/inc/hffrm.hxx66
-rw-r--r--sw/source/core/inc/ifinishedthreadlistener.hxx55
-rw-r--r--sw/source/core/inc/ithreadlistenerowner.hxx58
-rw-r--r--sw/source/core/inc/layact.hxx239
-rw-r--r--sw/source/core/inc/laycache.hxx77
-rw-r--r--sw/source/core/inc/layfrm.hxx209
-rw-r--r--sw/source/core/inc/layouter.hxx183
-rw-r--r--sw/source/core/inc/makefile.mk26
-rw-r--r--sw/source/core/inc/movedfwdfrmsbyobjpos.hxx70
-rw-r--r--sw/source/core/inc/mvsave.hxx231
-rw-r--r--sw/source/core/inc/node2lay.hxx81
-rw-r--r--sw/source/core/inc/noteurl.hxx76
-rw-r--r--sw/source/core/inc/notxtfrm.hxx78
-rw-r--r--sw/source/core/inc/objectformatter.hxx238
-rw-r--r--sw/source/core/inc/observablethread.hxx105
-rw-r--r--sw/source/core/inc/pagefrm.hxx542
-rw-r--r--sw/source/core/inc/pamtyp.hxx102
-rw-r--r--sw/source/core/inc/prevwpage.hxx36
-rw-r--r--sw/source/core/inc/ptqueue.hxx62
-rw-r--r--sw/source/core/inc/retrievedinputstreamdata.hxx111
-rw-r--r--sw/source/core/inc/retrieveinputstream.hxx68
-rw-r--r--sw/source/core/inc/retrieveinputstreamconsumer.hxx74
-rw-r--r--sw/source/core/inc/rootfrm.hxx369
-rw-r--r--sw/source/core/inc/rowfrm.hxx111
-rw-r--r--sw/source/core/inc/scriptinfo.hxx416
-rw-r--r--sw/source/core/inc/sectfrm.hxx148
-rw-r--r--sw/source/core/inc/setmapvirtdev.hxx71
-rw-r--r--sw/source/core/inc/sortedobjs.hxx108
-rw-r--r--sw/source/core/inc/sortedobjsimpl.hxx61
-rw-r--r--sw/source/core/inc/swblocks.hxx242
-rw-r--r--sw/source/core/inc/swcache.hxx302
-rw-r--r--sw/source/core/inc/swfntcch.hxx99
-rw-r--r--sw/source/core/inc/swfont.hxx899
-rw-r--r--sw/source/core/inc/swselectionlist.hxx97
-rw-r--r--sw/source/core/inc/swthreadjoiner.hxx51
-rw-r--r--sw/source/core/inc/swthreadmanager.hxx89
-rw-r--r--sw/source/core/inc/tabfrm.hxx233
-rw-r--r--sw/source/core/inc/tblrwcl.hxx228
-rwxr-xr-xsw/source/core/inc/textapi.hxx70
-rw-r--r--sw/source/core/inc/threadlistener.hxx62
-rw-r--r--sw/source/core/inc/threadmanager.hxx172
-rw-r--r--sw/source/core/inc/tocntntanchoredobjectposition.hxx103
-rw-r--r--sw/source/core/inc/tolayoutanchoredobjectposition.hxx66
-rw-r--r--sw/source/core/inc/toxhlp.hxx76
-rw-r--r--sw/source/core/inc/txmsrt.hxx294
-rw-r--r--sw/source/core/inc/txtfrm.hxx830
-rw-r--r--sw/source/core/inc/txttypes.hxx103
-rw-r--r--sw/source/core/inc/undoflystrattr.hxx57
-rw-r--r--sw/source/core/inc/unofldmid.h71
-rwxr-xr-xsw/source/core/inc/unometa.hxx368
-rw-r--r--sw/source/core/inc/viewimp.hxx364
-rw-r--r--sw/source/core/inc/visiturl.hxx49
-rw-r--r--sw/source/core/inc/wrong.hxx166
-rw-r--r--sw/source/core/layout/anchoreddrawobject.cxx906
-rw-r--r--sw/source/core/layout/anchoredobject.cxx1064
-rw-r--r--sw/source/core/layout/atrfrm.cxx3274
-rw-r--r--sw/source/core/layout/calcmove.cxx2104
-rw-r--r--sw/source/core/layout/colfrm.cxx483
-rw-r--r--sw/source/core/layout/dbg_lay.cxx866
-rw-r--r--sw/source/core/layout/findfrm.cxx1829
-rw-r--r--sw/source/core/layout/flowfrm.cxx2736
-rw-r--r--sw/source/core/layout/fly.cxx2853
-rw-r--r--sw/source/core/layout/flycnt.cxx1563
-rw-r--r--sw/source/core/layout/flyincnt.cxx360
-rw-r--r--sw/source/core/layout/flylay.cxx1392
-rw-r--r--sw/source/core/layout/flypos.cxx112
-rw-r--r--sw/source/core/layout/frmtool.cxx3740
-rw-r--r--sw/source/core/layout/ftnfrm.cxx3367
-rw-r--r--sw/source/core/layout/hffrm.cxx795
-rw-r--r--sw/source/core/layout/layact.cxx2609
-rw-r--r--sw/source/core/layout/laycache.cxx1391
-rw-r--r--sw/source/core/layout/layhelp.hxx232
-rw-r--r--sw/source/core/layout/layouter.cxx571
-rw-r--r--sw/source/core/layout/makefile.mk113
-rw-r--r--sw/source/core/layout/movedfwdfrmsbyobjpos.cxx109
-rw-r--r--sw/source/core/layout/newfrm.cxx589
-rw-r--r--sw/source/core/layout/objectformatter.cxx578
-rw-r--r--sw/source/core/layout/objectformatterlayfrm.cxx215
-rw-r--r--sw/source/core/layout/objectformatterlayfrm.hxx81
-rw-r--r--sw/source/core/layout/objectformattertxtfrm.cxx870
-rw-r--r--sw/source/core/layout/objectformattertxtfrm.hxx215
-rw-r--r--sw/source/core/layout/objstmpconsiderwrapinfl.cxx73
-rw-r--r--sw/source/core/layout/objstmpconsiderwrapinfl.hxx47
-rw-r--r--sw/source/core/layout/pagechg.cxx2496
-rw-r--r--sw/source/core/layout/pagedesc.cxx512
-rw-r--r--sw/source/core/layout/paintfrm.cxx6742
-rw-r--r--sw/source/core/layout/sectfrm.cxx2800
-rw-r--r--sw/source/core/layout/softpagebreak.cxx156
-rw-r--r--sw/source/core/layout/sortedobjs.cxx76
-rw-r--r--sw/source/core/layout/sortedobjsimpl.cxx313
-rw-r--r--sw/source/core/layout/ssfrm.cxx750
-rw-r--r--sw/source/core/layout/swselectionlist.cxx94
-rw-r--r--sw/source/core/layout/tabfrm.cxx5942
-rw-r--r--sw/source/core/layout/trvlfrm.cxx2659
-rw-r--r--sw/source/core/layout/unusedf.cxx93
-rw-r--r--sw/source/core/layout/virtoutp.cxx256
-rw-r--r--sw/source/core/layout/virtoutp.hxx74
-rw-r--r--sw/source/core/layout/wsfrm.cxx4000
-rw-r--r--sw/source/core/makefile.mk110
-rw-r--r--sw/source/core/objectpositioning/anchoredobjectposition.cxx1128
-rw-r--r--sw/source/core/objectpositioning/ascharanchoredobjectposition.cxx457
-rw-r--r--sw/source/core/objectpositioning/environmentofanchoredobject.cxx121
-rw-r--r--sw/source/core/objectpositioning/makefile.mk59
-rw-r--r--sw/source/core/objectpositioning/tocntntanchoredobjectposition.cxx1073
-rw-r--r--sw/source/core/objectpositioning/tolayoutanchoredobjectposition.cxx245
-rw-r--r--sw/source/core/ole/makefile.mk55
-rw-r--r--sw/source/core/ole/ndole.cxx1018
-rw-r--r--sw/source/core/para/makefile.mk54
-rw-r--r--sw/source/core/para/paratr.cxx295
-rw-r--r--sw/source/core/sw3io/makefile.mk49
-rw-r--r--sw/source/core/sw3io/sw3convert.cxx433
-rw-r--r--sw/source/core/sw3io/swacorr.cxx106
-rw-r--r--sw/source/core/swg/SwXMLBlockExport.cxx142
-rw-r--r--sw/source/core/swg/SwXMLBlockImport.cxx118
-rw-r--r--sw/source/core/swg/SwXMLBlockListContext.cxx250
-rw-r--r--sw/source/core/swg/SwXMLSectionList.cxx154
-rw-r--r--sw/source/core/swg/SwXMLTextBlocks.cxx643
-rw-r--r--sw/source/core/swg/SwXMLTextBlocks1.cxx741
-rw-r--r--sw/source/core/swg/makefile.mk62
-rw-r--r--sw/source/core/swg/swblocks.cxx818
-rw-r--r--sw/source/core/table/makefile.mk48
-rw-r--r--sw/source/core/table/swnewtable.cxx2323
-rw-r--r--sw/source/core/table/swtable.cxx2885
-rw-r--r--sw/source/core/text/EnhancedPDFExportHelper.cxx2217
-rw-r--r--sw/source/core/text/SwGrammarMarkUp.cxx166
-rw-r--r--sw/source/core/text/atrhndl.hxx179
-rw-r--r--sw/source/core/text/atrstck.cxx956
-rw-r--r--sw/source/core/text/blink.cxx198
-rw-r--r--sw/source/core/text/frmcrsr.cxx1744
-rw-r--r--sw/source/core/text/frmform.cxx2173
-rw-r--r--sw/source/core/text/frminf.cxx377
-rw-r--r--sw/source/core/text/frmpaint.cxx749
-rw-r--r--sw/source/core/text/guess.cxx554
-rw-r--r--sw/source/core/text/guess.hxx73
-rw-r--r--sw/source/core/text/inftxt.cxx1975
-rw-r--r--sw/source/core/text/inftxt.hxx905
-rw-r--r--sw/source/core/text/itradj.cxx919
-rw-r--r--sw/source/core/text/itratr.cxx1086
-rw-r--r--sw/source/core/text/itratr.hxx131
-rw-r--r--sw/source/core/text/itrcrsr.cxx1886
-rw-r--r--sw/source/core/text/itrform2.cxx2133
-rw-r--r--sw/source/core/text/itrform2.hxx214
-rw-r--r--sw/source/core/text/itrpaint.cxx718
-rw-r--r--sw/source/core/text/itrpaint.hxx69
-rw-r--r--sw/source/core/text/itrtxt.cxx523
-rw-r--r--sw/source/core/text/itrtxt.hxx340
-rw-r--r--sw/source/core/text/makefile.mk119
-rw-r--r--sw/source/core/text/noteurl.cxx87
-rw-r--r--sw/source/core/text/pordrop.hxx119
-rw-r--r--sw/source/core/text/porexp.cxx312
-rw-r--r--sw/source/core/text/porexp.hxx108
-rw-r--r--sw/source/core/text/porfld.cxx1395
-rw-r--r--sw/source/core/text/porfld.hxx274
-rw-r--r--sw/source/core/text/porfly.cxx454
-rw-r--r--sw/source/core/text/porfly.hxx108
-rw-r--r--sw/source/core/text/porftn.hxx130
-rw-r--r--sw/source/core/text/porglue.cxx318
-rw-r--r--sw/source/core/text/porglue.hxx134
-rw-r--r--sw/source/core/text/porhyph.hxx119
-rw-r--r--sw/source/core/text/porlay.cxx2460
-rw-r--r--sw/source/core/text/porlay.hxx427
-rw-r--r--sw/source/core/text/porlin.cxx426
-rw-r--r--sw/source/core/text/porlin.hxx251
-rw-r--r--sw/source/core/text/pormulti.cxx2415
-rw-r--r--sw/source/core/text/pormulti.hxx268
-rw-r--r--sw/source/core/text/porref.cxx115
-rw-r--r--sw/source/core/text/porref.hxx73
-rw-r--r--sw/source/core/text/porrst.cxx579
-rw-r--r--sw/source/core/text/porrst.hxx187
-rw-r--r--sw/source/core/text/portab.hxx157
-rw-r--r--sw/source/core/text/portox.cxx115
-rw-r--r--sw/source/core/text/portox.hxx75
-rw-r--r--sw/source/core/text/portxt.cxx881
-rw-r--r--sw/source/core/text/portxt.hxx117
-rw-r--r--sw/source/core/text/possiz.hxx84
-rw-r--r--sw/source/core/text/redlnitr.cxx505
-rw-r--r--sw/source/core/text/redlnitr.hxx123
-rw-r--r--sw/source/core/text/txtcache.cxx241
-rw-r--r--sw/source/core/text/txtcache.hxx76
-rw-r--r--sw/source/core/text/txtcfg.hxx54
-rw-r--r--sw/source/core/text/txtdrop.cxx1105
-rw-r--r--sw/source/core/text/txtfld.cxx549
-rw-r--r--sw/source/core/text/txtfly.cxx2430
-rw-r--r--sw/source/core/text/txtfly.hxx259
-rw-r--r--sw/source/core/text/txtfrm.cxx2753
-rw-r--r--sw/source/core/text/txtftn.cxx1699
-rw-r--r--sw/source/core/text/txthyph.cxx695
-rw-r--r--sw/source/core/text/txtinit.cxx101
-rw-r--r--sw/source/core/text/txtio.cxx949
-rw-r--r--sw/source/core/text/txtpaint.cxx137
-rw-r--r--sw/source/core/text/txtpaint.hxx191
-rw-r--r--sw/source/core/text/txttab.cxx667
-rw-r--r--sw/source/core/text/widorp.cxx566
-rw-r--r--sw/source/core/text/widorp.hxx95
-rw-r--r--sw/source/core/text/wrong.cxx644
-rw-r--r--sw/source/core/tox/makefile.mk57
-rw-r--r--sw/source/core/tox/tox.cxx954
-rw-r--r--sw/source/core/tox/toxhlp.cxx193
-rw-r--r--sw/source/core/tox/txmsrt.cxx952
-rw-r--r--sw/source/core/txtnode/SwGrammarContact.cxx221
-rw-r--r--sw/source/core/txtnode/atrfld.cxx401
-rw-r--r--sw/source/core/txtnode/atrflyin.cxx290
-rw-r--r--sw/source/core/txtnode/atrftn.cxx543
-rw-r--r--sw/source/core/txtnode/atrref.cxx103
-rw-r--r--sw/source/core/txtnode/atrtox.cxx96
-rw-r--r--sw/source/core/txtnode/chrfmt.cxx38
-rw-r--r--sw/source/core/txtnode/fmtatr2.cxx908
-rw-r--r--sw/source/core/txtnode/fntcache.cxx2740
-rw-r--r--sw/source/core/txtnode/fntcap.cxx855
-rw-r--r--sw/source/core/txtnode/makefile.mk86
-rw-r--r--sw/source/core/txtnode/modeltoviewhelper.cxx120
-rw-r--r--sw/source/core/txtnode/ndhints.cxx497
-rw-r--r--sw/source/core/txtnode/ndtxt.cxx5092
-rw-r--r--sw/source/core/txtnode/swfntcch.cxx94
-rw-r--r--sw/source/core/txtnode/swfont.cxx1246
-rw-r--r--sw/source/core/txtnode/thints.cxx3065
-rw-r--r--sw/source/core/txtnode/txatbase.cxx84
-rw-r--r--sw/source/core/txtnode/txatritr.cxx246
-rw-r--r--sw/source/core/txtnode/txtatr2.cxx338
-rw-r--r--sw/source/core/txtnode/txtedt.cxx2170
-rw-r--r--sw/source/core/undo/SwRewriter.cxx78
-rw-r--r--sw/source/core/undo/SwUndoField.cxx156
-rw-r--r--sw/source/core/undo/SwUndoFmt.cxx510
-rw-r--r--sw/source/core/undo/SwUndoPageDesc.cxx474
-rw-r--r--sw/source/core/undo/SwUndoTOXChange.cxx71
-rw-r--r--sw/source/core/undo/docundo.cxx1027
-rw-r--r--sw/source/core/undo/makefile.mk86
-rw-r--r--sw/source/core/undo/rolbck.cxx1524
-rw-r--r--sw/source/core/undo/unattr.cxx1318
-rw-r--r--sw/source/core/undo/unbkmk.cxx109
-rw-r--r--sw/source/core/undo/undel.cxx1010
-rw-r--r--sw/source/core/undo/undo.hrc185
-rw-r--r--sw/source/core/undo/undo.src657
-rw-r--r--sw/source/core/undo/undobj.cxx1404
-rw-r--r--sw/source/core/undo/undobj1.cxx704
-rw-r--r--sw/source/core/undo/undoflystrattr.cxx104
-rw-r--r--sw/source/core/undo/undraw.cxx642
-rw-r--r--sw/source/core/undo/unfmco.cxx131
-rw-r--r--sw/source/core/undo/unins.cxx1100
-rw-r--r--sw/source/core/undo/unmove.cxx356
-rw-r--r--sw/source/core/undo/unnum.cxx466
-rw-r--r--sw/source/core/undo/unoutl.cxx70
-rw-r--r--sw/source/core/undo/unovwr.cxx512
-rw-r--r--sw/source/core/undo/unredln.cxx543
-rw-r--r--sw/source/core/undo/unsect.cxx499
-rw-r--r--sw/source/core/undo/unsort.cxx302
-rw-r--r--sw/source/core/undo/unspnd.cxx216
-rw-r--r--sw/source/core/undo/untbl.cxx3285
-rw-r--r--sw/source/core/undo/untblk.cxx367
-rw-r--r--sw/source/core/unocore/SwXTextDefaults.cxx292
-rw-r--r--sw/source/core/unocore/TextCursorHelper.cxx61
-rw-r--r--sw/source/core/unocore/XMLRangeHelper.cxx412
-rw-r--r--sw/source/core/unocore/XMLRangeHelper.hxx78
-rw-r--r--sw/source/core/unocore/makefile.mk124
-rw-r--r--sw/source/core/unocore/swunohelper.cxx291
-rw-r--r--sw/source/core/unocore/unobkm.cxx651
-rw-r--r--sw/source/core/unocore/unochart.cxx3092
-rw-r--r--sw/source/core/unocore/unocoll.cxx1930
-rw-r--r--sw/source/core/unocore/unocore.src64
-rw-r--r--sw/source/core/unocore/unocrsrhelper.cxx1150
-rw-r--r--sw/source/core/unocore/unodraw.cxx3105
-rw-r--r--sw/source/core/unocore/unoevent.cxx333
-rw-r--r--sw/source/core/unocore/unoevtlstnr.cxx118
-rw-r--r--sw/source/core/unocore/unofield.cxx3007
-rw-r--r--sw/source/core/unocore/unoflatpara.cxx531
-rw-r--r--sw/source/core/unocore/unoframe.cxx3433
-rw-r--r--sw/source/core/unocore/unoftn.cxx732
-rw-r--r--sw/source/core/unocore/unoidx.cxx3451
-rw-r--r--sw/source/core/unocore/unomap.cxx3123
-rw-r--r--sw/source/core/unocore/unoobj.cxx3209
-rw-r--r--sw/source/core/unocore/unoobj2.cxx2097
-rw-r--r--sw/source/core/unocore/unoparagraph.cxx1462
-rw-r--r--sw/source/core/unocore/unoport.cxx1072
-rw-r--r--sw/source/core/unocore/unoportenum.cxx1226
-rw-r--r--sw/source/core/unocore/unoprnms.cxx793
-rw-r--r--sw/source/core/unocore/unoredline.cxx794
-rw-r--r--sw/source/core/unocore/unoredlines.cxx235
-rw-r--r--sw/source/core/unocore/unorefmk.cxx1708
-rw-r--r--sw/source/core/unocore/unosect.cxx1916
-rw-r--r--sw/source/core/unocore/unosett.cxx2828
-rw-r--r--sw/source/core/unocore/unosrch.cxx762
-rw-r--r--sw/source/core/unocore/unostyle.cxx4536
-rw-r--r--sw/source/core/unocore/unotbl.cxx5466
-rw-r--r--sw/source/core/unocore/unotext.cxx2967
-rw-r--r--sw/source/core/unocore/unotextmarkup.cxx486
-rwxr-xr-xsw/source/core/view/makefile.mk61
-rw-r--r--sw/source/core/view/pagepreviewlayout.cxx1554
-rw-r--r--sw/source/core/view/printdata.cxx552
-rw-r--r--sw/source/core/view/vdraw.cxx378
-rw-r--r--sw/source/core/view/viewimp.cxx620
-rw-r--r--sw/source/core/view/viewpg.cxx262
-rwxr-xr-xsw/source/core/view/viewsh.cxx2744
-rw-r--r--sw/source/core/view/vnew.cxx407
-rwxr-xr-xsw/source/core/view/vprint.cxx859
-rw-r--r--sw/source/filter/ascii/ascatr.cxx227
-rw-r--r--sw/source/filter/ascii/makefile.mk56
-rw-r--r--sw/source/filter/ascii/parasc.cxx535
-rw-r--r--sw/source/filter/ascii/wrtasc.cxx225
-rw-r--r--sw/source/filter/ascii/wrtasc.hxx52
-rw-r--r--sw/source/filter/basflt/docfact.cxx85
-rw-r--r--sw/source/filter/basflt/fltini.cxx1037
-rw-r--r--sw/source/filter/basflt/iodetect.cxx592
-rw-r--r--sw/source/filter/basflt/makefile.mk58
-rw-r--r--sw/source/filter/basflt/shellio.cxx1010
-rw-r--r--sw/source/filter/html/SwAppletImpl.cxx208
-rw-r--r--sw/source/filter/html/css1atr.cxx3859
-rw-r--r--sw/source/filter/html/css1kywd.cxx281
-rw-r--r--sw/source/filter/html/css1kywd.hxx291
-rw-r--r--sw/source/filter/html/htmlatr.cxx3494
-rw-r--r--sw/source/filter/html/htmlbas.cxx369
-rw-r--r--sw/source/filter/html/htmlcss1.cxx2477
-rw-r--r--sw/source/filter/html/htmlctxt.cxx752
-rw-r--r--sw/source/filter/html/htmldraw.cxx859
-rw-r--r--sw/source/filter/html/htmlfld.cxx670
-rw-r--r--sw/source/filter/html/htmlfld.hxx92
-rw-r--r--sw/source/filter/html/htmlfldw.cxx539
-rw-r--r--sw/source/filter/html/htmlfly.cxx1929
-rw-r--r--sw/source/filter/html/htmlfly.hxx137
-rw-r--r--sw/source/filter/html/htmlflyt.cxx516
-rw-r--r--sw/source/filter/html/htmlform.cxx2661
-rw-r--r--sw/source/filter/html/htmlform.hxx52
-rw-r--r--sw/source/filter/html/htmlforw.cxx1447
-rw-r--r--sw/source/filter/html/htmlftn.cxx621
-rw-r--r--sw/source/filter/html/htmlgrin.cxx1448
-rw-r--r--sw/source/filter/html/htmlnum.cxx987
-rw-r--r--sw/source/filter/html/htmlnum.hxx131
-rw-r--r--sw/source/filter/html/htmlplug.cxx1401
-rw-r--r--sw/source/filter/html/htmlsect.cxx862
-rw-r--r--sw/source/filter/html/htmltab.cxx5600
-rw-r--r--sw/source/filter/html/htmltabw.cxx1265
-rw-r--r--sw/source/filter/html/htmlvsh.hxx55
-rw-r--r--sw/source/filter/html/makefile.mk83
-rw-r--r--sw/source/filter/html/parcss1.cxx1426
-rw-r--r--sw/source/filter/html/parcss1.hxx307
-rw-r--r--sw/source/filter/html/svxcss1.cxx3311
-rw-r--r--sw/source/filter/html/svxcss1.hxx435
-rw-r--r--sw/source/filter/html/swcss1.hxx227
-rw-r--r--sw/source/filter/html/swhtml.cxx5521
-rw-r--r--sw/source/filter/html/swhtml.hxx1040
-rw-r--r--sw/source/filter/html/wrthtml.cxx1439
-rw-r--r--sw/source/filter/html/wrthtml.hxx603
-rw-r--r--sw/source/filter/inc/fltbase.hxx127
-rw-r--r--sw/source/filter/inc/fltglbls.hxx124
-rw-r--r--sw/source/filter/inc/fltini.hxx108
-rw-r--r--sw/source/filter/inc/fltshell.hxx629
-rw-r--r--sw/source/filter/inc/makefile.mk26
-rw-r--r--sw/source/filter/inc/msfilter.hxx528
-rw-r--r--sw/source/filter/inc/rtf.hxx132
-rw-r--r--sw/source/filter/inc/wrt_fn.hxx66
-rw-r--r--sw/source/filter/inc/wrtswtbl.hxx334
-rw-r--r--sw/source/filter/inc/wwstyles.hxx221
-rw-r--r--sw/source/filter/makefile.mk67
-rw-r--r--sw/source/filter/rtf/makefile.mk65
-rw-r--r--sw/source/filter/rtf/rtfatr.cxx4356
-rw-r--r--sw/source/filter/rtf/rtffld.cxx1231
-rw-r--r--sw/source/filter/rtf/rtffly.cxx1631
-rw-r--r--sw/source/filter/rtf/rtfnum.cxx1460
-rw-r--r--sw/source/filter/rtf/rtftbl.cxx1026
-rw-r--r--sw/source/filter/rtf/swparrtf.cxx4389
-rw-r--r--sw/source/filter/rtf/swparrtf.hxx481
-rw-r--r--sw/source/filter/rtf/wrtrtf.cxx1806
-rw-r--r--sw/source/filter/rtf/wrtrtf.hxx253
-rw-r--r--sw/source/filter/writer/makefile.mk54
-rw-r--r--sw/source/filter/writer/writer.cxx628
-rw-r--r--sw/source/filter/writer/wrt_fn.cxx131
-rw-r--r--sw/source/filter/writer/wrtswtbl.cxx919
-rw-r--r--sw/source/filter/ww1/fltshell.cxx2088
-rw-r--r--sw/source/filter/ww1/makefile.mk94
-rw-r--r--sw/source/filter/ww1/w1class.cxx1256
-rw-r--r--sw/source/filter/ww1/w1class.hxx1649
-rw-r--r--sw/source/filter/ww1/w1filter.cxx2063
-rw-r--r--sw/source/filter/ww1/w1par.cxx141
-rw-r--r--sw/source/filter/ww1/w1par.hxx45
-rw-r--r--sw/source/filter/ww1/w1sprm.cxx684
-rw-r--r--sw/source/filter/ww1/w1struct.hxx928
-rw-r--r--sw/source/filter/ww8/CREDITS3
-rw-r--r--sw/source/filter/ww8/WW8FFData.cxx176
-rw-r--r--sw/source/filter/ww8/WW8FFData.hxx116
-rw-r--r--sw/source/filter/ww8/WW8FibData.cxx62
-rw-r--r--sw/source/filter/ww8/WW8FibData.hxx51
-rw-r--r--sw/source/filter/ww8/WW8Sttbf.cxx119
-rw-r--r--sw/source/filter/ww8/WW8Sttbf.hxx145
-rw-r--r--sw/source/filter/ww8/WW8TableInfo.cxx1517
-rw-r--r--sw/source/filter/ww8/WW8TableInfo.hxx354
-rw-r--r--sw/source/filter/ww8/attributeoutputbase.hxx583
-rw-r--r--sw/source/filter/ww8/docxattributeoutput.cxx3304
-rw-r--r--sw/source/filter/ww8/docxattributeoutput.hxx610
-rw-r--r--sw/source/filter/ww8/docxexport.cxx797
-rw-r--r--sw/source/filter/ww8/docxexport.hxx225
-rw-r--r--sw/source/filter/ww8/docxexportfilter.cxx163
-rw-r--r--sw/source/filter/ww8/docxexportfilter.hxx62
-rw-r--r--sw/source/filter/ww8/docxfootnotes.hxx100
-rw-r--r--sw/source/filter/ww8/dump/dump8.cxx171
-rw-r--r--sw/source/filter/ww8/dump/dump8a.cxx2746
-rw-r--r--sw/source/filter/ww8/dump/makefile.mk122
-rw-r--r--sw/source/filter/ww8/dump/msvbasic.cxx536
-rw-r--r--sw/source/filter/ww8/dump/msvbasic.hxx102
-rw-r--r--sw/source/filter/ww8/dump/ww8darr.cxx546
-rw-r--r--sw/source/filter/ww8/dump/ww8darr.hxx43
-rw-r--r--sw/source/filter/ww8/dump/ww8dout.cxx419
-rw-r--r--sw/source/filter/ww8/dump/ww8dout.hxx86
-rw-r--r--sw/source/filter/ww8/dump/ww8scan.cxx6667
-rw-r--r--sw/source/filter/ww8/dump/ww8scan.hxx1488
-rw-r--r--sw/source/filter/ww8/dump/ww8struc.hxx815
-rw-r--r--sw/source/filter/ww8/escher.hxx189
-rw-r--r--sw/source/filter/ww8/fields.cxx152
-rw-r--r--sw/source/filter/ww8/fields.hxx157
-rw-r--r--sw/source/filter/ww8/hash_wrap.hxx124
-rw-r--r--sw/source/filter/ww8/makefile.mk105
-rw-r--r--sw/source/filter/ww8/needed_cast.hxx63
-rw-r--r--sw/source/filter/ww8/sortedarray.hxx121
-rw-r--r--sw/source/filter/ww8/staticassert.hxx71
-rw-r--r--sw/source/filter/ww8/styles.cxx218
-rw-r--r--sw/source/filter/ww8/tracer.cxx209
-rw-r--r--sw/source/filter/ww8/tracer.hxx91
-rw-r--r--sw/source/filter/ww8/types.hxx58
-rw-r--r--sw/source/filter/ww8/typessw.hxx46
-rw-r--r--sw/source/filter/ww8/writerhelper.cxx859
-rw-r--r--sw/source/filter/ww8/writerhelper.hxx988
-rw-r--r--sw/source/filter/ww8/writerwordglue.cxx1047
-rw-r--r--sw/source/filter/ww8/writerwordglue.hxx164
-rw-r--r--sw/source/filter/ww8/wrtw8esh.cxx2872
-rw-r--r--sw/source/filter/ww8/wrtw8nds.cxx2734
-rw-r--r--sw/source/filter/ww8/wrtw8num.cxx956
-rw-r--r--sw/source/filter/ww8/wrtw8sty.cxx2264
-rw-r--r--sw/source/filter/ww8/wrtww8.cxx3869
-rw-r--r--sw/source/filter/ww8/wrtww8.hxx1427
-rw-r--r--sw/source/filter/ww8/wrtww8gr.cxx887
-rw-r--r--sw/source/filter/ww8/ww8atr.cxx5315
-rw-r--r--sw/source/filter/ww8/ww8attributeoutput.hxx454
-rw-r--r--sw/source/filter/ww8/ww8glsy.cxx272
-rw-r--r--sw/source/filter/ww8/ww8glsy.hxx92
-rw-r--r--sw/source/filter/ww8/ww8graf.cxx3252
-rw-r--r--sw/source/filter/ww8/ww8graf.hxx108
-rw-r--r--sw/source/filter/ww8/ww8graf2.cxx824
-rw-r--r--sw/source/filter/ww8/ww8par.cxx5107
-rw-r--r--sw/source/filter/ww8/ww8par.hxx1639
-rw-r--r--sw/source/filter/ww8/ww8par2.cxx4753
-rw-r--r--sw/source/filter/ww8/ww8par2.hxx295
-rw-r--r--sw/source/filter/ww8/ww8par3.cxx2644
-rw-r--r--sw/source/filter/ww8/ww8par4.cxx581
-rw-r--r--sw/source/filter/ww8/ww8par5.cxx3628
-rw-r--r--sw/source/filter/ww8/ww8par6.cxx6214
-rw-r--r--sw/source/filter/ww8/ww8scan.cxx7365
-rw-r--r--sw/source/filter/ww8/ww8scan.hxx1784
-rw-r--r--sw/source/filter/ww8/ww8struc.hxx1059
-rw-r--r--sw/source/filter/xml/DocSettingNames.hxx26
-rw-r--r--sw/source/filter/xml/ForbiddenCharactersEnum.hxx41
-rw-r--r--sw/source/filter/xml/XMLRedlineImportHelper.cxx754
-rw-r--r--sw/source/filter/xml/XMLRedlineImportHelper.hxx164
-rw-r--r--sw/source/filter/xml/makefile.mk94
-rw-r--r--sw/source/filter/xml/swxml.cxx1143
-rw-r--r--sw/source/filter/xml/wrtxml.cxx701
-rw-r--r--sw/source/filter/xml/wrtxml.hxx105
-rw-r--r--sw/source/filter/xml/xmlbrsh.cxx258
-rw-r--r--sw/source/filter/xml/xmlbrshe.hxx56
-rw-r--r--sw/source/filter/xml/xmlbrshi.hxx86
-rw-r--r--sw/source/filter/xml/xmlexp.cxx995
-rw-r--r--sw/source/filter/xml/xmlexp.hxx190
-rw-r--r--sw/source/filter/xml/xmlexpit.cxx1048
-rw-r--r--sw/source/filter/xml/xmlexpit.hxx136
-rw-r--r--sw/source/filter/xml/xmlfmt.cxx1134
-rw-r--r--sw/source/filter/xml/xmlfmte.cxx363
-rw-r--r--sw/source/filter/xml/xmlfonte.cxx102
-rw-r--r--sw/source/filter/xml/xmlimp.cxx1745
-rw-r--r--sw/source/filter/xml/xmlimp.hxx231
-rw-r--r--sw/source/filter/xml/xmlimpit.cxx976
-rw-r--r--sw/source/filter/xml/xmlimpit.hxx110
-rw-r--r--sw/source/filter/xml/xmlitem.cxx90
-rw-r--r--sw/source/filter/xml/xmlitem.hxx80
-rw-r--r--sw/source/filter/xml/xmliteme.cxx256
-rw-r--r--sw/source/filter/xml/xmlitemi.cxx272
-rw-r--r--sw/source/filter/xml/xmlitemm.cxx296
-rw-r--r--sw/source/filter/xml/xmlithlp.cxx422
-rw-r--r--sw/source/filter/xml/xmlithlp.hxx101
-rw-r--r--sw/source/filter/xml/xmlitmap.hxx96
-rw-r--r--sw/source/filter/xml/xmlitmpr.cxx91
-rw-r--r--sw/source/filter/xml/xmlmeta.cxx200
-rw-r--r--sw/source/filter/xml/xmlscript.cxx65
-rw-r--r--sw/source/filter/xml/xmltble.cxx1250
-rw-r--r--sw/source/filter/xml/xmltbli.cxx2951
-rw-r--r--sw/source/filter/xml/xmltbli.hxx225
-rw-r--r--sw/source/filter/xml/xmltext.cxx107
-rw-r--r--sw/source/filter/xml/xmltexte.cxx767
-rw-r--r--sw/source/filter/xml/xmltexte.hxx88
-rw-r--r--sw/source/filter/xml/xmltexti.cxx1062
-rw-r--r--sw/source/filter/xml/xmltexti.hxx132
-rw-r--r--sw/source/ui/app/app.src665
-rw-r--r--sw/source/ui/app/appenv.cxx545
-rw-r--r--sw/source/ui/app/apphdl.cxx982
-rw-r--r--sw/source/ui/app/applab.cxx457
-rw-r--r--sw/source/ui/app/appopt.cxx657
-rwxr-xr-xsw/source/ui/app/docsh.cxx1446
-rw-r--r--sw/source/ui/app/docsh2.cxx1950
-rw-r--r--sw/source/ui/app/docshdrw.cxx84
-rw-r--r--sw/source/ui/app/docshini.cxx826
-rw-r--r--sw/source/ui/app/docst.cxx1305
-rw-r--r--sw/source/ui/app/docstyle.cxx2908
-rw-r--r--sw/source/ui/app/error.src214
-rw-r--r--sw/source/ui/app/mainwn.cxx165
-rw-r--r--sw/source/ui/app/makefile.mk101
-rw-r--r--sw/source/ui/app/mn.src1112
-rw-r--r--sw/source/ui/app/swdll.cxx156
-rw-r--r--sw/source/ui/app/swmodul1.cxx675
-rw-r--r--sw/source/ui/app/swmodule.cxx500
-rw-r--r--sw/source/ui/app/swwait.cxx75
-rw-r--r--sw/source/ui/cctrl/actctrl.cxx138
-rw-r--r--sw/source/ui/cctrl/makefile.mk59
-rw-r--r--sw/source/ui/cctrl/popbox.cxx91
-rw-r--r--sw/source/ui/cctrl/swlbox.cxx231
-rw-r--r--sw/source/ui/chrdlg/break.cxx252
-rw-r--r--sw/source/ui/chrdlg/break.hrc41
-rw-r--r--sw/source/ui/chrdlg/ccoll.cxx236
-rw-r--r--sw/source/ui/chrdlg/ccoll.hrc50
-rw-r--r--sw/source/ui/chrdlg/ccoll.src165
-rw-r--r--sw/source/ui/chrdlg/chardlg.cxx405
-rw-r--r--sw/source/ui/chrdlg/chardlg.hrc86
-rw-r--r--sw/source/ui/chrdlg/chardlg.src272
-rw-r--r--sw/source/ui/chrdlg/chrdlg.src77
-rw-r--r--sw/source/ui/chrdlg/drpcps.cxx894
-rw-r--r--sw/source/ui/chrdlg/drpcps.hrc51
-rw-r--r--sw/source/ui/chrdlg/drpcps.src233
-rw-r--r--sw/source/ui/chrdlg/makefile.mk69
-rw-r--r--sw/source/ui/chrdlg/numpara.cxx364
-rw-r--r--sw/source/ui/chrdlg/numpara.hrc53
-rw-r--r--sw/source/ui/chrdlg/numpara.src237
-rw-r--r--sw/source/ui/chrdlg/paradlg.hrc71
-rw-r--r--sw/source/ui/chrdlg/paradlg.src165
-rw-r--r--sw/source/ui/chrdlg/pardlg.cxx269
-rw-r--r--sw/source/ui/chrdlg/swbreak.src178
-rw-r--r--sw/source/ui/chrdlg/swuiccoll.cxx357
-rw-r--r--sw/source/ui/chrdlg/tblnumfm.cxx76
-rw-r--r--sw/source/ui/config/barcfg.cxx152
-rw-r--r--sw/source/ui/config/caption.cxx182
-rw-r--r--sw/source/ui/config/cfgitems.cxx461
-rw-r--r--sw/source/ui/config/config.hrc67
-rw-r--r--sw/source/ui/config/dbconfig.cxx143
-rw-r--r--sw/source/ui/config/fontcfg.cxx359
-rw-r--r--sw/source/ui/config/mailconfigpage.cxx622
-rw-r--r--sw/source/ui/config/mailconfigpage.hrc83
-rw-r--r--sw/source/ui/config/mailconfigpage.src443
-rw-r--r--sw/source/ui/config/makefile.mk87
-rw-r--r--sw/source/ui/config/modcfg.cxx1392
-rw-r--r--sw/source/ui/config/optcomp.cxx628
-rw-r--r--sw/source/ui/config/optcomp.hrc56
-rw-r--r--sw/source/ui/config/optcomp.src143
-rw-r--r--sw/source/ui/config/optdlg.hrc205
-rw-r--r--sw/source/ui/config/optdlg.src1077
-rw-r--r--sw/source/ui/config/optload.cxx983
-rw-r--r--sw/source/ui/config/optload.hrc82
-rw-r--r--sw/source/ui/config/optload.src417
-rwxr-xr-xsw/source/ui/config/optpage.cxx2618
-rw-r--r--sw/source/ui/config/prtopt.cxx198
-rw-r--r--sw/source/ui/config/redlopt.hrc54
-rw-r--r--sw/source/ui/config/redlopt.src287
-rw-r--r--sw/source/ui/config/uinums.cxx673
-rw-r--r--sw/source/ui/config/usrpref.cxx691
-rw-r--r--sw/source/ui/config/viewopt.cxx643
-rw-r--r--sw/source/ui/dbui/addresslistdialog.cxx752
-rw-r--r--sw/source/ui/dbui/addresslistdialog.hrc48
-rw-r--r--sw/source/ui/dbui/addresslistdialog.hxx122
-rw-r--r--sw/source/ui/dbui/addresslistdialog.src131
-rw-r--r--sw/source/ui/dbui/createaddresslistdialog.cxx835
-rw-r--r--sw/source/ui/dbui/createaddresslistdialog.hrc64
-rw-r--r--sw/source/ui/dbui/createaddresslistdialog.hxx130
-rw-r--r--sw/source/ui/dbui/createaddresslistdialog.src238
-rw-r--r--sw/source/ui/dbui/customizeaddresslistdialog.cxx274
-rw-r--r--sw/source/ui/dbui/customizeaddresslistdialog.hrc49
-rw-r--r--sw/source/ui/dbui/customizeaddresslistdialog.hxx99
-rw-r--r--sw/source/ui/dbui/customizeaddresslistdialog.src169
-rw-r--r--sw/source/ui/dbui/dbinsdlg.cxx1945
-rw-r--r--sw/source/ui/dbui/dbinsdlg.hrc73
-rw-r--r--sw/source/ui/dbui/dbinsdlg.src330
-rw-r--r--sw/source/ui/dbui/dbmgr.cxx3070
-rw-r--r--sw/source/ui/dbui/dbtablepreviewdialog.cxx144
-rw-r--r--sw/source/ui/dbui/dbtablepreviewdialog.hrc35
-rw-r--r--sw/source/ui/dbui/dbtablepreviewdialog.hxx60
-rw-r--r--sw/source/ui/dbui/dbtablepreviewdialog.src61
-rw-r--r--sw/source/ui/dbui/dbtree.cxx622
-rw-r--r--sw/source/ui/dbui/dbui.cxx151
-rw-r--r--sw/source/ui/dbui/dbui.src284
-rw-r--r--sw/source/ui/dbui/maildispatcher.cxx296
-rw-r--r--sw/source/ui/dbui/mailmergechildwindow.cxx796
-rw-r--r--sw/source/ui/dbui/mailmergechildwindow.hrc61
-rw-r--r--sw/source/ui/dbui/mailmergechildwindow.src279
-rw-r--r--sw/source/ui/dbui/mailmergehelper.cxx1047
-rw-r--r--sw/source/ui/dbui/mailmergewizard.cxx336
-rw-r--r--sw/source/ui/dbui/mailmergewizard.hrc37
-rw-r--r--sw/source/ui/dbui/mailmergewizard.src80
-rw-r--r--sw/source/ui/dbui/makefile.mk122
-rw-r--r--sw/source/ui/dbui/mmaddressblockpage.cxx1846
-rw-r--r--sw/source/ui/dbui/mmaddressblockpage.hrc115
-rw-r--r--sw/source/ui/dbui/mmaddressblockpage.hxx332
-rw-r--r--sw/source/ui/dbui/mmaddressblockpage.src655
-rw-r--r--sw/source/ui/dbui/mmconfigitem.cxx1986
-rw-r--r--sw/source/ui/dbui/mmdocselectpage.cxx224
-rw-r--r--sw/source/ui/dbui/mmdocselectpage.hrc37
-rw-r--r--sw/source/ui/dbui/mmdocselectpage.hxx74
-rw-r--r--sw/source/ui/dbui/mmdocselectpage.src108
-rw-r--r--sw/source/ui/dbui/mmgreetingspage.cxx619
-rw-r--r--sw/source/ui/dbui/mmgreetingspage.hrc65
-rw-r--r--sw/source/ui/dbui/mmgreetingspage.hxx176
-rw-r--r--sw/source/ui/dbui/mmgreetingspage.src261
-rw-r--r--sw/source/ui/dbui/mmlayoutpage.cxx816
-rw-r--r--sw/source/ui/dbui/mmlayoutpage.hrc48
-rw-r--r--sw/source/ui/dbui/mmlayoutpage.hxx114
-rw-r--r--sw/source/ui/dbui/mmlayoutpage.src165
-rw-r--r--sw/source/ui/dbui/mmmergepage.cxx123
-rw-r--r--sw/source/ui/dbui/mmmergepage.hrc43
-rw-r--r--sw/source/ui/dbui/mmmergepage.hxx73
-rw-r--r--sw/source/ui/dbui/mmmergepage.src107
-rw-r--r--sw/source/ui/dbui/mmoutputpage.cxx1419
-rw-r--r--sw/source/ui/dbui/mmoutputpage.hrc103
-rw-r--r--sw/source/ui/dbui/mmoutputpage.hxx242
-rw-r--r--sw/source/ui/dbui/mmoutputpage.src490
-rw-r--r--sw/source/ui/dbui/mmoutputtypepage.cxx113
-rw-r--r--sw/source/ui/dbui/mmoutputtypepage.hrc44
-rw-r--r--sw/source/ui/dbui/mmoutputtypepage.hxx67
-rw-r--r--sw/source/ui/dbui/mmoutputtypepage.src101
-rw-r--r--sw/source/ui/dbui/mmpreparemergepage.cxx204
-rw-r--r--sw/source/ui/dbui/mmpreparemergepage.hrc46
-rw-r--r--sw/source/ui/dbui/mmpreparemergepage.hxx77
-rw-r--r--sw/source/ui/dbui/mmpreparemergepage.src132
-rw-r--r--sw/source/ui/dbui/selectdbtabledialog.cxx223
-rw-r--r--sw/source/ui/dbui/selectdbtabledialog.hrc43
-rw-r--r--sw/source/ui/dbui/selectdbtabledialog.hxx79
-rw-r--r--sw/source/ui/dbui/selectdbtabledialog.src99
-rw-r--r--sw/source/ui/dbui/swdbtoolsclient.cxx248
-rw-r--r--sw/source/ui/dialog/SwSpellDialogChildWindow.cxx934
-rw-r--r--sw/source/ui/dialog/abstract.cxx92
-rw-r--r--sw/source/ui/dialog/abstract.hrc36
-rw-r--r--sw/source/ui/dialog/abstract.src155
-rw-r--r--sw/source/ui/dialog/addrdlg.cxx69
-rw-r--r--sw/source/ui/dialog/ascfldlg.cxx450
-rw-r--r--sw/source/ui/dialog/ascfldlg.hrc44
-rw-r--r--sw/source/ui/dialog/ascfldlg.src183
-rw-r--r--sw/source/ui/dialog/dialog.src62
-rw-r--r--sw/source/ui/dialog/docstdlg.cxx197
-rw-r--r--sw/source/ui/dialog/docstdlg.hrc47
-rw-r--r--sw/source/ui/dialog/docstdlg.src184
-rw-r--r--sw/source/ui/dialog/macassgn.cxx196
-rw-r--r--sw/source/ui/dialog/makefile.mk99
-rw-r--r--sw/source/ui/dialog/regionsw.cxx264
-rw-r--r--sw/source/ui/dialog/regionsw.hrc116
-rw-r--r--sw/source/ui/dialog/regionsw.src899
-rw-r--r--sw/source/ui/dialog/swabstdlg.cxx51
-rw-r--r--sw/source/ui/dialog/swdialmgr.cxx54
-rw-r--r--sw/source/ui/dialog/swdlgfact.cxx1742
-rw-r--r--sw/source/ui/dialog/swdlgfact.hxx586
-rw-r--r--sw/source/ui/dialog/swuiexp.cxx55
-rw-r--r--sw/source/ui/dialog/swwrtshitem.cxx51
-rw-r--r--sw/source/ui/dialog/uiregionsw.cxx2457
-rw-r--r--sw/source/ui/dialog/wordcountdialog.cxx99
-rw-r--r--sw/source/ui/dialog/wordcountdialog.hrc43
-rw-r--r--sw/source/ui/dialog/wordcountdialog.src115
-rw-r--r--sw/source/ui/dochdl/dochdl.src76
-rw-r--r--sw/source/ui/dochdl/gloshdl.cxx898
-rw-r--r--sw/source/ui/dochdl/makefile.mk65
-rw-r--r--sw/source/ui/dochdl/selglos.cxx77
-rw-r--r--sw/source/ui/dochdl/selglos.hrc31
-rw-r--r--sw/source/ui/dochdl/selglos.src112
-rw-r--r--sw/source/ui/dochdl/swdtflvr.cxx3868
-rw-r--r--sw/source/ui/docvw/AnchorOverlayObject.cxx467
-rw-r--r--sw/source/ui/docvw/AnchorOverlayObject.hxx143
-rw-r--r--sw/source/ui/docvw/AnnotationMenuButton.cxx222
-rw-r--r--sw/source/ui/docvw/AnnotationMenuButton.hxx63
-rw-r--r--sw/source/ui/docvw/AnnotationWin.cxx292
-rw-r--r--sw/source/ui/docvw/PostItMgr.cxx2049
-rw-r--r--sw/source/ui/docvw/ShadowOverlayObject.cxx268
-rw-r--r--sw/source/ui/docvw/ShadowOverlayObject.hxx80
-rw-r--r--sw/source/ui/docvw/SidebarTxtControl.cxx428
-rw-r--r--sw/source/ui/docvw/SidebarTxtControl.hxx87
-rw-r--r--sw/source/ui/docvw/SidebarTxtControlAcc.cxx317
-rw-r--r--sw/source/ui/docvw/SidebarTxtControlAcc.hxx56
-rw-r--r--sw/source/ui/docvw/SidebarWin.cxx1392
-rw-r--r--sw/source/ui/docvw/SidebarWinAcc.cxx162
-rw-r--r--sw/source/ui/docvw/SidebarWinAcc.hxx67
-rw-r--r--sw/source/ui/docvw/access.src102
-rw-r--r--sw/source/ui/docvw/annotation.hrc54
-rw-r--r--sw/source/ui/docvw/annotation.src68
-rw-r--r--sw/source/ui/docvw/docvw.hrc93
-rw-r--r--sw/source/ui/docvw/docvw.src296
-rw-r--r--sw/source/ui/docvw/edtdd.cxx527
-rw-r--r--sw/source/ui/docvw/edtwin.cxx5793
-rw-r--r--sw/source/ui/docvw/edtwin2.cxx593
-rw-r--r--sw/source/ui/docvw/edtwin3.cxx216
-rw-r--r--sw/source/ui/docvw/frmsidebarwincontainer.cxx216
-rw-r--r--sw/source/ui/docvw/frmsidebarwincontainer.hxx73
-rw-r--r--sw/source/ui/docvw/makefile.mk69
-rw-r--r--sw/source/ui/docvw/romenu.cxx523
-rw-r--r--sw/source/ui/docvw/romenu.hxx75
-rw-r--r--sw/source/ui/docvw/srcedtw.cxx1103
-rw-r--r--sw/source/ui/envelp/envelp.src87
-rw-r--r--sw/source/ui/envelp/envfmt.cxx635
-rw-r--r--sw/source/ui/envelp/envfmt.hrc82
-rw-r--r--sw/source/ui/envelp/envfmt.hxx112
-rw-r--r--sw/source/ui/envelp/envfmt.src324
-rw-r--r--sw/source/ui/envelp/envimg.cxx381
-rw-r--r--sw/source/ui/envelp/envlop.hrc65
-rw-r--r--sw/source/ui/envelp/envlop.src213
-rw-r--r--sw/source/ui/envelp/envlop1.cxx441
-rw-r--r--sw/source/ui/envelp/envprt.cxx259
-rw-r--r--sw/source/ui/envelp/envprt.hrc96
-rw-r--r--sw/source/ui/envelp/envprt.hxx93
-rw-r--r--sw/source/ui/envelp/envprt.src297
-rw-r--r--sw/source/ui/envelp/label.hrc128
-rw-r--r--sw/source/ui/envelp/label.src758
-rw-r--r--sw/source/ui/envelp/label1.cxx1111
-rw-r--r--sw/source/ui/envelp/labelcfg.cxx302
-rw-r--r--sw/source/ui/envelp/labelexp.cxx281
-rw-r--r--sw/source/ui/envelp/labfmt.cxx712
-rw-r--r--sw/source/ui/envelp/labfmt.hrc89
-rw-r--r--sw/source/ui/envelp/labfmt.hxx175
-rw-r--r--sw/source/ui/envelp/labfmt.src370
-rw-r--r--sw/source/ui/envelp/labimg.cxx482
-rw-r--r--sw/source/ui/envelp/labimp.hxx118
-rw-r--r--sw/source/ui/envelp/labprt.cxx242
-rw-r--r--sw/source/ui/envelp/labprt.hrc59
-rw-r--r--sw/source/ui/envelp/labprt.hxx86
-rw-r--r--sw/source/ui/envelp/labprt.src157
-rw-r--r--sw/source/ui/envelp/mailmrge.cxx941
-rw-r--r--sw/source/ui/envelp/mailmrge.hrc92
-rw-r--r--sw/source/ui/envelp/mailmrge.src455
-rw-r--r--sw/source/ui/envelp/makefile.mk80
-rw-r--r--sw/source/ui/envelp/swuilabimp.hxx254
-rw-r--r--sw/source/ui/envelp/syncbtn.cxx112
-rw-r--r--sw/source/ui/fldui/DropDownFieldDialog.cxx147
-rw-r--r--sw/source/ui/fldui/DropDownFieldDialog.hrc37
-rw-r--r--sw/source/ui/fldui/DropDownFieldDialog.src125
-rw-r--r--sw/source/ui/fldui/FldRefTreeListBox.cxx81
-rw-r--r--sw/source/ui/fldui/FldRefTreeListBox.hxx44
-rw-r--r--sw/source/ui/fldui/changedb.cxx363
-rw-r--r--sw/source/ui/fldui/changedb.hrc62
-rw-r--r--sw/source/ui/fldui/changedb.src130
-rw-r--r--sw/source/ui/fldui/flddb.cxx583
-rw-r--r--sw/source/ui/fldui/flddb.hxx106
-rw-r--r--sw/source/ui/fldui/flddb.src206
-rw-r--r--sw/source/ui/fldui/flddinf.cxx537
-rw-r--r--sw/source/ui/fldui/flddinf.hxx89
-rw-r--r--sw/source/ui/fldui/flddinf.src141
-rw-r--r--sw/source/ui/fldui/flddok.cxx731
-rw-r--r--sw/source/ui/fldui/flddok.hxx95
-rw-r--r--sw/source/ui/fldui/flddok.src203
-rw-r--r--sw/source/ui/fldui/fldedt.cxx422
-rw-r--r--sw/source/ui/fldui/fldfunc.cxx744
-rw-r--r--sw/source/ui/fldui/fldfunc.hxx113
-rw-r--r--sw/source/ui/fldui/fldfunc.src284
-rw-r--r--sw/source/ui/fldui/fldmgr.cxx1793
-rw-r--r--sw/source/ui/fldui/fldpage.cxx421
-rw-r--r--sw/source/ui/fldui/fldpage.hxx107
-rw-r--r--sw/source/ui/fldui/fldref.cxx1073
-rw-r--r--sw/source/ui/fldui/fldref.hxx114
-rw-r--r--sw/source/ui/fldui/fldref.src150
-rw-r--r--sw/source/ui/fldui/fldtdlg.cxx386
-rw-r--r--sw/source/ui/fldui/fldtdlg.hrc171
-rw-r--r--sw/source/ui/fldui/fldtdlg.src118
-rw-r--r--sw/source/ui/fldui/fldui.src684
-rw-r--r--sw/source/ui/fldui/fldvar.cxx1383
-rw-r--r--sw/source/ui/fldui/fldvar.hxx126
-rw-r--r--sw/source/ui/fldui/fldvar.src245
-rw-r--r--sw/source/ui/fldui/fldwrap.cxx212
-rw-r--r--sw/source/ui/fldui/inpdlg.cxx209
-rw-r--r--sw/source/ui/fldui/inpdlg.hrc34
-rw-r--r--sw/source/ui/fldui/inpdlg.src134
-rw-r--r--sw/source/ui/fldui/javaedit.cxx366
-rw-r--r--sw/source/ui/fldui/javaedit.hrc51
-rw-r--r--sw/source/ui/fldui/javaedit.src181
-rw-r--r--sw/source/ui/fldui/makefile.mk94
-rw-r--r--sw/source/ui/fldui/xfldui.cxx184
-rw-r--r--sw/source/ui/fmtui/fmtui.src88
-rw-r--r--sw/source/ui/fmtui/makefile.mk51
-rw-r--r--sw/source/ui/fmtui/tmpdlg.cxx647
-rw-r--r--sw/source/ui/fmtui/tmpdlg.src380
-rw-r--r--sw/source/ui/frmdlg/colex.cxx610
-rw-r--r--sw/source/ui/frmdlg/colmgr.cxx191
-rw-r--r--sw/source/ui/frmdlg/column.cxx1463
-rw-r--r--sw/source/ui/frmdlg/column.hrc87
-rw-r--r--sw/source/ui/frmdlg/column.src419
-rw-r--r--sw/source/ui/frmdlg/cption.cxx648
-rw-r--r--sw/source/ui/frmdlg/cption.hrc78
-rw-r--r--sw/source/ui/frmdlg/cption.src342
-rw-r--r--sw/source/ui/frmdlg/frmdlg.cxx219
-rw-r--r--sw/source/ui/frmdlg/frmmgr.cxx623
-rw-r--r--sw/source/ui/frmdlg/frmpage.cxx3249
-rw-r--r--sw/source/ui/frmdlg/frmpage.hrc146
-rw-r--r--sw/source/ui/frmdlg/frmpage.src884
-rw-r--r--sw/source/ui/frmdlg/frmui.src133
-rw-r--r--sw/source/ui/frmdlg/makefile.mk79
-rw-r--r--sw/source/ui/frmdlg/pattern.cxx75
-rw-r--r--sw/source/ui/frmdlg/pattern.hrc46
-rw-r--r--sw/source/ui/frmdlg/uiborder.cxx79
-rw-r--r--sw/source/ui/frmdlg/wrap.cxx785
-rw-r--r--sw/source/ui/frmdlg/wrap.hrc66
-rw-r--r--sw/source/ui/frmdlg/wrap.src271
-rw-r--r--sw/source/ui/globdoc/globdoc.cxx91
-rw-r--r--sw/source/ui/globdoc/globdoc.src45
-rw-r--r--sw/source/ui/globdoc/makefile.mk51
-rw-r--r--sw/source/ui/inc/DropDownFieldDialog.hxx71
-rw-r--r--sw/source/ui/inc/SidebarWindowsConsts.hxx41
-rw-r--r--sw/source/ui/inc/SwSpellDialogChildWindow.hxx76
-rw-r--r--sw/source/ui/inc/SwXFilterOptions.hxx113
-rw-r--r--sw/source/ui/inc/abstract.hxx73
-rw-r--r--sw/source/ui/inc/actctrl.hxx98
-rw-r--r--sw/source/ui/inc/addrdlg.hxx44
-rwxr-xr-xsw/source/ui/inc/annotsh.hxx77
-rw-r--r--sw/source/ui/inc/app.hrc183
-rw-r--r--sw/source/ui/inc/ascfldlg.hxx78
-rw-r--r--sw/source/ui/inc/autoedit.hxx50
-rw-r--r--sw/source/ui/inc/barcfg.hxx47
-rw-r--r--sw/source/ui/inc/basesh.hxx127
-rw-r--r--sw/source/ui/inc/beziersh.hxx44
-rw-r--r--sw/source/ui/inc/bmpwin.hxx69
-rw-r--r--sw/source/ui/inc/bookctrl.hxx57
-rw-r--r--sw/source/ui/inc/bookmark.hxx88
-rw-r--r--sw/source/ui/inc/break.hxx92
-rw-r--r--sw/source/ui/inc/caption.hxx118
-rw-r--r--sw/source/ui/inc/cfgdesc.hxx69
-rw-r--r--sw/source/ui/inc/cfgid.h40
-rw-r--r--sw/source/ui/inc/cfgitems.hxx242
-rw-r--r--sw/source/ui/inc/changedb.hxx92
-rw-r--r--sw/source/ui/inc/chartins.hxx35
-rw-r--r--sw/source/ui/inc/chldwrap.hxx55
-rw-r--r--sw/source/ui/inc/chrdlg.hxx119
-rw-r--r--sw/source/ui/inc/cnttab.hxx90
-rw-r--r--sw/source/ui/inc/colex.hxx118
-rw-r--r--sw/source/ui/inc/colmgr.hxx131
-rw-r--r--sw/source/ui/inc/column.hxx227
-rw-r--r--sw/source/ui/inc/conarc.hxx57
-rw-r--r--sw/source/ui/inc/concustomshape.hxx72
-rw-r--r--sw/source/ui/inc/condedit.hxx72
-rw-r--r--sw/source/ui/inc/conform.hxx47
-rw-r--r--sw/source/ui/inc/conpoly.hxx55
-rw-r--r--sw/source/ui/inc/conrect.hxx60
-rw-r--r--sw/source/ui/inc/content.hxx225
-rw-r--r--sw/source/ui/inc/conttree.hxx334
-rw-r--r--sw/source/ui/inc/convert.hxx91
-rw-r--r--sw/source/ui/inc/cption.hxx137
-rw-r--r--sw/source/ui/inc/dbconfig.hxx54
-rw-r--r--sw/source/ui/inc/dbinsdlg.hxx188
-rw-r--r--sw/source/ui/inc/dbtree.hxx86
-rw-r--r--sw/source/ui/inc/dbui.hxx86
-rw-r--r--sw/source/ui/inc/dialmgr.hxx48
-rw-r--r--sw/source/ui/inc/docfnote.hxx50
-rw-r--r--sw/source/ui/inc/docstdlg.hxx85
-rw-r--r--sw/source/ui/inc/drawbase.hxx90
-rw-r--r--sw/source/ui/inc/drawsh.hxx52
-rw-r--r--sw/source/ui/inc/drformsh.hxx47
-rw-r--r--sw/source/ui/inc/drpcps.hxx125
-rw-r--r--sw/source/ui/inc/drwbassh.hxx64
-rw-r--r--sw/source/ui/inc/drwtxtsh.hxx85
-rw-r--r--sw/source/ui/inc/dselect.hxx52
-rw-r--r--sw/source/ui/inc/edtwin.hxx307
-rw-r--r--sw/source/ui/inc/envimg.hxx100
-rw-r--r--sw/source/ui/inc/envlop.hxx149
-rw-r--r--sw/source/ui/inc/fldedt.hxx66
-rw-r--r--sw/source/ui/inc/fldmgr.hxx234
-rw-r--r--sw/source/ui/inc/fldtdlg.hxx68
-rw-r--r--sw/source/ui/inc/fldwrap.hxx63
-rw-r--r--sw/source/ui/inc/fontcfg.hxx120
-rw-r--r--sw/source/ui/inc/formatclipboard.hxx69
-rw-r--r--sw/source/ui/inc/formedt.hxx108
-rw-r--r--sw/source/ui/inc/frmdlg.hxx66
-rw-r--r--sw/source/ui/inc/frmmgr.hxx193
-rw-r--r--sw/source/ui/inc/frmpage.hxx344
-rw-r--r--sw/source/ui/inc/frmsh.hxx50
-rw-r--r--sw/source/ui/inc/frmui.hrc144
-rw-r--r--sw/source/ui/inc/globals.h37
-rw-r--r--sw/source/ui/inc/globdoc.hrc64
-rw-r--r--sw/source/ui/inc/glosbib.hxx121
-rw-r--r--sw/source/ui/inc/glosdoc.hxx148
-rw-r--r--sw/source/ui/inc/gloshdl.hxx110
-rw-r--r--sw/source/ui/inc/gloslst.hxx89
-rw-r--r--sw/source/ui/inc/glossary.hxx197
-rw-r--r--sw/source/ui/inc/glshell.hxx114
-rw-r--r--sw/source/ui/inc/grfsh.hxx44
-rw-r--r--sw/source/ui/inc/hidfunc.h350
-rw-r--r--sw/source/ui/inc/hyp.hxx67
-rw-r--r--sw/source/ui/inc/idxmrk.hxx73
-rw-r--r--sw/source/ui/inc/imaildsplistener.hxx77
-rw-r--r--sw/source/ui/inc/initui.hxx79
-rw-r--r--sw/source/ui/inc/inpdlg.hxx78
-rw-r--r--sw/source/ui/inc/inputwin.hxx138
-rw-r--r--sw/source/ui/inc/insfnote.hxx97
-rw-r--r--sw/source/ui/inc/insrule.hxx66
-rw-r--r--sw/source/ui/inc/instable.hxx100
-rw-r--r--sw/source/ui/inc/javaedit.hxx118
-rw-r--r--sw/source/ui/inc/label.hxx99
-rw-r--r--sw/source/ui/inc/labelcfg.hxx59
-rw-r--r--sw/source/ui/inc/labimg.hxx131
-rwxr-xr-xsw/source/ui/inc/langhelper.hxx68
-rw-r--r--sw/source/ui/inc/linenum.hxx110
-rw-r--r--sw/source/ui/inc/listsh.hxx44
-rw-r--r--sw/source/ui/inc/macassgn.hxx54
-rw-r--r--sw/source/ui/inc/mailconfigpage.hxx110
-rw-r--r--sw/source/ui/inc/maildispatcher.hxx168
-rw-r--r--sw/source/ui/inc/mailmergechildwindow.hxx66
-rw-r--r--sw/source/ui/inc/mailmergehelper.hxx349
-rw-r--r--sw/source/ui/inc/mailmergewizard.hxx103
-rw-r--r--sw/source/ui/inc/mailmrge.hxx204
-rw-r--r--sw/source/ui/inc/makefile.mk42
-rw-r--r--sw/source/ui/inc/mediash.hxx43
-rw-r--r--sw/source/ui/inc/mergetbl.hxx59
-rw-r--r--sw/source/ui/inc/misc.hrc106
-rw-r--r--sw/source/ui/inc/mmconfigitem.hxx279
-rw-r--r--sw/source/ui/inc/multmrk.hxx77
-rw-r--r--sw/source/ui/inc/navicfg.hxx119
-rw-r--r--sw/source/ui/inc/navicont.hxx61
-rw-r--r--sw/source/ui/inc/navipi.hxx198
-rw-r--r--sw/source/ui/inc/num.hxx205
-rw-r--r--sw/source/ui/inc/numberingtypelistbox.hxx58
-rw-r--r--sw/source/ui/inc/numfmtlb.hxx87
-rw-r--r--sw/source/ui/inc/numpara.hxx98
-rw-r--r--sw/source/ui/inc/numprevw.hxx71
-rw-r--r--sw/source/ui/inc/olesh.hxx48
-rw-r--r--sw/source/ui/inc/olmenu.hxx91
-rw-r--r--sw/source/ui/inc/optcomp.hxx87
-rw-r--r--sw/source/ui/inc/optload.hxx213
-rw-r--r--sw/source/ui/inc/optpage.hxx502
-rw-r--r--sw/source/ui/inc/outline.hxx166
-rw-r--r--sw/source/ui/inc/pardlg.hxx39
-rw-r--r--sw/source/ui/inc/pattern.hxx44
-rw-r--r--sw/source/ui/inc/pgfnote.hxx93
-rw-r--r--sw/source/ui/inc/pggrid.hxx113
-rw-r--r--sw/source/ui/inc/popbox.hxx67
-rw-r--r--sw/source/ui/inc/popup.hrc58
-rw-r--r--sw/source/ui/inc/prcntfld.hxx99
-rw-r--r--sw/source/ui/inc/prtopt.hxx55
-rw-r--r--sw/source/ui/inc/pview.hxx337
-rw-r--r--sw/source/ui/inc/redlndlg.hxx189
-rw-r--r--sw/source/ui/inc/regionsw.hxx336
-rw-r--r--sw/source/ui/inc/ribbar.hrc132
-rw-r--r--sw/source/ui/inc/rowht.hxx67
-rw-r--r--sw/source/ui/inc/scroll.hxx71
-rw-r--r--sw/source/ui/inc/selglos.hxx74
-rw-r--r--sw/source/ui/inc/sharedconnection.hxx36
-rw-r--r--sw/source/ui/inc/shdwcrsr.hxx67
-rw-r--r--sw/source/ui/inc/shells.hrc112
-rw-r--r--sw/source/ui/inc/split.hxx76
-rw-r--r--sw/source/ui/inc/splittbl.hxx61
-rw-r--r--sw/source/ui/inc/srcedtw.hxx164
-rw-r--r--sw/source/ui/inc/srcview.hxx126
-rw-r--r--sw/source/ui/inc/srtdlg.hxx118
-rw-r--r--sw/source/ui/inc/stmenu.hxx85
-rw-r--r--sw/source/ui/inc/swcont.hxx113
-rw-r--r--sw/source/ui/inc/swdtflvr.hxx222
-rw-r--r--sw/source/ui/inc/swlbox.hxx124
-rw-r--r--sw/source/ui/inc/swmn_tmpl.hrc379
-rw-r--r--sw/source/ui/inc/swmodalredlineacceptdlg.hxx48
-rw-r--r--sw/source/ui/inc/swrenamexnameddlg.hxx87
-rw-r--r--sw/source/ui/inc/swtablerep.hxx94
-rw-r--r--sw/source/ui/inc/swuiccoll.hxx89
-rw-r--r--sw/source/ui/inc/swuicnttab.hxx537
-rw-r--r--sw/source/ui/inc/swuiidxmrk.hxx295
-rw-r--r--sw/source/ui/inc/swuipardlg.hxx51
-rw-r--r--sw/source/ui/inc/swvset.hxx41
-rw-r--r--sw/source/ui/inc/swwrtshitem.hxx52
-rw-r--r--sw/source/ui/inc/syncbtn.hxx71
-rw-r--r--sw/source/ui/inc/table.hrc50
-rw-r--r--sw/source/ui/inc/tabledlg.hxx55
-rw-r--r--sw/source/ui/inc/tablemgr.hxx95
-rw-r--r--sw/source/ui/inc/tabsh.hxx58
-rw-r--r--sw/source/ui/inc/tautofmt.hxx118
-rw-r--r--sw/source/ui/inc/tblctrl.hxx57
-rw-r--r--sw/source/ui/inc/tblnumfm.hxx44
-rw-r--r--sw/source/ui/inc/tbxanchr.hxx49
-rw-r--r--sw/source/ui/inc/textcontrolcombo.hxx66
-rw-r--r--sw/source/ui/inc/textsh.hxx90
-rw-r--r--sw/source/ui/inc/tmpdlg.hxx66
-rw-r--r--sw/source/ui/inc/tmplctrl.hxx58
-rw-r--r--sw/source/ui/inc/toolbox_tmpl.hrc563
-rw-r--r--sw/source/ui/inc/toxmgr.hxx324
-rw-r--r--sw/source/ui/inc/uiborder.hxx49
-rw-r--r--sw/source/ui/inc/uiitems.hxx116
-rw-r--r--sw/source/ui/inc/uinums.hxx136
-rw-r--r--sw/source/ui/inc/uitool.hxx92
-rw-r--r--sw/source/ui/inc/uivwimp.hxx191
-rw-r--r--sw/source/ui/inc/unodispatch.hxx134
-rw-r--r--sw/source/ui/inc/unotools.hxx135
-rw-r--r--sw/source/ui/inc/unotxvw.hxx274
-rw-r--r--sw/source/ui/inc/usrpref.hxx277
-rw-r--r--sw/source/ui/inc/utlui.hrc194
-rw-r--r--sw/source/ui/inc/view.hxx698
-rw-r--r--sw/source/ui/inc/viewlayoutctrl.hxx56
-rw-r--r--sw/source/ui/inc/web.hrc74
-rw-r--r--sw/source/ui/inc/wformsh.hxx45
-rw-r--r--sw/source/ui/inc/wfrmsh.hxx48
-rw-r--r--sw/source/ui/inc/wgrfsh.hxx45
-rw-r--r--sw/source/ui/inc/wlistsh.hxx42
-rw-r--r--sw/source/ui/inc/wolesh.hxx48
-rw-r--r--sw/source/ui/inc/wordcountdialog.hxx65
-rw-r--r--sw/source/ui/inc/workctrl.hxx225
-rw-r--r--sw/source/ui/inc/wrap.hxx151
-rw-r--r--sw/source/ui/inc/wrtsh.hxx653
-rw-r--r--sw/source/ui/inc/wtabsh.hxx42
-rw-r--r--sw/source/ui/inc/wtextsh.hxx48
-rw-r--r--sw/source/ui/inc/wview.hxx51
-rw-r--r--sw/source/ui/inc/zoomctrl.hxx52
-rw-r--r--sw/source/ui/index/cntex.cxx516
-rw-r--r--sw/source/ui/index/cnttab.cxx4513
-rw-r--r--sw/source/ui/index/cnttab.hrc284
-rw-r--r--sw/source/ui/index/cnttab.src1350
-rw-r--r--sw/source/ui/index/idxmrk.cxx153
-rw-r--r--sw/source/ui/index/idxmrk.hrc108
-rw-r--r--sw/source/ui/index/idxmrk.src636
-rw-r--r--sw/source/ui/index/makefile.mk68
-rw-r--r--sw/source/ui/index/multmrk.cxx98
-rw-r--r--sw/source/ui/index/multmrk.hrc34
-rw-r--r--sw/source/ui/index/multmrk.src119
-rw-r--r--sw/source/ui/index/swuiidxmrk.cxx1960
-rw-r--r--sw/source/ui/index/toxmgr.cxx525
-rw-r--r--sw/source/ui/lingu/cvdata.mac19
-rw-r--r--sw/source/ui/lingu/hhcwrp.cxx818
-rw-r--r--sw/source/ui/lingu/hyp.cxx176
-rw-r--r--sw/source/ui/lingu/makefile.mk56
-rwxr-xr-xsw/source/ui/lingu/olmenu.cxx938
-rw-r--r--sw/source/ui/lingu/olmenu.hrc97
-rw-r--r--sw/source/ui/lingu/olmenu.src137
-rw-r--r--sw/source/ui/lingu/sdrhhcwrap.cxx235
-rw-r--r--sw/source/ui/lingu/sdrhhcwrap.hxx69
-rw-r--r--sw/source/ui/makefile.mk101
-rw-r--r--sw/source/ui/misc/autocorr.src29
-rw-r--r--sw/source/ui/misc/bookmark.cxx304
-rw-r--r--sw/source/ui/misc/bookmark.hrc34
-rw-r--r--sw/source/ui/misc/bookmark.src118
-rw-r--r--sw/source/ui/misc/docfnote.cxx500
-rw-r--r--sw/source/ui/misc/docfnote.hrc60
-rw-r--r--sw/source/ui/misc/docfnote.src563
-rw-r--r--sw/source/ui/misc/glosbib.cxx580
-rw-r--r--sw/source/ui/misc/glosbib.hrc41
-rw-r--r--sw/source/ui/misc/glosbib.src183
-rw-r--r--sw/source/ui/misc/glosdoc.cxx806
-rw-r--r--sw/source/ui/misc/glossary.cxx1305
-rw-r--r--sw/source/ui/misc/glossary.hrc91
-rw-r--r--sw/source/ui/misc/glossary.src476
-rw-r--r--sw/source/ui/misc/glshell.cxx353
-rw-r--r--sw/source/ui/misc/impfnote.hxx120
-rw-r--r--sw/source/ui/misc/insfnote.cxx353
-rw-r--r--sw/source/ui/misc/insfnote.hrc41
-rw-r--r--sw/source/ui/misc/insfnote.src176
-rw-r--r--sw/source/ui/misc/insrule.cxx226
-rw-r--r--sw/source/ui/misc/insrule.hrc35
-rw-r--r--sw/source/ui/misc/insrule.src114
-rw-r--r--sw/source/ui/misc/linenum.cxx335
-rw-r--r--sw/source/ui/misc/linenum.hrc50
-rw-r--r--sw/source/ui/misc/linenum.src279
-rw-r--r--sw/source/ui/misc/makefile.mk96
-rw-r--r--sw/source/ui/misc/num.cxx1173
-rw-r--r--sw/source/ui/misc/num.hrc55
-rw-r--r--sw/source/ui/misc/num.src374
-rw-r--r--sw/source/ui/misc/numberingtypelistbox.cxx177
-rw-r--r--sw/source/ui/misc/numberingtypelistbox.src98
-rw-r--r--sw/source/ui/misc/outline.cxx1343
-rw-r--r--sw/source/ui/misc/outline.hrc98
-rw-r--r--sw/source/ui/misc/outline.src383
-rw-r--r--sw/source/ui/misc/pgfnote.cxx373
-rw-r--r--sw/source/ui/misc/pgfnote.hrc44
-rw-r--r--sw/source/ui/misc/pgfnote.src200
-rw-r--r--sw/source/ui/misc/pggrid.cxx521
-rw-r--r--sw/source/ui/misc/pggrid.hrc52
-rw-r--r--sw/source/ui/misc/pggrid.src244
-rw-r--r--sw/source/ui/misc/redlndlg.cxx1418
-rw-r--r--sw/source/ui/misc/redlndlg.hrc38
-rw-r--r--sw/source/ui/misc/redlndlg.src148
-rw-r--r--sw/source/ui/misc/srtdlg.cxx492
-rw-r--r--sw/source/ui/misc/srtdlg.hrc65
-rw-r--r--sw/source/ui/misc/srtdlg.src407
-rw-r--r--sw/source/ui/misc/swmodalredlineacceptdlg.cxx147
-rw-r--r--sw/source/ui/ribbar/conarc.cxx161
-rw-r--r--sw/source/ui/ribbar/concustomshape.cxx252
-rw-r--r--sw/source/ui/ribbar/conform.cxx144
-rw-r--r--sw/source/ui/ribbar/conpoly.cxx163
-rw-r--r--sw/source/ui/ribbar/conrect.cxx229
-rw-r--r--sw/source/ui/ribbar/drawbase.cxx737
-rw-r--r--sw/source/ui/ribbar/dselect.cxx102
-rwxr-xr-xsw/source/ui/ribbar/inputwin.cxx694
-rw-r--r--sw/source/ui/ribbar/inputwin.hrc84
-rw-r--r--sw/source/ui/ribbar/inputwin.src345
-rw-r--r--sw/source/ui/ribbar/makefile.mk70
-rw-r--r--sw/source/ui/ribbar/tblctrl.cxx93
-rw-r--r--sw/source/ui/ribbar/tblctrl.hrc35
-rw-r--r--sw/source/ui/ribbar/tbxanchr.cxx166
-rw-r--r--sw/source/ui/ribbar/tbxanchr.src107
-rw-r--r--sw/source/ui/ribbar/workctrl.cxx943
-rw-r--r--sw/source/ui/ribbar/workctrl.hrc88
-rw-r--r--sw/source/ui/ribbar/workctrl.src467
-rwxr-xr-xsw/source/ui/shells/annotsh.cxx1686
-rw-r--r--sw/source/ui/shells/basesh.cxx2933
-rw-r--r--sw/source/ui/shells/beziersh.cxx356
-rw-r--r--sw/source/ui/shells/drawdlg.cxx259
-rw-r--r--sw/source/ui/shells/drawsh.cxx497
-rw-r--r--sw/source/ui/shells/drformsh.cxx276
-rw-r--r--sw/source/ui/shells/drwbassh.cxx995
-rw-r--r--sw/source/ui/shells/drwtxtex.cxx1012
-rw-r--r--sw/source/ui/shells/drwtxtsh.cxx912
-rw-r--r--sw/source/ui/shells/frmsh.cxx1148
-rw-r--r--sw/source/ui/shells/grfsh.cxx707
-rw-r--r--sw/source/ui/shells/grfshex.cxx165
-rwxr-xr-xsw/source/ui/shells/langhelper.cxx612
-rw-r--r--sw/source/ui/shells/listsh.cxx295
-rw-r--r--sw/source/ui/shells/makefile.mk94
-rw-r--r--sw/source/ui/shells/mediash.cxx222
-rw-r--r--sw/source/ui/shells/olesh.cxx80
-rw-r--r--sw/source/ui/shells/shells.src305
-rw-r--r--sw/source/ui/shells/slotadd.cxx150
-rw-r--r--sw/source/ui/shells/tabsh.cxx1598
-rw-r--r--sw/source/ui/shells/textdrw.cxx143
-rw-r--r--sw/source/ui/shells/textfld.cxx894
-rw-r--r--sw/source/ui/shells/textglos.cxx145
-rw-r--r--sw/source/ui/shells/textidx.cxx261
-rw-r--r--sw/source/ui/shells/textsh.cxx1229
-rw-r--r--sw/source/ui/shells/textsh1.cxx1790
-rw-r--r--sw/source/ui/shells/textsh2.cxx312
-rw-r--r--sw/source/ui/shells/txtattr.cxx847
-rw-r--r--sw/source/ui/shells/txtcrsr.cxx370
-rw-r--r--sw/source/ui/shells/txtnum.cxx251
-rw-r--r--sw/source/ui/smartmenu/makefile.mk53
-rw-r--r--sw/source/ui/smartmenu/stmenu.cxx186
-rw-r--r--sw/source/ui/smartmenu/stmenu.hrc41
-rw-r--r--sw/source/ui/smartmenu/stmenu.src44
-rw-r--r--sw/source/ui/table/chartins.cxx287
-rw-r--r--sw/source/ui/table/chartins.hrc47
-rw-r--r--sw/source/ui/table/chartins.src130
-rw-r--r--sw/source/ui/table/colwd.cxx123
-rw-r--r--sw/source/ui/table/colwd.hrc36
-rw-r--r--sw/source/ui/table/colwd.src146
-rw-r--r--sw/source/ui/table/convert.cxx279
-rw-r--r--sw/source/ui/table/convert.hrc47
-rw-r--r--sw/source/ui/table/convert.src197
-rw-r--r--sw/source/ui/table/instable.cxx253
-rw-r--r--sw/source/ui/table/instable.hrc49
-rw-r--r--sw/source/ui/table/instable.src199
-rw-r--r--sw/source/ui/table/makefile.mk81
-rw-r--r--sw/source/ui/table/mergetbl.cxx66
-rw-r--r--sw/source/ui/table/mergetbl.hrc32
-rw-r--r--sw/source/ui/table/mergetbl.src118
-rw-r--r--sw/source/ui/table/rowht.cxx120
-rw-r--r--sw/source/ui/table/rowht.hrc34
-rw-r--r--sw/source/ui/table/rowht.src123
-rw-r--r--sw/source/ui/table/splittbl.cxx79
-rw-r--r--sw/source/ui/table/splittbl.hrc34
-rw-r--r--sw/source/ui/table/splittbl.src129
-rw-r--r--sw/source/ui/table/swtablerep.cxx241
-rw-r--r--sw/source/ui/table/table.src59
-rw-r--r--sw/source/ui/table/tabledlg.cxx1981
-rw-r--r--sw/source/ui/table/tabledlg.hrc110
-rw-r--r--sw/source/ui/table/tabledlg.src789
-rw-r--r--sw/source/ui/table/tablemgr.cxx382
-rw-r--r--sw/source/ui/table/tablepg.hxx239
-rw-r--r--sw/source/ui/table/tautofmt.cxx1057
-rw-r--r--sw/source/ui/table/tautofmt.hrc78
-rw-r--r--sw/source/ui/table/tautofmt.src307
-rw-r--r--sw/source/ui/uiview/formatclipboard.cxx617
-rw-r--r--sw/source/ui/uiview/makefile.mk90
-rwxr-xr-xsw/source/ui/uiview/pview.cxx2229
-rw-r--r--sw/source/ui/uiview/pview.hrc72
-rw-r--r--sw/source/ui/uiview/pview.src111
-rw-r--r--sw/source/ui/uiview/scroll.cxx160
-rw-r--r--sw/source/ui/uiview/srcview.cxx960
-rw-r--r--sw/source/ui/uiview/swcli.cxx171
-rw-r--r--sw/source/ui/uiview/uivwimp.cxx345
-rw-r--r--sw/source/ui/uiview/view.cxx1943
-rwxr-xr-xsw/source/ui/uiview/view.hrc90
-rw-r--r--sw/source/ui/uiview/view.src222
-rw-r--r--sw/source/ui/uiview/view0.cxx562
-rw-r--r--sw/source/ui/uiview/view1.cxx219
-rw-r--r--sw/source/ui/uiview/view2.cxx2452
-rw-r--r--sw/source/ui/uiview/viewcoll.cxx98
-rw-r--r--sw/source/ui/uiview/viewdlg.cxx98
-rw-r--r--sw/source/ui/uiview/viewdlg2.cxx241
-rw-r--r--sw/source/ui/uiview/viewdraw.cxx849
-rw-r--r--sw/source/ui/uiview/viewfunc.hxx68
-rw-r--r--sw/source/ui/uiview/viewling.cxx1005
-rw-r--r--sw/source/ui/uiview/viewmdi.cxx754
-rw-r--r--sw/source/ui/uiview/viewport.cxx1384
-rw-r--r--sw/source/ui/uiview/viewprt.cxx375
-rw-r--r--sw/source/ui/uiview/viewsrch.cxx821
-rw-r--r--sw/source/ui/uiview/viewstat.cxx530
-rw-r--r--sw/source/ui/uiview/viewtab.cxx1848
-rw-r--r--sw/source/ui/uno/RefreshListenerContainer.cxx58
-rwxr-xr-xsw/source/ui/uno/SwXDocumentSettings.cxx1066
-rw-r--r--sw/source/ui/uno/SwXDocumentSettings.hxx109
-rw-r--r--sw/source/ui/uno/SwXFilterOptions.cxx217
-rw-r--r--sw/source/ui/uno/detreg.cxx85
-rw-r--r--sw/source/ui/uno/dlelstnr.cxx204
-rwxr-xr-xsw/source/ui/uno/makefile.mk81
-rw-r--r--sw/source/ui/uno/swdet2.cxx122
-rw-r--r--sw/source/ui/uno/swdetect.cxx489
-rw-r--r--sw/source/ui/uno/swdetect.hxx95
-rw-r--r--sw/source/ui/uno/unoatxt.cxx1308
-rw-r--r--sw/source/ui/uno/unodefaults.cxx72
-rw-r--r--sw/source/ui/uno/unodefaults.hxx48
-rw-r--r--sw/source/ui/uno/unodispatch.cxx448
-rw-r--r--sw/source/ui/uno/unodoc.cxx128
-rw-r--r--sw/source/ui/uno/unofreg.cxx383
-rw-r--r--sw/source/ui/uno/unomailmerge.cxx1255
-rw-r--r--sw/source/ui/uno/unomod.cxx1055
-rw-r--r--sw/source/ui/uno/unomodule.cxx172
-rw-r--r--sw/source/ui/uno/unomodule.hxx98
-rw-r--r--sw/source/ui/uno/unotxdoc.cxx4172
-rw-r--r--sw/source/ui/uno/unotxvw.cxx2206
-rw-r--r--sw/source/ui/utlui/attrdesc.cxx1350
-rw-r--r--sw/source/ui/utlui/attrdesc.hrc123
-rw-r--r--sw/source/ui/utlui/attrdesc.src384
-rw-r--r--sw/source/ui/utlui/bookctrl.cxx164
-rw-r--r--sw/source/ui/utlui/condedit.cxx108
-rw-r--r--sw/source/ui/utlui/content.cxx3265
-rw-r--r--sw/source/ui/utlui/glbltree.cxx1523
-rw-r--r--sw/source/ui/utlui/gloslst.cxx514
-rw-r--r--sw/source/ui/utlui/gloslst.hrc38
-rw-r--r--sw/source/ui/utlui/gloslst.src109
-rw-r--r--sw/source/ui/utlui/initui.cxx306
-rw-r--r--sw/source/ui/utlui/initui.hrc66
-rw-r--r--sw/source/ui/utlui/initui.src519
-rw-r--r--sw/source/ui/utlui/makefile.mk79
-rw-r--r--sw/source/ui/utlui/navicfg.cxx141
-rw-r--r--sw/source/ui/utlui/navipi.cxx1552
-rw-r--r--sw/source/ui/utlui/navipi.hrc91
-rw-r--r--sw/source/ui/utlui/navipi.src536
-rw-r--r--sw/source/ui/utlui/numfmtlb.cxx549
-rw-r--r--sw/source/ui/utlui/poolfmt.src745
-rw-r--r--sw/source/ui/utlui/prcntfld.cxx370
-rw-r--r--sw/source/ui/utlui/shdwcrsr.cxx135
-rw-r--r--sw/source/ui/utlui/swrenamexnameddlg.cxx143
-rw-r--r--sw/source/ui/utlui/textcontrolcombo.cxx113
-rw-r--r--sw/source/ui/utlui/tmplctrl.cxx174
-rw-r--r--sw/source/ui/utlui/uiitems.cxx324
-rw-r--r--sw/source/ui/utlui/uitool.cxx774
-rw-r--r--sw/source/ui/utlui/unotools.cxx522
-rw-r--r--sw/source/ui/utlui/unotools.hrc41
-rw-r--r--sw/source/ui/utlui/unotools.src131
-rw-r--r--sw/source/ui/utlui/utlui.src478
-rw-r--r--sw/source/ui/utlui/viewlayoutctrl.cxx209
-rw-r--r--sw/source/ui/utlui/zoomctrl.cxx99
-rw-r--r--sw/source/ui/vba/makefile.mk108
-rw-r--r--sw/source/ui/vba/service.cxx79
-rw-r--r--sw/source/ui/vba/vbaaddin.cxx104
-rw-r--r--sw/source/ui/vba/vbaaddin.hxx59
-rw-r--r--sw/source/ui/vba/vbaaddins.cxx107
-rw-r--r--sw/source/ui/vba/vbaaddins.hxx52
-rw-r--r--sw/source/ui/vba/vbaapplication.cxx203
-rw-r--r--sw/source/ui/vba/vbaapplication.hxx74
-rw-r--r--sw/source/ui/vba/vbaautotextentry.cxx126
-rw-r--r--sw/source/ui/vba/vbaautotextentry.hxx80
-rw-r--r--sw/source/ui/vba/vbabookmark.cxx109
-rw-r--r--sw/source/ui/vba/vbabookmark.hxx65
-rw-r--r--sw/source/ui/vba/vbabookmarks.cxx236
-rw-r--r--sw/source/ui/vba/vbabookmarks.hxx75
-rw-r--r--sw/source/ui/vba/vbaborders.cxx378
-rw-r--r--sw/source/ui/vba/vbaborders.hxx63
-rw-r--r--sw/source/ui/vba/vbadialog.cxx78
-rw-r--r--sw/source/ui/vba/vbadialog.hxx50
-rw-r--r--sw/source/ui/vba/vbadialogs.cxx61
-rw-r--r--sw/source/ui/vba/vbadialogs.hxx53
-rw-r--r--sw/source/ui/vba/vbadocument.cxx381
-rw-r--r--sw/source/ui/vba/vbadocument.hxx80
-rw-r--r--sw/source/ui/vba/vbadocumentproperties.cxx764
-rw-r--r--sw/source/ui/vba/vbadocumentproperties.hxx67
-rw-r--r--sw/source/ui/vba/vbadocuments.cxx197
-rw-r--r--sw/source/ui/vba/vbadocuments.hxx66
-rwxr-xr-xsw/source/ui/vba/vbaeventshelper.cxx108
-rwxr-xr-xsw/source/ui/vba/vbaeventshelper.hxx54
-rw-r--r--sw/source/ui/vba/vbafield.cxx478
-rw-r--r--sw/source/ui/vba/vbafield.hxx77
-rw-r--r--sw/source/ui/vba/vbafind.cxx428
-rw-r--r--sw/source/ui/vba/vbafind.hxx103
-rw-r--r--sw/source/ui/vba/vbafont.cxx216
-rw-r--r--sw/source/ui/vba/vbafont.hxx31
-rw-r--r--sw/source/ui/vba/vbaglobals.cxx193
-rw-r--r--sw/source/ui/vba/vbaglobals.hxx80
-rw-r--r--sw/source/ui/vba/vbaheaderfooter.cxx111
-rw-r--r--sw/source/ui/vba/vbaheaderfooter.hxx60
-rw-r--r--sw/source/ui/vba/vbaheaderfooterhelper.cxx176
-rw-r--r--sw/source/ui/vba/vbaheaderfooterhelper.hxx51
-rw-r--r--sw/source/ui/vba/vbainformationhelper.cxx68
-rw-r--r--sw/source/ui/vba/vbainformationhelper.hxx43
-rw-r--r--sw/source/ui/vba/vbaoptions.cxx284
-rw-r--r--sw/source/ui/vba/vbaoptions.hxx87
-rw-r--r--sw/source/ui/vba/vbapagesetup.cxx272
-rw-r--r--sw/source/ui/vba/vbapagesetup.hxx67
-rw-r--r--sw/source/ui/vba/vbapalette.cxx75
-rw-r--r--sw/source/ui/vba/vbapalette.hxx15
-rw-r--r--sw/source/ui/vba/vbapane.cxx76
-rw-r--r--sw/source/ui/vba/vbapane.hxx54
-rw-r--r--sw/source/ui/vba/vbapanes.cxx124
-rw-r--r--sw/source/ui/vba/vbapanes.hxx57
-rw-r--r--sw/source/ui/vba/vbaparagraph.cxx174
-rw-r--r--sw/source/ui/vba/vbaparagraph.hxx81
-rw-r--r--sw/source/ui/vba/vbaparagraphformat.cxx573
-rw-r--r--sw/source/ui/vba/vbaparagraphformat.hxx95
-rw-r--r--sw/source/ui/vba/vbarange.cxx345
-rw-r--r--sw/source/ui/vba/vbarange.hxx92
-rw-r--r--sw/source/ui/vba/vbarangehelper.cxx171
-rw-r--r--sw/source/ui/vba/vbarangehelper.hxx43
-rw-r--r--sw/source/ui/vba/vbareplacement.cxx71
-rw-r--r--sw/source/ui/vba/vbareplacement.hxx54
-rw-r--r--sw/source/ui/vba/vbasection.cxx87
-rw-r--r--sw/source/ui/vba/vbasection.hxx59
-rw-r--r--sw/source/ui/vba/vbasections.cxx186
-rw-r--r--sw/source/ui/vba/vbasections.hxx59
-rw-r--r--sw/source/ui/vba/vbaselection.cxx679
-rw-r--r--sw/source/ui/vba/vbaselection.hxx105
-rw-r--r--sw/source/ui/vba/vbastyle.cxx149
-rw-r--r--sw/source/ui/vba/vbastyle.hxx67
-rw-r--r--sw/source/ui/vba/vbastyles.cxx377
-rw-r--r--sw/source/ui/vba/vbastyles.hxx51
-rw-r--r--sw/source/ui/vba/vbasystem.cxx187
-rw-r--r--sw/source/ui/vba/vbasystem.hxx71
-rw-r--r--sw/source/ui/vba/vbatable.cxx97
-rw-r--r--sw/source/ui/vba/vbatable.hxx28
-rw-r--r--sw/source/ui/vba/vbatables.cxx131
-rw-r--r--sw/source/ui/vba/vbatables.hxx28
-rw-r--r--sw/source/ui/vba/vbatemplate.cxx103
-rw-r--r--sw/source/ui/vba/vbatemplate.hxx52
-rw-r--r--sw/source/ui/vba/vbavariable.cxx105
-rw-r--r--sw/source/ui/vba/vbavariable.hxx59
-rw-r--r--sw/source/ui/vba/vbavariables.cxx102
-rw-r--r--sw/source/ui/vba/vbavariables.hxx61
-rw-r--r--sw/source/ui/vba/vbaview.cxx422
-rw-r--r--sw/source/ui/vba/vbaview.hxx68
-rw-r--r--sw/source/ui/vba/vbawindow.cxx108
-rw-r--r--sw/source/ui/vba/vbawindow.hxx57
-rw-r--r--sw/source/ui/vba/vbawrapformat.cxx252
-rw-r--r--sw/source/ui/vba/vbawrapformat.hxx69
-rw-r--r--sw/source/ui/vba/wordvbahelper.cxx92
-rw-r--r--sw/source/ui/vba/wordvbahelper.hxx54
-rw-r--r--sw/source/ui/web/makefile.mk59
-rw-r--r--sw/source/ui/web/wdocsh.cxx114
-rw-r--r--sw/source/ui/web/web.src93
-rw-r--r--sw/source/ui/web/wformsh.cxx71
-rw-r--r--sw/source/ui/web/wfrmsh.cxx95
-rw-r--r--sw/source/ui/web/wgrfsh.cxx74
-rw-r--r--sw/source/ui/web/wlistsh.cxx67
-rw-r--r--sw/source/ui/web/wolesh.cxx68
-rw-r--r--sw/source/ui/web/wtabsh.cxx76
-rw-r--r--sw/source/ui/web/wtextsh.cxx99
-rw-r--r--sw/source/ui/web/wview.cxx337
-rw-r--r--sw/source/ui/wrtsh/delete.cxx570
-rw-r--r--sw/source/ui/wrtsh/makefile.mk62
-rw-r--r--sw/source/ui/wrtsh/move.cxx691
-rw-r--r--sw/source/ui/wrtsh/select.cxx1072
-rw-r--r--sw/source/ui/wrtsh/wrtsh.hrc48
-rw-r--r--sw/source/ui/wrtsh/wrtsh.src52
-rw-r--r--sw/source/ui/wrtsh/wrtsh1.cxx1866
-rw-r--r--sw/source/ui/wrtsh/wrtsh2.cxx498
-rw-r--r--sw/source/ui/wrtsh/wrtsh3.cxx247
-rw-r--r--sw/source/ui/wrtsh/wrtsh4.cxx300
-rw-r--r--sw/source/ui/wrtsh/wrtundo.cxx182
-rw-r--r--sw/uiconfig/layout/delzip1
-rw-r--r--sw/uiconfig/layout/layout.mk33
-rw-r--r--sw/uiconfig/layout/makefile.mk46
-rw-r--r--sw/uiconfig/layout/wordcount.xml50
-rw-r--r--sw/uiconfig/sglobal/menubar/menubar.xml461
-rw-r--r--sw/uiconfig/sglobal/statusbar/statusbar.xml15
-rw-r--r--sw/uiconfig/sglobal/toolbar/alignmentbar.xml11
-rw-r--r--sw/uiconfig/sglobal/toolbar/arrowshapes.xml34
-rw-r--r--sw/uiconfig/sglobal/toolbar/basicshapes.xml29
-rw-r--r--sw/uiconfig/sglobal/toolbar/bezierobjectbar.xml20
-rw-r--r--sw/uiconfig/sglobal/toolbar/calloutshapes.xml11
-rw-r--r--sw/uiconfig/sglobal/toolbar/colorbar.xml15
-rw-r--r--sw/uiconfig/sglobal/toolbar/drawbar.xml34
-rw-r--r--sw/uiconfig/sglobal/toolbar/drawingobjectbar.xml40
-rw-r--r--sw/uiconfig/sglobal/toolbar/drawtextobjectbar.xml34
-rw-r--r--sw/uiconfig/sglobal/toolbar/extrusionobjectbar.xml16
-rw-r--r--sw/uiconfig/sglobal/toolbar/findbar.xml8
-rw-r--r--sw/uiconfig/sglobal/toolbar/flowchartshapes.xml36
-rw-r--r--sw/uiconfig/sglobal/toolbar/fontworkobjectbar.xml11
-rw-r--r--sw/uiconfig/sglobal/toolbar/fontworkshapetype.xml38
-rw-r--r--sw/uiconfig/sglobal/toolbar/formcontrols.xml26
-rw-r--r--sw/uiconfig/sglobal/toolbar/formdesign.xml31
-rw-r--r--sw/uiconfig/sglobal/toolbar/formsfilterbar.xml8
-rw-r--r--sw/uiconfig/sglobal/toolbar/formsnavigationbar.xml32
-rw-r--r--sw/uiconfig/sglobal/toolbar/formtextobjectbar.xml28
-rw-r--r--sw/uiconfig/sglobal/toolbar/frameobjectbar.xml34
-rw-r--r--sw/uiconfig/sglobal/toolbar/fullscreenbar.xml5
-rw-r--r--sw/uiconfig/sglobal/toolbar/graffilterbar.xml17
-rw-r--r--sw/uiconfig/sglobal/toolbar/graphicobjectbar.xml18
-rw-r--r--sw/uiconfig/sglobal/toolbar/insertbar.xml30
-rw-r--r--sw/uiconfig/sglobal/toolbar/insertobjectbar.xml7
-rw-r--r--sw/uiconfig/sglobal/toolbar/mediaobjectbar.xml7
-rw-r--r--sw/uiconfig/sglobal/toolbar/moreformcontrols.xml23
-rw-r--r--sw/uiconfig/sglobal/toolbar/numobjectbar.xml23
-rw-r--r--sw/uiconfig/sglobal/toolbar/oleobjectbar.xml30
-rw-r--r--sw/uiconfig/sglobal/toolbar/optimizetablebar.xml8
-rw-r--r--sw/uiconfig/sglobal/toolbar/previewobjectbar.xml24
-rw-r--r--sw/uiconfig/sglobal/toolbar/standardbar.xml42
-rw-r--r--sw/uiconfig/sglobal/toolbar/starshapes.xml17
-rw-r--r--sw/uiconfig/sglobal/toolbar/symbolshapes.xml24
-rw-r--r--sw/uiconfig/sglobal/toolbar/tableobjectbar.xml35
-rw-r--r--sw/uiconfig/sglobal/toolbar/textobjectbar.xml44
-rw-r--r--sw/uiconfig/sglobal/toolbar/toolbar.xml13
-rw-r--r--sw/uiconfig/sglobal/toolbar/viewerbar.xml18
-rw-r--r--sw/uiconfig/sweb/menubar/menubar.xml390
-rw-r--r--sw/uiconfig/sweb/statusbar/statusbar.xml14
-rw-r--r--sw/uiconfig/sweb/toolbar/arrowshapes.xml34
-rw-r--r--sw/uiconfig/sweb/toolbar/basicshapes.xml29
-rw-r--r--sw/uiconfig/sweb/toolbar/bezierobjectbar.xml20
-rw-r--r--sw/uiconfig/sweb/toolbar/calloutshapes.xml11
-rw-r--r--sw/uiconfig/sweb/toolbar/colorbar.xml17
-rw-r--r--sw/uiconfig/sweb/toolbar/drawingobjectbar.xml39
-rw-r--r--sw/uiconfig/sweb/toolbar/drawtextobjectbar.xml34
-rw-r--r--sw/uiconfig/sweb/toolbar/extrusionobjectbar.xml16
-rw-r--r--sw/uiconfig/sweb/toolbar/findbar.xml8
-rw-r--r--sw/uiconfig/sweb/toolbar/flowchartshapes.xml36
-rw-r--r--sw/uiconfig/sweb/toolbar/fontworkobjectbar.xml11
-rw-r--r--sw/uiconfig/sweb/toolbar/fontworkshapetype.xml38
-rw-r--r--sw/uiconfig/sweb/toolbar/formcontrols.xml25
-rw-r--r--sw/uiconfig/sweb/toolbar/formdesign.xml31
-rw-r--r--sw/uiconfig/sweb/toolbar/formsfilterbar.xml8
-rw-r--r--sw/uiconfig/sweb/toolbar/formsnavigationbar.xml32
-rw-r--r--sw/uiconfig/sweb/toolbar/formtextobjectbar.xml28
-rw-r--r--sw/uiconfig/sweb/toolbar/frameobjectbar.xml34
-rw-r--r--sw/uiconfig/sweb/toolbar/fullscreenbar.xml5
-rw-r--r--sw/uiconfig/sweb/toolbar/graffilterbar.xml17
-rw-r--r--sw/uiconfig/sweb/toolbar/graphicobjectbar.xml26
-rw-r--r--sw/uiconfig/sweb/toolbar/insertbar.xml25
-rw-r--r--sw/uiconfig/sweb/toolbar/mediaobjectbar.xml7
-rw-r--r--sw/uiconfig/sweb/toolbar/numobjectbar.xml23
-rw-r--r--sw/uiconfig/sweb/toolbar/oleobjectbar.xml30
-rw-r--r--sw/uiconfig/sweb/toolbar/optimizetablebar.xml8
-rw-r--r--sw/uiconfig/sweb/toolbar/previewobjectbar.xml24
-rw-r--r--sw/uiconfig/sweb/toolbar/standardbar.xml45
-rw-r--r--sw/uiconfig/sweb/toolbar/starshapes.xml17
-rw-r--r--sw/uiconfig/sweb/toolbar/symbolshapes.xml24
-rw-r--r--sw/uiconfig/sweb/toolbar/tableobjectbar.xml35
-rw-r--r--sw/uiconfig/sweb/toolbar/textobjectbar.xml44
-rw-r--r--sw/uiconfig/sweb/toolbar/toolbar.xml11
-rw-r--r--sw/uiconfig/sweb/toolbar/viewerbar.xml18
-rw-r--r--sw/uiconfig/swform/menubar/menubar.xml456
-rw-r--r--sw/uiconfig/swform/statusbar/statusbar.xml14
-rw-r--r--sw/uiconfig/swform/toolbar/alignmentbar.xml11
-rw-r--r--sw/uiconfig/swform/toolbar/arrowshapes.xml34
-rw-r--r--sw/uiconfig/swform/toolbar/basicshapes.xml29
-rw-r--r--sw/uiconfig/swform/toolbar/bezierobjectbar.xml20
-rw-r--r--sw/uiconfig/swform/toolbar/calloutshapes.xml11
-rw-r--r--sw/uiconfig/swform/toolbar/colorbar.xml15
-rw-r--r--sw/uiconfig/swform/toolbar/drawbar.xml34
-rw-r--r--sw/uiconfig/swform/toolbar/drawingobjectbar.xml40
-rw-r--r--sw/uiconfig/swform/toolbar/drawtextobjectbar.xml34
-rw-r--r--sw/uiconfig/swform/toolbar/extrusionobjectbar.xml16
-rw-r--r--sw/uiconfig/swform/toolbar/flowchartshapes.xml36
-rw-r--r--sw/uiconfig/swform/toolbar/fontworkobjectbar.xml11
-rw-r--r--sw/uiconfig/swform/toolbar/fontworkshapetype.xml38
-rw-r--r--sw/uiconfig/swform/toolbar/formcontrols.xml26
-rw-r--r--sw/uiconfig/swform/toolbar/formdesign.xml33
-rw-r--r--sw/uiconfig/swform/toolbar/formsfilterbar.xml8
-rw-r--r--sw/uiconfig/swform/toolbar/formsnavigationbar.xml33
-rw-r--r--sw/uiconfig/swform/toolbar/formtextobjectbar.xml28
-rw-r--r--sw/uiconfig/swform/toolbar/frameobjectbar.xml34
-rw-r--r--sw/uiconfig/swform/toolbar/fullscreenbar.xml5
-rw-r--r--sw/uiconfig/swform/toolbar/graffilterbar.xml17
-rw-r--r--sw/uiconfig/swform/toolbar/graphicobjectbar.xml18
-rw-r--r--sw/uiconfig/swform/toolbar/insertbar.xml29
-rw-r--r--sw/uiconfig/swform/toolbar/insertobjectbar.xml7
-rw-r--r--sw/uiconfig/swform/toolbar/mediaobjectbar.xml7
-rw-r--r--sw/uiconfig/swform/toolbar/moreformcontrols.xml23
-rw-r--r--sw/uiconfig/swform/toolbar/numobjectbar.xml23
-rw-r--r--sw/uiconfig/swform/toolbar/oleobjectbar.xml30
-rw-r--r--sw/uiconfig/swform/toolbar/optimizetablebar.xml8
-rw-r--r--sw/uiconfig/swform/toolbar/previewobjectbar.xml24
-rw-r--r--sw/uiconfig/swform/toolbar/standardbar.xml42
-rw-r--r--sw/uiconfig/swform/toolbar/starshapes.xml17
-rw-r--r--sw/uiconfig/swform/toolbar/symbolshapes.xml24
-rw-r--r--sw/uiconfig/swform/toolbar/tableobjectbar.xml35
-rw-r--r--sw/uiconfig/swform/toolbar/textobjectbar.xml44
-rw-r--r--sw/uiconfig/swform/toolbar/toolbar.xml13
-rw-r--r--sw/uiconfig/swform/toolbar/viewerbar.xml18
-rw-r--r--sw/uiconfig/swreport/menubar/menubar.xml456
-rw-r--r--sw/uiconfig/swreport/statusbar/statusbar.xml14
-rw-r--r--sw/uiconfig/swreport/toolbar/alignmentbar.xml11
-rw-r--r--sw/uiconfig/swreport/toolbar/arrowshapes.xml34
-rw-r--r--sw/uiconfig/swreport/toolbar/basicshapes.xml29
-rw-r--r--sw/uiconfig/swreport/toolbar/bezierobjectbar.xml20
-rw-r--r--sw/uiconfig/swreport/toolbar/calloutshapes.xml11
-rw-r--r--sw/uiconfig/swreport/toolbar/colorbar.xml15
-rw-r--r--sw/uiconfig/swreport/toolbar/drawbar.xml34
-rw-r--r--sw/uiconfig/swreport/toolbar/drawingobjectbar.xml40
-rw-r--r--sw/uiconfig/swreport/toolbar/drawtextobjectbar.xml34
-rw-r--r--sw/uiconfig/swreport/toolbar/extrusionobjectbar.xml16
-rw-r--r--sw/uiconfig/swreport/toolbar/flowchartshapes.xml36
-rw-r--r--sw/uiconfig/swreport/toolbar/fontworkobjectbar.xml11
-rw-r--r--sw/uiconfig/swreport/toolbar/fontworkshapetype.xml38
-rw-r--r--sw/uiconfig/swreport/toolbar/formcontrols.xml26
-rw-r--r--sw/uiconfig/swreport/toolbar/formdesign.xml34
-rw-r--r--sw/uiconfig/swreport/toolbar/formsfilterbar.xml8
-rw-r--r--sw/uiconfig/swreport/toolbar/formsnavigationbar.xml32
-rw-r--r--sw/uiconfig/swreport/toolbar/formtextobjectbar.xml28
-rw-r--r--sw/uiconfig/swreport/toolbar/frameobjectbar.xml34
-rw-r--r--sw/uiconfig/swreport/toolbar/fullscreenbar.xml5
-rw-r--r--sw/uiconfig/swreport/toolbar/graffilterbar.xml17
-rw-r--r--sw/uiconfig/swreport/toolbar/graphicobjectbar.xml18
-rw-r--r--sw/uiconfig/swreport/toolbar/insertbar.xml29
-rw-r--r--sw/uiconfig/swreport/toolbar/insertobjectbar.xml7
-rw-r--r--sw/uiconfig/swreport/toolbar/mediaobjectbar.xml7
-rw-r--r--sw/uiconfig/swreport/toolbar/moreformcontrols.xml23
-rw-r--r--sw/uiconfig/swreport/toolbar/numobjectbar.xml23
-rw-r--r--sw/uiconfig/swreport/toolbar/oleobjectbar.xml30
-rw-r--r--sw/uiconfig/swreport/toolbar/optimizetablebar.xml8
-rw-r--r--sw/uiconfig/swreport/toolbar/previewobjectbar.xml24
-rw-r--r--sw/uiconfig/swreport/toolbar/standardbar.xml42
-rw-r--r--sw/uiconfig/swreport/toolbar/starshapes.xml17
-rw-r--r--sw/uiconfig/swreport/toolbar/symbolshapes.xml24
-rw-r--r--sw/uiconfig/swreport/toolbar/tableobjectbar.xml35
-rw-r--r--sw/uiconfig/swreport/toolbar/textobjectbar.xml44
-rw-r--r--sw/uiconfig/swreport/toolbar/toolbar.xml13
-rw-r--r--sw/uiconfig/swreport/toolbar/viewerbar.xml18
-rw-r--r--sw/uiconfig/swriter/menubar/menubar.xml464
-rw-r--r--sw/uiconfig/swriter/statusbar/statusbar.xml15
-rw-r--r--sw/uiconfig/swriter/toolbar/alignmentbar.xml11
-rw-r--r--sw/uiconfig/swriter/toolbar/arrowshapes.xml34
-rw-r--r--sw/uiconfig/swriter/toolbar/basicshapes.xml29
-rw-r--r--sw/uiconfig/swriter/toolbar/bezierobjectbar.xml20
-rw-r--r--sw/uiconfig/swriter/toolbar/calloutshapes.xml11
-rw-r--r--sw/uiconfig/swriter/toolbar/colorbar.xml15
-rw-r--r--sw/uiconfig/swriter/toolbar/drawbar.xml34
-rw-r--r--sw/uiconfig/swriter/toolbar/drawingobjectbar.xml40
-rw-r--r--sw/uiconfig/swriter/toolbar/drawtextobjectbar.xml34
-rw-r--r--sw/uiconfig/swriter/toolbar/extrusionobjectbar.xml16
-rw-r--r--sw/uiconfig/swriter/toolbar/findbar.xml8
-rw-r--r--sw/uiconfig/swriter/toolbar/flowchartshapes.xml36
-rw-r--r--sw/uiconfig/swriter/toolbar/fontworkobjectbar.xml11
-rw-r--r--sw/uiconfig/swriter/toolbar/fontworkshapetype.xml38
-rw-r--r--sw/uiconfig/swriter/toolbar/formcontrols.xml26
-rw-r--r--sw/uiconfig/swriter/toolbar/formdesign.xml33
-rw-r--r--sw/uiconfig/swriter/toolbar/formsfilterbar.xml8
-rw-r--r--sw/uiconfig/swriter/toolbar/formsnavigationbar.xml33
-rw-r--r--sw/uiconfig/swriter/toolbar/formtextobjectbar.xml28
-rw-r--r--sw/uiconfig/swriter/toolbar/frameobjectbar.xml34
-rw-r--r--sw/uiconfig/swriter/toolbar/fullscreenbar.xml5
-rw-r--r--sw/uiconfig/swriter/toolbar/graffilterbar.xml17
-rw-r--r--sw/uiconfig/swriter/toolbar/graphicobjectbar.xml18
-rw-r--r--sw/uiconfig/swriter/toolbar/insertbar.xml31
-rw-r--r--sw/uiconfig/swriter/toolbar/mediaobjectbar.xml7
-rw-r--r--sw/uiconfig/swriter/toolbar/moreformcontrols.xml23
-rw-r--r--sw/uiconfig/swriter/toolbar/numobjectbar.xml23
-rw-r--r--sw/uiconfig/swriter/toolbar/oleobjectbar.xml30
-rw-r--r--sw/uiconfig/swriter/toolbar/optimizetablebar.xml8
-rw-r--r--sw/uiconfig/swriter/toolbar/previewobjectbar.xml24
-rw-r--r--sw/uiconfig/swriter/toolbar/standardbar.xml42
-rw-r--r--sw/uiconfig/swriter/toolbar/starshapes.xml17
-rw-r--r--sw/uiconfig/swriter/toolbar/symbolshapes.xml24
-rw-r--r--sw/uiconfig/swriter/toolbar/tableobjectbar.xml35
-rw-r--r--sw/uiconfig/swriter/toolbar/textobjectbar.xml44
-rw-r--r--sw/uiconfig/swriter/toolbar/toolbar.xml13
-rw-r--r--sw/uiconfig/swriter/toolbar/viewerbar.xml18
-rw-r--r--sw/uiconfig/swxform/menubar/menubar.xml457
-rw-r--r--sw/uiconfig/swxform/statusbar/statusbar.xml15
-rw-r--r--sw/uiconfig/swxform/toolbar/alignmentbar.xml11
-rw-r--r--sw/uiconfig/swxform/toolbar/arrowshapes.xml34
-rw-r--r--sw/uiconfig/swxform/toolbar/basicshapes.xml29
-rw-r--r--sw/uiconfig/swxform/toolbar/bezierobjectbar.xml20
-rw-r--r--sw/uiconfig/swxform/toolbar/calloutshapes.xml11
-rw-r--r--sw/uiconfig/swxform/toolbar/colorbar.xml15
-rw-r--r--sw/uiconfig/swxform/toolbar/drawbar.xml34
-rw-r--r--sw/uiconfig/swxform/toolbar/drawingobjectbar.xml40
-rw-r--r--sw/uiconfig/swxform/toolbar/drawtextobjectbar.xml34
-rw-r--r--sw/uiconfig/swxform/toolbar/extrusionobjectbar.xml16
-rw-r--r--sw/uiconfig/swxform/toolbar/findbar.xml8
-rw-r--r--sw/uiconfig/swxform/toolbar/flowchartshapes.xml36
-rw-r--r--sw/uiconfig/swxform/toolbar/fontworkobjectbar.xml11
-rw-r--r--sw/uiconfig/swxform/toolbar/fontworkshapetype.xml38
-rw-r--r--sw/uiconfig/swxform/toolbar/formcontrols.xml23
-rw-r--r--sw/uiconfig/swxform/toolbar/formdesign.xml33
-rw-r--r--sw/uiconfig/swxform/toolbar/formsfilterbar.xml8
-rw-r--r--sw/uiconfig/swxform/toolbar/formsnavigationbar.xml33
-rw-r--r--sw/uiconfig/swxform/toolbar/formtextobjectbar.xml28
-rw-r--r--sw/uiconfig/swxform/toolbar/frameobjectbar.xml34
-rw-r--r--sw/uiconfig/swxform/toolbar/fullscreenbar.xml5
-rw-r--r--sw/uiconfig/swxform/toolbar/graffilterbar.xml17
-rw-r--r--sw/uiconfig/swxform/toolbar/graphicobjectbar.xml18
-rw-r--r--sw/uiconfig/swxform/toolbar/insertbar.xml29
-rw-r--r--sw/uiconfig/swxform/toolbar/insertobjectbar.xml7
-rw-r--r--sw/uiconfig/swxform/toolbar/mediaobjectbar.xml7
-rw-r--r--sw/uiconfig/swxform/toolbar/moreformcontrols.xml12
-rw-r--r--sw/uiconfig/swxform/toolbar/numobjectbar.xml23
-rw-r--r--sw/uiconfig/swxform/toolbar/oleobjectbar.xml30
-rw-r--r--sw/uiconfig/swxform/toolbar/optimizetablebar.xml8
-rw-r--r--sw/uiconfig/swxform/toolbar/previewobjectbar.xml24
-rw-r--r--sw/uiconfig/swxform/toolbar/standardbar.xml42
-rw-r--r--sw/uiconfig/swxform/toolbar/starshapes.xml17
-rw-r--r--sw/uiconfig/swxform/toolbar/symbolshapes.xml24
-rw-r--r--sw/uiconfig/swxform/toolbar/tableobjectbar.xml35
-rw-r--r--sw/uiconfig/swxform/toolbar/textobjectbar.xml44
-rw-r--r--sw/uiconfig/swxform/toolbar/toolbar.xml13
-rw-r--r--sw/uiconfig/swxform/toolbar/viewerbar.xml18
-rw-r--r--sw/util/hidother.hrc31
-rw-r--r--sw/util/hidother.src374
-rw-r--r--sw/util/makefile.mk396
-rwxr-xr-xsw/util/msword.map11
-rw-r--r--sw/util/sw.component104
-rw-r--r--sw/util/sw.flt136
-rw-r--r--sw/util/swd.component36
-rw-r--r--sw/util/swui.map6
-rw-r--r--sw/util/vbaswobj.component43
-rw-r--r--sw/xml/writer.xml1244
-rw-r--r--swext/makefile.pmk37
-rw-r--r--swext/mediawiki/build.xml229
-rw-r--r--swext/mediawiki/dialogs/EditSetting.xdl47
-rw-r--r--swext/mediawiki/dialogs/Module1.xba33
-rw-r--r--swext/mediawiki/dialogs/SendToMediaWiki.xdl54
-rw-r--r--swext/mediawiki/dialogs/Settings.xdl46
-rw-r--r--swext/mediawiki/dialogs/dialog.xlb33
-rw-r--r--swext/mediawiki/dialogs/script.xlb31
-rwxr-xr-xswext/mediawiki/help/component.txt1
-rw-r--r--swext/mediawiki/help/makefile.mk87
-rw-r--r--swext/mediawiki/help/wiki.xhp156
-rw-r--r--swext/mediawiki/help/wikiaccount.xhp56
-rw-r--r--swext/mediawiki/help/wikiformats.xhp72
-rw-r--r--swext/mediawiki/help/wikisend.xhp60
-rw-r--r--swext/mediawiki/help/wikisettings.xhp54
-rw-r--r--swext/mediawiki/makefile.mk69
-rw-r--r--swext/mediawiki/src/THIRDPARTYLICENSEREADME.html148
-rw-r--r--swext/mediawiki/src/com/sun/star/wiki/EditPageParser.java193
-rw-r--r--swext/mediawiki/src/com/sun/star/wiki/Helper.java1153
-rw-r--r--swext/mediawiki/src/com/sun/star/wiki/MainThreadDialogExecutor.java176
-rw-r--r--swext/mediawiki/src/com/sun/star/wiki/Settings.java347
-rw-r--r--swext/mediawiki/src/com/sun/star/wiki/WikiArticle.java295
-rw-r--r--swext/mediawiki/src/com/sun/star/wiki/WikiCancelException.java33
-rw-r--r--swext/mediawiki/src/com/sun/star/wiki/WikiDialog.java325
-rw-r--r--swext/mediawiki/src/com/sun/star/wiki/WikiEditSettingDialog.java429
-rw-r--r--swext/mediawiki/src/com/sun/star/wiki/WikiEditorImpl.java476
-rw-r--r--swext/mediawiki/src/com/sun/star/wiki/WikiOptionsEventHandlerImpl.java303
-rw-r--r--swext/mediawiki/src/com/sun/star/wiki/WikiPropDialog.java388
-rw-r--r--swext/mediawiki/src/com/sun/star/wiki/WikiProtocolSocketFactory.java168
-rw-r--r--swext/mediawiki/src/description.xml19
-rw-r--r--swext/mediawiki/src/filter/mediawiki.ottbin0 -> 6304 bytes-rwxr-xr-xswext/mediawiki/src/filter/odt2mediawiki.xsl1567
-rw-r--r--swext/mediawiki/src/makefile.mk70
-rw-r--r--swext/mediawiki/src/registry/data/org/openoffice/Office/Addons.xcu67
-rw-r--r--swext/mediawiki/src/registry/data/org/openoffice/Office/Custom/WikiExtension.xcu153
-rw-r--r--swext/mediawiki/src/registry/data/org/openoffice/Office/Custom/makefile.mk48
-rw-r--r--swext/mediawiki/src/registry/data/org/openoffice/Office/OptionsDialog.xcu50
-rw-r--r--swext/mediawiki/src/registry/data/org/openoffice/Office/Paths.xcu36
-rw-r--r--swext/mediawiki/src/registry/data/org/openoffice/Office/ProtocolHandler.xcu36
-rw-r--r--swext/mediawiki/src/registry/data/org/openoffice/Office/makefile.mk46
-rw-r--r--swext/mediawiki/src/registry/data/org/openoffice/TypeDetection/Filter.xcu56
-rw-r--r--swext/mediawiki/src/registry/data/org/openoffice/TypeDetection/Types.xcu44
-rw-r--r--swext/mediawiki/src/registry/data/org/openoffice/TypeDetection/makefile.mk46
-rw-r--r--swext/mediawiki/src/registry/schema/org/openoffice/Office/Custom/WikiExtension.xcs197
-rw-r--r--swext/mediawiki/src/registry/schema/org/openoffice/Office/Custom/makefile.mk46
-rw-r--r--swext/mediawiki/src/uno-extension-manifest.xml53
-rw-r--r--swext/prj/build.lst10
-rw-r--r--swext/prj/d.lst4
-rw-r--r--sysui/desktop/cleanversion/makefile.mk50
-rw-r--r--sysui/desktop/debian/control6
-rw-r--r--sysui/desktop/debian/makefile.mk96
-rw-r--r--sysui/desktop/debian/openoffice.org-debian-menus42
-rw-r--r--sysui/desktop/debian/postinst157
-rw-r--r--sysui/desktop/debian/postrm26
-rw-r--r--sysui/desktop/debian/prerm10
-rw-r--r--sysui/desktop/freedesktop/freedesktop-menus.spec337
-rw-r--r--sysui/desktop/freedesktop/makefile.mk59
-rw-r--r--sysui/desktop/icons/base.icnsbin0 -> 56259 bytes-rw-r--r--sysui/desktop/icons/calc.icnsbin0 -> 51959 bytes-rw-r--r--sysui/desktop/icons/configuration.icnsbin0 -> 50975 bytes-rw-r--r--sysui/desktop/icons/database.icnsbin0 -> 48416 bytes-rw-r--r--sysui/desktop/icons/database.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/draw.icnsbin0 -> 54777 bytes-rw-r--r--sysui/desktop/icons/drawing-template.icnsbin0 -> 48006 bytes-rw-r--r--sysui/desktop/icons/drawing-template.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/drawing.icnsbin0 -> 46878 bytes-rw-r--r--sysui/desktop/icons/drawing.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/empty-document.icnsbin0 -> 37502 bytes-rw-r--r--sysui/desktop/icons/empty-document.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/empty-template.icnsbin0 -> 39059 bytes-rw-r--r--sysui/desktop/icons/empty-template.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/extension.icnsbin0 -> 39192 bytes-rw-r--r--sysui/desktop/icons/formula.icnsbin0 -> 41940 bytes-rw-r--r--sysui/desktop/icons/formula.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/hicolor/128x128/apps/base.pngbin0 -> 17674 bytes-rw-r--r--sysui/desktop/icons/hicolor/128x128/apps/calc.pngbin0 -> 15582 bytes-rwxr-xr-xsysui/desktop/icons/hicolor/128x128/apps/draw.pngbin0 -> 16479 bytes-rwxr-xr-xsysui/desktop/icons/hicolor/128x128/apps/impress.pngbin0 -> 17785 bytes-rwxr-xr-xsysui/desktop/icons/hicolor/128x128/apps/main.pngbin0 -> 15601 bytes-rwxr-xr-xsysui/desktop/icons/hicolor/128x128/apps/math.pngbin0 -> 15536 bytes-rw-r--r--sysui/desktop/icons/hicolor/128x128/apps/startcenter.pngbin0 -> 15601 bytes-rwxr-xr-xsysui/desktop/icons/hicolor/128x128/apps/writer.pngbin0 -> 14510 bytes-rw-r--r--sysui/desktop/icons/hicolor/128x128/mimetypes/database.pngbin0 -> 5874 bytes-rw-r--r--sysui/desktop/icons/hicolor/128x128/mimetypes/drawing-template.pngbin0 -> 6217 bytes-rw-r--r--sysui/desktop/icons/hicolor/128x128/mimetypes/drawing.pngbin0 -> 6387 bytes-rw-r--r--sysui/desktop/icons/hicolor/128x128/mimetypes/formula.pngbin0 -> 4353 bytes-rw-r--r--sysui/desktop/icons/hicolor/128x128/mimetypes/master-document.pngbin0 -> 2662 bytes-rwxr-xr-xsysui/desktop/icons/hicolor/128x128/mimetypes/oasis-database.pngbin0 -> 6845 bytes-rwxr-xr-xsysui/desktop/icons/hicolor/128x128/mimetypes/oasis-drawing-template.pngbin0 -> 7206 bytes-rwxr-xr-xsysui/desktop/icons/hicolor/128x128/mimetypes/oasis-drawing.pngbin0 -> 7373 bytes-rwxr-xr-xsysui/desktop/icons/hicolor/128x128/mimetypes/oasis-formula.pngbin0 -> 5370 bytes-rwxr-xr-xsysui/desktop/icons/hicolor/128x128/mimetypes/oasis-master-document.pngbin0 -> 3703 bytes-rwxr-xr-xsysui/desktop/icons/hicolor/128x128/mimetypes/oasis-presentation-template.pngbin0 -> 6193 bytes-rwxr-xr-xsysui/desktop/icons/hicolor/128x128/mimetypes/oasis-presentation.pngbin0 -> 5434 bytes-rw-r--r--sysui/desktop/icons/hicolor/128x128/mimetypes/oasis-spreadsheet-template.pngbin0 -> 5753 bytes-rw-r--r--sysui/desktop/icons/hicolor/128x128/mimetypes/oasis-spreadsheet.pngbin0 -> 4617 bytes-rwxr-xr-xsysui/desktop/icons/hicolor/128x128/mimetypes/oasis-text-template.pngbin0 -> 6763 bytes-rwxr-xr-xsysui/desktop/icons/hicolor/128x128/mimetypes/oasis-text.pngbin0 -> 6847 bytes-rwxr-xr-xsysui/desktop/icons/hicolor/128x128/mimetypes/oasis-web-template.pngbin0 -> 3493 bytes-rw-r--r--sysui/desktop/icons/hicolor/128x128/mimetypes/presentation-template.pngbin0 -> 5212 bytes-rw-r--r--sysui/desktop/icons/hicolor/128x128/mimetypes/presentation.pngbin0 -> 4459 bytes-rw-r--r--sysui/desktop/icons/hicolor/128x128/mimetypes/spreadsheet-template.pngbin0 -> 4764 bytes-rw-r--r--sysui/desktop/icons/hicolor/128x128/mimetypes/spreadsheet.pngbin0 -> 3598 bytes-rw-r--r--sysui/desktop/icons/hicolor/128x128/mimetypes/text-template.pngbin0 -> 5772 bytes-rw-r--r--sysui/desktop/icons/hicolor/128x128/mimetypes/text.pngbin0 -> 5817 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/apps/base.pngbin0 -> 869 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/apps/calc.pngbin0 -> 779 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/apps/draw.pngbin0 -> 875 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/apps/impress.pngbin0 -> 837 bytes-rwxr-xr-xsysui/desktop/icons/hicolor/16x16/apps/main.pngbin0 -> 893 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/apps/math.pngbin0 -> 791 bytes-rwxr-xr-xsysui/desktop/icons/hicolor/16x16/apps/printeradmin.pngbin0 -> 4259 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/apps/startcenter.pngbin0 -> 893 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/apps/writer.pngbin0 -> 776 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/mimetypes/database.pngbin0 -> 555 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/mimetypes/drawing-template.pngbin0 -> 522 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/mimetypes/drawing.pngbin0 -> 555 bytes-rwxr-xr-xsysui/desktop/icons/hicolor/16x16/mimetypes/extension.pngbin0 -> 557 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/mimetypes/formula.pngbin0 -> 562 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/mimetypes/master-document.pngbin0 -> 450 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/mimetypes/oasis-database.pngbin0 -> 574 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/mimetypes/oasis-drawing-template.pngbin0 -> 554 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/mimetypes/oasis-drawing.pngbin0 -> 572 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/mimetypes/oasis-formula.pngbin0 -> 580 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/mimetypes/oasis-master-document.pngbin0 -> 472 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/mimetypes/oasis-presentation-template.pngbin0 -> 532 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/mimetypes/oasis-presentation.pngbin0 -> 441 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/mimetypes/oasis-spreadsheet-template.pngbin0 -> 538 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/mimetypes/oasis-spreadsheet.pngbin0 -> 436 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/mimetypes/oasis-text-template.pngbin0 -> 444 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/mimetypes/oasis-text.pngbin0 -> 420 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/mimetypes/oasis-web-template.pngbin0 -> 436 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/mimetypes/presentation-template.pngbin0 -> 515 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/mimetypes/presentation.pngbin0 -> 425 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/mimetypes/spreadsheet-template.pngbin0 -> 513 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/mimetypes/spreadsheet.pngbin0 -> 412 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/mimetypes/text-template.pngbin0 -> 413 bytes-rw-r--r--sysui/desktop/icons/hicolor/16x16/mimetypes/text.pngbin0 -> 392 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/apps/base.pngbin0 -> 2594 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/apps/calc.pngbin0 -> 2258 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/apps/draw.pngbin0 -> 2491 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/apps/impress.pngbin0 -> 2576 bytes-rwxr-xr-xsysui/desktop/icons/hicolor/32x32/apps/main.pngbin0 -> 2429 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/apps/math.pngbin0 -> 2371 bytes-rwxr-xr-xsysui/desktop/icons/hicolor/32x32/apps/printeradmin.pngbin0 -> 5595 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/apps/startcenter.pngbin0 -> 2429 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/apps/writer.pngbin0 -> 2158 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/mimetypes/database.pngbin0 -> 1319 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/mimetypes/drawing-template.pngbin0 -> 1307 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/mimetypes/drawing.pngbin0 -> 1363 bytes-rwxr-xr-xsysui/desktop/icons/hicolor/32x32/mimetypes/extension.pngbin0 -> 1301 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/mimetypes/formula.pngbin0 -> 1172 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/mimetypes/master-document.pngbin0 -> 909 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/mimetypes/oasis-database.pngbin0 -> 1497 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/mimetypes/oasis-drawing-template.pngbin0 -> 1506 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/mimetypes/oasis-drawing.pngbin0 -> 1548 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/mimetypes/oasis-formula.pngbin0 -> 1346 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/mimetypes/oasis-master-document.pngbin0 -> 1110 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/mimetypes/oasis-presentation-template.pngbin0 -> 1370 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/mimetypes/oasis-presentation.pngbin0 -> 1180 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/mimetypes/oasis-spreadsheet-template.pngbin0 -> 1130 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/mimetypes/oasis-spreadsheet.pngbin0 -> 917 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/mimetypes/oasis-text-template.pngbin0 -> 1153 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/mimetypes/oasis-text.pngbin0 -> 1106 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/mimetypes/oasis-web-template.pngbin0 -> 966 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/mimetypes/presentation-template.pngbin0 -> 1166 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/mimetypes/presentation.pngbin0 -> 982 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/mimetypes/spreadsheet-template.pngbin0 -> 919 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/mimetypes/spreadsheet.pngbin0 -> 692 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/mimetypes/text-template.pngbin0 -> 941 bytes-rw-r--r--sysui/desktop/icons/hicolor/32x32/mimetypes/text.pngbin0 -> 903 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/apps/base.pngbin0 -> 4740 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/apps/calc.pngbin0 -> 4298 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/apps/draw.pngbin0 -> 4415 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/apps/impress.pngbin0 -> 4672 bytes-rwxr-xr-xsysui/desktop/icons/hicolor/48x48/apps/main.pngbin0 -> 4184 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/apps/math.pngbin0 -> 4263 bytes-rwxr-xr-xsysui/desktop/icons/hicolor/48x48/apps/printeradmin.pngbin0 -> 7337 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/apps/startcenter.pngbin0 -> 4184 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/apps/writer.pngbin0 -> 3983 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/mimetypes/database.pngbin0 -> 1862 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/mimetypes/drawing-template.pngbin0 -> 1923 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/mimetypes/drawing.pngbin0 -> 1962 bytes-rwxr-xr-xsysui/desktop/icons/hicolor/48x48/mimetypes/extension.pngbin0 -> 2269 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/mimetypes/formula.pngbin0 -> 1589 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/mimetypes/master-document.pngbin0 -> 1160 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/mimetypes/oasis-database.pngbin0 -> 2430 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/mimetypes/oasis-drawing-template.pngbin0 -> 2482 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/mimetypes/oasis-drawing.pngbin0 -> 2518 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/mimetypes/oasis-formula.pngbin0 -> 2171 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/mimetypes/oasis-master-document.pngbin0 -> 1741 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/mimetypes/oasis-presentation-template.pngbin0 -> 2376 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/mimetypes/oasis-presentation.pngbin0 -> 2125 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/mimetypes/oasis-spreadsheet-template.pngbin0 -> 2400 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/mimetypes/oasis-spreadsheet.pngbin0 -> 2079 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/mimetypes/oasis-text-template.pngbin0 -> 2125 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/mimetypes/oasis-text.pngbin0 -> 2094 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/mimetypes/oasis-web-template.pngbin0 -> 1537 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/mimetypes/presentation-template.pngbin0 -> 1792 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/mimetypes/presentation.pngbin0 -> 1551 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/mimetypes/spreadsheet-template.pngbin0 -> 1829 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/mimetypes/spreadsheet.pngbin0 -> 1476 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/mimetypes/text-template.pngbin0 -> 1552 bytes-rw-r--r--sysui/desktop/icons/hicolor/48x48/mimetypes/text.pngbin0 -> 1525 bytes-rw-r--r--sysui/desktop/icons/impress.icnsbin0 -> 53113 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/apps/base.pngbin0 -> 361 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/apps/calc.pngbin0 -> 383 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/apps/draw.pngbin0 -> 378 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/apps/impress.pngbin0 -> 373 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/apps/math.pngbin0 -> 392 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/apps/printeradmin.pngbin0 -> 395 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/apps/startcenter.pngbin0 -> 361 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/apps/writer.pngbin0 -> 380 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/mimetypes/database.pngbin0 -> 291 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/mimetypes/drawing-template.pngbin0 -> 348 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/mimetypes/drawing.pngbin0 -> 354 bytes-rwxr-xr-xsysui/desktop/icons/locolor/16x16/mimetypes/extension.pngbin0 -> 309 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/mimetypes/formula.pngbin0 -> 252 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/mimetypes/master-document.pngbin0 -> 310 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/mimetypes/oasis-database.pngbin0 -> 414 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/mimetypes/oasis-drawing-template.pngbin0 -> 394 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/mimetypes/oasis-drawing.pngbin0 -> 419 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/mimetypes/oasis-formula.pngbin0 -> 423 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/mimetypes/oasis-master-document.pngbin0 -> 416 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/mimetypes/oasis-presentation-template.pngbin0 -> 417 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/mimetypes/oasis-presentation.pngbin0 -> 416 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/mimetypes/oasis-spreadsheet-template.pngbin0 -> 396 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/mimetypes/oasis-spreadsheet.pngbin0 -> 395 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/mimetypes/oasis-text-template.pngbin0 -> 393 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/mimetypes/oasis-text.pngbin0 -> 397 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/mimetypes/oasis-web-template.pngbin0 -> 437 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/mimetypes/presentation-template.pngbin0 -> 303 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/mimetypes/presentation.pngbin0 -> 302 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/mimetypes/spreadsheet-template.pngbin0 -> 287 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/mimetypes/spreadsheet.pngbin0 -> 271 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/mimetypes/text-template.pngbin0 -> 240 bytes-rw-r--r--sysui/desktop/icons/locolor/16x16/mimetypes/text.pngbin0 -> 245 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/apps/base.pngbin0 -> 611 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/apps/calc.pngbin0 -> 629 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/apps/draw.pngbin0 -> 639 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/apps/impress.pngbin0 -> 606 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/apps/math.pngbin0 -> 616 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/apps/printeradmin.pngbin0 -> 618 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/apps/startcenter.pngbin0 -> 611 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/apps/writer.pngbin0 -> 541 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/mimetypes/database.pngbin0 -> 529 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/mimetypes/drawing-template.pngbin0 -> 1344 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/mimetypes/drawing.pngbin0 -> 1483 bytes-rwxr-xr-xsysui/desktop/icons/locolor/32x32/mimetypes/extension.pngbin0 -> 504 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/mimetypes/formula.pngbin0 -> 1349 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/mimetypes/master-document.pngbin0 -> 1559 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/mimetypes/oasis-database.pngbin0 -> 780 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/mimetypes/oasis-drawing-template.pngbin0 -> 667 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/mimetypes/oasis-drawing.pngbin0 -> 779 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/mimetypes/oasis-formula.pngbin0 -> 742 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/mimetypes/oasis-master-document.pngbin0 -> 758 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/mimetypes/oasis-presentation-template.pngbin0 -> 678 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/mimetypes/oasis-presentation.pngbin0 -> 752 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/mimetypes/oasis-spreadsheet-template.pngbin0 -> 653 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/mimetypes/oasis-spreadsheet.pngbin0 -> 774 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/mimetypes/oasis-text-template.pngbin0 -> 624 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/mimetypes/oasis-text.pngbin0 -> 702 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/mimetypes/oasis-web-template.pngbin0 -> 801 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/mimetypes/presentation-template.pngbin0 -> 1403 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/mimetypes/presentation.pngbin0 -> 1515 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/mimetypes/spreadsheet-template.pngbin0 -> 1211 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/mimetypes/spreadsheet.pngbin0 -> 1301 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/mimetypes/text-template.pngbin0 -> 1211 bytes-rw-r--r--sysui/desktop/icons/locolor/32x32/mimetypes/text.pngbin0 -> 1406 bytes-rw-r--r--sysui/desktop/icons/macro.icnsbin0 -> 53951 bytes-rwxr-xr-xsysui/desktop/icons/main.icnsbin0 -> 51889 bytes-rw-r--r--sysui/desktop/icons/makefile.mk198
-rw-r--r--sysui/desktop/icons/master-document.icnsbin0 -> 41443 bytes-rw-r--r--sysui/desktop/icons/master-document.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/math.icnsbin0 -> 52282 bytes-rw-r--r--sysui/desktop/icons/oasis-chart.icnsbin0 -> 60133 bytes-rw-r--r--sysui/desktop/icons/oasis-database.icnsbin0 -> 51503 bytes-rw-r--r--sysui/desktop/icons/oasis-database.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/oasis-drawing-template.icnsbin0 -> 51093 bytes-rw-r--r--sysui/desktop/icons/oasis-drawing-template.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/oasis-drawing.icnsbin0 -> 49965 bytes-rw-r--r--sysui/desktop/icons/oasis-drawing.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/oasis-empty-document.icnsbin0 -> 40589 bytes-rw-r--r--sysui/desktop/icons/oasis-empty-document.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/oasis-empty-template.icnsbin0 -> 42146 bytes-rw-r--r--sysui/desktop/icons/oasis-empty-template.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/oasis-formula.icnsbin0 -> 45027 bytes-rw-r--r--sysui/desktop/icons/oasis-formula.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/oasis-master-document.icnsbin0 -> 44531 bytes-rw-r--r--sysui/desktop/icons/oasis-master-document.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/oasis-presentation-template.icnsbin0 -> 47163 bytes-rw-r--r--sysui/desktop/icons/oasis-presentation-template.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/oasis-presentation.icnsbin0 -> 43638 bytes-rw-r--r--sysui/desktop/icons/oasis-presentation.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/oasis-spreadsheet-template.icnsbin0 -> 52924 bytes-rw-r--r--sysui/desktop/icons/oasis-spreadsheet-template.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/oasis-spreadsheet.icnsbin0 -> 51578 bytes-rw-r--r--sysui/desktop/icons/oasis-spreadsheet.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/oasis-text-template.icnsbin0 -> 49722 bytes-rw-r--r--sysui/desktop/icons/oasis-text-template.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/oasis-text.icnsbin0 -> 48791 bytes-rw-r--r--sysui/desktop/icons/oasis-text.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/oasis-web-template.icnsbin0 -> 42146 bytes-rw-r--r--sysui/desktop/icons/oasis-web-template.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/ooo-base-app.icobin0 -> 92854 bytes-rw-r--r--sysui/desktop/icons/ooo-base-doc.icobin0 -> 92854 bytes-rw-r--r--sysui/desktop/icons/ooo-calc-app.icobin0 -> 92854 bytes-rw-r--r--sysui/desktop/icons/ooo-calc-doc.icobin0 -> 92854 bytes-rw-r--r--sysui/desktop/icons/ooo-calc-tem.icobin0 -> 92854 bytes-rw-r--r--sysui/desktop/icons/ooo-chart-doc.icobin0 -> 25214 bytes-rw-r--r--sysui/desktop/icons/ooo-configuration.icobin0 -> 25214 bytes-rw-r--r--sysui/desktop/icons/ooo-draw-app.icobin0 -> 92854 bytes-rw-r--r--sysui/desktop/icons/ooo-draw-doc.icobin0 -> 92854 bytes-rw-r--r--sysui/desktop/icons/ooo-draw-tem.icobin0 -> 92854 bytes-rw-r--r--sysui/desktop/icons/ooo-empty-doc.icobin0 -> 25214 bytes-rw-r--r--sysui/desktop/icons/ooo-empty-tem.icobin0 -> 25214 bytes-rw-r--r--sysui/desktop/icons/ooo-image-doc.icobin0 -> 92854 bytes-rw-r--r--sysui/desktop/icons/ooo-impress-app.icobin0 -> 92854 bytes-rw-r--r--sysui/desktop/icons/ooo-impress-doc.icobin0 -> 92854 bytes-rw-r--r--sysui/desktop/icons/ooo-impress-tem.icobin0 -> 92854 bytes-rw-r--r--sysui/desktop/icons/ooo-macro-doc.icobin0 -> 92854 bytes-rw-r--r--sysui/desktop/icons/ooo-main-app.icobin0 -> 92854 bytes-rw-r--r--sysui/desktop/icons/ooo-master-doc.icobin0 -> 92854 bytes-rw-r--r--sysui/desktop/icons/ooo-math-app.icobin0 -> 92854 bytes-rw-r--r--sysui/desktop/icons/ooo-math-doc.icobin0 -> 92854 bytes-rw-r--r--sysui/desktop/icons/ooo-open.icobin0 -> 25214 bytes-rw-r--r--sysui/desktop/icons/ooo-printer.icobin0 -> 25214 bytes-rw-r--r--sysui/desktop/icons/ooo-web-doc.icobin0 -> 92854 bytes-rw-r--r--sysui/desktop/icons/ooo-writer-app.icobin0 -> 92854 bytes-rw-r--r--sysui/desktop/icons/ooo-writer-doc.icobin0 -> 92854 bytes-rw-r--r--sysui/desktop/icons/ooo-writer-tem.icobin0 -> 92854 bytes-rwxr-xr-xsysui/desktop/icons/ooo11-base-doc.icobin0 -> 10638 bytes-rwxr-xr-xsysui/desktop/icons/ooo11-calc-doc.icobin0 -> 10638 bytes-rwxr-xr-xsysui/desktop/icons/ooo11-calc-tem.icobin0 -> 10638 bytes-rwxr-xr-xsysui/desktop/icons/ooo11-chart-doc.icobin0 -> 10638 bytes-rwxr-xr-xsysui/desktop/icons/ooo11-draw-doc.icobin0 -> 10638 bytes-rwxr-xr-xsysui/desktop/icons/ooo11-draw-tem.icobin0 -> 10638 bytes-rwxr-xr-xsysui/desktop/icons/ooo11-impress-doc.icobin0 -> 10638 bytes-rwxr-xr-xsysui/desktop/icons/ooo11-impress-tem.icobin0 -> 10638 bytes-rwxr-xr-xsysui/desktop/icons/ooo11-master-doc.icobin0 -> 10638 bytes-rwxr-xr-xsysui/desktop/icons/ooo11-math-doc.icobin0 -> 10638 bytes-rwxr-xr-xsysui/desktop/icons/ooo11-writer-doc.icobin0 -> 10638 bytes-rwxr-xr-xsysui/desktop/icons/ooo11-writer-tem.icobin0 -> 10638 bytes-rwxr-xr-xsysui/desktop/icons/ooo3_base_app.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/ooo3_base_doc.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/ooo3_calc_app.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/ooo3_calc_doc.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/ooo3_calc_tem.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/ooo3_chart_doc.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/ooo3_draw_app.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/ooo3_draw_doc.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/ooo3_draw_tem.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/ooo3_empty_doc.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/ooo3_empty_tem.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/ooo3_global_doc.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/ooo3_html_doc.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/ooo3_impress_app.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/ooo3_impress_doc.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/ooo3_impress_tem.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/ooo3_macro_doc.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/ooo3_main_app.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/ooo3_math_app.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/ooo3_math_doc.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/ooo3_open.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/ooo3_writer_app.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/ooo3_writer_doc.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/ooo3_writer_tem.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/open.icnsbin0 -> 50105 bytes-rw-r--r--sysui/desktop/icons/oxt-extension.icobin0 -> 25214 bytes-rw-r--r--sysui/desktop/icons/presentation-template.icnsbin0 -> 44076 bytes-rw-r--r--sysui/desktop/icons/presentation-template.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/presentation.icnsbin0 -> 40551 bytes-rw-r--r--sysui/desktop/icons/presentation.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/printer.icnsbin0 -> 50434 bytes-rwxr-xr-xsysui/desktop/icons/so7-base-doc.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so7-calc-doc.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so7-calc-tem.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so7-chart-doc.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so7-draw-doc.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so7-draw-tem.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so7-impress-doc.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so7-impress-tem.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so7-master-doc.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so7-math-doc.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so7-writer-doc.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so7-writer-tem.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so8-base-app.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so8-base-doc.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so8-calc-app.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so8-calc-doc.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so8-calc-tem.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so8-chart-doc.icobin0 -> 10134 bytes-rwxr-xr-xsysui/desktop/icons/so8-configuration.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so8-draw-app.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so8-draw-doc.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so8-draw-tem.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so8-empty-doc.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so8-empty-tem.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so8-image-doc.icobin0 -> 10134 bytes-rwxr-xr-xsysui/desktop/icons/so8-impress-app.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so8-impress-doc.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so8-impress-tem.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so8-macro-doc.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so8-main-app.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so8-master-doc.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so8-math-app.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so8-math-doc.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so8-open.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so8-printer.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so8-web-doc.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so8-writer-app.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so8-writer-doc.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so8-writer-tem.icobin0 -> 25214 bytes-rwxr-xr-xsysui/desktop/icons/so9_base_app.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/so9_base_doc.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/so9_calc_app.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/so9_calc_doc.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/so9_calc_tem.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/so9_chart_doc.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/so9_draw_app.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/so9_draw_doc.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/so9_draw_tem.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/so9_empty_doc.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/so9_empty_tem.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/so9_global_doc.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/so9_html_doc.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/so9_impress_app.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/so9_impress_doc.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/so9_impress_tem.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/so9_macro_doc.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/so9_main_app.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/so9_math_app.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/so9_math_doc.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/so9_open.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/so9_writer_app.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/so9_writer_doc.icobin0 -> 295606 bytes-rwxr-xr-xsysui/desktop/icons/so9_writer_tem.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/spreadsheet-template.icnsbin0 -> 49837 bytes-rw-r--r--sysui/desktop/icons/spreadsheet-template.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/spreadsheet.icnsbin0 -> 48491 bytes-rw-r--r--sysui/desktop/icons/spreadsheet.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/text-template.icnsbin0 -> 46635 bytes-rw-r--r--sysui/desktop/icons/text-template.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/text.icnsbin0 -> 45704 bytes-rw-r--r--sysui/desktop/icons/text.icobin0 -> 295606 bytes-rw-r--r--sysui/desktop/icons/writer.icnsbin0 -> 49850 bytes-rw-r--r--sysui/desktop/macosx/Info.plist1408
-rw-r--r--sysui/desktop/macosx/delzip0
-rw-r--r--sysui/desktop/macosx/gen_strings.pl116
-rw-r--r--sysui/desktop/macosx/list_icons.pl84
-rw-r--r--sysui/desktop/macosx/makefile.mk88
-rw-r--r--sysui/desktop/mandriva/makefile.mk59
-rw-r--r--sysui/desktop/mandriva/mandriva-menus.spec335
-rw-r--r--sysui/desktop/menus/base.desktop12
-rw-r--r--sysui/desktop/menus/calc.desktop12
-rw-r--r--sysui/desktop/menus/draw.desktop12
-rw-r--r--sysui/desktop/menus/impress.desktop12
-rw-r--r--sysui/desktop/menus/javafilter.desktop9
-rw-r--r--sysui/desktop/menus/math.desktop12
-rw-r--r--sysui/desktop/menus/printeradmin.desktop8
-rw-r--r--sysui/desktop/menus/qstart.desktop9
-rw-r--r--sysui/desktop/menus/startcenter.desktop11
-rw-r--r--sysui/desktop/menus/writer.desktop12
-rw-r--r--sysui/desktop/mimetypes/drawing-template.desktop9
-rw-r--r--sysui/desktop/mimetypes/drawing-template.keys10
-rw-r--r--sysui/desktop/mimetypes/drawing.desktop9
-rw-r--r--sysui/desktop/mimetypes/drawing.keys10
-rw-r--r--sysui/desktop/mimetypes/extension.desktop9
-rw-r--r--sysui/desktop/mimetypes/extension.keys10
-rw-r--r--sysui/desktop/mimetypes/formula.desktop9
-rw-r--r--sysui/desktop/mimetypes/formula.keys10
-rw-r--r--sysui/desktop/mimetypes/master-document.desktop9
-rw-r--r--sysui/desktop/mimetypes/master-document.keys10
-rw-r--r--sysui/desktop/mimetypes/ms-excel-sheet-12.desktop9
-rw-r--r--sysui/desktop/mimetypes/ms-excel-sheet-12.keys10
-rw-r--r--sysui/desktop/mimetypes/ms-excel-sheet-binary-12.desktop9
-rw-r--r--sysui/desktop/mimetypes/ms-excel-sheet-binary-12.keys10
-rw-r--r--sysui/desktop/mimetypes/ms-excel-sheet.desktop9
-rw-r--r--sysui/desktop/mimetypes/ms-excel-sheet.keys10
-rw-r--r--sysui/desktop/mimetypes/ms-excel-template-12.desktop9
-rw-r--r--sysui/desktop/mimetypes/ms-excel-template-12.keys10
-rw-r--r--sysui/desktop/mimetypes/ms-powerpoint-presentation-12.desktop9
-rw-r--r--sysui/desktop/mimetypes/ms-powerpoint-presentation-12.keys10
-rw-r--r--sysui/desktop/mimetypes/ms-powerpoint-presentation.desktop9
-rw-r--r--sysui/desktop/mimetypes/ms-powerpoint-presentation.keys10
-rw-r--r--sysui/desktop/mimetypes/ms-powerpoint-template-12.desktop9
-rw-r--r--sysui/desktop/mimetypes/ms-powerpoint-template-12.keys10
-rw-r--r--sysui/desktop/mimetypes/ms-word-document-12.desktop9
-rw-r--r--sysui/desktop/mimetypes/ms-word-document-12.keys10
-rw-r--r--sysui/desktop/mimetypes/ms-word-document.desktop9
-rw-r--r--sysui/desktop/mimetypes/ms-word-document.keys10
-rw-r--r--sysui/desktop/mimetypes/ms-word-document2.desktop9
-rw-r--r--sysui/desktop/mimetypes/ms-word-document2.keys10
-rw-r--r--sysui/desktop/mimetypes/ms-word-template-12.desktop9
-rw-r--r--sysui/desktop/mimetypes/ms-word-template-12.keys10
-rw-r--r--sysui/desktop/mimetypes/oasis-database.desktop9
-rw-r--r--sysui/desktop/mimetypes/oasis-database.keys10
-rw-r--r--sysui/desktop/mimetypes/oasis-drawing-template.desktop9
-rw-r--r--sysui/desktop/mimetypes/oasis-drawing-template.keys10
-rw-r--r--sysui/desktop/mimetypes/oasis-drawing.desktop9
-rw-r--r--sysui/desktop/mimetypes/oasis-drawing.keys10
-rw-r--r--sysui/desktop/mimetypes/oasis-formula.desktop9
-rw-r--r--sysui/desktop/mimetypes/oasis-formula.keys10
-rw-r--r--sysui/desktop/mimetypes/oasis-master-document.desktop9
-rw-r--r--sysui/desktop/mimetypes/oasis-master-document.keys10
-rw-r--r--sysui/desktop/mimetypes/oasis-presentation-template.desktop9
-rw-r--r--sysui/desktop/mimetypes/oasis-presentation-template.keys10
-rw-r--r--sysui/desktop/mimetypes/oasis-presentation.desktop9
-rw-r--r--sysui/desktop/mimetypes/oasis-presentation.keys10
-rw-r--r--sysui/desktop/mimetypes/oasis-spreadsheet-template.desktop9
-rw-r--r--sysui/desktop/mimetypes/oasis-spreadsheet-template.keys10
-rw-r--r--sysui/desktop/mimetypes/oasis-spreadsheet.desktop9
-rw-r--r--sysui/desktop/mimetypes/oasis-spreadsheet.keys10
-rw-r--r--sysui/desktop/mimetypes/oasis-text-template.desktop9
-rw-r--r--sysui/desktop/mimetypes/oasis-text-template.keys9
-rw-r--r--sysui/desktop/mimetypes/oasis-text.desktop9
-rw-r--r--sysui/desktop/mimetypes/oasis-text.keys10
-rw-r--r--sysui/desktop/mimetypes/oasis-web-template.desktop9
-rw-r--r--sysui/desktop/mimetypes/oasis-web-template.keys10
-rw-r--r--sysui/desktop/mimetypes/openoffice.applications9
-rw-r--r--sysui/desktop/mimetypes/openoffice.mime83
-rw-r--r--sysui/desktop/mimetypes/openxmlformats-officedocument-presentationml-presentation.desktop9
-rw-r--r--sysui/desktop/mimetypes/openxmlformats-officedocument-presentationml-presentation.keys10
-rw-r--r--sysui/desktop/mimetypes/openxmlformats-officedocument-presentationml-template.desktop9
-rw-r--r--sysui/desktop/mimetypes/openxmlformats-officedocument-presentationml-template.keys10
-rw-r--r--sysui/desktop/mimetypes/openxmlformats-officedocument-spreadsheetml-sheet.desktop9
-rw-r--r--sysui/desktop/mimetypes/openxmlformats-officedocument-spreadsheetml-sheet.keys10
-rw-r--r--sysui/desktop/mimetypes/openxmlformats-officedocument-spreadsheetml-template.desktop9
-rw-r--r--sysui/desktop/mimetypes/openxmlformats-officedocument-spreadsheetml-template.keys10
-rw-r--r--sysui/desktop/mimetypes/openxmlformats-officedocument-wordprocessingml-document.desktop9
-rw-r--r--sysui/desktop/mimetypes/openxmlformats-officedocument-wordprocessingml-document.keys10
-rw-r--r--sysui/desktop/mimetypes/openxmlformats-officedocument-wordprocessingml-template.desktop9
-rw-r--r--sysui/desktop/mimetypes/openxmlformats-officedocument-wordprocessingml-template.keys10
-rw-r--r--sysui/desktop/mimetypes/presentation-template.desktop9
-rw-r--r--sysui/desktop/mimetypes/presentation-template.keys10
-rw-r--r--sysui/desktop/mimetypes/presentation.desktop9
-rw-r--r--sysui/desktop/mimetypes/presentation.keys10
-rw-r--r--sysui/desktop/mimetypes/spreadsheet-template.desktop9
-rw-r--r--sysui/desktop/mimetypes/spreadsheet-template.keys10
-rw-r--r--sysui/desktop/mimetypes/spreadsheet.desktop9
-rw-r--r--sysui/desktop/mimetypes/spreadsheet.keys10
-rw-r--r--sysui/desktop/mimetypes/text-template.desktop9
-rw-r--r--sysui/desktop/mimetypes/text-template.keys9
-rw-r--r--sysui/desktop/mimetypes/text.desktop9
-rw-r--r--sysui/desktop/mimetypes/text.keys10
-rw-r--r--sysui/desktop/os2/makefile.mk123
-rw-r--r--sysui/desktop/os2/ooo-base-app.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo-base-doc.icobin0 -> 11644 bytes-rw-r--r--sysui/desktop/os2/ooo-calc-app.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo-calc-doc.icobin0 -> 11644 bytes-rw-r--r--sysui/desktop/os2/ooo-calc-tem.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo-chart-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo-configuration.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo-draw-app.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo-draw-doc.icobin0 -> 11644 bytes-rw-r--r--sysui/desktop/os2/ooo-draw-tem.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo-empty-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo-empty-tem.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo-image-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo-impress-app.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo-impress-doc.icobin0 -> 11644 bytes-rw-r--r--sysui/desktop/os2/ooo-impress-tem.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo-macro-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo-main-app.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo-master-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo-math-app.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo-math-doc.icobin0 -> 11644 bytes-rw-r--r--sysui/desktop/os2/ooo-open.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo-printer.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo-web-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo-writer-app.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo-writer-doc.icobin0 -> 11644 bytes-rw-r--r--sysui/desktop/os2/ooo-writer-tem.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo11-base-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo11-calc-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo11-calc-tem.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo11-chart-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo11-draw-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo11-draw-tem.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo11-impress-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo11-impress-tem.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo11-master-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo11-math-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo11-writer-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/ooo11-writer-tem.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so7-base-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so7-calc-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so7-calc-tem.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so7-chart-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so7-draw-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so7-draw-tem.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so7-impress-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so7-impress-tem.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so7-master-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so7-math-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so7-writer-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so7-writer-tem.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-base-app.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-base-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-calc-app.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-calc-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-calc-tem.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-chart-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-configuration.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-draw-app.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-draw-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-draw-tem.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-empty-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-empty-tem.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-image-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-impress-app.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-impress-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-impress-tem.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-macro-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-main-app.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-master-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-math-app.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-math-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-open.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-printer.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-web-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-writer-app.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-writer-doc.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/os2/so8-writer-tem.icobin0 -> 5604 bytes-rw-r--r--sysui/desktop/productversion.mk78
-rw-r--r--sysui/desktop/redhat/makefile.mk59
-rw-r--r--sysui/desktop/redhat/redhat-menus.spec303
-rw-r--r--sysui/desktop/share/add_specfile_triggers.sed4
-rw-r--r--sysui/desktop/share/brand.pl127
-rw-r--r--sysui/desktop/share/create_mime_xml.pl89
-rw-r--r--sysui/desktop/share/create_tree.sh111
-rw-r--r--sysui/desktop/share/documents.ulf107
-rw-r--r--sysui/desktop/share/launcher_comment.ulf21
-rw-r--r--sysui/desktop/share/launcher_genericname.ulf23
-rw-r--r--sysui/desktop/share/launcher_name.ulf3
-rw-r--r--sysui/desktop/share/makefile.mk263
-rw-r--r--sysui/desktop/share/openoffice.sh2
-rw-r--r--sysui/desktop/share/printeradmin.sh3
-rw-r--r--sysui/desktop/share/translate.pl145
-rw-r--r--sysui/desktop/slackware/makefile.mk112
-rw-r--r--sysui/desktop/slackware/slack-desc13
-rw-r--r--sysui/desktop/slackware/update-script8
-rw-r--r--sysui/desktop/solaris/copyright2
-rw-r--r--sysui/desktop/solaris/depend7
-rw-r--r--sysui/desktop/solaris/mailcap78
-rw-r--r--sysui/desktop/solaris/makefile.mk130
-rw-r--r--sysui/desktop/solaris/mime.types59
-rw-r--r--sysui/desktop/solaris/pkginfo16
-rw-r--r--sysui/desktop/solaris/postinstall23
-rw-r--r--sysui/desktop/solaris/postremove16
-rw-r--r--sysui/desktop/solaris/prototype66
-rw-r--r--sysui/desktop/suse/makefile.mk59
-rw-r--r--sysui/desktop/suse/suse-menus.spec307
-rw-r--r--sysui/desktop/tg_rpm.mk45
-rw-r--r--sysui/desktop/util/makefile.mk66
-rw-r--r--sysui/desktop/util/pkgdiff.pl119
-rw-r--r--sysui/prj/build.lst19
-rw-r--r--sysui/prj/d.lst27
-rw-r--r--sysui/source/win32/QuickStart/OOQuickStart.rc130
-rw-r--r--sysui/source/win32/QuickStart/QuickStart.cpp423
-rw-r--r--sysui/source/win32/QuickStart/QuickStart.h12
-rw-r--r--sysui/source/win32/QuickStart/StdAfx.h39
-rw-r--r--sysui/source/win32/QuickStart/makefile.mk74
-rw-r--r--sysui/source/win32/QuickStart/resource.h32
-rw-r--r--sysui/source/win32/QuickStart/so/QuickStart.rc130
-rw-r--r--sysui/source/win32/QuickStart/so/makefile.mk73
-rw-r--r--sysui/source/win32/misc/AutoBuffer.cxx163
-rw-r--r--sysui/source/win32/misc/AutoBuffer.hxx85
-rw-r--r--sysui/source/win32/misc/WinImplHelper.cxx358
-rw-r--r--sysui/source/win32/misc/WinImplHelper.hxx90
-rw-r--r--sysui/source/win32/misc/makefile.mk52
-rw-r--r--sysui/source/win32/misc/resourceprovider.cxx229
-rw-r--r--sysui/source/win32/misc/resourceprovider.hxx60
-rw-r--r--sysui/util/checksize.pl87
-rw-r--r--sysui/util/exports.dxp2
-rw-r--r--sysui/util/makefile.mk44
-rw-r--r--test/inc/makefile.mk38
-rw-r--r--test/inc/pch/precompiled_test.cxx26
-rw-r--r--test/inc/pch/precompiled_test.hxx30
-rw-r--r--test/inc/test/detail/testdllapi.hxx39
-rw-r--r--test/inc/test/gettestargument.hxx46
-rw-r--r--test/inc/test/officeconnection.hxx65
-rw-r--r--test/inc/test/oustringostreaminserter.hxx48
-rw-r--r--test/inc/test/toabsolutefileurl.hxx44
-rw-r--r--test/inc/test/uniquepipename.hxx44
-rw-r--r--test/prj/build.lst4
-rw-r--r--test/prj/d.lst13
-rw-r--r--test/source/cpp/getargument.cxx47
-rw-r--r--test/source/cpp/getargument.hxx44
-rw-r--r--test/source/cpp/gettestargument.cxx43
-rw-r--r--test/source/cpp/makefile.mk64
-rw-r--r--test/source/cpp/officeconnection.cxx172
-rw-r--r--test/source/cpp/toabsolutefileurl.cxx83
-rw-r--r--test/source/cpp/uniquepipename.cxx48
-rw-r--r--test/source/java/org/openoffice/test/Argument.java36
-rw-r--r--test/source/java/org/openoffice/test/FileHelper.java62
-rw-r--r--test/source/java/org/openoffice/test/OfficeConnection.java222
-rw-r--r--test/source/java/org/openoffice/test/OfficeFileUrl.java42
-rw-r--r--test/source/java/org/openoffice/test/TestArgument.java39
-rw-r--r--test/source/java/org/openoffice/test/makefile.mk54
-rwxr-xr-xtestautomation/chart2/optional/ch2_chart_data_dlg_impress.bas56
-rwxr-xr-xtestautomation/chart2/optional/ch2_flexible_source_range_selection.bas69
-rwxr-xr-xtestautomation/chart2/optional/ch2_losa_ods_to_ods.bas68
-rwxr-xr-xtestautomation/chart2/optional/ch2_losa_ods_to_ots.bas68
-rwxr-xr-xtestautomation/chart2/optional/ch2_losa_ods_to_sdc.bas67
-rwxr-xr-xtestautomation/chart2/optional/ch2_losa_ods_to_sxc.bas68
-rwxr-xr-xtestautomation/chart2/optional/ch2_losa_ods_to_xls.bas68
-rwxr-xr-xtestautomation/chart2/optional/ch2_losa_sxc_to_ods.bas68
-rwxr-xr-xtestautomation/chart2/optional/ch2_losa_sxc_to_sdc.bas68
-rwxr-xr-xtestautomation/chart2/optional/ch2_lvl1.bas57
-rwxr-xr-xtestautomation/chart2/optional/ch2_lvl1_wizard.bas66
-rwxr-xr-xtestautomation/chart2/optional/ch2_xml_format.bas55
-rw-r--r--testautomation/chart2/optional/includes/ch2_datadialogue.inc328
-rw-r--r--testautomation/chart2/optional/includes/ch2_flexible_source_range_selection.inc797
-rw-r--r--testautomation/chart2/optional/includes/ch2_flexible_source_range_selection01.inc792
-rwxr-xr-xtestautomation/chart2/optional/includes/ch2_lvl1a.inc266
-rw-r--r--testautomation/chart2/optional/includes/loadsave/ch2_losa.inc219
-rw-r--r--testautomation/chart2/optional/includes/loadsave/ch2_xml_format.inc243
-rw-r--r--testautomation/chart2/optional/includes/wizard/ch2_lvl1_wizard.inc1092
-rw-r--r--testautomation/chart2/optional/includes/wizard/ch2_lvl1_wizard2.inc124
-rw-r--r--testautomation/chart2/optional/input/BubbleChartData.odsbin0 -> 8000 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/2d_areas_normal.odsbin0 -> 19980 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/2d_areas_percent.odsbin0 -> 22854 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/2d_areas_stacked.odsbin0 -> 20547 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/2d_bars_normal.odsbin0 -> 22851 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/2d_bars_percent.odsbin0 -> 23088 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/2d_bars_stacked.odsbin0 -> 23782 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/2d_columns_lines_and_columns.odsbin0 -> 24097 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/2d_columns_lines_and_stacked_columns.odsbin0 -> 25212 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/2d_columns_normal.odsbin0 -> 23151 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/2d_columns_percent.odsbin0 -> 23058 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/2d_columns_stacked.odsbin0 -> 24970 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/3d_lines_deep.odsbin0 -> 35335 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/3d_pies_normal.odsbin0 -> 39008 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/areas_deep.odsbin0 -> 52064 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/areas_percent.odsbin0 -> 38468 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/areas_stacked.odsbin0 -> 42860 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/bars_deep.odsbin0 -> 61483 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/bars_horizontal_cones.odsbin0 -> 66269 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/bars_horizontal_cones_deep.odsbin0 -> 110686 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/bars_horizontal_cones_percent.odsbin0 -> 110617 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/bars_horizontal_pyramids.odsbin0 -> 67118 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/bars_horizontal_pyramids_deep.odsbin0 -> 98383 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/bars_horizontal_pyramids_percent.odsbin0 -> 110239 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/bars_horizontal_pyramids_stacked.odsbin0 -> 85911 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/bars_horizontal_stacked_cones.odsbin0 -> 88184 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/bars_normal.odsbin0 -> 71033 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/bars_percent.odsbin0 -> 66755 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/bars_stacked.odsbin0 -> 60722 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/bars_tube.odsbin0 -> 41905 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/bars_tubes_deep.odsbin0 -> 59620 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/bars_tubes_percent.odsbin0 -> 62875 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/bars_tubes_stacked.odsbin0 -> 50291 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/columns_cones.odsbin0 -> 50195 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/columns_cones_deep.odsbin0 -> 84795 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/columns_cones_percent.odsbin0 -> 90080 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/columns_cones_stacked.odsbin0 -> 88072 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/columns_cylinder.odsbin0 -> 53406 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/columns_cylinder_deep.odsbin0 -> 67403 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/columns_cylinder_percent.odsbin0 -> 86518 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/columns_cylinder_stacked.odsbin0 -> 79786 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/columns_deep.odsbin0 -> 50144 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/columns_normal.odsbin0 -> 59819 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/columns_percent.odsbin0 -> 60109 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/columns_pyramids.odsbin0 -> 71749 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/columns_pyramids_deep.odsbin0 -> 96324 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/columns_pyramids_percent.odsbin0 -> 103938 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/columns_pyramids_stacked.odsbin0 -> 104487 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/columns_stacked.odsbin0 -> 65360 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/lines_b-spline.odsbin0 -> 25651 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/lines_b-spline_with_symbols.odsbin0 -> 30305 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/lines_cubic_spline.odsbin0 -> 25841 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/lines_cubic_spline_with_symbols.odsbin0 -> 33585 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/lines_normal.odsbin0 -> 19673 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/lines_percent.odsbin0 -> 19326 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/lines_percent_with_symbols.odsbin0 -> 23242 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/lines_stacked.odsbin0 -> 20462 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/lines_stacked_with_symbols.odsbin0 -> 24066 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/lines_symbols.odsbin0 -> 23002 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/net_normal.odsbin0 -> 19926 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/net_percent.odsbin0 -> 20031 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/net_percent_with_symbols.odsbin0 -> 24009 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/net_stacked.odsbin0 -> 20018 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/net_stacked_with_symbols.odsbin0 -> 24083 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/net_symbols.odsbin0 -> 23820 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/pies_normal.odsbin0 -> 20506 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/pies_offset1.odsbin0 -> 20195 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/pies_offset2.odsbin0 -> 20524 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/pies_rings.odsbin0 -> 27925 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/stockchart_type1.odsbin0 -> 19889 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/stockchart_type2.odsbin0 -> 21315 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/stockchart_type3.odsbin0 -> 22123 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/stockchart_type4.odsbin0 -> 23348 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/xy_chart_b-spline.odsbin0 -> 24219 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/xy_chart_b-spline_with_symbols.odsbin0 -> 27576 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/xy_chart_cubic_spline.odsbin0 -> 24489 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/xy_chart_cubic_spline_with_symbols.odsbin0 -> 27677 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/xy_chart_lines_only.odsbin0 -> 19266 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/xy_chart_lines_with_symbols.odsbin0 -> 22498 bytes-rwxr-xr-xtestautomation/chart2/optional/input/ods/xy_chart_symbols_only.odsbin0 -> 21517 bytes-rwxr-xr-xtestautomation/chart2/optional/input/randomData.odsbin0 -> 7713 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/2d_areas_normal.sxcbin0 -> 11879 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/2d_areas_percent.sxcbin0 -> 12137 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/2d_areas_stacked.sxcbin0 -> 12547 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/2d_bars_normal.sxcbin0 -> 13620 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/2d_bars_percent.sxcbin0 -> 13373 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/2d_bars_stacked.sxcbin0 -> 12325 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/2d_columns_lines_and_columns.sxcbin0 -> 14033 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/2d_columns_lines_and_stacked_columns.sxcbin0 -> 14458 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/2d_columns_normal.sxcbin0 -> 13793 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/2d_columns_percent.sxcbin0 -> 13675 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/2d_columns_stacked.sxcbin0 -> 14365 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/3d_lines_deep.sxcbin0 -> 18632 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/3d_pies_normal.sxcbin0 -> 20396 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/areas_deep.sxcbin0 -> 32742 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/areas_percent.sxcbin0 -> 21962 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/areas_stacked.sxcbin0 -> 23672 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/bars_deep.sxcbin0 -> 39140 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/bars_horizontal_cones.sxcbin0 -> 34799 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/bars_horizontal_cones_deep.sxcbin0 -> 51450 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/bars_horizontal_cones_percent.sxcbin0 -> 48313 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/bars_horizontal_pyramids.sxcbin0 -> 32902 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/bars_horizontal_pyramids_deep.sxcbin0 -> 48143 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/bars_horizontal_pyramids_percent.sxcbin0 -> 47134 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/bars_horizontal_pyramids_stacked.sxcbin0 -> 40866 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/bars_horizontal_stacked_cones.sxcbin0 -> 41810 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/bars_normal.sxcbin0 -> 34087 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/bars_percent.sxcbin0 -> 35015 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/bars_stacked.sxcbin0 -> 30564 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/bars_tube.sxcbin0 -> 28453 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/bars_tubes_deep.sxcbin0 -> 36522 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/bars_tubes_percent.sxcbin0 -> 39245 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/bars_tubes_stacked.sxcbin0 -> 32849 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/columns_cones.sxcbin0 -> 27681 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/columns_cones_deep.sxcbin0 -> 41842 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/columns_cones_percent.sxcbin0 -> 44938 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/columns_cones_stacked.sxcbin0 -> 40843 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/columns_cylinder.sxcbin0 -> 28562 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/columns_cylinder_deep.sxcbin0 -> 34619 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/columns_cylinder_percent.sxcbin0 -> 42982 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/columns_cylinder_stacked.sxcbin0 -> 44840 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/columns_deep.sxcbin0 -> 32156 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/columns_normal.sxcbin0 -> 37062 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/columns_percent.sxcbin0 -> 37149 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/columns_pyramids.sxcbin0 -> 38666 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/columns_pyramids_deep.sxcbin0 -> 53341 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/columns_pyramids_percent.sxcbin0 -> 55649 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/columns_pyramids_stacked.sxcbin0 -> 53051 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/columns_stacked.sxcbin0 -> 32245 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/lines_b-spline.sxcbin0 -> 19509 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/lines_b-spline_with_symbols.sxcbin0 -> 22013 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/lines_cubic_spline.sxcbin0 -> 19650 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/lines_cubic_spline_with_symbols.sxcbin0 -> 22066 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/lines_normal.sxcbin0 -> 17027 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/lines_percent.sxcbin0 -> 16447 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/lines_percent_with_symbols.sxcbin0 -> 18472 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/lines_stacked.sxcbin0 -> 17579 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/lines_stacked_with_symbols.sxcbin0 -> 19077 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/lines_symbols.sxcbin0 -> 18275 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/net_normal.sxcbin0 -> 16864 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/net_percent.sxcbin0 -> 16992 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/net_percent_with_symbols.sxcbin0 -> 19009 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/net_stacked.sxcbin0 -> 16947 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/net_stacked_with_symbols.sxcbin0 -> 19043 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/net_symbols.sxcbin0 -> 18861 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/pies_normal.sxcbin0 -> 25337 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/pies_offset1.sxcbin0 -> 16978 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/pies_offset2.sxcbin0 -> 17217 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/pies_rings.sxcbin0 -> 20869 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/stockchart_type1.sxcbin0 -> 16651 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/stockchart_type2.sxcbin0 -> 17371 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/stockchart_type3.sxcbin0 -> 17883 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/stockchart_type4.sxcbin0 -> 18534 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/xy_chart_b-spline.sxcbin0 -> 19090 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/xy_chart_b-spline_with_symbols.sxcbin0 -> 20759 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/xy_chart_cubic_spline.sxcbin0 -> 19391 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/xy_chart_cubic_spline_with_symbols.sxcbin0 -> 20911 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/xy_chart_lines_only.sxcbin0 -> 16609 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/xy_chart_lines_with_symbols.sxcbin0 -> 18325 bytes-rwxr-xr-xtestautomation/chart2/optional/input/sxc/xy_chart_symbols_only.sxcbin0 -> 17630 bytes-rw-r--r--testautomation/chart2/required/ch2_updt_calc.bas152
-rw-r--r--testautomation/chart2/required/includes/ch2_file.inc404
-rw-r--r--testautomation/chart2/required/includes/ch2_format.inc1407
-rw-r--r--testautomation/chart2/required/includes/ch2_format1.inc829
-rw-r--r--testautomation/chart2/required/includes/ch2_insert.inc326
-rw-r--r--testautomation/chart2/required/includes/ch2_insert_ctl.inc488
-rw-r--r--testautomation/chart2/required/includes/ch2_menu.inc214
-rw-r--r--testautomation/chart2/required/includes/ch2_ole.inc137
-rw-r--r--testautomation/chart2/required/includes/ch2_toolbars.inc168
-rw-r--r--testautomation/chart2/required/includes/ch2_view.inc182
-rw-r--r--testautomation/chart2/required/includes/ch2_window.inc63
-rw-r--r--testautomation/chart2/required/includes/ch2_wizard.inc86
-rwxr-xr-xtestautomation/chart2/required/input/basetable.sdcbin0 -> 28672 bytes-rwxr-xr-xtestautomation/chart2/required/input/basetable.sxcbin0 -> 5500 bytes-rwxr-xr-xtestautomation/chart2/required/input/ch_flexrange01.odsbin0 -> 98073 bytes-rwxr-xr-xtestautomation/chart2/required/input/ch_flexrange02.odsbin0 -> 6849 bytes-rwxr-xr-xtestautomation/chart2/required/input/ch_flexrange03.odsbin0 -> 32530 bytes-rwxr-xr-xtestautomation/chart2/required/input/ch_flexrange04.odsbin0 -> 20799 bytes-rwxr-xr-xtestautomation/chart2/required/input/ch_flexrange05.odtbin0 -> 7305 bytes-rwxr-xr-xtestautomation/chart2/required/input/ch_flexrange06.odtbin0 -> 7303 bytes-rwxr-xr-xtestautomation/chart2/required/input/ch_flexrange07.odtbin0 -> 13104 bytes-rwxr-xr-xtestautomation/chart2/required/input/ch_flexrange08.odtbin0 -> 13280 bytes-rwxr-xr-xtestautomation/chart2/required/input/spreadsheetFile.odsbin0 -> 6337 bytes-rwxr-xr-xtestautomation/chart2/required/input/verySimpleChart.odsbin0 -> 10429 bytes-rw-r--r--testautomation/chart2/tools/ch_tools_axes.inc193
-rw-r--r--testautomation/chart2/tools/ch_tools_chart_type.inc641
-rw-r--r--testautomation/chart2/tools/ch_tools_common.inc208
-rw-r--r--testautomation/chart2/tools/ch_tools_data_labels.inc369
-rw-r--r--testautomation/chart2/tools/ch_tools_grids.inc202
-rw-r--r--testautomation/chart2/tools/ch_tools_legend.inc241
-rw-r--r--testautomation/chart2/tools/ch_tools_select.inc136
-rw-r--r--testautomation/chart2/tools/ch_tools_statistics.inc429
-rw-r--r--testautomation/chart2/tools/ch_tools_tab_borders_lines.inc144
-rw-r--r--testautomation/chart2/tools/ch_tools_tab_pages.inc147
-rw-r--r--testautomation/chart2/tools/ch_tools_titles.inc189
-rwxr-xr-xtestautomation/dbaccess/optional/dba_ctrl_Clipboard.bas54
-rwxr-xr-xtestautomation/dbaccess/optional/dba_ctrl_General.bas54
-rwxr-xr-xtestautomation/dbaccess/optional/dba_ctrl_Grid.bas55
-rwxr-xr-xtestautomation/dbaccess/optional/dba_ctrl_PropertyBrowser.bas54
-rwxr-xr-xtestautomation/dbaccess/optional/dba_ctrl_Several.bas56
-rwxr-xr-xtestautomation/dbaccess/optional/dba_ctrl_Spreadsheet.bas54
-rwxr-xr-xtestautomation/dbaccess/optional/dba_ctrl_TextControl.bas55
-rwxr-xr-xtestautomation/dbaccess/optional/dba_ctrl_Wizards.bas54
-rwxr-xr-xtestautomation/dbaccess/optional/dba_db_ADOAccess.bas56
-rwxr-xr-xtestautomation/dbaccess/optional/dba_db_AdabasD.bas56
-rwxr-xr-xtestautomation/dbaccess/optional/dba_db_Addressbook.bas67
-rwxr-xr-xtestautomation/dbaccess/optional/dba_db_Dbase.bas55
-rwxr-xr-xtestautomation/dbaccess/optional/dba_db_JDBCMySQL.bas54
-rwxr-xr-xtestautomation/dbaccess/optional/dba_db_Spreadsheet.bas55
-rwxr-xr-xtestautomation/dbaccess/optional/dba_db_Text.bas80
-rwxr-xr-xtestautomation/dbaccess/optional/dba_db_dBase_functions.bas66
-rwxr-xr-xtestautomation/dbaccess/optional/dba_db_hsqldb.bas56
-rwxr-xr-xtestautomation/dbaccess/optional/dba_frm_FormFilter.bas59
-rwxr-xr-xtestautomation/dbaccess/optional/dba_frm_Forms.bas58
-rwxr-xr-xtestautomation/dbaccess/optional/dba_misc_Macros.bas54
-rwxr-xr-xtestautomation/dbaccess/optional/dba_misc_RegisterDatabase.bas54
-rwxr-xr-xtestautomation/dbaccess/optional/dba_rpt_DateTime.bas59
-rwxr-xr-xtestautomation/dbaccess/optional/dba_rpt_ExecuteReport.bas59
-rwxr-xr-xtestautomation/dbaccess/optional/dba_rpt_Formating.bas59
-rwxr-xr-xtestautomation/dbaccess/optional/dba_rpt_FunctionWizard.bas59
-rwxr-xr-xtestautomation/dbaccess/optional/dba_rpt_Grouping.bas59
-rwxr-xr-xtestautomation/dbaccess/optional/dba_rpt_PageNumber.bas61
-rwxr-xr-xtestautomation/dbaccess/optional/dba_rpt_PropertyBrowser.bas59
-rwxr-xr-xtestautomation/dbaccess/optional/dba_wiz_CopyTableWizard.bas54
-rwxr-xr-xtestautomation/dbaccess/optional/dba_wiz_DatabaseWizards.bas53
-rwxr-xr-xtestautomation/dbaccess/optional/dba_wiz_FormWizard.bas53
-rwxr-xr-xtestautomation/dbaccess/optional/dba_wiz_QueryWizard.bas53
-rwxr-xr-xtestautomation/dbaccess/optional/dba_wiz_ReportWizard.bas56
-rwxr-xr-xtestautomation/dbaccess/optional/dba_wiz_TableWizard.bas53
-rwxr-xr-xtestautomation/dbaccess/optional/dba_xf_Submission.bas53
-rw-r--r--testautomation/dbaccess/optional/includes/ctrl_Clipboard.inc492
-rw-r--r--testautomation/dbaccess/optional/includes/ctrl_General.inc1063
-rw-r--r--testautomation/dbaccess/optional/includes/ctrl_Grid.inc521
-rw-r--r--testautomation/dbaccess/optional/includes/ctrl_PropertyBrowser.inc510
-rw-r--r--testautomation/dbaccess/optional/includes/ctrl_Several1.inc648
-rw-r--r--testautomation/dbaccess/optional/includes/ctrl_Several2.inc924
-rw-r--r--testautomation/dbaccess/optional/includes/ctrl_Spreadsheet.inc387
-rw-r--r--testautomation/dbaccess/optional/includes/ctrl_TextControl.inc290
-rw-r--r--testautomation/dbaccess/optional/includes/ctrl_Wizards.inc860
-rw-r--r--testautomation/dbaccess/optional/includes/db_ADOAccess.inc175
-rw-r--r--testautomation/dbaccess/optional/includes/db_AdabasD.inc156
-rw-r--r--testautomation/dbaccess/optional/includes/db_Dbase.inc118
-rw-r--r--testautomation/dbaccess/optional/includes/db_DbaseFunction.inc886
-rw-r--r--testautomation/dbaccess/optional/includes/db_IndexDesign.inc92
-rw-r--r--testautomation/dbaccess/optional/includes/db_JDBCMySQL.inc210
-rw-r--r--testautomation/dbaccess/optional/includes/db_Mozilla.inc154
-rw-r--r--testautomation/dbaccess/optional/includes/db_ODBCMySQL.inc192
-rw-r--r--testautomation/dbaccess/optional/includes/db_Query.inc975
-rw-r--r--testautomation/dbaccess/optional/includes/db_Relations.inc435
-rw-r--r--testautomation/dbaccess/optional/includes/db_Spreadsheet.inc61
-rw-r--r--testautomation/dbaccess/optional/includes/db_Text.inc148
-rw-r--r--testautomation/dbaccess/optional/includes/db_Windows.inc81
-rw-r--r--testautomation/dbaccess/optional/includes/db_hsqldb.inc288
-rw-r--r--testautomation/dbaccess/optional/includes/frm_FormFilter.inc240
-rw-r--r--testautomation/dbaccess/optional/includes/frm_Forms.inc1065
-rw-r--r--testautomation/dbaccess/optional/includes/misc_Macros.inc115
-rw-r--r--testautomation/dbaccess/optional/includes/misc_RegisterDatabase.inc63
-rw-r--r--testautomation/dbaccess/optional/includes/rpt_DateTime.inc298
-rw-r--r--testautomation/dbaccess/optional/includes/rpt_ExecuteReport.inc234
-rw-r--r--testautomation/dbaccess/optional/includes/rpt_Formating.inc201
-rw-r--r--testautomation/dbaccess/optional/includes/rpt_FunctionWizard.inc117
-rw-r--r--testautomation/dbaccess/optional/includes/rpt_Grouping.inc156
-rw-r--r--testautomation/dbaccess/optional/includes/rpt_PageNumber.inc257
-rw-r--r--testautomation/dbaccess/optional/includes/rpt_PropertyBrowser.inc76
-rw-r--r--testautomation/dbaccess/optional/includes/wiz_CopyTableWizard.inc833
-rw-r--r--testautomation/dbaccess/optional/includes/wiz_DatabaseWizard.inc348
-rw-r--r--testautomation/dbaccess/optional/includes/wiz_FormWizard.inc254
-rw-r--r--testautomation/dbaccess/optional/includes/wiz_QueryWizard.inc233
-rw-r--r--testautomation/dbaccess/optional/includes/wiz_ReportWizard.inc123
-rw-r--r--testautomation/dbaccess/optional/includes/wiz_TableWizard.inc499
-rw-r--r--testautomation/dbaccess/optional/includes/xf_Submission.inc185
-rwxr-xr-xtestautomation/dbaccess/optional/input/TT_All_Controls.odtbin0 -> 12522 bytes-rwxr-xr-xtestautomation/dbaccess/optional/input/TT_Form_Filter.odtbin0 -> 8174 bytes-rwxr-xr-xtestautomation/dbaccess/optional/input/ado_datasource/testdb.mdbbin0 -> 286720 bytes-rwxr-xr-xtestautomation/dbaccess/optional/input/dbase_datasource/TT_Forms.dbfbin0 -> 903 bytes-rwxr-xr-xtestautomation/dbaccess/optional/input/dbase_datasource/TT_Func1.dbfbin0 -> 116 bytes-rwxr-xr-xtestautomation/dbaccess/optional/input/dbase_datasource/TT_Query1.dbfbin0 -> 1180 bytes-rwxr-xr-xtestautomation/dbaccess/optional/input/dbase_datasource/TT_Query1.dbtbin0 -> 5046204 bytes-rwxr-xr-xtestautomation/dbaccess/optional/input/hsql_datasource/TT_hsqldb.odbbin0 -> 16127 bytes-rwxr-xr-xtestautomation/dbaccess/optional/input/hsql_datasource/TT_hsqldb_2.0.0.odbbin0 -> 2501 bytes-rw-r--r--testautomation/dbaccess/optional/input/hsql_datasource/hsql_macros_in_subdocument.odbbin0 -> 11948 bytes-rwxr-xr-xtestautomation/dbaccess/optional/input/spreadsheet_datasource/TT_Query1.odsbin0 -> 6738 bytes-rwxr-xr-xtestautomation/dbaccess/optional/input/text_datasource/TT_Query1.txt12
-rwxr-xr-xtestautomation/dbaccess/optional/input/text_datasource/text_database.txt3
-rwxr-xr-xtestautomation/dbaccess/required/dba_Main.bas77
-rwxr-xr-xtestautomation/dbaccess/required/dba_ReportBuilder.bas55
-rwxr-xr-xtestautomation/dbaccess/required/dba_xforms_Main.bas53
-rw-r--r--testautomation/dbaccess/required/includes/DatabaseTypes.inc754
-rw-r--r--testautomation/dbaccess/required/includes/Forms.inc91
-rw-r--r--testautomation/dbaccess/required/includes/MainApp.inc620
-rw-r--r--testautomation/dbaccess/required/includes/Query.inc966
-rw-r--r--testautomation/dbaccess/required/includes/ReportBuilder01.inc876
-rw-r--r--testautomation/dbaccess/required/includes/Table.inc632
-rw-r--r--testautomation/dbaccess/required/includes/TableDesign.inc509
-rw-r--r--testautomation/dbaccess/required/includes/Wizards.inc235
-rw-r--r--testautomation/dbaccess/required/includes/Xforms01.inc485
-rw-r--r--testautomation/dbaccess/required/input/oracle-report-builder.oxtbin0 -> 3449930 bytes-rw-r--r--testautomation/dbaccess/tools/controltools.inc831
-rw-r--r--testautomation/dbaccess/tools/dbcreatetools.inc1631
-rw-r--r--testautomation/dbaccess/tools/dbinit.inc56
-rw-r--r--testautomation/dbaccess/tools/dbtools.inc373
-rw-r--r--testautomation/dbaccess/tools/formtools.inc193
-rw-r--r--testautomation/dbaccess/tools/querytools.inc439
-rw-r--r--testautomation/dbaccess/tools/reporttools.inc387
-rw-r--r--testautomation/dbaccess/tools/tabletools.inc772
-rwxr-xr-xtestautomation/extensions/optional/e_display_name.bas57
-rwxr-xr-xtestautomation/extensions/optional/e_extensions.bas54
-rwxr-xr-xtestautomation/extensions/optional/e_fileopen.bas55
-rwxr-xr-xtestautomation/extensions/optional/e_help.bas57
-rwxr-xr-xtestautomation/extensions/optional/e_identifiers.bas59
-rwxr-xr-xtestautomation/extensions/optional/e_issues.bas55
-rwxr-xr-xtestautomation/extensions/optional/e_location.bas68
-rwxr-xr-xtestautomation/extensions/optional/e_meta-inf.bas59
-rwxr-xr-xtestautomation/extensions/optional/e_online_update.bas57
-rwxr-xr-xtestautomation/extensions/optional/e_options.bas59
-rwxr-xr-xtestautomation/extensions/optional/e_platforms.bas58
-rwxr-xr-xtestautomation/extensions/optional/e_publisher.bas55
-rw-r--r--testautomation/extensions/optional/e_taskpane.bas49
-rw-r--r--testautomation/extensions/optional/includes/display_name.inc113
-rw-r--r--testautomation/extensions/optional/includes/e_taskpane.inc74
-rw-r--r--testautomation/extensions/optional/includes/extensions.inc684
-rw-r--r--testautomation/extensions/optional/includes/fileopen.inc103
-rw-r--r--testautomation/extensions/optional/includes/help.inc213
-rw-r--r--testautomation/extensions/optional/includes/identifiers.inc120
-rwxr-xr-xtestautomation/extensions/optional/includes/issue110083.inc79
-rw-r--r--testautomation/extensions/optional/includes/location.inc133
-rw-r--r--testautomation/extensions/optional/includes/meta-inf.inc83
-rw-r--r--testautomation/extensions/optional/includes/online_update.inc114
-rw-r--r--testautomation/extensions/optional/includes/options.inc172
-rw-r--r--testautomation/extensions/optional/includes/platforms.inc126
-rw-r--r--testautomation/extensions/optional/includes/publisher.inc286
-rwxr-xr-xtestautomation/extensions/optional/input/dependencies/broken-dependency.oxtbin0 -> 1655 bytes-rwxr-xr-xtestautomation/extensions/optional/input/dependencies/double-dependencies.oxtbin0 -> 1651 bytes-rwxr-xr-xtestautomation/extensions/optional/input/dependencies/empty-dependencies.oxtbin0 -> 1624 bytes-rwxr-xr-xtestautomation/extensions/optional/input/dependencies/funny-dependency.oxtbin0 -> 1730 bytes-rwxr-xr-xtestautomation/extensions/optional/input/dependencies/license-dependency.oxtbin0 -> 1891 bytes-rwxr-xr-xtestautomation/extensions/optional/input/dependencies/many-dependencies.oxtbin0 -> 1702 bytes-rwxr-xr-xtestautomation/extensions/optional/input/dependencies/no-dependencies.oxtbin0 -> 1611 bytes-rwxr-xr-xtestautomation/extensions/optional/input/dependencies/no-description.oxtbin0 -> 1360 bytes-rwxr-xr-xtestautomation/extensions/optional/input/dependencies/unknown-dependency.oxtbin0 -> 1633 bytes-rwxr-xr-xtestautomation/extensions/optional/input/dependencies/version10000.oxtbin0 -> 1668 bytes-rwxr-xr-xtestautomation/extensions/optional/input/dependencies/version21.oxtbin0 -> 1666 bytes-rwxr-xr-xtestautomation/extensions/optional/input/dependencies/version21ns.oxtbin0 -> 1661 bytes-rwxr-xr-xtestautomation/extensions/optional/input/dependencies/version21other.oxtbin0 -> 1679 bytes-rwxr-xr-xtestautomation/extensions/optional/input/dependencies/version25.oxtbin0 -> 1794 bytes-rw-r--r--testautomation/extensions/optional/input/dependencies/version30.oxtbin0 -> 1493 bytes-rw-r--r--testautomation/extensions/optional/input/dependencies/version300.oxtbin0 -> 1408 bytes-rw-r--r--testautomation/extensions/optional/input/dependencies/version301.oxtbin0 -> 1409 bytes-rw-r--r--testautomation/extensions/optional/input/dependencies/version31.oxtbin0 -> 1495 bytes-rw-r--r--testautomation/extensions/optional/input/dependencies/version310.oxtbin0 -> 1493 bytes-rw-r--r--testautomation/extensions/optional/input/dependencies/version33.oxtbin0 -> 1494 bytes-rw-r--r--testautomation/extensions/optional/input/dependencies/version330.oxtbin0 -> 1494 bytes-rw-r--r--testautomation/extensions/optional/input/dependencies/version34.oxtbin0 -> 1441 bytes-rw-r--r--testautomation/extensions/optional/input/dependencies/version937.oxtbin0 -> 1409 bytes-rwxr-xr-xtestautomation/extensions/optional/input/dependencies/versionempty.oxtbin0 -> 1675 bytes-rwxr-xr-xtestautomation/extensions/optional/input/dependencies/versionnone.oxtbin0 -> 1674 bytes-rwxr-xr-xtestautomation/extensions/optional/input/display_name/name1.oxtbin0 -> 704 bytes-rwxr-xr-xtestautomation/extensions/optional/input/display_name/name2.oxtbin0 -> 699 bytes-rwxr-xr-xtestautomation/extensions/optional/input/display_name/name3.oxtbin0 -> 681 bytes-rwxr-xr-xtestautomation/extensions/optional/input/display_name/name4.oxtbin0 -> 675 bytes-rwxr-xr-xtestautomation/extensions/optional/input/display_name/name5.oxtbin0 -> 654 bytes-rwxr-xr-xtestautomation/extensions/optional/input/display_name/readme.txt26
-rwxr-xr-xtestautomation/extensions/optional/input/errors/i77436-README.txt21
-rwxr-xr-xtestautomation/extensions/optional/input/errors/i77436-extension.oxtbin0 -> 57727 bytes-rwxr-xr-xtestautomation/extensions/optional/input/errors/lowercasemetainf.oxtbin0 -> 9381 bytes-rwxr-xr-xtestautomation/extensions/optional/input/eventbinding/DialogComponent.odtbin0 -> 12541 bytes-rwxr-xr-xtestautomation/extensions/optional/input/eventbinding/DialogComponent.oxtbin0 -> 7588 bytes-rwxr-xr-xtestautomation/extensions/optional/input/extensible_help/extensible_help_en.oxtbin0 -> 8284 bytes-rwxr-xr-xtestautomation/extensions/optional/input/extensible_help/extensible_help_en_de.oxtbin0 -> 13522 bytes-rwxr-xr-xtestautomation/extensions/optional/input/extensible_help/extension.info59
-rwxr-xr-xtestautomation/extensions/optional/input/extension_sources/TaskPaneComponent/build.xml72
-rwxr-xr-xtestautomation/extensions/optional/input/extension_sources/TaskPaneComponent/nbproject/build-impl.xml794
-rwxr-xr-xtestautomation/extensions/optional/input/extension_sources/TaskPaneComponent/nbproject/build-uno-impl.xml462
-rw-r--r--testautomation/extensions/optional/input/extension_sources/TaskPaneComponent/nbproject/genfiles.properties9
-rw-r--r--testautomation/extensions/optional/input/extension_sources/TaskPaneComponent/nbproject/private/config.properties0
-rw-r--r--testautomation/extensions/optional/input/extension_sources/TaskPaneComponent/nbproject/private/private.properties7
-rw-r--r--testautomation/extensions/optional/input/extension_sources/TaskPaneComponent/nbproject/project-uno.properties19
-rw-r--r--testautomation/extensions/optional/input/extension_sources/TaskPaneComponent/nbproject/project.properties68
-rwxr-xr-xtestautomation/extensions/optional/input/extension_sources/TaskPaneComponent/nbproject/project.xml14
-rwxr-xr-xtestautomation/extensions/optional/input/extension_sources/TaskPaneComponent/registry/data/org/openoffice/Office/UI/CalcWindowState.xcu23
-rwxr-xr-xtestautomation/extensions/optional/input/extension_sources/TaskPaneComponent/registry/data/org/openoffice/Office/UI/Factories.xcu35
-rwxr-xr-xtestautomation/extensions/optional/input/extension_sources/TaskPaneComponent/src/com/example/CentralRegistrationClass.java140
-rwxr-xr-xtestautomation/extensions/optional/input/extension_sources/TaskPaneComponent/src/com/example/TaskPaneComponent.java116
-rwxr-xr-xtestautomation/extensions/optional/input/extension_sources/TaskPaneComponent/src/com/example/ToolPanel.java56
-rwxr-xr-xtestautomation/extensions/optional/input/extension_sources/TaskPaneComponent/src/com/example/ToolPanelUIElement.java153
-rwxr-xr-xtestautomation/extensions/optional/input/extension_sources/TaskPaneComponent/src/description.xml5
-rwxr-xr-xtestautomation/extensions/optional/input/extension_sources/TaskPaneComponent/src/toolpanels/TaskPaneComponentUI.xdl8
-rwxr-xr-xtestautomation/extensions/optional/input/extension_sources/TaskPaneComponent/src/uno-extension-manifest.xml9
-rwxr-xr-xtestautomation/extensions/optional/input/extensions/TaskPaneComponent/TaskPaneComponent.oxtbin0 -> 9884 bytes-rwxr-xr-xtestautomation/extensions/optional/input/files.txt50
-rwxr-xr-xtestautomation/extensions/optional/input/identifier/explicit/identifier.oxtbin0 -> 1660 bytes-rwxr-xr-xtestautomation/extensions/optional/input/identifier/legacy/identifier.oxtbin0 -> 1634 bytes-rwxr-xr-xtestautomation/extensions/optional/input/identifier/readme.txt16
-rw-r--r--testautomation/extensions/optional/input/issues/111434.oxtbin0 -> 1166 bytes-rw-r--r--testautomation/extensions/optional/input/issues/Logging.xcu24
-rw-r--r--testautomation/extensions/optional/input/issues/LoggingOptions.xcs19
-rwxr-xr-xtestautomation/extensions/optional/input/options/leaf1.oxtbin0 -> 8308 bytes-rwxr-xr-xtestautomation/extensions/optional/input/options/leaf2.oxtbin0 -> 8338 bytes-rwxr-xr-xtestautomation/extensions/optional/input/options/leaves1.oxtbin0 -> 21158 bytes-rwxr-xr-xtestautomation/extensions/optional/input/options/leaves2.oxtbin0 -> 21153 bytes-rwxr-xr-xtestautomation/extensions/optional/input/options/leaves3.oxtbin0 -> 21080 bytes-rwxr-xr-xtestautomation/extensions/optional/input/options/modules1.oxtbin0 -> 24317 bytes-rwxr-xr-xtestautomation/extensions/optional/input/options/modules2.oxtbin0 -> 24196 bytes-rwxr-xr-xtestautomation/extensions/optional/input/options/nodes1.oxtbin0 -> 1882 bytes-rwxr-xr-xtestautomation/extensions/optional/input/options/nodes2.oxtbin0 -> 24287 bytes-rwxr-xr-xtestautomation/extensions/optional/input/options/nodes3.oxtbin0 -> 24315 bytes-rwxr-xr-xtestautomation/extensions/optional/input/options/nodes4.oxtbin0 -> 24318 bytes-rwxr-xr-xtestautomation/extensions/optional/input/options/nodes5.oxtbin0 -> 12616 bytes-rwxr-xr-xtestautomation/extensions/optional/input/options/readme.txt195
-rwxr-xr-xtestautomation/extensions/optional/input/path_to_extension/LocationTest.odtbin0 -> 7666 bytes-rwxr-xr-xtestautomation/extensions/optional/input/path_to_extension/locationtest.oxtbin0 -> 5055 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/all1.oxtbin0 -> 692 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/all2.oxtbin0 -> 702 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/all3.oxtbin0 -> 297 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/extensions.info146
-rwxr-xr-xtestautomation/extensions/optional/input/platform/freebsd_x86.oxtbin0 -> 706 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/freebsd_x86_64.oxtbin0 -> 711 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/invalid1.oxtbin0 -> 653 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/invalid2.oxtbin0 -> 653 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/invalid3.oxtbin0 -> 655 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/linux_arm_eabi.oxtbin0 -> 709 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/linux_arm_oabi.oxtbin0 -> 710 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/linux_ia64.oxtbin0 -> 706 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/linux_mips_eb.oxtbin0 -> 709 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/linux_mips_el.oxtbin0 -> 708 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/linux_powerpc.oxtbin0 -> 708 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/linux_powerpc64.oxtbin0 -> 710 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/linux_s390.oxtbin0 -> 705 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/linux_s390x.oxtbin0 -> 706 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/linux_sparc.oxtbin0 -> 706 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/linux_x86.oxtbin0 -> 705 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/linux_x86_64.oxtbin0 -> 708 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/macosx_powerpc.oxtbin0 -> 710 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/macosx_x86.oxtbin0 -> 707 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/mul1.oxtbin0 -> 952 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/os2_x86.oxtbin0 -> 706 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/readme.txt49
-rwxr-xr-xtestautomation/extensions/optional/input/platform/solaris_sparc.oxtbin0 -> 709 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/solaris_x86.oxtbin0 -> 706 bytes-rwxr-xr-xtestautomation/extensions/optional/input/platform/windows_x86.oxtbin0 -> 707 bytes-rwxr-xr-xtestautomation/extensions/optional/input/publisher/extension.info58
-rwxr-xr-xtestautomation/extensions/optional/input/publisher/pub1.oxtbin0 -> 1882 bytes-rwxr-xr-xtestautomation/extensions/optional/input/publisher/pub2.oxtbin0 -> 1866 bytes-rwxr-xr-xtestautomation/extensions/optional/input/publisher/pub3.oxtbin0 -> 1829 bytes-rwxr-xr-xtestautomation/extensions/optional/input/publisher/pub4.oxtbin0 -> 1812 bytes-rwxr-xr-xtestautomation/extensions/optional/input/publisher/pub5.oxtbin0 -> 1769 bytes-rwxr-xr-xtestautomation/extensions/optional/input/publisher/pub6.oxtbin0 -> 1814 bytes-rwxr-xr-xtestautomation/extensions/optional/input/publisher/pub7.oxtbin0 -> 1769 bytes-rwxr-xr-xtestautomation/extensions/optional/input/simpleLicense/BadDesc.oxtbin0 -> 9663 bytes-rwxr-xr-xtestautomation/extensions/optional/input/simpleLicense/BadNamespace.oxtbin0 -> 10027 bytes-rwxr-xr-xtestautomation/extensions/optional/input/simpleLicense/BadRoot.oxtbin0 -> 9248 bytes-rwxr-xr-xtestautomation/extensions/optional/input/simpleLicense/CancelLicense.oxtbin0 -> 9406 bytes-rwxr-xr-xtestautomation/extensions/optional/input/simpleLicense/IncompAttr1.oxtbin0 -> 9389 bytes-rwxr-xr-xtestautomation/extensions/optional/input/simpleLicense/IncompAttr2.oxtbin0 -> 9365 bytes-rwxr-xr-xtestautomation/extensions/optional/input/simpleLicense/LongLic.oxtbin0 -> 9540 bytes-rwxr-xr-xtestautomation/extensions/optional/input/simpleLicense/MissingLic.oxtbin0 -> 9232 bytes-rwxr-xr-xtestautomation/extensions/optional/input/simpleLicense/MissingLicRef.oxtbin0 -> 9343 bytes-rwxr-xr-xtestautomation/extensions/optional/input/simpleLicense/NoDesc.oxtbin0 -> 8722 bytes-rwxr-xr-xtestautomation/extensions/optional/input/simpleLicense/NoLangNoDefault.oxtbin0 -> 9234 bytes-rwxr-xr-xtestautomation/extensions/optional/input/simpleLicense/OnlyDefault.oxtbin0 -> 9394 bytes-rwxr-xr-xtestautomation/extensions/optional/input/simpleLicense/ShortLicense.oxtbin0 -> 9406 bytes-rwxr-xr-xtestautomation/extensions/optional/input/simpleLicense/ShortLicenseShared.oxtbin0 -> 9407 bytes-rwxr-xr-xtestautomation/extensions/optional/input/update/plain1.oxtbin0 -> 2187 bytes-rwxr-xr-xtestautomation/extensions/optional/input/update/plain2.oxtbin0 -> 2186 bytes-rwxr-xr-xtestautomation/extensions/optional/input/update/plain3.oxtbin0 -> 2186 bytes-rwxr-xr-xtestautomation/extensions/optional/input/update/readme.txt26
-rwxr-xr-xtestautomation/extensions/optional/input/versions/plain.oxtbin0 -> 1522 bytes-rwxr-xr-xtestautomation/extensions/optional/input/versions/version_0.0/plain.oxtbin0 -> 1618 bytes-rwxr-xr-xtestautomation/extensions/optional/input/versions/version_1.02.4.7.0/plain.oxtbin0 -> 1624 bytes-rwxr-xr-xtestautomation/extensions/optional/input/versions/version_1.2.15.3/plain.oxtbin0 -> 1624 bytes-rwxr-xr-xtestautomation/extensions/optional/input/versions/version_1.2.3/plain.oxtbin0 -> 1620 bytes-rwxr-xr-xtestautomation/extensions/optional/input/versions/version_1.2.4.7/plain.oxtbin0 -> 1623 bytes-rwxr-xr-xtestautomation/extensions/optional/input/versions/version_none/plain.oxtbin0 -> 1598 bytes-rwxr-xr-xtestautomation/extensions/optional/input/web_update/readme.txt133
-rwxr-xr-xtestautomation/extensions/optional/input/web_update/web1.oxtbin0 -> 1693 bytes-rwxr-xr-xtestautomation/extensions/optional/input/web_update/web2.oxtbin0 -> 1693 bytes-rwxr-xr-xtestautomation/extensions/optional/input/web_update/web3.oxtbin0 -> 1693 bytes-rwxr-xr-xtestautomation/extensions/optional/input/web_update/web4.oxtbin0 -> 1693 bytes-rwxr-xr-xtestautomation/extensions/optional/input/web_update/web5.oxtbin0 -> 1693 bytes-rwxr-xr-xtestautomation/extensions/optional/input/web_update/web6.oxtbin0 -> 1638 bytes-rwxr-xr-xtestautomation/extensions/optional/input/web_update/web7.oxtbin0 -> 1894 bytes-rwxr-xr-xtestautomation/extensions/required/e_update.bas58
-rw-r--r--testautomation/extensions/required/includes/e_update.inc156
-rwxr-xr-xtestautomation/framework/optional/f_CJK_CollationDialogue.bas78
-rwxr-xr-xtestautomation/framework/optional/f_CJK_FeatureSwitch.bas97
-rwxr-xr-xtestautomation/framework/optional/f_CJK_GridLayout.bas80
-rwxr-xr-xtestautomation/framework/optional/f_CJK_RubyDialogueProposal.bas71
-rwxr-xr-xtestautomation/framework/optional/f_NewSortingAlgorithmForJapanese.bas79
-rwxr-xr-xtestautomation/framework/optional/f_basic_dialog_i18n.bas68
-rwxr-xr-xtestautomation/framework/optional/f_basic_documents.bas66
-rwxr-xr-xtestautomation/framework/optional/f_basic_eventbinding.bas58
-rwxr-xr-xtestautomation/framework/optional/f_basic_first.bas77
-rwxr-xr-xtestautomation/framework/optional/f_basic_formcontrols.bas73
-rw-r--r--testautomation/framework/optional/f_basic_gridcontrol.bas59
-rwxr-xr-xtestautomation/framework/optional/f_basic_issues.bas61
-rwxr-xr-xtestautomation/framework/optional/f_basic_library_export_import.bas76
-rwxr-xr-xtestautomation/framework/optional/f_basic_modules.bas79
-rwxr-xr-xtestautomation/framework/optional/f_basic_package_export_import.bas72
-rwxr-xr-xtestautomation/framework/optional/f_basic_protected_libraries.bas64
-rwxr-xr-xtestautomation/framework/optional/f_basic_shared_modules.bas59
-rwxr-xr-xtestautomation/framework/optional/f_basic_templatedocuments.bas75
-rwxr-xr-xtestautomation/framework/optional/f_basic_vba-compat.bas75
-rwxr-xr-xtestautomation/framework/optional/f_configuration.bas52
-rwxr-xr-xtestautomation/framework/optional/f_extras_labels.bas52
-rwxr-xr-xtestautomation/framework/optional/f_extras_samplefileopen.bas66
-rwxr-xr-xtestautomation/framework/optional/f_extras_sampleopen.bas68
-rwxr-xr-xtestautomation/framework/optional/f_extras_samplepreview.bas60
-rwxr-xr-xtestautomation/framework/optional/f_extras_tableautoformat.bas66
-rwxr-xr-xtestautomation/framework/optional/f_extras_templatefileopen.bas66
-rwxr-xr-xtestautomation/framework/optional/f_extras_templateopen.bas69
-rwxr-xr-xtestautomation/framework/optional/f_extras_templatepreview.bas58
-rwxr-xr-xtestautomation/framework/optional/f_filedlg_allowed_names.bas59
-rwxr-xr-xtestautomation/framework/optional/f_filedlg_autocompletion.bas57
-rwxr-xr-xtestautomation/framework/optional/f_filedlg_cjk_files.bas69
-rwxr-xr-xtestautomation/framework/optional/f_filedlg_dialogtest.bas65
-rwxr-xr-xtestautomation/framework/optional/f_filedlg_folder_navigation.bas76
-rwxr-xr-xtestautomation/framework/optional/f_filedlg_forbidden_names_windows.bas60
-rwxr-xr-xtestautomation/framework/optional/f_filedlg_multiselection.bas59
-rwxr-xr-xtestautomation/framework/optional/f_filedlg_passwords.bas58
-rwxr-xr-xtestautomation/framework/optional/f_filedlg_reserved_names_unix.bas60
-rwxr-xr-xtestautomation/framework/optional/f_filedlg_reserved_names_windows.bas60
-rwxr-xr-xtestautomation/framework/optional/f_fontworkgallery.bas54
-rwxr-xr-xtestautomation/framework/optional/f_help_bookmarks.bas56
-rwxr-xr-xtestautomation/framework/optional/f_help_compare_applications.bas59
-rwxr-xr-xtestautomation/framework/optional/f_help_compare_content.bas60
-rwxr-xr-xtestautomation/framework/optional/f_help_compare_topics.bas58
-rwxr-xr-xtestautomation/framework/optional/f_help_search.bas62
-rwxr-xr-xtestautomation/framework/optional/f_help_view_topics.bas68
-rwxr-xr-xtestautomation/framework/optional/f_loadsave_general.bas55
-rwxr-xr-xtestautomation/framework/optional/f_menuentries.bas51
-rwxr-xr-xtestautomation/framework/optional/f_ole.bas106
-rwxr-xr-xtestautomation/framework/optional/f_options_loadsave.bas63
-rwxr-xr-xtestautomation/framework/optional/f_options_ooo.bas88
-rwxr-xr-xtestautomation/framework/optional/f_scripting_organizers.bas83
-rwxr-xr-xtestautomation/framework/optional/f_security_broken_signature.bas66
-rwxr-xr-xtestautomation/framework/optional/f_security_certification_dialogs.bas73
-rwxr-xr-xtestautomation/framework/optional/f_security_certified_docs.bas78
-rwxr-xr-xtestautomation/framework/optional/f_security_evilmacro.bas80
-rwxr-xr-xtestautomation/framework/optional/f_security_incorrect_password.bas70
-rwxr-xr-xtestautomation/framework/optional/f_security_macrosecurity.bas60
-rwxr-xr-xtestautomation/framework/optional/f_security_recommend_password.bas77
-rwxr-xr-xtestautomation/framework/optional/f_security_trusted_path.bas100
-rwxr-xr-xtestautomation/framework/optional/f_toolbar_behavior.bas53
-rwxr-xr-xtestautomation/framework/optional/f_toolbar_items.bas62
-rwxr-xr-xtestautomation/framework/optional/f_usage_tracking.bas61
-rw-r--r--testautomation/framework/optional/includes/CJK_CollationDialogue_1.inc725
-rwxr-xr-xtestautomation/framework/optional/includes/CJK_FeatureSwitchTest_1.inc743
-rw-r--r--testautomation/framework/optional/includes/CJK_RubyDialogueProposal_1.inc391
-rw-r--r--testautomation/framework/optional/includes/NewSortingAlgorithmForJapanese_1.inc227
-rw-r--r--testautomation/framework/optional/includes/basic_delete_modules.inc101
-rwxr-xr-xtestautomation/framework/optional/includes/basic_dialog_i18n_copy_control.inc202
-rw-r--r--testautomation/framework/optional/includes/basic_dialog_i18n_defaults.inc406
-rw-r--r--testautomation/framework/optional/includes/basic_documents.inc185
-rw-r--r--testautomation/framework/optional/includes/basic_eventbinding.inc283
-rw-r--r--testautomation/framework/optional/includes/basic_formcontrols.inc232
-rw-r--r--testautomation/framework/optional/includes/basic_gridcontrol.inc97
-rw-r--r--testautomation/framework/optional/includes/basic_ide.inc311
-rwxr-xr-xtestautomation/framework/optional/includes/basic_issues.inc259
-rw-r--r--testautomation/framework/optional/includes/basic_library_export.inc202
-rw-r--r--testautomation/framework/optional/includes/basic_library_import.inc129
-rw-r--r--testautomation/framework/optional/includes/basic_macros.inc380
-rw-r--r--testautomation/framework/optional/includes/basic_modulehide.inc98
-rw-r--r--testautomation/framework/optional/includes/basic_modulenames.inc249
-rw-r--r--testautomation/framework/optional/includes/basic_modules.inc140
-rw-r--r--testautomation/framework/optional/includes/basic_package_export.inc221
-rw-r--r--testautomation/framework/optional/includes/basic_package_import.inc138
-rw-r--r--testautomation/framework/optional/includes/basic_protected_libraries.inc160
-rw-r--r--testautomation/framework/optional/includes/basic_shared_modules.inc97
-rw-r--r--testautomation/framework/optional/includes/basic_spectemplate.inc105
-rw-r--r--testautomation/framework/optional/includes/basic_usertemplate.inc220
-rw-r--r--testautomation/framework/optional/includes/basic_vba-compat_application-union.inc145
-rw-r--r--testautomation/framework/optional/includes/basic_vba-compat_import_disabled.inc145
-rw-r--r--testautomation/framework/optional/includes/basic_vba-compat_import_enabled.inc153
-rw-r--r--testautomation/framework/optional/includes/basic_vba-compat_import_nothing.inc110
-rw-r--r--testautomation/framework/optional/includes/basic_vba-compat_security_check.inc105
-rw-r--r--testautomation/framework/optional/includes/basic_vba-compat_thisworkbook.inc143
-rw-r--r--testautomation/framework/optional/includes/basic_vba-compat_xlsm-xlsb.inc187
-rw-r--r--testautomation/framework/optional/includes/basic_vba_compat_tools.inc72
-rw-r--r--testautomation/framework/optional/includes/configuration.inc372
-rw-r--r--testautomation/framework/optional/includes/extras_file_open.inc215
-rwxr-xr-xtestautomation/framework/optional/includes/extras_labels.inc97
-rw-r--r--testautomation/framework/optional/includes/extras_modify_objects.inc231
-rw-r--r--testautomation/framework/optional/includes/extras_preview.inc112
-rw-r--r--testautomation/framework/optional/includes/extras_table_autoformat.inc121
-rw-r--r--testautomation/framework/optional/includes/f_usage_tracking.inc288
-rw-r--r--testautomation/framework/optional/includes/filedlg_allowed_names.inc115
-rw-r--r--testautomation/framework/optional/includes/filedlg_autocomplete.inc207
-rw-r--r--testautomation/framework/optional/includes/filedlg_cjk_files.inc83
-rw-r--r--testautomation/framework/optional/includes/filedlg_cjk_folders.inc86
-rw-r--r--testautomation/framework/optional/includes/filedlg_document_properties.inc172
-rw-r--r--testautomation/framework/optional/includes/filedlg_filternames.inc121
-rw-r--r--testautomation/framework/optional/includes/filedlg_folders1.inc106
-rw-r--r--testautomation/framework/optional/includes/filedlg_folders2.inc72
-rw-r--r--testautomation/framework/optional/includes/filedlg_folders3.inc65
-rw-r--r--testautomation/framework/optional/includes/filedlg_folders4.inc128
-rw-r--r--testautomation/framework/optional/includes/filedlg_folders5.inc117
-rw-r--r--testautomation/framework/optional/includes/filedlg_folders6.inc166
-rw-r--r--testautomation/framework/optional/includes/filedlg_folders7.inc127
-rw-r--r--testautomation/framework/optional/includes/filedlg_forbidden_names_windows.inc85
-rw-r--r--testautomation/framework/optional/includes/filedlg_multiselection.inc197
-rw-r--r--testautomation/framework/optional/includes/filedlg_passwords.inc184
-rw-r--r--testautomation/framework/optional/includes/filedlg_rename.inc97
-rw-r--r--testautomation/framework/optional/includes/filedlg_reserved_names_unix.inc76
-rw-r--r--testautomation/framework/optional/includes/filedlg_reserved_names_windows.inc133
-rw-r--r--testautomation/framework/optional/includes/filedlg_tools.inc478
-rw-r--r--testautomation/framework/optional/includes/filedlg_triggers.inc274
-rw-r--r--testautomation/framework/optional/includes/fontworkgallery.inc146
-rw-r--r--testautomation/framework/optional/includes/help_bookmarks.inc201
-rw-r--r--testautomation/framework/optional/includes/help_compare_applications.inc99
-rw-r--r--testautomation/framework/optional/includes/help_compare_content.inc94
-rw-r--r--testautomation/framework/optional/includes/help_compare_topics.inc127
-rw-r--r--testautomation/framework/optional/includes/help_search.inc154
-rw-r--r--testautomation/framework/optional/includes/help_view_topics.inc105
-rw-r--r--testautomation/framework/optional/includes/loadsave_files.inc181
-rw-r--r--testautomation/framework/optional/includes/loadsave_new.inc116
-rw-r--r--testautomation/framework/optional/includes/menuentries.inc172
-rw-r--r--testautomation/framework/optional/includes/ole_1.inc467
-rw-r--r--testautomation/framework/optional/includes/ole_2.inc129
-rw-r--r--testautomation/framework/optional/includes/ole_3.inc349
-rw-r--r--testautomation/framework/optional/includes/ole_tools.inc461
-rw-r--r--testautomation/framework/optional/includes/options_asia.inc641
-rw-r--r--testautomation/framework/optional/includes/options_data.inc192
-rw-r--r--testautomation/framework/optional/includes/options_int1.inc286
-rw-r--r--testautomation/framework/optional/includes/options_lan1.inc894
-rw-r--r--testautomation/framework/optional/includes/options_loadsave_general.inc351
-rw-r--r--testautomation/framework/optional/includes/options_loadsave_html.inc220
-rw-r--r--testautomation/framework/optional/includes/options_loadsave_msoffice.inc127
-rw-r--r--testautomation/framework/optional/includes/options_loadsave_vba.inc129
-rw-r--r--testautomation/framework/optional/includes/options_ooo_accessibility.inc185
-rw-r--r--testautomation/framework/optional/includes/options_ooo_appearance.inc169
-rw-r--r--testautomation/framework/optional/includes/options_ooo_colors.inc201
-rw-r--r--testautomation/framework/optional/includes/options_ooo_fontreplacement.inc118
-rw-r--r--testautomation/framework/optional/includes/options_ooo_general.inc197
-rw-r--r--testautomation/framework/optional/includes/options_ooo_java.inc131
-rw-r--r--testautomation/framework/optional/includes/options_ooo_memory.inc219
-rw-r--r--testautomation/framework/optional/includes/options_ooo_paths.inc349
-rw-r--r--testautomation/framework/optional/includes/options_ooo_print.inc438
-rw-r--r--testautomation/framework/optional/includes/options_ooo_security.inc130
-rw-r--r--testautomation/framework/optional/includes/options_ooo_userdata.inc212
-rw-r--r--testautomation/framework/optional/includes/options_ooo_view.inc243
-rw-r--r--testautomation/framework/optional/includes/scripting_organizers.inc281
-rw-r--r--testautomation/framework/optional/includes/security_broken_signature.inc71
-rw-r--r--testautomation/framework/optional/includes/security_certification_dialogs.inc100
-rwxr-xr-xtestautomation/framework/optional/includes/security_certified_docs.inc143
-rw-r--r--testautomation/framework/optional/includes/security_evilmacro1.inc100
-rw-r--r--testautomation/framework/optional/includes/security_evilmacro2.inc89
-rw-r--r--testautomation/framework/optional/includes/security_evilmacro3.inc95
-rw-r--r--testautomation/framework/optional/includes/security_incorrect_password.inc130
-rw-r--r--testautomation/framework/optional/includes/security_macrosecurity.inc184
-rw-r--r--testautomation/framework/optional/includes/security_recommend_password.inc118
-rw-r--r--testautomation/framework/optional/includes/security_trusted_path.inc86
-rw-r--r--testautomation/framework/optional/includes/standardbar2.inc161
-rw-r--r--testautomation/framework/optional/includes/toolbar_behavior.inc152
-rwxr-xr-xtestautomation/framework/optional/includes/w_grid_layout1.inc583
-rwxr-xr-xtestautomation/framework/optional/input/AppLibrary1/Dialog1.xdl8
-rwxr-xr-xtestautomation/framework/optional/input/AppLibrary1/Module1.xba8
-rwxr-xr-xtestautomation/framework/optional/input/AppLibrary1/Module2.xba8
-rwxr-xr-xtestautomation/framework/optional/input/AppLibrary1/dialog.xlb5
-rwxr-xr-xtestautomation/framework/optional/input/AppLibrary1/script.xlb6
-rw-r--r--testautomation/framework/optional/input/BasicDocs/basic.odfbin0 -> 5631 bytes-rw-r--r--testautomation/framework/optional/input/BasicDocs/basic.odgbin0 -> 8864 bytes-rw-r--r--testautomation/framework/optional/input/BasicDocs/basic.odmbin0 -> 7274 bytes-rw-r--r--testautomation/framework/optional/input/BasicDocs/basic.odpbin0 -> 10802 bytes-rw-r--r--testautomation/framework/optional/input/BasicDocs/basic.odsbin0 -> 7328 bytes-rw-r--r--testautomation/framework/optional/input/BasicDocs/basic.odtbin0 -> 7262 bytes-rw-r--r--testautomation/framework/optional/input/BasicDocs/basic.sxcbin0 -> 7695 bytes-rw-r--r--testautomation/framework/optional/input/BasicDocs/basic.sxdbin0 -> 8165 bytes-rw-r--r--testautomation/framework/optional/input/BasicDocs/basic.sxgbin0 -> 7652 bytes-rw-r--r--testautomation/framework/optional/input/BasicDocs/basic.sxibin0 -> 9729 bytes-rw-r--r--testautomation/framework/optional/input/BasicDocs/basic.sxmbin0 -> 5111 bytes-rw-r--r--testautomation/framework/optional/input/BasicDocs/basic.sxwbin0 -> 7632 bytes-rwxr-xr-xtestautomation/framework/optional/input/CJK/FontSizeChanges_1.sxwbin0 -> 5231 bytes-rwxr-xr-xtestautomation/framework/optional/input/CJK/IndentsTest.sxwbin0 -> 5515 bytes-rwxr-xr-xtestautomation/framework/optional/input/CJK/graphicInPage.sxwbin0 -> 75327 bytes-rwxr-xr-xtestautomation/framework/optional/input/CJK/gridtest.sxwbin0 -> 5341 bytes-rwxr-xr-xtestautomation/framework/optional/input/CJK/objectsTest.sxwbin0 -> 7814 bytes-rwxr-xr-xtestautomation/framework/optional/input/CJK/rubytest.sxwbin0 -> 5263 bytes-rwxr-xr-xtestautomation/framework/optional/input/CJK/sortTest.sxwbin0 -> 5051 bytes-rwxr-xr-xtestautomation/framework/optional/input/alldocs/aendern.sdabin0 -> 39424 bytes-rwxr-xr-xtestautomation/framework/optional/input/alldocs/bereich.sdcbin0 -> 30208 bytes-rwxr-xr-xtestautomation/framework/optional/input/alldocs/body.htm146
-rwxr-xr-xtestautomation/framework/optional/input/alldocs/borabora.jpgbin0 -> 28566 bytes-rwxr-xr-xtestautomation/framework/optional/input/alldocs/columbia.dxf12638
-rwxr-xr-xtestautomation/framework/optional/input/alldocs/erwin.sdwbin0 -> 8192 bytes-rwxr-xr-xtestautomation/framework/optional/input/alldocs/fdlg.sxcbin0 -> 4923 bytes-rwxr-xr-xtestautomation/framework/optional/input/alldocs/fdlg.sxdbin0 -> 6016 bytes-rwxr-xr-xtestautomation/framework/optional/input/alldocs/fdlg.sxgbin0 -> 4777 bytes-rwxr-xr-xtestautomation/framework/optional/input/alldocs/fdlg.sxibin0 -> 7338 bytes-rwxr-xr-xtestautomation/framework/optional/input/alldocs/fdlg.sxmbin0 -> 2954 bytes-rwxr-xr-xtestautomation/framework/optional/input/alldocs/fdlg.sxwbin0 -> 4776 bytes-rwxr-xr-xtestautomation/framework/optional/input/alldocs/ffortpf.smfbin0 -> 6656 bytes-rwxr-xr-xtestautomation/framework/optional/input/alldocs/ls3_3_15.sdsbin0 -> 59904 bytes-rwxr-xr-xtestautomation/framework/optional/input/alldocs/schach.sddbin0 -> 65536 bytes-rwxr-xr-xtestautomation/framework/optional/input/eventbinding/DialogComponent.odtbin0 -> 12541 bytes-rwxr-xr-xtestautomation/framework/optional/input/eventbinding/DialogComponent.oxtbin0 -> 7588 bytes-rwxr-xr-xtestautomation/framework/optional/input/extras_formats/Labels_en-US.txt1537
-rwxr-xr-xtestautomation/framework/optional/input/extras_formats/Tables_calc_en-US.txt17
-rwxr-xr-xtestautomation/framework/optional/input/extras_formats/Tables_writer_en-US.txt17
-rwxr-xr-xtestautomation/framework/optional/input/filetest/level1/level2/level3/filetest.txt6
-rwxr-xr-xtestautomation/framework/optional/input/filetest/level1/level2/level3/testdoc.sdwbin0 -> 15872 bytes-rwxr-xr-xtestautomation/framework/optional/input/filetst2/spaces/filetest.txt6
-rwxr-xr-xtestautomation/framework/optional/input/filetst2/spaces/testdoc.sdwbin0 -> 15872 bytes-rwxr-xr-xtestautomation/framework/optional/input/filternames/OpenOffice.org_Filternames_en-US.txt133
-rw-r--r--testautomation/framework/optional/input/filternames/Oracle_Open_Office_Filternames_add_en-US.txt87
-rw-r--r--testautomation/framework/optional/input/filternames/Oracle_Open_Office_Filternames_en-US.txt85
-rwxr-xr-xtestautomation/framework/optional/input/gridcontrol.odtbin0 -> 14075 bytes-rwxr-xr-xtestautomation/framework/optional/input/help_browser/OpenOffice.org_help_applications_en-US.txt8
-rwxr-xr-xtestautomation/framework/optional/input/help_browser/OpenOffice.org_help_content_en-US.txt869
-rwxr-xr-xtestautomation/framework/optional/input/help_browser/OpenOffice.org_help_topics_en-US.txt21949
-rwxr-xr-xtestautomation/framework/optional/input/help_browser/OpenOffice.org_search_headings_and_whole_words_en-US.txt6
-rwxr-xr-xtestautomation/framework/optional/input/help_browser/OpenOffice.org_search_headings_only_en-US.txt7
-rwxr-xr-xtestautomation/framework/optional/input/help_browser/OpenOffice.org_search_whole_words_only_en-US.txt16
-rwxr-xr-xtestautomation/framework/optional/input/help_browser/OpenOffice.org_search_without_filter_en-US.txt22
-rwxr-xr-xtestautomation/framework/optional/input/help_browser/Oracle_Open_Office_help_applications_en-US.txt8
-rwxr-xr-xtestautomation/framework/optional/input/help_browser/Oracle_Open_Office_help_content_en-US.txt868
-rw-r--r--testautomation/framework/optional/input/help_browser/Oracle_Open_Office_help_topics_en-US.txt22079
-rwxr-xr-xtestautomation/framework/optional/input/help_browser/Oracle_Open_Office_search_headings_and_whole_words_en-US.txt6
-rwxr-xr-xtestautomation/framework/optional/input/help_browser/Oracle_Open_Office_search_headings_only_en-US.txt7
-rwxr-xr-xtestautomation/framework/optional/input/help_browser/Oracle_Open_Office_search_whole_words_only_en-US.txt16
-rwxr-xr-xtestautomation/framework/optional/input/help_browser/Oracle_Open_Office_search_without_filter_en-US.txt22
-rwxr-xr-xtestautomation/framework/optional/input/menu/areadme.txt18
-rwxr-xr-xtestautomation/framework/optional/input/menu/en-us_basic.txt57
-rwxr-xr-xtestautomation/framework/optional/input/menu/en-us_calc.txt177
-rwxr-xr-xtestautomation/framework/optional/input/menu/en-us_draw.txt157
-rwxr-xr-xtestautomation/framework/optional/input/menu/en-us_htmldokument.txt172
-rwxr-xr-xtestautomation/framework/optional/input/menu/en-us_impress.txt158
-rwxr-xr-xtestautomation/framework/optional/input/menu/en-us_insight.txt82
-rwxr-xr-xtestautomation/framework/optional/input/menu/en-us_masterdoc.txt194
-rwxr-xr-xtestautomation/framework/optional/input/menu/en-us_math.txt85
-rwxr-xr-xtestautomation/framework/optional/input/menu/en-us_writer.txt195
-rwxr-xr-xtestautomation/framework/optional/input/multiselect/01Cmulti.odsbin0 -> 6271 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/01Cmulti.sdcbin0 -> 30208 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/01Cmulti.xlsbin0 -> 98304 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/01Wmulti.docbin0 -> 96256 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/01Wmulti.odtbin0 -> 6475 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/01Wmulti.sdwbin0 -> 14848 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/02Cmulti.odsbin0 -> 6278 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/02Cmulti.sdcbin0 -> 30208 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/02Cmulti.xlsbin0 -> 98304 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/02Wmulti.docbin0 -> 96256 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/02Wmulti.odtbin0 -> 6477 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/02Wmulti.sdwbin0 -> 14848 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/03Cmulti.odsbin0 -> 6281 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/03Cmulti.sdcbin0 -> 30208 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/03Cmulti.xlsbin0 -> 98304 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/03Wmulti.docbin0 -> 96256 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/03Wmulti.odtbin0 -> 6475 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/03Wmulti.sdwbin0 -> 14848 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/04Cmulti.odsbin0 -> 6279 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/04Cmulti.sdcbin0 -> 30208 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/04Cmulti.xlsbin0 -> 98304 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/04Wmulti.docbin0 -> 96256 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/04Wmulti.odtbin0 -> 6478 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/04Wmulti.sdwbin0 -> 14848 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/05Cmulti.odsbin0 -> 6269 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/05Cmulti.sdcbin0 -> 30208 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/05Cmulti.xlsbin0 -> 98304 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/05Wmulti.docbin0 -> 96256 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/05Wmulti.odtbin0 -> 6479 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/05Wmulti.sdwbin0 -> 14848 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/06Cmulti.odsbin0 -> 6273 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/06Cmulti.sdcbin0 -> 30208 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/06Cmulti.xlsbin0 -> 98304 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/06Wmulti.docbin0 -> 96256 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/06Wmulti.odtbin0 -> 6477 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/06Wmulti.sdwbin0 -> 14848 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/07Cmulti.odsbin0 -> 6270 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/07Cmulti.sdcbin0 -> 30208 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/07Cmulti.xlsbin0 -> 98304 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/07Wmulti.docbin0 -> 96256 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/07Wmulti.odtbin0 -> 6482 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/07Wmulti.sdwbin0 -> 14848 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/08Cmulti.odsbin0 -> 6274 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/08Cmulti.sdcbin0 -> 30208 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/08Cmulti.xlsbin0 -> 98304 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/08Wmulti.docbin0 -> 96256 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/08Wmulti.odtbin0 -> 6479 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/08Wmulti.sdwbin0 -> 14848 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/09Cmulti.odsbin0 -> 6279 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/09Cmulti.sdcbin0 -> 30208 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/09Cmulti.xlsbin0 -> 98304 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/09Wmulti.docbin0 -> 96256 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/09Wmulti.odtbin0 -> 6477 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/09Wmulti.sdwbin0 -> 14848 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/10Cmulti.odsbin0 -> 6269 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/10Cmulti.sdcbin0 -> 30208 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/10Cmulti.xlsbin0 -> 98304 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/10Wmulti.docbin0 -> 96256 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/10Wmulti.odtbin0 -> 6475 bytes-rwxr-xr-xtestautomation/framework/optional/input/multiselect/10Wmulti.sdwbin0 -> 14848 bytes-rwxr-xr-xtestautomation/framework/optional/input/options/ooo_security_changed.ref13
-rwxr-xr-xtestautomation/framework/optional/input/options/ooo_security_defaults.ref13
-rwxr-xr-xtestautomation/framework/optional/input/options/ooo_view_changed.ref20
-rwxr-xr-xtestautomation/framework/optional/input/options/ooo_view_defaults.ref19
-rwxr-xr-xtestautomation/framework/optional/input/options/paths_1.txt15
-rwxr-xr-xtestautomation/framework/optional/input/resetregistration.txt63
-rwxr-xr-xtestautomation/framework/optional/input/security/DigitalSignature.odfbin0 -> 5563 bytes-rwxr-xr-xtestautomation/framework/optional/input/security/DigitalSignature.odgbin0 -> 9301 bytes-rwxr-xr-xtestautomation/framework/optional/input/security/DigitalSignature.odpbin0 -> 11002 bytes-rwxr-xr-xtestautomation/framework/optional/input/security/DigitalSignature.odsbin0 -> 7944 bytes-rwxr-xr-xtestautomation/framework/optional/input/security/DigitalSignature.odtbin0 -> 7851 bytes-rwxr-xr-xtestautomation/framework/optional/input/security/autotest.p12bin0 -> 1821 bytes-rwxr-xr-xtestautomation/framework/optional/input/security/readme.txt33
-rwxr-xr-xtestautomation/framework/optional/input/security/test_macro (signed).odtbin0 -> 8550 bytes-rwxr-xr-xtestautomation/framework/optional/input/security/test_macro.html34
-rwxr-xr-xtestautomation/framework/optional/input/security/test_macro.odtbin0 -> 7407 bytes-rwxr-xr-xtestautomation/framework/optional/input/security/test_macro.sxwbin0 -> 5049 bytes-rw-r--r--testautomation/framework/optional/input/vba-compat/Book1.xlsbin0 -> 18432 bytes-rwxr-xr-xtestautomation/framework/optional/input/vba-compat/vba-application-union.xlsbin0 -> 31744 bytes-rw-r--r--testautomation/framework/optional/input/vba-compat/vba-compat-macros.txt30
-rwxr-xr-xtestautomation/framework/optional/input/vba-compat/vba-project.xlsbbin0 -> 19603 bytes-rwxr-xr-xtestautomation/framework/optional/input/vba-compat/vba-project.xlsmbin0 -> 20276 bytes-rwxr-xr-xtestautomation/framework/optional/input/vba-compat/vba-sample.xlsbin0 -> 31232 bytes-rwxr-xr-xtestautomation/framework/optional/input/vba-compat/vba-test.xlsbin0 -> 48640 bytes-rw-r--r--testautomation/framework/optional/input/vba-compat/vba-thisworkbook.xlsbin0 -> 39424 bytes-rwxr-xr-xtestautomation/framework/required/f_help_browser.bas62
-rwxr-xr-xtestautomation/framework/required/f_printer_administration.bas58
-rw-r--r--testautomation/framework/required/f_programmability_dialogs.bas76
-rwxr-xr-xtestautomation/framework/required/f_security_dialogs.bas55
-rwxr-xr-xtestautomation/framework/required/f_standard_toolbar.bas71
-rwxr-xr-xtestautomation/framework/required/f_tools_customize.bas75
-rwxr-xr-xtestautomation/framework/required/f_tools_options.bas60
-rwxr-xr-xtestautomation/framework/required/f_topten.bas71
-rwxr-xr-xtestautomation/framework/required/f_window_functions.bas61
-rwxr-xr-xtestautomation/framework/required/f_wizards.bas84
-rw-r--r--testautomation/framework/required/includes/basic_dialog_export.inc110
-rw-r--r--testautomation/framework/required/includes/basic_dialog_i18n.inc133
-rw-r--r--testautomation/framework/required/includes/basic_dialog_i18n_import.inc154
-rw-r--r--testautomation/framework/required/includes/basic_macroassignment.inc126
-rw-r--r--testautomation/framework/required/includes/basic_organizer.inc228
-rw-r--r--testautomation/framework/required/includes/first.inc399
-rw-r--r--testautomation/framework/required/includes/help_browser.inc195
-rw-r--r--testautomation/framework/required/includes/printer_administration.inc271
-rw-r--r--testautomation/framework/required/includes/script_organizers.inc203
-rw-r--r--testautomation/framework/required/includes/scripting_basics.inc74
-rw-r--r--testautomation/framework/required/includes/security_dialogs.inc186
-rw-r--r--testautomation/framework/required/includes/smoketest.inc210
-rw-r--r--testautomation/framework/required/includes/standard_toolbar_1.inc77
-rw-r--r--testautomation/framework/required/includes/standard_toolbar_3.inc256
-rw-r--r--testautomation/framework/required/includes/standard_toolbar_4.inc65
-rw-r--r--testautomation/framework/required/includes/standard_toolbar_5.inc78
-rw-r--r--testautomation/framework/required/includes/standard_toolbar_6.inc141
-rw-r--r--testautomation/framework/required/includes/tools_customize.inc731
-rw-r--r--testautomation/framework/required/includes/tools_options.inc90
-rw-r--r--testautomation/framework/required/includes/topten.inc326
-rwxr-xr-xtestautomation/framework/required/includes/window_functions.inc299
-rw-r--r--testautomation/framework/required/includes/wizard_agenda.inc102
-rw-r--r--testautomation/framework/required/includes/wizard_documentconverter.inc146
-rw-r--r--testautomation/framework/required/includes/wizard_euroconverter.inc127
-rw-r--r--testautomation/framework/required/includes/wizard_fax.inc93
-rw-r--r--testautomation/framework/required/includes/wizard_firsttime.inc225
-rw-r--r--testautomation/framework/required/includes/wizard_letter.inc191
-rw-r--r--testautomation/framework/required/includes/wizard_mailmerge.inc1211
-rw-r--r--testautomation/framework/required/includes/wizard_presentation.inc72
-rw-r--r--testautomation/framework/required/includes/wizard_webpage.inc212
-rwxr-xr-xtestautomation/framework/required/input/10erTest_680.sxwbin0 -> 32670 bytes-rw-r--r--testautomation/framework/required/input/basic_ide/Dialog5.xdl7
-rw-r--r--testautomation/framework/required/input/basic_ide/Dialog5_ar_DZ.default0
-rw-r--r--testautomation/framework/required/input/basic_ide/Dialog5_ar_DZ.properties6
-rw-r--r--testautomation/framework/required/input/basic_ide/Dialog5_ca_ES.properties6
-rw-r--r--testautomation/framework/required/input/basic_ide/Dialog5_de_DE.properties6
-rw-r--r--testautomation/framework/required/input/basic_ide/Dialog5_en_US.properties6
-rw-r--r--testautomation/framework/required/input/basic_ide/Dialog5_fr_FR.properties6
-rwxr-xr-xtestautomation/framework/required/input/document_converter/docconv1.sdwbin0 -> 15360 bytes-rwxr-xr-xtestautomation/framework/required/input/mailmerge_data.odbbin0 -> 3524 bytes-rwxr-xr-xtestautomation/framework/required/input/scripts/OpenOffice.org_en-US_BasicOrganizer.txt657
-rwxr-xr-xtestautomation/framework/required/input/scripts/OpenOffice.org_en-US_BeanShell.txt14
-rwxr-xr-xtestautomation/framework/required/input/scripts/OpenOffice.org_en-US_JavaScript.txt10
-rwxr-xr-xtestautomation/framework/required/input/scripts/OpenOffice.org_en-US_Python.txt10
-rwxr-xr-xtestautomation/framework/required/input/scripts/OpenOffice.org_en-US_RunMacro.txt681
-rwxr-xr-xtestautomation/framework/required/input/scripts/OpenOffice.org_en-US_osx_BasicOrganizer.txt657
-rwxr-xr-xtestautomation/framework/required/input/scripts/OpenOffice.org_en-US_osx_BeanShell.txt14
-rwxr-xr-xtestautomation/framework/required/input/scripts/OpenOffice.org_en-US_osx_JavaScript.txt10
-rwxr-xr-xtestautomation/framework/required/input/scripts/OpenOffice.org_en-US_osx_Python.txt8
-rwxr-xr-xtestautomation/framework/required/input/scripts/OpenOffice.org_en-US_osx_RunMacro.txt679
-rwxr-xr-xtestautomation/framework/required/input/scripts/OpenOffice.org_en-US_win_BasicOrganizer.txt657
-rwxr-xr-xtestautomation/framework/required/input/scripts/OpenOffice.org_en-US_win_BeanShell.txt14
-rwxr-xr-xtestautomation/framework/required/input/scripts/OpenOffice.org_en-US_win_JavaScript.txt10
-rwxr-xr-xtestautomation/framework/required/input/scripts/OpenOffice.org_en-US_win_Python.txt10
-rwxr-xr-xtestautomation/framework/required/input/scripts/OpenOffice.org_en-US_win_RunMacro.txt681
-rwxr-xr-xtestautomation/framework/required/input/scripts/Oracle-Open-Office_en-US_BasicOrganizer.txt663
-rwxr-xr-xtestautomation/framework/required/input/scripts/Oracle-Open-Office_en-US_BeanShell.txt14
-rwxr-xr-xtestautomation/framework/required/input/scripts/Oracle-Open-Office_en-US_JavaScript.txt10
-rwxr-xr-xtestautomation/framework/required/input/scripts/Oracle-Open-Office_en-US_Python.txt10
-rwxr-xr-xtestautomation/framework/required/input/scripts/Oracle-Open-Office_en-US_RunMacro.txt687
-rwxr-xr-xtestautomation/framework/required/input/scripts/Oracle-Open-Office_en-US_osx_BasicOrganizer.txt660
-rwxr-xr-xtestautomation/framework/required/input/scripts/Oracle-Open-Office_en-US_osx_BeanShell.txt14
-rwxr-xr-xtestautomation/framework/required/input/scripts/Oracle-Open-Office_en-US_osx_JavaScript.txt10
-rwxr-xr-xtestautomation/framework/required/input/scripts/Oracle-Open-Office_en-US_osx_Python.txt8
-rwxr-xr-xtestautomation/framework/required/input/scripts/Oracle-Open-Office_en-US_osx_RunMacro.txt682
-rwxr-xr-xtestautomation/framework/required/input/scripts/Oracle-Open-Office_en-US_win_BasicOrganizer.txt657
-rwxr-xr-xtestautomation/framework/required/input/scripts/Oracle-Open-Office_en-US_win_BeanShell.txt14
-rwxr-xr-xtestautomation/framework/required/input/scripts/Oracle-Open-Office_en-US_win_JavaScript.txt10
-rwxr-xr-xtestautomation/framework/required/input/scripts/Oracle-Open-Office_en-US_win_Python.txt10
-rwxr-xr-xtestautomation/framework/required/input/scripts/Oracle-Open-Office_en-US_win_RunMacro.txt681
-rw-r--r--testautomation/framework/tools/includes/CJK_tools.inc325
-rw-r--r--testautomation/framework/tools/includes/customize_tools.inc186
-rw-r--r--testautomation/framework/tools/includes/fileoperations.inc723
-rw-r--r--testautomation/framework/tools/includes/formcontrols.inc800
-rw-r--r--testautomation/framework/tools/includes/help_tools.inc239
-rw-r--r--testautomation/framework/tools/includes/i18n_tools.inc105
-rw-r--r--testautomation/framework/tools/includes/options_tools.inc326
-rw-r--r--testautomation/framework/tools/includes/pbrowser_tools.inc329
-rw-r--r--testautomation/framework/tools/includes/private_environment.inc335
-rw-r--r--testautomation/framework/tools/includes/scriptorganizer_tools.inc291
-rw-r--r--testautomation/framework/tools/includes/spadmin_tools.inc257
-rw-r--r--testautomation/framework/tools/includes/template_tools.inc454
-rw-r--r--testautomation/framework/tools/includes/toolbar_tools.inc516
-rw-r--r--testautomation/framework/tools/includes/webtools.inc153
-rw-r--r--testautomation/framework/tools/includes/window_tools.inc86
-rw-r--r--testautomation/framework/tools/includes/wizards.inc274
-rwxr-xr-xtestautomation/framework/tools/input/i18ndata.txt45
-rwxr-xr-xtestautomation/global/hid/hid.lst8
-rwxr-xr-xtestautomation/global/input/accelerators.txt161
-rwxr-xr-xtestautomation/global/input/applications.txt40
-rwxr-xr-xtestautomation/global/input/empty/please_do_not_delete_this_file3
-rw-r--r--testautomation/global/input/filters/api_filternames.txt331
-rw-r--r--testautomation/global/input/filters/build_to_filter.txt68
-rw-r--r--testautomation/global/input/filters/build_to_suffix.txt68
-rw-r--r--testautomation/global/input/filters/graphic_filters.txt26
-rwxr-xr-xtestautomation/global/input/filters/native_suffixes.dat53
-rwxr-xr-xtestautomation/global/input/graf_inp/airshw.metbin0 -> 142702 bytes-rwxr-xr-xtestautomation/global/input/graf_inp/baer.tifbin0 -> 67790 bytes-rwxr-xr-xtestautomation/global/input/graf_inp/ball.epsbin0 -> 582053 bytes-rwxr-xr-xtestautomation/global/input/graf_inp/borabora.jpgbin0 -> 28566 bytes-rwxr-xr-xtestautomation/global/input/graf_inp/circle.pcxbin0 -> 76917 bytes-rwxr-xr-xtestautomation/global/input/graf_inp/columbia.dxf12638
-rwxr-xr-xtestautomation/global/input/graf_inp/desp.bmpbin0 -> 236746 bytes-rwxr-xr-xtestautomation/global/input/graf_inp/eface.gifbin0 -> 163067 bytes-rwxr-xr-xtestautomation/global/input/graf_inp/enter.bmpbin0 -> 42278 bytes-rwxr-xr-xtestautomation/global/input/graf_inp/extrud.emfbin0 -> 59320 bytes-rwxr-xr-xtestautomation/global/input/graf_inp/faxpfeil.sgvbin0 -> 1291 bytes-rwxr-xr-xtestautomation/global/input/graf_inp/grafix1.pbmbin0 -> 24106 bytes-rwxr-xr-xtestautomation/global/input/graf_inp/grafix2.pgmbin0 -> 191590 bytes-rwxr-xr-xtestautomation/global/input/graf_inp/grafix3.rasbin0 -> 237488 bytes-rwxr-xr-xtestautomation/global/input/graf_inp/grafix4.xbm2011
-rwxr-xr-xtestautomation/global/input/graf_inp/graph_ex.metbin0 -> 237285 bytes-rwxr-xr-xtestautomation/global/input/graf_inp/graph_ex.pngbin0 -> 406588 bytes-rwxr-xr-xtestautomation/global/input/graf_inp/graph_ex.ppm63414
-rwxr-xr-xtestautomation/global/input/graf_inp/krokodil.wmfbin0 -> 225136 bytes-rwxr-xr-xtestautomation/global/input/graf_inp/london.ppmbin0 -> 1179663 bytes-rwxr-xr-xtestautomation/global/input/graf_inp/mickym.sgfbin0 -> 26501 bytes-rwxr-xr-xtestautomation/global/input/graf_inp/newtonme.pctbin0 -> 217008 bytes-rwxr-xr-xtestautomation/global/input/graf_inp/obst.pngbin0 -> 114792 bytes-rwxr-xr-xtestautomation/global/input/graf_inp/papagei1.pcdbin0 -> 3944448 bytes-rwxr-xr-xtestautomation/global/input/graf_inp/papagei2.xpm629
-rwxr-xr-xtestautomation/global/input/graf_inp/picture.svmbin0 -> 17929 bytes-rwxr-xr-xtestautomation/global/input/graf_inp/pilz.tgabin0 -> 318936 bytes-rwxr-xr-xtestautomation/global/input/graf_inp/purzel.gifbin0 -> 18909 bytes-rwxr-xr-xtestautomation/global/input/graf_inp/stabler.tifbin0 -> 492359 bytes-rwxr-xr-xtestautomation/global/input/graf_inp/tiger.psdbin0 -> 523335 bytes-rwxr-xr-xtestautomation/global/input/java/Clock.classbin0 -> 4775 bytes-rwxr-xr-xtestautomation/global/input/java/Clock.java227
-rw-r--r--testautomation/global/input/java/java.htm47
-rwxr-xr-xtestautomation/global/input/macros.txt326
-rw-r--r--testautomation/global/input/officeinfo.txt4
-rw-r--r--testautomation/global/input/proxies.txt25
-rw-r--r--testautomation/global/input/servers.txt50
-rw-r--r--testautomation/global/input/xml_filter/docbook.xml210
-rwxr-xr-xtestautomation/global/input/xml_filter/excel.xml74
-rwxr-xr-xtestautomation/global/input/xml_filter/word.xml4
-rwxr-xr-xtestautomation/global/input/xslt_stylesheets/docbook.jarbin0 -> 17693 bytes-rwxr-xr-xtestautomation/global/input/xslt_stylesheets/excel.jarbin0 -> 47729 bytes-rwxr-xr-xtestautomation/global/input/xslt_stylesheets/word.jarbin0 -> 9063 bytes-rwxr-xr-xtestautomation/global/input/xslt_stylesheets/xhtml.jarbin0 -> 16829 bytes-rw-r--r--testautomation/global/required/includes/g_001.inc149
-rw-r--r--testautomation/global/required/includes/g_009.inc178
-rw-r--r--testautomation/global/required/includes/g_customize.inc331
-rw-r--r--testautomation/global/required/includes/g_findbar.inc159
-rw-r--r--testautomation/global/required/includes/g_numberformatter1.inc787
-rw-r--r--testautomation/global/required/includes/g_option.inc863
-rw-r--r--testautomation/global/required/includes/g_option_application.inc664
-rw-r--r--testautomation/global/required/includes/g_printing.inc518
-rwxr-xr-xtestautomation/global/sid/all.sid647
-rw-r--r--testautomation/global/sid/bars.sid744
-rw-r--r--testautomation/global/sid/basic.sid12
-rw-r--r--testautomation/global/sid/context.sid40
-rwxr-xr-xtestautomation/global/sid/e_all.sid965
-rw-r--r--testautomation/global/sid/others.sid39
-rw-r--r--testautomation/global/sid/sop.sid18
-rw-r--r--testautomation/global/system/includes/declare.inc361
-rw-r--r--testautomation/global/system/includes/gvariabl.inc269
-rw-r--r--testautomation/global/system/includes/iniinfo.inc1157
-rw-r--r--testautomation/global/system/includes/inivalue.inc236
-rw-r--r--testautomation/global/system/includes/master.inc1118
-rw-r--r--testautomation/global/system/includes/status.inc715
-rw-r--r--testautomation/global/system/includes/sysinfo.inc412
-rwxr-xr-xtestautomation/global/tools/closeoffice.bas48
-rwxr-xr-xtestautomation/global/tools/compressstatus.bas188
-rwxr-xr-xtestautomation/global/tools/declare.bas84
-rw-r--r--testautomation/global/tools/includes/optional/t_accels.inc124
-rw-r--r--testautomation/global/tools/includes/optional/t_basic_ide_tools.inc816
-rw-r--r--testautomation/global/tools/includes/optional/t_basic_organizer_tools.inc356
-rw-r--r--testautomation/global/tools/includes/optional/t_control_objects.inc611
-rw-r--r--testautomation/global/tools/includes/optional/t_docfuncs.inc475
-rw-r--r--testautomation/global/tools/includes/optional/t_extension_manager_tools.inc780
-rw-r--r--testautomation/global/tools/includes/optional/t_filetools.inc319
-rw-r--r--testautomation/global/tools/includes/optional/t_key_tools.inc563
-rw-r--r--testautomation/global/tools/includes/optional/t_listfuncs.inc464
-rw-r--r--testautomation/global/tools/includes/optional/t_locale_strings1.inc569
-rw-r--r--testautomation/global/tools/includes/optional/t_locale_tools.inc92
-rw-r--r--testautomation/global/tools/includes/optional/t_macro_tools.inc215
-rw-r--r--testautomation/global/tools/includes/optional/t_ole.inc143
-rw-r--r--testautomation/global/tools/includes/optional/t_security_tools.inc677
-rw-r--r--testautomation/global/tools/includes/optional/t_set_standard_controls.inc646
-rw-r--r--testautomation/global/tools/includes/optional/t_spreadsheet_tools1.inc84
-rw-r--r--testautomation/global/tools/includes/optional/t_stringtools.inc355
-rw-r--r--testautomation/global/tools/includes/optional/t_toolbar_tools1.inc418
-rw-r--r--testautomation/global/tools/includes/optional/t_toolbar_writer.inc766
-rw-r--r--testautomation/global/tools/includes/optional/t_treelist_tools.inc485
-rw-r--r--testautomation/global/tools/includes/optional/t_ui_filters.inc131
-rw-r--r--testautomation/global/tools/includes/optional/t_user_info.inc56
-rw-r--r--testautomation/global/tools/includes/optional/t_xml1.inc652
-rw-r--r--testautomation/global/tools/includes/optional/t_xml2.inc492
-rw-r--r--testautomation/global/tools/includes/optional/t_xml_filter1.inc822
-rw-r--r--testautomation/global/tools/includes/required/t_dir.inc342
-rwxr-xr-xtestautomation/global/tools/includes/required/t_doc1.inc456
-rw-r--r--testautomation/global/tools/includes/required/t_doc2.inc258
-rw-r--r--testautomation/global/tools/includes/required/t_files.inc929
-rw-r--r--testautomation/global/tools/includes/required/t_filters.inc549
-rw-r--r--testautomation/global/tools/includes/required/t_lists.inc599
-rw-r--r--testautomation/global/tools/includes/required/t_menu.inc924
-rw-r--r--testautomation/global/tools/includes/required/t_option.inc556
-rw-r--r--testautomation/global/tools/includes/required/t_option2.inc554
-rw-r--r--testautomation/global/tools/includes/required/t_tools1.inc1148
-rw-r--r--testautomation/global/tools/includes/required/t_tools2.inc736
-rw-r--r--testautomation/global/tools/includes/required/t_tools3.inc1256
-rwxr-xr-xtestautomation/global/tools/resetoffice.bas75
-rwxr-xr-xtestautomation/global/tools/wintree.bas39
-rw-r--r--testautomation/global/win/bars.win1402
-rw-r--r--testautomation/global/win/dial_a_c.win284
-rw-r--r--testautomation/global/win/dial_d_h.win546
-rw-r--r--testautomation/global/win/dial_i_o.win444
-rw-r--r--testautomation/global/win/dial_p_s.win368
-rw-r--r--testautomation/global/win/dial_t_z.win326
-rw-r--r--testautomation/global/win/dokument.win73
-rw-r--r--testautomation/global/win/e_mathop.win202
-rw-r--r--testautomation/global/win/edia_a_c.win480
-rw-r--r--testautomation/global/win/edia_d_h.win531
-rw-r--r--testautomation/global/win/edia_i_o.win319
-rwxr-xr-xtestautomation/global/win/edia_p_s.win674
-rw-r--r--testautomation/global/win/edia_t_z.win314
-rw-r--r--testautomation/global/win/etab_a_d.win474
-rw-r--r--testautomation/global/win/etab_e_g.win374
-rw-r--r--testautomation/global/win/etab_h_o.win239
-rw-r--r--testautomation/global/win/etab_p_s.win121
-rw-r--r--testautomation/global/win/etab_t_z.win149
-rw-r--r--testautomation/global/win/etoolbox.win61
-rw-r--r--testautomation/global/win/mathop.win204
-rw-r--r--testautomation/global/win/piloten.win74
-rw-r--r--testautomation/global/win/reportdesigner.win86
-rw-r--r--testautomation/global/win/spadmin.win107
-rw-r--r--testautomation/global/win/sys_dial.win128
-rw-r--r--testautomation/global/win/tab_a_d.win374
-rw-r--r--testautomation/global/win/tab_e_g.win302
-rw-r--r--testautomation/global/win/tab_h_o.win489
-rw-r--r--testautomation/global/win/tab_p_s.win287
-rw-r--r--testautomation/global/win/tab_t_z.win401
-rw-r--r--testautomation/global/win/w_autop.win29
-rwxr-xr-xtestautomation/graphics/optional/d_export_graphic_a.bas74
-rwxr-xr-xtestautomation/graphics/optional/d_export_graphic_b.bas73
-rwxr-xr-xtestautomation/graphics/optional/export_graphic_a.bas73
-rwxr-xr-xtestautomation/graphics/optional/export_graphic_b.bas73
-rwxr-xr-xtestautomation/graphics/optional/g_accessability.bas60
-rwxr-xr-xtestautomation/graphics/optional/g_area.bas57
-rwxr-xr-xtestautomation/graphics/optional/g_arrangealign.bas79
-rwxr-xr-xtestautomation/graphics/optional/g_autocorrection.bas71
-rwxr-xr-xtestautomation/graphics/optional/g_character.bas66
-rwxr-xr-xtestautomation/graphics/optional/g_clipboard.bas76
-rwxr-xr-xtestautomation/graphics/optional/g_clipexport.bas68
-rwxr-xr-xtestautomation/graphics/optional/g_convertto.bas73
-rwxr-xr-xtestautomation/graphics/optional/g_crossfading.bas57
-rwxr-xr-xtestautomation/graphics/optional/g_customshapes.bas59
-rwxr-xr-xtestautomation/graphics/optional/g_demoguide.bas56
-rwxr-xr-xtestautomation/graphics/optional/g_dimensions.bas55
-rwxr-xr-xtestautomation/graphics/optional/g_edit.bas69
-rwxr-xr-xtestautomation/graphics/optional/g_export_html.bas62
-rwxr-xr-xtestautomation/graphics/optional/g_findreplace.bas60
-rwxr-xr-xtestautomation/graphics/optional/g_format.bas70
-rwxr-xr-xtestautomation/graphics/optional/g_group.bas57
-rwxr-xr-xtestautomation/graphics/optional/g_imagemap.bas58
-rwxr-xr-xtestautomation/graphics/optional/g_insert.bas90
-rwxr-xr-xtestautomation/graphics/optional/g_line.bas58
-rwxr-xr-xtestautomation/graphics/optional/g_load_save.bas89
-rwxr-xr-xtestautomation/graphics/optional/g_mediaplayer.bas56
-rwxr-xr-xtestautomation/graphics/optional/g_navigator.bas64
-rwxr-xr-xtestautomation/graphics/optional/g_ole.bas61
-rwxr-xr-xtestautomation/graphics/optional/g_paneview.bas62
-rwxr-xr-xtestautomation/graphics/optional/g_paragraph.bas56
-rwxr-xr-xtestautomation/graphics/optional/g_savepictureas.bas65
-rwxr-xr-xtestautomation/graphics/optional/g_shaddow.bas60
-rwxr-xr-xtestautomation/graphics/optional/g_slidelayer.bas69
-rwxr-xr-xtestautomation/graphics/optional/g_spellcheck.bas65
-rwxr-xr-xtestautomation/graphics/optional/g_stylist.bas99
-rwxr-xr-xtestautomation/graphics/optional/g_tables.bas65
-rwxr-xr-xtestautomation/graphics/optional/g_toolbars.bas69
-rwxr-xr-xtestautomation/graphics/optional/g_tools.bas69
-rwxr-xr-xtestautomation/graphics/optional/g_zoom.bas57
-rwxr-xr-xtestautomation/graphics/optional/gallery.bas65
-rwxr-xr-xtestautomation/graphics/optional/gallery2.bas63
-rwxr-xr-xtestautomation/graphics/optional/i_animation.bas52
-rwxr-xr-xtestautomation/graphics/optional/i_headerfooter.bas54
-rwxr-xr-xtestautomation/graphics/optional/i_pengine.bas78
-rwxr-xr-xtestautomation/graphics/optional/i_saveloadlayout.bas56
-rwxr-xr-xtestautomation/graphics/optional/i_shape.bas56
-rwxr-xr-xtestautomation/graphics/optional/i_slidecopy.bas62
-rwxr-xr-xtestautomation/graphics/optional/i_slideshow.bas92
-rwxr-xr-xtestautomation/graphics/optional/i_us_presentation.bas57
-rwxr-xr-xtestautomation/graphics/optional/i_view.bas60
-rw-r--r--testautomation/graphics/optional/includes/global/export_graphic.inc484
-rw-r--r--testautomation/graphics/optional/includes/global/export_graphic_2.inc1445
-rw-r--r--testautomation/graphics/optional/includes/global/g_accessability.inc297
-rw-r--r--testautomation/graphics/optional/includes/global/g_area.inc407
-rw-r--r--testautomation/graphics/optional/includes/global/g_arrangealign.inc309
-rw-r--r--testautomation/graphics/optional/includes/global/g_autocorrection.inc460
-rw-r--r--testautomation/graphics/optional/includes/global/g_character.inc714
-rw-r--r--testautomation/graphics/optional/includes/global/g_clipboard.inc486
-rw-r--r--testautomation/graphics/optional/includes/global/g_clipexport.inc541
-rw-r--r--testautomation/graphics/optional/includes/global/g_clipexport2.inc429
-rw-r--r--testautomation/graphics/optional/includes/global/g_clipexport3.inc714
-rw-r--r--testautomation/graphics/optional/includes/global/g_convertto.inc369
-rw-r--r--testautomation/graphics/optional/includes/global/g_crossfading.inc267
-rw-r--r--testautomation/graphics/optional/includes/global/g_customshapes.inc848
-rw-r--r--testautomation/graphics/optional/includes/global/g_demoguide.inc499
-rw-r--r--testautomation/graphics/optional/includes/global/g_dimensions.inc116
-rw-r--r--testautomation/graphics/optional/includes/global/g_edit.inc294
-rw-r--r--testautomation/graphics/optional/includes/global/g_export_html.inc757
-rw-r--r--testautomation/graphics/optional/includes/global/g_find_replace.inc365
-rw-r--r--testautomation/graphics/optional/includes/global/g_format.inc1253
-rw-r--r--testautomation/graphics/optional/includes/global/g_group.inc107
-rw-r--r--testautomation/graphics/optional/includes/global/g_imagemap.inc159
-rw-r--r--testautomation/graphics/optional/includes/global/g_insert.inc1227
-rw-r--r--testautomation/graphics/optional/includes/global/g_line.inc533
-rw-r--r--testautomation/graphics/optional/includes/global/g_load_save.inc783
-rw-r--r--testautomation/graphics/optional/includes/global/g_mediaplayer.inc256
-rw-r--r--testautomation/graphics/optional/includes/global/g_navigator.inc309
-rw-r--r--testautomation/graphics/optional/includes/global/g_ole.inc458
-rw-r--r--testautomation/graphics/optional/includes/global/g_paneview.inc535
-rw-r--r--testautomation/graphics/optional/includes/global/g_paragraph.inc211
-rw-r--r--testautomation/graphics/optional/includes/global/g_savepictureas.inc773
-rw-r--r--testautomation/graphics/optional/includes/global/g_shaddow.inc513
-rw-r--r--testautomation/graphics/optional/includes/global/g_slidelayer.inc92
-rw-r--r--testautomation/graphics/optional/includes/global/g_spellcheck.inc377
-rw-r--r--testautomation/graphics/optional/includes/global/g_stylist.inc1054
-rw-r--r--testautomation/graphics/optional/includes/global/g_tables.inc583
-rw-r--r--testautomation/graphics/optional/includes/global/g_toolbars.inc358
-rw-r--r--testautomation/graphics/optional/includes/global/g_tools.inc580
-rw-r--r--testautomation/graphics/optional/includes/global/g_tools.inc.orig586
-rw-r--r--testautomation/graphics/optional/includes/global/g_zoom.inc133
-rw-r--r--testautomation/graphics/optional/includes/global/gallery.inc954
-rw-r--r--testautomation/graphics/optional/includes/global/gallery2.inc258
-rw-r--r--testautomation/graphics/optional/includes/impress/i_animation.inc187
-rw-r--r--testautomation/graphics/optional/includes/impress/i_headerfooter.inc685
-rw-r--r--testautomation/graphics/optional/includes/impress/i_pengine.inc762
-rw-r--r--testautomation/graphics/optional/includes/impress/i_pengine1.inc1356
-rw-r--r--testautomation/graphics/optional/includes/impress/i_pengine2.inc609
-rw-r--r--testautomation/graphics/optional/includes/impress/i_saveloadlayout.inc175
-rw-r--r--testautomation/graphics/optional/includes/impress/i_shape.inc89
-rw-r--r--testautomation/graphics/optional/includes/impress/i_slidecopy.inc979
-rw-r--r--testautomation/graphics/optional/includes/impress/i_slidelayer.inc522
-rw-r--r--testautomation/graphics/optional/includes/impress/i_slideshow.inc1244
-rw-r--r--testautomation/graphics/optional/includes/impress/i_slideshow2.inc1011
-rw-r--r--testautomation/graphics/optional/includes/impress/i_slideshow3.inc1107
-rw-r--r--testautomation/graphics/optional/includes/impress/i_stylist.inc157
-rw-r--r--testautomation/graphics/optional/includes/impress/i_us2_present.inc350
-rw-r--r--testautomation/graphics/optional/includes/impress/i_us_present.inc591
-rw-r--r--testautomation/graphics/optional/includes/impress/i_view.inc316
-rw-r--r--testautomation/graphics/optional/includes/impress/options.inc270
-rwxr-xr-xtestautomation/graphics/required/d_opt.bas72
-rwxr-xr-xtestautomation/graphics/required/d_updt.bas92
-rwxr-xr-xtestautomation/graphics/required/i_opt.bas74
-rwxr-xr-xtestautomation/graphics/required/i_updt_1.bas75
-rwxr-xr-xtestautomation/graphics/required/i_updt_2.bas79
-rw-r--r--testautomation/graphics/required/includes/draw/d_002_.inc117
-rw-r--r--testautomation/graphics/required/includes/draw/d_003_.inc91
-rw-r--r--testautomation/graphics/required/includes/draw/d_005_.inc59
-rw-r--r--testautomation/graphics/required/includes/draw/d_007.inc55
-rw-r--r--testautomation/graphics/required/includes/global/id_001.inc836
-rw-r--r--testautomation/graphics/required/includes/global/id_002.inc593
-rw-r--r--testautomation/graphics/required/includes/global/id_003.inc358
-rw-r--r--testautomation/graphics/required/includes/global/id_004.inc530
-rw-r--r--testautomation/graphics/required/includes/global/id_005.inc1040
-rw-r--r--testautomation/graphics/required/includes/global/id_006.inc473
-rw-r--r--testautomation/graphics/required/includes/global/id_007.inc588
-rw-r--r--testautomation/graphics/required/includes/global/id_008.inc83
-rw-r--r--testautomation/graphics/required/includes/global/id_009.inc294
-rw-r--r--testautomation/graphics/required/includes/global/id_011.inc1168
-rw-r--r--testautomation/graphics/required/includes/global/id_opt_1.inc1054
-rw-r--r--testautomation/graphics/required/includes/global/id_opt_2.inc100
-rw-r--r--testautomation/graphics/required/includes/impress/i_opt_1_.inc197
-rw-r--r--testautomation/graphics/required/includes/impress/im_002_.inc57
-rw-r--r--testautomation/graphics/required/includes/impress/im_003_.inc262
-rw-r--r--testautomation/graphics/required/includes/impress/im_004_.inc70
-rw-r--r--testautomation/graphics/required/includes/impress/im_005_.inc63
-rw-r--r--testautomation/graphics/required/includes/impress/im_007_.inc735
-rw-r--r--testautomation/graphics/required/includes/impress/im_011_.inc180
-rwxr-xr-xtestautomation/graphics/required/input/255chars.dxf40724
-rwxr-xr-xtestautomation/graphics/required/input/29secsound.wavbin0 -> 5204330 bytes-rwxr-xr-xtestautomation/graphics/required/input/Blueprint.odgbin0 -> 34747 bytes-rwxr-xr-xtestautomation/graphics/required/input/FormatConnector.odgbin0 -> 7205 bytes-rwxr-xr-xtestautomation/graphics/required/input/FormatConnector.odpbin0 -> 8965 bytes-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.PSDbin0 -> 122042 bytes-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.bmpbin0 -> 1456904 bytes-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.cgmbin0 -> 10850 bytes-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.dxf1234
-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.emfbin0 -> 1457144 bytes-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.epsbin0 -> 36862 bytes-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.gifbin0 -> 61548 bytes-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.giffbin0 -> 109193 bytes-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.jpegbin0 -> 10520 bytes-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.jpgbin0 -> 31861 bytes-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.metbin0 -> 1458043 bytes-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.pbmbin0 -> 61015 bytes-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.pcdbin0 -> 3944448 bytes-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.pctbin0 -> 152900 bytes-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.pcxbin0 -> 76917 bytes-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.pgm3
-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.pngbin0 -> 57476 bytes-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.ppm218
-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.rasbin0 -> 773076 bytes-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.sgfbin0 -> 23794 bytes-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.sgvbin0 -> 1212 bytes-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.svmbin0 -> 1456971 bytes-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.tgabin0 -> 318936 bytes-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.tifbin0 -> 222342 bytes-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.tiffbin0 -> 154374 bytes-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.wmfbin0 -> 486926 bytes-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.xbm29
-rwxr-xr-xtestautomation/graphics/required/input/SaveAsPicture/SaveAsPicture.xpm866
-rwxr-xr-xtestautomation/graphics/required/input/allshapes.odpbin0 -> 38069 bytes-rwxr-xr-xtestautomation/graphics/required/input/allshapes2.odpbin0 -> 33965 bytes-rwxr-xr-xtestautomation/graphics/required/input/blip.wavbin0 -> 176444 bytes-rwxr-xr-xtestautomation/graphics/required/input/diashow.odpbin0 -> 233833 bytes-rwxr-xr-xtestautomation/graphics/required/input/dotNetOverview.pptbin0 -> 6485504 bytes-rwxr-xr-xtestautomation/graphics/required/input/effects.odpbin0 -> 6174 bytes-rwxr-xr-xtestautomation/graphics/required/input/einfg.ini14
-rwxr-xr-xtestautomation/graphics/required/input/engtext.odgbin0 -> 7980 bytes-rwxr-xr-xtestautomation/graphics/required/input/engtext.odpbin0 -> 9878 bytes-rwxr-xr-xtestautomation/graphics/required/input/export_graphic2.odpbin0 -> 1526400 bytes-rwxr-xr-xtestautomation/graphics/required/input/export_graphic3.odgbin0 -> 186696 bytes-rwxr-xr-xtestautomation/graphics/required/input/export_graphic3.odpbin0 -> 188029 bytes-rwxr-xr-xtestautomation/graphics/required/input/frame1.htm16
-rwxr-xr-xtestautomation/graphics/required/input/gallery/gal_1.txt30
-rwxr-xr-xtestautomation/graphics/required/input/gallery/gal_31.txt30
-rwxr-xr-xtestautomation/graphics/required/input/gallery/gal_33.txt30
-rwxr-xr-xtestautomation/graphics/required/input/gallery/gal_34.txt30
-rwxr-xr-xtestautomation/graphics/required/input/gallery/gal_36.txt30
-rwxr-xr-xtestautomation/graphics/required/input/gallery/gal_39.txt30
-rwxr-xr-xtestautomation/graphics/required/input/gallery/gal_46.txt30
-rwxr-xr-xtestautomation/graphics/required/input/gallery/gal_48.txt30
-rwxr-xr-xtestautomation/graphics/required/input/gallery/gal_49.txt30
-rwxr-xr-xtestautomation/graphics/required/input/gallery/gal_55.txt30
-rwxr-xr-xtestautomation/graphics/required/input/gallery/gal_7.txt30
-rwxr-xr-xtestautomation/graphics/required/input/gallery/gal_81.txt29
-rwxr-xr-xtestautomation/graphics/required/input/gallery/gal_82.txt29
-rwxr-xr-xtestautomation/graphics/required/input/gallery/gal_86.txt29
-rwxr-xr-xtestautomation/graphics/required/input/gallery/gal_88.txt29
-rwxr-xr-xtestautomation/graphics/required/input/gallery/gal_oo_1.txt6
-rwxr-xr-xtestautomation/graphics/required/input/gallery/gal_oo_49.txt6
-rwxr-xr-xtestautomation/graphics/required/input/gallery/gal_oo_50.txt6
-rwxr-xr-xtestautomation/graphics/required/input/gallery/gal_oo_84.txt6
-rwxr-xr-xtestautomation/graphics/required/input/generic_de.pptbin0 -> 741376 bytes-rwxr-xr-xtestautomation/graphics/required/input/graphicexport.odgbin0 -> 115305 bytes-rwxr-xr-xtestautomation/graphics/required/input/graphicexport.odpbin0 -> 852873 bytes-rwxr-xr-xtestautomation/graphics/required/input/graphicexport_pdf.odgbin0 -> 120020 bytes-rwxr-xr-xtestautomation/graphics/required/input/graphicexport_pdf.odpbin0 -> 1676079 bytes-rwxr-xr-xtestautomation/graphics/required/input/gridtst.odgbin0 -> 7223 bytes-rwxr-xr-xtestautomation/graphics/required/input/gridtst.odpbin0 -> 8449 bytes-rwxr-xr-xtestautomation/graphics/required/input/gridtst.sxdbin0 -> 5347 bytes-rwxr-xr-xtestautomation/graphics/required/input/gridtst.sxibin0 -> 6519 bytes-rwxr-xr-xtestautomation/graphics/required/input/i_us_large.jpgbin0 -> 6483577 bytes-rwxr-xr-xtestautomation/graphics/required/input/imsusmap.cgmbin0 -> 15536 bytes-rwxr-xr-xtestautomation/graphics/required/input/leer.odgbin0 -> 7108 bytes-rwxr-xr-xtestautomation/graphics/required/input/leer.odpbin0 -> 9050 bytes-rwxr-xr-xtestautomation/graphics/required/input/ole.bmpbin0 -> 2672794 bytes-rwxr-xr-xtestautomation/graphics/required/input/oletest.odgbin0 -> 32898 bytes-rwxr-xr-xtestautomation/graphics/required/input/outlinefromwriter.odtbin0 -> 7818 bytes-rwxr-xr-xtestautomation/graphics/required/input/passwo52.sdabin0 -> 30720 bytes-rwxr-xr-xtestautomation/graphics/required/input/passwo52.sddbin0 -> 32256 bytes-rwxr-xr-xtestautomation/graphics/required/input/recht_1.odgbin0 -> 10355 bytes-rwxr-xr-xtestautomation/graphics/required/input/recht_1.odpbin0 -> 15116 bytes-rwxr-xr-xtestautomation/graphics/required/input/recht_3.odgbin0 -> 10382 bytes-rwxr-xr-xtestautomation/graphics/required/input/recht_3.odpbin0 -> 11485 bytes-rwxr-xr-xtestautomation/graphics/required/input/recht_31.odgbin0 -> 10060 bytes-rwxr-xr-xtestautomation/graphics/required/input/recht_31.odpbin0 -> 14183 bytes-rwxr-xr-xtestautomation/graphics/required/input/recht_33.odgbin0 -> 9096 bytes-rwxr-xr-xtestautomation/graphics/required/input/recht_33.odpbin0 -> 11114 bytes-rwxr-xr-xtestautomation/graphics/required/input/recht_34.odgbin0 -> 10378 bytes-rwxr-xr-xtestautomation/graphics/required/input/recht_34.odpbin0 -> 15086 bytes-rwxr-xr-xtestautomation/graphics/required/input/recht_36.odgbin0 -> 10127 bytes-rwxr-xr-xtestautomation/graphics/required/input/recht_36.odpbin0 -> 13034 bytes-rwxr-xr-xtestautomation/graphics/required/input/recht_39.odgbin0 -> 9750 bytes-rwxr-xr-xtestautomation/graphics/required/input/recht_39.odpbin0 -> 11787 bytes-rwxr-xr-xtestautomation/graphics/required/input/recht_46.odgbin0 -> 10723 bytes-rwxr-xr-xtestautomation/graphics/required/input/recht_46.odpbin0 -> 15820 bytes-rwxr-xr-xtestautomation/graphics/required/input/recht_48.odgbin0 -> 10080 bytes-rwxr-xr-xtestautomation/graphics/required/input/recht_48.odpbin0 -> 13297 bytes-rwxr-xr-xtestautomation/graphics/required/input/recht_49.odgbin0 -> 9553 bytes-rwxr-xr-xtestautomation/graphics/required/input/recht_49.odpbin0 -> 11504 bytes-rwxr-xr-xtestautomation/graphics/required/input/recht_50.odgbin0 -> 8882 bytes-rwxr-xr-xtestautomation/graphics/required/input/recht_50.odpbin0 -> 10544 bytes-rwxr-xr-xtestautomation/graphics/required/input/recht_55.odgbin0 -> 10006 bytes-rwxr-xr-xtestautomation/graphics/required/input/recht_55.odpbin0 -> 14401 bytes-rwxr-xr-xtestautomation/graphics/required/input/recht_81.odgbin0 -> 18373 bytes-rwxr-xr-xtestautomation/graphics/required/input/recht_81.odpbin0 -> 10934 bytes-rwxr-xr-xtestautomation/graphics/required/input/rightfont.odgbin0 -> 7647 bytes-rwxr-xr-xtestautomation/graphics/required/input/rightfont.odpbin0 -> 9412 bytes-rwxr-xr-xtestautomation/graphics/required/input/rightfont1.odgbin0 -> 7679 bytes-rwxr-xr-xtestautomation/graphics/required/input/rightfont1.odpbin0 -> 9444 bytes-rwxr-xr-xtestautomation/graphics/required/input/rightfont33.odgbin0 -> 7682 bytes-rwxr-xr-xtestautomation/graphics/required/input/rightfont33.odpbin0 -> 9448 bytes-rwxr-xr-xtestautomation/graphics/required/input/rightfont34.odgbin0 -> 7681 bytes-rwxr-xr-xtestautomation/graphics/required/input/rightfont34.odpbin0 -> 9445 bytes-rwxr-xr-xtestautomation/graphics/required/input/rightfont36.odgbin0 -> 7682 bytes-rwxr-xr-xtestautomation/graphics/required/input/rightfont36.odpbin0 -> 9446 bytes-rwxr-xr-xtestautomation/graphics/required/input/rightfont39.odgbin0 -> 7680 bytes-rwxr-xr-xtestautomation/graphics/required/input/rightfont39.odpbin0 -> 9445 bytes-rwxr-xr-xtestautomation/graphics/required/input/rightfont46.odgbin0 -> 7682 bytes-rwxr-xr-xtestautomation/graphics/required/input/rightfont46.odpbin0 -> 9446 bytes-rwxr-xr-xtestautomation/graphics/required/input/rightfont48.odgbin0 -> 7717 bytes-rwxr-xr-xtestautomation/graphics/required/input/rightfont48.odpbin0 -> 9476 bytes-rwxr-xr-xtestautomation/graphics/required/input/rightfont49.odgbin0 -> 7681 bytes-rwxr-xr-xtestautomation/graphics/required/input/rightfont49.odpbin0 -> 9447 bytes-rwxr-xr-xtestautomation/graphics/required/input/rightfont50.odpbin0 -> 8746 bytes-rwxr-xr-xtestautomation/graphics/required/input/rightfont55.odgbin0 -> 7681 bytes-rwxr-xr-xtestautomation/graphics/required/input/rightfont55.odpbin0 -> 9446 bytes-rwxr-xr-xtestautomation/graphics/required/input/sample.movbin0 -> 72490 bytes-rwxr-xr-xtestautomation/graphics/required/input/screen_white.wmfbin0 -> 37252 bytes-rwxr-xr-xtestautomation/graphics/required/input/shapes/1Lines.pptbin0 -> 13312 bytes-rwxr-xr-xtestautomation/graphics/required/input/shapes/2Connectors.pptbin0 -> 24064 bytes-rwxr-xr-xtestautomation/graphics/required/input/shapes/3BasicShapes.pptbin0 -> 42496 bytes-rwxr-xr-xtestautomation/graphics/required/input/shapes/4BlockArrows.pptbin0 -> 36352 bytes-rwxr-xr-xtestautomation/graphics/required/input/shapes/5Flowchart.pptbin0 -> 36352 bytes-rwxr-xr-xtestautomation/graphics/required/input/shapes/6StarsBanners.pptbin0 -> 28160 bytes-rwxr-xr-xtestautomation/graphics/required/input/shapes/7Callouts.pptbin0 -> 33792 bytes-rwxr-xr-xtestautomation/graphics/required/input/shapes/8ActionButtons.pptbin0 -> 26624 bytes-rwxr-xr-xtestautomation/graphics/required/input/silben_1.odgbin0 -> 7262 bytes-rwxr-xr-xtestautomation/graphics/required/input/silben_1.odpbin0 -> 9741 bytes-rwxr-xr-xtestautomation/graphics/required/input/silben_31.odgbin0 -> 7494 bytes-rwxr-xr-xtestautomation/graphics/required/input/silben_31.odpbin0 -> 9194 bytes-rwxr-xr-xtestautomation/graphics/required/input/silben_31.sxdbin0 -> 8237 bytes-rwxr-xr-xtestautomation/graphics/required/input/silben_31.sxibin0 -> 9899 bytes-rwxr-xr-xtestautomation/graphics/required/input/silben_33.odgbin0 -> 7313 bytes-rwxr-xr-xtestautomation/graphics/required/input/silben_33.odpbin0 -> 9123 bytes-rwxr-xr-xtestautomation/graphics/required/input/silben_34.odgbin0 -> 7911 bytes-rwxr-xr-xtestautomation/graphics/required/input/silben_34.odpbin0 -> 8428 bytes-rwxr-xr-xtestautomation/graphics/required/input/silben_36.odgbin0 -> 7241 bytes-rwxr-xr-xtestautomation/graphics/required/input/silben_36.odpbin0 -> 9732 bytes-rwxr-xr-xtestautomation/graphics/required/input/silben_39.odgbin0 -> 7269 bytes-rwxr-xr-xtestautomation/graphics/required/input/silben_39.odpbin0 -> 9087 bytes-rwxr-xr-xtestautomation/graphics/required/input/silben_46.odgbin0 -> 7197 bytes-rwxr-xr-xtestautomation/graphics/required/input/silben_46.odpbin0 -> 8445 bytes-rwxr-xr-xtestautomation/graphics/required/input/silben_48.odgbin0 -> 7268 bytes-rwxr-xr-xtestautomation/graphics/required/input/silben_48.odpbin0 -> 8454 bytes-rwxr-xr-xtestautomation/graphics/required/input/silben_49.odgbin0 -> 7303 bytes-rwxr-xr-xtestautomation/graphics/required/input/silben_49.odpbin0 -> 9143 bytes-rwxr-xr-xtestautomation/graphics/required/input/silben_50.odgbin0 -> 8222 bytes-rwxr-xr-xtestautomation/graphics/required/input/silben_50.odpbin0 -> 9927 bytes-rwxr-xr-xtestautomation/graphics/required/input/silben_55.odgbin0 -> 7158 bytes-rwxr-xr-xtestautomation/graphics/required/input/silben_55.odpbin0 -> 8992 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_1.odgbin0 -> 13092 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_1.odpbin0 -> 16509 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_1.txt152
-rwxr-xr-xtestautomation/graphics/required/input/spellb_31.odgbin0 -> 10548 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_31.odpbin0 -> 15188 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_31.txt188
-rwxr-xr-xtestautomation/graphics/required/input/spellb_33.odgbin0 -> 10054 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_33.odpbin0 -> 13618 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_33.txt152
-rwxr-xr-xtestautomation/graphics/required/input/spellb_34.odgbin0 -> 10624 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_34.odpbin0 -> 15499 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_34.txt200
-rwxr-xr-xtestautomation/graphics/required/input/spellb_36.odgbin0 -> 11043 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_36.odpbin0 -> 15528 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_36.txt184
-rwxr-xr-xtestautomation/graphics/required/input/spellb_39.odgbin0 -> 14115 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_39.odpbin0 -> 18441 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_39.txt221
-rwxr-xr-xtestautomation/graphics/required/input/spellb_49.odgbin0 -> 13466 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_49.odpbin0 -> 16938 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_49.txt152
-rwxr-xr-xtestautomation/graphics/required/input/spellb_50.odgbin0 -> 10752 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_50.odpbin0 -> 14148 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_50.txt202
-rwxr-xr-xtestautomation/graphics/required/input/spellb_55.odgbin0 -> 10541 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_55.odpbin0 -> 15187 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_55.txt199
-rwxr-xr-xtestautomation/graphics/required/input/spellb_7.odgbin0 -> 8841 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_7.odpbin0 -> 13868 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_7.txt56
-rwxr-xr-xtestautomation/graphics/required/input/spellb_82.odgbin0 -> 14978 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_82.odpbin0 -> 19689 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_82.txt196
-rwxr-xr-xtestautomation/graphics/required/input/spellb_86.odgbin0 -> 14680 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_86.odpbin0 -> 16580 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_86.txt214
-rwxr-xr-xtestautomation/graphics/required/input/spellb_88.odgbin0 -> 15497 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_88.odpbin0 -> 20549 bytes-rwxr-xr-xtestautomation/graphics/required/input/spellb_88.txt214
-rwxr-xr-xtestautomation/graphics/required/input/tbo_alf_.odgbin0 -> 243716 bytes-rwxr-xr-xtestautomation/graphics/required/input/tbo_alf_.odpbin0 -> 173471 bytes-rwxr-xr-xtestautomation/graphics/required/input/tchinese.odgbin0 -> 9813 bytes-rwxr-xr-xtestautomation/graphics/required/input/tchinese.odpbin0 -> 10574 bytes-rw-r--r--testautomation/graphics/tools/id_tools.inc1504
-rw-r--r--testautomation/graphics/tools/id_tools_2.inc740
-rwxr-xr-xtestautomation/graphics/tools/locale_1.txt134
-rwxr-xr-xtestautomation/graphics/tools/makeLokaleTxt.bas292
-rw-r--r--testautomation/math/optional/includes/m_101_.inc687
-rw-r--r--testautomation/math/optional/includes/m_105.inc690
-rw-r--r--testautomation/math/optional/includes/m_106_.inc65
-rwxr-xr-xtestautomation/math/optional/input/101_1.sxmbin0 -> 3284 bytes-rwxr-xr-xtestautomation/math/optional/input/101_2.sxwbin0 -> 20478 bytes-rwxr-xr-xtestautomation/math/optional/input/filter/math.sxwbin0 -> 5399 bytes-rwxr-xr-xtestautomation/math/optional/input/filter/precal_test.docbin0 -> 143360 bytes-rwxr-xr-xtestautomation/math/optional/input/filter/quantum_field.docbin0 -> 219648 bytes-rwxr-xr-xtestautomation/math/optional/input/filter/seventh_grade.docbin0 -> 244224 bytes-rwxr-xr-xtestautomation/math/optional/m_lvl1.bas60
-rwxr-xr-xtestautomation/math/required/includes/m_001_.inc687
-rw-r--r--testautomation/math/required/includes/m_002_.inc132
-rw-r--r--testautomation/math/required/includes/m_003_.inc177
-rw-r--r--testautomation/math/required/includes/m_004_.inc286
-rw-r--r--testautomation/math/required/includes/m_005_.inc324
-rw-r--r--testautomation/math/required/includes/m_006_.inc53
-rw-r--r--testautomation/math/required/includes/m_007_.inc274
-rw-r--r--testautomation/math/required/includes/m_010_.inc670
-rw-r--r--testautomation/math/required/includes/m_020_.inc72
-rwxr-xr-xtestautomation/math/required/input/ShortLicense.oxtbin0 -> 9406 bytes-rw-r--r--testautomation/math/required/input/test.odtbin0 -> 6725 bytes-rwxr-xr-xtestautomation/math/required/input/unknown-dependency.oxtbin0 -> 1633 bytes-rwxr-xr-xtestautomation/math/required/m_updt.bas81
-rw-r--r--testautomation/prj/build.lst1
-rw-r--r--testautomation/prj/d.lst4
-rwxr-xr-xtestautomation/spreadsheet/optional/c_arrayconstants.bas61
-rwxr-xr-xtestautomation/spreadsheet/optional/c_getpivotdata.bas62
-rwxr-xr-xtestautomation/spreadsheet/optional/c_import_general.bas87
-rwxr-xr-xtestautomation/spreadsheet/optional/c_namedrange.bas66
-rwxr-xr-xtestautomation/spreadsheet/optional/c_print_scale.bas53
-rwxr-xr-xtestautomation/spreadsheet/optional/c_printrange.bas67
-rwxr-xr-xtestautomation/spreadsheet/optional/c_so7_pp1.bas69
-rwxr-xr-xtestautomation/spreadsheet/optional/c_solver.bas62
-rw-r--r--testautomation/spreadsheet/optional/c_validity.bas87
-rw-r--r--testautomation/spreadsheet/optional/includes/arrayconstants/c_arrayconstants.inc312
-rw-r--r--testautomation/spreadsheet/optional/includes/getpivotdata/c_getpivotdata.inc318
-rw-r--r--testautomation/spreadsheet/optional/includes/import_general/c_import_general.inc196
-rw-r--r--testautomation/spreadsheet/optional/includes/namedrange/c_namedrange.inc188
-rw-r--r--testautomation/spreadsheet/optional/includes/printrange/c_printrange.inc923
-rw-r--r--testautomation/spreadsheet/optional/includes/printscale/c_print_scale.inc299
-rw-r--r--testautomation/spreadsheet/optional/includes/so7pp1/c_so7_pp1_ibis.inc218
-rw-r--r--testautomation/spreadsheet/optional/includes/so7pp1/c_so7_pp1_iz.inc211
-rw-r--r--testautomation/spreadsheet/optional/includes/solver/c_solver.inc221
-rw-r--r--testautomation/spreadsheet/optional/includes/validity/c_validity.inc372
-rwxr-xr-xtestautomation/spreadsheet/optional/input/111099.xlsbin0 -> 24064 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/111158.xlsbin0 -> 67584 bytes-rw-r--r--testautomation/spreadsheet/optional/input/Solver_testdoc01.odsbin0 -> 10326 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/arrayconstants.xlsbin0 -> 74752 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/datapilot.odsbin0 -> 13211 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/getpivotdata2.xlsbin0 -> 13824 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/bugdocs/1024.odsbin0 -> 12880 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/common/csv.csv7
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/common/dbase.dbfbin0 -> 1166 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/common/dbase.dbt0
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/corel/qpro6.wb2bin0 -> 7290 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/lotus/123toexcel.xlsbin0 -> 7168 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/lotus/lotus123.123bin0 -> 13540 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/lotus/lotuswk1.wk1bin0 -> 3999 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/lotus/lotuswks.wksbin0 -> 6902 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/dif.DIF110
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/excel2.xlsbin0 -> 31481 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/excel3.xlsbin0 -> 23510 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/excel4.xlsbin0 -> 12517 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/excel95.xlsbin0 -> 60416 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/excel95tmpl.xltbin0 -> 34816 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/excel97.xlsbin0 -> 51712 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/excel97tmpl.xltbin0 -> 51712 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/excelxml.xml254
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/ms_excel_2007_binary.xlsbbin0 -> 8797 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/ms_excel_2007_xml.xlsxbin0 -> 8210 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/ms_excel_2007_xml_macroenabled.xlsmbin0 -> 8243 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/ms_excel_2007_xml_template.xltxbin0 -> 8218 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/ms_excel_2007_xml_template_macroenabled.xltmbin0 -> 8246 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/sylk.slk1
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/preselected_filter/rtf.rtf218
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/preselected_filter/txt.txt7
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/sun/so1.sdcbin0 -> 80228 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/sun/so3.sdcbin0 -> 29696 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/sun/so3tmpl.vorbin0 -> 19456 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/sun/so4.sdcbin0 -> 131584 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/sun/so4tmpl.vorbin0 -> 24576 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/sun/so5.sdcbin0 -> 24064 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/sun/so5tmpl.vorbin0 -> 404480 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/sun/so7.sxcbin0 -> 14926 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/sun/so7tmpl.stcbin0 -> 11367 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/sun/so8.odsbin0 -> 38161 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/sun/so8tmpl.otsbin0 -> 37500 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/tableimport/HTML_Doc_Numberformats_in_table.html107
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/tableimport/HTML_Doc_Numberformats_in_table.rtf62
-rwxr-xr-xtestautomation/spreadsheet/optional/input/namedrange.sxcbin0 -> 6538 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/printrange.sxcbin0 -> 9648 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/printrange.xlsbin0 -> 41984 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/printranges_3defined.odsbin0 -> 13408 bytes-rw-r--r--testautomation/spreadsheet/optional/input/stest_large.odsbin0 -> 23467 bytes-rwxr-xr-xtestautomation/spreadsheet/optional/input/validity.odsbin0 -> 22633 bytes-rwxr-xr-xtestautomation/spreadsheet/required/c_updt1.bas72
-rwxr-xr-xtestautomation/spreadsheet/required/c_updt2.bas75
-rw-r--r--testautomation/spreadsheet/required/includes/c_upd_datamenu.inc1041
-rw-r--r--testautomation/spreadsheet/required/includes/c_upd_editmenu.inc1024
-rw-r--r--testautomation/spreadsheet/required/includes/c_upd_editmenu2.inc666
-rw-r--r--testautomation/spreadsheet/required/includes/c_upd_filemenu.inc685
-rw-r--r--testautomation/spreadsheet/required/includes/c_upd_formatmenu.inc947
-rw-r--r--testautomation/spreadsheet/required/includes/c_upd_formatmenu2.inc804
-rw-r--r--testautomation/spreadsheet/required/includes/c_upd_formatmenu3.inc1051
-rw-r--r--testautomation/spreadsheet/required/includes/c_upd_helpmenu.inc119
-rw-r--r--testautomation/spreadsheet/required/includes/c_upd_insertmenu.inc1313
-rw-r--r--testautomation/spreadsheet/required/includes/c_upd_toolsmenu.inc957
-rw-r--r--testautomation/spreadsheet/required/includes/c_upd_toolsmenu2.inc517
-rw-r--r--testautomation/spreadsheet/required/includes/c_upd_viewmenu.inc395
-rw-r--r--testautomation/spreadsheet/required/includes/c_upd_windowmenu.inc141
-rwxr-xr-xtestautomation/spreadsheet/required/input/Database_Refresh.odsbin0 -> 10588 bytes-rw-r--r--testautomation/spreadsheet/required/input/DocwithMacro.odsbin0 -> 7765 bytes-rw-r--r--testautomation/spreadsheet/required/input/HTML_Doc_Numberformats_in_table.html107
-rwxr-xr-xtestautomation/spreadsheet/required/input/datapilot.odsbin0 -> 12613 bytes-rwxr-xr-xtestautomation/spreadsheet/required/input/english.odsbin0 -> 6384 bytes-rwxr-xr-xtestautomation/spreadsheet/required/input/korean.odsbin0 -> 12224 bytes-rwxr-xr-xtestautomation/spreadsheet/required/input/linkclient.odsbin0 -> 6185 bytes-rwxr-xr-xtestautomation/spreadsheet/required/input/linkserver.odsbin0 -> 5995 bytes-rwxr-xr-xtestautomation/spreadsheet/required/input/merge.odsbin0 -> 6349 bytes-rwxr-xr-xtestautomation/spreadsheet/required/input/recentdocument.odsbin0 -> 6141 bytes-rwxr-xr-xtestautomation/spreadsheet/required/input/tEditObject.odsbin0 -> 11589 bytes-rwxr-xr-xtestautomation/spreadsheet/required/input/tFileOpen_CSV.csv3
-rwxr-xr-xtestautomation/spreadsheet/required/input/tFileOpen_DBF.dbfbin0 -> 1166 bytes-rwxr-xr-xtestautomation/spreadsheet/required/input/tFileOpen_DBF.dbt0
-rwxr-xr-xtestautomation/spreadsheet/required/input/twoobjects.odsbin0 -> 7269 bytes-rwxr-xr-xtestautomation/spreadsheet/required/input/twosheets.odsbin0 -> 6411 bytes-rw-r--r--testautomation/spreadsheet/tools/includes/c_cell_tools.inc102
-rw-r--r--testautomation/spreadsheet/tools/includes/c_l10n_tools.inc232
-rw-r--r--testautomation/spreadsheet/tools/includes/c_select_tools.inc232
-rw-r--r--testautomation/spreadsheet/tools/includes/c_tool_l10n_mnomics.inc160
-rw-r--r--testautomation/spreadsheet/tools/includes/c_tool_options.inc95
-rw-r--r--testautomation/spreadsheet/tools/includes/c_validity_tools.inc139
-rwxr-xr-xtestautomation/spreadsheet/tools/input/Errorcodes.odsbin0 -> 13154 bytes-rwxr-xr-xtestautomation/spreadsheet/tools/input/Functionnames.odsbin0 -> 25806 bytes-rwxr-xr-xtestautomation/tools/analyze/app.srs2807
-rwxr-xr-xtestautomation/tools/analyze/make_summary.pl127
-rwxr-xr-xtestautomation/tools/analyze/translate_res_file.pl241
-rwxr-xr-xtestautomation/tools/run_tests/run_tests.sh196
-rwxr-xr-xtestautomation/tools/run_tests/run_tests.vbs182
-rw-r--r--testautomation/writer/optional/includes/CJKCTLDependency/CJKCTLDependency1.inc980
-rw-r--r--testautomation/writer/optional/includes/alternative_text/w_alternative_text.inc296
-rw-r--r--testautomation/writer/optional/includes/autocorrection/w_autocorrect1.inc1446
-rw-r--r--testautomation/writer/optional/includes/autocorrection/w_autocorrect2.inc474
-rw-r--r--testautomation/writer/optional/includes/autotext/w_autotext.inc658
-rw-r--r--testautomation/writer/optional/includes/calculate/w_calculate.inc463
-rw-r--r--testautomation/writer/optional/includes/chinesetranslate/w_chinesetranslate1.inc409
-rw-r--r--testautomation/writer/optional/includes/chinesetranslate/w_chinesetranslate2.inc454
-rw-r--r--testautomation/writer/optional/includes/clipboard/clipbrd_func.inc447
-rw-r--r--testautomation/writer/optional/includes/clipboard/w_210_.inc455
-rw-r--r--testautomation/writer/optional/includes/clipboard/w_211_.inc540
-rw-r--r--testautomation/writer/optional/includes/clipboard/w_212_.inc532
-rw-r--r--testautomation/writer/optional/includes/clipboard/w_213_.inc533
-rw-r--r--testautomation/writer/optional/includes/clipboard/w_214_.inc524
-rw-r--r--testautomation/writer/optional/includes/clipboard/w_215_.inc448
-rw-r--r--testautomation/writer/optional/includes/clipboard/w_216_.inc440
-rw-r--r--testautomation/writer/optional/includes/clipboard/w_217_.inc393
-rw-r--r--testautomation/writer/optional/includes/clipboard/w_218_.inc402
-rw-r--r--testautomation/writer/optional/includes/clipboard/w_219_.inc397
-rw-r--r--testautomation/writer/optional/includes/clipboard/w_220_.inc392
-rw-r--r--testautomation/writer/optional/includes/clipboard/w_221_.inc430
-rw-r--r--testautomation/writer/optional/includes/clipboard/w_222_.inc432
-rw-r--r--testautomation/writer/optional/includes/contextmenu/w_contextmenu1.inc434
-rw-r--r--testautomation/writer/optional/includes/drawing/w_drawing_tools1.inc1027
-rw-r--r--testautomation/writer/optional/includes/drawing/w_drawing_tools2.inc698
-rw-r--r--testautomation/writer/optional/includes/dropdownLB/w_dropdownLB1.inc1093
-rw-r--r--testautomation/writer/optional/includes/fields/w_fields1.inc384
-rw-r--r--testautomation/writer/optional/includes/fields/w_fields2.inc1035
-rw-r--r--testautomation/writer/optional/includes/fields/w_fields3.inc993
-rw-r--r--testautomation/writer/optional/includes/fields/w_fields4.inc967
-rw-r--r--testautomation/writer/optional/includes/fields/w_fields5.inc841
-rw-r--r--testautomation/writer/optional/includes/fields/w_fields6.inc830
-rw-r--r--testautomation/writer/optional/includes/fields/w_fields7.inc400
-rw-r--r--testautomation/writer/optional/includes/filter/w_filter.inc608
-rw-r--r--testautomation/writer/optional/includes/fontwork/w_fontwork1.inc400
-rw-r--r--testautomation/writer/optional/includes/formatcharacter/w_format_character1.inc750
-rw-r--r--testautomation/writer/optional/includes/formatpage/w_formatpage1.inc878
-rw-r--r--testautomation/writer/optional/includes/formatpage/w_formatpage2.inc986
-rw-r--r--testautomation/writer/optional/includes/formatpage/w_formatpage3.inc1372
-rw-r--r--testautomation/writer/optional/includes/formatpage/w_formatpage4.inc788
-rw-r--r--testautomation/writer/optional/includes/formatparagraph/w_formatparagraph1.inc1263
-rw-r--r--testautomation/writer/optional/includes/formatparagraph/w_formatparagraph2.inc1412
-rw-r--r--testautomation/writer/optional/includes/formatparagraph/w_formatparagraph3.inc1199
-rw-r--r--testautomation/writer/optional/includes/hangulhanjaonversion/hhConversion1.inc698
-rw-r--r--testautomation/writer/optional/includes/hangulhanjaonversion/hhConversion2.inc1618
-rw-r--r--testautomation/writer/optional/includes/hangulhanjaonversion/hhConversion3.inc1022
-rw-r--r--testautomation/writer/optional/includes/hyphenation/w_hyphenation.inc380
-rw-r--r--testautomation/writer/optional/includes/insertgraphic/w_insertgraphic1.inc958
-rw-r--r--testautomation/writer/optional/includes/insertgraphic/w_insertgraphic2.inc985
-rw-r--r--testautomation/writer/optional/includes/insertgraphic/w_insertgraphic3.inc1041
-rw-r--r--testautomation/writer/optional/includes/insertgraphic/w_insertgraphic4.inc831
-rw-r--r--testautomation/writer/optional/includes/insertgraphic/w_insertgraphic5.inc755
-rw-r--r--testautomation/writer/optional/includes/loadsave/w_loadsave.inc478
-rw-r--r--testautomation/writer/optional/includes/navigator/w_navigator.inc807
-rw-r--r--testautomation/writer/optional/includes/number/w_205_.inc731
-rw-r--r--testautomation/writer/optional/includes/number/w_205a_.inc875
-rw-r--r--testautomation/writer/optional/includes/number/w_206_.inc726
-rw-r--r--testautomation/writer/optional/includes/number/w_207_.inc175
-rw-r--r--testautomation/writer/optional/includes/option/wh_o_1.inc642
-rw-r--r--testautomation/writer/optional/includes/option/wh_o_2.inc485
-rw-r--r--testautomation/writer/optional/includes/option/wh_o_3.inc389
-rw-r--r--testautomation/writer/optional/includes/option/wr_o_1.inc937
-rw-r--r--testautomation/writer/optional/includes/option/wr_o_2.inc990
-rw-r--r--testautomation/writer/optional/includes/option/wr_o_3.inc1403
-rw-r--r--testautomation/writer/optional/includes/option/wr_o_4.inc988
-rw-r--r--testautomation/writer/optional/includes/option/wr_o_5.inc200
-rw-r--r--testautomation/writer/optional/includes/option/wr_o_a.inc663
-rw-r--r--testautomation/writer/optional/includes/redlining/w_redlining1.inc1233
-rw-r--r--testautomation/writer/optional/includes/redlining/w_redlining2.inc1267
-rw-r--r--testautomation/writer/optional/includes/regexp/regular.inc974
-rw-r--r--testautomation/writer/optional/includes/regexp/search.inc1697
-rw-r--r--testautomation/writer/optional/includes/regression/issuezilla/w_issuezilla_regression.inc515
-rw-r--r--testautomation/writer/optional/includes/section/w_section_1.inc620
-rw-r--r--testautomation/writer/optional/includes/section/w_section_2.inc1055
-rw-r--r--testautomation/writer/optional/includes/section/w_section_3.inc1761
-rw-r--r--testautomation/writer/optional/includes/section/w_section_4.inc1509
-rw-r--r--testautomation/writer/optional/includes/section/w_section_tools.inc186
-rw-r--r--testautomation/writer/optional/includes/shortcut/w_shortcuts.inc859
-rw-r--r--testautomation/writer/optional/includes/sorting/w_sorting1.inc646
-rw-r--r--testautomation/writer/optional/includes/sorting/w_sorting2.inc345
-rw-r--r--testautomation/writer/optional/includes/spellcheck/w_spellcheck.inc1477
-rw-r--r--testautomation/writer/optional/includes/spellcheck/w_spellcheck1.inc160
-rw-r--r--testautomation/writer/optional/includes/stylist/w_stylist.inc1024
-rw-r--r--testautomation/writer/optional/includes/table/w_204_.inc1157
-rw-r--r--testautomation/writer/optional/includes/table/w_204a_.inc1163
-rw-r--r--testautomation/writer/optional/includes/table/w_204b_.inc100
-rw-r--r--testautomation/writer/optional/includes/textframes/w_textframes1.inc1458
-rw-r--r--testautomation/writer/optional/includes/textframes/w_textframes2.inc1159
-rw-r--r--testautomation/writer/optional/includes/textframes/w_textframes3.inc1070
-rw-r--r--testautomation/writer/optional/includes/textframes/w_textframes4.inc1523
-rw-r--r--testautomation/writer/optional/includes/textframes/w_textframes5.inc739
-rwxr-xr-xtestautomation/writer/optional/includes/tools/tools1.inc347
-rwxr-xr-xtestautomation/writer/optional/includes/tools/tools2.inc412
-rwxr-xr-xtestautomation/writer/optional/includes/undo/w_undo1.inc352
-rwxr-xr-xtestautomation/writer/optional/includes/undo/w_undo_history_1.inc204
-rwxr-xr-xtestautomation/writer/optional/includes/undo/w_undo_history_2.inc528
-rwxr-xr-xtestautomation/writer/optional/includes/undo/w_undo_history_3.inc687
-rwxr-xr-xtestautomation/writer/optional/includes/undo/w_undo_history_4.inc495
-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling1.stwbin0 -> 6602 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling10.stwbin0 -> 6763 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling11.stwbin0 -> 6801 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling12.stwbin0 -> 6577 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling13.stwbin0 -> 6644 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling14.stwbin0 -> 6770 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling15.stwbin0 -> 6726 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling16.stwbin0 -> 6739 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling17.stwbin0 -> 6834 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling18.stwbin0 -> 6672 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling19.stwbin0 -> 6702 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling2.stwbin0 -> 6564 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling20.stwbin0 -> 6641 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling21.stwbin0 -> 6542 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling22.stwbin0 -> 6684 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling23.stwbin0 -> 6580 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling24.stwbin0 -> 6755 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling25.stwbin0 -> 6719 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling26.stwbin0 -> 6827 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling27.stwbin0 -> 6799 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling28.stwbin0 -> 6825 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling29.stwbin0 -> 6867 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling3.stwbin0 -> 6686 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling30.stwbin0 -> 6071 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling4.stwbin0 -> 6980 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling5.stwbin0 -> 6741 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling6.stwbin0 -> 6715 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling7.stwbin0 -> 6610 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling8.stwbin0 -> 6711 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/new_german_spelling9.stwbin0 -> 6773 bytes-rwxr-xr-xtestautomation/writer/optional/input/advanced/tToolsAutocorrectWordCompletion_4.sxwbin0 -> 5891 bytes-rwxr-xr-xtestautomation/writer/optional/input/alternative_text/jolink.jpgbin0 -> 11686 bytes-rw-r--r--testautomation/writer/optional/input/autocorrection/01-01.odtbin0 -> 7798 bytes-rw-r--r--testautomation/writer/optional/input/autocorrection/01.odtbin0 -> 7798 bytes-rwxr-xr-xtestautomation/writer/optional/input/clipboard/calc.sxcbin0 -> 9722 bytes-rwxr-xr-xtestautomation/writer/optional/input/clipboard/draw.sxdbin0 -> 10003 bytes-rwxr-xr-xtestautomation/writer/optional/input/clipboard/dummy.sxwbin0 -> 5998 bytes-rwxr-xr-xtestautomation/writer/optional/input/clipboard/dummy.txt2
-rwxr-xr-xtestautomation/writer/optional/input/clipboard/flower.gifbin0 -> 6073 bytes-rwxr-xr-xtestautomation/writer/optional/input/clipboard/html.html93
-rwxr-xr-xtestautomation/writer/optional/input/clipboard/writer.sxwbin0 -> 18839 bytes-rwxr-xr-xtestautomation/writer/optional/input/dropdownLB/DropDownListBox.docbin0 -> 23552 bytes-rwxr-xr-xtestautomation/writer/optional/input/export/filter/act_1.all16
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_1.txt19
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_1.unx16
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_1.w9519
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_3.unx17
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_3.w9515
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_31.unx17
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_31.w9516
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_33.unx16
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_33.w9515
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_34.unx16
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_34.w9515
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_39.unx16
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_39.w9515
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_46.unx16
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_46.w9516
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_49.unx16
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_49.w9519
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_50.w9518
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_55.unx16
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_55.w9516
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_7.unx16
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_7.w9516
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_81.unx16
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_81.w9518
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_82.w9518
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_86.w9521
-rwxr-xr-xtestautomation/writer/optional/input/export/filter/exlst_88.w9518
-rwxr-xr-xtestautomation/writer/optional/input/export/odt/export1.odtbin0 -> 17537 bytes-rwxr-xr-xtestautomation/writer/optional/input/export/odt/export2.odtbin0 -> 12082 bytes-rwxr-xr-xtestautomation/writer/optional/input/export/odt/export3.odtbin0 -> 54196 bytes-rwxr-xr-xtestautomation/writer/optional/input/export/odt/export4.odtbin0 -> 10133 bytes-rwxr-xr-xtestautomation/writer/optional/input/export/sdw/sw50.sdwbin0 -> 46080 bytes-rwxr-xr-xtestautomation/writer/optional/input/export/sdw/test1.sdwbin0 -> 21504 bytes-rwxr-xr-xtestautomation/writer/optional/input/export/sdw/test2.sdwbin0 -> 144896 bytes-rwxr-xr-xtestautomation/writer/optional/input/export/sxw/i50228.sxwbin0 -> 471146 bytes-rwxr-xr-xtestautomation/writer/optional/input/export/sxw/test3.sxwbin0 -> 49456 bytes-rwxr-xr-xtestautomation/writer/optional/input/fields/AboveBelow.sxwbin0 -> 5981 bytes-rwxr-xr-xtestautomation/writer/optional/input/fields/CombineTest.sxwbin0 -> 6134 bytes-rwxr-xr-xtestautomation/writer/optional/input/fields/Date.sxwbin0 -> 6011 bytes-rwxr-xr-xtestautomation/writer/optional/input/fields/Time.sxwbin0 -> 5890 bytes-rwxr-xr-xtestautomation/writer/optional/input/fields/chapterTest.sxwbin0 -> 5945 bytes-rw-r--r--testautomation/writer/optional/input/fields/diploma.ottbin0 -> 18090 bytes-rwxr-xr-xtestautomation/writer/optional/input/fields/fields_docinfos.sxwbin0 -> 10496 bytes-rwxr-xr-xtestautomation/writer/optional/input/fields/numberRange.sxwbin0 -> 29143 bytes-rwxr-xr-xtestautomation/writer/optional/input/fields/pageTest.sxwbin0 -> 5717 bytes-rwxr-xr-xtestautomation/writer/optional/input/fields/staticsTest.sxwbin0 -> 8897 bytes-rwxr-xr-xtestautomation/writer/optional/input/fields/statisticsTest.sxwbin0 -> 9094 bytes-rwxr-xr-xtestautomation/writer/optional/input/filter/if_cod_lin.txt0
-rwxr-xr-xtestautomation/writer/optional/input/filter/if_cod_w95.txt111
-rwxr-xr-xtestautomation/writer/optional/input/filter/if_st_1_all.txt72
-rwxr-xr-xtestautomation/writer/optional/input/filter/if_st_33_all.txt58
-rwxr-xr-xtestautomation/writer/optional/input/filter/if_st_34_all.txt58
-rwxr-xr-xtestautomation/writer/optional/input/filter/if_st_39_all.txt58
-rwxr-xr-xtestautomation/writer/optional/input/filter/if_st_46_all.txt63
-rwxr-xr-xtestautomation/writer/optional/input/filter/if_st_46_exe.txt5
-rwxr-xr-xtestautomation/writer/optional/input/filter/if_st_49_all.txt58
-rwxr-xr-xtestautomation/writer/optional/input/filter/if_st_55_all.txt58
-rwxr-xr-xtestautomation/writer/optional/input/filter/if_st_81_all.txt58
-rwxr-xr-xtestautomation/writer/optional/input/filter/if_st_82_all.txt58
-rwxr-xr-xtestautomation/writer/optional/input/filter/if_st_86_all.txt58
-rwxr-xr-xtestautomation/writer/optional/input/filter/if_st_88_all.txt58
-rwxr-xr-xtestautomation/writer/optional/input/filter/if_st_all.txt53
-rwxr-xr-xtestautomation/writer/optional/input/filter/if_w4w_lin.txt6
-rwxr-xr-xtestautomation/writer/optional/input/filter/lib/old/hwpreadermi.dll1557
-rwxr-xr-xtestautomation/writer/optional/input/filter/lib/old/jsreadermi.dll130
-rwxr-xr-xtestautomation/writer/optional/input/filter/lib/wps2star.dll159
-rwxr-xr-xtestautomation/writer/optional/input/filter/readme.txt16
-rwxr-xr-xtestautomation/writer/optional/input/filter/regcomp/regcompli16
-rwxr-xr-xtestautomation/writer/optional/input/filter/regcomp/regcompsi25
-rwxr-xr-xtestautomation/writer/optional/input/filter/regcomp/regcompss57
-rwxr-xr-xtestautomation/writer/optional/input/filter/sa_actua_1.txt74
-rwxr-xr-xtestautomation/writer/optional/input/filter/sa_actua_36.txt82
-rwxr-xr-xtestautomation/writer/optional/input/filter/sa_actua_49.txt74
-rwxr-xr-xtestautomation/writer/optional/input/filter/sa_actua_81.txt74
-rwxr-xr-xtestautomation/writer/optional/input/filter/sa_actua_82.txt74
-rwxr-xr-xtestautomation/writer/optional/input/filter/sa_actua_86.txt74
-rwxr-xr-xtestautomation/writer/optional/input/filter/sa_actua_88.txt74
-rwxr-xr-xtestautomation/writer/optional/input/filter/sa_sorte_1.txt74
-rwxr-xr-xtestautomation/writer/optional/input/filter/sa_sorte_36.txt82
-rwxr-xr-xtestautomation/writer/optional/input/filter/sa_sorte_49.txt74
-rwxr-xr-xtestautomation/writer/optional/input/filter/sa_sorte_81.txt74
-rwxr-xr-xtestautomation/writer/optional/input/filter/sa_sorte_82.txt74
-rwxr-xr-xtestautomation/writer/optional/input/filter/sa_sorte_86.txt74
-rwxr-xr-xtestautomation/writer/optional/input/filter/sa_sorte_88.txt74
-rwxr-xr-xtestautomation/writer/optional/input/filter/wf____1_all.txt56
-rwxr-xr-xtestautomation/writer/optional/input/filter/wf____49.all0
-rwxr-xr-xtestautomation/writer/optional/input/filter/wf____49_all.txt57
-rwxr-xr-xtestautomation/writer/optional/input/formatpage/pageLayout.sxwbin0 -> 5628 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatpage/testColumnInPage.sxwbin0 -> 5419 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatpage/testColumnInPage2.sxwbin0 -> 5409 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatpage/testColumnVertical.sxwbin0 -> 5267 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatpage/testFooterContent31.sxwbin0 -> 5488 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatpage/testFooterContent32.sxwbin0 -> 5469 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatpage/testForAutoFit.sxwbin0 -> 5542 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatpage/testHeaderContent29.sxwbin0 -> 5506 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatpage/testHeaderContent30.sxwbin0 -> 5499 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatpage/testSeparatorLine.sxwbin0 -> 5279 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/AddSpacingShouldCheck.docbin0 -> 28160 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/AddSpacingShouldNotCheck.docbin0 -> 28160 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/DropCapsTest.sxwbin0 -> 5523 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/TabsDecimal.sxwbin0 -> 5433 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/TabsTest.sxwbin0 -> 5467 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/alignmentTest.sxwbin0 -> 5114 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/alignmentTestJustified.sxwbin0 -> 5203 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/alignmentTestJustifiedCentered.sxwbin0 -> 5188 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/alignmentTestRight.sxwbin0 -> 5102 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/columnBreakParagraph.sxwbin0 -> 5242 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/columnBreakParagraphAfter.sxwbin0 -> 5090 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/columnBreakParagraphBefore.sxwbin0 -> 5245 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/eightLineAdd1Pic.sxwbin0 -> 6750 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/eightline.sxwbin0 -> 5225 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/hyphenation.sxwbin0 -> 4895 bytes-rw-r--r--testautomation/writer/optional/input/formatparagraph/hyphenationNew.odtbin0 -> 8387 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/hyphenationNew.sxwbin0 -> 5266 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/indent.sxwbin0 -> 6259 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/pageBreakAfter.sxwbin0 -> 5044 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/pageBreakBefore.sxwbin0 -> 5056 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/paragraphNumbering.sxwbin0 -> 5477 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/registerTrue.sxwbin0 -> 6345 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/spacing.sxwbin0 -> 5746 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/spacing1.sxwbin0 -> 5741 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/specialHyphenation.sxwbin0 -> 5120 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/testExpand.sxwbin0 -> 6264 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/textFlowOptions.sxwbin0 -> 5619 bytes-rwxr-xr-xtestautomation/writer/optional/input/formatparagraph/textFlowOptions1.sxwbin0 -> 7632 bytes-rwxr-xr-xtestautomation/writer/optional/input/graphics/bild.jpgbin0 -> 13711 bytes-rwxr-xr-xtestautomation/writer/optional/input/graphics/bullet.gifbin0 -> 111 bytes-rwxr-xr-xtestautomation/writer/optional/input/graphics/jolink.jpgbin0 -> 11686 bytes-rw-r--r--testautomation/writer/optional/input/hangul/hangul.html32
-rw-r--r--testautomation/writer/optional/input/hangul/hangul.sxwbin0 -> 5861 bytes-rwxr-xr-xtestautomation/writer/optional/input/hangulhanjaonversion/ChineseToKorean.sxwbin0 -> 5545 bytes-rwxr-xr-xtestautomation/writer/optional/input/hangulhanjaonversion/KoreanToChinese.sxwbin0 -> 5530 bytes-rwxr-xr-xtestautomation/writer/optional/input/hangulhanjaonversion/Replace.sxwbin0 -> 5952 bytes-rwxr-xr-xtestautomation/writer/optional/input/hangulhanjaonversion/alwayIgnore.sxwbin0 -> 5517 bytes-rwxr-xr-xtestautomation/writer/optional/input/hangulhanjaonversion/alwaysReplace.sxwbin0 -> 5411 bytes-rwxr-xr-xtestautomation/writer/optional/input/hangulhanjaonversion/drawBox.sxwbin0 -> 5727 bytes-rwxr-xr-xtestautomation/writer/optional/input/hangulhanjaonversion/hangul.sxwbin0 -> 6809 bytes-rwxr-xr-xtestautomation/writer/optional/input/hangulhanjaonversion/multiLanguage_C.sxwbin0 -> 6235 bytes-rwxr-xr-xtestautomation/writer/optional/input/hangulhanjaonversion/multiLanguage_K.sxwbin0 -> 6244 bytes-rwxr-xr-xtestautomation/writer/optional/input/hangulhanjaonversion/multiSelection.sxwbin0 -> 5542 bytes-rwxr-xr-xtestautomation/writer/optional/input/hangulhanjaonversion/noKoreanAndChinese.sxwbin0 -> 15424 bytes-rwxr-xr-xtestautomation/writer/optional/input/hangulhanjaonversion/notConvertHangulHanja.sxwbin0 -> 5594 bytes-rwxr-xr-xtestautomation/writer/optional/input/hangulhanjaonversion/replaceAll.sxwbin0 -> 5411 bytes-rwxr-xr-xtestautomation/writer/optional/input/hangulhanjaonversion/textBox.sxwbin0 -> 5722 bytes-rwxr-xr-xtestautomation/writer/optional/input/hyphenation/tHyphenation.odtbin0 -> 9034 bytes-rwxr-xr-xtestautomation/writer/optional/input/import/amipro3.sam3107
-rw-r--r--testautomation/writer/optional/input/import/dostext.txt79
-rwxr-xr-xtestautomation/writer/optional/input/import/dummy.sxwbin0 -> 5998 bytes-rwxr-xr-xtestautomation/writer/optional/input/import/hangul.hwpbin0 -> 211128 bytes-rwxr-xr-xtestautomation/writer/optional/input/import/html.html93
-rwxr-xr-xtestautomation/writer/optional/input/import/html/html.html93
-rwxr-xr-xtestautomation/writer/optional/input/import/mactext.txt1
-rwxr-xr-xtestautomation/writer/optional/input/import/pocketword.pswbin0 -> 37220 bytes-rwxr-xr-xtestautomation/writer/optional/input/import/rtf.rtf408
-rwxr-xr-xtestautomation/writer/optional/input/import/sw1.sdwbin0 -> 103329 bytes-rwxr-xr-xtestautomation/writer/optional/input/import/sw2.sdwbin0 -> 145047 bytes-rwxr-xr-xtestautomation/writer/optional/input/import/sw30.sdwbin0 -> 16896 bytes-rwxr-xr-xtestautomation/writer/optional/input/import/sw31.sdwbin0 -> 74240 bytes-rwxr-xr-xtestautomation/writer/optional/input/import/sw31.vorbin0 -> 101888 bytes-rwxr-xr-xtestautomation/writer/optional/input/import/sw40.sdwbin0 -> 219648 bytes-rwxr-xr-xtestautomation/writer/optional/input/import/sw40_sp2.vorbin0 -> 15360 bytes-rwxr-xr-xtestautomation/writer/optional/input/import/sw50.sdwbin0 -> 92672 bytes-rwxr-xr-xtestautomation/writer/optional/input/import/sw50.vorbin0 -> 33280 bytes-rwxr-xr-xtestautomation/writer/optional/input/import/sw60.sxwbin0 -> 9396 bytes-rwxr-xr-xtestautomation/writer/optional/input/import/swdos.txt3314
-rwxr-xr-xtestautomation/writer/optional/input/import/unixtext.txt64
-rwxr-xr-xtestautomation/writer/optional/input/import/wintext.txt47
-rwxr-xr-xtestautomation/writer/optional/input/import/winw97.docbin0 -> 60416 bytes-rwxr-xr-xtestautomation/writer/optional/input/import/winword6.docbin0 -> 108544 bytes-rwxr-xr-xtestautomation/writer/optional/input/import/wpsfile.wpsbin0 -> 15631 bytes-rwxr-xr-xtestautomation/writer/optional/input/import/xml2.odtbin0 -> 51176 bytes-rwxr-xr-xtestautomation/writer/optional/input/insertgraphic/Bughunter.jpgbin0 -> 33124 bytes-rwxr-xr-xtestautomation/writer/optional/input/insertgraphic/boy.gifbin0 -> 48286 bytes-rwxr-xr-xtestautomation/writer/optional/input/insertgraphic/flowers.gifbin0 -> 9333 bytes-rwxr-xr-xtestautomation/writer/optional/input/insertgraphic/game.bmpbin0 -> 75032 bytes-rwxr-xr-xtestautomation/writer/optional/input/linguistik/001.odtbin0 -> 8932 bytes-rwxr-xr-xtestautomation/writer/optional/input/linguistik/003.odtbin0 -> 9361 bytes-rwxr-xr-xtestautomation/writer/optional/input/linguistik/007.odtbin0 -> 9814 bytes-rwxr-xr-xtestautomation/writer/optional/input/linguistik/031.odtbin0 -> 8303 bytes-rwxr-xr-xtestautomation/writer/optional/input/linguistik/033.odtbin0 -> 8607 bytes-rwxr-xr-xtestautomation/writer/optional/input/linguistik/034.odtbin0 -> 8044 bytes-rwxr-xr-xtestautomation/writer/optional/input/linguistik/036.odtbin0 -> 8345 bytes-rwxr-xr-xtestautomation/writer/optional/input/linguistik/039.odtbin0 -> 8739 bytes-rwxr-xr-xtestautomation/writer/optional/input/linguistik/045.odtbin0 -> 8717 bytes-rwxr-xr-xtestautomation/writer/optional/input/linguistik/046.odtbin0 -> 8952 bytes-rwxr-xr-xtestautomation/writer/optional/input/linguistik/048.odtbin0 -> 8249 bytes-rwxr-xr-xtestautomation/writer/optional/input/linguistik/049.odtbin0 -> 7970 bytes-rwxr-xr-xtestautomation/writer/optional/input/linguistik/050.odtbin0 -> 11063 bytes-rwxr-xr-xtestautomation/writer/optional/input/linguistik/055.odtbin0 -> 9422 bytes-rwxr-xr-xtestautomation/writer/optional/input/linguistik/sprache.odtbin0 -> 71268 bytes-rwxr-xr-xtestautomation/writer/optional/input/masterdoc/dok1.sxwbin0 -> 5911 bytes-rwxr-xr-xtestautomation/writer/optional/input/masterdoc/dok2.sxwbin0 -> 5908 bytes-rwxr-xr-xtestautomation/writer/optional/input/masterdoc/dok3.sxwbin0 -> 5908 bytes-rwxr-xr-xtestautomation/writer/optional/input/masterdoc/frame.sxgbin0 -> 5431 bytes-rwxr-xr-xtestautomation/writer/optional/input/masterdoc/htmltest.sxgbin0 -> 5451 bytes-rwxr-xr-xtestautomation/writer/optional/input/masterdoc/link_of_section_test.sxwbin0 -> 6195 bytes-rwxr-xr-xtestautomation/writer/optional/input/masterdoc/update1.sxgbin0 -> 5283 bytes-rwxr-xr-xtestautomation/writer/optional/input/masterdoc/update2.sxgbin0 -> 5283 bytes-rwxr-xr-xtestautomation/writer/optional/input/masterdoc/update3.sxgbin0 -> 5278 bytes-rwxr-xr-xtestautomation/writer/optional/input/masterdoc/w_102a/st1_12.sxgbin0 -> 120199 bytes-rwxr-xr-xtestautomation/writer/optional/input/masterdoc/w_102a/st1_121.sxwbin0 -> 7410 bytes-rwxr-xr-xtestautomation/writer/optional/input/masterdoc/w_102a/st1_122.sxwbin0 -> 5455 bytes-rwxr-xr-xtestautomation/writer/optional/input/masterdoc/w_102a/st1_123.sxwbin0 -> 7315 bytes-rwxr-xr-xtestautomation/writer/optional/input/masterdoc/w_102a/st1_124.sxwbin0 -> 7649 bytes-rwxr-xr-xtestautomation/writer/optional/input/masterdoc/w_102a/st1_125.sxwbin0 -> 5174 bytes-rwxr-xr-xtestautomation/writer/optional/input/masterdoc/w_102a/st1_126.sxwbin0 -> 7103 bytes-rwxr-xr-xtestautomation/writer/optional/input/masterdoc/w_102a/st1_127.sxwbin0 -> 7103 bytes-rwxr-xr-xtestautomation/writer/optional/input/masterdoc/w_102a/st1_128.sxwbin0 -> 7133 bytes-rwxr-xr-xtestautomation/writer/optional/input/masterdoc/w_102a/st1_129.sxwbin0 -> 7103 bytes-rwxr-xr-xtestautomation/writer/optional/input/menu/drums.jpgbin0 -> 43931 bytes-rwxr-xr-xtestautomation/writer/optional/input/navigator/navigator.odtbin0 -> 123768 bytes-rw-r--r--testautomation/writer/optional/input/navigator/st1_1.sxwbin0 -> 132211 bytes-rwxr-xr-xtestautomation/writer/optional/input/number/format1.txt40
-rwxr-xr-xtestautomation/writer/optional/input/number/format31.txt40
-rwxr-xr-xtestautomation/writer/optional/input/number/format33.txt36
-rwxr-xr-xtestautomation/writer/optional/input/number/format36.txt40
-rwxr-xr-xtestautomation/writer/optional/input/number/format39.txt40
-rwxr-xr-xtestautomation/writer/optional/input/number/format44.txt40
-rwxr-xr-xtestautomation/writer/optional/input/number/format46.txt40
-rwxr-xr-xtestautomation/writer/optional/input/number/format49.txt36
-rwxr-xr-xtestautomation/writer/optional/input/number/format86.txt40
-rwxr-xr-xtestautomation/writer/optional/input/number/numbering1.sxwbin0 -> 5504 bytes-rwxr-xr-xtestautomation/writer/optional/input/number/regression/46588.docbin0 -> 19968 bytes-rwxr-xr-xtestautomation/writer/optional/input/number/regression/73790.docbin0 -> 19968 bytes-rwxr-xr-xtestautomation/writer/optional/input/number/regression/Unnumbered_outline.docbin0 -> 19456 bytes-rwxr-xr-xtestautomation/writer/optional/input/options/compatibility1.docbin0 -> 19968 bytes-rwxr-xr-xtestautomation/writer/optional/input/options/ga000907.gifbin0 -> 21777 bytes-rwxr-xr-xtestautomation/writer/optional/input/options/gridtst.sxwbin0 -> 27812 bytes-rwxr-xr-xtestautomation/writer/optional/input/options/gridtst2.sxwbin0 -> 27150 bytes-rwxr-xr-xtestautomation/writer/optional/input/options/htmltag.html19
-rwxr-xr-xtestautomation/writer/optional/input/options/options1.sxwbin0 -> 110364 bytes-rwxr-xr-xtestautomation/writer/optional/input/options/options2.sxwbin0 -> 5204 bytes-rwxr-xr-xtestautomation/writer/optional/input/options/options3.sxwbin0 -> 17454 bytes-rwxr-xr-xtestautomation/writer/optional/input/options/test.html93
-rwxr-xr-xtestautomation/writer/optional/input/options/test1.html72
-rwxr-xr-xtestautomation/writer/optional/input/options/test1_html_m5a52a8ec.jpgbin0 -> 3177 bytes-rwxr-xr-xtestautomation/writer/optional/input/options/test_html_616818a1.gifbin0 -> 2112 bytes-rwxr-xr-xtestautomation/writer/optional/input/options/test_html_8166445.jpgbin0 -> 5992 bytes-rwxr-xr-xtestautomation/writer/optional/input/options/test_html_m2e0be98f.gifbin0 -> 1597 bytes-rwxr-xr-xtestautomation/writer/optional/input/options/test_html_m3914db47.gifbin0 -> 1202 bytes-rwxr-xr-xtestautomation/writer/optional/input/options/test_html_m3ad7a8be.gifbin0 -> 1243 bytes-rwxr-xr-xtestautomation/writer/optional/input/options/wtitertest.sxwbin0 -> 68992 bytes-rwxr-xr-xtestautomation/writer/optional/input/redlining/tRedlining_15.sxwbin0 -> 5945 bytes-rwxr-xr-xtestautomation/writer/optional/input/redlining/tRedlining_4.sxwbin0 -> 5142 bytes-rw-r--r--testautomation/writer/optional/input/regression/issuezilla/i103265.odtbin0 -> 8768 bytes-rwxr-xr-xtestautomation/writer/optional/input/regression/issuezilla/i64991.odtbin0 -> 9344 bytes-rwxr-xr-xtestautomation/writer/optional/input/regression/issuezilla/i65094a.odtbin0 -> 283217 bytes-rwxr-xr-xtestautomation/writer/optional/input/regression/issuezilla/i65094b.odtbin0 -> 325787 bytes-rwxr-xr-xtestautomation/writer/optional/input/regression/issuezilla/i69521.odtbin0 -> 21558 bytes-rwxr-xr-xtestautomation/writer/optional/input/search/attrib.sxwbin0 -> 6328 bytes-rwxr-xr-xtestautomation/writer/optional/input/search/regu_aus.sxwbin0 -> 6738 bytes-rwxr-xr-xtestautomation/writer/optional/input/search/style_characters_raw.sxwbin0 -> 7592 bytes-rwxr-xr-xtestautomation/writer/optional/input/search/style_characters_styles_allone.sxwbin0 -> 8025 bytes-rwxr-xr-xtestautomation/writer/optional/input/search/such_u_e.sxwbin0 -> 8627 bytes-rwxr-xr-xtestautomation/writer/optional/input/section/Footnote.sdwbin0 -> 504320 bytes-rw-r--r--testautomation/writer/optional/input/section/bt.sxwbin0 -> 75639 bytes-rwxr-xr-xtestautomation/writer/optional/input/section/section_test.sxdbin0 -> 11573 bytes-rwxr-xr-xtestautomation/writer/optional/input/section/tParagraphSection_1.sxwbin0 -> 5942 bytes-rwxr-xr-xtestautomation/writer/optional/input/section/tScenarioSection_1.sxwbin0 -> 5121 bytes-rwxr-xr-xtestautomation/writer/optional/input/section/tScenarioSection_2.sxwbin0 -> 5473 bytes-rwxr-xr-xtestautomation/writer/optional/input/sorting/phonelist.odtbin0 -> 7519 bytes-rwxr-xr-xtestautomation/writer/optional/input/sorting/phonelist_sc.odtbin0 -> 7411 bytes-rwxr-xr-xtestautomation/writer/optional/input/sorting/sort1.odmbin0 -> 7405 bytes-rwxr-xr-xtestautomation/writer/optional/input/sorting/sort1.odtbin0 -> 7281 bytes-rwxr-xr-xtestautomation/writer/optional/input/sorting/sort2.odmbin0 -> 6313 bytes-rwxr-xr-xtestautomation/writer/optional/input/sorting/sort2.odtbin0 -> 6278 bytes-rwxr-xr-xtestautomation/writer/optional/input/sorting/sort3.odmbin0 -> 7136 bytes-rwxr-xr-xtestautomation/writer/optional/input/sorting/sort3.odtbin0 -> 7073 bytes-rwxr-xr-xtestautomation/writer/optional/input/spellcheck/Language_Guessing_Sample_Texts.odtbin0 -> 10781 bytes-rwxr-xr-xtestautomation/writer/optional/input/spellcheck/spellcheck_1.odtbin0 -> 7196 bytes-rwxr-xr-xtestautomation/writer/optional/input/spellcheck/spellcheck_33.odtbin0 -> 7196 bytes-rwxr-xr-xtestautomation/writer/optional/input/spellcheck/spellcheck_34.odtbin0 -> 7196 bytes-rwxr-xr-xtestautomation/writer/optional/input/spellcheck/spellcheck_49.odtbin0 -> 7196 bytes-rwxr-xr-xtestautomation/writer/optional/input/spellcheck/spellcheck_50.odtbin0 -> 7985 bytes-rwxr-xr-xtestautomation/writer/optional/input/spellcheck/st1_2_01.odtbin0 -> 6651 bytes-rwxr-xr-xtestautomation/writer/optional/input/spellcheck/st1_2_03.odtbin0 -> 6276 bytes-rwxr-xr-xtestautomation/writer/optional/input/spellcheck/st1_2_07.odtbin0 -> 7424 bytes-rwxr-xr-xtestautomation/writer/optional/input/spellcheck/st1_2_31.odtbin0 -> 6541 bytes-rwxr-xr-xtestautomation/writer/optional/input/spellcheck/st1_2_33.odtbin0 -> 6756 bytes-rwxr-xr-xtestautomation/writer/optional/input/spellcheck/st1_2_34.odtbin0 -> 6496 bytes-rwxr-xr-xtestautomation/writer/optional/input/spellcheck/st1_2_36.odtbin0 -> 8016 bytes-rwxr-xr-xtestautomation/writer/optional/input/spellcheck/st1_2_39.odtbin0 -> 7896 bytes-rwxr-xr-xtestautomation/writer/optional/input/spellcheck/st1_2_45.odtbin0 -> 6788 bytes-rwxr-xr-xtestautomation/writer/optional/input/spellcheck/st1_2_46.odtbin0 -> 7573 bytes-rwxr-xr-xtestautomation/writer/optional/input/spellcheck/st1_2_48.odtbin0 -> 6585 bytes-rwxr-xr-xtestautomation/writer/optional/input/spellcheck/st1_2_49.odtbin0 -> 6491 bytes-rwxr-xr-xtestautomation/writer/optional/input/spellcheck/st1_2_50.odtbin0 -> 8715 bytes-rwxr-xr-xtestautomation/writer/optional/input/spellcheck/st1_2_55.odtbin0 -> 6661 bytes-rwxr-xr-xtestautomation/writer/optional/input/st1_1.sxwbin0 -> 132211 bytes-rwxr-xr-xtestautomation/writer/optional/input/st1_13a.sxwbin0 -> 4936 bytes-rwxr-xr-xtestautomation/writer/optional/input/st1_13b.sxwbin0 -> 5543 bytes-rwxr-xr-xtestautomation/writer/optional/input/st1_14.sxwbin0 -> 5511 bytes-rwxr-xr-xtestautomation/writer/optional/input/st1_5.sxwbin0 -> 5025 bytes-rwxr-xr-xtestautomation/writer/optional/input/st1_7.sxwbin0 -> 5792 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/AnchorAsCharacter.sxwbin0 -> 5758 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/AnchorToCharacter.sxwbin0 -> 5872 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/AnchorToPage.sxwbin0 -> 5706 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/AnchorToParagraph.sxwbin0 -> 6613 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/Footer.sxwbin0 -> 6047 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/Header.sxwbin0 -> 6069 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/after.sxwbin0 -> 5702 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/before.sxwbin0 -> 5708 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/behindText.docbin0 -> 19456 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/frame.sxwbin0 -> 5958 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/frameInEndnote.sxwbin0 -> 6210 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/frameInFooter.sxwbin0 -> 5642 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/frameInFootnote.sxwbin0 -> 6137 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/frameInFrame.sxwbin0 -> 6253 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/frameInHeader.sxwbin0 -> 5671 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/frameInTable.sxwbin0 -> 8720 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/inFrontText.docbin0 -> 19456 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/inLineWithText.docbin0 -> 28160 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/lineInText.docbin0 -> 28160 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/lineOfText.docbin0 -> 19456 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/lineOfText.sxwbin0 -> 5753 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/pageColumn1.sxwbin0 -> 5577 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/pageColumn2.sxwbin0 -> 5719 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/pageParagraph.sxwbin0 -> 5810 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/square.docbin0 -> 22016 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/through.sxwbin0 -> 5711 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/tight.docbin0 -> 19456 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/twopages.sxwbin0 -> 5793 bytes-rwxr-xr-xtestautomation/writer/optional/input/textframe/wrap.sxwbin0 -> 5541 bytes-rw-r--r--testautomation/writer/optional/input/undo/htmltest.sxgbin0 -> 5451 bytes-rw-r--r--testautomation/writer/optional/input/undo/htmltest.sxwbin0 -> 5557 bytes-rw-r--r--testautomation/writer/optional/input/undo/spellcheck_undo.odtbin0 -> 7159 bytes-rwxr-xr-xtestautomation/writer/optional/input/verzeichnis/verzeichnis.sxwbin0 -> 2664060 bytes-rwxr-xr-xtestautomation/writer/optional/input/verzeichnis/verzeichnisse.sxwbin0 -> 9501 bytes-rwxr-xr-xtestautomation/writer/optional/w_CJKCTLDependency.bas89
-rwxr-xr-xtestautomation/writer/optional/w_alternative_text.bas59
-rw-r--r--testautomation/writer/optional/w_autocorrection.bas78
-rwxr-xr-xtestautomation/writer/optional/w_autotext.bas61
-rwxr-xr-xtestautomation/writer/optional/w_calculate.bas72
-rwxr-xr-xtestautomation/writer/optional/w_chinesetranslate.bas106
-rwxr-xr-xtestautomation/writer/optional/w_clipbrd.bas98
-rwxr-xr-xtestautomation/writer/optional/w_contextmenu.bas62
-rwxr-xr-xtestautomation/writer/optional/w_drawing_tools.bas72
-rwxr-xr-xtestautomation/writer/optional/w_dropdownLB.bas84
-rwxr-xr-xtestautomation/writer/optional/w_fields.bas94
-rwxr-xr-xtestautomation/writer/optional/w_filter.bas59
-rwxr-xr-xtestautomation/writer/optional/w_fontwork.bas69
-rwxr-xr-xtestautomation/writer/optional/w_formatcharacter.bas69
-rwxr-xr-xtestautomation/writer/optional/w_formatpage.bas140
-rwxr-xr-xtestautomation/writer/optional/w_formatparagraph.bas141
-rwxr-xr-xtestautomation/writer/optional/w_hhConversion.bas139
-rwxr-xr-xtestautomation/writer/optional/w_hyphenation.bas60
-rwxr-xr-xtestautomation/writer/optional/w_insertgraphic.bas131
-rwxr-xr-xtestautomation/writer/optional/w_issuezilla_regression.bas62
-rwxr-xr-xtestautomation/writer/optional/w_loadsave.bas63
-rwxr-xr-xtestautomation/writer/optional/w_navigator.bas50
-rwxr-xr-xtestautomation/writer/optional/w_numbering.bas77
-rwxr-xr-xtestautomation/writer/optional/w_opt.bas85
-rwxr-xr-xtestautomation/writer/optional/w_redlining.bas98
-rwxr-xr-xtestautomation/writer/optional/w_search.bas59
-rwxr-xr-xtestautomation/writer/optional/w_section.bas97
-rwxr-xr-xtestautomation/writer/optional/w_shortcuts.bas75
-rwxr-xr-xtestautomation/writer/optional/w_sorting.bas64
-rwxr-xr-xtestautomation/writer/optional/w_spellcheck.bas63
-rwxr-xr-xtestautomation/writer/optional/w_stylist.bas51
-rwxr-xr-xtestautomation/writer/optional/w_table.bas160
-rwxr-xr-xtestautomation/writer/optional/w_textframes.bas85
-rwxr-xr-xtestautomation/writer/optional/w_undo.bas73
-rwxr-xr-xtestautomation/writer/optional/ww_opt.bas70
-rw-r--r--testautomation/writer/required/includes/w_001_.inc1108
-rw-r--r--testautomation/writer/required/includes/w_001a_.inc468
-rw-r--r--testautomation/writer/required/includes/w_001b_.inc844
-rw-r--r--testautomation/writer/required/includes/w_002_.inc1399
-rw-r--r--testautomation/writer/required/includes/w_003_.inc641
-rw-r--r--testautomation/writer/required/includes/w_004_.inc1013
-rw-r--r--testautomation/writer/required/includes/w_004b_.inc965
-rw-r--r--testautomation/writer/required/includes/w_005_.inc1230
-rw-r--r--testautomation/writer/required/includes/w_005b_.inc1514
-rw-r--r--testautomation/writer/required/includes/w_006_.inc292
-rw-r--r--testautomation/writer/required/includes/w_007_.inc1305
-rw-r--r--testautomation/writer/required/includes/w_008_.inc61
-rw-r--r--testautomation/writer/required/includes/w_009_.inc95
-rw-r--r--testautomation/writer/required/includes/w_010_.inc1242
-rw-r--r--testautomation/writer/required/includes/w_010_1.inc878
-rw-r--r--testautomation/writer/required/includes/w_011_.inc787
-rw-r--r--testautomation/writer/required/includes/w_020_.inc971
-rwxr-xr-xtestautomation/writer/required/input/bt.sxwbin0 -> 75639 bytes-rwxr-xr-xtestautomation/writer/required/input/graphics/jolink.jpgbin0 -> 11686 bytes-rwxr-xr-xtestautomation/writer/required/input/hangul.html32
-rwxr-xr-xtestautomation/writer/required/input/hangul.sxwbin0 -> 5861 bytes-rwxr-xr-xtestautomation/writer/required/input/htmltest.sxgbin0 -> 5451 bytes-rwxr-xr-xtestautomation/writer/required/input/htmltest.sxwbin0 -> 5557 bytes-rwxr-xr-xtestautomation/writer/required/input/linguistik/001.odtbin0 -> 8932 bytes-rwxr-xr-xtestautomation/writer/required/input/linguistik/003.odtbin0 -> 9361 bytes-rwxr-xr-xtestautomation/writer/required/input/linguistik/007.odtbin0 -> 9814 bytes-rwxr-xr-xtestautomation/writer/required/input/linguistik/031.odtbin0 -> 8303 bytes-rwxr-xr-xtestautomation/writer/required/input/linguistik/033.odtbin0 -> 8607 bytes-rwxr-xr-xtestautomation/writer/required/input/linguistik/034.odtbin0 -> 8044 bytes-rwxr-xr-xtestautomation/writer/required/input/linguistik/036.odtbin0 -> 8345 bytes-rwxr-xr-xtestautomation/writer/required/input/linguistik/039.odtbin0 -> 8739 bytes-rwxr-xr-xtestautomation/writer/required/input/linguistik/045.odtbin0 -> 8717 bytes-rwxr-xr-xtestautomation/writer/required/input/linguistik/046.odtbin0 -> 8952 bytes-rwxr-xr-xtestautomation/writer/required/input/linguistik/048.odtbin0 -> 8249 bytes-rwxr-xr-xtestautomation/writer/required/input/linguistik/049.odtbin0 -> 7970 bytes-rwxr-xr-xtestautomation/writer/required/input/linguistik/055.odtbin0 -> 9422 bytes-rwxr-xr-xtestautomation/writer/required/input/linguistik/sprache.odtbin0 -> 71268 bytes-rwxr-xr-xtestautomation/writer/required/input/st1_1.sxwbin0 -> 132211 bytes-rwxr-xr-xtestautomation/writer/required/w_updt.bas96
-rw-r--r--testautomation/writer/tools/includes/w_get_locale_strings.inc180
-rw-r--r--testautomation/writer/tools/includes/w_locale_strings2.inc394
-rw-r--r--testautomation/writer/tools/includes/w_tool1.inc1041
-rwxr-xr-xtestautomation/writer/tools/includes/w_tool2.inc416
-rw-r--r--testautomation/writer/tools/includes/w_tool3.inc643
-rw-r--r--testautomation/writer/tools/includes/w_tool4.inc210
-rw-r--r--testautomation/writer/tools/includes/w_tool5.inc235
-rw-r--r--testautomation/writer/tools/includes/w_tool6.inc721
-rw-r--r--testautomation/writer/tools/includes/w_tool7.inc460
-rwxr-xr-xtestautomation/writer/tools/includes/w_tools.inc1343
-rw-r--r--testautomation/writer/tools/includes/w_tools_autocorrection.inc157
-rw-r--r--testautomation/writer/tools/includes/w_tools_drawing.inc68
-rw-r--r--testautomation/writer/tools/includes/w_tools_hyphenation.inc79
-rw-r--r--testautomation/writer/tools/includes/w_tools_undo.inc867
-rwxr-xr-xtestautomation/writer/tools/w_get_locale_strings.bas50
-rwxr-xr-xtestautomation/xml/optional/c_datapilot_pagefields.bas57
-rwxr-xr-xtestautomation/xml/optional/c_xml_print_scale.bas55
-rwxr-xr-xtestautomation/xml/optional/c_xml_scenario.bas54
-rwxr-xr-xtestautomation/xml/optional/calc_xml_7_export.bas67
-rwxr-xr-xtestautomation/xml/optional/ch_xml_japanese_candlestick.bas54
-rwxr-xr-xtestautomation/xml/optional/docbook_losa.bas63
-rwxr-xr-xtestautomation/xml/optional/draw_xml_7_export.bas69
-rwxr-xr-xtestautomation/xml/optional/f_xml_save_ms_ole.bas83
-rwxr-xr-xtestautomation/xml/optional/impress_xml_7_export.bas60
-rw-r--r--testautomation/xml/optional/includes/c_datapilot_pagefields.inc175
-rw-r--r--testautomation/xml/optional/includes/c_xml_print_scale.inc403
-rw-r--r--testautomation/xml/optional/includes/c_xml_scenario.inc433
-rw-r--r--testautomation/xml/optional/includes/ch_xml_japanese_candlestick.inc143
-rw-r--r--testautomation/xml/optional/includes/docbook_001.inc121
-rw-r--r--testautomation/xml/optional/includes/f_xml_save_ms_ole.inc251
-rw-r--r--testautomation/xml/optional/includes/sxc7_01.inc696
-rw-r--r--testautomation/xml/optional/includes/sxc7_02.inc254
-rw-r--r--testautomation/xml/optional/includes/sxc7_03.inc332
-rw-r--r--testautomation/xml/optional/includes/sxd7_01.inc634
-rw-r--r--testautomation/xml/optional/includes/sxd7_02.inc313
-rw-r--r--testautomation/xml/optional/includes/sxd7_03.inc313
-rw-r--r--testautomation/xml/optional/includes/sxd7_04.inc315
-rw-r--r--testautomation/xml/optional/includes/sxd7_05.inc259
-rw-r--r--testautomation/xml/optional/includes/sxi7_01.inc563
-rw-r--r--testautomation/xml/optional/includes/sxm7_01.inc818
-rw-r--r--testautomation/xml/optional/includes/sxw7_01.inc867
-rw-r--r--testautomation/xml/optional/includes/sxw7_01a.inc451
-rw-r--r--testautomation/xml/optional/includes/sxw7_02.inc688
-rw-r--r--testautomation/xml/optional/includes/sxw7_03.inc458
-rw-r--r--testautomation/xml/optional/includes/w_xml_vertical_alignment.inc141
-rwxr-xr-xtestautomation/xml/optional/input/calc/ExcelXML/cell_pattern.xml215
-rwxr-xr-xtestautomation/xml/optional/input/calc/ExcelXML/cellstyle.xml254
-rwxr-xr-xtestautomation/xml/optional/input/calc/ExcelXML/conditionalformat.xml583
-rwxr-xr-xtestautomation/xml/optional/input/calc/ExcelXML/dataformat.xml307
-rwxr-xr-xtestautomation/xml/optional/input/calc/ExcelXML/dataformat2.xml504
-rwxr-xr-xtestautomation/xml/optional/input/calc/ExcelXML/datarange.xml1314
-rwxr-xr-xtestautomation/xml/optional/input/calc/ExcelXML/font.xml559
-rwxr-xr-xtestautomation/xml/optional/input/calc/ExcelXML/formula.xml213
-rwxr-xr-xtestautomation/xml/optional/input/calc/ExcelXML/headerfooter.xml97
-rwxr-xr-xtestautomation/xml/optional/input/calc/ExcelXML/merge.xml126
-rwxr-xr-xtestautomation/xml/optional/input/calc/ExcelXML/pagebreak.xml154
-rwxr-xr-xtestautomation/xml/optional/input/calc/ExcelXML/pagesheet.xml140
-rwxr-xr-xtestautomation/xml/optional/input/calc/ExcelXML/rowcolumn.xml88
-rwxr-xr-xtestautomation/xml/optional/input/calc/ExcelXML/solvsamp.xml9881
-rwxr-xr-xtestautomation/xml/optional/input/calc/ooo10/NatNumtest.sxcbin0 -> 9548 bytes-rwxr-xr-xtestautomation/xml/optional/input/calc/ooo10/alien_attributes.sxcbin0 -> 5782 bytes-rwxr-xr-xtestautomation/xml/optional/input/calc/ooo10/feat906.sxcbin0 -> 7568 bytes-rwxr-xr-xtestautomation/xml/optional/input/calc/ooo10/japan.sxcbin0 -> 9864 bytes-rwxr-xr-xtestautomation/xml/optional/input/calc/ooo10/korean.sxcbin0 -> 7728 bytes-rwxr-xr-xtestautomation/xml/optional/input/calc/ooo10/pagefields_datapilot1.sxcbin0 -> 9742 bytes-rwxr-xr-xtestautomation/xml/optional/input/calc/ooo10/pagefields_datapilot2.sxcbin0 -> 9748 bytes-rwxr-xr-xtestautomation/xml/optional/input/calc/ooo10/pagefields_datapilot3.sxcbin0 -> 9744 bytes-rwxr-xr-xtestautomation/xml/optional/input/calc/ooo10/pagefields_datapilot4.sxcbin0 -> 9740 bytes-rwxr-xr-xtestautomation/xml/optional/input/calc/ooo10/simple_c.sxcbin0 -> 10931 bytes-rwxr-xr-xtestautomation/xml/optional/input/calc/ooo10/trad_c.sxcbin0 -> 8791 bytes-rwxr-xr-xtestautomation/xml/optional/input/calc/so_binary/cellformats1.sdcbin0 -> 59392 bytes-rwxr-xr-xtestautomation/xml/optional/input/calc/so_binary/cellformats2.sdcbin0 -> 79872 bytes-rwxr-xr-xtestautomation/xml/optional/input/calc/so_binary/cellformats2b.sdcbin0 -> 75264 bytes-rwxr-xr-xtestautomation/xml/optional/input/calc/so_binary/cellformats3.sdcbin0 -> 57344 bytes-rwxr-xr-xtestautomation/xml/optional/input/calc/so_binary/cellformats5.sdcbin0 -> 62976 bytes-rwxr-xr-xtestautomation/xml/optional/input/calc/so_binary/cellformats6.sdcbin0 -> 64000 bytes-rwxr-xr-xtestautomation/xml/optional/input/calc/so_binary/chart_export.sdcbin0 -> 294912 bytes-rwxr-xr-xtestautomation/xml/optional/input/calc/so_binary/conditional_formatting.sdcbin0 -> 20480 bytes-rwxr-xr-xtestautomation/xml/optional/input/calc/so_binary/controls01.sdcbin0 -> 42496 bytes-rwxr-xr-xtestautomation/xml/optional/input/calc/so_binary/database_ranges.sdcbin0 -> 25088 bytes-rwxr-xr-xtestautomation/xml/optional/input/calc/so_binary/filter_and_subtotals1.sdcbin0 -> 23552 bytes-rwxr-xr-xtestautomation/xml/optional/input/calc/so_binary/filter_and_subtotals4.sdcbin0 -> 19456 bytes-rwxr-xr-xtestautomation/xml/optional/input/calc/so_binary/matrixformula_and_notes.sdcbin0 -> 24064 bytes-rwxr-xr-xtestautomation/xml/optional/input/calc/so_binary/password3.sdcbin0 -> 76800 bytes-rwxr-xr-xtestautomation/xml/optional/input/docbook/informaltable.001.xml38
-rwxr-xr-xtestautomation/xml/optional/input/docbook/informaltable.002.xml50
-rwxr-xr-xtestautomation/xml/optional/input/docbook/informaltable.003.xml52
-rwxr-xr-xtestautomation/xml/optional/input/docbook/informaltable.004.xml49
-rwxr-xr-xtestautomation/xml/optional/input/docbook/informaltable.005.xml38
-rwxr-xr-xtestautomation/xml/optional/input/docbook/informaltable.006.xml48
-rwxr-xr-xtestautomation/xml/optional/input/docbook/informaltable.007.xml61
-rwxr-xr-xtestautomation/xml/optional/input/docbook/informaltable.008.xml52
-rwxr-xr-xtestautomation/xml/optional/input/docbook/informaltable.009.xml46
-rwxr-xr-xtestautomation/xml/optional/input/docbook/informaltable.010.xml45
-rwxr-xr-xtestautomation/xml/optional/input/docbook/informaltable.011.xml44
-rwxr-xr-xtestautomation/xml/optional/input/docbook/informaltable.012.xml36
-rwxr-xr-xtestautomation/xml/optional/input/docbook/informaltable.013.xml29
-rwxr-xr-xtestautomation/xml/optional/input/docbook/informaltable.014.xml54
-rwxr-xr-xtestautomation/xml/optional/input/docbook/inline.001.xml27
-rwxr-xr-xtestautomation/xml/optional/input/docbook/itemizedlist.001.xml27
-rwxr-xr-xtestautomation/xml/optional/input/docbook/itemizedlist.002.xml38
-rwxr-xr-xtestautomation/xml/optional/input/docbook/itemizedlist.003.xml53
-rwxr-xr-xtestautomation/xml/optional/input/docbook/link.001.xml36
-rwxr-xr-xtestautomation/xml/optional/input/docbook/literallayout.001.xml19
-rwxr-xr-xtestautomation/xml/optional/input/docbook/literallayout.002.xml21
-rwxr-xr-xtestautomation/xml/optional/input/docbook/literallayout.003.xml19
-rwxr-xr-xtestautomation/xml/optional/input/docbook/lot.001.xml56
-rwxr-xr-xtestautomation/xml/optional/input/docbook/mathml.001.xml19
-rwxr-xr-xtestautomation/xml/optional/input/docbook/methodsynopsis.001.xml55
-rwxr-xr-xtestautomation/xml/optional/input/docbook/note.001.xml18
-rwxr-xr-xtestautomation/xml/optional/input/docbook/olink.001.xml22
-rwxr-xr-xtestautomation/xml/optional/input/docbook/orderedlist.001.xml38
-rwxr-xr-xtestautomation/xml/optional/input/docbook/orderedlist.002.xml38
-rwxr-xr-xtestautomation/xml/optional/input/docbook/procedure.001.xml44
-rwxr-xr-xtestautomation/xml/optional/input/docbook/procedure.003.xml19
-rwxr-xr-xtestautomation/xml/optional/input/docbook/productionset.001.xml66
-rwxr-xr-xtestautomation/xml/optional/input/docbook/productionset.002.xml27
-rwxr-xr-xtestautomation/xml/optional/input/docbook/productionset.003.xml30
-rwxr-xr-xtestautomation/xml/optional/input/docbook/productionset.004.xml53
-rwxr-xr-xtestautomation/xml/optional/input/docbook/productionset.005.xml89
-rwxr-xr-xtestautomation/xml/optional/input/docbook/programlisting.001.xml19
-rwxr-xr-xtestautomation/xml/optional/input/docbook/programlisting.002.xml19
-rwxr-xr-xtestautomation/xml/optional/input/docbook/programlisting.003.xml45
-rwxr-xr-xtestautomation/xml/optional/input/docbook/programlistingco.001.xml78
-rwxr-xr-xtestautomation/xml/optional/input/docbook/programlistingco.002.xml34
-rwxr-xr-xtestautomation/xml/optional/input/docbook/qandaset.001.xml45
-rwxr-xr-xtestautomation/xml/optional/input/docbook/qandaset.002.xml35
-rwxr-xr-xtestautomation/xml/optional/input/docbook/qandaset.003.xml92
-rwxr-xr-xtestautomation/xml/optional/input/docbook/refentry.001.xml25
-rwxr-xr-xtestautomation/xml/optional/input/docbook/refentry.002.xml29
-rwxr-xr-xtestautomation/xml/optional/input/docbook/refentry.003.xml65
-rwxr-xr-xtestautomation/xml/optional/input/docbook/refentry.004.xml68
-rwxr-xr-xtestautomation/xml/optional/input/docbook/reference.001.xml59
-rwxr-xr-xtestautomation/xml/optional/input/docbook/revhistory.001.xml41
-rwxr-xr-xtestautomation/xml/optional/input/docbook/screen.001.xml19
-rwxr-xr-xtestautomation/xml/optional/input/docbook/sect1.001.xml53
-rwxr-xr-xtestautomation/xml/optional/input/docbook/sect1.002.xml56
-rwxr-xr-xtestautomation/xml/optional/input/docbook/section.001.xml53
-rwxr-xr-xtestautomation/xml/optional/input/docbook/section.002.xml56
-rwxr-xr-xtestautomation/xml/optional/input/docbook/section.003.xml20
-rwxr-xr-xtestautomation/xml/optional/input/docbook/segmentedlist.001.xml21
-rwxr-xr-xtestautomation/xml/optional/input/docbook/segmentedlist.002.xml23
-rwxr-xr-xtestautomation/xml/optional/input/docbook/set.001.xml31
-rwxr-xr-xtestautomation/xml/optional/input/docbook/stamp.001.xml26
-rwxr-xr-xtestautomation/xml/optional/input/docbook/stamp.002.xml31
-rwxr-xr-xtestautomation/xml/optional/input/docbook/stamp.003.xml30
-rwxr-xr-xtestautomation/xml/optional/input/docbook/stamp.004.xml30
-rwxr-xr-xtestautomation/xml/optional/input/docbook/stamp.005.xml28
-rwxr-xr-xtestautomation/xml/optional/input/docbook/stamp.006.xml29
-rwxr-xr-xtestautomation/xml/optional/input/docbook/stamp.007.xml29
-rwxr-xr-xtestautomation/xml/optional/input/docbook/stamp.008.xml27
-rwxr-xr-xtestautomation/xml/optional/input/docbook/stamp.009.xml28
-rwxr-xr-xtestautomation/xml/optional/input/docbook/stamp.010.xml28
-rwxr-xr-xtestautomation/xml/optional/input/docbook/stamp.011.xml31
-rwxr-xr-xtestautomation/xml/optional/input/docbook/stamp.012.xml41
-rwxr-xr-xtestautomation/xml/optional/input/docbook/svg.001.xml38
-rwxr-xr-xtestautomation/xml/optional/input/docbook/svg.002.xml31
-rwxr-xr-xtestautomation/xml/optional/input/docbook/table.001.xml31
-rwxr-xr-xtestautomation/xml/optional/input/docbook/table.002.xml37
-rwxr-xr-xtestautomation/xml/optional/input/docbook/table.003.xml38
-rwxr-xr-xtestautomation/xml/optional/input/docbook/table.004.xml30
-rwxr-xr-xtestautomation/xml/optional/input/docbook/table.005.xml35
-rwxr-xr-xtestautomation/xml/optional/input/docbook/table.006.xml207
-rwxr-xr-xtestautomation/xml/optional/input/docbook/template.xml17
-rwxr-xr-xtestautomation/xml/optional/input/docbook/toc.001.xml63
-rwxr-xr-xtestautomation/xml/optional/input/docbook/ulink.001.xml23
-rwxr-xr-xtestautomation/xml/optional/input/docbook/variablelist.001.xml64
-rwxr-xr-xtestautomation/xml/optional/input/docbook/variablelist.002.xml35
-rwxr-xr-xtestautomation/xml/optional/input/docbook/variablelist.003.xml26
-rwxr-xr-xtestautomation/xml/optional/input/docbook/variablelist.004.xml26
-rwxr-xr-xtestautomation/xml/optional/input/docbook/xref.001.xml98
-rwxr-xr-xtestautomation/xml/optional/input/docbook/xrefstyle.001.xml19
-rwxr-xr-xtestautomation/xml/optional/input/for_xhtml_export/Table-XHTML.odtbin0 -> 6572 bytes-rwxr-xr-xtestautomation/xml/optional/input/for_xhtml_export/border.odsbin0 -> 6700 bytes-rwxr-xr-xtestautomation/xml/optional/input/for_xhtml_export/bullets.sxwbin0 -> 16074 bytes-rwxr-xr-xtestautomation/xml/optional/input/for_xhtml_export/bullets_14364.sdwbin0 -> 19456 bytes-rwxr-xr-xtestautomation/xml/optional/input/for_xhtml_export/p_in_h.odtbin0 -> 9860 bytes-rwxr-xr-xtestautomation/xml/optional/input/for_xhtml_export/presentation_xhtml.odpbin0 -> 83785 bytes-rwxr-xr-xtestautomation/xml/optional/input/for_xhtml_export/span_split.odtbin0 -> 6651 bytes-rwxr-xr-xtestautomation/xml/optional/input/framework/ms_ole/excelOLE.docbin0 -> 26112 bytes-rwxr-xr-xtestautomation/xml/optional/input/framework/ms_ole/excelOLE.pptbin0 -> 35840 bytes-rwxr-xr-xtestautomation/xml/optional/input/framework/ms_ole/mathOLE.docbin0 -> 10752 bytes-rwxr-xr-xtestautomation/xml/optional/input/framework/ms_ole/mathOLE.pptbin0 -> 31232 bytes-rwxr-xr-xtestautomation/xml/optional/input/framework/ms_ole/mathOLE.xlsbin0 -> 9728 bytes-rwxr-xr-xtestautomation/xml/optional/input/framework/ms_ole/pptOLE.docbin0 -> 22016 bytes-rwxr-xr-xtestautomation/xml/optional/input/framework/ms_ole/pptOLE.xlsbin0 -> 14848 bytes-rwxr-xr-xtestautomation/xml/optional/input/framework/ms_ole/wordOLE.pptbin0 -> 33792 bytes-rwxr-xr-xtestautomation/xml/optional/input/framework/ms_ole/wordOLE.xlsbin0 -> 27136 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/ooo10/alien.sxdbin0 -> 6016 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/ooo10/alien.sxibin0 -> 6182 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/ooo10/chin.sxdbin0 -> 6931 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/ooo10/chin.sxibin0 -> 8119 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/ooo10/japan.sxdbin0 -> 6961 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/ooo10/japan.sxibin0 -> 8119 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/ooo10/korean.sxdbin0 -> 6916 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/ooo10/korean.sxibin0 -> 8207 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/ooo10/trad_chin.sxdbin0 -> 6887 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/ooo10/trad_chin.sxibin0 -> 8063 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18092.sdabin0 -> 38912 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18093.sdabin0 -> 30208 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18094.sdabin0 -> 32256 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18098.sdabin0 -> 32256 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18099.sdabin0 -> 31232 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18100.sdabin0 -> 31744 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18101.sdabin0 -> 28672 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18102.sdabin0 -> 30720 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18106.sdabin0 -> 30720 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18107.sdabin0 -> 31232 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18108-18115.sdabin0 -> 33280 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18116.sdabin0 -> 48640 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18117.sdabin0 -> 30720 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18118.sdabin0 -> 31232 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18119.sdabin0 -> 32256 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18120.sdabin0 -> 30720 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18121-18122.sdabin0 -> 32256 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18123.sdabin0 -> 33280 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18124.sdabin0 -> 31232 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18125.sdabin0 -> 32256 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18126.sdabin0 -> 31744 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18127-18128.sdabin0 -> 29184 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18129.sdabin0 -> 31744 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18130-18131.sdabin0 -> 31232 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18132.sdabin0 -> 36352 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18133-18134.sdabin0 -> 30208 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18135.sdabin0 -> 29184 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18136.sdabin0 -> 31232 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18137.sdabin0 -> 36352 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18138.sdabin0 -> 30208 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18139-18145.sdabin0 -> 74752 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18244.sdabin0 -> 30208 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18245.sdabin0 -> 30720 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18246-18250.sdabin0 -> 32768 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18464-18467.sdabin0 -> 30208 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18520-18524.sdabin0 -> 31744 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18526-18531.sdabin0 -> 32256 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18537-18544.sdabin0 -> 32768 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18629-18632.sdabin0 -> 28160 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18633.sdabin0 -> 28672 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18634.sdabin0 -> 29184 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18635.sdabin0 -> 27648 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/18636.sdabin0 -> 29184 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/19542-19544.sdabin0 -> 34304 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/19545-19547.sdabin0 -> 33792 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/19548-19553.sdabin0 -> 33792 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/19554-19557.sdabin0 -> 36352 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/19558-19560.sdabin0 -> 31232 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/Autolayout.sddbin0 -> 130048 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/Effects_slides.sddbin0 -> 53760 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/Effects_text_objects.sddbin0 -> 72192 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/Objects.sddbin0 -> 89088 bytes-rwxr-xr-xtestautomation/xml/optional/input/graphics/so_bin/Text.sddbin0 -> 59392 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/asian/jp_math.sxmbin0 -> 3105 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/asian/ko_math.sxmbin0 -> 3062 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/asian/zh_cn_math.sxmbin0 -> 2952 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/asian/zh_tw_math.sxmbin0 -> 3143 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/1_unary-binary.smfbin0 -> 5120 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/2_relations.smfbin0 -> 5632 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/3_set_operations.smfbin0 -> 5632 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/4_functions.smfbin0 -> 5632 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/5_operators.smfbin0 -> 5120 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/6_attributes.smfbin0 -> 5632 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/7_others.smfbin0 -> 5120 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/8_brackets.smfbin0 -> 5632 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/9_formats.smfbin0 -> 5632 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/all_commands.smfbin0 -> 8192 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/all_commands_star_math_3.0.smfbin0 -> 8192 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/all_selections.smfbin0 -> 8192 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/annuities.smfbin0 -> 5632 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/cauchy.smfbin0 -> 5632 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/chemicalelement.smfbin0 -> 5120 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/definitionstraightline.smfbin0 -> 20992 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/effectiveannualinterestrate.smfbin0 -> 5120 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/hamiltonoperator.smfbin0 -> 6144 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/investmentreturns.smfbin0 -> 5632 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/lawoferrorpropagation.smfbin0 -> 36864 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/limes.smfbin0 -> 21504 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/linearregression.smfbin0 -> 5632 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/maxwell.smfbin0 -> 6144 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/scalarproduct.smfbin0 -> 5632 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/sinus.smfbin0 -> 5120 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/squareroot.smfbin0 -> 5632 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/standarddeviation.smfbin0 -> 5632 bytes-rwxr-xr-xtestautomation/xml/optional/input/math/so_binary/vectorproduct.smfbin0 -> 5632 bytes-rwxr-xr-xtestautomation/xml/optional/input/writer/bookmark_script_note.sdwbin0 -> 18944 bytes-rwxr-xr-xtestautomation/xml/optional/input/writer/characters.sdwbin0 -> 16896 bytes-rwxr-xr-xtestautomation/xml/optional/input/writer/events_to_objects.sdwbin0 -> 65024 bytes-rwxr-xr-xtestautomation/xml/optional/input/writer/feat1318.sxwbin0 -> 6096 bytes-rwxr-xr-xtestautomation/xml/optional/input/writer/feat476.sxwbin0 -> 5891 bytes-rwxr-xr-xtestautomation/xml/optional/input/writer/fields.sdwbin0 -> 37376 bytes-rwxr-xr-xtestautomation/xml/optional/input/writer/fiscus.sxwbin0 -> 5666 bytes-rwxr-xr-xtestautomation/xml/optional/input/writer/fiscus2.sxwbin0 -> 5840 bytes-rwxr-xr-xtestautomation/xml/optional/input/writer/footnotes.sdwbin0 -> 30208 bytes-rwxr-xr-xtestautomation/xml/optional/input/writer/frames.sdwbin0 -> 24064 bytes-rwxr-xr-xtestautomation/xml/optional/input/writer/hyperlinks.sdwbin0 -> 10240 bytes-rwxr-xr-xtestautomation/xml/optional/input/writer/index_biblio.sdwbin0 -> 24576 bytes-rwxr-xr-xtestautomation/xml/optional/input/writer/index_most.sdwbin0 -> 24576 bytes-rwxr-xr-xtestautomation/xml/optional/input/writer/indexes_alpha.sdwbin0 -> 37376 bytes-rwxr-xr-xtestautomation/xml/optional/input/writer/jp_text.sxwbin0 -> 6133 bytes-rwxr-xr-xtestautomation/xml/optional/input/writer/ko_text.sxwbin0 -> 6292 bytes-rwxr-xr-xtestautomation/xml/optional/input/writer/pages.sdwbin0 -> 32768 bytes-rwxr-xr-xtestautomation/xml/optional/input/writer/paragraph01.sdwbin0 -> 25088 bytes-rwxr-xr-xtestautomation/xml/optional/input/writer/paragraph02.sdwbin0 -> 19456 bytes-rwxr-xr-xtestautomation/xml/optional/input/writer/section_main.sdwbin0 -> 32256 bytes-rwxr-xr-xtestautomation/xml/optional/input/writer/verttoline1.docbin0 -> 25600 bytes-rwxr-xr-xtestautomation/xml/optional/input/writer/zh_cn_text.sxwbin0 -> 5599 bytes-rwxr-xr-xtestautomation/xml/optional/input/writer/zh_tw_text.sxwbin0 -> 5545 bytes-rwxr-xr-xtestautomation/xml/optional/math_xml_7_export.bas91
-rwxr-xr-xtestautomation/xml/optional/w_xml_vertical_alignment.bas56
-rwxr-xr-xtestautomation/xml/optional/writer_xml_7_export.bas67
-rw-r--r--testautomation/xml/required/includes/oasis_graphics_01.inc597
-rwxr-xr-xtestautomation/xml/required/input/graphics/alien_attributes/alien_attributes_presentation.odpbin0 -> 7351 bytes-rwxr-xr-xtestautomation/xml/required/input/graphics/header_footer/allheaderfooter_fixed.odpbin0 -> 9161 bytes-rwxr-xr-xtestautomation/xml/required/input/graphics/header_footer/noheaderfooter.odpbin0 -> 10143 bytes-rwxr-xr-xtestautomation/xml/required/input/graphics/header_footer/nomasterelements.odpbin0 -> 9485 bytes-rwxr-xr-xtestautomation/xml/required/input/graphics/header_footer/someheaderfooter_varible.odpbin0 -> 10190 bytes-rwxr-xr-xtestautomation/xml/required/oasis_graphics_update.bas58
-rw-r--r--testautomation/xml/tools/includes/itools1.inc60
-rwxr-xr-xtestautomation/xml/tools/includes/xmltool1.inc103
-rw-r--r--testgraphical/document-pool/demo/CurrentTime.odsbin0 -> 8299 bytes-rw-r--r--testgraphical/document-pool/demo/knownissues.xcl8
-rw-r--r--testgraphical/document-pool/singletest/eis-test.odtbin0 -> 9623 bytes-rw-r--r--testgraphical/prechecks/makefile.mk56
-rw-r--r--testgraphical/prechecks/softwaretests.pl564
-rwxr-xr-xtestgraphical/prj/build.lst7
-rw-r--r--testgraphical/prj/d.lst0
-rw-r--r--testgraphical/qa/graphical/Test.java113
-rw-r--r--testgraphical/qa/graphical/makefile.mk57
-rw-r--r--testgraphical/references/unxlngi/demo/CurrentTime.ods.pdfbin0 -> 13916 bytes-rw-r--r--testgraphical/references/unxlngi/demo/CurrentTime.ods.ps576
-rw-r--r--testgraphical/references/unxlngi/singletest/eis-test.odt.pdfbin0 -> 14356 bytes-rw-r--r--testgraphical/references/unxlngi/singletest/eis-test.odt.ps565
-rw-r--r--testgraphical/references/unxlngi/singletest/tolerance.ini_4
-rw-r--r--testgraphical/references/unxsoli/singletest/eis-test.odt.pdfbin0 -> 9162 bytes-rw-r--r--testgraphical/references/wntmsci/demo/CurrentTime.ods.pdfbin0 -> 13916 bytes-rw-r--r--testgraphical/references/wntmsci/demo/CurrentTime.ods.ps499
-rw-r--r--testgraphical/references/wntmsci/singletest/eis-test.odt.pdfbin0 -> 9142 bytes-rw-r--r--testgraphical/references/wntmsci/singletest/eis-test.odt.ps1984
-rw-r--r--testgraphical/source/CallExternals.pm539
-rw-r--r--testgraphical/source/ConvwatchHelper.pm574
-rw-r--r--testgraphical/source/compare.pl408
-rw-r--r--testgraphical/source/cwstestresult.pl208
-rw-r--r--testgraphical/source/cwstestresulthelper.pm268
-rw-r--r--testgraphical/source/dbhelper.pm209
-rw-r--r--testgraphical/source/filehelper.pm358
-rw-r--r--testgraphical/source/fill_documents_loop.pl423
-rw-r--r--testgraphical/source/graphical_compare.pm586
-rw-r--r--testgraphical/source/loghelper.pm94
-rw-r--r--testgraphical/source/makefile.mk112
-rw-r--r--testgraphical/source/oshelper.pm110
-rw-r--r--testgraphical/source/solarenvhelper.pm63
-rw-r--r--testgraphical/source/stringhelper.pm69
-rw-r--r--testgraphical/source/timehelper.pm99
-rw-r--r--testgraphical/ui/java/ConvwatchGUIProject/build.xml74
-rw-r--r--testgraphical/ui/java/ConvwatchGUIProject/dist/ConvwatchGUIProject.jarbin0 -> 28271 bytes-rw-r--r--testgraphical/ui/java/ConvwatchGUIProject/makefile.mk71
-rw-r--r--testgraphical/ui/java/ConvwatchGUIProject/manifest.mf3
-rw-r--r--testgraphical/ui/java/ConvwatchGUIProject/nbproject/build-impl.xml805
-rw-r--r--testgraphical/ui/java/ConvwatchGUIProject/nbproject/genfiles.properties9
-rw-r--r--testgraphical/ui/java/ConvwatchGUIProject/nbproject/private/config.properties0
-rw-r--r--testgraphical/ui/java/ConvwatchGUIProject/nbproject/private/private.properties8
-rw-r--r--testgraphical/ui/java/ConvwatchGUIProject/nbproject/private/private.xml4
-rw-r--r--testgraphical/ui/java/ConvwatchGUIProject/nbproject/project.properties72
-rw-r--r--testgraphical/ui/java/ConvwatchGUIProject/nbproject/project.xml15
-rw-r--r--testgraphical/ui/java/ConvwatchGUIProject/src/ConvwatchGUI.form286
-rw-r--r--testgraphical/ui/java/ConvwatchGUIProject/src/ConvwatchGUI.java535
-rw-r--r--testgraphical/ui/java/ConvwatchGUIProject/src/IniFile.java718
-rw-r--r--testgraphical/ui/java/makefile.mk53
-rw-r--r--testgraphical/util/makefile.pmk34
-rw-r--r--testtools/com/sun/star/comp/bridge/CurrentContextChecker.java81
-rw-r--r--testtools/com/sun/star/comp/bridge/TestComponent.java1313
-rw-r--r--testtools/com/sun/star/comp/bridge/TestComponentMain.java158
-rw-r--r--testtools/com/sun/star/comp/bridge/makefile.mk61
-rw-r--r--testtools/com/sun/star/comp/bridge/manifest2
-rw-r--r--testtools/inc/makefile.mk47
-rw-r--r--testtools/inc/pch/precompiled_testtools.cxx29
-rw-r--r--testtools/inc/pch/precompiled_testtools.hxx32
-rw-r--r--testtools/prj/build.lst8
-rw-r--r--testtools/prj/d.lst0
-rw-r--r--testtools/qa/cli/CLITest.java111
-rw-r--r--testtools/qa/cli/makefile.mk82
-rw-r--r--testtools/qa/cli/readme.txt26
-rw-r--r--testtools/qa/cliversioning/VersionTestCase.java106
-rw-r--r--testtools/qa/cliversioning/makefile.mk93
-rw-r--r--testtools/readme.txt34
-rw-r--r--testtools/source/bridgetest/bridgetest.component34
-rw-r--r--testtools/source/bridgetest/bridgetest.cxx1347
-rw-r--r--testtools/source/bridgetest/cli/cli_bridgetest_inprocess.cs260
-rw-r--r--testtools/source/bridgetest/cli/cli_bridgetest_inprocess.ini3
-rw-r--r--testtools/source/bridgetest/cli/cli_cpp_bridgetest.cxx982
-rw-r--r--testtools/source/bridgetest/cli/cli_cs_bridgetest.cs1033
-rw-r--r--testtools/source/bridgetest/cli/cli_cs_multi.cs119
-rw-r--r--testtools/source/bridgetest/cli/cli_cs_testobj.cs909
-rw-r--r--testtools/source/bridgetest/cli/cli_vb_bridgetest.vb862
-rw-r--r--testtools/source/bridgetest/cli/cli_vb_testobj.vb624
-rw-r--r--testtools/source/bridgetest/cli/makefile.mk203
-rw-r--r--testtools/source/bridgetest/constructors.component37
-rw-r--r--testtools/source/bridgetest/constructors.cxx510
-rw-r--r--testtools/source/bridgetest/cppobj.component34
-rw-r--r--testtools/source/bridgetest/cppobj.cxx1207
-rw-r--r--testtools/source/bridgetest/currentcontextchecker.cxx129
-rw-r--r--testtools/source/bridgetest/currentcontextchecker.hxx73
-rw-r--r--testtools/source/bridgetest/idl/bridgetest.idl552
-rw-r--r--testtools/source/bridgetest/idl/makefile.mk70
-rw-r--r--testtools/source/bridgetest/makefile.mk229
-rw-r--r--testtools/source/bridgetest/multi.cxx240
-rw-r--r--testtools/source/bridgetest/multi.hxx126
-rw-r--r--testtools/source/bridgetest/pyuno/core.py367
-rw-r--r--testtools/source/bridgetest/pyuno/impl.py196
-rw-r--r--testtools/source/bridgetest/pyuno/importer.py78
-rw-r--r--testtools/source/bridgetest/pyuno/main.py49
-rw-r--r--testtools/source/bridgetest/pyuno/makefile.mk113
-rw-r--r--testtools/source/bridgetest/pyuno/pyuno2
-rw-r--r--testtools/source/bridgetest/pyuno/samplecomponent.py154
-rw-r--r--testtools/source/bridgetest/pyuno/testcomp.py40
-rw-r--r--testtools/source/bridgetest/testComponent.component38
-rw-r--r--testtools/source/cliversioning/makefile.mk142
-rw-r--r--testtools/source/cliversioning/old_version_libs_v2/readme.txt3
-rw-r--r--testtools/source/cliversioning/old_version_libs_v2/version_2_0_0.dllbin0 -> 11776 bytes-rw-r--r--testtools/source/cliversioning/old_version_libs_v2/version_2_0_1.dllbin0 -> 11776 bytes-rw-r--r--testtools/source/cliversioning/old_version_libs_v2/version_2_0_2.dllbin0 -> 11776 bytes-rw-r--r--testtools/source/cliversioning/old_version_libs_v2/version_2_0_3.dllbin0 -> 11776 bytes-rw-r--r--testtools/source/cliversioning/old_version_libs_v2/version_2_0_3r3.dllbin0 -> 11776 bytes-rw-r--r--testtools/source/cliversioning/old_version_libs_v2/version_2_0_4.dllbin0 -> 11776 bytes-rw-r--r--testtools/source/cliversioning/old_version_libs_v2/version_2_1.dllbin0 -> 11776 bytes-rw-r--r--testtools/source/cliversioning/old_version_libs_v2/version_2_2.dllbin0 -> 11776 bytes-rw-r--r--testtools/source/cliversioning/old_version_libs_v2/version_2_2_1.dllbin0 -> 11776 bytes-rw-r--r--testtools/source/cliversioning/old_version_libs_v2/version_2_3.dllbin0 -> 11776 bytes-rw-r--r--testtools/source/cliversioning/old_version_libs_v2/version_2_3_1.dllbin0 -> 11776 bytes-rw-r--r--testtools/source/cliversioning/old_version_libs_v2/version_2_4.dllbin0 -> 11776 bytes-rw-r--r--testtools/source/cliversioning/old_version_libs_v2/version_2_4_1.dllbin0 -> 11776 bytes-rw-r--r--testtools/source/cliversioning/readme.txt106
-rw-r--r--testtools/source/cliversioning/runtests.cs127
-rw-r--r--testtools/source/cliversioning/version.cs608
-rw-r--r--testtools/source/cliversioning/version_libs/readme.txt3
-rw-r--r--testtools/source/cliversioning/version_libs/version_3_0_0.dllbin0 -> 11776 bytes-rw-r--r--testtools/source/cliversioning/version_libs/version_3_0_1.dllbin0 -> 11776 bytes-rwxr-xr-xtesttools/source/cliversioning/version_libs/version_3_1.dllbin0 -> 11776 bytes-rw-r--r--testtools/source/cliversioning/version_libs/version_3_1_1.dllbin0 -> 11776 bytes-rwxr-xr-xtesttools/source/cliversioning/version_libs/version_3_2.dllbin0 -> 11776 bytes-rwxr-xr-xtesttools/source/cliversioning/version_libs/version_3_2_1.dllbin0 -> 11776 bytes-rw-r--r--testtools/source/performance/cli_testobj_performance.cs118
-rw-r--r--testtools/source/performance/exports.dxp3
-rw-r--r--testtools/source/performance/makefile.mk98
-rw-r--r--testtools/source/performance/pseudo.cxx274
-rw-r--r--testtools/source/performance/pseudo_uno_uno.map7
-rw-r--r--testtools/source/performance/ubobject.cxx308
-rw-r--r--testtools/source/performance/ubtest.cxx1337
-rw-r--r--testtools/source/servicetests/LocalServiceTest.java53
-rw-r--r--testtools/source/servicetests/RemoteServiceTest.java121
-rw-r--r--testtools/source/servicetests/TestBase.java145
-rw-r--r--testtools/source/servicetests/TestService.java197
-rw-r--r--testtools/source/servicetests/TestService1.idl55
-rw-r--r--testtools/source/servicetests/TestService2.idl47
-rw-r--r--testtools/source/servicetests/XTestService1.idl41
-rw-r--r--testtools/source/servicetests/XTestService2.idl41
-rw-r--r--testtools/source/servicetests/XTestService3.idl41
-rw-r--r--testtools/source/servicetests/XTestService4.idl41
-rw-r--r--testtools/source/servicetests/makefile.mk44
-rw-r--r--testtools/util/makefile.pmk35
-rwxr-xr-xtomcat/makefile.mk64
-rwxr-xr-xtomcat/prj/build.lst2
-rwxr-xr-xtomcat/prj/d.lst1
-rw-r--r--tomcat/tomcat.patch35
-rw-r--r--toolkit/doc/layout/ChangeLog1286
-rw-r--r--toolkit/doc/layout/ChangeLog.0546
-rw-r--r--toolkit/doc/layout/README24
-rw-r--r--toolkit/doc/layout/TODO227
-rw-r--r--toolkit/doc/layout/apinotes.txt76
-rw-r--r--toolkit/doc/layout/metricfield.txt57
-rw-r--r--toolkit/doc/layout/notes.txt117
-rw-r--r--toolkit/doc/layout/oldnotes.txt224
-rw-r--r--toolkit/doc/layout/vcl.txt20
-rw-r--r--toolkit/inc/layout/layout-post.hxx102
-rw-r--r--toolkit/inc/layout/layout-pre.hxx107
-rw-r--r--toolkit/inc/layout/layout.hxx826
-rw-r--r--toolkit/inc/makefile.mk48
-rw-r--r--toolkit/inc/pch/precompiled_toolkit.cxx29
-rw-r--r--toolkit/inc/pch/precompiled_toolkit.hxx346
-rw-r--r--toolkit/inc/toolkit/awt/vclxaccessiblecomponent.hxx166
-rw-r--r--toolkit/inc/toolkit/awt/vclxbitmap.hxx87
-rw-r--r--toolkit/inc/toolkit/awt/vclxcontainer.hxx80
-rw-r--r--toolkit/inc/toolkit/awt/vclxdevice.hxx137
-rw-r--r--toolkit/inc/toolkit/awt/vclxfont.hxx96
-rw-r--r--toolkit/inc/toolkit/awt/vclxgraphics.hxx140
-rw-r--r--toolkit/inc/toolkit/awt/vclxmenu.hxx186
-rw-r--r--toolkit/inc/toolkit/awt/vclxpointer.hxx85
-rw-r--r--toolkit/inc/toolkit/awt/vclxprinter.hxx225
-rw-r--r--toolkit/inc/toolkit/awt/vclxregion.hxx96
-rw-r--r--toolkit/inc/toolkit/awt/vclxspinbutton.hxx100
-rw-r--r--toolkit/inc/toolkit/awt/vclxsystemdependentwindow.hxx67
-rw-r--r--toolkit/inc/toolkit/awt/vclxtoolkit.hxx217
-rw-r--r--toolkit/inc/toolkit/awt/vclxtopwindow.hxx123
-rw-r--r--toolkit/inc/toolkit/awt/vclxwindow.hxx243
-rw-r--r--toolkit/inc/toolkit/awt/vclxwindows.hxx1162
-rw-r--r--toolkit/inc/toolkit/awt/xsimpleanimation.hxx92
-rw-r--r--toolkit/inc/toolkit/awt/xthrobber.hxx88
-rw-r--r--toolkit/inc/toolkit/controls/accessiblecontrolcontext.hxx136
-rw-r--r--toolkit/inc/toolkit/controls/dialogcontrol.hxx312
-rw-r--r--toolkit/inc/toolkit/controls/eventcontainer.hxx142
-rw-r--r--toolkit/inc/toolkit/controls/formattedcontrol.hxx127
-rw-r--r--toolkit/inc/toolkit/controls/geometrycontrolmodel.hxx262
-rw-r--r--toolkit/inc/toolkit/controls/geometrycontrolmodel_impl.hxx90
-rw-r--r--toolkit/inc/toolkit/controls/roadmapcontrol.hxx206
-rw-r--r--toolkit/inc/toolkit/controls/roadmapentry.hxx91
-rw-r--r--toolkit/inc/toolkit/controls/stdtabcontroller.hxx94
-rw-r--r--toolkit/inc/toolkit/controls/stdtabcontrollermodel.hxx142
-rw-r--r--toolkit/inc/toolkit/controls/tkscrollbar.hxx124
-rw-r--r--toolkit/inc/toolkit/controls/tksimpleanimation.hxx111
-rw-r--r--toolkit/inc/toolkit/controls/tkspinbutton.hxx127
-rw-r--r--toolkit/inc/toolkit/controls/tkthrobber.hxx109
-rw-r--r--toolkit/inc/toolkit/controls/unocontrol.hxx245
-rw-r--r--toolkit/inc/toolkit/controls/unocontrolbase.hxx69
-rw-r--r--toolkit/inc/toolkit/controls/unocontrolcontainer.hxx166
-rw-r--r--toolkit/inc/toolkit/controls/unocontrolcontainermodel.hxx66
-rw-r--r--toolkit/inc/toolkit/controls/unocontrolmodel.hxx176
-rw-r--r--toolkit/inc/toolkit/controls/unocontrols.hxx1505
-rw-r--r--toolkit/inc/toolkit/dllapi.h40
-rw-r--r--toolkit/inc/toolkit/helper/accessibilityclient.hxx73
-rw-r--r--toolkit/inc/toolkit/helper/accessiblefactory.hxx141
-rw-r--r--toolkit/inc/toolkit/helper/convert.hxx67
-rw-r--r--toolkit/inc/toolkit/helper/emptyfontdescriptor.hxx56
-rw-r--r--toolkit/inc/toolkit/helper/externallock.hxx45
-rw-r--r--toolkit/inc/toolkit/helper/fixedhyperbase.hxx57
-rw-r--r--toolkit/inc/toolkit/helper/formpdfexport.hxx63
-rw-r--r--toolkit/inc/toolkit/helper/imagealign.hxx63
-rw-r--r--toolkit/inc/toolkit/helper/listenermultiplexer.hxx255
-rw-r--r--toolkit/inc/toolkit/helper/macros.hxx270
-rw-r--r--toolkit/inc/toolkit/helper/mutexandbroadcasthelper.hxx57
-rw-r--r--toolkit/inc/toolkit/helper/mutexhelper.hxx51
-rw-r--r--toolkit/inc/toolkit/helper/property.hxx248
-rw-r--r--toolkit/inc/toolkit/helper/servicenames.hxx108
-rw-r--r--toolkit/inc/toolkit/helper/solarrelease.hxx82
-rw-r--r--toolkit/inc/toolkit/helper/throbberimpl.hxx84
-rw-r--r--toolkit/inc/toolkit/helper/tkresmgr.hxx77
-rw-r--r--toolkit/inc/toolkit/helper/unomemorystream.hxx73
-rw-r--r--toolkit/inc/toolkit/helper/unopropertyarrayhelper.hxx66
-rw-r--r--toolkit/inc/toolkit/helper/unowrapper.hxx93
-rw-r--r--toolkit/inc/toolkit/helper/vclunohelper.hxx163
-rw-r--r--toolkit/prj/build.lst22
-rw-r--r--toolkit/prj/d.lst66
-rw-r--r--toolkit/qa/complex/toolkit/CallbackClass.java67
-rwxr-xr-xtoolkit/qa/complex/toolkit/CheckAccessibleStatusBar.java379
-rwxr-xr-xtoolkit/qa/complex/toolkit/CheckAccessibleStatusBarItem.java439
-rw-r--r--toolkit/qa/complex/toolkit/CheckAsyncCallback.java156
-rwxr-xr-xtoolkit/qa/complex/toolkit/_XAccessibleComponent.java499
-rwxr-xr-xtoolkit/qa/complex/toolkit/_XAccessibleContext.java273
-rwxr-xr-xtoolkit/qa/complex/toolkit/_XAccessibleEventBroadcaster.java214
-rwxr-xr-xtoolkit/qa/complex/toolkit/_XAccessibleExtendedComponent.java101
-rwxr-xr-xtoolkit/qa/complex/toolkit/_XAccessibleText.java1033
-rw-r--r--toolkit/qa/complex/toolkit/_XRequestCallback.java88
-rwxr-xr-xtoolkit/qa/complex/toolkit/interface_tests/makefile.mk57
-rwxr-xr-xtoolkit/qa/complex/toolkit/makefile.mk120
-rw-r--r--toolkit/qa/complex/xunitconversion/XUnitConversionTest.java250
-rw-r--r--toolkit/qa/complex/xunitconversion/makefile.mk52
-rw-r--r--toolkit/qa/unoapi/Test.java51
-rw-r--r--toolkit/qa/unoapi/knownissues.xcl261
-rw-r--r--toolkit/qa/unoapi/makefile.mk48
-rw-r--r--toolkit/qa/unoapi/testdocuments/poliball.gifbin0 -> 945 bytes-rw-r--r--toolkit/qa/unoapi/toolkit.sce77
-rw-r--r--toolkit/source/awt/asynccallback.cxx193
-rw-r--r--toolkit/source/awt/forward.hxx73
-rw-r--r--toolkit/source/awt/makefile.mk84
-rw-r--r--toolkit/source/awt/non-interactable-containers.xml15
-rw-r--r--toolkit/source/awt/stylesettings.cxx987
-rw-r--r--toolkit/source/awt/stylesettings.hxx188
-rw-r--r--toolkit/source/awt/vclxaccessiblecomponent.cxx924
-rw-r--r--toolkit/source/awt/vclxbitmap.cxx93
-rw-r--r--toolkit/source/awt/vclxbutton.cxx126
-rw-r--r--toolkit/source/awt/vclxbutton.hxx114
-rw-r--r--toolkit/source/awt/vclxcontainer.cxx239
-rw-r--r--toolkit/source/awt/vclxdevice.cxx382
-rw-r--r--toolkit/source/awt/vclxdialog.cxx279
-rw-r--r--toolkit/source/awt/vclxdialog.hxx107
-rw-r--r--toolkit/source/awt/vclxfixedline.cxx132
-rw-r--r--toolkit/source/awt/vclxfixedline.hxx75
-rw-r--r--toolkit/source/awt/vclxfont.cxx252
-rw-r--r--toolkit/source/awt/vclxgraphics.cxx478
-rw-r--r--toolkit/source/awt/vclxmenu.cxx1103
-rw-r--r--toolkit/source/awt/vclxplugin.cxx80
-rw-r--r--toolkit/source/awt/vclxplugin.hxx67
-rw-r--r--toolkit/source/awt/vclxpointer.cxx80
-rw-r--r--toolkit/source/awt/vclxprinter.cxx463
-rw-r--r--toolkit/source/awt/vclxregion.cxx171
-rw-r--r--toolkit/source/awt/vclxscroller.cxx212
-rw-r--r--toolkit/source/awt/vclxscroller.hxx87
-rw-r--r--toolkit/source/awt/vclxspinbutton.cxx355
-rw-r--r--toolkit/source/awt/vclxsplitter.cxx245
-rw-r--r--toolkit/source/awt/vclxsplitter.hxx121
-rw-r--r--toolkit/source/awt/vclxsystemdependentwindow.cxx124
-rw-r--r--toolkit/source/awt/vclxtabcontrol.cxx540
-rw-r--r--toolkit/source/awt/vclxtabcontrol.hxx144
-rw-r--r--toolkit/source/awt/vclxtabpage.cxx156
-rw-r--r--toolkit/source/awt/vclxtabpage.hxx73
-rw-r--r--toolkit/source/awt/vclxtoolkit.cxx1705
-rw-r--r--toolkit/source/awt/vclxtopwindow.cxx345
-rw-r--r--toolkit/source/awt/vclxwindow.cxx2656
-rw-r--r--toolkit/source/awt/vclxwindow1.cxx108
-rw-r--r--toolkit/source/awt/vclxwindows.cxx6239
-rw-r--r--toolkit/source/awt/xsimpleanimation.cxx165
-rw-r--r--toolkit/source/awt/xthrobber.cxx158
-rw-r--r--toolkit/source/awt/xthrobber.hrc39
-rw-r--r--toolkit/source/awt/xthrobber.src177
-rw-r--r--toolkit/source/controls/accessiblecontrolcontext.cxx380
-rw-r--r--toolkit/source/controls/dialogcontrol.cxx2131
-rw-r--r--toolkit/source/controls/eventcontainer.cxx214
-rw-r--r--toolkit/source/controls/formattedcontrol.cxx468
-rw-r--r--toolkit/source/controls/geometrycontrolmodel.cxx653
-rw-r--r--toolkit/source/controls/grid/defaultgridcolumnmodel.cxx200
-rw-r--r--toolkit/source/controls/grid/defaultgridcolumnmodel.hxx100
-rw-r--r--toolkit/source/controls/grid/defaultgriddatamodel.cxx346
-rw-r--r--toolkit/source/controls/grid/defaultgriddatamodel.hxx101
-rw-r--r--toolkit/source/controls/grid/gridcolumn.cxx305
-rw-r--r--toolkit/source/controls/grid/gridcolumn.hxx107
-rw-r--r--toolkit/source/controls/grid/gridcontrol.cxx284
-rw-r--r--toolkit/source/controls/grid/gridcontrol.hxx121
-rw-r--r--toolkit/source/controls/grid/makefile.mk50
-rw-r--r--toolkit/source/controls/makefile.mk66
-rw-r--r--toolkit/source/controls/roadmapcontrol.cxx499
-rw-r--r--toolkit/source/controls/roadmapentry.cxx126
-rw-r--r--toolkit/source/controls/stdtabcontroller.cxx428
-rw-r--r--toolkit/source/controls/stdtabcontrollermodel.cxx408
-rw-r--r--toolkit/source/controls/tkscrollbar.cxx294
-rw-r--r--toolkit/source/controls/tksimpleanimation.cxx212
-rw-r--r--toolkit/source/controls/tkspinbutton.cxx350
-rw-r--r--toolkit/source/controls/tkthrobber.cxx199
-rw-r--r--toolkit/source/controls/tree/makefile.mk48
-rw-r--r--toolkit/source/controls/tree/treecontrol.cxx511
-rw-r--r--toolkit/source/controls/tree/treecontrol.hxx137
-rw-r--r--toolkit/source/controls/tree/treedatamodel.cxx673
-rw-r--r--toolkit/source/controls/unocontrol.cxx1601
-rw-r--r--toolkit/source/controls/unocontrolbase.cxx285
-rw-r--r--toolkit/source/controls/unocontrolcontainer.cxx834
-rw-r--r--toolkit/source/controls/unocontrolcontainermodel.cxx89
-rw-r--r--toolkit/source/controls/unocontrolmodel.cxx1484
-rw-r--r--toolkit/source/controls/unocontrols.cxx4358
-rw-r--r--toolkit/source/helper/accessibilityclient.cxx277
-rw-r--r--toolkit/source/helper/externallock.cxx46
-rw-r--r--toolkit/source/helper/fixedhyperbase.cxx72
-rw-r--r--toolkit/source/helper/formpdfexport.cxx639
-rw-r--r--toolkit/source/helper/imagealign.cxx135
-rw-r--r--toolkit/source/helper/listenermultiplexer.cxx213
-rw-r--r--toolkit/source/helper/makefile.mk64
-rw-r--r--toolkit/source/helper/property.cxx405
-rw-r--r--toolkit/source/helper/registerservices.cxx312
-rw-r--r--toolkit/source/helper/servicenames.cxx104
-rw-r--r--toolkit/source/helper/throbberimpl.cxx138
-rw-r--r--toolkit/source/helper/tkresmgr.cxx100
-rw-r--r--toolkit/source/helper/unomemorystream.cxx108
-rw-r--r--toolkit/source/helper/unopropertyarrayhelper.cxx160
-rw-r--r--toolkit/source/helper/unowrapper.cxx340
-rw-r--r--toolkit/source/helper/vclunohelper.cxx799
-rw-r--r--toolkit/source/layout/core/bin.cxx198
-rw-r--r--toolkit/source/layout/core/bin.hxx113
-rw-r--r--toolkit/source/layout/core/box-base.cxx173
-rw-r--r--toolkit/source/layout/core/box-base.hxx87
-rw-r--r--toolkit/source/layout/core/box.cxx281
-rw-r--r--toolkit/source/layout/core/box.hxx102
-rw-r--r--toolkit/source/layout/core/byteseq.cxx76
-rw-r--r--toolkit/source/layout/core/container.cxx169
-rw-r--r--toolkit/source/layout/core/container.hxx136
-rw-r--r--toolkit/source/layout/core/dialogbuttonhbox.cxx289
-rw-r--r--toolkit/source/layout/core/dialogbuttonhbox.hxx73
-rw-r--r--toolkit/source/layout/core/factory.cxx123
-rw-r--r--toolkit/source/layout/core/factory.hxx74
-rw-r--r--toolkit/source/layout/core/flow.cxx209
-rw-r--r--toolkit/source/layout/core/flow.hxx95
-rw-r--r--toolkit/source/layout/core/helper.cxx672
-rw-r--r--toolkit/source/layout/core/helper.hxx149
-rw-r--r--toolkit/source/layout/core/import.cxx325
-rw-r--r--toolkit/source/layout/core/import.hxx259
-rw-r--r--toolkit/source/layout/core/localized-string.cxx79
-rw-r--r--toolkit/source/layout/core/localized-string.hxx76
-rw-r--r--toolkit/source/layout/core/makefile.mk65
-rw-r--r--toolkit/source/layout/core/precompiled_xmlscript.hxx35
-rw-r--r--toolkit/source/layout/core/proplist.cxx454
-rw-r--r--toolkit/source/layout/core/proplist.hxx91
-rw-r--r--toolkit/source/layout/core/root.cxx409
-rw-r--r--toolkit/source/layout/core/root.hxx156
-rw-r--r--toolkit/source/layout/core/table.cxx311
-rw-r--r--toolkit/source/layout/core/table.hxx102
-rw-r--r--toolkit/source/layout/core/timer.cxx148
-rw-r--r--toolkit/source/layout/core/timer.hxx49
-rw-r--r--toolkit/source/layout/core/translate.cxx130
-rw-r--r--toolkit/source/layout/core/translate.hxx40
-rw-r--r--toolkit/source/layout/core/vcl.cxx66
-rw-r--r--toolkit/source/layout/core/vcl.hxx48
-rw-r--r--toolkit/source/layout/vcl/makefile.mk52
-rw-r--r--toolkit/source/layout/vcl/wbutton.cxx681
-rw-r--r--toolkit/source/layout/vcl/wcontainer.cxx266
-rw-r--r--toolkit/source/layout/vcl/wfield.cxx792
-rw-r--r--toolkit/source/layout/vcl/wrapper.cxx1620
-rw-r--r--toolkit/source/layout/vcl/wrapper.hxx149
-rw-r--r--toolkit/src2xml/README16
-rw-r--r--toolkit/src2xml/dryrunall.sh2
-rw-r--r--toolkit/src2xml/include-sc.lst8
-rw-r--r--toolkit/src2xml/include-sd.lst6
-rw-r--r--toolkit/src2xml/include-sw.lst5
-rw-r--r--toolkit/src2xml/include.lst300
-rw-r--r--toolkit/src2xml/sc.sh3
-rw-r--r--toolkit/src2xml/sd.sh3
-rw-r--r--toolkit/src2xml/source/boxer.py73
-rw-r--r--toolkit/src2xml/source/expression.py111
-rw-r--r--toolkit/src2xml/source/expression_test.py23
-rw-r--r--toolkit/src2xml/source/globals.py115
-rw-r--r--toolkit/src2xml/source/macroexpander_test.py71
-rw-r--r--toolkit/src2xml/source/macroparser.py130
-rw-r--r--toolkit/src2xml/source/macroparser_test.py20
-rw-r--r--toolkit/src2xml/source/src2xml.py227
-rw-r--r--toolkit/src2xml/source/srclexer.py488
-rw-r--r--toolkit/src2xml/source/srcparser.py416
-rw-r--r--toolkit/src2xml/src-sc.lst57
-rw-r--r--toolkit/src2xml/src-sd.lst124
-rw-r--r--toolkit/src2xml/src-sw.lst121
-rw-r--r--toolkit/src2xml/src.lst680
-rw-r--r--toolkit/src2xml/sw.sh3
-rwxr-xr-xtoolkit/test/accessibility/AWB.sxwbin0 -> 9257 bytes-rw-r--r--toolkit/test/accessibility/AccTreeNode.java350
-rwxr-xr-xtoolkit/test/accessibility/AccessibilityTree.java377
-rw-r--r--toolkit/test/accessibility/AccessibilityTreeModel.java513
-rw-r--r--toolkit/test/accessibility/AccessibilityTreeModelBase.java122
-rwxr-xr-xtoolkit/test/accessibility/AccessibilityWorkBench.java620
-rw-r--r--toolkit/test/accessibility/AccessibleActionHandler.java72
-rw-r--r--toolkit/test/accessibility/AccessibleActionNode.java48
-rw-r--r--toolkit/test/accessibility/AccessibleCellHandler.java156
-rw-r--r--toolkit/test/accessibility/AccessibleComponentHandler.java102
-rw-r--r--toolkit/test/accessibility/AccessibleContextHandler.java91
-rw-r--r--toolkit/test/accessibility/AccessibleEditableTextHandler.java40
-rw-r--r--toolkit/test/accessibility/AccessibleExtendedComponentHandler.java73
-rw-r--r--toolkit/test/accessibility/AccessibleHyperlinkHandler.java42
-rw-r--r--toolkit/test/accessibility/AccessibleHypertextHandler.java42
-rw-r--r--toolkit/test/accessibility/AccessibleImageHandler.java51
-rw-r--r--toolkit/test/accessibility/AccessibleRelationHandler.java96
-rw-r--r--toolkit/test/accessibility/AccessibleSelectionHandler.java130
-rw-r--r--toolkit/test/accessibility/AccessibleTableHandler.java90
-rw-r--r--toolkit/test/accessibility/AccessibleTextHandler.java792
-rw-r--r--toolkit/test/accessibility/AccessibleTreeCellRenderer.java86
-rw-r--r--toolkit/test/accessibility/AccessibleTreeHandler.java110
-rw-r--r--toolkit/test/accessibility/AccessibleTreeNode.java101
-rw-r--r--toolkit/test/accessibility/AccessibleUNOHandler.java115
-rwxr-xr-xtoolkit/test/accessibility/Canvas.java448
-rw-r--r--toolkit/test/accessibility/CanvasShape.java330
-rw-r--r--toolkit/test/accessibility/ChildEventHandler.java46
-rw-r--r--toolkit/test/accessibility/ContextEventHandler.java52
-rw-r--r--toolkit/test/accessibility/EventHandler.java57
-rw-r--r--toolkit/test/accessibility/EventListener.java124
-rw-r--r--toolkit/test/accessibility/EventLogger.java31
-rw-r--r--toolkit/test/accessibility/EventQueue.java126
-rw-r--r--toolkit/test/accessibility/FrameActionListener.java21
-rw-r--r--toolkit/test/accessibility/GeometryEventHandler.java54
-rw-r--r--toolkit/test/accessibility/HelpWindow.java185
-rwxr-xr-xtoolkit/test/accessibility/InformationWriter.java415
-rw-r--r--toolkit/test/accessibility/MessageArea.java123
-rwxr-xr-xtoolkit/test/accessibility/MessageInterface.java5
-rw-r--r--toolkit/test/accessibility/NodeFactory.java147
-rw-r--r--toolkit/test/accessibility/NodeHandler.java140
-rw-r--r--toolkit/test/accessibility/NodeMap.java112
-rwxr-xr-xtoolkit/test/accessibility/OfficeConnection.java102
-rw-r--r--toolkit/test/accessibility/Options.java88
-rwxr-xr-xtoolkit/test/accessibility/Print.java5
-rw-r--r--toolkit/test/accessibility/QueuedListener.java55
-rw-r--r--toolkit/test/accessibility/QueuedTopWindowListener.java88
-rw-r--r--toolkit/test/accessibility/SelectionDialog.java179
-rwxr-xr-xtoolkit/test/accessibility/SimpleOffice.java389
-rw-r--r--toolkit/test/accessibility/StringNode.java13
-rw-r--r--toolkit/test/accessibility/TableEventHandler.java43
-rw-r--r--toolkit/test/accessibility/TextLogger.java52
-rw-r--r--toolkit/test/accessibility/TextUpdateListener.java170
-rw-r--r--toolkit/test/accessibility/TopWindowListener.java205
-rw-r--r--toolkit/test/accessibility/VectorNode.java50
-rw-r--r--toolkit/test/accessibility/about.html8
-rw-r--r--toolkit/test/accessibility/help.html91
-rw-r--r--toolkit/test/accessibility/jawb.mf3
-rw-r--r--toolkit/test/accessibility/makefile.mk127
-rw-r--r--toolkit/test/accessibility/news.html36
-rw-r--r--toolkit/test/accessibility/ov/ContextView.java125
-rw-r--r--toolkit/test/accessibility/ov/FocusView.java119
-rw-r--r--toolkit/test/accessibility/ov/ListeningObjectView.java60
-rw-r--r--toolkit/test/accessibility/ov/ObjectView.java77
-rw-r--r--toolkit/test/accessibility/ov/ObjectViewContainer.java166
-rw-r--r--toolkit/test/accessibility/ov/SelectionView.java230
-rw-r--r--toolkit/test/accessibility/ov/StateSetView.java249
-rw-r--r--toolkit/test/accessibility/ov/TextView.java123
-rw-r--r--toolkit/test/accessibility/ov/makefile.mk51
-rw-r--r--toolkit/test/accessibility/tools/NameProvider.java259
-rw-r--r--toolkit/test/accessibility/tools/makefile.mk42
-rw-r--r--toolkit/uiconfig/layout/delzip1
-rw-r--r--toolkit/uiconfig/layout/makefile.mk54
-rw-r--r--toolkit/uiconfig/layout/message-box.xml41
-rw-r--r--toolkit/uiconfig/layout/tab-dialog.xml20
-rw-r--r--toolkit/util/makefile.mk93
-rw-r--r--toolkit/util/makefile.pmk36
-rw-r--r--toolkit/util/tk.component298
-rw-r--r--toolkit/util/toolkit.xml750
-rw-r--r--toolkit/workben/controls.cxx449
-rw-r--r--toolkit/workben/layout/.gitignore4
-rw-r--r--toolkit/workben/layout/README43
-rwxr-xr-xtoolkit/workben/layout/TEST11
-rw-r--r--toolkit/workben/layout/adjust.xml44
-rw-r--r--toolkit/workben/layout/align-test.xml30
-rw-r--r--toolkit/workben/layout/align.xml44
-rw-r--r--toolkit/workben/layout/boxtest.xml36
-rw-r--r--toolkit/workben/layout/dialogbuttons-ok.xml49
-rw-r--r--toolkit/workben/layout/dialogbuttons-reset.xml54
-rw-r--r--toolkit/workben/layout/dialogbuttons-save.xml49
-rw-r--r--toolkit/workben/layout/dialogbuttons-yes.xml49
-rw-r--r--toolkit/workben/layout/editor-normal.xml53
-rw-r--r--toolkit/workben/layout/editor.cxx1944
-rw-r--r--toolkit/workben/layout/editor.hxx48
-rw-r--r--toolkit/workben/layout/editor.xml52
-rw-r--r--toolkit/workben/layout/empty.xml26
-rw-r--r--toolkit/workben/layout/flow-container.xml48
-rw-r--r--toolkit/workben/layout/flow.xml17
-rw-r--r--toolkit/workben/layout/insert-sheet.xml57
-rw-r--r--toolkit/workben/layout/interactable-containers.xml49
-rw-r--r--toolkit/workben/layout/layout-flat.xml14
-rw-r--r--toolkit/workben/layout/layout.xml15
-rw-r--r--toolkit/workben/layout/makefile.mk151
-rw-r--r--toolkit/workben/layout/message-box.xml41
-rw-r--r--toolkit/workben/layout/more.xml19
-rw-r--r--toolkit/workben/layout/move-copy-sheet.xml21
-rw-r--r--toolkit/workben/layout/non-interactable-containers.xml41
-rw-r--r--toolkit/workben/layout/number-format.xml70
-rw-r--r--toolkit/workben/layout/numeric.xml10
-rw-r--r--toolkit/workben/layout/ooo-patch7
-rw-r--r--toolkit/workben/layout/paragraph.xml77
-rw-r--r--toolkit/workben/layout/plugin.cxx65
-rw-r--r--toolkit/workben/layout/plugin.hxx57
-rw-r--r--toolkit/workben/layout/plugin.xml29
-rw-r--r--toolkit/workben/layout/radio-groups.xml21
-rw-r--r--toolkit/workben/layout/recover.cxx110
-rw-r--r--toolkit/workben/layout/recover.hxx79
-rw-r--r--toolkit/workben/layout/recover.xml67
-rw-r--r--toolkit/workben/layout/refresh7
-rw-r--r--toolkit/workben/layout/run-s2x6
-rw-r--r--toolkit/workben/layout/scroller.xml32
-rw-r--r--toolkit/workben/layout/sequence.xml13
-rw-r--r--toolkit/workben/layout/shutdown.xml54
-rw-r--r--toolkit/workben/layout/simple-paragraph.cxx179
-rw-r--r--toolkit/workben/layout/simple-paragraph.hxx52
-rw-r--r--toolkit/workben/layout/simple-paragraph.xml11
-rw-r--r--toolkit/workben/layout/sort-options.xml40
-rw-r--r--toolkit/workben/layout/sortdlg.cxx70
-rw-r--r--toolkit/workben/layout/sortdlg.hrc83
-rw-r--r--toolkit/workben/layout/sortdlg.hxx73
-rw-r--r--toolkit/workben/layout/sortdlg.src339
-rw-r--r--toolkit/workben/layout/sortdlg.xml65
-rw-r--r--toolkit/workben/layout/splitter.xml13
-rw-r--r--toolkit/workben/layout/string-input.xml16
-rw-r--r--toolkit/workben/layout/tab-dialog.xml20
-rw-r--r--toolkit/workben/layout/tabcontrol.xml18
-rw-r--r--toolkit/workben/layout/table.xml15
-rw-r--r--toolkit/workben/layout/test.cxx366
-rw-r--r--toolkit/workben/layout/test.xml12
-rw-r--r--toolkit/workben/layout/testrc.in12
-rw-r--r--toolkit/workben/layout/tpsort.cxx1105
-rw-r--r--toolkit/workben/layout/tpsort.hxx217
-rw-r--r--toolkit/workben/layout/un-test.sh14
-rw-r--r--toolkit/workben/layout/uno.hxx106
-rw-r--r--toolkit/workben/layout/wordcount-plain.xml29
-rw-r--r--toolkit/workben/layout/wordcount-tight.xml35
-rw-r--r--toolkit/workben/layout/wordcount.xml50
-rw-r--r--toolkit/workben/layout/wordcountdialog.cxx110
-rw-r--r--toolkit/workben/layout/wordcountdialog.hxx65
-rw-r--r--toolkit/workben/layout/zoom-1.xml38
-rw-r--r--toolkit/workben/layout/zoom-2.xml39
-rw-r--r--toolkit/workben/layout/zoom-indent.xml41
-rw-r--r--toolkit/workben/layout/zoom-plain.xml20
-rw-r--r--toolkit/workben/layout/zoom.cxx622
-rw-r--r--toolkit/workben/layout/zoom.hrc53
-rw-r--r--toolkit/workben/layout/zoom.hxx123
-rw-r--r--toolkit/workben/layout/zoom.xml60
-rw-r--r--toolkit/workben/layout/zoom_def.hxx35
-rw-r--r--toolkit/workben/makefile.mk84
-rw-r--r--toolkit/workben/no_localization1
-rw-r--r--toolkit/workben/unodialog.cxx269
-rw-r--r--tools/bootstrp/addexes/makefile.mk49
-rw-r--r--tools/bootstrp/addexes/replace.cxx76
-rw-r--r--tools/bootstrp/addexes2/makefile.mk56
-rw-r--r--tools/bootstrp/addexes2/mkfilt.cxx237
-rw-r--r--tools/bootstrp/appdef.cxx168
-rw-r--r--tools/bootstrp/command.cxx690
-rw-r--r--tools/bootstrp/cppdep.cxx246
-rw-r--r--tools/bootstrp/cppdep.hxx58
-rw-r--r--tools/bootstrp/inimgr.cxx210
-rw-r--r--tools/bootstrp/iserver.cxx152
-rw-r--r--tools/bootstrp/makefile.mk108
-rw-r--r--tools/bootstrp/md5.cxx149
-rw-r--r--tools/bootstrp/md5.hxx32
-rw-r--r--tools/bootstrp/mkcreate.cxx945
-rw-r--r--tools/bootstrp/prj.cxx1600
-rw-r--r--tools/bootstrp/rscdep.cxx299
-rw-r--r--tools/bootstrp/so_checksum.cxx56
-rw-r--r--tools/bootstrp/sspretty.cxx60
-rw-r--r--tools/bootstrp/sstring.cxx317
-rw-r--r--tools/inc/bootstrp/appdef.hxx68
-rw-r--r--tools/inc/bootstrp/command.hxx163
-rw-r--r--tools/inc/bootstrp/inimgr.hxx61
-rw-r--r--tools/inc/bootstrp/listmacr.hxx60
-rw-r--r--tools/inc/bootstrp/mkcreate.hxx295
-rw-r--r--tools/inc/bootstrp/prj.hxx331
-rw-r--r--tools/inc/bootstrp/sstring.hxx105
-rw-r--r--tools/inc/impcont.hxx147
-rw-r--r--tools/inc/impstrg.hxx54
-rw-r--r--tools/inc/makefile.mk48
-rw-r--r--tools/inc/pch/precompiled_tools.cxx29
-rw-r--r--tools/inc/pch/precompiled_tools.hxx92
-rw-r--r--tools/inc/poly.h92
-rw-r--r--tools/inc/tools/StringListResource.hxx56
-rw-r--r--tools/inc/tools/appendunixshellword.hxx59
-rw-r--r--tools/inc/tools/b3dtrans.hxx352
-rw-r--r--tools/inc/tools/bigint.hxx328
-rw-r--r--tools/inc/tools/cachestr.hxx83
-rw-r--r--tools/inc/tools/color.hxx239
-rw-r--r--tools/inc/tools/config.hxx101
-rw-r--r--tools/inc/tools/contnr.hxx123
-rw-r--r--tools/inc/tools/date.hxx120
-rw-r--r--tools/inc/tools/datetime.hxx111
-rw-r--r--tools/inc/tools/debug.hxx777
-rw-r--r--tools/inc/tools/diagnose_ex.h175
-rw-r--r--tools/inc/tools/dynary.hxx110
-rw-r--r--tools/inc/tools/errcode.hxx323
-rw-r--r--tools/inc/tools/errinf.hxx243
-rw-r--r--tools/inc/tools/extendapplicationenvironment.hxx42
-rw-r--r--tools/inc/tools/fldunit.hxx41
-rw-r--r--tools/inc/tools/fontenum.hxx172
-rw-r--r--tools/inc/tools/fract.hxx165
-rw-r--r--tools/inc/tools/fsys.hxx564
-rw-r--r--tools/inc/tools/gen.hxx712
-rw-r--r--tools/inc/tools/geninfo.hxx230
-rw-r--r--tools/inc/tools/getprocessworkingdir.hxx48
-rw-r--r--tools/inc/tools/globname.hxx138
-rw-r--r--tools/inc/tools/inetdef.hxx111
-rw-r--r--tools/inc/tools/inetmime.hxx1445
-rw-r--r--tools/inc/tools/inetmsg.hxx623
-rw-r--r--tools/inc/tools/inetstrm.hxx275
-rw-r--r--tools/inc/tools/iparser.hxx147
-rw-r--r--tools/inc/tools/isofallback.hxx38
-rw-r--r--tools/inc/tools/line.hxx75
-rw-r--r--tools/inc/tools/link.hxx158
-rw-r--r--tools/inc/tools/list.hxx143
-rw-r--r--tools/inc/tools/mapunit.hxx41
-rw-r--r--tools/inc/tools/mempool.hxx120
-rw-r--r--tools/inc/tools/multisel.hxx216
-rw-r--r--tools/inc/tools/ownlist.hxx94
-rw-r--r--tools/inc/tools/pathutils.hxx101
-rw-r--r--tools/inc/tools/poly.hxx347
-rw-r--r--tools/inc/tools/postsys.h244
-rw-r--r--tools/inc/tools/postwin.h257
-rw-r--r--tools/inc/tools/postx.h73
-rw-r--r--tools/inc/tools/presys.h43
-rw-r--r--tools/inc/tools/prewin.h80
-rw-r--r--tools/inc/tools/prex.h78
-rw-r--r--tools/inc/tools/pstm.hxx261
-rw-r--r--tools/inc/tools/queue.hxx104
-rw-r--r--tools/inc/tools/rc.h221
-rw-r--r--tools/inc/tools/rc.hxx111
-rw-r--r--tools/inc/tools/rcid.h134
-rw-r--r--tools/inc/tools/ref.hxx456
-rw-r--r--tools/inc/tools/resary.hxx93
-rw-r--r--tools/inc/tools/resid.hxx162
-rw-r--r--tools/inc/tools/resmgr.hxx241
-rw-r--r--tools/inc/tools/rtti.hxx174
-rw-r--r--tools/inc/tools/shl.hxx114
-rw-r--r--tools/inc/tools/simplerm.hxx117
-rw-r--r--tools/inc/tools/solar.h403
-rw-r--r--tools/inc/tools/solarmutex.hxx45
-rw-r--r--tools/inc/tools/stack.hxx105
-rw-r--r--tools/inc/tools/stream.hxx856
-rw-r--r--tools/inc/tools/string.hxx691
-rw-r--r--tools/inc/tools/svborder.hxx97
-rw-r--r--tools/inc/tools/svlibrary.hxx42
-rw-r--r--tools/inc/tools/svwin.h36
-rw-r--r--tools/inc/tools/table.hxx152
-rw-r--r--tools/inc/tools/tempfile.hxx77
-rw-r--r--tools/inc/tools/tenccvt.hxx58
-rw-r--r--tools/inc/tools/testtoolloader.hxx39
-rw-r--r--tools/inc/tools/time.hxx112
-rw-r--r--tools/inc/tools/tools.h38
-rw-r--r--tools/inc/tools/toolsdllapi.h41
-rw-r--r--tools/inc/tools/unqid.hxx109
-rw-r--r--tools/inc/tools/unqidx.hxx151
-rw-r--r--tools/inc/tools/urlobj.hxx1922
-rw-r--r--tools/inc/tools/vcompat.hxx70
-rw-r--r--tools/inc/tools/vector2d.hxx119
-rw-r--r--tools/inc/tools/weakbase.h160
-rw-r--r--tools/inc/tools/weakbase.hxx183
-rw-r--r--tools/inc/tools/wintypes.hxx342
-rw-r--r--tools/inc/tools/wldcrd.hxx91
-rw-r--r--tools/inc/tools/zcodec.hxx128
-rw-r--r--tools/inc/toolsin.hxx52
-rw-r--r--tools/os2/inc/dll.hxx39
-rw-r--r--tools/os2/source/dll/makefile.mk46
-rw-r--r--tools/os2/source/dll/toolsdll.cxx48
-rw-r--r--tools/prj/build.lst30
-rw-r--r--tools/prj/d.lst124
-rw-r--r--tools/qa/makefile.mk52
-rw-r--r--tools/qa/test_pathutils.cxx76
-rw-r--r--tools/qa/version.map34
-rw-r--r--tools/source/communi/geninfo.cxx408
-rw-r--r--tools/source/communi/makefile.mk50
-rw-r--r--tools/source/communi/parser.cxx469
-rw-r--r--tools/source/datetime/datetime.cxx442
-rw-r--r--tools/source/datetime/makefile.mk50
-rw-r--r--tools/source/datetime/tdate.cxx494
-rw-r--r--tools/source/datetime/ttime.cxx445
-rw-r--r--tools/source/debug/debug.cxx1808
-rw-r--r--tools/source/debug/makefile.mk53
-rw-r--r--tools/source/debug/stcktree.cxx320
-rw-r--r--tools/source/fsys/comdep.cxx44
-rw-r--r--tools/source/fsys/comdep.hxx156
-rw-r--r--tools/source/fsys/dirent.cxx3213
-rw-r--r--tools/source/fsys/filecopy.cxx486
-rw-r--r--tools/source/fsys/fstat.cxx414
-rw-r--r--tools/source/fsys/makefile.mk67
-rw-r--r--tools/source/fsys/os2.cxx1014
-rw-r--r--tools/source/fsys/os2.hxx93
-rw-r--r--tools/source/fsys/tdir.cxx768
-rw-r--r--tools/source/fsys/tempfile.cxx301
-rw-r--r--tools/source/fsys/unx.cxx660
-rw-r--r--tools/source/fsys/unx.hxx95
-rw-r--r--tools/source/fsys/urlobj.cxx5579
-rw-r--r--tools/source/fsys/wldcrd.cxx143
-rw-r--r--tools/source/fsys/wntmsc.cxx1081
-rw-r--r--tools/source/fsys/wntmsc.hxx102
-rw-r--r--tools/source/generic/b3dtrans.cxx1014
-rw-r--r--tools/source/generic/bigint.cxx1141
-rw-r--r--tools/source/generic/color.cxx510
-rw-r--r--tools/source/generic/config.cxx1304
-rw-r--r--tools/source/generic/fract.cxx736
-rw-r--r--tools/source/generic/gen.cxx661
-rw-r--r--tools/source/generic/line.cxx363
-rw-r--r--tools/source/generic/link.cxx58
-rw-r--r--tools/source/generic/makefile.mk71
-rw-r--r--tools/source/generic/poly.cxx2380
-rw-r--r--tools/source/generic/poly2.cxx891
-rw-r--r--tools/source/generic/svborder.cxx77
-rw-r--r--tools/source/generic/svlibrary.cxx129
-rw-r--r--tools/source/generic/toolsin.cxx95
-rw-r--r--tools/source/inet/inetmime.cxx4563
-rw-r--r--tools/source/inet/inetmsg.cxx1653
-rw-r--r--tools/source/inet/inetstrm.cxx1821
-rw-r--r--tools/source/inet/makefile.mk45
-rw-r--r--tools/source/makefile.mk58
-rw-r--r--tools/source/memtools/contnr.cxx1708
-rw-r--r--tools/source/memtools/makefile.mk56
-rw-r--r--tools/source/memtools/mempool.cxx83
-rw-r--r--tools/source/memtools/multisel.cxx1162
-rw-r--r--tools/source/memtools/table.cxx413
-rw-r--r--tools/source/memtools/unqidx.cxx601
-rw-r--r--tools/source/misc/appendunixshellword.cxx76
-rw-r--r--tools/source/misc/extendapplicationenvironment.cxx92
-rw-r--r--tools/source/misc/getprocessworkingdir.cxx64
-rw-r--r--tools/source/misc/makefile.mk47
-rw-r--r--tools/source/misc/pathutils.cxx219
-rw-r--r--tools/source/misc/solarmutex.cxx60
-rw-r--r--tools/source/rc/isofallback.cxx67
-rw-r--r--tools/source/rc/makefile.mk53
-rw-r--r--tools/source/rc/rc.cxx97
-rw-r--r--tools/source/rc/resary.cxx78
-rw-r--r--tools/source/rc/resmgr.cxx2120
-rw-r--r--tools/source/ref/errinf.cxx462
-rw-r--r--tools/source/ref/globname.cxx453
-rw-r--r--tools/source/ref/makefile.mk53
-rw-r--r--tools/source/ref/pstm.cxx915
-rw-r--r--tools/source/ref/ref.cxx51
-rw-r--r--tools/source/stream/cachestr.cxx290
-rw-r--r--tools/source/stream/makefile.mk58
-rw-r--r--tools/source/stream/stream.cxx2841
-rw-r--r--tools/source/stream/strmos2.cxx760
-rw-r--r--tools/source/stream/strmsys.cxx37
-rw-r--r--tools/source/stream/strmunx.cxx920
-rw-r--r--tools/source/stream/strmwnt.cxx689
-rw-r--r--tools/source/stream/vcompat.cxx80
-rw-r--r--tools/source/string/debugprint.cxx48
-rw-r--r--tools/source/string/makefile.mk79
-rw-r--r--tools/source/string/strascii.cxx637
-rw-r--r--tools/source/string/strcvt.cxx613
-rw-r--r--tools/source/string/strimp.cxx2115
-rw-r--r--tools/source/string/strucvt.cxx213
-rw-r--r--tools/source/string/tenccvt.cxx97
-rw-r--r--tools/source/string/tstring.cxx295
-rw-r--r--tools/source/string/tustring.cxx162
-rw-r--r--tools/source/testtoolloader/makefile.mk45
-rw-r--r--tools/source/testtoolloader/testtoolloader.cxx185
-rw-r--r--tools/source/zcodec/makefile.mk47
-rw-r--r--tools/source/zcodec/zcodec.cxx488
-rw-r--r--tools/test/export.map34
-rw-r--r--tools/test/makefile.mk65
-rw-r--r--tools/test/tests.cxx126
-rw-r--r--tools/unx/source/dll/makefile.mk48
-rw-r--r--tools/unx/source/dll/toolsdll.cxx47
-rw-r--r--tools/util/makefile.mk173
-rw-r--r--tools/util/makefile.pmk31
-rw-r--r--tools/util/tools.r17
-rw-r--r--tools/win/inc/dll.hxx34
-rw-r--r--tools/win/inc/parser.hxx48
-rw-r--r--tools/win/inc/shellex.h115
-rw-r--r--tools/win/inc/shutil.h215
-rw-r--r--tools/win/inc/winshell.hxx386
-rw-r--r--tools/win/source/dll/makefile.mk56
-rw-r--r--tools/win/source/dll/toolsdll.cxx47
-rw-r--r--tools/win/source/fastfsys/makefile.mk71
-rw-r--r--tools/workben/fstest.cxx94
-rw-r--r--tools/workben/hashtbl.cxx515
-rw-r--r--tools/workben/hashtbl.hxx203
-rw-r--r--tools/workben/helloworld.c33
-rw-r--r--tools/workben/inetmimetest.cxx67
-rw-r--r--tools/workben/makefile.mk89
-rw-r--r--tools/workben/solar.c427
-rw-r--r--tools/workben/tldem.cxx82
-rw-r--r--tools/workben/urltest.cxx1906
-rw-r--r--twain/inc/twain.h1973
-rw-r--r--twain/prj/build.lst3
-rw-r--r--twain/prj/d.lst3
-rw-r--r--twain/util/makefile.mk39
-rw-r--r--ucb/inc/makefile.mk48
-rw-r--r--ucb/inc/pch/precompiled_ucb.cxx29
-rw-r--r--ucb/inc/pch/precompiled_ucb.hxx184
-rw-r--r--ucb/prj/build.lst22
-rw-r--r--ucb/prj/d.lst46
-rwxr-xr-xucb/qa/complex/tdoc/CheckContentProvider.java415
-rwxr-xr-xucb/qa/complex/tdoc/CheckTransientDocumentsContent.java166
-rwxr-xr-xucb/qa/complex/tdoc/CheckTransientDocumentsContentProvider.java174
-rwxr-xr-xucb/qa/complex/tdoc/CheckTransientDocumentsDocumentContent.java201
-rw-r--r--ucb/qa/complex/tdoc/TestDocument.java39
-rwxr-xr-xucb/qa/complex/tdoc/_XChild.java104
-rwxr-xr-xucb/qa/complex/tdoc/_XCommandInfoChangeNotifier.java64
-rwxr-xr-xucb/qa/complex/tdoc/_XCommandProcessor.java286
-rwxr-xr-xucb/qa/complex/tdoc/_XComponent.java171
-rwxr-xr-xucb/qa/complex/tdoc/_XContent.java86
-rwxr-xr-xucb/qa/complex/tdoc/_XPropertiesChangeNotifier.java67
-rwxr-xr-xucb/qa/complex/tdoc/_XPropertyContainer.java102
-rwxr-xr-xucb/qa/complex/tdoc/_XPropertySetInfoChangeNotifier.java67
-rwxr-xr-xucb/qa/complex/tdoc/_XServiceInfo.java99
-rwxr-xr-xucb/qa/complex/tdoc/_XTypeProvider.java95
-rwxr-xr-xucb/qa/complex/tdoc/interfaces/makefile.mk63
-rwxr-xr-xucb/qa/complex/tdoc/makefile.mk73
-rw-r--r--ucb/qa/complex/tdoc/test_documents/Iterator.sxwbin0 -> 5627 bytes-rw-r--r--ucb/qa/complex/tdoc/test_documents/chinese.sxwbin0 -> 5757 bytes-rw-r--r--ucb/qa/complex/tdoc/test_documents/filter.sxwbin0 -> 14359 bytes-rwxr-xr-xucb/qa/complex/ucb/UCB.java269
-rwxr-xr-xucb/qa/complex/ucb/makefile.mk62
-rw-r--r--ucb/qa/unoapi/Test.java51
-rw-r--r--ucb/qa/unoapi/knownissues.xcl2
-rw-r--r--ucb/qa/unoapi/makefile.mk48
-rw-r--r--ucb/qa/unoapi/ucb.sce11
-rw-r--r--ucb/source/cacher/cached.xml146
-rw-r--r--ucb/source/cacher/cached1.component43
-rw-r--r--ucb/source/cacher/cachedcontentresultset.cxx2229
-rw-r--r--ucb/source/cacher/cachedcontentresultset.hxx521
-rw-r--r--ucb/source/cacher/cachedcontentresultsetstub.cxx631
-rw-r--r--ucb/source/cacher/cachedcontentresultsetstub.hxx202
-rw-r--r--ucb/source/cacher/cacheddynamicresultset.cxx206
-rw-r--r--ucb/source/cacher/cacheddynamicresultset.hxx137
-rw-r--r--ucb/source/cacher/cacheddynamicresultsetstub.cxx245
-rw-r--r--ucb/source/cacher/cacheddynamicresultsetstub.hxx136
-rw-r--r--ucb/source/cacher/cacheserv.cxx110
-rw-r--r--ucb/source/cacher/contentresultsetwrapper.cxx1477
-rw-r--r--ucb/source/cacher/contentresultsetwrapper.hxx587
-rw-r--r--ucb/source/cacher/dynamicresultsetwrapper.cxx528
-rw-r--r--ucb/source/cacher/dynamicresultsetwrapper.hxx229
-rw-r--r--ucb/source/cacher/makefile.mk76
-rw-r--r--ucb/source/core/cmdenv.cxx191
-rw-r--r--ucb/source/core/cmdenv.hxx102
-rw-r--r--ucb/source/core/exports2.dxp4
-rw-r--r--ucb/source/core/identify.cxx116
-rw-r--r--ucb/source/core/identify.hxx68
-rw-r--r--ucb/source/core/makefile.mk84
-rw-r--r--ucb/source/core/providermap.hxx77
-rw-r--r--ucb/source/core/provprox.cxx401
-rw-r--r--ucb/source/core/provprox.hxx166
-rw-r--r--ucb/source/core/ucb.cxx959
-rw-r--r--ucb/source/core/ucb.hxx220
-rw-r--r--ucb/source/core/ucb.xml172
-rw-r--r--ucb/source/core/ucb1.component46
-rw-r--r--ucb/source/core/ucbcmds.cxx2090
-rw-r--r--ucb/source/core/ucbcmds.hxx43
-rw-r--r--ucb/source/core/ucbprops.cxx477
-rw-r--r--ucb/source/core/ucbprops.hxx93
-rw-r--r--ucb/source/core/ucbserv.cxx121
-rw-r--r--ucb/source/core/ucbstore.cxx2770
-rw-r--r--ucb/source/core/ucbstore.hxx345
-rw-r--r--ucb/source/inc/regexp.hxx84
-rw-r--r--ucb/source/inc/regexpmap.hxx188
-rw-r--r--ucb/source/inc/regexpmap.tpt564
-rw-r--r--ucb/source/regexp/makefile.mk41
-rw-r--r--ucb/source/regexp/regexp.cxx473
-rw-r--r--ucb/source/sorter/makefile.mk71
-rw-r--r--ucb/source/sorter/sortdynres.cxx628
-rw-r--r--ucb/source/sorter/sortdynres.hxx257
-rw-r--r--ucb/source/sorter/sortmain.cxx75
-rw-r--r--ucb/source/sorter/sortresult.cxx2070
-rw-r--r--ucb/source/sorter/sortresult.hxx455
-rw-r--r--ucb/source/sorter/srtrs.xml66
-rw-r--r--ucb/source/sorter/srtrs1.component34
-rw-r--r--ucb/source/ucp/expand/makefile.mk69
-rw-r--r--ucb/source/ucp/expand/ucpexpand.cxx285
-rw-r--r--ucb/source/ucp/expand/ucpexpand1.component34
-rw-r--r--ucb/source/ucp/ext/makefile.mk73
-rw-r--r--ucb/source/ucp/ext/ucpext.component34
-rw-r--r--ucb/source/ucp/ext/ucpext_content.cxx672
-rw-r--r--ucb/source/ucp/ext/ucpext_content.hxx154
-rw-r--r--ucb/source/ucp/ext/ucpext_datasupplier.cxx375
-rw-r--r--ucb/source/ucp/ext/ucpext_datasupplier.hxx86
-rw-r--r--ucb/source/ucp/ext/ucpext_provider.cxx208
-rw-r--r--ucb/source/ucp/ext/ucpext_provider.hxx68
-rw-r--r--ucb/source/ucp/ext/ucpext_resultset.cxx99
-rw-r--r--ucb/source/ucp/ext/ucpext_resultset.hxx66
-rw-r--r--ucb/source/ucp/ext/ucpext_services.cxx87
-rw-r--r--ucb/source/ucp/file/bc.cxx1409
-rw-r--r--ucb/source/ucp/file/bc.hxx353
-rw-r--r--ucb/source/ucp/file/exports2.dxp8
-rw-r--r--ucb/source/ucp/file/filcmd.cxx141
-rw-r--r--ucb/source/ucp/file/filcmd.hxx108
-rw-r--r--ucb/source/ucp/file/filerror.hxx118
-rw-r--r--ucb/source/ucp/file/filglob.cxx954
-rw-r--r--ucb/source/ucp/file/filglob.hxx119
-rw-r--r--ucb/source/ucp/file/filid.cxx148
-rw-r--r--ucb/source/ucp/file/filid.hxx102
-rw-r--r--ucb/source/ucp/file/filinl.hxx76
-rw-r--r--ucb/source/ucp/file/filinpstr.cxx262
-rw-r--r--ucb/source/ucp/file/filinpstr.hxx164
-rw-r--r--ucb/source/ucp/file/filinsreq.cxx224
-rw-r--r--ucb/source/ucp/file/filinsreq.hxx240
-rw-r--r--ucb/source/ucp/file/filnot.cxx269
-rw-r--r--ucb/source/ucp/file/filnot.hxx137
-rw-r--r--ucb/source/ucp/file/filprp.cxx151
-rw-r--r--ucb/source/ucp/file/filprp.hxx97
-rw-r--r--ucb/source/ucp/file/filrec.cxx201
-rw-r--r--ucb/source/ucp/file/filrec.hxx86
-rw-r--r--ucb/source/ucp/file/filrow.cxx429
-rw-r--r--ucb/source/ucp/file/filrow.hxx204
-rw-r--r--ucb/source/ucp/file/filrset.cxx936
-rw-r--r--ucb/source/ucp/file/filrset.hxx683
-rw-r--r--ucb/source/ucp/file/filstr.cxx404
-rw-r--r--ucb/source/ucp/file/filstr.hxx246
-rw-r--r--ucb/source/ucp/file/filtask.cxx184
-rw-r--r--ucb/source/ucp/file/filtask.hxx225
-rw-r--r--ucb/source/ucp/file/makefile.mk88
-rw-r--r--ucb/source/ucp/file/prov.cxx684
-rw-r--r--ucb/source/ucp/file/prov.hxx238
-rw-r--r--ucb/source/ucp/file/shell.cxx3074
-rw-r--r--ucb/source/ucp/file/shell.hxx607
-rw-r--r--ucb/source/ucp/file/ucpfile.xml113
-rw-r--r--ucb/source/ucp/file/ucpfile1.component34
-rw-r--r--ucb/source/ucp/ftp/curl.hxx41
-rw-r--r--ucb/source/ucp/ftp/ftpcfunc.cxx56
-rw-r--r--ucb/source/ucp/ftp/ftpcfunc.hxx63
-rw-r--r--ucb/source/ucp/ftp/ftpcontainer.hxx61
-rw-r--r--ucb/source/ucp/ftp/ftpcontent.cxx957
-rw-r--r--ucb/source/ucp/ftp/ftpcontent.hxx183
-rw-r--r--ucb/source/ucp/ftp/ftpcontentcaps.cxx187
-rw-r--r--ucb/source/ucp/ftp/ftpcontentidentifier.cxx150
-rw-r--r--ucb/source/ucp/ftp/ftpcontentidentifier.hxx118
-rw-r--r--ucb/source/ucp/ftp/ftpcontentprovider.cxx280
-rw-r--r--ucb/source/ucp/ftp/ftpcontentprovider.hxx130
-rw-r--r--ucb/source/ucp/ftp/ftpdirp.cxx1292
-rw-r--r--ucb/source/ucp/ftp/ftpdirp.hxx189
-rw-r--r--ucb/source/ucp/ftp/ftpdynresultset.cxx91
-rw-r--r--ucb/source/ucp/ftp/ftpdynresultset.hxx67
-rwxr-xr-xucb/source/ucp/ftp/ftphandleprovider.hxx29
-rw-r--r--ucb/source/ucp/ftp/ftpinpstr.cxx217
-rw-r--r--ucb/source/ucp/ftp/ftpinpstr.hxx151
-rw-r--r--ucb/source/ucp/ftp/ftpintreq.cxx230
-rw-r--r--ucb/source/ucp/ftp/ftpintreq.hxx181
-rw-r--r--ucb/source/ucp/ftp/ftploaderthread.cxx109
-rw-r--r--ucb/source/ucp/ftp/ftploaderthread.hxx73
-rw-r--r--ucb/source/ucp/ftp/ftpresultsetI.cxx105
-rw-r--r--ucb/source/ucp/ftp/ftpresultsetI.hxx63
-rw-r--r--ucb/source/ucp/ftp/ftpresultsetbase.cxx662
-rw-r--r--ucb/source/ucp/ftp/ftpresultsetbase.hxx608
-rw-r--r--ucb/source/ucp/ftp/ftpresultsetfactory.hxx57
-rw-r--r--ucb/source/ucp/ftp/ftpservices.cxx74
-rw-r--r--ucb/source/ucp/ftp/ftpstrcont.hxx87
-rw-r--r--ucb/source/ucp/ftp/ftpurl.cxx838
-rw-r--r--ucb/source/ucp/ftp/ftpurl.hxx178
-rw-r--r--ucb/source/ucp/ftp/makefile.mk114
-rw-r--r--ucb/source/ucp/ftp/test.cxx298
-rw-r--r--ucb/source/ucp/ftp/test.py25
-rw-r--r--ucb/source/ucp/ftp/test_activedatasink.cxx64
-rw-r--r--ucb/source/ucp/ftp/test_activedatasink.hxx89
-rwxr-xr-xucb/source/ucp/ftp/test_ftpurl.cxx284
-rwxr-xr-xucb/source/ucp/ftp/test_ftpurl.hxx5
-rw-r--r--ucb/source/ucp/ftp/test_interactionhandler.hxx75
-rw-r--r--ucb/source/ucp/ftp/test_multiservicefac.cxx113
-rw-r--r--ucb/source/ucp/ftp/test_multiservicefac.hxx96
-rw-r--r--ucb/source/ucp/ftp/ucpftp.xml89
-rw-r--r--ucb/source/ucp/ftp/ucpftp1.component34
-rw-r--r--ucb/source/ucp/gio/gio_content.cxx1334
-rw-r--r--ucb/source/ucp/gio/gio_content.hxx200
-rw-r--r--ucb/source/ucp/gio/gio_datasupplier.cxx282
-rw-r--r--ucb/source/ucp/gio/gio_datasupplier.hxx99
-rw-r--r--ucb/source/ucp/gio/gio_inputstream.cxx120
-rw-r--r--ucb/source/ucp/gio/gio_inputstream.hxx94
-rw-r--r--ucb/source/ucp/gio/gio_mount.cxx183
-rw-r--r--ucb/source/ucp/gio/gio_mount.hxx72
-rw-r--r--ucb/source/ucp/gio/gio_outputstream.cxx92
-rw-r--r--ucb/source/ucp/gio/gio_outputstream.hxx82
-rw-r--r--ucb/source/ucp/gio/gio_provider.cxx132
-rw-r--r--ucb/source/ucp/gio/gio_provider.hxx66
-rw-r--r--ucb/source/ucp/gio/gio_resultset.cxx59
-rw-r--r--ucb/source/ucp/gio/gio_resultset.hxx56
-rw-r--r--ucb/source/ucp/gio/gio_seekable.cxx140
-rw-r--r--ucb/source/ucp/gio/gio_seekable.hxx80
-rw-r--r--ucb/source/ucp/gio/makefile.mk87
-rw-r--r--ucb/source/ucp/gio/ucpgio.component34
-rw-r--r--ucb/source/ucp/gio/ucpgio.xml100
-rw-r--r--ucb/source/ucp/gvfs/gvfs_content.cxx1817
-rw-r--r--ucb/source/ucp/gvfs/gvfs_content.hxx271
-rw-r--r--ucb/source/ucp/gvfs/gvfs_directory.cxx423
-rw-r--r--ucb/source/ucp/gvfs/gvfs_directory.hxx95
-rw-r--r--ucb/source/ucp/gvfs/gvfs_provider.cxx183
-rw-r--r--ucb/source/ucp/gvfs/gvfs_provider.hxx65
-rw-r--r--ucb/source/ucp/gvfs/gvfs_stream.cxx343
-rw-r--r--ucb/source/ucp/gvfs/gvfs_stream.hxx165
-rw-r--r--ucb/source/ucp/gvfs/makefile.mk91
-rw-r--r--ucb/source/ucp/gvfs/ucpgvfs.component34
-rw-r--r--ucb/source/ucp/gvfs/ucpgvfs.xml113
-rw-r--r--ucb/source/ucp/hierarchy/dynamicresultset.cxx91
-rw-r--r--ucb/source/ucp/hierarchy/dynamicresultset.hxx55
-rw-r--r--ucb/source/ucp/hierarchy/hierarchycontent.cxx2009
-rw-r--r--ucb/source/ucp/hierarchy/hierarchycontent.hxx311
-rw-r--r--ucb/source/ucp/hierarchy/hierarchycontentcaps.cxx765
-rw-r--r--ucb/source/ucp/hierarchy/hierarchydata.cxx1266
-rw-r--r--ucb/source/ucp/hierarchy/hierarchydata.hxx149
-rw-r--r--ucb/source/ucp/hierarchy/hierarchydatasource.cxx1116
-rw-r--r--ucb/source/ucp/hierarchy/hierarchydatasource.hxx125
-rw-r--r--ucb/source/ucp/hierarchy/hierarchydatasupplier.cxx446
-rw-r--r--ucb/source/ucp/hierarchy/hierarchydatasupplier.hxx82
-rw-r--r--ucb/source/ucp/hierarchy/hierarchyprovider.cxx338
-rw-r--r--ucb/source/ucp/hierarchy/hierarchyprovider.hxx155
-rw-r--r--ucb/source/ucp/hierarchy/hierarchyservices.cxx86
-rw-r--r--ucb/source/ucp/hierarchy/hierarchyuri.cxx209
-rw-r--r--ucb/source/ucp/hierarchy/hierarchyuri.hxx91
-rw-r--r--ucb/source/ucp/hierarchy/makefile.mk92
-rw-r--r--ucb/source/ucp/hierarchy/ucphier.xml121
-rw-r--r--ucb/source/ucp/hierarchy/ucphier1.component38
-rw-r--r--ucb/source/ucp/inc/urihelper.hxx123
-rw-r--r--ucb/source/ucp/odma/makefile.mk97
-rw-r--r--ucb/source/ucp/odma/odma.h315
-rw-r--r--ucb/source/ucp/odma/odma_content.cxx1215
-rw-r--r--ucb/source/ucp/odma/odma_content.hxx196
-rw-r--r--ucb/source/ucp/odma/odma_contentcaps.cxx247
-rw-r--r--ucb/source/ucp/odma/odma_contentprops.hxx85
-rw-r--r--ucb/source/ucp/odma/odma_datasupplier.cxx455
-rw-r--r--ucb/source/ucp/odma/odma_datasupplier.hxx74
-rw-r--r--ucb/source/ucp/odma/odma_inputstream.cxx286
-rw-r--r--ucb/source/ucp/odma/odma_inputstream.hxx138
-rw-r--r--ucb/source/ucp/odma/odma_lib.cxx129
-rw-r--r--ucb/source/ucp/odma/odma_lib.hxx272
-rw-r--r--ucb/source/ucp/odma/odma_main.cxx91
-rw-r--r--ucb/source/ucp/odma/odma_provider.cxx599
-rw-r--r--ucb/source/ucp/odma/odma_provider.hxx174
-rw-r--r--ucb/source/ucp/odma/odma_resultset.cxx96
-rw-r--r--ucb/source/ucp/odma/odma_resultset.hxx60
-rw-r--r--ucb/source/ucp/odma/odma_services.cxx99
-rw-r--r--ucb/source/ucp/odma/ucpodma.xml100
-rw-r--r--ucb/source/ucp/package/makefile.mk97
-rw-r--r--ucb/source/ucp/package/pkgcontent.cxx3012
-rw-r--r--ucb/source/ucp/package/pkgcontent.hxx335
-rw-r--r--ucb/source/ucp/package/pkgcontentcaps.cxx562
-rw-r--r--ucb/source/ucp/package/pkgdatasupplier.cxx498
-rw-r--r--ucb/source/ucp/package/pkgdatasupplier.hxx77
-rw-r--r--ucb/source/ucp/package/pkgprovider.cxx330
-rw-r--r--ucb/source/ucp/package/pkgprovider.hxx105
-rw-r--r--ucb/source/ucp/package/pkgresultset.cxx94
-rw-r--r--ucb/source/ucp/package/pkgresultset.hxx59
-rw-r--r--ucb/source/ucp/package/pkgservices.cxx74
-rw-r--r--ucb/source/ucp/package/pkguri.cxx249
-rw-r--r--ucb/source/ucp/package/pkguri.hxx101
-rw-r--r--ucb/source/ucp/package/ucppkg.xml92
-rw-r--r--ucb/source/ucp/package/ucppkg1.component34
-rw-r--r--ucb/source/ucp/tdoc/makefile.mk102
-rw-r--r--ucb/source/ucp/tdoc/tdoc_content.cxx3135
-rw-r--r--ucb/source/ucp/tdoc/tdoc_content.hxx342
-rw-r--r--ucb/source/ucp/tdoc/tdoc_contentcaps.cxx705
-rw-r--r--ucb/source/ucp/tdoc/tdoc_datasupplier.cxx468
-rw-r--r--ucb/source/ucp/tdoc/tdoc_datasupplier.hxx81
-rw-r--r--ucb/source/ucp/tdoc/tdoc_docmgr.cxx691
-rw-r--r--ucb/source/ucp/tdoc/tdoc_docmgr.hxx173
-rw-r--r--ucb/source/ucp/tdoc/tdoc_documentcontentfactory.cxx188
-rw-r--r--ucb/source/ucp/tdoc/tdoc_documentcontentfactory.hxx86
-rw-r--r--ucb/source/ucp/tdoc/tdoc_passwordrequest.cxx242
-rw-r--r--ucb/source/ucp/tdoc/tdoc_passwordrequest.hxx100
-rw-r--r--ucb/source/ucp/tdoc/tdoc_provider.cxx629
-rw-r--r--ucb/source/ucp/tdoc/tdoc_provider.hxx148
-rw-r--r--ucb/source/ucp/tdoc/tdoc_resultset.cxx95
-rw-r--r--ucb/source/ucp/tdoc/tdoc_resultset.hxx56
-rw-r--r--ucb/source/ucp/tdoc/tdoc_services.cxx89
-rw-r--r--ucb/source/ucp/tdoc/tdoc_stgelems.cxx1108
-rw-r--r--ucb/source/ucp/tdoc/tdoc_stgelems.hxx542
-rw-r--r--ucb/source/ucp/tdoc/tdoc_storage.cxx712
-rw-r--r--ucb/source/ucp/tdoc/tdoc_storage.hxx172
-rw-r--r--ucb/source/ucp/tdoc/tdoc_uri.cxx135
-rw-r--r--ucb/source/ucp/tdoc/tdoc_uri.hxx131
-rw-r--r--ucb/source/ucp/tdoc/ucptdoc.xml129
-rw-r--r--ucb/source/ucp/tdoc/ucptdoc1.component37
-rw-r--r--ucb/source/ucp/webdav/ContentProperties.cxx573
-rw-r--r--ucb/source/ucp/webdav/ContentProperties.hxx197
-rw-r--r--ucb/source/ucp/webdav/DAVAuthListener.hxx52
-rw-r--r--ucb/source/ucp/webdav/DAVAuthListenerImpl.hxx77
-rw-r--r--ucb/source/ucp/webdav/DAVException.hxx166
-rw-r--r--ucb/source/ucp/webdav/DAVProperties.cxx199
-rw-r--r--ucb/source/ucp/webdav/DAVProperties.hxx62
-rw-r--r--ucb/source/ucp/webdav/DAVRequestEnvironment.hxx62
-rw-r--r--ucb/source/ucp/webdav/DAVResource.hxx67
-rw-r--r--ucb/source/ucp/webdav/DAVResourceAccess.cxx1218
-rw-r--r--ucb/source/ucp/webdav/DAVResourceAccess.hxx251
-rw-r--r--ucb/source/ucp/webdav/DAVSession.hxx219
-rw-r--r--ucb/source/ucp/webdav/DAVSessionFactory.cxx106
-rw-r--r--ucb/source/ucp/webdav/DAVSessionFactory.hxx82
-rw-r--r--ucb/source/ucp/webdav/DAVTypes.hxx85
-rw-r--r--ucb/source/ucp/webdav/DateTimeHelper.cxx270
-rw-r--r--ucb/source/ucp/webdav/DateTimeHelper.hxx63
-rw-r--r--ucb/source/ucp/webdav/LinkSequence.cxx223
-rw-r--r--ucb/source/ucp/webdav/LinkSequence.hxx51
-rw-r--r--ucb/source/ucp/webdav/LockEntrySequence.cxx244
-rw-r--r--ucb/source/ucp/webdav/LockEntrySequence.hxx48
-rw-r--r--ucb/source/ucp/webdav/LockSequence.cxx351
-rw-r--r--ucb/source/ucp/webdav/LockSequence.hxx48
-rw-r--r--ucb/source/ucp/webdav/NeonHeadRequest.cxx200
-rw-r--r--ucb/source/ucp/webdav/NeonHeadRequest.hxx53
-rw-r--r--ucb/source/ucp/webdav/NeonInputStream.cxx195
-rw-r--r--ucb/source/ucp/webdav/NeonInputStream.hxx124
-rw-r--r--ucb/source/ucp/webdav/NeonLockStore.cxx245
-rw-r--r--ucb/source/ucp/webdav/NeonLockStore.hxx102
-rw-r--r--ucb/source/ucp/webdav/NeonPropFindRequest.cxx345
-rw-r--r--ucb/source/ucp/webdav/NeonPropFindRequest.hxx62
-rw-r--r--ucb/source/ucp/webdav/NeonSession.cxx2184
-rw-r--r--ucb/source/ucp/webdav/NeonSession.hxx295
-rw-r--r--ucb/source/ucp/webdav/NeonTypes.hxx46
-rw-r--r--ucb/source/ucp/webdav/NeonUri.cxx358
-rw-r--r--ucb/source/ucp/webdav/NeonUri.hxx102
-rw-r--r--ucb/source/ucp/webdav/PropertyMap.hxx65
-rw-r--r--ucb/source/ucp/webdav/UCBDeadPropertyValue.cxx547
-rw-r--r--ucb/source/ucp/webdav/UCBDeadPropertyValue.hxx65
-rw-r--r--ucb/source/ucp/webdav/makefile.mk168
-rw-r--r--ucb/source/ucp/webdav/ucpdav.xml109
-rw-r--r--ucb/source/ucp/webdav/ucpdav1.component34
-rw-r--r--ucb/source/ucp/webdav/webdavcontent.cxx3247
-rw-r--r--ucb/source/ucp/webdav/webdavcontent.hxx299
-rw-r--r--ucb/source/ucp/webdav/webdavcontentcaps.cxx672
-rw-r--r--ucb/source/ucp/webdav/webdavdatasupplier.cxx512
-rw-r--r--ucb/source/ucp/webdav/webdavdatasupplier.hxx82
-rw-r--r--ucb/source/ucp/webdav/webdavprovider.cxx232
-rw-r--r--ucb/source/ucp/webdav/webdavprovider.hxx124
-rw-r--r--ucb/source/ucp/webdav/webdavresultset.cxx95
-rw-r--r--ucb/source/ucp/webdav/webdavresultset.hxx59
-rw-r--r--ucb/source/ucp/webdav/webdavservices.cxx76
-rw-r--r--ucb/test/com/sun/star/comp/ucb/GlobalTransfer_Test.java214
-rw-r--r--ucb/test/com/sun/star/comp/ucb/makefile.mk60
-rw-r--r--ucb/workben/cachemap/cachemapobject1.cxx90
-rw-r--r--ucb/workben/cachemap/cachemapobject1.hxx104
-rw-r--r--ucb/workben/cachemap/cachemapobject2.hxx40
-rw-r--r--ucb/workben/cachemap/cachemapobject3.cxx105
-rw-r--r--ucb/workben/cachemap/cachemapobject3.hxx103
-rw-r--r--ucb/workben/cachemap/cachemapobjectcontainer2.cxx68
-rw-r--r--ucb/workben/cachemap/cachemapobjectcontainer2.hxx73
-rw-r--r--ucb/workben/cachemap/cachemaptest.cxx168
-rw-r--r--ucb/workben/cachemap/makefile.mk52
-rw-r--r--ucb/workben/ucb/makefile.mk84
-rw-r--r--ucb/workben/ucb/srcharg.cxx490
-rw-r--r--ucb/workben/ucb/srcharg.hxx41
-rw-r--r--ucb/workben/ucb/ucbdemo.cxx2597
-rw-r--r--ucbhelper/inc/makefile.mk48
-rw-r--r--ucbhelper/inc/pch/precompiled_ucbhelper.cxx29
-rw-r--r--ucbhelper/inc/pch/precompiled_ucbhelper.hxx32
-rw-r--r--ucbhelper/inc/ucbhelper/activedatasink.hxx75
-rw-r--r--ucbhelper/inc/ucbhelper/activedatastreamer.hxx70
-rw-r--r--ucbhelper/inc/ucbhelper/cancelcommandexecution.hxx110
-rw-r--r--ucbhelper/inc/ucbhelper/commandenvironment.hxx102
-rw-r--r--ucbhelper/inc/ucbhelper/commandenvironmentproxy.hxx99
-rw-r--r--ucbhelper/inc/ucbhelper/configurationkeys.hxx43
-rw-r--r--ucbhelper/inc/ucbhelper/content.hxx1040
-rw-r--r--ucbhelper/inc/ucbhelper/contentbroker.hxx205
-rw-r--r--ucbhelper/inc/ucbhelper/contenthelper.hxx524
-rw-r--r--ucbhelper/inc/ucbhelper/contentidentifier.hxx100
-rw-r--r--ucbhelper/inc/ucbhelper/contentinfo.hxx177
-rw-r--r--ucbhelper/inc/ucbhelper/fileidentifierconverter.hxx127
-rw-r--r--ucbhelper/inc/ucbhelper/handleinteractionrequest.hxx214
-rw-r--r--ucbhelper/inc/ucbhelper/interactionrequest.hxx727
-rw-r--r--ucbhelper/inc/ucbhelper/interceptedinteraction.hxx351
-rw-r--r--ucbhelper/inc/ucbhelper/macros.hxx747
-rw-r--r--ucbhelper/inc/ucbhelper/propertyvalueset.hxx434
-rw-r--r--ucbhelper/inc/ucbhelper/providerhelper.hxx285
-rw-r--r--ucbhelper/inc/ucbhelper/proxydecider.hxx143
-rw-r--r--ucbhelper/inc/ucbhelper/registerucb.hxx129
-rw-r--r--ucbhelper/inc/ucbhelper/resultset.hxx579
-rw-r--r--ucbhelper/inc/ucbhelper/resultsethelper.hxx220
-rw-r--r--ucbhelper/inc/ucbhelper/resultsetmetadata.hxx476
-rw-r--r--ucbhelper/inc/ucbhelper/simpleauthenticationrequest.hxx212
-rwxr-xr-xucbhelper/inc/ucbhelper/simplecertificatevalidationrequest.hxx78
-rw-r--r--ucbhelper/inc/ucbhelper/simpleinteractionrequest.hxx96
-rw-r--r--ucbhelper/inc/ucbhelper/simpleioerrorrequest.hxx75
-rw-r--r--ucbhelper/inc/ucbhelper/simplenameclashresolverequest.hxx83
-rw-r--r--ucbhelper/inc/ucbhelper/ucbhelperdllapi.h41
-rw-r--r--ucbhelper/prj/build.lst7
-rw-r--r--ucbhelper/prj/d.lst40
-rw-r--r--ucbhelper/source/client/activedatasink.cxx93
-rw-r--r--ucbhelper/source/client/activedatastreamer.cxx92
-rw-r--r--ucbhelper/source/client/commandenvironment.cxx139
-rw-r--r--ucbhelper/source/client/content.cxx1972
-rw-r--r--ucbhelper/source/client/contentbroker.cxx380
-rw-r--r--ucbhelper/source/client/fileidentifierconverter.cxx107
-rw-r--r--ucbhelper/source/client/interceptedinteraction.cxx201
-rw-r--r--ucbhelper/source/client/makefile.mk60
-rw-r--r--ucbhelper/source/client/proxydecider.cxx861
-rw-r--r--ucbhelper/source/provider/cancelcommandexecution.cxx130
-rw-r--r--ucbhelper/source/provider/commandenvironmentproxy.cxx167
-rw-r--r--ucbhelper/source/provider/configureucb.cxx242
-rw-r--r--ucbhelper/source/provider/contenthelper.cxx1127
-rw-r--r--ucbhelper/source/provider/contentidentifier.cxx221
-rw-r--r--ucbhelper/source/provider/contentinfo.cxx423
-rw-r--r--ucbhelper/source/provider/handleinteractionrequest.cxx164
-rw-r--r--ucbhelper/source/provider/interactionrequest.cxx1151
-rw-r--r--ucbhelper/source/provider/makefile.mk70
-rw-r--r--ucbhelper/source/provider/propertyvalueset.cxx924
-rw-r--r--ucbhelper/source/provider/provconf.cxx266
-rw-r--r--ucbhelper/source/provider/provconf.hxx52
-rw-r--r--ucbhelper/source/provider/providerhelper.cxx672
-rw-r--r--ucbhelper/source/provider/registerucb.cxx164
-rw-r--r--ucbhelper/source/provider/resultset.cxx1695
-rw-r--r--ucbhelper/source/provider/resultsethelper.cxx329
-rw-r--r--ucbhelper/source/provider/resultsetmetadata.cxx602
-rw-r--r--ucbhelper/source/provider/simpleauthenticationrequest.cxx243
-rwxr-xr-xucbhelper/source/provider/simplecertificatevalidationrequest.cxx88
-rw-r--r--ucbhelper/source/provider/simpleinteractionrequest.cxx132
-rw-r--r--ucbhelper/source/provider/simpleioerrorrequest.cxx60
-rw-r--r--ucbhelper/source/provider/simplenameclashresolverequest.cxx67
-rw-r--r--ucbhelper/util/makefile.mk75
-rw-r--r--ucbhelper/util/makefile.pmk31
-rw-r--r--ucbhelper/util/ucbhelper.flt181
-rw-r--r--ucbhelper/util/ucbhelper.xml114
-rw-r--r--ucbhelper/version.mk42
-rw-r--r--ucbhelper/workben/myucp/makefile.mk90
-rw-r--r--ucbhelper/workben/myucp/myucp_content.cxx983
-rw-r--r--ucbhelper/workben/myucp/myucp_content.hxx191
-rw-r--r--ucbhelper/workben/myucp/myucp_contentcaps.cxx223
-rw-r--r--ucbhelper/workben/myucp/myucp_datasupplier.cxx398
-rw-r--r--ucbhelper/workben/myucp/myucp_datasupplier.hxx77
-rw-r--r--ucbhelper/workben/myucp/myucp_provider.cxx171
-rw-r--r--ucbhelper/workben/myucp/myucp_provider.hxx95
-rw-r--r--ucbhelper/workben/myucp/myucp_resultset.cxx97
-rw-r--r--ucbhelper/workben/myucp/myucp_resultset.hxx62
-rw-r--r--ucbhelper/workben/myucp/myucp_services.cxx136
-rw-r--r--ucbhelper/workben/ucbexplorer/bmp/document.bmpbin0 -> 1318 bytes-rw-r--r--ucbhelper/workben/ucbexplorer/bmp/fldclose.bmpbin0 -> 298 bytes-rw-r--r--ucbhelper/workben/ucbexplorer/bmp/fldopen.bmpbin0 -> 322 bytes-rw-r--r--ucbhelper/workben/ucbexplorer/bmp/link.bmpbin0 -> 1318 bytes-rw-r--r--ucbhelper/workben/ucbexplorer/makefile.mk71
-rw-r--r--ucbhelper/workben/ucbexplorer/ucbexplorer.cxx1200
-rw-r--r--ucbhelper/workben/ucbexplorer/ucbexplorer.hrc65
-rw-r--r--ucbhelper/workben/ucbexplorer/ucbexplorer.src151
-rw-r--r--udkapi/com/sun/star/beans/Ambiguous.idl59
-rw-r--r--udkapi/com/sun/star/beans/Defaulted.idl59
-rw-r--r--udkapi/com/sun/star/beans/GetDirectPropertyTolerantResult.idl65
-rw-r--r--udkapi/com/sun/star/beans/GetPropertyTolerantResult.idl82
-rw-r--r--udkapi/com/sun/star/beans/IllegalTypeException.idl55
-rw-r--r--udkapi/com/sun/star/beans/Introspection.idl60
-rw-r--r--udkapi/com/sun/star/beans/IntrospectionException.idl54
-rw-r--r--udkapi/com/sun/star/beans/MethodConcept.idl127
-rw-r--r--udkapi/com/sun/star/beans/NamedValue.idl54
-rw-r--r--udkapi/com/sun/star/beans/NotRemoveableException.idl51
-rw-r--r--udkapi/com/sun/star/beans/Optional.idl60
-rw-r--r--udkapi/com/sun/star/beans/Pair.idl56
-rw-r--r--udkapi/com/sun/star/beans/Property.idl92
-rw-r--r--udkapi/com/sun/star/beans/PropertyAttribute.idl121
-rw-r--r--udkapi/com/sun/star/beans/PropertyBag.idl70
-rw-r--r--udkapi/com/sun/star/beans/PropertyChangeEvent.idl94
-rw-r--r--udkapi/com/sun/star/beans/PropertyConcept.idl93
-rw-r--r--udkapi/com/sun/star/beans/PropertyExistException.idl54
-rw-r--r--udkapi/com/sun/star/beans/PropertySet.idl76
-rw-r--r--udkapi/com/sun/star/beans/PropertySetInfoChange.idl61
-rw-r--r--udkapi/com/sun/star/beans/PropertySetInfoChangeEvent.idl76
-rw-r--r--udkapi/com/sun/star/beans/PropertyState.idl97
-rw-r--r--udkapi/com/sun/star/beans/PropertyStateChangeEvent.idl95
-rw-r--r--udkapi/com/sun/star/beans/PropertyValue.idl85
-rw-r--r--udkapi/com/sun/star/beans/PropertyValues.idl49
-rw-r--r--udkapi/com/sun/star/beans/PropertyVetoException.idl54
-rw-r--r--udkapi/com/sun/star/beans/SetPropertyTolerantFailed.idl66
-rw-r--r--udkapi/com/sun/star/beans/StringPair.idl55
-rw-r--r--udkapi/com/sun/star/beans/TolerantPropertySetResultType.idl90
-rw-r--r--udkapi/com/sun/star/beans/UnknownPropertyException.idl54
-rw-r--r--udkapi/com/sun/star/beans/XExactName.idl73
-rw-r--r--udkapi/com/sun/star/beans/XFastPropertySet.idl126
-rw-r--r--udkapi/com/sun/star/beans/XHierarchicalPropertySet.idl175
-rw-r--r--udkapi/com/sun/star/beans/XHierarchicalPropertySetInfo.idl104
-rw-r--r--udkapi/com/sun/star/beans/XIntroTest.idl208
-rw-r--r--udkapi/com/sun/star/beans/XIntrospection.idl121
-rw-r--r--udkapi/com/sun/star/beans/XIntrospectionAccess.idl321
-rw-r--r--udkapi/com/sun/star/beans/XMaterialHolder.idl67
-rw-r--r--udkapi/com/sun/star/beans/XMultiHierarchicalPropertySet.idl161
-rw-r--r--udkapi/com/sun/star/beans/XMultiPropertySet.idl180
-rw-r--r--udkapi/com/sun/star/beans/XMultiPropertyStates.idl140
-rw-r--r--udkapi/com/sun/star/beans/XPropertiesChangeListener.idl66
-rw-r--r--udkapi/com/sun/star/beans/XPropertiesChangeNotifier.idl71
-rw-r--r--udkapi/com/sun/star/beans/XProperty.idl69
-rw-r--r--udkapi/com/sun/star/beans/XPropertyAccess.idl100
-rw-r--r--udkapi/com/sun/star/beans/XPropertyChangeListener.idl62
-rw-r--r--udkapi/com/sun/star/beans/XPropertyContainer.idl118
-rw-r--r--udkapi/com/sun/star/beans/XPropertySet.idl217
-rw-r--r--udkapi/com/sun/star/beans/XPropertySetInfo.idl102
-rw-r--r--udkapi/com/sun/star/beans/XPropertySetInfoChangeListener.idl63
-rw-r--r--udkapi/com/sun/star/beans/XPropertySetInfoChangeNotifier.idl75
-rw-r--r--udkapi/com/sun/star/beans/XPropertyState.idl150
-rw-r--r--udkapi/com/sun/star/beans/XPropertyStateChangeListener.idl65
-rw-r--r--udkapi/com/sun/star/beans/XPropertyWithState.idl117
-rw-r--r--udkapi/com/sun/star/beans/XTolerantMultiPropertySet.idl164
-rw-r--r--udkapi/com/sun/star/beans/XVetoableChangeListener.idl70
-rw-r--r--udkapi/com/sun/star/beans/makefile.mk101
-rw-r--r--udkapi/com/sun/star/bridge/Bridge.idl94
-rw-r--r--udkapi/com/sun/star/bridge/BridgeExistsException.idl44
-rw-r--r--udkapi/com/sun/star/bridge/BridgeFactory.idl66
-rw-r--r--udkapi/com/sun/star/bridge/IiopBridge.idl80
-rw-r--r--udkapi/com/sun/star/bridge/InvalidProtocolChangeException.idl54
-rw-r--r--udkapi/com/sun/star/bridge/ModelDependent.idl79
-rw-r--r--udkapi/com/sun/star/bridge/OleApplicationRegistration.idl75
-rw-r--r--udkapi/com/sun/star/bridge/OleBridgeSupplier.idl63
-rw-r--r--udkapi/com/sun/star/bridge/OleBridgeSupplier2.idl75
-rw-r--r--udkapi/com/sun/star/bridge/OleBridgeSupplierVar1.idl58
-rw-r--r--udkapi/com/sun/star/bridge/OleObjectFactory.idl67
-rw-r--r--udkapi/com/sun/star/bridge/ProtocolProperty.idl46
-rw-r--r--udkapi/com/sun/star/bridge/UnoUrlResolver.idl51
-rw-r--r--udkapi/com/sun/star/bridge/UrpBridge.idl80
-rw-r--r--udkapi/com/sun/star/bridge/XBridge.idl64
-rw-r--r--udkapi/com/sun/star/bridge/XBridgeFactory.idl95
-rw-r--r--udkapi/com/sun/star/bridge/XBridgeSupplier.idl107
-rw-r--r--udkapi/com/sun/star/bridge/XBridgeSupplier2.idl121
-rw-r--r--udkapi/com/sun/star/bridge/XInstanceProvider.idl64
-rw-r--r--udkapi/com/sun/star/bridge/XProtocolProperties.idl100
-rw-r--r--udkapi/com/sun/star/bridge/XUnoUrlResolver.idl66
-rw-r--r--udkapi/com/sun/star/bridge/makefile.mk66
-rw-r--r--udkapi/com/sun/star/bridge/oleautomation/ApplicationRegistration.idl81
-rw-r--r--udkapi/com/sun/star/bridge/oleautomation/BridgeSupplier.idl80
-rw-r--r--udkapi/com/sun/star/bridge/oleautomation/Currency.idl61
-rw-r--r--udkapi/com/sun/star/bridge/oleautomation/Date.idl60
-rw-r--r--udkapi/com/sun/star/bridge/oleautomation/Decimal.idl64
-rw-r--r--udkapi/com/sun/star/bridge/oleautomation/Factory.idl69
-rw-r--r--udkapi/com/sun/star/bridge/oleautomation/NamedArgument.idl63
-rw-r--r--udkapi/com/sun/star/bridge/oleautomation/PropertyPutArgument.idl70
-rw-r--r--udkapi/com/sun/star/bridge/oleautomation/SCode.idl62
-rw-r--r--udkapi/com/sun/star/bridge/oleautomation/XAutomationObject.idl58
-rw-r--r--udkapi/com/sun/star/bridge/oleautomation/makefile.mk54
-rw-r--r--udkapi/com/sun/star/connection/Acceptor.idl50
-rw-r--r--udkapi/com/sun/star/connection/AlreadyAcceptingException.idl42
-rw-r--r--udkapi/com/sun/star/connection/ConnectionSetupException.idl42
-rw-r--r--udkapi/com/sun/star/connection/Connector.idl49
-rw-r--r--udkapi/com/sun/star/connection/NoConnectException.idl42
-rw-r--r--udkapi/com/sun/star/connection/SocketPermission.idl104
-rw-r--r--udkapi/com/sun/star/connection/XAcceptor.idl83
-rw-r--r--udkapi/com/sun/star/connection/XConnection.idl98
-rw-r--r--udkapi/com/sun/star/connection/XConnection2.idl64
-rw-r--r--udkapi/com/sun/star/connection/XConnectionBroadcaster.idl65
-rw-r--r--udkapi/com/sun/star/connection/XConnector.idl72
-rw-r--r--udkapi/com/sun/star/connection/makefile.mk56
-rw-r--r--udkapi/com/sun/star/container/ContainerEvent.idl73
-rw-r--r--udkapi/com/sun/star/container/ElementExistException.idl58
-rw-r--r--udkapi/com/sun/star/container/EnumerableMap.idl141
-rw-r--r--udkapi/com/sun/star/container/NoSuchElementException.idl54
-rw-r--r--udkapi/com/sun/star/container/XChild.idl74
-rw-r--r--udkapi/com/sun/star/container/XComponentEnumeration.idl70
-rw-r--r--udkapi/com/sun/star/container/XComponentEnumerationAccess.idl62
-rw-r--r--udkapi/com/sun/star/container/XContainer.idl93
-rw-r--r--udkapi/com/sun/star/container/XContainerApproveBroadcaster.idl66
-rw-r--r--udkapi/com/sun/star/container/XContainerApproveListener.idl89
-rw-r--r--udkapi/com/sun/star/container/XContainerListener.idl73
-rw-r--r--udkapi/com/sun/star/container/XContainerQuery.idl114
-rw-r--r--udkapi/com/sun/star/container/XContentEnumerationAccess.idl84
-rw-r--r--udkapi/com/sun/star/container/XElementAccess.idl72
-rw-r--r--udkapi/com/sun/star/container/XEnumerableMap.idl110
-rw-r--r--udkapi/com/sun/star/container/XEnumeration.idl102
-rw-r--r--udkapi/com/sun/star/container/XEnumerationAccess.idl63
-rw-r--r--udkapi/com/sun/star/container/XHierarchicalName.idl82
-rw-r--r--udkapi/com/sun/star/container/XHierarchicalNameAccess.idl90
-rw-r--r--udkapi/com/sun/star/container/XHierarchicalNameContainer.idl92
-rw-r--r--udkapi/com/sun/star/container/XHierarchicalNameReplace.idl81
-rw-r--r--udkapi/com/sun/star/container/XIdentifierAccess.idl84
-rw-r--r--udkapi/com/sun/star/container/XIdentifierContainer.idl111
-rw-r--r--udkapi/com/sun/star/container/XIdentifierReplace.idl89
-rw-r--r--udkapi/com/sun/star/container/XImplicitIDAccess.idl68
-rw-r--r--udkapi/com/sun/star/container/XImplicitIDContainer.idl74
-rw-r--r--udkapi/com/sun/star/container/XImplicitIDReplace.idl66
-rw-r--r--udkapi/com/sun/star/container/XIndexAccess.idl91
-rw-r--r--udkapi/com/sun/star/container/XIndexContainer.idl83
-rw-r--r--udkapi/com/sun/star/container/XIndexReplace.idl74
-rw-r--r--udkapi/com/sun/star/container/XMap.idl203
-rw-r--r--udkapi/com/sun/star/container/XNameAccess.idl106
-rw-r--r--udkapi/com/sun/star/container/XNameContainer.idl86
-rw-r--r--udkapi/com/sun/star/container/XNameReplace.idl74
-rw-r--r--udkapi/com/sun/star/container/XNamed.idl65
-rw-r--r--udkapi/com/sun/star/container/XSet.idl87
-rw-r--r--udkapi/com/sun/star/container/XStringKeyMap.idl154
-rw-r--r--udkapi/com/sun/star/container/XUniqueIDAccess.idl65
-rw-r--r--udkapi/com/sun/star/container/makefile.mk83
-rw-r--r--udkapi/com/sun/star/corba/corba.idl103
-rw-r--r--udkapi/com/sun/star/corba/giop/giop.idl251
-rw-r--r--udkapi/com/sun/star/corba/giop/makefile.mk43
-rw-r--r--udkapi/com/sun/star/corba/iiop/iiop.idl87
-rw-r--r--udkapi/com/sun/star/corba/iiop/makefile.mk43
-rw-r--r--udkapi/com/sun/star/corba/iop/iop.idl123
-rw-r--r--udkapi/com/sun/star/corba/iop/makefile.mk43
-rw-r--r--udkapi/com/sun/star/corba/makefile.mk43
-rw-r--r--udkapi/com/sun/star/io/AlreadyConnectedException.idl56
-rw-r--r--udkapi/com/sun/star/io/BufferSizeExceededException.idl60
-rw-r--r--udkapi/com/sun/star/io/ConnectException.idl57
-rw-r--r--udkapi/com/sun/star/io/DataInputStream.idl81
-rw-r--r--udkapi/com/sun/star/io/DataOutputStream.idl71
-rw-r--r--udkapi/com/sun/star/io/DataTransferEvent.idl63
-rw-r--r--udkapi/com/sun/star/io/FilePermission.idl84
-rw-r--r--udkapi/com/sun/star/io/IOException.idl55
-rw-r--r--udkapi/com/sun/star/io/MarkableInputStream.idl78
-rw-r--r--udkapi/com/sun/star/io/MarkableOutputStream.idl83
-rw-r--r--udkapi/com/sun/star/io/NoRouteToHostException.idl56
-rw-r--r--udkapi/com/sun/star/io/NotConnectedException.idl56
-rw-r--r--udkapi/com/sun/star/io/ObjectInputStream.idl109
-rw-r--r--udkapi/com/sun/star/io/ObjectOutputStream.idl96
-rw-r--r--udkapi/com/sun/star/io/Pipe.idl72
-rw-r--r--udkapi/com/sun/star/io/Pump.idl78
-rw-r--r--udkapi/com/sun/star/io/SequenceInputStream.idl62
-rw-r--r--udkapi/com/sun/star/io/SequenceOutputStream.idl48
-rw-r--r--udkapi/com/sun/star/io/SocketException.idl55
-rw-r--r--udkapi/com/sun/star/io/TempFile.idl47
-rw-r--r--udkapi/com/sun/star/io/TextInputStream.idl70
-rw-r--r--udkapi/com/sun/star/io/TextOutputStream.idl66
-rw-r--r--udkapi/com/sun/star/io/UnexpectedEOFException.idl56
-rw-r--r--udkapi/com/sun/star/io/UnknownHostException.idl54
-rw-r--r--udkapi/com/sun/star/io/WrongFormatException.idl56
-rw-r--r--udkapi/com/sun/star/io/XActiveDataControl.idl107
-rw-r--r--udkapi/com/sun/star/io/XActiveDataSink.idl81
-rw-r--r--udkapi/com/sun/star/io/XActiveDataSource.idl81
-rw-r--r--udkapi/com/sun/star/io/XActiveDataStreamer.idl82
-rw-r--r--udkapi/com/sun/star/io/XAsyncOutputMonitor.idl95
-rw-r--r--udkapi/com/sun/star/io/XConnectable.idl94
-rw-r--r--udkapi/com/sun/star/io/XDataExporter.idl86
-rw-r--r--udkapi/com/sun/star/io/XDataImporter.idl85
-rw-r--r--udkapi/com/sun/star/io/XDataInputStream.idl134
-rw-r--r--udkapi/com/sun/star/io/XDataOutputStream.idl134
-rw-r--r--udkapi/com/sun/star/io/XDataTransferEventListener.idl73
-rw-r--r--udkapi/com/sun/star/io/XInputStream.idl177
-rw-r--r--udkapi/com/sun/star/io/XInputStreamProvider.idl60
-rw-r--r--udkapi/com/sun/star/io/XMarkableStream.idl127
-rw-r--r--udkapi/com/sun/star/io/XObjectInputStream.idl72
-rw-r--r--udkapi/com/sun/star/io/XObjectOutputStream.idl71
-rw-r--r--udkapi/com/sun/star/io/XOutputStream.idl105
-rw-r--r--udkapi/com/sun/star/io/XPersist.idl72
-rw-r--r--udkapi/com/sun/star/io/XPersistObject.idl117
-rw-r--r--udkapi/com/sun/star/io/XSeekable.idl93
-rw-r--r--udkapi/com/sun/star/io/XSeekableInputStream.idl56
-rw-r--r--udkapi/com/sun/star/io/XSequenceOutputStream.idl65
-rw-r--r--udkapi/com/sun/star/io/XStream.idl80
-rw-r--r--udkapi/com/sun/star/io/XStreamListener.idl90
-rw-r--r--udkapi/com/sun/star/io/XTempFile.idl89
-rw-r--r--udkapi/com/sun/star/io/XTextInputStream.idl121
-rw-r--r--udkapi/com/sun/star/io/XTextOutputStream.idl86
-rw-r--r--udkapi/com/sun/star/io/XTruncate.idl67
-rw-r--r--udkapi/com/sun/star/io/XXMLExtractor.idl64
-rw-r--r--udkapi/com/sun/star/io/makefile.mk99
-rwxr-xr-xudkapi/com/sun/star/java/InvalidJavaSettingsException.idl52
-rw-r--r--udkapi/com/sun/star/java/JavaDisabledException.idl51
-rw-r--r--udkapi/com/sun/star/java/JavaInitializationException.idl59
-rw-r--r--udkapi/com/sun/star/java/JavaNotConfiguredException.idl50
-rw-r--r--udkapi/com/sun/star/java/JavaNotFoundException.idl48
-rw-r--r--udkapi/com/sun/star/java/JavaVMCreationFailureException.idl61
-rw-r--r--udkapi/com/sun/star/java/JavaVirtualMachine.idl64
-rw-r--r--udkapi/com/sun/star/java/MissingJavaRuntimeException.idl53
-rwxr-xr-xudkapi/com/sun/star/java/RestartRequiredException.idl48
-rw-r--r--udkapi/com/sun/star/java/WrongJavaVersionException.idl64
-rw-r--r--udkapi/com/sun/star/java/XJavaThreadRegister_11.idl83
-rw-r--r--udkapi/com/sun/star/java/XJavaVM.idl141
-rw-r--r--udkapi/com/sun/star/java/makefile.mk57
-rw-r--r--udkapi/com/sun/star/lang/ArrayIndexOutOfBoundsException.idl59
-rw-r--r--udkapi/com/sun/star/lang/ClassNotFoundException.idl56
-rw-r--r--udkapi/com/sun/star/lang/DisposedException.idl60
-rw-r--r--udkapi/com/sun/star/lang/EventObject.idl61
-rw-r--r--udkapi/com/sun/star/lang/IllegalAccessException.idl56
-rw-r--r--udkapi/com/sun/star/lang/IllegalArgumentException.idl65
-rw-r--r--udkapi/com/sun/star/lang/IndexOutOfBoundsException.idl59
-rw-r--r--udkapi/com/sun/star/lang/InvalidListenerException.idl59
-rw-r--r--udkapi/com/sun/star/lang/ListenerExistException.idl58
-rw-r--r--udkapi/com/sun/star/lang/Locale.idl122
-rw-r--r--udkapi/com/sun/star/lang/MultiServiceFactory.idl86
-rw-r--r--udkapi/com/sun/star/lang/NoSuchFieldException.idl55
-rw-r--r--udkapi/com/sun/star/lang/NoSuchMethodException.idl55
-rw-r--r--udkapi/com/sun/star/lang/NoSupportException.idl61
-rw-r--r--udkapi/com/sun/star/lang/NotInitializedException.idl56
-rw-r--r--udkapi/com/sun/star/lang/NullPointerException.idl61
-rw-r--r--udkapi/com/sun/star/lang/RegistryServiceManager.idl100
-rw-r--r--udkapi/com/sun/star/lang/ServiceManager.idl141
-rw-r--r--udkapi/com/sun/star/lang/ServiceNotRegisteredException.idl58
-rw-r--r--udkapi/com/sun/star/lang/SystemDependent.idl125
-rw-r--r--udkapi/com/sun/star/lang/WrappedTargetException.idl69
-rw-r--r--udkapi/com/sun/star/lang/WrappedTargetRuntimeException.idl61
-rw-r--r--udkapi/com/sun/star/lang/XComponent.idl143
-rw-r--r--udkapi/com/sun/star/lang/XConnectionPoint.idl204
-rw-r--r--udkapi/com/sun/star/lang/XConnectionPointContainer.idl118
-rw-r--r--udkapi/com/sun/star/lang/XEventListener.idl76
-rw-r--r--udkapi/com/sun/star/lang/XInitialization.idl83
-rw-r--r--udkapi/com/sun/star/lang/XLocalizable.idl70
-rw-r--r--udkapi/com/sun/star/lang/XMain.idl69
-rw-r--r--udkapi/com/sun/star/lang/XMultiComponentFactory.idl90
-rw-r--r--udkapi/com/sun/star/lang/XMultiServiceFactory.idl97
-rw-r--r--udkapi/com/sun/star/lang/XServiceDisplayName.idl76
-rw-r--r--udkapi/com/sun/star/lang/XServiceInfo.idl79
-rw-r--r--udkapi/com/sun/star/lang/XServiceName.idl64
-rw-r--r--udkapi/com/sun/star/lang/XSingleComponentFactory.idl75
-rw-r--r--udkapi/com/sun/star/lang/XSingleServiceFactory.idl82
-rw-r--r--udkapi/com/sun/star/lang/XTypeProvider.idl79
-rw-r--r--udkapi/com/sun/star/lang/XUnoTunnel.idl80
-rw-r--r--udkapi/com/sun/star/lang/makefile.mk83
-rw-r--r--udkapi/com/sun/star/loader/CannotActivateFactoryException.idl62
-rw-r--r--udkapi/com/sun/star/loader/Dynamic.idl67
-rw-r--r--udkapi/com/sun/star/loader/Java.idl66
-rw-r--r--udkapi/com/sun/star/loader/Java2.idl51
-rw-r--r--udkapi/com/sun/star/loader/SharedLibrary.idl64
-rw-r--r--udkapi/com/sun/star/loader/XImplementationLoader.idl123
-rw-r--r--udkapi/com/sun/star/loader/makefile.mk51
-rw-r--r--udkapi/com/sun/star/makefile.mk46
-rw-r--r--udkapi/com/sun/star/reflection/CoreReflection.idl74
-rw-r--r--udkapi/com/sun/star/reflection/FieldAccessMode.idl64
-rw-r--r--udkapi/com/sun/star/reflection/InvalidTypeNameException.idl55
-rw-r--r--udkapi/com/sun/star/reflection/InvocationTargetException.idl57
-rw-r--r--udkapi/com/sun/star/reflection/MethodMode.idl59
-rw-r--r--udkapi/com/sun/star/reflection/NoSuchTypeNameException.idl54
-rw-r--r--udkapi/com/sun/star/reflection/ParamInfo.idl66
-rw-r--r--udkapi/com/sun/star/reflection/ParamMode.idl63
-rw-r--r--udkapi/com/sun/star/reflection/ProxyFactory.idl73
-rw-r--r--udkapi/com/sun/star/reflection/TypeDescriptionManager.idl125
-rw-r--r--udkapi/com/sun/star/reflection/TypeDescriptionProvider.idl90
-rw-r--r--udkapi/com/sun/star/reflection/TypeDescriptionSearchDepth.idl59
-rw-r--r--udkapi/com/sun/star/reflection/XArrayTypeDescription.idl78
-rw-r--r--udkapi/com/sun/star/reflection/XCompoundTypeDescription.idl85
-rw-r--r--udkapi/com/sun/star/reflection/XConstantTypeDescription.idl80
-rw-r--r--udkapi/com/sun/star/reflection/XConstantsTypeDescription.idl65
-rw-r--r--udkapi/com/sun/star/reflection/XEnumTypeDescription.idl74
-rw-r--r--udkapi/com/sun/star/reflection/XIdlArray.idl134
-rw-r--r--udkapi/com/sun/star/reflection/XIdlClass.idl215
-rw-r--r--udkapi/com/sun/star/reflection/XIdlClassProvider.idl61
-rw-r--r--udkapi/com/sun/star/reflection/XIdlField.idl83
-rw-r--r--udkapi/com/sun/star/reflection/XIdlField2.idl133
-rw-r--r--udkapi/com/sun/star/reflection/XIdlMember.idl67
-rw-r--r--udkapi/com/sun/star/reflection/XIdlMethod.idl141
-rw-r--r--udkapi/com/sun/star/reflection/XIdlReflection.idl83
-rw-r--r--udkapi/com/sun/star/reflection/XIndirectTypeDescription.idl63
-rw-r--r--udkapi/com/sun/star/reflection/XInterfaceAttributeTypeDescription.idl77
-rw-r--r--udkapi/com/sun/star/reflection/XInterfaceAttributeTypeDescription2.idl79
-rw-r--r--udkapi/com/sun/star/reflection/XInterfaceMemberTypeDescription.idl71
-rw-r--r--udkapi/com/sun/star/reflection/XInterfaceMethodTypeDescription.idl90
-rw-r--r--udkapi/com/sun/star/reflection/XInterfaceTypeDescription.idl96
-rw-r--r--udkapi/com/sun/star/reflection/XInterfaceTypeDescription2.idl76
-rw-r--r--udkapi/com/sun/star/reflection/XMethodParameter.idl98
-rw-r--r--udkapi/com/sun/star/reflection/XModuleTypeDescription.idl61
-rw-r--r--udkapi/com/sun/star/reflection/XParameter.idl59
-rw-r--r--udkapi/com/sun/star/reflection/XPropertyTypeDescription.idl67
-rw-r--r--udkapi/com/sun/star/reflection/XProxyFactory.idl81
-rw-r--r--udkapi/com/sun/star/reflection/XPublished.idl113
-rw-r--r--udkapi/com/sun/star/reflection/XServiceConstructorDescription.idl83
-rw-r--r--udkapi/com/sun/star/reflection/XServiceTypeDescription.idl109
-rw-r--r--udkapi/com/sun/star/reflection/XServiceTypeDescription2.idl81
-rw-r--r--udkapi/com/sun/star/reflection/XSingletonTypeDescription.idl72
-rw-r--r--udkapi/com/sun/star/reflection/XSingletonTypeDescription2.idl70
-rw-r--r--udkapi/com/sun/star/reflection/XStructTypeDescription.idl93
-rw-r--r--udkapi/com/sun/star/reflection/XTypeDescription.idl85
-rw-r--r--udkapi/com/sun/star/reflection/XTypeDescriptionEnumeration.idl69
-rw-r--r--udkapi/com/sun/star/reflection/XTypeDescriptionEnumerationAccess.idl187
-rw-r--r--udkapi/com/sun/star/reflection/XUnionTypeDescription.idl100
-rw-r--r--udkapi/com/sun/star/reflection/makefile.mk93
-rw-r--r--udkapi/com/sun/star/registry/CannotRegisterImplementationException.idl64
-rw-r--r--udkapi/com/sun/star/registry/DefaultRegistry.idl163
-rw-r--r--udkapi/com/sun/star/registry/ImplementationRegistration.idl66
-rw-r--r--udkapi/com/sun/star/registry/InvalidRegistryException.idl56
-rw-r--r--udkapi/com/sun/star/registry/InvalidValueException.idl56
-rw-r--r--udkapi/com/sun/star/registry/MergeConflictException.idl56
-rw-r--r--udkapi/com/sun/star/registry/NestedRegistry.idl161
-rw-r--r--udkapi/com/sun/star/registry/RegistryKeyType.idl66
-rw-r--r--udkapi/com/sun/star/registry/RegistryValueType.idl119
-rw-r--r--udkapi/com/sun/star/registry/SimpleRegistry.idl64
-rw-r--r--udkapi/com/sun/star/registry/XImplementationRegistration.idl128
-rw-r--r--udkapi/com/sun/star/registry/XImplementationRegistration2.idl74
-rw-r--r--udkapi/com/sun/star/registry/XRegistryKey.idl466
-rw-r--r--udkapi/com/sun/star/registry/XSimpleRegistry.idl159
-rw-r--r--udkapi/com/sun/star/registry/makefile.mk59
-rw-r--r--udkapi/com/sun/star/script/AllEventObject.idl80
-rw-r--r--udkapi/com/sun/star/script/AllListenerAdapter.idl53
-rw-r--r--udkapi/com/sun/star/script/ArrayWrapper.idl68
-rw-r--r--udkapi/com/sun/star/script/BasicErrorException.idl69
-rw-r--r--udkapi/com/sun/star/script/CannotConvertException.idl72
-rw-r--r--udkapi/com/sun/star/script/CannotCreateAdapterException.idl55
-rw-r--r--udkapi/com/sun/star/script/ContextInformation.idl99
-rw-r--r--udkapi/com/sun/star/script/Converter.idl104
-rw-r--r--udkapi/com/sun/star/script/Engine.idl60
-rw-r--r--udkapi/com/sun/star/script/FailReason.idl91
-rw-r--r--udkapi/com/sun/star/script/FinishEngineEvent.idl76
-rw-r--r--udkapi/com/sun/star/script/FinishReason.idl62
-rw-r--r--udkapi/com/sun/star/script/InterruptEngineEvent.idl118
-rw-r--r--udkapi/com/sun/star/script/InterruptReason.idl88
-rw-r--r--udkapi/com/sun/star/script/Invocation.idl61
-rw-r--r--udkapi/com/sun/star/script/InvocationAdapterFactory.idl77
-rw-r--r--udkapi/com/sun/star/script/InvocationInfo.idl93
-rw-r--r--udkapi/com/sun/star/script/JavaScript.idl56
-rw-r--r--udkapi/com/sun/star/script/MemberType.idl51
-rw-r--r--udkapi/com/sun/star/script/ScriptEvent.idl65
-rw-r--r--udkapi/com/sun/star/script/ScriptEventDescriptor.idl76
-rw-r--r--udkapi/com/sun/star/script/XAllListener.idl75
-rw-r--r--udkapi/com/sun/star/script/XAllListenerAdapterService.idl72
-rw-r--r--udkapi/com/sun/star/script/XDebugging.idl153
-rw-r--r--udkapi/com/sun/star/script/XDefaultMethod.idl62
-rw-r--r--udkapi/com/sun/star/script/XDefaultProperty.idl66
-rw-r--r--udkapi/com/sun/star/script/XEngine.idl132
-rw-r--r--udkapi/com/sun/star/script/XEngineListener.idl83
-rw-r--r--udkapi/com/sun/star/script/XEventAttacher.idl123
-rw-r--r--udkapi/com/sun/star/script/XEventAttacherManager.idl232
-rw-r--r--udkapi/com/sun/star/script/XInvocation.idl157
-rw-r--r--udkapi/com/sun/star/script/XInvocation2.idl84
-rw-r--r--udkapi/com/sun/star/script/XInvocationAdapterFactory.idl72
-rw-r--r--udkapi/com/sun/star/script/XInvocationAdapterFactory2.idl68
-rw-r--r--udkapi/com/sun/star/script/XLibraryAccess.idl108
-rw-r--r--udkapi/com/sun/star/script/XScriptEventsAttacher.idl101
-rw-r--r--udkapi/com/sun/star/script/XScriptEventsSupplier.idl62
-rw-r--r--udkapi/com/sun/star/script/XScriptListener.idl71
-rw-r--r--udkapi/com/sun/star/script/XStarBasicAccess.idl98
-rw-r--r--udkapi/com/sun/star/script/XStarBasicDialogInfo.idl63
-rw-r--r--udkapi/com/sun/star/script/XStarBasicLibraryInfo.idl106
-rw-r--r--udkapi/com/sun/star/script/XStarBasicModuleInfo.idl70
-rw-r--r--udkapi/com/sun/star/script/XTypeConverter.idl109
-rw-r--r--udkapi/com/sun/star/script/makefile.mk88
-rw-r--r--udkapi/com/sun/star/security/AccessControlException.idl62
-rw-r--r--udkapi/com/sun/star/security/AccessController.idl62
-rw-r--r--udkapi/com/sun/star/security/AllPermission.idl56
-rw-r--r--udkapi/com/sun/star/security/Policy.idl48
-rw-r--r--udkapi/com/sun/star/security/RuntimePermission.idl52
-rw-r--r--udkapi/com/sun/star/security/XAccessControlContext.idl91
-rw-r--r--udkapi/com/sun/star/security/XAccessController.idl155
-rw-r--r--udkapi/com/sun/star/security/XAction.idl65
-rw-r--r--udkapi/com/sun/star/security/XPolicy.idl70
-rw-r--r--udkapi/com/sun/star/security/makefile.mk60
-rw-r--r--udkapi/com/sun/star/task/XInteractionAbort.idl56
-rw-r--r--udkapi/com/sun/star/task/XInteractionContinuation.idl66
-rw-r--r--udkapi/com/sun/star/task/XInteractionHandler.idl66
-rw-r--r--udkapi/com/sun/star/task/XInteractionHandler2.idl68
-rw-r--r--udkapi/com/sun/star/task/XInteractionRequest.idl77
-rw-r--r--udkapi/com/sun/star/task/XInteractionRetry.idl56
-rw-r--r--udkapi/com/sun/star/task/makefile.mk50
-rw-r--r--udkapi/com/sun/star/test/TestEvent.idl62
-rw-r--r--udkapi/com/sun/star/test/TestFactory.idl70
-rw-r--r--udkapi/com/sun/star/test/XSimpleTest.idl121
-rw-r--r--udkapi/com/sun/star/test/XTest.idl155
-rw-r--r--udkapi/com/sun/star/test/XTestListener.idl85
-rw-r--r--udkapi/com/sun/star/test/bridge/XBridgeTest.idl306
-rw-r--r--udkapi/com/sun/star/test/bridge/makefile.mk45
-rw-r--r--udkapi/com/sun/star/test/makefile.mk50
-rw-r--r--udkapi/com/sun/star/test/performance/XPerformanceTest.idl139
-rw-r--r--udkapi/com/sun/star/test/performance/makefile.mk45
-rw-r--r--udkapi/com/sun/star/udk-modules.idl82
-rw-r--r--udkapi/com/sun/star/uno/DeploymentException.idl53
-rw-r--r--udkapi/com/sun/star/uno/Exception.idl71
-rw-r--r--udkapi/com/sun/star/uno/NamingService.idl57
-rw-r--r--udkapi/com/sun/star/uno/RuntimeException.idl60
-rw-r--r--udkapi/com/sun/star/uno/SecurityException.idl51
-rw-r--r--udkapi/com/sun/star/uno/TypeClass.idl153
-rw-r--r--udkapi/com/sun/star/uno/Uik.idl70
-rw-r--r--udkapi/com/sun/star/uno/XAdapter.idl92
-rw-r--r--udkapi/com/sun/star/uno/XAggregation.idl124
-rw-r--r--udkapi/com/sun/star/uno/XComponentContext.idl69
-rw-r--r--udkapi/com/sun/star/uno/XCurrentContext.idl61
-rw-r--r--udkapi/com/sun/star/uno/XInterface.idl134
-rw-r--r--udkapi/com/sun/star/uno/XNamingService.idl82
-rw-r--r--udkapi/com/sun/star/uno/XReference.idl71
-rw-r--r--udkapi/com/sun/star/uno/XUnloadingPreference.idl71
-rw-r--r--udkapi/com/sun/star/uno/XWeak.idl123
-rw-r--r--udkapi/com/sun/star/uno/makefile.mk61
-rw-r--r--udkapi/com/sun/star/uri/ExternalUriReferenceTranslator.idl45
-rw-r--r--udkapi/com/sun/star/uri/RelativeUriExcessParentSegments.idl62
-rw-r--r--udkapi/com/sun/star/uri/UriReferenceFactory.idl77
-rw-r--r--udkapi/com/sun/star/uri/UriSchemeParser_vndDOTsunDOTstarDOTexpand.idl58
-rw-r--r--udkapi/com/sun/star/uri/UriSchemeParser_vndDOTsunDOTstarDOTscript.idl58
-rw-r--r--udkapi/com/sun/star/uri/VndSunStarPkgUrlReferenceFactory.idl45
-rw-r--r--udkapi/com/sun/star/uri/XExternalUriReferenceTranslator.idl91
-rw-r--r--udkapi/com/sun/star/uri/XUriReference.idl231
-rw-r--r--udkapi/com/sun/star/uri/XUriReferenceFactory.idl163
-rw-r--r--udkapi/com/sun/star/uri/XUriSchemeParser.idl75
-rw-r--r--udkapi/com/sun/star/uri/XVndSunStarExpandUrl.idl77
-rw-r--r--udkapi/com/sun/star/uri/XVndSunStarExpandUrlReference.idl59
-rw-r--r--udkapi/com/sun/star/uri/XVndSunStarPkgUrlReferenceFactory.idl61
-rw-r--r--udkapi/com/sun/star/uri/XVndSunStarScriptUrl.idl137
-rw-r--r--udkapi/com/sun/star/uri/XVndSunStarScriptUrlReference.idl57
-rw-r--r--udkapi/com/sun/star/uri/makefile.mk54
-rw-r--r--udkapi/com/sun/star/util/BootstrapMacroExpander.idl66
-rw-r--r--udkapi/com/sun/star/util/MacroExpander.idl63
-rw-r--r--udkapi/com/sun/star/util/XMacroExpander.idl68
-rw-r--r--udkapi/com/sun/star/util/XVeto.idl64
-rw-r--r--udkapi/com/sun/star/util/logging/LogLevel.idl59
-rw-r--r--udkapi/com/sun/star/util/logging/Logger.idl64
-rw-r--r--udkapi/com/sun/star/util/logging/LoggerRemote.idl64
-rw-r--r--udkapi/com/sun/star/util/logging/XLogger.idl71
-rw-r--r--udkapi/com/sun/star/util/logging/XLoggerRemote.idl77
-rw-r--r--udkapi/com/sun/star/util/logging/makefile.mk50
-rw-r--r--udkapi/com/sun/star/util/makefile.mk50
-rw-r--r--udkapi/com/sun/star/util/theMacroExpander.idl53
-rw-r--r--udkapi/prj/build.lst30
-rw-r--r--udkapi/prj/d.lst55
-rw-r--r--udkapi/prj/makefile.mk61
-rw-r--r--udkapi/util/makefile.mk75
-rw-r--r--udkapi/util/makefile.pmk35
-rw-r--r--udkapi/util/target.pmk34
-rw-r--r--udm/inc/udm/html/htmlitem.hxx408
-rw-r--r--udm/inc/udm/xml/xmlitem.hxx387
-rw-r--r--udm/prj/build.lst12
-rw-r--r--udm/prj/d.lst9
-rw-r--r--udm/source/html/htmlitem.cxx243
-rw-r--r--udm/source/html/makefile.mk56
-rw-r--r--udm/source/inc/precomp.h66
-rw-r--r--udm/source/mkinc/fullcpp.mk60
-rw-r--r--udm/source/unittest/makefile.mk77
-rw-r--r--udm/source/unittest/test.cxx112
-rw-r--r--udm/source/xml/makefile.mk56
-rw-r--r--udm/source/xml/xmlitem.cxx614
-rw-r--r--udm/util/makefile.mk54
-rw-r--r--unixODBC/inc/sql.h824
-rw-r--r--unixODBC/inc/sqlext.h2122
-rw-r--r--unixODBC/inc/sqltypes.h478
-rw-r--r--unixODBC/inc/sqlucode.h789
-rw-r--r--unixODBC/prj/build.lst3
-rw-r--r--unixODBC/prj/d.lst3
-rw-r--r--unodevtools/inc/unodevtools/options.hxx50
-rw-r--r--unodevtools/inc/unodevtools/typemanager.hxx100
-rw-r--r--unodevtools/prj/build.lst8
-rw-r--r--unodevtools/prj/d.lst5
-rw-r--r--unodevtools/source/skeletonmaker/cppcompskeleton.cxx1277
-rw-r--r--unodevtools/source/skeletonmaker/cpptypemaker.cxx971
-rw-r--r--unodevtools/source/skeletonmaker/javacompskeleton.cxx997
-rw-r--r--unodevtools/source/skeletonmaker/javatypemaker.cxx876
-rw-r--r--unodevtools/source/skeletonmaker/makefile.mk57
-rw-r--r--unodevtools/source/skeletonmaker/skeletoncommon.cxx722
-rw-r--r--unodevtools/source/skeletonmaker/skeletoncommon.hxx168
-rw-r--r--unodevtools/source/skeletonmaker/skeletoncpp.hxx142
-rw-r--r--unodevtools/source/skeletonmaker/skeletonjava.hxx116
-rw-r--r--unodevtools/source/skeletonmaker/skeletonmaker.cxx352
-rw-r--r--unodevtools/source/unodevtools/makefile.mk52
-rw-r--r--unodevtools/source/unodevtools/options.cxx125
-rw-r--r--unodevtools/source/unodevtools/typeblob.cxx803
-rw-r--r--unodevtools/source/unodevtools/typemanager.cxx281
-rwxr-xr-xunodevtools/unodevtools.pmk65
-rw-r--r--unoil/climaker/cli_oootypes_config11
-rw-r--r--unoil/climaker/makefile.mk94
-rw-r--r--unoil/climaker/version.txt32
-rw-r--r--unoil/com/sun/star/deployment/ui/makefile.mk33
-rw-r--r--unoil/com/sun/star/frame/status/makefile.mk35
-rwxr-xr-xunoil/com/sun/star/graphic/makefile.mk35
-rw-r--r--unoil/com/sun/star/mail/makefile.mk35
-rw-r--r--unoil/com/sun/star/media/makefile.mk35
-rw-r--r--unoil/drafts/com/sun/star/frame/status/makefile.mk35
-rw-r--r--unoil/javamaker/makefile.mk47
-rw-r--r--unoil/prj/build.lst4
-rw-r--r--unoil/prj/d.lst5
-rw-r--r--unoil/util/makefile.mk44
-rw-r--r--unoil/util/makefile.pmk35
-rw-r--r--unotools/inc/makefile.mk48
-rw-r--r--unotools/inc/pch/precompiled_unotools.cxx29
-rw-r--r--unotools/inc/pch/precompiled_unotools.hxx32
-rw-r--r--unotools/inc/unotools/accelcfg.hxx85
-rw-r--r--unotools/inc/unotools/accessiblerelationsethelper.hxx161
-rw-r--r--unotools/inc/unotools/accessiblestatesethelper.hxx183
-rw-r--r--unotools/inc/unotools/atom.hxx132
-rw-r--r--unotools/inc/unotools/bootstrap.hxx138
-rw-r--r--unotools/inc/unotools/cacheoptions.hxx173
-rw-r--r--unotools/inc/unotools/calendarwrapper.hxx133
-rw-r--r--unotools/inc/unotools/charclass.hxx236
-rw-r--r--unotools/inc/unotools/cmdoptions.hxx255
-rw-r--r--unotools/inc/unotools/collatorwrapper.hxx97
-rw-r--r--unotools/inc/unotools/compatibility.hxx253
-rw-r--r--unotools/inc/unotools/componentresmodule.hxx203
-rw-r--r--unotools/inc/unotools/configitem.hxx212
-rw-r--r--unotools/inc/unotools/configmgr.hxx116
-rw-r--r--unotools/inc/unotools/confignode.hxx361
-rw-r--r--unotools/inc/unotools/configpathes.hxx181
-rw-r--r--unotools/inc/unotools/configvaluecontainer.hxx236
-rw-r--r--unotools/inc/unotools/datetime.hxx63
-rw-r--r--unotools/inc/unotools/defaultoptions.hxx54
-rw-r--r--unotools/inc/unotools/desktopterminationobserver.hxx79
-rw-r--r--unotools/inc/unotools/digitgroupingiterator.hxx204
-rw-r--r--unotools/inc/unotools/docinfohelper.hxx47
-rw-r--r--unotools/inc/unotools/dynamicmenuoptions.hxx219
-rw-r--r--unotools/inc/unotools/eventcfg.hxx122
-rw-r--r--unotools/inc/unotools/eventlisteneradapter.hxx71
-rw-r--r--unotools/inc/unotools/extendedsecurityoptions.hxx160
-rw-r--r--unotools/inc/unotools/fltrcfg.hxx100
-rw-r--r--unotools/inc/unotools/fontcfg.hxx227
-rw-r--r--unotools/inc/unotools/fontcvt.hxx79
-rw-r--r--unotools/inc/unotools/fontdefs.hxx110
-rw-r--r--unotools/inc/unotools/fontoptions.hxx173
-rw-r--r--unotools/inc/unotools/historyoptions.hxx248
-rw-r--r--unotools/inc/unotools/historyoptions_const.hxx55
-rw-r--r--unotools/inc/unotools/idhelper.hxx210
-rw-r--r--unotools/inc/unotools/inetoptions.hxx143
-rw-r--r--unotools/inc/unotools/internaloptions.hxx180
-rw-r--r--unotools/inc/unotools/intlwrapper.hxx123
-rw-r--r--unotools/inc/unotools/itemholderbase.hxx128
-rw-r--r--unotools/inc/unotools/javaoptions.hxx73
-rw-r--r--unotools/inc/unotools/lingucfg.hxx243
-rw-r--r--unotools/inc/unotools/linguprops.hxx121
-rw-r--r--unotools/inc/unotools/localedatawrapper.hxx363
-rw-r--r--unotools/inc/unotools/localfilehelper.hxx68
-rw-r--r--unotools/inc/unotools/localisationoptions.hxx178
-rw-r--r--unotools/inc/unotools/loghelper.hxx51
-rw-r--r--unotools/inc/unotools/misccfg.hxx67
-rw-r--r--unotools/inc/unotools/moduleoptions.hxx257
-rw-r--r--unotools/inc/unotools/nativenumberwrapper.hxx75
-rw-r--r--unotools/inc/unotools/numberformatcodewrapper.hxx76
-rw-r--r--unotools/inc/unotools/options.hxx97
-rw-r--r--unotools/inc/unotools/optionsdlg.hxx56
-rw-r--r--unotools/inc/unotools/pathoptions.hxx140
-rw-r--r--unotools/inc/unotools/printwarningoptions.hxx161
-rw-r--r--unotools/inc/unotools/processfactory.hxx59
-rw-r--r--unotools/inc/unotools/progresshandlerwrap.hxx57
-rw-r--r--unotools/inc/unotools/propertysethelper.hxx96
-rw-r--r--unotools/inc/unotools/propertysetinfo.hxx93
-rw-r--r--unotools/inc/unotools/querydeep.hxx486
-rw-r--r--unotools/inc/unotools/readwritemutexguard.hxx113
-rw-r--r--unotools/inc/unotools/regoptions.hxx126
-rw-r--r--unotools/inc/unotools/regpathhelper.hxx71
-rw-r--r--unotools/inc/unotools/saveopt.hxx126
-rw-r--r--unotools/inc/unotools/searchopt.hxx119
-rw-r--r--unotools/inc/unotools/securityoptions.hxx296
-rw-r--r--unotools/inc/unotools/sharedunocomponent.hxx370
-rw-r--r--unotools/inc/unotools/sourceviewconfig.hxx63
-rw-r--r--unotools/inc/unotools/startoptions.hxx170
-rw-r--r--unotools/inc/unotools/streamhelper.hxx116
-rw-r--r--unotools/inc/unotools/streamsection.hxx85
-rw-r--r--unotools/inc/unotools/streamwrap.hxx183
-rw-r--r--unotools/inc/unotools/syslocale.hxx88
-rw-r--r--unotools/inc/unotools/syslocaleoptions.hxx168
-rw-r--r--unotools/inc/unotools/tempfile.hxx161
-rw-r--r--unotools/inc/unotools/textsearch.hxx196
-rw-r--r--unotools/inc/unotools/transliterationwrapper.hxx145
-rw-r--r--unotools/inc/unotools/ucbhelper.hxx89
-rw-r--r--unotools/inc/unotools/ucblockbytes.hxx222
-rw-r--r--unotools/inc/unotools/ucbstreamhelper.hxx83
-rw-r--r--unotools/inc/unotools/undoopt.hxx49
-rw-r--r--unotools/inc/unotools/unotoolsdllapi.h41
-rw-r--r--unotools/inc/unotools/unotunnelhelper.hxx196
-rw-r--r--unotools/inc/unotools/useroptions.hxx118
-rw-r--r--unotools/inc/unotools/useroptions_const.hxx56
-rw-r--r--unotools/inc/unotools/viewoptions.hxx353
-rw-r--r--unotools/inc/unotools/workingsetoptions.hxx156
-rw-r--r--unotools/inc/unotools/xmlaccelcfg.hxx109
-rw-r--r--unotools/prj/build.lst14
-rw-r--r--unotools/prj/d.lst12
-rw-r--r--unotools/qa/complex/tempfile/TempFileTest.java31
-rw-r--r--unotools/qa/complex/tempfile/TempFileUnitTest.java114
-rw-r--r--unotools/qa/complex/tempfile/Test01.java118
-rw-r--r--unotools/qa/complex/tempfile/Test02.java96
-rw-r--r--unotools/qa/complex/tempfile/TestHelper.java223
-rw-r--r--unotools/qa/complex/tempfile/makefile.mk57
-rw-r--r--unotools/source/accessibility/accessiblerelationsethelper.cxx272
-rw-r--r--unotools/source/accessibility/accessiblestatesethelper.cxx346
-rw-r--r--unotools/source/accessibility/makefile.mk48
-rw-r--r--unotools/source/config/accelcfg.cxx289
-rw-r--r--unotools/source/config/bootstrap.cxx912
-rw-r--r--unotools/source/config/cacheoptions.cxx512
-rw-r--r--unotools/source/config/cmdoptions.cxx628
-rw-r--r--unotools/source/config/compatibility.cxx804
-rw-r--r--unotools/source/config/configitem.cxx1422
-rw-r--r--unotools/source/config/configmgr.cxx747
-rw-r--r--unotools/source/config/confignode.cxx665
-rw-r--r--unotools/source/config/configpathes.cxx308
-rw-r--r--unotools/source/config/configvaluecontainer.cxx456
-rw-r--r--unotools/source/config/defaultoptions.cxx363
-rw-r--r--unotools/source/config/docinfohelper.cxx116
-rw-r--r--unotools/source/config/dynamicmenuoptions.cxx920
-rw-r--r--unotools/source/config/eventcfg.cxx455
-rw-r--r--unotools/source/config/extendedsecurityoptions.cxx538
-rw-r--r--unotools/source/config/fltrcfg.cxx616
-rw-r--r--unotools/source/config/fontcfg.cxx1224
-rw-r--r--unotools/source/config/fontoptions.cxx511
-rw-r--r--unotools/source/config/historyoptions.cxx745
-rw-r--r--unotools/source/config/inetoptions.cxx554
-rw-r--r--unotools/source/config/internaloptions.cxx628
-rw-r--r--unotools/source/config/itemholder1.cxx329
-rw-r--r--unotools/source/config/itemholder1.hxx89
-rw-r--r--unotools/source/config/javaoptions.cxx369
-rw-r--r--unotools/source/config/lingucfg.cxx1501
-rw-r--r--unotools/source/config/localisationoptions.cxx458
-rw-r--r--unotools/source/config/makefile.mk91
-rw-r--r--unotools/source/config/misccfg.cxx310
-rw-r--r--unotools/source/config/moduleoptions.cxx1597
-rw-r--r--unotools/source/config/options.cxx106
-rw-r--r--unotools/source/config/optionsdlg.cxx290
-rw-r--r--unotools/source/config/optionsdrawinglayer.cxx1705
-rw-r--r--unotools/source/config/pathoptions.cxx1091
-rw-r--r--unotools/source/config/printwarningoptions.cxx421
-rw-r--r--unotools/source/config/regoptions.cxx550
-rw-r--r--unotools/source/config/saveopt.cxx1002
-rw-r--r--unotools/source/config/searchopt.cxx636
-rw-r--r--unotools/source/config/securityoptions.cxx1309
-rw-r--r--unotools/source/config/sourceviewconfig.cxx268
-rw-r--r--unotools/source/config/startoptions.cxx458
-rw-r--r--unotools/source/config/syslocaleoptions.cxx702
-rw-r--r--unotools/source/config/undoopt.cxx201
-rw-r--r--unotools/source/config/useroptions.cxx1297
-rw-r--r--unotools/source/config/viewoptions.cxx1301
-rw-r--r--unotools/source/config/workingsetoptions.cxx393
-rw-r--r--unotools/source/config/xmlaccelcfg.cxx415
-rw-r--r--unotools/source/i18n/calendarwrapper.cxx680
-rw-r--r--unotools/source/i18n/charclass.cxx582
-rw-r--r--unotools/source/i18n/collatorwrapper.cxx214
-rw-r--r--unotools/source/i18n/intlwrapper.cxx110
-rw-r--r--unotools/source/i18n/localedatawrapper.cxx2007
-rw-r--r--unotools/source/i18n/makefile.mk57
-rw-r--r--unotools/source/i18n/nativenumberwrapper.cxx170
-rw-r--r--unotools/source/i18n/numberformatcodewrapper.cxx170
-rw-r--r--unotools/source/i18n/readwritemutexguard.cxx120
-rw-r--r--unotools/source/i18n/textsearch.cxx398
-rw-r--r--unotools/source/i18n/transliterationwrapper.cxx345
-rw-r--r--unotools/source/misc/atom.cxx383
-rw-r--r--unotools/source/misc/componentresmodule.cxx146
-rw-r--r--unotools/source/misc/datetime.cxx121
-rw-r--r--unotools/source/misc/desktopterminationobserver.cxx231
-rw-r--r--unotools/source/misc/eventlisteneradapter.cxx182
-rw-r--r--unotools/source/misc/fontcvt.cxx1520
-rw-r--r--unotools/source/misc/fontdefs.cxx598
-rw-r--r--unotools/source/misc/makefile.mk55
-rw-r--r--unotools/source/misc/sharedunocomponent.cxx246
-rw-r--r--unotools/source/misc/syslocale.cxx214
-rw-r--r--unotools/source/processfactory/componentfactory.cxx186
-rw-r--r--unotools/source/processfactory/makefile.mk50
-rw-r--r--unotools/source/processfactory/processfactory.cxx54
-rw-r--r--unotools/source/property/makefile.mk48
-rw-r--r--unotools/source/property/propertysethelper.cxx301
-rw-r--r--unotools/source/property/propertysetinfo.cxx199
-rw-r--r--unotools/source/streaming/makefile.mk48
-rw-r--r--unotools/source/streaming/streamhelper.cxx204
-rw-r--r--unotools/source/streaming/streamwrap.cxx379
-rw-r--r--unotools/source/ucbhelper/XTempFile.hxx153
-rw-r--r--unotools/source/ucbhelper/localfilehelper.cxx242
-rw-r--r--unotools/source/ucbhelper/makefile.mk54
-rw-r--r--unotools/source/ucbhelper/progresshandlerwrap.cxx98
-rw-r--r--unotools/source/ucbhelper/tempfile.cxx493
-rw-r--r--unotools/source/ucbhelper/ucbhelper.cxx925
-rw-r--r--unotools/source/ucbhelper/ucblockbytes.cxx1746
-rw-r--r--unotools/source/ucbhelper/ucbstreamhelper.cxx248
-rw-r--r--unotools/source/ucbhelper/xtempfile.cxx518
-rw-r--r--unotools/util/makefile.mk104
-rw-r--r--unotools/util/makefile.pmk31
-rw-r--r--unotools/util/utl.component34
-rw-r--r--unoxml/prj/build.lst8
-rw-r--r--unoxml/prj/d.lst5
-rw-r--r--unoxml/qa/complex/unoxml/RDFRepositoryTest.java893
-rw-r--r--unoxml/qa/complex/unoxml/TestDocument.java39
-rw-r--r--unoxml/qa/complex/unoxml/makefile.mk59
-rw-r--r--unoxml/qa/complex/unoxml/testdocuments/example.rdf27
-rw-r--r--unoxml/source/dom/attr.cxx153
-rw-r--r--unoxml/source/dom/attr.hxx210
-rw-r--r--unoxml/source/dom/attributesmap.cxx211
-rw-r--r--unoxml/source/dom/attributesmap.hxx97
-rw-r--r--unoxml/source/dom/cdatasection.cxx60
-rw-r--r--unoxml/source/dom/cdatasection.hxx230
-rw-r--r--unoxml/source/dom/characterdata.cxx233
-rw-r--r--unoxml/source/dom/characterdata.hxx239
-rw-r--r--unoxml/source/dom/childlist.cxx72
-rw-r--r--unoxml/source/dom/childlist.hxx64
-rw-r--r--unoxml/source/dom/comment.cxx58
-rw-r--r--unoxml/source/dom/comment.hxx222
-rw-r--r--unoxml/source/dom/document.cxx751
-rw-r--r--unoxml/source/dom/document.hxx366
-rw-r--r--unoxml/source/dom/documentbuilder.cxx429
-rw-r--r--unoxml/source/dom/documentbuilder.hxx157
-rw-r--r--unoxml/source/dom/documentfragment.cxx45
-rw-r--r--unoxml/source/dom/documentfragment.hxx179
-rw-r--r--unoxml/source/dom/documenttype.cxx127
-rw-r--r--unoxml/source/dom/documenttype.hxx217
-rw-r--r--unoxml/source/dom/domimplementation.cxx75
-rw-r--r--unoxml/source/dom/domimplementation.hxx73
-rw-r--r--unoxml/source/dom/element.cxx649
-rw-r--r--unoxml/source/dom/element.hxx296
-rw-r--r--unoxml/source/dom/elementlist.cxx133
-rw-r--r--unoxml/source/dom/elementlist.hxx86
-rw-r--r--unoxml/source/dom/entitiesmap.cxx100
-rw-r--r--unoxml/source/dom/entitiesmap.hxx97
-rw-r--r--unoxml/source/dom/entity.cxx90
-rw-r--r--unoxml/source/dom/entity.hxx200
-rw-r--r--unoxml/source/dom/entityreference.cxx52
-rw-r--r--unoxml/source/dom/entityreference.hxx176
-rw-r--r--unoxml/source/dom/makefile.mk74
-rw-r--r--unoxml/source/dom/node.cxx1027
-rw-r--r--unoxml/source/dom/node.hxx354
-rw-r--r--unoxml/source/dom/notation.cxx70
-rw-r--r--unoxml/source/dom/notation.hxx191
-rw-r--r--unoxml/source/dom/notationsmap.cxx101
-rw-r--r--unoxml/source/dom/notationsmap.hxx97
-rw-r--r--unoxml/source/dom/processinginstruction.cxx92
-rw-r--r--unoxml/source/dom/processinginstruction.hxx198
-rw-r--r--unoxml/source/dom/saxbuilder.cxx353
-rw-r--r--unoxml/source/dom/saxbuilder.hxx150
-rw-r--r--unoxml/source/dom/text.cxx72
-rw-r--r--unoxml/source/dom/text.hxx241
-rw-r--r--unoxml/source/events/event.cxx62
-rw-r--r--unoxml/source/events/event.hxx70
-rw-r--r--unoxml/source/events/eventdispatcher.cxx198
-rw-r--r--unoxml/source/events/eventdispatcher.hxx51
-rw-r--r--unoxml/source/events/makefile.mk56
-rw-r--r--unoxml/source/events/mouseevent.cxx149
-rw-r--r--unoxml/source/events/mouseevent.hxx92
-rw-r--r--unoxml/source/events/mutationevent.cxx100
-rw-r--r--unoxml/source/events/mutationevent.hxx66
-rw-r--r--unoxml/source/events/testlistener.cxx137
-rw-r--r--unoxml/source/events/testlistener.hxx106
-rw-r--r--unoxml/source/events/uievent.cxx81
-rw-r--r--unoxml/source/events/uievent.hxx55
-rw-r--r--unoxml/source/rdf/CBlankNode.cxx158
-rw-r--r--unoxml/source/rdf/CLiteral.cxx221
-rw-r--r--unoxml/source/rdf/CNodes.hxx74
-rw-r--r--unoxml/source/rdf/CURI.cxx867
-rw-r--r--unoxml/source/rdf/librdf_repository.cxx2248
-rw-r--r--unoxml/source/rdf/librdf_repository.hxx48
-rw-r--r--unoxml/source/rdf/librdf_services.cxx76
-rw-r--r--unoxml/source/rdf/makefile.mk92
-rw-r--r--unoxml/source/rdf/unordf.component43
-rw-r--r--unoxml/source/service/makefile.mk86
-rw-r--r--unoxml/source/service/services.cxx115
-rw-r--r--unoxml/source/service/unoxml.component43
-rw-r--r--unoxml/source/xpath/makefile.mk52
-rw-r--r--unoxml/source/xpath/nodelist.cxx65
-rw-r--r--unoxml/source/xpath/nodelist.hxx71
-rw-r--r--unoxml/source/xpath/xpathapi.cxx400
-rw-r--r--unoxml/source/xpath/xpathapi.hxx142
-rw-r--r--unoxml/source/xpath/xpathobject.cxx157
-rw-r--r--unoxml/source/xpath/xpathobject.hxx113
-rw-r--r--unoxml/test/domtest.cxx399
-rw-r--r--unoxml/test/export.map34
-rw-r--r--unoxml/test/makefile.mk105
-rw-r--r--ure/prj/build.lst2
-rw-r--r--ure/prj/d.lst11
-rw-r--r--ure/source/README412
-rw-r--r--ure/source/THIRDPARTYLICENSEREADME.html556
-rw-r--r--ure/source/delzip0
-rw-r--r--ure/source/jvmfwk3.ini5
-rw-r--r--ure/source/jvmfwk3rc5
-rw-r--r--ure/source/makefile.mk70
-rw-r--r--ure/source/startup.sh47
-rw-r--r--ure/source/uno.ini6
-rw-r--r--ure/source/unorc6
-rw-r--r--ure/source/uretest/JavaClient.java72
-rw-r--r--ure/source/uretest/JavaMain.java70
-rw-r--r--ure/source/uretest/JavaNative.java41
-rw-r--r--ure/source/uretest/JavaTest.java64
-rw-r--r--ure/source/uretest/Makefile310
-rw-r--r--ure/source/uretest/Makefile.pln315
-rw-r--r--ure/source/uretest/README115
-rw-r--r--ure/source/uretest/Runner.java41
-rw-r--r--ure/source/uretest/Tester.java55
-rw-r--r--ure/source/uretest/cppmain.cc292
-rw-r--r--ure/source/uretest/cppserver.cc125
-rw-r--r--ure/source/uretest/cpptest.cc125
-rw-r--r--ure/source/uretest/javaclient.mf.template5
-rw-r--r--ure/source/uretest/javamain.mf.template5
-rw-r--r--ure/source/uretest/javanative.mf.template5
-rw-r--r--ure/source/uretest/javatest.mf.template5
-rw-r--r--ure/source/uretest/runner.mf.template5
-rw-r--r--ure/source/uretest/tester.mf.template5
-rw-r--r--ure/source/uretest/types.idl52
-rw-r--r--ure/source/uretest/types.mf.template4
-rw-r--r--ure/source/uretest/version.map41
-rw-r--r--uui/prj/build.lst4
-rw-r--r--uui/prj/d.lst10
-rw-r--r--uui/source/alreadyopen.cxx60
-rw-r--r--uui/source/alreadyopen.hxx40
-rw-r--r--uui/source/alreadyopen.src62
-rw-r--r--uui/source/cookiedg.cxx144
-rw-r--r--uui/source/cookiedg.hrc45
-rw-r--r--uui/source/cookiedg.hxx65
-rw-r--r--uui/source/cookiedg.src171
-rw-r--r--uui/source/filechanged.cxx49
-rw-r--r--uui/source/filechanged.hxx40
-rw-r--r--uui/source/filechanged.src46
-rw-r--r--uui/source/fltdlg.cxx251
-rw-r--r--uui/source/fltdlg.hrc38
-rw-r--r--uui/source/fltdlg.hxx98
-rw-r--r--uui/source/fltdlg.src120
-rw-r--r--uui/source/getcontinuations.hxx118
-rw-r--r--uui/source/iahndl-authentication.cxx769
-rw-r--r--uui/source/iahndl-cookies.cxx209
-rw-r--r--uui/source/iahndl-errorhandler.cxx318
-rw-r--r--uui/source/iahndl-filter.cxx471
-rw-r--r--uui/source/iahndl-ioexceptions.cxx343
-rw-r--r--uui/source/iahndl-locking.cxx316
-rw-r--r--uui/source/iahndl-ssl.cxx357
-rwxr-xr-xuui/source/iahndl.cxx1588
-rwxr-xr-xuui/source/iahndl.hxx376
-rwxr-xr-xuui/source/ids.hrc205
-rw-r--r--uui/source/ids.src434
-rw-r--r--uui/source/interactionhandler.cxx144
-rw-r--r--uui/source/interactionhandler.hxx101
-rw-r--r--uui/source/lockfailed.cxx50
-rw-r--r--uui/source/lockfailed.hxx42
-rw-r--r--uui/source/lockfailed.src46
-rwxr-xr-xuui/source/logindlg.cxx350
-rwxr-xr-xuui/source/logindlg.hrc59
-rwxr-xr-xuui/source/logindlg.hxx116
-rwxr-xr-xuui/source/logindlg.src197
-rwxr-xr-xuui/source/loginerr.hxx178
-rwxr-xr-xuui/source/makefile.mk87
-rwxr-xr-xuui/source/masterpasscrtdlg.cxx190
-rw-r--r--uui/source/masterpasscrtdlg.hrc72
-rw-r--r--uui/source/masterpasscrtdlg.hxx80
-rw-r--r--uui/source/masterpasscrtdlg.src135
-rw-r--r--uui/source/masterpassworddlg.cxx80
-rw-r--r--uui/source/masterpassworddlg.hrc42
-rw-r--r--uui/source/masterpassworddlg.hxx66
-rw-r--r--uui/source/masterpassworddlg.src103
-rw-r--r--uui/source/mphndl.hxx96
-rwxr-xr-xuui/source/nameclashdlg.cxx107
-rwxr-xr-xuui/source/nameclashdlg.hrc41
-rwxr-xr-xuui/source/nameclashdlg.hxx63
-rw-r--r--uui/source/nameclashdlg.src116
-rw-r--r--uui/source/newerverwarn.cxx201
-rw-r--r--uui/source/newerverwarn.hrc57
-rw-r--r--uui/source/newerverwarn.hxx61
-rw-r--r--uui/source/newerverwarn.src82
-rw-r--r--uui/source/openlocked.cxx52
-rw-r--r--uui/source/openlocked.hxx40
-rw-r--r--uui/source/openlocked.src54
-rw-r--r--uui/source/passwordcontainer.cxx481
-rw-r--r--uui/source/passwordcontainer.hxx197
-rwxr-xr-xuui/source/passworddlg.cxx187
-rwxr-xr-xuui/source/passworddlg.hrc46
-rwxr-xr-xuui/source/passworddlg.hxx70
-rw-r--r--uui/source/passworddlg.src138
-rwxr-xr-xuui/source/passworderrs.src79
-rw-r--r--uui/source/requeststringresolver.cxx118
-rw-r--r--uui/source/requeststringresolver.hxx90
-rw-r--r--uui/source/secmacrowarnings.cxx378
-rw-r--r--uui/source/secmacrowarnings.hrc88
-rw-r--r--uui/source/secmacrowarnings.hxx103
-rw-r--r--uui/source/secmacrowarnings.src120
-rw-r--r--uui/source/services.cxx130
-rw-r--r--uui/source/sslwarndlg.cxx93
-rw-r--r--uui/source/sslwarndlg.hrc60
-rw-r--r--uui/source/sslwarndlg.hxx85
-rw-r--r--uui/source/sslwarndlg.src108
-rw-r--r--uui/source/trylater.cxx51
-rw-r--r--uui/source/trylater.hxx40
-rw-r--r--uui/source/trylater.src50
-rw-r--r--uui/source/unknownauthdlg.cxx103
-rw-r--r--uui/source/unknownauthdlg.hrc64
-rw-r--r--uui/source/unknownauthdlg.hxx87
-rw-r--r--uui/source/unknownauthdlg.src139
-rw-r--r--uui/util/makefile.mk72
-rw-r--r--uui/util/uui.component44
-rw-r--r--uui/util/uui.xml77
-rw-r--r--vbahelper/inc/vbahelper/helperdecl.hxx55
-rw-r--r--vbahelper/inc/vbahelper/vbaaccesshelper.hxx79
-rw-r--r--vbahelper/inc/vbahelper/vbaapplicationbase.hxx75
-rw-r--r--vbahelper/inc/vbahelper/vbacollectionimpl.hxx347
-rw-r--r--vbahelper/inc/vbahelper/vbadialogbase.hxx51
-rw-r--r--vbahelper/inc/vbahelper/vbadialogsbase.hxx51
-rw-r--r--vbahelper/inc/vbahelper/vbadllapi.h41
-rw-r--r--vbahelper/inc/vbahelper/vbadocumentbase.hxx71
-rw-r--r--vbahelper/inc/vbahelper/vbadocumentsbase.hxx66
-rwxr-xr-xvbahelper/inc/vbahelper/vbaeventshelperbase.hxx162
-rw-r--r--vbahelper/inc/vbahelper/vbafontbase.hxx103
-rw-r--r--vbahelper/inc/vbahelper/vbaglobalbase.hxx50
-rw-r--r--vbahelper/inc/vbahelper/vbahelper.hxx248
-rw-r--r--vbahelper/inc/vbahelper/vbahelperinterface.hxx193
-rw-r--r--vbahelper/inc/vbahelper/vbapagesetupbase.hxx67
-rw-r--r--vbahelper/inc/vbahelper/vbapropvalue.hxx57
-rw-r--r--vbahelper/inc/vbahelper/vbashape.hxx115
-rw-r--r--vbahelper/inc/vbahelper/vbashaperange.hxx86
-rw-r--r--vbahelper/inc/vbahelper/vbashapes.hxx81
-rw-r--r--vbahelper/inc/vbahelper/vbatextframe.hxx67
-rw-r--r--vbahelper/inc/vbahelper/vbawindowbase.hxx63
-rw-r--r--vbahelper/prj/build.lst6
-rw-r--r--vbahelper/prj/d.lst30
-rw-r--r--vbahelper/source/msforms/makefile.mk81
-rw-r--r--vbahelper/source/msforms/service.cxx70
-rw-r--r--vbahelper/source/msforms/vbabutton.cxx71
-rw-r--r--vbahelper/source/msforms/vbabutton.hxx48
-rw-r--r--vbahelper/source/msforms/vbacheckbox.cxx104
-rw-r--r--vbahelper/source/msforms/vbacheckbox.hxx53
-rw-r--r--vbahelper/source/msforms/vbacombobox.cxx180
-rw-r--r--vbahelper/source/msforms/vbacombobox.hxx77
-rw-r--r--vbahelper/source/msforms/vbacontrol.cxx564
-rw-r--r--vbahelper/source/msforms/vbacontrol.hxx117
-rw-r--r--vbahelper/source/msforms/vbacontrols.cxx396
-rw-r--r--vbahelper/source/msforms/vbacontrols.hxx64
-rw-r--r--vbahelper/source/msforms/vbaframe.cxx85
-rw-r--r--vbahelper/source/msforms/vbaframe.hxx50
-rw-r--r--vbahelper/source/msforms/vbaimage.cxx56
-rw-r--r--vbahelper/source/msforms/vbaimage.hxx45
-rw-r--r--vbahelper/source/msforms/vbalabel.cxx85
-rw-r--r--vbahelper/source/msforms/vbalabel.hxx53
-rw-r--r--vbahelper/source/msforms/vbalistbox.cxx287
-rw-r--r--vbahelper/source/msforms/vbalistbox.hxx87
-rw-r--r--vbahelper/source/msforms/vbalistcontrolhelper.cxx146
-rw-r--r--vbahelper/source/msforms/vbalistcontrolhelper.hxx20
-rw-r--r--vbahelper/source/msforms/vbamultipage.cxx124
-rw-r--r--vbahelper/source/msforms/vbamultipage.hxx57
-rw-r--r--vbahelper/source/msforms/vbapages.cxx72
-rw-r--r--vbahelper/source/msforms/vbapages.hxx56
-rw-r--r--vbahelper/source/msforms/vbaprogressbar.cxx70
-rw-r--r--vbahelper/source/msforms/vbaprogressbar.hxx51
-rw-r--r--vbahelper/source/msforms/vbaradiobutton.cxx104
-rw-r--r--vbahelper/source/msforms/vbaradiobutton.hxx52
-rw-r--r--vbahelper/source/msforms/vbascrollbar.cxx131
-rw-r--r--vbahelper/source/msforms/vbascrollbar.hxx58
-rw-r--r--vbahelper/source/msforms/vbaspinbutton.cxx101
-rw-r--r--vbahelper/source/msforms/vbaspinbutton.hxx53
-rwxr-xr-xvbahelper/source/msforms/vbasystemaxcontrol.cxx101
-rwxr-xr-xvbahelper/source/msforms/vbasystemaxcontrol.hxx58
-rw-r--r--vbahelper/source/msforms/vbatextbox.cxx134
-rw-r--r--vbahelper/source/msforms/vbatextbox.hxx56
-rw-r--r--vbahelper/source/msforms/vbatogglebutton.cxx100
-rw-r--r--vbahelper/source/msforms/vbatogglebutton.hxx55
-rw-r--r--vbahelper/source/msforms/vbauserform.cxx234
-rw-r--r--vbahelper/source/msforms/vbauserform.hxx69
-rw-r--r--vbahelper/source/vbahelper/makefile.mk82
-rw-r--r--vbahelper/source/vbahelper/vbaapplicationbase.cxx498
-rw-r--r--vbahelper/source/vbahelper/vbacolorformat.cxx187
-rw-r--r--vbahelper/source/vbahelper/vbacolorformat.hxx125
-rw-r--r--vbahelper/source/vbahelper/vbacommandbar.cxx286
-rw-r--r--vbahelper/source/vbahelper/vbacommandbar.hxx109
-rw-r--r--vbahelper/source/vbahelper/vbacommandbarcontrol.cxx267
-rw-r--r--vbahelper/source/vbahelper/vbacommandbarcontrol.hxx116
-rw-r--r--vbahelper/source/vbahelper/vbacommandbarcontrols.cxx320
-rw-r--r--vbahelper/source/vbahelper/vbacommandbarcontrols.hxx87
-rw-r--r--vbahelper/source/vbahelper/vbacommandbarhelper.cxx277
-rw-r--r--vbahelper/source/vbahelper/vbacommandbarhelper.hxx102
-rw-r--r--vbahelper/source/vbahelper/vbacommandbars.cxx256
-rw-r--r--vbahelper/source/vbahelper/vbacommandbars.hxx63
-rw-r--r--vbahelper/source/vbahelper/vbadialogbase.cxx48
-rw-r--r--vbahelper/source/vbahelper/vbadialogsbase.cxx44
-rw-r--r--vbahelper/source/vbahelper/vbadocumentbase.cxx246
-rw-r--r--vbahelper/source/vbahelper/vbadocumentsbase.cxx302
-rwxr-xr-xvbahelper/source/vbahelper/vbaeventshelperbase.cxx218
-rw-r--r--vbahelper/source/vbahelper/vbafillformat.cxx199
-rw-r--r--vbahelper/source/vbahelper/vbafillformat.hxx71
-rw-r--r--vbahelper/source/vbahelper/vbafontbase.cxx339
-rw-r--r--vbahelper/source/vbahelper/vbaglobalbase.cxx156
-rw-r--r--vbahelper/source/vbahelper/vbahelper.cxx1465
-rw-r--r--vbahelper/source/vbahelper/vbalineformat.cxx455
-rw-r--r--vbahelper/source/vbahelper/vbalineformat.hxx82
-rw-r--r--vbahelper/source/vbahelper/vbapagesetupbase.cxx322
-rw-r--r--vbahelper/source/vbahelper/vbapictureformat.cxx144
-rw-r--r--vbahelper/source/vbahelper/vbapictureformat.hxx61
-rw-r--r--vbahelper/source/vbahelper/vbapropvalue.cxx45
-rw-r--r--vbahelper/source/vbahelper/vbashape.cxx673
-rw-r--r--vbahelper/source/vbahelper/vbashaperange.cxx379
-rw-r--r--vbahelper/source/vbahelper/vbashapes.cxx488
-rw-r--r--vbahelper/source/vbahelper/vbatextframe.cxx166
-rw-r--r--vbahelper/source/vbahelper/vbawindowbase.cxx177
-rw-r--r--vbahelper/util/makefile.mk112
-rw-r--r--vbahelper/util/msforms.component37
-rw-r--r--vcl/aqua/inc/aqua11yfactory.h47
-rw-r--r--vcl/aqua/inc/aqua11yfocustracker.hxx108
-rw-r--r--vcl/aqua/inc/aqua11ylistener.hxx65
-rw-r--r--vcl/aqua/inc/aqua11ywrapper.h119
-rwxr-xr-xvcl/aqua/inc/aquaprintview.h67
-rw-r--r--vcl/aqua/inc/aquavclevents.hxx96
-rw-r--r--vcl/aqua/inc/aquavcltypes.h36
-rw-r--r--vcl/aqua/inc/keyboardfocuslistener.hxx47
-rw-r--r--vcl/aqua/inc/salatsuifontutils.hxx63
-rw-r--r--vcl/aqua/inc/salbmp.h107
-rwxr-xr-xvcl/aqua/inc/salcolorutils.hxx52
-rwxr-xr-xvcl/aqua/inc/salconst.h68
-rw-r--r--vcl/aqua/inc/saldata.hxx138
-rw-r--r--vcl/aqua/inc/salfontutils.hxx66
-rw-r--r--vcl/aqua/inc/salframe.h220
-rwxr-xr-xvcl/aqua/inc/salframeview.h213
-rw-r--r--vcl/aqua/inc/salgdi.h417
-rw-r--r--vcl/aqua/inc/salinst.h202
-rwxr-xr-xvcl/aqua/inc/salmathutils.hxx87
-rw-r--r--vcl/aqua/inc/salmenu.h121
-rwxr-xr-xvcl/aqua/inc/salnativewidgets.h71
-rwxr-xr-xvcl/aqua/inc/salnsmenu.h68
-rwxr-xr-xvcl/aqua/inc/salnstimer.h40
-rw-r--r--vcl/aqua/inc/salobj.h86
-rw-r--r--vcl/aqua/inc/salprn.h171
-rw-r--r--vcl/aqua/inc/salsys.h65
-rw-r--r--vcl/aqua/inc/saltimer.h54
-rw-r--r--vcl/aqua/inc/salvd.h94
-rw-r--r--vcl/aqua/inc/svsys.h35
-rwxr-xr-xvcl/aqua/inc/vclnsapp.h70
-rw-r--r--vcl/aqua/source/a11y/aqua11yactionwrapper.h41
-rw-r--r--vcl/aqua/source/a11y/aqua11yactionwrapper.mm83
-rw-r--r--vcl/aqua/source/a11y/aqua11ycomponentwrapper.h45
-rw-r--r--vcl/aqua/source/a11y/aqua11ycomponentwrapper.mm110
-rw-r--r--vcl/aqua/source/a11y/aqua11yfactory.mm198
-rw-r--r--vcl/aqua/source/a11y/aqua11yfocuslistener.cxx118
-rw-r--r--vcl/aqua/source/a11y/aqua11yfocuslistener.hxx62
-rw-r--r--vcl/aqua/source/a11y/aqua11yfocustracker.cxx278
-rw-r--r--vcl/aqua/source/a11y/aqua11ylistener.cxx158
-rw-r--r--vcl/aqua/source/a11y/aqua11yrolehelper.h42
-rw-r--r--vcl/aqua/source/a11y/aqua11yrolehelper.mm272
-rw-r--r--vcl/aqua/source/a11y/aqua11yselectionwrapper.h43
-rw-r--r--vcl/aqua/source/a11y/aqua11yselectionwrapper.mm94
-rw-r--r--vcl/aqua/source/a11y/aqua11ytablewrapper.h44
-rw-r--r--vcl/aqua/source/a11y/aqua11ytablewrapper.mm211
-rw-r--r--vcl/aqua/source/a11y/aqua11ytextattributeswrapper.h39
-rw-r--r--vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm254
-rw-r--r--vcl/aqua/source/a11y/aqua11ytextwrapper.h64
-rw-r--r--vcl/aqua/source/a11y/aqua11ytextwrapper.mm289
-rw-r--r--vcl/aqua/source/a11y/aqua11yutil.h39
-rw-r--r--vcl/aqua/source/a11y/aqua11yutil.mm53
-rw-r--r--vcl/aqua/source/a11y/aqua11yvaluewrapper.h46
-rw-r--r--vcl/aqua/source/a11y/aqua11yvaluewrapper.mm95
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrapper.mm1142
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrapperbutton.h41
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrapperbutton.mm61
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrappercheckbox.h41
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrappercheckbox.mm65
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrappercombobox.h50
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrappercombobox.mm161
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrappergroup.h40
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrappergroup.mm57
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrapperlist.h39
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrapperlist.mm48
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrapperradiobutton.h41
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrapperradiobutton.mm65
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrapperradiogroup.h39
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrapperradiogroup.mm48
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrapperrow.h40
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrapperrow.mm56
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrapperscrollarea.h41
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrapperscrollarea.mm84
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrapperscrollbar.h39
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrapperscrollbar.mm49
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrappersplitter.h39
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrappersplitter.mm48
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrapperstatictext.h40
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrapperstatictext.mm56
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrappertabgroup.h39
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrappertabgroup.mm50
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrappertextarea.h39
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrappertextarea.mm48
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrappertoolbar.h39
-rw-r--r--vcl/aqua/source/a11y/aqua11ywrappertoolbar.mm50
-rw-r--r--vcl/aqua/source/a11y/documentfocuslistener.cxx253
-rw-r--r--vcl/aqua/source/a11y/documentfocuslistener.hxx101
-rw-r--r--vcl/aqua/source/a11y/makefile.mk88
-rw-r--r--vcl/aqua/source/a11y/readme.txt8
-rw-r--r--vcl/aqua/source/app/makefile.mk63
-rw-r--r--vcl/aqua/source/app/saldata.cxx293
-rw-r--r--vcl/aqua/source/app/salinst.cxx1322
-rwxr-xr-xvcl/aqua/source/app/salnstimer.mm56
-rw-r--r--vcl/aqua/source/app/salsys.cxx220
-rw-r--r--vcl/aqua/source/app/saltimer.cxx135
-rwxr-xr-xvcl/aqua/source/app/vclnsapp.mm518
-rw-r--r--vcl/aqua/source/dtrans/DataFlavorMapping.cxx732
-rw-r--r--vcl/aqua/source/dtrans/DataFlavorMapping.hxx143
-rw-r--r--vcl/aqua/source/dtrans/DragActionConversion.cxx92
-rw-r--r--vcl/aqua/source/dtrans/DragActionConversion.hxx46
-rw-r--r--vcl/aqua/source/dtrans/DragSource.cxx373
-rw-r--r--vcl/aqua/source/dtrans/DragSource.hxx142
-rw-r--r--vcl/aqua/source/dtrans/DragSourceContext.cxx74
-rw-r--r--vcl/aqua/source/dtrans/DragSourceContext.hxx72
-rw-r--r--vcl/aqua/source/dtrans/DropTarget.cxx599
-rw-r--r--vcl/aqua/source/dtrans/DropTarget.hxx169
-rw-r--r--vcl/aqua/source/dtrans/HtmlFmtFlt.cxx147
-rw-r--r--vcl/aqua/source/dtrans/HtmlFmtFlt.hxx20
-rw-r--r--vcl/aqua/source/dtrans/OSXTransferable.cxx215
-rw-r--r--vcl/aqua/source/dtrans/OSXTransferable.hxx100
-rw-r--r--vcl/aqua/source/dtrans/PictToBmpFlt.cxx201
-rw-r--r--vcl/aqua/source/dtrans/PictToBmpFlt.hxx37
-rw-r--r--vcl/aqua/source/dtrans/aqua_clipboard.cxx391
-rw-r--r--vcl/aqua/source/dtrans/aqua_clipboard.hxx181
-rw-r--r--vcl/aqua/source/dtrans/aqua_service.cxx86
-rw-r--r--vcl/aqua/source/dtrans/makefile.mk68
-rw-r--r--vcl/aqua/source/dtrans/service_entry.cxx64
-rw-r--r--vcl/aqua/source/dtrans/test_aquacb.cxx208
-rw-r--r--vcl/aqua/source/gdi/aquaprintaccessoryview.mm1381
-rwxr-xr-xvcl/aqua/source/gdi/aquaprintview.mm82
-rw-r--r--vcl/aqua/source/gdi/makefile.mk74
-rwxr-xr-xvcl/aqua/source/gdi/salatslayout.cxx1264
-rw-r--r--vcl/aqua/source/gdi/salatsuifontutils.cxx552
-rw-r--r--vcl/aqua/source/gdi/salbmp.cxx904
-rwxr-xr-xvcl/aqua/source/gdi/salcolorutils.cxx50
-rw-r--r--vcl/aqua/source/gdi/salgdi.cxx2686
-rwxr-xr-xvcl/aqua/source/gdi/salgdiutils.cxx300
-rwxr-xr-xvcl/aqua/source/gdi/salmathutils.cxx163
-rw-r--r--vcl/aqua/source/gdi/salnativewidgets.cxx1529
-rw-r--r--vcl/aqua/source/gdi/salprn.cxx879
-rw-r--r--vcl/aqua/source/gdi/salvd.cxx236
-rw-r--r--vcl/aqua/source/res/MainMenu.nib/classes.nib4
-rw-r--r--vcl/aqua/source/res/MainMenu.nib/info.nib21
-rw-r--r--vcl/aqua/source/res/MainMenu.nib/keyedobjects.nibbin0 -> 3615 bytes-rw-r--r--vcl/aqua/source/res/cursors/airbrush.pngbin0 -> 253 bytes-rw-r--r--vcl/aqua/source/res/cursors/ase.pngbin0 -> 214 bytes-rw-r--r--vcl/aqua/source/res/cursors/asn.pngbin0 -> 212 bytes-rw-r--r--vcl/aqua/source/res/cursors/asne.pngbin0 -> 240 bytes-rw-r--r--vcl/aqua/source/res/cursors/asns.pngbin0 -> 234 bytes-rw-r--r--vcl/aqua/source/res/cursors/asnswe.pngbin0 -> 285 bytes-rw-r--r--vcl/aqua/source/res/cursors/asnw.pngbin0 -> 246 bytes-rw-r--r--vcl/aqua/source/res/cursors/ass.pngbin0 -> 222 bytes-rw-r--r--vcl/aqua/source/res/cursors/asse.pngbin0 -> 243 bytes-rw-r--r--vcl/aqua/source/res/cursors/assw.pngbin0 -> 236 bytes-rw-r--r--vcl/aqua/source/res/cursors/asw.pngbin0 -> 212 bytes-rw-r--r--vcl/aqua/source/res/cursors/aswe.pngbin0 -> 228 bytes-rw-r--r--vcl/aqua/source/res/cursors/chain.pngbin0 -> 344 bytes-rw-r--r--vcl/aqua/source/res/cursors/chainnot.pngbin0 -> 390 bytes-rw-r--r--vcl/aqua/source/res/cursors/chart.pngbin0 -> 270 bytes-rw-r--r--vcl/aqua/source/res/cursors/copydata.pngbin0 -> 336 bytes-rw-r--r--vcl/aqua/source/res/cursors/copydlnk.pngbin0 -> 340 bytes-rw-r--r--vcl/aqua/source/res/cursors/copyf.pngbin0 -> 329 bytes-rw-r--r--vcl/aqua/source/res/cursors/copyf2.pngbin0 -> 344 bytes-rw-r--r--vcl/aqua/source/res/cursors/copyflnk.pngbin0 -> 339 bytes-rw-r--r--vcl/aqua/source/res/cursors/crook.pngbin0 -> 291 bytes-rw-r--r--vcl/aqua/source/res/cursors/crop.pngbin0 -> 239 bytes-rw-r--r--vcl/aqua/source/res/cursors/darc.pngbin0 -> 172 bytes-rw-r--r--vcl/aqua/source/res/cursors/dbezier.pngbin0 -> 185 bytes-rw-r--r--vcl/aqua/source/res/cursors/dcapt.pngbin0 -> 183 bytes-rw-r--r--vcl/aqua/source/res/cursors/dcirccut.pngbin0 -> 185 bytes-rw-r--r--vcl/aqua/source/res/cursors/dconnect.pngbin0 -> 183 bytes-rw-r--r--vcl/aqua/source/res/cursors/dellipse.pngbin0 -> 176 bytes-rw-r--r--vcl/aqua/source/res/cursors/detectiv.pngbin0 -> 268 bytes-rw-r--r--vcl/aqua/source/res/cursors/dfree.pngbin0 -> 188 bytes-rw-r--r--vcl/aqua/source/res/cursors/dline.pngbin0 -> 177 bytes-rw-r--r--vcl/aqua/source/res/cursors/dpie.pngbin0 -> 183 bytes-rw-r--r--vcl/aqua/source/res/cursors/dpolygon.pngbin0 -> 191 bytes-rw-r--r--vcl/aqua/source/res/cursors/drect.pngbin0 -> 172 bytes-rw-r--r--vcl/aqua/source/res/cursors/dtext.pngbin0 -> 174 bytes-rw-r--r--vcl/aqua/source/res/cursors/fill.pngbin0 -> 255 bytes-rw-r--r--vcl/aqua/source/res/cursors/help.pngbin0 -> 303 bytes-rw-r--r--vcl/aqua/source/res/cursors/hourglass.pngbin0 -> 246 bytes-rw-r--r--vcl/aqua/source/res/cursors/hshear.pngbin0 -> 223 bytes-rw-r--r--vcl/aqua/source/res/cursors/linkdata.pngbin0 -> 348 bytes-rw-r--r--vcl/aqua/source/res/cursors/linkf.pngbin0 -> 336 bytes-rw-r--r--vcl/aqua/source/res/cursors/magnify.pngbin0 -> 282 bytes-rw-r--r--vcl/aqua/source/res/cursors/mirror.pngbin0 -> 304 bytes-rw-r--r--vcl/aqua/source/res/cursors/movebw.pngbin0 -> 320 bytes-rw-r--r--vcl/aqua/source/res/cursors/movedata.pngbin0 -> 290 bytes-rw-r--r--vcl/aqua/source/res/cursors/movedlnk.pngbin0 -> 318 bytes-rw-r--r--vcl/aqua/source/res/cursors/movef.pngbin0 -> 294 bytes-rw-r--r--vcl/aqua/source/res/cursors/movef2.pngbin0 -> 314 bytes-rw-r--r--vcl/aqua/source/res/cursors/moveflnk.pngbin0 -> 307 bytes-rw-r--r--vcl/aqua/source/res/cursors/movept.pngbin0 -> 275 bytes-rw-r--r--vcl/aqua/source/res/cursors/neswsize.pngbin0 -> 312 bytes-rw-r--r--vcl/aqua/source/res/cursors/notallow.pngbin0 -> 297 bytes-rw-r--r--vcl/aqua/source/res/cursors/nullptr.pngbin0 -> 150 bytes-rw-r--r--vcl/aqua/source/res/cursors/nwsesize.pngbin0 -> 313 bytes-rw-r--r--vcl/aqua/source/res/cursors/pen.pngbin0 -> 351 bytes-rw-r--r--vcl/aqua/source/res/cursors/pivotcol.pngbin0 -> 293 bytes-rw-r--r--vcl/aqua/source/res/cursors/pivotdel.pngbin0 -> 264 bytes-rw-r--r--vcl/aqua/source/res/cursors/pivotfld.pngbin0 -> 272 bytes-rw-r--r--vcl/aqua/source/res/cursors/pivotrow.pngbin0 -> 295 bytes-rw-r--r--vcl/aqua/source/res/cursors/pntbrsh.pngbin0 -> 268 bytes-rw-r--r--vcl/aqua/source/res/cursors/rotate.pngbin0 -> 274 bytes-rw-r--r--vcl/aqua/source/res/cursors/tblsele.pngbin0 -> 174 bytes-rw-r--r--vcl/aqua/source/res/cursors/tblsels.pngbin0 -> 171 bytes-rw-r--r--vcl/aqua/source/res/cursors/tblselse.pngbin0 -> 183 bytes-rw-r--r--vcl/aqua/source/res/cursors/tblselsw.pngbin0 -> 183 bytes-rw-r--r--vcl/aqua/source/res/cursors/tblselw.pngbin0 -> 174 bytes-rw-r--r--vcl/aqua/source/res/cursors/timemove.pngbin0 -> 249 bytes-rw-r--r--vcl/aqua/source/res/cursors/timesize.pngbin0 -> 241 bytes-rw-r--r--vcl/aqua/source/res/cursors/vshear.pngbin0 -> 228 bytes-rw-r--r--vcl/aqua/source/res/cursors/vtext.pngbin0 -> 162 bytes-rw-r--r--vcl/aqua/source/res/delzip0
-rw-r--r--vcl/aqua/source/res/makefile.mk54
-rw-r--r--vcl/aqua/source/window/makefile.mk63
-rw-r--r--vcl/aqua/source/window/salframe.cxx1703
-rwxr-xr-xvcl/aqua/source/window/salframeview.mm1646
-rw-r--r--vcl/aqua/source/window/salmenu.cxx958
-rwxr-xr-xvcl/aqua/source/window/salnsmenu.mm213
-rw-r--r--vcl/aqua/source/window/salobj.cxx239
-rw-r--r--vcl/inc/cupsmgr.hxx108
-rw-r--r--vcl/inc/list.h99
-rw-r--r--vcl/inc/makefile.mk49
-rw-r--r--vcl/inc/pch/precompiled_vcl.cxx29
-rw-r--r--vcl/inc/pch/precompiled_vcl.hxx33
-rw-r--r--vcl/inc/sft.hxx630
-rw-r--r--vcl/inc/vcl/ImageListProvider.hxx54
-rwxr-xr-xvcl/inc/vcl/abstdlg.hxx93
-rw-r--r--vcl/inc/vcl/accel.h59
-rw-r--r--vcl/inc/vcl/accel.hxx128
-rw-r--r--vcl/inc/vcl/accmgr.hxx64
-rw-r--r--vcl/inc/vcl/alpha.hxx111
-rw-r--r--vcl/inc/vcl/animate.hxx254
-rw-r--r--vcl/inc/vcl/apptypes.hxx79
-rw-r--r--vcl/inc/vcl/arrange.hxx422
-rw-r--r--vcl/inc/vcl/bitmap.hxx854
-rw-r--r--vcl/inc/vcl/bitmapex.hxx400
-rw-r--r--vcl/inc/vcl/bmpacc.hxx545
-rw-r--r--vcl/inc/vcl/bmpfast.hxx51
-rw-r--r--vcl/inc/vcl/brdwin.hxx352
-rw-r--r--vcl/inc/vcl/btndlg.hxx117
-rw-r--r--vcl/inc/vcl/button.hxx566
-rw-r--r--vcl/inc/vcl/canvasbitmap.hxx129
-rw-r--r--vcl/inc/vcl/canvastools.hxx253
-rw-r--r--vcl/inc/vcl/cmdevt.h63
-rw-r--r--vcl/inc/vcl/cmdevt.hxx526
-rw-r--r--vcl/inc/vcl/combobox.h37
-rw-r--r--vcl/inc/vcl/combobox.hxx230
-rw-r--r--vcl/inc/vcl/configsettings.hxx73
-rw-r--r--vcl/inc/vcl/controldata.hxx62
-rw-r--r--vcl/inc/vcl/controllayout.hxx85
-rw-r--r--vcl/inc/vcl/ctrl.hxx201
-rw-r--r--vcl/inc/vcl/cursor.hxx119
-rw-r--r--vcl/inc/vcl/cvtgrf.hxx70
-rw-r--r--vcl/inc/vcl/cvtsvm.hxx117
-rw-r--r--vcl/inc/vcl/dbggui.hxx74
-rw-r--r--vcl/inc/vcl/decoview.hxx110
-rw-r--r--vcl/inc/vcl/dialog.hxx162
-rw-r--r--vcl/inc/vcl/dllapi.h40
-rw-r--r--vcl/inc/vcl/dndevdis.hxx114
-rw-r--r--vcl/inc/vcl/dndhelp.hxx126
-rw-r--r--vcl/inc/vcl/dndlcon.hxx124
-rw-r--r--vcl/inc/vcl/dockingarea.hxx65
-rw-r--r--vcl/inc/vcl/dockwin.hxx452
-rwxr-xr-xvcl/inc/vcl/edit.hxx264
-rw-r--r--vcl/inc/vcl/event.hxx479
-rw-r--r--vcl/inc/vcl/evntpost.hxx59
-rw-r--r--vcl/inc/vcl/extoutdevdata.hxx47
-rw-r--r--vcl/inc/vcl/field.hxx884
-rw-r--r--vcl/inc/vcl/fixbrd.hxx82
-rw-r--r--vcl/inc/vcl/fixed.hxx199
-rw-r--r--vcl/inc/vcl/fldunit.hxx33
-rw-r--r--vcl/inc/vcl/floatwin.hxx161
-rw-r--r--vcl/inc/vcl/fntstyle.hxx53
-rw-r--r--vcl/inc/vcl/font.hxx140
-rw-r--r--vcl/inc/vcl/fontcache.hxx99
-rw-r--r--vcl/inc/vcl/fontmanager.hxx745
-rw-r--r--vcl/inc/vcl/fontsubset.hxx97
-rw-r--r--vcl/inc/vcl/gdimtf.hxx251
-rw-r--r--vcl/inc/vcl/gfxlink.hxx185
-rw-r--r--vcl/inc/vcl/glyphcache.hxx380
-rw-r--r--vcl/inc/vcl/gradient.hxx132
-rw-r--r--vcl/inc/vcl/graph.h81
-rw-r--r--vcl/inc/vcl/graph.hxx222
-rw-r--r--vcl/inc/vcl/graphictools.hxx462
-rw-r--r--vcl/inc/vcl/graphite_adaptors.hxx152
-rw-r--r--vcl/inc/vcl/graphite_cache.hxx289
-rw-r--r--vcl/inc/vcl/graphite_features.hxx75
-rw-r--r--vcl/inc/vcl/graphite_layout.hxx188
-rw-r--r--vcl/inc/vcl/graphite_serverfont.hxx100
-rw-r--r--vcl/inc/vcl/group.hxx67
-rw-r--r--vcl/inc/vcl/hatch.hxx96
-rw-r--r--vcl/inc/vcl/help.hxx122
-rw-r--r--vcl/inc/vcl/helper.hxx65
-rw-r--r--vcl/inc/vcl/helpwin.hxx92
-rw-r--r--vcl/inc/vcl/i18nhelp.hxx97
-rw-r--r--vcl/inc/vcl/idlemgr.hxx60
-rw-r--r--vcl/inc/vcl/ilstbox.hxx643
-rw-r--r--vcl/inc/vcl/image.h182
-rw-r--r--vcl/inc/vcl/image.hxx178
-rw-r--r--vcl/inc/vcl/imagerepository.hxx70
-rw-r--r--vcl/inc/vcl/imgctrl.hxx67
-rw-r--r--vcl/inc/vcl/impbmp.hxx108
-rw-r--r--vcl/inc/vcl/impbmpconv.hxx39
-rw-r--r--vcl/inc/vcl/impdel.hxx87
-rw-r--r--vcl/inc/vcl/impfont.hxx243
-rw-r--r--vcl/inc/vcl/impgraph.hxx176
-rw-r--r--vcl/inc/vcl/impimagetree.hxx96
-rw-r--r--vcl/inc/vcl/impoct.hxx176
-rw-r--r--vcl/inc/vcl/impprn.hxx140
-rw-r--r--vcl/inc/vcl/inputctx.hxx88
-rw-r--r--vcl/inc/vcl/introwin.hxx53
-rw-r--r--vcl/inc/vcl/javachild.hxx55
-rw-r--r--vcl/inc/vcl/jobdata.hxx89
-rw-r--r--vcl/inc/vcl/jobset.h79
-rw-r--r--vcl/inc/vcl/jobset.hxx83
-rw-r--r--vcl/inc/vcl/keycod.hxx157
-rw-r--r--vcl/inc/vcl/keycodes.hxx191
-rw-r--r--vcl/inc/vcl/lazydelete.hxx262
-rw-r--r--vcl/inc/vcl/lineinfo.hxx132
-rw-r--r--vcl/inc/vcl/longcurr.hxx162
-rw-r--r--vcl/inc/vcl/lstbox.h65
-rw-r--r--vcl/inc/vcl/lstbox.hxx266
-rw-r--r--vcl/inc/vcl/mapmod.hxx116
-rw-r--r--vcl/inc/vcl/mapunit.hxx33
-rw-r--r--vcl/inc/vcl/menu.hxx534
-rw-r--r--vcl/inc/vcl/menubtn.hxx98
-rw-r--r--vcl/inc/vcl/metaact.hxx1546
-rw-r--r--vcl/inc/vcl/metric.hxx163
-rw-r--r--vcl/inc/vcl/mnemonic.hxx88
-rw-r--r--vcl/inc/vcl/mnemonicengine.hxx158
-rw-r--r--vcl/inc/vcl/morebtn.hxx95
-rw-r--r--vcl/inc/vcl/msgbox.hxx190
-rw-r--r--vcl/inc/vcl/octree.hxx161
-rw-r--r--vcl/inc/vcl/oldprintadaptor.hxx52
-rw-r--r--vcl/inc/vcl/outdata.hxx49
-rw-r--r--vcl/inc/vcl/outdev.h264
-rw-r--r--vcl/inc/vcl/outdev.hxx1226
-rw-r--r--vcl/inc/vcl/outfont.hxx406
-rw-r--r--vcl/inc/vcl/pdfextoutdevdata.hxx518
-rw-r--r--vcl/inc/vcl/pdfwriter.hxx1323
-rw-r--r--vcl/inc/vcl/pngread.hxx70
-rw-r--r--vcl/inc/vcl/pngwrite.hxx67
-rw-r--r--vcl/inc/vcl/pointr.hxx59
-rw-r--r--vcl/inc/vcl/polyscan.hxx155
-rw-r--r--vcl/inc/vcl/popupmenuwindow.hxx47
-rw-r--r--vcl/inc/vcl/ppdparser.hxx343
-rw-r--r--vcl/inc/vcl/print.h81
-rw-r--r--vcl/inc/vcl/print.hxx685
-rw-r--r--vcl/inc/vcl/printergfx.hxx442
-rw-r--r--vcl/inc/vcl/printerinfomanager.hxx245
-rw-r--r--vcl/inc/vcl/printerjob.hxx149
-rw-r--r--vcl/inc/vcl/prndlg.hxx335
-rw-r--r--vcl/inc/vcl/prntypes.hxx96
-rw-r--r--vcl/inc/vcl/ptrstyle.hxx142
-rw-r--r--vcl/inc/vcl/regband.hxx150
-rw-r--r--vcl/inc/vcl/region.h134
-rw-r--r--vcl/inc/vcl/region.hxx155
-rw-r--r--vcl/inc/vcl/salatype.hxx47
-rw-r--r--vcl/inc/vcl/salbmp.hxx65
-rw-r--r--vcl/inc/vcl/salbtype.hxx900
-rw-r--r--vcl/inc/vcl/salctrlhandle.hxx48
-rw-r--r--vcl/inc/vcl/salctype.hxx80
-rw-r--r--vcl/inc/vcl/saldatabasic.hxx59
-rw-r--r--vcl/inc/vcl/salframe.hxx293
-rw-r--r--vcl/inc/vcl/salgdi.hxx494
-rw-r--r--vcl/inc/vcl/salgeom.hxx51
-rw-r--r--vcl/inc/vcl/salgtype.hxx90
-rw-r--r--vcl/inc/vcl/salimestatus.hxx45
-rw-r--r--vcl/inc/vcl/salinst.hxx216
-rwxr-xr-xvcl/inc/vcl/sallayout.hxx390
-rw-r--r--vcl/inc/vcl/salmenu.hxx101
-rw-r--r--vcl/inc/vcl/salnativewidgets.hxx453
-rw-r--r--vcl/inc/vcl/salobj.hxx90
-rw-r--r--vcl/inc/vcl/salprn.hxx137
-rw-r--r--vcl/inc/vcl/salptype.hxx60
-rw-r--r--vcl/inc/vcl/salsession.hxx117
-rw-r--r--vcl/inc/vcl/salsys.hxx146
-rw-r--r--vcl/inc/vcl/saltimer.hxx69
-rw-r--r--vcl/inc/vcl/salvd.hxx58
-rw-r--r--vcl/inc/vcl/salwtype.hxx346
-rw-r--r--vcl/inc/vcl/scrbar.hxx170
-rw-r--r--vcl/inc/vcl/seleng.hxx253
-rw-r--r--vcl/inc/vcl/settings.hxx1298
-rw-r--r--vcl/inc/vcl/slider.hxx132
-rw-r--r--vcl/inc/vcl/sndstyle.hxx46
-rw-r--r--vcl/inc/vcl/sound.hxx51
-rw-r--r--vcl/inc/vcl/spin.h51
-rw-r--r--vcl/inc/vcl/spin.hxx117
-rw-r--r--vcl/inc/vcl/spinfld.hxx115
-rw-r--r--vcl/inc/vcl/split.hxx126
-rw-r--r--vcl/inc/vcl/splitwin.hxx280
-rw-r--r--vcl/inc/vcl/status.hxx226
-rw-r--r--vcl/inc/vcl/stdtext.hxx53
-rw-r--r--vcl/inc/vcl/strhelper.hxx83
-rw-r--r--vcl/inc/vcl/subedit.hxx48
-rw-r--r--vcl/inc/vcl/sv.h33
-rw-r--r--vcl/inc/vcl/svapp.hxx517
-rw-r--r--vcl/inc/vcl/svcompat.hxx70
-rw-r--r--vcl/inc/vcl/svdata.hxx455
-rw-r--r--vcl/inc/vcl/svids.hrc261
-rw-r--r--vcl/inc/vcl/symbol.hxx81
-rw-r--r--vcl/inc/vcl/syschild.hxx73
-rw-r--r--vcl/inc/vcl/sysdata.hxx189
-rw-r--r--vcl/inc/vcl/syswin.hxx281
-rw-r--r--vcl/inc/vcl/tabctrl.hxx218
-rw-r--r--vcl/inc/vcl/tabdlg.hxx70
-rw-r--r--vcl/inc/vcl/tabpage.hxx62
-rw-r--r--vcl/inc/vcl/taskpanelist.hxx57
-rw-r--r--vcl/inc/vcl/textlayout.hxx136
-rw-r--r--vcl/inc/vcl/threadex.hxx288
-rw-r--r--vcl/inc/vcl/timer.hxx89
-rw-r--r--vcl/inc/vcl/toolbox.h182
-rw-r--r--vcl/inc/vcl/toolbox.hxx682
-rw-r--r--vcl/inc/vcl/unobrok.hxx39
-rw-r--r--vcl/inc/vcl/unohelp.hxx70
-rw-r--r--vcl/inc/vcl/unohelp2.hxx84
-rw-r--r--vcl/inc/vcl/unowrap.hxx91
-rw-r--r--vcl/inc/vcl/vclenum.hxx328
-rw-r--r--vcl/inc/vcl/vclevent.hxx301
-rw-r--r--vcl/inc/vcl/virdev.hxx129
-rw-r--r--vcl/inc/vcl/waitobj.hxx53
-rw-r--r--vcl/inc/vcl/wall.hxx143
-rw-r--r--vcl/inc/vcl/wall2.hxx60
-rw-r--r--vcl/inc/vcl/windata.hxx49
-rw-r--r--vcl/inc/vcl/window.h370
-rw-r--r--vcl/inc/vcl/window.hxx1104
-rw-r--r--vcl/inc/vcl/wintypes.hxx33
-rw-r--r--vcl/inc/vcl/wrkwin.hxx108
-rw-r--r--vcl/inc/vcl/xconnection.hxx70
-rw-r--r--vcl/os2/howto.txt13
-rw-r--r--vcl/os2/inc/salbmp.h109
-rw-r--r--vcl/os2/inc/saldata.hxx307
-rw-r--r--vcl/os2/inc/salframe.h166
-rw-r--r--vcl/os2/inc/salgdi.h373
-rw-r--r--vcl/os2/inc/salids.hrc109
-rw-r--r--vcl/os2/inc/salinst.h103
-rw-r--r--vcl/os2/inc/sallang.hxx70
-rw-r--r--vcl/os2/inc/sallayout.h69
-rw-r--r--vcl/os2/inc/salmenu.h65
-rw-r--r--vcl/os2/inc/salobj.h69
-rw-r--r--vcl/os2/inc/salprn.h146
-rw-r--r--vcl/os2/inc/salsound.h94
-rw-r--r--vcl/os2/inc/salsound.hxx84
-rw-r--r--vcl/os2/inc/salsys.h44
-rw-r--r--vcl/os2/inc/saltimer.h44
-rw-r--r--vcl/os2/inc/salvd.h65
-rw-r--r--vcl/os2/inc/svsys.h35
-rw-r--r--vcl/os2/inc/wingdi.h70
-rw-r--r--vcl/os2/inc/xwphook.h620
-rw-r--r--vcl/os2/source/app/makefile.mk59
-rw-r--r--vcl/os2/source/app/printf.c284
-rw-r--r--vcl/os2/source/app/salinfo.cxx182
-rw-r--r--vcl/os2/source/app/salinst.cxx863
-rw-r--r--vcl/os2/source/app/sallang.cxx117
-rw-r--r--vcl/os2/source/app/salshl.cxx123
-rw-r--r--vcl/os2/source/app/saltimer.cxx140
-rw-r--r--vcl/os2/source/gdi/makefile.mk56
-rw-r--r--vcl/os2/source/gdi/os2layout.cxx1056
-rw-r--r--vcl/os2/source/gdi/salbmp.cxx737
-rw-r--r--vcl/os2/source/gdi/salgdi.cxx1044
-rw-r--r--vcl/os2/source/gdi/salgdi2.cxx786
-rw-r--r--vcl/os2/source/gdi/salgdi3.cxx1769
-rw-r--r--vcl/os2/source/gdi/salprn.cxx1833
-rw-r--r--vcl/os2/source/gdi/salvd.cxx200
-rw-r--r--vcl/os2/source/src/airbrush.ptrbin0 -> 2106 bytes-rwxr-xr-xvcl/os2/source/src/ase.ptrbin0 -> 1190 bytes-rwxr-xr-xvcl/os2/source/src/asn.ptrbin0 -> 1190 bytes-rwxr-xr-xvcl/os2/source/src/asne.ptrbin0 -> 1190 bytes-rwxr-xr-xvcl/os2/source/src/asns.ptrbin0 -> 1190 bytes-rwxr-xr-xvcl/os2/source/src/asnswe.ptrbin0 -> 1190 bytes-rwxr-xr-xvcl/os2/source/src/asnw.ptrbin0 -> 1190 bytes-rwxr-xr-xvcl/os2/source/src/ass.ptrbin0 -> 1190 bytes-rwxr-xr-xvcl/os2/source/src/asse.ptrbin0 -> 1190 bytes-rwxr-xr-xvcl/os2/source/src/assw.ptrbin0 -> 1190 bytes-rwxr-xr-xvcl/os2/source/src/asw.ptrbin0 -> 1190 bytes-rwxr-xr-xvcl/os2/source/src/aswe.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/chain.ptrbin0 -> 16 bytes-rw-r--r--vcl/os2/source/src/chainnot.ptrbin0 -> 16 bytes-rw-r--r--vcl/os2/source/src/chart.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/copydata.ptrbin0 -> 1191 bytes-rw-r--r--vcl/os2/source/src/copydlnk.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/copyf.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/copyf2.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/copyflnk.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/crook.ptrbin0 -> 1191 bytes-rw-r--r--vcl/os2/source/src/crop.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/cross.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/darc.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/data.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/dbezier.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/dcapt.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/dcirccut.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/dconnect.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/dellipse.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/detectiv.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/dfree.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/dline.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/dpie.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/dpolygon.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/drect.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/dtext.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/fill.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/hand.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/help.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/hshear.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/hsizebar.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/hsplit.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/linkdata.ptrbin0 -> 1191 bytes-rw-r--r--vcl/os2/source/src/linkf.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/magnify.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/makefile.mk111
-rw-r--r--vcl/os2/source/src/mirror.ptrbin0 -> 1191 bytes-rw-r--r--vcl/os2/source/src/move.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/movebw.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/movedata.ptrbin0 -> 1191 bytes-rw-r--r--vcl/os2/source/src/movedlnk.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/movef.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/movef2.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/moveflnk.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/movept.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/nullptr.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/pen.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/pivotcol.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/pivotfld.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/pivotrow.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/pntbrsh.ptrbin0 -> 2106 bytes-rw-r--r--vcl/os2/source/src/refhand.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/rotate.ptrbin0 -> 1191 bytes-rw-r--r--vcl/os2/source/src/salsrc.rc108
-rw-r--r--vcl/os2/source/src/sd.icobin0 -> 3344 bytes-rw-r--r--vcl/os2/source/src/sd2.icobin0 -> 5604 bytes-rw-r--r--vcl/os2/source/src/tblsele.ptrbin0 -> 2106 bytes-rw-r--r--vcl/os2/source/src/tblsels.ptrbin0 -> 2106 bytes-rw-r--r--vcl/os2/source/src/tblselse.ptrbin0 -> 2106 bytes-rw-r--r--vcl/os2/source/src/tblselsw.ptrbin0 -> 2106 bytes-rw-r--r--vcl/os2/source/src/tblselw.ptrbin0 -> 2106 bytes-rwxr-xr-xvcl/os2/source/src/timemove.ptrbin0 -> 1190 bytes-rwxr-xr-xvcl/os2/source/src/timesize.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/vshear.ptrbin0 -> 1201 bytes-rw-r--r--vcl/os2/source/src/vsizebar.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/vsplit.ptrbin0 -> 1190 bytes-rw-r--r--vcl/os2/source/src/vtext.ptrbin0 -> 2106 bytes-rw-r--r--vcl/os2/source/window/makefile53
-rw-r--r--vcl/os2/source/window/makefile.mk47
-rw-r--r--vcl/os2/source/window/salframe.cxx3774
-rw-r--r--vcl/os2/source/window/salmenu.cxx132
-rw-r--r--vcl/os2/source/window/salobj.cxx568
-rw-r--r--vcl/prj/build.lst57
-rw-r--r--vcl/prj/d.lst156
-rw-r--r--vcl/qa/complex/memCheck/CheckMemoryUsage.java608
-rw-r--r--vcl/qa/complex/memCheck/CheckMemoryUsage.props14
-rw-r--r--vcl/qa/complex/memCheck/FileHelper.java90
-rw-r--r--vcl/qa/complex/memCheck/TestDocument.java45
-rwxr-xr-xvcl/qa/complex/memCheck/makefile.mk131
-rwxr-xr-xvcl/qa/complex/memCheck/testdocuments/CalcDoc.sxcbin0 -> 9547 bytes-rwxr-xr-xvcl/qa/complex/memCheck/testdocuments/ImpressDoc.sxibin0 -> 35135 bytes-rwxr-xr-xvcl/qa/complex/memCheck/testdocuments/WriterDoc.sxwbin0 -> 5754 bytes-rw-r--r--vcl/qa/complex/persistent_window_states/DocumentHandle.java166
-rw-r--r--vcl/qa/complex/persistent_window_states/PersistentWindowTest.java435
-rw-r--r--vcl/qa/complex/persistent_window_states/PersistentWindowTest.props10
-rw-r--r--vcl/qa/complex/persistent_window_states/makefile.mk67
-rw-r--r--vcl/source/app/dbggui.cxx2029
-rw-r--r--vcl/source/app/dndhelp.cxx182
-rw-r--r--vcl/source/app/help.cxx780
-rw-r--r--vcl/source/app/i18nhelp.cxx187
-rw-r--r--vcl/source/app/idlemgr.cxx150
-rw-r--r--vcl/source/app/makefile.mk69
-rw-r--r--vcl/source/app/salvtables.cxx144
-rw-r--r--vcl/source/app/session.cxx369
-rw-r--r--vcl/source/app/settings.cxx2085
-rw-r--r--vcl/source/app/sound.cxx55
-rw-r--r--vcl/source/app/stdtext.cxx68
-rw-r--r--vcl/source/app/svapp.cxx2085
-rw-r--r--vcl/source/app/svdata.cxx537
-rw-r--r--vcl/source/app/svmain.cxx638
-rw-r--r--vcl/source/app/svmainhook.cxx116
-rw-r--r--vcl/source/app/timer.cxx380
-rw-r--r--vcl/source/app/unohelp.cxx242
-rw-r--r--vcl/source/app/unohelp2.cxx112
-rw-r--r--vcl/source/app/vclevent.cxx151
-rw-r--r--vcl/source/components/display.cxx345
-rw-r--r--vcl/source/components/dtranscomp.cxx552
-rw-r--r--vcl/source/components/factory.cxx144
-rw-r--r--vcl/source/components/fontident.cxx211
-rw-r--r--vcl/source/components/makefile.mk51
-rw-r--r--vcl/source/control/button.cxx4534
-rw-r--r--vcl/source/control/combobox.cxx1591
-rw-r--r--vcl/source/control/ctrl.cxx587
-rwxr-xr-xvcl/source/control/edit.cxx3159
-rw-r--r--vcl/source/control/field.cxx2506
-rw-r--r--vcl/source/control/field2.cxx3469
-rw-r--r--vcl/source/control/fixbrd.cxx236
-rw-r--r--vcl/source/control/fixed.cxx1174
-rw-r--r--vcl/source/control/group.cxx324
-rw-r--r--vcl/source/control/ilstbox.cxx3245
-rw-r--r--vcl/source/control/imgctrl.cxx269
-rw-r--r--vcl/source/control/longcurr.cxx859
-rw-r--r--vcl/source/control/lstbox.cxx1644
-rw-r--r--vcl/source/control/makefile.mk79
-rw-r--r--vcl/source/control/menubtn.cxx249
-rw-r--r--vcl/source/control/morebtn.cxx280
-rw-r--r--vcl/source/control/scrbar.cxx1648
-rw-r--r--vcl/source/control/slider.cxx1089
-rw-r--r--vcl/source/control/spinbtn.cxx550
-rw-r--r--vcl/source/control/spinfld.cxx1091
-rw-r--r--vcl/source/control/tabctrl.cxx2347
-rw-r--r--vcl/source/fontsubset/cff.cxx2417
-rw-r--r--vcl/source/fontsubset/fontsubset.cxx185
-rw-r--r--vcl/source/fontsubset/gsub.cxx360
-rw-r--r--vcl/source/fontsubset/gsub.h44
-rw-r--r--vcl/source/fontsubset/list.c541
-rw-r--r--vcl/source/fontsubset/makefile.mk51
-rw-r--r--vcl/source/fontsubset/sft.cxx3359
-rw-r--r--vcl/source/fontsubset/ttcr.cxx1666
-rw-r--r--vcl/source/fontsubset/ttcr.hxx261
-rw-r--r--vcl/source/fontsubset/xlat.cxx221
-rw-r--r--vcl/source/fontsubset/xlat.hxx54
-rw-r--r--vcl/source/gdi/alpha.cxx434
-rw-r--r--vcl/source/gdi/animate.cxx939
-rw-r--r--vcl/source/gdi/base14.cxx687
-rw-r--r--vcl/source/gdi/bitmap.cxx1968
-rw-r--r--vcl/source/gdi/bitmap2.cxx1277
-rw-r--r--vcl/source/gdi/bitmap3.cxx2203
-rw-r--r--vcl/source/gdi/bitmap4.cxx1009
-rw-r--r--vcl/source/gdi/bitmapex.cxx914
-rw-r--r--vcl/source/gdi/bmpacc.cxx447
-rw-r--r--vcl/source/gdi/bmpacc2.cxx331
-rw-r--r--vcl/source/gdi/bmpacc3.cxx410
-rw-r--r--vcl/source/gdi/bmpconv.cxx213
-rw-r--r--vcl/source/gdi/bmpfast.cxx1040
-rw-r--r--vcl/source/gdi/configsettings.cxx205
-rw-r--r--vcl/source/gdi/cvtgrf.cxx175
-rw-r--r--vcl/source/gdi/cvtsvm.cxx2516
-rw-r--r--vcl/source/gdi/extoutdevdata.cxx41
-rw-r--r--vcl/source/gdi/font.cxx1116
-rw-r--r--vcl/source/gdi/gdimtf.cxx3033
-rw-r--r--vcl/source/gdi/gfxlink.cxx469
-rw-r--r--vcl/source/gdi/gradient.cxx344
-rw-r--r--vcl/source/gdi/graph.cxx814
-rw-r--r--vcl/source/gdi/graphictools.cxx759
-rw-r--r--vcl/source/gdi/hatch.cxx222
-rw-r--r--vcl/source/gdi/image.cxx1029
-rw-r--r--vcl/source/gdi/imagerepository.cxx57
-rw-r--r--vcl/source/gdi/impanmvw.cxx355
-rw-r--r--vcl/source/gdi/impanmvw.hxx96
-rw-r--r--vcl/source/gdi/impbmp.cxx134
-rw-r--r--vcl/source/gdi/impgraph.cxx1677
-rw-r--r--vcl/source/gdi/impimage.cxx634
-rw-r--r--vcl/source/gdi/impimagetree.cxx352
-rw-r--r--vcl/source/gdi/impvect.cxx1204
-rw-r--r--vcl/source/gdi/impvect.hxx63
-rw-r--r--vcl/source/gdi/jobset.cxx458
-rw-r--r--vcl/source/gdi/lineinfo.cxx361
-rwxr-xr-xvcl/source/gdi/makefile.mk122
-rw-r--r--vcl/source/gdi/mapmod.cxx311
-rw-r--r--vcl/source/gdi/metaact.cxx4274
-rw-r--r--vcl/source/gdi/metric.cxx934
-rw-r--r--vcl/source/gdi/octree.cxx369
-rw-r--r--vcl/source/gdi/oldprintadaptor.cxx117
-rw-r--r--vcl/source/gdi/outdev.cxx3493
-rwxr-xr-xvcl/source/gdi/outdev2.cxx2270
-rw-r--r--vcl/source/gdi/outdev3.cxx8095
-rw-r--r--vcl/source/gdi/outdev4.cxx1421
-rw-r--r--vcl/source/gdi/outdev5.cxx313
-rw-r--r--vcl/source/gdi/outdev6.cxx1247
-rw-r--r--vcl/source/gdi/outdevnative.cxx376
-rw-r--r--vcl/source/gdi/outmap.cxx2507
-rw-r--r--vcl/source/gdi/pdfextoutdevdata.cxx798
-rw-r--r--vcl/source/gdi/pdffontcache.cxx85
-rw-r--r--vcl/source/gdi/pdffontcache.hxx81
-rw-r--r--vcl/source/gdi/pdfwriter.cxx576
-rw-r--r--vcl/source/gdi/pdfwriter_impl.cxx12314
-rw-r--r--vcl/source/gdi/pdfwriter_impl.hxx1383
-rw-r--r--vcl/source/gdi/pdfwriter_impl2.cxx1035
-rw-r--r--vcl/source/gdi/pngread.cxx1579
-rw-r--r--vcl/source/gdi/pngwrite.cxx737
-rw-r--r--vcl/source/gdi/polyscan.cxx358
-rw-r--r--vcl/source/gdi/print.cxx1481
-rw-r--r--vcl/source/gdi/print2.cxx1570
-rwxr-xr-xvcl/source/gdi/print3.cxx1939
-rw-r--r--vcl/source/gdi/regband.cxx969
-rw-r--r--vcl/source/gdi/region.cxx2932
-rwxr-xr-xvcl/source/gdi/salgdilayout.cxx820
-rwxr-xr-xvcl/source/gdi/sallayout.cxx2326
-rw-r--r--vcl/source/gdi/salmisc.cxx516
-rw-r--r--vcl/source/gdi/salnativewidgets-none.cxx134
-rw-r--r--vcl/source/gdi/svcompat.cxx78
-rw-r--r--vcl/source/gdi/textlayout.cxx386
-rw-r--r--vcl/source/gdi/virdev.cxx449
-rw-r--r--vcl/source/gdi/wall.cxx639
-rw-r--r--vcl/source/glyphs/gcach_ftyp.cxx2601
-rw-r--r--vcl/source/glyphs/gcach_ftyp.hxx260
-rw-r--r--vcl/source/glyphs/gcach_layout.cxx644
-rw-r--r--vcl/source/glyphs/gcach_rbmp.cxx274
-rw-r--r--vcl/source/glyphs/gcach_vdev.cxx287
-rw-r--r--vcl/source/glyphs/gcach_vdev.hxx57
-rw-r--r--vcl/source/glyphs/glyphcache.cxx602
-rw-r--r--vcl/source/glyphs/graphite_adaptors.cxx336
-rw-r--r--vcl/source/glyphs/graphite_cache.cxx200
-rw-r--r--vcl/source/glyphs/graphite_features.cxx286
-rw-r--r--vcl/source/glyphs/graphite_layout.cxx1562
-rw-r--r--vcl/source/glyphs/graphite_serverfont.cxx85
-rw-r--r--vcl/source/glyphs/graphite_textsrc.cxx169
-rw-r--r--vcl/source/glyphs/graphite_textsrc.hxx131
-rw-r--r--vcl/source/glyphs/makefile.mk80
-rw-r--r--vcl/source/helper/canvasbitmap.cxx1467
-rw-r--r--vcl/source/helper/canvastools.cxx837
-rw-r--r--vcl/source/helper/evntpost.cxx65
-rw-r--r--vcl/source/helper/lazydelete.cxx125
-rw-r--r--vcl/source/helper/makefile.mk55
-rw-r--r--vcl/source/helper/strhelper.cxx442
-rw-r--r--vcl/source/helper/threadex.cxx127
-rw-r--r--vcl/source/helper/xconnection.cxx178
-rw-r--r--vcl/source/salmain/makefile.mk38
-rw-r--r--vcl/source/salmain/salmain.cxx40
-rw-r--r--vcl/source/src/btntext.src147
-rw-r--r--vcl/source/src/helptext.src163
-rw-r--r--vcl/source/src/images.src852
-rw-r--r--vcl/source/src/makefile.mk56
-rw-r--r--vcl/source/src/menu.src107
-rw-r--r--vcl/source/src/print.src521
-rw-r--r--vcl/source/src/stdtext.src127
-rw-r--r--vcl/source/src/units.src57
-rw-r--r--vcl/source/window/abstdlg.cxx64
-rw-r--r--vcl/source/window/accel.cxx731
-rw-r--r--vcl/source/window/accmgr.cxx290
-rw-r--r--vcl/source/window/arrange.cxx903
-rw-r--r--vcl/source/window/brdwin.cxx2353
-rw-r--r--vcl/source/window/btndlg.cxx548
-rw-r--r--vcl/source/window/cmdevt.cxx101
-rw-r--r--vcl/source/window/cursor.cxx462
-rw-r--r--vcl/source/window/decoview.cxx1388
-rw-r--r--vcl/source/window/dialog.cxx1028
-rw-r--r--vcl/source/window/dlgctrl.cxx1267
-rw-r--r--vcl/source/window/dndevdis.cxx564
-rw-r--r--vcl/source/window/dndlcon.cxx567
-rw-r--r--vcl/source/window/dockingarea.cxx246
-rw-r--r--vcl/source/window/dockmgr.cxx1689
-rw-r--r--vcl/source/window/dockwin.cxx1120
-rw-r--r--vcl/source/window/floatwin.cxx878
-rw-r--r--vcl/source/window/introwin.cxx88
-rw-r--r--vcl/source/window/javachild.cxx63
-rw-r--r--vcl/source/window/keycod.cxx160
-rw-r--r--vcl/source/window/keyevent.cxx116
-rw-r--r--vcl/source/window/makefile.mk104
-rw-r--r--vcl/source/window/menu.cxx6103
-rw-r--r--vcl/source/window/mnemonic.cxx419
-rw-r--r--vcl/source/window/mnemonicengine.cxx130
-rw-r--r--vcl/source/window/mouseevent.cxx92
-rw-r--r--vcl/source/window/msgbox.cxx693
-rw-r--r--vcl/source/window/popupmenuwindow.cxx79
-rw-r--r--vcl/source/window/printdlg.cxx2621
-rw-r--r--vcl/source/window/scrwnd.cxx420
-rw-r--r--vcl/source/window/scrwnd.hxx92
-rw-r--r--vcl/source/window/seleng.cxx502
-rw-r--r--vcl/source/window/split.cxx806
-rw-r--r--vcl/source/window/splitwin.cxx3940
-rw-r--r--vcl/source/window/status.cxx1802
-rw-r--r--vcl/source/window/syschild.cxx338
-rw-r--r--vcl/source/window/syswin.cxx1086
-rw-r--r--vcl/source/window/tabdlg.cxx276
-rw-r--r--vcl/source/window/tabpage.cxx216
-rw-r--r--vcl/source/window/taskpanelist.cxx398
-rw-r--r--vcl/source/window/toolbox.cxx6335
-rw-r--r--vcl/source/window/toolbox2.cxx2440
-rw-r--r--vcl/source/window/window.cxx9935
-rw-r--r--vcl/source/window/window2.cxx1981
-rw-r--r--vcl/source/window/window3.cxx82
-rw-r--r--vcl/source/window/winproc.cxx2618
-rw-r--r--vcl/source/window/wrkwin.cxx323
-rw-r--r--vcl/test/canvasbitmaptest.cxx1046
-rwxr-xr-xvcl/test/dndtest.cxx447
-rw-r--r--vcl/test/makefile.mk78
-rw-r--r--vcl/unx/gtk/a11y/TODO49
-rw-r--r--vcl/unx/gtk/a11y/atkaction.cxx278
-rw-r--r--vcl/unx/gtk/a11y/atkbridge.cxx78
-rw-r--r--vcl/unx/gtk/a11y/atkcomponent.cxx382
-rw-r--r--vcl/unx/gtk/a11y/atkeditabletext.cxx202
-rw-r--r--vcl/unx/gtk/a11y/atkfactory.cxx183
-rw-r--r--vcl/unx/gtk/a11y/atkfactory.hxx41
-rw-r--r--vcl/unx/gtk/a11y/atkhypertext.cxx291
-rw-r--r--vcl/unx/gtk/a11y/atkimage.cxx138
-rw-r--r--vcl/unx/gtk/a11y/atklistener.cxx537
-rw-r--r--vcl/unx/gtk/a11y/atklistener.hxx79
-rw-r--r--vcl/unx/gtk/a11y/atkregistry.cxx71
-rw-r--r--vcl/unx/gtk/a11y/atkregistry.hxx40
-rw-r--r--vcl/unx/gtk/a11y/atkselection.cxx195
-rw-r--r--vcl/unx/gtk/a11y/atktable.cxx721
-rw-r--r--vcl/unx/gtk/a11y/atktext.cxx876
-rw-r--r--vcl/unx/gtk/a11y/atktextattributes.cxx1456
-rw-r--r--vcl/unx/gtk/a11y/atktextattributes.hxx54
-rw-r--r--vcl/unx/gtk/a11y/atkutil.cxx801
-rw-r--r--vcl/unx/gtk/a11y/atkutil.hxx37
-rw-r--r--vcl/unx/gtk/a11y/atkvalue.cxx147
-rw-r--r--vcl/unx/gtk/a11y/atkwindow.cxx331
-rw-r--r--vcl/unx/gtk/a11y/atkwindow.hxx38
-rw-r--r--vcl/unx/gtk/a11y/atkwrapper.cxx953
-rw-r--r--vcl/unx/gtk/a11y/atkwrapper.hxx125
-rw-r--r--vcl/unx/gtk/a11y/makefile.mk93
-rw-r--r--vcl/unx/gtk/app/gtkdata.cxx998
-rw-r--r--vcl/unx/gtk/app/gtkinst.cxx367
-rw-r--r--vcl/unx/gtk/app/gtksys.cxx96
-rw-r--r--vcl/unx/gtk/app/makefile.mk76
-rw-r--r--vcl/unx/gtk/gdi/makefile.mk67
-rw-r--r--vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx4080
-rw-r--r--vcl/unx/gtk/window/gtkframe.cxx3812
-rw-r--r--vcl/unx/gtk/window/gtkobject.cxx211
-rw-r--r--vcl/unx/gtk/window/makefile.mk79
-rw-r--r--vcl/unx/headless/makefile.mk66
-rw-r--r--vcl/unx/headless/svpbmp.cxx323
-rw-r--r--vcl/unx/headless/svpbmp.hxx66
-rw-r--r--vcl/unx/headless/svpdummies.cxx116
-rw-r--r--vcl/unx/headless/svpdummies.hxx94
-rw-r--r--vcl/unx/headless/svpelement.cxx291
-rw-r--r--vcl/unx/headless/svpelement.hxx46
-rw-r--r--vcl/unx/headless/svpframe.cxx449
-rw-r--r--vcl/unx/headless/svpframe.hxx126
-rw-r--r--vcl/unx/headless/svpgdi.cxx587
-rw-r--r--vcl/unx/headless/svpgdi.hxx173
-rw-r--r--vcl/unx/headless/svpinst.cxx537
-rw-r--r--vcl/unx/headless/svpinst.hxx200
-rw-r--r--vcl/unx/headless/svpprn.cxx1075
-rw-r--r--vcl/unx/headless/svpprn.hxx120
-rw-r--r--vcl/unx/headless/svppspgraphics.cxx1365
-rw-r--r--vcl/unx/headless/svppspgraphics.hxx193
-rw-r--r--vcl/unx/headless/svptext.cxx502
-rw-r--r--vcl/unx/headless/svpvd.cxx110
-rw-r--r--vcl/unx/headless/svpvd.hxx59
-rw-r--r--vcl/unx/inc/XIM.h137
-rw-r--r--vcl/unx/inc/Xproto.h49
-rw-r--r--vcl/unx/inc/cdeint.hxx44
-rw-r--r--vcl/unx/inc/dtint.hxx78
-rw-r--r--vcl/unx/inc/i18n_cb.hxx95
-rw-r--r--vcl/unx/inc/i18n_ic.hxx100
-rw-r--r--vcl/unx/inc/i18n_im.hxx69
-rw-r--r--vcl/unx/inc/i18n_keysym.hxx71
-rw-r--r--vcl/unx/inc/i18n_status.hxx125
-rw-r--r--vcl/unx/inc/i18n_xkb.hxx115
-rw-r--r--vcl/unx/inc/plugins/gtk/atkbridge.hxx36
-rw-r--r--vcl/unx/inc/plugins/gtk/gtkdata.hxx89
-rw-r--r--vcl/unx/inc/plugins/gtk/gtkframe.hxx407
-rw-r--r--vcl/unx/inc/plugins/gtk/gtkgdi.hxx183
-rw-r--r--vcl/unx/inc/plugins/gtk/gtkinst.hxx105
-rw-r--r--vcl/unx/inc/plugins/gtk/gtkobject.hxx69
-rw-r--r--vcl/unx/inc/plugins/kde/kdedata.hxx110
-rw-r--r--vcl/unx/inc/pspgraphics.h193
-rw-r--r--vcl/unx/inc/salbmp.h237
-rw-r--r--vcl/unx/inc/saldata.hxx134
-rw-r--r--vcl/unx/inc/saldisp.hxx567
-rw-r--r--vcl/unx/inc/salfont.h180
-rw-r--r--vcl/unx/inc/salframe.h292
-rw-r--r--vcl/unx/inc/salgdi.h405
-rw-r--r--vcl/unx/inc/salinst.h131
-rw-r--r--vcl/unx/inc/salmenu.h65
-rw-r--r--vcl/unx/inc/salobj.h103
-rw-r--r--vcl/unx/inc/salprn.h126
-rw-r--r--vcl/unx/inc/salstd.hxx77
-rw-r--r--vcl/unx/inc/salsys.h67
-rw-r--r--vcl/unx/inc/saltimer.h44
-rw-r--r--vcl/unx/inc/salunx.h128
-rw-r--r--vcl/unx/inc/salvd.h101
-rw-r--r--vcl/unx/inc/sm.hxx91
-rw-r--r--vcl/unx/inc/soicon.hxx37
-rw-r--r--vcl/unx/inc/strhelper.hxx41
-rw-r--r--vcl/unx/inc/svsys.h32
-rw-r--r--vcl/unx/inc/svunx.h35
-rw-r--r--vcl/unx/inc/wmadaptor.hxx350
-rw-r--r--vcl/unx/inc/xfont.hxx162
-rw-r--r--vcl/unx/kde/kdedata.cxx274
-rw-r--r--vcl/unx/kde/makefile.mk81
-rw-r--r--vcl/unx/kde/salnativewidgets-kde.cxx2114
-rw-r--r--vcl/unx/kde4/KDEData.cxx54
-rw-r--r--vcl/unx/kde4/KDEData.hxx42
-rw-r--r--vcl/unx/kde4/KDESalDisplay.cxx45
-rw-r--r--vcl/unx/kde4/KDESalDisplay.hxx37
-rw-r--r--vcl/unx/kde4/KDESalFrame.cxx405
-rw-r--r--vcl/unx/kde4/KDESalFrame.hxx58
-rw-r--r--vcl/unx/kde4/KDESalGraphics.cxx905
-rw-r--r--vcl/unx/kde4/KDESalGraphics.hxx113
-rw-r--r--vcl/unx/kde4/KDESalInstance.cxx35
-rw-r--r--vcl/unx/kde4/KDESalInstance.hxx41
-rw-r--r--vcl/unx/kde4/KDEXLib.cxx175
-rw-r--r--vcl/unx/kde4/KDEXLib.hxx48
-rw-r--r--vcl/unx/kde4/VCLKDEApplication.cxx52
-rw-r--r--vcl/unx/kde4/VCLKDEApplication.hxx53
-rw-r--r--vcl/unx/kde4/main.cxx93
-rw-r--r--vcl/unx/kde4/makefile.mk88
-rw-r--r--vcl/unx/source/app/i18n_cb.cxx664
-rw-r--r--vcl/unx/source/app/i18n_ic.cxx786
-rw-r--r--vcl/unx/source/app/i18n_im.cxx618
-rw-r--r--vcl/unx/source/app/i18n_keysym.cxx365
-rw-r--r--vcl/unx/source/app/i18n_status.cxx733
-rw-r--r--vcl/unx/source/app/i18n_wrp.cxx259
-rw-r--r--vcl/unx/source/app/i18n_xkb.cxx163
-rw-r--r--vcl/unx/source/app/keysymnames.cxx688
-rw-r--r--vcl/unx/source/app/makefile.mk110
-rw-r--r--vcl/unx/source/app/randrwrapper.cxx360
-rw-r--r--vcl/unx/source/app/saldata.cxx869
-rw-r--r--vcl/unx/source/app/saldisp.cxx3442
-rw-r--r--vcl/unx/source/app/salinst.cxx433
-rw-r--r--vcl/unx/source/app/salsys.cxx225
-rw-r--r--vcl/unx/source/app/saltimer.cxx96
-rw-r--r--vcl/unx/source/app/sm.cxx800
-rw-r--r--vcl/unx/source/app/soicon.cxx115
-rw-r--r--vcl/unx/source/app/wmadaptor.cxx2513
-rw-r--r--vcl/unx/source/desktopdetect/desktopdetector.cxx343
-rw-r--r--vcl/unx/source/desktopdetect/makefile.mk57
-rw-r--r--vcl/unx/source/dtrans/X11_clipboard.cxx293
-rw-r--r--vcl/unx/source/dtrans/X11_clipboard.hxx151
-rw-r--r--vcl/unx/source/dtrans/X11_dndcontext.cxx138
-rw-r--r--vcl/unx/source/dtrans/X11_dndcontext.hxx104
-rw-r--r--vcl/unx/source/dtrans/X11_droptarget.cxx228
-rw-r--r--vcl/unx/source/dtrans/X11_selection.cxx4205
-rw-r--r--vcl/unx/source/dtrans/X11_selection.hxx531
-rw-r--r--vcl/unx/source/dtrans/X11_service.cxx135
-rw-r--r--vcl/unx/source/dtrans/X11_transferable.cxx134
-rw-r--r--vcl/unx/source/dtrans/X11_transferable.hxx72
-rw-r--r--vcl/unx/source/dtrans/bmp.cxx739
-rw-r--r--vcl/unx/source/dtrans/bmp.hxx105
-rw-r--r--vcl/unx/source/dtrans/config.cxx148
-rw-r--r--vcl/unx/source/dtrans/copydata_curs.h42
-rw-r--r--vcl/unx/source/dtrans/copydata_mask.h42
-rw-r--r--vcl/unx/source/dtrans/linkdata_curs.h42
-rw-r--r--vcl/unx/source/dtrans/linkdata_mask.h42
-rw-r--r--vcl/unx/source/dtrans/makefile.mk68
-rw-r--r--vcl/unx/source/dtrans/movedata_curs.h42
-rw-r--r--vcl/unx/source/dtrans/movedata_mask.h42
-rw-r--r--vcl/unx/source/dtrans/nodrop_curs.h42
-rw-r--r--vcl/unx/source/dtrans/nodrop_mask.h42
-rw-r--r--vcl/unx/source/fontmanager/adobeenc.tab1087
-rwxr-xr-xvcl/unx/source/fontmanager/afm_hash.cpp245
-rwxr-xr-xvcl/unx/source/fontmanager/afm_keyword_list58
-rw-r--r--vcl/unx/source/fontmanager/fontcache.cxx811
-rw-r--r--vcl/unx/source/fontmanager/fontconfig.cxx1306
-rw-r--r--vcl/unx/source/fontmanager/fontmanager.cxx4099
-rw-r--r--vcl/unx/source/fontmanager/helper.cxx404
-rw-r--r--vcl/unx/source/fontmanager/makefile.mk72
-rw-r--r--vcl/unx/source/fontmanager/parseAFM.cxx1577
-rw-r--r--vcl/unx/source/fontmanager/parseAFM.hxx334
-rw-r--r--vcl/unx/source/gdi/cdeint.cxx241
-rw-r--r--vcl/unx/source/gdi/dtint.cxx139
-rw-r--r--vcl/unx/source/gdi/dtsetenum.hxx146
-rw-r--r--vcl/unx/source/gdi/gcach_xpeer.cxx682
-rw-r--r--vcl/unx/source/gdi/gcach_xpeer.hxx94
-rw-r--r--vcl/unx/source/gdi/makefile.mk111
-rw-r--r--vcl/unx/source/gdi/pspgraphics.cxx1502
-rw-r--r--vcl/unx/source/gdi/salbmp.cxx1093
-rw-r--r--vcl/unx/source/gdi/salcvt.cxx341
-rw-r--r--vcl/unx/source/gdi/salcvt.hxx92
-rw-r--r--vcl/unx/source/gdi/salgdi.cxx1292
-rw-r--r--vcl/unx/source/gdi/salgdi2.cxx1149
-rw-r--r--vcl/unx/source/gdi/salgdi3.cxx2260
-rw-r--r--vcl/unx/source/gdi/salprnpsp.cxx1463
-rw-r--r--vcl/unx/source/gdi/salvd.cxx272
-rw-r--r--vcl/unx/source/gdi/xfont.cxx780
-rw-r--r--vcl/unx/source/gdi/xlfd_attr.cxx686
-rw-r--r--vcl/unx/source/gdi/xlfd_attr.hxx228
-rw-r--r--vcl/unx/source/gdi/xlfd_extd.cxx1001
-rw-r--r--vcl/unx/source/gdi/xlfd_extd.hxx272
-rw-r--r--vcl/unx/source/gdi/xlfd_smpl.cxx268
-rw-r--r--vcl/unx/source/gdi/xlfd_smpl.hxx92
-rw-r--r--vcl/unx/source/gdi/xrender_peer.cxx246
-rw-r--r--vcl/unx/source/gdi/xrender_peer.hxx387
-rw-r--r--vcl/unx/source/inc/airbrush_curs.h40
-rw-r--r--vcl/unx/source/inc/airbrush_mask.h40
-rw-r--r--vcl/unx/source/inc/ase_curs.h40
-rw-r--r--vcl/unx/source/inc/ase_mask.h40
-rw-r--r--vcl/unx/source/inc/asn_curs.h40
-rw-r--r--vcl/unx/source/inc/asn_mask.h40
-rw-r--r--vcl/unx/source/inc/asne_curs.h40
-rw-r--r--vcl/unx/source/inc/asne_mask.h40
-rw-r--r--vcl/unx/source/inc/asns_curs.h40
-rw-r--r--vcl/unx/source/inc/asns_mask.h40
-rw-r--r--vcl/unx/source/inc/asnswe_curs.h40
-rw-r--r--vcl/unx/source/inc/asnswe_mask.h40
-rw-r--r--vcl/unx/source/inc/asnw_curs.h40
-rw-r--r--vcl/unx/source/inc/asnw_mask.h40
-rw-r--r--vcl/unx/source/inc/ass_curs.h40
-rw-r--r--vcl/unx/source/inc/ass_mask.h40
-rw-r--r--vcl/unx/source/inc/asse_curs.h40
-rw-r--r--vcl/unx/source/inc/asse_mask.h40
-rw-r--r--vcl/unx/source/inc/assw_curs.h40
-rw-r--r--vcl/unx/source/inc/assw_mask.h40
-rw-r--r--vcl/unx/source/inc/asw_curs.h40
-rw-r--r--vcl/unx/source/inc/asw_mask.h40
-rw-r--r--vcl/unx/source/inc/aswe_curs.h40
-rw-r--r--vcl/unx/source/inc/aswe_mask.h40
-rw-r--r--vcl/unx/source/inc/chain_curs.h40
-rw-r--r--vcl/unx/source/inc/chain_mask.h38
-rw-r--r--vcl/unx/source/inc/chainnot_curs.h40
-rw-r--r--vcl/unx/source/inc/chainnot_mask.h38
-rw-r--r--vcl/unx/source/inc/chart_curs.h40
-rw-r--r--vcl/unx/source/inc/chart_mask.h40
-rw-r--r--vcl/unx/source/inc/copydata_curs.h42
-rw-r--r--vcl/unx/source/inc/copydata_mask.h42
-rw-r--r--vcl/unx/source/inc/copydlnk_curs.h42
-rw-r--r--vcl/unx/source/inc/copydlnk_mask.h42
-rw-r--r--vcl/unx/source/inc/copyfile_curs.h42
-rw-r--r--vcl/unx/source/inc/copyfile_mask.h42
-rw-r--r--vcl/unx/source/inc/copyfiles_curs.h42
-rw-r--r--vcl/unx/source/inc/copyfiles_mask.h42
-rw-r--r--vcl/unx/source/inc/copyflnk_curs.h42
-rw-r--r--vcl/unx/source/inc/copyflnk_mask.h42
-rw-r--r--vcl/unx/source/inc/crook_curs.h42
-rw-r--r--vcl/unx/source/inc/crook_mask.h40
-rw-r--r--vcl/unx/source/inc/crop_curs.h42
-rw-r--r--vcl/unx/source/inc/crop_mask.h40
-rw-r--r--vcl/unx/source/inc/detective_curs.h40
-rw-r--r--vcl/unx/source/inc/detective_mask.h40
-rw-r--r--vcl/unx/source/inc/drawarc_curs.h42
-rw-r--r--vcl/unx/source/inc/drawarc_mask.h40
-rw-r--r--vcl/unx/source/inc/drawbezier_curs.h42
-rw-r--r--vcl/unx/source/inc/drawbezier_mask.h40
-rw-r--r--vcl/unx/source/inc/drawcaption_curs.h42
-rw-r--r--vcl/unx/source/inc/drawcaption_mask.h40
-rw-r--r--vcl/unx/source/inc/drawcirclecut_curs.h42
-rw-r--r--vcl/unx/source/inc/drawcirclecut_mask.h40
-rw-r--r--vcl/unx/source/inc/drawconnect_curs.h42
-rw-r--r--vcl/unx/source/inc/drawconnect_mask.h40
-rw-r--r--vcl/unx/source/inc/drawcrook_curs.h42
-rw-r--r--vcl/unx/source/inc/drawcrook_mask.h40
-rw-r--r--vcl/unx/source/inc/drawcrop_curs.h42
-rw-r--r--vcl/unx/source/inc/drawcrop_mask.h40
-rw-r--r--vcl/unx/source/inc/drawellipse_curs.h42
-rw-r--r--vcl/unx/source/inc/drawellipse_mask.h40
-rw-r--r--vcl/unx/source/inc/drawfreehand_curs.h42
-rw-r--r--vcl/unx/source/inc/drawfreehand_mask.h40
-rw-r--r--vcl/unx/source/inc/drawline_curs.h42
-rw-r--r--vcl/unx/source/inc/drawline_mask.h40
-rw-r--r--vcl/unx/source/inc/drawmirror_curs.h42
-rw-r--r--vcl/unx/source/inc/drawmirror_mask.h40
-rw-r--r--vcl/unx/source/inc/drawpie_curs.h42
-rw-r--r--vcl/unx/source/inc/drawpie_mask.h40
-rw-r--r--vcl/unx/source/inc/drawpolygon_curs.h42
-rw-r--r--vcl/unx/source/inc/drawpolygon_mask.h40
-rw-r--r--vcl/unx/source/inc/drawrect_curs.h42
-rw-r--r--vcl/unx/source/inc/drawrect_mask.h40
-rw-r--r--vcl/unx/source/inc/drawtext_curs.h42
-rw-r--r--vcl/unx/source/inc/drawtext_mask.h40
-rw-r--r--vcl/unx/source/inc/fill_curs.h40
-rw-r--r--vcl/unx/source/inc/fill_mask.h40
-rw-r--r--vcl/unx/source/inc/hshear_curs.h42
-rw-r--r--vcl/unx/source/inc/hshear_mask.h40
-rw-r--r--vcl/unx/source/inc/invert50.h65
-rw-r--r--vcl/unx/source/inc/linkdata_curs.h42
-rw-r--r--vcl/unx/source/inc/linkdata_mask.h42
-rw-r--r--vcl/unx/source/inc/linkfile_curs.h42
-rw-r--r--vcl/unx/source/inc/linkfile_mask.h42
-rw-r--r--vcl/unx/source/inc/magnify_curs.h40
-rw-r--r--vcl/unx/source/inc/magnify_mask.h40
-rw-r--r--vcl/unx/source/inc/mirror_curs.h42
-rw-r--r--vcl/unx/source/inc/mirror_mask.h40
-rw-r--r--vcl/unx/source/inc/movebezierweight_curs.h42
-rw-r--r--vcl/unx/source/inc/movebezierweight_mask.h40
-rw-r--r--vcl/unx/source/inc/movedata_curs.h42
-rw-r--r--vcl/unx/source/inc/movedata_mask.h42
-rw-r--r--vcl/unx/source/inc/movedlnk_curs.h42
-rw-r--r--vcl/unx/source/inc/movedlnk_mask.h42
-rw-r--r--vcl/unx/source/inc/movefile_curs.h42
-rw-r--r--vcl/unx/source/inc/movefile_mask.h42
-rw-r--r--vcl/unx/source/inc/movefiles_curs.h42
-rw-r--r--vcl/unx/source/inc/movefiles_mask.h42
-rw-r--r--vcl/unx/source/inc/moveflnk_curs.h42
-rw-r--r--vcl/unx/source/inc/moveflnk_mask.h42
-rw-r--r--vcl/unx/source/inc/movepoint_curs.h42
-rw-r--r--vcl/unx/source/inc/movepoint_mask.h40
-rw-r--r--vcl/unx/source/inc/nodrop_curs.h42
-rw-r--r--vcl/unx/source/inc/nodrop_mask.h42
-rw-r--r--vcl/unx/source/inc/null_curs.h31
-rw-r--r--vcl/unx/source/inc/null_mask.h29
-rw-r--r--vcl/unx/source/inc/paintbrush_curs.h8
-rw-r--r--vcl/unx/source/inc/paintbrush_mask.h7
-rw-r--r--vcl/unx/source/inc/pivotcol_curs.h42
-rw-r--r--vcl/unx/source/inc/pivotcol_mask.h42
-rw-r--r--vcl/unx/source/inc/pivotdel_curs.h42
-rw-r--r--vcl/unx/source/inc/pivotdel_mask.h42
-rw-r--r--vcl/unx/source/inc/pivotfld_curs.h42
-rw-r--r--vcl/unx/source/inc/pivotfld_mask.h42
-rw-r--r--vcl/unx/source/inc/pivotrow_curs.h42
-rw-r--r--vcl/unx/source/inc/pivotrow_mask.h42
-rw-r--r--vcl/unx/source/inc/rotate_curs.h42
-rw-r--r--vcl/unx/source/inc/rotate_mask.h40
-rw-r--r--vcl/unx/source/inc/salcursors.h162
-rw-r--r--vcl/unx/source/inc/tblsele_curs.h8
-rw-r--r--vcl/unx/source/inc/tblsele_mask.h7
-rw-r--r--vcl/unx/source/inc/tblsels_curs.h9
-rw-r--r--vcl/unx/source/inc/tblsels_mask.h7
-rw-r--r--vcl/unx/source/inc/tblselse_curs.h8
-rw-r--r--vcl/unx/source/inc/tblselse_mask.h7
-rw-r--r--vcl/unx/source/inc/tblselsw_curs.h8
-rw-r--r--vcl/unx/source/inc/tblselsw_mask.h7
-rw-r--r--vcl/unx/source/inc/tblselw_curs.h8
-rw-r--r--vcl/unx/source/inc/tblselw_mask.h6
-rw-r--r--vcl/unx/source/inc/timemove_curs.h40
-rw-r--r--vcl/unx/source/inc/timemove_mask.h40
-rw-r--r--vcl/unx/source/inc/timesize_curs.h40
-rw-r--r--vcl/unx/source/inc/timesize_mask.h40
-rw-r--r--vcl/unx/source/inc/vertcurs_curs.h8
-rw-r--r--vcl/unx/source/inc/vertcurs_mask.h8
-rw-r--r--vcl/unx/source/inc/vshear_curs.h42
-rw-r--r--vcl/unx/source/inc/vshear_mask.h40
-rw-r--r--vcl/unx/source/plugadapt/makefile.mk59
-rw-r--r--vcl/unx/source/plugadapt/salplug.cxx303
-rw-r--r--vcl/unx/source/printer/cupsmgr.cxx1175
-rw-r--r--vcl/unx/source/printer/jobdata.cxx265
-rw-r--r--vcl/unx/source/printer/makefile.mk70
-rw-r--r--vcl/unx/source/printer/ppdparser.cxx2164
-rw-r--r--vcl/unx/source/printer/printerinfomanager.cxx1428
-rw-r--r--vcl/unx/source/printergfx/bitmap_gfx.cxx732
-rw-r--r--vcl/unx/source/printergfx/common_gfx.cxx1284
-rw-r--r--vcl/unx/source/printergfx/glyphset.cxx942
-rw-r--r--vcl/unx/source/printergfx/glyphset.hxx135
-rw-r--r--vcl/unx/source/printergfx/makefile.mk65
-rw-r--r--vcl/unx/source/printergfx/printerjob.cxx1200
-rw-r--r--vcl/unx/source/printergfx/psheader.ps368
-rw-r--r--vcl/unx/source/printergfx/psputil.cxx268
-rw-r--r--vcl/unx/source/printergfx/psputil.hxx78
-rw-r--r--vcl/unx/source/printergfx/text_gfx.cxx862
-rw-r--r--vcl/unx/source/window/FWS.cxx280
-rw-r--r--vcl/unx/source/window/FWS.hxx64
-rw-r--r--vcl/unx/source/window/makefile.mk59
-rw-r--r--vcl/unx/source/window/salframe.cxx4520
-rw-r--r--vcl/unx/source/window/salmenu.cxx132
-rw-r--r--vcl/unx/source/window/salobj.cxx561
-rw-r--r--vcl/util/hidother.src31
-rw-r--r--vcl/util/linksvp/makefile.mk65
-rw-r--r--vcl/util/makefile.mk476
-rw-r--r--vcl/util/makefile.pmk34
-rw-r--r--vcl/util/makefile2.pmk41
-rw-r--r--vcl/util/target.pmk44
-rw-r--r--vcl/util/vcl.component49
-rw-r--r--vcl/util/vcl.macosx.component49
-rw-r--r--vcl/util/vcl.windows.component40
-rw-r--r--vcl/win/inc/salbmp.h88
-rw-r--r--vcl/win/inc/saldata.hxx372
-rw-r--r--vcl/win/inc/salframe.h150
-rwxr-xr-xvcl/win/inc/salgdi.h406
-rw-r--r--vcl/win/inc/salids.hrc120
-rw-r--r--vcl/win/inc/salinst.h103
-rw-r--r--vcl/win/inc/salmenu.h78
-rw-r--r--vcl/win/inc/salnativewidgets.h54
-rw-r--r--vcl/win/inc/salobj.h69
-rw-r--r--vcl/win/inc/salprn.h130
-rw-r--r--vcl/win/inc/salsys.h92
-rw-r--r--vcl/win/inc/saltimer.h44
-rw-r--r--vcl/win/inc/salvd.h61
-rw-r--r--vcl/win/inc/svsys.h33
-rw-r--r--vcl/win/inc/wincomp.hxx264
-rw-r--r--vcl/win/source/app/MAKEFILE.MK53
-rw-r--r--vcl/win/source/app/saldata.cxx190
-rw-r--r--vcl/win/source/app/salinfo.cxx301
-rw-r--r--vcl/win/source/app/salinst.cxx1173
-rw-r--r--vcl/win/source/app/salshl.cxx164
-rw-r--r--vcl/win/source/app/saltimer.cxx154
-rw-r--r--vcl/win/source/gdi/MAKEFILE.MK69
-rw-r--r--vcl/win/source/gdi/salbmp.cxx632
-rw-r--r--vcl/win/source/gdi/salgdi.cxx1798
-rw-r--r--vcl/win/source/gdi/salgdi2.cxx821
-rw-r--r--vcl/win/source/gdi/salgdi3.cxx3245
-rw-r--r--vcl/win/source/gdi/salgdi_gdiplus.cxx265
-rwxr-xr-xvcl/win/source/gdi/salnativewidgets-luna.cxx1290
-rw-r--r--vcl/win/source/gdi/salprn.cxx2364
-rw-r--r--vcl/win/source/gdi/salvd.cxx256
-rw-r--r--vcl/win/source/gdi/winlayout.cxx3225
-rw-r--r--vcl/win/source/gdi/wntgdi.cxx67
-rw-r--r--vcl/win/source/src/50.bmpbin0 -> 94 bytes-rw-r--r--vcl/win/source/src/50.pngbin0 -> 125 bytes-rw-r--r--vcl/win/source/src/MAKEFILE.MK130
-rw-r--r--vcl/win/source/src/airbrush.curbin0 -> 326 bytes-rwxr-xr-xvcl/win/source/src/ase.curbin0 -> 326 bytes-rwxr-xr-xvcl/win/source/src/asn.curbin0 -> 326 bytes-rwxr-xr-xvcl/win/source/src/asne.curbin0 -> 326 bytes-rwxr-xr-xvcl/win/source/src/asns.curbin0 -> 326 bytes-rwxr-xr-xvcl/win/source/src/asnswe.curbin0 -> 326 bytes-rwxr-xr-xvcl/win/source/src/asnw.curbin0 -> 326 bytes-rwxr-xr-xvcl/win/source/src/ass.curbin0 -> 326 bytes-rwxr-xr-xvcl/win/source/src/asse.curbin0 -> 326 bytes-rwxr-xr-xvcl/win/source/src/assw.curbin0 -> 326 bytes-rwxr-xr-xvcl/win/source/src/asw.curbin0 -> 326 bytes-rwxr-xr-xvcl/win/source/src/aswe.curbin0 -> 326 bytes-rwxr-xr-xvcl/win/source/src/chain.curbin0 -> 326 bytes-rwxr-xr-xvcl/win/source/src/chainnot.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/chart.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/copydata.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/copydlnk.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/copyf.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/copyf2.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/copyflnk.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/crook.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/crop.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/cross.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/darc.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/dbezier.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/dcapt.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/dcirccut.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/dconnect.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/dellipse.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/detectiv.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/dfree.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/dline.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/dpie.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/dpolygon.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/drect.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/dtext.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/fill.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/hand.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/help.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/hshear.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/hsize.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/hsizebar.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/hsplit.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/linkdata.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/linkf.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/magnify.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/mirror.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/move.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/movebw.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/movedata.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/movedlnk.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/movef.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/movef2.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/moveflnk.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/movept.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/neswsize.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/notallow.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/nullptr.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/nwsesize.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/pen.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/pivotcol.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/pivotdel.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/pivotfld.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/pivotrow.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/pntbrsh.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/refhand.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/rotate.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/salsrc.rc121
-rw-r--r--vcl/win/source/src/sd.icobin0 -> 3310 bytes-rw-r--r--vcl/win/source/src/tblsele.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/tblsels.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/tblselse.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/tblselsw.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/tblselw.curbin0 -> 326 bytes-rwxr-xr-xvcl/win/source/src/timemove.curbin0 -> 326 bytes-rwxr-xr-xvcl/win/source/src/timesize.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/vshear.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/vsize.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/vsizebar.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/vsplit.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/src/vtext.curbin0 -> 326 bytes-rw-r--r--vcl/win/source/window/MAKEFILE.MK60
-rwxr-xr-xvcl/win/source/window/salframe.cxx6471
-rw-r--r--vcl/win/source/window/salmenu.cxx410
-rw-r--r--vcl/win/source/window/salobj.cxx838
-rw-r--r--vcl/workben/makefile.mk155
-rwxr-xr-xvcl/workben/outdevgrind.cxx974
-rw-r--r--vcl/workben/svdem.cxx148
-rw-r--r--vcl/workben/svpclient.cxx346
-rw-r--r--vcl/workben/svptest.cxx379
-rw-r--r--vcl/workben/vcldemo.cxx187
-rw-r--r--vigra/makefile.mk66
-rw-r--r--vigra/prj/build.lst3
-rw-r--r--vigra/prj/d.lst3
-rw-r--r--vigra/vigra1.4.0.patch1713
-rw-r--r--vos/docu/.html138
-rw-r--r--vos/inc/vos/conditn.hxx138
-rw-r--r--vos/inc/vos/connectn.hxx116
-rw-r--r--vos/inc/vos/diagnose.hxx56
-rw-r--r--vos/inc/vos/execabl.hxx152
-rw-r--r--vos/inc/vos/istream.hxx73
-rw-r--r--vos/inc/vos/macros.hxx156
-rw-r--r--vos/inc/vos/module.hxx79
-rw-r--r--vos/inc/vos/mutex.hxx183
-rw-r--r--vos/inc/vos/object.hxx193
-rw-r--r--vos/inc/vos/pipe.hxx259
-rw-r--r--vos/inc/vos/process.hxx319
-rw-r--r--vos/inc/vos/ref.hxx183
-rw-r--r--vos/inc/vos/ref.inl192
-rw-r--r--vos/inc/vos/refernce.hxx109
-rw-r--r--vos/inc/vos/refobj.hxx89
-rw-r--r--vos/inc/vos/refobj.inl86
-rw-r--r--vos/inc/vos/runnable.hxx67
-rw-r--r--vos/inc/vos/security.hxx121
-rw-r--r--vos/inc/vos/signal.hxx98
-rw-r--r--vos/inc/vos/socket.hxx1130
-rw-r--r--vos/inc/vos/stream.hxx285
-rw-r--r--vos/inc/vos/thread.hxx235
-rw-r--r--vos/inc/vos/timer.hxx200
-rw-r--r--vos/inc/vos/types.hxx40
-rw-r--r--vos/inc/vos/xception.hxx79
-rw-r--r--vos/prj/build.lst6
-rw-r--r--vos/prj/d.lst15
-rw-r--r--vos/source/conditn.cxx76
-rw-r--r--vos/source/dllentry.cxx62
-rw-r--r--vos/source/makefile.mk79
-rw-r--r--vos/source/module.cxx87
-rw-r--r--vos/source/mutex.cxx72
-rw-r--r--vos/source/object.cxx165
-rw-r--r--vos/source/pipe.cxx416
-rw-r--r--vos/source/process.cxx525
-rw-r--r--vos/source/refernce.cxx66
-rw-r--r--vos/source/security.cxx116
-rw-r--r--vos/source/signal.cxx64
-rw-r--r--vos/source/socket.cxx1723
-rw-r--r--vos/source/stream.cxx115
-rw-r--r--vos/source/thread.cxx240
-rw-r--r--vos/source/timer.cxx501
-rw-r--r--vos/source/xception.cxx43
-rw-r--r--vos/util/libvos1C50.so.mapfile274
-rw-r--r--vos/util/makefile.mk85
-rw-r--r--vos/version.mk40
-rw-r--r--wizards/com/sun/star/wizards/agenda/AgendaTemplate.java1961
-rw-r--r--wizards/com/sun/star/wizards/agenda/AgendaWizardDialog.java385
-rw-r--r--wizards/com/sun/star/wizards/agenda/AgendaWizardDialogConst.java109
-rw-r--r--wizards/com/sun/star/wizards/agenda/AgendaWizardDialogImpl.java597
-rw-r--r--wizards/com/sun/star/wizards/agenda/AgendaWizardDialogResources.java221
-rw-r--r--wizards/com/sun/star/wizards/agenda/CGAgenda.java83
-rw-r--r--wizards/com/sun/star/wizards/agenda/CGTopic.java87
-rw-r--r--wizards/com/sun/star/wizards/agenda/CallWizard.java224
-rw-r--r--wizards/com/sun/star/wizards/agenda/MANIFEST.MF2
-rw-r--r--wizards/com/sun/star/wizards/agenda/TemplateConsts.java146
-rw-r--r--wizards/com/sun/star/wizards/agenda/TopicsControl.java1321
-rw-r--r--wizards/com/sun/star/wizards/agenda/agenda.component35
-rw-r--r--wizards/com/sun/star/wizards/agenda/makefile.mk79
-rw-r--r--wizards/com/sun/star/wizards/common/ConfigGroup.java183
-rw-r--r--wizards/com/sun/star/wizards/common/ConfigNode.java53
-rw-r--r--wizards/com/sun/star/wizards/common/ConfigSet.java452
-rw-r--r--wizards/com/sun/star/wizards/common/Configuration.java457
-rw-r--r--wizards/com/sun/star/wizards/common/DebugHelper.java58
-rw-r--r--wizards/com/sun/star/wizards/common/Desktop.java509
-rw-r--r--wizards/com/sun/star/wizards/common/FileAccess.java1200
-rw-r--r--wizards/com/sun/star/wizards/common/HelpIds.java1047
-rw-r--r--wizards/com/sun/star/wizards/common/Helper.java444
-rw-r--r--wizards/com/sun/star/wizards/common/IRenderer.java40
-rw-r--r--wizards/com/sun/star/wizards/common/Indexable.java44
-rw-r--r--wizards/com/sun/star/wizards/common/InvalidQueryException.java40
-rw-r--r--wizards/com/sun/star/wizards/common/JavaTools.java785
-rw-r--r--wizards/com/sun/star/wizards/common/MANIFEST.MF1
-rw-r--r--wizards/com/sun/star/wizards/common/NamedValueCollection.java90
-rw-r--r--wizards/com/sun/star/wizards/common/NoValidPathException.java44
-rw-r--r--wizards/com/sun/star/wizards/common/NumberFormatter.java333
-rw-r--r--wizards/com/sun/star/wizards/common/NumericalHelper.java1625
-rw-r--r--wizards/com/sun/star/wizards/common/Properties.java126
-rw-r--r--wizards/com/sun/star/wizards/common/PropertySetHelper.java396
-rw-r--r--wizards/com/sun/star/wizards/common/Resource.java143
-rw-r--r--wizards/com/sun/star/wizards/common/SystemDialog.java428
-rw-r--r--wizards/com/sun/star/wizards/common/TerminateWizardException.java43
-rw-r--r--wizards/com/sun/star/wizards/common/UCB.java269
-rw-r--r--wizards/com/sun/star/wizards/common/XMLHelper.java74
-rw-r--r--wizards/com/sun/star/wizards/common/XMLProvider.java46
-rw-r--r--wizards/com/sun/star/wizards/common/delzip0
-rw-r--r--wizards/com/sun/star/wizards/db/BlindtextCreator.java113
-rw-r--r--wizards/com/sun/star/wizards/db/ColumnPropertySet.java213
-rw-r--r--wizards/com/sun/star/wizards/db/CommandMetaData.java772
-rw-r--r--wizards/com/sun/star/wizards/db/CommandName.java267
-rw-r--r--wizards/com/sun/star/wizards/db/DBMetaData.java1103
-rw-r--r--wizards/com/sun/star/wizards/db/DatabaseObjectWizard.java76
-rw-r--r--wizards/com/sun/star/wizards/db/FieldColumn.java471
-rw-r--r--wizards/com/sun/star/wizards/db/MANIFEST.MF0
-rw-r--r--wizards/com/sun/star/wizards/db/QueryMetaData.java300
-rw-r--r--wizards/com/sun/star/wizards/db/RecordParser.java306
-rw-r--r--wizards/com/sun/star/wizards/db/RelationController.java161
-rw-r--r--wizards/com/sun/star/wizards/db/SQLQueryComposer.java489
-rw-r--r--wizards/com/sun/star/wizards/db/TableDescriptor.java861
-rw-r--r--wizards/com/sun/star/wizards/db/TypeInspector.java465
-rw-r--r--wizards/com/sun/star/wizards/document/Control.java359
-rw-r--r--wizards/com/sun/star/wizards/document/DatabaseControl.java269
-rw-r--r--wizards/com/sun/star/wizards/document/FormHandler.java594
-rw-r--r--wizards/com/sun/star/wizards/document/GridControl.java93
-rw-r--r--wizards/com/sun/star/wizards/document/OfficeDocument.java457
-rw-r--r--wizards/com/sun/star/wizards/document/Shape.java142
-rw-r--r--wizards/com/sun/star/wizards/document/TimeStampControl.java172
-rw-r--r--wizards/com/sun/star/wizards/fax/CGFax.java60
-rw-r--r--wizards/com/sun/star/wizards/fax/CGFaxWizard.java38
-rw-r--r--wizards/com/sun/star/wizards/fax/CallWizard.java240
-rw-r--r--wizards/com/sun/star/wizards/fax/FaxDocument.java212
-rw-r--r--wizards/com/sun/star/wizards/fax/FaxWizardDialog.java628
-rw-r--r--wizards/com/sun/star/wizards/fax/FaxWizardDialogConst.java116
-rw-r--r--wizards/com/sun/star/wizards/fax/FaxWizardDialogImpl.java873
-rw-r--r--wizards/com/sun/star/wizards/fax/FaxWizardDialogResources.java182
-rw-r--r--wizards/com/sun/star/wizards/fax/MANIFEST.MF2
-rw-r--r--wizards/com/sun/star/wizards/fax/fax.component35
-rw-r--r--wizards/com/sun/star/wizards/fax/makefile.mk70
-rw-r--r--wizards/com/sun/star/wizards/form/CallFormWizard.java206
-rw-r--r--wizards/com/sun/star/wizards/form/DataEntrySetter.java147
-rw-r--r--wizards/com/sun/star/wizards/form/FieldLinker.java313
-rw-r--r--wizards/com/sun/star/wizards/form/Finalizer.java139
-rw-r--r--wizards/com/sun/star/wizards/form/FormConfiguration.java241
-rw-r--r--wizards/com/sun/star/wizards/form/FormControlArranger.java731
-rw-r--r--wizards/com/sun/star/wizards/form/FormDocument.java594
-rw-r--r--wizards/com/sun/star/wizards/form/FormWizard.java481
-rw-r--r--wizards/com/sun/star/wizards/form/MANIFEST.MF2
-rw-r--r--wizards/com/sun/star/wizards/form/StyleApplier.java494
-rw-r--r--wizards/com/sun/star/wizards/form/UIControlArranger.java504
-rw-r--r--wizards/com/sun/star/wizards/form/form.component35
-rw-r--r--wizards/com/sun/star/wizards/form/makefile.mk75
-rw-r--r--wizards/com/sun/star/wizards/letter/CGLetter.java66
-rw-r--r--wizards/com/sun/star/wizards/letter/CGLetterWizard.java39
-rw-r--r--wizards/com/sun/star/wizards/letter/CGPaperElementLocation.java40
-rw-r--r--wizards/com/sun/star/wizards/letter/CallWizard.java240
-rw-r--r--wizards/com/sun/star/wizards/letter/LetterDocument.java330
-rw-r--r--wizards/com/sun/star/wizards/letter/LetterWizardDialog.java913
-rwxr-xr-xwizards/com/sun/star/wizards/letter/LetterWizardDialogConst.java93
-rw-r--r--wizards/com/sun/star/wizards/letter/LetterWizardDialogEvents.java89
-rw-r--r--wizards/com/sun/star/wizards/letter/LetterWizardDialogImpl.java1543
-rw-r--r--wizards/com/sun/star/wizards/letter/LetterWizardDialogResources.java207
-rw-r--r--wizards/com/sun/star/wizards/letter/LocaleCodes.java202
-rw-r--r--wizards/com/sun/star/wizards/letter/MANIFEST.MF2
-rw-r--r--wizards/com/sun/star/wizards/letter/letter.component35
-rw-r--r--wizards/com/sun/star/wizards/letter/makefile.mk73
-rw-r--r--wizards/com/sun/star/wizards/makefile.mk150
-rw-r--r--wizards/com/sun/star/wizards/query/CallQueryWizard.java215
-rw-r--r--wizards/com/sun/star/wizards/query/Finalizer.java195
-rw-r--r--wizards/com/sun/star/wizards/query/MANIFEST.MF2
-rw-r--r--wizards/com/sun/star/wizards/query/QuerySummary.java254
-rw-r--r--wizards/com/sun/star/wizards/query/QueryWizard.java557
-rw-r--r--wizards/com/sun/star/wizards/query/makefile.mk69
-rw-r--r--wizards/com/sun/star/wizards/query/query.component35
-rw-r--r--wizards/com/sun/star/wizards/report/CallReportWizard.java263
-rw-r--r--wizards/com/sun/star/wizards/report/DBColumn.java482
-rw-r--r--wizards/com/sun/star/wizards/report/Dataimport.java222
-rw-r--r--wizards/com/sun/star/wizards/report/GroupFieldHandler.java196
-rwxr-xr-xwizards/com/sun/star/wizards/report/IReportBuilderLayouter.java119
-rwxr-xr-xwizards/com/sun/star/wizards/report/IReportDefinitionReadAccess.java61
-rw-r--r--wizards/com/sun/star/wizards/report/IReportDocument.java268
-rw-r--r--wizards/com/sun/star/wizards/report/MANIFEST.MF2
-rw-r--r--wizards/com/sun/star/wizards/report/RecordTable.java99
-rw-r--r--wizards/com/sun/star/wizards/report/ReportFinalizer.java293
-rw-r--r--wizards/com/sun/star/wizards/report/ReportImplementationHelper.java68
-rw-r--r--wizards/com/sun/star/wizards/report/ReportLayouter.java341
-rw-r--r--wizards/com/sun/star/wizards/report/ReportTextDocument.java786
-rw-r--r--wizards/com/sun/star/wizards/report/ReportTextImplementation.java734
-rw-r--r--wizards/com/sun/star/wizards/report/ReportWizard.java761
-rw-r--r--wizards/com/sun/star/wizards/report/delzip0
-rw-r--r--wizards/com/sun/star/wizards/report/makefile.mk76
-rw-r--r--wizards/com/sun/star/wizards/report/report.component35
-rw-r--r--wizards/com/sun/star/wizards/reportbuilder/Manifest.mf2
-rw-r--r--wizards/com/sun/star/wizards/reportbuilder/ReportBuilderImplementation.java748
-rw-r--r--wizards/com/sun/star/wizards/reportbuilder/layout/ColumnarSingleColumn.java105
-rw-r--r--wizards/com/sun/star/wizards/reportbuilder/layout/ColumnarThreeColumns.java62
-rw-r--r--wizards/com/sun/star/wizards/reportbuilder/layout/ColumnarTwoColumns.java137
-rw-r--r--wizards/com/sun/star/wizards/reportbuilder/layout/DesignTemplate.java333
-rw-r--r--wizards/com/sun/star/wizards/reportbuilder/layout/InBlocksLabelsAbove.java166
-rw-r--r--wizards/com/sun/star/wizards/reportbuilder/layout/InBlocksLabelsLeft.java133
-rw-r--r--wizards/com/sun/star/wizards/reportbuilder/layout/LayoutConstants.java52
-rw-r--r--wizards/com/sun/star/wizards/reportbuilder/layout/ReportBuilderLayouter.java1693
-rw-r--r--wizards/com/sun/star/wizards/reportbuilder/layout/SectionEmptyObject.java55
-rw-r--r--wizards/com/sun/star/wizards/reportbuilder/layout/SectionLabel.java74
-rw-r--r--wizards/com/sun/star/wizards/reportbuilder/layout/SectionObject.java86
-rw-r--r--wizards/com/sun/star/wizards/reportbuilder/layout/SectionTextField.java67
-rw-r--r--wizards/com/sun/star/wizards/reportbuilder/layout/Tabular.java154
-rw-r--r--wizards/com/sun/star/wizards/reportbuilder/layout/makefile.mk71
-rw-r--r--wizards/com/sun/star/wizards/reportbuilder/makefile.mk55
-rw-r--r--wizards/com/sun/star/wizards/table/CGCategory.java88
-rw-r--r--wizards/com/sun/star/wizards/table/CGTable.java95
-rw-r--r--wizards/com/sun/star/wizards/table/CallTableWizard.java213
-rw-r--r--wizards/com/sun/star/wizards/table/FieldDescription.java176
-rw-r--r--wizards/com/sun/star/wizards/table/FieldFormatter.java433
-rw-r--r--wizards/com/sun/star/wizards/table/Finalizer.java364
-rw-r--r--wizards/com/sun/star/wizards/table/MANIFEST.MF2
-rw-r--r--wizards/com/sun/star/wizards/table/PrimaryKeyHandler.java460
-rw-r--r--wizards/com/sun/star/wizards/table/ScenarioSelector.java385
-rw-r--r--wizards/com/sun/star/wizards/table/TableWizard.java438
-rw-r--r--wizards/com/sun/star/wizards/table/makefile.mk73
-rw-r--r--wizards/com/sun/star/wizards/table/table.component35
-rw-r--r--wizards/com/sun/star/wizards/text/TextDocument.java483
-rw-r--r--wizards/com/sun/star/wizards/text/TextFieldHandler.java348
-rw-r--r--wizards/com/sun/star/wizards/text/TextFrameHandler.java51
-rw-r--r--wizards/com/sun/star/wizards/text/TextSectionHandler.java271
-rw-r--r--wizards/com/sun/star/wizards/text/TextStyleHandler.java114
-rw-r--r--wizards/com/sun/star/wizards/text/TextTableHandler.java253
-rw-r--r--wizards/com/sun/star/wizards/text/ViewHandler.java115
-rw-r--r--wizards/com/sun/star/wizards/ui/AggregateComponent.java610
-rw-r--r--wizards/com/sun/star/wizards/ui/ButtonList.java907
-rw-r--r--wizards/com/sun/star/wizards/ui/CommandFieldSelection.java474
-rw-r--r--wizards/com/sun/star/wizards/ui/ControlScroller.java510
-rw-r--r--wizards/com/sun/star/wizards/ui/DBLimitedFieldSelection.java158
-rw-r--r--wizards/com/sun/star/wizards/ui/DocumentPreview.java186
-rw-r--r--wizards/com/sun/star/wizards/ui/FieldSelection.java697
-rw-r--r--wizards/com/sun/star/wizards/ui/FilterComponent.java954
-rw-r--r--wizards/com/sun/star/wizards/ui/ImageList.java1134
-rwxr-xr-xwizards/com/sun/star/wizards/ui/PathSelection.java188
-rw-r--r--wizards/com/sun/star/wizards/ui/PeerConfig.java261
-rw-r--r--wizards/com/sun/star/wizards/ui/SortingComponent.java384
-rw-r--r--wizards/com/sun/star/wizards/ui/TitlesComponent.java249
-rw-r--r--wizards/com/sun/star/wizards/ui/UIConsts.java83
-rw-r--r--wizards/com/sun/star/wizards/ui/UnoDialog.java1148
-rw-r--r--wizards/com/sun/star/wizards/ui/UnoDialog2.java384
-rw-r--r--wizards/com/sun/star/wizards/ui/WizardDialog.java811
-rw-r--r--wizards/com/sun/star/wizards/ui/XCommandSelectionListener.java43
-rw-r--r--wizards/com/sun/star/wizards/ui/XCompletion.java39
-rw-r--r--wizards/com/sun/star/wizards/ui/XFieldSelectionListener.java53
-rwxr-xr-xwizards/com/sun/star/wizards/ui/XPathSelectionListener.java34
-rw-r--r--wizards/com/sun/star/wizards/ui/event/AbstractListener.java133
-rw-r--r--wizards/com/sun/star/wizards/ui/event/CommonListener.java167
-rw-r--r--wizards/com/sun/star/wizards/ui/event/DataAware.java365
-rw-r--r--wizards/com/sun/star/wizards/ui/event/DataAwareFields.java507
-rw-r--r--wizards/com/sun/star/wizards/ui/event/EventNames.java52
-rw-r--r--wizards/com/sun/star/wizards/ui/event/ListModelBinder.java209
-rw-r--r--wizards/com/sun/star/wizards/ui/event/MethodInvocation.java108
-rw-r--r--wizards/com/sun/star/wizards/ui/event/RadioDataAware.java101
-rw-r--r--wizards/com/sun/star/wizards/ui/event/SimpleDataAware.java84
-rw-r--r--wizards/com/sun/star/wizards/ui/event/Task.java204
-rw-r--r--wizards/com/sun/star/wizards/ui/event/TaskEvent.java65
-rw-r--r--wizards/com/sun/star/wizards/ui/event/TaskListener.java51
-rw-r--r--wizards/com/sun/star/wizards/ui/event/UnoDataAware.java265
-rw-r--r--wizards/com/sun/star/wizards/web/AbstractErrorHandler.java238
-rw-r--r--wizards/com/sun/star/wizards/web/BackgroundsDialog.java290
-rw-r--r--wizards/com/sun/star/wizards/web/CallWizard.java295
-rw-r--r--wizards/com/sun/star/wizards/web/ErrorHandler.java117
-rw-r--r--wizards/com/sun/star/wizards/web/ExtensionVerifier.java63
-rw-r--r--wizards/com/sun/star/wizards/web/FTPDialog.java752
-rw-r--r--wizards/com/sun/star/wizards/web/FTPDialogResources.java98
-rw-r--r--wizards/com/sun/star/wizards/web/IconsDialog.java208
-rw-r--r--wizards/com/sun/star/wizards/web/ImageListDialog.java283
-rw-r--r--wizards/com/sun/star/wizards/web/LogTaskListener.java103
-rw-r--r--wizards/com/sun/star/wizards/web/MANIFEST.MF2
-rw-r--r--wizards/com/sun/star/wizards/web/Process.java844
-rw-r--r--wizards/com/sun/star/wizards/web/ProcessErrorHandler.java92
-rw-r--r--wizards/com/sun/star/wizards/web/ProcessErrors.java48
-rw-r--r--wizards/com/sun/star/wizards/web/ProcessStatusRenderer.java68
-rw-r--r--wizards/com/sun/star/wizards/web/StatusDialog.java305
-rw-r--r--wizards/com/sun/star/wizards/web/StylePreview.java154
-rw-r--r--wizards/com/sun/star/wizards/web/TOCPreview.java120
-rw-r--r--wizards/com/sun/star/wizards/web/WWD_Events.java1305
-rw-r--r--wizards/com/sun/star/wizards/web/WWD_General.java393
-rw-r--r--wizards/com/sun/star/wizards/web/WWD_Startup.java984
-rw-r--r--wizards/com/sun/star/wizards/web/WWHID.java186
-rw-r--r--wizards/com/sun/star/wizards/web/WebWizard.java72
-rw-r--r--wizards/com/sun/star/wizards/web/WebWizardConst.java73
-rw-r--r--wizards/com/sun/star/wizards/web/WebWizardDialog.java931
-rw-r--r--wizards/com/sun/star/wizards/web/WebWizardDialogResources.java349
-rw-r--r--wizards/com/sun/star/wizards/web/data/CGArgument.java35
-rw-r--r--wizards/com/sun/star/wizards/web/data/CGContent.java68
-rw-r--r--wizards/com/sun/star/wizards/web/data/CGDesign.java91
-rw-r--r--wizards/com/sun/star/wizards/web/data/CGDocument.java453
-rw-r--r--wizards/com/sun/star/wizards/web/data/CGExporter.java57
-rw-r--r--wizards/com/sun/star/wizards/web/data/CGFilter.java35
-rw-r--r--wizards/com/sun/star/wizards/web/data/CGGeneralInfo.java92
-rw-r--r--wizards/com/sun/star/wizards/web/data/CGIconSet.java35
-rw-r--r--wizards/com/sun/star/wizards/web/data/CGImage.java45
-rw-r--r--wizards/com/sun/star/wizards/web/data/CGLayout.java87
-rw-r--r--wizards/com/sun/star/wizards/web/data/CGPublish.java94
-rw-r--r--wizards/com/sun/star/wizards/web/data/CGSession.java110
-rw-r--r--wizards/com/sun/star/wizards/web/data/CGSessionName.java38
-rw-r--r--wizards/com/sun/star/wizards/web/data/CGSettings.java212
-rw-r--r--wizards/com/sun/star/wizards/web/data/CGStyle.java54
-rw-r--r--wizards/com/sun/star/wizards/web/data/ConfigSetItem.java55
-rw-r--r--wizards/com/sun/star/wizards/web/data/TypeDetection.java79
-rw-r--r--wizards/com/sun/star/wizards/web/data/makefile.mk74
-rw-r--r--wizards/com/sun/star/wizards/web/export/AbstractExporter.java192
-rw-r--r--wizards/com/sun/star/wizards/web/export/ConfiguredExporter.java98
-rw-r--r--wizards/com/sun/star/wizards/web/export/CopyExporter.java88
-rw-r--r--wizards/com/sun/star/wizards/web/export/Exporter.java61
-rw-r--r--wizards/com/sun/star/wizards/web/export/FilterExporter.java89
-rw-r--r--wizards/com/sun/star/wizards/web/export/ImpressHTMLExporter.java105
-rw-r--r--wizards/com/sun/star/wizards/web/export/makefile.mk63
-rw-r--r--wizards/com/sun/star/wizards/web/makefile.mk93
-rw-r--r--wizards/com/sun/star/wizards/web/status/ErrorLog.java69
-rw-r--r--wizards/com/sun/star/wizards/web/status/ErrorReporter.java46
-rw-r--r--wizards/com/sun/star/wizards/web/status/LogTaskListener.java87
-rw-r--r--wizards/com/sun/star/wizards/web/status/Task.java196
-rw-r--r--wizards/com/sun/star/wizards/web/status/TaskEvent.java71
-rw-r--r--wizards/com/sun/star/wizards/web/status/TaskListener.java58
-rw-r--r--wizards/com/sun/star/wizards/web/web.component35
-rw-r--r--wizards/prj/build.lst28
-rw-r--r--wizards/prj/d.lst23
-rw-r--r--wizards/source/config/delzip0
-rw-r--r--wizards/source/config/dialog.xlc5
-rw-r--r--wizards/source/config/makefile.mk52
-rw-r--r--wizards/source/config/script.xlc5
-rw-r--r--wizards/source/configshare/delzip0
-rw-r--r--wizards/source/configshare/dialog.xlc13
-rw-r--r--wizards/source/configshare/makefile.mk52
-rw-r--r--wizards/source/configshare/script.xlc13
-rw-r--r--wizards/source/depot/CommonLang.xba351
-rw-r--r--wizards/source/depot/Currency.xba178
-rw-r--r--wizards/source/depot/Depot.xba500
-rw-r--r--wizards/source/depot/Dialog2.xdl36
-rw-r--r--wizards/source/depot/Dialog3.xdl45
-rw-r--r--wizards/source/depot/Dialog4.xdl17
-rw-r--r--wizards/source/depot/Internet.xba339
-rw-r--r--wizards/source/depot/Lang_de.xba158
-rw-r--r--wizards/source/depot/Lang_en.xba158
-rw-r--r--wizards/source/depot/Lang_es.xba158
-rw-r--r--wizards/source/depot/Lang_fr.xba158
-rw-r--r--wizards/source/depot/Lang_it.xba158
-rw-r--r--wizards/source/depot/Lang_ja.xba158
-rw-r--r--wizards/source/depot/Lang_ko.xba158
-rw-r--r--wizards/source/depot/Lang_sv.xba157
-rw-r--r--wizards/source/depot/Lang_tw.xba158
-rw-r--r--wizards/source/depot/Lang_zh.xba158
-rw-r--r--wizards/source/depot/delzip1
-rw-r--r--wizards/source/depot/dialog.xlb7
-rw-r--r--wizards/source/depot/makefile.mk53
-rw-r--r--wizards/source/depot/script.xlb19
-rw-r--r--wizards/source/depot/tools.xba200
-rw-r--r--wizards/source/euro/AutoPilotRun.xba409
-rw-r--r--wizards/source/euro/Common.xba272
-rw-r--r--wizards/source/euro/ConvertRun.xba317
-rw-r--r--wizards/source/euro/DlgConvert.xdl77
-rw-r--r--wizards/source/euro/DlgPassword.xdl15
-rw-r--r--wizards/source/euro/Hard.xba229
-rw-r--r--wizards/source/euro/Init.xba604
-rw-r--r--wizards/source/euro/Protect.xba175
-rw-r--r--wizards/source/euro/Soft.xba239
-rw-r--r--wizards/source/euro/Writer.xba72
-rw-r--r--wizards/source/euro/delzip0
-rw-r--r--wizards/source/euro/dialog.xlb6
-rw-r--r--wizards/source/euro/euro.src476
-rw-r--r--wizards/source/euro/makefile.mk53
-rw-r--r--wizards/source/euro/script.xlb12
-rw-r--r--wizards/source/formwizard/DBMeta.xba330
-rw-r--r--wizards/source/formwizard/DlgFormDB.xdl102
-rw-r--r--wizards/source/formwizard/FormWizard.xba427
-rw-r--r--wizards/source/formwizard/Language.xba285
-rw-r--r--wizards/source/formwizard/Layouter.xba380
-rw-r--r--wizards/source/formwizard/dbwizres.src3518
-rw-r--r--wizards/source/formwizard/delzip0
-rw-r--r--wizards/source/formwizard/develop.xba533
-rw-r--r--wizards/source/formwizard/dialog.xlb5
-rw-r--r--wizards/source/formwizard/makefile.mk53
-rw-r--r--wizards/source/formwizard/script.xlb10
-rw-r--r--wizards/source/formwizard/tools.xba349
-rw-r--r--wizards/source/gimmicks/AutoText.xba97
-rw-r--r--wizards/source/gimmicks/ChangeAllChars.xba75
-rw-r--r--wizards/source/gimmicks/GetTexts.xba522
-rw-r--r--wizards/source/gimmicks/ReadDir.xba305
-rw-r--r--wizards/source/gimmicks/ReadFolderDlg.xdl22
-rw-r--r--wizards/source/gimmicks/UserfieldDlg.xdl49
-rw-r--r--wizards/source/gimmicks/Userfields.xba219
-rw-r--r--wizards/source/gimmicks/delzip0
-rw-r--r--wizards/source/gimmicks/dialog.xlb6
-rw-r--r--wizards/source/gimmicks/makefile.mk46
-rw-r--r--wizards/source/gimmicks/readdirs.dlgbin0 -> 3180 bytes-rw-r--r--wizards/source/gimmicks/script.xlb9
-rw-r--r--wizards/source/imagelists/imagelists.src215
-rw-r--r--wizards/source/imagelists/makefile.mk50
-rw-r--r--wizards/source/importwizard/API.xba208
-rw-r--r--wizards/source/importwizard/DialogModul.xba657
-rw-r--r--wizards/source/importwizard/FilesModul.xba824
-rw-r--r--wizards/source/importwizard/ImportDialog.xdl96
-rw-r--r--wizards/source/importwizard/Language.xba157
-rw-r--r--wizards/source/importwizard/Main.xba290
-rw-r--r--wizards/source/importwizard/delzip0
-rw-r--r--wizards/source/importwizard/dialog.xlb5
-rw-r--r--wizards/source/importwizard/importwi.src674
-rw-r--r--wizards/source/importwizard/makefile.mk53
-rw-r--r--wizards/source/importwizard/script.xlb9
-rw-r--r--wizards/source/launcher/DicOOo.xba59
-rw-r--r--wizards/source/launcher/delzip0
-rw-r--r--wizards/source/launcher/dialog.xlb3
-rw-r--r--wizards/source/launcher/makefile.mk46
-rw-r--r--wizards/source/launcher/script.xlb5
-rw-r--r--wizards/source/schedule/BankHoliday.xba177
-rw-r--r--wizards/source/schedule/CalendarMain.xba302
-rw-r--r--wizards/source/schedule/CreateTable.xba133
-rw-r--r--wizards/source/schedule/DlgCalendar.xdl64
-rw-r--r--wizards/source/schedule/DlgControl.xba148
-rw-r--r--wizards/source/schedule/GermanHolidays.xba132
-rw-r--r--wizards/source/schedule/Language.xba95
-rw-r--r--wizards/source/schedule/LocalHolidays.xba642
-rw-r--r--wizards/source/schedule/OwnEvents.xba217
-rw-r--r--wizards/source/schedule/delzip0
-rw-r--r--wizards/source/schedule/dialog.xlb5
-rw-r--r--wizards/source/schedule/makefile.mk53
-rw-r--r--wizards/source/schedule/schedule.src357
-rw-r--r--wizards/source/schedule/script.xlb12
-rw-r--r--wizards/source/standard/Module1.xba7
-rw-r--r--wizards/source/standard/delzip0
-rw-r--r--wizards/source/standard/dialog.xlb3
-rw-r--r--wizards/source/standard/makefile.mk45
-rw-r--r--wizards/source/standard/script.xlb5
-rw-r--r--wizards/source/template/Autotext.xba173
-rw-r--r--wizards/source/template/Correspondence.xba286
-rw-r--r--wizards/source/template/DialogStyles.xdl15
-rw-r--r--wizards/source/template/ModuleAgenda.xba203
-rw-r--r--wizards/source/template/Samples.xba185
-rw-r--r--wizards/source/template/TemplateDialog.xdl29
-rw-r--r--wizards/source/template/delzip0
-rw-r--r--wizards/source/template/dialog.xlb7
-rw-r--r--wizards/source/template/makefile.mk54
-rw-r--r--wizards/source/template/script.xlb8
-rw-r--r--wizards/source/template/template.src358
-rw-r--r--wizards/source/tools/Debug.xba236
-rw-r--r--wizards/source/tools/DlgOverwriteAll.xdl17
-rw-r--r--wizards/source/tools/Listbox.xba353
-rw-r--r--wizards/source/tools/Misc.xba817
-rw-r--r--wizards/source/tools/ModuleControls.xba370
-rw-r--r--wizards/source/tools/Strings.xba452
-rw-r--r--wizards/source/tools/UCB.xba294
-rw-r--r--wizards/source/tools/delzip0
-rw-r--r--wizards/source/tools/dialog.xlb5
-rw-r--r--wizards/source/tools/makefile.mk45
-rw-r--r--wizards/source/tools/script.xlb10
-rw-r--r--wizards/source/tutorials/Functions.xba368
-rw-r--r--wizards/source/tutorials/RoadMap.xba117
-rw-r--r--wizards/source/tutorials/ShowInfoDialog.xba305
-rw-r--r--wizards/source/tutorials/TutorialClose.xba15
-rw-r--r--wizards/source/tutorials/TutorialCloseDialog.xdl14
-rw-r--r--wizards/source/tutorials/TutorialCreator.xba10
-rw-r--r--wizards/source/tutorials/TutorialOpen.xba96
-rw-r--r--wizards/source/tutorials/TutorialOpenDialog.xdl21
-rw-r--r--wizards/source/tutorials/TutorialsDialog.xdl26
-rw-r--r--wizards/source/tutorials/delzip0
-rw-r--r--wizards/source/tutorials/dialog.xlb7
-rw-r--r--wizards/source/tutorials/makefile.mk45
-rw-r--r--wizards/source/tutorials/script.xlb10
-rw-r--r--wizards/source/webwizard/Bullets.xba117
-rw-r--r--wizards/source/webwizard/Common.xba145
-rw-r--r--wizards/source/webwizard/HtmlAutoPilotBasic.xba436
-rw-r--r--wizards/source/webwizard/Language.xba84
-rw-r--r--wizards/source/webwizard/WebWzrd.xdl28
-rw-r--r--wizards/source/webwizard/delzip0
-rw-r--r--wizards/source/webwizard/dialog.xlb5
-rw-r--r--wizards/source/webwizard/makefile.mk53
-rw-r--r--wizards/source/webwizard/script.xlb8
-rw-r--r--wizards/source/webwizard/webwizar.src167
-rw-r--r--wizards/util/helpids.h859
-rw-r--r--wizards/util/hidother.src1499
-rw-r--r--wizards/util/makefile.mk42
-rw-r--r--wizards/util/soffice.lnk248
-rw-r--r--wizards/util/target.pmk41
-rw-r--r--writerfilter/documentation/AddingTable.cxx56
-rw-r--r--writerfilter/documentation/KnownIssues.txt9
-rw-r--r--writerfilter/documentation/TODO13
-rw-r--r--writerfilter/documentation/doxygen/Doxyfile1237
-rw-r--r--writerfilter/documentation/doxygen/images/doctok.pngbin0 -> 7291 bytes-rw-r--r--writerfilter/documentation/doxygen/images/ooxmlimportchain.pngbin0 -> 22605 bytes-rw-r--r--writerfilter/documentation/sprms.txt10
-rw-r--r--writerfilter/documentation/tablesInDoc.txt135
-rw-r--r--writerfilter/inc/WriterFilterDllApi.hxx40
-rw-r--r--writerfilter/inc/dmapper/DomainMapper.hxx154
-rw-r--r--writerfilter/inc/doctok/WW8Document.hxx448
-rw-r--r--writerfilter/inc/ooxml/OOXMLDocument.hxx279
-rw-r--r--writerfilter/inc/resourcemodel/OutputWithDepth.hxx130
-rw-r--r--writerfilter/inc/resourcemodel/Protocol.hxx102
-rw-r--r--writerfilter/inc/resourcemodel/QNameToString.hxx88
-rw-r--r--writerfilter/inc/resourcemodel/ResourceModelHelper.hxx40
-rw-r--r--writerfilter/inc/resourcemodel/SubSequence.hxx351
-rw-r--r--writerfilter/inc/resourcemodel/TableData.hxx426
-rw-r--r--writerfilter/inc/resourcemodel/TableManager.hxx1099
-rw-r--r--writerfilter/inc/resourcemodel/TagLogger.hxx159
-rw-r--r--writerfilter/inc/resourcemodel/WW8ResourceModel.hxx401
-rw-r--r--writerfilter/inc/resourcemodel/exceptions.hxx60
-rw-r--r--writerfilter/inc/resourcemodel/util.hxx50
-rw-r--r--writerfilter/inc/rtftok/RTFInputSource.hxx42
-rw-r--r--writerfilter/inc/rtftok/RTFParseException.hxx42
-rw-r--r--writerfilter/inc/rtftok/RTFScanner.hxx65
-rw-r--r--writerfilter/inc/rtftok/RTFScannerHandler.hxx50
-rw-r--r--writerfilter/inc/writerfilter.mk29
-rw-r--r--writerfilter/prj/build.lst11
-rw-r--r--writerfilter/prj/d.lst8
-rw-r--r--writerfilter/qa/complex/ooxml/LoadDocuments.java51
-rw-r--r--writerfilter/qa/complex/ooxml/makefile.mk90
-rw-r--r--writerfilter/qa/cppunittests/doctok/doctok.job1
-rw-r--r--writerfilter/qa/cppunittests/doctok/export.map7
-rw-r--r--writerfilter/qa/cppunittests/doctok/makefile.mk73
-rw-r--r--writerfilter/qa/cppunittests/doctok/testdoctok.cxx228
-rw-r--r--writerfilter/qa/cppunittests/odiapi/ExternalViewLogger.cxx203
-rw-r--r--writerfilter/qa/cppunittests/odiapi/ExternalViewLogger.hxx90
-rw-r--r--writerfilter/qa/cppunittests/odiapi/FileLoggerImpl.cxx80
-rw-r--r--writerfilter/qa/cppunittests/odiapi/FileLoggerImpl.hxx57
-rw-r--r--writerfilter/qa/cppunittests/odiapi/export.exp1
-rw-r--r--writerfilter/qa/cppunittests/odiapi/export.map34
-rw-r--r--writerfilter/qa/cppunittests/odiapi/makefile.mk76
-rw-r--r--writerfilter/qa/cppunittests/odiapi/testCore.cxx172
-rw-r--r--writerfilter/qa/cppunittests/odiapi/testProperty.cxx682
-rw-r--r--writerfilter/qa/cppunittests/qname/export.map34
-rw-r--r--writerfilter/qa/cppunittests/qname/makefile.mk78
-rw-r--r--writerfilter/qa/cppunittests/qname/testQName.cxx7535
-rw-r--r--writerfilter/qa/cppunittests/sl/export.map34
-rw-r--r--writerfilter/qa/cppunittests/sl/helloworld.odt.flat.xml12
-rw-r--r--writerfilter/qa/cppunittests/sl/makefile.mk75
-rw-r--r--writerfilter/qa/cppunittests/sl/testOD_SL.cxx118
-rw-r--r--writerfilter/qa/cppunittests/xxml/export.map34
-rw-r--r--writerfilter/qa/cppunittests/xxml/makefile.mk77
-rw-r--r--writerfilter/qa/cppunittests/xxml/test.xml2
-rw-r--r--writerfilter/qa/cppunittests/xxml/testXXML.cxx184
-rw-r--r--writerfilter/qa/documents/Bookmark1.docbin0 -> 24576 bytes-rw-r--r--writerfilter/qa/documents/Bookmark1.docxbin0 -> 10729 bytes-rw-r--r--writerfilter/qa/documents/CellAlignment.docbin0 -> 26624 bytes-rw-r--r--writerfilter/qa/documents/Footnote.docbin0 -> 24064 bytes-rw-r--r--writerfilter/qa/documents/Footnote.docxbin0 -> 11742 bytes-rw-r--r--writerfilter/qa/documents/HeaderFooter.docbin0 -> 23040 bytes-rw-r--r--writerfilter/qa/documents/HeaderFooter.docxbin0 -> 12913 bytes-rw-r--r--writerfilter/qa/documents/IndentedTable.docbin0 -> 27136 bytes-rw-r--r--writerfilter/qa/documents/IndentedTable1.docxbin0 -> 10667 bytes-rw-r--r--writerfilter/qa/documents/MergedTable.docbin0 -> 24576 bytes-rw-r--r--writerfilter/qa/documents/MergedTable.docxbin0 -> 10530 bytes-rw-r--r--writerfilter/qa/documents/MergedTable_3_3.docbin0 -> 24576 bytes-rw-r--r--writerfilter/qa/documents/MergedTable_3_3.docxbin0 -> 10431 bytes-rw-r--r--writerfilter/qa/documents/MultiMergedTable.docxbin0 -> 10641 bytes-rw-r--r--writerfilter/qa/documents/MultiWrapping1.docxbin0 -> 21123 bytes-rw-r--r--writerfilter/qa/documents/Paragraph with footnote.docbin0 -> 24064 bytes-rw-r--r--writerfilter/qa/documents/Paragraph with footnote.docxbin0 -> 13217 bytes-rw-r--r--writerfilter/qa/documents/Picture1.docxbin0 -> 82050 bytes-rw-r--r--writerfilter/qa/documents/RedlineTest.docxbin0 -> 10322 bytes-rw-r--r--writerfilter/qa/documents/RowHeight.docbin0 -> 27648 bytes-rw-r--r--writerfilter/qa/documents/RowHeight.docxbin0 -> 10504 bytes-rw-r--r--writerfilter/qa/documents/StandardFontAlbertus.docbin0 -> 24064 bytes-rw-r--r--writerfilter/qa/documents/Table5CellBorders.docbin0 -> 24064 bytes-rw-r--r--writerfilter/qa/documents/Table5CellBorders.docxbin0 -> 10420 bytes-rw-r--r--writerfilter/qa/documents/TableDifferentColumns.docbin0 -> 24064 bytes-rw-r--r--writerfilter/qa/documents/TableDifferentColumns.docxbin0 -> 10440 bytes-rw-r--r--writerfilter/qa/documents/TablePreferredWidth.docbin0 -> 24576 bytes-rw-r--r--writerfilter/qa/documents/TablePreferredWidth.docxbin0 -> 10393 bytes-rw-r--r--writerfilter/qa/documents/TableRowProperties.docbin0 -> 25600 bytes-rw-r--r--writerfilter/qa/documents/TableRowProperties.docxbin0 -> 10622 bytes-rw-r--r--writerfilter/qa/documents/VertAlign1.docbin0 -> 24576 bytes-rw-r--r--writerfilter/qa/documents/WordOLE.docxbin0 -> 17324 bytes-rw-r--r--writerfilter/qa/documents/align1.docbin0 -> 24576 bytes-rw-r--r--writerfilter/qa/documents/bookmark2.docbin0 -> 24576 bytes-rw-r--r--writerfilter/qa/documents/docx/numbering/num-1.docxbin0 -> 11288 bytes-rw-r--r--writerfilter/qa/documents/docx/pictures/Word DocumentOffice 2007 Format Sample6.docxbin0 -> 302738 bytes-rw-r--r--writerfilter/qa/documents/docx/pictures/i97645 New example.docxbin0 -> 102969 bytes-rw-r--r--writerfilter/qa/documents/docx/pictures/test-image.docxbin0 -> 24026 bytes-rw-r--r--writerfilter/qa/documents/docx/pictures/test-image1.docxbin0 -> 61174 bytes-rw-r--r--writerfilter/qa/documents/docx/pictures/test.docxbin0 -> 22007 bytes-rw-r--r--writerfilter/qa/documents/docx/redlines/test-review-brk.docxbin0 -> 10621 bytes-rw-r--r--writerfilter/qa/documents/docx/redlines/test-review-para.docxbin0 -> 10682 bytes-rw-r--r--writerfilter/qa/documents/docx/redlines/test-review-stack.docxbin0 -> 10598 bytes-rw-r--r--writerfilter/qa/documents/docx/tables/Table in B2.docxbin0 -> 10353 bytes-rw-r--r--writerfilter/qa/documents/docx/tables/nested-tables.docxbin0 -> 11079 bytes-rw-r--r--writerfilter/qa/documents/docx/tables/nested-tables2.docxbin0 -> 10521 bytes-rw-r--r--writerfilter/qa/documents/docx/tables/nested-tables3.docxbin0 -> 11482 bytes-rw-r--r--writerfilter/qa/documents/docx/tables/nested-tables4.docxbin0 -> 13956 bytes-rw-r--r--writerfilter/qa/documents/docx/tables/nested-tables5.docxbin0 -> 10761 bytes-rw-r--r--writerfilter/qa/documents/docx/tables/parentinvguid.docxbin0 -> 139481 bytes-rw-r--r--writerfilter/qa/documents/docx/tables/table in A1.docxbin0 -> 10340 bytes-rw-r--r--writerfilter/qa/documents/docx/tables/table-styles.docxbin0 -> 13859 bytes-rw-r--r--writerfilter/qa/documents/docx/tables/test-grid.docxbin0 -> 10978 bytes-rw-r--r--writerfilter/qa/documents/docx/tables/test-paras.docxbin0 -> 13586 bytes-rw-r--r--writerfilter/qa/documents/docx/tables/test-simple.docxbin0 -> 10527 bytes-rw-r--r--writerfilter/qa/documents/docx/tables/two-tables.docxbin0 -> 10619 bytes-rw-r--r--writerfilter/qa/documents/docx/tables/updatejpegprocessing.docxbin0 -> 24439 bytes-rw-r--r--writerfilter/qa/documents/docx/tables/~$sted-tables3.docxbin0 -> 162 bytes-rw-r--r--writerfilter/qa/documents/docx/test-page-format.docxbin0 -> 20846 bytes-rwxr-xr-xwriterfilter/qa/documents/fields.docbin0 -> 34816 bytes-rwxr-xr-xwriterfilter/qa/documents/fields.docx1
-rw-r--r--writerfilter/qa/documents/multimerge2.docx2
-rw-r--r--writerfilter/qa/documents/runProperties.docbin0 -> 25600 bytes-rwxr-xr-xwriterfilter/qa/documents/runProperties.docxbin0 -> 11239 bytes-rw-r--r--writerfilter/qa/documents/table_4_4.docbin0 -> 25600 bytes-rw-r--r--writerfilter/qa/documents/table_4_4.docxbin0 -> 11131 bytes-rw-r--r--writerfilter/qa/documents/table_style.docxbin0 -> 12649 bytes-rw-r--r--writerfilter/source/dmapper/BorderHandler.cxx201
-rw-r--r--writerfilter/source/dmapper/BorderHandler.hxx81
-rw-r--r--writerfilter/source/dmapper/CellColorHandler.cxx235
-rw-r--r--writerfilter/source/dmapper/CellColorHandler.hxx64
-rw-r--r--writerfilter/source/dmapper/CellMarginHandler.cxx120
-rw-r--r--writerfilter/source/dmapper/CellMarginHandler.hxx69
-rw-r--r--writerfilter/source/dmapper/ConversionHelper.cxx691
-rw-r--r--writerfilter/source/dmapper/ConversionHelper.hxx64
-rw-r--r--writerfilter/source/dmapper/DomainMapper.cxx4980
-rw-r--r--writerfilter/source/dmapper/DomainMapperTableHandler.cxx842
-rw-r--r--writerfilter/source/dmapper/DomainMapperTableHandler.hxx103
-rw-r--r--writerfilter/source/dmapper/DomainMapperTableManager.cxx527
-rw-r--r--writerfilter/source/dmapper/DomainMapperTableManager.hxx123
-rw-r--r--writerfilter/source/dmapper/DomainMapper_Impl.cxx3771
-rw-r--r--writerfilter/source/dmapper/DomainMapper_Impl.hxx603
-rw-r--r--writerfilter/source/dmapper/FFData.xml58
-rw-r--r--writerfilter/source/dmapper/FFDataHandler.cxx483
-rw-r--r--writerfilter/source/dmapper/FFDataHandler.hxx161
-rw-r--r--writerfilter/source/dmapper/FieldTypes.hxx299
-rw-r--r--writerfilter/source/dmapper/FontTable.cxx676
-rw-r--r--writerfilter/source/dmapper/FontTable.hxx109
-rw-r--r--writerfilter/source/dmapper/FormControlHelper.cxx309
-rw-r--r--writerfilter/source/dmapper/FormControlHelper.hxx64
-rw-r--r--writerfilter/source/dmapper/GraphicHelpers.cxx223
-rw-r--r--writerfilter/source/dmapper/GraphicHelpers.hxx48
-rw-r--r--writerfilter/source/dmapper/GraphicImport.cxx1837
-rw-r--r--writerfilter/source/dmapper/GraphicImport.hxx128
-rw-r--r--writerfilter/source/dmapper/MeasureHandler.cxx132
-rw-r--r--writerfilter/source/dmapper/MeasureHandler.hxx66
-rw-r--r--writerfilter/source/dmapper/ModelEventListener.cxx96
-rw-r--r--writerfilter/source/dmapper/ModelEventListener.hxx51
-rw-r--r--writerfilter/source/dmapper/NumberingManager.cxx1017
-rw-r--r--writerfilter/source/dmapper/NumberingManager.hxx226
-rw-r--r--writerfilter/source/dmapper/OLEHandler.cxx246
-rw-r--r--writerfilter/source/dmapper/OLEHandler.hxx107
-rw-r--r--writerfilter/source/dmapper/PageBordersHandler.cxx121
-rw-r--r--writerfilter/source/dmapper/PageBordersHandler.hxx57
-rw-r--r--writerfilter/source/dmapper/PropertyIds.cxx349
-rw-r--r--writerfilter/source/dmapper/PropertyIds.hxx303
-rw-r--r--writerfilter/source/dmapper/PropertyMap.cxx1241
-rw-r--r--writerfilter/source/dmapper/PropertyMap.hxx561
-rw-r--r--writerfilter/source/dmapper/PropertyMapHelper.cxx131
-rw-r--r--writerfilter/source/dmapper/PropertyMapHelper.hxx50
-rw-r--r--writerfilter/source/dmapper/SectionColumnHandler.cxx118
-rw-r--r--writerfilter/source/dmapper/SectionColumnHandler.hxx76
-rw-r--r--writerfilter/source/dmapper/SettingsTable.cxx274
-rwxr-xr-xwriterfilter/source/dmapper/SettingsTable.hxx82
-rw-r--r--writerfilter/source/dmapper/StyleSheetTable.cxx1448
-rw-r--r--writerfilter/source/dmapper/StyleSheetTable.hxx165
-rw-r--r--writerfilter/source/dmapper/TDefTableHandler.cxx323
-rw-r--r--writerfilter/source/dmapper/TDefTableHandler.hxx86
-rw-r--r--writerfilter/source/dmapper/TablePropertiesHandler.cxx245
-rw-r--r--writerfilter/source/dmapper/TablePropertiesHandler.hxx83
-rw-r--r--writerfilter/source/dmapper/TblStylePrHandler.cxx87
-rw-r--r--writerfilter/source/dmapper/TblStylePrHandler.hxx64
-rw-r--r--writerfilter/source/dmapper/ThemeTable.cxx227
-rw-r--r--writerfilter/source/dmapper/ThemeTable.hxx62
-rw-r--r--writerfilter/source/dmapper/dmapperLoggers.cxx39
-rw-r--r--writerfilter/source/dmapper/dmapperLoggers.hxx43
-rw-r--r--writerfilter/source/dmapper/genclass.xsl707
-rw-r--r--writerfilter/source/dmapper/makefile.mk76
-rw-r--r--writerfilter/source/doctok/Dff.cxx518
-rw-r--r--writerfilter/source/doctok/Dff.hxx153
-rw-r--r--writerfilter/source/doctok/DffImpl.cxx518
-rw-r--r--writerfilter/source/doctok/PLCF.hxx195
-rw-r--r--writerfilter/source/doctok/WW8Annotation.cxx37
-rw-r--r--writerfilter/source/doctok/WW8BinTable.hxx88
-rw-r--r--writerfilter/source/doctok/WW8BinTableImpl.cxx106
-rw-r--r--writerfilter/source/doctok/WW8BinTableImpl.hxx98
-rw-r--r--writerfilter/source/doctok/WW8Clx.cxx84
-rw-r--r--writerfilter/source/doctok/WW8Clx.hxx93
-rw-r--r--writerfilter/source/doctok/WW8CpAndFc.cxx130
-rw-r--r--writerfilter/source/doctok/WW8CpAndFc.hxx360
-rw-r--r--writerfilter/source/doctok/WW8DocumentImpl.cxx2366
-rw-r--r--writerfilter/source/doctok/WW8DocumentImpl.hxx848
-rw-r--r--writerfilter/source/doctok/WW8FKP.hxx133
-rw-r--r--writerfilter/source/doctok/WW8FKPImpl.cxx240
-rw-r--r--writerfilter/source/doctok/WW8FKPImpl.hxx214
-rw-r--r--writerfilter/source/doctok/WW8FontTable.cxx113
-rw-r--r--writerfilter/source/doctok/WW8LFOTable.cxx128
-rw-r--r--writerfilter/source/doctok/WW8ListTable.cxx150
-rw-r--r--writerfilter/source/doctok/WW8OutputWithDepth.cxx49
-rw-r--r--writerfilter/source/doctok/WW8OutputWithDepth.hxx53
-rw-r--r--writerfilter/source/doctok/WW8Picture.cxx208
-rw-r--r--writerfilter/source/doctok/WW8PieceTable.hxx175
-rw-r--r--writerfilter/source/doctok/WW8PieceTableImpl.cxx299
-rw-r--r--writerfilter/source/doctok/WW8PieceTableImpl.hxx75
-rw-r--r--writerfilter/source/doctok/WW8PropertySetImpl.cxx432
-rw-r--r--writerfilter/source/doctok/WW8PropertySetImpl.hxx145
-rw-r--r--writerfilter/source/doctok/WW8ResourceModelImpl.cxx500
-rw-r--r--writerfilter/source/doctok/WW8ResourceModelImpl.hxx318
-rw-r--r--writerfilter/source/doctok/WW8StreamImpl.cxx207
-rw-r--r--writerfilter/source/doctok/WW8StreamImpl.hxx65
-rw-r--r--writerfilter/source/doctok/WW8StructBase.cxx199
-rw-r--r--writerfilter/source/doctok/WW8StructBase.hxx316
-rw-r--r--writerfilter/source/doctok/WW8Sttbf.cxx168
-rw-r--r--writerfilter/source/doctok/WW8Sttbf.hxx132
-rw-r--r--writerfilter/source/doctok/WW8StyleSheet.cxx206
-rw-r--r--writerfilter/source/doctok/WW8Table.cxx204
-rw-r--r--writerfilter/source/doctok/WW8Text.cxx76
-rw-r--r--writerfilter/source/doctok/WW8inc.xsl106
-rw-r--r--writerfilter/source/doctok/WW8sprms.xsl66
-rw-r--r--writerfilter/source/doctok/WW8xmi.xsl184
-rw-r--r--writerfilter/source/doctok/XNoteHelper.hxx143
-rw-r--r--writerfilter/source/doctok/XNoteHelperImpl.hxx168
-rw-r--r--writerfilter/source/doctok/analyzer.xsl39
-rwxr-xr-xwriterfilter/source/doctok/cleanupresources5
-rw-r--r--writerfilter/source/doctok/compactxmi.xsl262
-rw-r--r--writerfilter/source/doctok/doctokLoggers.hxx42
-rw-r--r--writerfilter/source/doctok/dopbase.xml91
-rw-r--r--writerfilter/source/doctok/escher.html207
-rw-r--r--writerfilter/source/doctok/escherdoc.xsl145
-rw-r--r--writerfilter/source/doctok/genqnametostr33
-rw-r--r--writerfilter/source/doctok/makefile.mk155
-rw-r--r--writerfilter/source/doctok/qnametostr.xsl41
-rw-r--r--writerfilter/source/doctok/qnametostrfooter2
-rw-r--r--writerfilter/source/doctok/qnametostrheader36
-rwxr-xr-xwriterfilter/source/doctok/replacesprmids517
-rw-r--r--writerfilter/source/doctok/resourceidmapper.xsl125
-rw-r--r--writerfilter/source/doctok/resourceidmapperback.xsl125
-rw-r--r--writerfilter/source/doctok/resourceids.xsl205
-rw-r--r--writerfilter/source/doctok/resources.xmi63712
-rw-r--r--writerfilter/source/doctok/resources.xsl917
-rw-r--r--writerfilter/source/doctok/resourcesimpl.xsl855
-rw-r--r--writerfilter/source/doctok/resourcetools.xsl566
-rw-r--r--writerfilter/source/doctok/sprmcodetostr.xsl39
-rw-r--r--writerfilter/source/doctok/sprmids.xsl82
-rw-r--r--writerfilter/source/doctok/tidyxmi.xsl120
-rw-r--r--writerfilter/source/doctok/xmigen.el126
-rw-r--r--writerfilter/source/doctok/xmigen.xsl577
-rw-r--r--writerfilter/source/doctok/xmistat.xsl37
-rwxr-xr-xwriterfilter/source/doctok/xmitocpp34
-rw-r--r--writerfilter/source/filter/ImportFilter.cxx250
-rw-r--r--writerfilter/source/filter/WriterFilter.cxx74
-rw-r--r--writerfilter/source/filter/WriterFilter.hxx104
-rw-r--r--writerfilter/source/filter/WriterFilterDetection.cxx200
-rw-r--r--writerfilter/source/filter/WriterFilterDetection.hxx76
-rw-r--r--writerfilter/source/filter/makefile.mk51
-rw-r--r--writerfilter/source/odiapi/qname/resource/office2003/WordprocessingML Schemas/wordnetaux.xsdbin0 -> 48598 bytes-rw-r--r--writerfilter/source/odiapi/qname/resource/office2003/WordprocessingML Schemas/xsdlib.xsdbin0 -> 7918 bytes-rw-r--r--writerfilter/source/odiapi/qname/resource/rdfxml.rng453
-rw-r--r--writerfilter/source/odiapi/qname/resource/rng.rng331
-rw-r--r--writerfilter/source/odiapi/qname/resource/rtf.rtfs1385
-rw-r--r--writerfilter/source/ooxml/Handler.cxx348
-rw-r--r--writerfilter/source/ooxml/Handler.hxx145
-rw-r--r--writerfilter/source/ooxml/OOXMLBinaryObjectReference.cxx86
-rw-r--r--writerfilter/source/ooxml/OOXMLBinaryObjectReference.hxx55
-rw-r--r--writerfilter/source/ooxml/OOXMLDocumentImpl.cxx410
-rw-r--r--writerfilter/source/ooxml/OOXMLDocumentImpl.hxx116
-rw-r--r--writerfilter/source/ooxml/OOXMLFactory.cxx339
-rwxr-xr-xwriterfilter/source/ooxml/OOXMLFactory.hxx176
-rw-r--r--writerfilter/source/ooxml/OOXMLFastContextHandler.cxx2380
-rw-r--r--writerfilter/source/ooxml/OOXMLFastContextHandler.hxx644
-rw-r--r--writerfilter/source/ooxml/OOXMLFastDocumentHandler.cxx233
-rw-r--r--writerfilter/source/ooxml/OOXMLFastDocumentHandler.hxx117
-rw-r--r--writerfilter/source/ooxml/OOXMLFastHelper.hxx253
-rw-r--r--writerfilter/source/ooxml/OOXMLFastTokenHandler.cxx119
-rw-r--r--writerfilter/source/ooxml/OOXMLFastTokenHandler.hxx65
-rw-r--r--writerfilter/source/ooxml/OOXMLParserState.cxx325
-rw-r--r--writerfilter/source/ooxml/OOXMLParserState.hxx118
-rw-r--r--writerfilter/source/ooxml/OOXMLPropertySet.hxx82
-rw-r--r--writerfilter/source/ooxml/OOXMLPropertySetImpl.cxx792
-rw-r--r--writerfilter/source/ooxml/OOXMLPropertySetImpl.hxx289
-rw-r--r--writerfilter/source/ooxml/OOXMLStreamImpl.cxx317
-rw-r--r--writerfilter/source/ooxml/OOXMLStreamImpl.hxx91
-rw-r--r--writerfilter/source/ooxml/README.efforts131
-rw-r--r--writerfilter/source/ooxml/RefAndPointer.hxx119
-rw-r--r--writerfilter/source/ooxml/analyzemodel.xsl103
-rw-r--r--writerfilter/source/ooxml/analyzestage2.xsl32
-rw-r--r--writerfilter/source/ooxml/analyzestage3.xsl40
-rw-r--r--writerfilter/source/ooxml/attrsprm.xsl142
-rw-r--r--writerfilter/source/ooxml/checkmodel.xsl167
-rw-r--r--writerfilter/source/ooxml/dummyannotate.xsl845
-rw-r--r--writerfilter/source/ooxml/effort.xsl39
-rwxr-xr-xwriterfilter/source/ooxml/efforts.sh3
-rw-r--r--writerfilter/source/ooxml/factory.xsl89
-rw-r--r--writerfilter/source/ooxml/factory_ns.xsl161
-rw-r--r--writerfilter/source/ooxml/factory_values.xsl100
-rw-r--r--writerfilter/source/ooxml/factoryimpl.xsl386
-rw-r--r--writerfilter/source/ooxml/factoryimpl_ns.xsl833
-rw-r--r--writerfilter/source/ooxml/factoryimpl_values.xsl98
-rw-r--r--writerfilter/source/ooxml/factoryinc.xsl112
-rw-r--r--writerfilter/source/ooxml/factorytools.xsl345
-rw-r--r--writerfilter/source/ooxml/fasttokens.xsl113
-rw-r--r--writerfilter/source/ooxml/gperffasttokenhandler.xsl96
-rw-r--r--writerfilter/source/ooxml/makefile.mk256
-rw-r--r--writerfilter/source/ooxml/model.xml23466
-rwxr-xr-xwriterfilter/source/ooxml/modelcleanup3
-rw-r--r--writerfilter/source/ooxml/modelcleanup.xsl304
-rw-r--r--writerfilter/source/ooxml/modelpreprocess.xsl225
-rw-r--r--writerfilter/source/ooxml/namespaceids.xsl100
-rw-r--r--writerfilter/source/ooxml/nostatus.xsl20
-rw-r--r--writerfilter/source/ooxml/ooxmlLoggers.hxx41
-rw-r--r--writerfilter/source/ooxml/qnametostr.xsl132
-rw-r--r--writerfilter/source/ooxml/resourceids.xsl105
-rwxr-xr-xwriterfilter/source/ooxml/rngtocxx32
-rw-r--r--writerfilter/source/ooxml/status.sh24
-rw-r--r--writerfilter/source/ooxml/todo.xsl29
-rw-r--r--writerfilter/source/ooxml/tokenxmlfooter1
-rw-r--r--writerfilter/source/ooxml/tokenxmlheader1
-rw-r--r--writerfilter/source/resourcemodel/Protocol.cxx218
-rw-r--r--writerfilter/source/resourcemodel/ResourceModelHelper.cxx48
-rw-r--r--writerfilter/source/resourcemodel/TagLogger.cxx467
-rw-r--r--writerfilter/source/resourcemodel/WW8Analyzer.cxx216
-rw-r--r--writerfilter/source/resourcemodel/WW8Analyzer.hxx99
-rw-r--r--writerfilter/source/resourcemodel/analyzerfooter4
-rw-r--r--writerfilter/source/resourcemodel/analyzerheader36
-rwxr-xr-xwriterfilter/source/resourcemodel/genqnametostr35
-rw-r--r--writerfilter/source/resourcemodel/makefile.mk204
-rw-r--r--writerfilter/source/resourcemodel/namespace_preprocess.pl65
-rw-r--r--writerfilter/source/resourcemodel/qnametostrfooter24
-rw-r--r--writerfilter/source/resourcemodel/qnametostrheader57
-rw-r--r--writerfilter/source/resourcemodel/resourcemodel.cxx563
-rw-r--r--writerfilter/source/resourcemodel/resourcemodel.hxx110
-rwxr-xr-xwriterfilter/source/resourcemodel/setdebugflags3
-rw-r--r--writerfilter/source/resourcemodel/sprmcodetostrfooter1
-rw-r--r--writerfilter/source/resourcemodel/sprmcodetostrheader50
-rw-r--r--writerfilter/source/resourcemodel/util.cxx427
-rw-r--r--writerfilter/source/rtftok/FlexLexer.h149
-rw-r--r--writerfilter/source/rtftok/RTFParseException.cxx33
-rw-r--r--writerfilter/source/rtftok/RTFScanner.lex333
-rw-r--r--writerfilter/source/rtftok/RTFScanner.skl1537
-rw-r--r--writerfilter/source/rtftok/makefile.mk82
-rw-r--r--writerfilter/unocomponent/component.cxx75
-rw-r--r--writerfilter/unocomponent/debugservices/doctok/DocTokAnalyzeService.cxx293
-rw-r--r--writerfilter/unocomponent/debugservices/doctok/DocTokAnalyzeService.hxx70
-rw-r--r--writerfilter/unocomponent/debugservices/doctok/DocTokTestService.cxx149
-rw-r--r--writerfilter/unocomponent/debugservices/doctok/DocTokTestService.hxx70
-rw-r--r--writerfilter/unocomponent/debugservices/doctok/makefile.mk44
-rw-r--r--writerfilter/unocomponent/debugservices/ooxml/OOXMLAnalyzeService.cxx291
-rw-r--r--writerfilter/unocomponent/debugservices/ooxml/OOXMLAnalyzeService.hxx70
-rw-r--r--writerfilter/unocomponent/debugservices/ooxml/OOXMLTestService.cxx182
-rw-r--r--writerfilter/unocomponent/debugservices/ooxml/OOXMLTestService.hxx70
-rw-r--r--writerfilter/unocomponent/debugservices/ooxml/makefile.mk58
-rw-r--r--writerfilter/unocomponent/debugservices/rtftok/ScannerTestService.cxx455
-rw-r--r--writerfilter/unocomponent/debugservices/rtftok/ScannerTestService.hxx70
-rw-r--r--writerfilter/unocomponent/debugservices/rtftok/XMLScanner.cxx333
-rw-r--r--writerfilter/unocomponent/debugservices/rtftok/XMLScanner.hxx70
-rw-r--r--writerfilter/unocomponent/debugservices/rtftok/makefile.mk45
-rw-r--r--writerfilter/unocomponent/exports.dxp2
-rw-r--r--writerfilter/unocomponent/makefile.mk90
-rw-r--r--writerfilter/util/makefile.mk84
-rw-r--r--writerfilter/util/writerfilter.component38
-rw-r--r--writerperfect/prj/build.lst6
-rw-r--r--writerperfect/prj/d.lst5
-rw-r--r--writerperfect/source/filter/DocumentCollector.cxx931
-rw-r--r--writerperfect/source/filter/DocumentCollector.hxx201
-rw-r--r--writerperfect/source/filter/DocumentElement.cxx102
-rw-r--r--writerperfect/source/filter/DocumentElement.hxx99
-rw-r--r--writerperfect/source/filter/DocumentHandler.cxx83
-rw-r--r--writerperfect/source/filter/DocumentHandler.hxx31
-rw-r--r--writerperfect/source/filter/FilterInternal.hxx31
-rw-r--r--writerperfect/source/filter/FontStyle.cxx50
-rw-r--r--writerperfect/source/filter/FontStyle.hxx52
-rw-r--r--writerperfect/source/filter/ListStyle.cxx161
-rw-r--r--writerperfect/source/filter/ListStyle.hxx101
-rw-r--r--writerperfect/source/filter/PageSpan.cxx173
-rw-r--r--writerperfect/source/filter/PageSpan.hxx65
-rw-r--r--writerperfect/source/filter/SectionStyle.cxx86
-rw-r--r--writerperfect/source/filter/SectionStyle.hxx52
-rw-r--r--writerperfect/source/filter/Style.hxx63
-rw-r--r--writerperfect/source/filter/TableStyle.cxx163
-rw-r--r--writerperfect/source/filter/TableStyle.hxx80
-rw-r--r--writerperfect/source/filter/TextRunStyle.cxx162
-rw-r--r--writerperfect/source/filter/TextRunStyle.hxx69
-rw-r--r--writerperfect/source/filter/WriterProperties.hxx36
-rw-r--r--writerperfect/source/filter/makefile.mk27
-rw-r--r--writerperfect/source/stream/WPXSvStream.cxx174
-rw-r--r--writerperfect/source/stream/WPXSvStream.h47
-rw-r--r--writerperfect/source/stream/makefile.mk18
-rw-r--r--writerperfect/source/wpdimp/WordPerfectCollector.cxx53
-rw-r--r--writerperfect/source/wpdimp/WordPerfectCollector.hxx41
-rw-r--r--writerperfect/source/wpdimp/WordPerfectImportFilter.cxx293
-rw-r--r--writerperfect/source/wpdimp/WordPerfectImportFilter.hxx115
-rw-r--r--writerperfect/source/wpdimp/makefile.mk21
-rw-r--r--writerperfect/source/wpdimp/wpft_genericfilter.cxx71
-rw-r--r--writerperfect/util/makefile.mk53
-rw-r--r--writerperfect/util/wpft.component35
-rw-r--r--x11_extensions/inc/Xrandr.h151
-rw-r--r--x11_extensions/inc/Xrender.h528
-rw-r--r--x11_extensions/inc/randr.h74
-rw-r--r--x11_extensions/inc/randrproto.h209
-rw-r--r--x11_extensions/inc/render.h189
-rw-r--r--x11_extensions/inc/renderproto.h663
-rw-r--r--x11_extensions/prj/build.lst3
-rw-r--r--x11_extensions/prj/d.lst5
-rw-r--r--xmerge/build.xml88
-rw-r--r--xmerge/inc/makefile.mk47
-rw-r--r--xmerge/inc/pch/precompiled_xmerge.cxx29
-rw-r--r--xmerge/inc/pch/precompiled_xmerge.hxx32
-rw-r--r--xmerge/prj/build.lst11
-rw-r--r--xmerge/prj/d.lst12
-rw-r--r--xmerge/source/activesync/BIN/xmergesync.dllbin0 -> 86016 bytes-rw-r--r--xmerge/source/activesync/XMergeFactory.cpp90
-rw-r--r--xmerge/source/activesync/XMergeFactory.h34
-rw-r--r--xmerge/source/activesync/XMergeFilter.cpp495
-rw-r--r--xmerge/source/activesync/XMergeFilter.h73
-rw-r--r--xmerge/source/activesync/XMergeSync.cpp837
-rw-r--r--xmerge/source/activesync/XMergeSync.def9
-rw-r--r--xmerge/source/activesync/XMergeSync.dsp143
-rw-r--r--xmerge/source/activesync/XMergeSync.dsw33
-rw-r--r--xmerge/source/activesync/XMergeSync.h29
-rw-r--r--xmerge/source/activesync/XMergeSync.rc80
-rw-r--r--xmerge/source/activesync/exports.map12
-rw-r--r--xmerge/source/activesync/guids.txt60
-rw-r--r--xmerge/source/activesync/makefile.mk72
-rw-r--r--xmerge/source/activesync/resource.h17
-rw-r--r--xmerge/source/activesync/stdafx.cpp7
-rw-r--r--xmerge/source/activesync/stdafx.h28
-rw-r--r--xmerge/source/aportisdoc/build.xml76
-rw-r--r--xmerge/source/aportisdoc/converter.xml45
-rw-r--r--xmerge/source/aportisdoc/java/org/openoffice/xmerge/converter/xml/sxw/aportisdoc/ConverterCapabilitiesImpl.java93
-rw-r--r--xmerge/source/aportisdoc/java/org/openoffice/xmerge/converter/xml/sxw/aportisdoc/DocConstants.java69
-rw-r--r--xmerge/source/aportisdoc/java/org/openoffice/xmerge/converter/xml/sxw/aportisdoc/DocDecoder.java301
-rw-r--r--xmerge/source/aportisdoc/java/org/openoffice/xmerge/converter/xml/sxw/aportisdoc/DocEncoder.java213
-rw-r--r--xmerge/source/aportisdoc/java/org/openoffice/xmerge/converter/xml/sxw/aportisdoc/DocumentDeserializerImpl.java312
-rw-r--r--xmerge/source/aportisdoc/java/org/openoffice/xmerge/converter/xml/sxw/aportisdoc/DocumentMergerImpl.java97
-rw-r--r--xmerge/source/aportisdoc/java/org/openoffice/xmerge/converter/xml/sxw/aportisdoc/DocumentSerializerImpl.java531
-rw-r--r--xmerge/source/aportisdoc/java/org/openoffice/xmerge/converter/xml/sxw/aportisdoc/PluginFactoryImpl.java141
-rw-r--r--xmerge/source/aportisdoc/java/org/openoffice/xmerge/converter/xml/sxw/aportisdoc/package.html239
-rw-r--r--xmerge/source/aportisdoc/makefile.mk35
-rw-r--r--xmerge/source/bridge/XMergeBridge.component34
-rw-r--r--xmerge/source/bridge/antcall.txt19
-rw-r--r--xmerge/source/bridge/build.xml81
-rw-r--r--xmerge/source/bridge/java/XMergeBridge.java697
-rw-r--r--xmerge/source/bridge/makefile.mk43
-rw-r--r--xmerge/source/bridge/manifest.mf3
-rw-r--r--xmerge/source/htmlsoff/build.xml67
-rw-r--r--xmerge/source/htmlsoff/converter.xml52
-rw-r--r--xmerge/source/htmlsoff/htmltosoff.xsl176
-rw-r--r--xmerge/source/htmlsoff/makefile.mk35
-rw-r--r--xmerge/source/htmlsoff/package.html67
-rw-r--r--xmerge/source/htmlsoff/sofftohtml.xsl118
-rw-r--r--xmerge/source/inc/antbuild.properties12
-rw-r--r--xmerge/source/inc/antbuild.xml2
-rw-r--r--xmerge/source/minicalc/build.xml76
-rw-r--r--xmerge/source/minicalc/converter.xml45
-rw-r--r--xmerge/source/minicalc/java/org/openoffice/xmerge/converter/xml/sxc/minicalc/ConverterCapabilitiesImpl.java113
-rw-r--r--xmerge/source/minicalc/java/org/openoffice/xmerge/converter/xml/sxc/minicalc/MinicalcConstants.java45
-rw-r--r--xmerge/source/minicalc/java/org/openoffice/xmerge/converter/xml/sxc/minicalc/MinicalcDataString.java545
-rw-r--r--xmerge/source/minicalc/java/org/openoffice/xmerge/converter/xml/sxc/minicalc/MinicalcDecoder.java744
-rw-r--r--xmerge/source/minicalc/java/org/openoffice/xmerge/converter/xml/sxc/minicalc/MinicalcEncoder.java582
-rw-r--r--xmerge/source/minicalc/java/org/openoffice/xmerge/converter/xml/sxc/minicalc/PluginFactoryImpl.java129
-rw-r--r--xmerge/source/minicalc/java/org/openoffice/xmerge/converter/xml/sxc/minicalc/SxcDocumentDeserializerImpl.java138
-rw-r--r--xmerge/source/minicalc/java/org/openoffice/xmerge/converter/xml/sxc/minicalc/SxcDocumentSerializerImpl.java141
-rw-r--r--xmerge/source/minicalc/java/org/openoffice/xmerge/converter/xml/sxc/minicalc/package.html53
-rw-r--r--xmerge/source/minicalc/makefile.mk33
-rw-r--r--xmerge/source/palmtests/README50
-rw-r--r--xmerge/source/palmtests/bin/README6
-rwxr-xr-xxmerge/source/palmtests/bin/rd24
-rwxr-xr-xxmerge/source/palmtests/bin/spose108
-rwxr-xr-xxmerge/source/palmtests/bin/verify_sane.pl110
-rwxr-xr-xxmerge/source/palmtests/qa-wrapper/bin/qa_comparator.pl257
-rwxr-xr-xxmerge/source/palmtests/qa-wrapper/bin/qa_test_driver.pl846
-rwxr-xr-xxmerge/source/palmtests/qa-wrapper/bin/run-convtest538
-rw-r--r--xmerge/source/palmtests/qa-wrapper/env/master.env85
-rw-r--r--xmerge/source/palmtests/qa-wrapper/lists/master.list55
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_animatedgif.pdb6
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_bolddoc.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_bookmarks.pdb10
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_bulletorderedlist.pdb8
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_emptydoc.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_firstlineindent.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_fontsize.pdb6
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_heading.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_heading1.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_heading2.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_hyperlink.pdb6
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_justified.pdb4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_linebreaks.pdb4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_linespacing.pdb12
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_numberorderedlist.pdb9
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_pagebreak.pdb4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_paragraph.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_simple01.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_simple02.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_simple03.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_simple04.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_simple05.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_standard.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_subscript.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_superscript.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_symbols.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_tab.pdb8
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_table.pdb2
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_textspan.pdb3
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_unorderedlist.pdb20
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/a_wordwrap.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_addition-Sheet1.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_addition-Sheet2.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_addition-Sheet3.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_alignment-Sheet1.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_alignment-Sheet2.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_alignment-Sheet3.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_backwardrange-Sheet1.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_backwardrange-Sheet2.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_backwardrange-Sheet3.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_basic-Sheet1.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_basic-Sheet2.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_basic-Sheet3.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_boolean-Sheet1.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_boolean-Sheet2.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_boolean-Sheet3.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_cellcurrencyalue-Sheet1.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_cellcurrencyalue-Sheet2.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_cellcurrencyalue-Sheet3.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_cellpercentvalue-Sheet1.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_cellpercentvalue-Sheet2.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_cellpercentvalue-Sheet3.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_cellstringvalue-Sheet1.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_cellstringvalue-Sheet2.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_cellstringvalue-Sheet3.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_columnswidth-Sheet1.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_columnswidth-Sheet2.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_columnswidth-Sheet3.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_cyclic-Sheet1.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_cyclic-Sheet2.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_cyclic-Sheet3.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_dividefloating-Sheet1.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_dividefloating-Sheet2.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_dividefloating-Sheet3.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_forwardrange-Sheet1.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_forwardrange-Sheet2.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_forwardrange-Sheet3.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_insertimage-Sheet1.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_insertimage-Sheet2.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_insertimage-Sheet3.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_invalidcellref-Sheet1.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_invalidcellref-Sheet2.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_invalidcellref-Sheet3.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_largerange-Sheet1.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_largerange-Sheet2.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_largerange-Sheet3.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_listrange-Sheet1.pdb2
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_listrange-Sheet2.pdb2
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_listrange-Sheet3.pdb2
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_mathematical-Sheet1.pdb2
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_mathematical-Sheet2.pdb2
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_mathematical-Sheet3.pdb2
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_protection-Sheet1.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_protection-Sheet2.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_protection-Sheet3.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_sheetreference-Sheet1.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_sheetreference-Sheet2.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_sheetreference-Sheet3.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_simple01-Sheet1.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_simple01-Sheet2.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_simple01-Sheet3.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_simple02-Sheet1.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_simple02-Sheet2.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_simple02-Sheet3.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_simple03-Sheet1.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_simple03-Sheet2.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_simple03-Sheet3.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_simple04-Sheet1.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_simple04-Sheet2.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_simple04-Sheet3.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_smallrange-Sheet1.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_smallrange-Sheet2.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_smallrange-Sheet3.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_styles-Sheet1.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_styles-Sheet2.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_styles-Sheet3.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_textimage-Sheet1.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_textimage-Sheet2.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/pdb-base/c_textimage-Sheet3.pdb1
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/Blocklist.dtd34
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_animatedgif.sxwbin0 -> 52952 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_bolddoc.sxwbin0 -> 5500 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_bookmarks.sxwbin0 -> 6047 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_bulletorderedlist.sxwbin0 -> 6347 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_emptydoc.sxwbin0 -> 5701 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_firstlineindent.sxwbin0 -> 5519 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_fontsize.sxwbin0 -> 6130 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_heading.sxwbin0 -> 5518 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_heading1.sxwbin0 -> 5640 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_heading2.sxwbin0 -> 5964 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_hyperlink.sxwbin0 -> 5514 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_justified.sxwbin0 -> 6088 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_linebreaks.sxwbin0 -> 6269 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_linespacing.sxwbin0 -> 5618 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_numberorderedlist.sxwbin0 -> 6188 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_pagebreak.sxwbin0 -> 5534 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_paragraph.sxwbin0 -> 5914 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_simple01.sxwbin0 -> 5823 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_simple02.sxwbin0 -> 5821 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_simple03.sxwbin0 -> 5817 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_simple04.sxwbin0 -> 5792 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_simple05.sxwbin0 -> 5791 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_standard.sxwbin0 -> 5797 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_subscript.sxwbin0 -> 5798 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_superscript.sxwbin0 -> 5799 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_symbols.sxwbin0 -> 4916 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_tab.sxwbin0 -> 5731 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_table.sxwbin0 -> 6011 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_textspan.sxwbin0 -> 5958 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_unorderedlist.sxwbin0 -> 6817 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/a_wordwrap.sxwbin0 -> 5363 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/c_addition.sxcbin0 -> 5829 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/c_alignment.sxcbin0 -> 6383 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/c_backwardrange.sxcbin0 -> 5995 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/c_basic.sxcbin0 -> 5830 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/c_boolean.sxcbin0 -> 6066 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/c_cellcurrencyalue.sxcbin0 -> 6776 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/c_cellpercentvalue.sxcbin0 -> 6318 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/c_cellstringvalue.sxcbin0 -> 6009 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/c_columnswidth.sxcbin0 -> 6127 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/c_cyclic.sxcbin0 -> 6005 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/c_dividefloating.sxcbin0 -> 6315 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/c_forwardrange.sxcbin0 -> 6058 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/c_insertimage.sxcbin0 -> 40476 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/c_invalidcellref.sxcbin0 -> 5838 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/c_largerange.sxcbin0 -> 6306 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/c_listrange.sxcbin0 -> 6162 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/c_mathematical.sxcbin0 -> 6026 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/c_protection.sxcbin0 -> 6839 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/c_sheetreference.sxcbin0 -> 6173 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/c_simple01.sxcbin0 -> 5080 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/c_simple02.sxcbin0 -> 4962 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/c_simple03.sxcbin0 -> 4995 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/c_simple04.sxcbin0 -> 5007 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/c_smallrange.sxcbin0 -> 5924 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/c_styles.sxcbin0 -> 6531 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/c_textimage.sxcbin0 -> 40702 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/chart.mod228
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/datastyl.mod168
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/drawing.mod837
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/dtypes.mod143
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/form.mod308
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/meta.mod90
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/nmspace.mod50
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/office.dtd54
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/office.mod234
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/script.mod51
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/settings.mod49
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/style.mod391
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/table.mod493
-rw-r--r--xmerge/source/palmtests/qa-wrapper/results/baseline/xml-base/text.mod1099
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_animatedgif.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_bolddoc.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_bookmarks.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_bulletorderedlist.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_emptydoc-mod.infile9
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_emptydoc.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_firstlineindent.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_fontsize.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_heading.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_heading1.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_heading2.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_hyperlink.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_justified.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_linebreaks.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_linespacing.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_numberorderedlist.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_pagebreak.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_paragraph.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_simple01.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_simple02.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_simple03.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_simple04.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_simple05.infile5
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_standard.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_subscript.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_superscript.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_symbols.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_tab.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_table.infile5
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_textspan.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_unorderedlist.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/a_wordwrap.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_addition01-mod.infile5
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_alignment.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_backwardrange-mod.infile6
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_basic-mod.infile5
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_bob-mod.infile5
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_boolean-mod.infile6
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_cellcurrencyvalue.infile5
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_cellpercentvalue-mod.infile8
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_cellstringvalue-mod.infile10
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_columnswidth-mod.infile3
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_cyclic-mod.infile12
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_dividefloating-mod.infile8
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_forwardrange-mod.infile6
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_insertimage.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_insertrow-mod.infile13
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_invalidcellref-mod.infile10
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_largerange-mod.infile6
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_listrange-mod.infile6
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_mathematical-mod.infile10
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_multi_boolean.infile5
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_protection-mod01.infile6
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_sheetreference-mod.infile6
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_simple01-mod.infile13
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_simple02-mod.infile13
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_simple03-mod.infile22
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_simple04-mod.infile14
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_smallrange-mod.infile6
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_styles.infile3
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/c_textimage.infile12
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/empty01.infile3
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/hyperlink01.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/image01.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/simple01.infile3
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/simple02.infile3
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/simple03.infile3
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/simple04.infile3
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/simple05.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/table01.infile3
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/table02.infile3
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/table03.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/table04.infile4
-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_animatedgif.sxwbin0 -> 53136 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_bolddoc.sxwbin0 -> 5664 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_bookmarks.sxwbin0 -> 6227 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_bulletorderedlist.sxwbin0 -> 6347 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_emptydoc-mod.sxwbin0 -> 5880 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_emptydoc.sxwbin0 -> 5880 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_firstlineindent.sxwbin0 -> 5683 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_fontsize.sxwbin0 -> 6315 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_heading.sxwbin0 -> 5700 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_heading1.sxwbin0 -> 5819 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_heading2.sxwbin0 -> 6142 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_hyperlink.sxwbin0 -> 5673 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_justified.sxwbin0 -> 6269 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_linebreaks.sxwbin0 -> 6444 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_linespacing.sxwbin0 -> 5783 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_numberorderedlist.sxwbin0 -> 6366 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_pagebreak.sxwbin0 -> 5698 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_paragraph.sxwbin0 -> 6093 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_simple01.sxwbin0 -> 5978 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_simple02.sxwbin0 -> 5978 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_simple03.sxwbin0 -> 5978 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_simple04.sxwbin0 -> 5978 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_simple05.sxwbin0 -> 5978 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_standard.sxwbin0 -> 5978 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_subscript.sxwbin0 -> 5980 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_superscript.sxwbin0 -> 5981 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_symbols.sxwbin0 -> 5106 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_tab.sxwbin0 -> 5912 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_table.sxwbin0 -> 6181 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_textspan.sxwbin0 -> 6142 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_unorderedlist.sxwbin0 -> 6817 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/a_wordwrap.sxwbin0 -> 5524 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_addition.sxcbin0 -> 6020 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_alignment.sxcbin0 -> 6535 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_backwardrange.sxcbin0 -> 6204 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_basic.sxcbin0 -> 6020 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_boolean.sxcbin0 -> 6239 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_cellcurrencyalue.sxcbin0 -> 6776 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_cellpercentvalue.sxcbin0 -> 6495 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_cellstringvalue.sxcbin0 -> 6172 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_columnswidth.sxcbin0 -> 6287 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_cyclic.sxcbin0 -> 6005 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_dividefloating.sxcbin0 -> 6315 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_forwardrange.sxcbin0 -> 6259 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_insertimage.sxcbin0 -> 40702 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_insertrow.sxcbin0 -> 5157 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_invalidcellref.sxcbin0 -> 6035 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_largerange.sxcbin0 -> 6487 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_listrange.sxcbin0 -> 6370 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_mathematical.sxcbin0 -> 6351 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_multi_boolean.sxcbin0 -> 5338 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_protection.sxcbin0 -> 6839 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_sheetreference.sxcbin0 -> 6358 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_simple01.sxcbin0 -> 5176 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_simple02.sxcbin0 -> 4999 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_simple03.sxcbin0 -> 5044 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_simple04.sxcbin0 -> 5083 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_smallrange.sxcbin0 -> 6129 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_styles.sxcbin0 -> 6531 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/c_textimage.sxcbin0 -> 40702 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/empty01.sxwbin0 -> 5880 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/hyperlink01.sxwbin0 -> 6088 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/image01.sxwbin0 -> 53136 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/simple01.sxwbin0 -> 5978 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/simple02.sxwbin0 -> 5978 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/simple03.sxwbin0 -> 5978 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/simple04.sxwbin0 -> 5978 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/simple05.sxwbin0 -> 5978 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/table01.sxwbin0 -> 6443 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/table02.sxwbin0 -> 6443 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/table03.sxwbin0 -> 6443 bytes-rw-r--r--xmerge/source/palmtests/qa-wrapper/testcases/xml-orig/table04.sxwbin0 -> 6443 bytes-rwxr-xr-xxmerge/source/palmtests/qa/bin/mysplit.pl58
-rwxr-xr-xxmerge/source/palmtests/qa/bin/tappen.pl61
-rwxr-xr-xxmerge/source/palmtests/qa/bin/template.pl55
-rwxr-xr-xxmerge/source/palmtests/qa/bin/test_driver.pl785
-rw-r--r--xmerge/source/palmtests/qa/comparator/OfficeZip.java241
-rw-r--r--xmerge/source/palmtests/qa/comparator/PDBDecoder.java135
-rw-r--r--xmerge/source/palmtests/qa/comparator/PDBHeader.java153
-rw-r--r--xmerge/source/palmtests/qa/comparator/PDBUtil.java100
-rw-r--r--xmerge/source/palmtests/qa/comparator/PalmDB.java348
-rw-r--r--xmerge/source/palmtests/qa/comparator/README10
-rw-r--r--xmerge/source/palmtests/qa/comparator/Record.java165
-rw-r--r--xmerge/source/palmtests/qa/comparator/SimplePdbCompare.java94
-rw-r--r--xmerge/source/palmtests/qa/comparator/XmlDiff.java464
-rw-r--r--xmerge/source/palmtests/qa/comparator/XmlDiff.properties14
-rw-r--r--xmerge/source/palmtests/qa/comparator/XmlWrapper.java153
-rw-r--r--xmerge/source/palmtests/qa/comparator/XmlZipExtract.java144
-rw-r--r--xmerge/source/palmtests/qa/comparator/comparator.pl248
-rw-r--r--xmerge/source/palmtests/qa/comparator/dtd/Blocklist.dtd34
-rw-r--r--xmerge/source/palmtests/qa/comparator/dtd/chart.mod228
-rw-r--r--xmerge/source/palmtests/qa/comparator/dtd/datastyl.mod168
-rw-r--r--xmerge/source/palmtests/qa/comparator/dtd/drawing.mod837
-rw-r--r--xmerge/source/palmtests/qa/comparator/dtd/dtypes.mod143
-rw-r--r--xmerge/source/palmtests/qa/comparator/dtd/form.mod308
-rw-r--r--xmerge/source/palmtests/qa/comparator/dtd/meta.mod90
-rw-r--r--xmerge/source/palmtests/qa/comparator/dtd/nmspace.mod50
-rw-r--r--xmerge/source/palmtests/qa/comparator/dtd/office.dtd54
-rw-r--r--xmerge/source/palmtests/qa/comparator/dtd/office.mod234
-rw-r--r--xmerge/source/palmtests/qa/comparator/dtd/script.mod51
-rw-r--r--xmerge/source/palmtests/qa/comparator/dtd/settings.mod49
-rw-r--r--xmerge/source/palmtests/qa/comparator/dtd/style.mod391
-rw-r--r--xmerge/source/palmtests/qa/comparator/dtd/table.mod493
-rw-r--r--xmerge/source/palmtests/qa/comparator/dtd/text.mod1099
-rw-r--r--xmerge/source/palmtests/qa/comparator/pdbcomparison.java542
-rw-r--r--xmerge/source/palmtests/qa/docs/Doc_descriptions.sxcbin0 -> 8347 bytes-rw-r--r--xmerge/source/palmtests/qa/docs/Spreadsheet_descriptions.csv39
-rw-r--r--xmerge/source/palmtests/qa/docs/Spreadsheet_descriptions.sxcbin0 -> 5752 bytes-rw-r--r--xmerge/source/palmtests/qa/lib/converterlib.pm1174
-rw-r--r--xmerge/source/palmtests/qa/palm-session/session8
-rw-r--r--xmerge/source/palmtests/qa/test_spec/convertor_test_spec.html2274
-rw-r--r--xmerge/source/pexcel/build.xml76
-rw-r--r--xmerge/source/pexcel/converter.xml45
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/ConverterCapabilitiesImpl.java113
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/PluginFactoryImpl.java130
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/PocketExcelConstants.java67
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/PocketExcelDecoder.java438
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/PocketExcelEncoder.java289
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/SxcDocumentDeserializerImpl.java129
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/SxcDocumentSerializerImpl.java130
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/package.html43
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/BIFFRecord.java61
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/BeginningOfFile.java116
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/BlankCell.java115
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/BoolErrCell.java125
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/BoundSheet.java136
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/CellValue.java136
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/CodePage.java107
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/ColInfo.java157
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/DefColWidth.java94
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/DefRowHeight.java96
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/DefinedName.java226
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/Eof.java70
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/ExtendedFormat.java384
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/FloatNumber.java120
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/FontDescription.java286
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/Formula.java257
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/LabelCell.java139
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/NumberFormat.java93
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/Pane.java218
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/Row.java138
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/Selection.java142
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/StringValue.java124
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/UnsupportedFormulaException.java41
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/Window1.java115
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/Window2.java154
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/Workbook.java539
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/Worksheet.java319
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/formula/FormulaCompiler.java271
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/formula/FormulaHelper.java152
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/formula/FormulaParser.java561
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/formula/FormulaParsingException.java41
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/formula/FunctionLookup.java204
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/formula/OperandLookup.java62
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/formula/OperatorLookup.java73
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/formula/ParseToken.java42
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/formula/PrecedenceTable.java85
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/formula/SymbolLookup.java81
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/formula/Token.java151
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/formula/TokenConstants.java203
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/formula/TokenDecoder.java497
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/formula/TokenEncoder.java559
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/formula/TokenFactory.java118
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/formula/UnsupportedFunctionException.java40
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/formula/package.html42
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/package.html47
-rw-r--r--xmerge/source/pexcel/makefile.mk35
-rw-r--r--xmerge/source/pocketword/build.xml76
-rw-r--r--xmerge/source/pocketword/converter.xml50
-rw-r--r--xmerge/source/pocketword/java/org/openoffice/xmerge/converter/xml/sxw/pocketword/ConverterCapabilitiesImpl.java93
-rw-r--r--xmerge/source/pocketword/java/org/openoffice/xmerge/converter/xml/sxw/pocketword/DocumentDescriptor.java235
-rw-r--r--xmerge/source/pocketword/java/org/openoffice/xmerge/converter/xml/sxw/pocketword/DocumentDeserializerImpl.java294
-rw-r--r--xmerge/source/pocketword/java/org/openoffice/xmerge/converter/xml/sxw/pocketword/DocumentMergerImpl.java97
-rw-r--r--xmerge/source/pocketword/java/org/openoffice/xmerge/converter/xml/sxw/pocketword/DocumentSerializerImpl.java433
-rw-r--r--xmerge/source/pocketword/java/org/openoffice/xmerge/converter/xml/sxw/pocketword/Paragraph.java858
-rw-r--r--xmerge/source/pocketword/java/org/openoffice/xmerge/converter/xml/sxw/pocketword/ParagraphTextSegment.java202
-rw-r--r--xmerge/source/pocketword/java/org/openoffice/xmerge/converter/xml/sxw/pocketword/PluginFactoryImpl.java164
-rw-r--r--xmerge/source/pocketword/java/org/openoffice/xmerge/converter/xml/sxw/pocketword/PocketWordConstants.java94
-rw-r--r--xmerge/source/pocketword/java/org/openoffice/xmerge/converter/xml/sxw/pocketword/PocketWordDocument.java404
-rw-r--r--xmerge/source/pocketword/java/org/openoffice/xmerge/converter/xml/sxw/pocketword/package.html58
-rw-r--r--xmerge/source/pocketword/makefile.mk35
-rw-r--r--xmerge/source/regutil/makefile.mk48
-rw-r--r--xmerge/source/regutil/regutil.cpp102
-rw-r--r--xmerge/source/regutil/regutil.dsp96
-rw-r--r--xmerge/source/regutil/regutil.dsw17
-rw-r--r--xmerge/source/wordsmith/build.xml76
-rw-r--r--xmerge/source/wordsmith/converter.xml17
-rw-r--r--xmerge/source/wordsmith/java/org/openoffice/xmerge/converter/xml/sxw/wordsmith/ConverterCapabilitiesImpl.java93
-rw-r--r--xmerge/source/wordsmith/java/org/openoffice/xmerge/converter/xml/sxw/wordsmith/DOCConstants.java61
-rw-r--r--xmerge/source/wordsmith/java/org/openoffice/xmerge/converter/xml/sxw/wordsmith/DocumentDeserializerImpl.java565
-rw-r--r--xmerge/source/wordsmith/java/org/openoffice/xmerge/converter/xml/sxw/wordsmith/DocumentMergerImpl.java99
-rw-r--r--xmerge/source/wordsmith/java/org/openoffice/xmerge/converter/xml/sxw/wordsmith/DocumentSerializerImpl.java536
-rw-r--r--xmerge/source/wordsmith/java/org/openoffice/xmerge/converter/xml/sxw/wordsmith/PluginFactoryImpl.java149
-rw-r--r--xmerge/source/wordsmith/java/org/openoffice/xmerge/converter/xml/sxw/wordsmith/WSDecoder.java352
-rw-r--r--xmerge/source/wordsmith/java/org/openoffice/xmerge/converter/xml/sxw/wordsmith/WSEncoder.java212
-rw-r--r--xmerge/source/wordsmith/java/org/openoffice/xmerge/converter/xml/sxw/wordsmith/Wse.java100
-rw-r--r--xmerge/source/wordsmith/java/org/openoffice/xmerge/converter/xml/sxw/wordsmith/WseColorTable.java247
-rw-r--r--xmerge/source/wordsmith/java/org/openoffice/xmerge/converter/xml/sxw/wordsmith/WseFontTable.java218
-rw-r--r--xmerge/source/wordsmith/java/org/openoffice/xmerge/converter/xml/sxw/wordsmith/WseHeader.java145
-rw-r--r--xmerge/source/wordsmith/java/org/openoffice/xmerge/converter/xml/sxw/wordsmith/WsePara.java299
-rw-r--r--xmerge/source/wordsmith/java/org/openoffice/xmerge/converter/xml/sxw/wordsmith/WseTextRun.java324
-rw-r--r--xmerge/source/wordsmith/java/org/openoffice/xmerge/converter/xml/sxw/wordsmith/textRecord.java115
-rw-r--r--xmerge/source/wordsmith/java/org/openoffice/xmerge/converter/xml/sxw/wordsmith/util.java68
-rw-r--r--xmerge/source/wordsmith/makefile.mk33
-rw-r--r--xmerge/source/xmerge/build.xml92
-rw-r--r--xmerge/source/xmerge/converter.dtd96
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/Convert.java327
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/ConvertData.java117
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/ConvertException.java45
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/ConverterCapabilities.java67
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/ConverterFactory.java124
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/Document.java99
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/DocumentDeserializer.java65
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/DocumentDeserializer2.java71
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/DocumentDeserializerFactory.java65
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/DocumentMerger.java93
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/DocumentMergerFactory.java63
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/DocumentSerializer.java67
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/DocumentSerializer2.java73
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/DocumentSerializerFactory.java63
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/MergeException.java45
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/PluginFactory.java193
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/Version.java88
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/dom/DOMDocument.java412
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/dom/package.html55
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/palm/PalmDB.java469
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/palm/PalmDocument.java177
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/palm/PdbDecoder.java233
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/palm/PdbEncoder.java196
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/palm/PdbHeader.java162
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/palm/PdbUtil.java105
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/palm/Record.java216
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/palm/package.html142
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/EmbeddedBinaryObject.java127
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/EmbeddedObject.java116
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/EmbeddedXMLObject.java295
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/OfficeConstants.java439
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/OfficeDocument.java1265
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/OfficeDocumentException.java130
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/OfficeZip.java458
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/ParaStyle.java601
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/Style.java227
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/StyleCatalog.java390
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/TextStyle.java679
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/package.html41
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/sxc/BookSettings.java228
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/sxc/CellStyle.java510
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/sxc/ColumnRowInfo.java195
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/sxc/ColumnStyle.java300
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/sxc/DocumentMergerImpl.java198
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/sxc/Format.java475
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/sxc/NameDefinition.java215
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/sxc/RowStyle.java300
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/sxc/SheetSettings.java373
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/sxc/SpreadsheetDecoder.java180
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/sxc/SpreadsheetEncoder.java129
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/sxc/SxcConstants.java49
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/sxc/SxcDocument.java92
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/sxc/SxcDocumentDeserializer.java792
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/sxc/SxcDocumentSerializer.java993
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/sxc/SxcPluginFactory.java82
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/sxc/package.html40
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/sxw/SxwDocument.java94
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/sxw/SxwPluginFactory.java76
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/sxw/package.html40
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/xslt/ConverterCapabilitiesImpl.java93
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/xslt/DocumentDeserializerImpl.java250
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/xslt/DocumentMergerImpl.java97
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/xslt/DocumentSerializerImpl.java297
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/xslt/GenericOfficeDocument.java93
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/xslt/PluginFactoryImpl.java202
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/xslt/XsltPlugin.properties37
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/xslt/package.html67
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/merger/DiffAlgorithm.java51
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/merger/Difference.java242
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/merger/Iterator.java123
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/merger/MergeAlgorithm.java61
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/merger/NodeMergeAlgorithm.java52
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/merger/diff/CellNodeIterator.java114
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/merger/diff/CharArrayLCSAlgorithm.java234
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/merger/diff/CharacterParser.java142
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/merger/diff/IteratorLCSAlgorithm.java236
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/merger/diff/IteratorRowCompare.java243
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/merger/diff/NodeIterator.java384
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/merger/diff/ObjectArrayIterator.java210
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/merger/diff/ParaNodeIterator.java90
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/merger/diff/RowIterator.java81
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/merger/diff/TextNodeEntry.java88
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/merger/diff/TextNodeIterator.java84
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/merger/diff/package.html43
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/merger/merge/CharacterBaseParagraphMerge.java310
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/merger/merge/DocumentMerge.java247
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/merger/merge/PositionBaseRowMerge.java260
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/merger/merge/SheetMerge.java89
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/merger/merge/SheetUtil.java107
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/merger/merge/package.html43
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/merger/package.html75
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/package.html113
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/test/ConverterInfoList.java105
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/test/ConverterInfoList.properties37
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/test/Driver.java318
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/util/ActiveSyncDriver.java144
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/util/ColourConverter.java446
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/util/Debug.java339
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/util/Debug.properties39
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/util/EndianConverter.java178
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/util/IntArrayList.java147
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/util/OfficeUtil.java135
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/util/Resources.java99
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/util/TwipsConverter.java99
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/util/XmlUtil.java189
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/util/package.html39
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/util/registry/ConverterInfo.java436
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/util/registry/ConverterInfoMgr.java536
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/util/registry/ConverterInfoReader.java279
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/util/registry/RegistryException.java47
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/util/registry/build.xml135
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/util/registry/package.html82
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/util/resources.properties69
-rw-r--r--xmerge/source/xmerge/makefile.mk34
-rw-r--r--xmerge/util/build.xml94
-rw-r--r--xmerge/util/makefile.mk34
-rw-r--r--xmerge/util/minicalc.mf3
-rw-r--r--xmerge/util/xmerge.mf8
-rw-r--r--xmerge/workben/XmlDiff.java458
-rw-r--r--xmerge/workben/XmlDiff.properties40
-rw-r--r--xmerge/workben/build.xml128
-rw-r--r--xmerge/workben/jstyle.pl541
-rw-r--r--xmerge/workben/makefile.mk32
-rw-r--r--xml2cmp/prj/build.lst7
-rw-r--r--xml2cmp/prj/d.lst4
-rw-r--r--xml2cmp/source/finder/dep_main.cxx95
-rw-r--r--xml2cmp/source/finder/dependy.cxx224
-rw-r--r--xml2cmp/source/finder/dependy.hxx116
-rw-r--r--xml2cmp/source/finder/makefile.mk69
-rw-r--r--xml2cmp/source/inc/lst_str.h99
-rw-r--r--xml2cmp/source/inc/new_del.h55
-rw-r--r--xml2cmp/source/inc/precomp.h55
-rw-r--r--xml2cmp/source/inc/str.h71
-rw-r--r--xml2cmp/source/inc/textbuff.h85
-rw-r--r--xml2cmp/source/inc/textfile.h76
-rw-r--r--xml2cmp/source/support/badcast.cxx45
-rw-r--r--xml2cmp/source/support/cmdline.cxx222
-rw-r--r--xml2cmp/source/support/cmdline.hxx86
-rw-r--r--xml2cmp/source/support/heap.cxx207
-rw-r--r--xml2cmp/source/support/heap.hxx91
-rw-r--r--xml2cmp/source/support/list.hxx251
-rw-r--r--xml2cmp/source/support/makefile.mk61
-rw-r--r--xml2cmp/source/support/sistr.cxx400
-rw-r--r--xml2cmp/source/support/sistr.hxx148
-rw-r--r--xml2cmp/source/support/syshelp.cxx314
-rw-r--r--xml2cmp/source/support/syshelp.hxx85
-rw-r--r--xml2cmp/source/x2cclass/x2cstl.hxx47
-rw-r--r--xml2cmp/source/x2cclass/xml_cd.hxx85
-rw-r--r--xml2cmp/source/x2cclass/xml_cdff.cxx231
-rw-r--r--xml2cmp/source/x2cclass/xml_cdff.hxx104
-rw-r--r--xml2cmp/source/x2cclass/xml_cdim.cxx183
-rw-r--r--xml2cmp/source/x2cclass/xml_cdim.hxx113
-rw-r--r--xml2cmp/source/xcd/cr_html.cxx268
-rw-r--r--xml2cmp/source/xcd/cr_html.hxx99
-rw-r--r--xml2cmp/source/xcd/cr_index.cxx275
-rw-r--r--xml2cmp/source/xcd/cr_index.hxx92
-rw-r--r--xml2cmp/source/xcd/cr_metho.cxx106
-rw-r--r--xml2cmp/source/xcd/cr_metho.hxx37
-rw-r--r--xml2cmp/source/xcd/filebuff.cxx63
-rw-r--r--xml2cmp/source/xcd/filebuff.hxx54
-rw-r--r--xml2cmp/source/xcd/main.cxx326
-rw-r--r--xml2cmp/source/xcd/makefile.mk79
-rw-r--r--xml2cmp/source/xcd/parse.cxx452
-rw-r--r--xml2cmp/source/xcd/parse.hxx143
-rw-r--r--xml2cmp/source/xcd/xmlelem.cxx264
-rw-r--r--xml2cmp/source/xcd/xmlelem.hxx241
-rw-r--r--xml2cmp/source/xcd/xmltree.cxx286
-rw-r--r--xml2cmp/source/xcd/xmltree.hxx146
-rw-r--r--xml2cmp/util/makefile.mk58
-rw-r--r--xmlhelp/inc/makefile.mk47
-rw-r--r--xmlhelp/inc/pch/precompiled_xmlhelp.cxx29
-rw-r--r--xmlhelp/inc/pch/precompiled_xmlhelp.hxx32
-rw-r--r--xmlhelp/prj/build.lst9
-rw-r--r--xmlhelp/prj/d.lst12
-rwxr-xr-xxmlhelp/source/com/sun/star/help/HelpComponent.java114
-rw-r--r--xmlhelp/source/com/sun/star/help/HelpIndexer.java186
-rw-r--r--xmlhelp/source/com/sun/star/help/HelpSearch.java329
-rw-r--r--xmlhelp/source/com/sun/star/help/LuceneHelpWrapper.component37
-rw-r--r--xmlhelp/source/com/sun/star/help/MANIFEST.MF1
-rw-r--r--xmlhelp/source/com/sun/star/help/helplinker.pmk31
-rw-r--r--xmlhelp/source/com/sun/star/help/makefile.mk90
-rw-r--r--xmlhelp/source/cxxhelp/inc/db/EntryProcessor.hxx52
-rw-r--r--xmlhelp/source/cxxhelp/inc/excep/XmlSearchExceptions.hxx107
-rw-r--r--xmlhelp/source/cxxhelp/inc/qe/DocGenerator.hxx104
-rw-r--r--xmlhelp/source/cxxhelp/inc/qe/Query.hxx175
-rw-r--r--xmlhelp/source/cxxhelp/inc/util/CompressorIterator.hxx49
-rw-r--r--xmlhelp/source/cxxhelp/inc/util/ConceptList.hxx70
-rw-r--r--xmlhelp/source/cxxhelp/inc/util/Decompressor.hxx151
-rw-r--r--xmlhelp/source/cxxhelp/inc/util/RandomAccessStream.hxx63
-rw-r--r--xmlhelp/source/cxxhelp/provider/bufferedinputstream.cxx233
-rw-r--r--xmlhelp/source/cxxhelp/provider/bufferedinputstream.hxx113
-rw-r--r--xmlhelp/source/cxxhelp/provider/content.cxx578
-rw-r--r--xmlhelp/source/cxxhelp/provider/content.hxx152
-rw-r--r--xmlhelp/source/cxxhelp/provider/contentcaps.cxx247
-rw-r--r--xmlhelp/source/cxxhelp/provider/databases.cxx2267
-rw-r--r--xmlhelp/source/cxxhelp/provider/databases.hxx560
-rw-r--r--xmlhelp/source/cxxhelp/provider/db.cxx664
-rw-r--r--xmlhelp/source/cxxhelp/provider/db.hxx250
-rw-r--r--xmlhelp/source/cxxhelp/provider/inputstream.cxx223
-rw-r--r--xmlhelp/source/cxxhelp/provider/inputstream.hxx144
-rw-r--r--xmlhelp/source/cxxhelp/provider/makefile.mk97
-rw-r--r--xmlhelp/source/cxxhelp/provider/provider.cxx510
-rw-r--r--xmlhelp/source/cxxhelp/provider/provider.hxx187
-rw-r--r--xmlhelp/source/cxxhelp/provider/resultset.cxx90
-rw-r--r--xmlhelp/source/cxxhelp/provider/resultset.hxx67
-rw-r--r--xmlhelp/source/cxxhelp/provider/resultsetbase.cxx656
-rw-r--r--xmlhelp/source/cxxhelp/provider/resultsetbase.hxx576
-rw-r--r--xmlhelp/source/cxxhelp/provider/resultsetfactory.hxx27
-rw-r--r--xmlhelp/source/cxxhelp/provider/resultsetforquery.cxx449
-rw-r--r--xmlhelp/source/cxxhelp/provider/resultsetforquery.hxx65
-rw-r--r--xmlhelp/source/cxxhelp/provider/resultsetforroot.cxx82
-rw-r--r--xmlhelp/source/cxxhelp/provider/resultsetforroot.hxx65
-rw-r--r--xmlhelp/source/cxxhelp/provider/services.cxx77
-rw-r--r--xmlhelp/source/cxxhelp/provider/urlparameter.cxx1243
-rw-r--r--xmlhelp/source/cxxhelp/provider/urlparameter.hxx258
-rw-r--r--xmlhelp/source/cxxhelp/qe/DocGenerator.cxx61
-rw-r--r--xmlhelp/source/cxxhelp/qe/makefile.mk49
-rw-r--r--xmlhelp/source/cxxhelp/test/abidebug.hxx32
-rw-r--r--xmlhelp/source/cxxhelp/test/makefile.mk69
-rw-r--r--xmlhelp/source/cxxhelp/test/searchdemo.cxx117
-rw-r--r--xmlhelp/source/cxxhelp/util/Decompressor.cxx55
-rw-r--r--xmlhelp/source/cxxhelp/util/makefile.mk50
-rw-r--r--xmlhelp/source/treeview/makefile.mk77
-rw-r--r--xmlhelp/source/treeview/tvfactory.cxx298
-rw-r--r--xmlhelp/source/treeview/tvfactory.hxx138
-rw-r--r--xmlhelp/source/treeview/tvhlp1.component35
-rw-r--r--xmlhelp/source/treeview/tvread.cxx1320
-rw-r--r--xmlhelp/source/treeview/tvread.hxx404
-rw-r--r--xmlhelp/util/delzip0
-rw-r--r--xmlhelp/util/embed.xsl83
-rw-r--r--xmlhelp/util/idxcaption.xsl34
-rw-r--r--xmlhelp/util/idxcontent.xsl104
-rw-r--r--xmlhelp/util/main_transform.xsl972
-rw-r--r--xmlhelp/util/makefile.mk92
-rw-r--r--xmlhelp/util/ucpchelp.xml97
-rw-r--r--xmlhelp/util/ucpchelp1.component35
-rw-r--r--xmloff/dtd/Blocklist.dtd34
-rw-r--r--xmloff/dtd/chart.mod262
-rw-r--r--xmloff/dtd/datastyl.mod208
-rw-r--r--xmloff/dtd/defs.mod56
-rw-r--r--xmloff/dtd/drawing.mod861
-rw-r--r--xmloff/dtd/dtypes.mod143
-rw-r--r--xmloff/dtd/form.mod366
-rw-r--r--xmloff/dtd/meta.mod90
-rw-r--r--xmloff/dtd/nmspace.mod53
-rw-r--r--xmloff/dtd/office.dtd56
-rw-r--r--xmloff/dtd/office.mod245
-rw-r--r--xmloff/dtd/openoffice-2.0-schema.rng92
-rw-r--r--xmloff/dtd/script.mod59
-rw-r--r--xmloff/dtd/settings.mod49
-rw-r--r--xmloff/dtd/style.mod427
-rw-r--r--xmloff/dtd/table.mod496
-rw-r--r--xmloff/dtd/text.mod1099
-rw-r--r--xmloff/inc/AttributeContainerHandler.hxx47
-rw-r--r--xmloff/inc/DashStyle.hxx73
-rw-r--r--xmloff/inc/DomBuilderContext.hxx109
-rw-r--r--xmloff/inc/DomExport.hxx43
-rw-r--r--xmloff/inc/EnhancedCustomShapeToken.hxx166
-rw-r--r--xmloff/inc/GradientStyle.hxx74
-rw-r--r--xmloff/inc/HatchStyle.hxx71
-rw-r--r--xmloff/inc/ImageStyle.hxx60
-rw-r--r--xmloff/inc/MarkerStyle.hxx73
-rw-r--r--xmloff/inc/MetaExportComponent.hxx83
-rw-r--r--xmloff/inc/MetaImportComponent.hxx83
-rw-r--r--xmloff/inc/MultiPropertySetHelper.hxx204
-rw-r--r--xmloff/inc/PageMasterImportContext.hxx67
-rw-r--r--xmloff/inc/PropertySetMerger.hxx38
-rw-r--r--xmloff/inc/RDFaExportHelper.hxx78
-rw-r--r--xmloff/inc/RDFaImportHelper.hxx104
-rw-r--r--xmloff/inc/SchXMLExport.hxx90
-rw-r--r--xmloff/inc/SchXMLImport.hxx220
-rw-r--r--xmloff/inc/StyleMap.hxx95
-rw-r--r--xmloff/inc/TransGradientStyle.hxx70
-rw-r--r--xmloff/inc/VisAreaContext.hxx69
-rw-r--r--xmloff/inc/VisAreaExport.hxx55
-rw-r--r--xmloff/inc/XMLBackgroundImageContext.hxx83
-rw-r--r--xmloff/inc/XMLBackgroundImageExport.hxx65
-rw-r--r--xmloff/inc/XMLBase64Export.hxx60
-rw-r--r--xmloff/inc/XMLBasicExportFilter.hxx72
-rw-r--r--xmloff/inc/XMLBitmapLogicalSizePropertyHandler.hxx62
-rw-r--r--xmloff/inc/XMLBitmapRepeatOffsetPropertyHandler.hxx65
-rw-r--r--xmloff/inc/XMLChartPropertySetMapper.hxx127
-rw-r--r--xmloff/inc/XMLChartStyleContext.hxx67
-rw-r--r--xmloff/inc/XMLClipPropertyHandler.hxx48
-rw-r--r--xmloff/inc/XMLElementPropertyContext.hxx68
-rw-r--r--xmloff/inc/XMLEmbeddedObjectExportFilter.hxx92
-rw-r--r--xmloff/inc/XMLEmbeddedObjectImportContext.hxx79
-rw-r--r--xmloff/inc/XMLEventImportHelper.hxx106
-rw-r--r--xmloff/inc/XMLFillBitmapSizePropertyHandler.hxx62
-rw-r--r--xmloff/inc/XMLFilterServiceNames.h46
-rw-r--r--xmloff/inc/XMLFootnoteConfigurationImportContext.hxx121
-rw-r--r--xmloff/inc/XMLImageMapContext.hxx76
-rw-r--r--xmloff/inc/XMLImageMapExport.hxx119
-rw-r--r--xmloff/inc/XMLIndexBibliographyConfigurationContext.hxx107
-rw-r--r--xmloff/inc/XMLIsPercentagePropertyHandler.hxx52
-rw-r--r--xmloff/inc/XMLLineNumberingImportContext.hxx126
-rw-r--r--xmloff/inc/XMLNumberStylesImport.hxx79
-rw-r--r--xmloff/inc/XMLPercentOrMeasurePropertyHandler.hxx54
-rw-r--r--xmloff/inc/XMLRectangleMembersHandler.hxx64
-rw-r--r--xmloff/inc/XMLReplacementImageContext.hxx72
-rw-r--r--xmloff/inc/XMLScriptContextFactory.hxx67
-rw-r--r--xmloff/inc/XMLScriptExportHandler.hxx59
-rw-r--r--xmloff/inc/XMLShapePropertySetContext.hxx62
-rw-r--r--xmloff/inc/XMLStarBasicContextFactory.hxx68
-rw-r--r--xmloff/inc/XMLStarBasicExportHandler.hxx63
-rw-r--r--xmloff/inc/XMLStringBufferImportContext.hxx71
-rw-r--r--xmloff/inc/XMLTextColumnsContext.hxx79
-rw-r--r--xmloff/inc/XMLTextColumnsExport.hxx58
-rw-r--r--xmloff/inc/XMLTextColumnsPropertyHandler.hxx56
-rw-r--r--xmloff/inc/XMLTextHeaderFooterContext.hxx77
-rw-r--r--xmloff/inc/XMLTextListAutoStylePool.hxx84
-rw-r--r--xmloff/inc/anim.hxx104
-rw-r--r--xmloff/inc/animationexport.hxx56
-rw-r--r--xmloff/inc/animationimport.hxx72
-rw-r--r--xmloff/inc/animations.hxx67
-rw-r--r--xmloff/inc/animimp.hxx57
-rw-r--r--xmloff/inc/functional.hxx27
-rw-r--r--xmloff/inc/i18nmap.hxx69
-rw-r--r--xmloff/inc/makefile.mk48
-rw-r--r--xmloff/inc/numehelp.hxx129
-rw-r--r--xmloff/inc/pch/precompiled_xmloff.cxx29
-rw-r--r--xmloff/inc/pch/precompiled_xmloff.hxx480
-rw-r--r--xmloff/inc/txtflde.hxx546
-rw-r--r--xmloff/inc/txtfldi.hxx1593
-rw-r--r--xmloff/inc/txtimppr.hxx81
-rw-r--r--xmloff/inc/txtlists.hxx194
-rw-r--r--xmloff/inc/txtvfldi.hxx618
-rw-r--r--xmloff/inc/unoatrcn.hxx89
-rw-r--r--xmloff/inc/unointerfacetouniqueidentifiermapper.hxx52
-rw-r--r--xmloff/inc/xexptran.hxx201
-rw-r--r--xmloff/inc/xformsexport.hxx60
-rw-r--r--xmloff/inc/xformsimport.hxx91
-rw-r--r--xmloff/inc/xmlcnitm.hxx90
-rw-r--r--xmloff/inc/xmlehelp.hxx51
-rw-r--r--xmloff/inc/xmlerror.hxx166
-rw-r--r--xmloff/inc/xmlnmspe.hxx109
-rw-r--r--xmloff/inc/xmloff/DocumentSettingsContext.hxx63
-rw-r--r--xmloff/inc/xmloff/EnumPropertyHdl.hxx52
-rw-r--r--xmloff/inc/xmloff/NamedBoolPropertyHdl.hxx62
-rw-r--r--xmloff/inc/xmloff/PageMasterStyleMap.hxx155
-rw-r--r--xmloff/inc/xmloff/ProgressBarHelper.hxx78
-rw-r--r--xmloff/inc/xmloff/PropertySetInfoHash.hxx65
-rw-r--r--xmloff/inc/xmloff/PropertySetInfoKey.hxx67
-rw-r--r--xmloff/inc/xmloff/SchXMLExportHelper.hxx73
-rw-r--r--xmloff/inc/xmloff/SchXMLImportHelper.hxx169
-rw-r--r--xmloff/inc/xmloff/SettingsExportHelper.hxx111
-rw-r--r--xmloff/inc/xmloff/SinglePropertySetInfoCache.hxx79
-rw-r--r--xmloff/inc/xmloff/WordWrapPropertyHdl.hxx53
-rw-r--r--xmloff/inc/xmloff/XMLBase64ImportContext.hxx64
-rw-r--r--xmloff/inc/xmloff/XMLCharContext.hxx71
-rw-r--r--xmloff/inc/xmloff/XMLConstantsPropertyHandler.hxx69
-rw-r--r--xmloff/inc/xmloff/XMLEventExport.hxx139
-rw-r--r--xmloff/inc/xmloff/XMLEventsImportContext.hxx138
-rw-r--r--xmloff/inc/xmloff/XMLFontAutoStylePool.hxx75
-rw-r--r--xmloff/inc/xmloff/XMLFontStylesContext.hxx99
-rw-r--r--xmloff/inc/xmloff/XMLGraphicsDefaultStyle.hxx63
-rw-r--r--xmloff/inc/xmloff/XMLPageExport.hxx114
-rw-r--r--xmloff/inc/xmloff/XMLSettingsExportContext.hxx66
-rw-r--r--xmloff/inc/xmloff/XMLShapeStyleContext.hxx76
-rw-r--r--xmloff/inc/xmloff/XMLStringVector.hxx39
-rw-r--r--xmloff/inc/xmloff/XMLTextMasterPageContext.hxx92
-rw-r--r--xmloff/inc/xmloff/XMLTextMasterPageExport.hxx71
-rw-r--r--xmloff/inc/xmloff/XMLTextMasterStylesContext.hxx62
-rw-r--r--xmloff/inc/xmloff/XMLTextShapeStyleContext.hxx72
-rw-r--r--xmloff/inc/xmloff/XMLTextTableContext.hxx59
-rw-r--r--xmloff/inc/xmloff/animexp.hxx52
-rw-r--r--xmloff/inc/xmloff/attrlist.hxx93
-rw-r--r--xmloff/inc/xmloff/contextid.hxx54
-rw-r--r--xmloff/inc/xmloff/controlpropertyhdl.hxx143
-rw-r--r--xmloff/inc/xmloff/dllapi.h40
-rw-r--r--xmloff/inc/xmloff/families.hxx116
-rw-r--r--xmloff/inc/xmloff/formlayerexport.hxx212
-rw-r--r--xmloff/inc/xmloff/formlayerimport.hxx171
-rw-r--r--xmloff/inc/xmloff/formsimp.hxx49
-rw-r--r--xmloff/inc/xmloff/maptype.hxx74
-rw-r--r--xmloff/inc/xmloff/nmspmap.hxx185
-rw-r--r--xmloff/inc/xmloff/odffields.hxx56
-rw-r--r--xmloff/inc/xmloff/prhdlfac.hxx111
-rw-r--r--xmloff/inc/xmloff/prstylei.hxx109
-rw-r--r--xmloff/inc/xmloff/shapeexport.hxx342
-rw-r--r--xmloff/inc/xmloff/shapeimport.hxx439
-rw-r--r--xmloff/inc/xmloff/styleexp.hxx142
-rw-r--r--xmloff/inc/xmloff/table/XMLTableExport.hxx112
-rw-r--r--xmloff/inc/xmloff/table/XMLTableImport.hxx78
-rw-r--r--xmloff/inc/xmloff/txtimp.hxx758
-rw-r--r--xmloff/inc/xmloff/txtparae.hxx745
-rw-r--r--xmloff/inc/xmloff/txtprmap.hxx202
-rw-r--r--xmloff/inc/xmloff/txtstyle.hxx60
-rw-r--r--xmloff/inc/xmloff/txtstyli.hxx120
-rw-r--r--xmloff/inc/xmloff/uniref.hxx229
-rw-r--r--xmloff/inc/xmloff/xmlaustp.hxx137
-rw-r--r--xmloff/inc/xmloff/xmlcnimp.hxx129
-rw-r--r--xmloff/inc/xmloff/xmlement.hxx60
-rw-r--r--xmloff/inc/xmloff/xmlevent.hxx152
-rw-r--r--xmloff/inc/xmloff/xmlexp.hxx733
-rw-r--r--xmloff/inc/xmloff/xmlexppr.hxx204
-rw-r--r--xmloff/inc/xmloff/xmlictxt.hxx108
-rw-r--r--xmloff/inc/xmloff/xmlimp.hxx536
-rw-r--r--xmloff/inc/xmloff/xmlimppr.hxx211
-rw-r--r--xmloff/inc/xmloff/xmlmetae.hxx127
-rw-r--r--xmloff/inc/xmloff/xmlmetai.hxx84
-rw-r--r--xmloff/inc/xmloff/xmlnume.hxx116
-rw-r--r--xmloff/inc/xmloff/xmlnumfe.hxx140
-rw-r--r--xmloff/inc/xmloff/xmlnumfi.hxx233
-rw-r--r--xmloff/inc/xmloff/xmlnumi.hxx111
-rw-r--r--xmloff/inc/xmloff/xmlprcon.hxx78
-rw-r--r--xmloff/inc/xmloff/xmlprhdl.hxx64
-rw-r--r--xmloff/inc/xmloff/xmlprmap.hxx189
-rw-r--r--xmloff/inc/xmloff/xmlscripti.hxx61
-rw-r--r--xmloff/inc/xmloff/xmlstyle.hxx269
-rw-r--r--xmloff/inc/xmloff/xmltkmap.hxx67
-rw-r--r--xmloff/inc/xmloff/xmltoken.hxx3139
-rw-r--r--xmloff/inc/xmloff/xmltypes.hxx286
-rw-r--r--xmloff/inc/xmloff/xmluconv.hxx445
-rw-r--r--xmloff/inc/xmlreg.hxx43
-rw-r--r--xmloff/inc/xmltabe.hxx60
-rw-r--r--xmloff/inc/xmltabi.hxx65
-rw-r--r--xmloff/inc/xmlversion.hxx155
-rw-r--r--xmloff/prj/build.lst17
-rw-r--r--xmloff/prj/d.lst120
-rw-r--r--xmloff/qa/unoapi/Test.java51
-rw-r--r--xmloff/qa/unoapi/knownissues.xcl25
-rw-r--r--xmloff/qa/unoapi/makefile.mk48
-rw-r--r--xmloff/qa/unoapi/testdocuments/emptyChart.sdsbin0 -> 44544 bytes-rw-r--r--xmloff/qa/unoapi/xmloff.sce26
-rw-r--r--xmloff/source/chart/ColorPropertySet.cxx225
-rw-r--r--xmloff/source/chart/ColorPropertySet.hxx126
-rw-r--r--xmloff/source/chart/MultiPropertySetHandler.hxx294
-rw-r--r--xmloff/source/chart/PropertyMap.hxx325
-rw-r--r--xmloff/source/chart/PropertyMaps.cxx618
-rw-r--r--xmloff/source/chart/SchXMLAutoStylePoolP.cxx91
-rw-r--r--xmloff/source/chart/SchXMLAutoStylePoolP.hxx53
-rwxr-xr-xxmloff/source/chart/SchXMLCalculationSettingsContext.cxx86
-rwxr-xr-xxmloff/source/chart/SchXMLCalculationSettingsContext.hxx51
-rw-r--r--xmloff/source/chart/SchXMLChartContext.cxx1432
-rw-r--r--xmloff/source/chart/SchXMLChartContext.hxx189
-rw-r--r--xmloff/source/chart/SchXMLExport.cxx4037
-rw-r--r--xmloff/source/chart/SchXMLImport.cxx960
-rw-r--r--xmloff/source/chart/SchXMLParagraphContext.cxx118
-rw-r--r--xmloff/source/chart/SchXMLParagraphContext.hxx64
-rw-r--r--xmloff/source/chart/SchXMLPlotAreaContext.cxx2130
-rw-r--r--xmloff/source/chart/SchXMLPlotAreaContext.hxx391
-rw-r--r--xmloff/source/chart/SchXMLSeries2Context.cxx1073
-rw-r--r--xmloff/source/chart/SchXMLSeries2Context.hxx135
-rw-r--r--xmloff/source/chart/SchXMLSeriesHelper.cxx301
-rw-r--r--xmloff/source/chart/SchXMLSeriesHelper.hxx80
-rw-r--r--xmloff/source/chart/SchXMLTableContext.cxx1218
-rw-r--r--xmloff/source/chart/SchXMLTableContext.hxx229
-rwxr-xr-xxmloff/source/chart/SchXMLTextListContext.cxx136
-rwxr-xr-xxmloff/source/chart/SchXMLTextListContext.hxx58
-rw-r--r--xmloff/source/chart/SchXMLTools.cxx897
-rw-r--r--xmloff/source/chart/SchXMLTools.hxx152
-rw-r--r--xmloff/source/chart/XMLAxisPositionPropertyHdl.cxx128
-rw-r--r--xmloff/source/chart/XMLAxisPositionPropertyHdl.hxx45
-rw-r--r--xmloff/source/chart/XMLChartPropertyContext.cxx82
-rw-r--r--xmloff/source/chart/XMLChartPropertyContext.hxx58
-rw-r--r--xmloff/source/chart/XMLChartStyleContext.cxx161
-rw-r--r--xmloff/source/chart/XMLErrorBarStylePropertyHdl.cxx68
-rw-r--r--xmloff/source/chart/XMLErrorBarStylePropertyHdl.hxx41
-rw-r--r--xmloff/source/chart/XMLErrorIndicatorPropertyHdl.cxx105
-rw-r--r--xmloff/source/chart/XMLErrorIndicatorPropertyHdl.hxx46
-rw-r--r--xmloff/source/chart/XMLLabelSeparatorContext.cxx87
-rw-r--r--xmloff/source/chart/XMLLabelSeparatorContext.hxx54
-rw-r--r--xmloff/source/chart/XMLSymbolImageContext.cxx150
-rw-r--r--xmloff/source/chart/XMLSymbolImageContext.hxx59
-rw-r--r--xmloff/source/chart/XMLSymbolTypePropertyHdl.cxx170
-rw-r--r--xmloff/source/chart/XMLSymbolTypePropertyHdl.hxx46
-rw-r--r--xmloff/source/chart/XMLTextOrientationHdl.cxx80
-rw-r--r--xmloff/source/chart/XMLTextOrientationHdl.hxx46
-rw-r--r--xmloff/source/chart/contexts.cxx233
-rw-r--r--xmloff/source/chart/contexts.hxx115
-rw-r--r--xmloff/source/chart/makefile.mk70
-rw-r--r--xmloff/source/chart/transporttypes.cxx38
-rw-r--r--xmloff/source/chart/transporttypes.hxx222
-rw-r--r--xmloff/source/core/DocumentSettingsContext.cxx1014
-rw-r--r--xmloff/source/core/DomBuilderContext.cxx264
-rw-r--r--xmloff/source/core/DomExport.cxx305
-rw-r--r--xmloff/source/core/ProgressBarHelper.cxx139
-rw-r--r--xmloff/source/core/PropertySetMerger.cxx267
-rw-r--r--xmloff/source/core/RDFaExportHelper.cxx231
-rw-r--r--xmloff/source/core/RDFaImportHelper.cxx501
-rw-r--r--xmloff/source/core/SettingsExportHelper.cxx561
-rw-r--r--xmloff/source/core/XMLBase64Export.cxx95
-rw-r--r--xmloff/source/core/XMLBase64ImportContext.cxx91
-rw-r--r--xmloff/source/core/XMLBasicExportFilter.cxx125
-rw-r--r--xmloff/source/core/XMLEmbeddedObjectExportFilter.cxx182
-rw-r--r--xmloff/source/core/XMLEmbeddedObjectImportContext.cxx395
-rw-r--r--xmloff/source/core/attrlist.cxx301
-rw-r--r--xmloff/source/core/facreg.cxx283
-rw-r--r--xmloff/source/core/i18nmap.cxx126
-rw-r--r--xmloff/source/core/makefile.mk76
-rw-r--r--xmloff/source/core/nmspmap.cxx593
-rw-r--r--xmloff/source/core/unoatrcn.cxx315
-rw-r--r--xmloff/source/core/unointerfacetouniqueidentifiermapper.cxx171
-rw-r--r--xmloff/source/core/xmlcnitm.cxx218
-rw-r--r--xmloff/source/core/xmlehelp.cxx500
-rw-r--r--xmloff/source/core/xmlenums.hxx55
-rw-r--r--xmloff/source/core/xmlerror.cxx257
-rw-r--r--xmloff/source/core/xmlexp.cxx2759
-rw-r--r--xmloff/source/core/xmlictxt.cxx84
-rw-r--r--xmloff/source/core/xmlimp.cxx2015
-rw-r--r--xmloff/source/core/xmltkmap.cxx122
-rw-r--r--xmloff/source/core/xmltoken.cxx3196
-rw-r--r--xmloff/source/core/xmluconv.cxx2306
-rw-r--r--xmloff/source/draw/EnhancedCustomShapeToken.cxx221
-rw-r--r--xmloff/source/draw/XMLGraphicsDefaultStyle.cxx111
-rw-r--r--xmloff/source/draw/XMLImageMapContext.cxx723
-rw-r--r--xmloff/source/draw/XMLImageMapExport.cxx386
-rw-r--r--xmloff/source/draw/XMLNumberStyles.cxx743
-rw-r--r--xmloff/source/draw/XMLNumberStylesExport.hxx53
-rw-r--r--xmloff/source/draw/XMLReplacementImageContext.cxx136
-rw-r--r--xmloff/source/draw/XMLShapePropertySetContext.cxx116
-rw-r--r--xmloff/source/draw/XMLShapeStyleContext.cxx326
-rw-r--r--xmloff/source/draw/animationexport.cxx1782
-rw-r--r--xmloff/source/draw/animationimport.cxx1523
-rw-r--r--xmloff/source/draw/animexp.cxx553
-rw-r--r--xmloff/source/draw/animimp.cxx694
-rw-r--r--xmloff/source/draw/descriptionimp.cxx93
-rw-r--r--xmloff/source/draw/descriptionimp.hxx60
-rw-r--r--xmloff/source/draw/eventimp.cxx575
-rw-r--r--xmloff/source/draw/eventimp.hxx57
-rw-r--r--xmloff/source/draw/layerexp.cxx109
-rw-r--r--xmloff/source/draw/layerexp.hxx40
-rw-r--r--xmloff/source/draw/layerimp.cxx180
-rw-r--r--xmloff/source/draw/layerimp.hxx58
-rw-r--r--xmloff/source/draw/makefile.mk85
-rw-r--r--xmloff/source/draw/numithdl.cxx63
-rw-r--r--xmloff/source/draw/numithdl.hxx52
-rw-r--r--xmloff/source/draw/propimp0.cxx272
-rw-r--r--xmloff/source/draw/propimp0.hxx78
-rw-r--r--xmloff/source/draw/sdpropls.cxx1764
-rw-r--r--xmloff/source/draw/sdpropls.hxx334
-rw-r--r--xmloff/source/draw/sdxmlexp.cxx2993
-rw-r--r--xmloff/source/draw/sdxmlexp_impl.hxx228
-rw-r--r--xmloff/source/draw/sdxmlimp.cxx1101
-rw-r--r--xmloff/source/draw/sdxmlimp_impl.hxx339
-rw-r--r--xmloff/source/draw/shapeexport.cxx1303
-rw-r--r--xmloff/source/draw/shapeexport2.cxx2056
-rw-r--r--xmloff/source/draw/shapeexport3.cxx498
-rw-r--r--xmloff/source/draw/shapeexport4.cxx1244
-rw-r--r--xmloff/source/draw/shapeimport.cxx1466
-rw-r--r--xmloff/source/draw/viewcontext.cxx91
-rw-r--r--xmloff/source/draw/viewcontext.hxx54
-rw-r--r--xmloff/source/draw/xexptran.cxx3117
-rw-r--r--xmloff/source/draw/ximp3dobject.cxx613
-rw-r--r--xmloff/source/draw/ximp3dobject.hxx179
-rw-r--r--xmloff/source/draw/ximp3dscene.cxx497
-rw-r--r--xmloff/source/draw/ximp3dscene.hxx81
-rw-r--r--xmloff/source/draw/ximpbody.cxx388
-rw-r--r--xmloff/source/draw/ximpbody.hxx79
-rw-r--r--xmloff/source/draw/ximpcustomshape.cxx1384
-rw-r--r--xmloff/source/draw/ximpcustomshape.hxx77
-rw-r--r--xmloff/source/draw/ximpgrp.cxx130
-rw-r--r--xmloff/source/draw/ximpgrp.hxx72
-rw-r--r--xmloff/source/draw/ximplink.cxx102
-rw-r--r--xmloff/source/draw/ximplink.hxx66
-rw-r--r--xmloff/source/draw/ximpnote.cxx142
-rw-r--r--xmloff/source/draw/ximpnote.hxx58
-rw-r--r--xmloff/source/draw/ximppage.cxx647
-rw-r--r--xmloff/source/draw/ximppage.hxx96
-rw-r--r--xmloff/source/draw/ximpshap.cxx3743
-rw-r--r--xmloff/source/draw/ximpshap.hxx664
-rw-r--r--xmloff/source/draw/ximpshow.cxx282
-rw-r--r--xmloff/source/draw/ximpshow.hxx57
-rw-r--r--xmloff/source/draw/ximpstyl.cxx1692
-rw-r--r--xmloff/source/draw/ximpstyl.hxx302
-rw-r--r--xmloff/source/forms/attriblistmerge.cxx170
-rw-r--r--xmloff/source/forms/attriblistmerge.hxx85
-rw-r--r--xmloff/source/forms/callbacks.hxx95
-rw-r--r--xmloff/source/forms/controlelement.cxx70
-rw-r--r--xmloff/source/forms/controlelement.hxx93
-rw-r--r--xmloff/source/forms/controlpropertyhdl.cxx390
-rw-r--r--xmloff/source/forms/controlpropertymap.cxx156
-rw-r--r--xmloff/source/forms/controlpropertymap.hxx68
-rw-r--r--xmloff/source/forms/elementexport.cxx2153
-rw-r--r--xmloff/source/forms/elementexport.hxx322
-rw-r--r--xmloff/source/forms/elementimport.cxx2038
-rw-r--r--xmloff/source/forms/elementimport.hxx752
-rw-r--r--xmloff/source/forms/elementimport_impl.hxx123
-rw-r--r--xmloff/source/forms/eventexport.cxx160
-rw-r--r--xmloff/source/forms/eventexport.hxx86
-rw-r--r--xmloff/source/forms/eventimport.cxx163
-rw-r--r--xmloff/source/forms/eventimport.hxx95
-rw-r--r--xmloff/source/forms/formattributes.cxx341
-rw-r--r--xmloff/source/forms/formattributes.hxx363
-rw-r--r--xmloff/source/forms/formcellbinding.cxx490
-rw-r--r--xmloff/source/forms/formcellbinding.hxx279
-rw-r--r--xmloff/source/forms/formenums.cxx348
-rw-r--r--xmloff/source/forms/formenums.hxx80
-rw-r--r--xmloff/source/forms/formevents.cxx85
-rw-r--r--xmloff/source/forms/formevents.hxx47
-rw-r--r--xmloff/source/forms/formlayerexport.cxx187
-rw-r--r--xmloff/source/forms/formlayerimport.cxx129
-rw-r--r--xmloff/source/forms/formsimp.cxx58
-rw-r--r--xmloff/source/forms/formstyles.cxx66
-rw-r--r--xmloff/source/forms/formstyles.hxx72
-rw-r--r--xmloff/source/forms/gridcolumnproptranslator.cxx345
-rw-r--r--xmloff/source/forms/gridcolumnproptranslator.hxx84
-rw-r--r--xmloff/source/forms/ifacecompare.hxx70
-rw-r--r--xmloff/source/forms/layerexport.cxx833
-rw-r--r--xmloff/source/forms/layerexport.hxx320
-rw-r--r--xmloff/source/forms/layerimport.cxx657
-rw-r--r--xmloff/source/forms/layerimport.hxx227
-rw-r--r--xmloff/source/forms/logging.cxx60
-rw-r--r--xmloff/source/forms/logging.hxx75
-rw-r--r--xmloff/source/forms/makefile.mk70
-rw-r--r--xmloff/source/forms/officeforms.cxx193
-rw-r--r--xmloff/source/forms/officeforms.hxx104
-rw-r--r--xmloff/source/forms/propertyexport.cxx729
-rw-r--r--xmloff/source/forms/propertyexport.hxx410
-rw-r--r--xmloff/source/forms/propertyimport.cxx641
-rw-r--r--xmloff/source/forms/propertyimport.hxx253
-rw-r--r--xmloff/source/forms/strings.cxx37
-rw-r--r--xmloff/source/forms/strings.hxx283
-rw-r--r--xmloff/source/forms/valueproperties.cxx203
-rw-r--r--xmloff/source/forms/valueproperties.hxx84
-rw-r--r--xmloff/source/meta/MetaExportComponent.cxx258
-rw-r--r--xmloff/source/meta/MetaImportComponent.cxx118
-rw-r--r--xmloff/source/meta/makefile.mk53
-rw-r--r--xmloff/source/meta/xmlmetae.cxx528
-rw-r--r--xmloff/source/meta/xmlmetai.cxx277
-rw-r--r--xmloff/source/meta/xmlversion.cxx541
-rw-r--r--xmloff/source/script/XMLEventExport.cxx367
-rw-r--r--xmloff/source/script/XMLEventImportHelper.cxx179
-rw-r--r--xmloff/source/script/XMLEventsImportContext.cxx247
-rw-r--r--xmloff/source/script/XMLScriptContextFactory.cxx102
-rw-r--r--xmloff/source/script/XMLScriptExportHandler.cxx88
-rw-r--r--xmloff/source/script/XMLStarBasicContextFactory.cxx139
-rw-r--r--xmloff/source/script/XMLStarBasicExportHandler.cxx111
-rw-r--r--xmloff/source/script/makefile.mk56
-rw-r--r--xmloff/source/script/xmlbasici.cxx197
-rw-r--r--xmloff/source/script/xmlbasici.hxx88
-rw-r--r--xmloff/source/script/xmlscripti.cxx188
-rw-r--r--xmloff/source/style/AttributeContainerHandler.cxx104
-rw-r--r--xmloff/source/style/DashStyle.cxx332
-rw-r--r--xmloff/source/style/DrawAspectHdl.cxx89
-rw-r--r--xmloff/source/style/DrawAspectHdl.hxx45
-rw-r--r--xmloff/source/style/EnumPropertyHdl.cxx98
-rw-r--r--xmloff/source/style/FillStyleContext.cxx361
-rw-r--r--xmloff/source/style/FillStyleContext.hxx167
-rw-r--r--xmloff/source/style/GradientStyle.cxx344
-rw-r--r--xmloff/source/style/HatchStyle.cxx263
-rw-r--r--xmloff/source/style/ImageStyle.cxx225
-rw-r--r--xmloff/source/style/MarkerStyle.cxx286
-rw-r--r--xmloff/source/style/MultiPropertySetHelper.cxx216
-rw-r--r--xmloff/source/style/NamedBoolPropertyHdl.cxx82
-rw-r--r--xmloff/source/style/PageHeaderFooterContext.cxx100
-rw-r--r--xmloff/source/style/PageHeaderFooterContext.hxx63
-rw-r--r--xmloff/source/style/PageMasterExportPropMapper.cxx444
-rw-r--r--xmloff/source/style/PageMasterExportPropMapper.hxx79
-rw-r--r--xmloff/source/style/PageMasterImportContext.cxx201
-rw-r--r--xmloff/source/style/PageMasterImportPropMapper.cxx341
-rw-r--r--xmloff/source/style/PageMasterImportPropMapper.hxx62
-rw-r--r--xmloff/source/style/PageMasterPropHdl.cxx426
-rw-r--r--xmloff/source/style/PageMasterPropHdl.hxx180
-rw-r--r--xmloff/source/style/PageMasterPropHdlFactory.cxx150
-rw-r--r--xmloff/source/style/PageMasterPropHdlFactory.hxx47
-rw-r--r--xmloff/source/style/PageMasterPropMapper.cxx63
-rw-r--r--xmloff/source/style/PageMasterPropMapper.hxx46
-rw-r--r--xmloff/source/style/PageMasterStyleMap.cxx191
-rw-r--r--xmloff/source/style/PagePropertySetContext.cxx144
-rw-r--r--xmloff/source/style/PagePropertySetContext.hxx66
-rw-r--r--xmloff/source/style/SinglePropertySetInfoCache.cxx89
-rw-r--r--xmloff/source/style/StyleMap.cxx94
-rw-r--r--xmloff/source/style/TransGradientStyle.cxx329
-rw-r--r--xmloff/source/style/VisAreaContext.cxx134
-rw-r--r--xmloff/source/style/VisAreaExport.cxx84
-rw-r--r--xmloff/source/style/WordWrapPropertyHdl.cxx102
-rw-r--r--xmloff/source/style/XMLBackgroundImageContext.cxx414
-rw-r--r--xmloff/source/style/XMLBackgroundImageExport.cxx174
-rw-r--r--xmloff/source/style/XMLBitmapLogicalSizePropertyHandler.cxx66
-rw-r--r--xmloff/source/style/XMLBitmapRepeatOffsetPropertyHandler.cxx105
-rw-r--r--xmloff/source/style/XMLClipPropertyHandler.cxx146
-rw-r--r--xmloff/source/style/XMLConstantsPropertyHandler.cxx113
-rw-r--r--xmloff/source/style/XMLElementPropertyContext.cxx60
-rw-r--r--xmloff/source/style/XMLFillBitmapSizePropertyHandler.cxx99
-rw-r--r--xmloff/source/style/XMLFontAutoStylePool.cxx294
-rw-r--r--xmloff/source/style/XMLFontStylesContext.cxx285
-rw-r--r--xmloff/source/style/XMLFootnoteSeparatorExport.cxx167
-rw-r--r--xmloff/source/style/XMLFootnoteSeparatorExport.hxx62
-rw-r--r--xmloff/source/style/XMLFootnoteSeparatorImport.cxx193
-rw-r--r--xmloff/source/style/XMLFootnoteSeparatorImport.hxx77
-rw-r--r--xmloff/source/style/XMLIsPercentagePropertyHandler.cxx62
-rw-r--r--xmloff/source/style/XMLPageExport.cxx282
-rw-r--r--xmloff/source/style/XMLPercentOrMeasurePropertyHandler.cxx98
-rw-r--r--xmloff/source/style/XMLRectangleMembersHandler.cxx125
-rw-r--r--xmloff/source/style/adjushdl.cxx136
-rw-r--r--xmloff/source/style/adjushdl.hxx57
-rw-r--r--xmloff/source/style/backhdl.cxx298
-rw-r--r--xmloff/source/style/backhdl.hxx53
-rw-r--r--xmloff/source/style/bordrhdl.cxx454
-rw-r--r--xmloff/source/style/bordrhdl.hxx55
-rw-r--r--xmloff/source/style/breakhdl.cxx193
-rw-r--r--xmloff/source/style/breakhdl.hxx57
-rw-r--r--xmloff/source/style/cdouthdl.cxx330
-rw-r--r--xmloff/source/style/cdouthdl.hxx72
-rw-r--r--xmloff/source/style/chrhghdl.cxx167
-rw-r--r--xmloff/source/style/chrhghdl.hxx64
-rw-r--r--xmloff/source/style/chrlohdl.cxx144
-rw-r--r--xmloff/source/style/chrlohdl.hxx59
-rw-r--r--xmloff/source/style/csmaphdl.cxx138
-rw-r--r--xmloff/source/style/csmaphdl.hxx54
-rw-r--r--xmloff/source/style/durationhdl.cxx81
-rw-r--r--xmloff/source/style/durationhdl.hxx45
-rw-r--r--xmloff/source/style/escphdl.cxx172
-rw-r--r--xmloff/source/style/escphdl.hxx55
-rw-r--r--xmloff/source/style/fonthdl.cxx319
-rw-r--r--xmloff/source/style/fonthdl.hxx82
-rw-r--r--xmloff/source/style/impastp1.cxx132
-rw-r--r--xmloff/source/style/impastp2.cxx61
-rw-r--r--xmloff/source/style/impastp3.cxx185
-rw-r--r--xmloff/source/style/impastp4.cxx527
-rw-r--r--xmloff/source/style/impastpl.hxx227
-rw-r--r--xmloff/source/style/kernihdl.cxx89
-rw-r--r--xmloff/source/style/kernihdl.hxx45
-rw-r--r--xmloff/source/style/lspachdl.cxx195
-rw-r--r--xmloff/source/style/lspachdl.hxx64
-rw-r--r--xmloff/source/style/makefile.mk219
-rw-r--r--xmloff/source/style/numehelp.cxx558
-rw-r--r--xmloff/source/style/opaquhdl.cxx82
-rw-r--r--xmloff/source/style/opaquhdl.hxx45
-rw-r--r--xmloff/source/style/postuhdl.cxx93
-rw-r--r--xmloff/source/style/postuhdl.hxx45
-rw-r--r--xmloff/source/style/prhdlfac.cxx450
-rw-r--r--xmloff/source/style/prstylei.cxx422
-rw-r--r--xmloff/source/style/shadwhdl.cxx175
-rw-r--r--xmloff/source/style/shadwhdl.hxx45
-rw-r--r--xmloff/source/style/shdwdhdl.cxx84
-rw-r--r--xmloff/source/style/shdwdhdl.hxx45
-rw-r--r--xmloff/source/style/styleexp.cxx566
-rw-r--r--xmloff/source/style/tabsthdl.cxx92
-rw-r--r--xmloff/source/style/tabsthdl.hxx48
-rw-r--r--xmloff/source/style/undlihdl.cxx381
-rw-r--r--xmloff/source/style/undlihdl.hxx63
-rw-r--r--xmloff/source/style/uniref.cxx40
-rw-r--r--xmloff/source/style/weighhdl.cxx175
-rw-r--r--xmloff/source/style/weighhdl.hxx46
-rw-r--r--xmloff/source/style/xmlaustp.cxx448
-rw-r--r--xmloff/source/style/xmlbahdl.cxx944
-rw-r--r--xmloff/source/style/xmlbahdl.hxx307
-rw-r--r--xmloff/source/style/xmlexppr.cxx1146
-rw-r--r--xmloff/source/style/xmlimppr.cxx784
-rw-r--r--xmloff/source/style/xmlnume.cxx970
-rw-r--r--xmloff/source/style/xmlnumfe.cxx1820
-rw-r--r--xmloff/source/style/xmlnumfi.cxx2418
-rw-r--r--xmloff/source/style/xmlnumi.cxx1408
-rw-r--r--xmloff/source/style/xmlprcon.cxx104
-rw-r--r--xmloff/source/style/xmlprhdl.cxx41
-rw-r--r--xmloff/source/style/xmlprmap.cxx252
-rw-r--r--xmloff/source/style/xmlstyle.cxx976
-rw-r--r--xmloff/source/style/xmltabe.cxx142
-rw-r--r--xmloff/source/style/xmltabi.cxx293
-rw-r--r--xmloff/source/table/XMLTableExport.cxx595
-rw-r--r--xmloff/source/table/XMLTableImport.cxx826
-rw-r--r--xmloff/source/table/makefile.mk48
-rw-r--r--xmloff/source/table/table.hxx45
-rw-r--r--xmloff/source/table/tabledesignsimporter.cxx103
-rw-r--r--xmloff/source/text/XMLAnchorTypePropHdl.hxx54
-rw-r--r--xmloff/source/text/XMLAutoMarkFileContext.cxx95
-rw-r--r--xmloff/source/text/XMLAutoMarkFileContext.hxx64
-rw-r--r--xmloff/source/text/XMLAutoTextContainerEventImport.cxx82
-rw-r--r--xmloff/source/text/XMLAutoTextContainerEventImport.hxx75
-rw-r--r--xmloff/source/text/XMLAutoTextEventExport.cxx297
-rw-r--r--xmloff/source/text/XMLAutoTextEventExport.hxx159
-rw-r--r--xmloff/source/text/XMLAutoTextEventImport.cxx144
-rw-r--r--xmloff/source/text/XMLAutoTextEventImport.hxx99
-rw-r--r--xmloff/source/text/XMLCalculationSettingsContext.cxx94
-rw-r--r--xmloff/source/text/XMLCalculationSettingsContext.hxx49
-rw-r--r--xmloff/source/text/XMLChangeElementImportContext.cxx113
-rw-r--r--xmloff/source/text/XMLChangeElementImportContext.hxx85
-rw-r--r--xmloff/source/text/XMLChangeImportContext.cxx100
-rw-r--r--xmloff/source/text/XMLChangeImportContext.hxx85
-rw-r--r--xmloff/source/text/XMLChangeInfoContext.cxx109
-rw-r--r--xmloff/source/text/XMLChangeInfoContext.hxx87
-rw-r--r--xmloff/source/text/XMLChangedRegionImportContext.cxx196
-rw-r--r--xmloff/source/text/XMLChangedRegionImportContext.hxx98
-rw-r--r--xmloff/source/text/XMLFootnoteBodyImportContext.cxx74
-rw-r--r--xmloff/source/text/XMLFootnoteBodyImportContext.hxx68
-rw-r--r--xmloff/source/text/XMLFootnoteConfigurationImportContext.cxx457
-rw-r--r--xmloff/source/text/XMLFootnoteImportContext.cxx243
-rw-r--r--xmloff/source/text/XMLFootnoteImportContext.hxx97
-rw-r--r--xmloff/source/text/XMLIndexAlphabeticalSourceContext.cxx271
-rw-r--r--xmloff/source/text/XMLIndexAlphabeticalSourceContext.hxx103
-rw-r--r--xmloff/source/text/XMLIndexBibliographyConfigurationContext.cxx297
-rw-r--r--xmloff/source/text/XMLIndexBibliographyEntryContext.cxx181
-rw-r--r--xmloff/source/text/XMLIndexBibliographyEntryContext.hxx84
-rw-r--r--xmloff/source/text/XMLIndexBibliographySourceContext.cxx111
-rw-r--r--xmloff/source/text/XMLIndexBibliographySourceContext.hxx76
-rw-r--r--xmloff/source/text/XMLIndexBodyContext.cxx77
-rw-r--r--xmloff/source/text/XMLIndexBodyContext.hxx79
-rw-r--r--xmloff/source/text/XMLIndexChapterInfoEntryContext.cxx205
-rw-r--r--xmloff/source/text/XMLIndexChapterInfoEntryContext.hxx81
-rw-r--r--xmloff/source/text/XMLIndexIllustrationSourceContext.cxx92
-rw-r--r--xmloff/source/text/XMLIndexIllustrationSourceContext.hxx72
-rw-r--r--xmloff/source/text/XMLIndexMarkExport.cxx267
-rw-r--r--xmloff/source/text/XMLIndexMarkExport.hxx117
-rw-r--r--xmloff/source/text/XMLIndexObjectSourceContext.cxx190
-rw-r--r--xmloff/source/text/XMLIndexObjectSourceContext.hxx87
-rw-r--r--xmloff/source/text/XMLIndexSimpleEntryContext.cxx146
-rw-r--r--xmloff/source/text/XMLIndexSimpleEntryContext.hxx93
-rw-r--r--xmloff/source/text/XMLIndexSourceBaseContext.cxx277
-rw-r--r--xmloff/source/text/XMLIndexSourceBaseContext.hxx131
-rw-r--r--xmloff/source/text/XMLIndexSpanEntryContext.cxx76
-rw-r--r--xmloff/source/text/XMLIndexSpanEntryContext.hxx72
-rw-r--r--xmloff/source/text/XMLIndexTOCContext.cxx382
-rw-r--r--xmloff/source/text/XMLIndexTOCContext.hxx106
-rw-r--r--xmloff/source/text/XMLIndexTOCSourceContext.cxx196
-rw-r--r--xmloff/source/text/XMLIndexTOCSourceContext.hxx86
-rw-r--r--xmloff/source/text/XMLIndexTOCStylesContext.cxx159
-rw-r--r--xmloff/source/text/XMLIndexTOCStylesContext.hxx97
-rw-r--r--xmloff/source/text/XMLIndexTabStopEntryContext.cxx174
-rw-r--r--xmloff/source/text/XMLIndexTabStopEntryContext.hxx79
-rw-r--r--xmloff/source/text/XMLIndexTableSourceContext.cxx188
-rw-r--r--xmloff/source/text/XMLIndexTableSourceContext.hxx86
-rw-r--r--xmloff/source/text/XMLIndexTemplateContext.cxx504
-rw-r--r--xmloff/source/text/XMLIndexTemplateContext.hxx159
-rw-r--r--xmloff/source/text/XMLIndexTitleTemplateContext.cxx116
-rw-r--r--xmloff/source/text/XMLIndexTitleTemplateContext.hxx90
-rw-r--r--xmloff/source/text/XMLIndexUserSourceContext.cxx231
-rw-r--r--xmloff/source/text/XMLIndexUserSourceContext.hxx93
-rw-r--r--xmloff/source/text/XMLLineNumberingExport.cxx212
-rw-r--r--xmloff/source/text/XMLLineNumberingExport.hxx60
-rw-r--r--xmloff/source/text/XMLLineNumberingImportContext.cxx322
-rw-r--r--xmloff/source/text/XMLLineNumberingSeparatorImportContext.cxx97
-rw-r--r--xmloff/source/text/XMLLineNumberingSeparatorImportContext.hxx72
-rw-r--r--xmloff/source/text/XMLPropertyBackpatcher.cxx312
-rw-r--r--xmloff/source/text/XMLPropertyBackpatcher.hxx156
-rw-r--r--xmloff/source/text/XMLRedlineExport.cxx672
-rw-r--r--xmloff/source/text/XMLRedlineExport.hxx212
-rw-r--r--xmloff/source/text/XMLSectionExport.cxx1930
-rw-r--r--xmloff/source/text/XMLSectionExport.hxx366
-rw-r--r--xmloff/source/text/XMLSectionFootnoteConfigExport.cxx202
-rw-r--r--xmloff/source/text/XMLSectionFootnoteConfigExport.hxx59
-rw-r--r--xmloff/source/text/XMLSectionFootnoteConfigImport.cxx195
-rw-r--r--xmloff/source/text/XMLSectionFootnoteConfigImport.hxx76
-rw-r--r--xmloff/source/text/XMLSectionImportContext.cxx406
-rw-r--r--xmloff/source/text/XMLSectionImportContext.hxx118
-rw-r--r--xmloff/source/text/XMLSectionSourceDDEImportContext.cxx186
-rw-r--r--xmloff/source/text/XMLSectionSourceDDEImportContext.hxx78
-rw-r--r--xmloff/source/text/XMLSectionSourceImportContext.cxx156
-rw-r--r--xmloff/source/text/XMLSectionSourceImportContext.hxx73
-rw-r--r--xmloff/source/text/XMLStringBufferImportContext.cxx83
-rw-r--r--xmloff/source/text/XMLTextCharStyleNamesElementExport.cxx89
-rw-r--r--xmloff/source/text/XMLTextCharStyleNamesElementExport.hxx56
-rw-r--r--xmloff/source/text/XMLTextColumnsContext.cxx503
-rw-r--r--xmloff/source/text/XMLTextColumnsExport.cxx189
-rw-r--r--xmloff/source/text/XMLTextFrameContext.cxx1681
-rw-r--r--xmloff/source/text/XMLTextFrameContext.hxx108
-rw-r--r--xmloff/source/text/XMLTextFrameHyperlinkContext.cxx188
-rw-r--r--xmloff/source/text/XMLTextFrameHyperlinkContext.hxx85
-rw-r--r--xmloff/source/text/XMLTextHeaderFooterContext.cxx198
-rw-r--r--xmloff/source/text/XMLTextListAutoStylePool.cxx311
-rw-r--r--xmloff/source/text/XMLTextListBlockContext.cxx336
-rw-r--r--xmloff/source/text/XMLTextListBlockContext.hxx101
-rw-r--r--xmloff/source/text/XMLTextListItemContext.cxx197
-rw-r--r--xmloff/source/text/XMLTextListItemContext.hxx86
-rw-r--r--xmloff/source/text/XMLTextMarkImportContext.cxx480
-rw-r--r--xmloff/source/text/XMLTextMarkImportContext.hxx124
-rw-r--r--xmloff/source/text/XMLTextMasterPageContext.cxx293
-rw-r--r--xmloff/source/text/XMLTextMasterPageExport.cxx185
-rw-r--r--xmloff/source/text/XMLTextMasterStylesContext.cxx102
-rw-r--r--xmloff/source/text/XMLTextNumRuleInfo.cxx261
-rw-r--r--xmloff/source/text/XMLTextNumRuleInfo.hxx200
-rw-r--r--xmloff/source/text/XMLTextPropertySetContext.cxx158
-rw-r--r--xmloff/source/text/XMLTextPropertySetContext.hxx62
-rw-r--r--xmloff/source/text/XMLTextShapeImportHelper.cxx166
-rw-r--r--xmloff/source/text/XMLTextShapeImportHelper.hxx57
-rw-r--r--xmloff/source/text/XMLTextShapeStyleContext.cxx255
-rw-r--r--xmloff/source/text/XMLTextTableContext.cxx49
-rw-r--r--xmloff/source/text/XMLTrackedChangesImportContext.cxx116
-rw-r--r--xmloff/source/text/XMLTrackedChangesImportContext.hxx75
-rw-r--r--xmloff/source/text/makefile.mk127
-rw-r--r--xmloff/source/text/txtdrope.cxx106
-rw-r--r--xmloff/source/text/txtdrope.hxx51
-rw-r--r--xmloff/source/text/txtdropi.cxx154
-rw-r--r--xmloff/source/text/txtdropi.hxx66
-rw-r--r--xmloff/source/text/txtexppr.cxx1034
-rw-r--r--xmloff/source/text/txtexppr.hxx98
-rw-r--r--xmloff/source/text/txtflde.cxx3619
-rw-r--r--xmloff/source/text/txtfldi.cxx4129
-rw-r--r--xmloff/source/text/txtftne.cxx393
-rw-r--r--xmloff/source/text/txtimp.cxx3062
-rw-r--r--xmloff/source/text/txtimppr.cxx728
-rw-r--r--xmloff/source/text/txtlists.cxx541
-rw-r--r--xmloff/source/text/txtparae.cxx3873
-rw-r--r--xmloff/source/text/txtparai.cxx2446
-rw-r--r--xmloff/source/text/txtparai.hxx131
-rw-r--r--xmloff/source/text/txtparaimphint.hxx296
-rw-r--r--xmloff/source/text/txtprhdl.cxx1492
-rw-r--r--xmloff/source/text/txtprhdl.hxx48
-rw-r--r--xmloff/source/text/txtprmap.cxx903
-rw-r--r--xmloff/source/text/txtsecte.cxx258
-rw-r--r--xmloff/source/text/txtstyle.cxx210
-rw-r--r--xmloff/source/text/txtstyli.cxx579
-rw-r--r--xmloff/source/text/txtvfldi.cxx1474
-rw-r--r--xmloff/source/transform/ActionMapTypesOASIS.hxx96
-rw-r--r--xmloff/source/transform/ActionMapTypesOOo.hxx92
-rw-r--r--xmloff/source/transform/AttrTransformerAction.hxx142
-rw-r--r--xmloff/source/transform/ChartOASISTContext.cxx145
-rw-r--r--xmloff/source/transform/ChartOASISTContext.hxx46
-rw-r--r--xmloff/source/transform/ChartOOoTContext.cxx150
-rw-r--r--xmloff/source/transform/ChartOOoTContext.hxx46
-rw-r--r--xmloff/source/transform/ChartPlotAreaOASISTContext.cxx256
-rw-r--r--xmloff/source/transform/ChartPlotAreaOASISTContext.hxx56
-rw-r--r--xmloff/source/transform/ChartPlotAreaOOoTContext.cxx240
-rw-r--r--xmloff/source/transform/ChartPlotAreaOOoTContext.hxx64
-rw-r--r--xmloff/source/transform/ControlOASISTContext.cxx165
-rw-r--r--xmloff/source/transform/ControlOASISTContext.hxx53
-rw-r--r--xmloff/source/transform/ControlOOoTContext.cxx107
-rw-r--r--xmloff/source/transform/ControlOOoTContext.hxx61
-rw-r--r--xmloff/source/transform/CreateElemTContext.cxx131
-rw-r--r--xmloff/source/transform/CreateElemTContext.hxx57
-rw-r--r--xmloff/source/transform/DeepTContext.cxx181
-rw-r--r--xmloff/source/transform/DeepTContext.hxx84
-rw-r--r--xmloff/source/transform/DlgOASISTContext.cxx116
-rw-r--r--xmloff/source/transform/DlgOASISTContext.hxx46
-rw-r--r--xmloff/source/transform/DocumentTContext.cxx149
-rw-r--r--xmloff/source/transform/DocumentTContext.hxx58
-rw-r--r--xmloff/source/transform/ElemTransformerAction.hxx96
-rw-r--r--xmloff/source/transform/EventMap.cxx111
-rw-r--r--xmloff/source/transform/EventMap.hxx44
-rw-r--r--xmloff/source/transform/EventOASISTContext.cxx420
-rw-r--r--xmloff/source/transform/EventOASISTContext.hxx56
-rw-r--r--xmloff/source/transform/EventOOoTContext.cxx266
-rw-r--r--xmloff/source/transform/EventOOoTContext.hxx64
-rw-r--r--xmloff/source/transform/FamilyType.hxx60
-rw-r--r--xmloff/source/transform/FlatTContext.cxx70
-rw-r--r--xmloff/source/transform/FlatTContext.hxx70
-rw-r--r--xmloff/source/transform/FormPropOASISTContext.cxx225
-rw-r--r--xmloff/source/transform/FormPropOASISTContext.hxx55
-rw-r--r--xmloff/source/transform/FormPropOOoTContext.cxx314
-rw-r--r--xmloff/source/transform/FormPropOOoTContext.hxx70
-rw-r--r--xmloff/source/transform/FrameOASISTContext.cxx200
-rw-r--r--xmloff/source/transform/FrameOASISTContext.hxx68
-rw-r--r--xmloff/source/transform/FrameOOoTContext.cxx174
-rw-r--r--xmloff/source/transform/FrameOOoTContext.hxx60
-rw-r--r--xmloff/source/transform/IgnoreTContext.cxx109
-rw-r--r--xmloff/source/transform/IgnoreTContext.hxx89
-rw-r--r--xmloff/source/transform/MergeElemTContext.cxx346
-rw-r--r--xmloff/source/transform/MergeElemTContext.hxx70
-rw-r--r--xmloff/source/transform/MetaTContext.cxx146
-rw-r--r--xmloff/source/transform/MetaTContext.hxx83
-rw-r--r--xmloff/source/transform/MutableAttrList.cxx203
-rw-r--r--xmloff/source/transform/MutableAttrList.hxx87
-rw-r--r--xmloff/source/transform/NotesTContext.cxx232
-rw-r--r--xmloff/source/transform/NotesTContext.hxx61
-rw-r--r--xmloff/source/transform/OOo2Oasis.cxx2206
-rw-r--r--xmloff/source/transform/OOo2Oasis.hxx114
-rw-r--r--xmloff/source/transform/Oasis2OOo.cxx2092
-rw-r--r--xmloff/source/transform/Oasis2OOo.hxx71
-rw-r--r--xmloff/source/transform/PersAttrListTContext.cxx196
-rw-r--r--xmloff/source/transform/PersAttrListTContext.hxx122
-rw-r--r--xmloff/source/transform/PersMixedContentTContext.cxx160
-rw-r--r--xmloff/source/transform/PersMixedContentTContext.hxx69
-rw-r--r--xmloff/source/transform/ProcAddAttrTContext.cxx80
-rw-r--r--xmloff/source/transform/ProcAddAttrTContext.hxx58
-rw-r--r--xmloff/source/transform/ProcAttrTContext.cxx84
-rw-r--r--xmloff/source/transform/ProcAttrTContext.hxx66
-rw-r--r--xmloff/source/transform/PropType.hxx50
-rw-r--r--xmloff/source/transform/PropertyActionsOASIS.cxx554
-rw-r--r--xmloff/source/transform/PropertyActionsOASIS.hxx75
-rw-r--r--xmloff/source/transform/PropertyActionsOOo.cxx1064
-rw-r--r--xmloff/source/transform/PropertyActionsOOo.hxx79
-rw-r--r--xmloff/source/transform/RenameElemTContext.cxx93
-rw-r--r--xmloff/source/transform/RenameElemTContext.hxx73
-rw-r--r--xmloff/source/transform/StyleOASISTContext.cxx1013
-rw-r--r--xmloff/source/transform/StyleOASISTContext.hxx76
-rw-r--r--xmloff/source/transform/StyleOOoTContext.cxx1377
-rw-r--r--xmloff/source/transform/StyleOOoTContext.hxx75
-rw-r--r--xmloff/source/transform/TContextVector.hxx42
-rw-r--r--xmloff/source/transform/Transformer.hxx45
-rw-r--r--xmloff/source/transform/TransformerAction.hxx35
-rw-r--r--xmloff/source/transform/TransformerActionInit.hxx51
-rw-r--r--xmloff/source/transform/TransformerActions.cxx92
-rw-r--r--xmloff/source/transform/TransformerActions.hxx161
-rw-r--r--xmloff/source/transform/TransformerBase.cxx1489
-rw-r--r--xmloff/source/transform/TransformerBase.hxx208
-rw-r--r--xmloff/source/transform/TransformerContext.cxx113
-rw-r--r--xmloff/source/transform/TransformerContext.hxx116
-rw-r--r--xmloff/source/transform/TransformerTokenMap.cxx54
-rw-r--r--xmloff/source/transform/TransformerTokenMap.hxx50
-rw-r--r--xmloff/source/transform/XMLFilterRegistration.cxx195
-rw-r--r--xmloff/source/transform/makefile.mk103
-rw-r--r--xmloff/source/transform/xof.component118
-rw-r--r--xmloff/source/xforms/SchemaContext.cxx100
-rw-r--r--xmloff/source/xforms/SchemaContext.hxx84
-rw-r--r--xmloff/source/xforms/SchemaRestrictionContext.cxx380
-rw-r--r--xmloff/source/xforms/SchemaRestrictionContext.hxx91
-rw-r--r--xmloff/source/xforms/SchemaSimpleTypeContext.cxx115
-rw-r--r--xmloff/source/xforms/SchemaSimpleTypeContext.hxx86
-rw-r--r--xmloff/source/xforms/TokenContext.cxx146
-rw-r--r--xmloff/source/xforms/TokenContext.hxx114
-rw-r--r--xmloff/source/xforms/XFormsBindContext.cxx190
-rw-r--r--xmloff/source/xforms/XFormsBindContext.hxx88
-rw-r--r--xmloff/source/xforms/XFormsInstanceContext.cxx158
-rw-r--r--xmloff/source/xforms/XFormsInstanceContext.hxx99
-rw-r--r--xmloff/source/xforms/XFormsModelContext.cxx163
-rw-r--r--xmloff/source/xforms/XFormsModelContext.hxx85
-rw-r--r--xmloff/source/xforms/XFormsModelExport.hxx42
-rw-r--r--xmloff/source/xforms/XFormsSubmissionContext.cxx182
-rw-r--r--xmloff/source/xforms/XFormsSubmissionContext.hxx83
-rw-r--r--xmloff/source/xforms/makefile.mk58
-rw-r--r--xmloff/source/xforms/xformsapi.cxx348
-rw-r--r--xmloff/source/xforms/xformsapi.hxx93
-rw-r--r--xmloff/source/xforms/xformsexport.cxx835
-rw-r--r--xmloff/source/xforms/xformsimport.cxx206
-rw-r--r--xmloff/util/makefile.mk96
-rw-r--r--xmloff/util/makefile.pmk30
-rw-r--r--xmloff/util/xo.component178
-rw-r--r--xmloff/xml/components.xml473
-rw-r--r--xmlreader/inc/makefile.mk40
-rw-r--r--xmlreader/inc/pch/precompiled_xmlreader.cxx28
-rw-r--r--xmlreader/inc/pch/precompiled_xmlreader.hxx32
-rw-r--r--xmlreader/inc/xmlreader/detail/xmlreaderdllapi.hxx41
-rw-r--r--xmlreader/inc/xmlreader/pad.hxx59
-rw-r--r--xmlreader/inc/xmlreader/span.hxx69
-rw-r--r--xmlreader/inc/xmlreader/xmlreader.hxx199
-rw-r--r--xmlreader/prj/build.lst3
-rwxr-xr-xxmlreader/prj/d.lst10
-rw-r--r--xmlreader/source/makefile.mk53
-rw-r--r--xmlreader/source/pad.cxx85
-rw-r--r--xmlreader/source/span.cxx66
-rw-r--r--xmlreader/source/xmlreader.cxx1054
-rw-r--r--xmlscript/dtd/dialog.dtd405
-rw-r--r--xmlscript/dtd/libraries.dtd45
-rw-r--r--xmlscript/dtd/library.dtd44
-rw-r--r--xmlscript/dtd/module.dtd35
-rw-r--r--xmlscript/inc/makefile.mk47
-rw-r--r--xmlscript/inc/pch/precompiled_xmlscript.cxx29
-rw-r--r--xmlscript/inc/pch/precompiled_xmlscript.hxx32
-rw-r--r--xmlscript/inc/xmlscript/xml_helper.hxx146
-rw-r--r--xmlscript/inc/xmlscript/xml_import.hxx66
-rw-r--r--xmlscript/inc/xmlscript/xmldlg_imexp.hxx89
-rw-r--r--xmlscript/inc/xmlscript/xmllib_imexp.hxx94
-rw-r--r--xmlscript/inc/xmlscript/xmlmod_imexp.hxx65
-rw-r--r--xmlscript/inc/xmlscript/xmlns.h45
-rw-r--r--xmlscript/prj/build.lst10
-rw-r--r--xmlscript/prj/d.lst14
-rw-r--r--xmlscript/source/inc/misc.hxx63
-rw-r--r--xmlscript/source/misc/makefile.mk48
-rw-r--r--xmlscript/source/misc/unoservices.cxx124
-rw-r--r--xmlscript/source/xml_helper/makefile.mk50
-rw-r--r--xmlscript/source/xml_helper/xml_byteseq.cxx173
-rw-r--r--xmlscript/source/xml_helper/xml_element.cxx132
-rw-r--r--xmlscript/source/xml_helper/xml_impctx.cxx904
-rw-r--r--xmlscript/source/xmldlg_imexp/common.hxx42
-rw-r--r--xmlscript/source/xmldlg_imexp/exp_share.hxx245
-rw-r--r--xmlscript/source/xmldlg_imexp/imp_share.hxx1020
-rw-r--r--xmlscript/source/xmldlg_imexp/makefile.mk52
-rw-r--r--xmlscript/source/xmldlg_imexp/xmldlg_addfunc.cxx138
-rw-r--r--xmlscript/source/xmldlg_imexp/xmldlg_expmodels.cxx1169
-rw-r--r--xmlscript/source/xmldlg_imexp/xmldlg_export.cxx1610
-rw-r--r--xmlscript/source/xmldlg_imexp/xmldlg_impmodels.cxx2289
-rw-r--r--xmlscript/source/xmldlg_imexp/xmldlg_import.cxx1905
-rw-r--r--xmlscript/source/xmlflat_imexp/makefile.mk50
-rw-r--r--xmlscript/source/xmlflat_imexp/xmlbas_export.cxx551
-rw-r--r--xmlscript/source/xmlflat_imexp/xmlbas_export.hxx132
-rw-r--r--xmlscript/source/xmlflat_imexp/xmlbas_import.cxx931
-rw-r--r--xmlscript/source/xmlflat_imexp/xmlbas_import.hxx347
-rw-r--r--xmlscript/source/xmllib_imexp/imp_share.hxx263
-rw-r--r--xmlscript/source/xmllib_imexp/makefile.mk50
-rw-r--r--xmlscript/source/xmllib_imexp/xmllib_export.cxx176
-rw-r--r--xmlscript/source/xmllib_imexp/xmllib_import.cxx372
-rw-r--r--xmlscript/source/xmlmod_imexp/imp_share.hxx143
-rw-r--r--xmlscript/source/xmlmod_imexp/makefile.mk49
-rw-r--r--xmlscript/source/xmlmod_imexp/xmlmod_export.cxx80
-rw-r--r--xmlscript/source/xmlmod_imexp/xmlmod_import.cxx230
-rw-r--r--xmlscript/test/imexp.cxx242
-rw-r--r--xmlscript/test/makefile.mk85
-rw-r--r--xmlscript/test/test.xml106
-rw-r--r--xmlscript/test/w3c.jpgbin0 -> 2028 bytes-rw-r--r--xmlscript/util/makefile.mk84
-rw-r--r--xmlscript/util/target.pmk35
-rw-r--r--xmlscript/util/xcr.component46
-rw-r--r--xmlscript/util/xcr.flt13
-rw-r--r--xmlsecurity/doc/OpenDocumentSignatures-TestIntegration.sxwbin0 -> 14189 bytes-rw-r--r--xmlsecurity/doc/OpenDocumentSignatures-Workflow.sxdbin0 -> 10310 bytes-rw-r--r--xmlsecurity/doc/OpenDocumentSignatures.sxwbin0 -> 16195 bytes-rw-r--r--xmlsecurity/doc/XMLSecurityFramework.sxwbin0 -> 187975 bytes-rw-r--r--xmlsecurity/inc/makefile.mk47
-rw-r--r--xmlsecurity/inc/pch/precompiled_xmlsecurity.cxx29
-rw-r--r--xmlsecurity/inc/pch/precompiled_xmlsecurity.hxx32
-rw-r--r--xmlsecurity/inc/xmlsecurity/biginteger.hxx43
-rw-r--r--xmlsecurity/inc/xmlsecurity/certificatechooser.hxx94
-rw-r--r--xmlsecurity/inc/xmlsecurity/certificateviewer.hxx165
-rw-r--r--xmlsecurity/inc/xmlsecurity/certvalidity.hxx37
-rw-r--r--xmlsecurity/inc/xmlsecurity/digitalsignaturesdialog.hxx150
-rw-r--r--xmlsecurity/inc/xmlsecurity/documentsignaturehelper.hxx103
-rw-r--r--xmlsecurity/inc/xmlsecurity/global.hrc49
-rw-r--r--xmlsecurity/inc/xmlsecurity/macrosecurity.hxx175
-rw-r--r--xmlsecurity/inc/xmlsecurity/sigstruct.hxx112
-rw-r--r--xmlsecurity/inc/xmlsecurity/stbcontrl.hxx57
-rw-r--r--xmlsecurity/inc/xmlsecurity/warnings.hxx89
-rw-r--r--xmlsecurity/inc/xmlsecurity/xmlsignaturehelper.hxx207
-rw-r--r--xmlsecurity/prj/build.lst11
-rw-r--r--xmlsecurity/prj/d.lst13
-rw-r--r--xmlsecurity/source/component/certificatecontainer.cxx171
-rw-r--r--xmlsecurity/source/component/certificatecontainer.hxx99
-rw-r--r--xmlsecurity/source/component/documentdigitalsignatures.cxx516
-rw-r--r--xmlsecurity/source/component/documentdigitalsignatures.hxx101
-rw-r--r--xmlsecurity/source/component/makefile.mk54
-rw-r--r--xmlsecurity/source/component/registerservices.cxx88
-rw-r--r--xmlsecurity/source/component/warnbox.src36
-rw-r--r--xmlsecurity/source/dialogs/certificatechooser.cxx238
-rw-r--r--xmlsecurity/source/dialogs/certificatechooser.src88
-rw-r--r--xmlsecurity/source/dialogs/certificateviewer.cxx550
-rw-r--r--xmlsecurity/source/dialogs/certificateviewer.src350
-rw-r--r--xmlsecurity/source/dialogs/dialogs.hrc360
-rw-r--r--xmlsecurity/source/dialogs/digitalsignaturesdialog.cxx846
-rw-r--r--xmlsecurity/source/dialogs/digitalsignaturesdialog.hrc36
-rw-r--r--xmlsecurity/source/dialogs/digitalsignaturesdialog.src222
-rw-r--r--xmlsecurity/source/dialogs/helpids.hrc55
-rw-r--r--xmlsecurity/source/dialogs/macrosecurity.cxx468
-rw-r--r--xmlsecurity/source/dialogs/macrosecurity.src250
-rw-r--r--xmlsecurity/source/dialogs/makefile.mk64
-rw-r--r--xmlsecurity/source/dialogs/resourcemanager.cxx431
-rw-r--r--xmlsecurity/source/dialogs/resourcemanager.hxx69
-rw-r--r--xmlsecurity/source/dialogs/stbcontrl.cxx188
-rw-r--r--xmlsecurity/source/dialogs/warnings.cxx145
-rw-r--r--xmlsecurity/source/dialogs/warnings.src115
-rw-r--r--xmlsecurity/source/framework/buffernode.cxx1279
-rw-r--r--xmlsecurity/source/framework/buffernode.hxx137
-rw-r--r--xmlsecurity/source/framework/decryptorimpl.cxx245
-rw-r--r--xmlsecurity/source/framework/decryptorimpl.hxx136
-rw-r--r--xmlsecurity/source/framework/elementcollector.cxx296
-rw-r--r--xmlsecurity/source/framework/elementcollector.hxx108
-rw-r--r--xmlsecurity/source/framework/elementmark.cxx105
-rw-r--r--xmlsecurity/source/framework/elementmark.hxx85
-rw-r--r--xmlsecurity/source/framework/encryptionengine.cxx216
-rw-r--r--xmlsecurity/source/framework/encryptionengine.hxx103
-rw-r--r--xmlsecurity/source/framework/encryptorimpl.cxx281
-rw-r--r--xmlsecurity/source/framework/encryptorimpl.hxx150
-rw-r--r--xmlsecurity/source/framework/makefile.mk61
-rw-r--r--xmlsecurity/source/framework/saxeventkeeperimpl.cxx1463
-rw-r--r--xmlsecurity/source/framework/saxeventkeeperimpl.hxx369
-rw-r--r--xmlsecurity/source/framework/securityengine.cxx88
-rw-r--r--xmlsecurity/source/framework/securityengine.hxx172
-rw-r--r--xmlsecurity/source/framework/signaturecreatorimpl.cxx297
-rw-r--r--xmlsecurity/source/framework/signaturecreatorimpl.hxx147
-rw-r--r--xmlsecurity/source/framework/signatureengine.cxx268
-rw-r--r--xmlsecurity/source/framework/signatureengine.hxx144
-rw-r--r--xmlsecurity/source/framework/signatureverifierimpl.cxx242
-rw-r--r--xmlsecurity/source/framework/signatureverifierimpl.hxx135
-rw-r--r--xmlsecurity/source/framework/xmlencryptiontemplateimpl.cxx142
-rw-r--r--xmlsecurity/source/framework/xmlencryptiontemplateimpl.hxx113
-rw-r--r--xmlsecurity/source/framework/xmlsignaturetemplateimpl.cxx167
-rw-r--r--xmlsecurity/source/framework/xmlsignaturetemplateimpl.hxx125
-rw-r--r--xmlsecurity/source/framework/xsec_framework.cxx173
-rw-r--r--xmlsecurity/source/helper/documentsignaturehelper.cxx462
-rw-r--r--xmlsecurity/source/helper/makefile.mk54
-rw-r--r--xmlsecurity/source/helper/xmlsignaturehelper.cxx467
-rw-r--r--xmlsecurity/source/helper/xmlsignaturehelper2.cxx232
-rw-r--r--xmlsecurity/source/helper/xmlsignaturehelper2.hxx134
-rw-r--r--xmlsecurity/source/helper/xsecctl.cxx1498
-rw-r--r--xmlsecurity/source/helper/xsecctl.hxx577
-rw-r--r--xmlsecurity/source/helper/xsecparser.cxx377
-rw-r--r--xmlsecurity/source/helper/xsecparser.hxx165
-rw-r--r--xmlsecurity/source/helper/xsecsign.cxx374
-rw-r--r--xmlsecurity/source/helper/xsecverify.cxx331
-rw-r--r--xmlsecurity/source/xmlsec/biginteger.cxx126
-rw-r--r--xmlsecurity/source/xmlsec/certificateextension_xmlsecimpl.cxx97
-rw-r--r--xmlsecurity/source/xmlsec/certificateextension_xmlsecimpl.hxx65
-rw-r--r--xmlsecurity/source/xmlsec/certvalidity.cxx98
-rw-r--r--xmlsecurity/source/xmlsec/diagnose.cxx77
-rw-r--r--xmlsecurity/source/xmlsec/diagnose.hxx43
-rw-r--r--xmlsecurity/source/xmlsec/errorcallback.cxx211
-rw-r--r--xmlsecurity/source/xmlsec/errorcallback.hxx44
-rw-r--r--xmlsecurity/source/xmlsec/makefile.mk72
-rw-r--r--xmlsecurity/source/xmlsec/mscrypt/makefile.mk73
-rw-r--r--xmlsecurity/source/xmlsec/mscrypt/oid.hxx158
-rw-r--r--xmlsecurity/source/xmlsec/mscrypt/securityenvironment_mscryptimpl.cxx1312
-rw-r--r--xmlsecurity/source/xmlsec/mscrypt/securityenvironment_mscryptimpl.hxx195
-rw-r--r--xmlsecurity/source/xmlsec/mscrypt/seinitializer_mscryptimpl.cxx238
-rw-r--r--xmlsecurity/source/xmlsec/mscrypt/seinitializer_mscryptimpl.hxx108
-rw-r--r--xmlsecurity/source/xmlsec/mscrypt/x509certificate_mscryptimpl.cxx659
-rw-r--r--xmlsecurity/source/xmlsec/mscrypt/x509certificate_mscryptimpl.hxx114
-rw-r--r--xmlsecurity/source/xmlsec/mscrypt/xmlencryption_mscryptimpl.cxx390
-rw-r--r--xmlsecurity/source/xmlsec/mscrypt/xmlencryption_mscryptimpl.hxx102
-rw-r--r--xmlsecurity/source/xmlsec/mscrypt/xmlsecuritycontext_mscryptimpl.cxx345
-rw-r--r--xmlsecurity/source/xmlsec/mscrypt/xmlsecuritycontext_mscryptimpl.hxx137
-rw-r--r--xmlsecurity/source/xmlsec/mscrypt/xmlsignature_mscryptimpl.cxx334
-rw-r--r--xmlsecurity/source/xmlsec/mscrypt/xmlsignature_mscryptimpl.hxx102
-rw-r--r--xmlsecurity/source/xmlsec/mscrypt/xsec_mscrypt.cxx164
-rw-r--r--xmlsecurity/source/xmlsec/nss/certerrors.h384
-rw-r--r--xmlsecurity/source/xmlsec/nss/makefile.mk142
-rw-r--r--xmlsecurity/source/xmlsec/nss/nssrenam.h49
-rw-r--r--xmlsecurity/source/xmlsec/nss/secerror.cxx165
-rw-r--r--xmlsecurity/source/xmlsec/nss/secerror.hxx40
-rw-r--r--xmlsecurity/source/xmlsec/nss/securityenvironment_nssimpl.cxx1148
-rw-r--r--xmlsecurity/source/xmlsec/nss/securityenvironment_nssimpl.hxx183
-rw-r--r--xmlsecurity/source/xmlsec/nss/seinitializer_nssimpl.cxx516
-rw-r--r--xmlsecurity/source/xmlsec/nss/seinitializer_nssimpl.hxx108
-rw-r--r--xmlsecurity/source/xmlsec/nss/x509certificate_nssimpl.cxx471
-rw-r--r--xmlsecurity/source/xmlsec/nss/x509certificate_nssimpl.hxx108
-rw-r--r--xmlsecurity/source/xmlsec/nss/xmlencryption_nssimpl.cxx426
-rw-r--r--xmlsecurity/source/xmlsec/nss/xmlencryption_nssimpl.hxx102
-rw-r--r--xmlsecurity/source/xmlsec/nss/xmlsecuritycontext_nssimpl.cxx325
-rw-r--r--xmlsecurity/source/xmlsec/nss/xmlsecuritycontext_nssimpl.hxx139
-rw-r--r--xmlsecurity/source/xmlsec/nss/xmlsignature_nssimpl.cxx354
-rw-r--r--xmlsecurity/source/xmlsec/nss/xmlsignature_nssimpl.hxx102
-rw-r--r--xmlsecurity/source/xmlsec/nss/xsec_nss.cxx165
-rw-r--r--xmlsecurity/source/xmlsec/saxhelper.cxx450
-rw-r--r--xmlsecurity/source/xmlsec/saxhelper.hxx88
-rw-r--r--xmlsecurity/source/xmlsec/xmldocumentwrapper_xmlsecimpl.cxx1153
-rw-r--r--xmlsecurity/source/xmlsec/xmldocumentwrapper_xmlsecimpl.hxx284
-rw-r--r--xmlsecurity/source/xmlsec/xmlelementwrapper_xmlsecimpl.cxx187
-rw-r--r--xmlsecurity/source/xmlsec/xmlelementwrapper_xmlsecimpl.hxx108
-rw-r--r--xmlsecurity/source/xmlsec/xmlstreamio.cxx244
-rw-r--r--xmlsecurity/source/xmlsec/xmlstreamio.hxx46
-rw-r--r--xmlsecurity/source/xmlsec/xsec_xmlsec.cxx160
-rwxr-xr-xxmlsecurity/test_docs/CAs/README.txt383
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_1/demoCA/cacert.pem19
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_1/demoCA/crl/DO_NOT_CREATE_A_CRL0
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_1/demoCA/crlnumber1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_1/demoCA/index.txt1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_1/demoCA/index.txt.attr1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_1/demoCA/newcerts/1000.pem62
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_1/demoCA/private/cakey.pem18
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_1/demoCA/serial1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_1/openssl.cfg292
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_10/demoCA/cacert.pem19
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_10/demoCA/crlnumber1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_10/demoCA/index.txt1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_10/demoCA/index.txt.attr1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_10/demoCA/newcerts/1000.pem62
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_10/demoCA/private/cakey.pem18
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_10/demoCA/serial1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_10/openssl.cfg292
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/cacert.pem19
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/crlnumber1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/index.txt34
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/index.txt.attr1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/1000.pem57
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/1002.pem60
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/1003.pem60
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/1004.pem60
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/1005.pem61
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/1006.pem61
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/1007.pem60
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/1008.pem60
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/1009.pem60
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/100A.pem61
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/100B.pem61
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/100C.pem61
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/100D.pem61
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/100E.pem61
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/100F.pem61
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/1010.pem60
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/1011.pem61
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/1012.pem61
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/1013.pem60
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/1014.pem60
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/1015.pem60
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/1016.pem61
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/1017.pem61
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/1018.pem61
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/1019.pem61
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/101A.pem61
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/101B.pem61
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/101C.pem60
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/101D.pem60
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/101E.pem60
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/101F.pem60
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/1020.pem61
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/newcerts/1021.pem61
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/private/cakey.pem18
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/demoCA/serial1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_11/openssl.cfg295
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_2/demoCA/cacert.pem19
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_2/demoCA/crl/DO_NOT_CREATE_A_CRL0
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_2/demoCA/crlnumber1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_2/demoCA/index.txt1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_2/demoCA/index.txt.attr1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_2/demoCA/newcerts/1000.pem62
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_2/demoCA/private/cakey.pem18
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_2/demoCA/serial1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_2/openssl.cfg292
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_3/demoCA/cacert.pem19
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_3/demoCA/crlnumber1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_3/demoCA/index.txt1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_3/demoCA/index.txt.attr1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_3/demoCA/newcerts/1000.pem62
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_3/demoCA/private/cakey.pem18
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_3/demoCA/serial1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_3/openssl.cfg292
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_4/README.txt4
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_4/demoCA/cacert.pem19
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_4/demoCA/crlnumber1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_4/demoCA/index.txt2
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_4/demoCA/index.txt.attr1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_4/demoCA/newcerts/1000.pem62
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_4/demoCA/newcerts/1001.pem62
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_4/demoCA/private/cakey.pem18
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_4/demoCA/serial1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_4/openssl.cfg292
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_5/demoCA/cacert.pem19
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_5/demoCA/crl/DO_NOT_CREATE_A_CRL0
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_5/demoCA/crlnumber1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_5/demoCA/index.txt1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_5/demoCA/index.txt.attr1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_5/demoCA/newcerts/1001.pem66
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_5/demoCA/private/cakey.pem18
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_5/demoCA/serial1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_5/openssl.cfg292
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_6/README.txt5
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_6/demoCA/cacert.pem19
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_6/demoCA/crl/DO_NOT_INSTALL_THIS_CRL0
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_6/demoCA/crl/Root_6.crlbin0 -> 316 bytes-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_6/demoCA/crlnumber1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_6/demoCA/index.txt1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_6/demoCA/index.txt.attr1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_6/demoCA/newcerts/1001.pem66
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_6/demoCA/private/cakey.pem18
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_6/demoCA/serial1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_6/openssl.cfg292
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_7/README.txt10
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_7/demoCA/cacert.pem19
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_7/demoCA/crl/DO_NOT_INSTALL_THIS_CRL0
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_7/demoCA/crl/Root_7.crlbin0 -> 353 bytes-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_7/demoCA/crlnumber1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_7/demoCA/index.txt2
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_7/demoCA/index.txt.attr1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_7/demoCA/newcerts/1000.pem66
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_7/demoCA/newcerts/1001.pem66
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_7/demoCA/private/cakey.pem18
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_7/demoCA/serial1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_7/openssl.cfg292
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_8/README.txt9
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_8/demoCA/cacert.pem19
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_8/demoCA/crl/DO_NOT_INSTALL_THIS_CRL0
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_8/demoCA/crl/Root_8.crlbin0 -> 353 bytes-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_8/demoCA/crlnumber1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_8/demoCA/index.txt2
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_8/demoCA/index.txt.attr1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_8/demoCA/newcerts/1000.pem66
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_8/demoCA/newcerts/1001.pem66
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_8/demoCA/private/cakey.pem18
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_8/demoCA/serial1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_8/openssl.cfg292
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_9/DO_NOT_INSTALL_THIS_ROOT_CERT.txt1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_9/demoCA/DO_NO_INSTALL_THIS_ROOT_CERTIFICATE0
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_9/demoCA/Root_9.crtbin0 -> 776 bytes-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_9/demoCA/cacert.pem19
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_9/demoCA/crlnumber1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_9/demoCA/index.txt1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_9/demoCA/index.txt.attr1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_9/demoCA/newcerts/1000.pem62
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_9/demoCA/private/cakey.pem18
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_9/demoCA/serial1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Root_9/openssl.cfg292
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_1/demoCA/cacert.pem62
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_1/demoCA/crl/DO_NOT_CREATE_A_CRL0
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_1/demoCA/crlnumber1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_1/demoCA/index.txt1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_1/demoCA/index.txt.attr1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_1/demoCA/newcerts/1000.pem58
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_1/demoCA/private/cakey.pem18
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_1/demoCA/serial1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_1/openssl.cfg292
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_10/DO_NOT_INSTALL_THIS_CERTIFICATE0
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_10/README.txt19
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_10/demoCA/DO_NOT_INSTALL_THIS_CERTIFICATE0
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_10/demoCA/Sub_CA_1_Root_10.crtbin0 -> 781 bytes-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_10/demoCA/cacert.pem62
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_10/demoCA/crl/DO_NOT_INSTALL_THIS_CRL0
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_10/demoCA/crl/Sub_CA_1_Root_10.crlbin0 -> 326 bytes-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_10/demoCA/crlnumber1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_10/demoCA/index.txt1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_10/demoCA/index.txt.attr1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_10/demoCA/newcerts/1000.pem67
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_10/demoCA/private/cakey.pem18
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_10/demoCA/serial1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_10/openssl.cfg293
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_2/demoCA/cacert.pem62
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_2/demoCA/crlnumber1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_2/demoCA/index.txt1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_2/demoCA/index.txt.attr1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_2/demoCA/newcerts/1000.pem60
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_2/demoCA/private/cakey.pem18
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_2/demoCA/req.pem11
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_2/demoCA/serial1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_2/openssl.cfg292
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_3/demoCA/cacert.pem62
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_3/demoCA/crl/DO_NOT_CREATE_A_CRL0
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_3/demoCA/crlnumber1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_3/demoCA/index.txt1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_3/demoCA/index.txt.attr1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_3/demoCA/newcerts/1000.pem60
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_3/demoCA/private/cakey.pem18
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_3/demoCA/req.pem11
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_3/demoCA/serial1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_3/openssl.cfg292
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_4/README.txt4
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_4/demoCA/cacert.pem62
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_4/demoCA/crlnumber1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_4/demoCA/index.txt2
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_4/demoCA/index.txt.attr1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_4/demoCA/newcerts/1000.pem60
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_4/demoCA/newcerts/1001.pem60
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_4/demoCA/private/cakey.pem18
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_4/demoCA/serial1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_4/openssl.cfg292
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_5/README.txt5
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_5/demoCA/cacert.pem66
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_5/demoCA/crl/DO_NOT_INSTALL_THIS_CRL0
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_5/demoCA/crl/Sub_CA_1_Root_5.crlbin0 -> 325 bytes-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_5/demoCA/crlnumber1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_5/demoCA/index.txt1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_5/demoCA/index.txt.attr1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_5/demoCA/newcerts/1002.pem62
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_5/demoCA/private/cakey.pem18
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_5/demoCA/serial1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_5/openssl.cfg292
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_6/demoCA/cacert.pem66
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_6/demoCA/crl/DO_NOT_CREATE_A_CRL0
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_6/demoCA/crlnumber1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_6/demoCA/index.txt1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_6/demoCA/index.txt.attr1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_6/demoCA/newcerts/1000.pem62
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_6/demoCA/private/cakey.pem18
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_6/demoCA/serial1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_6/openssl.cfg292
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_7/README.txt3
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_7/demoCA/cacert.pem66
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_7/demoCA/crl/DO_NOT_INSTALL_THIS_CRL0
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_7/demoCA/crl/Sub_CA_1_Root_7.crlbin0 -> 362 bytes-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_7/demoCA/crlnumber1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_7/demoCA/index.txt2
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_7/demoCA/index.txt.attr1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_7/demoCA/newcerts/1000.pem62
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_7/demoCA/newcerts/1001.pem62
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_7/demoCA/private/cakey.pem18
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_7/demoCA/serial1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_7/openssl.cfg292
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_8/README.txt13
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_8/demoCA/cacert.pem66
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_8/demoCA/crl/DO_NOT_INSTALL_THIS_CRL0
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_8/demoCA/crl/Sub_CA_1_Root_8.crlbin0 -> 362 bytes-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_8/demoCA/crlnumber1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_8/demoCA/index.txt2
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_8/demoCA/index.txt.attr1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_8/demoCA/newcerts/1000.pem62
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_8/demoCA/newcerts/1001.pem62
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_8/demoCA/private/cakey.pem18
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_8/demoCA/serial1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_8/openssl.cfg292
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_9/demoCA/cacert.pem62
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_9/demoCA/crlnumber1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_9/demoCA/index.txt1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_9/demoCA/index.txt.attr1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_9/demoCA/newcerts/1000.pem58
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_9/demoCA/private/cakey.pem18
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_9/demoCA/serial1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_1_Root_9/openssl.cfg292
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_4/README.txt4
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_4/demoCA/cacert.pem62
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_4/demoCA/crlnumber1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_4/demoCA/index.txt2
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_4/demoCA/index.txt.attr1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_4/demoCA/newcerts/1001.pem60
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_4/demoCA/newcerts/1002.pem60
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_4/demoCA/private/cakey.pem18
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_4/demoCA/serial1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_4/openssl.cfg292
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_7/README.txt12
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_7/demoCA/cacert.pem66
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_7/demoCA/crl/DO_NOT_INSTALL_THIS_CRL0
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_7/demoCA/crl/Sub_CA_2_Root_7.crlbin0 -> 362 bytes-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_7/demoCA/crlnumber1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_7/demoCA/index.txt2
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_7/demoCA/index.txt.attr1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_7/demoCA/newcerts/1000.pem62
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_7/demoCA/newcerts/1001.pem62
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_7/demoCA/private/cakey.pem18
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_7/demoCA/serial1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_7/openssl.cfg292
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_8/README.txt13
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_8/demoCA/cacert.pem66
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_8/demoCA/crl/DO_NOT_INSTALL_THIS_CRL0
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_8/demoCA/crl/Sub_CA_2_Root_8.crlbin0 -> 362 bytes-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_8/demoCA/crlnumber1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_8/demoCA/index.txt2
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_8/demoCA/index.txt.attr1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_8/demoCA/newcerts/1002.pem62
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_8/demoCA/newcerts/1003.pem62
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_8/demoCA/private/cakey.pem18
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_8/demoCA/serial1
-rwxr-xr-xxmlsecurity/test_docs/CAs/Sub_CA_2_Root_8/openssl.cfg292
-rwxr-xr-xxmlsecurity/test_docs/certs/ca_certs/Root_1.crtbin0 -> 776 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/ca_certs/Root_10.crtbin0 -> 779 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/ca_certs/Root_11.crtbin0 -> 779 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/ca_certs/Root_2.crtbin0 -> 776 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/ca_certs/Root_3.crtbin0 -> 776 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/ca_certs/Root_4.crtbin0 -> 776 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/ca_certs/Root_5.crtbin0 -> 776 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/ca_certs/Root_6.crtbin0 -> 776 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/ca_certs/Root_7.crtbin0 -> 776 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/ca_certs/Root_8.crtbin0 -> 776 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/ca_certs/Sub_CA_1_Root_1.crtbin0 -> 778 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/ca_certs/Sub_CA_1_Root_2.crtbin0 -> 778 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/ca_certs/Sub_CA_1_Root_3.crtbin0 -> 778 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/ca_certs/Sub_CA_1_Root_4.crtbin0 -> 778 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/ca_certs/Sub_CA_1_Root_5.crtbin0 -> 842 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/ca_certs/Sub_CA_1_Root_6.crtbin0 -> 842 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/ca_certs/Sub_CA_1_Root_7.crtbin0 -> 842 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/ca_certs/Sub_CA_1_Root_8.crtbin0 -> 829 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/ca_certs/Sub_CA_1_Root_9.crtbin0 -> 778 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/ca_certs/Sub_CA_2_Root_4.crtbin0 -> 778 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/ca_certs/Sub_CA_2_Root_7.crtbin0 -> 842 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/ca_certs/Sub_CA_2_Root_8.crtbin0 -> 829 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/crl/Root_10.crlbin0 -> 317 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/crl/Root_11.crlbin0 -> 317 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/crl/Root_3.crlbin0 -> 316 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/crl/Root_4.crlbin0 -> 353 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/crl/Root_9.crlbin0 -> 316 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/crl/Sub_CA_1_Root_2.crlbin0 -> 325 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/crl/Sub_CA_1_Root_4.crlbin0 -> 362 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/crl/Sub_CA_1_Root_9.crlbin0 -> 325 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/crl/Sub_CA_2_Root_4.crlbin0 -> 362 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_10_Root_11.crtbin0 -> 739 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_11_Root_11.crtbin0 -> 733 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_12_Root_11.crtbin0 -> 729 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_13_Root_11.crtbin0 -> 739 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_14_Root_11.crtbin0 -> 729 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_15_Root_11.crtbin0 -> 720 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_16_Root_11.crtbin0 -> 739 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_17_Root_11.crtbin0 -> 749 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_18_Root_11.crtbin0 -> 714 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_19_Root_11.crtbin0 -> 710 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_1_Root_11.crtbin0 -> 699 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_1_Sub_CA_1_Root_1.crtbin0 -> 706 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_1_Sub_CA_1_Root_10.crtbin0 -> 828 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_1_Sub_CA_1_Root_2.crtbin0 -> 719 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_1_Sub_CA_1_Root_3.crtbin0 -> 719 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_1_Sub_CA_1_Root_4.crtbin0 -> 719 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_1_Sub_CA_1_Root_5.crtbin0 -> 746 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_1_Sub_CA_1_Root_6.crtbin0 -> 746 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_1_Sub_CA_1_Root_7.crtbin0 -> 746 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_1_Sub_CA_1_Root_8.crtbin0 -> 726 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_1_Sub_CA_1_Root_9.crtbin0 -> 673 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_1_Sub_CA_2_Root_4.crtbin0 -> 719 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_1_Sub_CA_2_Root_7.crtbin0 -> 746 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_1_Sub_CA_2_Root_8.crtbin0 -> 726 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_20_Root_11.crtbin0 -> 710 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_21_Root_11.crtbin0 -> 727 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_22_Root_11.crtbin0 -> 739 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_23_Root_11.crtbin0 -> 733 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_24_Root_11.crtbin0 -> 729 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_25_Root_11.crtbin0 -> 737 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_26_Root_11.crtbin0 -> 729 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_27_Root_11.crtbin0 -> 705 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_28_Root_11.crtbin0 -> 700 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_29_Root_11.crtbin0 -> 698 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_2_Root_11.crtbin0 -> 695 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_2_Sub_CA_1_Root_4.crtbin0 -> 719 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_2_Sub_CA_1_Root_7.crtbin0 -> 746 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_2_Sub_CA_1_Root_8.crtbin0 -> 726 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_2_Sub_CA_2_Root_4.crtbin0 -> 719 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_2_Sub_CA_2_Root_7.crtbin0 -> 746 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_2_Sub_CA_2_Root_8.crtbin0 -> 726 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_30_Root_11.crtbin0 -> 716 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_31_Root_11.crtbin0 -> 745 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_32_Root_11.crtbin0 -> 591 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_33_Root_11.crtbin0 -> 620 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_34_Root_11.crtbin0 -> 637 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_3_Root_11.crtbin0 -> 719 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_4_Root_11.crtbin0 -> 738 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_5_Root_11.crtbin0 -> 748 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_6_Root_11.crtbin0 -> 713 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_7_Root_11.crtbin0 -> 709 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_8_Root_11.crtbin0 -> 709 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/end_certs/User_9_Root_11.crtbin0 -> 726 bytes-rw-r--r--xmlsecurity/test_docs/certs/p12/Root_11.p12bin0 -> 1797 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_10_Root_11.p12bin0 -> 1757 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_11_Root_11.p12bin0 -> 1749 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_12_Root_11.p12bin0 -> 1749 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_13_Root_11.p12bin0 -> 1757 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_14_Root_11.p12bin0 -> 1749 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_15_Root_11.p12bin0 -> 1741 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_16_Root_11.p12bin0 -> 1757 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_17_Root_11.p12bin0 -> 1765 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_18_Root_11.p12bin0 -> 1733 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_19_Root_11.p12bin0 -> 1725 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_1_Root_11.p12bin0 -> 1717 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_1_Sub_CA_1_Root_1.p12bin0 -> 1725 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_1_Sub_CA_1_Root_10.p12bin0 -> 1845 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_1_Sub_CA_1_Root_2.p12bin0 -> 1733 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_1_Sub_CA_1_Root_3.p12bin0 -> 1733 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_1_Sub_CA_1_Root_4.p12bin0 -> 1733 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_1_Sub_CA_1_Root_5.p12bin0 -> 1765 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_1_Sub_CA_1_Root_6.p12bin0 -> 1765 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_1_Sub_CA_1_Root_7.p12bin0 -> 1765 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_1_Sub_CA_1_Root_8.p12bin0 -> 1741 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_1_Sub_CA_1_Root_9.p12bin0 -> 1693 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_1_Sub_CA_2_Root_4.p12bin0 -> 1733 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_1_Sub_CA_2_Root_7.p12bin0 -> 1765 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_1_Sub_CA_2_Root_8.p12bin0 -> 1741 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_20_Root_11.p12bin0 -> 1725 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_21_Root_11.p12bin0 -> 1741 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_22_Root_11.p12bin0 -> 1757 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_23_Root_11.p12bin0 -> 1749 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_24_Root_11.p12bin0 -> 1749 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_25_Root_11.p12bin0 -> 1757 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_26_Root_11.p12bin0 -> 1749 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_27_Root_11.p12bin0 -> 1725 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_28_Root_11.p12bin0 -> 1717 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_29_Root_11.p12bin0 -> 1717 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_2_Root_11.p12bin0 -> 1709 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_2_Sub_CA_1_Root_4.p12bin0 -> 1733 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_2_Sub_CA_1_Root_7.p12bin0 -> 1765 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_2_Sub_CA_1_Root_8.p12bin0 -> 1741 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_2_Sub_CA_2_Root_4.p12bin0 -> 1733 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_2_Sub_CA_2_Root_7.p12bin0 -> 1765 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_2_Sub_CA_2_Root_8.p12bin0 -> 1741 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_30_Root_11.p12bin0 -> 1733 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_31_Root_11.p12bin0 -> 1765 bytes-rw-r--r--xmlsecurity/test_docs/certs/p12/User_32_Root_11.p12bin0 -> 1605 bytes-rw-r--r--xmlsecurity/test_docs/certs/p12/User_33_Root_11.p12bin0 -> 1732 bytes-rw-r--r--xmlsecurity/test_docs/certs/p12/User_34_Root_11.p12bin0 -> 1714 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_3_Root_11.p12bin0 -> 1733 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_4_Root_11.p12bin0 -> 1757 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_5_Root_11.p12bin0 -> 1765 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_6_Root_11.p12bin0 -> 1733 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_7_Root_11.p12bin0 -> 1725 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_8_Root_11.p12bin0 -> 1725 bytes-rwxr-xr-xxmlsecurity/test_docs/certs/p12/User_9_Root_11.p12bin0 -> 1741 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/aia_ca_issuers.odtbin0 -> 9511 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/aia_ocsp.odtbin0 -> 9376 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/aia_ocsp_revoked_chain.odtbin0 -> 9370 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/aia_ocsp_revoked_leaf.odtbin0 -> 9379 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/aia_ocsp_revoked_leaf_chain.odtbin0 -> 9378 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/crl.odtbin0 -> 9354 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/crl_revoked_chain.odtbin0 -> 9352 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/crl_revoked_leaf.odtbin0 -> 9363 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/crl_revoked_leaf_chain.odtbin0 -> 9351 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/crldp.odtbin0 -> 9379 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/crldp_no_intermediate_ca_revocation_info.odtbin0 -> 9382 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/crldp_no_root_revocation_info.odtbin0 -> 9379 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/crldp_revoked_chain.odtbin0 -> 9381 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/crldp_revoked_leaf.odtbin0 -> 9380 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/crldp_revoked_leaf_chain.odtbin0 -> 9383 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/dn_cyrillic_bmpstring.odtbin0 -> 9392 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/dn_latin_ext_greak_bmpstring.odtbin0 -> 9388 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/dn_multivalue_rdn.odtbin0 -> 9272 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/dn_quoting.odtbin0 -> 28429 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/dn_single_multivalue_rdn.odtbin0 -> 9299 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/dn_single_multivalue_rdn_with_quoting.odtbin0 -> 9313 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/incomplete_path.odtbin0 -> 9308 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/invalid_ooo2_x_doc1.odtbin0 -> 9550 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/invalid_ooo2_x_doc2.odtbin0 -> 6989 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/invalid_ooo2_x_macro1.odtbin0 -> 12911 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/invalid_ooo2_x_macro2.odtbin0 -> 12929 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/invalid_ooo2_x_macro3.odtbin0 -> 13043 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/invalid_ooo2_x_macro4.odtbin0 -> 13079 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/invalid_ooo2_x_macro5.odtbin0 -> 20336 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/invalid_ooo3_2_doc1.odtbin0 -> 9200 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/invalid_ooo3_2_doc3.odtbin0 -> 8908 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/invalid_ooo3_2_doc4.odtbin0 -> 8997 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/invalid_ooo_3_2_doc2.odtbin0 -> 9199 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/ocsp_crl.odtbin0 -> 9444 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/ocsp_crl_revoked_leaf.odtbin0 -> 9447 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/stateOrProvinceName.odtbin0 -> 10534 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/valid_no_revocation.odtbin0 -> 9341 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/valid_no_root_revocation_info.odtbin0 -> 9349 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/valid_no_sub_ca_revocation_info.odtbin0 -> 9352 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/valid_ooo2_x_doc1.odtbin0 -> 9880 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/valid_ooo2_x_doc_macro.odtbin0 -> 12425 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/valid_ooo2_x_doc_unsigned_macro.odtbin0 -> 10821 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/valid_ooo3_0_doc1.odtbin0 -> 12565 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/valid_ooo3_0_doc_macro.odtbin0 -> 15656 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/valid_ooo3_0_doc_unsigned_macro.odtbin0 -> 13975 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/valid_ooo3_2_doc1.odtbin0 -> 12514 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/valid_ooo3_2_doc_macro.odtbin0 -> 15579 bytes-rwxr-xr-xxmlsecurity/test_docs/documents/valid_ooo3_2_doc_unsigned_macro.odtbin0 -> 13929 bytes-rw-r--r--xmlsecurity/test_docs/test_description.odtbin0 -> 25782 bytes-rwxr-xr-xxmlsecurity/test_docs/tools/README.txt23
-rwxr-xr-xxmlsecurity/test_docs/tools/httpserv/build.xml74
-rwxr-xr-xxmlsecurity/test_docs/tools/httpserv/dist/README.TXT33
-rwxr-xr-xxmlsecurity/test_docs/tools/httpserv/dist/httpserv.jarbin0 -> 6994 bytes-rwxr-xr-xxmlsecurity/test_docs/tools/httpserv/manifest.mf3
-rwxr-xr-xxmlsecurity/test_docs/tools/httpserv/nbproject/build-impl.xml700
-rw-r--r--xmlsecurity/test_docs/tools/httpserv/nbproject/genfiles.properties9
-rw-r--r--xmlsecurity/test_docs/tools/httpserv/nbproject/project.properties65
-rwxr-xr-xxmlsecurity/test_docs/tools/httpserv/nbproject/project.xml15
-rwxr-xr-xxmlsecurity/test_docs/tools/httpserv/src/httpserv/Main.java213
-rw-r--r--xmlsecurity/tools/demo/JavaFlatFilter.java225
-rw-r--r--xmlsecurity/tools/demo/makefile.mk157
-rw-r--r--xmlsecurity/tools/demo/manifest1
-rw-r--r--xmlsecurity/tools/demo/mozprofile.cxx108
-rw-r--r--xmlsecurity/tools/demo/multisigdemo.cxx236
-rw-r--r--xmlsecurity/tools/demo/performance.cxx1880
-rw-r--r--xmlsecurity/tools/demo/readme.txt22
-rw-r--r--xmlsecurity/tools/demo/signdemo.cxx157
-rw-r--r--xmlsecurity/tools/demo/util.cxx111
-rw-r--r--xmlsecurity/tools/demo/util.hxx50
-rw-r--r--xmlsecurity/tools/demo/util2.cxx426
-rw-r--r--xmlsecurity/tools/demo/verifydemo.cxx109
-rw-r--r--xmlsecurity/tools/examples/demo-sample.gifbin0 -> 94 bytes-rw-r--r--xmlsecurity/tools/examples/demo-sample.sxwbin0 -> 19891 bytes-rw-r--r--xmlsecurity/tools/examples/demo-sample.xml3
-rw-r--r--xmlsecurity/tools/examples/enc-1.xml31
-rw-r--r--xmlsecurity/tools/examples/enc-2.xml58
-rw-r--r--xmlsecurity/tools/examples/eval_export.txt7
-rw-r--r--xmlsecurity/tools/examples/eval_import.txt14
-rw-r--r--xmlsecurity/tools/examples/evaluate_win.bat138
-rw-r--r--xmlsecurity/tools/examples/readme.txt7
-rw-r--r--xmlsecurity/tools/examples/s-in-e-1.xml53
-rw-r--r--xmlsecurity/tools/examples/s-in-e-2.xml53
-rw-r--r--xmlsecurity/tools/examples/sign-0.xml27
-rw-r--r--xmlsecurity/tools/examples/sign-1.xml29
-rw-r--r--xmlsecurity/tools/examples/sign-2.xml33
-rw-r--r--xmlsecurity/tools/examples/sign-3.xml41
-rw-r--r--xmlsecurity/tools/examples/sign-4.xml57
-rw-r--r--xmlsecurity/tools/examples/sign-5.xml89
-rw-r--r--xmlsecurity/tools/examples/uno_win.bat23
-rw-r--r--xmlsecurity/tools/examples/warmup.xml27
-rw-r--r--xmlsecurity/tools/standalone/csfit/certmngr.cxx189
-rw-r--r--xmlsecurity/tools/standalone/csfit/decrypter.cxx272
-rw-r--r--xmlsecurity/tools/standalone/csfit/encrypter.cxx309
-rw-r--r--xmlsecurity/tools/standalone/csfit/helper.cxx266
-rw-r--r--xmlsecurity/tools/standalone/csfit/helper.hxx241
-rw-r--r--xmlsecurity/tools/standalone/csfit/makefile.mk155
-rw-r--r--xmlsecurity/tools/standalone/csfit/signer.cxx370
-rw-r--r--xmlsecurity/tools/standalone/csfit/util/makefile.mk174
-rw-r--r--xmlsecurity/tools/standalone/csfit/verifier.cxx340
-rw-r--r--xmlsecurity/tools/standalone/mscsfit/certmngr.cxx152
-rw-r--r--xmlsecurity/tools/standalone/mscsfit/decrypter.cxx246
-rw-r--r--xmlsecurity/tools/standalone/mscsfit/encrypter.cxx308
-rw-r--r--xmlsecurity/tools/standalone/mscsfit/helper.cxx220
-rw-r--r--xmlsecurity/tools/standalone/mscsfit/helper.hxx204
-rw-r--r--xmlsecurity/tools/standalone/mscsfit/makefile.mk147
-rw-r--r--xmlsecurity/tools/standalone/mscsfit/signer.cxx342
-rw-r--r--xmlsecurity/tools/standalone/mscsfit/util/makefile.mk174
-rw-r--r--xmlsecurity/tools/standalone/mscsfit/verifier.cxx328
-rw-r--r--xmlsecurity/tools/standalone/readme.txt19
-rw-r--r--xmlsecurity/tools/uno/AdapterNode.java165
-rw-r--r--xmlsecurity/tools/uno/AttributeListHelper.java148
-rw-r--r--xmlsecurity/tools/uno/DomToTreeModelAdapter.java166
-rw-r--r--xmlsecurity/tools/uno/EncryptionEntity.java218
-rw-r--r--xmlsecurity/tools/uno/ParsingThread.java248
-rw-r--r--xmlsecurity/tools/uno/SAXEventCollector.java195
-rw-r--r--xmlsecurity/tools/uno/SAXEventPrinter.java320
-rw-r--r--xmlsecurity/tools/uno/SecurityEntity.java202
-rw-r--r--xmlsecurity/tools/uno/SignatureEntity.java288
-rw-r--r--xmlsecurity/tools/uno/TestTool.java1392
-rw-r--r--xmlsecurity/tools/uno/UnsolvedReferenceTableModel.java89
-rw-r--r--xmlsecurity/tools/uno/XMLFileFilter.java79
-rw-r--r--xmlsecurity/tools/uno/XMLSecurityFrameworkController.java1085
-rw-r--r--xmlsecurity/tools/uno/XMLTreeCellRanderer.java85
-rw-r--r--xmlsecurity/tools/uno/current.gifbin0 -> 94 bytes-rw-r--r--xmlsecurity/tools/uno/makefile.mk48
-rw-r--r--xmlsecurity/util/exports_xsmscrypt.dxp2
-rw-r--r--xmlsecurity/util/exports_xsnss.dxp2
-rw-r--r--xmlsecurity/util/makefile.mk201
-rw-r--r--xmlsecurity/util/target.pmk32
-rw-r--r--xmlsecurity/util/xmlsecurity.component37
-rw-r--r--xmlsecurity/util/xsec_fw.component56
-rw-r--r--xmlsecurity/util/xsec_fw.dxp2
-rw-r--r--xmlsecurity/util/xsec_xmlsec.component55
-rw-r--r--xmlsecurity/util/xsec_xmlsec.windows.component55
-rw-r--r--xmlsecurity/util/xsecctl.flt19
-rw-r--r--xmlsecurity/workben/makefile.mk71
-rw-r--r--xmlsecurity/workben/signaturetest.cxx551
-rw-r--r--xpdf/makefile.mk134
-rw-r--r--xpdf/prj/build.lst2
-rw-r--r--xpdf/prj/d.lst5
-rw-r--r--xpdf/xpdf-3.02.patch1872
-rwxr-xr-xxsltml/README14
-rwxr-xr-xxsltml/makefile.mk66
-rwxr-xr-xxsltml/prj/build.lst3
-rwxr-xr-xxsltml/prj/d.lst6
-rw-r--r--xsltml/xsltml_2.1.2.patch1747
-rwxr-xr-xzlib/make_patched_header.pl66
-rw-r--r--zlib/makefile.mk75
-rw-r--r--zlib/prj/build.lst2
-rw-r--r--zlib/prj/d.lst13
-rw-r--r--zlib/zlib-1.1.4.patch3244
49170 files changed, 11949560 insertions, 0 deletions
diff --git a/.gitattributes b/.gitattributes
new file mode 100644
index 000000000000..416fa8c63b14
--- /dev/null
+++ b/.gitattributes
@@ -0,0 +1,2 @@
+*.doc binary
+*.sdw binary
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000000..ddc5d8042ab4
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,87 @@
+# backup and temporary files
+*~
+.*.sw[op]
+
+# where the 'subrepos' and downloads are located
+/clone
+/src
+
+# the build directories
+/*/unxlng??
+/*/unxlng??.pro
+/*/unxlng???
+/*/unxlng???.pro
+/*/wntmsc???
+/*/wntmsc???.pro
+/*/wntgcc?
+/*/wntgcc?.pro
+/*/unxmac??
+/*/unxmac??.pro
+/*/unx?bsd??
+/*/unx?bsd??.pro
+/*/unxdfly??
+/*/unxdfly??.pro
+/*/unxso???
+/*/unxso???.pro
+/*/unxaig??
+/*/unxaig??.pro
+/*/unxios?
+/*/unxios?.pro
+/*/unxand?
+/*/unxand?.pro
+/workdir
+/solver
+/instsetoo_native/util/LibreOffice
+/instsetoo_native/util/LibreOffice_SDK
+
+# autoconf generated stuff
+/aclocal.m4
+/autom4te.cache
+/autogen.lastrun
+/bootstrap
+/ChangeLog
+/config.guess
+/config.log
+/config.parms
+/config.status
+/configure
+/Makefile
+/makefile.mk
+/set_soenv
+/visibility.cxx
+/post_download
+/bin/repo-list
+/src.downloaded
+/ooo.lst
+
+# misc
+/cross-build-toolset.built
+/set_soenv.last
+/set_soenv.stamp
+/warn
+/build.log
+/post_download.log
+/install
+/downloaded
+/Env.Build.sh
+/Env.Host.sh
+/ID
+/tags
+/docs
+/autogen.save
+
+/*/*.exe
+
+# external dlls etc
+/external/*/*.dll
+/external/*/*.exe
+/external/*/*.manifest
+/external/*/*.txt
+/moz/zipped/*.zip
+
+# links to the other repositories
+/binfilter
+/dictionaries
+/helpcontent2
+/translations
+
diff --git a/Makefile.in b/Makefile.in
new file mode 100644
index 000000000000..be50d1d4034d
--- /dev/null
+++ b/Makefile.in
@@ -0,0 +1,17 @@
+# just dumb wrapper; make install comes later
+
+SHELL=/bin/sh
+
+all:
+ . ./*Env.Set.sh && \
+ ./bootstrap && \
+ cd instsetoo_native && ../solenv/bin/build.pl --all
+
+distclean:
+ . ./*Env.Set.sh && \
+ dmake distclean
+
+clean:
+ . ./*Env.Set.sh && \
+ dmake clean
+
diff --git a/MathMLDTD/math.dtd b/MathMLDTD/math.dtd
new file mode 100644
index 000000000000..0349e3031acf
--- /dev/null
+++ b/MathMLDTD/math.dtd
@@ -0,0 +1,957 @@
+<!-- Copyright 1997-1999 World Wide Web Consortium, -->
+<!-- (Massachusetts Institute of Technology, -->
+<!-- Institut National de Recherche en Informatique et en Automatique, -->
+<!-- Keio University). All Rights Reserved. -->
+<!-- http://www.w3.org/Consortium/Legal/ -->
+
+<!-- Modified DTD for MathML 1.01 -->
+<!-- -->
+<!-- Original DTD: -->
+<!-- http://www.w3.org/1999/07/REC-MathML-19990707/mmlents.zip -->
+<!-- -->
+<!-- modified 20. June 2001: -->
+<!-- 1) added "math:" namespace prefix -->
+<!-- 2) removed entity include files -->
+<!-- 3) added copyright notice above to comply with -->
+<!-- W3C IPR Software Notice -->
+<!-- 4) added this comment block -->
+<!-- Modifications are intended to ease validation -->
+<!-- of MathML files written by StarMath 6.0 -->
+
+
+<!-- Content model for content and presentation -->
+<!-- and browser interface tags in MathML -->
+<!-- initial draft 9.May.1997 syntax = XML -->
+<!-- author = s.buswell sb@stilo.demon.co.uk -->
+<!-- -->
+<!-- revised 14.May.1997 by Robert Miner -->
+<!-- revised 29.June.1997 and 2.July.1997 by s.buswell -->
+<!-- -->
+<!-- revised 15.December.1997 by s.buswell -->
+<!-- revised 8.February.1998 by s.buswell -->
+<!-- revised 4.april.1998 by s.buswell -->
+<!-- 21.February.1999 entities and small revisions by d.carlisle -->
+<!-- -->
+<!-- W3C Recommendation 7 April 1998 -->
+<!-- ************************************************* -->
+
+<!-- general attribute definitions for class & style & id & other -->
+<!-- : attributes shared by all mathml elements -->
+
+<!ENTITY % att-globalatts 'math:class CDATA #IMPLIED
+ math:style CDATA #IMPLIED
+ math:id ID #IMPLIED
+ math:other CDATA #IMPLIED' >
+
+<!-- ************************************************* -->
+<!-- Presentation element set -->
+
+<!-- presentation attribute definitions -->
+
+<!ENTITY % att-fontsize 'math:fontsize CDATA #IMPLIED' >
+<!ENTITY % att-fontweight 'math:fontweight (normal | bold) #IMPLIED' >
+<!ENTITY % att-fontstyle 'math:fontstyle (normal | italic) #IMPLIED' >
+<!ENTITY % att-fontfamily 'math:fontfamily CDATA #IMPLIED' >
+<!ENTITY % att-color 'math:color CDATA #IMPLIED' >
+
+<!ENTITY % att-fontinfo '%att-fontsize;
+ %att-fontweight;
+ %att-fontstyle;
+ %att-fontfamily;
+ %att-color;' >
+
+<!ENTITY % att-form 'math:form (prefix | infix | postfix) #IMPLIED' >
+<!ENTITY % att-fence 'math:fence (true | false ) #IMPLIED' >
+<!ENTITY % att-separator 'math:separator (true | false ) #IMPLIED' >
+<!ENTITY % att-lspace 'math:lspace CDATA #IMPLIED' >
+<!ENTITY % att-rspace 'math:rspace CDATA #IMPLIED' >
+<!ENTITY % att-stretchy 'math:stretchy (true | false ) #IMPLIED' >
+<!ENTITY % att-symmetric 'math:symmetric (true | false ) #IMPLIED' >
+<!ENTITY % att-maxsize 'math:maxsize CDATA #IMPLIED' >
+<!ENTITY % att-minsize 'math:minsize CDATA #IMPLIED' >
+<!ENTITY % att-largeop 'math:largeop (true | false ) #IMPLIED' >
+<!ENTITY % att-movablelimits 'math:movablelimits (true | false )
+#IMPLIED' >
+<!ENTITY % att-accent 'math:accent (true | false) #IMPLIED'>
+
+<!ENTITY % att-opinfo '%att-form;
+ %att-fence;
+ %att-separator;
+ %att-lspace;
+ %att-rspace;
+ %att-stretchy;
+ %att-symmetric;
+ %att-maxsize;
+ %att-minsize;
+ %att-largeop;
+ %att-movablelimits;
+ %att-accent;' >
+
+<!ENTITY % att-width 'math:width CDATA #IMPLIED' >
+<!ENTITY % att-height 'math:height CDATA #IMPLIED' >
+<!ENTITY % att-depth 'math:depth CDATA #IMPLIED' >
+
+<!ENTITY % att-sizeinfo '%att-width;
+ %att-height;
+ %att-depth;' >
+
+<!ENTITY % att-lquote 'math:lquote CDATA #IMPLIED' >
+<!ENTITY % att-rquote 'math:rquote CDATA #IMPLIED' >
+
+<!ENTITY % att-linethickness 'math:linethickness CDATA #IMPLIED' >
+
+<!ENTITY % att-scriptlevel 'math:scriptlevel CDATA #IMPLIED'>
+<!ENTITY % att-displaystyle 'math:displaystyle (true | false)
+#IMPLIED'>
+<!ENTITY % att-scriptsizemultiplier 'math:scriptsizemultiplier CDATA
+#IMPLIED' >
+<!ENTITY % att-scriptminsize 'math:scriptminsize CDATA #IMPLIED'>
+<!ENTITY % att-background 'math:background CDATA #IMPLIED' >
+
+<!ENTITY % att-open 'math:open CDATA #IMPLIED' >
+<!ENTITY % att-close 'math:close CDATA #IMPLIED' >
+<!ENTITY % att-separators 'math:separators CDATA #IMPLIED' >
+
+<!ENTITY % att-subscriptshift 'math:subscriptshift CDATA #IMPLIED'>
+<!ENTITY % att-superscriptshift 'math:superscriptshift CDATA #IMPLIED' >
+
+<!ENTITY % att-accentunder 'math:accentunder (true | false)
+#IMPLIED'>
+
+<!ENTITY % att-align 'math:align CDATA #IMPLIED' >
+<!ENTITY % att-rowalign 'math:rowalign CDATA #IMPLIED' >
+<!ENTITY % att-columnalign 'math:columnalign CDATA #IMPLIED' >
+<!ENTITY % att-groupalign 'math:groupalign CDATA #IMPLIED' >
+<!ENTITY % att-alignmentscope 'math:alignmentscope CDATA #IMPLIED' >
+
+<!ENTITY % att-rowspacing 'math:rowspacing CDATA #IMPLIED' >
+<!ENTITY % att-columnspacing 'math:columnspacing CDATA #IMPLIED' >
+<!ENTITY % att-rowlines 'math:rowlines CDATA #IMPLIED' >
+<!ENTITY % att-columnlines 'math:columnlines CDATA #IMPLIED' >
+<!ENTITY % att-frame 'math:frame (none | solid | dashed)
+#IMPLIED' >
+<!ENTITY % att-framespacing 'math:framespacing CDATA #IMPLIED' >
+<!ENTITY % att-equalrows 'math:equalrows CDATA #IMPLIED' >
+<!ENTITY % att-equalcolumns 'math:equalcolumns CDATA #IMPLIED' >
+
+<!ENTITY % att-tableinfo '%att-align;
+ %att-rowalign;
+ %att-columnalign;
+ %att-groupalign;
+ %att-alignmentscope;
+ %att-rowspacing;
+ %att-columnspacing;
+ %att-rowlines;
+ %att-columnlines;
+ %att-frame;
+ %att-framespacing;
+ %att-equalrows;
+ %att-equalcolumns;
+ %att-displaystyle;' >
+
+<!ENTITY % att-rowspan 'math:rowspan CDATA #IMPLIED' >
+<!ENTITY % att-columnspan 'math:columnspan CDATA #IMPLIED' >
+
+<!ENTITY % att-edge 'math:edge (left | right) #IMPLIED ' >
+
+<!ENTITY % att-actiontype 'math:actiontype CDATA #IMPLIED' >
+<!ENTITY % att-selection 'math:selection CDATA #IMPLIED ' >
+
+<!-- presentation token schemata with content-->
+
+<!ENTITY % ptoken "math:mi | math:mn | math:mo | math:mtext | math:ms" >
+
+<!ATTLIST math:mi %att-fontinfo;
+ %att-globalatts; >
+
+<!ATTLIST math:mn %att-fontinfo;
+ %att-globalatts; >
+
+<!ATTLIST math:mo %att-fontinfo;
+ %att-opinfo;
+ %att-globalatts; >
+
+<!ATTLIST math:mtext %att-fontinfo;
+ %att-globalatts; >
+
+<!ATTLIST math:ms %att-fontinfo;
+ %att-lquote;
+ %att-rquote;
+ %att-globalatts; >
+
+<!-- empty presentation token schemata -->
+
+<!ENTITY % petoken "math:mspace" >
+<!ELEMENT math:mspace EMPTY >
+
+<!ATTLIST math:mspace %att-sizeinfo;
+ %att-globalatts; >
+
+<!-- presentation general layout schemata -->
+
+<!ENTITY % pgenschema "math:mrow|math:mfrac|math:msqrt|math:mroot|
+ math:mstyle|math:merror|math:mpadded| math:mphantom|math:mfenced" >
+
+<!ATTLIST math:mrow %att-globalatts; >
+
+<!ATTLIST math:mfrac %att-linethickness;
+ %att-globalatts; >
+
+<!ATTLIST math:msqrt %att-globalatts; >
+
+<!ATTLIST math:mroot %att-globalatts; >
+
+<!ATTLIST math:mstyle %att-fontinfo;
+ %att-opinfo;
+ %att-lquote;
+ %att-rquote;
+ %att-linethickness;
+ %att-scriptlevel;
+ %att-scriptsizemultiplier;
+ %att-scriptminsize;
+ %att-background;
+ %att-open;
+ %att-close;
+ %att-separators;
+ %att-subscriptshift;
+ %att-superscriptshift;
+ %att-accentunder;
+ %att-tableinfo;
+ %att-rowspan;
+ %att-columnspan;
+ %att-edge;
+ %att-actiontype;
+ %att-selection;
+ %att-globalatts; >
+
+<!ATTLIST math:merror %att-globalatts; >
+
+<!ATTLIST math:mpadded %att-sizeinfo;
+ %att-lspace;
+ %att-globalatts; >
+
+<!ATTLIST math:mphantom %att-globalatts; >
+
+<!ATTLIST math:mfenced %att-open;
+ %att-close;
+ %att-separators;
+ %att-globalatts; >
+
+<!-- presentation layout schemata : scripts and limits -->
+
+<!ENTITY % pscrschema "math:msub|math:msup|math:msubsup|
+ math:munder|math:mover|math:munderover|math:mmultiscripts" >
+
+<!ATTLIST math:msub %att-subscriptshift;
+ %att-globalatts; >
+
+<!ATTLIST math:msup %att-superscriptshift;
+ %att-globalatts; >
+
+<!ATTLIST math:msubsup %att-subscriptshift;
+ %att-superscriptshift;
+ %att-globalatts; >
+
+<!ATTLIST math:munder %att-accentunder;
+ %att-globalatts; >
+
+<!ATTLIST math:mover %att-accent;
+ %att-globalatts; >
+
+<!ATTLIST math:munderover %att-accent;
+ %att-accentunder;
+ %att-globalatts; >
+
+<!ATTLIST math:mmultiscripts
+ %att-subscriptshift;
+ %att-superscriptshift;
+ %att-globalatts; >
+
+<!-- presentation layout schemata: script empty elements -->
+
+<!ENTITY % pscreschema "math:mprescripts|math:none" >
+
+<!ELEMENT math:mprescripts EMPTY >
+<!ATTLIST math:mprescripts %att-globalatts; >
+
+<!ELEMENT math:none EMPTY >
+<!ATTLIST math:none %att-globalatts; >
+
+<!-- presentation layout schemata: tables -->
+
+<!ENTITY % ptabschema "math:mtable|math:mtr|math:mtd" >
+
+<!ATTLIST math:mtable %att-tableinfo;
+ %att-globalatts; >
+
+<!ATTLIST math:mtr %att-rowalign;
+ %att-columnalign;
+ %att-groupalign;
+ %att-globalatts; >
+
+<!ATTLIST math:mtd %att-rowalign;
+ %att-columnalign;
+ %att-groupalign;
+ %att-rowspan;
+ %att-columnspan;
+ %att-globalatts; >
+
+<!ENTITY % plschema "%pgenschema;|%pscrschema;|%ptabschema;" >
+
+<!-- empty presentation layout schemata -->
+
+<!ENTITY % peschema "math:maligngroup | math:malignmark" >
+
+<!ELEMENT math:malignmark EMPTY >
+
+<!ATTLIST math:malignmark %att-edge;
+ %att-globalatts; >
+
+<!ELEMENT math:maligngroup EMPTY >
+<!ATTLIST math:maligngroup %att-groupalign;
+ %att-globalatts; >
+
+<!-- presentation action schemata -->
+
+<!ENTITY % pactions "math:maction" >
+<!ATTLIST math:maction %att-actiontype;
+ %att-selection;
+ %att-globalatts; >
+
+<!-- Presentation entity for substitution into content tag constructs -->
+<!-- excludes elements which are not valid as expressions -->
+
+<!ENTITY % PresInCont "%ptoken; | %petoken; |
+ %plschema; | %peschema; | %pactions;">
+
+<!-- Presentation entity - all presentation constructs -->
+
+<!ENTITY % Presentation "%ptoken; | %petoken; | %pscreschema; |
+ %plschema; | %peschema; | %pactions;">
+
+<!-- ************************************************* -->
+<!-- Content element set -->
+<!-- attribute definitions -->
+
+<!ENTITY % att-base 'math:base CDATA "10"' >
+<!ENTITY % att-closure 'math:closure CDATA "closed"' >
+<!ENTITY % att-definition 'math:definitionURL CDATA ""' >
+<!ENTITY % att-encoding 'math:encoding CDATA ""' >
+<!ENTITY % att-nargs 'math:nargs CDATA "1"' >
+<!ENTITY % att-occurence 'math:occurence CDATA "function-model"' >
+<!ENTITY % att-order 'math:order CDATA "numeric"' >
+<!ENTITY % att-scope 'math:scope CDATA "local"' >
+<!ENTITY % att-type 'math:type CDATA #IMPLIED' >
+
+<!-- content leaf token elements -->
+
+<!ENTITY % ctoken "math:ci | math:cn" >
+
+<!ATTLIST math:ci %att-type;
+ %att-globalatts; >
+
+<!ATTLIST math:cn %att-type;
+ %att-base;
+ %att-globalatts; >
+
+<!-- content elements - specials -->
+
+<!ENTITY % cspecial "math:apply | math:reln | math:lambda" >
+
+<!ATTLIST math:apply %att-globalatts; >
+
+<!ATTLIST math:reln %att-globalatts; >
+
+<!ATTLIST math:lambda %att-globalatts; >
+
+<!-- content elements - others -->
+
+<!ENTITY % cother "math:condition | math:declare | math:sep" >
+
+<!ATTLIST math:condition %att-globalatts; >
+
+<!ATTLIST math:declare %att-type;
+ %att-scope;
+ %att-nargs;
+ %att-occurence;
+ %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:sep EMPTY >
+<!ATTLIST math:sep %att-globalatts; >
+
+<!-- content elements - semantic mapping -->
+
+<!ENTITY % csemantics "math:semantics | math:annotation | math:annotation-xml" >
+
+<!ATTLIST math:semantics %att-definition;
+ %att-globalatts; >
+
+<!ATTLIST math:annotation %att-encoding;
+ %att-globalatts; >
+
+<!ATTLIST math:annotation-xml %att-encoding;
+ %att-globalatts; >
+
+<!-- content elements - constructors -->
+
+<!ENTITY % cconstructor "math:interval | math:list | math:matrix | math:matrixrow | math:set |
+math:vector" >
+
+<!ATTLIST math:interval %att-closure;
+ %att-globalatts; >
+
+<!ATTLIST math:set %att-globalatts; >
+
+<!ATTLIST math:list %att-order;
+ %att-globalatts; >
+
+<!ATTLIST math:vector %att-globalatts; >
+
+<!ATTLIST math:matrix %att-globalatts; >
+
+<!ATTLIST math:matrixrow %att-globalatts; >
+
+<!-- content elements - operators -->
+
+<!ENTITY % cfuncop1ary "math:inverse | math:ident " >
+
+<!ELEMENT math:inverse EMPTY >
+<!ATTLIST math:inverse %att-definition;
+ %att-globalatts; >
+
+<!ENTITY % cfuncopnary "math:fn | math:compose" >
+
+<!ATTLIST math:fn %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:ident EMPTY >
+<!ATTLIST math:ident %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:compose EMPTY >
+<!ATTLIST math:compose %att-definition;
+ %att-globalatts; >
+
+<!ENTITY % carithop1ary "math:abs | math:conjugate | math:exp | math:factorial" >
+
+<!ELEMENT math:exp EMPTY >
+<!ATTLIST math:exp %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:abs EMPTY >
+<!ATTLIST math:abs %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:conjugate EMPTY >
+<!ATTLIST math:conjugate %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:factorial EMPTY >
+<!ATTLIST math:factorial %att-definition;
+ %att-globalatts; >
+
+<!ENTITY % carithop1or2ary "math:minus" >
+
+<!ELEMENT math:minus EMPTY >
+<!ATTLIST math:minus %att-definition;
+ %att-globalatts; >
+
+<!ENTITY % carithop2ary "math:quotient | math:divide | math:power | math:rem" >
+
+<!ELEMENT math:quotient EMPTY >
+<!ATTLIST math:quotient %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:divide EMPTY >
+<!ATTLIST math:divide %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:power EMPTY >
+<!ATTLIST math:power %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:rem EMPTY >
+<!ATTLIST math:rem %att-definition;
+ %att-globalatts; >
+
+<!ENTITY % carithopnary "math:plus | math:times | math:max | math:min | math:gcd" >
+
+<!ELEMENT math:plus EMPTY >
+<!ATTLIST math:plus %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:max EMPTY >
+<!ATTLIST math:max %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:min EMPTY >
+<!ATTLIST math:min %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:times EMPTY >
+<!ATTLIST math:times %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:gcd EMPTY >
+<!ATTLIST math:gcd %att-definition;
+ %att-globalatts; >
+
+<!ENTITY % carithoproot "math:root" >
+
+<!ELEMENT math:root EMPTY >
+<!ATTLIST math:root %att-definition;
+ %att-globalatts; >
+
+<!ENTITY % clogicopquant "math:exists | math:forall" >
+
+<!ELEMENT math:exists EMPTY >
+<!ATTLIST math:exists %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:forall EMPTY >
+<!ATTLIST math:forall %att-definition;
+ %att-globalatts; >
+
+<!ENTITY % clogicopnary "math:and | math:or | math:xor" >
+
+<!ELEMENT math:and EMPTY >
+<!ATTLIST math:and %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:or EMPTY >
+<!ATTLIST math:or %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:xor EMPTY >
+<!ATTLIST math:xor %att-definition;
+ %att-globalatts; >
+
+<!ENTITY % clogicop1ary "math:not" >
+
+<!ELEMENT math:not EMPTY >
+<!ATTLIST math:not %att-definition;
+ %att-globalatts; >
+
+<!ENTITY % clogicop2ary "math:implies" >
+
+<!ELEMENT math:implies EMPTY >
+<!ATTLIST math:implies %att-definition;
+ %att-globalatts; >
+
+<!ENTITY % ccalcop "math:log | math:int | math:diff | math:partialdiff" >
+
+<!ELEMENT math:log EMPTY >
+<!ATTLIST math:log %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:int EMPTY >
+<!ATTLIST math:int %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:diff EMPTY >
+<!ATTLIST math:diff %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:partialdiff EMPTY >
+<!ATTLIST math:partialdiff %att-definition;
+ %att-globalatts; >
+
+<!ENTITY % ccalcop1ary "math:ln" >
+
+<!ELEMENT math:ln EMPTY >
+<!ATTLIST math:ln %att-definition;
+ %att-globalatts; >
+
+<!ENTITY % csetop2ary "math:setdiff" >
+
+<!ELEMENT math:setdiff EMPTY >
+<!ATTLIST math:setdiff %att-definition;
+ %att-globalatts; >
+
+<!ENTITY % csetopnary "math:union | math:intersect" >
+
+<!ELEMENT math:union EMPTY >
+<!ATTLIST math:union %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:intersect EMPTY >
+<!ATTLIST math:intersect %att-definition;
+ %att-globalatts; >
+
+<!ENTITY % cseqop "math:sum | math:product | math:limit" >
+
+<!ELEMENT math:sum EMPTY >
+<!ATTLIST math:sum %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:product EMPTY >
+<!ATTLIST math:product %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:limit EMPTY >
+<!ATTLIST math:limit %att-definition;
+ %att-globalatts; >
+
+<!ENTITY % ctrigop "math:sin | math:cos | math:tan | math:sec | math:csc | math:cot | math:sinh
+ | math:cosh | math:tanh | math:sech | math:csch | math:coth
+ | math:arcsin | math:arccos | math:arctan" >
+
+<!ELEMENT math:sin EMPTY >
+<!ATTLIST math:sin %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:cos EMPTY >
+<!ATTLIST math:cos %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:tan EMPTY >
+<!ATTLIST math:tan %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:sec EMPTY >
+<!ATTLIST math:sec %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:csc EMPTY >
+<!ATTLIST math:csc %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:cot EMPTY >
+<!ATTLIST math:cot %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:sinh EMPTY >
+<!ATTLIST math:sinh %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:cosh EMPTY >
+<!ATTLIST math:cosh %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:tanh EMPTY >
+<!ATTLIST math:tanh %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:sech EMPTY >
+<!ATTLIST math:sech %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:csch EMPTY >
+<!ATTLIST math:csch %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:coth EMPTY >
+<!ATTLIST math:coth %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:arcsin EMPTY >
+<!ATTLIST math:arcsin %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:arccos EMPTY >
+<!ATTLIST math:arccos %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:arctan EMPTY >
+<!ATTLIST math:arctan %att-definition;
+ %att-globalatts; >
+
+<!ENTITY % cstatopnary "math:mean | math:sdev | math:variance | math:median | math:mode" >
+
+<!ELEMENT math:mean EMPTY >
+<!ATTLIST math:mean %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:sdev EMPTY >
+<!ATTLIST math:sdev %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:variance EMPTY >
+<!ATTLIST math:variance %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:median EMPTY >
+<!ATTLIST math:median %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:mode EMPTY >
+<!ATTLIST math:mode %att-definition;
+ %att-globalatts; >
+
+<!ENTITY % cstatopmoment "math:moment" >
+
+<!ELEMENT math:moment EMPTY >
+<!ATTLIST math:moment %att-definition;
+ %att-globalatts; >
+
+<!ENTITY % clalgop1ary "math:determinant | math:transpose" >
+
+<!ELEMENT math:determinant EMPTY >
+<!ATTLIST math:determinant %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:transpose EMPTY >
+<!ATTLIST math:transpose %att-definition;
+ %att-globalatts; >
+
+<!ENTITY % clalgopnary "math:selector" >
+
+<!ELEMENT math:selector EMPTY >
+<!ATTLIST math:selector %att-definition;
+ %att-globalatts; >
+
+<!-- content elements - relations -->
+
+<!ENTITY % cgenrel2ary "math:neq" >
+
+<!ELEMENT math:neq EMPTY >
+<!ATTLIST math:neq %att-definition;
+ %att-globalatts; >
+
+<!ENTITY % cgenrelnary "math:eq | math:leq | math:lt | math:geq | math:gt" >
+
+<!ELEMENT math:eq EMPTY >
+<!ATTLIST math:eq %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:gt EMPTY >
+<!ATTLIST math:gt %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:lt EMPTY >
+<!ATTLIST math:lt %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:geq EMPTY >
+<!ATTLIST math:geq %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:leq EMPTY >
+<!ATTLIST math:leq %att-definition;
+ %att-globalatts; >
+
+<!ENTITY % csetrel2ary "math:in | math:notin | math:notsubset | math:notprsubset" >
+
+<!ELEMENT math:in EMPTY >
+<!ATTLIST math:in %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:notin EMPTY >
+<!ATTLIST math:notin %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:notsubset EMPTY >
+<!ATTLIST math:notsubset %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:notprsubset EMPTY >
+<!ATTLIST math:notprsubset %att-definition;
+ %att-globalatts; >
+
+<!ENTITY % csetrelnary "math:subset | math:prsubset" >
+
+<!ELEMENT math:subset EMPTY >
+<!ATTLIST math:subset %att-definition;
+ %att-globalatts; >
+
+<!ELEMENT math:prsubset EMPTY >
+<!ATTLIST math:prsubset %att-definition;
+ %att-globalatts; >
+
+<!ENTITY % cseqrel2ary "math:tendsto" >
+
+<!ELEMENT math:tendsto EMPTY >
+<!ATTLIST math:tendsto %att-definition;
+ %att-type;
+ %att-globalatts; >
+
+<!-- content elements - quantifiers -->
+
+<!ENTITY % cquantifier "math:lowlimit | math:uplimit | math:bvar | math:degree | math:logbase" >
+
+<!ATTLIST math:lowlimit %att-globalatts; >
+
+<!ATTLIST math:uplimit %att-globalatts; >
+
+<!ATTLIST math:bvar %att-globalatts; >
+
+<!ATTLIST math:degree %att-globalatts; >
+
+<!ATTLIST math:logbase %att-globalatts; >
+
+<!-- operator groups -->
+
+<!ENTITY % cop1ary "%cfuncop1ary; | %carithop1ary; | %clogicop1ary;
+ | %ccalcop1ary; | %ctrigop; | %clalgop1ary; " >
+
+<!ENTITY % cop2ary "%carithop2ary; | %clogicop2ary;| %csetop2ary; " >
+
+<!ENTITY % copnary "%cfuncopnary; | %carithopnary; | %clogicopnary;
+ | %csetopnary; | %cstatopnary; | %clalgopnary; " >
+
+<!ENTITY % copmisc "%carithoproot; | %carithop1or2ary; | %ccalcop;
+ | %cseqop; | %cstatopmoment; | %clogicopquant;" >
+
+<!-- relation groups -->
+
+<!ENTITY % crel2ary "%cgenrel2ary; | %csetrel2ary; | %cseqrel2ary; " >
+
+<!ENTITY % crelnary "%cgenrelnary; | %csetrelnary;" >
+
+<!-- content constructs - all -->
+
+<!ENTITY % Content "%ctoken; | %cspecial; | %cother; | %csemantics;
+ |%cconstructor; | %cquantifier;
+ |%cop1ary; |%cop2ary; |%copnary; |%copmisc;
+ |%crel2ary; |%crelnary;" >
+
+<!-- content constructs for substitution in presentation structures -->
+
+<!ENTITY % ContInPres "math:ci | math:cn | math:apply | math:fn | math:lambda | math:reln
+ | math:interval | math:list | math:matrix |math:matrixrow
+ | math:set | math:vector | math:semantics" > <!--dpc-->
+
+<!-- ************************************************* -->
+
+<!-- recursive definition for content of expressions -->
+<!-- include presentation tag constructs at lowest level -->
+<!-- so presentation layout schemata hold presentation or Content -->
+<!-- include Content tag constructs at lowest level -->
+<!-- so Content tokens hold PCDATA or Presentation at leaf level -->
+<!-- (for permitted substitutable elements in context) -->
+
+<!ENTITY % ContentExpression "(%Content; | %PresInCont;)* " >
+<!ENTITY % PresExpression "(%Presentation; | %ContInPres;)* " >
+<!ENTITY % MathExpression "(%PresInCont; | %ContInPres;)* " >
+
+<!-- content token elements (may hold embedded presentation constructs)
+-->
+
+<!ELEMENT math:ci (#PCDATA | %PresInCont;)* >
+<!ELEMENT math:cn (#PCDATA | math:sep | %PresInCont;)* >
+
+<!-- content special elements -->
+
+<!ELEMENT math:apply (%ContentExpression;) >
+<!ELEMENT math:reln (%ContentExpression;) >
+<!ELEMENT math:lambda (%ContentExpression;) >
+
+<!-- content other elements -->
+
+<!ELEMENT math:condition (%ContentExpression;) >
+<!ELEMENT math:declare (%ContentExpression;) >
+
+<!-- content semantics elements -->
+
+<!ELEMENT math:semantics (%ContentExpression;) >
+<!ELEMENT math:annotation (#PCDATA) >
+<!ELEMENT math:annotation-xml (%ContentExpression;) >
+
+<!-- content constructor elements -->
+
+<!ELEMENT math:interval (%ContentExpression;) >
+<!ELEMENT math:set (%ContentExpression;) >
+<!ELEMENT math:list (%ContentExpression;) >
+<!ELEMENT math:vector (%ContentExpression;) >
+<!ELEMENT math:matrix (%ContentExpression;) >
+<!ELEMENT math:matrixrow (%ContentExpression;) >
+
+<!-- content operator element (user-defined) -->
+
+<!ELEMENT math:fn (%ContentExpression;) >
+
+<!-- content quantifier elements -->
+
+<!ELEMENT math:lowlimit (%ContentExpression;) >
+<!ELEMENT math:uplimit (%ContentExpression;) >
+<!ELEMENT math:bvar (%ContentExpression;) >
+<!ELEMENT math:degree (%ContentExpression;) >
+<!ELEMENT math:logbase (%ContentExpression;) >
+
+<!-- ************************************************* -->
+<!-- presentation layout schema contain tokens, layout and content
+schema -->
+
+<!ELEMENT math:mstyle (%PresExpression;) >
+<!ELEMENT math:merror (%PresExpression;) >
+<!ELEMENT math:mphantom (%PresExpression;) >
+<!ELEMENT math:mrow (%PresExpression;) >
+<!ELEMENT math:mfrac (%PresExpression;) >
+<!ELEMENT math:msqrt (%PresExpression;) >
+<!ELEMENT math:mroot (%PresExpression;) >
+<!ELEMENT math:msub (%PresExpression;) >
+<!ELEMENT math:msup (%PresExpression;) >
+<!ELEMENT math:msubsup (%PresExpression;) >
+<!ELEMENT math:mmultiscripts (%PresExpression;) >
+<!ELEMENT math:munder (%PresExpression;) >
+<!ELEMENT math:mover (%PresExpression;) >
+<!ELEMENT math:munderover (%PresExpression;) >
+<!ELEMENT math:mtable (%PresExpression;) >
+<!ELEMENT math:mtr (%PresExpression;) >
+<!ELEMENT math:mtd (%PresExpression;) >
+<!ELEMENT math:maction (%PresExpression;) >
+<!ELEMENT math:mfenced (%PresExpression;) >
+<!ELEMENT math:mpadded (%PresExpression;) >
+
+<!-- presentation tokens contain PCDATA or malignmark constructs -->
+
+<!ELEMENT math:mi (#PCDATA | math:malignmark )* >
+<!ELEMENT math:mn (#PCDATA | math:malignmark )* >
+<!ELEMENT math:mo (#PCDATA | math:malignmark )* >
+<!ELEMENT math:mtext (#PCDATA | math:malignmark )* >
+<!ELEMENT math:ms (#PCDATA | math:malignmark )* >
+
+<!-- ************************************************* -->
+<!-- browser interface definition -->
+
+<!-- attributes for top level math element -->
+
+<!ENTITY % att-macros 'math:macros CDATA #IMPLIED' >
+<!ENTITY % att-mode 'math:mode CDATA #IMPLIED' >
+
+<!ENTITY % att-topinfo '%att-globalatts;
+ %att-macros;
+ %att-mode;' >
+
+<!-- attributes for browser interface element element -->
+
+<!ENTITY % att-name 'math:name CDATA #IMPLIED' >
+<!ENTITY % att-baseline 'math:baseline CDATA #IMPLIED' >
+<!ENTITY % att-overflow 'math:overflow
+(scroll|elide|truncate|scale) "scroll"' >
+<!ENTITY % att-altimg 'math:altimg CDATA #IMPLIED' >
+<!ENTITY % att-alttext 'math:alttext CDATA #IMPLIED' >
+
+<!ENTITY % att-browif '%att-type;
+ %att-name;
+ %att-height;
+ %att-width;
+ %att-baseline;
+ %att-overflow;
+ %att-altimg;
+ %att-alttext; ' >
+
+<!-- the top level math element -->
+<!-- math contains MathML encoded mathematics -->
+<!-- math has the browser info attributes iff it is the
+ browser interface element also -->
+
+<!ELEMENT math:math (%MathExpression;) >
+
+<!ATTLIST math:math %att-topinfo;
+ %att-browif; >
+
+
+<!-- ENTITY sets -->
+
+<!-- ... removed ... -->
+
+
+<!-- MathML new characters -->
+
+<!-- ... removed ... -->
+
+<!-- end of ENTITY sets -->
+<!-- end of DTD fragment -->
+<!-- ************************************************* -->
diff --git a/MathMLDTD/prj/build.lst b/MathMLDTD/prj/build.lst
new file mode 100644
index 000000000000..98f9bc77da80
--- /dev/null
+++ b/MathMLDTD/prj/build.lst
@@ -0,0 +1,3 @@
+md MathMLDTD : solenv NULL
+md MathMLDTD usr1 - all md_mkout NULL
+md MathMLDTD\prj get - all md_prj NULL
diff --git a/MathMLDTD/prj/d.lst b/MathMLDTD/prj/d.lst
new file mode 100644
index 000000000000..40d4a6a44f05
--- /dev/null
+++ b/MathMLDTD/prj/d.lst
@@ -0,0 +1,2 @@
+..\math.dtd %_DEST%\bin%_EXT%\math.dtd
+..\w3c_ipr_software_notice.html %_DEST%\bin%_EXT%\w3c_ipr_software_notice.html
diff --git a/MathMLDTD/w3c_ipr_software_notice.html b/MathMLDTD/w3c_ipr_software_notice.html
new file mode 100644
index 000000000000..3a4ed535c1a7
--- /dev/null
+++ b/MathMLDTD/w3c_ipr_software_notice.html
@@ -0,0 +1,105 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+"http://www.w3.org/TR/html4/loose.dtd">
+
+<!-- W3C IPR SOFTWARE NOTICE -->
+<!-- downloaded from: -->
+<!-- http://www.w3.org/Consortium/Legal/copyright-software-19980720 -->
+<!-- -->
+<!-- Changed: 24. July 2001 -->
+<!-- 1) removed link to stylesheet -->
+<!-- 2) removed "webmaster" link -->
+<!-- 3) changed site-relative URLs to absolute URLs -->
+<!-- 4) added this comment block -->
+<!-- Changes are intended to allow proper -->
+<!-- off-line viewing of the license. -->
+
+<html>
+<head>
+<meta name="generator" content="HTML Tidy, see www.w3.org">
+<meta http-equiv="Content-Type" content=
+"text/html; charset=iso-8859-1">
+<title>W3C IPR SOFTWARE NOTICE</title>
+</head>
+<body text="#000000" bgcolor="#FFFFFF">
+<h1>W3C<sup>&reg;</sup> SOFTWARE NOTICE AND LICENSE</h1>
+
+<h3>Copyright &copy; 1994-2001 <a href="http://www.w3.org/">World
+Wide Web Consortium</a>, (<a href=
+"http://www.lcs.mit.edu/">Massachusetts Institute of
+Technology</a>, <a href="http://www.inria.fr/">Institut National de
+Recherche en Informatique et en Automatique</a>, <a href=
+"http://www.keio.ac.jp/">Keio University</a>). All Rights Reserved.
+http://www.w3.org/Consortium/Legal/</h3>
+
+<p>This W3C work (including software, documents, or other related
+items) is being provided by the copyright holders under the
+following license. By obtaining, using and/or copying this work,
+you (the licensee) agree that you have read, understood, and will
+comply with the following terms and conditions:</p>
+
+<p>Permission to use, copy, modify, and distribute this software
+and its documentation, with or without modification,&nbsp; for any
+purpose and without fee or royalty is hereby granted, provided that
+you include the following on ALL copies of the software and
+documentation or portions thereof, including modifications, that
+you make:</p>
+
+<ol>
+<li>The full text of this NOTICE in a location viewable to users of
+the redistributed or derivative work.</li>
+
+<li>Any pre-existing intellectual property disclaimers, notices, or
+terms and conditions. If none exist, a short notice of the
+following form (hypertext is preferred, text is permitted) should
+be used within the body of any redistributed or derivative code:
+"Copyright &copy; [$date-of-software] <a href="http://www.w3.org/">
+World Wide Web Consortium</a>, (<a href=
+"http://www.lcs.mit.edu/">Massachusetts Institute of
+Technology</a>, <a href="http://www.inria.fr/">Institut National de
+Recherche en Informatique et en Automatique</a>, <a href=
+"http://www.keio.ac.jp/">Keio University</a>). All Rights Reserved.
+http://www.w3.org/Consortium/Legal/"</li>
+
+<li>Notice of any changes or modifications to the W3C files,
+including the date changes were made. (We recommend you provide
+URIs to the location from which the code is derived.)</li>
+</ol>
+
+<p>THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND
+COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF
+MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE
+USE OF THE SOFTWARE OR DOCUMENTATION WILL NOT INFRINGE ANY THIRD
+PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.</p>
+
+<p>COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT,
+SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE
+SOFTWARE OR DOCUMENTATION.</p>
+
+<p>The name and trademarks of copyright holders may NOT be used in
+advertising or publicity pertaining to the software without
+specific, written prior permission. Title to copyright in this
+software and any associated documentation will at all times remain
+with copyright holders.</p>
+
+<p>____________________________________</p>
+
+<p>This formulation of W3C's notice and license became active on
+August 14 1998 so as to improve compatibility with GPL. This
+version ensures that W3C software licensing terms are no more
+restrictive than GPL and consequently W3C software may be
+distributed in GPL packages. See the <a href=
+"http://www.w3.org/Consortium/Legal/copyright-software-19980519.html">older formulation</a> for the
+policy prior to this date. Please see our <a href="http://www.w3.org/Consortium/Legal/IPR-FAQ.html">
+Copyright FAQ</a> for common questions about using materials from
+our site, including specific terms and conditions for packages like
+libwww, Amaya, and Jigsaw. Other questions about this notice can be
+directed to <a href="mailto:site-policy@w3.org">
+site-policy@w3.org</a>.<br>
+&nbsp;</p>
+
+<p>&nbsp;</p>
+
+</body>
+</html>
+
diff --git a/UnoControls/inc/basecontainercontrol.hxx b/UnoControls/inc/basecontainercontrol.hxx
new file mode 100644
index 000000000000..34563ec3441d
--- /dev/null
+++ b/UnoControls/inc/basecontainercontrol.hxx
@@ -0,0 +1,567 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef _UNOCONTROLS_BASECONTAINERCONTROL_CTRL_HXX
+#define _UNOCONTROLS_BASECONTAINERCONTROL_CTRL_HXX
+
+//____________________________________________________________________________________________________________
+// includes of other projects
+//____________________________________________________________________________________________________________
+
+#include <com/sun/star/lang/XServiceName.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <com/sun/star/container/XContainer.hpp>
+#include <com/sun/star/container/XIndexContainer.hpp>
+#include <com/sun/star/container/XNameReplace.hpp>
+#include <com/sun/star/container/XContainerListener.hpp>
+#include <com/sun/star/container/XSet.hpp>
+#include <com/sun/star/container/ContainerEvent.hpp>
+#include <com/sun/star/container/XIndexReplace.hpp>
+#include <com/sun/star/container/XNameContainer.hpp>
+#include <tools/list.hxx>
+
+//____________________________________________________________________________________________________________
+// includes of my own project
+//____________________________________________________________________________________________________________
+#include "basecontrol.hxx"
+
+//____________________________________________________________________________________________________________
+// "namespaces"
+//____________________________________________________________________________________________________________
+
+namespace unocontrols{
+
+#define UNO3_REFERENCE ::com::sun::star::uno::Reference
+#define UNO3_XCONTROL ::com::sun::star::awt::XControl
+#define UNO3_OUSTRING ::rtl::OUString
+#define UNO3_XCONTROLMODEL ::com::sun::star::awt::XControlModel
+#define UNO3_XCONTROLCONTAINER ::com::sun::star::awt::XControlContainer
+#define UNO3_XMULTISERVICEFACTORY ::com::sun::star::lang::XMultiServiceFactory
+#define UNO3_TYPE ::com::sun::star::uno::Type
+#define UNO3_RUNTIMEEXCEPTION ::com::sun::star::uno::RuntimeException
+#define UNO3_XTOOLKIT ::com::sun::star::awt::XToolkit
+#define UNO3_XWINDOWPEER ::com::sun::star::awt::XWindowPeer
+#define UNO3_EVENTOBJECT ::com::sun::star::lang::EventObject
+#define UNO3_SEQUENCE ::com::sun::star::uno::Sequence
+#define UNO3_XCONTAINERLISTENER ::com::sun::star::container::XContainerListener
+#define UNO3_ANY ::com::sun::star::uno::Any
+#define UNO3_XTABCONTROLLER ::com::sun::star::awt::XTabController
+#define UNO3_WINDOWDESCRIPTOR ::com::sun::star::awt::WindowDescriptor
+#define UNO3_XGRAPHICS ::com::sun::star::awt::XGraphics
+#define UNO3_OMULTITYPEINTERFACECONTAINERHELPER ::cppu::OMultiTypeInterfaceContainerHelper
+#define UNO3_ILLEGALARGUMENTEXCEPTION ::com::sun::star::lang::IllegalArgumentException
+
+//____________________________________________________________________________________________________________
+// structs, types, forwards
+//____________________________________________________________________________________________________________
+
+struct IMPL_ControlInfo
+{
+ UNO3_REFERENCE< UNO3_XCONTROL > xControl ;
+ UNO3_OUSTRING sName ;
+};
+
+// makro define a list-class for struct IMPL_ControlInfo!
+class IMPL_ControlInfoList ;
+DECLARE_LIST( IMPL_ControlInfoList, IMPL_ControlInfo* )
+
+//____________________________________________________________________________________________________________
+// classes
+//____________________________________________________________________________________________________________
+
+class BaseContainerControl : public UNO3_XCONTROLMODEL
+ , public UNO3_XCONTROLCONTAINER
+ , public BaseControl
+{
+
+//____________________________________________________________________________________________________________
+// public methods
+//____________________________________________________________________________________________________________
+
+public:
+
+ //________________________________________________________________________________________________________
+ // construct/destruct
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ BaseContainerControl( const UNO3_REFERENCE< UNO3_XMULTISERVICEFACTORY >& xFactory );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual ~BaseContainerControl();
+
+ //________________________________________________________________________________________________________
+ // XInterface
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short give answer, if interface is supported
+ @descr The interfaces are searched by type.
+
+ @seealso XInterface
+
+ @param "rType" is the type of searched interface.
+
+ @return Any information about found interface
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual UNO3_ANY SAL_CALL queryInterface( const UNO3_TYPE& aType ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // XTypeProvider
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short get information about supported interfaces
+ @descr -
+
+ @seealso XTypeProvider
+
+ @param -
+
+ @return Sequence of types of all supported interfaces
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual UNO3_SEQUENCE< UNO3_TYPE > SAL_CALL getTypes() throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // XAggregation
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_ANY SAL_CALL queryAggregation( const UNO3_TYPE& aType ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // XControl
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL createPeer( const UNO3_REFERENCE< UNO3_XTOOLKIT >& xToolkit ,
+ const UNO3_REFERENCE< UNO3_XWINDOWPEER >& xParent ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual sal_Bool SAL_CALL setModel( const UNO3_REFERENCE< UNO3_XCONTROLMODEL >& xModel ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_REFERENCE< UNO3_XCONTROLMODEL > SAL_CALL getModel() throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // XComponent
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL dispose() throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // XEventListener
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL disposing( const UNO3_EVENTOBJECT& rEvent ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // XControlContainer
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL addControl( const UNO3_OUSTRING& sName ,
+ const UNO3_REFERENCE< UNO3_XCONTROL >& xControl ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL addContainerListener( const UNO3_REFERENCE< UNO3_XCONTAINERLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL removeControl( const UNO3_REFERENCE< UNO3_XCONTROL >& xControl ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL removeContainerListener( const UNO3_REFERENCE< UNO3_XCONTAINERLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL setStatusText( const UNO3_OUSTRING& sStatusText ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_REFERENCE< UNO3_XCONTROL > SAL_CALL getControl( const UNO3_OUSTRING& sName) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_SEQUENCE< UNO3_REFERENCE< UNO3_XCONTROL > > SAL_CALL getControls() throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // XUnoControlContainer
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL addTabController( const UNO3_REFERENCE< UNO3_XTABCONTROLLER >& xTabController ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL removeTabController( const UNO3_REFERENCE< UNO3_XTABCONTROLLER >& xTabController ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL setTabControllers( const UNO3_SEQUENCE< UNO3_REFERENCE< UNO3_XTABCONTROLLER > >& xTabControllers ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_SEQUENCE< UNO3_REFERENCE< UNO3_XTABCONTROLLER > > SAL_CALL getTabControllers() throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // XWindow
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL setVisible( sal_Bool bVisible ) throw( UNO3_RUNTIMEEXCEPTION );
+
+//____________________________________________________________________________________________________________
+// protected methods
+//____________________________________________________________________________________________________________
+
+protected:
+ using OComponentHelper::disposing;
+ /**_______________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual UNO3_WINDOWDESCRIPTOR* impl_getWindowDescriptor( const UNO3_REFERENCE< UNO3_XWINDOWPEER >& xParentPeer );
+
+ /**_______________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual void impl_paint( sal_Int32 nX ,
+ sal_Int32 nY ,
+ const UNO3_REFERENCE< UNO3_XGRAPHICS >& xGraphics );
+
+//____________________________________________________________________________________________________________
+// private methods
+//____________________________________________________________________________________________________________
+
+private:
+
+ /**_______________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ void impl_activateTabControllers();
+
+ /**_______________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ void impl_cleanMemory();
+
+//____________________________________________________________________________________________________________
+// private variables
+//____________________________________________________________________________________________________________
+
+private:
+
+ IMPL_ControlInfoList* m_pControlInfoList ; /// list of pointer of "struct IMPL_ControlInfo" to hold child-controls
+ UNO3_SEQUENCE< UNO3_REFERENCE< UNO3_XTABCONTROLLER > > m_xTabControllerList ; /// list of references of XTabController to hold tab-order in this container
+ UNO3_OMULTITYPEINTERFACECONTAINERHELPER m_aListeners ;
+
+}; // class BaseContainerControl
+
+} // namespace unocontrols
+
+#endif // ifndef _UNOCONTROLS_BASECONTAINERCONTROL_CTRL_HXX
diff --git a/UnoControls/inc/basecontrol.hxx b/UnoControls/inc/basecontrol.hxx
new file mode 100644
index 000000000000..050fd10fa2cc
--- /dev/null
+++ b/UnoControls/inc/basecontrol.hxx
@@ -0,0 +1,1231 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef _UNOCONTROLS_BASECONTROL_CTRL_HXX
+#define _UNOCONTROLS_BASECONTROL_CTRL_HXX
+
+//____________________________________________________________________________________________________________
+// includes of other projects
+//____________________________________________________________________________________________________________
+
+#include <com/sun/star/awt/XKeyListener.hpp>
+#include <com/sun/star/awt/XPaintListener.hpp>
+#include <com/sun/star/awt/KeyEvent.hpp>
+#include <com/sun/star/awt/KeyModifier.hpp>
+#include <com/sun/star/awt/XMouseMotionListener.hpp>
+#include <com/sun/star/awt/FocusEvent.hpp>
+#include <com/sun/star/awt/XWindowListener.hpp>
+#include <com/sun/star/awt/XActivateListener.hpp>
+#include <com/sun/star/awt/MouseEvent.hpp>
+#include <com/sun/star/awt/XTopWindowListener.hpp>
+#include <com/sun/star/awt/PaintEvent.hpp>
+#include <com/sun/star/awt/InputEvent.hpp>
+#include <com/sun/star/awt/KeyGroup.hpp>
+#include <com/sun/star/awt/Key.hpp>
+#include <com/sun/star/awt/WindowEvent.hpp>
+#include <com/sun/star/awt/XMouseListener.hpp>
+#include <com/sun/star/awt/KeyFunction.hpp>
+#include <com/sun/star/awt/FocusChangeReason.hpp>
+#include <com/sun/star/awt/MouseButton.hpp>
+#include <com/sun/star/awt/XFocusListener.hpp>
+#include <com/sun/star/awt/XFileDialog.hpp>
+#include <com/sun/star/awt/XTextComponent.hpp>
+#include <com/sun/star/awt/XListBox.hpp>
+#include <com/sun/star/awt/XProgressMonitor.hpp>
+#include <com/sun/star/awt/TextAlign.hpp>
+#include <com/sun/star/awt/XScrollBar.hpp>
+#include <com/sun/star/awt/XVclContainerPeer.hpp>
+#include <com/sun/star/awt/XTabControllerModel.hpp>
+#include <com/sun/star/awt/XMessageBox.hpp>
+#include <com/sun/star/awt/XTextEditField.hpp>
+#include <com/sun/star/awt/Style.hpp>
+#include <com/sun/star/awt/XTimeField.hpp>
+#include <com/sun/star/awt/XVclWindowPeer.hpp>
+#include <com/sun/star/awt/XControlModel.hpp>
+#include <com/sun/star/awt/XSpinField.hpp>
+#include <com/sun/star/awt/XUnoControlContainer.hpp>
+#include <com/sun/star/awt/XTextLayoutConstrains.hpp>
+#include <com/sun/star/awt/XNumericField.hpp>
+#include <com/sun/star/awt/XButton.hpp>
+#include <com/sun/star/awt/XTextArea.hpp>
+#include <com/sun/star/awt/XImageButton.hpp>
+#include <com/sun/star/awt/XFixedText.hpp>
+#include <com/sun/star/awt/XControlContainer.hpp>
+#include <com/sun/star/awt/XDialog.hpp>
+#include <com/sun/star/awt/ScrollBarOrientation.hpp>
+#include <com/sun/star/awt/XRadioButton.hpp>
+#include <com/sun/star/awt/XCurrencyField.hpp>
+#include <com/sun/star/awt/XPatternField.hpp>
+#include <com/sun/star/awt/VclWindowPeerAttribute.hpp>
+#include <com/sun/star/awt/XTabController.hpp>
+#include <com/sun/star/awt/XVclContainer.hpp>
+#include <com/sun/star/awt/XDateField.hpp>
+#include <com/sun/star/awt/XComboBox.hpp>
+#include <com/sun/star/awt/XControl.hpp>
+#include <com/sun/star/awt/XCheckBox.hpp>
+#include <com/sun/star/awt/MessageBoxCommand.hpp>
+#include <com/sun/star/awt/XLayoutConstrains.hpp>
+#include <com/sun/star/awt/XProgressBar.hpp>
+#include <com/sun/star/awt/XTopWindow.hpp>
+#include <com/sun/star/awt/XWindow.hpp>
+#include <com/sun/star/awt/PosSize.hpp>
+#include <com/sun/star/awt/XView.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <osl/mutex.hxx>
+#include <cppuhelper/weak.hxx>
+#include <cppuhelper/component.hxx>
+
+//____________________________________________________________________________________________________________
+// includes of my project
+//____________________________________________________________________________________________________________
+#include "multiplexer.hxx"
+
+//____________________________________________________________________________________________________________
+// "namespaces"
+//____________________________________________________________________________________________________________
+
+namespace unocontrols{
+
+#define UNO3_ANY ::com::sun::star::uno::Any
+#define UNO3_EVENTOBJECT ::com::sun::star::lang::EventObject
+#define UNO3_MUTEX ::osl::Mutex
+#define UNO3_OCOMPONENTHELPER ::cppu::OComponentHelper
+#define UNO3_OUSTRING ::rtl::OUString
+#define UNO3_PAINTEVENT ::com::sun::star::awt::PaintEvent
+#define UNO3_RECTANGLE ::com::sun::star::awt::Rectangle
+#define UNO3_REFERENCE ::com::sun::star::uno::Reference
+#define UNO3_RUNTIMEEXCEPTION ::com::sun::star::uno::RuntimeException
+#define UNO3_SEQUENCE ::com::sun::star::uno::Sequence
+#define UNO3_SIZE ::com::sun::star::awt::Size
+#define UNO3_TYPE ::com::sun::star::uno::Type
+#define UNO3_WINDOWDESCRIPTOR ::com::sun::star::awt::WindowDescriptor
+#define UNO3_XCONTROL ::com::sun::star::awt::XControl
+#define UNO3_XCONTROLMODEL ::com::sun::star::awt::XControlModel
+#define UNO3_XEVENTLISTENER ::com::sun::star::lang::XEventListener
+#define UNO3_XFOCUSLISTENER ::com::sun::star::awt::XFocusListener
+#define UNO3_XGRAPHICS ::com::sun::star::awt::XGraphics
+#define UNO3_XKEYLISTENER ::com::sun::star::awt::XKeyListener
+#define UNO3_XMOUSELISTENER ::com::sun::star::awt::XMouseListener
+#define UNO3_XMOUSEMOTIONLISTENER ::com::sun::star::awt::XMouseMotionListener
+#define UNO3_XMULTISERVICEFACTORY ::com::sun::star::lang::XMultiServiceFactory
+#define UNO3_XPAINTLISTENER ::com::sun::star::awt::XPaintListener
+#define UNO3_XSERVICEINFO ::com::sun::star::lang::XServiceInfo
+#define UNO3_XTOOLKIT ::com::sun::star::awt::XToolkit
+#define UNO3_XVIEW ::com::sun::star::awt::XView
+#define UNO3_XWINDOW ::com::sun::star::awt::XWindow
+#define UNO3_XWINDOWLISTENER ::com::sun::star::awt::XWindowListener
+#define UNO3_XWINDOWPEER ::com::sun::star::awt::XWindowPeer
+#define UNO3_XINTERFACE ::com::sun::star::uno::XInterface
+
+//____________________________________________________________________________________________________________
+// macros
+//____________________________________________________________________________________________________________
+
+#define TRGB_COLORDATA(TRANSPARENCE,RED,GREEN,BLUE) \
+ ((sal_Int32)(((sal_uInt32)((sal_uInt8)(BLUE))))|(((sal_uInt32)((sal_uInt8)(GREEN)))<<8)|(((sal_uInt32)((sal_uInt8)(RED)))<<16)|(((sal_uInt32)((sal_uInt8)(TRANSPARENCE)))<<24))
+
+//____________________________________________________________________________________________________________
+// structs
+//____________________________________________________________________________________________________________
+
+struct IMPL_MutexContainer
+{
+ // Is necassery to initialize "BaseControl" and make this class thread-safe.
+ UNO3_MUTEX m_aMutex ;
+};
+
+//____________________________________________________________________________________________________________
+// classes
+//____________________________________________________________________________________________________________
+
+class BaseControl : public UNO3_XSERVICEINFO
+ , public UNO3_XPAINTLISTENER
+ , public UNO3_XWINDOWLISTENER
+ , public UNO3_XVIEW
+ , public UNO3_XWINDOW
+ , public UNO3_XCONTROL
+ , public IMPL_MutexContainer
+ , public UNO3_OCOMPONENTHELPER
+{
+//____________________________________________________________________________________________________________
+// public methods
+//____________________________________________________________________________________________________________
+
+public:
+
+ //________________________________________________________________________________________________________
+ // construct/destruct
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ BaseControl( const UNO3_REFERENCE< UNO3_XMULTISERVICEFACTORY >& xFactory );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual ~BaseControl();
+
+ //________________________________________________________________________________________________________
+ // XInterface
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short give answer, if interface is supported
+ @descr The interfaces are searched by type.
+
+ @seealso XInterface
+
+ @param "rType" is the type of searched interface.
+
+ @return Any information about found interface
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual UNO3_ANY SAL_CALL queryInterface( const UNO3_TYPE& aType ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short increment refcount
+ @descr -
+
+ @seealso XInterface
+ @seealso release()
+
+ @param -
+
+ @return -
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual void SAL_CALL acquire() throw();
+
+ /**_______________________________________________________________________________________________________
+ @short decrement refcount
+ @descr -
+
+ @seealso XInterface
+ @seealso acquire()
+
+ @param -
+
+ @return -
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual void SAL_CALL release() throw();
+
+ //________________________________________________________________________________________________________
+ // XTypeProvider
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short get information about supported interfaces
+ @descr -
+
+ @seealso XTypeProvider
+
+ @param -
+
+ @return Sequence of types of all supported interfaces
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual UNO3_SEQUENCE< UNO3_TYPE > SAL_CALL getTypes() throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short get implementation id
+ @descr This ID is neccessary for UNO-caching. If there no ID, cache is disabled.
+ Another way, cache is enabled.
+
+ @seealso XTypeProvider
+
+ @param -
+
+ @return ID as Sequence of byte
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual UNO3_SEQUENCE< sal_Int8 > SAL_CALL getImplementationId() throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // XAggregation
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL setDelegator( const UNO3_REFERENCE< UNO3_XINTERFACE >& xDelegator ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_ANY SAL_CALL queryAggregation( const UNO3_TYPE& aType ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // XServiceInfo
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual sal_Bool SAL_CALL supportsService( const UNO3_OUSTRING& sServiceName ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_OUSTRING SAL_CALL getImplementationName() throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_SEQUENCE< UNO3_OUSTRING > SAL_CALL getSupportedServiceNames() throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // XComponent
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL dispose() throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL addEventListener( const UNO3_REFERENCE< UNO3_XEVENTLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL removeEventListener( const UNO3_REFERENCE< UNO3_XEVENTLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // XControl
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL createPeer( const UNO3_REFERENCE< UNO3_XTOOLKIT >& xToolkit, const UNO3_REFERENCE< UNO3_XWINDOWPEER >& xParent ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL setContext( const UNO3_REFERENCE< UNO3_XINTERFACE >& xContext ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual sal_Bool SAL_CALL setModel( const UNO3_REFERENCE< UNO3_XCONTROLMODEL >& xModel ) throw( UNO3_RUNTIMEEXCEPTION ) = 0 ;
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL setDesignMode( sal_Bool bOn ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_REFERENCE< UNO3_XINTERFACE > SAL_CALL getContext() throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_REFERENCE< UNO3_XCONTROLMODEL > SAL_CALL getModel() throw( UNO3_RUNTIMEEXCEPTION ) = 0;
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_REFERENCE< UNO3_XWINDOWPEER > SAL_CALL getPeer() throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_REFERENCE< UNO3_XVIEW > SAL_CALL getView() throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual sal_Bool SAL_CALL isDesignMode() throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual sal_Bool SAL_CALL isTransparent() throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // XWindow
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL setPosSize( sal_Int32 nX ,
+ sal_Int32 nY ,
+ sal_Int32 nWidth ,
+ sal_Int32 nHeight ,
+ sal_Int16 nFlags ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL setVisible( sal_Bool bVisible ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL setEnable( sal_Bool bEnable ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL setFocus() throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_RECTANGLE SAL_CALL getPosSize() throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL addWindowListener( const UNO3_REFERENCE< UNO3_XWINDOWLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL addFocusListener( const UNO3_REFERENCE< UNO3_XFOCUSLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL addKeyListener( const UNO3_REFERENCE< UNO3_XKEYLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL addMouseListener( const UNO3_REFERENCE< UNO3_XMOUSELISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL addMouseMotionListener( const UNO3_REFERENCE< UNO3_XMOUSEMOTIONLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL addPaintListener( const UNO3_REFERENCE< UNO3_XPAINTLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL removeWindowListener( const UNO3_REFERENCE< UNO3_XWINDOWLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL removeFocusListener( const UNO3_REFERENCE< UNO3_XFOCUSLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL removeKeyListener( const UNO3_REFERENCE< UNO3_XKEYLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL removeMouseListener( const UNO3_REFERENCE< UNO3_XMOUSELISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL removeMouseMotionListener( const UNO3_REFERENCE< UNO3_XMOUSEMOTIONLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL removePaintListener( const UNO3_REFERENCE< UNO3_XPAINTLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // XView
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL draw( sal_Int32 nX ,
+ sal_Int32 nY ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual sal_Bool SAL_CALL setGraphics( const UNO3_REFERENCE< UNO3_XGRAPHICS >& xDevice ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL setZoom( float fZoomX ,
+ float fZoomY ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_REFERENCE< UNO3_XGRAPHICS > SAL_CALL getGraphics() throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_SIZE SAL_CALL getSize() throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // UNO3_XEVENTLISTENER
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL disposing( const UNO3_EVENTOBJECT& rSource ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // XPaintListener
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL windowPaint( const UNO3_PAINTEVENT& rEvent ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // XWindowListener
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL windowResized( const UNO3_WINDOWEVENT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION );
+ virtual void SAL_CALL windowMoved( const UNO3_WINDOWEVENT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION );
+ virtual void SAL_CALL windowShown( const UNO3_EVENTOBJECT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION );
+ virtual void SAL_CALL windowHidden( const UNO3_EVENTOBJECT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // impl but public method to register service
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ static const UNO3_SEQUENCE< UNO3_OUSTRING > impl_getStaticSupportedServiceNames();
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ static const UNO3_OUSTRING impl_getStaticImplementationName();
+
+//____________________________________________________________________________________________________________
+// protected methods
+//____________________________________________________________________________________________________________
+
+protected:
+ using OComponentHelper::disposing;
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ const UNO3_REFERENCE< UNO3_XMULTISERVICEFACTORY > impl_getMultiServiceFactory();
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ const UNO3_REFERENCE< UNO3_XWINDOW > impl_getPeerWindow();
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ const UNO3_REFERENCE< UNO3_XGRAPHICS > impl_getGraphicsPeer();
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ const sal_Int32& impl_getWidth();
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ const sal_Int32& impl_getHeight();
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_WINDOWDESCRIPTOR* impl_getWindowDescriptor( const UNO3_REFERENCE< UNO3_XWINDOWPEER >& xParentPeer );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void impl_paint( sal_Int32 nX ,
+ sal_Int32 nY ,
+ const UNO3_REFERENCE< UNO3_XGRAPHICS >& xGraphics );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void impl_recalcLayout( const UNO3_WINDOWEVENT& aEvent );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ UNO3_REFERENCE< UNO3_XINTERFACE > impl_getDelegator();
+
+//____________________________________________________________________________________________________________
+// private methods
+//____________________________________________________________________________________________________________
+
+private:
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ void impl_releasePeer();
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ OMRCListenerMultiplexerHelper* impl_getMultiplexer();
+
+//____________________________________________________________________________________________________________
+// private variables
+//____________________________________________________________________________________________________________
+
+private:
+
+ UNO3_REFERENCE< UNO3_XMULTISERVICEFACTORY > m_xFactory ;
+ UNO3_REFERENCE< UNO3_XINTERFACE > m_xDelegator ;
+ OMRCListenerMultiplexerHelper* m_pMultiplexer ; // multiplex events
+ UNO3_REFERENCE< UNO3_XINTERFACE > m_xMultiplexer ;
+ UNO3_REFERENCE< UNO3_XINTERFACE > m_xContext ;
+ UNO3_REFERENCE< UNO3_XWINDOWPEER > m_xPeer ;
+ UNO3_REFERENCE< UNO3_XWINDOW > m_xPeerWindow ;
+ UNO3_REFERENCE< UNO3_XGRAPHICS > m_xGraphicsView ; // graphics for ::com::sun::star::awt::XView-operations
+ UNO3_REFERENCE< UNO3_XGRAPHICS > m_xGraphicsPeer ; // graphics for painting on a peer
+ sal_Int32 m_nX ; // Position ...
+ sal_Int32 m_nY ;
+ sal_Int32 m_nWidth ; // ... and size of window
+ sal_Int32 m_nHeight ;
+ sal_Bool m_bVisible ; // Some state flags
+ sal_Bool m_bInDesignMode ;
+ sal_Bool m_bEnable ;
+
+}; // class BaseControl
+
+} // namespace unocontrols
+
+#endif // ifndef _UNOCONTROLS_BASECONTROL_CTRL_HXX
diff --git a/UnoControls/inc/definesunocontrols.hxx b/UnoControls/inc/definesunocontrols.hxx
new file mode 100644
index 000000000000..cf072736c4b5
--- /dev/null
+++ b/UnoControls/inc/definesunocontrols.hxx
@@ -0,0 +1,135 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef _UNOCONTROLS_DEFINES_CTRL_HXX
+#define _UNOCONTROLS_DEFINES_CTRL_HXX
+
+//-------------------------------------------------------------------------------------------------------------------
+// includes
+#include <limits.h> // defines for min/max of INT
+
+namespace unocontrols{
+
+//-------------------------------------------------------------------------------------------------------------------
+// global defines for all UnoControls
+//-------------------------------------------------------------------------------------------------------------------
+#define UNOCONTROLS_TRGB_COLORDATA( t,r,g,b ) ((INT32)(((UINT32)((UINT8)(b))))|(((UINT32)((UINT8)(g)))<<8)|(((UINT32)((UINT8)(r)))<<16)|(((UINT32)((UINT8)(t)))<<24))
+//-------------------------------------------------------------------------------------------------------------------
+
+// defines for BaseControl
+#ifdef _UNOCONTROLS_BASECONTROL_CTRL_HXX
+ #define BASECONTROL_IDLCLASSNAME "BaseControl"
+ #define BASECONTROL_DEFAULT_PMULTIPLEXER NULL
+ #define BASECONTROL_DEFAULT_X 0
+ #define BASECONTROL_DEFAULT_Y 0
+ #define BASECONTROL_DEFAULT_WIDTH 100
+ #define BASECONTROL_DEFAULT_HEIGHT 100
+ #define BASECONTROL_DEFAULT_VISIBLE FALSE
+ #define BASECONTROL_DEFAULT_INDESIGNMODE FALSE
+ #define BASECONTROL_DEFAULT_ENABLE TRUE
+ #define BASECONTROL_SERVICE_VCLTOOLKIT "com.sun.star.awt.VclToolkit"
+#endif
+//-------------------------------------------------------------------------------------------------------------------
+
+//-------------------------------------------------------------------------------------------------------------------
+// defines for BaseContainerControl
+#ifdef _UNOCONTROLS_BASECONTAINERCONTROL_CTRL_HXX
+ #define BASECONTAINERCONTROL_IDLCLASSNAME "BaseContainerControl"
+#endif
+//-------------------------------------------------------------------------------------------------------------------
+
+//-------------------------------------------------------------------------------------------------------------------
+// defines for ProgressBar
+#ifdef _UNOCONTROLS_PROGRESSBAR_CTRL_HXX
+ #define PROGRESSBAR_IDLCLASSNAME "XProgressbar"
+ #define PROGRESSBAR_SERVICENAME "com.sun.star.awt.XProgressBar"
+ #define PROGRESSBAR_IMPLEMENTATIONNAME "stardiv.UnoControls.ProgressBar"
+ #define PROGRESSBAR_FREEBORDER 2
+ #define PROGRESSBAR_DEFAULT_HORIZONTAL TRUE
+ #define PROGRESSBAR_DEFAULT_BLOCKDIMENSION Size(1,1)
+ #define PROGRESSBAR_DEFAULT_BACKGROUNDCOLOR UNOCONTROLS_TRGB_COLORDATA( 0x00, 0xC0, 0xC0, 0xC0 ) // lightgray
+ #define PROGRESSBAR_DEFAULT_FOREGROUNDCOLOR UNOCONTROLS_TRGB_COLORDATA( 0x00, 0x00, 0x00, 0x80 ) // blue
+ #define PROGRESSBAR_DEFAULT_MINRANGE INT_MIN
+ #define PROGRESSBAR_DEFAULT_MAXRANGE INT_MAX
+ #define PROGRESSBAR_DEFAULT_BLOCKVALUE 1
+ #define PROGRESSBAR_DEFAULT_VALUE PROGRESSBAR_DEFAULT_MINRANGE
+ #define PROGRESSBAR_LINECOLOR_BRIGHT UNOCONTROLS_TRGB_COLORDATA( 0x00, 0xFF, 0xFF, 0xFF ) // white
+ #define PROGRESSBAR_LINECOLOR_SHADOW UNOCONTROLS_TRGB_COLORDATA( 0x00, 0x00, 0x00, 0x00 ) // black
+#endif
+//-------------------------------------------------------------------------------------------------------------------
+
+//-------------------------------------------------------------------------------------------------------------------
+// defines for FrameControl
+#ifdef _UNOCONTROLS_FRAMECONTROL_CTRL_HXX
+ #define FRAMECONTROL_IDLCLASSNAME "FrameControl"
+ #define FRAMECONTROL_SERVICENAME "com.sun.star.frame.FrameControl"
+ #define FRAMECONTROL_IMPLEMENTATIONNAME "stardiv.UnoControls.FrameControl"
+ #define FRAMECONTROL_DEFAULT_COMPONENTURL "private:factory/swriter"
+ #define FRAMECONTROL_PROPERTYNAME_LOADERARGUMENTS "LoaderArguments"
+ #define FRAMECONTROL_PROPERTYNAME_COMPONENTURL "ComponentURL"
+ #define FRAMECONTROL_PROPERTYNAME_FRAME "Frame"
+ #define FRAMECONTROL_PROPERTYNAME_IDLCLASSES "IDLClasses"
+ #define FRAMECONTROL_ERRORTEXT_VOSENSHURE "This is an invalid property handle."
+ #define FRAMECONTROL_PROPERTY_COUNT 4 // you must count the propertys
+ #define FRAMECONTROL_PROPERTY_COMPONENTURL 0 // Id must be the index into the array
+ #define FRAMECONTROL_PROPERTY_FRAME 1
+ #define FRAMECONTROL_PROPERTY_IDLCLASSES 2
+ #define FRAMECONTROL_PROPERTY_LOADERARGUMENTS 3
+#endif
+//-------------------------------------------------------------------------------------------------------------------
+
+//-------------------------------------------------------------------------------------------------------------------
+// defines for ProgressMonitor
+#ifdef _UNOCONTROLS_PROGRESSMONITOR_CTRL_HXX
+ #define PROGRESSMONITOR_IDLCLASSNAME "XProgressMonitor"
+ #define PROGRESSMONITOR_SERVICENAME "com.sun.star.awt.XProgressMonitor"
+ #define PROGRESSMONITOR_IMPLEMENTATIONNAME "stardiv.UnoControls.ProgressMonitor"
+ #define PROGRESSMONITOR_FREEBORDER 10 // border around and between the controls
+ #define PROGRESSMONITOR_WIDTH_RELATION 4 // reserve 1/4 for button width and rest for progressbar width
+ #define PROGRESSMONITOR_HEIGHT_RELATION 5 // reserve 1/5 for button and progressbar heigth and rest for text height
+ #define PROGRESSMONITOR_FIXEDTEXT_SERVICENAME "com.sun.star.awt.UnoControlFixedText"
+ #define PROGRESSMONITOR_BUTTON_SERVICENAME "com.sun.star.awt.UnoControlButton"
+ #define PROGRESSMONITOR_FIXEDTEXT_MODELNAME "com.sun.star.awt.UnoControlFixedTextModel"
+ #define PROGRESSMONITOR_BUTTON_MODELNAME "com.sun.star.awt.UnoControlButtonModel"
+ #define PROGRESSMONITOR_CONTROLNAME_TEXT "Text" // identifier the control in container
+ #define PROGRESSMONITOR_CONTROLNAME_BUTTON "Button" // -||-
+ #define PROGRESSMONITOR_CONTROLNAME_PROGRESSBAR "ProgressBar" // -||-
+ #define PROGRESSMONITOR_DEFAULT_BUTTONLABEL "Abbrechen"
+ #define PROGRESSMONITOR_DEFAULT_TOPIC "\0"
+ #define PROGRESSMONITOR_DEFAULT_TEXT "\0"
+ #define PROGRESSMONITOR_BACKGROUNDCOLOR UNOCONTROLS_TRGB_COLORDATA( 0x00, 0xC0, 0xC0, 0xC0 ) // lighgray
+ #define PROGRESSMONITOR_LINECOLOR_BRIGHT UNOCONTROLS_TRGB_COLORDATA( 0x00, 0xFF, 0xFF, 0xFF ) // white
+ #define PROGRESSMONITOR_LINECOLOR_SHADOW UNOCONTROLS_TRGB_COLORDATA( 0x00, 0x00, 0x00, 0x00 ) // black
+ #define PROGRESSMONITOR_HEIGHT_PROGRESSBAR 15
+ #define PROGRESSMONITOR_DEFAULT_WIDTH 350
+ #define PROGRESSMONITOR_DEFAULT_HEIGHT 100
+#endif
+//-------------------------------------------------------------------------------------------------------------------
+
+} // namespace unocontrols
+
+#endif // #ifndef _UNOCONTROLS_DEFINES_CTRL_HXX
diff --git a/UnoControls/inc/multiplexer.hxx b/UnoControls/inc/multiplexer.hxx
new file mode 100644
index 000000000000..b22513e5f16c
--- /dev/null
+++ b/UnoControls/inc/multiplexer.hxx
@@ -0,0 +1,771 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef _UNOCONTROLS_MULTIPLEXER_HXX
+#define _UNOCONTROLS_MULTIPLEXER_HXX
+
+//____________________________________________________________________________________________________________
+// includes of other projects
+//____________________________________________________________________________________________________________
+
+#include <com/sun/star/awt/XKeyListener.hpp>
+#include <com/sun/star/awt/XPaintListener.hpp>
+#include <com/sun/star/awt/KeyEvent.hpp>
+#include <com/sun/star/awt/KeyModifier.hpp>
+#include <com/sun/star/awt/XMouseMotionListener.hpp>
+#include <com/sun/star/awt/FocusEvent.hpp>
+#include <com/sun/star/awt/XWindowListener.hpp>
+#include <com/sun/star/awt/XActivateListener.hpp>
+#include <com/sun/star/awt/MouseEvent.hpp>
+#include <com/sun/star/awt/XTopWindowListener.hpp>
+#include <com/sun/star/awt/PaintEvent.hpp>
+#include <com/sun/star/awt/InputEvent.hpp>
+#include <com/sun/star/awt/KeyGroup.hpp>
+#include <com/sun/star/awt/Key.hpp>
+#include <com/sun/star/awt/WindowEvent.hpp>
+#include <com/sun/star/awt/XMouseListener.hpp>
+#include <com/sun/star/awt/KeyFunction.hpp>
+#include <com/sun/star/awt/FocusChangeReason.hpp>
+#include <com/sun/star/awt/MouseButton.hpp>
+#include <com/sun/star/awt/XFocusListener.hpp>
+#include <com/sun/star/awt/XTopWindow.hpp>
+#include <com/sun/star/awt/XWindow.hpp>
+#include <com/sun/star/awt/PosSize.hpp>
+#include <cppuhelper/weak.hxx>
+#include <cppuhelper/interfacecontainer.hxx>
+//____________________________________________________________________________________________________________
+// includes of my own project
+//____________________________________________________________________________________________________________
+
+//____________________________________________________________________________________________________________
+// "namespaces"
+//____________________________________________________________________________________________________________
+
+namespace unocontrols{
+
+#define UNO3_OWEAKOBJECT ::cppu::OWeakObject
+#define UNO3_XWINDOW ::com::sun::star::awt::XWindow
+#define UNO3_REFERENCE ::com::sun::star::uno::Reference
+#define UNO3_WEAKREFERENCE ::com::sun::star::uno::WeakReference
+#define UNO3_MUTEX ::osl::Mutex
+#define UNO3_XWINDOWLISTENER ::com::sun::star::awt::XWindowListener
+#define UNO3_XKEYLISTENER ::com::sun::star::awt::XKeyListener
+#define UNO3_XMOUSELISTENER ::com::sun::star::awt::XMouseListener
+#define UNO3_XMOUSEMOTIONLISTENER ::com::sun::star::awt::XMouseMotionListener
+#define UNO3_XPAINTLISTENER ::com::sun::star::awt::XPaintListener
+#define UNO3_XTOPWINDOWLISTENER ::com::sun::star::awt::XTopWindowListener
+#define UNO3_XFOCUSLISTENER ::com::sun::star::awt::XFocusListener
+#define UNO3_ANY ::com::sun::star::uno::Any
+#define UNO3_TYPE ::com::sun::star::uno::Type
+#define UNO3_RUNTIMEEXCEPTION ::com::sun::star::uno::RuntimeException
+#define UNO3_XINTERFACE ::com::sun::star::uno::XInterface
+#define UNO3_EVENTOBJECT ::com::sun::star::lang::EventObject
+#define UNO3_FOCUSEVENT ::com::sun::star::awt::FocusEvent
+#define UNO3_WINDOWEVENT ::com::sun::star::awt::WindowEvent
+#define UNO3_KEYEVENT ::com::sun::star::awt::KeyEvent
+#define UNO3_MOUSEEVENT ::com::sun::star::awt::MouseEvent
+#define UNO3_PAINTEVENT ::com::sun::star::awt::PaintEvent
+#define UNO3_OMULTITYPEINTERFACECONTAINERHELPER ::cppu::OMultiTypeInterfaceContainerHelper
+
+//____________________________________________________________________________________________________________
+// class
+//____________________________________________________________________________________________________________
+
+class OMRCListenerMultiplexerHelper : public UNO3_XFOCUSLISTENER
+ , public UNO3_XWINDOWLISTENER
+ , public UNO3_XKEYLISTENER
+ , public UNO3_XMOUSELISTENER
+ , public UNO3_XMOUSEMOTIONLISTENER
+ , public UNO3_XPAINTLISTENER
+ , public UNO3_XTOPWINDOWLISTENER
+ , public UNO3_OWEAKOBJECT
+{
+
+//____________________________________________________________________________________________________________
+// public methods
+//____________________________________________________________________________________________________________
+
+public:
+
+ //________________________________________________________________________________________________________
+ // construct/destruct
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short constructor
+ @descr Create a Multiplexer of XWindowEvents.
+
+ @seealso -
+
+ @param rControl The control. All listeners think that this is the original broadcaster.
+ @param rPeer The peer from which the original events are dispatched. Null is allowed.
+
+ @return -
+
+ @onerror -
+ */
+
+ OMRCListenerMultiplexerHelper( const UNO3_REFERENCE< UNO3_XWINDOW >& xControl ,
+ const UNO3_REFERENCE< UNO3_XWINDOW >& xPeer );
+
+ /**_______________________________________________________________________________________________________
+ @short copy-constructor
+ @descr
+
+ @seealso -
+
+ @param rCopyInstance C++-Reference to instance to make copy from.
+
+ @return -
+
+ @onerror -
+ */
+
+ OMRCListenerMultiplexerHelper( const OMRCListenerMultiplexerHelper& aCopyInstance );
+
+ /**_______________________________________________________________________________________________________
+ @short destructor
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ ~OMRCListenerMultiplexerHelper();
+
+ //________________________________________________________________________________________________________
+ // XInterface
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short give answer, if interface is supported
+ @descr The interfaces are searched by type.
+
+ @seealso XInterface
+
+ @param "rType" is the type of searched interface.
+
+ @return Any information about found interface
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual UNO3_ANY SAL_CALL queryInterface( const UNO3_TYPE& aType ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short increment refcount
+ @descr -
+
+ @seealso XInterface
+ @seealso release()
+
+ @param -
+
+ @return -
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual void SAL_CALL acquire() throw();
+
+ /**_______________________________________________________________________________________________________
+ @short decrement refcount
+ @descr -
+
+ @seealso XInterface
+ @seealso acquire()
+
+ @param -
+
+ @return -
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual void SAL_CALL release() throw();
+
+ //________________________________________________________________________________________________________
+ // operator
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ operator UNO3_REFERENCE< UNO3_XINTERFACE >() const;
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ OMRCListenerMultiplexerHelper& operator= ( const OMRCListenerMultiplexerHelper& aCopyInstance );
+
+ //________________________________________________________________________________________________________
+ // container methods
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short Remove all listeners from the previous set peer and add the needed listeners to rPeer.
+ @descr -
+
+ @seealso -
+
+ @param rPeer The peer from which the original events are dispatched. Null is allowed.
+
+ @return -
+
+ @onerror -
+ */
+
+ void setPeer( const UNO3_REFERENCE< UNO3_XWINDOW >& xPeer );
+
+ /**_______________________________________________________________________________________________________
+ @short Remove all listeners and send a disposing message.
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ void disposeAndClear();
+
+ /**_______________________________________________________________________________________________________
+ @short Add the specified listener to the source.
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ void advise( const UNO3_TYPE& aType ,
+ const UNO3_REFERENCE< UNO3_XINTERFACE >& xListener );
+
+ /**_______________________________________________________________________________________________________
+ @short Remove the specified listener from the source.
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ void unadvise( const UNO3_TYPE& aType ,
+ const UNO3_REFERENCE< UNO3_XINTERFACE >& xListener );
+
+ //________________________________________________________________________________________________________
+ // XEventListener
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL disposing(const UNO3_EVENTOBJECT& aSource) throw( UNO3_RUNTIMEEXCEPTION ) ;
+
+ //________________________________________________________________________________________________________
+ // XFocusListener
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL focusGained(const UNO3_FOCUSEVENT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION ) ;
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL focusLost(const UNO3_FOCUSEVENT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION ) ;
+
+ //________________________________________________________________________________________________________
+ // XWindowListener
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL windowResized(const UNO3_WINDOWEVENT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION ) ;
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL windowMoved(const UNO3_WINDOWEVENT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION ) ;
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL windowShown(const UNO3_EVENTOBJECT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION ) ;
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL windowHidden(const UNO3_EVENTOBJECT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION ) ;
+
+ //________________________________________________________________________________________________________
+ // XKeyListener
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL keyPressed( const UNO3_KEYEVENT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION ) ;
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL keyReleased( const UNO3_KEYEVENT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION ) ;
+
+ //________________________________________________________________________________________________________
+ // XMouseListener
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL mousePressed(const UNO3_MOUSEEVENT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION ) ;
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL mouseReleased(const UNO3_MOUSEEVENT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION ) ;
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL mouseEntered(const UNO3_MOUSEEVENT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION ) ;
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL mouseExited(const UNO3_MOUSEEVENT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION ) ;
+
+ //________________________________________________________________________________________________________
+ // XMouseMotionListener
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL mouseDragged(const UNO3_MOUSEEVENT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION ) ;
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL mouseMoved(const UNO3_MOUSEEVENT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION ) ;
+
+ //________________________________________________________________________________________________________
+ // XPaintListener
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL windowPaint(const UNO3_PAINTEVENT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION ) ;
+
+ //________________________________________________________________________________________________________
+ // XTopWindowListener
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL windowOpened( const UNO3_EVENTOBJECT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION ) ;
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL windowClosing( const UNO3_EVENTOBJECT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION ) ;
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL windowClosed( const UNO3_EVENTOBJECT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION ) ;
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL windowMinimized( const UNO3_EVENTOBJECT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION ) ;
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL windowNormalized( const UNO3_EVENTOBJECT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION ) ;
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL windowActivated( const UNO3_EVENTOBJECT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION ) ;
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL windowDeactivated( const UNO3_EVENTOBJECT& aEvent ) throw( UNO3_RUNTIMEEXCEPTION ) ;
+
+//____________________________________________________________________________________________________________
+// protected methods
+//____________________________________________________________________________________________________________
+
+protected:
+
+ /**_______________________________________________________________________________________________________
+ @short Remove the listener from the peer.
+ @descr -
+
+ @seealso -
+
+ @param xPeer The peer from which the listener is removed.
+ @param rType The listener type, which specify the type of the listener.
+
+ @return -
+
+ @onerror -
+ */
+
+ void impl_adviseToPeer( const UNO3_REFERENCE< UNO3_XWINDOW >& xPeer ,
+ const UNO3_TYPE& aType );
+
+ /**_______________________________________________________________________________________________________
+ @short Add the listener to the peer.
+ @descr -
+
+ @seealso -
+
+ @param xPeer The peer to which the listener is added.
+ @param rType The listener type, which specify the type of the listener.
+
+ @return -
+
+ @onerror -
+ */
+
+ void impl_unadviseFromPeer( const UNO3_REFERENCE< UNO3_XWINDOW >& xPeer ,
+ const UNO3_TYPE& aType );
+
+//____________________________________________________________________________________________________________
+// private variables
+//____________________________________________________________________________________________________________
+
+private:
+
+ UNO3_MUTEX m_aMutex ;
+ UNO3_REFERENCE< UNO3_XWINDOW > m_xPeer ; /// The source of the events. Normally this is the peer object.
+ UNO3_WEAKREFERENCE< UNO3_XWINDOW > m_xControl ;
+ UNO3_OMULTITYPEINTERFACECONTAINERHELPER m_aListenerHolder ;
+
+}; // class OMRCListenerMultiplexerHelper
+
+} // namespace unocontrols
+
+#endif // ifndef _UNOCONTROLS_MULTIPLEXER_HXX
diff --git a/UnoControls/prj/build.lst b/UnoControls/prj/build.lst
new file mode 100644
index 000000000000..de5d7fd81d33
--- /dev/null
+++ b/UnoControls/prj/build.lst
@@ -0,0 +1,5 @@
+us UnoControls : cppuhelper offuh tools NULL
+us UnoControls usr1 - all us_mkout NULL
+us UnoControls\source\base nmake - all us_base NULL
+us UnoControls\source\controls nmake - all us_ctrls NULL
+us UnoControls\util nmake - all us_util us_base us_ctrls NULL
diff --git a/UnoControls/prj/d.lst b/UnoControls/prj/d.lst
new file mode 100644
index 000000000000..370fc0c9fc46
--- /dev/null
+++ b/UnoControls/prj/d.lst
@@ -0,0 +1,6 @@
+..\%__SRC%\bin\*.dll %_DEST%\bin%_EXT%\*.dll
+..\%__SRC%\lib\lib*.so %_DEST%\lib%_EXT%
+..\%__SRC%\lib\*.sl %_DEST%\lib%_EXT%\*.sl
+..\%__SRC%\bin\*.res %_DEST%\bin%_EXT%\*.res
+..\%__SRC%\lib\*.dylib %_DEST%\lib%_EXT%\*.dylib
+..\%__SRC%\misc\ctl.component %_DEST%\xml%_EXT%\ctl.component
diff --git a/UnoControls/source/base/basecontainercontrol.cxx b/UnoControls/source/base/basecontainercontrol.cxx
new file mode 100644
index 000000000000..68ed6287c2b4
--- /dev/null
+++ b/UnoControls/source/base/basecontainercontrol.cxx
@@ -0,0 +1,642 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+//____________________________________________________________________________________________________________
+// my own includes
+//____________________________________________________________________________________________________________
+
+#include "basecontainercontrol.hxx"
+
+//____________________________________________________________________________________________________________
+// includes of other projects
+//____________________________________________________________________________________________________________
+#include <cppuhelper/typeprovider.hxx>
+
+//____________________________________________________________________________________________________________
+// includes of my own project
+//____________________________________________________________________________________________________________
+
+//____________________________________________________________________________________________________________
+// namespaces
+//____________________________________________________________________________________________________________
+
+using namespace ::cppu ;
+using namespace ::osl ;
+using namespace ::rtl ;
+using namespace ::com::sun::star::uno ;
+using namespace ::com::sun::star::lang ;
+using namespace ::com::sun::star::awt ;
+using namespace ::com::sun::star::container ;
+
+namespace unocontrols{
+
+//____________________________________________________________________________________________________________
+// construct/destruct
+//____________________________________________________________________________________________________________
+
+BaseContainerControl::BaseContainerControl( const Reference< XMultiServiceFactory >& xFactory )
+ : BaseControl ( xFactory )
+ , m_aListeners ( m_aMutex )
+{
+ // initialize info list for controls
+ m_pControlInfoList = new IMPL_ControlInfoList ;
+}
+
+BaseContainerControl::~BaseContainerControl()
+{
+ impl_cleanMemory();
+}
+
+//____________________________________________________________________________________________________________
+// XInterface
+//____________________________________________________________________________________________________________
+
+Any SAL_CALL BaseContainerControl::queryInterface( const Type& rType ) throw( RuntimeException )
+{
+ // Attention:
+ // Don't use mutex or guard in this method!!! Is a method of XInterface.
+ Any aReturn ;
+ Reference< XInterface > xDel = BaseControl::impl_getDelegator();
+ if ( xDel.is() == sal_True )
+ {
+ // If an delegator exist, forward question to his queryInterface.
+ // Delegator will ask his own queryAggregation!
+ aReturn = xDel->queryInterface( rType );
+ }
+ else
+ {
+ // If an delegator unknown, forward question to own queryAggregation.
+ aReturn = queryAggregation( rType );
+ }
+
+ return aReturn ;
+}
+
+//____________________________________________________________________________________________________________
+// XTypeProvider
+//____________________________________________________________________________________________________________
+
+Sequence< Type > SAL_CALL BaseContainerControl::getTypes() throw( RuntimeException )
+{
+ // Optimize this method !
+ // We initialize a static variable only one time. And we don't must use a mutex at every call!
+ // For the first call; pTypeCollection is NULL - for the second call pTypeCollection is different from NULL!
+ static OTypeCollection* pTypeCollection = NULL ;
+
+ if ( pTypeCollection == NULL )
+ {
+ // Ready for multithreading; get global mutex for first call of this method only! see before
+ MutexGuard aGuard( Mutex::getGlobalMutex() );
+
+ // Control these pointer again ... it can be, that another instance will be faster then these!
+ if ( pTypeCollection == NULL )
+ {
+ // Create a static typecollection ...
+ static OTypeCollection aTypeCollection ( ::getCppuType(( const Reference< XControlModel >*)NULL ) ,
+ ::getCppuType(( const Reference< XControlContainer >*)NULL ) ,
+ BaseControl::getTypes()
+ );
+ // ... and set his address to static pointer!
+ pTypeCollection = &aTypeCollection ;
+ }
+ }
+
+ return pTypeCollection->getTypes();
+}
+
+//____________________________________________________________________________________________________________
+// XAggregation
+//____________________________________________________________________________________________________________
+
+Any SAL_CALL BaseContainerControl::queryAggregation( const Type& aType ) throw( RuntimeException )
+{
+ // Ask for my own supported interfaces ...
+ // Attention: XTypeProvider and XInterface are supported by OComponentHelper!
+ Any aReturn ( ::cppu::queryInterface( aType ,
+ static_cast< XControlModel* > ( this ) ,
+ static_cast< XControlContainer* > ( this )
+ )
+ );
+
+ // If searched interface supported by this class ...
+ if ( aReturn.hasValue() == sal_True )
+ {
+ // ... return this information.
+ return aReturn ;
+ }
+ else
+ {
+ // Else; ... ask baseclass for interfaces!
+ return BaseControl::queryAggregation( aType );
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XControl
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseContainerControl::createPeer( const Reference< XToolkit >& xToolkit ,
+ const Reference< XWindowPeer >& xParent ) throw( RuntimeException )
+{
+ if ( getPeer().is() == sal_False )
+ {
+ // create own peer
+ BaseControl::createPeer( xToolkit, xParent );
+
+ // create peers at all childs
+ Sequence< Reference< XControl > > seqControlList = getControls();
+ sal_uInt32 nControls = seqControlList.getLength();
+
+ for ( sal_uInt32 n=0; n<nControls; n++ )
+ {
+ seqControlList.getArray()[n]->createPeer( xToolkit, getPeer() );
+ }
+
+ // activate new tab order
+ impl_activateTabControllers();
+
+/*
+ Reference< XVclContainerPeer > xC;
+ mxPeer->queryInterface( ::getCppuType((const Reference< XVclContainerPeer >*)0), xC );
+ xC->enableDialogControl( sal_True );
+*/
+
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XControl
+//____________________________________________________________________________________________________________
+
+sal_Bool SAL_CALL BaseContainerControl::setModel( const Reference< XControlModel >& ) throw( RuntimeException )
+{
+ // This object has NO model.
+ return sal_False ;
+}
+
+//____________________________________________________________________________________________________________
+// XControl
+//____________________________________________________________________________________________________________
+
+Reference< XControlModel > SAL_CALL BaseContainerControl::getModel() throw( RuntimeException )
+{
+ // This object has NO model.
+ // return (XControlModel*)this ;
+ return Reference< XControlModel >();
+}
+
+//____________________________________________________________________________________________________________
+// XComponent
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseContainerControl::dispose() throw( RuntimeException )
+{
+ // Zuerst der Welt mitteilen, da� der Container wegfliegt. Dieses ist um einiges
+ // schneller wenn die Welt sowohl an den Controls als auch am Container horcht
+
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+
+ // remove listeners
+ EventObject aObject ;
+
+ aObject.Source = Reference< XComponent > ( (XControlContainer*)this, UNO_QUERY );
+ m_aListeners.disposeAndClear( aObject );
+
+ // remove controls
+ Sequence< Reference< XControl > > seqCtrls = getControls();
+ Reference< XControl > * pCtrls = seqCtrls.getArray();
+ sal_uInt32 nCtrls = seqCtrls.getLength();
+ sal_uInt32 nMaxCount = m_pControlInfoList->Count();
+ sal_uInt32 nCount = 0;
+
+ for ( nCount = 0; nCount < nMaxCount; ++nCount )
+ {
+ delete m_pControlInfoList->GetObject( 0 );
+ }
+ m_pControlInfoList->Clear();
+
+
+ for ( nCount = 0; nCount < nCtrls; ++nCount )
+ {
+ pCtrls [ nCount ] -> removeEventListener ( static_cast< XEventListener* >( static_cast< XWindowListener* >( this ) ) ) ;
+ pCtrls [ nCount ] -> dispose ( ) ;
+ }
+
+ // call baseclass
+ BaseControl::dispose();
+}
+
+//____________________________________________________________________________________________________________
+// XEventListener
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseContainerControl::disposing( const EventObject& rEvent ) throw( RuntimeException )
+{
+ Reference< XControl > xControl( rEvent.Source, UNO_QUERY );
+
+ // "removeControl" remove only, when control is an active control
+ removeControl( xControl );
+}
+
+//____________________________________________________________________________________________________________
+// XControlContainer
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseContainerControl::addControl ( const OUString& rName, const Reference< XControl > & rControl ) throw( RuntimeException )
+{
+ if ( !rControl.is () )
+ return;
+
+ // take memory for new item
+ IMPL_ControlInfo* pNewControl = new IMPL_ControlInfo ;
+
+ if (pNewControl!=(IMPL_ControlInfo*)0)
+ {
+ // Ready for multithreading
+ MutexGuard aGuard (m_aMutex) ;
+
+ // set control
+ pNewControl->sName = rName ;
+ pNewControl->xControl = rControl ;
+
+ // and insert in list
+ m_pControlInfoList->Insert ( pNewControl, LIST_APPEND ) ;
+
+ // initialize new control
+ pNewControl->xControl->setContext ( (OWeakObject*)this ) ;
+ pNewControl->xControl->addEventListener ( static_cast< XEventListener* >( static_cast< XWindowListener* >( this ) ) ) ;
+
+ // when container has a peer ...
+ if (getPeer().is())
+ {
+ // .. then create a peer on child
+ pNewControl->xControl->createPeer ( getPeer()->getToolkit(), getPeer() ) ;
+ impl_activateTabControllers () ;
+ }
+
+ // Send message to all listener
+ OInterfaceContainerHelper* pInterfaceContainer = m_aListeners.getContainer( ::getCppuType((const Reference< XContainerListener >*)0) ) ;
+
+ if (pInterfaceContainer)
+ {
+ // Build event
+ ContainerEvent aEvent ;
+
+ aEvent.Source = *this ;
+ aEvent.Element <<= rControl ;
+
+ // Get all listener
+ OInterfaceIteratorHelper aIterator (*pInterfaceContainer) ;
+
+ // Send event
+ while ( aIterator.hasMoreElements() )
+ {
+ ((XContainerListener*)aIterator.next())->elementInserted (aEvent) ;
+ }
+ }
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XControlContainer
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseContainerControl::addContainerListener ( const Reference< XContainerListener > & rListener ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard ( m_aMutex ) ;
+
+ m_aListeners.addInterface ( ::getCppuType((const Reference< XContainerListener >*)0), rListener ) ;
+}
+
+//____________________________________________________________________________________________________________
+// XControlContainer
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseContainerControl::removeControl ( const Reference< XControl > & rControl ) throw( RuntimeException )
+{
+ if ( rControl.is() )
+ {
+ // Ready for multithreading
+ MutexGuard aGuard (m_aMutex) ;
+
+ sal_uInt32 nControls = m_pControlInfoList->Count () ;
+
+ for ( sal_uInt32 n=0; n<nControls; n++ )
+ {
+ // Search for right control
+ IMPL_ControlInfo* pControl = m_pControlInfoList->GetObject (n) ;
+ if ( rControl == pControl->xControl )
+ {
+ //.is it found ... remove listener from control
+ pControl->xControl->removeEventListener (static_cast< XEventListener* >( static_cast< XWindowListener* >( this ) )) ;
+ pControl->xControl->setContext ( Reference< XInterface > () ) ;
+
+ // ... free memory
+ delete pControl ;
+ m_pControlInfoList->Remove (n) ;
+
+ // Send message to all other listener
+ OInterfaceContainerHelper * pInterfaceContainer = m_aListeners.getContainer( ::getCppuType((const Reference< XContainerListener >*)0) ) ;
+
+ if (pInterfaceContainer)
+ {
+ ContainerEvent aEvent ;
+
+ aEvent.Source = *this ;
+ aEvent.Element <<= rControl ;
+
+ OInterfaceIteratorHelper aIterator (*pInterfaceContainer) ;
+
+ while ( aIterator.hasMoreElements() )
+ {
+ ((XContainerListener*)aIterator.next())->elementRemoved (aEvent) ;
+ }
+ }
+ // Break "for" !
+ break ;
+ }
+ }
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XControlContainer
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseContainerControl::removeContainerListener ( const Reference< XContainerListener > & rListener ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard ( m_aMutex ) ;
+
+ m_aListeners.removeInterface ( ::getCppuType((const Reference< XContainerListener >*)0), rListener ) ;
+}
+
+//____________________________________________________________________________________________________________
+// XControlContainer
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseContainerControl::setStatusText ( const OUString& rStatusText ) throw( RuntimeException )
+{
+ // go down to each parent
+ Reference< XControlContainer > xContainer ( getContext(), UNO_QUERY ) ;
+
+ if ( xContainer.is () )
+ {
+ xContainer->setStatusText ( rStatusText ) ;
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XControlContainer
+//____________________________________________________________________________________________________________
+
+Reference< XControl > SAL_CALL BaseContainerControl::getControl ( const OUString& rName ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard ( Mutex::getGlobalMutex() ) ;
+
+ Reference< XControl > xRetControl = Reference< XControl > () ;
+ sal_uInt32 nControls = m_pControlInfoList->Count () ;
+
+ // Search for right control
+ for( sal_uInt32 nCount = 0; nCount < nControls; ++nCount )
+ {
+ IMPL_ControlInfo* pSearchControl = m_pControlInfoList->GetObject ( nCount ) ;
+
+ if ( pSearchControl->sName == rName )
+ {
+ // We have found it ...
+ // Break operation and return.
+ return pSearchControl->xControl ;
+ }
+ }
+
+ // We have not found it ... return NULL.
+ return Reference< XControl > () ;
+}
+
+//____________________________________________________________________________________________________________
+// XControlContainer
+//____________________________________________________________________________________________________________
+
+Sequence< Reference< XControl > > SAL_CALL BaseContainerControl::getControls () throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard ( Mutex::getGlobalMutex() ) ;
+
+ sal_uInt32 nControls = m_pControlInfoList->Count () ;
+ Sequence< Reference< XControl > > aDescriptor ( nControls ) ;
+ Reference< XControl > * pDestination = aDescriptor.getArray () ;
+ sal_uInt32 nCount = 0 ;
+
+ // Copy controls to sequence
+ for( nCount = 0; nCount < nControls; ++nCount )
+ {
+ IMPL_ControlInfo* pCopyControl = m_pControlInfoList->GetObject ( nCount ) ;
+ pDestination [ nCount ] = pCopyControl->xControl ;
+ }
+
+ // Return sequence
+ return aDescriptor ;
+}
+
+//____________________________________________________________________________________________________________
+// XUnoControlContainer
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseContainerControl::addTabController ( const Reference< XTabController > & rTabController ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard (m_aMutex) ;
+
+ sal_uInt32 nOldCount = m_xTabControllerList.getLength () ;
+ Sequence< Reference< XTabController > > aNewList ( nOldCount + 1 ) ;
+ sal_uInt32 nCount = 0 ;
+
+ // Copy old elements of sequence to new list.
+ for ( nCount = 0; nCount < nOldCount; ++nCount )
+ {
+ aNewList.getArray () [nCount] = m_xTabControllerList.getConstArray () [nCount] ;
+ }
+
+ // Add new controller
+ aNewList.getArray () [nOldCount] = rTabController ;
+
+ // change old and new list
+ m_xTabControllerList = aNewList ;
+}
+
+//____________________________________________________________________________________________________________
+// XUnoControlContainer
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseContainerControl::removeTabController ( const Reference< XTabController > & rTabController ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard (m_aMutex) ;
+
+ sal_uInt32 nMaxCount = m_xTabControllerList.getLength () ;
+ sal_uInt32 nCount = 0 ;
+
+ // Search right tabcontroller ...
+ for ( nCount = 0; nCount < nMaxCount; ++nCount )
+ {
+ if ( m_xTabControllerList.getConstArray () [nCount] == rTabController )
+ {
+ // ... if is it found ... remove it from list.
+ m_xTabControllerList.getArray()[ nCount ] = Reference< XTabController >() ;
+ break ;
+ }
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XUnoControlContainer
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseContainerControl::setTabControllers ( const Sequence< Reference< XTabController > >& rTabControllers ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard (m_aMutex) ;
+
+ m_xTabControllerList = rTabControllers ;
+}
+
+Sequence<Reference< XTabController > > SAL_CALL BaseContainerControl::getTabControllers () throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard (m_aMutex) ;
+
+ return m_xTabControllerList ;
+}
+
+//____________________________________________________________________________________________________________
+// XWindow
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseContainerControl::setVisible ( sal_Bool bVisible ) throw( RuntimeException )
+{
+ // override baseclass definition
+ BaseControl::setVisible ( bVisible ) ;
+
+ // is it a top window ?
+ if ( !getContext().is() && bVisible )
+ {
+ // then show it automaticly
+ createPeer ( Reference< XToolkit > (), Reference< XWindowPeer > () ) ;
+ }
+}
+
+//____________________________________________________________________________________________________________
+// protected method
+//____________________________________________________________________________________________________________
+
+WindowDescriptor* BaseContainerControl::impl_getWindowDescriptor ( const Reference< XWindowPeer > & rParentPeer )
+{
+ // - used from "createPeer()" to set the values of an WindowDescriptor !!!
+ // - if you will change the descriptor-values, you must override thid virtuell function
+ // - the caller must release the memory for this dynamical descriptor !!!
+
+ WindowDescriptor * aDescriptor = new WindowDescriptor ;
+
+ aDescriptor->Type = WindowClass_CONTAINER ;
+ aDescriptor->WindowServiceName = OUString(RTL_CONSTASCII_USTRINGPARAM("window")) ;
+ aDescriptor->ParentIndex = -1 ;
+ aDescriptor->Parent = rParentPeer ;
+ aDescriptor->Bounds = getPosSize () ;
+ aDescriptor->WindowAttributes = 0 ;
+
+ return aDescriptor ;
+}
+
+//____________________________________________________________________________________________________________
+// protected method
+//____________________________________________________________________________________________________________
+
+void BaseContainerControl::impl_paint ( sal_Int32 /*nX*/, sal_Int32 /*nY*/, const Reference< XGraphics > & /*rGraphics*/ )
+{
+/*
+ if (rGraphics.is())
+ {
+ for ( sal_uInt32 n=m_pControlInfoList->Count(); n; )
+ {
+ ControlInfo* pSearchControl = m_pControlInfoList->GetObject (--n) ;
+
+ pSearchControl->xControl->paint ( nX, nY, rGraphics ) ;
+ }
+ }
+*/
+}
+
+//____________________________________________________________________________________________________________
+// private method
+//____________________________________________________________________________________________________________
+
+void BaseContainerControl::impl_activateTabControllers ()
+{
+ // Ready for multithreading
+ MutexGuard aGuard (m_aMutex) ;
+
+ sal_uInt32 nMaxCount = m_xTabControllerList.getLength () ;
+ sal_uInt32 nCount = 0 ;
+
+ for ( nCount = 0; nCount < nMaxCount; ++nCount )
+ {
+ m_xTabControllerList.getArray () [nCount]->setContainer ( this ) ;
+ m_xTabControllerList.getArray () [nCount]->activateTabOrder ( ) ;
+ }
+}
+
+//____________________________________________________________________________________________________________
+// private method
+//____________________________________________________________________________________________________________
+
+void BaseContainerControl::impl_cleanMemory ()
+{
+ // Get count of listitems.
+ sal_uInt32 nMaxCount = m_pControlInfoList->Count () ;
+ sal_uInt32 nCount = 0 ;
+
+ // Delete all items.
+ for ( nCount = 0; nCount < nMaxCount; ++nCount )
+ {
+ // Delete everytime first element of list!
+ // We count from 0 to MAX, where "MAX=count of items" BEFORE we delete some elements!
+ // If we use "GetObject ( nCount )" ... it can be, that we have an index greater then count of current elements!
+
+ IMPL_ControlInfo* pSearchControl = m_pControlInfoList->GetObject ( 0 ) ;
+ delete pSearchControl ;
+ }
+
+ // Delete list himself.
+ m_pControlInfoList->Clear () ;
+ delete m_pControlInfoList ;
+}
+
+} // namespace unocontrols
diff --git a/UnoControls/source/base/basecontrol.cxx b/UnoControls/source/base/basecontrol.cxx
new file mode 100644
index 000000000000..030f19d6d452
--- /dev/null
+++ b/UnoControls/source/base/basecontrol.cxx
@@ -0,0 +1,1019 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+//____________________________________________________________________________________________________________
+// my own include
+//____________________________________________________________________________________________________________
+
+#include "basecontrol.hxx"
+
+//____________________________________________________________________________________________________________
+// includes of other projects
+//____________________________________________________________________________________________________________
+#include <com/sun/star/awt/XDevice.hpp>
+#include <com/sun/star/awt/XDisplayBitmap.hpp>
+#include <com/sun/star/awt/DeviceInfo.hpp>
+#include <com/sun/star/awt/WindowAttribute.hpp>
+#include <com/sun/star/awt/PosSize.hpp>
+#include <cppuhelper/typeprovider.hxx>
+
+//____________________________________________________________________________________________________________
+// includes of my own project
+//____________________________________________________________________________________________________________
+
+//____________________________________________________________________________________________________________
+// namespaces
+//____________________________________________________________________________________________________________
+
+using namespace ::cppu ;
+using namespace ::osl ;
+using namespace ::rtl ;
+using namespace ::com::sun::star::uno ;
+using namespace ::com::sun::star::lang ;
+using namespace ::com::sun::star::awt ;
+
+namespace unocontrols{
+
+//____________________________________________________________________________________________________________
+// defines
+//____________________________________________________________________________________________________________
+
+#define DEFAULT_PMULTIPLEXER NULL
+#define DEFAULT_X 0
+#define DEFAULT_Y 0
+#define DEFAULT_WIDTH 100
+#define DEFAULT_HEIGHT 100
+#define DEFAULT_VISIBLE sal_False
+#define DEFAULT_INDESIGNMODE sal_False
+#define DEFAULT_ENABLE sal_True
+#define SERVICE_VCLTOOLKIT "com.sun.star.awt.Toolkit"
+
+//____________________________________________________________________________________________________________
+// construct/destruct
+//____________________________________________________________________________________________________________
+
+BaseControl::BaseControl( const Reference< XMultiServiceFactory >& xFactory )
+ : IMPL_MutexContainer ( )
+ , OComponentHelper ( m_aMutex )
+ , m_xFactory ( xFactory )
+ , m_pMultiplexer ( DEFAULT_PMULTIPLEXER )
+ , m_nX ( DEFAULT_X )
+ , m_nY ( DEFAULT_Y )
+ , m_nWidth ( DEFAULT_WIDTH )
+ , m_nHeight ( DEFAULT_HEIGHT )
+ , m_bVisible ( DEFAULT_VISIBLE )
+ , m_bInDesignMode ( DEFAULT_INDESIGNMODE )
+ , m_bEnable ( DEFAULT_ENABLE )
+{
+}
+
+BaseControl::~BaseControl()
+{
+}
+
+//____________________________________________________________________________________________________________
+// XInterface
+//____________________________________________________________________________________________________________
+
+Any SAL_CALL BaseControl::queryInterface( const Type& rType ) throw( RuntimeException )
+{
+ Any aReturn ;
+ if ( m_xDelegator.is() == sal_True )
+ {
+ // If an delegator exist, forward question to his queryInterface.
+ // Delegator will ask his own queryAggregation!
+ aReturn = m_xDelegator->queryInterface( rType );
+ }
+ else
+ {
+ // If an delegator unknown, forward question to own queryAggregation.
+ aReturn = queryAggregation( rType );
+ }
+
+ return aReturn ;
+}
+
+//____________________________________________________________________________________________________________
+// XInterface
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::acquire() throw()
+{
+ // Attention:
+ // Don't use mutex or guard in this method!!! Is a method of XInterface.
+
+ // Forward to baseclass
+ OComponentHelper::acquire();
+}
+
+//____________________________________________________________________________________________________________
+// XInterface
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::release() throw()
+{
+ // Attention:
+ // Don't use mutex or guard in this method!!! Is a method of XInterface.
+
+ // Forward to baseclass
+ OComponentHelper::release();
+}
+
+//____________________________________________________________________________________________________________
+// XTypeProvider
+//____________________________________________________________________________________________________________
+
+Sequence< Type > SAL_CALL BaseControl::getTypes() throw( RuntimeException )
+{
+ // Optimize this method !
+ // We initialize a static variable only one time. And we don't must use a mutex at every call!
+ // For the first call; pTypeCollection is NULL - for the second call pTypeCollection is different from NULL!
+ static OTypeCollection* pTypeCollection = NULL ;
+
+ if ( pTypeCollection == NULL )
+ {
+ // Ready for multithreading; get global mutex for first call of this method only! see before
+ MutexGuard aGuard( Mutex::getGlobalMutex() );
+
+ // Control these pointer again ... it can be, that another instance will be faster then these!
+ if ( pTypeCollection == NULL )
+ {
+ // Create a static typecollection ...
+ static OTypeCollection aTypeCollection ( ::getCppuType(( const Reference< XPaintListener >*)NULL ) ,
+ ::getCppuType(( const Reference< XWindowListener>*)NULL ) ,
+ ::getCppuType(( const Reference< XView >*)NULL ) ,
+ ::getCppuType(( const Reference< XWindow >*)NULL ) ,
+ ::getCppuType(( const Reference< XServiceInfo >*)NULL ) ,
+ ::getCppuType(( const Reference< XControl >*)NULL ) ,
+ OComponentHelper::getTypes()
+ );
+
+ // ... and set his address to static pointer!
+ pTypeCollection = &aTypeCollection ;
+ }
+ }
+
+ return pTypeCollection->getTypes();
+}
+
+//____________________________________________________________________________________________________________
+// XTypeProvider
+//____________________________________________________________________________________________________________
+
+Sequence< sal_Int8 > SAL_CALL BaseControl::getImplementationId() throw( RuntimeException )
+{
+ // Create one Id for all instances of this class.
+ // Use ethernet address to do this! (sal_True)
+
+ // Optimize this method
+ // We initialize a static variable only one time. And we don't must use a mutex at every call!
+ // For the first call; pID is NULL - for the second call pID is different from NULL!
+ static OImplementationId* pID = NULL ;
+
+ if ( pID == NULL )
+ {
+ // Ready for multithreading; get global mutex for first call of this method only! see before
+ MutexGuard aGuard( Mutex::getGlobalMutex() );
+
+ // Control these pointer again ... it can be, that another instance will be faster then these!
+ if ( pID == NULL )
+ {
+ // Create a new static ID ...
+ static OImplementationId aID( sal_False );
+ // ... and set his address to static pointer!
+ pID = &aID ;
+ }
+ }
+
+ return pID->getImplementationId();
+}
+
+//____________________________________________________________________________________________________________
+// XAggregation
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::setDelegator( const Reference< XInterface >& xDel ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+ m_xDelegator = xDel;
+}
+
+//____________________________________________________________________________________________________________
+// XAggregation
+//____________________________________________________________________________________________________________
+
+Any SAL_CALL BaseControl::queryAggregation( const Type& aType ) throw( RuntimeException )
+{
+ // Ask for my own supported interfaces ...
+ // Attention: XTypeProvider and XInterface are supported by OComponentHelper!
+ Any aReturn ( ::cppu::queryInterface( aType ,
+ static_cast< XPaintListener*> ( this ) ,
+ static_cast< XWindowListener*> ( this ) ,
+ static_cast< XView* > ( this ) ,
+ static_cast< XWindow* > ( this ) ,
+ static_cast< XServiceInfo* > ( this ) ,
+ static_cast< XControl* > ( this )
+ )
+ );
+
+ // If searched interface supported by this class ...
+ if ( aReturn.hasValue() == sal_True )
+ {
+ // ... return this information.
+ return aReturn ;
+ }
+ else
+ {
+ // Else; ... ask baseclass for interfaces!
+ return OComponentHelper::queryAggregation( aType );
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XServiceInfo
+//____________________________________________________________________________________________________________
+
+OUString SAL_CALL BaseControl::getImplementationName() throw( RuntimeException )
+{
+ return impl_getStaticImplementationName();
+}
+
+//____________________________________________________________________________________________________________
+// XServiceInfo
+//____________________________________________________________________________________________________________
+
+sal_Bool SAL_CALL BaseControl::supportsService( const OUString& sServiceName ) throw( RuntimeException )
+{
+ Sequence< OUString > seqServiceNames = getSupportedServiceNames();
+ const OUString* pArray = seqServiceNames.getConstArray();
+ for ( sal_Int32 nCounter=0; nCounter<seqServiceNames.getLength(); nCounter++ )
+ {
+ if ( pArray[nCounter] == sServiceName )
+ {
+ return sal_True ;
+ }
+ }
+ return sal_False ;
+}
+
+//____________________________________________________________________________________________________________
+// XServiceInfo
+//____________________________________________________________________________________________________________
+
+Sequence< OUString > SAL_CALL BaseControl::getSupportedServiceNames() throw( RuntimeException )
+{
+ return impl_getStaticSupportedServiceNames();
+}
+
+//____________________________________________________________________________________________________________
+// XComponent
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::dispose() throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+
+ if ( m_pMultiplexer != NULL )
+ {
+ // to all other paint, focus, etc.
+ m_pMultiplexer->disposeAndClear();
+ }
+
+ // set the service manager to disposed
+ OComponentHelper::dispose();
+
+ // release context and peer
+ m_xContext = Reference< XInterface >();
+ impl_releasePeer();
+
+ // release view
+ if ( m_xGraphicsView.is() == sal_True )
+ {
+ m_xGraphicsView = Reference< XGraphics >();
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XComponent
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::addEventListener( const Reference< XEventListener >& xListener ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+ OComponentHelper::addEventListener( xListener );
+}
+
+//____________________________________________________________________________________________________________
+// XComponent
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::removeEventListener( const Reference< XEventListener >& xListener ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+ OComponentHelper::removeEventListener( xListener );
+}
+
+//____________________________________________________________________________________________________________
+// XControl
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::createPeer( const Reference< XToolkit >& xToolkit ,
+ const Reference< XWindowPeer >& xParentPeer ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+
+ if ( m_xPeer.is() == sal_False )
+ {
+ // use method "BaseControl::getWindowDescriptor()" fot change window attributes !!!
+ WindowDescriptor* pDescriptor = impl_getWindowDescriptor( xParentPeer );
+
+ if ( m_bVisible == sal_True )
+ {
+ pDescriptor->WindowAttributes |= WindowAttribute::SHOW ;
+ }
+
+ // very slow under remote conditions!
+ // create the window on the server
+ Reference< XToolkit > xLocalToolkit = xToolkit ;
+ if ( xLocalToolkit.is() == sal_False )
+ {
+ // but first create wellknown toolkit, if it not exist
+ xLocalToolkit = Reference< XToolkit > ( m_xFactory->createInstance( OUString::createFromAscii( SERVICE_VCLTOOLKIT ) ), UNO_QUERY );
+ }
+ m_xPeer = xLocalToolkit->createWindow( *pDescriptor );
+ m_xPeerWindow = Reference< XWindow >( m_xPeer, UNO_QUERY );
+
+ // don't forget to release the memory!
+ delete pDescriptor ;
+
+ if ( m_xPeerWindow.is() == sal_True )
+ {
+ if ( m_pMultiplexer != NULL )
+ {
+ m_pMultiplexer->setPeer( m_xPeerWindow );
+ }
+
+ // create new referenz to xgraphics for painting on a peer
+ // and add a paint listener
+ Reference< XDevice > xDevice( m_xPeerWindow, UNO_QUERY );
+
+ if ( xDevice.is() == sal_True )
+ {
+ m_xGraphicsPeer = xDevice->createGraphics();
+ }
+
+ if ( m_xGraphicsPeer.is() == sal_True )
+ {
+ addPaintListener( this );
+ addWindowListener( this );
+ }
+
+ // PosSize_POSSIZE defined in <stardiv/uno/awt/window.hxx>
+ m_xPeerWindow->setPosSize( m_nX, m_nY, m_nWidth, m_nHeight, PosSize::POSSIZE );
+ m_xPeerWindow->setEnable( m_bEnable );
+ m_xPeerWindow->setVisible( m_bVisible && !m_bInDesignMode );
+ }
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XControl
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::setContext( const Reference< XInterface >& xContext ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+ m_xContext = xContext ;
+}
+
+//____________________________________________________________________________________________________________
+// XControl
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::setDesignMode( sal_Bool bOn ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+ m_bInDesignMode = bOn ;
+}
+
+//____________________________________________________________________________________________________________
+// XControl
+//____________________________________________________________________________________________________________
+
+Reference< XInterface > SAL_CALL BaseControl::getContext() throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+ return m_xContext ;
+}
+
+//____________________________________________________________________________________________________________
+// XControl
+//____________________________________________________________________________________________________________
+
+Reference< XWindowPeer > SAL_CALL BaseControl::getPeer() throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+ return m_xPeer ;
+}
+
+//____________________________________________________________________________________________________________
+// XControl
+//____________________________________________________________________________________________________________
+
+Reference< XView > SAL_CALL BaseControl::getView() throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+ return Reference< XView >( (OWeakObject*)this, UNO_QUERY );
+}
+
+//____________________________________________________________________________________________________________
+// XControl
+//____________________________________________________________________________________________________________
+
+sal_Bool SAL_CALL BaseControl::isDesignMode() throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+ return m_bInDesignMode ;
+}
+
+//____________________________________________________________________________________________________________
+// XControl
+//____________________________________________________________________________________________________________
+
+sal_Bool SAL_CALL BaseControl::isTransparent() throw( RuntimeException )
+{
+ return sal_False ;
+}
+
+//____________________________________________________________________________________________________________
+// XWindow
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::setPosSize( sal_Int32 nX ,
+ sal_Int32 nY ,
+ sal_Int32 nWidth ,
+ sal_Int32 nHeight ,
+ sal_Int16 nFlags ) throw( RuntimeException )
+{
+ // - change size and position of window and save the values
+ // - "nFlags" declared in <stardiv/uno/awt/window.hxx> ("#define PosSize_X .....")
+
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+
+ sal_Bool bChanged = sal_False ;
+
+ if ( nFlags & PosSize::X )
+ {
+ bChanged |= m_nX != nX, m_nX = nX ;
+ }
+
+ if ( nFlags & PosSize::Y )
+ {
+ bChanged |= m_nY != nY, m_nY = nY ;
+ }
+
+ if ( nFlags & PosSize::WIDTH )
+ {
+ bChanged |= m_nWidth != nWidth, m_nWidth = nWidth ;
+ }
+
+ if ( nFlags & PosSize::HEIGHT )
+ {
+ bChanged |= m_nHeight != nHeight, m_nHeight = nHeight ;
+ }
+
+ if ( bChanged && m_xPeerWindow.is() )
+ {
+ m_xPeerWindow->setPosSize( m_nX, m_nY, m_nWidth, m_nHeight, nFlags );
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XWindow
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::setVisible( sal_Bool bVisible ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+
+ // Set new state of flag
+ m_bVisible = bVisible ;
+
+ if ( m_xPeerWindow.is() == sal_True )
+ {
+ // Set it also on peerwindow
+ m_xPeerWindow->setVisible( m_bVisible );
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XWindow
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::setEnable( sal_Bool bEnable ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+
+ // Set new state of flag
+ m_bEnable = bEnable ;
+
+ if ( m_xPeerWindow.is() == sal_True )
+ {
+ // Set it also on peerwindow
+ m_xPeerWindow->setEnable( m_bEnable );
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XWindow
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::setFocus() throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+
+ if ( m_xPeerWindow.is() == sal_True )
+ {
+ m_xPeerWindow->setFocus();
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XWindow
+//____________________________________________________________________________________________________________
+
+Rectangle SAL_CALL BaseControl::getPosSize() throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+ return Rectangle( m_nX, m_nY , m_nWidth, m_nHeight );
+}
+
+//____________________________________________________________________________________________________________
+// XWindow
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::addWindowListener( const Reference< XWindowListener >& xListener ) throw( RuntimeException )
+{
+ impl_getMultiplexer()->advise( ::getCppuType(( const Reference< XWindowListener >*)0), xListener );
+}
+
+//____________________________________________________________________________________________________________
+// XWindow
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::addFocusListener( const Reference< XFocusListener >& xListener ) throw( RuntimeException )
+{
+ impl_getMultiplexer()->advise( ::getCppuType(( const Reference< XFocusListener >*)0), xListener );
+}
+
+//____________________________________________________________________________________________________________
+// XWindow
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::addKeyListener( const Reference< XKeyListener >& xListener ) throw( RuntimeException )
+{
+ impl_getMultiplexer()->advise( ::getCppuType(( const Reference< XKeyListener >*)0), xListener );
+}
+
+//____________________________________________________________________________________________________________
+// XWindow
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::addMouseListener( const Reference< XMouseListener >& xListener ) throw( RuntimeException )
+{
+ impl_getMultiplexer()->advise( ::getCppuType(( const Reference< XMouseListener >*)0), xListener );
+}
+
+//____________________________________________________________________________________________________________
+// XWindow
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::addMouseMotionListener( const Reference< XMouseMotionListener >& xListener ) throw( RuntimeException )
+{
+ impl_getMultiplexer()->advise( ::getCppuType(( const Reference< XMouseMotionListener >*)0), xListener );
+}
+
+//____________________________________________________________________________________________________________
+// XWindow
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::addPaintListener( const Reference< XPaintListener >& xListener ) throw( RuntimeException )
+{
+ impl_getMultiplexer()->advise( ::getCppuType(( const Reference< XPaintListener >*)0), xListener );
+}
+
+//____________________________________________________________________________________________________________
+// XWindow
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::removeWindowListener( const Reference< XWindowListener >& xListener ) throw( RuntimeException )
+{
+ impl_getMultiplexer()->unadvise( ::getCppuType(( const Reference< XWindowListener >*)0), xListener );
+}
+
+//____________________________________________________________________________________________________________
+// XWindow
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::removeFocusListener( const Reference< XFocusListener >& xListener ) throw( RuntimeException )
+{
+ impl_getMultiplexer()->unadvise( ::getCppuType(( const Reference< XFocusListener >*)0), xListener );
+}
+
+//____________________________________________________________________________________________________________
+// XWindow
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::removeKeyListener( const Reference< XKeyListener >& xListener ) throw( RuntimeException )
+{
+ impl_getMultiplexer()->unadvise( ::getCppuType(( const Reference< XKeyListener >*)0), xListener );
+}
+
+//____________________________________________________________________________________________________________
+// XWindow
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::removeMouseListener( const Reference< XMouseListener >& xListener ) throw( RuntimeException )
+{
+ impl_getMultiplexer()->unadvise( ::getCppuType(( const Reference< XMouseListener >*)0), xListener );
+}
+
+//____________________________________________________________________________________________________________
+// XWindow
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::removeMouseMotionListener( const Reference< XMouseMotionListener >& xListener ) throw( RuntimeException )
+{
+ impl_getMultiplexer()->unadvise( ::getCppuType(( const Reference< XMouseMotionListener >*)0), xListener );
+}
+
+//____________________________________________________________________________________________________________
+// XWindow
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::removePaintListener( const Reference< XPaintListener >& xListener ) throw( RuntimeException )
+{
+ impl_getMultiplexer()->unadvise( ::getCppuType(( const Reference< XPaintListener >*)0), xListener );
+}
+
+//____________________________________________________________________________________________________________
+// XView
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::draw( sal_Int32 nX ,
+ sal_Int32 nY ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+
+ // - paint to an view
+ // - use the method "paint()"
+ // - see also "windowPaint()"
+ impl_paint( nX, nY, m_xGraphicsView );
+}
+
+//____________________________________________________________________________________________________________
+// XView
+//____________________________________________________________________________________________________________
+
+sal_Bool SAL_CALL BaseControl::setGraphics( const Reference< XGraphics >& xDevice ) throw( RuntimeException )
+{
+ // - set the graphics for an view
+ // - in this class exist 2 graphics-member ... one for peer[_xGraphicsPeer] and one for view[_xGraphicsView]
+ // - they are used by "windowPaint() and draw()", forwarded to "paint ()"
+ sal_Bool bReturn = sal_False ;
+ if ( xDevice.is() == sal_True )
+ {
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+
+ m_xGraphicsView = xDevice ;
+ bReturn = sal_True ;
+ }
+
+ return bReturn ;
+}
+
+//____________________________________________________________________________________________________________
+// XView
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::setZoom( float /*fZoomX*/ ,
+ float /*fZoomY*/ ) throw( RuntimeException )
+{
+ // Not implemented yet
+}
+
+//____________________________________________________________________________________________________________
+// XView
+//____________________________________________________________________________________________________________
+
+Reference< XGraphics > SAL_CALL BaseControl::getGraphics() throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+ return m_xGraphicsView ;
+}
+
+//____________________________________________________________________________________________________________
+// XView
+//____________________________________________________________________________________________________________
+
+Size SAL_CALL BaseControl::getSize() throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+ return Size( m_nWidth, m_nHeight );
+}
+
+//____________________________________________________________________________________________________________
+// XEventListener
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::disposing( const EventObject& /*aSource*/ ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+
+ // - release ALL references
+ // - it must be !!!
+ if ( m_xGraphicsPeer.is() == sal_True )
+ {
+ removePaintListener( this );
+ removeWindowListener( this );
+ m_xGraphicsPeer = Reference< XGraphics >();
+ }
+
+ if ( m_xGraphicsView.is() == sal_True )
+ {
+ m_xGraphicsView = Reference< XGraphics >();
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XPaintListener
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::windowPaint( const PaintEvent& /*aEvent*/ ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+
+ // - repaint the peer
+ // - use the method "paint ()" for painting on a peer and a print device !!!
+ // - see also "draw ()"
+ impl_paint( 0, 0, m_xGraphicsPeer );
+}
+
+//____________________________________________________________________________________________________________
+// XWindowListener
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::windowResized( const WindowEvent& aEvent ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+
+ m_nWidth = aEvent.Width ;
+ m_nHeight = aEvent.Height ;
+ WindowEvent aMappedEvent = aEvent;
+ aMappedEvent.X = 0;
+ aMappedEvent.Y = 0;
+ impl_recalcLayout( aMappedEvent );
+}
+
+//____________________________________________________________________________________________________________
+// XWindowListener
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::windowMoved( const WindowEvent& aEvent ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+
+ m_nWidth = aEvent.Width ;
+ m_nHeight = aEvent.Height ;
+ WindowEvent aMappedEvent = aEvent;
+ aMappedEvent.X = 0;
+ aMappedEvent.Y = 0;
+ impl_recalcLayout( aMappedEvent );
+}
+
+//____________________________________________________________________________________________________________
+// XWindowListener
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::windowShown( const EventObject& /*aEvent*/ ) throw( RuntimeException )
+{
+}
+
+//____________________________________________________________________________________________________________
+// XWindowListener
+//____________________________________________________________________________________________________________
+
+void SAL_CALL BaseControl::windowHidden( const EventObject& /*aEvent*/ ) throw( RuntimeException )
+{
+}
+
+//____________________________________________________________________________________________________________
+// impl but public method to register service in DLL
+// (In this BASE-implementation not implemented! Overwrite it in derived classes.)
+//____________________________________________________________________________________________________________
+
+const Sequence< OUString > BaseControl::impl_getStaticSupportedServiceNames()
+{
+ return Sequence< OUString >();
+}
+
+//____________________________________________________________________________________________________________
+// impl but public method to register service in DLL
+// (In this BASE-implementation not implemented! Overwrite it in derived classes.)
+//____________________________________________________________________________________________________________
+
+const OUString BaseControl::impl_getStaticImplementationName()
+{
+ return OUString();
+}
+
+//____________________________________________________________________________________________________________
+// protected method
+//____________________________________________________________________________________________________________
+
+const Reference< XMultiServiceFactory > BaseControl::impl_getMultiServiceFactory()
+{
+ return m_xFactory ;
+}
+
+//____________________________________________________________________________________________________________
+// protected method
+//____________________________________________________________________________________________________________
+
+const Reference< XWindow > BaseControl::impl_getPeerWindow()
+{
+ return m_xPeerWindow ;
+}
+
+//____________________________________________________________________________________________________________
+// protected method
+//____________________________________________________________________________________________________________
+
+const Reference< XGraphics > BaseControl::impl_getGraphicsPeer()
+{
+ return m_xGraphicsPeer ;
+}
+
+//____________________________________________________________________________________________________________
+// protected method
+//____________________________________________________________________________________________________________
+
+const sal_Int32& BaseControl::impl_getWidth()
+{
+ return m_nWidth ;
+}
+
+//____________________________________________________________________________________________________________
+// protected method
+//____________________________________________________________________________________________________________
+
+const sal_Int32& BaseControl::impl_getHeight()
+{
+ return m_nHeight ;
+}
+
+//____________________________________________________________________________________________________________
+// protected method
+//____________________________________________________________________________________________________________
+
+WindowDescriptor* BaseControl::impl_getWindowDescriptor( const Reference< XWindowPeer >& xParentPeer )
+{
+ // - used from "createPeer()" to set the values of an ::com::sun::star::awt::WindowDescriptor !!!
+ // - if you will change the descriptor-values, you must override this virtuell function
+ // - the caller must release the memory for this dynamical descriptor !!!
+
+ WindowDescriptor* pDescriptor = new WindowDescriptor ;
+
+ pDescriptor->Type = WindowClass_SIMPLE ;
+ pDescriptor->WindowServiceName = OUString::createFromAscii( "window" ) ;
+ pDescriptor->ParentIndex = -1 ;
+ pDescriptor->Parent = xParentPeer ;
+ pDescriptor->Bounds = getPosSize () ;
+ pDescriptor->WindowAttributes = 0 ;
+
+ return pDescriptor ;
+}
+
+//____________________________________________________________________________________________________________
+// protected method
+//____________________________________________________________________________________________________________
+
+void BaseControl::impl_paint( sal_Int32 /*nX*/ ,
+ sal_Int32 /*nY*/ ,
+ const Reference< XGraphics >& /*xGraphics*/ )
+{
+ // - one paint method for peer AND view !!!
+ // (see also => "windowPaint()" and "draw()")
+ // - not used in this implementation, but its not necessary to make it pure virtual !!!
+}
+
+//____________________________________________________________________________________________________________
+// protected method
+//____________________________________________________________________________________________________________
+
+void BaseControl::impl_recalcLayout( const WindowEvent& /*aEvent*/ )
+{
+ // We need as virtual function to support automaticly resizing of derived controls!
+ // But we make it not pure virtual because it's not neccessary for all derived classes!
+}
+
+//____________________________________________________________________________________________________________
+// protected method
+//____________________________________________________________________________________________________________
+
+Reference< XInterface > BaseControl::impl_getDelegator()
+{
+ return m_xDelegator ;
+}
+
+//____________________________________________________________________________________________________________
+// private method
+//____________________________________________________________________________________________________________
+
+void BaseControl::impl_releasePeer()
+{
+ if ( m_xPeer.is() == sal_True )
+ {
+ if ( m_xGraphicsPeer.is() == sal_True )
+ {
+ removePaintListener( this );
+ removeWindowListener( this );
+ m_xGraphicsPeer = Reference< XGraphics >();
+ }
+
+ m_xPeer->dispose();
+ m_xPeerWindow = Reference< XWindow >();
+ m_xPeer = Reference< XWindowPeer >();
+
+ if ( m_pMultiplexer != NULL )
+ {
+ // take changes on multiplexer
+ m_pMultiplexer->setPeer( Reference< XWindow >() );
+ }
+ }
+}
+
+//____________________________________________________________________________________________________________
+// private method
+//____________________________________________________________________________________________________________
+
+OMRCListenerMultiplexerHelper* BaseControl::impl_getMultiplexer()
+{
+ if ( m_pMultiplexer == NULL )
+ {
+ m_pMultiplexer = new OMRCListenerMultiplexerHelper( (XWindow*)this, m_xPeerWindow );
+ m_xMultiplexer = Reference< XInterface >( (OWeakObject*)m_pMultiplexer, UNO_QUERY );
+ }
+
+ return m_pMultiplexer ;
+}
+
+} // namespace unocontrols
diff --git a/UnoControls/source/base/makefile.mk b/UnoControls/source/base/makefile.mk
new file mode 100644
index 000000000000..74c6d4d43656
--- /dev/null
+++ b/UnoControls/source/base/makefile.mk
@@ -0,0 +1,69 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+PRJ=..$/..
+
+PRJNAME=UnoControls
+TARGET=base
+ENABLE_EXCEPTIONS=TRUE
+#LIBTARGET=NO
+#USE_LDUMP2=TRUE
+#USE_DEFFILE=TRUE
+
+# --- Settings -----------------------------------------------------
+.INCLUDE : $(PRJ)$/util$/makefile.pmk
+
+
+# --- Files --------------------------------------------------------
+SLOFILES= $(SLO)$/multiplexer.obj \
+ $(SLO)$/basecontrol.obj \
+ $(SLO)$/basecontainercontrol.obj \
+ $(SLO)$/registercontrols.obj
+
+#LIB1TARGET= $(SLB)$/$(TARGET).lib
+#LIB1OBJFILES= $(SLOFILES)
+
+#SHL1TARGET= $(TARGET)$(DLLPOSTFIX)
+
+#SHL1STDLIBS=\
+# $(ONELIB) \
+# $(USRLIB) \
+# $(UNOLIB) \
+# $(VOSLIB) \
+# $(OSLLIB) \
+# $(TOOLSLIB) \
+# $(RTLLIB)
+
+#SHL1DEPN= makefile.mk
+#SHL1LIBS= $(LIB1TARGET)
+#SHL1DEF= $(MISC)$/$(SHL1TARGET).def
+
+#DEF1NAME= $(SHL1TARGET)
+#DEF1EXPORTFILE= exports.dxp
+
+# --- Targets ------------------------------------------------------
+.INCLUDE : target.mk
+#.INCLUDE : $(PRJ)$/util$/target.pmk
diff --git a/UnoControls/source/base/multiplexer.cxx b/UnoControls/source/base/multiplexer.cxx
new file mode 100644
index 000000000000..0c1ded49694e
--- /dev/null
+++ b/UnoControls/source/base/multiplexer.cxx
@@ -0,0 +1,577 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+//____________________________________________________________________________________________________________
+// my own include
+//____________________________________________________________________________________________________________
+
+#include "multiplexer.hxx"
+
+//____________________________________________________________________________________________________________
+// includes of other projects
+//____________________________________________________________________________________________________________
+#include <vos/diagnose.hxx>
+
+//____________________________________________________________________________________________________________
+// includes of my own project
+//____________________________________________________________________________________________________________
+
+//____________________________________________________________________________________________________________
+// namespaces
+//____________________________________________________________________________________________________________
+
+using namespace ::cppu ;
+using namespace ::osl ;
+using namespace ::com::sun::star::uno ;
+using namespace ::com::sun::star::awt ;
+using namespace ::com::sun::star::lang ;
+
+namespace unocontrols{
+
+//____________________________________________________________________________________________________________
+// macros
+//____________________________________________________________________________________________________________
+
+#define MULTIPLEX( INTERFACE, METHOD, EVENTTYP, EVENT ) \
+ \
+ /* First get all interfaces from container with right type.*/ \
+ OInterfaceContainerHelper* pContainer = m_aListenerHolder.getContainer( ::getCppuType((const Reference< INTERFACE >*)0) ); \
+ /* Do the follow only, if elements in container exist.*/ \
+ if( pContainer != NULL ) \
+ { \
+ OInterfaceIteratorHelper aIterator( *pContainer ); \
+ EVENTTYP aLocalEvent = EVENT; \
+ /* Remark: The control is the event source not the peer.*/ \
+ /* We must change the source of the event. */ \
+ aLocalEvent.Source = m_xControl ; \
+ /* Is the control not destroyed? */ \
+ if( aLocalEvent.Source.is() == sal_True ) \
+ { \
+ if( aIterator.hasMoreElements() ) \
+ { \
+ INTERFACE * pListener = (INTERFACE *)aIterator.next(); \
+ try \
+ { \
+ pListener->METHOD( aLocalEvent ); \
+ } \
+ catch( RuntimeException& ) \
+ { \
+ /* Ignore all system exceptions from the listener! */ \
+ } \
+ } \
+ } \
+ }
+
+//____________________________________________________________________________________________________________
+// construct/destruct
+//____________________________________________________________________________________________________________
+
+OMRCListenerMultiplexerHelper::OMRCListenerMultiplexerHelper( const Reference< XWindow >& xControl ,
+ const Reference< XWindow >& xPeer )
+ : m_xPeer ( xPeer )
+ , m_xControl ( xControl )
+ , m_aListenerHolder ( m_aMutex )
+{
+}
+
+OMRCListenerMultiplexerHelper::OMRCListenerMultiplexerHelper( const OMRCListenerMultiplexerHelper& /*aCopyInstance*/ )
+ : XFocusListener()
+ , XWindowListener()
+ , XKeyListener()
+ , XMouseListener()
+ , XMouseMotionListener()
+ , XPaintListener()
+ , XTopWindowListener()
+ , OWeakObject()
+ , m_aListenerHolder ( m_aMutex )
+{
+}
+
+OMRCListenerMultiplexerHelper::~OMRCListenerMultiplexerHelper()
+{
+}
+
+//____________________________________________________________________________________________________________
+// XInterface
+//____________________________________________________________________________________________________________
+
+Any SAL_CALL OMRCListenerMultiplexerHelper::queryInterface( const Type& rType ) throw( RuntimeException )
+{
+ // Attention:
+ // Don't use mutex or guard in this method!!! Is a method of XInterface.
+
+ // Ask for my own supported interfaces ...
+ // Attention: XTypeProvider and XInterface are supported by OComponentHelper!
+ Any aReturn ( ::cppu::queryInterface( rType ,
+ static_cast< XWindowListener* > ( this ) ,
+ static_cast< XKeyListener* > ( this ) ,
+ static_cast< XFocusListener* > ( this ) ,
+ static_cast< XMouseListener* > ( this ) ,
+ static_cast< XMouseMotionListener* > ( this ) ,
+ static_cast< XPaintListener* > ( this ) ,
+ static_cast< XTopWindowListener* > ( this ) ,
+ static_cast< XTopWindowListener* > ( this )
+ )
+ );
+
+ // If searched interface supported by this class ...
+ if ( aReturn.hasValue() == sal_True )
+ {
+ // ... return this information.
+ return aReturn ;
+ }
+ else
+ {
+ // Else; ... ask baseclass for interfaces!
+ return OWeakObject::queryInterface( rType );
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XInterface
+//____________________________________________________________________________________________________________
+
+void SAL_CALL OMRCListenerMultiplexerHelper::acquire() throw()
+{
+ // Attention:
+ // Don't use mutex or guard in this method!!! Is a method of XInterface.
+
+ // Forward to baseclass
+ OWeakObject::acquire();
+}
+
+//____________________________________________________________________________________________________________
+// XInterface
+//____________________________________________________________________________________________________________
+
+void SAL_CALL OMRCListenerMultiplexerHelper::release() throw()
+{
+ // Attention:
+ // Don't use mutex or guard in this method!!! Is a method of XInterface.
+
+ // Forward to baseclass
+ OWeakObject::release();
+}
+
+//____________________________________________________________________________________________________________
+// operator
+//____________________________________________________________________________________________________________
+
+OMRCListenerMultiplexerHelper::operator Reference< XInterface >() const
+{
+ return ((OWeakObject*)this) ;
+}
+
+//____________________________________________________________________________________________________________
+// operator
+//____________________________________________________________________________________________________________
+
+//OMRCListenerMultiplexerHelper& OMRCListenerMultiplexerHelper::operator= ( const OMRCListenerMultiplexerHelper& aCopyInstance )
+//{
+// return this ;
+//}
+
+//____________________________________________________________________________________________________________
+// container method
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::setPeer( const Reference< XWindow >& xPeer )
+{
+ MutexGuard aGuard( m_aMutex );
+ if( m_xPeer != xPeer )
+ {
+ if( m_xPeer.is() )
+ {
+ // get all types from the listener added to the peer
+ Sequence< Type > aContainedTypes = m_aListenerHolder.getContainedTypes();
+ const Type* pArray = aContainedTypes.getConstArray();
+ sal_Int32 nCount = aContainedTypes.getLength();
+ // loop over all listener types and remove the listeners from the peer
+ for( sal_Int32 i=0; i<nCount; i++ )
+ impl_unadviseFromPeer( m_xPeer, pArray[i] );
+ }
+ m_xPeer = xPeer;
+ if( m_xPeer.is() )
+ {
+ // get all types from the listener added to the peer
+ Sequence< Type > aContainedTypes = m_aListenerHolder.getContainedTypes();
+ const Type* pArray = aContainedTypes.getConstArray();
+ sal_Int32 nCount = aContainedTypes.getLength();
+ // loop over all listener types and add the listeners to the peer
+ for( sal_Int32 i = 0; i < nCount; i++ )
+ impl_adviseToPeer( m_xPeer, pArray[i] );
+ }
+ }
+}
+
+//____________________________________________________________________________________________________________
+// container method
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::disposeAndClear()
+{
+ EventObject aEvent ;
+ aEvent.Source = m_xControl ;
+ m_aListenerHolder.disposeAndClear( aEvent );
+}
+
+//____________________________________________________________________________________________________________
+// container method
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::advise( const Type& aType ,
+ const Reference< XInterface >& xListener )
+{
+ MutexGuard aGuard( m_aMutex );
+ if( m_aListenerHolder.addInterface( aType, xListener ) == 1 )
+ {
+ // the first listener is added
+ if( m_xPeer.is() )
+ {
+ impl_adviseToPeer( m_xPeer, aType );
+ }
+ }
+}
+
+//____________________________________________________________________________________________________________
+// container method
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::unadvise( const Type& aType ,
+ const Reference< XInterface >& xListener )
+{
+ MutexGuard aGuard( m_aMutex );
+ if( m_aListenerHolder.removeInterface( aType, xListener ) == 0 )
+ {
+ // the last listener is removed
+ if ( m_xPeer.is() )
+ {
+ impl_unadviseFromPeer( m_xPeer, aType );
+ }
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XEventListener
+//____________________________________________________________________________________________________________
+
+void SAL_CALL OMRCListenerMultiplexerHelper::disposing( const EventObject& /*aSource*/ ) throw( RuntimeException )
+{
+ MutexGuard aGuard( m_aMutex );
+ // peer is disposed, clear the reference
+ m_xPeer = Reference< XWindow >();
+}
+
+//____________________________________________________________________________________________________________
+// XFcousListener
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::focusGained(const FocusEvent& aEvent ) throw( UNO3_RUNTIMEEXCEPTION )
+{
+/*
+ OInterfaceContainerHelper * pCont = aListenerHolder.getContainer( ::getCppuType((const Reference< XFocusListener >*)0) );
+ if( pCont )
+ {
+ OInterfaceIteratorHelper aIt( *pCont );
+ FocusEvent aEvt = e;
+ // Reamark: The control is the event source not the peer. We must change
+ // the source of the event
+ xControl.queryHardRef( ((XInterface*)NULL)->getSmartUik(), aEvt.Source );
+ //.is the control not destroyed
+ if( aEvt.Source.is() )
+ {
+ if( aIt.hasMoreElements() )
+ {
+ XFocusListener * pListener = (XFocusListener *)aIt.next();
+ try
+ {
+ pListener->focusGained( aEvt );
+ }
+ catch( RuntimeException, e )
+ {
+ // ignore all usr system exceptions from the listener
+ }
+ }
+ }
+ }
+*/
+ MULTIPLEX( XFocusListener, focusGained, FocusEvent, aEvent )
+}
+
+//____________________________________________________________________________________________________________
+// XFcousListener
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::focusLost(const FocusEvent& aEvent ) throw( UNO3_RUNTIMEEXCEPTION )
+{
+ MULTIPLEX( XFocusListener, focusLost, FocusEvent, aEvent )
+}
+
+//____________________________________________________________________________________________________________
+// XWindowListener
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::windowResized(const WindowEvent& aEvent ) throw( UNO3_RUNTIMEEXCEPTION )
+{
+ MULTIPLEX( XWindowListener, windowResized, WindowEvent, aEvent )
+}
+
+//____________________________________________________________________________________________________________
+// XWindowListener
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::windowMoved(const WindowEvent& aEvent ) throw( UNO3_RUNTIMEEXCEPTION )
+{
+ MULTIPLEX( XWindowListener, windowMoved, WindowEvent, aEvent )
+}
+
+//____________________________________________________________________________________________________________
+// XWindowListener
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::windowShown(const EventObject& aEvent ) throw( UNO3_RUNTIMEEXCEPTION )
+{
+ MULTIPLEX( XWindowListener, windowShown, EventObject, aEvent )
+}
+
+//____________________________________________________________________________________________________________
+// XWindowListener
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::windowHidden(const EventObject& aEvent ) throw( UNO3_RUNTIMEEXCEPTION )
+{
+ MULTIPLEX( XWindowListener, windowHidden, EventObject, aEvent )
+}
+
+//____________________________________________________________________________________________________________
+// XKeyListener
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::keyPressed(const KeyEvent& aEvent) throw( UNO3_RUNTIMEEXCEPTION )
+{
+ MULTIPLEX( XKeyListener, keyPressed, KeyEvent, aEvent )
+}
+
+//____________________________________________________________________________________________________________
+// XKeyListener
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::keyReleased(const KeyEvent& aEvent) throw( UNO3_RUNTIMEEXCEPTION )
+{
+ MULTIPLEX( XKeyListener, keyReleased, KeyEvent, aEvent )
+}
+
+//____________________________________________________________________________________________________________
+// XMouseListener
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::mousePressed(const MouseEvent& aEvent) throw( UNO3_RUNTIMEEXCEPTION )
+{
+ MULTIPLEX( XMouseListener, mousePressed, MouseEvent, aEvent )
+}
+
+//____________________________________________________________________________________________________________
+// XMouseListener
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::mouseReleased(const MouseEvent& aEvent) throw( UNO3_RUNTIMEEXCEPTION )
+{
+ MULTIPLEX( XMouseListener, mouseReleased, MouseEvent, aEvent )
+}
+
+//____________________________________________________________________________________________________________
+// XMouseListener
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::mouseEntered(const MouseEvent& aEvent) throw( UNO3_RUNTIMEEXCEPTION )
+{
+ MULTIPLEX( XMouseListener, mouseEntered, MouseEvent, aEvent )
+}
+
+//____________________________________________________________________________________________________________
+// XMouseListener
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::mouseExited(const MouseEvent& aEvent) throw( UNO3_RUNTIMEEXCEPTION )
+{
+ MULTIPLEX( XMouseListener, mouseExited, MouseEvent, aEvent )
+}
+
+//____________________________________________________________________________________________________________
+// XMouseMotionListener
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::mouseDragged(const MouseEvent& aEvent) throw( UNO3_RUNTIMEEXCEPTION )
+{
+ MULTIPLEX( XMouseMotionListener, mouseDragged, MouseEvent, aEvent )
+}
+
+//____________________________________________________________________________________________________________
+// XMouseMotionListener
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::mouseMoved(const MouseEvent& aEvent) throw( UNO3_RUNTIMEEXCEPTION )
+{
+ MULTIPLEX( XMouseMotionListener, mouseMoved, MouseEvent, aEvent )
+}
+
+//____________________________________________________________________________________________________________
+// XPaintListener
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::windowPaint(const PaintEvent& aEvent) throw( UNO3_RUNTIMEEXCEPTION )
+{
+ MULTIPLEX( XPaintListener, windowPaint, PaintEvent, aEvent )
+}
+
+//____________________________________________________________________________________________________________
+// XTopWindowListener
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::windowOpened(const EventObject& aEvent) throw( UNO3_RUNTIMEEXCEPTION )
+{
+ MULTIPLEX( XTopWindowListener, windowOpened, EventObject, aEvent )
+}
+
+//____________________________________________________________________________________________________________
+// XTopWindowListener
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::windowClosing( const EventObject& aEvent ) throw( UNO3_RUNTIMEEXCEPTION )
+{
+ MULTIPLEX( XTopWindowListener, windowClosing, EventObject, aEvent )
+}
+
+//____________________________________________________________________________________________________________
+// XTopWindowListener
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::windowClosed( const EventObject& aEvent ) throw( UNO3_RUNTIMEEXCEPTION )
+{
+ MULTIPLEX( XTopWindowListener, windowClosed, EventObject, aEvent )
+}
+
+//____________________________________________________________________________________________________________
+// XTopWindowListener
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::windowMinimized( const EventObject& aEvent ) throw( UNO3_RUNTIMEEXCEPTION )
+{
+ MULTIPLEX( XTopWindowListener, windowMinimized, EventObject, aEvent )
+}
+
+//____________________________________________________________________________________________________________
+// XTopWindowListener
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::windowNormalized( const EventObject& aEvent ) throw( UNO3_RUNTIMEEXCEPTION )
+{
+ MULTIPLEX( XTopWindowListener, windowNormalized, EventObject, aEvent )
+}
+
+//____________________________________________________________________________________________________________
+// XTopWindowListener
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::windowActivated( const EventObject& aEvent ) throw( UNO3_RUNTIMEEXCEPTION )
+{
+ MULTIPLEX( XTopWindowListener, windowActivated, EventObject, aEvent )
+}
+
+//____________________________________________________________________________________________________________
+// XTopWindowListener
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::windowDeactivated( const EventObject& aEvent ) throw( UNO3_RUNTIMEEXCEPTION )
+{
+ MULTIPLEX( XTopWindowListener, windowDeactivated, EventObject, aEvent )
+}
+
+//____________________________________________________________________________________________________________
+// protected method
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::impl_adviseToPeer( const Reference< XWindow >& xPeer ,
+ const Type& aType )
+{
+ // add a listener to the source (peer)
+ if( aType == ::getCppuType((const Reference< XWindowListener >*)0) )
+ xPeer->addWindowListener( this );
+ else if( aType == ::getCppuType((const Reference< XKeyListener >*)0) )
+ xPeer->addKeyListener( this );
+ else if( aType == ::getCppuType((const Reference< XFocusListener >*)0) )
+ xPeer->addFocusListener( this );
+ else if( aType == ::getCppuType((const Reference< XMouseListener >*)0) )
+ xPeer->addMouseListener( this );
+ else if( aType == ::getCppuType((const Reference< XMouseMotionListener >*)0) )
+ xPeer->addMouseMotionListener( this );
+ else if( aType == ::getCppuType((const Reference< XPaintListener >*)0) )
+ xPeer->addPaintListener( this );
+ else if( aType == ::getCppuType((const Reference< XTopWindowListener >*)0) )
+ {
+ Reference< XTopWindow > xTop( xPeer, UNO_QUERY );
+ if( xTop.is() )
+ xTop->addTopWindowListener( this );
+ }
+ else
+ {
+ VOS_ENSHURE( sal_False, "unknown listener" );
+ }
+}
+
+//____________________________________________________________________________________________________________
+// protected method
+//____________________________________________________________________________________________________________
+
+void OMRCListenerMultiplexerHelper::impl_unadviseFromPeer( const Reference< XWindow >& xPeer ,
+ const Type& aType )
+{
+ // the last listener is removed, remove the listener from the source (peer)
+ if( aType == ::getCppuType((const Reference< XWindowListener >*)0) )
+ xPeer->removeWindowListener( this );
+ else if( aType == ::getCppuType((const Reference< XKeyListener >*)0) )
+ xPeer->removeKeyListener( this );
+ else if( aType == ::getCppuType((const Reference< XFocusListener >*)0) )
+ xPeer->removeFocusListener( this );
+ else if( aType == ::getCppuType((const Reference< XMouseListener >*)0) )
+ xPeer->removeMouseListener( this );
+ else if( aType == ::getCppuType((const Reference< XMouseMotionListener >*)0) )
+ xPeer->removeMouseMotionListener( this );
+ else if( aType == ::getCppuType((const Reference< XPaintListener >*)0) )
+ xPeer->removePaintListener( this );
+ else if( aType == ::getCppuType((const Reference< XTopWindowListener >*)0) )
+ {
+ Reference< XTopWindow > xTop( xPeer, UNO_QUERY );
+ if( xTop.is() )
+ xTop->removeTopWindowListener( this );
+ }
+ else
+ {
+ VOS_ENSHURE( sal_False, "unknown listener" );
+ }
+}
+
+} // namespace unocontrols
diff --git a/UnoControls/source/base/registercontrols.cxx b/UnoControls/source/base/registercontrols.cxx
new file mode 100644
index 000000000000..6a10f42b8fb8
--- /dev/null
+++ b/UnoControls/source/base/registercontrols.cxx
@@ -0,0 +1,222 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+//______________________________________________________________________________________________________________
+// includes of other projects
+//______________________________________________________________________________________________________________
+
+#include <cppuhelper/factory.hxx>
+#include <com/sun/star/lang/XMultiServiceFactory.hpp>
+#include <com/sun/star/lang/XSingleServiceFactory.hpp>
+#include <com/sun/star/registry/XRegistryKey.hpp>
+#include <com/sun/star/container/XSet.hpp>
+
+#include <stdio.h>
+
+//______________________________________________________________________________________________________________
+// includes of my own project
+//______________________________________________________________________________________________________________
+
+//=============================================================================
+// Add new include line to use new services.
+//=============================================================================
+#include "framecontrol.hxx"
+#include "progressbar.hxx"
+#include "progressmonitor.hxx"
+#include "statusindicator.hxx"
+//=============================================================================
+
+//______________________________________________________________________________________________________________
+// defines
+//______________________________________________________________________________________________________________
+
+// If you will debug macros of this file ... you must define follow constant!
+// Ths switch on another macro AS_DBG_OUT(...), which will print text to "stdout".
+
+//#define AS_DBG_SWITCH
+
+//______________________________________________________________________________________________________________
+// namespaces
+//______________________________________________________________________________________________________________
+
+using namespace ::rtl ;
+using namespace ::cppu ;
+using namespace ::unocontrols ;
+using namespace ::com::sun::star::uno ;
+using namespace ::com::sun::star::container ;
+using namespace ::com::sun::star::lang ;
+using namespace ::com::sun::star::registry ;
+
+//______________________________________________________________________________________________________________
+// macros
+//______________________________________________________________________________________________________________
+
+//******************************************************************************************************************************
+// See AS_DBG_SWITCH below !!!
+#ifdef AS_DBG_SWITCH
+ #define AS_DBG_OUT(OUTPUT) printf( OUTPUT );
+#else
+ #define AS_DBG_OUT(OUTPUT)
+#endif
+
+//******************************************************************************************************************************
+#define CREATEINSTANCE(CLASS) \
+ \
+ static Reference< XInterface > SAL_CALL CLASS##_createInstance ( const Reference< XMultiServiceFactory >& rServiceManager ) throw ( Exception ) \
+ { \
+ AS_DBG_OUT ( "\tCREATEINSTANCE():\tOK\n" ) \
+ return Reference< XInterface >( *(OWeakObject*)(new CLASS( rServiceManager )) ); \
+ }
+
+//******************************************************************************************************************************
+#define CREATEFACTORY_ONEINSTANCE(CLASS) \
+ \
+ AS_DBG_OUT ( "\tCREATEFACTORY_ONEINSTANCE():\t[start]\n" ) \
+ /* Create right factory ... */ \
+ xFactory = Reference< XSingleServiceFactory > \
+ ( \
+ cppu::createOneInstanceFactory ( xServiceManager , \
+ CLASS::impl_getStaticImplementationName () , \
+ CLASS##_createInstance , \
+ CLASS::impl_getStaticSupportedServiceNames () ) \
+ ) ; \
+ AS_DBG_OUT ( "\tCREATEFACTORY_ONEINSTANCE():\t[end]\n" )
+
+//******************************************************************************************************************************
+#define CREATEFACTORY_SINGLE(CLASS) \
+ \
+ AS_DBG_OUT ( "\tCREATEFACTORY_SINGLE():\t[start]\n" ) \
+ /* Create right factory ... */ \
+ xFactory = Reference< XSingleServiceFactory > \
+ ( \
+ cppu::createSingleFactory ( xServiceManager , \
+ CLASS::impl_getStaticImplementationName () , \
+ CLASS##_createInstance , \
+ CLASS::impl_getStaticSupportedServiceNames () ) \
+ ) ; \
+ AS_DBG_OUT ( "\tCREATEFACTORY_SINGLE():\t[end]\n" )
+
+//******************************************************************************************************************************
+#define IF_NAME_CREATECOMPONENTFACTORY_ONEINSTANCE(CLASS) \
+ \
+ if ( CLASS::impl_getStaticImplementationName().equals( OUString::createFromAscii( pImplementationName ) ) ) \
+ { \
+ AS_DBG_OUT ( "\tIF_NAME_CREATECOMPONENTFACTORY_ONEINSTANCE():\timplementationname found\n" ) \
+ CREATEFACTORY_ONEINSTANCE ( CLASS ) \
+ }
+
+//******************************************************************************************************************************
+#define IF_NAME_CREATECOMPONENTFACTORY_SINGLE(CLASS) \
+ \
+ if ( CLASS::impl_getStaticImplementationName().equals( OUString::createFromAscii( pImplementationName ) ) ) \
+ { \
+ AS_DBG_OUT ( "\tIF_NAME_CREATECOMPONENTFACTORY_SINGLE():\timplementationname found\n" ) \
+ CREATEFACTORY_SINGLE ( CLASS ) \
+ }
+
+//______________________________________________________________________________________________________________
+// declare functions to create a new instance of service
+//______________________________________________________________________________________________________________
+
+//=============================================================================
+// Add new macro line to use new services.
+//
+// !!! ATTENTION !!!
+// Write no ";" at end of line! (see macro)
+//=============================================================================
+CREATEINSTANCE ( FrameControl )
+CREATEINSTANCE ( ProgressBar )
+CREATEINSTANCE ( ProgressMonitor )
+CREATEINSTANCE ( StatusIndicator )
+//=============================================================================
+
+//______________________________________________________________________________________________________________
+// return environment
+//______________________________________________________________________________________________________________
+
+extern "C" void SAL_CALL component_getImplementationEnvironment( const sal_Char** ppEnvironmentTypeName ,
+ uno_Environment** /*ppEnvironment*/ )
+{
+ *ppEnvironmentTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME ;
+}
+
+//______________________________________________________________________________________________________________
+// create right component factory
+//______________________________________________________________________________________________________________
+
+extern "C" void* SAL_CALL component_getFactory( const sal_Char* pImplementationName ,
+ void* pServiceManager ,
+ void* /*pRegistryKey*/ )
+{
+ AS_DBG_OUT( "component_getFactory():\t[start]\n" )
+
+ // Set default return value for this operation - if it failed.
+ void* pReturn = NULL ;
+
+ if (
+ ( pImplementationName != NULL ) &&
+ ( pServiceManager != NULL )
+ )
+ {
+ AS_DBG_OUT( "component_getFactory():\t\t... enter scope - pointer are valid\n" )
+
+ // Define variables which are used in following macros.
+ Reference< XSingleServiceFactory > xFactory ;
+ Reference< XMultiServiceFactory > xServiceManager( reinterpret_cast< XMultiServiceFactory* >( pServiceManager ) ) ;
+
+ //=============================================================================
+ // Add new macro line to handle new service.
+ //
+ // !!! ATTENTION !!!
+ // Write no ";" at end of line and dont forget "else" ! (see macro)
+ //=============================================================================
+ IF_NAME_CREATECOMPONENTFACTORY_SINGLE( FrameControl )
+ else
+ IF_NAME_CREATECOMPONENTFACTORY_SINGLE( ProgressBar )
+ else
+ IF_NAME_CREATECOMPONENTFACTORY_SINGLE( ProgressMonitor )
+ else
+ IF_NAME_CREATECOMPONENTFACTORY_SINGLE( StatusIndicator )
+ //=============================================================================
+
+ // Factory is valid - service was found.
+ if ( xFactory.is() )
+ {
+ AS_DBG_OUT( "component_getFactory():\t\t\t... xFactory valid - service was found\n" )
+
+ xFactory->acquire();
+ pReturn = xFactory.get();
+ }
+
+ AS_DBG_OUT( "component_getFactory():\t\t... leave scope\n" )
+ }
+
+ AS_DBG_OUT ( "component_getFactory():\t[end]\n" )
+
+ // Return with result of this operation.
+ return pReturn ;
+}
diff --git a/UnoControls/source/controls/OConnectionPointContainerHelper.cxx b/UnoControls/source/controls/OConnectionPointContainerHelper.cxx
new file mode 100644
index 000000000000..56f336124a7d
--- /dev/null
+++ b/UnoControls/source/controls/OConnectionPointContainerHelper.cxx
@@ -0,0 +1,187 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+//______________________________________________________________________________________________________________
+// my own include
+//______________________________________________________________________________________________________________
+
+#include "OConnectionPointContainerHelper.hxx"
+
+//______________________________________________________________________________________________________________
+// includes of other projects
+//______________________________________________________________________________________________________________
+
+//______________________________________________________________________________________________________________
+// include of my own project
+//______________________________________________________________________________________________________________
+#include "OConnectionPointHelper.hxx"
+
+//______________________________________________________________________________________________________________
+// namespaces
+//______________________________________________________________________________________________________________
+
+using namespace ::rtl ;
+using namespace ::osl ;
+using namespace ::cppu ;
+using namespace ::com::sun::star::uno ;
+using namespace ::com::sun::star::lang ;
+
+namespace unocontrols{
+
+//______________________________________________________________________________________________________________
+// construct/destruct
+//______________________________________________________________________________________________________________
+
+OConnectionPointContainerHelper::OConnectionPointContainerHelper( Mutex& aMutex )
+ : m_aSharedMutex ( aMutex )
+ , m_aMultiTypeContainer ( aMutex )
+{
+}
+
+OConnectionPointContainerHelper::~OConnectionPointContainerHelper()
+{
+}
+
+//____________________________________________________________________________________________________________
+// XInterface
+//____________________________________________________________________________________________________________
+
+Any SAL_CALL OConnectionPointContainerHelper::queryInterface( const Type& aType ) throw( RuntimeException )
+{
+ // Attention:
+ // Don't use mutex or guard in this method!!! Is a method of XInterface.
+
+ // Ask for my own supported interfaces ...
+ Any aReturn ( ::cppu::queryInterface( aType ,
+ static_cast< XConnectionPointContainer* > ( this )
+ )
+ );
+
+ // If searched interface not supported by this class ...
+ if ( aReturn.hasValue() == sal_False )
+ {
+ // ... ask baseclasses.
+ aReturn = OWeakObject::queryInterface( aType );
+ }
+
+ return aReturn ;
+}
+
+//____________________________________________________________________________________________________________
+// XInterface
+//____________________________________________________________________________________________________________
+
+void SAL_CALL OConnectionPointContainerHelper::acquire() throw()
+{
+ // Attention:
+ // Don't use mutex or guard in this method!!! Is a method of XInterface.
+
+ // Forward to baseclass
+ OWeakObject::acquire();
+}
+
+//____________________________________________________________________________________________________________
+// XInterface
+//____________________________________________________________________________________________________________
+
+void SAL_CALL OConnectionPointContainerHelper::release() throw()
+{
+ // Attention:
+ // Don't use mutex or guard in this method!!! Is a method of XInterface.
+
+ // Forward to baseclass
+ OWeakObject::release();
+}
+
+//______________________________________________________________________________________________________________
+// XConnectionPointContainer
+//______________________________________________________________________________________________________________
+
+Sequence< Type > SAL_CALL OConnectionPointContainerHelper::getConnectionPointTypes() throw( RuntimeException )
+{
+ // Container is threadsafe himself !
+ return m_aMultiTypeContainer.getContainedTypes();
+}
+
+//______________________________________________________________________________________________________________
+// XConnectionPointContainer
+//______________________________________________________________________________________________________________
+
+Reference< XConnectionPoint > SAL_CALL OConnectionPointContainerHelper::queryConnectionPoint( const Type& aType ) throw( RuntimeException )
+{
+ // Set default return value, if method failed.
+ Reference< XConnectionPoint > xConnectionPoint = Reference< XConnectionPoint >();
+
+ // Get all elements of the container, which have the searched type.
+ OInterfaceContainerHelper* pSpecialContainer = m_aMultiTypeContainer.getContainer( aType );
+ if ( pSpecialContainer && pSpecialContainer->getLength() > 0 )
+ {
+ // Ready for multithreading
+ MutexGuard aGuard( m_aSharedMutex );
+ // If this container contains elements, build a connectionpoint-instance.
+ OConnectionPointHelper* pNewConnectionPoint = new OConnectionPointHelper( m_aSharedMutex, this, aType );
+ xConnectionPoint = Reference< XConnectionPoint >( (OWeakObject*)pNewConnectionPoint, UNO_QUERY );
+ }
+
+ return xConnectionPoint ;
+}
+
+//______________________________________________________________________________________________________________
+// XConnectionPointContainer
+//______________________________________________________________________________________________________________
+
+void SAL_CALL OConnectionPointContainerHelper::advise( const Type& aType ,
+ const Reference< XInterface >& xListener ) throw( RuntimeException )
+{
+ // Container is threadsafe himself !
+ m_aMultiTypeContainer.addInterface( aType, xListener );
+}
+
+//______________________________________________________________________________________________________________
+// XConnectionPointContainer
+//______________________________________________________________________________________________________________
+
+void SAL_CALL OConnectionPointContainerHelper::unadvise( const Type& aType ,
+ const Reference< XInterface >& xListener ) throw( RuntimeException )
+{
+ // Container is threadsafe himself !
+ m_aMultiTypeContainer.removeInterface( aType, xListener );
+}
+
+//______________________________________________________________________________________________________________
+// public but impl method!
+// Is neccessary to get container member at OConnectionPoint-instance.
+//______________________________________________________________________________________________________________
+
+OMultiTypeInterfaceContainerHelper& OConnectionPointContainerHelper::impl_getMultiTypeContainer()
+{
+ // Impl methods are not threadsafe!
+ // "Parent" function must do this.
+ return m_aMultiTypeContainer;
+}
+
+} // namespace unocontrols
diff --git a/UnoControls/source/controls/OConnectionPointHelper.cxx b/UnoControls/source/controls/OConnectionPointHelper.cxx
new file mode 100644
index 000000000000..24b08f6a4937
--- /dev/null
+++ b/UnoControls/source/controls/OConnectionPointHelper.cxx
@@ -0,0 +1,271 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+//______________________________________________________________________________________________________________
+// my own include
+//______________________________________________________________________________________________________________
+
+#include "OConnectionPointHelper.hxx"
+
+//______________________________________________________________________________________________________________
+// includes of other projects
+//______________________________________________________________________________________________________________
+
+//______________________________________________________________________________________________________________
+// include of my own project
+//______________________________________________________________________________________________________________
+#include "OConnectionPointContainerHelper.hxx"
+
+//______________________________________________________________________________________________________________
+// namespaces
+//______________________________________________________________________________________________________________
+
+using namespace ::rtl ;
+using namespace ::osl ;
+using namespace ::cppu ;
+using namespace ::com::sun::star::uno ;
+using namespace ::com::sun::star::lang ;
+
+namespace unocontrols{
+
+//______________________________________________________________________________________________________________
+// construct/destruct
+//______________________________________________________________________________________________________________
+
+OConnectionPointHelper::OConnectionPointHelper( Mutex& aMutex ,
+ OConnectionPointContainerHelper* pContainerImplementation ,
+ UNO3_TYPE aType )
+ : m_aSharedMutex ( aMutex )
+ , m_oContainerWeakReference ( pContainerImplementation )
+ , m_pContainerImplementation ( pContainerImplementation )
+ , m_aInterfaceType ( aType )
+{
+}
+
+OConnectionPointHelper::~OConnectionPointHelper()
+{
+}
+
+//____________________________________________________________________________________________________________
+// XInterface
+//____________________________________________________________________________________________________________
+
+Any SAL_CALL OConnectionPointHelper::queryInterface( const Type& aType ) throw( RuntimeException )
+{
+ // Attention:
+ // Don't use mutex or guard in this method!!! Is a method of XInterface.
+
+ // Ask for my own supported interfaces ...
+ Any aReturn ( ::cppu::queryInterface( aType ,
+ static_cast< XConnectionPoint* > ( this )
+ )
+ );
+
+ // If searched interface not supported by this class ...
+ if ( aReturn.hasValue() == sal_False )
+ {
+ // ... ask baseclasses.
+ aReturn = OWeakObject::queryInterface( aType );
+ }
+
+ return aReturn ;
+}
+
+//____________________________________________________________________________________________________________
+// XInterface
+//____________________________________________________________________________________________________________
+
+void SAL_CALL OConnectionPointHelper::acquire() throw()
+{
+ // Attention:
+ // Don't use mutex or guard in this method!!! Is a method of XInterface.
+
+ // Forward to baseclass
+ OWeakObject::acquire();
+}
+
+//____________________________________________________________________________________________________________
+// XInterface
+//____________________________________________________________________________________________________________
+
+void SAL_CALL OConnectionPointHelper::release() throw()
+{
+ // Attention:
+ // Don't use mutex or guard in this method!!! Is a method of XInterface.
+
+ // Forward to baseclass
+ OWeakObject::release();
+}
+
+//______________________________________________________________________________________________________________
+// XConnectionPoint
+//______________________________________________________________________________________________________________
+
+Type SAL_CALL OConnectionPointHelper::getConnectionType() throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aSharedMutex );
+
+ // Set default return value, if method failed.
+ if ( impl_LockContainer() == sal_False )
+ {
+ // Container not exist! Its an runtime error.
+ throw RuntimeException();
+ }
+
+ // If container reference valid, return right type of supported interfaces of THIS connectionpoint.
+ Type aReturnType = m_aInterfaceType ;
+ // Don't forget this!
+ impl_UnlockContainer();
+
+ return aReturnType;
+}
+
+//______________________________________________________________________________________________________________
+// XConnectionPoint
+//______________________________________________________________________________________________________________
+
+Reference< XConnectionPointContainer > SAL_CALL OConnectionPointHelper::getConnectionPointContainer() throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aSharedMutex );
+ // Convert weakreference to correct uno3-reference and return value. It can be NULL, if container destroyed!
+ return Reference< XConnectionPointContainer >( m_oContainerWeakReference.get(), UNO_QUERY );
+}
+
+//______________________________________________________________________________________________________________
+// XConnectionPoint
+//______________________________________________________________________________________________________________
+
+void SAL_CALL OConnectionPointHelper::advise( const Reference< XInterface >& xListener ) throw( ListenerExistException ,
+ InvalidListenerException ,
+ RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aSharedMutex );
+
+ // If type of listener not the same for this special container ...
+ Any aCheckType = xListener->queryInterface( m_aInterfaceType );
+ if ( aCheckType.hasValue() )
+ {
+ // ... throw an exception.
+ throw InvalidListenerException();
+ }
+
+ // ListenerExistException is obsolete!?
+ // Its the same container for XConnectionPointContainer and XConnectionPoint. But only here we must control, if a listener already exist!?
+ // You can add a listener more then one time at XConnectionPointContainer, but here only one ...
+
+ // Operation is permitted only, if reference to container is valid!
+ if ( impl_LockContainer() == sal_False )
+ {
+ // Container not exist! Its an runtime error.
+ throw RuntimeException();
+ }
+ // Forward it to OConnectionPointHelperContainer!
+ m_pContainerImplementation->advise( m_aInterfaceType, xListener );
+ // Don't forget this!
+ impl_UnlockContainer();
+}
+
+//______________________________________________________________________________________________________________
+// XConnectionPoint
+//______________________________________________________________________________________________________________
+
+void SAL_CALL OConnectionPointHelper::unadvise( const Reference< XInterface >& xListener ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aSharedMutex );
+ // Operation is permitted only, if reference to container is valid!
+ if ( impl_LockContainer() == sal_False )
+ {
+ // Container not exist! Its an runtime error.
+ throw RuntimeException();
+
+ }
+ // Forward it to OConnectionPointHelperContainer!
+ m_pContainerImplementation->unadvise( m_aInterfaceType, xListener );
+ // Don't forget this!
+ impl_UnlockContainer();
+}
+
+//______________________________________________________________________________________________________________
+// XConnectionPoint
+//______________________________________________________________________________________________________________
+
+Sequence< Reference< XInterface > > SAL_CALL OConnectionPointHelper::getConnections() throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aSharedMutex );
+ // Operation is permitted only, if reference to container is valid!
+ if ( impl_LockContainer() == sal_False )
+ {
+ // Container not exist! Its an runtime error.
+ throw RuntimeException();
+ }
+ // Set default return value, if method failed.
+ Sequence< Reference< XInterface > > seqReturnConnections = Sequence< Reference< XInterface > >();
+ // Get reference to private member of OConnectionPointHelperContainer!
+ OMultiTypeInterfaceContainerHelper& aSharedContainer = m_pContainerImplementation->impl_getMultiTypeContainer();
+ // Get pointer to specialized container which hold all interfaces of searched type.
+ OInterfaceContainerHelper* pSpecialContainer = aSharedContainer.getContainer( m_aInterfaceType );
+ // Get elements of searched type, if somelse exist.
+ if ( pSpecialContainer != NULL )
+ {
+ seqReturnConnections = pSpecialContainer->getElements();
+ }
+ // Don't forget this!
+ impl_UnlockContainer();
+
+ return seqReturnConnections;
+}
+
+//______________________________________________________________________________________________________________
+// private method
+//______________________________________________________________________________________________________________
+
+sal_Bool OConnectionPointHelper::impl_LockContainer()
+{
+ // Convert weakreference to hard uno3-reference and return state.
+ // If this reference different from NULL, there exist a hard reference to container. Container-instance can't be destroyed.
+ // Don't forget to "unlock" this reference!
+ m_xLock = m_oContainerWeakReference.get();
+ return m_xLock.is();
+}
+
+//______________________________________________________________________________________________________________
+// private method
+//______________________________________________________________________________________________________________
+
+void OConnectionPointHelper::impl_UnlockContainer()
+{
+ // Free hard uno3-reference to container.
+ // see also "impl_LockContainer()"
+ m_xLock = Reference< XInterface >();
+}
+
+} // namespace unocontrols
diff --git a/UnoControls/source/controls/framecontrol.cxx b/UnoControls/source/controls/framecontrol.cxx
new file mode 100644
index 000000000000..2ae0e27dc56c
--- /dev/null
+++ b/UnoControls/source/controls/framecontrol.cxx
@@ -0,0 +1,604 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+
+//______________________________________________________________________________________________________________
+// my own include
+//______________________________________________________________________________________________________________
+
+#include "framecontrol.hxx"
+
+//______________________________________________________________________________________________________________
+// includes of other projects
+//______________________________________________________________________________________________________________
+#include <com/sun/star/frame/XDispatchProvider.hpp>
+#include <com/sun/star/util/XURLTransformer.hpp>
+#include <com/sun/star/frame/XDispatch.hpp>
+#include <com/sun/star/frame/FrameSearchFlag.hpp>
+#include <com/sun/star/frame/FrameSearchFlag.hpp>
+#include <com/sun/star/beans/PropertyAttribute.hpp>
+#include <cppuhelper/typeprovider.hxx>
+#include <vos/diagnose.hxx>
+
+//______________________________________________________________________________________________________________
+// include of my own project
+//______________________________________________________________________________________________________________
+
+//______________________________________________________________________________________________________________
+// namespaces
+//______________________________________________________________________________________________________________
+
+using namespace ::rtl ;
+using namespace ::osl ;
+using namespace ::cppu ;
+using namespace ::com::sun::star::uno ;
+using namespace ::com::sun::star::lang ;
+using namespace ::com::sun::star::beans ;
+using namespace ::com::sun::star::awt ;
+using namespace ::com::sun::star::frame ;
+using namespace ::com::sun::star::util ;
+
+namespace unocontrols{
+
+//______________________________________________________________________________________________________________
+// construct/destruct
+//______________________________________________________________________________________________________________
+
+FrameControl::FrameControl( const Reference< XMultiServiceFactory >& xFactory )
+ : BaseControl ( xFactory )
+ , OBroadcastHelper ( m_aMutex )
+ , OPropertySetHelper ( *SAL_STATIC_CAST( OBroadcastHelper *, this ) )
+ , m_aInterfaceContainer ( m_aMutex )
+ , m_aConnectionPointContainer ( m_aMutex )
+{
+}
+
+FrameControl::~FrameControl()
+{
+}
+
+//____________________________________________________________________________________________________________
+// XInterface
+//____________________________________________________________________________________________________________
+
+Any SAL_CALL FrameControl::queryInterface( const Type& rType ) throw( RuntimeException )
+{
+ // Attention:
+ // Don't use mutex or guard in this method!!! Is a method of XInterface.
+ Any aReturn ;
+ Reference< XInterface > xDel = BaseControl::impl_getDelegator();
+ if ( xDel.is() )
+ {
+ // If an delegator exist, forward question to his queryInterface.
+ // Delegator will ask his own queryAggregation!
+ aReturn = xDel->queryInterface( rType );
+ }
+ else
+ {
+ // If an delegator unknown, forward question to own queryAggregation.
+ aReturn = queryAggregation( rType );
+ }
+
+ return aReturn ;
+}
+
+//____________________________________________________________________________________________________________
+// XInterface
+//____________________________________________________________________________________________________________
+
+void SAL_CALL FrameControl::acquire() throw()
+{
+ // Attention:
+ // Don't use mutex or guard in this method!!! Is a method of XInterface.
+
+ // Forward to baseclass
+ BaseControl::acquire();
+}
+
+//____________________________________________________________________________________________________________
+// XInterface
+//____________________________________________________________________________________________________________
+
+void SAL_CALL FrameControl::release() throw()
+{
+ // Attention:
+ // Don't use mutex or guard in this method!!! Is a method of XInterface.
+
+ // Forward to baseclass
+ BaseControl::release();
+}
+
+//____________________________________________________________________________________________________________
+// XTypeProvider
+//____________________________________________________________________________________________________________
+
+Sequence< Type > SAL_CALL FrameControl::getTypes() throw( RuntimeException )
+{
+ // Optimize this method !
+ // We initialize a static variable only one time. And we don't must use a mutex at every call!
+ // For the first call; pTypeCollection is NULL - for the second call pTypeCollection is different from NULL!
+ static OTypeCollection* pTypeCollection = NULL ;
+
+ if ( pTypeCollection == NULL )
+ {
+ // Ready for multithreading; get global mutex for first call of this method only! see before
+ MutexGuard aGuard( Mutex::getGlobalMutex() );
+
+ // Control these pointer again ... it can be, that another instance will be faster then these!
+ if ( pTypeCollection == NULL )
+ {
+ // Create a static typecollection ...
+ static OTypeCollection aTypeCollection ( ::getCppuType(( const Reference< XControlModel >*)NULL ) ,
+ ::getCppuType(( const Reference< XControlContainer >*)NULL ) ,
+ ::getCppuType(( const Reference< XConnectionPointContainer >*)NULL ) ,
+ BaseControl::getTypes()
+ );
+ // ... and set his address to static pointer!
+ pTypeCollection = &aTypeCollection ;
+ }
+ }
+
+ return pTypeCollection->getTypes();
+}
+
+//____________________________________________________________________________________________________________
+// XAggregation
+//____________________________________________________________________________________________________________
+
+Any SAL_CALL FrameControl::queryAggregation( const Type& aType ) throw( RuntimeException )
+{
+ // Ask for my own supported interfaces ...
+ // Attention: XTypeProvider and XInterface are supported by OComponentHelper!
+ Any aReturn ( ::cppu::queryInterface( aType ,
+ static_cast< XControlModel* > ( this ) ,
+ static_cast< XConnectionPointContainer* > ( this )
+ )
+ );
+
+ // If searched interface not supported by this class ...
+ if ( aReturn.hasValue() == sal_False )
+ {
+ // ... ask baseclasses.
+ aReturn = OPropertySetHelper::queryInterface( aType );
+ if ( aReturn.hasValue() == sal_False )
+ {
+ aReturn = BaseControl::queryAggregation( aType );
+ }
+ }
+
+ return aReturn ;
+}
+
+//____________________________________________________________________________________________________________
+// XControl
+//____________________________________________________________________________________________________________
+
+void SAL_CALL FrameControl::createPeer( const Reference< XToolkit >& xToolkit ,
+ const Reference< XWindowPeer >& xParentPeer ) throw( RuntimeException )
+{
+ BaseControl::createPeer( xToolkit, xParentPeer );
+ if ( impl_getPeerWindow().is() )
+ {
+ if( m_sComponentURL.getLength() > 0 )
+ {
+ impl_createFrame( getPeer(), m_sComponentURL, m_seqLoaderArguments );
+ }
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XControl
+//____________________________________________________________________________________________________________
+
+sal_Bool SAL_CALL FrameControl::setModel( const Reference< XControlModel >& /*xModel*/ ) throw( RuntimeException )
+{
+ // We have no model.
+ return sal_False ;
+}
+
+//____________________________________________________________________________________________________________
+// XControl
+//____________________________________________________________________________________________________________
+
+Reference< XControlModel > SAL_CALL FrameControl::getModel() throw( RuntimeException )
+{
+ // We have no model.
+ return Reference< XControlModel >();
+}
+
+//____________________________________________________________________________________________________________
+// XControl
+//____________________________________________________________________________________________________________
+
+void SAL_CALL FrameControl::dispose() throw( RuntimeException )
+{
+ impl_deleteFrame();
+ BaseControl::dispose();
+}
+
+//____________________________________________________________________________________________________________
+// XView
+//____________________________________________________________________________________________________________
+
+sal_Bool SAL_CALL FrameControl::setGraphics( const Reference< XGraphics >& /*xDevice*/ ) throw( RuntimeException )
+{
+ // it is not possible to print this control
+ return sal_False ;
+}
+
+//____________________________________________________________________________________________________________
+// XView
+//____________________________________________________________________________________________________________
+
+Reference< XGraphics > SAL_CALL FrameControl::getGraphics() throw( RuntimeException )
+{
+ // when its not posible to set graphics ! then its possible to return null
+ return Reference< XGraphics >();
+}
+
+//____________________________________________________________________________________________________________
+// XConnectionPointContainer
+//____________________________________________________________________________________________________________
+
+Sequence< Type > SAL_CALL FrameControl::getConnectionPointTypes() throw( RuntimeException )
+{
+ // Forwarded to helper class
+ return m_aConnectionPointContainer.getConnectionPointTypes();
+}
+
+//____________________________________________________________________________________________________________
+// XConnectionPointContainer
+//____________________________________________________________________________________________________________
+
+Reference< XConnectionPoint > SAL_CALL FrameControl::queryConnectionPoint( const Type& aType ) throw( RuntimeException )
+{
+ // Forwarded to helper class
+ return m_aConnectionPointContainer.queryConnectionPoint( aType );
+}
+
+//____________________________________________________________________________________________________________
+// XConnectionPointContainer
+//____________________________________________________________________________________________________________
+
+void SAL_CALL FrameControl::advise( const Type& aType ,
+ const Reference< XInterface >& xListener ) throw( RuntimeException )
+{
+ // Forwarded to helper class
+ m_aConnectionPointContainer.advise( aType, xListener );
+}
+
+//____________________________________________________________________________________________________________
+// XConnectionPointContainer
+//____________________________________________________________________________________________________________
+
+void SAL_CALL FrameControl::unadvise( const Type& aType ,
+ const Reference< XInterface >& xListener ) throw( RuntimeException )
+{
+ // Forwarded to helper class
+ m_aConnectionPointContainer.unadvise( aType, xListener );
+}
+
+//____________________________________________________________________________________________________________
+// impl but public method to register service
+//____________________________________________________________________________________________________________
+
+const Sequence< OUString > FrameControl::impl_getStaticSupportedServiceNames()
+{
+ MutexGuard aGuard( Mutex::getGlobalMutex() );
+ Sequence< OUString > seqServiceNames( 1 );
+ seqServiceNames.getArray() [0] = OUString::createFromAscii( SERVICENAME_FRAMECONTROL );
+ return seqServiceNames ;
+}
+
+//____________________________________________________________________________________________________________
+// impl but public method to register service
+//____________________________________________________________________________________________________________
+
+const OUString FrameControl::impl_getStaticImplementationName()
+{
+ return OUString::createFromAscii( IMPLEMENTATIONNAME_FRAMECONTROL );
+}
+
+//____________________________________________________________________________________________________________
+// OPropertySetHelper
+//____________________________________________________________________________________________________________
+
+sal_Bool FrameControl::convertFastPropertyValue( Any& rConvertedValue ,
+ Any& rOldValue ,
+ sal_Int32 nHandle ,
+ const Any& rValue ) throw( IllegalArgumentException )
+{
+ sal_Bool bReturn = sal_False ;
+ switch (nHandle)
+ {
+ case PROPERTYHANDLE_COMPONENTURL : rConvertedValue = rValue ;
+ rOldValue <<= m_sComponentURL ;
+ bReturn = sal_True ;
+ break ;
+
+ case PROPERTYHANDLE_LOADERARGUMENTS : rConvertedValue = rValue ;
+ rOldValue <<= m_seqLoaderArguments ;
+ bReturn = sal_True ;
+ break ;
+ }
+
+ if ( bReturn == sal_False )
+ {
+ throw IllegalArgumentException();
+ }
+
+ return bReturn ;
+}
+
+//____________________________________________________________________________________________________________
+// OPropertySetHelper
+//____________________________________________________________________________________________________________
+
+void FrameControl::setFastPropertyValue_NoBroadcast( sal_Int32 nHandle ,
+ const Any& rValue )
+ throw ( ::com::sun::star::uno::Exception )
+{
+ // this method only set the value
+ MutexGuard aGuard (m_aMutex) ;
+ switch (nHandle)
+ {
+ case PROPERTYHANDLE_COMPONENTURL : rValue >>= m_sComponentURL ;
+ if (getPeer().is())
+ {
+ impl_createFrame ( getPeer(), m_sComponentURL, m_seqLoaderArguments ) ;
+ }
+ break ;
+
+ case PROPERTYHANDLE_LOADERARGUMENTS : rValue >>= m_seqLoaderArguments ;
+ break ;
+
+ default : VOS_ENSHURE ( nHandle == -1, ERRORTEXT_VOSENSHURE ) ;
+ }
+}
+
+//____________________________________________________________________________________________________________
+// OPropertySetHelper
+//____________________________________________________________________________________________________________
+
+void FrameControl::getFastPropertyValue( Any& rRet ,
+ sal_Int32 nHandle ) const
+{
+ MutexGuard aGuard ( Mutex::getGlobalMutex() ) ;
+
+ switch (nHandle)
+ {
+ case PROPERTYHANDLE_COMPONENTURL : rRet <<= m_sComponentURL ;
+ break ;
+
+ case PROPERTYHANDLE_LOADERARGUMENTS : rRet <<= m_seqLoaderArguments ;
+ break ;
+
+ case PROPERTYHANDLE_FRAME : rRet <<= m_xFrame ;
+ break ;
+
+ default : VOS_ENSHURE ( nHandle == -1, ERRORTEXT_VOSENSHURE ) ;
+ }
+}
+
+//____________________________________________________________________________________________________________
+// OPropertySetHelper
+//____________________________________________________________________________________________________________
+
+IPropertyArrayHelper& FrameControl::getInfoHelper()
+{
+ // Create a table that map names to index values.
+ static OPropertyArrayHelper* pInfo ;
+
+ if (!pInfo)
+ {
+ // global method must be guarded
+ MutexGuard aGuard ( Mutex::getGlobalMutex() ) ;
+
+ if (!pInfo)
+ {
+ pInfo = new OPropertyArrayHelper( impl_getStaticPropertyDescriptor(), sal_True );
+ }
+ }
+
+ return *pInfo ;
+}
+/*
+//--------------------------------------------------------------------------------------------------
+// start OConnectionPointContainerHelper
+//--------------------------------------------------------------------------------------------------
+Uik* FrameControl::getConnectionPointUiks ( sal_Int32* pCount ) const
+{
+ static Uik szUiks[] =
+ {
+ ((XEventListener*)NULL)->getSmartUik (),
+ ::getCppuType((const Reference< XPropertyChangeListener >*)0),
+ ::getCppuType((const Reference< XVetoableChangeListener >*)0),
+ ::getCppuType((const Reference< XPropertiesChangeListener >*)0)
+ } ;
+
+ *pCount = 4 ;
+
+ return szUiks ;
+}
+//--------------------------------------------------------------------------------------------------
+// end OConnectionPointContainerHelper
+//--------------------------------------------------------------------------------------------------
+*/
+
+//____________________________________________________________________________________________________________
+// OPropertySetHelper
+//____________________________________________________________________________________________________________
+
+Reference< XPropertySetInfo > SAL_CALL FrameControl::getPropertySetInfo() throw( RuntimeException )
+{
+ // Optimize this method !
+ // We initialize a static variable only one time. And we don't must use a mutex at every call!
+ // For the first call; pInfo is NULL - for the second call pInfo is different from NULL!
+ static Reference< XPropertySetInfo >* pInfo = (Reference< XPropertySetInfo >*)0 ;
+ if ( pInfo == (Reference< XPropertySetInfo >*)0 )
+ {
+ // Ready for multithreading
+ MutexGuard aGuard ( Mutex::getGlobalMutex () ) ;
+ // Control this pointer again, another instance can be faster then these!
+ if ( pInfo == (Reference< XPropertySetInfo >*)0 )
+ {
+ // Create structure of propertysetinfo for baseclass "OPropertySetHelper".
+ // (Use method "getInfoHelper()".)
+ static Reference< XPropertySetInfo > xInfo ( createPropertySetInfo ( getInfoHelper () ) ) ;
+ pInfo = &xInfo ;
+ }
+ }
+ return ( *pInfo ) ;
+}
+
+//____________________________________________________________________________________________________________
+// BaseControl
+//____________________________________________________________________________________________________________
+
+WindowDescriptor* FrameControl::impl_getWindowDescriptor( const Reference< XWindowPeer >& xParentPeer )
+{
+ WindowDescriptor* pDescriptor = new WindowDescriptor ;
+
+ pDescriptor->Type = WindowClass_CONTAINER ;
+ pDescriptor->ParentIndex = -1 ;
+ pDescriptor->Parent = xParentPeer ;
+ pDescriptor->Bounds = getPosSize () ;
+ pDescriptor->WindowAttributes = 0 ;
+
+ return pDescriptor ;
+}
+
+//____________________________________________________________________________________________________________
+// private method
+//____________________________________________________________________________________________________________
+
+void FrameControl::impl_createFrame( const Reference< XWindowPeer >& xPeer ,
+ const OUString& rURL ,
+ const Sequence< PropertyValue >& rArguments )
+{
+ Reference< XFrame > xOldFrame ;
+ Reference< XFrame > xNewFrame ;
+
+ {
+ MutexGuard aGuard ( m_aMutex ) ;
+ xOldFrame = m_xFrame ;
+ }
+
+ xNewFrame = Reference< XFrame > ( impl_getMultiServiceFactory()->createInstance ( OUString::createFromAscii( "com.sun.star.frame.Frame" ) ), UNO_QUERY ) ;
+ Reference< XDispatchProvider > xDSP ( xNewFrame, UNO_QUERY ) ;
+
+ if (xDSP.is())
+ {
+ Reference< XWindow > xWP ( xPeer, UNO_QUERY ) ;
+ xNewFrame->initialize ( xWP ) ;
+
+ // option
+ //xFrame->setName( "WhatYouWant" );
+
+ Reference< XURLTransformer > xTrans ( impl_getMultiServiceFactory()->createInstance ( OUString::createFromAscii( "com.sun.star.util.URLTransformer" ) ), UNO_QUERY ) ;
+ if(xTrans.is())
+ {
+ // load file
+ URL aURL ;
+
+ aURL.Complete = rURL ;
+ xTrans->parseStrict( aURL ) ;
+
+ Reference< XDispatch > xDisp = xDSP->queryDispatch ( aURL, OUString (), FrameSearchFlag::SELF ) ;
+ if (xDisp.is())
+ {
+ xDisp->dispatch ( aURL, rArguments ) ;
+ }
+ }
+ }
+
+ // set the frame
+ {
+ MutexGuard aGuard ( m_aMutex ) ;
+ m_xFrame = xNewFrame ;
+ }
+
+ // notify the listeners
+ sal_Int32 nFrameId = PROPERTYHANDLE_FRAME ;
+ Any aNewFrame ( &xNewFrame, ::getCppuType((const Reference< XFrame >*)0) ) ;
+ Any aOldFrame ( &xOldFrame, ::getCppuType((const Reference< XFrame >*)0) ) ;
+
+ fire ( &nFrameId, &aNewFrame, &aOldFrame, 1, sal_False ) ;
+
+ if (xOldFrame.is())
+ {
+ xOldFrame->dispose () ;
+ }
+}
+
+//____________________________________________________________________________________________________________
+// private method
+//____________________________________________________________________________________________________________
+
+void FrameControl::impl_deleteFrame()
+{
+ Reference< XFrame > xOldFrame;
+ Reference< XFrame > xNullFrame;
+
+ {
+ // do not dispose the frame in this guarded section (deadlock?)
+ MutexGuard aGuard( m_aMutex );
+ xOldFrame = m_xFrame;
+ m_xFrame = Reference< XFrame > ();
+ }
+
+ // notify the listeners
+ sal_Int32 nFrameId = PROPERTYHANDLE_FRAME;
+ Any aNewFrame( &xNullFrame, ::getCppuType((const Reference< XFrame >*)0) );
+ Any aOldFrame( &xOldFrame, ::getCppuType((const Reference< XFrame >*)0) );
+ fire( &nFrameId, &aNewFrame, &aOldFrame, 1, sal_False );
+
+ // dispose the frame
+ if( xOldFrame.is() )
+ xOldFrame->dispose();
+}
+
+//____________________________________________________________________________________________________________
+// private method
+//____________________________________________________________________________________________________________
+
+const Sequence< Property > FrameControl::impl_getStaticPropertyDescriptor()
+{
+ // All Properties of this implementation. The array must be sorted!
+ static const Property pPropertys[PROPERTY_COUNT] =
+ {
+ Property( OUString::createFromAscii( PROPERTYNAME_COMPONENTURL ), PROPERTYHANDLE_COMPONENTURL , ::getCppuType((const OUString*)0) , PropertyAttribute::BOUND | PropertyAttribute::CONSTRAINED ),
+ Property( OUString::createFromAscii( PROPERTYNAME_FRAME ), PROPERTYHANDLE_FRAME , ::getCppuType((const Reference< XFrame >*)0) , PropertyAttribute::BOUND | PropertyAttribute::TRANSIENT ),
+ Property( OUString::createFromAscii( PROPERTYNAME_LOADERARGUMENTS ), PROPERTYHANDLE_LOADERARGUMENTS , ::getCppuType((const Sequence< PropertyValue >*)0), PropertyAttribute::BOUND | PropertyAttribute::CONSTRAINED )
+ };
+
+ static const Sequence< Property > seqPropertys( pPropertys, PROPERTY_COUNT );
+
+ return seqPropertys ;
+}
+
+} // namespace unocontrols
diff --git a/UnoControls/source/controls/makefile.mk b/UnoControls/source/controls/makefile.mk
new file mode 100644
index 000000000000..20314ea8e321
--- /dev/null
+++ b/UnoControls/source/controls/makefile.mk
@@ -0,0 +1,49 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+PRJ=..$/..
+
+PRJNAME=UnoControls
+TARGET=controls
+ENABLE_EXCEPTIONS=TRUE
+.IF "$(L10N_framework)"==""
+
+# --- Settings -----------------------------------------------------
+.INCLUDE : $(PRJ)$/util$/makefile.pmk
+
+# --- Files --------------------------------------------------------
+SLOFILES=\
+ $(SLO)$/progressbar.obj \
+ $(SLO)$/framecontrol.obj \
+ $(SLO)$/progressmonitor.obj \
+ $(SLO)$/OConnectionPointHelper.obj \
+ $(SLO)$/OConnectionPointContainerHelper.obj \
+ $(SLO)$/statusindicator.obj
+
+# --- Targets ------------------------------------------------------
+.ENDIF # L10N_framework
+
+.INCLUDE : target.mk
diff --git a/UnoControls/source/controls/progressbar.cxx b/UnoControls/source/controls/progressbar.cxx
new file mode 100644
index 000000000000..842affed16da
--- /dev/null
+++ b/UnoControls/source/controls/progressbar.cxx
@@ -0,0 +1,558 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+//____________________________________________________________________________________________________________
+// my own includes
+//____________________________________________________________________________________________________________
+
+#include "progressbar.hxx"
+
+//____________________________________________________________________________________________________________
+// includes of other projects
+//____________________________________________________________________________________________________________
+#include <com/sun/star/awt/GradientStyle.hpp>
+#include <com/sun/star/awt/RasterOperation.hpp>
+#include <com/sun/star/awt/Gradient.hpp>
+#include <com/sun/star/awt/XGraphics.hpp>
+#include <tools/debug.hxx>
+#include <cppuhelper/typeprovider.hxx>
+
+#include <math.h>
+#include <limits.h>
+
+//____________________________________________________________________________________________________________
+// includes of my project
+//____________________________________________________________________________________________________________
+
+//____________________________________________________________________________________________________________
+// namespace
+//____________________________________________________________________________________________________________
+
+using namespace ::cppu ;
+using namespace ::osl ;
+using namespace ::rtl ;
+using namespace ::com::sun::star::uno ;
+using namespace ::com::sun::star::lang ;
+using namespace ::com::sun::star::awt ;
+
+namespace unocontrols{
+
+//____________________________________________________________________________________________________________
+// construct/destruct
+//____________________________________________________________________________________________________________
+
+ProgressBar::ProgressBar( const Reference< XMultiServiceFactory >& xFactory )
+ : BaseControl ( xFactory )
+ , m_bHorizontal ( DEFAULT_HORIZONTAL )
+ , m_aBlockSize ( DEFAULT_BLOCKDIMENSION )
+ , m_nForegroundColor ( DEFAULT_FOREGROUNDCOLOR )
+ , m_nBackgroundColor ( DEFAULT_BACKGROUNDCOLOR )
+ , m_nMinRange ( DEFAULT_MINRANGE )
+ , m_nMaxRange ( DEFAULT_MAXRANGE )
+ , m_nBlockValue ( DEFAULT_BLOCKVALUE )
+ , m_nValue ( DEFAULT_VALUE )
+{
+}
+
+ProgressBar::~ProgressBar()
+{
+}
+
+//____________________________________________________________________________________________________________
+// XInterface
+//____________________________________________________________________________________________________________
+
+Any SAL_CALL ProgressBar::queryInterface( const Type& rType ) throw( RuntimeException )
+{
+ // Attention:
+ // Don't use mutex or guard in this method!!! Is a method of XInterface.
+ Any aReturn ;
+ Reference< XInterface > xDel = BaseControl::impl_getDelegator();
+ if ( xDel.is() )
+ {
+ // If an delegator exist, forward question to his queryInterface.
+ // Delegator will ask his own queryAggregation!
+ aReturn = xDel->queryInterface( rType );
+ }
+ else
+ {
+ // If an delegator unknown, forward question to own queryAggregation.
+ aReturn = queryAggregation( rType );
+ }
+
+ return aReturn ;
+}
+
+//____________________________________________________________________________________________________________
+// XInterface
+//____________________________________________________________________________________________________________
+
+void SAL_CALL ProgressBar::acquire() throw()
+{
+ // Attention:
+ // Don't use mutex or guard in this method!!! Is a method of XInterface.
+
+ // Forward to baseclass
+ BaseControl::acquire();
+}
+
+//____________________________________________________________________________________________________________
+// XInterface
+//____________________________________________________________________________________________________________
+
+void SAL_CALL ProgressBar::release() throw()
+{
+ // Attention:
+ // Don't use mutex or guard in this method!!! Is a method of XInterface.
+
+ // Forward to baseclass
+ BaseControl::release();
+}
+
+//____________________________________________________________________________________________________________
+// XTypeProvider
+//____________________________________________________________________________________________________________
+
+Sequence< Type > SAL_CALL ProgressBar::getTypes() throw( RuntimeException )
+{
+ // Optimize this method !
+ // We initialize a static variable only one time. And we don't must use a mutex at every call!
+ // For the first call; pTypeCollection is NULL - for the second call pTypeCollection is different from NULL!
+ static OTypeCollection* pTypeCollection = NULL ;
+
+ if ( pTypeCollection == NULL )
+ {
+ // Ready for multithreading; get global mutex for first call of this method only! see before
+ MutexGuard aGuard( Mutex::getGlobalMutex() );
+
+ // Control these pointer again ... it can be, that another instance will be faster then these!
+ if ( pTypeCollection == NULL )
+ {
+ // Create a static typecollection ...
+ static OTypeCollection aTypeCollection ( ::getCppuType(( const Reference< XControlModel >*)NULL ) ,
+ ::getCppuType(( const Reference< XProgressBar >*)NULL ) ,
+ BaseControl::getTypes()
+ );
+ // ... and set his address to static pointer!
+ pTypeCollection = &aTypeCollection ;
+ }
+ }
+
+ return pTypeCollection->getTypes();
+}
+
+//____________________________________________________________________________________________________________
+// XAggregation
+//____________________________________________________________________________________________________________
+
+Any SAL_CALL ProgressBar::queryAggregation( const Type& aType ) throw( RuntimeException )
+{
+ // Ask for my own supported interfaces ...
+ // Attention: XTypeProvider and XInterface are supported by OComponentHelper!
+ Any aReturn ( ::cppu::queryInterface( aType ,
+ static_cast< XControlModel* > ( this ) ,
+ static_cast< XProgressBar* > ( this )
+ )
+ );
+
+ // If searched interface not supported by this class ...
+ if ( aReturn.hasValue() == sal_False )
+ {
+ // ... ask baseclasses.
+ aReturn = BaseControl::queryAggregation( aType );
+ }
+
+ return aReturn ;
+}
+
+//____________________________________________________________________________________________________________
+// XProgressBar
+//____________________________________________________________________________________________________________
+
+void SAL_CALL ProgressBar::setForegroundColor( sal_Int32 nColor ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard (m_aMutex) ;
+
+ // Safe color for later use.
+ m_nForegroundColor = nColor ;
+
+ // Repaint control
+ impl_paint ( 0, 0, impl_getGraphicsPeer() ) ;
+}
+
+//____________________________________________________________________________________________________________
+// XProgressBar
+//____________________________________________________________________________________________________________
+
+void SAL_CALL ProgressBar::setBackgroundColor ( sal_Int32 nColor ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard (m_aMutex) ;
+
+ // Safe color for later use.
+ m_nBackgroundColor = nColor ;
+
+ // Repaint control
+ impl_paint ( 0, 0, impl_getGraphicsPeer() ) ;
+}
+
+//____________________________________________________________________________________________________________
+// XProgressBar
+//____________________________________________________________________________________________________________
+
+void SAL_CALL ProgressBar::setValue ( sal_Int32 nValue ) throw( RuntimeException )
+{
+ // This method is defined for follow things:
+ // 1) Values >= _nMinRange
+ // 2) Values <= _nMaxRange
+
+ // Ready for multithreading
+ MutexGuard aGuard (m_aMutex) ;
+
+ // save impossible cases
+ // This method is only defined for valid values
+ DBG_ASSERT ( (( nValue >= m_nMinRange ) && ( nValue <= m_nMaxRange )), "ProgressBar::setValue()\nNot valid value.\n" ) ;
+
+ // If new value not valid ... do nothing in release version!
+ if (
+ ( nValue >= m_nMinRange ) &&
+ ( nValue <= m_nMaxRange )
+ )
+ {
+ // New value is ok => save this
+ m_nValue = nValue ;
+
+ // Repaint to display changes
+ impl_paint ( 0, 0, impl_getGraphicsPeer() ) ;
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XProgressBar
+//____________________________________________________________________________________________________________
+
+void SAL_CALL ProgressBar::setRange ( sal_Int32 nMin, sal_Int32 nMax ) throw( RuntimeException )
+{
+ // This method is defined for follow things:
+ // 1) All values of sal_Int32
+ // 2) Min < Max
+ // 3) Min > Max
+
+ // save impossible cases
+ // This method is only defined for valid values
+ // If you ignore this, the release version wil produce an error "division by zero" in "ProgressBar::setValue()"!
+ DBG_ASSERT ( ( nMin != nMax ) , "ProgressBar::setRange()\nValues for MIN and MAX are the same. This is not allowed!\n" ) ;
+
+ // Ready for multithreading
+ MutexGuard aGuard (m_aMutex) ;
+
+ // control the values for min and max
+ if ( nMin < nMax )
+ {
+ // Take correct Min and Max
+ m_nMinRange = nMin ;
+ m_nMaxRange = nMax ;
+ }
+ else
+ {
+ // Change Min and Max automaticly
+ m_nMinRange = nMax ;
+ m_nMaxRange = nMin ;
+ }
+
+ // assure that m_nValue is within the range
+ if (!(m_nMinRange < m_nValue && m_nValue < m_nMaxRange))
+ m_nValue = m_nMinRange;
+
+ impl_recalcRange () ;
+
+ // Do not repaint the control at this place!!!
+ // An old "m_nValue" is set and can not be correct for this new range.
+ // Next call of "ProgressBar::setValue()" do this.
+}
+
+//____________________________________________________________________________________________________________
+// XProgressBar
+//____________________________________________________________________________________________________________
+
+sal_Int32 SAL_CALL ProgressBar::getValue () throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard (m_aMutex) ;
+
+ return ( m_nValue ) ;
+}
+
+//____________________________________________________________________________________________________________
+// XWindow
+//____________________________________________________________________________________________________________
+
+void SAL_CALL ProgressBar::setPosSize ( sal_Int32 nX, sal_Int32 nY, sal_Int32 nWidth, sal_Int32 nHeight, sal_Int16 nFlags ) throw( RuntimeException )
+{
+ // Take old size BEFORE you set the new values at baseclass!
+ // You will control changes. At the other way, the values are the same!
+ Rectangle aBasePosSize = getPosSize () ;
+ BaseControl::setPosSize (nX, nY, nWidth, nHeight, nFlags) ;
+
+ // Do only, if size has changed.
+ if (
+ ( nWidth != aBasePosSize.Width ) ||
+ ( nHeight != aBasePosSize.Height )
+ )
+ {
+ impl_recalcRange ( ) ;
+ impl_paint ( 0, 0, impl_getGraphicsPeer () ) ;
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XControl
+//____________________________________________________________________________________________________________
+
+sal_Bool SAL_CALL ProgressBar::setModel( const Reference< XControlModel >& /*xModel*/ ) throw( RuntimeException )
+{
+ // A model is not possible for this control.
+ return sal_False ;
+}
+
+//____________________________________________________________________________________________________________
+// XControl
+//____________________________________________________________________________________________________________
+
+Reference< XControlModel > SAL_CALL ProgressBar::getModel() throw( RuntimeException )
+{
+ // A model is not possible for this control.
+ return Reference< XControlModel >();
+}
+
+//____________________________________________________________________________________________________________
+// impl but public method to register service
+//____________________________________________________________________________________________________________
+
+const Sequence< OUString > ProgressBar::impl_getStaticSupportedServiceNames()
+{
+ MutexGuard aGuard( Mutex::getGlobalMutex() );
+ Sequence< OUString > seqServiceNames( 1 );
+ seqServiceNames.getArray() [0] = OUString::createFromAscii( SERVICENAME_PROGRESSBAR );
+ return seqServiceNames ;
+}
+
+//____________________________________________________________________________________________________________
+// impl but public method to register service
+//____________________________________________________________________________________________________________
+
+const OUString ProgressBar::impl_getStaticImplementationName()
+{
+ return OUString::createFromAscii( IMPLEMENTATIONNAME_PROGRESSBAR );
+}
+
+//____________________________________________________________________________________________________________
+// protected method
+//____________________________________________________________________________________________________________
+
+void ProgressBar::impl_paint ( sal_Int32 nX, sal_Int32 nY, const Reference< XGraphics > & rGraphics )
+{
+ // save impossible cases
+ DBG_ASSERT ( rGraphics.is(), "ProgressBar::paint()\nCalled with invalid Reference< XGraphics > ." ) ;
+
+ // This paint method ist not buffered !!
+ // Every request paint the completely control. ( but only, if peer exist )
+ if ( rGraphics.is () )
+ {
+ MutexGuard aGuard (m_aMutex) ;
+
+ // Clear background
+ // (same color for line and fill)
+ rGraphics->setFillColor ( m_nBackgroundColor ) ;
+ rGraphics->setLineColor ( m_nBackgroundColor ) ;
+ rGraphics->drawRect ( nX, nY, impl_getWidth(), impl_getHeight() ) ;
+
+ // same color for line and fill for blocks
+ rGraphics->setFillColor ( m_nForegroundColor ) ;
+ rGraphics->setLineColor ( m_nForegroundColor ) ;
+
+ sal_Int32 nBlockStart = 0 ; // = left site of new block
+ sal_Int32 nBlockCount = m_nBlockValue!=0.00 ? (sal_Int32)((m_nValue-m_nMinRange)/m_nBlockValue) : 0 ; // = number of next block
+
+ // Draw horizontal progressbar
+ // decision in "recalcRange()"
+ if (m_bHorizontal)
+ {
+ // Step to left side of window
+ nBlockStart = nX ;
+
+ for ( sal_Int16 i=1; i<=nBlockCount; ++i )
+ {
+ // step free field
+ nBlockStart += FREESPACE ;
+ // paint block
+ rGraphics->drawRect (nBlockStart, nY+FREESPACE, m_aBlockSize.Width, m_aBlockSize.Height) ;
+ // step next free field
+ nBlockStart += m_aBlockSize.Width ;
+ }
+ }
+ // draw vertikal progressbar
+ // decision in "recalcRange()"
+ else
+ {
+ // step to bottom side of window
+ nBlockStart = nY+impl_getHeight() ;
+ nBlockStart -= m_aBlockSize.Height ;
+
+ for ( sal_Int16 i=1; i<=nBlockCount; ++i )
+ {
+ // step free field
+ nBlockStart -= FREESPACE ;
+ // paint block
+ rGraphics->drawRect (nX+FREESPACE, nBlockStart, m_aBlockSize.Width, m_aBlockSize.Height) ;
+ // step next free field
+ nBlockStart -= m_aBlockSize.Height;
+ }
+ }
+
+ // Paint shadow border around the progressbar
+ rGraphics->setLineColor ( LINECOLOR_SHADOW ) ;
+ rGraphics->drawLine ( nX, nY, impl_getWidth(), nY ) ;
+ rGraphics->drawLine ( nX, nY, nX , impl_getHeight() ) ;
+
+ rGraphics->setLineColor ( LINECOLOR_BRIGHT ) ;
+ rGraphics->drawLine ( impl_getWidth()-1, impl_getHeight()-1, impl_getWidth()-1, nY ) ;
+ rGraphics->drawLine ( impl_getWidth()-1, impl_getHeight()-1, nX , impl_getHeight()-1 ) ;
+ }
+}
+
+//____________________________________________________________________________________________________________
+// protected method
+//____________________________________________________________________________________________________________
+
+void ProgressBar::impl_recalcRange ()
+{
+ MutexGuard aGuard (m_aMutex) ;
+
+ sal_Int32 nWindowWidth = impl_getWidth() ;
+ sal_Int32 nWindowHeight = impl_getHeight() ;
+ double fBlockHeight ;
+ double fBlockWidth ;
+ double fMaxBlocks ;
+
+ if( nWindowWidth > nWindowHeight )
+ {
+ m_bHorizontal = sal_True ;
+ fBlockHeight = (nWindowHeight-(2*FREESPACE)) ;
+ fBlockWidth = fBlockHeight ;
+ fMaxBlocks = nWindowWidth/(fBlockWidth+FREESPACE);
+ }
+ else
+ {
+ m_bHorizontal = sal_False ;
+ fBlockWidth = (nWindowWidth-(2*FREESPACE)) ;
+ fBlockHeight = fBlockWidth ;
+ fMaxBlocks = nWindowHeight/(fBlockHeight+FREESPACE);
+ }
+
+ double fRange = m_nMaxRange-m_nMinRange ;
+ double fBlockValue = fRange/fMaxBlocks ;
+
+ m_nBlockValue = fBlockValue ;
+ m_aBlockSize.Height = (sal_Int32)fBlockHeight;
+ m_aBlockSize.Width = (sal_Int32)fBlockWidth ;
+/*
+ // Calculate count of blocks for actual size
+ // (prevent error "division by zero")
+ if ( nHeight == 0 )
+ {
+ nHeight = 1 ;
+ }
+
+ nMaxBlock = nWidth / nHeight ;
+ nMaxBlock *= 2 ;
+
+ // prevent error "division by zero"
+ if ( nMaxBlock == 0 )
+ {
+ nMaxBlock = 1 ;
+ }
+
+ // Calculate new value and new size for ONE block.
+
+ // Do not a calculation like this: "m_nBlockValue=(m_nMaxRange-m_nMinRange)/nMaxBlock" !
+ // If difference between m_nMaxRange and m_nMinRange to large, it give an overflow and a
+ // following error "division by zero" in method "paint() ... nBlockCount=nDifference/m_nBlockValue ..."
+
+ // Overflow ? => example: _I32_MAX - _I32_MIN = -1 and not _UI32_MAX !!!
+
+ m_nBlockValue = ( m_nMaxRange / nMaxBlock ) - ( m_nMinRange / nMaxBlock ) ;
+ m_aBlockSize.Height = ( nHeight - ( FREESPACE * 2 ) ) ;
+ m_aBlockSize.Width = ( ( nWidth / nMaxBlock ) - FREESPACE ) ;
+ }
+ else
+ {
+ // Don't forget to save this state! Used in "ProgressBar::paint()"
+ m_bHorizontal = sal_False ;
+
+ double fBlockWidth = (nHeight-(2*FREESPACE)) ;
+ double fBlockHeight = fBlockWidth ;
+ double fRange = m_nMaxRange-m_nMinRange ;
+ double fBlockValue = fRange/(fBlockWidth+FREESPACE);
+
+ m_nBlockValue = fBlockValue ;
+ m_aBlockSize.Height = (sal_Int32)fBlockHeight;
+ m_aBlockSize.Width = (sal_Int32)fBlockWidth ;
+
+ // Calculate count of blocks for actual size
+ // (prevent error "division by zero")
+ if ( nWidth == 0 )
+ {
+ nWidth = 1 ;
+ }
+
+ nMaxBlock = nHeight / nWidth ;
+ nMaxBlock *= 2 ;
+
+ // prevent error "division by zero"
+ if ( nMaxBlock == 0 )
+ {
+ nMaxBlock = 1 ;
+ }
+
+ // Calculate new value and new size for ONE block.
+
+ // Do not a calculation like this: "m_nBlockValue=(m_nMaxRange-m_nMinRange)/nMaxBlock" !
+ // If difference between m_nMaxRange and m_nMinRange to large, it give an overflow and a
+ // following error "division by zero" in method "paint() ... nBlockCount=nDifference/m_nBlockValue ..."
+
+ // Overflow ? => example: _I32_MAX - _I32_MIN = -1 and not _UI32_MAX !!!
+
+ m_nBlockValue = ( m_nMaxRange / nMaxBlock ) - ( m_nMinRange / nMaxBlock ) ;
+ m_aBlockSize.Height = ( ( nHeight / nMaxBlock ) - FREESPACE ) ;
+ m_aBlockSize.Width = ( nWidth - ( FREESPACE * 2 ) ) ;
+
+ }
+*/
+}
+
+} // namespace unocontrols
diff --git a/UnoControls/source/controls/progressmonitor.cxx b/UnoControls/source/controls/progressmonitor.cxx
new file mode 100644
index 000000000000..39bf4d84f8b9
--- /dev/null
+++ b/UnoControls/source/controls/progressmonitor.cxx
@@ -0,0 +1,1066 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+//____________________________________________________________________________________________________________
+// my own includes
+//____________________________________________________________________________________________________________
+
+#include "progressmonitor.hxx"
+
+//____________________________________________________________________________________________________________
+// includes of other projects
+//____________________________________________________________________________________________________________
+#include <com/sun/star/awt/GradientStyle.hpp>
+#include <com/sun/star/awt/RasterOperation.hpp>
+#include <com/sun/star/awt/Gradient.hpp>
+#include <com/sun/star/awt/XGraphics.hpp>
+#include <com/sun/star/awt/PosSize.hpp>
+#include <cppuhelper/typeprovider.hxx>
+#include <tools/debug.hxx>
+#include <tools/solar.h>
+
+//____________________________________________________________________________________________________________
+// includes of my project
+//____________________________________________________________________________________________________________
+#include "progressbar.hxx"
+
+//____________________________________________________________________________________________________________
+// namespace
+//____________________________________________________________________________________________________________
+
+using namespace ::cppu ;
+using namespace ::osl ;
+using namespace ::rtl ;
+using namespace ::com::sun::star::uno ;
+using namespace ::com::sun::star::lang ;
+using namespace ::com::sun::star::awt ;
+
+namespace unocontrols{
+
+//____________________________________________________________________________________________________________
+// construct/destruct
+//____________________________________________________________________________________________________________
+
+ProgressMonitor::ProgressMonitor( const Reference< XMultiServiceFactory >& xFactory )
+ : BaseContainerControl ( xFactory )
+{
+ // Its not allowed to work with member in this method (refcounter !!!)
+ // But with a HACK (++refcount) its "OK" :-(
+ ++m_refCount ;
+
+ // Create instances for fixedtext, button and progress ...
+ m_xTopic_Top = Reference< XFixedText > ( xFactory->createInstance ( OUString::createFromAscii( FIXEDTEXT_SERVICENAME ) ), UNO_QUERY ) ;
+ m_xText_Top = Reference< XFixedText > ( xFactory->createInstance ( OUString::createFromAscii( FIXEDTEXT_SERVICENAME ) ), UNO_QUERY ) ;
+ m_xTopic_Bottom = Reference< XFixedText > ( xFactory->createInstance ( OUString::createFromAscii( FIXEDTEXT_SERVICENAME ) ), UNO_QUERY ) ;
+ m_xText_Bottom = Reference< XFixedText > ( xFactory->createInstance ( OUString::createFromAscii( FIXEDTEXT_SERVICENAME ) ), UNO_QUERY ) ;
+ m_xButton = Reference< XButton > ( xFactory->createInstance ( OUString::createFromAscii( BUTTON_SERVICENAME ) ), UNO_QUERY ) ;
+ m_xProgressBar = Reference< XProgressBar > ( xFactory->createInstance ( OUString::createFromAscii( SERVICENAME_PROGRESSBAR ) ), UNO_QUERY ) ;
+
+ // ... cast controls to Reference< XControl > (for "setModel"!) ...
+ Reference< XControl > xRef_Topic_Top ( m_xTopic_Top , UNO_QUERY ) ;
+ Reference< XControl > xRef_Text_Top ( m_xText_Top , UNO_QUERY ) ;
+ Reference< XControl > xRef_Topic_Bottom ( m_xTopic_Bottom , UNO_QUERY ) ;
+ Reference< XControl > xRef_Text_Bottom ( m_xText_Bottom , UNO_QUERY ) ;
+ Reference< XControl > xRef_Button ( m_xButton , UNO_QUERY ) ;
+ Reference< XControl > xRef_ProgressBar ( m_xProgressBar , UNO_QUERY ) ;
+
+ // ... set models ...
+ xRef_Topic_Top->setModel ( Reference< XControlModel > ( xFactory->createInstance ( OUString::createFromAscii( FIXEDTEXT_MODELNAME ) ), UNO_QUERY ) ) ;
+ xRef_Text_Top->setModel ( Reference< XControlModel > ( xFactory->createInstance ( OUString::createFromAscii( FIXEDTEXT_MODELNAME ) ), UNO_QUERY ) ) ;
+ xRef_Topic_Bottom->setModel ( Reference< XControlModel > ( xFactory->createInstance ( OUString::createFromAscii( FIXEDTEXT_MODELNAME ) ), UNO_QUERY ) ) ;
+ xRef_Text_Bottom->setModel ( Reference< XControlModel > ( xFactory->createInstance ( OUString::createFromAscii( FIXEDTEXT_MODELNAME ) ), UNO_QUERY ) ) ;
+ xRef_Button->setModel ( Reference< XControlModel > ( xFactory->createInstance ( OUString::createFromAscii( BUTTON_MODELNAME ) ), UNO_QUERY ) ) ;
+ // ProgressBar has no model !!!
+
+ // ... and add controls to basecontainercontrol!
+ addControl ( OUString::createFromAscii( CONTROLNAME_TEXT ) , xRef_Topic_Top ) ;
+ addControl ( OUString::createFromAscii( CONTROLNAME_TEXT ) , xRef_Text_Top ) ;
+ addControl ( OUString::createFromAscii( CONTROLNAME_TEXT ) , xRef_Topic_Bottom ) ;
+ addControl ( OUString::createFromAscii( CONTROLNAME_TEXT ) , xRef_Text_Bottom ) ;
+ addControl ( OUString::createFromAscii( CONTROLNAME_BUTTON ) , xRef_Button ) ;
+ addControl ( OUString::createFromAscii( CONTROLNAME_PROGRESSBAR ) , xRef_ProgressBar ) ;
+
+ // FixedText make it automaticly visible by himself ... but not the progressbar !!!
+ // it must be set explicitly
+ Reference< XWindow > xWindowRef_ProgressBar( m_xProgressBar, UNO_QUERY );
+ xWindowRef_ProgressBar->setVisible( sal_True );
+
+ // Reset to defaults !!!
+ // (progressbar take automaticly its own defaults)
+ m_xButton->setLabel ( OUString::createFromAscii( DEFAULT_BUTTONLABEL ) ) ;
+ m_xTopic_Top->setText ( OUString::createFromAscii( DEFAULT_TOPIC ) ) ;
+ m_xText_Top->setText ( OUString::createFromAscii( DEFAULT_TEXT ) ) ;
+ m_xTopic_Bottom->setText ( OUString::createFromAscii( DEFAULT_TOPIC ) ) ;
+ m_xText_Bottom->setText ( OUString::createFromAscii( DEFAULT_TEXT ) ) ;
+
+ --m_refCount ;
+
+ // Initialize info lists for fixedtext's
+ m_pTextlist_Top = new IMPL_Textlist ;
+ m_pTextlist_Bottom = new IMPL_Textlist ;
+}
+
+ProgressMonitor::~ProgressMonitor()
+{
+ impl_cleanMemory () ;
+}
+
+//____________________________________________________________________________________________________________
+// XInterface
+//____________________________________________________________________________________________________________
+
+Any SAL_CALL ProgressMonitor::queryInterface( const Type& rType ) throw( RuntimeException )
+{
+ // Attention:
+ // Don't use mutex or guard in this method!!! Is a method of XInterface.
+ Any aReturn ;
+ Reference< XInterface > xDel = BaseContainerControl::impl_getDelegator();
+ if ( xDel.is() )
+ {
+ // If an delegator exist, forward question to his queryInterface.
+ // Delegator will ask his own queryAggregation!
+ aReturn = xDel->queryInterface( rType );
+ }
+ else
+ {
+ // If an delegator unknown, forward question to own queryAggregation.
+ aReturn = queryAggregation( rType );
+ }
+
+ return aReturn ;
+}
+
+//____________________________________________________________________________________________________________
+// XInterface
+//____________________________________________________________________________________________________________
+
+void SAL_CALL ProgressMonitor::acquire() throw()
+{
+ // Attention:
+ // Don't use mutex or guard in this method!!! Is a method of XInterface.
+
+ // Forward to baseclass
+ BaseControl::acquire();
+}
+
+//____________________________________________________________________________________________________________
+// XInterface
+//____________________________________________________________________________________________________________
+
+void SAL_CALL ProgressMonitor::release() throw()
+{
+ // Attention:
+ // Don't use mutex or guard in this method!!! Is a method of XInterface.
+
+ // Forward to baseclass
+ BaseControl::release();
+}
+
+//____________________________________________________________________________________________________________
+// XTypeProvider
+//____________________________________________________________________________________________________________
+
+Sequence< Type > SAL_CALL ProgressMonitor::getTypes() throw( RuntimeException )
+{
+ // Optimize this method !
+ // We initialize a static variable only one time. And we don't must use a mutex at every call!
+ // For the first call; pTypeCollection is NULL - for the second call pTypeCollection is different from NULL!
+ static OTypeCollection* pTypeCollection = NULL ;
+
+ if ( pTypeCollection == NULL )
+ {
+ // Ready for multithreading; get global mutex for first call of this method only! see before
+ MutexGuard aGuard( Mutex::getGlobalMutex() );
+
+ // Control these pointer again ... it can be, that another instance will be faster then these!
+ if ( pTypeCollection == NULL )
+ {
+ // Create a static typecollection ...
+ static OTypeCollection aTypeCollection ( ::getCppuType(( const Reference< XLayoutConstrains >*)NULL ) ,
+ ::getCppuType(( const Reference< XButton >*)NULL ) ,
+ ::getCppuType(( const Reference< XProgressMonitor >*)NULL ) ,
+ BaseContainerControl::getTypes()
+ );
+ // ... and set his address to static pointer!
+ pTypeCollection = &aTypeCollection ;
+ }
+ }
+
+ return pTypeCollection->getTypes();
+}
+
+//____________________________________________________________________________________________________________
+// XAggregation
+//____________________________________________________________________________________________________________
+
+Any SAL_CALL ProgressMonitor::queryAggregation( const Type& aType ) throw( RuntimeException )
+{
+ // Ask for my own supported interfaces ...
+ // Attention: XTypeProvider and XInterface are supported by OComponentHelper!
+ Any aReturn ( ::cppu::queryInterface( aType ,
+ static_cast< XLayoutConstrains* > ( this ) ,
+ static_cast< XButton* > ( this ) ,
+ static_cast< XProgressMonitor* > ( this )
+ )
+ );
+
+ // If searched interface not supported by this class ...
+ if ( aReturn.hasValue() == sal_False )
+ {
+ // ... ask baseclasses.
+ aReturn = BaseControl::queryAggregation( aType );
+ }
+
+ return aReturn ;
+}
+
+//____________________________________________________________________________________________________________
+// XProgressMonitor
+//____________________________________________________________________________________________________________
+
+void SAL_CALL ProgressMonitor::addText( const OUString& rTopic, const OUString& rText, sal_Bool bbeforeProgress ) throw( RuntimeException )
+{
+ // Safe impossible cases
+ // Check valid call of this method.
+ DBG_ASSERT ( impl_debug_checkParameter ( rTopic, rText, bbeforeProgress ) , "ProgressMonitor::addText()\nCall without valid parameters!\n") ;
+ DBG_ASSERT ( !(impl_searchTopic ( rTopic, bbeforeProgress ) != NULL ) , "ProgresMonitor::addText()\nThe text already exist.\n" ) ;
+
+ // Do nothing (in Release), if topic already exist.
+ if ( impl_searchTopic ( rTopic, bbeforeProgress ) != NULL )
+ {
+ return ;
+ }
+
+ // Else ... take memory for new item ...
+ IMPL_TextlistItem* pTextItem = new IMPL_TextlistItem ;
+
+ if ( pTextItem != NULL )
+ {
+ // Set values ...
+ pTextItem->sTopic = rTopic ;
+ pTextItem->sText = rText ;
+
+ // Ready for multithreading
+ MutexGuard aGuard ( m_aMutex ) ;
+
+ // ... and insert it in right list.
+ if ( bbeforeProgress == sal_True )
+ {
+ m_pTextlist_Top->Insert ( pTextItem, LIST_APPEND ) ;
+ }
+ else
+ {
+ m_pTextlist_Bottom->Insert ( pTextItem, LIST_APPEND ) ;
+ }
+ }
+
+ // ... update window
+ impl_rebuildFixedText () ;
+ impl_recalcLayout () ;
+}
+
+//____________________________________________________________________________________________________________
+// XProgressMonitor
+//____________________________________________________________________________________________________________
+
+void SAL_CALL ProgressMonitor::removeText ( const OUString& rTopic, sal_Bool bbeforeProgress ) throw( RuntimeException )
+{
+ // Safe impossible cases
+ // Check valid call of this method.
+ DBG_ASSERT ( impl_debug_checkParameter ( rTopic, bbeforeProgress ), "ProgressMonitor::removeText()\nCall without valid parameters!\n" ) ;
+
+ // Search the topic ...
+ IMPL_TextlistItem* pSearchItem = impl_searchTopic ( rTopic, bbeforeProgress ) ;
+
+ if ( pSearchItem != NULL )
+ {
+ // Ready for multithreading
+ MutexGuard aGuard ( m_aMutex ) ;
+
+ // ... delete item from right list ...
+ if ( bbeforeProgress == sal_True )
+ {
+ m_pTextlist_Top->Remove ( pSearchItem ) ;
+ }
+ else
+ {
+ m_pTextlist_Bottom->Remove ( pSearchItem ) ;
+ }
+
+ delete pSearchItem ;
+
+ // ... and update window.
+ impl_rebuildFixedText () ;
+ impl_recalcLayout () ;
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XProgressMonitor
+//____________________________________________________________________________________________________________
+
+void SAL_CALL ProgressMonitor::updateText ( const OUString& rTopic, const OUString& rText, sal_Bool bbeforeProgress ) throw( RuntimeException )
+{
+ // Safe impossible cases
+ // Check valid call of this method.
+ DBG_ASSERT ( impl_debug_checkParameter ( rTopic, rText, bbeforeProgress ), "ProgressMonitor::updateText()\nCall without valid parameters!\n" ) ;
+
+ // Search topic ...
+ IMPL_TextlistItem* pSearchItem = impl_searchTopic ( rTopic, bbeforeProgress ) ;
+
+ if ( pSearchItem != NULL )
+ {
+ // Ready for multithreading
+ MutexGuard aGuard ( m_aMutex ) ;
+
+ // ... update text ...
+ pSearchItem->sText = rText ;
+
+ // ... and update window.
+ impl_rebuildFixedText () ;
+ impl_recalcLayout () ;
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XProgressBar
+//____________________________________________________________________________________________________________
+
+void SAL_CALL ProgressMonitor::setForegroundColor ( sal_Int32 nColor ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard ( m_aMutex ) ;
+
+ if ( m_xProgressBar.is () )
+ {
+ m_xProgressBar->setForegroundColor ( nColor ) ;
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XProgressBar
+//____________________________________________________________________________________________________________
+
+void SAL_CALL ProgressMonitor::setBackgroundColor ( sal_Int32 nColor ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard ( m_aMutex ) ;
+
+ if ( m_xProgressBar.is () )
+ {
+ m_xProgressBar->setBackgroundColor ( nColor ) ;
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XProgressBar
+//____________________________________________________________________________________________________________
+
+void SAL_CALL ProgressMonitor::setValue ( sal_Int32 nValue ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard ( m_aMutex ) ;
+
+ if ( m_xProgressBar.is () )
+ {
+ m_xProgressBar->setValue ( nValue ) ;
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XProgressBar
+//____________________________________________________________________________________________________________
+
+void SAL_CALL ProgressMonitor::setRange ( sal_Int32 nMin, sal_Int32 nMax ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard ( m_aMutex ) ;
+
+ if ( m_xProgressBar.is () )
+ {
+ m_xProgressBar->setRange ( nMin, nMax ) ;
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XProgressBar
+//____________________________________________________________________________________________________________
+
+sal_Int32 SAL_CALL ProgressMonitor::getValue () throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard ( m_aMutex ) ;
+
+ if (m_xProgressBar.is())
+ {
+ return m_xProgressBar->getValue () ;
+ }
+
+ return 0 ;
+}
+
+//____________________________________________________________________________________________________________
+// XButton
+//____________________________________________________________________________________________________________
+
+void SAL_CALL ProgressMonitor::addActionListener ( const Reference< XActionListener > & rListener ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard ( m_aMutex ) ;
+
+ if ( m_xButton.is () )
+ {
+ m_xButton->addActionListener ( rListener ) ;
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XButton
+//____________________________________________________________________________________________________________
+
+void SAL_CALL ProgressMonitor::removeActionListener ( const Reference< XActionListener > & rListener ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard ( m_aMutex ) ;
+
+ if ( m_xButton.is () )
+ {
+ m_xButton->removeActionListener ( rListener ) ;
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XButton
+//____________________________________________________________________________________________________________
+
+void SAL_CALL ProgressMonitor::setLabel ( const OUString& rLabel ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard ( m_aMutex ) ;
+
+ if ( m_xButton.is () )
+ {
+ m_xButton->setLabel ( rLabel ) ;
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XButton
+//____________________________________________________________________________________________________________
+
+void SAL_CALL ProgressMonitor::setActionCommand ( const OUString& rCommand ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard ( m_aMutex ) ;
+
+ if ( m_xButton.is () )
+ {
+ m_xButton->setActionCommand ( rCommand ) ;
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XLayoutConstrains
+//____________________________________________________________________________________________________________
+
+Size SAL_CALL ProgressMonitor::getMinimumSize () throw( RuntimeException )
+{
+ return Size (DEFAULT_WIDTH, DEFAULT_HEIGHT) ;
+}
+
+//____________________________________________________________________________________________________________
+// XLayoutConstrains
+//____________________________________________________________________________________________________________
+
+Size SAL_CALL ProgressMonitor::getPreferredSize () throw( RuntimeException )
+{
+ // Ready for multithreading
+ ClearableMutexGuard aGuard ( m_aMutex ) ;
+
+ // get information about required place of child controls
+ Reference< XLayoutConstrains > xTopicLayout_Top ( m_xTopic_Top , UNO_QUERY ) ;
+ Reference< XLayoutConstrains > xTopicLayout_Bottom ( m_xTopic_Bottom , UNO_QUERY ) ;
+ Reference< XLayoutConstrains > xButtonLayout ( m_xButton , UNO_QUERY ) ;
+ Reference< XWindow > xProgressBarWindow ( m_xProgressBar , UNO_QUERY ) ;
+
+ Size aTopicSize_Top = xTopicLayout_Top->getPreferredSize ();
+ Size aTopicSize_Bottom = xTopicLayout_Bottom->getPreferredSize ();
+ Size aButtonSize = xButtonLayout->getPreferredSize ();
+ Rectangle aTempRectangle = xProgressBarWindow->getPosSize ();
+ Size aProgressBarSize = Size( aTempRectangle.Width, aTempRectangle.Height );
+
+ aGuard.clear () ;
+
+ // calc preferred size of progressmonitor
+ sal_Int32 nWidth = 0 ;
+ sal_Int32 nHeight = 0 ;
+
+ nWidth = 3 * FREEBORDER ;
+ nWidth += aProgressBarSize.Width ;
+
+ nHeight = 6 * FREEBORDER ;
+ nHeight += aTopicSize_Top.Height ;
+ nHeight += aProgressBarSize.Height ;
+ nHeight += aTopicSize_Bottom.Height;
+ nHeight += 2 ; // 1 for black line, 1 for white line = 3D-Line!
+ nHeight += aButtonSize.Height ;
+
+ // norm to minimum
+ if ( nWidth<DEFAULT_WIDTH )
+ {
+ nWidth = DEFAULT_WIDTH ;
+ }
+ if ( nHeight<DEFAULT_HEIGHT )
+ {
+ nHeight = DEFAULT_HEIGHT ;
+ }
+
+ // return to caller
+ return Size ( nWidth, nHeight ) ;
+}
+
+//____________________________________________________________________________________________________________
+// XLayoutConstrains
+//____________________________________________________________________________________________________________
+
+Size SAL_CALL ProgressMonitor::calcAdjustedSize ( const Size& /*rNewSize*/ ) throw( RuntimeException )
+{
+ return getPreferredSize () ;
+}
+
+//____________________________________________________________________________________________________________
+// XControl
+//____________________________________________________________________________________________________________
+
+void SAL_CALL ProgressMonitor::createPeer ( const Reference< XToolkit > & rToolkit, const Reference< XWindowPeer > & rParent ) throw( RuntimeException )
+{
+ if (!getPeer().is())
+ {
+ BaseContainerControl::createPeer ( rToolkit, rParent ) ;
+
+ // If user forget to call "setPosSize()", we have still a correct size.
+ // And a "MinimumSize" IS A "MinimumSize"!
+ // We change not the position of control at this point.
+ Size aDefaultSize = getMinimumSize () ;
+ setPosSize ( 0, 0, aDefaultSize.Width, aDefaultSize.Height, PosSize::SIZE ) ;
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XControl
+//____________________________________________________________________________________________________________
+
+sal_Bool SAL_CALL ProgressMonitor::setModel ( const Reference< XControlModel > & /*rModel*/ ) throw( RuntimeException )
+{
+ // We have no model.
+ return sal_False ;
+}
+
+//____________________________________________________________________________________________________________
+// XControl
+//____________________________________________________________________________________________________________
+
+Reference< XControlModel > SAL_CALL ProgressMonitor::getModel () throw( RuntimeException )
+{
+ // We have no model.
+ // return (XControlModel*)this ;
+ return Reference< XControlModel > () ;
+}
+
+//____________________________________________________________________________________________________________
+// XComponent
+//____________________________________________________________________________________________________________
+
+void SAL_CALL ProgressMonitor::dispose () throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard ( m_aMutex ) ;
+
+ // "removeControl()" control the state of a reference
+ Reference< XControl > xRef_Topic_Top ( m_xTopic_Top , UNO_QUERY ) ;
+ Reference< XControl > xRef_Text_Top ( m_xText_Top , UNO_QUERY ) ;
+ Reference< XControl > xRef_Topic_Bottom ( m_xTopic_Bottom , UNO_QUERY ) ;
+ Reference< XControl > xRef_Text_Bottom ( m_xText_Bottom , UNO_QUERY ) ;
+ Reference< XControl > xRef_Button ( m_xButton , UNO_QUERY ) ;
+ Reference< XControl > xRef_ProgressBar ( m_xProgressBar , UNO_QUERY ) ;
+
+ removeControl ( xRef_Topic_Top ) ;
+ removeControl ( xRef_Text_Top ) ;
+ removeControl ( xRef_Topic_Bottom ) ;
+ removeControl ( xRef_Text_Bottom ) ;
+ removeControl ( xRef_Button ) ;
+ removeControl ( xRef_ProgressBar ) ;
+
+ // do'nt use "...->clear ()" or "... = XFixedText ()"
+ // when other hold a reference at this object !!!
+ xRef_Topic_Top->dispose () ;
+ xRef_Text_Top->dispose () ;
+ xRef_Topic_Bottom->dispose () ;
+ xRef_Text_Bottom->dispose () ;
+ xRef_Button->dispose () ;
+ xRef_ProgressBar->dispose () ;
+
+ BaseContainerControl::dispose () ;
+}
+
+//____________________________________________________________________________________________________________
+// XWindow
+//____________________________________________________________________________________________________________
+
+void SAL_CALL ProgressMonitor::setPosSize ( sal_Int32 nX, sal_Int32 nY, sal_Int32 nWidth, sal_Int32 nHeight, sal_Int16 nFlags ) throw( RuntimeException )
+{
+ Rectangle aBasePosSize = getPosSize () ;
+ BaseContainerControl::setPosSize (nX, nY, nWidth, nHeight, nFlags) ;
+
+ // if position or size changed
+ if (
+ ( nWidth != aBasePosSize.Width ) ||
+ ( nHeight != aBasePosSize.Height)
+ )
+ {
+ // calc new layout for controls
+ impl_recalcLayout () ;
+ // clear background (!)
+ // [Childs was repainted in "recalcLayout" by setPosSize() automaticly!]
+ getPeer()->invalidate(2);
+ // and repaint the control
+ impl_paint ( 0, 0, impl_getGraphicsPeer() ) ;
+ }
+}
+
+//____________________________________________________________________________________________________________
+// impl but public method to register service
+//____________________________________________________________________________________________________________
+
+const Sequence< OUString > ProgressMonitor::impl_getStaticSupportedServiceNames()
+{
+ MutexGuard aGuard( Mutex::getGlobalMutex() );
+ Sequence< OUString > seqServiceNames( 1 );
+ seqServiceNames.getArray() [0] = OUString::createFromAscii( SERVICENAME_PROGRESSMONITOR );
+ return seqServiceNames ;
+}
+
+//____________________________________________________________________________________________________________
+// impl but public method to register service
+//____________________________________________________________________________________________________________
+
+const OUString ProgressMonitor::impl_getStaticImplementationName()
+{
+ return OUString::createFromAscii( IMPLEMENTATIONNAME_PROGRESSMONITOR );
+}
+
+//____________________________________________________________________________________________________________
+// protected method
+//____________________________________________________________________________________________________________
+
+void ProgressMonitor::impl_paint ( sal_Int32 nX, sal_Int32 nY, const Reference< XGraphics > & rGraphics )
+{
+ if (rGraphics.is())
+ {
+ // Ready for multithreading
+ MutexGuard aGuard ( m_aMutex ) ;
+
+ // paint shadowed border around the progressmonitor
+ rGraphics->setLineColor ( LINECOLOR_SHADOW ) ;
+ rGraphics->drawLine ( impl_getWidth()-1, impl_getHeight()-1, impl_getWidth()-1, nY ) ;
+ rGraphics->drawLine ( impl_getWidth()-1, impl_getHeight()-1, nX , impl_getHeight()-1 ) ;
+
+ rGraphics->setLineColor ( LINECOLOR_BRIGHT ) ;
+ rGraphics->drawLine ( nX, nY, impl_getWidth(), nY ) ;
+ rGraphics->drawLine ( nX, nY, nX , impl_getHeight() ) ;
+
+ // Paint 3D-line
+ rGraphics->setLineColor ( LINECOLOR_SHADOW ) ;
+ rGraphics->drawLine ( m_a3DLine.X, m_a3DLine.Y, m_a3DLine.X+m_a3DLine.Width, m_a3DLine.Y ) ;
+
+ rGraphics->setLineColor ( LINECOLOR_BRIGHT ) ;
+ rGraphics->drawLine ( m_a3DLine.X, m_a3DLine.Y+1, m_a3DLine.X+m_a3DLine.Width, m_a3DLine.Y+1 ) ;
+ }
+}
+
+//____________________________________________________________________________________________________________
+// private method
+//____________________________________________________________________________________________________________
+
+void ProgressMonitor::impl_recalcLayout ()
+{
+ sal_Int32 nX_Button ;
+ sal_Int32 nY_Button ;
+ sal_Int32 nWidth_Button ;
+ sal_Int32 nHeight_Button ;
+
+ sal_Int32 nX_ProgressBar ;
+ sal_Int32 nY_ProgressBar ;
+ sal_Int32 nWidth_ProgressBar ;
+ sal_Int32 nHeight_ProgressBar ;
+
+ sal_Int32 nX_3DLine ;
+ sal_Int32 nY_3DLine ;
+ sal_Int32 nWidth_3DLine ;
+ sal_Int32 nHeight_3DLine ;
+
+ sal_Int32 nX_Text_Top ;
+ sal_Int32 nY_Text_Top ;
+ sal_Int32 nWidth_Text_Top ;
+ sal_Int32 nHeight_Text_Top ;
+
+ sal_Int32 nX_Topic_Top ;
+ sal_Int32 nY_Topic_Top ;
+ sal_Int32 nWidth_Topic_Top ;
+ sal_Int32 nHeight_Topic_Top ;
+
+ sal_Int32 nX_Text_Bottom ;
+ sal_Int32 nY_Text_Bottom ;
+ sal_Int32 nWidth_Text_Bottom ;
+ sal_Int32 nHeight_Text_Bottom ;
+
+ sal_Int32 nX_Topic_Bottom ;
+ sal_Int32 nY_Topic_Bottom ;
+ sal_Int32 nWidth_Topic_Bottom ;
+ sal_Int32 nHeight_Topic_Bottom ;
+
+ // Ready for multithreading
+ MutexGuard aGuard ( m_aMutex ) ;
+
+ // get information about required place of child controls
+ Reference< XLayoutConstrains > xTopicLayout_Top ( m_xTopic_Top , UNO_QUERY ) ;
+ Reference< XLayoutConstrains > xTextLayout_Top ( m_xText_Top , UNO_QUERY ) ;
+ Reference< XLayoutConstrains > xTopicLayout_Bottom ( m_xTopic_Bottom , UNO_QUERY ) ;
+ Reference< XLayoutConstrains > xTextLayout_Bottom ( m_xText_Bottom , UNO_QUERY ) ;
+ Reference< XLayoutConstrains > xButtonLayout ( m_xButton , UNO_QUERY ) ;
+
+ Size aTopicSize_Top = xTopicLayout_Top->getPreferredSize () ;
+ Size aTextSize_Top = xTextLayout_Top->getPreferredSize () ;
+ Size aTopicSize_Bottom = xTopicLayout_Bottom->getPreferredSize () ;
+ Size aTextSize_Bottom = xTextLayout_Bottom->getPreferredSize () ;
+ Size aButtonSize = xButtonLayout->getPreferredSize () ;
+
+ // calc position and size of child controls
+ // Button has preferred size!
+ nWidth_Button = aButtonSize.Width ;
+ nHeight_Button = aButtonSize.Height ;
+
+ // Left column before progressbar has preferred size and fixed position.
+ // But "Width" is oriented on left column below progressbar to!!! "max(...)"
+ nX_Topic_Top = FREEBORDER ;
+ nY_Topic_Top = FREEBORDER ;
+ nWidth_Topic_Top = Max ( aTopicSize_Top.Width, aTopicSize_Bottom.Width ) ;
+ nHeight_Topic_Top = aTopicSize_Top.Height ;
+
+ // Right column before progressbar has relativ position to left column ...
+ // ... and a size as rest of dialog size!
+ nX_Text_Top = nX_Topic_Top+nWidth_Topic_Top+FREEBORDER ;
+ nY_Text_Top = nY_Topic_Top ;
+ nWidth_Text_Top = Max ( aTextSize_Top.Width, aTextSize_Bottom.Width ) ;
+ // Fix size of this column to minimum!
+ sal_Int32 nSummaryWidth = nWidth_Text_Top+nWidth_Topic_Top+(3*FREEBORDER) ;
+ if ( nSummaryWidth < DEFAULT_WIDTH )
+ nWidth_Text_Top = DEFAULT_WIDTH-nWidth_Topic_Top-(3*FREEBORDER);
+ // Fix size of column to maximum!
+ if ( nSummaryWidth > impl_getWidth() )
+ nWidth_Text_Top = impl_getWidth()-nWidth_Topic_Top-(3*FREEBORDER) ;
+ nHeight_Text_Top = nHeight_Topic_Top ;
+
+ // Position of progressbar is relativ to columns before.
+ // Progressbar.Width = Dialog.Width !!!
+ // Progressbar.Height = Button.Height
+ nX_ProgressBar = nX_Topic_Top ;
+ nY_ProgressBar = nY_Topic_Top+nHeight_Topic_Top+FREEBORDER ;
+ nWidth_ProgressBar = FREEBORDER+nWidth_Topic_Top+nWidth_Text_Top ;
+ nHeight_ProgressBar = nHeight_Button ;
+
+ // Oriented by left column before progressbar.
+ nX_Topic_Bottom = nX_Topic_Top ;
+ nY_Topic_Bottom = nY_ProgressBar+nHeight_ProgressBar+FREEBORDER ;
+ nWidth_Topic_Bottom = nWidth_Topic_Top ;
+ nHeight_Topic_Bottom = aTopicSize_Bottom.Height ;
+
+ // Oriented by right column before progressbar.
+ nX_Text_Bottom = nX_Topic_Bottom+nWidth_Topic_Bottom+FREEBORDER ;
+ nY_Text_Bottom = nY_Topic_Bottom ;
+ nWidth_Text_Bottom = nWidth_Text_Top ;
+ nHeight_Text_Bottom = nHeight_Topic_Bottom ;
+
+ // Oriented by progressbar.
+ nX_3DLine = nX_Topic_Top ;
+ nY_3DLine = nY_Topic_Bottom+nHeight_Topic_Bottom+(FREEBORDER/2) ;
+ nWidth_3DLine = nWidth_ProgressBar ;
+ nHeight_3DLine = 1 ; // Height for ONE line ! (But we paint two lines!)
+
+ // Oriented by progressbar.
+ nX_Button = nX_ProgressBar+nWidth_ProgressBar-nWidth_Button ;
+ nY_Button = nY_Topic_Bottom+nHeight_Topic_Bottom+FREEBORDER ;
+
+ // Calc offsets to center controls
+ sal_Int32 nDx ;
+ sal_Int32 nDy ;
+
+ nDx = ( (2*FREEBORDER)+nWidth_ProgressBar ) ;
+ nDy = ( (6*FREEBORDER)+nHeight_Topic_Top+nHeight_ProgressBar+nHeight_Topic_Bottom+2+nHeight_Button ) ;
+
+ // At this point use original dialog size to center controls!
+ nDx = (impl_getWidth ()/2)-(nDx/2) ;
+ nDy = (impl_getHeight()/2)-(nDy/2) ;
+
+ if ( nDx<0 )
+ {
+ nDx=0 ;
+ }
+ if ( nDy<0 )
+ {
+ nDy=0 ;
+ }
+
+ // Set new position and size on all controls
+ Reference< XWindow > xRef_Topic_Top ( m_xTopic_Top , UNO_QUERY ) ;
+ Reference< XWindow > xRef_Text_Top ( m_xText_Top , UNO_QUERY ) ;
+ Reference< XWindow > xRef_Topic_Bottom ( m_xTopic_Bottom , UNO_QUERY ) ;
+ Reference< XWindow > xRef_Text_Bottom ( m_xText_Bottom , UNO_QUERY ) ;
+ Reference< XWindow > xRef_Button ( m_xButton , UNO_QUERY ) ;
+ Reference< XWindow > xRef_ProgressBar ( m_xProgressBar , UNO_QUERY ) ;
+
+ xRef_Topic_Top->setPosSize ( nDx+nX_Topic_Top , nDy+nY_Topic_Top , nWidth_Topic_Top , nHeight_Topic_Top , 15 ) ;
+ xRef_Text_Top->setPosSize ( nDx+nX_Text_Top , nDy+nY_Text_Top , nWidth_Text_Top , nHeight_Text_Top , 15 ) ;
+ xRef_Topic_Bottom->setPosSize ( nDx+nX_Topic_Bottom , nDy+nY_Topic_Bottom , nWidth_Topic_Bottom , nHeight_Topic_Bottom , 15 ) ;
+ xRef_Text_Bottom->setPosSize ( nDx+nX_Text_Bottom , nDy+nY_Text_Bottom , nWidth_Text_Bottom , nHeight_Text_Bottom , 15 ) ;
+ xRef_Button->setPosSize ( nDx+nX_Button , nDy+nY_Button , nWidth_Button , nHeight_Button , 15 ) ;
+ xRef_ProgressBar->setPosSize ( nDx+nX_ProgressBar , nDy+nY_ProgressBar , nWidth_ProgressBar , nHeight_ProgressBar , 15 ) ;
+
+ m_a3DLine.X = nDx+nX_Topic_Top ;
+ m_a3DLine.Y = nDy+nY_Topic_Bottom+nHeight_Topic_Bottom+(FREEBORDER/2) ;
+ m_a3DLine.Width = nWidth_ProgressBar ;
+ m_a3DLine.Height = nHeight_ProgressBar ;
+
+ // All childcontrols make an implicit repaint in setPosSize()!
+ // Make it also for this 3D-line ...
+ Reference< XGraphics > xGraphics = impl_getGraphicsPeer () ;
+
+ xGraphics->setLineColor ( LINECOLOR_SHADOW ) ;
+ xGraphics->drawLine ( m_a3DLine.X, m_a3DLine.Y, m_a3DLine.X+m_a3DLine.Width, m_a3DLine.Y ) ;
+
+ xGraphics->setLineColor ( LINECOLOR_BRIGHT ) ;
+ xGraphics->drawLine ( m_a3DLine.X, m_a3DLine.Y+1, m_a3DLine.X+m_a3DLine.Width, m_a3DLine.Y+1 ) ;
+}
+
+//____________________________________________________________________________________________________________
+// private method
+//____________________________________________________________________________________________________________
+
+void ProgressMonitor::impl_rebuildFixedText ()
+{
+ // Ready for multithreading
+ MutexGuard aGuard ( m_aMutex ) ;
+
+ // Rebuild fixedtext before progress
+
+ // Rebuild left site of text
+ if (m_xTopic_Top.is())
+ {
+ OUString aCollectString ;
+
+ // Collect all topics from list and format text.
+ // "\n" MUST BE at the end of line!!! => Else ... topic and his text are not in the same line!!!
+ for ( sal_uInt32 n=0; n<m_pTextlist_Top->Count(); ++n )
+ {
+ IMPL_TextlistItem* pSearchItem = m_pTextlist_Top->GetObject (n) ;
+ aCollectString += pSearchItem->sTopic ;
+ aCollectString += OUString::createFromAscii("\n") ;
+ }
+ aCollectString += OUString::createFromAscii("\0") ; // It's better :-)
+
+ m_xTopic_Top->setText ( aCollectString ) ;
+ }
+
+ // Rebuild right site of text
+ if (m_xText_Top.is())
+ {
+ OUString aCollectString ;
+
+ // Collect all topics from list and format text.
+ // "\n" MUST BE at the end of line!!! => Else ... topic and his text are not in the same line!!!
+ for ( sal_uInt32 n=0; n<m_pTextlist_Top->Count(); ++n )
+ {
+ IMPL_TextlistItem* pSearchItem = m_pTextlist_Top->GetObject (n) ;
+ aCollectString += pSearchItem->sText ;
+ aCollectString += OUString::createFromAscii("\n") ;
+ }
+ aCollectString += OUString::createFromAscii("\0") ; // It's better :-)
+
+ m_xText_Top->setText ( aCollectString ) ;
+ }
+
+ // Rebuild fixedtext below progress
+
+ // Rebuild left site of text
+ if (m_xTopic_Bottom.is())
+ {
+ OUString aCollectString ;
+
+ // Collect all topics from list and format text.
+ // "\n" MUST BE at the end of line!!! => Else ... topic and his text are not in the same line!!!
+ for ( sal_uInt32 n=0; n<m_pTextlist_Bottom->Count(); ++n )
+ {
+ IMPL_TextlistItem* pSearchItem = m_pTextlist_Bottom->GetObject (n) ;
+ aCollectString += pSearchItem->sTopic ;
+ aCollectString += OUString::createFromAscii("\n") ;
+ }
+ aCollectString += OUString::createFromAscii("\0") ; // It's better :-)
+
+ m_xTopic_Bottom->setText ( aCollectString ) ;
+ }
+
+ // Rebuild right site of text
+ if (m_xText_Bottom.is())
+ {
+ OUString aCollectString ;
+
+ // Collect all topics from list and format text.
+ // "\n" MUST BE at the end of line!!! => Else ... topic and his text are not in the same line!!!
+ for ( sal_uInt32 n=0; n<m_pTextlist_Bottom->Count(); ++n )
+ {
+ IMPL_TextlistItem* pSearchItem = m_pTextlist_Bottom->GetObject (n) ;
+ aCollectString += pSearchItem->sText ;
+ aCollectString += OUString::createFromAscii("\n") ;
+ }
+ aCollectString += OUString::createFromAscii("\0") ; // It's better :-)
+
+ m_xText_Bottom->setText ( aCollectString ) ;
+ }
+}
+
+//____________________________________________________________________________________________________________
+// private method
+//____________________________________________________________________________________________________________
+
+void ProgressMonitor::impl_cleanMemory ()
+{
+ // Ready for multithreading
+ MutexGuard aGuard ( m_aMutex ) ;
+
+ // Delete all of lists.
+
+ sal_uInt32 nPosition ;
+
+ for ( nPosition = 0; nPosition < m_pTextlist_Top->Count () ; ++nPosition )
+ {
+ IMPL_TextlistItem* pSearchItem = m_pTextlist_Top->GetObject ( nPosition ) ;
+ delete pSearchItem ;
+ }
+ m_pTextlist_Top->Clear () ;
+ delete m_pTextlist_Top ;
+
+ for ( nPosition = 0; nPosition < m_pTextlist_Bottom->Count () ; ++nPosition )
+ {
+ IMPL_TextlistItem* pSearchItem = m_pTextlist_Bottom->GetObject ( nPosition ) ;
+ delete pSearchItem ;
+ }
+ m_pTextlist_Bottom->Clear () ;
+ delete m_pTextlist_Bottom ;
+}
+
+//____________________________________________________________________________________________________________
+// private method
+//____________________________________________________________________________________________________________
+
+IMPL_TextlistItem* ProgressMonitor::impl_searchTopic ( const OUString& rTopic, sal_Bool bbeforeProgress )
+{
+ // Get right textlist for following operations.
+ IMPL_Textlist* pTextList ;
+
+ // Ready for multithreading
+ ClearableMutexGuard aGuard ( m_aMutex ) ;
+
+ if ( bbeforeProgress == sal_True )
+ {
+ pTextList = m_pTextlist_Top ;
+ }
+ else
+ {
+ pTextList = m_pTextlist_Bottom ;
+ }
+
+ // Switch off guard.
+ aGuard.clear () ;
+
+ // Search the topic in textlist.
+ sal_uInt32 nPosition = 0 ;
+ sal_uInt32 nCount = pTextList->Count () ;
+
+ for ( nPosition = 0; nPosition < nCount ; ++nPosition )
+ {
+ IMPL_TextlistItem* pSearchItem = pTextList->GetObject ( nPosition ) ;
+
+ if ( pSearchItem->sTopic == rTopic )
+ {
+ // We have found this topic ... return a valid pointer.
+ return pSearchItem ;
+ }
+ }
+
+ // We have'nt found this topic ... return a nonvalid pointer.
+ return NULL ;
+}
+
+//____________________________________________________________________________________________________________
+// debug methods
+//____________________________________________________________________________________________________________
+
+#ifdef DBG_UTIL
+
+// addText, updateText
+sal_Bool ProgressMonitor::impl_debug_checkParameter ( const OUString& rTopic, const OUString& rText, sal_Bool /*bbeforeProgress*/ )
+{
+ // Check "rTopic"
+ if ( &rTopic == NULL ) return sal_False ; // NULL-pointer for reference ???!!!
+ if ( rTopic.getLength () < 1 ) return sal_False ; // ""
+
+ // Check "rText"
+ if ( &rText == NULL ) return sal_False ; // NULL-pointer for reference ???!!!
+ if ( rText.getLength () < 1 ) return sal_False ; // ""
+
+ // "bbeforeProgress" is valid in everyway!
+
+ // Parameter OK ... return sal_True.
+ return sal_True ;
+}
+
+// removeText
+sal_Bool ProgressMonitor::impl_debug_checkParameter ( const OUString& rTopic, sal_Bool /*bbeforeProgress*/ )
+{
+ // Check "rTopic"
+ if ( &rTopic == NULL ) return sal_False ; // NULL-pointer for reference ???!!!
+ if ( rTopic.getLength () < 1 ) return sal_False ; // ""
+
+ // "bbeforeProgress" is valid in everyway!
+
+ // Parameter OK ... return sal_True.
+ return sal_True ;
+}
+
+#endif // #ifdef DBG_UTIL
+
+} // namespace unocontrols
diff --git a/UnoControls/source/controls/statusindicator.cxx b/UnoControls/source/controls/statusindicator.cxx
new file mode 100644
index 000000000000..5dd5bd647017
--- /dev/null
+++ b/UnoControls/source/controls/statusindicator.cxx
@@ -0,0 +1,558 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+//____________________________________________________________________________________________________________
+// my own includes
+//____________________________________________________________________________________________________________
+
+#include "statusindicator.hxx"
+
+//____________________________________________________________________________________________________________
+// includes of other projects
+//____________________________________________________________________________________________________________
+#include <com/sun/star/awt/InvalidateStyle.hpp>
+#include <com/sun/star/awt/WindowAttribute.hpp>
+#include <cppuhelper/typeprovider.hxx>
+#include <tools/debug.hxx>
+
+//____________________________________________________________________________________________________________
+// includes of my project
+//____________________________________________________________________________________________________________
+#include "progressbar.hxx"
+
+//____________________________________________________________________________________________________________
+// namespace
+//____________________________________________________________________________________________________________
+
+using namespace ::cppu ;
+using namespace ::osl ;
+using namespace ::rtl ;
+using namespace ::com::sun::star::uno ;
+using namespace ::com::sun::star::lang ;
+using namespace ::com::sun::star::awt ;
+using namespace ::com::sun::star::task ;
+
+namespace unocontrols{
+
+//____________________________________________________________________________________________________________
+// construct/destruct
+//____________________________________________________________________________________________________________
+
+StatusIndicator::StatusIndicator( const Reference< XMultiServiceFactory >& xFactory )
+ : BaseContainerControl ( xFactory )
+{
+ // Its not allowed to work with member in this method (refcounter !!!)
+ // But with a HACK (++refcount) its "OK" :-(
+ ++m_refCount ;
+
+ // Create instances for fixedtext and progress ...
+ m_xText = Reference< XFixedText > ( xFactory->createInstance( OUString::createFromAscii( FIXEDTEXT_SERVICENAME ) ), UNO_QUERY );
+ m_xProgressBar = Reference< XProgressBar > ( xFactory->createInstance( OUString::createFromAscii( SERVICENAME_PROGRESSBAR ) ), UNO_QUERY );
+ // ... cast controls to Reference< XControl > and set model ...
+ // ( ProgressBar has no model !!! )
+ Reference< XControl > xTextControl ( m_xText , UNO_QUERY );
+ Reference< XControl > xProgressControl ( m_xProgressBar, UNO_QUERY );
+ xTextControl->setModel( Reference< XControlModel >( xFactory->createInstance( OUString::createFromAscii( FIXEDTEXT_MODELNAME ) ), UNO_QUERY ) );
+ // ... and add controls to basecontainercontrol!
+ addControl( OUString::createFromAscii( CONTROLNAME_TEXT ), xTextControl );
+ addControl( OUString::createFromAscii( CONTROLNAME_PROGRESSBAR ), xProgressControl );
+ // FixedText make it automaticly visible by himself ... but not the progressbar !!!
+ // it must be set explicitly
+ Reference< XWindow > xProgressWindow( m_xProgressBar, UNO_QUERY );
+ xProgressWindow->setVisible( sal_True );
+ // Reset to defaults !!!
+ // (progressbar take automaticly its own defaults)
+ m_xText->setText( OUString::createFromAscii( DEFAULT_TEXT ) );
+
+ --m_refCount ;
+}
+
+StatusIndicator::~StatusIndicator()
+{
+ // Release all references
+ m_xText = Reference< XFixedText >();
+ m_xProgressBar = Reference< XProgressBar >();
+}
+
+//____________________________________________________________________________________________________________
+// XInterface
+//____________________________________________________________________________________________________________
+
+Any SAL_CALL StatusIndicator::queryInterface( const Type& rType ) throw( RuntimeException )
+{
+ // Attention:
+ // Don't use mutex or guard in this method!!! Is a method of XInterface.
+ Any aReturn ;
+ Reference< XInterface > xDel = BaseContainerControl::impl_getDelegator();
+ if ( xDel.is() )
+ {
+ // If an delegator exist, forward question to his queryInterface.
+ // Delegator will ask his own queryAggregation!
+ aReturn = xDel->queryInterface( rType );
+ }
+ else
+ {
+ // If an delegator unknown, forward question to own queryAggregation.
+ aReturn = queryAggregation( rType );
+ }
+
+ return aReturn ;
+}
+
+//____________________________________________________________________________________________________________
+// XInterface
+//____________________________________________________________________________________________________________
+
+void SAL_CALL StatusIndicator::acquire() throw()
+{
+ // Attention:
+ // Don't use mutex or guard in this method!!! Is a method of XInterface.
+
+ // Forward to baseclass
+ BaseControl::acquire();
+}
+
+//____________________________________________________________________________________________________________
+// XInterface
+//____________________________________________________________________________________________________________
+
+void SAL_CALL StatusIndicator::release() throw()
+{
+ // Attention:
+ // Don't use mutex or guard in this method!!! Is a method of XInterface.
+
+ // Forward to baseclass
+ BaseControl::release();
+}
+
+//____________________________________________________________________________________________________________
+// XTypeProvider
+//____________________________________________________________________________________________________________
+
+Sequence< Type > SAL_CALL StatusIndicator::getTypes() throw( RuntimeException )
+{
+ // Optimize this method !
+ // We initialize a static variable only one time. And we don't must use a mutex at every call!
+ // For the first call; pTypeCollection is NULL - for the second call pTypeCollection is different from NULL!
+ static OTypeCollection* pTypeCollection = NULL ;
+
+ if ( pTypeCollection == NULL )
+ {
+ // Ready for multithreading; get global mutex for first call of this method only! see before
+ MutexGuard aGuard( Mutex::getGlobalMutex() );
+
+ // Control these pointer again ... it can be, that another instance will be faster then these!
+ if ( pTypeCollection == NULL )
+ {
+ // Create a static typecollection ...
+ static OTypeCollection aTypeCollection ( ::getCppuType(( const Reference< XLayoutConstrains >*)NULL ) ,
+ ::getCppuType(( const Reference< XStatusIndicator >*)NULL ) ,
+ BaseContainerControl::getTypes()
+ );
+ // ... and set his address to static pointer!
+ pTypeCollection = &aTypeCollection ;
+ }
+ }
+
+ return pTypeCollection->getTypes();
+}
+
+//____________________________________________________________________________________________________________
+// XAggregation
+//____________________________________________________________________________________________________________
+
+Any SAL_CALL StatusIndicator::queryAggregation( const Type& aType ) throw( RuntimeException )
+{
+ // Ask for my own supported interfaces ...
+ // Attention: XTypeProvider and XInterface are supported by OComponentHelper!
+ Any aReturn ( ::cppu::queryInterface( aType ,
+ static_cast< XLayoutConstrains* > ( this ) ,
+ static_cast< XStatusIndicator* > ( this )
+ )
+ );
+
+ // If searched interface not supported by this class ...
+ if ( aReturn.hasValue() == sal_False )
+ {
+ // ... ask baseclasses.
+ aReturn = BaseControl::queryAggregation( aType );
+ }
+
+ return aReturn ;
+}
+
+//____________________________________________________________________________________________________________
+// XStatusIndicator
+//____________________________________________________________________________________________________________
+
+void SAL_CALL StatusIndicator::start( const OUString& sText, sal_Int32 nRange ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+
+ // Initialize status controls with given values.
+ m_xText->setText( sText );
+ m_xProgressBar->setRange( 0, nRange );
+ // force repaint ... fixedtext has changed !
+ impl_recalcLayout ( WindowEvent(static_cast< OWeakObject* >(this),0,0,impl_getWidth(),impl_getHeight(),0,0,0,0) ) ;
+}
+
+//____________________________________________________________________________________________________________
+// XStatusIndicator
+//____________________________________________________________________________________________________________
+
+void SAL_CALL StatusIndicator::end() throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+
+ // Clear values of status controls.
+ m_xText->setText( OUString() );
+ m_xProgressBar->setValue( 0 );
+ setVisible( sal_False );
+}
+
+//____________________________________________________________________________________________________________
+// XStatusIndicator
+//____________________________________________________________________________________________________________
+
+void SAL_CALL StatusIndicator::setText( const OUString& sText ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+
+ // Take text on right control
+ m_xText->setText( sText );
+}
+
+//____________________________________________________________________________________________________________
+// XStatusIndicator
+//____________________________________________________________________________________________________________
+
+void SAL_CALL StatusIndicator::setValue( sal_Int32 nValue ) throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+
+ // Take value on right control
+ m_xProgressBar->setValue( nValue );
+}
+
+//____________________________________________________________________________________________________________
+// XStatusIndicator
+//____________________________________________________________________________________________________________
+
+void SAL_CALL StatusIndicator::reset() throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard( m_aMutex );
+
+ // Clear values of status controls.
+ // (Don't hide the window! User will reset current values ... but he will not finish using of indicator!)
+ m_xText->setText( OUString() );
+ m_xProgressBar->setValue( 0 );
+}
+
+//____________________________________________________________________________________________________________
+// XLayoutConstrains
+//____________________________________________________________________________________________________________
+
+Size SAL_CALL StatusIndicator::getMinimumSize () throw( RuntimeException )
+{
+ return Size (DEFAULT_WIDTH, DEFAULT_HEIGHT) ;
+}
+
+//____________________________________________________________________________________________________________
+// XLayoutConstrains
+//____________________________________________________________________________________________________________
+
+Size SAL_CALL StatusIndicator::getPreferredSize () throw( RuntimeException )
+{
+ // Ready for multithreading
+ ClearableMutexGuard aGuard ( m_aMutex ) ;
+
+ // get information about required place of child controls
+ Reference< XLayoutConstrains > xTextLayout ( m_xText, UNO_QUERY );
+ Size aTextSize = xTextLayout->getPreferredSize();
+
+ aGuard.clear () ;
+
+ // calc preferred size of status indicator
+ sal_Int32 nWidth = impl_getWidth() ;
+ sal_Int32 nHeight = (2*FREEBORDER)+aTextSize.Height ;
+
+ // norm to minimum
+ if ( nWidth<DEFAULT_WIDTH )
+ {
+ nWidth = DEFAULT_WIDTH ;
+ }
+ if ( nHeight<DEFAULT_HEIGHT )
+ {
+ nHeight = DEFAULT_HEIGHT ;
+ }
+
+ // return to caller
+ return Size ( nWidth, nHeight ) ;
+}
+
+//____________________________________________________________________________________________________________
+// XLayoutConstrains
+//____________________________________________________________________________________________________________
+
+Size SAL_CALL StatusIndicator::calcAdjustedSize ( const Size& /*rNewSize*/ ) throw( RuntimeException )
+{
+ return getPreferredSize () ;
+}
+
+//____________________________________________________________________________________________________________
+// XControl
+//____________________________________________________________________________________________________________
+
+void SAL_CALL StatusIndicator::createPeer ( const Reference< XToolkit > & rToolkit, const Reference< XWindowPeer > & rParent ) throw( RuntimeException )
+{
+ if( getPeer().is() == sal_False )
+ {
+ BaseContainerControl::createPeer( rToolkit, rParent );
+
+ // If user forget to call "setPosSize()", we have still a correct size.
+ // And a "MinimumSize" IS A "MinimumSize"!
+ // We change not the position of control at this point.
+ Size aDefaultSize = getMinimumSize () ;
+ setPosSize ( 0, 0, aDefaultSize.Width, aDefaultSize.Height, PosSize::SIZE ) ;
+ }
+}
+
+//____________________________________________________________________________________________________________
+// XControl
+//____________________________________________________________________________________________________________
+
+sal_Bool SAL_CALL StatusIndicator::setModel ( const Reference< XControlModel > & /*rModel*/ ) throw( RuntimeException )
+{
+ // We have no model.
+ return sal_False ;
+}
+
+//____________________________________________________________________________________________________________
+// XControl
+//____________________________________________________________________________________________________________
+
+Reference< XControlModel > SAL_CALL StatusIndicator::getModel () throw( RuntimeException )
+{
+ // We have no model.
+ // return (XControlModel*)this ;
+ return Reference< XControlModel > () ;
+}
+
+//____________________________________________________________________________________________________________
+// XComponent
+//____________________________________________________________________________________________________________
+
+void SAL_CALL StatusIndicator::dispose () throw( RuntimeException )
+{
+ // Ready for multithreading
+ MutexGuard aGuard ( m_aMutex ) ;
+
+ // "removeControl()" control the state of a reference
+ Reference< XControl > xTextControl ( m_xText , UNO_QUERY );
+ Reference< XControl > xProgressControl ( m_xProgressBar, UNO_QUERY );
+
+ removeControl( xTextControl );
+ removeControl( xProgressControl );
+
+ // do'nt use "...->clear ()" or "... = XFixedText ()"
+ // when other hold a reference at this object !!!
+ xTextControl->dispose();
+ xProgressControl->dispose();
+ BaseContainerControl::dispose();
+}
+
+//____________________________________________________________________________________________________________
+// XWindow
+//____________________________________________________________________________________________________________
+
+void SAL_CALL StatusIndicator::setPosSize ( sal_Int32 nX, sal_Int32 nY, sal_Int32 nWidth, sal_Int32 nHeight, sal_Int16 nFlags ) throw( RuntimeException )
+{
+ Rectangle aBasePosSize = getPosSize () ;
+ BaseContainerControl::setPosSize (nX, nY, nWidth, nHeight, nFlags) ;
+
+ // if position or size changed
+ if (
+ ( nWidth != aBasePosSize.Width ) ||
+ ( nHeight != aBasePosSize.Height)
+ )
+ {
+ // calc new layout for controls
+ impl_recalcLayout ( WindowEvent(static_cast< OWeakObject* >(this),0,0,nWidth,nHeight,0,0,0,0) ) ;
+ // clear background (!)
+ // [Childs was repainted in "recalcLayout" by setPosSize() automaticly!]
+ getPeer()->invalidate(2);
+ // and repaint the control
+ impl_paint ( 0, 0, impl_getGraphicsPeer() ) ;
+ }
+}
+
+//____________________________________________________________________________________________________________
+// impl but public method to register service
+//____________________________________________________________________________________________________________
+
+const Sequence< OUString > StatusIndicator::impl_getStaticSupportedServiceNames()
+{
+ MutexGuard aGuard( Mutex::getGlobalMutex() );
+ Sequence< OUString > seqServiceNames( 1 );
+ seqServiceNames.getArray() [0] = OUString::createFromAscii( SERVICENAME_STATUSINDICATOR );
+ return seqServiceNames ;
+}
+
+//____________________________________________________________________________________________________________
+// impl but public method to register service
+//____________________________________________________________________________________________________________
+
+const OUString StatusIndicator::impl_getStaticImplementationName()
+{
+ return OUString::createFromAscii( IMPLEMENTATIONNAME_STATUSINDICATOR );
+}
+
+//____________________________________________________________________________________________________________
+// protected method
+//____________________________________________________________________________________________________________
+
+WindowDescriptor* StatusIndicator::impl_getWindowDescriptor( const Reference< XWindowPeer >& xParentPeer )
+{
+ // - used from "createPeer()" to set the values of an ::com::sun::star::awt::WindowDescriptor !!!
+ // - if you will change the descriptor-values, you must override this virtuell function
+ // - the caller must release the memory for this dynamical descriptor !!!
+
+ WindowDescriptor* pDescriptor = new WindowDescriptor ;
+
+ pDescriptor->Type = WindowClass_SIMPLE ;
+ pDescriptor->WindowServiceName = OUString::createFromAscii( "floatingwindow" ) ;
+ pDescriptor->ParentIndex = -1 ;
+ pDescriptor->Parent = xParentPeer ;
+ pDescriptor->Bounds = getPosSize () ;
+
+ return pDescriptor ;
+}
+
+//____________________________________________________________________________________________________________
+// protected method
+//____________________________________________________________________________________________________________
+
+void StatusIndicator::impl_paint ( sal_Int32 nX, sal_Int32 nY, const Reference< XGraphics > & rGraphics )
+{
+ // This paint method ist not buffered !!
+ // Every request paint the completely control. ( but only, if peer exist )
+ if ( rGraphics.is () )
+ {
+ MutexGuard aGuard (m_aMutex) ;
+
+ // background = gray
+ Reference< XWindowPeer > xPeer( impl_getPeerWindow(), UNO_QUERY );
+ if( xPeer.is() == sal_True )
+ xPeer->setBackground( BACKGROUNDCOLOR );
+
+ // FixedText background = gray
+ Reference< XControl > xTextControl( m_xText, UNO_QUERY );
+ xPeer = xTextControl->getPeer();
+ if( xPeer.is() == sal_True )
+ xPeer->setBackground( BACKGROUNDCOLOR );
+
+ // Progress background = gray
+ xPeer = Reference< XWindowPeer >( m_xProgressBar, UNO_QUERY );
+ if( xPeer.is() == sal_True )
+ xPeer->setBackground( BACKGROUNDCOLOR );
+
+ // paint shadow border
+ rGraphics->setLineColor ( LINECOLOR_BRIGHT );
+ rGraphics->drawLine ( nX, nY, impl_getWidth(), nY );
+ rGraphics->drawLine ( nX, nY, nX , impl_getHeight() );
+
+ rGraphics->setLineColor ( LINECOLOR_SHADOW );
+ rGraphics->drawLine ( impl_getWidth()-1, impl_getHeight()-1, impl_getWidth()-1, nY );
+ rGraphics->drawLine ( impl_getWidth()-1, impl_getHeight()-1, nX , impl_getHeight()-1 );
+ }
+}
+
+//____________________________________________________________________________________________________________
+// protected method
+//____________________________________________________________________________________________________________
+
+void StatusIndicator::impl_recalcLayout ( const WindowEvent& aEvent )
+{
+ sal_Int32 nX_ProgressBar ;
+ sal_Int32 nY_ProgressBar ;
+ sal_Int32 nWidth_ProgressBar ;
+ sal_Int32 nHeight_ProgressBar ;
+ sal_Int32 nX_Text ;
+ sal_Int32 nY_Text ;
+ sal_Int32 nWidth_Text ;
+ sal_Int32 nHeight_Text ;
+
+ // Ready for multithreading
+ MutexGuard aGuard ( m_aMutex ) ;
+
+ // get information about required place of child controls
+ Size aWindowSize ( aEvent.Width, aEvent.Height );
+ Reference< XLayoutConstrains > xTextLayout ( m_xText, UNO_QUERY );
+ Size aTextSize = xTextLayout->getPreferredSize();
+
+ if( aWindowSize.Width < DEFAULT_WIDTH )
+ {
+ aWindowSize.Width = DEFAULT_WIDTH;
+ }
+ if( aWindowSize.Height < DEFAULT_HEIGHT )
+ {
+ aWindowSize.Height = DEFAULT_HEIGHT;
+ }
+
+ // calc position and size of child controls
+ nX_Text = FREEBORDER ;
+ nY_Text = FREEBORDER ;
+ nWidth_Text = aTextSize.Width ;
+ nHeight_Text = aTextSize.Height ;
+
+ nX_ProgressBar = nX_Text+nWidth_Text+FREEBORDER ;
+ nY_ProgressBar = nY_Text ;
+ nWidth_ProgressBar = aWindowSize.Width-nWidth_Text-(3*FREEBORDER) ;
+ nHeight_ProgressBar = nHeight_Text ;
+
+ // Set new position and size on all controls
+ Reference< XWindow > xTextWindow ( m_xText , UNO_QUERY );
+ Reference< XWindow > xProgressWindow ( m_xProgressBar, UNO_QUERY );
+
+ xTextWindow->setPosSize ( nX_Text , nY_Text , nWidth_Text , nHeight_Text , 15 ) ;
+ xProgressWindow->setPosSize ( nX_ProgressBar, nY_ProgressBar, nWidth_ProgressBar, nHeight_ProgressBar , 15 ) ;
+}
+
+//____________________________________________________________________________________________________________
+// debug methods
+//____________________________________________________________________________________________________________
+
+#if OSL_DEBUG_LEVEL > 1
+
+#endif // #if OSL_DEBUG_LEVEL > 1
+
+} // namespace unocontrols
diff --git a/UnoControls/source/inc/OConnectionPointContainerHelper.hxx b/UnoControls/source/inc/OConnectionPointContainerHelper.hxx
new file mode 100644
index 000000000000..92e7e7df0fe2
--- /dev/null
+++ b/UnoControls/source/inc/OConnectionPointContainerHelper.hxx
@@ -0,0 +1,262 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef _OCONNECTIONPOINTCONTAINERHELPER_HXX
+#define _OCONNECTIONPOINTCONTAINERHELPER_HXX
+
+//______________________________________________________________________________________________________________
+// includes of other projects
+//______________________________________________________________________________________________________________
+
+#include <com/sun/star/lang/XConnectionPointContainer.hpp>
+#include <com/sun/star/lang/XConnectionPoint.hpp>
+#include <cppuhelper/weak.hxx>
+#include <cppuhelper/propshlp.hxx>
+
+//______________________________________________________________________________________________________________
+// includes of my own project
+//______________________________________________________________________________________________________________
+
+//______________________________________________________________________________________________________________
+// namespaces
+//______________________________________________________________________________________________________________
+
+namespace unocontrols{
+
+#define UNO3_ANY ::com::sun::star::uno::Any
+#define UNO3_SEQUENCE ::com::sun::star::uno::Sequence
+#define UNO3_TYPE ::com::sun::star::uno::Type
+#define UNO3_REFERENCE ::com::sun::star::uno::Reference
+#define UNO3_XCONNECTIONPOINTCONTAINER ::com::sun::star::lang::XConnectionPointContainer
+#define UNO3_XCONNECTIONPOINT ::com::sun::star::lang::XConnectionPoint
+#define UNO3_MUTEX ::osl::Mutex
+#define UNO3_RUNTIMEEXCEPTION ::com::sun::star::uno::RuntimeException
+#define UNO3_XINTERFACE ::com::sun::star::uno::XInterface
+#define UNO3_OMULTITYPEINTERFACECONTAINERHELPER ::cppu::OMultiTypeInterfaceContainerHelper
+#define UNO3_LISTENEREXISTEXCEPTION ::com::sun::star::lang::ListenerExistException
+#define UNO3_INVALIDLISTENEREXCEPTION ::com::sun::star::lang::InvalidListenerException
+#define UNO3_WEAKREFERENCE ::com::sun::star::uno::WeakReference
+#define UNO3_OWEAKOBJECT ::cppu::OWeakObject
+
+//______________________________________________________________________________________________________________
+// defines
+//______________________________________________________________________________________________________________
+
+//______________________________________________________________________________________________________________
+// class declaration OConnectionPointContainerHelper
+//______________________________________________________________________________________________________________
+
+class OConnectionPointContainerHelper : public UNO3_XCONNECTIONPOINTCONTAINER
+ , public UNO3_OWEAKOBJECT
+{
+
+//______________________________________________________________________________________________________________
+// public methods
+//______________________________________________________________________________________________________________
+
+public:
+
+ //__________________________________________________________________________________________________________
+ // construct/destruct
+ //__________________________________________________________________________________________________________
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ OConnectionPointContainerHelper( UNO3_MUTEX& aMutex );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual ~OConnectionPointContainerHelper();
+
+ //________________________________________________________________________________________________________
+ // XInterface
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short give answer, if interface is supported
+ @descr The interfaces are searched by type.
+
+ @seealso XInterface
+
+ @param "rType" is the type of searched interface.
+
+ @return Any information about found interface
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual UNO3_ANY SAL_CALL queryInterface( const UNO3_TYPE& aType ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short increment refcount
+ @descr -
+
+ @seealso XInterface
+ @seealso release()
+
+ @param -
+
+ @return -
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual void SAL_CALL acquire() throw();
+
+ /**_______________________________________________________________________________________________________
+ @short decrement refcount
+ @descr -
+
+ @seealso XInterface
+ @seealso acquire()
+
+ @param -
+
+ @return -
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual void SAL_CALL release() throw();
+
+ //__________________________________________________________________________________________________________
+ // XConnectionPointContainer
+ //__________________________________________________________________________________________________________
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual UNO3_SEQUENCE< UNO3_TYPE > SAL_CALL getConnectionPointTypes() throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual UNO3_REFERENCE< UNO3_XCONNECTIONPOINT > SAL_CALL queryConnectionPoint( const UNO3_TYPE& aType ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual void SAL_CALL advise( const UNO3_TYPE& aType ,
+ const UNO3_REFERENCE< UNO3_XINTERFACE >& xListener ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual void SAL_CALL unadvise( const UNO3_TYPE& aType ,
+ const UNO3_REFERENCE< UNO3_XINTERFACE >& xListener ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ UNO3_OMULTITYPEINTERFACECONTAINERHELPER& impl_getMultiTypeContainer();
+
+//______________________________________________________________________________________________________________
+// private variables
+//______________________________________________________________________________________________________________
+
+private:
+
+ UNO3_MUTEX& m_aSharedMutex ;
+ UNO3_OMULTITYPEINTERFACECONTAINERHELPER m_aMultiTypeContainer ; // Container to hold listener
+
+}; // class OConnectionPointContainerHelper
+
+} // namespace unocontrols
+
+#endif // #ifndef _OCONNECTIONPOINTCONTAINERHELPER_HXX
diff --git a/UnoControls/source/inc/OConnectionPointHelper.hxx b/UnoControls/source/inc/OConnectionPointHelper.hxx
new file mode 100644
index 000000000000..0856db8027f4
--- /dev/null
+++ b/UnoControls/source/inc/OConnectionPointHelper.hxx
@@ -0,0 +1,306 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef _OCONNECTIONPOINTHELPER_HXX
+#define _OCONNECTIONPOINTHELPER_HXX
+
+//______________________________________________________________________________________________________________
+// includes of other projects
+//______________________________________________________________________________________________________________
+
+#include <com/sun/star/lang/XConnectionPointContainer.hpp>
+#include <com/sun/star/lang/XConnectionPoint.hpp>
+#include <cppuhelper/weak.hxx>
+#include <cppuhelper/propshlp.hxx>
+
+//______________________________________________________________________________________________________________
+// includes of my own project
+//______________________________________________________________________________________________________________
+#include "OConnectionPointContainerHelper.hxx"
+
+//______________________________________________________________________________________________________________
+// namespaces
+//______________________________________________________________________________________________________________
+
+namespace unocontrols{
+
+#define UNO3_ANY ::com::sun::star::uno::Any
+#define UNO3_SEQUENCE ::com::sun::star::uno::Sequence
+#define UNO3_TYPE ::com::sun::star::uno::Type
+#define UNO3_REFERENCE ::com::sun::star::uno::Reference
+#define UNO3_XCONNECTIONPOINTCONTAINER ::com::sun::star::lang::XConnectionPointContainer
+#define UNO3_XCONNECTIONPOINT ::com::sun::star::lang::XConnectionPoint
+#define UNO3_MUTEX ::osl::Mutex
+#define UNO3_RUNTIMEEXCEPTION ::com::sun::star::uno::RuntimeException
+#define UNO3_XINTERFACE ::com::sun::star::uno::XInterface
+#define UNO3_OMULTITYPEINTERFACECONTAINERHELPER ::cppu::OMultiTypeInterfaceContainerHelper
+#define UNO3_LISTENEREXISTEXCEPTION ::com::sun::star::lang::ListenerExistException
+#define UNO3_INVALIDLISTENEREXCEPTION ::com::sun::star::lang::InvalidListenerException
+#define UNO3_WEAKREFERENCE ::com::sun::star::uno::WeakReference
+#define UNO3_OWEAKOBJECT ::cppu::OWeakObject
+#define UNO3_OCONNECTIONPOINTCONTAINERHELPER OConnectionPointContainerHelper
+
+//______________________________________________________________________________________________________________
+// defines
+//______________________________________________________________________________________________________________
+
+//______________________________________________________________________________________________________________
+// class declaration OConnectionPointHelper
+//______________________________________________________________________________________________________________
+
+class OConnectionPointHelper : public UNO3_XCONNECTIONPOINT
+ , public UNO3_OWEAKOBJECT
+{
+
+//______________________________________________________________________________________________________________
+// public methods
+//______________________________________________________________________________________________________________
+
+public:
+
+ //__________________________________________________________________________________________________________
+ // construct/destruct
+ //__________________________________________________________________________________________________________
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ OConnectionPointHelper( UNO3_MUTEX& aMutex ,
+ UNO3_OCONNECTIONPOINTCONTAINERHELPER* pContainerImplementation ,
+ UNO3_TYPE aType );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual ~OConnectionPointHelper();
+
+ //________________________________________________________________________________________________________
+ // XInterface
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short give answer, if interface is supported
+ @descr The interfaces are searched by type.
+
+ @seealso XInterface
+
+ @param "rType" is the type of searched interface.
+
+ @return Any information about found interface
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual UNO3_ANY SAL_CALL queryInterface( const UNO3_TYPE& aType ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short increment refcount
+ @descr -
+
+ @seealso XInterface
+ @seealso release()
+
+ @param -
+
+ @return -
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual void SAL_CALL acquire() throw();
+
+ /**_______________________________________________________________________________________________________
+ @short decrement refcount
+ @descr -
+
+ @seealso XInterface
+ @seealso acquire()
+
+ @param -
+
+ @return -
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual void SAL_CALL release() throw();
+
+ //__________________________________________________________________________________________________________
+ // XConnectionPoint
+ //__________________________________________________________________________________________________________
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual UNO3_TYPE SAL_CALL getConnectionType() throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual UNO3_REFERENCE< UNO3_XCONNECTIONPOINTCONTAINER > SAL_CALL getConnectionPointContainer() throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual void SAL_CALL advise( const UNO3_REFERENCE< UNO3_XINTERFACE >& xListener ) throw( UNO3_LISTENEREXISTEXCEPTION ,
+ UNO3_INVALIDLISTENEREXCEPTION ,
+ UNO3_RUNTIMEEXCEPTION );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual void SAL_CALL unadvise( const UNO3_REFERENCE< UNO3_XINTERFACE >& xListener ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual UNO3_SEQUENCE< UNO3_REFERENCE< UNO3_XINTERFACE > > SAL_CALL getConnections() throw( UNO3_RUNTIMEEXCEPTION );
+
+//______________________________________________________________________________________________________________
+// private methods
+//______________________________________________________________________________________________________________
+
+private:
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ sal_Bool impl_LockContainer();
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ void impl_UnlockContainer();
+
+//______________________________________________________________________________________________________________
+// private variables
+//______________________________________________________________________________________________________________
+
+private:
+
+ UNO3_MUTEX& m_aSharedMutex ;
+ UNO3_WEAKREFERENCE< UNO3_XCONNECTIONPOINTCONTAINER > m_oContainerWeakReference ; // Reference to container-class!. Don't use Reference<...>
+ // It is a ring-reference => and must be a wekreference!
+ UNO3_OCONNECTIONPOINTCONTAINERHELPER* m_pContainerImplementation ;
+ UNO3_TYPE m_aInterfaceType ;
+ UNO3_REFERENCE< UNO3_XINTERFACE > m_xLock ;
+
+}; // class OConnectionPointHelper
+
+} // namespace unocontrols
+
+#endif // #ifndef _OCONNECTIONPOINTHELPER_HXX
diff --git a/UnoControls/source/inc/framecontrol.hxx b/UnoControls/source/inc/framecontrol.hxx
new file mode 100644
index 000000000000..4ec2683e1ba6
--- /dev/null
+++ b/UnoControls/source/inc/framecontrol.hxx
@@ -0,0 +1,624 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef _UNOCONTROLS_FRAMECONTROL_CTRL_HXX
+#define _UNOCONTROLS_FRAMECONTROL_CTRL_HXX
+
+//______________________________________________________________________________________________________________
+// includes of other projects
+//______________________________________________________________________________________________________________
+
+#include <com/sun/star/frame/XFrameActionListener.hpp>
+#include <com/sun/star/frame/XComponentLoader.hpp>
+#include <com/sun/star/frame/XFrame.hpp>
+#include <com/sun/star/frame/FrameActionEvent.hpp>
+#include <com/sun/star/frame/FrameAction.hpp>
+#include <com/sun/star/lang/XServiceName.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <com/sun/star/lang/XConnectionPointContainer.hpp>
+#include <cppuhelper/propshlp.hxx>
+
+//______________________________________________________________________________________________________________
+// includes of my own project
+//______________________________________________________________________________________________________________
+#include "basecontrol.hxx"
+#include "OConnectionPointContainerHelper.hxx"
+
+//______________________________________________________________________________________________________________
+// namespaces
+//______________________________________________________________________________________________________________
+
+namespace unocontrols{
+
+#define UNO3_ANY ::com::sun::star::uno::Any
+#define UNO3_ILLEGALARGUMENTEXCEPTION ::com::sun::star::lang::IllegalArgumentException
+#define UNO3_IPROPERTYARRAYHELPER ::cppu::IPropertyArrayHelper
+#define UNO3_OBROADCASTHELPER ::cppu::OBroadcastHelper
+#define UNO3_OCONNECTIONPOINTCONTAINERHELPER OConnectionPointContainerHelper
+#define UNO3_OMULTITYPEINTERFACECONTAINERHELPER ::cppu::OMultiTypeInterfaceContainerHelper
+#define UNO3_OPROPERTYSETHELPER ::cppu::OPropertySetHelper
+#define UNO3_OUSTRING ::rtl::OUString
+#define UNO3_PROPERTY ::com::sun::star::beans::Property
+#define UNO3_PROPERTYVALUE ::com::sun::star::beans::PropertyValue
+#define UNO3_REFERENCE ::com::sun::star::uno::Reference
+#define UNO3_RUNTIMEEXCEPTION ::com::sun::star::uno::RuntimeException
+#define UNO3_SEQUENCE ::com::sun::star::uno::Sequence
+#define UNO3_TYPE ::com::sun::star::uno::Type
+#define UNO3_WINDOWDESCRIPTOR ::com::sun::star::awt::WindowDescriptor
+#define UNO3_XCONNECTIONPOINT ::com::sun::star::lang::XConnectionPoint
+#define UNO3_XCONNECTIONPOINTCONTAINER ::com::sun::star::lang::XConnectionPointContainer
+#define UNO3_XCONTROLMODEL ::com::sun::star::awt::XControlModel
+#define UNO3_XFRAME ::com::sun::star::frame::XFrame
+#define UNO3_XGRAPHICS ::com::sun::star::awt::XGraphics
+#define UNO3_XINTERFACE ::com::sun::star::uno::XInterface
+#define UNO3_XMULTISERVICEFACTORY ::com::sun::star::lang::XMultiServiceFactory
+#define UNO3_XPROPERTYSETINFO ::com::sun::star::beans::XPropertySetInfo
+#define UNO3_XTOOLKIT ::com::sun::star::awt::XToolkit
+#define UNO3_XWINDOWPEER ::com::sun::star::awt::XWindowPeer
+
+//______________________________________________________________________________________________________________
+// defines
+//______________________________________________________________________________________________________________
+
+#define SERVICENAME_FRAMECONTROL "com.sun.star.frame.FrameControl"
+#define IMPLEMENTATIONNAME_FRAMECONTROL "stardiv.UnoControls.FrameControl"
+#define PROPERTYNAME_LOADERARGUMENTS "LoaderArguments"
+#define PROPERTYNAME_COMPONENTURL "ComponentURL"
+#define PROPERTYNAME_FRAME "Frame"
+#define ERRORTEXT_VOSENSHURE "This is an invalid property handle."
+#define PROPERTY_COUNT 3 // you must count the propertys
+#define PROPERTYHANDLE_COMPONENTURL 0 // Id must be the index into the array
+#define PROPERTYHANDLE_FRAME 1
+#define PROPERTYHANDLE_LOADERARGUMENTS 2
+
+//______________________________________________________________________________________________________________
+// class
+//______________________________________________________________________________________________________________
+
+class FrameControl : public UNO3_XCONTROLMODEL
+ , public UNO3_XCONNECTIONPOINTCONTAINER
+ , public BaseControl // This order is neccessary for right initialization of m_aMutex!
+ , public UNO3_OBROADCASTHELPER
+ , public UNO3_OPROPERTYSETHELPER
+{
+
+//______________________________________________________________________________________________________________
+// public methods
+//______________________________________________________________________________________________________________
+
+public:
+
+ //__________________________________________________________________________________________________________
+ // construct/destruct
+ //__________________________________________________________________________________________________________
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ FrameControl( const UNO3_REFERENCE< UNO3_XMULTISERVICEFACTORY >& xFactory );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual ~FrameControl();
+
+ //__________________________________________________________________________________________________________
+ // XInterface
+ //__________________________________________________________________________________________________________
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual UNO3_ANY SAL_CALL queryInterface( const UNO3_TYPE& aType ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short increment refcount
+ @descr -
+
+ @seealso XInterface
+ @seealso release()
+
+ @param -
+
+ @return -
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual void SAL_CALL acquire() throw();
+
+ /**_______________________________________________________________________________________________________
+ @short decrement refcount
+ @descr -
+
+ @seealso XInterface
+ @seealso acquire()
+
+ @param -
+
+ @return -
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual void SAL_CALL release() throw();
+
+ //__________________________________________________________________________________________________________
+ // XTypeProvider
+ //__________________________________________________________________________________________________________
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual UNO3_SEQUENCE< UNO3_TYPE > SAL_CALL getTypes() throw( UNO3_RUNTIMEEXCEPTION );
+
+ //__________________________________________________________________________________________________________
+ // XAggregation
+ //__________________________________________________________________________________________________________
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ UNO3_ANY SAL_CALL queryAggregation( const UNO3_TYPE& aType ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ //__________________________________________________________________________________________________________
+ // XControl
+ //__________________________________________________________________________________________________________
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual void SAL_CALL createPeer( const UNO3_REFERENCE< UNO3_XTOOLKIT >& xToolkit ,
+ const UNO3_REFERENCE< UNO3_XWINDOWPEER >& xParent ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual sal_Bool SAL_CALL setModel( const UNO3_REFERENCE< UNO3_XCONTROLMODEL >& xModel ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual UNO3_REFERENCE< UNO3_XCONTROLMODEL > SAL_CALL getModel() throw( UNO3_RUNTIMEEXCEPTION );
+
+ //__________________________________________________________________________________________________________
+ // XComponent
+ //__________________________________________________________________________________________________________
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual void SAL_CALL dispose() throw( UNO3_RUNTIMEEXCEPTION );
+
+ //__________________________________________________________________________________________________________
+ // XView
+ //__________________________________________________________________________________________________________
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual sal_Bool SAL_CALL setGraphics( const UNO3_REFERENCE< UNO3_XGRAPHICS >& xDevice ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual UNO3_REFERENCE< UNO3_XGRAPHICS > SAL_CALL getGraphics() throw( UNO3_RUNTIMEEXCEPTION );
+
+ //__________________________________________________________________________________________________________
+ // XConnectionPointContainer
+ //__________________________________________________________________________________________________________
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual UNO3_SEQUENCE< UNO3_TYPE > SAL_CALL getConnectionPointTypes() throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual UNO3_REFERENCE< UNO3_XCONNECTIONPOINT > SAL_CALL queryConnectionPoint( const UNO3_TYPE& aType ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual void SAL_CALL advise( const UNO3_TYPE& aType ,
+ const UNO3_REFERENCE< UNO3_XINTERFACE >& xListener ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual void SAL_CALL unadvise( const UNO3_TYPE& aType ,
+ const UNO3_REFERENCE< UNO3_XINTERFACE >& xListener ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ //__________________________________________________________________________________________________________
+ // impl but public methods to register service!
+ //__________________________________________________________________________________________________________
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ static const UNO3_SEQUENCE< UNO3_OUSTRING > impl_getStaticSupportedServiceNames();
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ static const UNO3_OUSTRING impl_getStaticImplementationName();
+
+//______________________________________________________________________________________________________________
+// protected methods
+//______________________________________________________________________________________________________________
+
+protected:
+ using OPropertySetHelper::getFastPropertyValue;
+ //__________________________________________________________________________________________________________
+ // OPropertySetHelper
+ //__________________________________________________________________________________________________________
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual sal_Bool SAL_CALL convertFastPropertyValue( UNO3_ANY& rConvertedValue ,
+ UNO3_ANY& rOldValue ,
+ sal_Int32 nHandle ,
+ const UNO3_ANY& rValue ) throw( UNO3_ILLEGALARGUMENTEXCEPTION );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual void SAL_CALL setFastPropertyValue_NoBroadcast( sal_Int32 nHandle ,
+ const UNO3_ANY& rValue ) throw ( ::com::sun::star::uno::Exception );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual void SAL_CALL getFastPropertyValue( UNO3_ANY& rValue ,
+ sal_Int32 nHandle ) const ;
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual UNO3_IPROPERTYARRAYHELPER& SAL_CALL getInfoHelper();
+
+ //__________________________________________________________________________________________________________
+ // XPropertySet
+ //__________________________________________________________________________________________________________
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ UNO3_REFERENCE< UNO3_XPROPERTYSETINFO > SAL_CALL getPropertySetInfo() throw( UNO3_RUNTIMEEXCEPTION );
+
+ //__________________________________________________________________________________________________________
+ // BaseControl
+ //__________________________________________________________________________________________________________
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual UNO3_WINDOWDESCRIPTOR* impl_getWindowDescriptor( const UNO3_REFERENCE< UNO3_XWINDOWPEER >& xParentPeer );
+
+//______________________________________________________________________________________________________________
+// private methods
+//______________________________________________________________________________________________________________
+
+private:
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ void impl_createFrame( const UNO3_REFERENCE< UNO3_XWINDOWPEER >& xPeer ,
+ const UNO3_OUSTRING& sURL ,
+ const UNO3_SEQUENCE< UNO3_PROPERTYVALUE >& seqArguments );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ void impl_deleteFrame();
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ static const UNO3_SEQUENCE< UNO3_PROPERTY > impl_getStaticPropertyDescriptor();
+
+
+//______________________________________________________________________________________________________________
+// private variables
+//______________________________________________________________________________________________________________
+
+private:
+
+ UNO3_REFERENCE< UNO3_XFRAME > m_xFrame ;
+ UNO3_OUSTRING m_sComponentURL ;
+ UNO3_SEQUENCE< UNO3_PROPERTYVALUE > m_seqLoaderArguments ;
+ UNO3_OMULTITYPEINTERFACECONTAINERHELPER m_aInterfaceContainer ;
+ UNO3_OCONNECTIONPOINTCONTAINERHELPER m_aConnectionPointContainer ;
+
+}; // class FrameControl
+
+} // namespace unocontrols
+
+#endif // #ifndef _UNOCONTROLS_FRAMECONTROL_CTRL_HXX
diff --git a/UnoControls/source/inc/progressbar.hxx b/UnoControls/source/inc/progressbar.hxx
new file mode 100644
index 000000000000..743d0568f879
--- /dev/null
+++ b/UnoControls/source/inc/progressbar.hxx
@@ -0,0 +1,445 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef _UNOCONTROLS_PROGRESSBAR_CTRL_HXX
+#define _UNOCONTROLS_PROGRESSBAR_CTRL_HXX
+
+//____________________________________________________________________________________________________________
+// includes of other projects
+//____________________________________________________________________________________________________________
+
+#include <com/sun/star/lang/XServiceName.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+
+//____________________________________________________________________________________________________________
+// includes of my own project
+//____________________________________________________________________________________________________________
+#include "basecontrol.hxx"
+
+//____________________________________________________________________________________________________________
+// namespaces
+//____________________________________________________________________________________________________________
+
+namespace unocontrols{
+
+#define UNO3_REFERENCE ::com::sun::star::uno::Reference
+#define UNO3_XMULTISERVICEFACTORY ::com::sun::star::lang::XMultiServiceFactory
+#define UNO3_RUNTIMEEXCEPTION ::com::sun::star::uno::RuntimeException
+#define UNO3_XCONTROLMODEL ::com::sun::star::awt::XControlModel
+#define UNO3_XPROGRESSBAR ::com::sun::star::awt::XProgressBar
+#define UNO3_ANY ::com::sun::star::uno::Any
+#define UNO3_TYPE ::com::sun::star::uno::Type
+#define UNO3_SEQUENCE ::com::sun::star::uno::Sequence
+#define UNO3_XGRAPHICS ::com::sun::star::awt::XGraphics
+#define UNO3_OUSTRING ::rtl::OUString
+#define UNO3_SIZE ::com::sun::star::awt::Size
+
+//____________________________________________________________________________________________________________
+// defines
+//____________________________________________________________________________________________________________
+
+#define SERVICENAME_PROGRESSBAR "com.sun.star.awt.XProgressBar"
+#define IMPLEMENTATIONNAME_PROGRESSBAR "stardiv.UnoControls.ProgressBar"
+#define FREESPACE 4
+#define DEFAULT_HORIZONTAL sal_True
+#define DEFAULT_BLOCKDIMENSION Size(1,1)
+#define DEFAULT_BACKGROUNDCOLOR TRGB_COLORDATA( 0x00, 0xC0, 0xC0, 0xC0 ) // lightgray
+#define DEFAULT_FOREGROUNDCOLOR TRGB_COLORDATA( 0x00, 0x00, 0x00, 0x80 ) // blue
+#define DEFAULT_MINRANGE INT_MIN
+#define DEFAULT_MAXRANGE INT_MAX
+#define DEFAULT_BLOCKVALUE 1
+#define DEFAULT_VALUE DEFAULT_MINRANGE
+#define LINECOLOR_BRIGHT TRGB_COLORDATA( 0x00, 0xFF, 0xFF, 0xFF ) // white
+#define LINECOLOR_SHADOW TRGB_COLORDATA( 0x00, 0x00, 0x00, 0x00 ) // black
+
+//____________________________________________________________________________________________________________
+// classes
+//____________________________________________________________________________________________________________
+
+class ProgressBar : public UNO3_XCONTROLMODEL
+ , public UNO3_XPROGRESSBAR
+ , public BaseControl
+{
+
+//____________________________________________________________________________________________________________
+// public methods
+//____________________________________________________________________________________________________________
+
+public:
+
+ //________________________________________________________________________________________________________
+ // construct/destruct
+ //________________________________________________________________________________________________________
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ ProgressBar( const UNO3_REFERENCE< UNO3_XMULTISERVICEFACTORY >& xFactory );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual ~ProgressBar();
+
+ //__________________________________________________________________________________________________________
+ // XInterface
+ //__________________________________________________________________________________________________________
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual UNO3_ANY SAL_CALL queryInterface( const UNO3_TYPE& aType ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short increment refcount
+ @descr -
+
+ @seealso XInterface
+ @seealso release()
+
+ @param -
+
+ @return -
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual void SAL_CALL acquire() throw();
+
+ /**_______________________________________________________________________________________________________
+ @short decrement refcount
+ @descr -
+
+ @seealso XInterface
+ @seealso acquire()
+
+ @param -
+
+ @return -
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual void SAL_CALL release() throw();
+
+ //__________________________________________________________________________________________________________
+ // XTypeProvider
+ //__________________________________________________________________________________________________________
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual UNO3_SEQUENCE< UNO3_TYPE > SAL_CALL getTypes() throw( UNO3_RUNTIMEEXCEPTION );
+
+ //__________________________________________________________________________________________________________
+ // XAggregation
+ //__________________________________________________________________________________________________________
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ UNO3_ANY SAL_CALL queryAggregation( const UNO3_TYPE& aType ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // XProgressBar
+ //________________________________________________________________________________________________________
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual void SAL_CALL setForegroundColor( sal_Int32 nColor ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual void SAL_CALL setBackgroundColor( sal_Int32 nColor ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual void SAL_CALL setValue( sal_Int32 nValue ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual void SAL_CALL setRange( sal_Int32 nMin ,
+ sal_Int32 nMax ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual sal_Int32 SAL_CALL getValue() throw( UNO3_RUNTIMEEXCEPTION );
+
+ //__________________________________________________________________________________________________________
+ // XWindow
+ //__________________________________________________________________________________________________________
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual void SAL_CALL setPosSize( sal_Int32 nX ,
+ sal_Int32 nY ,
+ sal_Int32 nWidth ,
+ sal_Int32 nHeight ,
+ sal_Int16 nFlags ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ //__________________________________________________________________________________________________________
+ // XControl
+ //__________________________________________________________________________________________________________
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual sal_Bool SAL_CALL setModel( const UNO3_REFERENCE< UNO3_XCONTROLMODEL >& xModel ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual UNO3_REFERENCE< UNO3_XCONTROLMODEL > SAL_CALL getModel() throw( UNO3_RUNTIMEEXCEPTION );
+
+ //__________________________________________________________________________________________________________
+ // BaseControl
+ //__________________________________________________________________________________________________________
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ static const UNO3_SEQUENCE< UNO3_OUSTRING > impl_getStaticSupportedServiceNames();
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ static const UNO3_OUSTRING impl_getStaticImplementationName();
+
+//____________________________________________________________________________________________________________
+// protected methods
+//____________________________________________________________________________________________________________
+
+protected:
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual void impl_paint( sal_Int32 nX ,
+ sal_Int32 nY ,
+ const UNO3_REFERENCE< UNO3_XGRAPHICS >& xGraphics );
+
+ /**_________________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ void impl_recalcRange();
+
+//____________________________________________________________________________________________________________
+// private variables
+//____________________________________________________________________________________________________________
+
+private:
+
+ sal_Bool m_bHorizontal ; // orientation for steps [true=horizontal/false=vertikal]
+ UNO3_SIZE m_aBlockSize ; // width and height of a block [>=0,0]
+ sal_Int32 m_nForegroundColor ; // (alpha,r,g,b)
+ sal_Int32 m_nBackgroundColor ; // (alpha,r,g,b)
+ sal_Int32 m_nMinRange ; // lowest value = 0% [long, <_nMaxRange]
+ sal_Int32 m_nMaxRange ; // highest value = 100% [long, >_nMinRange]
+ double m_nBlockValue ; // value for one block [long, >0]
+ sal_Int32 m_nValue ; // value for progress [long]
+
+}; // class ProgressBar
+
+} // namespace unocontrols
+
+#endif // #ifndef _UNOCONTROLS_PROGRESSBAR_CTRL_HXX
diff --git a/UnoControls/source/inc/progressmonitor.hxx b/UnoControls/source/inc/progressmonitor.hxx
new file mode 100644
index 000000000000..dfb6a1ae9fb9
--- /dev/null
+++ b/UnoControls/source/inc/progressmonitor.hxx
@@ -0,0 +1,805 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef _UNOCONTROLS_PROGRESSMONITOR_CTRL_HXX
+#define _UNOCONTROLS_PROGRESSMONITOR_CTRL_HXX
+
+//____________________________________________________________________________________________________________
+// includes of other projects
+//____________________________________________________________________________________________________________
+
+#include <com/sun/star/awt/XFileDialog.hpp>
+#include <com/sun/star/awt/XTextComponent.hpp>
+#include <com/sun/star/awt/XListBox.hpp>
+#include <com/sun/star/awt/XProgressMonitor.hpp>
+#include <com/sun/star/awt/TextAlign.hpp>
+#include <com/sun/star/awt/XScrollBar.hpp>
+#include <com/sun/star/awt/XVclContainerPeer.hpp>
+#include <com/sun/star/awt/XTabControllerModel.hpp>
+#include <com/sun/star/awt/XMessageBox.hpp>
+#include <com/sun/star/awt/XTextEditField.hpp>
+#include <com/sun/star/awt/Style.hpp>
+#include <com/sun/star/awt/XTimeField.hpp>
+#include <com/sun/star/awt/XVclWindowPeer.hpp>
+#include <com/sun/star/awt/XControlModel.hpp>
+#include <com/sun/star/awt/XSpinField.hpp>
+#include <com/sun/star/awt/XUnoControlContainer.hpp>
+#include <com/sun/star/awt/XTextLayoutConstrains.hpp>
+#include <com/sun/star/awt/XNumericField.hpp>
+#include <com/sun/star/awt/XButton.hpp>
+#include <com/sun/star/awt/XTextArea.hpp>
+#include <com/sun/star/awt/XImageButton.hpp>
+#include <com/sun/star/awt/XFixedText.hpp>
+#include <com/sun/star/awt/XControlContainer.hpp>
+#include <com/sun/star/awt/XDialog.hpp>
+#include <com/sun/star/awt/ScrollBarOrientation.hpp>
+#include <com/sun/star/awt/XRadioButton.hpp>
+#include <com/sun/star/awt/XCurrencyField.hpp>
+#include <com/sun/star/awt/XPatternField.hpp>
+#include <com/sun/star/awt/VclWindowPeerAttribute.hpp>
+#include <com/sun/star/awt/XTabController.hpp>
+#include <com/sun/star/awt/XVclContainer.hpp>
+#include <com/sun/star/awt/XDateField.hpp>
+#include <com/sun/star/awt/XComboBox.hpp>
+#include <com/sun/star/awt/XControl.hpp>
+#include <com/sun/star/awt/XCheckBox.hpp>
+#include <com/sun/star/awt/MessageBoxCommand.hpp>
+#include <com/sun/star/awt/XLayoutConstrains.hpp>
+#include <com/sun/star/awt/XProgressBar.hpp>
+
+//____________________________________________________________________________________________________________
+// includes of my own project
+//____________________________________________________________________________________________________________
+#include "basecontainercontrol.hxx"
+
+//____________________________________________________________________________________________________________
+// namespace
+//____________________________________________________________________________________________________________
+
+namespace unocontrols{
+
+#define UNO3_ANY ::com::sun::star::uno::Any
+#define UNO3_OUSTRING ::rtl::OUString
+#define UNO3_RECTANGLE ::com::sun::star::awt::Rectangle
+#define UNO3_REFERENCE ::com::sun::star::uno::Reference
+#define UNO3_RUNTIMEEXCEPTION ::com::sun::star::uno::RuntimeException
+#define UNO3_SEQUENCE ::com::sun::star::uno::Sequence
+#define UNO3_SIZE ::com::sun::star::awt::Size
+#define UNO3_TYPE ::com::sun::star::uno::Type
+#define UNO3_XACTIONLISTENER ::com::sun::star::awt::XActionListener
+#define UNO3_XBUTTON ::com::sun::star::awt::XButton
+#define UNO3_XCONTROLMODEL ::com::sun::star::awt::XControlModel
+#define UNO3_XFIXEDTEXT ::com::sun::star::awt::XFixedText
+#define UNO3_XGRAPHICS ::com::sun::star::awt::XGraphics
+#define UNO3_XLAYOUTCONSTRAINS ::com::sun::star::awt::XLayoutConstrains
+#define UNO3_XMULTISERVICEFACTORY ::com::sun::star::lang::XMultiServiceFactory
+#define UNO3_XPROGRESSBAR ::com::sun::star::awt::XProgressBar
+#define UNO3_XPROGRESSMONITOR ::com::sun::star::awt::XProgressMonitor
+#define UNO3_XTOOLKIT ::com::sun::star::awt::XToolkit
+#define UNO3_XWINDOWPEER ::com::sun::star::awt::XWindowPeer
+
+//____________________________________________________________________________________________________________
+// defines
+//____________________________________________________________________________________________________________
+
+#define SERVICENAME_PROGRESSMONITOR "com.sun.star.awt.XProgressMonitor"
+#define IMPLEMENTATIONNAME_PROGRESSMONITOR "stardiv.UnoControls.ProgressMonitor"
+#define FREEBORDER 10 // border around and between the controls
+#define WIDTH_RELATION 4 // reserve 1/4 for button width and rest for progressbar width
+#define HEIGHT_RELATION 5 // reserve 1/5 for button and progressbar heigth and rest for text height
+#define FIXEDTEXT_SERVICENAME "com.sun.star.awt.UnoControlFixedText"
+#define BUTTON_SERVICENAME "com.sun.star.awt.UnoControlButton"
+#define FIXEDTEXT_MODELNAME "com.sun.star.awt.UnoControlFixedTextModel"
+#define BUTTON_MODELNAME "com.sun.star.awt.UnoControlButtonModel"
+#define CONTROLNAME_TEXT "Text" // identifier the control in container
+#define CONTROLNAME_BUTTON "Button" // -||-
+#define CONTROLNAME_PROGRESSBAR "ProgressBar" // -||-
+#define DEFAULT_BUTTONLABEL "Abbrechen"
+#define DEFAULT_TOPIC "\0"
+#define DEFAULT_TEXT "\0"
+#define BACKGROUNDCOLOR TRGB_COLORDATA( 0x00, 0xC0, 0xC0, 0xC0 ) // lighgray
+#define LINECOLOR_BRIGHT TRGB_COLORDATA( 0x00, 0xFF, 0xFF, 0xFF ) // white
+#define LINECOLOR_SHADOW TRGB_COLORDATA( 0x00, 0x00, 0x00, 0x00 ) // black
+#define HEIGHT_PROGRESSBAR 15
+// Overwrite defines from basecontrol.hxx!!!
+#undef DEFAULT_WIDTH
+#undef DEFAULT_HEIGHT
+#define DEFAULT_WIDTH 350
+#define DEFAULT_HEIGHT 100
+
+//____________________________________________________________________________________________________________
+// structs, types
+//____________________________________________________________________________________________________________
+
+/// Item of TextList
+struct IMPL_TextlistItem
+{
+ UNO3_OUSTRING sTopic ; /// Left site of textline in dialog
+ UNO3_OUSTRING sText ; /// Right site of textline in dialog
+};
+
+/// Define a list-class for struct IMPL_TextlistItem
+class IMPL_Textlist ;
+DECLARE_LIST( IMPL_Textlist, IMPL_TextlistItem* )
+
+//____________________________________________________________________________________________________________
+// class declaration
+//____________________________________________________________________________________________________________
+
+class ProgressMonitor : public UNO3_XLAYOUTCONSTRAINS
+ , public UNO3_XBUTTON
+ , public UNO3_XPROGRESSMONITOR
+ , public BaseContainerControl
+{
+
+//____________________________________________________________________________________________________________
+// public methods
+//____________________________________________________________________________________________________________
+
+public:
+
+ //________________________________________________________________________________________________________
+ // construct/destruct
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ ProgressMonitor( const UNO3_REFERENCE< UNO3_XMULTISERVICEFACTORY >& xFactory );
+
+ /**_______________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual ~ProgressMonitor();
+
+ //________________________________________________________________________________________________________
+ // XInterface
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short give answer, if interface is supported
+ @descr The interfaces are searched by type.
+
+ @seealso XInterface
+
+ @param "rType" is the type of searched interface.
+
+ @return Any information about found interface
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual UNO3_ANY SAL_CALL queryInterface( const UNO3_TYPE& aType ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short increment refcount
+ @descr -
+
+ @seealso XInterface
+ @seealso release()
+
+ @param -
+
+ @return -
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual void SAL_CALL acquire() throw();
+
+ /**_______________________________________________________________________________________________________
+ @short decrement refcount
+ @descr -
+
+ @seealso XInterface
+ @seealso acquire()
+
+ @param -
+
+ @return -
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual void SAL_CALL release() throw();
+
+ //________________________________________________________________________________________________________
+ // XTypeProvider
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short get information about supported interfaces
+ @descr -
+
+ @seealso XTypeProvider
+
+ @param -
+
+ @return Sequence of types of all supported interfaces
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual UNO3_SEQUENCE< UNO3_TYPE > SAL_CALL getTypes() throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // XAggregation
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_ANY SAL_CALL queryAggregation( const UNO3_TYPE& aType ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // XProgressMonitor
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short add topic to dialog
+ @descr Add a topic with a text in right textlist (used for FixedText-member).<BR>
+ ( "beforeProgress" fix the right list ). The dialog metric is recalculated.
+
+ @seealso removeText(), updateText()
+
+ @param sTopic Name of topic<BR>
+ [sTopic != "" && sTopic != NULL]
+ @param sText Value of topic<BR>
+ [sText != "" && sText != NULL]
+ @param bbeforeProgress Position of topic<BR>
+ [True => before progressbar / False => below progressbar]
+
+ @return -
+
+ @onerror DEBUG = Assertion<BR>
+ RELEASE = nothing
+ */
+
+ virtual void SAL_CALL addText( const UNO3_OUSTRING& sTopic ,
+ const UNO3_OUSTRING& sText ,
+ sal_Bool bbeforeProgress ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL removeText( const UNO3_OUSTRING& sTopic ,
+ sal_Bool bbeforeProgress ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL updateText( const UNO3_OUSTRING& sTopic ,
+ const UNO3_OUSTRING& sText ,
+ sal_Bool bbeforeProgress ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // XProgressBar
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL setForegroundColor( sal_Int32 nColor ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL setBackgroundColor( sal_Int32 nColor ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL setValue( sal_Int32 nValue ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL setRange( sal_Int32 nMin ,
+ sal_Int32 nMax ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual sal_Int32 SAL_CALL getValue() throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // XButton
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL addActionListener( const UNO3_REFERENCE< UNO3_XACTIONLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL removeActionListener( const UNO3_REFERENCE< UNO3_XACTIONLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL setLabel( const UNO3_OUSTRING& sLabel ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL setActionCommand( const UNO3_OUSTRING& sCommand ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // XLayoutConstrains
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_SIZE SAL_CALL getMinimumSize() throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_SIZE SAL_CALL getPreferredSize() throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_SIZE SAL_CALL calcAdjustedSize( const UNO3_SIZE& aNewSize ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // XControl
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL createPeer( const UNO3_REFERENCE< UNO3_XTOOLKIT >& xToolkit ,
+ const UNO3_REFERENCE< UNO3_XWINDOWPEER >& xParent ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual sal_Bool SAL_CALL setModel( const UNO3_REFERENCE< UNO3_XCONTROLMODEL >& xModel ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_REFERENCE< UNO3_XCONTROLMODEL > SAL_CALL getModel() throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // XComponent
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL dispose() throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // XWindow
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL setPosSize( sal_Int32 nX ,
+ sal_Int32 nY ,
+ sal_Int32 nWidth ,
+ sal_Int32 nHeight ,
+ sal_Int16 nFlags ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ //________________________________________________________________________________________________________
+ // BaseControl
+ //________________________________________________________________________________________________________
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ static const UNO3_SEQUENCE< UNO3_OUSTRING > impl_getStaticSupportedServiceNames();
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ static const UNO3_OUSTRING impl_getStaticImplementationName();
+
+//____________________________________________________________________________________________________________
+// protected methods
+//____________________________________________________________________________________________________________
+
+protected:
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void impl_paint( sal_Int32 nX ,
+ sal_Int32 nY ,
+ const UNO3_REFERENCE< UNO3_XGRAPHICS >& xGraphics );
+
+//____________________________________________________________________________________________________________
+// private methods
+//____________________________________________________________________________________________________________
+
+private:
+ using BaseControl::impl_recalcLayout;
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ void impl_recalcLayout();
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ void impl_rebuildFixedText();
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ void impl_cleanMemory();
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ IMPL_TextlistItem* impl_searchTopic( const UNO3_OUSTRING& sTopic ,
+ sal_Bool bbeforeProgress );
+
+//____________________________________________________________________________________________________________
+// debug methods
+//____________________________________________________________________________________________________________
+
+private:
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ #ifdef DBG_UTIL
+
+ sal_Bool impl_debug_checkParameter( const UNO3_OUSTRING& sTopic, const UNO3_OUSTRING& sText, sal_Bool bbeforeProgress ); // addText, updateText
+ sal_Bool impl_debug_checkParameter( const UNO3_OUSTRING& rTopic, sal_Bool bbeforeProgress ); // removeText
+
+ #endif
+//____________________________________________________________________________________________________________
+// private variables
+//____________________________________________________________________________________________________________
+
+private:
+
+ IMPL_Textlist* m_pTextlist_Top ; // Elements before progress
+ UNO3_REFERENCE< UNO3_XFIXEDTEXT > m_xTopic_Top ; // (used, if parameter "beforeProgress"=sal_True in "addText, updateText, removeText")
+ UNO3_REFERENCE< UNO3_XFIXEDTEXT > m_xText_Top ;
+
+ IMPL_Textlist* m_pTextlist_Bottom ; // Elements below of progress
+ UNO3_REFERENCE< UNO3_XFIXEDTEXT > m_xTopic_Bottom ; // (used, if parameter "beforeProgress"=sal_False in "addText, updateText, removeText")
+ UNO3_REFERENCE< UNO3_XFIXEDTEXT > m_xText_Bottom ;
+
+ UNO3_REFERENCE< UNO3_XPROGRESSBAR > m_xProgressBar ;
+ UNO3_REFERENCE< UNO3_XBUTTON > m_xButton ;
+ UNO3_RECTANGLE m_a3DLine ;
+
+}; // class ProgressMonitor
+
+} // namespace unocontrols
+
+#endif // #ifndef _UNOCONTROLS_PROGRESSMONITOR_CTRL_HXX
diff --git a/UnoControls/source/inc/statusindicator.hxx b/UnoControls/source/inc/statusindicator.hxx
new file mode 100644
index 000000000000..3ea07a4e0d0b
--- /dev/null
+++ b/UnoControls/source/inc/statusindicator.hxx
@@ -0,0 +1,580 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef _UNOCONTROLS_STATUSINDICATOR_CTRL_HXX
+#define _UNOCONTROLS_STATUSINDICATOR_CTRL_HXX
+
+//____________________________________________________________________________________________________________
+// includes of other projects
+//____________________________________________________________________________________________________________
+
+#include <com/sun/star/awt/XControlModel.hpp>
+#include <com/sun/star/awt/XFixedText.hpp>
+#include <com/sun/star/awt/XGraphics.hpp>
+#include <com/sun/star/awt/XLayoutConstrains.hpp>
+#include <com/sun/star/awt/XProgressBar.hpp>
+#include <com/sun/star/task/XStatusIndicator.hpp>
+#include <com/sun/star/awt/XToolkit.hpp>
+#include <com/sun/star/awt/XWindowPeer.hpp>
+#include <com/sun/star/lang/XMultiServiceFactory.hpp>
+
+//____________________________________________________________________________________________________________
+// includes of my own project
+//____________________________________________________________________________________________________________
+#include "basecontainercontrol.hxx"
+
+//____________________________________________________________________________________________________________
+// namespace
+//____________________________________________________________________________________________________________
+
+namespace unocontrols{
+
+#define UNO3_ANY ::com::sun::star::uno::Any
+#define UNO3_OUSTRING ::rtl::OUString
+#define UNO3_RECTANGLE ::com::sun::star::awt::Rectangle
+#define UNO3_REFERENCE ::com::sun::star::uno::Reference
+#define UNO3_RUNTIMEEXCEPTION ::com::sun::star::uno::RuntimeException
+#define UNO3_SEQUENCE ::com::sun::star::uno::Sequence
+#define UNO3_SIZE ::com::sun::star::awt::Size
+#define UNO3_TYPE ::com::sun::star::uno::Type
+#define UNO3_XCONTROLMODEL ::com::sun::star::awt::XControlModel
+#define UNO3_XFIXEDTEXT ::com::sun::star::awt::XFixedText
+#define UNO3_XGRAPHICS ::com::sun::star::awt::XGraphics
+#define UNO3_XLAYOUTCONSTRAINS ::com::sun::star::awt::XLayoutConstrains
+#define UNO3_XMULTISERVICEFACTORY ::com::sun::star::lang::XMultiServiceFactory
+#define UNO3_XPROGRESSBAR ::com::sun::star::awt::XProgressBar
+#define UNO3_XSTATUSINDICATOR ::com::sun::star::task::XStatusIndicator
+#define UNO3_XTOOLKIT ::com::sun::star::awt::XToolkit
+#define UNO3_XWINDOWPEER ::com::sun::star::awt::XWindowPeer
+
+//____________________________________________________________________________________________________________
+// defines
+//____________________________________________________________________________________________________________
+
+#define SERVICENAME_STATUSINDICATOR "com.sun.star.task.XStatusIndicator"
+#define IMPLEMENTATIONNAME_STATUSINDICATOR "stardiv.UnoControls.StatusIndicator"
+#undef FREEBORDER
+#define FREEBORDER 5 // border around and between the controls
+#define FIXEDTEXT_SERVICENAME "com.sun.star.awt.UnoControlFixedText"
+#define FIXEDTEXT_MODELNAME "com.sun.star.awt.UnoControlFixedTextModel"
+#define CONTROLNAME_TEXT "Text" // identifier the control in container
+#define CONTROLNAME_PROGRESSBAR "ProgressBar" // -||-
+#define DEFAULT_TEXT "\0"
+#define BACKGROUNDCOLOR TRGB_COLORDATA( 0x00, 0xC0, 0xC0, 0xC0 ) // lighgray
+#define LINECOLOR_BRIGHT TRGB_COLORDATA( 0x00, 0xFF, 0xFF, 0xFF ) // white
+#define LINECOLOR_SHADOW TRGB_COLORDATA( 0x00, 0x00, 0x00, 0x00 ) // black
+// Overwrite defines from basecontrol.hxx!!!
+#undef DEFAULT_WIDTH
+#undef DEFAULT_HEIGHT
+#define DEFAULT_WIDTH 300
+#define DEFAULT_HEIGHT 25
+
+//____________________________________________________________________________________________________________
+// structs, types
+//____________________________________________________________________________________________________________
+
+//____________________________________________________________________________________________________________
+// class declaration
+//____________________________________________________________________________________________________________
+
+class StatusIndicator : public UNO3_XLAYOUTCONSTRAINS
+ , public UNO3_XSTATUSINDICATOR
+ , public BaseContainerControl
+{
+
+ //-------------------------------------------------------------------------------------------------------------
+ // public methods
+ //-------------------------------------------------------------------------------------------------------------
+
+ public:
+
+ //---------------------------------------------------------------------------------------------------------
+ // construct/destruct
+ //---------------------------------------------------------------------------------------------------------
+
+ /**_______________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ StatusIndicator( const UNO3_REFERENCE< UNO3_XMULTISERVICEFACTORY >& xFactory );
+
+ /**_______________________________________________________________________________________________________
+ @short
+ @descr
+
+ @seealso
+
+ @param
+
+ @return
+
+ @onerror
+ */
+
+ virtual ~StatusIndicator();
+
+ //---------------------------------------------------------------------------------------------------------
+ // XInterface
+ //---------------------------------------------------------------------------------------------------------
+
+ /**_______________________________________________________________________________________________________
+ @short give answer, if interface is supported
+ @descr The interfaces are searched by type.
+
+ @seealso XInterface
+
+ @param "rType" is the type of searched interface.
+
+ @return Any information about found interface
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual UNO3_ANY SAL_CALL queryInterface( const UNO3_TYPE& aType ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short increment refcount
+ @descr -
+
+ @seealso XInterface
+ @seealso release()
+
+ @param -
+
+ @return -
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual void SAL_CALL acquire() throw();
+
+ /**_______________________________________________________________________________________________________
+ @short decrement refcount
+ @descr -
+
+ @seealso XInterface
+ @seealso acquire()
+
+ @param -
+
+ @return -
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual void SAL_CALL release() throw();
+
+ //---------------------------------------------------------------------------------------------------------
+ // XTypeProvider
+ //---------------------------------------------------------------------------------------------------------
+
+ /**_______________________________________________________________________________________________________
+ @short get information about supported interfaces
+ @descr -
+
+ @seealso XTypeProvider
+
+ @param -
+
+ @return Sequence of types of all supported interfaces
+
+ @onerror A RuntimeException is thrown.
+ */
+
+ virtual UNO3_SEQUENCE< UNO3_TYPE > SAL_CALL getTypes() throw( UNO3_RUNTIMEEXCEPTION );
+
+ //---------------------------------------------------------------------------------------------------------
+ // XAggregation
+ //---------------------------------------------------------------------------------------------------------
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_ANY SAL_CALL queryAggregation( const UNO3_TYPE& aType ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ //---------------------------------------------------------------------------------------------------------
+ // XStatusIndicator
+ //---------------------------------------------------------------------------------------------------------
+
+ /*-****************************************************************************************************//**
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ *//*-*****************************************************************************************************/
+
+ virtual void SAL_CALL start( const UNO3_OUSTRING& sText ,
+ sal_Int32 nRange ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /*-****************************************************************************************************//**
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ *//*-*****************************************************************************************************/
+
+ virtual void SAL_CALL end() throw( UNO3_RUNTIMEEXCEPTION );
+
+ /*-****************************************************************************************************//**
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ *//*-*****************************************************************************************************/
+
+ virtual void SAL_CALL reset() throw( UNO3_RUNTIMEEXCEPTION );
+
+ /*-****************************************************************************************************//**
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ *//*-*****************************************************************************************************/
+
+ virtual void SAL_CALL setText( const UNO3_OUSTRING& sText ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /*-****************************************************************************************************//**
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ *//*-*****************************************************************************************************/
+
+ virtual void SAL_CALL setValue( sal_Int32 nValue ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ //---------------------------------------------------------------------------------------------------------
+ // XLayoutConstrains
+ //---------------------------------------------------------------------------------------------------------
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_SIZE SAL_CALL getMinimumSize() throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_SIZE SAL_CALL getPreferredSize() throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_SIZE SAL_CALL calcAdjustedSize( const UNO3_SIZE& aNewSize ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ //---------------------------------------------------------------------------------------------------------
+ // XControl
+ //---------------------------------------------------------------------------------------------------------
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL createPeer( const UNO3_REFERENCE< UNO3_XTOOLKIT >& xToolkit ,
+ const UNO3_REFERENCE< UNO3_XWINDOWPEER >& xParent ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual sal_Bool SAL_CALL setModel( const UNO3_REFERENCE< UNO3_XCONTROLMODEL >& xModel ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_REFERENCE< UNO3_XCONTROLMODEL > SAL_CALL getModel() throw( UNO3_RUNTIMEEXCEPTION );
+
+ //---------------------------------------------------------------------------------------------------------
+ // XComponent
+ //---------------------------------------------------------------------------------------------------------
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL dispose() throw( UNO3_RUNTIMEEXCEPTION );
+
+ //---------------------------------------------------------------------------------------------------------
+ // XWindow
+ //---------------------------------------------------------------------------------------------------------
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void SAL_CALL setPosSize( sal_Int32 nX ,
+ sal_Int32 nY ,
+ sal_Int32 nWidth ,
+ sal_Int32 nHeight ,
+ sal_Int16 nFlags ) throw( UNO3_RUNTIMEEXCEPTION );
+
+ //---------------------------------------------------------------------------------------------------------
+ // BaseControl
+ //---------------------------------------------------------------------------------------------------------
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ static const UNO3_SEQUENCE< UNO3_OUSTRING > impl_getStaticSupportedServiceNames();
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ static const UNO3_OUSTRING impl_getStaticImplementationName();
+
+//____________________________________________________________________________________________________________
+// protected methods
+//____________________________________________________________________________________________________________
+
+protected:
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual UNO3_WINDOWDESCRIPTOR* impl_getWindowDescriptor( const UNO3_REFERENCE< UNO3_XWINDOWPEER >& xParentPeer );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void impl_paint ( sal_Int32 nX, sal_Int32 nY, const UNO3_REFERENCE< UNO3_XGRAPHICS > & rGraphics );
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ virtual void impl_recalcLayout( const UNO3_WINDOWEVENT& aEvent );
+
+//____________________________________________________________________________________________________________
+// debug methods
+//____________________________________________________________________________________________________________
+
+private:
+
+ /**_______________________________________________________________________________________________________
+ @short -
+ @descr -
+
+ @seealso -
+
+ @param -
+
+ @return -
+
+ @onerror -
+ */
+
+ #if OSL_DEBUG_LEVEL > 1
+
+ #endif
+
+//____________________________________________________________________________________________________________
+// private variables
+//____________________________________________________________________________________________________________
+
+private:
+
+ UNO3_REFERENCE< UNO3_XFIXEDTEXT > m_xText ;
+ UNO3_REFERENCE< UNO3_XPROGRESSBAR > m_xProgressBar ;
+
+}; // class StatusIndicator
+
+} // namespace unocontrols
+
+#endif // #ifndef _UNOCONTROLS_STATUSINDICATOR_CTRL_HXX
diff --git a/UnoControls/util/ctl.component b/UnoControls/util/ctl.component
new file mode 100644
index 000000000000..32901f529c8b
--- /dev/null
+++ b/UnoControls/util/ctl.component
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--**********************************************************************
+*
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+*
+* Copyright 2000, 2010 Oracle and/or its affiliates.
+*
+* OpenOffice.org - a multi-platform office productivity suite
+*
+* This file is part of OpenOffice.org.
+*
+* OpenOffice.org is free software: you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License version 3
+* only, as published by the Free Software Foundation.
+*
+* OpenOffice.org is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU Lesser General Public License version 3 for more details
+* (a copy is included in the LICENSE file that accompanied this code).
+*
+* You should have received a copy of the GNU Lesser General Public License
+* version 3 along with OpenOffice.org. If not, see
+* <http://www.openoffice.org/license.html>
+* for a copy of the LGPLv3 License.
+*
+**********************************************************************-->
+
+<component loader="com.sun.star.loader.SharedLibrary"
+ xmlns="http://openoffice.org/2010/uno-components">
+ <implementation name="stardiv.UnoControls.FrameControl">
+ <service name="com.sun.star.frame.FrameControl"/>
+ </implementation>
+ <implementation name="stardiv.UnoControls.ProgressBar">
+ <service name="com.sun.star.awt.XProgressBar"/>
+ </implementation>
+ <implementation name="stardiv.UnoControls.ProgressMonitor">
+ <service name="com.sun.star.awt.XProgressMonitor"/>
+ </implementation>
+ <implementation name="stardiv.UnoControls.StatusIndicator">
+ <service name="com.sun.star.task.XStatusIndicator"/>
+ </implementation>
+</component>
diff --git a/UnoControls/util/makefile.mk b/UnoControls/util/makefile.mk
new file mode 100644
index 000000000000..73617d24452c
--- /dev/null
+++ b/UnoControls/util/makefile.mk
@@ -0,0 +1,69 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJ=..
+
+PRJNAME=UnoControls
+TARGET=ctl
+LIBTARGET=NO
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : $(PRJ)$/util$/makefile.pmk
+
+# --- Files --------------------------------------------------------
+
+LIB1TARGET= $(SLB)$/$(TARGET).lib
+LIB1FILES= $(SLB)$/base.lib \
+ $(SLB)$/controls.lib
+
+SHL1TARGET= $(TARGET)$(DLLPOSTFIX)
+SHL1IMPLIB= i$(TARGET)
+
+SHL1VERSIONMAP=$(SOLARENV)/src/component.map
+SHL1DEF=$(MISC)$/$(SHL1TARGET).def
+DEF1NAME=$(SHL1TARGET)
+
+SHL1STDLIBS= \
+ $(TOOLSLIB) \
+ $(CPPUHELPERLIB) \
+ $(CPPULIB) \
+ $(SALLIB)
+
+SHL1DEPN= makefile.mk
+SHL1LIBS= $(LIB1TARGET)
+
+# --- Targets ------------------------------------------------------
+.INCLUDE : target.mk
+
+ALLTAR : $(MISC)/ctl.component
+
+$(MISC)/ctl.component .ERRREMOVE : $(SOLARENV)/bin/createcomponent.xslt \
+ ctl.component
+ $(XSLTPROC) --nonet --stringparam uri \
+ '$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o $@ \
+ $(SOLARENV)/bin/createcomponent.xslt ctl.component
diff --git a/UnoControls/util/makefile.pmk b/UnoControls/util/makefile.pmk
new file mode 100644
index 000000000000..02a34a2434a1
--- /dev/null
+++ b/UnoControls/util/makefile.pmk
@@ -0,0 +1,27 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+.INCLUDE : settings.mk
diff --git a/UnoControls/util/target.pmk b/UnoControls/util/target.pmk
new file mode 100644
index 000000000000..c7c1de9c2563
--- /dev/null
+++ b/UnoControls/util/target.pmk
@@ -0,0 +1,35 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+ALLSLO: $(SLOFILES)
+
+SOSHL: $(SHL1TARGETN)
+
+WHOLEPRJ:
+ cd $(PRJ)$/prj
+ make debug linkinc prjpch compinc
+ @echo "READY"
+
diff --git a/accessibility/bridge/org/openoffice/accessibility/AccessBridge.java b/accessibility/bridge/org/openoffice/accessibility/AccessBridge.java
new file mode 100755
index 000000000000..ec479fb3949d
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/accessibility/AccessBridge.java
@@ -0,0 +1,245 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+package org.openoffice.accessibility;
+
+import com.sun.star.accessibility.AccessibleRole;
+import com.sun.star.accessibility.XAccessible;
+import com.sun.star.accessibility.XAccessibleContext;
+import com.sun.star.awt.XExtendedToolkit;
+import com.sun.star.awt.XTopWindow;
+import com.sun.star.awt.XTopWindowListener;
+import com.sun.star.awt.XWindow;
+import com.sun.star.comp.loader.FactoryHelper;
+import com.sun.star.lang.XComponent;
+import com.sun.star.lang.XInitialization;
+import com.sun.star.lang.XMultiServiceFactory;
+import com.sun.star.lang.XSingleServiceFactory;
+import com.sun.star.registry.*;
+import com.sun.star.uno.*;
+
+import org.openoffice.java.accessibility.*;
+
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+
+import javax.accessibility.Accessible;
+
+
+public class AccessBridge {
+ //
+ protected static java.util.Hashtable topWindowMap = new java.util.Hashtable();
+
+ private static java.awt.Window getTopWindowImpl(XAccessible xAccessible) {
+ // Because it can not be garantied that
+ // WindowsAccessBridgeAdapter.registerTopWindow() is called
+ // before windowOpened(), we have to make this operation
+ // atomic.
+ synchronized (topWindowMap) {
+ String oid = UnoRuntime.generateOid(xAccessible);
+ java.awt.Window w = (java.awt.Window) topWindowMap.get(oid);
+
+ if (w == null) {
+ w = AccessibleObjectFactory.getTopWindow(xAccessible);
+
+ if (w != null) {
+ topWindowMap.put(oid, w);
+ }
+ }
+
+ return w;
+ }
+ }
+
+ protected static java.awt.Window getTopWindow(XAccessible xAccessible) {
+ if (xAccessible != null) {
+ XAccessibleContext xAccessibleContext = xAccessible.getAccessibleContext();
+ if (xAccessibleContext != null) {
+
+ // Toolkit reports the VCL peer windows as toplevels. These have an
+ // accessible parent which represents the native frame window
+ switch(xAccessibleContext.getAccessibleRole()) {
+ case AccessibleRole.ROOT_PANE:
+ case AccessibleRole.POPUP_MENU:
+ return getTopWindow(xAccessibleContext.getAccessibleParent());
+
+ case AccessibleRole.WINDOW:
+ case AccessibleRole.FRAME:
+ case AccessibleRole.DIALOG:
+ case AccessibleRole.ALERT:
+ return getTopWindowImpl(xAccessible);
+
+ default:
+ break;
+ }
+ }
+ }
+
+ return null;
+ }
+
+ protected static java.awt.Window removeTopWindow(XAccessible xAccessible) {
+ if (xAccessible != null) {
+ XAccessibleContext xAccessibleContext = xAccessible.getAccessibleContext();
+ if (xAccessibleContext != null) {
+
+ // Toolkit reports the VCL peer windows as toplevels. These have an
+ // accessible parent which represents the native frame window
+ switch(xAccessibleContext.getAccessibleRole()) {
+ case AccessibleRole.ROOT_PANE:
+ case AccessibleRole.POPUP_MENU:
+ return removeTopWindow(xAccessibleContext.getAccessibleParent());
+
+ case AccessibleRole.WINDOW:
+ case AccessibleRole.FRAME:
+ case AccessibleRole.DIALOG:
+ return (java.awt.Window) topWindowMap.remove(UnoRuntime.generateOid(xAccessible));
+
+ default:
+ break;
+ }
+ }
+ }
+
+ return null;
+ }
+
+ public static XSingleServiceFactory __getServiceFactory(String implName,
+ XMultiServiceFactory multiFactory, XRegistryKey regKey) {
+ XSingleServiceFactory xSingleServiceFactory = null;
+
+ if (implName.equals(AccessBridge.class.getName())) {
+ // Initialize toolkit to register at Java <-> Windows access bridge
+ java.awt.Toolkit tk = java.awt.Toolkit.getDefaultToolkit();
+
+ xSingleServiceFactory = FactoryHelper.getServiceFactory(_AccessBridge.class,
+ _AccessBridge._serviceName, multiFactory, regKey);
+ }
+
+ return xSingleServiceFactory;
+ }
+
+ static public class _AccessBridge implements XTopWindowListener,
+ XInitialization, XComponent {
+ static final String _serviceName = "com.sun.star.accessibility.AccessBridge";
+ XComponentContext xComponentContext;
+
+ public _AccessBridge(XComponentContext xComponentContext) {
+ this.xComponentContext = xComponentContext;
+ }
+
+ /*
+ * XInitialization
+ */
+ public void initialize(java.lang.Object[] arguments) {
+ try {
+ // FIXME: Currently there is no way to determine if key event forwarding is needed or not,
+ // so we have to do it always ..
+ XExtendedToolkit unoToolkit = (XExtendedToolkit) AnyConverter.toObject(new Type(
+ XExtendedToolkit.class), arguments[0]);
+
+ if (unoToolkit != null) {
+ // FIXME this should be done in VCL
+ unoToolkit.addTopWindowListener(this);
+
+ String os = (String) System.getProperty("os.name");
+
+ // Try to initialize the WindowsAccessBridgeAdapter
+ if (os.startsWith("Windows")) {
+ WindowsAccessBridgeAdapter.attach(xComponentContext);
+ } else {
+ unoToolkit.addKeyHandler(new KeyHandler());
+ }
+ } else if (Build.DEBUG) {
+ System.err.println(
+ "argument 0 is not of type XExtendedToolkit.");
+ }
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ // FIXME: output
+ }
+ }
+
+ /*
+ * XTopWindowListener
+ */
+ public void windowOpened(com.sun.star.lang.EventObject event) {
+ XAccessible xAccessible = (XAccessible) UnoRuntime.queryInterface(XAccessible.class,
+ event.Source);
+ java.awt.Window w = getTopWindow(xAccessible);
+ }
+
+ public void windowActivated(com.sun.star.lang.EventObject event) {
+ }
+
+ public void windowDeactivated(com.sun.star.lang.EventObject event) {
+ }
+
+ public void windowMinimized(com.sun.star.lang.EventObject event) {
+ }
+
+ public void windowNormalized(com.sun.star.lang.EventObject event) {
+ }
+
+ public void windowClosing(com.sun.star.lang.EventObject event) {
+ }
+
+ public void windowClosed(com.sun.star.lang.EventObject event) {
+ XAccessible xAccessible = (XAccessible) UnoRuntime.queryInterface(XAccessible.class,
+ event.Source);
+
+ java.awt.Window w = removeTopWindow(xAccessible);
+
+ if (w != null) {
+ w.dispose();
+ }
+ }
+
+ public void disposing(com.sun.star.lang.EventObject event) {
+ }
+
+ /*
+ * XComponent
+ */
+
+ public void addEventListener(com.sun.star.lang.XEventListener listener) {
+ }
+
+ public void removeEventListener(com.sun.star.lang.XEventListener listener) {
+ }
+
+ public void dispose() {
+ try {
+ java.awt.Toolkit.getDefaultToolkit().getSystemEventQueue().invokeAndWait(
+ new Runnable() {
+ public void run() {
+ }
+ } );
+ } catch (java.lang.InterruptedException e) {
+ } catch (java.lang.reflect.InvocationTargetException e) {
+ }
+ }
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/accessibility/KeyHandler.java b/accessibility/bridge/org/openoffice/accessibility/KeyHandler.java
new file mode 100755
index 000000000000..1e9f2f6520ae
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/accessibility/KeyHandler.java
@@ -0,0 +1,138 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+
+package org.openoffice.accessibility;
+
+import com.sun.star.uno.UnoRuntime;
+import com.sun.star.awt.XKeyHandler;
+import org.openoffice.java.accessibility.AccessibleKeyBinding;
+import org.openoffice.java.accessibility.Build;
+
+import java.awt.*;
+import java.awt.event.KeyEvent;
+import javax.accessibility.*;
+
+public class KeyHandler extends Component implements XKeyHandler, java.awt.KeyEventDispatcher {
+ EventQueue eventQueue;
+
+ public class VCLKeyEvent extends KeyEvent implements Runnable {
+ boolean consumed = true;
+
+ public VCLKeyEvent(Component c, int id, int modifiers, int keyCode, char keyChar) {
+ super(c, id, System.currentTimeMillis(), modifiers, keyCode, keyChar);
+ }
+
+ public void run() {
+ // This is a no-op ..
+ }
+
+ public void setConsumed(boolean b) {
+ consumed = b;
+ }
+
+ public boolean isConsumed() {
+ return consumed;
+ }
+ }
+
+ public KeyHandler() {
+ eventQueue = Toolkit.getDefaultToolkit().getSystemEventQueue();
+ java.awt.KeyboardFocusManager.getCurrentKeyboardFocusManager().addKeyEventDispatcher(this);
+ }
+
+ /** This method is called by the current KeyboardFocusManager requesting that this KeyEventDispatcher
+ * dispatch the specified event on its behalf
+ */
+ public boolean dispatchKeyEvent(java.awt.event.KeyEvent e) {
+ if (e instanceof VCLKeyEvent) {
+ VCLKeyEvent event = (VCLKeyEvent) e;
+ event.setConsumed(false);
+ return true;
+ }
+ return false;
+ }
+
+ /** Handler for KeyPressed events */
+ public boolean keyPressed(com.sun.star.awt.KeyEvent event) {
+// try {
+ VCLKeyEvent vke = new VCLKeyEvent(this, KeyEvent.KEY_PRESSED,
+ AccessibleKeyBinding.convertModifiers(event.Modifiers),
+ AccessibleKeyBinding.convertKeyCode(event.KeyCode),
+ event.KeyChar != 0 ? event.KeyChar : KeyEvent.CHAR_UNDEFINED);
+
+ eventQueue.postEvent(vke);
+
+ // VCL events for TABs have empty KeyChar
+ if (event.KeyCode == com.sun.star.awt.Key.TAB ) {
+ event.KeyChar = '\t';
+ }
+
+ // Synthesize KEY_TYPED event to emulate Java behavior
+ if (event.KeyChar != 0) {
+ eventQueue.postEvent(new VCLKeyEvent(this,
+ KeyEvent.KEY_TYPED,
+ AccessibleKeyBinding.convertModifiers(event.Modifiers),
+ KeyEvent.VK_UNDEFINED,
+ event.KeyChar));
+ }
+
+ // Wait until the key event is processed
+ return false;
+// eventQueue.invokeAndWait(vke);
+// return vke.isConsumed();
+// } catch(java.lang.InterruptedException e) {
+// return false;
+// } catch(java.lang.reflect.InvocationTargetException e) {
+// return false;
+// }
+ }
+
+ /** Handler for KeyReleased events */
+ public boolean keyReleased(com.sun.star.awt.KeyEvent event) {
+// try {
+ VCLKeyEvent vke = new VCLKeyEvent(this, KeyEvent.KEY_RELEASED,
+ AccessibleKeyBinding.convertModifiers(event.Modifiers),
+ AccessibleKeyBinding.convertKeyCode(event.KeyCode),
+ event.KeyChar != 0 ? event.KeyChar : KeyEvent.CHAR_UNDEFINED);
+ eventQueue.postEvent(vke);
+
+ // Wait until the key event is processed
+ return false;
+// eventQueue.invokeAndWait(vke);
+// return vke.isConsumed();
+// } catch(java.lang.InterruptedException e) {
+// return false;
+// } catch(java.lang.reflect.InvocationTargetException e) {
+// return false;
+// }
+ }
+
+ public void disposing(com.sun.star.lang.EventObject event) {
+ java.awt.KeyboardFocusManager.getCurrentKeyboardFocusManager().removeKeyEventDispatcher(this);
+ }
+};
diff --git a/accessibility/bridge/org/openoffice/accessibility/PopupWindow.java b/accessibility/bridge/org/openoffice/accessibility/PopupWindow.java
new file mode 100644
index 000000000000..a63b0589b4fa
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/accessibility/PopupWindow.java
@@ -0,0 +1,210 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+package org.openoffice.accessibility;
+
+import org.openoffice.java.accessibility.*;
+
+
+/**
+ *
+ */
+public class PopupWindow extends java.awt.Window {
+ javax.accessibility.AccessibleContext accessibleContext = null;
+ ContainerProxy layeredPane = new ContainerProxy(javax.accessibility.AccessibleRole.LAYERED_PANE);
+ ContainerProxy rootPane = new ContainerProxy(javax.accessibility.AccessibleRole.ROOT_PANE);
+ ContainerProxy popupLayer = new ContainerProxy(javax.accessibility.AccessibleRole.PANEL);
+ boolean opened = false;
+ boolean visible = false;
+
+ /** Creates a new instance of PopupWindow */
+ public PopupWindow(java.awt.Window owner) {
+ super(owner);
+ super.add(rootPane);
+ rootPane.add(layeredPane);
+
+ javax.accessibility.AccessibleContext ac = rootPane.getAccessibleContext();
+
+ if (ac != null) {
+ ac.setAccessibleParent(this);
+ }
+ }
+
+ static PopupWindow create(
+ com.sun.star.accessibility.XAccessible xAccessible) {
+ java.awt.Window parent = java.awt.KeyboardFocusManager.getCurrentKeyboardFocusManager()
+ .getActiveWindow();
+
+ if (parent != null) {
+ PopupWindow w = new PopupWindow(parent);
+ w.setVisible(true);
+ AccessibleObjectFactory.invokeAndWait();
+ AccessibleObjectFactory.addChild(w, xAccessible);
+
+ return w;
+ }
+
+ return null;
+ }
+
+ public boolean isShowing() {
+ if (isVisible()) {
+ java.awt.Container parent = getParent();
+
+ return (parent == null) || parent.isShowing();
+ }
+
+ return false;
+ }
+
+ public void addNotify() {
+ }
+
+ public void removeNotify() {
+ }
+
+ public boolean isVisible() {
+ return visible;
+ }
+
+ public void setVisible(boolean b) {
+ if (visible != b) {
+ visible = b;
+
+ if (b) {
+ // If it is the first show, fire WINDOW_OPENED event
+ if (!opened) {
+ AccessibleObjectFactory.postWindowOpened(this);
+ opened = true;
+ }
+ }
+ }
+ }
+
+ public java.awt.Component add(java.awt.Component c) {
+ popupLayer.add(c);
+ layeredPane.add(popupLayer);
+
+ if (c instanceof javax.accessibility.Accessible) {
+ javax.accessibility.AccessibleContext ac = layeredPane.getAccessibleContext();
+
+ if (ac != null) {
+ ac.firePropertyChange(ac.ACCESSIBLE_CHILD_PROPERTY, null,
+ popupLayer.getAccessibleContext());
+ }
+ }
+
+ return c;
+ }
+
+ public void remove(java.awt.Component c) {
+ layeredPane.remove(popupLayer);
+
+ if (c instanceof javax.accessibility.Accessible) {
+ javax.accessibility.AccessibleContext ac = layeredPane.getAccessibleContext();
+
+ if (ac != null) {
+ ac.firePropertyChange(ac.ACCESSIBLE_CHILD_PROPERTY,
+ popupLayer.getAccessibleContext(), null);
+ }
+ }
+
+ popupLayer.remove(c);
+ }
+
+ public void dispose() {
+ setVisible(false);
+ AccessibleObjectFactory.postWindowClosed(this);
+ }
+
+ public javax.accessibility.AccessibleContext getAccessibleContext() {
+ if (accessibleContext == null) {
+ accessibleContext = new AccessiblePopupWindow();
+ }
+
+ return accessibleContext;
+ }
+
+ protected class AccessiblePopupWindow
+ extends java.awt.Window.AccessibleAWTWindow {
+ AccessiblePopupWindow() {
+ }
+ }
+
+ protected class ContainerProxy extends java.awt.Container
+ implements javax.accessibility.Accessible {
+ javax.accessibility.AccessibleContext accessibleContext = null;
+ javax.accessibility.AccessibleRole role;
+
+ protected ContainerProxy(javax.accessibility.AccessibleRole role) {
+ this.role = role;
+ }
+
+ public java.awt.Component add(java.awt.Component c) {
+ if (c instanceof javax.accessibility.Accessible) {
+ javax.accessibility.Accessible a = (javax.accessibility.Accessible) c;
+ javax.accessibility.AccessibleContext ac = a.getAccessibleContext();
+
+ if (ac != null) {
+ ac.setAccessibleParent(this);
+ }
+ }
+
+ return super.add(c);
+ }
+
+ public void remove(java.awt.Component c) {
+ if (c instanceof javax.accessibility.Accessible) {
+ javax.accessibility.Accessible a = (javax.accessibility.Accessible) c;
+ javax.accessibility.AccessibleContext ac = a.getAccessibleContext();
+
+ if (ac != null) {
+ ac.setAccessibleParent(null);
+ }
+ }
+
+ super.remove(c);
+ }
+
+ public javax.accessibility.AccessibleContext getAccessibleContext() {
+ if (accessibleContext == null) {
+ accessibleContext = new AccessibleContainerProxy();
+ }
+
+ return accessibleContext;
+ }
+
+ private class AccessibleContainerProxy
+ extends java.awt.Container.AccessibleAWTContainer {
+ AccessibleContainerProxy() {
+ }
+
+ public javax.accessibility.AccessibleRole getAccessibleRole() {
+ return ContainerProxy.this.role;
+ }
+ }
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/accessibility/WindowsAccessBridgeAdapter.java b/accessibility/bridge/org/openoffice/accessibility/WindowsAccessBridgeAdapter.java
new file mode 100644
index 000000000000..28e58940867d
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/accessibility/WindowsAccessBridgeAdapter.java
@@ -0,0 +1,654 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+package org.openoffice.accessibility;
+
+import com.sun.star.accessibility.AccessibleRole;
+import com.sun.star.accessibility.XAccessible;
+import com.sun.star.accessibility.XAccessibleContext;
+import com.sun.star.java.XJavaVM;
+import com.sun.star.uno.*;
+
+import org.openoffice.java.accessibility.*;
+
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+
+import javax.accessibility.*;
+
+
+public class WindowsAccessBridgeAdapter {
+ private static Method registerVirtualFrame;
+ private static Method revokeVirtualFrame;
+ private static java.util.Hashtable frameMap;
+
+ protected static native byte[] getProcessID();
+
+ protected static native boolean createMapping(long jvmaccess);
+
+ // On Windows all native frames must be registered to the access bridge.
+ // Therefor the bridge exports two methods that we try to find here.
+ protected static void attach(XComponentContext xComponentContext) {
+ try {
+ Class bridge = Class.forName(
+ "com.sun.java.accessibility.AccessBridge");
+ Class[] parameterTypes = {
+ javax.accessibility.Accessible.class, Integer.class
+ };
+
+ if (bridge != null) {
+ registerVirtualFrame = bridge.getMethod("registerVirtualFrame",
+ parameterTypes);
+ revokeVirtualFrame = bridge.getMethod("revokeVirtualFrame",
+ parameterTypes);
+
+ // load the native dll
+ System.loadLibrary("java_uno_accessbridge");
+
+ Object any = xComponentContext.getValueByName(
+ "/singletons/com.sun.star.java.theJavaVirtualMachine");
+
+ if (AnyConverter.isObject(any)) {
+ XJavaVM xJavaVM = (XJavaVM) UnoRuntime.queryInterface(XJavaVM.class,
+ AnyConverter.toObject(new Type(XJavaVM.class), any));
+
+ if (xJavaVM != null) {
+ any = xJavaVM.getJavaVM(getProcessID());
+
+ if (AnyConverter.isLong(any)) {
+ createMapping(AnyConverter.toLong(any));
+ frameMap = new java.util.Hashtable();
+ }
+ }
+ }
+ }
+ } catch (NoSuchMethodException e) {
+ System.err.println("ERROR: incompatible AccessBridge found: " +
+ e.getMessage());
+
+ // Forward this exception to UNO to indicate that the service will
+ // not work correctly.
+ throw new com.sun.star.uno.RuntimeException(
+ "incompatible AccessBridge class: " + e.getMessage());
+ } catch (java.lang.SecurityException e) {
+ System.err.println("ERROR: no access to AccessBridge: " +
+ e.getMessage());
+
+ // Forward this exception to UNO to indicate that the service will not work correctly.
+ throw new com.sun.star.uno.RuntimeException(
+ "Security exception caught: " + e.getMessage());
+ } catch (ClassNotFoundException e) {
+ // Forward this exception to UNO to indicate that the service will not work correctly.
+ throw new com.sun.star.uno.RuntimeException(
+ "ClassNotFound exception caught: " + e.getMessage());
+ } catch (IllegalArgumentException e) {
+ System.err.println("IllegalArgumentException caught: " +
+ e.getMessage());
+
+ // Forward this exception to UNO to indicate that the service will not work correctly.
+ throw new com.sun.star.uno.RuntimeException(
+ "IllegalArgumentException caught: " + e.getMessage());
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ System.err.println("UNO IllegalArgumentException caught: " +
+ e.getMessage());
+
+ // Forward this exception to UNO to indicate that the service will not work correctly.
+ throw new com.sun.star.uno.RuntimeException(
+ "UNO IllegalArgumentException caught: " + e.getMessage());
+ }
+ }
+
+ protected static boolean isAttached() {
+ return frameMap != null;
+ }
+
+ protected static Accessible getAccessibleWrapper(XAccessible xAccessible) {
+ Accessible a = null;
+
+ try {
+ XAccessibleContext xAccessibleContext = xAccessible.getAccessibleContext();
+
+ if (xAccessibleContext != null) {
+ switch (xAccessibleContext.getAccessibleRole()) {
+ case AccessibleRole.LIST:
+ a = (Accessible) AccessibleObjectFactory.getAccessibleComponent(xAccessible);
+ if (a != null) {
+ a = new ListProxy(a.getAccessibleContext());
+ }
+ break;
+
+ case AccessibleRole.MENU:
+
+ Accessible tmp = (Accessible) AccessibleObjectFactory.getAccessibleComponent(xAccessible);
+ if (tmp != null) {
+ AccessibleContext ac = tmp.getAccessibleContext();
+
+ if (ac != null) {
+ a = new PopupMenuProxy(ac);
+ }
+ }
+
+ break;
+
+ case AccessibleRole.TOOL_TIP:
+ a = PopupWindow.create(xAccessible);
+ break;
+
+ default:
+ a = (Accessible) AccessBridge.getTopWindow(xAccessible);
+ break;
+ }
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+
+ return a;
+ }
+
+ /** Registers a native frame at the Java AccessBridge for Windows */
+ public static void registerTopWindow(int handle, XAccessible xAccessible) {
+ Integer hwnd = new Integer(handle);
+
+ if (!frameMap.contains(hwnd)) {
+ if (Build.DEBUG) {
+ System.err.println("Native frame " + hwnd + " of role " +
+ AccessibleRoleAdapter.getAccessibleRole(xAccessible) +
+ " has been opened");
+ }
+
+ Accessible a = getAccessibleWrapper(xAccessible);
+
+ if (a != null) {
+ Object[] args = { a, hwnd };
+
+ frameMap.put(hwnd, a);
+
+ if (Build.DEBUG) {
+ System.err.println("registering native frame " + hwnd);
+ }
+
+ try {
+ registerVirtualFrame.invoke(null, args);
+ } catch (IllegalAccessException e) {
+ System.err.println("IllegalAccessException caught: " +
+ e.getMessage());
+ } catch (IllegalArgumentException e) {
+ System.err.println("IllegalArgumentException caught: " +
+ e.getMessage());
+ } catch (InvocationTargetException e) {
+ System.err.println("InvokationTargetException caught: " +
+ e.getMessage());
+ }
+ }
+ }
+ }
+
+ /** Revokes a native frame at the Java AccessBridge for Windows */
+ public static void revokeTopWindow(int handle, XAccessible xAccessible) {
+ Integer hwnd = new Integer(handle);
+
+ Accessible a = (Accessible) frameMap.remove(hwnd);
+
+ if (a != null) {
+ Object[] args = { a, hwnd };
+
+ if (Build.DEBUG) {
+ System.err.println("revoking native frame " + hwnd);
+ }
+
+ try {
+ revokeVirtualFrame.invoke(null, args);
+ } catch (IllegalAccessException e) {
+ System.err.println("IllegalAccessException caught: " +
+ e.getMessage());
+ } catch (IllegalArgumentException e) {
+ System.err.println("IllegalArgumentException caught: " +
+ e.getMessage());
+ } catch (InvocationTargetException e) {
+ System.err.println("InvokationTargetException caught: " +
+ e.getMessage());
+ }
+ }
+
+ if (a instanceof PopupWindow) {
+ PopupWindow toolTipWindow = (PopupWindow) a;
+ toolTipWindow.removeAll();
+ toolTipWindow.dispose();
+ }
+ }
+
+ protected static class PopupMenuProxy extends AccessibleContext
+ implements Accessible, AccessibleComponent {
+ AccessibleContext menu;
+ AccessibleComponent menuComponent;
+ int x = 0; int y = 0; int width = 0; int height = 0;
+
+ PopupMenuProxy(AccessibleContext ac) {
+ menu = ac;
+ menuComponent = menu.getAccessibleComponent();
+
+ /** calculate the bounding rectangle by iterating over the
+ * the children.
+ */
+ int x2 = 0; int y2 = 0;
+ int count = ac.getAccessibleChildrenCount();
+ for (int i = 0; i < count; i++) {
+ Accessible a = menu.getAccessibleChild(i);
+
+ if (a != null) {
+ AccessibleContext childAC = a.getAccessibleContext();
+
+ if (childAC != null) {
+ AccessibleComponent comp = ac.getAccessibleComponent();
+
+ if (comp != null) {
+ java.awt.Point p = comp.getLocationOnScreen();
+ java.awt.Dimension d = comp.getSize();
+
+ if (p != null && d != null) {
+ if (p.x < x) {
+ x = p.x;
+ }
+ if (p.y < y) {
+ y = p.y;
+ }
+ if (p.x + d.width > x2) {
+ x2 = p.x + d.width;
+ }
+ if (p.y + d.height > y2) {
+ y2 = p.y + d.height;
+ }
+ }
+ }
+ }
+ }
+ }
+
+ width = x2 - x;
+ height = y2 - y;
+ }
+
+ /** Returns the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext getAccessibleContext() {
+ return this;
+ }
+
+ /** Returns the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleComponent getAccessibleComponent() {
+ return this;
+ }
+
+ /** Returns the AccessibleText associated with this object */
+ public javax.accessibility.AccessibleText getAccessibleText() {
+ return menu.getAccessibleText();
+ }
+
+ /** Returns the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleStateSet getAccessibleStateSet() {
+ return menu.getAccessibleStateSet();
+ }
+
+ public java.util.Locale getLocale() {
+ return menu.getLocale();
+ }
+
+ public int getAccessibleIndexInParent() {
+ return -1;
+ }
+
+ public int getAccessibleChildrenCount() {
+ return menu.getAccessibleChildrenCount();
+ }
+
+ public javax.accessibility.Accessible getAccessibleChild(int i) {
+ return menu.getAccessibleChild(i);
+ }
+
+ public javax.accessibility.AccessibleRole getAccessibleRole() {
+ return javax.accessibility.AccessibleRole.POPUP_MENU;
+ }
+
+ /*
+ * AccessibleComponent
+ */
+ public void addFocusListener(java.awt.event.FocusListener fl) {
+ menuComponent.addFocusListener(fl);
+ }
+
+ public void removeFocusListener(java.awt.event.FocusListener fl) {
+ menuComponent.removeFocusListener(fl);
+ }
+
+ /** Returns the background color of the object */
+ public java.awt.Color getBackground() {
+ return menuComponent.getBackground();
+ }
+
+ public void setBackground(java.awt.Color c) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Returns the foreground color of the object */
+ public java.awt.Color getForeground() {
+ return menuComponent.getForeground();
+ }
+
+ public void setForeground(java.awt.Color c) {
+ menuComponent.setForeground(c);
+ }
+
+ public java.awt.Cursor getCursor() {
+ return menuComponent.getCursor();
+ }
+
+ public void setCursor(java.awt.Cursor cursor) {
+ menuComponent.setCursor(cursor);
+ }
+
+ public java.awt.Font getFont() {
+ return menuComponent.getFont();
+ }
+
+ public void setFont(java.awt.Font f) {
+ menuComponent.setFont(f);
+ }
+
+ public java.awt.FontMetrics getFontMetrics(java.awt.Font f) {
+ return menuComponent.getFontMetrics(f);
+ }
+
+ public boolean isEnabled() {
+ return menuComponent.isEnabled();
+ }
+
+ public void setEnabled(boolean b) {
+ menuComponent.setEnabled(b);
+ }
+
+ public boolean isVisible() {
+ return menuComponent.isVisible();
+ }
+
+ public void setVisible(boolean b) {
+ menuComponent.setVisible(b);
+ }
+
+ public boolean isShowing() {
+ return menuComponent.isShowing();
+ }
+
+ public boolean contains(java.awt.Point p) {
+ java.awt.Dimension d = getSize();
+
+ if (Build.DEBUG) {
+ System.err.println("PopupMenuProxy.containsPoint(" + p.x + "," +
+ p.y + ") returns " +
+ (((d.width >= 0) && (p.x < d.width) && (d.height >= 0) &&
+ (p.y < d.height)) ? "true" : "false"));
+ }
+
+ if ((d.width >= 0) && (p.x < d.width) && (d.height >= 0) &&
+ (p.y < d.height)) {
+ return true;
+ }
+
+ return false;
+ }
+
+ /** Returns the location of the object on the screen. */
+ public java.awt.Point getLocationOnScreen() {
+ return new java.awt.Point(x,y);
+ }
+
+ /** Gets the location of this component in the form of a point specifying the component's top-left corner */
+ public java.awt.Point getLocation() {
+ // This object represents a toplevel, so this is the same as getLocationOnScreen()
+ return getLocationOnScreen();
+ }
+
+ /** Moves this component to a new location */
+ public void setLocation(java.awt.Point p) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Gets the bounds of this component in the form of a Rectangle object */
+ public java.awt.Rectangle getBounds() {
+ return new java.awt.Rectangle(x, y, width, height);
+ }
+
+ /** Moves and resizes this component to conform to the new bounding rectangle r */
+ public void setBounds(java.awt.Rectangle r) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Returns the size of this component in the form of a Dimension object */
+ public java.awt.Dimension getSize() {
+ return new java.awt.Dimension(width, height);
+ }
+
+ /** Resizes this component so that it has width d.width and height d.height */
+ public void setSize(java.awt.Dimension d) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Returns the Accessible child, if one exists, contained at the local
+ * coordinate Point
+ */
+ public javax.accessibility.Accessible getAccessibleAt(java.awt.Point p) {
+ java.awt.Point p2 = menuComponent.getLocationOnScreen();
+ return menuComponent.getAccessibleAt(
+ new java.awt.Point(p.x + x - p2.x, p.y + y - p2.y));
+ }
+
+ public boolean isFocusTraversable() {
+ return menuComponent.isFocusTraversable();
+ }
+
+ public void requestFocus() {
+ menuComponent.requestFocus();
+ }
+ }
+
+ protected static class ListProxy extends AccessibleContext
+ implements Accessible, AccessibleComponent {
+ AccessibleContext list;
+ AccessibleComponent listComponent;
+
+ ListProxy(AccessibleContext ac) {
+ list = ac;
+ listComponent = list.getAccessibleComponent();
+ }
+
+ /** Returns the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext getAccessibleContext() {
+ return this;
+ }
+
+ /** Returns the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleComponent getAccessibleComponent() {
+ return this;
+ }
+
+ /** Returns the AccessibleSelection associated with this object */
+ public javax.accessibility.AccessibleSelection getAccessibleSelection() {
+ return list.getAccessibleSelection();
+ }
+
+ /** Returns the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleStateSet getAccessibleStateSet() {
+ return list.getAccessibleStateSet();
+ }
+
+ public java.util.Locale getLocale() {
+ return list.getLocale();
+ }
+
+ public int getAccessibleIndexInParent() {
+ return -1;
+ }
+
+ public int getAccessibleChildrenCount() {
+ return list.getAccessibleChildrenCount();
+ }
+
+ public javax.accessibility.Accessible getAccessibleChild(int i) {
+ return list.getAccessibleChild(i);
+ }
+
+ public javax.accessibility.AccessibleRole getAccessibleRole() {
+ return javax.accessibility.AccessibleRole.LIST;
+ }
+
+ /*
+ * AccessibleComponent
+ */
+ public void addFocusListener(java.awt.event.FocusListener fl) {
+ listComponent.addFocusListener(fl);
+ }
+
+ public void removeFocusListener(java.awt.event.FocusListener fl) {
+ listComponent.removeFocusListener(fl);
+ }
+
+ /** Returns the background color of the object */
+ public java.awt.Color getBackground() {
+ return listComponent.getBackground();
+ }
+
+ public void setBackground(java.awt.Color c) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Returns the foreground color of the object */
+ public java.awt.Color getForeground() {
+ return listComponent.getForeground();
+ }
+
+ public void setForeground(java.awt.Color c) {
+ listComponent.setForeground(c);
+ }
+
+ public java.awt.Cursor getCursor() {
+ return listComponent.getCursor();
+ }
+
+ public void setCursor(java.awt.Cursor cursor) {
+ listComponent.setCursor(cursor);
+ }
+
+ public java.awt.Font getFont() {
+ return listComponent.getFont();
+ }
+
+ public void setFont(java.awt.Font f) {
+ listComponent.setFont(f);
+ }
+
+ public java.awt.FontMetrics getFontMetrics(java.awt.Font f) {
+ return listComponent.getFontMetrics(f);
+ }
+
+ public boolean isEnabled() {
+ return listComponent.isEnabled();
+ }
+
+ public void setEnabled(boolean b) {
+ listComponent.setEnabled(b);
+ }
+
+ public boolean isVisible() {
+ return listComponent.isVisible();
+ }
+
+ public void setVisible(boolean b) {
+ listComponent.setVisible(b);
+ }
+
+ public boolean isShowing() {
+ return listComponent.isShowing();
+ }
+
+ public boolean contains(java.awt.Point p) {
+ return listComponent.contains(p);
+ }
+
+ /** Returns the location of the object on the screen. */
+ public java.awt.Point getLocationOnScreen() {
+ return listComponent.getLocationOnScreen();
+ }
+
+ /** Gets the location of this component in the form of a point specifying
+ * the component's top-left corner
+ */
+ public java.awt.Point getLocation() {
+ // This object represents a toplevel object, so getLocation() should
+ // return the same as getLocationOnScreen().
+ return getLocationOnScreen();
+ }
+
+ /** Moves this component to a new location */
+ public void setLocation(java.awt.Point p) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Gets the bounds of this component in the form of a Rectangle object */
+ public java.awt.Rectangle getBounds() {
+ java.awt.Point p = getLocationOnScreen();
+ java.awt.Dimension d = getSize();
+ return new java.awt.Rectangle(p.x, p.y, d.width, d.height);
+ }
+
+ /** Moves and resizes this component to conform to the new bounding rectangle r */
+ public void setBounds(java.awt.Rectangle r) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Returns the size of this component in the form of a Dimension object */
+ public java.awt.Dimension getSize() {
+ return listComponent.getSize();
+ }
+
+ /** Resizes this component so that it has width d.width and height d.height */
+ public void setSize(java.awt.Dimension d) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Returns the Accessible child, if one exists, contained at the local
+ * coordinate Point
+ */
+ public javax.accessibility.Accessible getAccessibleAt(java.awt.Point p) {
+ return listComponent.getAccessibleAt(p);
+ }
+
+ public boolean isFocusTraversable() {
+ return listComponent.isFocusTraversable();
+ }
+
+ public void requestFocus() {
+ listComponent.requestFocus();
+ }
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/accessibility/java_uno_accessbridge.component b/accessibility/bridge/org/openoffice/accessibility/java_uno_accessbridge.component
new file mode 100644
index 000000000000..5fc897f2d5aa
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/accessibility/java_uno_accessbridge.component
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--**********************************************************************
+*
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+*
+* Copyright 2000, 2010 Oracle and/or its affiliates.
+*
+* OpenOffice.org - a multi-platform office productivity suite
+*
+* This file is part of OpenOffice.org.
+*
+* OpenOffice.org is free software: you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License version 3
+* only, as published by the Free Software Foundation.
+*
+* OpenOffice.org is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU Lesser General Public License version 3 for more details
+* (a copy is included in the LICENSE file that accompanied this code).
+*
+* You should have received a copy of the GNU Lesser General Public License
+* version 3 along with OpenOffice.org. If not, see
+* <http://www.openoffice.org/license.html>
+* for a copy of the LGPLv3 License.
+*
+**********************************************************************-->
+
+<component loader="com.sun.star.loader.Java2"
+ xmlns="http://openoffice.org/2010/uno-components">
+ <implementation name="org.openoffice.accessibility.AccessBridge">
+ <service name="com.sun.star.accessibility.AccessBridge"/>
+ </implementation>
+</component>
diff --git a/accessibility/bridge/org/openoffice/accessibility/makefile.mk b/accessibility/bridge/org/openoffice/accessibility/makefile.mk
new file mode 100755
index 000000000000..1fa29f5bfcb1
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/accessibility/makefile.mk
@@ -0,0 +1,62 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJNAME = accessibility
+PRJ = ..$/..$/..$/..
+TARGET = java_uno_accessbridge
+PACKAGE = org$/openoffice$/accessibility
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+JARFILES = jurt.jar unoil.jar ridl.jar
+JAVAFILES = \
+ AccessBridge.java \
+ KeyHandler.java \
+ PopupWindow.java \
+ WindowsAccessBridgeAdapter.java
+
+JAVACLASSFILES= $(foreach,i,$(JAVAFILES) $(CLASSDIR)$/$(PACKAGE)$/$(i:b).class)
+
+JARTARGET = $(TARGET).jar
+JARCOMPRESS = TRUE
+JARCLASSDIRS = $(PACKAGE) org/openoffice/java/accessibility
+CUSTOMMANIFESTFILE = manifest
+
+# --- Targets ------------------------------------------------------
+
+
+.INCLUDE : target.mk
+
+ALLTAR : $(MISC)/java_uno_accessbridge.component
+
+$(MISC)/java_uno_accessbridge.component .ERRREMOVE : \
+ $(SOLARENV)/bin/createcomponent.xslt java_uno_accessbridge.component
+ $(XSLTPROC) --nonet --stringparam uri \
+ '$(COMPONENTPREFIX_BASIS_JAVA)$(JARTARGET)' -o $@ \
+ $(SOLARENV)/bin/createcomponent.xslt java_uno_accessbridge.component
diff --git a/accessibility/bridge/org/openoffice/accessibility/manifest b/accessibility/bridge/org/openoffice/accessibility/manifest
new file mode 100755
index 000000000000..4b5ffd54d34b
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/accessibility/manifest
@@ -0,0 +1,2 @@
+RegistrationClassName: org.openoffice.accessibility.AccessBridge
+UNO-Type-Path:
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AbstractButton.java b/accessibility/bridge/org/openoffice/java/accessibility/AbstractButton.java
new file mode 100644
index 000000000000..be7b72df8732
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/AbstractButton.java
@@ -0,0 +1,176 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import javax.accessibility.AccessibleState;
+
+import com.sun.star.uno.*;
+import com.sun.star.accessibility.*;
+
+/**
+ */
+public abstract class AbstractButton extends Component {
+
+ protected AbstractButton(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
+ super(xAccessible, xAccessibleContext);
+ }
+
+ protected abstract class AccessibleAbstractButton extends AccessibleUNOComponent
+ implements javax.accessibility.AccessibleAction {
+
+ /**
+ * Though the class is abstract, this should be called by all sub-classes
+ */
+ protected AccessibleAbstractButton() {
+ super();
+ }
+
+ /*
+ * AccessibleContext
+ */
+
+ /** Gets the AccessibleAction associated with this object that supports one or more actions */
+ public javax.accessibility.AccessibleAction getAccessibleAction() {
+ return this;
+ }
+
+ /** Gets the AccessibleText associated with this object presenting text on the display */
+ public javax.accessibility.AccessibleText getAccessibleText() {
+
+ if (disposed)
+ return null;
+
+ try {
+ XAccessibleText unoAccessibleText = (XAccessibleText)
+ UnoRuntime.queryInterface(XAccessibleText.class,unoAccessibleComponent);
+ if (unoAccessibleText != null) {
+ return new AccessibleTextImpl(unoAccessibleText);
+ } else {
+ return null;
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Returns the relation set of this object */
+ public javax.accessibility.AccessibleRelationSet getAccessibleRelationSet() {
+ try {
+ XAccessibleRelationSet unoAccessibleRelationSet = unoAccessibleContext.getAccessibleRelationSet();
+
+ if (unoAccessibleRelationSet == null) {
+ return null;
+ }
+
+ javax.accessibility.AccessibleRelationSet relationSet = new javax.accessibility.AccessibleRelationSet();
+ int count = unoAccessibleRelationSet.getRelationCount();
+
+ for (int i = 0; i < count; i++) {
+ AccessibleRelation unoAccessibleRelation = unoAccessibleRelationSet.getRelation(i);
+
+ switch (unoAccessibleRelation.RelationType) {
+ case AccessibleRelationType.MEMBER_OF:
+ relationSet.add(new javax.accessibility.AccessibleRelation(
+ javax.accessibility.AccessibleRelation.MEMBER_OF,
+ getAccessibleComponents(
+ unoAccessibleRelation.TargetSet)));
+ break;
+
+ case AccessibleRelationType.LABELED_BY:
+ relationSet.add(new javax.accessibility.AccessibleRelation(
+ javax.accessibility.AccessibleRelation.LABELED_BY,
+ getAccessibleComponents(
+ unoAccessibleRelation.TargetSet)));
+ break;
+ default:
+ break;
+ }
+ }
+
+ return relationSet;
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /*
+ * AccessibleAction
+ */
+
+ /** Performs the specified Action on the object */
+ public boolean doAccessibleAction(int param) {
+ if (param == 0) {
+ // HACK: this action might open a modal dialog and therefor block
+ // until the dialog is closed. In case of this thread being the
+ // AWT EventDispatcherThread this means, the opened dialog will
+ // not be accessible, so deligate this request to another thread.
+ if (java.awt.EventQueue.isDispatchThread()) {
+ Thread t = new Thread () {
+ public void run() {
+ AbstractButton.AccessibleAbstractButton.this.doAccessibleAction(0);
+ }
+ };
+ t.start();
+ return true;
+ } else {
+ // Actions of MenuItems may also be performed if the item is not
+ // visible, so just try ..
+ try {
+ XAccessibleContext xAccessibleContext = unoAccessibleContext;
+ if (xAccessibleContext != null) {
+ // Query for XAccessibleAction interface
+ XAccessibleAction xAccessibleAction = (XAccessibleAction)
+ UnoRuntime.queryInterface(XAccessibleAction.class, xAccessibleContext);
+
+ if (xAccessibleAction != null) {
+ return xAccessibleAction.doAccessibleAction(0);
+ }
+ }
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+ }
+
+ return false;
+ }
+
+ /** Returns a description of the specified action of the object */
+ public java.lang.String getAccessibleActionDescription(int param) {
+ return javax.swing.UIManager.getString("AbstractButton.clickText");
+ }
+
+ /** Returns the number of accessible actions available in this object */
+ public int getAccessibleActionCount() {
+ return 1;
+ }
+ }
+}
+
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleActionImpl.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleActionImpl.java
new file mode 100644
index 000000000000..e4905752d833
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleActionImpl.java
@@ -0,0 +1,71 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import com.sun.star.accessibility.XAccessibleAction;
+
+/** The AccessibleActionWrapper maps the calls to the java AccessibleAction interface
+ * to the corresponding methods of the UNO XAccessibleAction interface.
+ */
+public class AccessibleActionImpl implements javax.accessibility.AccessibleAction {
+
+ protected XAccessibleAction unoObject;
+
+ /** Creates new AccessibleActionWrapper */
+ public AccessibleActionImpl(XAccessibleAction xAccessibleAction) {
+ unoObject = xAccessibleAction;
+ }
+
+ public boolean doAccessibleAction(int param) {
+ try {
+ return unoObject.doAccessibleAction(param);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return false;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return false;
+ }
+ }
+
+ public java.lang.String getAccessibleActionDescription(int param) {
+ try {
+ return unoObject.getAccessibleActionDescription(param);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ public int getAccessibleActionCount() {
+ try {
+ return unoObject.getAccessibleActionCount();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return 0;
+ }
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleComponentImpl.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleComponentImpl.java
new file mode 100644
index 000000000000..5bac982756a2
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleComponentImpl.java
@@ -0,0 +1,233 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import com.sun.star.accessibility.AccessibleStateType;
+import com.sun.star.accessibility.XAccessibleContext;
+import com.sun.star.accessibility.XAccessibleComponent;
+// import com.sun.star.accessibility.XAccessibleExtendedComponent;
+import com.sun.star.uno.UnoRuntime;
+
+public class AccessibleComponentImpl implements javax.accessibility.AccessibleComponent {
+
+ protected XAccessibleComponent unoObject;
+// protected XAccessibleExtendedComponent unoAccessibleExtendedComponent = null;
+
+ /** Creates new AccessibleComponentImpl */
+ public AccessibleComponentImpl(XAccessibleComponent xAccessibleComponent) {
+ unoObject = xAccessibleComponent;
+ }
+
+ protected boolean hasState(short state) {
+ try {
+ XAccessibleContext unoAccessibleContext = (XAccessibleContext)
+ UnoRuntime.queryInterface(XAccessibleContext.class, unoObject);
+ // All UNO accessibility implementations must support XAccessibleContext
+ // and return a valid XAccessibleStateSet ..
+ return unoAccessibleContext.getAccessibleStateSet().contains(state);
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return false;
+ } catch (java.lang.NullPointerException e) {
+ System.err.println("XAccessibleContext unsupported or no XAccessibleStateSet returned.");
+ return false;
+ }
+ }
+
+ /*
+ * XAccessibleComponent
+ */
+
+ /** Returns the background color of the object */
+ public java.awt.Color getBackground() {
+ try {
+ return new java.awt.Color(unoObject.getBackground());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ public void setBackground(java.awt.Color c) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Returns the foreground color of the object */
+ public java.awt.Color getForeground() {
+ try {
+ return new java.awt.Color(unoObject.getForeground());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ public void setForeground(java.awt.Color c) {
+ // Not supported by UNO accessibility API
+ }
+
+ public java.awt.Cursor getCursor() {
+ // Not supported by UNO accessibility API
+ return null;
+ }
+
+ public void setCursor(java.awt.Cursor cursor) {
+ // Not supported by UNO accessibility API
+ }
+
+ public java.awt.Font getFont() {
+ // FIXME
+ return null;
+ }
+
+ public void setFont(java.awt.Font f) {
+ // Not supported by UNO accessibility API
+ }
+
+ public java.awt.FontMetrics getFontMetrics(java.awt.Font f) {
+ // FIXME
+ return null;
+ }
+
+ public boolean isEnabled() {
+ return hasState(AccessibleStateType.ENABLED);
+ }
+
+ public void setEnabled(boolean b) {
+ // Not supported by UNO accessibility API
+ }
+
+ public boolean isVisible() {
+ return hasState(AccessibleStateType.VISIBLE);
+ }
+
+ public void setVisible(boolean b) {
+ // Not supported by UNO accessibility API
+ }
+
+ public boolean isShowing() {
+ return hasState(AccessibleStateType.SHOWING);
+ }
+
+ public boolean contains(java.awt.Point p) {
+ try {
+ return unoObject.containsPoint(new com.sun.star.awt.Point(p.x, p.y));
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return false;
+ }
+ }
+
+ /** Returns the location of the object on the screen. */
+ public java.awt.Point getLocationOnScreen() {
+ try {
+ com.sun.star.awt.Point unoPoint = unoObject.getLocationOnScreen();
+ return new java.awt.Point(unoPoint.X, unoPoint.Y);
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Gets the location of this component in the form of a point specifying the component's top-left corner */
+ public java.awt.Point getLocation() {
+ try {
+ com.sun.star.awt.Point unoPoint = unoObject.getLocation();
+ return new java.awt.Point( unoPoint.X, unoPoint.Y );
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Moves this component to a new location */
+ public void setLocation(java.awt.Point p) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Gets the bounds of this component in the form of a Rectangle object */
+ public java.awt.Rectangle getBounds() {
+ try {
+ com.sun.star.awt.Rectangle unoRect = unoObject.getBounds();
+ return new java.awt.Rectangle(unoRect.X, unoRect.Y, unoRect.Width, unoRect.Height);
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Moves and resizes this component to conform to the new bounding rectangle r */
+ public void setBounds(java.awt.Rectangle r) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Returns the size of this component in the form of a Dimension object */
+ public java.awt.Dimension getSize() {
+ try {
+ com.sun.star.awt.Size unoSize = unoObject.getSize();
+ return new java.awt.Dimension(unoSize.Width, unoSize.Height);
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Resizes this component so that it has width d.width and height d.height */
+ public void setSize(java.awt.Dimension d) {
+ // Not supported by UNO accessibility API
+ }
+
+ public javax.accessibility.Accessible getAccessibleAt(java.awt.Point p) {
+ // Not supported by this implementation
+ return null;
+ }
+
+ public boolean isFocusTraversable() {
+ return hasState(AccessibleStateType.FOCUSABLE);
+ }
+
+ public void requestFocus() {
+ unoObject.grabFocus();
+ }
+
+ /**
+ * Adds the specified focus listener to receive focus events from
+ * this component when this component gains input focus.
+ * If listener <code>l</code> is <code>null</code>,
+ * no exception is thrown and no action is performed.
+ */
+
+ public void addFocusListener(java.awt.event.FocusListener l) {
+ // Not supported by this implementation
+ }
+
+ /**
+ * Removes the specified focus listener so that it no longer
+ * receives focus events from this component. This method performs
+ * no function, nor does it throw an exception, if the listener
+ * specified by the argument was not previously added to this component.
+ * If listener <code>l</code> is <code>null</code>,
+ * no exception is thrown and no action is performed.
+ */
+
+ public void removeFocusListener(java.awt.event.FocusListener l) {
+ // Not supported by this implementation
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleEditableTextImpl.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleEditableTextImpl.java
new file mode 100644
index 000000000000..4863b560ef71
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleEditableTextImpl.java
@@ -0,0 +1,367 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import com.sun.star.awt.*;
+import com.sun.star.style.*;
+import com.sun.star.uno.*;
+import com.sun.star.accessibility.AccessibleTextType;
+import com.sun.star.accessibility.XAccessibleEditableText;
+
+import javax.accessibility.AccessibleText;
+import javax.swing.text.StyleConstants;
+
+/** The GenericAccessibleEditableText mapps the calls to the java AccessibleEditableText
+ * interface to the corresponding methods of the UNO XAccessibleEditableText interface.
+ */
+public class AccessibleEditableTextImpl extends AccessibleTextImpl implements javax.accessibility.AccessibleEditableText {
+ final static double toPointFactor = 1 / (7/10 + 34.5);
+
+ /** Creates new GenericAccessibleEditableText object */
+ public AccessibleEditableTextImpl(XAccessibleEditableText xAccessibleEditableText) {
+ super(xAccessibleEditableText);
+ }
+
+ /** Cuts the text between two indices into the system clipboard */
+ public void cut(int startIndex, int endIndex) {
+ try {
+ ((XAccessibleEditableText) unoObject).cutText(startIndex, endIndex);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+
+ /** Deletes the text between two indices */
+ public void delete(int startIndex, int endIndex) {
+ try {
+ ((XAccessibleEditableText) unoObject).deleteText(startIndex, endIndex);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+
+ /** Returns the text range between two indices */
+ public String getTextRange(int startIndex, int endIndex) {
+ try {
+ return unoObject.getTextRange(startIndex, endIndex);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ return null;
+ }
+
+ /** Inserts the specified string at the given index */
+ public void insertTextAtIndex(int index, String s){
+ try {
+ ((XAccessibleEditableText) unoObject).insertText(s, index);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+
+ /** Pastes the text form the system clipboard into the text starting at the specified index */
+ public void paste(int startIndex) {
+ try {
+ ((XAccessibleEditableText) unoObject).pasteText(startIndex);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+
+ /** Replaces the text between two indices with the specified string */
+ public void replaceText(int startIndex, int endIndex, String s) {
+ try {
+ ((XAccessibleEditableText) unoObject).replaceText(startIndex, endIndex, s);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+
+ /** Selects the text between two indices */
+ public void selectText(int startIndex, int endIndex) {
+ try {
+ unoObject.setSelection(startIndex, endIndex);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+
+ /** Sets the attributes for the text between two indices */
+ public void setAttributes(int startIndex, int endIndex, javax.swing.text.AttributeSet as) {
+ java.util.Vector propertyValues = new java.util.Vector();
+
+ // Convert Alignment attribute
+ Object attribute = as.getAttribute(StyleConstants.Alignment);
+ if (null != attribute) {
+ com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
+ propertyValue.Name = "ParaAdjust";
+
+ switch (StyleConstants.getAlignment(as)) {
+ case StyleConstants.ALIGN_RIGHT:
+ propertyValue.Value = ParagraphAdjust.RIGHT;
+ break;
+ case StyleConstants.ALIGN_CENTER:
+ propertyValue.Value = ParagraphAdjust.CENTER;
+ break;
+ case StyleConstants.ALIGN_JUSTIFIED:
+ propertyValue.Value = ParagraphAdjust.BLOCK;
+ break;
+ default:
+ propertyValue.Value = ParagraphAdjust.LEFT;
+ break;
+ }
+ propertyValues.add(propertyValue);
+ }
+
+ // Convert Background attribute
+ attribute = as.getAttribute(StyleConstants.Background);
+ if (null != attribute) {
+ com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
+ propertyValue.Name = "CharBackColor";
+ propertyValue.Value = new Integer(StyleConstants.getBackground(as).getRGB());
+ propertyValues.add(propertyValue);
+ }
+
+ // FIXME: BidiLevel
+
+ // Set Bold attribute
+ attribute = as.getAttribute(StyleConstants.Bold);
+ if (null != attribute) {
+ com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
+ propertyValue.Name = "CharWeight";
+ if (StyleConstants.isBold(as)) {
+ propertyValue.Value = new Float(150);
+ } else {
+ propertyValue.Value = new Float(100);
+ }
+ propertyValues.add(propertyValue);
+ }
+
+ // FIXME: Java 1.4 ComponentAttribute, ComponentElementName, ComposedTextAttribute
+
+ // Set FirstLineIndent attribute
+ attribute = as.getAttribute(StyleConstants.FirstLineIndent);
+ if (null != attribute) {
+ com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
+ propertyValue.Name = "ParaFirstLineIndent";
+ propertyValue.Value = new Double(StyleConstants.getFirstLineIndent(as) / toPointFactor);
+ propertyValues.add(propertyValue);
+ }
+
+ // Set font family attribute
+ attribute = as.getAttribute(StyleConstants.FontFamily);
+ if (null != attribute) {
+ com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
+ propertyValue.Name = "CharFontPitch";
+
+ if (StyleConstants.getFontFamily(as).equals( "Proportional" )) {
+ propertyValue.Value = new Short("2");
+ } else {
+ propertyValue.Value = new Short("1");
+ }
+ propertyValues.add(propertyValue);
+ }
+
+ // Set font size attribute
+ attribute = as.getAttribute(StyleConstants.FontSize);
+ if (null != attribute) {
+ com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
+ propertyValue.Name = "CharHeight";
+ propertyValue.Value = new Integer(StyleConstants.getFontSize(as));
+ propertyValues.add(propertyValue);
+ }
+
+ // Map foreground color
+ attribute = as.getAttribute(StyleConstants.Foreground);
+ if (null != attribute) {
+ com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
+ propertyValue.Name = "CharColor";
+ propertyValue.Value = new Integer (StyleConstants.getForeground(as).getRGB());
+ propertyValues.add(propertyValue);
+ }
+
+ // FIXME: IconAttribute, IconElementName
+
+ // Set italic attribute
+ attribute = as.getAttribute(StyleConstants.Italic);
+ if (null != attribute) {
+ com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
+ propertyValue.Name = "CharPosture";
+
+ if (StyleConstants.isItalic(as)) {
+ propertyValue.Value = FontSlant.ITALIC;
+ } else {
+ propertyValue.Value = FontSlant.DONTKNOW;
+ }
+ propertyValues.add(propertyValue);
+ }
+
+ // Set left indent attribute
+ attribute = as.getAttribute(StyleConstants.LeftIndent);
+ if (null != attribute) {
+ com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
+ propertyValue.Name = "ParaFirstLeftMargin";
+ propertyValue.Value = new Integer(new Double(StyleConstants.getLeftIndent(as) / toPointFactor).intValue());
+ propertyValues.add(propertyValue);
+ }
+
+ // Set right indent attribute
+ attribute = as.getAttribute(StyleConstants.RightIndent);
+ if (null != attribute) {
+ com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
+ propertyValue.Name = "ParaFirstRightMargin";
+ propertyValue.Value = new Integer(new Double(StyleConstants.getRightIndent(as) / toPointFactor).intValue());
+ propertyValues.add(propertyValue);
+ }
+
+ // Set line spacing attribute
+ attribute = as.getAttribute(StyleConstants.LineSpacing);
+ if (null != attribute) {
+ com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
+ propertyValue.Name = "ParaLineSpacing";
+ propertyValue.Value = new Integer(new Double(StyleConstants.getLineSpacing(as) / toPointFactor).intValue());
+ propertyValues.add(propertyValue);
+ }
+
+ // FIXME: Java 1.4 NameAttribute, Orientation, ResolveAttribute
+
+ // Set space above attribute
+ attribute = as.getAttribute(StyleConstants.SpaceAbove);
+ if (null != attribute) {
+ com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
+ propertyValue.Name = "ParaTopMargin";
+ propertyValue.Value = new Integer(new Double( StyleConstants.getSpaceAbove(as) / toPointFactor).intValue());
+ propertyValues.add(propertyValue);
+ }
+
+ // Set space below attribute
+ attribute = as.getAttribute(StyleConstants.SpaceBelow);
+ if (null != attribute) {
+ com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
+ propertyValue.Name = "ParaBottomMargin";
+ propertyValue.Value = new Integer(new Double(StyleConstants.getSpaceBelow(as) / toPointFactor).intValue());
+ propertyValues.add(propertyValue);
+ }
+
+ // Set strike through attribute
+ attribute = as.getAttribute(StyleConstants.StrikeThrough);
+ if (null != attribute) {
+ com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
+ propertyValue.Name = "CharPosture";
+ if (StyleConstants.isStrikeThrough(as)) {
+ propertyValue.Value = new Short(FontStrikeout.SINGLE);
+ } else {
+ propertyValue.Value = new Short(FontStrikeout.NONE);
+ }
+ propertyValues.add(propertyValue);
+ }
+
+ // Set sub-/superscript attribute
+ attribute = as.getAttribute(StyleConstants.Superscript);
+ if (null == attribute) {
+ attribute = as.getAttribute(StyleConstants.Subscript);
+ }
+ if (null != attribute) {
+ com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
+ propertyValue.Name = "CharEscapement";
+
+ if (StyleConstants.isSuperscript(as)) {
+ propertyValue.Value = new Short( "1" );
+ } else if (StyleConstants.isSubscript(as)) {
+ propertyValue.Value = new Short( "-1" );
+ } else {
+ propertyValue.Value = new Short( "0" );
+ }
+ propertyValues.add(propertyValue);
+ }
+
+ // Set tabset attribute
+ attribute = as.getAttribute(StyleConstants.TabSet);
+ if (null != attribute) {
+ com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
+ propertyValue.Name = "ParaTabStops";
+
+ javax.swing.text.TabSet tabSet = StyleConstants.getTabSet(as);
+ java.util.ArrayList tabStops = new java.util.ArrayList(tabSet.getTabCount());
+
+ for (int i = 0, max = tabSet.getTabCount(); i < max; i++) {
+ javax.swing.text.TabStop tab = tabSet.getTab(i);
+ com.sun.star.style.TabStop unoTab = new com.sun.star.style.TabStop();
+
+ unoTab.Position = new Double(tab.getPosition() / toPointFactor).intValue();
+
+ switch (tab.getAlignment()) {
+ case javax.swing.text.TabStop.ALIGN_CENTER:
+ unoTab.Alignment = TabAlign.CENTER;
+ break;
+ case javax.swing.text.TabStop.ALIGN_RIGHT:
+ unoTab.Alignment = TabAlign.RIGHT;
+ break;
+ case javax.swing.text.TabStop.ALIGN_DECIMAL:
+ unoTab.Alignment = TabAlign.DECIMAL;
+ break;
+ default:
+ unoTab.Alignment = TabAlign.LEFT;
+ break;
+ }
+
+ tabStops.add(unoTab);
+ }
+ propertyValue.Value = (com.sun.star.style.TabStop[]) tabStops.toArray();
+ propertyValues.add(propertyValue);
+ }
+
+ // Set underline attribute
+ attribute = as.getAttribute(StyleConstants.Underline);
+ if (null != attribute) {
+ com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
+ propertyValue.Name = "CharUnderline";
+
+ if (StyleConstants.isUnderline(as)) {
+ propertyValue.Value = new Short(FontUnderline.SINGLE);
+ } else {
+ propertyValue.Value = new Short(FontUnderline.NONE);
+ }
+ propertyValues.add(propertyValue);
+ }
+
+ try {
+ ((XAccessibleEditableText) unoObject).setAttributes(startIndex, endIndex, (com.sun.star.beans.PropertyValue[]) propertyValues.toArray());
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+
+ /** Sets the text contents to the specified string */
+ public void setTextContents(String s) {
+ try {
+ ((XAccessibleEditableText) unoObject).setText(s);
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleExtendedState.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleExtendedState.java
new file mode 100644
index 000000000000..3d4500d322df
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleExtendedState.java
@@ -0,0 +1,53 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import javax.accessibility.AccessibleState;
+
+public class AccessibleExtendedState extends AccessibleState {
+ public static final AccessibleState DEFUNCT;
+ public static final AccessibleState INDETERMINATE;
+ public static final AccessibleState MANAGES_DESCENDANTS;
+ public static final AccessibleState SENSITIVE;
+ public static final AccessibleState STALE;
+
+ static {
+ DEFUNCT = new AccessibleExtendedState("defunct");
+
+ // JAVA 1.5: will come with manages_descendants and indeterminate
+ INDETERMINATE = new AccessibleExtendedState("indeterminate");
+ MANAGES_DESCENDANTS = new AccessibleExtendedState("managesDescendants");
+
+ SENSITIVE = new AccessibleExtendedState("sensitive");
+ STALE = new AccessibleExtendedState("stale");
+ }
+
+ protected AccessibleExtendedState(String key) {
+ super(key);
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleHypertextImpl.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleHypertextImpl.java
new file mode 100644
index 000000000000..1bb3bc5961ad
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleHypertextImpl.java
@@ -0,0 +1,191 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import org.openoffice.java.accessibility.logging.*;
+
+import com.sun.star.accessibility.*;
+import com.sun.star.uno.*;
+
+/** The AccessibleHypertextImpl mapps all calls to the java AccessibleHypertext
+ * interface to the corresponding methods of the UNO XAccessibleHypertext
+ * interface.
+ */
+public class AccessibleHypertextImpl extends AccessibleTextImpl
+ implements javax.accessibility.AccessibleHypertext {
+
+ protected class Hyperlink extends javax.accessibility.AccessibleHyperlink {
+ protected XAccessibleHyperlink unoObject;
+
+ public Hyperlink(XAccessibleHyperlink xHyperlink) {
+ unoObject = xHyperlink;
+ }
+
+ public int getStartIndex() {
+ try {
+ System.err.println("StartIndex: " + unoObject.getStartIndex());
+ return unoObject.getStartIndex();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return -1;
+ }
+ }
+
+ public Object getAccessibleActionObject(int param) {
+ System.err.println("getActionObject");
+ try {
+ Object any = unoObject.getAccessibleActionObject(param);
+ if (AnyConverter.isString(any)) {
+ String url = AnyConverter.toString(any);
+ if (null != url) {
+ return new java.net.URL(url);
+ }
+ }
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ } catch (java.net.MalformedURLException exception) {
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+
+ return null;
+ }
+
+ public int getEndIndex() {
+ try {
+ System.err.println("StartIndex: " + unoObject.getEndIndex());
+ return unoObject.getEndIndex();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return -1;
+ }
+ }
+
+ public Object getAccessibleActionAnchor(int param) {
+ System.err.println("getActionAnchor");
+ try {
+ Object any = unoObject.getAccessibleActionObject(param);
+ if (AnyConverter.isString(any)) {
+ System.err.println("Anchor: " + AnyConverter.toString(any));
+ return AnyConverter.toString(any);
+ }
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ return null;
+ }
+
+ public boolean isValid() {
+ return unoObject.isValid();
+ }
+
+ public boolean doAccessibleAction(int param) {
+ try {
+ return unoObject.doAccessibleAction(param);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return false;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return false;
+ }
+ }
+
+ public String getAccessibleActionDescription(int param) {
+ try {
+ return unoObject.getAccessibleActionDescription(param);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return null;
+ }
+ }
+
+ public int getAccessibleActionCount() {
+ try {
+ return unoObject.getAccessibleActionCount();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return 0;
+ }
+ }
+ }
+
+ /** Creates new AccessibleHypertextImpl */
+ public AccessibleHypertextImpl(XAccessibleHypertext xAccessibleHypertext) {
+ if (Build.PRODUCT) {
+ unoObject = xAccessibleHypertext;
+ } else {
+ String property = System.getProperty("AccessBridgeLogging");
+ if ((property != null) && (property.indexOf("text") != -1)) {
+ unoObject = new XAccessibleHypertextLog(xAccessibleHypertext);
+ } else {
+ unoObject = xAccessibleHypertext;
+ }
+ }
+ }
+
+ public static javax.accessibility.AccessibleText get(com.sun.star.uno.XInterface unoObject) {
+ try {
+ XAccessibleHypertext unoAccessibleHypertext = (XAccessibleHypertext)
+ UnoRuntime.queryInterface(XAccessibleHypertext.class, unoObject);
+ if (unoAccessibleHypertext != null) {
+ return new AccessibleHypertextImpl(unoAccessibleHypertext);
+ }
+
+ XAccessibleText unoAccessibleText = (XAccessibleText)
+ UnoRuntime.queryInterface(XAccessibleText.class, unoObject);
+ if (unoAccessibleText != null) {
+ return new AccessibleTextImpl(unoAccessibleText);
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ return null;
+ }
+
+ public javax.accessibility.AccessibleHyperlink getLink(int param) {
+ try {
+ return new Hyperlink(((XAccessibleHypertext) unoObject).getHyperLink(param));
+ }
+
+ catch(com.sun.star.lang.IndexOutOfBoundsException exception) {
+ throw new IndexOutOfBoundsException(exception.getMessage());
+ }
+ }
+
+ public int getLinkCount() {
+ try {
+ return ((XAccessibleHypertext) unoObject).getHyperLinkCount();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return 0;
+ }
+ }
+
+ public int getLinkIndex(int param) {
+ try {
+ return ((XAccessibleHypertext) unoObject).getHyperLinkIndex(param);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return -1;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return -1;
+ }
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleIconImpl.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleIconImpl.java
new file mode 100644
index 000000000000..ba41534f245b
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleIconImpl.java
@@ -0,0 +1,73 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import com.sun.star.accessibility.XAccessibleImage;
+
+/**
+ */
+public class AccessibleIconImpl implements javax.accessibility.AccessibleIcon {
+
+ XAccessibleImage unoAccessibleImage;
+
+ public AccessibleIconImpl(XAccessibleImage xImage) {
+ unoAccessibleImage = xImage;
+ }
+
+ /** Gets the description of the icon */
+ public String getAccessibleIconDescription() {
+ try {
+ return unoAccessibleImage.getAccessibleImageDescription();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Gets the height of the icon */
+ public int getAccessibleIconHeight() {
+ try {
+ return unoAccessibleImage.getAccessibleImageHeight();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return 0;
+ }
+ }
+
+ /** Gets the width of the icon */
+ public int getAccessibleIconWidth() {
+ try {
+ return unoAccessibleImage.getAccessibleImageWidth();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return 0;
+ }
+ }
+
+ /** Sets the description of the icon */
+ public void setAccessibleIconDescription(String s) {
+ // Not supported
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleKeyBinding.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleKeyBinding.java
new file mode 100644
index 000000000000..1eb3201c5d68
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleKeyBinding.java
@@ -0,0 +1,386 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import com.sun.star.accessibility.*;
+import com.sun.star.awt.KeyStroke;
+
+/**
+ *
+ */
+public class AccessibleKeyBinding extends Object implements javax.accessibility.AccessibleKeyBinding {
+
+ XAccessibleKeyBinding unoAccessibleKeybinding;
+
+ public AccessibleKeyBinding(XAccessibleKeyBinding unoKB) {
+ unoAccessibleKeybinding = unoKB;
+ }
+
+ public static int convertModifiers(short s) {
+ int modifiers = 0;
+ if ((s & com.sun.star.awt.KeyModifier.SHIFT) != 0) {
+ modifiers = modifiers | java.awt.event.KeyEvent.SHIFT_DOWN_MASK;
+ }
+
+ if ((s & com.sun.star.awt.KeyModifier.MOD1) != 0) {
+ modifiers = modifiers | java.awt.event.KeyEvent.CTRL_DOWN_MASK;
+ }
+
+ if ((s & com.sun.star.awt.KeyModifier.MOD2) != 0) {
+ modifiers = modifiers | java.awt.event.KeyEvent.ALT_DOWN_MASK;
+ }
+
+ if ((s & com.sun.star.awt.KeyModifier.MOD3) != 0) {
+ modifiers = modifiers | java.awt.event.KeyEvent.META_DOWN_MASK;
+ }
+
+ return modifiers;
+ }
+
+ public static int convertKeyCode(short s) {
+ int keycode = java.awt.event.KeyEvent.VK_UNDEFINED;
+
+ switch(s) {
+ case com.sun.star.awt.Key.NUM0:
+ keycode = java.awt.event.KeyEvent.VK_0;
+ break;
+ case com.sun.star.awt.Key.NUM1:
+ keycode = java.awt.event.KeyEvent.VK_1;
+ break;
+ case com.sun.star.awt.Key.NUM2:
+ keycode = java.awt.event.KeyEvent.VK_2;
+ break;
+ case com.sun.star.awt.Key.NUM3:
+ keycode = java.awt.event.KeyEvent.VK_3;
+ break;
+ case com.sun.star.awt.Key.NUM4:
+ keycode = java.awt.event.KeyEvent.VK_4;
+ break;
+ case com.sun.star.awt.Key.NUM5:
+ keycode = java.awt.event.KeyEvent.VK_5;
+ break;
+ case com.sun.star.awt.Key.NUM6:
+ keycode = java.awt.event.KeyEvent.VK_6;
+ break;
+ case com.sun.star.awt.Key.NUM7:
+ keycode = java.awt.event.KeyEvent.VK_7;
+ break;
+ case com.sun.star.awt.Key.NUM8:
+ keycode = java.awt.event.KeyEvent.VK_8;
+ break;
+ case com.sun.star.awt.Key.NUM9:
+ keycode = java.awt.event.KeyEvent.VK_9;
+ break;
+ case com.sun.star.awt.Key.A:
+ keycode = java.awt.event.KeyEvent.VK_A;
+ break;
+ case com.sun.star.awt.Key.B:
+ keycode = java.awt.event.KeyEvent.VK_B;
+ break;
+ case com.sun.star.awt.Key.C:
+ keycode = java.awt.event.KeyEvent.VK_C;
+ break;
+ case com.sun.star.awt.Key.D:
+ keycode = java.awt.event.KeyEvent.VK_D;
+ break;
+ case com.sun.star.awt.Key.E:
+ keycode = java.awt.event.KeyEvent.VK_E;
+ break;
+ case com.sun.star.awt.Key.F:
+ keycode = java.awt.event.KeyEvent.VK_F;
+ break;
+ case com.sun.star.awt.Key.G:
+ keycode = java.awt.event.KeyEvent.VK_G;
+ break;
+ case com.sun.star.awt.Key.H:
+ keycode = java.awt.event.KeyEvent.VK_H;
+ break;
+ case com.sun.star.awt.Key.I:
+ keycode = java.awt.event.KeyEvent.VK_I;
+ break;
+ case com.sun.star.awt.Key.J:
+ keycode = java.awt.event.KeyEvent.VK_J;
+ break;
+ case com.sun.star.awt.Key.K:
+ keycode = java.awt.event.KeyEvent.VK_K;
+ break;
+ case com.sun.star.awt.Key.L:
+ keycode = java.awt.event.KeyEvent.VK_L;
+ break;
+ case com.sun.star.awt.Key.M:
+ keycode = java.awt.event.KeyEvent.VK_M;
+ break;
+ case com.sun.star.awt.Key.N:
+ keycode = java.awt.event.KeyEvent.VK_N;
+ break;
+ case com.sun.star.awt.Key.O:
+ keycode = java.awt.event.KeyEvent.VK_O;
+ break;
+ case com.sun.star.awt.Key.P:
+ keycode = java.awt.event.KeyEvent.VK_P;
+ break;
+ case com.sun.star.awt.Key.Q:
+ keycode = java.awt.event.KeyEvent.VK_Q;
+ break;
+ case com.sun.star.awt.Key.R:
+ keycode = java.awt.event.KeyEvent.VK_R;
+ break;
+ case com.sun.star.awt.Key.S:
+ keycode = java.awt.event.KeyEvent.VK_S;
+ break;
+ case com.sun.star.awt.Key.T:
+ keycode = java.awt.event.KeyEvent.VK_T;
+ break;
+ case com.sun.star.awt.Key.U:
+ keycode = java.awt.event.KeyEvent.VK_U;
+ break;
+ case com.sun.star.awt.Key.V:
+ keycode = java.awt.event.KeyEvent.VK_V;
+ break;
+ case com.sun.star.awt.Key.W:
+ keycode = java.awt.event.KeyEvent.VK_W;
+ break;
+ case com.sun.star.awt.Key.X:
+ keycode = java.awt.event.KeyEvent.VK_X;
+ break;
+ case com.sun.star.awt.Key.Y:
+ keycode = java.awt.event.KeyEvent.VK_Y;
+ break;
+ case com.sun.star.awt.Key.Z:
+ keycode = java.awt.event.KeyEvent.VK_Z;
+ break;
+ case com.sun.star.awt.Key.F1:
+ keycode = java.awt.event.KeyEvent.VK_F1;
+ break;
+ case com.sun.star.awt.Key.F2:
+ keycode = java.awt.event.KeyEvent.VK_F2;
+ break;
+ case com.sun.star.awt.Key.F3:
+ keycode = java.awt.event.KeyEvent.VK_F3;
+ break;
+ case com.sun.star.awt.Key.F4:
+ keycode = java.awt.event.KeyEvent.VK_F4;
+ break;
+ case com.sun.star.awt.Key.F5:
+ keycode = java.awt.event.KeyEvent.VK_F5;
+ break;
+ case com.sun.star.awt.Key.F6:
+ keycode = java.awt.event.KeyEvent.VK_F6;
+ break;
+ case com.sun.star.awt.Key.F7:
+ keycode = java.awt.event.KeyEvent.VK_F7;
+ break;
+ case com.sun.star.awt.Key.F8:
+ keycode = java.awt.event.KeyEvent.VK_F8;
+ break;
+ case com.sun.star.awt.Key.F9:
+ keycode = java.awt.event.KeyEvent.VK_F9;
+ break;
+ case com.sun.star.awt.Key.F10:
+ keycode = java.awt.event.KeyEvent.VK_F10;
+ break;
+ case com.sun.star.awt.Key.F11:
+ keycode = java.awt.event.KeyEvent.VK_F11;
+ break;
+ case com.sun.star.awt.Key.F12:
+ keycode = java.awt.event.KeyEvent.VK_F12;
+ break;
+ case com.sun.star.awt.Key.F13:
+ keycode = java.awt.event.KeyEvent.VK_F13;
+ break;
+ case com.sun.star.awt.Key.F14:
+ keycode = java.awt.event.KeyEvent.VK_F14;
+ break;
+ case com.sun.star.awt.Key.F15:
+ keycode = java.awt.event.KeyEvent.VK_F15;
+ break;
+ case com.sun.star.awt.Key.F16:
+ keycode = java.awt.event.KeyEvent.VK_F16;
+ break;
+ case com.sun.star.awt.Key.F17:
+ keycode = java.awt.event.KeyEvent.VK_F17;
+ break;
+ case com.sun.star.awt.Key.F18:
+ keycode = java.awt.event.KeyEvent.VK_F18;
+ break;
+ case com.sun.star.awt.Key.F19:
+ keycode = java.awt.event.KeyEvent.VK_F19;
+ break;
+ case com.sun.star.awt.Key.F20:
+ keycode = java.awt.event.KeyEvent.VK_F20;
+ break;
+ case com.sun.star.awt.Key.F21:
+ keycode = java.awt.event.KeyEvent.VK_F21;
+ break;
+ case com.sun.star.awt.Key.F22:
+ keycode = java.awt.event.KeyEvent.VK_F22;
+ break;
+ case com.sun.star.awt.Key.F23:
+ keycode = java.awt.event.KeyEvent.VK_F23;
+ break;
+ case com.sun.star.awt.Key.F24:
+ keycode = java.awt.event.KeyEvent.VK_F24;
+ break;
+ case com.sun.star.awt.Key.DOWN:
+ keycode = java.awt.event.KeyEvent.VK_DOWN;
+ break;
+ case com.sun.star.awt.Key.UP:
+ keycode = java.awt.event.KeyEvent.VK_UP;
+ break;
+ case com.sun.star.awt.Key.LEFT:
+ keycode = java.awt.event.KeyEvent.VK_LEFT;
+ break;
+ case com.sun.star.awt.Key.RIGHT:
+ keycode = java.awt.event.KeyEvent.VK_RIGHT;
+ break;
+ case com.sun.star.awt.Key.HOME:
+ keycode = java.awt.event.KeyEvent.VK_HOME;
+ break;
+ case com.sun.star.awt.Key.END:
+ keycode = java.awt.event.KeyEvent.VK_END;
+ break;
+ case com.sun.star.awt.Key.PAGEUP:
+ keycode = java.awt.event.KeyEvent.VK_PAGE_UP;
+ break;
+ case com.sun.star.awt.Key.PAGEDOWN:
+ keycode = java.awt.event.KeyEvent.VK_PAGE_DOWN;
+ break;
+ case com.sun.star.awt.Key.RETURN:
+ keycode = java.awt.event.KeyEvent.VK_ENTER;
+ break;
+ case com.sun.star.awt.Key.ESCAPE:
+ keycode = java.awt.event.KeyEvent.VK_ESCAPE;
+ break;
+ case com.sun.star.awt.Key.TAB:
+ keycode = java.awt.event.KeyEvent.VK_TAB;
+ break;
+ case com.sun.star.awt.Key.BACKSPACE:
+ keycode = java.awt.event.KeyEvent.VK_BACK_SPACE;
+ break;
+ case com.sun.star.awt.Key.SPACE:
+ keycode = java.awt.event.KeyEvent.VK_SPACE;
+ break;
+ case com.sun.star.awt.Key.INSERT:
+ keycode = java.awt.event.KeyEvent.VK_INSERT;
+ break;
+ case com.sun.star.awt.Key.DELETE:
+ keycode = java.awt.event.KeyEvent.VK_DELETE;
+ break;
+ case com.sun.star.awt.Key.ADD:
+ keycode = java.awt.event.KeyEvent.VK_ADD;
+ break;
+ case com.sun.star.awt.Key.SUBTRACT:
+ keycode = java.awt.event.KeyEvent.VK_SUBTRACT;
+ break;
+ case com.sun.star.awt.Key.MULTIPLY:
+ keycode = java.awt.event.KeyEvent.VK_MULTIPLY;
+ break;
+ case com.sun.star.awt.Key.DIVIDE:
+ keycode = java.awt.event.KeyEvent.VK_DIVIDE;
+ break;
+ case com.sun.star.awt.Key.POINT:
+ keycode = java.awt.event.KeyEvent.VK_PERIOD;
+ break;
+ case com.sun.star.awt.Key.COMMA:
+ keycode = java.awt.event.KeyEvent.VK_COMMA;
+ break;
+ case com.sun.star.awt.Key.LESS:
+ keycode = java.awt.event.KeyEvent.VK_LESS;
+ break;
+ case com.sun.star.awt.Key.GREATER:
+ keycode = java.awt.event.KeyEvent.VK_GREATER;
+ break;
+ case com.sun.star.awt.Key.EQUAL:
+ keycode = java.awt.event.KeyEvent.VK_EQUALS;
+ break;
+ case com.sun.star.awt.Key.CUT:
+ keycode = java.awt.event.KeyEvent.VK_CUT;
+ break;
+ case com.sun.star.awt.Key.COPY:
+ keycode = java.awt.event.KeyEvent.VK_COPY;
+ break;
+ case com.sun.star.awt.Key.PASTE:
+ keycode = java.awt.event.KeyEvent.VK_PASTE;
+ break;
+ case com.sun.star.awt.Key.UNDO:
+ keycode = java.awt.event.KeyEvent.VK_UNDO;
+ break;
+ case com.sun.star.awt.Key.FIND:
+ keycode = java.awt.event.KeyEvent.VK_FIND;
+ break;
+ case com.sun.star.awt.Key.PROPERTIES:
+ keycode = java.awt.event.KeyEvent.VK_PROPS;
+ break;
+ case com.sun.star.awt.Key.HELP:
+ keycode = java.awt.event.KeyEvent.VK_HELP;
+ break;
+ default:
+ ;
+ }
+ return keycode;
+ }
+
+ /*
+ * AccessibleKeyBinding
+ */
+
+ /** Returns a key binding for this object */
+ public Object getAccessibleKeyBinding(int i) {
+ try {
+ KeyStroke[] keys = unoAccessibleKeybinding.getAccessibleKeyBinding(i);
+ javax.swing.KeyStroke[] data = new javax.swing.KeyStroke[keys.length];
+ for (int j=0; j < keys.length; j++) {
+ int keyCode = convertKeyCode(keys[j].KeyCode);
+ if (keyCode != java.awt.event.KeyEvent.VK_UNDEFINED) {
+ data[j] = javax.swing.KeyStroke.getKeyStroke(keyCode, convertModifiers(keys[j].Modifiers));
+ } else {
+ data[j] = null;
+ }
+ }
+
+ if (keys.length == 1) {
+ return data[0];
+ } else {
+ return data;
+ }
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Returns the number of key bindings for this object */
+ public int getAccessibleKeyBindingCount() {
+ try {
+ return unoAccessibleKeybinding.getAccessibleKeyBindingCount();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return 0;
+ }
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleObjectFactory.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleObjectFactory.java
new file mode 100644
index 000000000000..129a3b820993
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleObjectFactory.java
@@ -0,0 +1,545 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import java.lang.ref.WeakReference;
+import javax.accessibility.Accessible;
+import javax.accessibility.AccessibleStateSet;
+
+import com.sun.star.uno.*;
+import com.sun.star.accessibility.*;
+import org.openoffice.java.accessibility.logging.XAccessibleEventLog;
+
+/**
+*/
+public class AccessibleObjectFactory {
+ // This type is needed for conversions from/to uno Any
+ public static final Type XAccessibleType = new Type(XAccessible.class);
+
+ private static java.util.Hashtable objectList = new java.util.Hashtable();
+ private static java.awt.FocusTraversalPolicy focusTraversalPolicy = new FocusTraversalPolicy();
+
+ private static java.awt.EventQueue theEventQueue = java.awt.Toolkit.getDefaultToolkit().
+ getSystemEventQueue();
+
+ public static java.awt.EventQueue getEventQueue() {
+ return theEventQueue;
+ }
+
+ public static void postFocusGained(java.awt.Component c) {
+ getEventQueue().postEvent(new java.awt.event.FocusEvent(c, java.awt.event.FocusEvent.FOCUS_GAINED));
+ }
+
+ public static void postWindowGainedFocus(java.awt.Window w) {
+ postWindowEvent(w, java.awt.event.WindowEvent.WINDOW_GAINED_FOCUS);
+ }
+
+ public static void postWindowLostFocus(java.awt.Window w) {
+ postWindowEvent(w, java.awt.event.WindowEvent.WINDOW_LOST_FOCUS);
+ }
+
+ public static void postWindowActivated(java.awt.Window w) {
+ postWindowEvent(w, java.awt.event.WindowEvent.WINDOW_ACTIVATED);
+ }
+
+ public static void postWindowDeactivated(java.awt.Window w) {
+ postWindowEvent(w, java.awt.event.WindowEvent.WINDOW_DEACTIVATED);
+ }
+
+ public static void postWindowOpened(java.awt.Window w) {
+ postWindowEvent(w, java.awt.event.WindowEvent.WINDOW_OPENED);
+ }
+
+ public static void postWindowClosed(java.awt.Window w) {
+ postWindowEvent(w, java.awt.event.WindowEvent.WINDOW_CLOSED);
+ }
+
+ public static void invokeAndWait() {
+ try {
+ theEventQueue.invokeAndWait( new java.lang.Runnable () {
+ public void run() {
+ }
+ });
+ } catch (java.lang.reflect.InvocationTargetException e) {
+ } catch (java.lang.InterruptedException e) {
+ }
+ }
+
+ private static void postWindowEvent(java.awt.Window w, int i) {
+ theEventQueue.postEvent(new java.awt.event.WindowEvent(w, i));
+ }
+
+ public static java.awt.Component getAccessibleComponent(XAccessible xAccessible) {
+ java.awt.Component c = null;
+ if (xAccessible != null) {
+ // Retrieve unique id for the original UNO object to be used as a hash key
+ String oid = UnoRuntime.generateOid(xAccessible);
+
+ // Check if we already have a wrapper object for this context
+ synchronized (objectList) {
+ WeakReference r = (WeakReference) objectList.get(oid);
+ if(r != null) {
+ c = (java.awt.Component) r.get();
+ }
+ }
+ }
+ return c;
+ }
+
+ public static void addChild(java.awt.Container parent, Object any) {
+ try {
+ addChild(parent, (XAccessible) AnyConverter.toObject(XAccessibleType, any));
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ System.err.println(e.getClass().getName() + " caught: " + e.getMessage());
+ }
+ }
+
+ public static void addChild(java.awt.Container parent, XAccessible child) {
+ try {
+ if (child != null) {
+ XAccessibleContext childAC = child.getAccessibleContext();
+ if (childAC != null) {
+ XAccessibleStateSet stateSet = childAC.getAccessibleStateSet();
+ if (stateSet != null) {
+ java.awt.Component c = getAccessibleComponent(child);
+
+ // Re-use existing wrapper if possible, create a new one otherwise
+ if (c != null) {
+ // Seems to be already in child list
+ if (parent.equals(c.getParent()))
+ return;
+ // Update general component states
+ c.setEnabled(stateSet.contains(AccessibleStateType.ENABLED));
+ c.setVisible(stateSet.contains(AccessibleStateType.VISIBLE));
+ } else {
+ c = createAccessibleComponentImpl(child, childAC, stateSet);
+ }
+
+ if (c != null) {
+ if (c instanceof java.awt.Container) {
+ populateContainer((java.awt.Container) c, childAC);
+ }
+ parent.add(c);
+ // Simulate focus gained event for new child
+ if (stateSet.contains(AccessibleStateType.FOCUSED)) {
+ postFocusGained(c);
+ }
+ }
+ }
+ }
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ System.err.println(e.getClass().getName() + " caught: " + e.getMessage());
+ e.printStackTrace();
+ }
+ }
+
+ protected static void removeChild(java.awt.Container parent, Object any) {
+ try {
+ XAccessible xAccessible = (XAccessible) AnyConverter.toObject(XAccessibleType, any);
+ java.awt.Component c = getAccessibleComponent(xAccessible);
+
+ if (c != null) {
+ parent.remove(c);
+
+ if (c instanceof java.awt.Container) {
+ clearContainer((java.awt.Container) c);
+ }
+ }
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ System.err.println(e.getClass().getName() + " caught: " + e.getMessage());
+ }
+ }
+
+
+ /**
+ * Removes all children from the container parent
+ */
+
+ protected static void clearContainer(java.awt.Container parent) {
+ // Purge all children from this container
+ int count = parent.getComponentCount();
+ for (int i = 0; i < count; i++) {
+ java.awt.Component c = parent.getComponent(i);
+ if (c instanceof java.awt.Container) {
+ clearContainer((java.awt.Container) c);
+ }
+ }
+ parent.removeAll();
+ }
+
+
+ /**
+ * Populates the given Container parent with wrapper objects for all children of parentAC. This method is
+ * intended to be called when a container is added using a CHILDREN_CHANGED event.
+ */
+
+ protected static void populateContainer(java.awt.Container parent, XAccessibleContext parentAC) {
+ if (parentAC != null) {
+ try {
+ int childCount = parentAC.getAccessibleChildCount();
+ for (int i=0; i<childCount; i++) {
+ addChild(parent, parentAC.getAccessibleChild(i));
+ }
+ } catch (java.lang.Exception e) {
+ System.err.println(e.getClass().getName() + " caught: " + e.getMessage());
+ e.printStackTrace();
+ }
+ }
+ }
+
+ /**
+ * Populates the given Container parent with wrapper objects for all children of parentAC. This method is
+ * intended to be called when a new window has been opened.
+ */
+ protected static void populateContainer(java.awt.Container parent, XAccessibleContext parentAC, java.awt.Window frame) {
+ if (parentAC != null) {
+ try {
+ int childCount = parentAC.getAccessibleChildCount();
+ for (int i=0; i<childCount; i++) {
+ XAccessible child = parentAC.getAccessibleChild(i);
+ if (child != null) {
+ XAccessibleContext childAC = child.getAccessibleContext();
+ java.awt.Component c = createAccessibleComponent(child, childAC, frame);
+ if (c != null) {
+ if (c instanceof java.awt.Container) {
+ populateContainer((java.awt.Container) c, childAC, frame);
+ }
+ parent.add(c);
+ }
+ } else if (Build.DEBUG) {
+ System.err.println("ignoring not accessible child " + i);
+ }
+ }
+ }
+
+ catch (java.lang.Exception e) {
+ System.err.println(e.getClass().getName() + " caught: " + e.getMessage());
+ e.printStackTrace();
+ }
+ }
+ }
+
+ protected static java.awt.Component createAccessibleComponent(XAccessible xAccessible) {
+ try {
+ XAccessibleContext xAccessibleContext = xAccessible.getAccessibleContext();
+ if (xAccessibleContext != null) {
+ return createAccessibleComponentImpl(xAccessible, xAccessibleContext, xAccessibleContext.getAccessibleStateSet());
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ System.err.println(e.getClass().getName() + " caught: " + e.getMessage());
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ protected static java.awt.Component createAccessibleComponent(XAccessible xAccessible, XAccessibleContext xAccessibleContext,
+ java.awt.Window frame) {
+ if (xAccessibleContext != null) {
+ try {
+ XAccessibleStateSet xAccessibleStateSet = xAccessibleContext.getAccessibleStateSet();
+ java.awt.Component c = createAccessibleComponentImpl(xAccessible, xAccessibleContext, xAccessibleStateSet);
+ if (c != null) {
+ // Set this component as initial component
+ if (xAccessibleStateSet.contains(AccessibleStateType.FOCUSED)) {
+ if (frame instanceof NativeFrame) {
+ ((NativeFrame) frame).setInitialComponent(c);
+ }
+ }
+ return c;
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ System.err.println(e.getClass().getName() + " caught: " + e.getMessage());
+ e.printStackTrace();
+ }
+ }
+ return null;
+ }
+
+ protected static java.awt.Component createAccessibleComponentImpl(XAccessible xAccessible, XAccessibleContext xAccessibleContext,
+ XAccessibleStateSet xAccessibleStateSet) {
+ java.awt.Component c = null;
+ short role = xAccessibleContext.getAccessibleRole();
+ switch (role) {
+ case AccessibleRole.CANVAS:
+ c = new Container(javax.accessibility.AccessibleRole.CANVAS,
+ xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.CHECK_BOX:
+ c = new CheckBox(xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.COMBO_BOX:
+ c = new ComboBox(xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.DOCUMENT:
+ c = new Container(javax.accessibility.AccessibleRole.CANVAS,
+ xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.EMBEDDED_OBJECT:
+ c = new Container(javax.accessibility.AccessibleRole.PANEL,
+ xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.END_NOTE:
+ c = new Container(javax.accessibility.AccessibleRole.PANEL,
+ xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.FILLER:
+ c = new Container(javax.accessibility.AccessibleRole.FILLER,
+ xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.FOOTNOTE:
+ c = new Container(javax.accessibility.AccessibleRole.PANEL,
+ xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.FOOTER:
+ c = new Container(javax.accessibility.AccessibleRole.PANEL,
+ xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.GRAPHIC:
+ c = new Container(javax.accessibility.AccessibleRole.PANEL,
+ xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.HEADER:
+ c = new Container(javax.accessibility.AccessibleRole.PANEL,
+ xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.ICON:
+ c = new Icon(xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.LABEL:
+ c = new Label(xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.LAYERED_PANE:
+ c = new Container(javax.accessibility.AccessibleRole.LAYERED_PANE,
+ xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.LIST:
+ if (xAccessibleStateSet.contains(AccessibleStateType.MANAGES_DESCENDANTS)) {
+ c = new List(xAccessible, xAccessibleContext);
+ } else {
+ c = new Container(javax.accessibility.AccessibleRole.LIST,
+ xAccessible, xAccessibleContext);
+ }
+ break;
+ case AccessibleRole.MENU:
+ c = new Menu(xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.MENU_BAR:
+ c = new MenuContainer(javax.accessibility.AccessibleRole.MENU_BAR, xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.MENU_ITEM:
+ c = new MenuItem(xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.POPUP_MENU:
+ c = new MenuContainer(javax.accessibility.AccessibleRole.POPUP_MENU, xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.OPTION_PANE:
+ c = new Container(javax.accessibility.AccessibleRole.OPTION_PANE,
+ xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.PAGE_TAB:
+ c = new Container(javax.accessibility.AccessibleRole.PAGE_TAB, xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.PAGE_TAB_LIST:
+ c = new Container(javax.accessibility.AccessibleRole.PAGE_TAB_LIST, xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.PARAGRAPH:
+ case AccessibleRole.HEADING:
+ c = new Paragraph(xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.PANEL:
+ c = new Container(javax.accessibility.AccessibleRole.PANEL,
+ xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.PUSH_BUTTON:
+ c = new Button(xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.RADIO_BUTTON:
+ c = new RadioButton(xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.ROOT_PANE:
+ c = new Container(javax.accessibility.AccessibleRole.ROOT_PANE,
+ xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.SCROLL_BAR:
+ c = new ScrollBar(xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.SCROLL_PANE:
+ c = new Container(javax.accessibility.AccessibleRole.SCROLL_PANE,
+ xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.SEPARATOR:
+ c = new Separator(xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.SHAPE:
+ c = new Container(javax.accessibility.AccessibleRole.CANVAS,
+ xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.SPLIT_PANE:
+ c = new Container(javax.accessibility.AccessibleRole.SPLIT_PANE,
+ xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.STATUS_BAR:
+ c = new Container(javax.accessibility.AccessibleRole.STATUS_BAR,
+ xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.COLUMN_HEADER:
+ case AccessibleRole.TABLE:
+ if (xAccessibleStateSet.contains(AccessibleStateType.MANAGES_DESCENDANTS)) {
+ c = new Table(xAccessible, xAccessibleContext,
+ xAccessibleStateSet.contains(AccessibleStateType.MULTI_SELECTABLE));
+ } else {
+ c = new Container(javax.accessibility.AccessibleRole.TABLE,
+ xAccessible, xAccessibleContext);
+ }
+ break;
+ case AccessibleRole.TABLE_CELL:
+ if( xAccessibleContext.getAccessibleChildCount() > 0 )
+ c = new Container(javax.accessibility.AccessibleRole.PANEL,
+ xAccessible, xAccessibleContext);
+ else
+ c = new Label(xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.TEXT:
+ c = new TextComponent(xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.TEXT_FRAME:
+ c = new Container(javax.accessibility.AccessibleRole.PANEL,
+ xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.TOGGLE_BUTTON:
+ c = new ToggleButton(xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.TOOL_BAR:
+ c = new Container(javax.accessibility.AccessibleRole.TOOL_BAR,
+ xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.TOOL_TIP:
+ c = new ToolTip(xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.TREE:
+ c = new Tree(xAccessible, xAccessibleContext);
+ break;
+ case AccessibleRole.VIEW_PORT:
+ c = new Container(javax.accessibility.AccessibleRole.VIEWPORT,
+ xAccessible, xAccessibleContext);
+ break;
+ default:
+ System.err.println("Unmapped accessible object " + role);
+ System.err.println("usually mapped to " + AccessibleRoleAdapter.getAccessibleRole(role));
+ c = new Container(AccessibleRoleAdapter.getAccessibleRole(role),
+ xAccessible, xAccessibleContext);
+ break;
+ }
+ if (c != null) {
+ // Add the newly created object to the cache list
+ synchronized (objectList) {
+ objectList.put(c.toString(), new WeakReference(c));
+ if (Build.DEBUG) {
+// System.out.println("Object cache now contains " + objectList.size() + " objects.");
+ }
+ }
+
+ AccessibleStateAdapter.setComponentState(c, xAccessibleStateSet);
+
+ if (! Build.PRODUCT) {
+ String property = System.getProperty("AccessBridgeLogging");
+ if ((property != null) && (property.indexOf("event") != -1)) {
+ XAccessibleEventLog.addEventListener(xAccessibleContext, c);
+ }
+ }
+ }
+
+ return c;
+ }
+
+ protected static void disposing(java.awt.Component c) {
+ if (c != null) {
+ synchronized (objectList) {
+ objectList.remove(c.toString());
+ }
+ }
+ }
+
+ public static java.awt.Window getTopWindow(XAccessible xAccessible) {
+ XAccessibleContext xAccessibleContext = xAccessible.getAccessibleContext();
+
+ if (xAccessibleContext != null) {
+ short role = xAccessibleContext.getAccessibleRole();
+ XAccessibleStateSet xAccessibleStateSet = xAccessibleContext.getAccessibleStateSet();
+ XAccessibleComponent xAccessibleComponent = (XAccessibleComponent)
+ UnoRuntime.queryInterface(XAccessibleComponent.class, xAccessibleContext);
+
+ java.awt.Window w;
+ if (role == AccessibleRole.DIALOG) {
+ w = new Dialog(new Application(),
+ xAccessibleContext.getAccessibleName(),
+ xAccessibleStateSet.contains(AccessibleStateType.MODAL),
+ xAccessibleComponent);
+ } else if (role == AccessibleRole.ALERT) {
+ w = new Alert(new Application(),
+ xAccessibleContext.getAccessibleName(),
+ xAccessibleStateSet.contains(AccessibleStateType.MODAL),
+ xAccessibleComponent);
+ } else if (role == AccessibleRole.FRAME) {
+ w = new Frame(xAccessibleContext.getAccessibleName(),
+ xAccessibleComponent);
+ } else if (role == AccessibleRole.WINDOW) {
+ java.awt.Window activeWindow =
+ java.awt.KeyboardFocusManager.getCurrentKeyboardFocusManager().getActiveWindow();
+ if (activeWindow != null) {
+ w = new Window(activeWindow, xAccessibleComponent);
+ } else {
+ if (Build.DEBUG) {
+ System.err.println("no active frame found for Window: " + role);
+ }
+ return null;
+ }
+ } else {
+ if (Build.DEBUG) {
+ System.err.println("invalid role for toplevel window: " + role);
+ }
+ return null;
+ }
+ populateContainer(w, xAccessibleContext, w);
+ w.setFocusTraversalPolicy(focusTraversalPolicy);
+ w.setVisible(true);
+
+ // Make the new window the focused one if it has an initialy focused object set.
+ java.awt.Component c = ((NativeFrame) w).getInitialComponent();
+ if (c != null) {
+ postWindowGainedFocus(w);
+ }
+ return w;
+ }
+
+ return null;
+ }
+}
+
+
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleRelationAdapter.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleRelationAdapter.java
new file mode 100644
index 000000000000..2f1709acac45
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleRelationAdapter.java
@@ -0,0 +1,64 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import javax.accessibility.Accessible;
+import com.sun.star.accessibility.AccessibleRelation;
+import com.sun.star.accessibility.XAccessible;
+
+/**
+ */
+public abstract class AccessibleRelationTypeMap {
+
+ final static String[] data = {
+ null,
+ javax.accessibility.AccessibleRelation.CONTROLLED_BY,
+ javax.accessibility.AccessibleRelation.CONTROLLED_BY,
+ javax.accessibility.AccessibleRelation.CONTROLLER_FOR,
+ javax.accessibility.AccessibleRelation.CONTROLLER_FOR,
+ javax.accessibility.AccessibleRelation.LABEL_FOR,
+ javax.accessibility.AccessibleRelation.LABEL_FOR,
+ javax.accessibility.AccessibleRelation.LABELED_BY,
+ javax.accessibility.AccessibleRelation.LABELED_BY,
+ javax.accessibility.AccessibleRelation.MEMBER_OF,
+ javax.accessibility.AccessibleRelation.MEMBER_OF
+ };
+
+ public static void fillAccessibleRelationSet(javax.accessibility.AccessibleRelationSet s, AccessibleRelation[] relations) {
+ AccessibleObjectFactory factory = AccessibleObjectFactory.getDefault();
+ for(int i=0; i<relations.length; i++) {
+ if( relations[i].RelationType < data.length && data[relations[i].RelationType] != null ) {
+ javax.accessibility.AccessibleRelation r =
+ new javax.accessibility.AccessibleRelation(data[relations[i].RelationType]);
+
+ r.setTarget(factory.getAccessibleObjectSet(relations[i].TargetSet));
+ s.add(r);
+ }
+ }
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleRoleAdapter.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleRoleAdapter.java
new file mode 100644
index 000000000000..c7f630fdd3ab
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleRoleAdapter.java
@@ -0,0 +1,148 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import com.sun.star.accessibility.XAccessible;
+import com.sun.star.accessibility.XAccessibleContext;
+
+/** This class maps the AccessibleRole(s) of the UNO accessibility API
+ * to the corresponding javax.accessibility objects.
+ */
+public abstract class AccessibleRoleAdapter {
+
+ /* This array is used as a mapping between the UNO AccessibleRole
+ * and the AccessibleRole objects of the Java accessibility API.
+ */
+ public static final javax.accessibility.AccessibleRole[] data = {
+ javax.accessibility.AccessibleRole.UNKNOWN,
+ javax.accessibility.AccessibleRole.ALERT,
+ javax.accessibility.AccessibleRole.COLUMN_HEADER,
+ javax.accessibility.AccessibleRole.CANVAS,
+ javax.accessibility.AccessibleRole.CHECK_BOX,
+ javax.accessibility.AccessibleRole.CHECK_BOX, // CHECK_MENU_ITEM
+ javax.accessibility.AccessibleRole.COLOR_CHOOSER,
+ javax.accessibility.AccessibleRole.COMBO_BOX,
+ javax.accessibility.AccessibleRole.DATE_EDITOR,
+ javax.accessibility.AccessibleRole.DESKTOP_ICON,
+ javax.accessibility.AccessibleRole.DESKTOP_PANE,
+ javax.accessibility.AccessibleRole.DIRECTORY_PANE,
+ javax.accessibility.AccessibleRole.DIALOG,
+ javax.accessibility.AccessibleRole.CANVAS, // DOCUMENT
+ javax.accessibility.AccessibleRole.PANEL, // EMBEDDED_OBJECT
+ javax.accessibility.AccessibleRole.PANEL, // ENDNOTE
+ javax.accessibility.AccessibleRole.FILE_CHOOSER,
+ javax.accessibility.AccessibleRole.FILLER,
+ javax.accessibility.AccessibleRole.FONT_CHOOSER,
+ javax.accessibility.AccessibleRole.FOOTER,
+ javax.accessibility.AccessibleRole.PANEL, // FOOTNOTE
+ javax.accessibility.AccessibleRole.FRAME,
+ javax.accessibility.AccessibleRole.GLASS_PANE,
+ javax.accessibility.AccessibleRole.PANEL, // GRAPHIC
+ javax.accessibility.AccessibleRole.GROUP_BOX,
+ javax.accessibility.AccessibleRole.HEADER,
+ javax.accessibility.AccessibleRole.TEXT, // HEADING
+ javax.accessibility.AccessibleRole.HYPERLINK,
+ javax.accessibility.AccessibleRole.ICON,
+ javax.accessibility.AccessibleRole.INTERNAL_FRAME,
+ javax.accessibility.AccessibleRole.LABEL,
+ javax.accessibility.AccessibleRole.LAYERED_PANE,
+ javax.accessibility.AccessibleRole.LIST,
+ javax.accessibility.AccessibleRole.LABEL, // LIST_ITEM - required by Zoomtext
+ javax.accessibility.AccessibleRole.MENU,
+ javax.accessibility.AccessibleRole.MENU_BAR,
+ javax.accessibility.AccessibleRole.MENU_ITEM,
+ javax.accessibility.AccessibleRole.OPTION_PANE,
+ javax.accessibility.AccessibleRole.PAGE_TAB,
+ javax.accessibility.AccessibleRole.PAGE_TAB_LIST,
+ javax.accessibility.AccessibleRole.PANEL,
+ javax.accessibility.AccessibleRole.PARAGRAPH,
+ javax.accessibility.AccessibleRole.PASSWORD_TEXT,
+ javax.accessibility.AccessibleRole.POPUP_MENU,
+ javax.accessibility.AccessibleRole.PUSH_BUTTON,
+ javax.accessibility.AccessibleRole.PROGRESS_BAR,
+ javax.accessibility.AccessibleRole.RADIO_BUTTON,
+ javax.accessibility.AccessibleRole.RADIO_BUTTON, // RADIO_MENU_ITEM
+ javax.accessibility.AccessibleRole.ROW_HEADER,
+ javax.accessibility.AccessibleRole.ROOT_PANE,
+ javax.accessibility.AccessibleRole.SCROLL_BAR,
+ javax.accessibility.AccessibleRole.SCROLL_PANE,
+ javax.accessibility.AccessibleRole.CANVAS, // SHAPE
+ javax.accessibility.AccessibleRole.SEPARATOR,
+ javax.accessibility.AccessibleRole.SLIDER,
+ javax.accessibility.AccessibleRole.SPIN_BOX,
+ javax.accessibility.AccessibleRole.SPLIT_PANE,
+ javax.accessibility.AccessibleRole.STATUS_BAR,
+ javax.accessibility.AccessibleRole.TABLE,
+ javax.accessibility.AccessibleRole.LABEL, // TABLE_CELL - required by ZoomText
+ javax.accessibility.AccessibleRole.TEXT,
+ javax.accessibility.AccessibleRole.PANEL, // TEXT_FRAME
+ javax.accessibility.AccessibleRole.TOGGLE_BUTTON,
+ javax.accessibility.AccessibleRole.TOOL_BAR,
+ javax.accessibility.AccessibleRole.TOOL_TIP,
+ javax.accessibility.AccessibleRole.TREE,
+ javax.accessibility.AccessibleRole.VIEWPORT,
+ javax.accessibility.AccessibleRole.WINDOW,
+ javax.accessibility.AccessibleRole.RADIO_BUTTON, // BUTTON_DROPDOWN
+ javax.accessibility.AccessibleRole.RADIO_BUTTON, // BUTTON_MENU
+ javax.accessibility.AccessibleRole.PANEL, // CAPTION
+ javax.accessibility.AccessibleRole.PANEL, // CHART
+ javax.accessibility.AccessibleRole.EDITBAR,
+ javax.accessibility.AccessibleRole.PANEL, // FORM
+ javax.accessibility.AccessibleRole.PANEL, // IMAGE_MAP
+ javax.accessibility.AccessibleRole.PANEL, // NOTE
+ javax.accessibility.AccessibleRole.PANEL, // PAGE
+ javax.accessibility.AccessibleRole.RULER,
+ javax.accessibility.AccessibleRole.PANEL, // SECTION
+ javax.accessibility.AccessibleRole.LABEL, // TREE_ITEM
+ javax.accessibility.AccessibleRole.TABLE // TREE_TABLE
+ };
+
+ public static javax.accessibility.AccessibleRole getAccessibleRole(short role) {
+ if(role < data.length) {
+ if(data[role] == null) {
+ System.err.println("Unmapped role: " + role);
+ }
+ return data[role];
+ }
+ // FIXME: remove debug out
+ System.err.println("Unmappable role: " + role);
+ return null;
+ }
+
+ public static javax.accessibility.AccessibleRole getAccessibleRole(XAccessible unoAccessible) {
+ try {
+ XAccessibleContext unoAccessibleContext = unoAccessible.getAccessibleContext();
+ if (unoAccessibleContext != null) {
+ return getAccessibleRole(unoAccessibleContext.getAccessibleRole());
+ }
+ return null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return javax.accessibility.AccessibleRole.UNKNOWN;
+ }
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleSelectionImpl.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleSelectionImpl.java
new file mode 100644
index 000000000000..6e40c1e7a78d
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleSelectionImpl.java
@@ -0,0 +1,99 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import com.sun.star.accessibility.*;
+
+class AccessibleSelectionImpl implements javax.accessibility.AccessibleSelection {
+ XAccessibleSelection unoAccessibleSelection;
+
+ AccessibleSelectionImpl(XAccessibleSelection xAccessibleSelection) {
+ unoAccessibleSelection = xAccessibleSelection;
+ }
+
+ /** Returns an Accessible representing the specified selected child of the object */
+ public javax.accessibility.Accessible getAccessibleSelection(int i) {
+ try {
+ return (javax.accessibility.Accessible) AccessibleObjectFactory.getAccessibleComponent(
+ unoAccessibleSelection.getSelectedAccessibleChild(i));
+ } catch (com.sun.star.uno.Exception e) {
+ return null;
+ }
+ }
+
+ /** Adds the specified Accessible child of the object to the object's selection */
+ public void addAccessibleSelection(int i) {
+ try {
+ unoAccessibleSelection.selectAccessibleChild(i);
+ } catch (com.sun.star.uno.Exception e) {
+ }
+ }
+
+ /** Clears the selection in the object, so that no children in the object are selected */
+ public void clearAccessibleSelection() {
+ try {
+ unoAccessibleSelection.clearAccessibleSelection();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+
+ /** Returns the number of Accessible children currently selected */
+ public int getAccessibleSelectionCount() {
+ try {
+ return unoAccessibleSelection.getSelectedAccessibleChildCount();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return 0;
+ }
+ }
+
+ /** Determines if the current child of this object is selected */
+ public boolean isAccessibleChildSelected(int i) {
+ try {
+ return unoAccessibleSelection.isAccessibleChildSelected(i);
+ } catch (com.sun.star.uno.Exception e) {
+ return false;
+ }
+ }
+
+ /** Removes the specified child of the object from the object's selection */
+ public void removeAccessibleSelection(int i) {
+ try {
+ unoAccessibleSelection.deselectAccessibleChild(i);
+ } catch (com.sun.star.uno.Exception e) {
+ }
+ }
+
+ /** Causes every child of the object to be selected if the object supports multiple selection */
+ public void selectAllAccessibleSelection() {
+ try {
+ unoAccessibleSelection.selectAllAccessibleChildren();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleStateAdapter.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleStateAdapter.java
new file mode 100644
index 000000000000..ea1979a545ed
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleStateAdapter.java
@@ -0,0 +1,214 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import javax.accessibility.AccessibleState;
+import javax.accessibility.AccessibleStateSet;
+
+import com.sun.star.uno.AnyConverter;
+import com.sun.star.accessibility.AccessibleStateType;
+import com.sun.star.accessibility.XAccessibleStateSet;
+
+public class AccessibleStateAdapter {
+
+ private static final AccessibleState[] stateTypeMap = {
+ null,
+ AccessibleState.ACTIVE,
+ AccessibleState.ARMED,
+ AccessibleState.BUSY,
+ AccessibleState.CHECKED,
+ AccessibleExtendedState.DEFUNCT,
+ AccessibleState.EDITABLE,
+ AccessibleState.ENABLED,
+ AccessibleState.EXPANDABLE,
+ AccessibleState.EXPANDED,
+ AccessibleState.FOCUSABLE,
+ AccessibleState.FOCUSED,
+ AccessibleState.HORIZONTAL,
+ AccessibleState.ICONIFIED,
+ AccessibleExtendedState.INDETERMINATE,
+ AccessibleExtendedState.MANAGES_DESCENDANTS,
+ AccessibleState.MODAL,
+ AccessibleState.MULTI_LINE,
+ AccessibleState.MULTISELECTABLE,
+ AccessibleState.OPAQUE,
+ AccessibleState.PRESSED,
+ AccessibleState.RESIZABLE,
+ AccessibleState.SELECTABLE,
+ AccessibleState.SELECTED,
+ AccessibleExtendedState.SENSITIVE,
+ AccessibleState.SHOWING,
+ AccessibleState.SINGLE_LINE,
+ AccessibleExtendedState.STALE,
+ AccessibleState.TRANSIENT,
+ AccessibleState.VERTICAL,
+ AccessibleState.VISIBLE
+ };
+
+ private static void printToplevelStateMessage(AccessibleState s, java.awt.Component c) {
+ System.err.println("*** ERROR *** " + s + " state is a toplevel window state " + c);
+ }
+
+ private static String getDisplayName(java.awt.Component c) {
+ javax.accessibility.Accessible a = (javax.accessibility.Accessible) c;
+ if( a != null) {
+ javax.accessibility.AccessibleContext ac = a.getAccessibleContext();
+ return "[" + ac.getAccessibleRole() + "] " + ac.getAccessibleName();
+ } else {
+ return c.toString();
+ }
+ }
+
+ private static void printOutOfSyncMessage(AccessibleState s, java.awt.Component c, boolean enabled) {
+ System.err.println("*** ERROR *** " + s + " state out of sync (UNO state set: " + !enabled + ", Java component state: " + enabled + ") for " + getDisplayName(c));
+ }
+
+ public static AccessibleState getAccessibleState(Object any) {
+ try {
+ if (AnyConverter.isShort(any)) {
+ return getAccessibleState(AnyConverter.toShort(any));
+ }
+ return null;
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ return null;
+ }
+ }
+
+ public static AccessibleState getAccessibleState(short unoStateType) {
+ if (unoStateType > 0 && unoStateType < stateTypeMap.length) {
+ return stateTypeMap[unoStateType];
+ }
+ return null;
+ }
+
+ public static AccessibleStateSet getDefunctStateSet() {
+ AccessibleStateSet ass = new AccessibleStateSet();
+ ass.add(AccessibleExtendedState.DEFUNCT);
+ return ass;
+ }
+
+ public static void setComponentState(java.awt.Component c,
+ XAccessibleStateSet xAccessibleStateSet) {
+
+ try {
+ if (xAccessibleStateSet != null) {
+ // Set the boundings of the component if it is visible ..
+ if (!xAccessibleStateSet.contains(AccessibleStateType.VISIBLE)) {
+ c.setVisible(false);
+ }
+ // Set the components' enabled state ..
+ if (!xAccessibleStateSet.contains(AccessibleStateType.ENABLED)) {
+ c.setEnabled(false);
+ }
+ // Set the components' focusable state ..
+ if (!xAccessibleStateSet.contains(AccessibleStateType.FOCUSABLE)) {
+ c.setFocusable(false);
+ }
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+
+ public static AccessibleStateSet getAccessibleStateSet(java.awt.Component c,
+ XAccessibleStateSet xAccessibleStateSet) {
+
+ try {
+ if (xAccessibleStateSet != null) {
+ AccessibleStateSet as = new AccessibleStateSet();
+ short[] unoStateTypes = xAccessibleStateSet.getStates();
+ for (int i=0; i<unoStateTypes.length; i++) {
+ if (unoStateTypes[i] > 0 &&
+ unoStateTypes[i] < stateTypeMap.length) {
+ as.add(stateTypeMap[unoStateTypes[i]]);
+ }
+ }
+
+ // Note: COLLAPSED does not exists in the UAA.
+ if (as.contains(AccessibleState.EXPANDABLE) &&
+ ! as.contains(AccessibleState.EXPANDED)) {
+ as.add(AccessibleState.COLLAPSED);
+ }
+
+ // Sync office and Java FOCUSED state
+ boolean isFocusInSync;
+ if (c.isFocusOwner()) {
+ isFocusInSync = !as.add(AccessibleState.FOCUSED);
+ } else {
+ isFocusInSync = !as.remove(AccessibleState.FOCUSED);
+ }
+
+ // Sync office and Java ACTIVE state
+ boolean isActiveInSync;
+ if (c instanceof java.awt.Window && ((java.awt.Window) c).isActive()) {
+ isActiveInSync = !as.add(AccessibleState.ACTIVE);
+ } else {
+ isActiveInSync = !as.remove(AccessibleState.ACTIVE);
+ }
+
+ // Report out-of-sync messages
+ if (!Build.PRODUCT) {
+ if (!isFocusInSync) {
+ printOutOfSyncMessage(AccessibleState.FOCUSED, c, c.isFocusOwner());
+ }
+ if (!isActiveInSync) {
+ printOutOfSyncMessage(AccessibleState.ACTIVE, c, ((java.awt.Window) c).isActive());
+ }
+ if (as.contains(AccessibleState.ENABLED) != c.isEnabled()) {
+ printOutOfSyncMessage(AccessibleState.ENABLED, c, c.isEnabled());
+ }
+ if (as.contains(AccessibleState.FOCUSABLE) != c.isFocusable()) {
+ printOutOfSyncMessage(AccessibleState.FOCUSABLE, c, c.isFocusable());
+ }
+ if (as.contains(AccessibleState.SHOWING) != c.isShowing()) {
+ printOutOfSyncMessage(AccessibleState.SHOWING, c, c.isShowing());
+ }
+ if (as.contains(AccessibleState.VISIBLE) != c.isVisible()) {
+ printOutOfSyncMessage(AccessibleState.VISIBLE, c, c.isVisible());
+ }
+
+ // The following states are for toplevel windows only
+ if (! (c instanceof java.awt.Window)) {
+ if (as.contains(AccessibleState.ACTIVE)) {
+ printToplevelStateMessage(AccessibleState.ACTIVE, c);
+ }
+ if (as.contains(AccessibleState.ICONIFIED)) {
+ printToplevelStateMessage(AccessibleState.ICONIFIED, c);
+ }
+ if (as.contains(AccessibleState.MODAL)) {
+ printToplevelStateMessage(AccessibleState.MODAL, c);
+ }
+ }
+ }
+ return as;
+ }
+ return null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return getDefunctStateSet();
+ }
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleTextImpl.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleTextImpl.java
new file mode 100644
index 000000000000..c3bcbde2a71a
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleTextImpl.java
@@ -0,0 +1,678 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+package org.openoffice.java.accessibility;
+
+import com.sun.star.accessibility.*;
+import com.sun.star.awt.*;
+import com.sun.star.style.*;
+import com.sun.star.uno.*;
+
+import org.openoffice.java.accessibility.logging.*;
+
+import java.text.BreakIterator;
+import java.util.Locale;
+
+import javax.accessibility.AccessibleContext;
+import javax.accessibility.AccessibleText;
+
+import javax.swing.text.StyleConstants;
+
+/** The GenericAccessibleEditableText mapps the calls to the java AccessibleEditableText
+ * interface to the corresponding methods of the UNO XAccessibleEditableText interface.
+ */
+public class AccessibleTextImpl implements javax.accessibility.AccessibleText {
+ final static double toPointFactor = 1 / ((7 / 10) + 34.5);
+ final static String[] attributeList = {
+ "ParaAdjust", "CharBackColor", "CharWeight", "ParaFirstLineIndent",
+ "CharFontPitch", "CharHeight", "CharColor", "CharPosture",
+ "ParaLeftMargin", "ParaLineSpacing", "ParaTopMargin", "ParaBottomMargin",
+ "CharStrikeout", "CharEscapement", "ParaTabStops", "CharUnderline"
+ };
+
+ final static String[] localeAttributeList = {
+ "CharLocale", "CharLocaleAsian", "CharLocaleComplex"
+ };
+
+ XAccessibleText unoObject;
+ private javax.swing.text.TabSet tabSet = null;
+ private javax.swing.text.TabStop[] tabStops = null;
+ private static Type TextSegmentType = new Type(TextSegment.class);
+ private static Type UnoLocaleType = new Type(com.sun.star.lang.Locale.class);
+
+ /** Creates new GenericAccessibleEditableText object */
+ public AccessibleTextImpl(XAccessibleText xAccessibleText) {
+
+ if (Build.PRODUCT) {
+ unoObject = xAccessibleText;
+ } else {
+ String property = System.getProperty("AccessBridgeLogging");
+ if ((property != null) && (property.indexOf("text") != -1)) {
+ unoObject = new XAccessibleTextLog(xAccessibleText);
+ } else {
+ unoObject = xAccessibleText;
+ }
+ }
+ }
+
+ public AccessibleTextImpl() {
+ }
+
+ public static javax.accessibility.AccessibleText get(com.sun.star.uno.XInterface unoObject) {
+ try {
+ XAccessibleText unoAccessibleText = (XAccessibleText)
+ UnoRuntime.queryInterface(XAccessibleText.class, unoObject);
+ if (unoAccessibleText != null) {
+ return new AccessibleTextImpl(unoAccessibleText);
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ return null;
+ }
+
+ protected static Object convertTextSegment(Object any) {
+ try {
+ if (AnyConverter.isObject(any)) {
+ TextSegment ts = (TextSegment)
+ AnyConverter.toObject(TextSegmentType, any);
+ if (ts != null) {
+ // Since there is nothing like a "range" object in the JAA yet,
+ // the Object[3] is a private negotiation with the JABG
+ Object[] array = { new Integer(ts.SegmentStart),
+ new Integer(ts.SegmentEnd), ts.SegmentText };
+ return array;
+ }
+ }
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+
+ return null;
+ }
+
+ /** Returns the locale object.
+ *
+ * Since switching the UI language only takes effect on the next
+ * office start, UI elements can return a cached value here - given
+ * that Java UNO initializes the default locale correctly, this is
+ * the perfect place to grab this cached values.
+ *
+ * However, since there are more sophisticated components with
+ * potentially more than one locale, we first check for the
+ * CharLocale[Asian|Complex] property.
+ */
+
+ protected java.util.Locale getLocale(int index) {
+ try {
+ com.sun.star.beans.PropertyValue[] propertyValues =
+ unoObject.getCharacterAttributes(index, localeAttributeList);
+
+ if (null != propertyValues) {
+ for (int i = 0; i < propertyValues.length; i++) {
+ com.sun.star.lang.Locale unoLocale = (com.sun.star.lang.Locale)
+ AnyConverter.toObject(UnoLocaleType, propertyValues[i]);
+ if (unoLocale != null) {
+ return new java.util.Locale(unoLocale.Language, unoLocale.Country);
+ }
+ }
+ }
+
+ return java.util.Locale.getDefault();
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ return java.util.Locale.getDefault();
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return java.util.Locale.getDefault();
+ }
+ }
+
+
+ /** Returns the string after a given index
+ *
+ * The Java word iterator has a different understanding of what
+ * a word is than the word iterator used by OOo, so we use the
+ * Java iterators to ensure maximal compatibility with Java.
+ */
+ public String getAfterIndex(int part, int index) {
+ switch (part) {
+ case AccessibleText.CHARACTER:
+ try {
+ String s = unoObject.getText();
+ return s.substring(index+1, index+2);
+ } catch (IndexOutOfBoundsException e) {
+ return null;
+ }
+ case AccessibleText.WORD:
+ try {
+ String s = unoObject.getText();
+ BreakIterator words = BreakIterator.getWordInstance(getLocale(index));
+ words.setText(s);
+ int start = words.following(index);
+ if (start == BreakIterator.DONE || start >= s.length()) {
+ return null;
+ }
+ int end = words.following(start);
+ if (end == BreakIterator.DONE || end >= s.length()) {
+ return null;
+ }
+ return s.substring(start, end);
+ } catch (IllegalArgumentException e) {
+ return null;
+ } catch (IndexOutOfBoundsException e) {
+ return null;
+ }
+ case AccessibleText.SENTENCE:
+ try {
+ String s = unoObject.getText();
+ BreakIterator sentence =
+ BreakIterator.getSentenceInstance(getLocale(index));
+ sentence.setText(s);
+ int start = sentence.following(index);
+ if (start == BreakIterator.DONE || start >= s.length()) {
+ return null;
+ }
+ int end = sentence.following(start);
+ if (end == BreakIterator.DONE || end >= s.length()) {
+ return null;
+ }
+ return s.substring(start, end);
+ } catch (IllegalArgumentException e) {
+ return null;
+ } catch (IndexOutOfBoundsException e) {
+ return null;
+ }
+ case 4:
+ try {
+ TextSegment ts = unoObject.getTextBehindIndex(index, AccessibleTextType.LINE);
+ return ts.SegmentText;
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ // Workaround for #104847#
+ if (index > 0 && getCharCount() == index) {
+ return getAfterIndex(part, index - 1);
+ }
+ return null;
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ return null;
+ }
+ case 5:
+ try {
+ TextSegment ts = unoObject.getTextBehindIndex(index, AccessibleTextType.ATTRIBUTE_RUN);
+ return ts.SegmentText;
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return null;
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ return null;
+ }
+ default:
+ return null;
+ }
+ }
+
+ /** Returns the zero-based offset of the caret */
+ public int getCaretPosition() {
+ try {
+ return unoObject.getCaretPosition();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return -1;
+ }
+ }
+
+ /** Returns the start offset within the selected text */
+ public int getSelectionStart() {
+ try {
+ int index = unoObject.getSelectionStart();
+
+ if (index == -1) {
+ index = getCaretPosition();
+ }
+
+ return index;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return -1;
+ }
+ }
+
+ protected void setAttribute(javax.swing.text.MutableAttributeSet as,
+ com.sun.star.beans.PropertyValue property) {
+ try {
+ // Map alignment attribute
+ if (property.Name.equals("ParaAdjust")) {
+ ParagraphAdjust adjust = null;
+
+ if (property.Value instanceof ParagraphAdjust) {
+ adjust = (ParagraphAdjust) property.Value;
+ } else if (property.Value instanceof Any) {
+ adjust = (ParagraphAdjust) AnyConverter.toObject(new Type(
+ ParagraphAdjust.class), property.Value);
+ } else {
+ adjust = ParagraphAdjust.fromInt(AnyConverter.toInt(
+ property.Value));
+ }
+
+ if (adjust != null) {
+ if (adjust.equals(ParagraphAdjust.LEFT)) {
+ StyleConstants.setAlignment(as,
+ StyleConstants.ALIGN_LEFT);
+ } else if (adjust.equals(ParagraphAdjust.RIGHT)) {
+ StyleConstants.setAlignment(as,
+ StyleConstants.ALIGN_RIGHT);
+ } else if (adjust.equals(ParagraphAdjust.CENTER)) {
+ StyleConstants.setAlignment(as,
+ StyleConstants.ALIGN_CENTER);
+ } else if (adjust.equals(ParagraphAdjust.BLOCK) ||
+ adjust.equals(ParagraphAdjust.STRETCH)) {
+ StyleConstants.setAlignment(as,
+ StyleConstants.ALIGN_JUSTIFIED);
+ }
+ } else if (Build.DEBUG) {
+ System.err.println(
+ "Invalid property value for key ParaAdjust: " +
+ property.Value.getClass().getName());
+ }
+
+ // Map background color
+ } else if (property.Name.equals("CharBackColor")) {
+ StyleConstants.setBackground(as,
+ new java.awt.Color(AnyConverter.toInt(property.Value)));
+
+ // FIXME: BidiLevel
+ // Set bold attribute
+ } else if (property.Name.equals("CharWeight")) {
+ boolean isBold = AnyConverter.toFloat(property.Value) > 125;
+ StyleConstants.setBold(as, isBold);
+
+ // FIXME: Java 1.4 ComponentAttribute, ComponentElementName, ComposedTextAttribute
+ // Set FirstLineIndent attribute
+ } else if (property.Name.equals("ParaFirstLineIndent")) {
+ StyleConstants.setFirstLineIndent(as,
+ (float) (toPointFactor * AnyConverter.toInt(property.Value)));
+
+ // Set font family attribute
+ } else if (property.Name.equals("CharFontPitch")) {
+ if (AnyConverter.toShort(property.Value) == 2) {
+ StyleConstants.setFontFamily(as, "Proportional");
+ }
+
+ // Set font size attribute
+ } else if (property.Name.equals("CharHeight")) {
+ StyleConstants.setFontSize(as,
+ (int) AnyConverter.toFloat(property.Value));
+
+ // Map foreground color
+ } else if (property.Name.equals("CharColor")) {
+ StyleConstants.setForeground(as,
+ new java.awt.Color(AnyConverter.toInt(property.Value)));
+
+ // FIXME: IconAttribute, IconElementName
+ // Set italic attribute
+ } else if (property.Name.equals("CharPosture")) {
+ FontSlant fs = null;
+
+ if (property.Value instanceof FontSlant) {
+ fs = (FontSlant) property.Value;
+ } else if (property.Value instanceof Any) {
+ fs = (FontSlant) AnyConverter.toObject(new Type(
+ FontSlant.class), property.Value);
+ }
+
+ if (fs != null) {
+ StyleConstants.setItalic(as, FontSlant.ITALIC.equals(fs));
+ }
+
+ // Set left indent attribute
+ } else if (property.Name.equals("ParaLeftMargin")) {
+ StyleConstants.setLeftIndent(as,
+ (float) (toPointFactor * AnyConverter.toInt(property.Value)));
+
+ // Set right indent attribute
+ } else if (property.Name.equals("ParaRightMargin")) {
+ StyleConstants.setRightIndent(as,
+ (float) (toPointFactor * AnyConverter.toInt(property.Value)));
+ }
+ // Set line spacing attribute
+ else if (property.Name.equals("ParaLineSpacing")) {
+ LineSpacing ls = null;
+
+ if (property.Value instanceof LineSpacing) {
+ ls = (LineSpacing) property.Value;
+ } else if (property.Value instanceof Any) {
+ ls = (LineSpacing) AnyConverter.toObject(new Type(
+ LineSpacing.class), property.Value);
+ }
+
+ if (ls != null) {
+ StyleConstants.setLineSpacing(as,
+ (float) (toPointFactor * ls.Height));
+ }
+ }
+ // FIXME: Java 1.4 NameAttribute, Orientation, ResolveAttribute
+ // Set space above attribute
+ else if (property.Name.equals("ParaTopMargin")) {
+ StyleConstants.setSpaceAbove(as,
+ (float) (toPointFactor * AnyConverter.toInt(property.Value)));
+ }
+ // Set space below attribute
+ else if (property.Name.equals("ParaBottomMargin")) {
+ StyleConstants.setSpaceBelow(as,
+ (float) (toPointFactor * AnyConverter.toInt(property.Value)));
+
+ // Set strike through attribute
+ } else if (property.Name.equals("CharStrikeout")) {
+ boolean isStrikeThrough = (FontStrikeout.NONE != AnyConverter.toShort(property.Value));
+ StyleConstants.setStrikeThrough(as, isStrikeThrough);
+
+ // Set sub-/superscript attribute
+ } else if (property.Name.equals("CharEscapement")) {
+ short value = AnyConverter.toShort(property.Value);
+
+ if (value > 0) {
+ StyleConstants.setSuperscript(as, true);
+ } else if (value < 0) {
+ StyleConstants.setSubscript(as, true);
+ }
+
+ // Set tabset attribute
+ } else if (property.Name.equals("ParaTabStops")) {
+ TabStop[] unoTabStops = (TabStop[]) AnyConverter.toArray(property.Value);
+ javax.swing.text.TabStop[] tabStops = new javax.swing.text.TabStop[unoTabStops.length];
+
+ for (int index2 = 0; index2 < unoTabStops.length; index2++) {
+ float pos = (float) (toPointFactor * unoTabStops[index2].Position);
+
+ if (unoTabStops[index2].Alignment.equals(TabAlign.LEFT)) {
+ tabStops[index2] = new javax.swing.text.TabStop(pos,
+ javax.swing.text.TabStop.ALIGN_LEFT,
+ javax.swing.text.TabStop.LEAD_NONE);
+ } else if (unoTabStops[index2].Alignment.equals(
+ TabAlign.CENTER)) {
+ tabStops[index2] = new javax.swing.text.TabStop(pos,
+ javax.swing.text.TabStop.ALIGN_CENTER,
+ javax.swing.text.TabStop.LEAD_NONE);
+ } else if (unoTabStops[index2].Alignment.equals(
+ TabAlign.RIGHT)) {
+ tabStops[index2] = new javax.swing.text.TabStop(pos,
+ javax.swing.text.TabStop.ALIGN_RIGHT,
+ javax.swing.text.TabStop.LEAD_NONE);
+ } else if (unoTabStops[index2].Alignment.equals(
+ TabAlign.DECIMAL)) {
+ tabStops[index2] = new javax.swing.text.TabStop(pos,
+ javax.swing.text.TabStop.ALIGN_DECIMAL,
+ javax.swing.text.TabStop.LEAD_NONE);
+ } else {
+ tabStops[index2] = new javax.swing.text.TabStop(pos);
+ }
+ }
+
+ // Re-use tabSet object if possible to make AttributeSet.equals work
+ if ((this.tabSet == null) ||
+ !java.util.Arrays.equals(tabStops, this.tabStops)) {
+ this.tabStops = tabStops;
+ this.tabSet = new javax.swing.text.TabSet(tabStops);
+ }
+
+ StyleConstants.setTabSet(as, this.tabSet);
+
+ // Set underline attribute
+ } else if (property.Name.equals("CharUnderline")) {
+ boolean isUnderline = (FontUnderline.NONE != AnyConverter.toShort(property.Value));
+ StyleConstants.setUnderline(as, isUnderline);
+ }
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ if (Build.DEBUG) {
+ System.err.println("*** ERROR *** " + e.getClass().getName() +
+ " caught for property " + property.Name + ": " +
+ e.getMessage());
+ System.err.println(" value is of type " +
+ property.Value.getClass().getName());
+ }
+ }
+ }
+
+ /** Returns the AttributSet for a given character at a given index */
+ public javax.swing.text.AttributeSet getCharacterAttribute(int index) {
+ try {
+ com.sun.star.beans.PropertyValue[] propertyValues = unoObject.getCharacterAttributes(index,
+ attributeList);
+ javax.swing.text.SimpleAttributeSet attributeSet = new javax.swing.text.SimpleAttributeSet();
+
+ if (null != propertyValues) {
+ for (int i = 0; i < propertyValues.length; i++) {
+ setAttribute(attributeSet, propertyValues[i]);
+ }
+ }
+
+ return attributeSet;
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ if ((index > 0) && (getCharCount() == index)) {
+ return getCharacterAttribute(index - 1);
+ }
+ return null;
+ }
+ }
+
+ /** Given a point in local coordinates, return the zero-based index of the character under that point */
+ public int getIndexAtPoint(java.awt.Point point) {
+ try {
+ return unoObject.getIndexAtPoint(new Point(point.x, point.y));
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return -1;
+ }
+ }
+
+ /** Returns the end offset within the selected text */
+ public int getSelectionEnd() {
+ try {
+ int index = unoObject.getSelectionEnd();
+
+ if (index == -1) {
+ index = getCaretPosition();
+ }
+
+ return index;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return -1;
+ }
+ }
+
+ /** Returns the string before a given index
+ *
+ * The Java word iterator has a different understanding of what
+ * a word is than the word iterator used by OOo, so we use the
+ * Java iterators to ensure maximal compatibility with Java.
+ */
+ public java.lang.String getBeforeIndex(int part, int index) {
+ switch (part) {
+ case AccessibleText.CHARACTER:
+ try {
+ String s = unoObject.getText();
+ return s.substring(index-1, index);
+ } catch (IndexOutOfBoundsException e) {
+ return null;
+ }
+ case AccessibleText.WORD:
+ try {
+ String s = unoObject.getText();
+ BreakIterator words = BreakIterator.getWordInstance(getLocale(index));
+ words.setText(s);
+ int end = words.following(index);
+ end = words.previous();
+ int start = words.previous();
+ if (start == BreakIterator.DONE) {
+ return null;
+ }
+ return s.substring(start, end);
+ } catch (IllegalArgumentException e) {
+ return null;
+ } catch (IndexOutOfBoundsException e) {
+ return null;
+ }
+ case AccessibleText.SENTENCE:
+ try {
+ String s = unoObject.getText();
+ BreakIterator sentence =
+ BreakIterator.getSentenceInstance(getLocale(index));
+ sentence.setText(s);
+ int end = sentence.following(index);
+ end = sentence.previous();
+ int start = sentence.previous();
+ if (start == BreakIterator.DONE) {
+ return null;
+ }
+ return s.substring(start, end);
+ } catch (IllegalArgumentException e) {
+ return null;
+ } catch (IndexOutOfBoundsException e) {
+ return null;
+ }
+ case 4:
+ try {
+ TextSegment ts = unoObject.getTextBeforeIndex(index, AccessibleTextType.LINE);
+ return ts.SegmentText;
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ // Workaround for #104847#
+ if (index > 0 && getCharCount() == index) {
+ return getBeforeIndex(part, index - 1);
+ }
+ return null;
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ return null;
+ }
+ case 5:
+ try {
+ TextSegment ts = unoObject.getTextBeforeIndex(index, AccessibleTextType.ATTRIBUTE_RUN);
+ return ts.SegmentText;
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return null;
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ return null;
+ }
+ default:
+ return null;
+ }
+ }
+
+
+ /** Returns the string at a given index
+ *
+ * The Java word iterator has a different understanding of what
+ * a word is than the word iterator used by OOo, so we use the
+ * Java iterators to ensure maximal compatibility with Java.
+ */
+ public java.lang.String getAtIndex(int part, int index) {
+ switch (part) {
+ case AccessibleText.CHARACTER:
+ try {
+ String s = unoObject.getText();
+ return s.substring(index, index + 1);
+ } catch (IndexOutOfBoundsException e) {
+ return null;
+ }
+ case AccessibleText.WORD:
+ try {
+ String s = unoObject.getText();
+ BreakIterator words = BreakIterator.getWordInstance(getLocale(index));
+ words.setText(s);
+ int end = words.following(index);
+ return s.substring(words.previous(), end);
+ } catch (IllegalArgumentException e) {
+ return null;
+ } catch (IndexOutOfBoundsException e) {
+ return null;
+ }
+ case AccessibleText.SENTENCE:
+ try {
+ String s = unoObject.getText();
+ BreakIterator sentence =
+ BreakIterator.getSentenceInstance(getLocale(index));
+ sentence.setText(s);
+ int end = sentence.following(index);
+ return s.substring(sentence.previous(), end);
+ } catch (IllegalArgumentException e) {
+ return null;
+ } catch (IndexOutOfBoundsException e) {
+ return null;
+ }
+ case 4:
+ try {
+ TextSegment ts = unoObject.getTextAtIndex(index, AccessibleTextType.LINE);
+ return ts.SegmentText;
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ // Workaround for #104847#
+ if (index > 0 && getCharCount() == index) {
+ return getAtIndex(part, index - 1);
+ }
+ return null;
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ return null;
+ }
+ case 5:
+ try {
+ TextSegment ts = unoObject.getTextAtIndex(index, AccessibleTextType.ATTRIBUTE_RUN);
+ return ts.SegmentText;
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return null;
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ return null;
+ }
+
+ default:
+ return null;
+ }
+ }
+
+ /** Returns the number of characters (valid indicies) */
+ public int getCharCount() {
+ try {
+ return unoObject.getCharacterCount();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+
+ return 0;
+ }
+
+ /** Returns the portion of the text that is selected */
+ public java.lang.String getSelectedText() {
+ try {
+ return unoObject.getSelectedText();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+
+ return null;
+ }
+
+ /** Determines the bounding box of the character at the given index into the string */
+ public java.awt.Rectangle getCharacterBounds(int index) {
+ try {
+ Rectangle unoRect = unoObject.getCharacterBounds(index);
+ return new java.awt.Rectangle(unoRect.X, unoRect.Y, unoRect.Width, unoRect.Height);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ if ((index > 0) && (getCharCount() == index)) {
+ return getCharacterBounds(index - 1);
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+
+ return new java.awt.Rectangle();
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleValueImpl.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleValueImpl.java
new file mode 100644
index 000000000000..cabbf3f5d323
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleValueImpl.java
@@ -0,0 +1,96 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import com.sun.star.accessibility.XAccessibleValue;
+import com.sun.star.uno.AnyConverter;
+
+/** The AccessibleValueImpl mappes the calls to the java AccessibleValue
+ * interface to the corresponding methods of the UNO XAccessibleValue interface
+ */
+public class AccessibleValueImpl implements javax.accessibility.AccessibleValue {
+ protected XAccessibleValue unoObject;
+
+ /** Creates new AccessibleValueImpl */
+ public AccessibleValueImpl(XAccessibleValue xAccessibleValue) {
+ unoObject = xAccessibleValue;
+ }
+
+ public static java.lang.Number toNumber(java.lang.Object any) {
+ try {
+ if(AnyConverter.isByte(any)) {
+ return new Byte(AnyConverter.toByte(any));
+ } else if (AnyConverter.isShort(any)) {
+ return new Short(AnyConverter.toShort(any));
+ } else if (AnyConverter.isInt(any)) {
+ return new Integer(AnyConverter.toInt(any));
+ } else if (AnyConverter.isLong(any)) {
+ return new Long(AnyConverter.toLong(any));
+ } else if (AnyConverter.isFloat(any)) {
+ return new Float(AnyConverter.toFloat(any));
+ } else if (AnyConverter.isDouble(any)) {
+ return new Double(AnyConverter.toDouble(any));
+ }
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+
+ return null;
+ }
+
+ public java.lang.Number getMinimumAccessibleValue() {
+ try {
+ return toNumber(unoObject.getMinimumValue());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ public java.lang.Number getCurrentAccessibleValue() {
+ try {
+ return toNumber(unoObject.getCurrentValue());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ public java.lang.Number getMaximumAccessibleValue() {
+ try {
+ return toNumber(unoObject.getMaximumValue());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ public boolean setCurrentAccessibleValue(java.lang.Number number) {
+ try {
+ return unoObject.setCurrentValue(number);
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return false;
+ }
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Alert.java b/accessibility/bridge/org/openoffice/java/accessibility/Alert.java
new file mode 100644
index 000000000000..e853fabecba0
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/Alert.java
@@ -0,0 +1,66 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import javax.accessibility.AccessibleRole;
+import com.sun.star.accessibility.*;
+
+public class Alert extends Dialog {
+
+ protected Alert(java.awt.Frame owner, XAccessibleComponent xAccessibleComponent) {
+ super(owner, xAccessibleComponent);
+ }
+
+ protected Alert(java.awt.Frame owner, String name, XAccessibleComponent xAccessibleComponent) {
+ super(owner, name, xAccessibleComponent);
+ }
+
+ protected Alert(java.awt.Frame owner, String name, boolean modal, XAccessibleComponent xAccessibleComponent) {
+ super(owner, name, modal, xAccessibleComponent);
+ }
+
+ /** Returns the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext getAccessibleContext() {
+ if (accessibleContext == null) {
+ accessibleContext = new AccessibleAlert();
+ accessibleContext.setAccessibleName(getTitle());
+ }
+ return accessibleContext;
+ }
+
+ protected class AccessibleAlert extends AccessibleDialog {
+
+ protected AccessibleAlert() {
+ super();
+ }
+
+ public AccessibleRole getAccessibleRole() {
+ return AccessibleRole.ALERT;
+ }
+ };
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Application.java b/accessibility/bridge/org/openoffice/java/accessibility/Application.java
new file mode 100644
index 000000000000..c67da714f4df
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/Application.java
@@ -0,0 +1,45 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import javax.accessibility.Accessible;
+import javax.accessibility.AccessibleContext;
+
+public class Application extends java.awt.Frame implements Accessible {
+
+ protected AccessibleContext accessibleContext = null;
+
+ protected Application() {
+ super();
+ }
+
+ public boolean isShowing() {
+ return true;
+ }
+}
+
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Button.java b/accessibility/bridge/org/openoffice/java/accessibility/Button.java
new file mode 100644
index 000000000000..44bccc30ffc1
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/Button.java
@@ -0,0 +1,157 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import com.sun.star.uno.*;
+import com.sun.star.accessibility.*;
+
+class Button extends AbstractButton implements javax.accessibility.Accessible {
+
+ public Button(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
+ super(xAccessible, xAccessibleContext);
+ }
+
+ protected XAccessibleEventListener createEventListener() {
+ return new AccessibleButtonListener();
+ }
+
+ protected class AccessibleButtonListener
+ extends AccessibleUNOComponentListener {
+ protected AccessibleButtonListener() {
+ super();
+ }
+
+ protected javax.accessibility.AccessibleContext getContext( Object any ) {
+ try {
+ XAccessible xAccessible = (XAccessible)
+ AnyConverter.toObject( AccessibleObjectFactory.XAccessibleType, any );
+
+ javax.accessibility.Accessible accessible =
+ (javax.accessibility.Accessible) Button.this.getComponent( xAccessible );
+
+ return accessible.getAccessibleContext();
+ } catch( com.sun.star.uno.Exception e ) {
+ return null;
+ }
+ }
+
+ /** Called by OpenOffice process to notify property changes */
+ public void notifyEvent(AccessibleEventObject event) {
+ switch (event.EventId) {
+ case AccessibleEventId.CHILD:
+ java.awt.Component c = getComponent(unoAccessible);
+
+ Object values[] = { null, null };
+
+ if (AnyConverter.isObject(event.OldValue)) {
+ values[0] = getContext( event.OldValue );
+ }
+
+ if (AnyConverter.isObject(event.NewValue)) {
+ values[1] = getContext( event.NewValue);
+ }
+
+ firePropertyChange(javax.accessibility.AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
+ values[0], values[1]);
+ break;
+
+ default:
+ super.notifyEvent(event);
+ }
+ }
+ }
+
+ /** Creates the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext createAccessibleContext() {
+ return new AccessibleButton();
+ }
+
+ protected java.awt.Component getComponent(XAccessible unoAccessible) {
+ java.awt.Component c = AccessibleObjectFactory.getAccessibleComponent(unoAccessible);
+
+ if (c == null) {
+ c = AccessibleObjectFactory.createAccessibleComponent(unoAccessible);
+
+ if (c instanceof javax.accessibility.Accessible) {
+ ((javax.accessibility.Accessible) c).getAccessibleContext()
+ .setAccessibleParent(this);
+ }
+
+ if( c instanceof java.awt.Container ) {
+ AccessibleObjectFactory.populateContainer((java.awt.Container) c, unoAccessible.getAccessibleContext() );
+ }
+ }
+
+ return c;
+ }
+
+ protected class AccessibleButton extends AccessibleAbstractButton {
+
+ /** Gets the role of this object */
+ public javax.accessibility.AccessibleRole getAccessibleRole() {
+ return javax.accessibility.AccessibleRole.PUSH_BUTTON;
+ }
+
+ /** Returns the number of accessible children of the object */
+ public int getAccessibleChildrenCount() {
+ try {
+ return unoAccessibleContext.getAccessibleChildCount();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return 0;
+ }
+ }
+
+ /** Returns the specified Accessible child of the object */
+ public synchronized javax.accessibility.Accessible getAccessibleChild( int i) {
+ try {
+ return (javax.accessibility.Accessible) getComponent( unoAccessibleContext.getAccessibleChild(i) );
+ } catch (com.sun.star.uno.RuntimeException e) {
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ }
+ return null;
+ }
+
+ /*
+ * AccessibleComponent
+ */
+
+ /** Returns the Accessible child, if one exists, contained at the local coordinate Point */
+ public javax.accessibility.Accessible getAccessibleAt(java.awt.Point p) {
+ try {
+ java.awt.Component c = getComponent(unoAccessibleComponent.getAccessibleAtPoint(
+ new com.sun.star.awt.Point(p.x, p.y)));
+
+ return (javax.accessibility.Accessible) c;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ }
+}
+
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/CheckBox.java b/accessibility/bridge/org/openoffice/java/accessibility/CheckBox.java
new file mode 100644
index 000000000000..624dfd048c89
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/CheckBox.java
@@ -0,0 +1,51 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import com.sun.star.uno.*;
+import com.sun.star.accessibility.*;
+
+class CheckBox extends ToggleButton {
+
+ public CheckBox(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
+ super(xAccessible, xAccessibleContext);
+ }
+
+ /** Creates the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext createAccessibleContext() {
+ return new AccessibleCheckBox();
+ }
+
+ protected class AccessibleCheckBox extends AccessibleToggleButton {
+ /** Gets the role of this object */
+ public javax.accessibility.AccessibleRole getAccessibleRole() {
+ return javax.accessibility.AccessibleRole.CHECK_BOX;
+ }
+ }
+}
+
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/ComboBox.java b/accessibility/bridge/org/openoffice/java/accessibility/ComboBox.java
new file mode 100644
index 000000000000..5f5cf4a34374
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/ComboBox.java
@@ -0,0 +1,117 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+package org.openoffice.java.accessibility;
+
+import com.sun.star.accessibility.*;
+import com.sun.star.uno.*;
+
+import javax.accessibility.AccessibleContext;
+import javax.accessibility.AccessibleState;
+import javax.accessibility.AccessibleStateSet;
+
+import javax.swing.SwingConstants;
+
+
+/**
+ */
+public class ComboBox extends Container {
+ private XAccessibleAction unoAccessibleAction = null;
+
+ public ComboBox(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
+ super(javax.accessibility.AccessibleRole.COMBO_BOX, xAccessible,
+ xAccessibleContext);
+ }
+
+ /** Appends the specified component to the end of this container */
+ public java.awt.Component add(java.awt.Component c) {
+ // List should be always the first child
+ if (c instanceof List) {
+ return super.add(c, 0);
+ } else {
+ return super.add(c);
+ }
+ }
+
+ /** Creates the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext createAccessibleContext() {
+ return new AccessibleComboBox();
+ }
+
+ protected class AccessibleComboBox extends AccessibleContainer
+ implements javax.accessibility.AccessibleAction {
+ /**
+ * Though the class is abstract, this should be called by all sub-classes
+ */
+ protected AccessibleComboBox() {
+ super();
+ }
+
+ /*
+ * AccessibleContext
+ */
+
+ /** Gets the AccessibleAction associated with this object that supports one or more actions */
+ public javax.accessibility.AccessibleAction getAccessibleAction() {
+ if (unoAccessibleAction == null) {
+ unoAccessibleAction = (XAccessibleAction) UnoRuntime.queryInterface(XAccessibleAction.class,
+ unoAccessibleContext);
+
+ if (unoAccessibleAction == null) {
+ return null;
+ }
+ }
+
+ return this;
+ }
+
+ /*
+ * AccessibleAction
+ */
+
+ /** Performs the specified Action on the object */
+ public boolean doAccessibleAction(int param) {
+ if (param == 0) {
+ try {
+ return unoAccessibleAction.doAccessibleAction(0);
+ } catch (com.sun.star.uno.Exception e) {
+ }
+ }
+
+ return false;
+ }
+
+ /** Returns a description of the specified action of the object */
+ public java.lang.String getAccessibleActionDescription(int param) {
+ return javax.swing.UIManager.getString("ComboBox.togglePopupText");
+ }
+
+ /** Returns the number of accessible actions available in this object */
+ public int getAccessibleActionCount() {
+ return 1;
+ }
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Component.java b/accessibility/bridge/org/openoffice/java/accessibility/Component.java
new file mode 100644
index 000000000000..21043e1f5098
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/Component.java
@@ -0,0 +1,740 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import javax.accessibility.AccessibleContext;
+import javax.accessibility.AccessibleState;
+
+import com.sun.star.uno.*;
+import com.sun.star.accessibility.*;
+
+public abstract class Component extends java.awt.Component {
+ public static final Type RectangleType = new Type(com.sun.star.awt.Rectangle.class);
+ public static final Type SelectionType = new Type(com.sun.star.awt.Selection.class);
+
+ protected XAccessible unoAccessible;
+ protected XAccessibleContext unoAccessibleContext;
+ protected XAccessibleComponent unoAccessibleComponent;
+
+ protected boolean disposed = false;
+
+ protected Component(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
+ super();
+ unoAccessible = xAccessible;
+ unoAccessibleContext = xAccessibleContext;
+ unoAccessibleComponent = (XAccessibleComponent)
+ UnoRuntime.queryInterface(XAccessibleComponent.class, xAccessibleContext);
+ // Add the event listener right away, because the global focus notification doesn't
+ // work yet ..
+ XAccessibleEventBroadcaster broadcaster = (XAccessibleEventBroadcaster)
+ UnoRuntime.queryInterface(XAccessibleEventBroadcaster.class,
+ unoAccessibleComponent);
+ if (broadcaster != null) {
+ broadcaster.addEventListener(createEventListener());
+ }
+ }
+
+ /**
+ * Determines whether this <code>Component</code> is showing on screen.
+ * This means that the component must be visible, and it must be in a
+ * <code>container</code> that is visible and showing.
+ * @see #addNotify
+ * @see #removeNotify
+ * @since JDK1.0
+ */
+ public boolean isShowing() {
+ if (isVisible()) {
+ java.awt.Container parent = getParent();
+ return (parent == null) || parent.isShowing();
+ }
+ return false;
+ }
+
+ /**
+ * Makes this <code>Component</code> displayable by connecting it to a
+ * native screen resource.
+ * This method is called internally by the toolkit and should
+ * not be called directly by programs.
+ * @see #isDisplayable
+ * @see #removeNotify
+ * @since JDK1.0
+ */
+ public void addNotify() {
+ }
+
+ /**
+ * Makes this <code>Component</code> undisplayable by destroying it native
+ * screen resource.
+ * This method is called by the toolkit internally and should
+ * not be called directly by programs.
+ * @see #isDisplayable
+ * @see #addNotify
+ * @since JDK1.0
+ */
+ public void removeNotify() {
+ }
+
+ /*
+ * Fake the java focus handling. This is necessary to keep OOo focus
+ * in sync with the java focus. See java.awt.DefaultKeyboardFocusManager
+ * for implementation details.
+ **/
+
+ /** Requests focus for this object */
+ public void requestFocus() {
+ }
+
+ /** Requests focus for this object */
+ public boolean requestFocus(boolean temporary) {
+ // Must be a no-op to make focus handling work
+ return true;
+ }
+
+ /** Requests the focus for this object in the containing window */
+ public boolean requestFocusInWindow() {
+ return requestFocusInWindow(false);
+ }
+
+ /** Requests the focus for this object in the containing window */
+ protected boolean requestFocusInWindow(boolean temporary) {
+ if (isFocusable() && isVisible()) {
+ getEventQueue().postEvent(new java.awt.event.FocusEvent(this, java.awt.event.FocusEvent.FOCUS_GAINED, temporary));
+ return true;
+ }
+ return false;
+ }
+
+ public Object[] getAccessibleComponents(Object[] targetSet) {
+ try {
+ java.util.ArrayList list = new java.util.ArrayList(targetSet.length);
+ for (int i=0; i < targetSet.length; i++) {
+ java.awt.Component c = AccessibleObjectFactory.getAccessibleComponent(
+ (XAccessible) UnoRuntime.queryInterface(XAccessible.class, targetSet[i]));
+ if (c != null) {
+ list.add(c);
+ }
+ }
+ list.trimToSize();
+ return list.toArray();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ protected java.awt.EventQueue getEventQueue() {
+ return java.awt.Toolkit.getDefaultToolkit().getSystemEventQueue();
+ }
+
+ protected class PropertyChangeBroadcaster implements Runnable {
+ String propertyName;
+ Object oldValue;
+ Object newValue;
+
+ public PropertyChangeBroadcaster(String name, Object param1, Object param2) {
+ propertyName = name;
+ oldValue = param1;
+ newValue = param2;
+ }
+
+ public void run() {
+ // Because this code is executed in the DispatchThread, it is better to catch every
+ // exception that might occur
+ try {
+ AccessibleContext ac = accessibleContext;
+ if (ac != null) {
+ ac.firePropertyChange(propertyName, oldValue, newValue);
+ }
+ } catch (java.lang.Exception e) {
+ if (Build.DEBUG) {
+ System.err.println(e.getClass().getName() + " caught propagating " + propertyName + " event: " + e.getMessage());
+ e.printStackTrace();
+ }
+ }
+ }
+ }
+
+ protected void firePropertyChange(String property, Object oldValue, Object newValue) {
+ getEventQueue().invokeLater(new PropertyChangeBroadcaster(property, oldValue, newValue));
+ }
+
+ protected void fireStatePropertyChange(AccessibleState state, boolean set) {
+ PropertyChangeBroadcaster broadcaster;
+
+// if (Build.DEBUG) {
+// System.err.println("[" + AccessibleRoleAdapter.getAccessibleRole(unoAccessibleContext.getAccessibleRole()) + "] " +
+// unoAccessibleContext.getAccessibleName() + " is " + (set ? "now " : "no longer ") + state);
+// }
+
+ if (set) {
+ broadcaster = new PropertyChangeBroadcaster(
+ accessibleContext.ACCESSIBLE_STATE_PROPERTY,
+ null, state);
+ } else {
+ broadcaster = new PropertyChangeBroadcaster(
+ accessibleContext.ACCESSIBLE_STATE_PROPERTY,
+ state, null);
+ }
+ getEventQueue().invokeLater(broadcaster);
+ }
+
+ /**
+ * Update the proxy objects appropriatly on property change events
+ */
+ protected class AccessibleUNOComponentListener implements XAccessibleEventListener {
+
+ protected AccessibleUNOComponentListener() {
+ }
+
+ protected void setComponentState(short state, boolean enable) {
+ switch (state) {
+ case AccessibleStateType.ACTIVE:
+ // Only frames should be active
+ break;
+ case AccessibleStateType.ARMED:
+ fireStatePropertyChange(AccessibleState.ARMED, enable);
+ break;
+ case AccessibleStateType.CHECKED:
+ fireStatePropertyChange(AccessibleState.CHECKED, enable);
+ break;
+ case AccessibleStateType.ENABLED:
+ setEnabled(enable);
+ // Since we can't access awt.Componet.accessibleContext, we need to fire
+ // this event manually ..
+ fireStatePropertyChange(AccessibleState.ENABLED, enable);
+ break;
+ case AccessibleStateType.FOCUSED:
+ getEventQueue().postEvent(new java.awt.event.FocusEvent(
+ Component.this, enable ?
+ java.awt.event.FocusEvent.FOCUS_GAINED :
+ java.awt.event.FocusEvent.FOCUS_LOST));
+ break;
+ case AccessibleStateType.PRESSED:
+ fireStatePropertyChange(AccessibleState.PRESSED, enable);
+ break;
+ case AccessibleStateType.SELECTED:
+ fireStatePropertyChange(AccessibleState.SELECTED, enable);
+ break;
+ case AccessibleStateType.SENSITIVE:
+ // This state equals ENABLED in OOo (but not in Gtk+) and does not exist in Java 1.5
+ break;
+ case AccessibleStateType.SHOWING:
+// fireStatePropertyChange(AccessibleState.SHOWING, enable);
+ break;
+ case AccessibleStateType.VISIBLE:
+ Component.this.setVisible(enable);
+ break;
+ default:
+ if (Build.DEBUG) {
+ System.err.println("[component]: " + getName() + "unexpected state change " + state);
+ }
+ break;
+ }
+ }
+
+ /** Updates the accessible name and fires the appropriate PropertyChangedEvent */
+ protected void handleNameChangedEvent(Object any) {
+ try {
+ // This causes the property change event to be fired in the VCL thread
+ // context. If this causes problems, it has to be deligated to the java
+ // dispatch thread ..
+ if (accessibleContext != null) {
+ accessibleContext.setAccessibleName(AnyConverter.toString(any));
+ }
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ /** Updates the accessible description and fires the appropriate PropertyChangedEvent */
+ protected void handleDescriptionChangedEvent(Object any) {
+ try {
+ // This causes the property change event to be fired in the VCL thread
+ // context. If this causes problems, it has to be deligated to the java
+ // dispatch thread ..
+ if (accessibleContext != null) {
+ accessibleContext.setAccessibleDescription(AnyConverter.toString(any));
+ }
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ /** Updates the internal states and fires the appropriate PropertyChangedEvent */
+ protected void handleStateChangedEvent(Object any1, Object any2) {
+ try {
+ if (AnyConverter.isShort(any1)) {
+ setComponentState(AnyConverter.toShort(any1), false);
+ }
+
+ if (AnyConverter.isShort(any2)) {
+ setComponentState(AnyConverter.toShort(any2), true);
+ }
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ /** Called by OpenOffice process to notify property changes */
+ public void notifyEvent(AccessibleEventObject event) {
+
+ if ( !disposed ) {
+
+ switch (event.EventId) {
+ case AccessibleEventId.ACTION_CHANGED:
+ firePropertyChange(accessibleContext.ACCESSIBLE_ACTION_PROPERTY,
+ toNumber(event.OldValue), toNumber(event.NewValue));
+ break;
+ case AccessibleEventId.NAME_CHANGED:
+ // Set the accessible name for the corresponding context, which will fire a property
+ // change event itself
+ handleNameChangedEvent(event.NewValue);
+ break;
+ case AccessibleEventId.DESCRIPTION_CHANGED:
+ // Set the accessible description for the corresponding context, which will fire a property
+ // change event itself - so do not set propertyName !
+ handleDescriptionChangedEvent(event.NewValue);
+ break;
+ case AccessibleEventId.CHILD:
+ if (Build.DEBUG) {
+ System.out.println("Unexpected child event for object of role " + getAccessibleContext().getAccessibleRole());
+ }
+ break;
+ case AccessibleEventId.STATE_CHANGED:
+ // Update the internal state set and fire the appropriate PropertyChangedEvent
+ handleStateChangedEvent(event.OldValue, event.NewValue);
+ break;
+ case AccessibleEventId.VISIBLE_DATA_CHANGED:
+ case AccessibleEventId.BOUNDRECT_CHANGED:
+ firePropertyChange(AccessibleContext.ACCESSIBLE_VISIBLE_DATA_PROPERTY, null, null);
+ break;
+ case AccessibleEventId.TEXT_CHANGED:
+ firePropertyChange(AccessibleContext.ACCESSIBLE_TEXT_PROPERTY,
+ AccessibleTextImpl.convertTextSegment(event.OldValue),
+ AccessibleTextImpl.convertTextSegment(event.NewValue));
+ break;
+ /*
+ * the Java AccessBridge for GNOME maps SELECTION_PROPERTY change events
+ * for objects of role TEXT to object:text-selection-changed
+ */
+ case AccessibleEventId.TEXT_SELECTION_CHANGED:
+ firePropertyChange(AccessibleContext.ACCESSIBLE_SELECTION_PROPERTY, null, null);
+ break;
+ case AccessibleEventId.CARET_CHANGED:
+ firePropertyChange(accessibleContext.ACCESSIBLE_CARET_PROPERTY, toNumber(event.OldValue), toNumber(event.NewValue));
+ break;
+ case AccessibleEventId.VALUE_CHANGED:
+ firePropertyChange(accessibleContext.ACCESSIBLE_VALUE_PROPERTY, toNumber(event.OldValue), toNumber(event.NewValue));
+ default:
+ // Warn about unhandled events
+ if(Build.DEBUG) {
+ System.out.println(this + ": unhandled accessibility event id=" + event.EventId);
+ }
+ }
+ }
+ }
+
+ /** Called by OpenOffice process to notify that the UNO component is disposing */
+ public void disposing(com.sun.star.lang.EventObject eventObject) {
+ disposed = true;
+ AccessibleObjectFactory.disposing(Component.this);
+ }
+ }
+
+ protected XAccessibleEventListener createEventListener() {
+ return new AccessibleUNOComponentListener();
+ }
+
+ protected javax.accessibility.AccessibleContext accessibleContext = null;
+
+ /** This method actually creates the AccessibleContext object returned by
+ * getAccessibleContext().
+ */
+ protected javax.accessibility.AccessibleContext createAccessibleContext() {
+ return null;
+ }
+
+ /** Returns the AccessibleContext associated with this object */
+ public final javax.accessibility.AccessibleContext getAccessibleContext() {
+ if (accessibleContext == null) {
+ try {
+ AccessibleContext ac = createAccessibleContext();
+ if (ac != null) {
+ // Set accessible name and description here to avoid
+ // unnecessary property change events later ..
+ ac.setAccessibleName(unoAccessibleContext.getAccessibleName());
+ ac.setAccessibleDescription(unoAccessibleContext.getAccessibleDescription());
+ accessibleContext = ac;
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+ return accessibleContext;
+ }
+
+ protected abstract class AccessibleUNOComponent extends java.awt.Component.AccessibleAWTComponent
+ implements javax.accessibility.AccessibleExtendedComponent {
+
+ protected java.awt.event.ComponentListener accessibleComponentHandler = null;
+
+ /**
+ * Fire PropertyChange listener, if one is registered,
+ * when shown/hidden..
+ */
+ protected class AccessibleComponentHandler implements java.awt.event.ComponentListener {
+ public void componentHidden(java.awt.event.ComponentEvent e) {
+ AccessibleUNOComponent.this.firePropertyChange(
+ AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
+ AccessibleState.VISIBLE, null);
+ }
+
+ public void componentShown(java.awt.event.ComponentEvent e) {
+ AccessibleUNOComponent.this.firePropertyChange(
+ AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
+ null, AccessibleState.VISIBLE);
+ }
+
+ public void componentMoved(java.awt.event.ComponentEvent e) {
+ }
+
+ public void componentResized(java.awt.event.ComponentEvent e) {
+ }
+ } // inner class AccessibleComponentHandler
+
+ protected java.awt.event.FocusListener accessibleFocusHandler = null;
+
+ /**
+ * Fire PropertyChange listener, if one is registered,
+ * when focus events happen
+ */
+ protected class AccessibleFocusHandler implements java.awt.event.FocusListener {
+ public void focusGained(java.awt.event.FocusEvent event) {
+ AccessibleUNOComponent.this.firePropertyChange(
+ AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
+ null, AccessibleState.FOCUSED);
+ if (Build.DEBUG) {
+ System.err.println("[" + getAccessibleRole() + "] " + getAccessibleName() + " is now focused");
+ }
+ }
+ public void focusLost(java.awt.event.FocusEvent event) {
+ AccessibleUNOComponent.this.firePropertyChange(
+ AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
+ AccessibleState.FOCUSED, null);
+ if (Build.DEBUG) {
+ System.err.println("[" + getAccessibleRole() + "] " + getAccessibleName() + " is no longer focused");
+ }
+ }
+ } // inner class AccessibleFocusHandler
+
+ protected int propertyChangeListenerCount = 0;
+
+ /**
+ * Add a PropertyChangeListener to the listener list.
+ *
+ * @param listener The PropertyChangeListener to be added
+ */
+ public void addPropertyChangeListener(java.beans.PropertyChangeListener listener) {
+ if (propertyChangeListenerCount++ == 0) {
+ accessibleComponentHandler = new AccessibleComponentHandler();
+ Component.this.addComponentListener(accessibleComponentHandler);
+
+ accessibleFocusHandler = new AccessibleFocusHandler();
+ Component.this.addFocusListener(accessibleFocusHandler);
+ }
+ super.addPropertyChangeListener(listener);
+ }
+
+ /**
+ * Remove a PropertyChangeListener from the listener list.
+ * This removes a PropertyChangeListener that was registered
+ * for all properties.
+ *
+ * @param listener The PropertyChangeListener to be removed
+ */
+ public void removePropertyChangeListener(java.beans.PropertyChangeListener listener) {
+ if (--propertyChangeListenerCount == 0) {
+ Component.this.removeComponentListener(accessibleComponentHandler);
+ accessibleComponentHandler = null;
+
+ Component.this.removeFocusListener(accessibleFocusHandler);
+ accessibleFocusHandler = null;
+ }
+ super.removePropertyChangeListener(listener);
+ }
+
+ /**
+ * Gets the current state set of this object.
+ *
+ * @return an instance of <code>AccessibleStateSet</code>
+ * containing the current state set of the object
+ * @see AccessibleState
+ */
+ public javax.accessibility.AccessibleStateSet getAccessibleStateSet() {
+ if (disposed)
+ return AccessibleStateAdapter.getDefunctStateSet();
+
+ try {
+ return AccessibleStateAdapter.getAccessibleStateSet(Component.this,
+ unoAccessibleContext.getAccessibleStateSet());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return AccessibleStateAdapter.getDefunctStateSet();
+ }
+ }
+
+ /** Gets the locale of the component */
+ public java.util.Locale getLocale() throws java.awt.IllegalComponentStateException {
+ try {
+ com.sun.star.lang.Locale unoLocale = unoAccessible.getAccessibleContext().getLocale();
+ return new java.util.Locale(unoLocale.Language, unoLocale.Country);
+ } catch (IllegalAccessibleComponentStateException e) {
+ throw new java.awt.IllegalComponentStateException(e.getMessage());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return java.util.Locale.getDefault();
+ }
+ }
+
+ /*
+ * AccessibleExtendedComponent
+ */
+
+ /** Returns the background color of the object */
+ public java.awt.Color getBackground() {
+ try {
+ return new java.awt.Color(unoAccessibleComponent.getBackground());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ public void setBackground(java.awt.Color c) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Returns the foreground color of the object */
+ public java.awt.Color getForeground() {
+ try {
+ return new java.awt.Color(unoAccessibleComponent.getForeground());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ public void setForeground(java.awt.Color c) {
+ // Not supported by UNO accessibility API
+ }
+
+ public java.awt.Cursor getCursor() {
+ // Not supported by UNO accessibility API
+ return null;
+ }
+
+ public void setCursor(java.awt.Cursor cursor) {
+ // Not supported by UNO accessibility API
+ }
+
+ public java.awt.Font getFont() {
+ // FIXME
+ return null;
+ }
+
+ public void setFont(java.awt.Font f) {
+ // Not supported by UNO accessibility API
+ }
+
+ public java.awt.FontMetrics getFontMetrics(java.awt.Font f) {
+ // FIXME
+ return null;
+ }
+
+ public boolean isEnabled() {
+ return Component.this.isEnabled();
+ }
+
+ public void setEnabled(boolean b) {
+ // Not supported by UNO accessibility API
+ }
+
+ public boolean isVisible() {
+ return Component.this.isVisible();
+ }
+
+ public void setVisible(boolean b) {
+ // Not supported by UNO accessibility API
+ }
+
+ public boolean isShowing() {
+ return Component.this.isShowing();
+ }
+
+ public boolean contains(java.awt.Point p) {
+ try {
+ return unoAccessibleComponent.containsPoint(new com.sun.star.awt.Point(p.x, p.y));
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return false;
+ }
+ }
+
+ /** Returns the location of the object on the screen. */
+ public java.awt.Point getLocationOnScreen() {
+ try {
+ com.sun.star.awt.Point unoPoint = unoAccessibleComponent.getLocationOnScreen();
+// if (Build.DEBUG) {
+// System.err.println("Returning location on screen( " + unoPoint.X + ", " + unoPoint.Y + " )" );
+// }
+ return new java.awt.Point(unoPoint.X, unoPoint.Y);
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Gets the location of this component in the form of a point specifying the component's top-left corner */
+ public java.awt.Point getLocation() {
+ try {
+ com.sun.star.awt.Point unoPoint = unoAccessibleComponent.getLocation();
+ return new java.awt.Point( unoPoint.X, unoPoint.Y );
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Moves this component to a new location */
+ public void setLocation(java.awt.Point p) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Gets the bounds of this component in the form of a Rectangle object */
+ public java.awt.Rectangle getBounds() {
+ try {
+ com.sun.star.awt.Rectangle unoRect = unoAccessibleComponent.getBounds();
+ return new java.awt.Rectangle(unoRect.X, unoRect.Y, unoRect.Width, unoRect.Height);
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Moves and resizes this component to conform to the new bounding rectangle r */
+ public void setBounds(java.awt.Rectangle r) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Returns the size of this component in the form of a Dimension object */
+ public java.awt.Dimension getSize() {
+ try {
+ com.sun.star.awt.Size unoSize = unoAccessibleComponent.getSize();
+ return new java.awt.Dimension(unoSize.Width, unoSize.Height);
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Resizes this component so that it has width d.width and height d.height */
+ public void setSize(java.awt.Dimension d) {
+ // Not supported by UNO accessibility API
+ }
+
+ public javax.accessibility.Accessible getAccessibleAt(java.awt.Point p) {
+ // Not supported by this implementation
+ return null;
+ }
+
+ public boolean isFocusTraversable() {
+ return Component.this.isFocusable();
+ }
+
+ public void requestFocus() {
+ unoAccessibleComponent.grabFocus();
+ }
+
+ public String getToolTipText() {
+ try {
+ XAccessibleExtendedComponent unoAccessibleExtendedComponent = (XAccessibleExtendedComponent)
+ UnoRuntime.queryInterface(XAccessibleExtendedComponent.class, unoAccessibleComponent);
+ if (unoAccessibleExtendedComponent != null) {
+ return unoAccessibleExtendedComponent.getToolTipText();
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ return null;
+ }
+
+ public String getTitledBorderText() {
+ try {
+ XAccessibleExtendedComponent unoAccessibleExtendedComponent = (XAccessibleExtendedComponent)
+ UnoRuntime.queryInterface(XAccessibleExtendedComponent.class, unoAccessibleComponent);
+ if (unoAccessibleExtendedComponent != null) {
+ return unoAccessibleExtendedComponent.getTitledBorderText();
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ return null;
+ }
+
+ public javax.accessibility.AccessibleKeyBinding getAccessibleKeyBinding() {
+ try {
+ XAccessibleAction unoAccessibleAction = (XAccessibleAction)
+ UnoRuntime.queryInterface(XAccessibleAction.class, unoAccessibleComponent);
+ if (unoAccessibleAction != null) {
+ XAccessibleKeyBinding unoAccessibleKeyBinding = unoAccessibleAction.getAccessibleActionKeyBinding(0);
+ if (unoAccessibleKeyBinding != null) {
+ return new AccessibleKeyBinding(unoAccessibleKeyBinding);
+ }
+ }
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ return null;
+ }
+ }
+
+ // Extract a number from a UNO any
+ public static java.lang.Number toNumber(java.lang.Object any) {
+ try {
+ if (AnyConverter.isByte(any)) {
+ return new Byte(AnyConverter.toByte(any));
+ } else if (AnyConverter.isShort(any)) {
+ return new Short(AnyConverter.toShort(any));
+ } else if (AnyConverter.isInt(any)) {
+ return new Integer(AnyConverter.toInt(any));
+ } else if (AnyConverter.isLong(any)) {
+ return new Long(AnyConverter.toLong(any));
+ } else if (AnyConverter.isFloat(any)) {
+ return new Float(AnyConverter.toFloat(any));
+ } else if (AnyConverter.isDouble(any)) {
+ return new Double(AnyConverter.toDouble(any));
+ }
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ throw new IllegalArgumentException(e.getMessage());
+ }
+ return null;
+ }
+
+ public String toString() {
+ return UnoRuntime.generateOid(unoAccessible);
+ }
+}
+
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Container.java b/accessibility/bridge/org/openoffice/java/accessibility/Container.java
new file mode 100644
index 000000000000..257cdab8b757
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/Container.java
@@ -0,0 +1,763 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import javax.accessibility.AccessibleContext;
+import javax.accessibility.AccessibleState;
+
+import com.sun.star.uno.*;
+import com.sun.star.accessibility.*;
+
+public class Container extends java.awt.Container implements javax.accessibility.Accessible {
+
+ protected XAccessible unoAccessible;
+ protected XAccessibleContext unoAccessibleContext;
+ protected XAccessibleComponent unoAccessibleComponent = null;
+
+ protected javax.accessibility.AccessibleRole accessibleRole;
+ protected javax.accessibility.AccessibleText accessibleText;
+ protected boolean disposed = false;
+
+ protected Container(javax.accessibility.AccessibleRole role,
+ XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
+ accessibleRole = role;
+ unoAccessible = xAccessible;
+ unoAccessibleContext = xAccessibleContext;
+ unoAccessibleComponent = (XAccessibleComponent)
+ UnoRuntime.queryInterface(XAccessibleComponent.class,
+ xAccessibleContext);
+
+ // Add the event listener right away, because the global focus notification doesn't
+ // work yet ..
+ XAccessibleEventBroadcaster broadcaster = (XAccessibleEventBroadcaster)
+ UnoRuntime.queryInterface(XAccessibleEventBroadcaster.class,
+ unoAccessibleContext);
+ if (broadcaster != null) {
+ broadcaster.addEventListener(createEventListener());
+ }
+ }
+
+ /**
+ * Determines whether this <code>Container</code> is showing on screen.
+ * This means that the component must be visible, and it must be in a
+ * <code>container</code> that is visible and showing.
+ * @see #addNotify
+ * @see #removeNotify
+ * @since JDK1.0
+ */
+ public boolean isShowing() {
+ if (isVisible()) {
+ java.awt.Container parent = getParent();
+ return (parent == null) || parent.isShowing();
+ }
+ return false;
+ }
+
+ /**
+ * Makes this <code>Container</code> displayable by connecting it to a
+ * native screen resource.
+ * This method is called internally by the toolkit and should
+ * not be called directly by programs.
+ * @see #isDisplayable
+ * @see #removeNotify
+ * @since JDK1.0
+ */
+ public void addNotify() {
+ }
+
+ /**
+ * Makes this <code>Container</code> undisplayable by destroying it native
+ * screen resource.
+ * This method is called by the toolkit internally and should
+ * not be called directly by programs.
+ * @see #isDisplayable
+ * @see #addNotify
+ * @since JDK1.0
+ */
+ public void removeNotify() {
+ }
+
+ /*
+ * Fake the java focus handling. This is necessary to keep OOo focus
+ * in sync with the java focus. See java.awt.DefaultKeyboardFocusManager
+ * for implementation details.
+ **/
+
+ /** Requests focus for this object */
+ public void requestFocus() {
+ }
+
+ /** Requests focus for this object */
+ public boolean requestFocus(boolean temporary) {
+ // Must be a no-op to make focus handling work
+ return true;
+ }
+
+ /** Requests the focus for this object in the containing window */
+ public boolean requestFocusInWindow() {
+ return requestFocusInWindow(false);
+ }
+
+ /** Requests the focus for this object in the containing window */
+ protected boolean requestFocusInWindow(boolean temporary) {
+ if (isFocusable() && isVisible()) {
+ getEventQueue().postEvent(new java.awt.event.FocusEvent(this, java.awt.event.FocusEvent.FOCUS_GAINED, temporary));
+ return true;
+ }
+ return false;
+ }
+
+ public Object[] getAccessibleComponents(Object[] targetSet) {
+ try {
+ java.util.ArrayList list = new java.util.ArrayList(targetSet.length);
+ for (int i=0; i < targetSet.length; i++) {
+ java.awt.Component c = AccessibleObjectFactory.getAccessibleComponent(
+ (XAccessible) UnoRuntime.queryInterface(XAccessible.class, targetSet[i]));
+ if (c != null) {
+ list.add(c);
+ }
+ }
+ list.trimToSize();
+ return list.toArray();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ protected java.awt.EventQueue getEventQueue() {
+ return java.awt.Toolkit.getDefaultToolkit().getSystemEventQueue();
+ }
+
+ protected class PropertyChangeBroadcaster implements Runnable {
+ String propertyName;
+ Object oldValue;
+ Object newValue;
+
+ public PropertyChangeBroadcaster(String name, Object param1, Object param2) {
+ propertyName = name;
+ oldValue = param1;
+ newValue = param2;
+ }
+
+ public void run() {
+ // Because this code is executed in the DispatchThread, it is better tocatch every
+ // exception that might occur
+ try {
+ AccessibleContext ac = Container.this.accessibleContext;
+ if (ac != null) {
+ ac.firePropertyChange(propertyName, oldValue, newValue);
+ }
+ } catch (java.lang.Exception e) {
+ if (Build.DEBUG) {
+ System.err.println(e.getClass().getName() + " caught propagating " + propertyName + " event: " + e.getMessage());
+ e.printStackTrace();
+ }
+ }
+ }
+ }
+
+ protected void firePropertyChange(String property, Object oldValue, Object newValue) {
+ getEventQueue().invokeLater(new PropertyChangeBroadcaster(property, oldValue, newValue));
+ }
+
+ protected void fireStatePropertyChange(AccessibleState state, boolean set) {
+ PropertyChangeBroadcaster broadcaster;
+ if (set) {
+ broadcaster = new PropertyChangeBroadcaster(
+ AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
+ null, state);
+ } else {
+ broadcaster = new PropertyChangeBroadcaster(
+ AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
+ state, null);
+ }
+ getEventQueue().invokeLater(broadcaster);
+ }
+
+ /**
+ * Update the proxy objects appropriatly on property change events
+ */
+ protected class AccessibleContainerListener implements XAccessibleEventListener {
+
+ protected AccessibleContainerListener() {
+ }
+
+ protected java.awt.EventQueue getEventQueue() {
+ return java.awt.Toolkit.getDefaultToolkit().getSystemEventQueue();
+ }
+
+ protected void setComponentState(short state, boolean enable) {
+ switch (state) {
+ case AccessibleStateType.ACTIVE:
+ // Only frames should be active
+ break;
+ case AccessibleStateType.ENABLED:
+ setEnabled(enable);
+ // Since we can't access awt.Componet.accessibleContext, we need to fire
+ // this event manually ..
+ fireStatePropertyChange(AccessibleState.ENABLED, enable);
+ break;
+ case AccessibleStateType.FOCUSED:
+ getEventQueue().postEvent(new java.awt.event.FocusEvent(
+ Container.this, enable ?
+ java.awt.event.FocusEvent.FOCUS_GAINED :
+ java.awt.event.FocusEvent.FOCUS_LOST));
+ break;
+ case AccessibleStateType.SELECTED:
+ fireStatePropertyChange(AccessibleState.SELECTED, enable);
+ break;
+ case AccessibleStateType.SENSITIVE:
+ // This state equals ENABLED in OOo (but not in Gtk+) and does not exist in Java 1.5
+ break;
+ case AccessibleStateType.SHOWING:
+ case AccessibleStateType.VISIBLE:
+ setVisible(enable);
+ break;
+ default:
+ if (Build.DEBUG) {
+ System.err.println(Container.this + "unexpected state change " + state);
+ }
+ break;
+ }
+ }
+ /** Updates the accessible name and fires the appropriate PropertyChangedEvent */
+ protected void handleNameChangedEvent(Object any) {
+ try {
+ // This causes the property change event to be fired in the VCL thread
+ // context. If this causes problems, it has to be deligated to the java
+ // dispatch thread ..
+ if (accessibleContext != null) {
+ accessibleContext.setAccessibleName(AnyConverter.toString(any));
+ }
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ /** Updates the accessible description and fires the appropriate PropertyChangedEvent */
+ protected void handleDescriptionChangedEvent(Object any) {
+ try {
+ // This causes the property change event to be fired in the VCL thread
+ // context. If this causes problems, it has to be deligated to the java
+ // dispatch thread ..
+ if (accessibleContext != null) {
+ accessibleContext.setAccessibleDescription(AnyConverter.toString(any));
+ }
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ /** Updates the internal states and fires the appropriate PropertyChangedEvent */
+ protected void handleStateChangedEvent(Object any1, Object any2) {
+ try {
+ if (AnyConverter.isShort(any1)) {
+ setComponentState(AnyConverter.toShort(any1), false);
+ }
+
+ if (AnyConverter.isShort(any2)) {
+ setComponentState(AnyConverter.toShort(any2), true);
+ }
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ /* This event is only necessary because some objects in the office don't know their parent
+ * and are therefor unable to revoke and re-insert themselves.
+ */
+ protected void handleAllChildrenChangedEvent() {
+ javax.accessibility.Accessible parent = (javax.accessibility.Accessible) getParent();
+ if (parent != null) {
+ javax.accessibility.AccessibleContext parentAC = parent.getAccessibleContext();
+ if (parentAC != null) {
+
+ parentAC.firePropertyChange(
+ javax.accessibility.AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
+ Container.this,
+ null);
+
+ AccessibleObjectFactory.clearContainer(Container.this);
+ AccessibleObjectFactory.populateContainer(Container.this, unoAccessibleContext);
+
+ parentAC.firePropertyChange(
+ javax.accessibility.AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
+ null,
+ Container.this);
+ }
+ }
+ }
+
+ /** Called by OpenOffice process to notify property changes */
+ public void notifyEvent(AccessibleEventObject event) {
+
+ if ( !disposed ) {
+
+ switch (event.EventId) {
+ case AccessibleEventId.NAME_CHANGED:
+ // Set the accessible name for the corresponding context, which will fire a property
+ // change event itself
+ handleNameChangedEvent(event.NewValue);
+ break;
+ case AccessibleEventId.DESCRIPTION_CHANGED:
+ // Set the accessible description for the corresponding context, which will fire a property
+ // change event itself - so do not set propertyName !
+ handleDescriptionChangedEvent(event.NewValue);
+ break;
+ case AccessibleEventId.STATE_CHANGED:
+ // Update the internal state set and fire the appropriate PropertyChangedEvent
+ handleStateChangedEvent(event.OldValue, event.NewValue);
+ break;
+ case AccessibleEventId.TEXT_CHANGED:
+ firePropertyChange(AccessibleContext.ACCESSIBLE_TEXT_PROPERTY,
+ AccessibleTextImpl.convertTextSegment(event.OldValue),
+ AccessibleTextImpl.convertTextSegment(event.NewValue));
+ break;
+ case AccessibleEventId.CHILD:
+ if (AnyConverter.isObject(event.OldValue)) {
+ AccessibleObjectFactory.removeChild(Container.this, event.OldValue);
+ } else if (AnyConverter.isObject(event.NewValue)) {
+ AccessibleObjectFactory.addChild(Container.this, event.NewValue);
+ }
+ break;
+ case AccessibleEventId.VISIBLE_DATA_CHANGED:
+ case AccessibleEventId.BOUNDRECT_CHANGED:
+ firePropertyChange(AccessibleContext.ACCESSIBLE_VISIBLE_DATA_PROPERTY, null, null);
+ break;
+ /*
+ * the Java AccessBridge for GNOME maps SELECTION_PROPERTY change events
+ * for objects of role TEXT to object:text-selection-changed
+ */
+ case AccessibleEventId.TEXT_SELECTION_CHANGED:
+ case AccessibleEventId.SELECTION_CHANGED:
+ firePropertyChange(AccessibleContext.ACCESSIBLE_SELECTION_PROPERTY, null, null);
+ break;
+ case AccessibleEventId.INVALIDATE_ALL_CHILDREN:
+ handleAllChildrenChangedEvent();
+ break;
+ default:
+ // Warn about unhandled events
+ if(Build.DEBUG) {
+ System.out.println(this + ": unhandled accessibility event id=" + event.EventId);
+ }
+ }
+ }
+ }
+
+ /** Called by OpenOffice process to notify that the UNO component is disposing */
+ public void disposing(com.sun.star.lang.EventObject eventObject) {
+ disposed = true;
+ AccessibleObjectFactory.disposing(Container.this);
+ }
+ }
+
+ protected XAccessibleEventListener createEventListener() {
+ return new AccessibleContainerListener();
+ }
+
+ protected javax.accessibility.AccessibleContext accessibleContext = null;
+
+ /** This method actually creates the AccessibleContext object returned by
+ * getAccessibleContext().
+ */
+ protected javax.accessibility.AccessibleContext createAccessibleContext() {
+ return new AccessibleContainer();
+ }
+
+ /** Returns the AccessibleContext associated with this object */
+ public final javax.accessibility.AccessibleContext getAccessibleContext() {
+ if (accessibleContext == null) {
+ try {
+ AccessibleContext ac = createAccessibleContext();
+ if (ac != null) {
+ // Set accessible name and description here to avoid
+ // unnecessary property change events later ..
+ ac.setAccessibleName(unoAccessibleContext.getAccessibleName());
+ ac.setAccessibleDescription(unoAccessibleContext.getAccessibleDescription());
+ accessibleContext = ac;
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+ return accessibleContext;
+ }
+
+ protected class AccessibleContainer extends java.awt.Container.AccessibleAWTContainer {
+
+ protected AccessibleContainer() {
+ /* Since getAccessibleText() is heavily used by the java access
+ * bridge for gnome and the gnome at-tools, we do a query interface
+ * here and remember the result.
+ */
+ accessibleText = AccessibleTextImpl.get(unoAccessibleContext);
+ }
+
+ protected AccessibleContainer(boolean query) {
+ /* This constructor is explicitly for subclasses that implement
+ * AccessibleHypertext and therefor the default constructor would
+ * bring unnecessary overhead.
+ */
+ }
+
+ protected java.awt.event.ComponentListener accessibleComponentHandler = null;
+
+ /**
+ * Fire PropertyChange listener, if one is registered,
+ * when shown/hidden..
+ */
+ protected class AccessibleComponentHandler implements java.awt.event.ComponentListener {
+ public void componentHidden(java.awt.event.ComponentEvent e) {
+ AccessibleContainer.this.firePropertyChange(
+ AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
+ AccessibleState.VISIBLE, null);
+ }
+
+ public void componentShown(java.awt.event.ComponentEvent e) {
+ AccessibleContainer.this.firePropertyChange(
+ AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
+ null, AccessibleState.VISIBLE);
+ }
+
+ public void componentMoved(java.awt.event.ComponentEvent e) {
+ }
+
+ public void componentResized(java.awt.event.ComponentEvent e) {
+ }
+ } // inner class AccessibleContainerHandler
+
+ protected java.awt.event.FocusListener accessibleFocusHandler = null;
+
+ /**
+ * Fire PropertyChange listener, if one is registered,
+ * when focus events happen
+ */
+ protected class AccessibleFocusHandler implements java.awt.event.FocusListener {
+ public void focusGained(java.awt.event.FocusEvent event) {
+ AccessibleContainer.this.firePropertyChange(
+ AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
+ null, AccessibleState.FOCUSED);
+ if (Build.DEBUG) {
+ System.err.println("[" + getAccessibleRole() + "] " + getAccessibleName() + " is now focused");
+ }
+ }
+ public void focusLost(java.awt.event.FocusEvent event) {
+ AccessibleContainer.this.firePropertyChange(
+ AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
+ AccessibleState.FOCUSED, null);
+ if (Build.DEBUG) {
+ System.err.println("[" + getAccessibleRole() + "] " + getAccessibleName() + " is no longer focused");
+ }
+ }
+ } // inner class AccessibleFocusHandler
+
+ protected java.awt.event.ContainerListener accessibleContainerHandler = null;
+
+ /**
+ * Fire PropertyChange listener, if one is registered,
+ * when children added/removed.
+ */
+
+ protected class AccessibleContainerHandler implements java.awt.event.ContainerListener {
+ public void componentAdded(java.awt.event.ContainerEvent e) {
+ java.awt.Component c = e.getChild();
+ if (c != null && c instanceof javax.accessibility.Accessible) {
+ AccessibleContainer.this.firePropertyChange(
+ AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
+ null, ((javax.accessibility.Accessible) c).getAccessibleContext());
+ }
+ }
+ public void componentRemoved(java.awt.event.ContainerEvent e) {
+ java.awt.Component c = e.getChild();
+ if (c != null && c instanceof javax.accessibility.Accessible) {
+ AccessibleContainer.this.firePropertyChange(
+ AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
+ ((javax.accessibility.Accessible) c).getAccessibleContext(), null);
+ }
+ }
+ }
+
+ protected int propertyChangeListenerCount = 0;
+
+ /**
+ * Add a PropertyChangeListener to the listener list.
+ *
+ * @param listener The PropertyChangeListener to be added
+ */
+ public void addPropertyChangeListener(java.beans.PropertyChangeListener listener) {
+ if (propertyChangeListenerCount++ == 0) {
+ accessibleFocusHandler = new AccessibleFocusHandler();
+ Container.this.addFocusListener(accessibleFocusHandler);
+
+ accessibleContainerHandler = new AccessibleContainerHandler();
+ Container.this.addContainerListener(accessibleContainerHandler);
+
+ accessibleComponentHandler = new AccessibleComponentHandler();
+ Container.this.addComponentListener(accessibleComponentHandler);
+ }
+ super.addPropertyChangeListener(listener);
+ }
+
+ /**
+ * Remove a PropertyChangeListener from the listener list.
+ * This removes a PropertyChangeListener that was registered
+ * for all properties.
+ *
+ * @param listener The PropertyChangeListener to be removed
+ */
+ public void removePropertyChangeListener(java.beans.PropertyChangeListener listener) {
+ if (--propertyChangeListenerCount == 0) {
+ Container.this.removeComponentListener(accessibleComponentHandler);
+ accessibleComponentHandler = null;
+
+ Container.this.removeContainerListener(accessibleContainerHandler);
+ accessibleContainerHandler = null;
+
+ Container.this.removeFocusListener(accessibleFocusHandler);
+ accessibleFocusHandler = null;
+ }
+ super.removePropertyChangeListener(listener);
+ }
+
+ /** Gets the role of this object */
+ public javax.accessibility.AccessibleRole getAccessibleRole() {
+ return accessibleRole;
+ }
+
+ /** Gets the AccessibleText associated with this object presenting text on the display */
+ public javax.accessibility.AccessibleText getAccessibleText() {
+
+ if (disposed)
+ return null;
+
+ return accessibleText;
+ }
+
+ /**
+ * Gets the current state set of this object.
+ *
+ * @return an instance of <code>AccessibleStateSet</code>
+ * containing the current state set of the object
+ * @see AccessibleState
+ */
+ public javax.accessibility.AccessibleStateSet getAccessibleStateSet() {
+ if (disposed)
+ return AccessibleStateAdapter.getDefunctStateSet();
+
+ try {
+ return AccessibleStateAdapter.getAccessibleStateSet(Container.this,
+ unoAccessibleContext.getAccessibleStateSet());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return AccessibleStateAdapter.getDefunctStateSet();
+ }
+ }
+
+ /** Returns the AccessibleSelection interface for this object */
+ public javax.accessibility.AccessibleSelection getAccessibleSelection() {
+ try {
+ XAccessibleSelection unoAccessibleSelection = (XAccessibleSelection)
+ UnoRuntime.queryInterface(XAccessibleSelection.class, unoAccessibleContext);
+ if (unoAccessibleSelection != null) {
+ return new AccessibleSelectionImpl(unoAccessibleSelection);
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+
+ return null;
+ }
+
+ /** Gets the locale of the component */
+ public java.util.Locale getLocale() throws java.awt.IllegalComponentStateException {
+ try {
+ com.sun.star.lang.Locale unoLocale = unoAccessible.getAccessibleContext().getLocale();
+ return new java.util.Locale(unoLocale.Language, unoLocale.Country);
+ } catch (IllegalAccessibleComponentStateException e) {
+ throw new java.awt.IllegalComponentStateException(e.getMessage());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return super.getLocale();
+ }
+ }
+
+ /*
+ * AccessibleComponent
+ */
+
+ /** Returns the background color of the object */
+ public java.awt.Color getBackground() {
+ try {
+ return new java.awt.Color(unoAccessibleComponent.getBackground());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ public void setBackground(java.awt.Color c) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Returns the foreground color of the object */
+ public java.awt.Color getForeground() {
+ try {
+ return new java.awt.Color(unoAccessibleComponent.getForeground());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ public void setForeground(java.awt.Color c) {
+ // Not supported by UNO accessibility API
+ }
+
+ public java.awt.Cursor getCursor() {
+ // Not supported by UNO accessibility API
+ return null;
+ }
+
+ public void setCursor(java.awt.Cursor cursor) {
+ // Not supported by UNO accessibility API
+ }
+
+ public java.awt.Font getFont() {
+ // FIXME
+ return null;
+ }
+
+ public void setFont(java.awt.Font f) {
+ // Not supported by UNO accessibility API
+ }
+
+ public java.awt.FontMetrics getFontMetrics(java.awt.Font f) {
+ // FIXME
+ return null;
+ }
+
+ public boolean isEnabled() {
+ return Container.this.isEnabled();
+ }
+
+ public void setEnabled(boolean b) {
+ // Not supported by UNO accessibility API
+ }
+
+ public boolean isVisible() {
+ return Container.this.isVisible();
+ }
+
+ public void setVisible(boolean b) {
+ // Not supported by UNO accessibility API
+ }
+
+ public boolean isShowing() {
+ return Container.this.isShowing();
+ }
+
+ public boolean contains(java.awt.Point p) {
+ try {
+ return unoAccessibleComponent.containsPoint(new com.sun.star.awt.Point(p.x, p.y));
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return false;
+ }
+ }
+
+ /** Returns the location of the object on the screen. */
+ public java.awt.Point getLocationOnScreen() {
+ try {
+ com.sun.star.awt.Point unoPoint = unoAccessibleComponent.getLocationOnScreen();
+ return new java.awt.Point(unoPoint.X, unoPoint.Y);
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Gets the location of this component in the form of a point specifying the component's top-left corner */
+ public java.awt.Point getLocation() {
+ try {
+ com.sun.star.awt.Point unoPoint = unoAccessibleComponent.getLocation();
+ return new java.awt.Point( unoPoint.X, unoPoint.Y );
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Moves this component to a new location */
+ public void setLocation(java.awt.Point p) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Gets the bounds of this component in the form of a Rectangle object */
+ public java.awt.Rectangle getBounds() {
+ try {
+ com.sun.star.awt.Rectangle unoRect = unoAccessibleComponent.getBounds();
+ return new java.awt.Rectangle(unoRect.X, unoRect.Y, unoRect.Width, unoRect.Height);
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Moves and resizes this component to conform to the new bounding rectangle r */
+ public void setBounds(java.awt.Rectangle r) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Returns the size of this component in the form of a Dimension object */
+ public java.awt.Dimension getSize() {
+ try {
+ com.sun.star.awt.Size unoSize = unoAccessibleComponent.getSize();
+ return new java.awt.Dimension(unoSize.Width, unoSize.Height);
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Resizes this component so that it has width d.width and height d.height */
+ public void setSize(java.awt.Dimension d) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Returns the Accessible child, if one exists, contained at the local coordinate Point */
+ public javax.accessibility.Accessible getAccessibleAt(java.awt.Point p) {
+ try {
+ java.awt.Component c = AccessibleObjectFactory.getAccessibleComponent(
+ unoAccessibleComponent.getAccessibleAtPoint(new com.sun.star.awt.Point(p.x, p.y)));
+
+ return (javax.accessibility.Accessible) c;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ public boolean isFocusTraversable() {
+ return Container.this.isFocusable();
+ }
+
+ public void requestFocus() {
+ unoAccessibleComponent.grabFocus();
+ }
+ }
+
+ public String toString() {
+ return UnoRuntime.generateOid(unoAccessible);
+ }
+}
+
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/DescendantManager.java b/accessibility/bridge/org/openoffice/java/accessibility/DescendantManager.java
new file mode 100644
index 000000000000..5b8c45b716b4
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/DescendantManager.java
@@ -0,0 +1,161 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+package org.openoffice.java.accessibility;
+
+import com.sun.star.accessibility.*;
+import com.sun.star.uno.AnyConverter;
+import com.sun.star.uno.UnoRuntime;
+
+import javax.accessibility.AccessibleState;
+
+
+public abstract class DescendantManager extends Component {
+ protected XAccessibleSelection unoAccessibleSelection = null;
+ protected javax.accessibility.Accessible activeDescendant = null;
+ protected boolean multiselectable = false;
+
+ protected DescendantManager(XAccessible xAccessible,
+ XAccessibleContext xAccessibleContext) {
+ super(xAccessible, xAccessibleContext);
+ }
+
+ protected DescendantManager(XAccessible xAccessible,
+ XAccessibleContext xAccessibleContext, boolean multiselectable) {
+ super(xAccessible, xAccessibleContext);
+ this.multiselectable = multiselectable;
+ }
+
+ /**
+ * Update the proxy objects appropriatly on property change events
+ */
+ protected class AccessibleDescendantManagerListener
+ extends AccessibleUNOComponentListener {
+ protected AccessibleDescendantManagerListener() {
+ unoAccessibleSelection = (XAccessibleSelection) UnoRuntime.queryInterface(XAccessibleSelection.class,
+ unoAccessibleContext);
+ }
+
+ /** Called by OpenOffice process to notify property changes */
+ public void notifyEvent(AccessibleEventObject event) {
+ switch (event.EventId) {
+ case AccessibleEventId.SELECTION_CHANGED:
+ firePropertyChange(javax.accessibility.AccessibleContext.ACCESSIBLE_SELECTION_PROPERTY,
+ null, null);
+
+ break;
+
+ default:
+ super.notifyEvent(event);
+ }
+ }
+ }
+
+ protected abstract class AccessibleDescendantManager
+ extends AccessibleUNOComponent
+ implements javax.accessibility.AccessibleSelection {
+ protected AccessibleDescendantManager() {
+ unoAccessibleSelection = (XAccessibleSelection) UnoRuntime.queryInterface(XAccessibleSelection.class,
+ unoAccessibleContext);
+ }
+
+ /*
+ * AccessibleContext
+ */
+
+ /** Returns the number of accessible children of the object */
+ public int getAccessibleChildrenCount() {
+ try {
+ return unoAccessibleContext.getAccessibleChildCount();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return 0;
+ }
+ }
+
+ /** Returns the AccessibleSelection interface for this object */
+ public javax.accessibility.AccessibleSelection getAccessibleSelection() {
+ return (unoAccessibleSelection != null) ? this : null;
+ }
+
+ /*
+ * AccessibleSelection
+ */
+
+ /** Adds the specified Accessible child of the object to the object's selection */
+ public void addAccessibleSelection(int i) {
+ try {
+ unoAccessibleSelection.selectAccessibleChild(i);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+
+ /** Clears the selection in the object, so that no children in the object are selected */
+ public void clearAccessibleSelection() {
+ try {
+ unoAccessibleSelection.clearAccessibleSelection();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+
+ /** Returns the number of Accessible children currently selected */
+ public int getAccessibleSelectionCount() {
+ try {
+ return unoAccessibleSelection.getSelectedAccessibleChildCount();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return 0;
+ }
+ }
+
+ /** Determines if the current child of this object is selected */
+ public boolean isAccessibleChildSelected(int i) {
+ try {
+ return unoAccessibleSelection.isAccessibleChildSelected(i);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return false;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return false;
+ }
+ }
+
+ /** Removes the specified child of the object from the object's selection */
+ public void removeAccessibleSelection(int i) {
+ try {
+ unoAccessibleSelection.deselectAccessibleChild(i);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+
+ /** Causes every child of the object to be selected if the object supports multiple selection */
+ public void selectAllAccessibleSelection() {
+ try {
+ unoAccessibleSelection.selectAllAccessibleChildren();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Dialog.java b/accessibility/bridge/org/openoffice/java/accessibility/Dialog.java
new file mode 100644
index 000000000000..dcb067368996
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/Dialog.java
@@ -0,0 +1,633 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import javax.accessibility.AccessibleState;
+
+import com.sun.star.uno.*;
+import com.sun.star.accessibility.*;
+
+public class Dialog extends java.awt.Dialog implements javax.accessibility.Accessible, NativeFrame {
+ protected XAccessibleComponent unoAccessibleComponent;
+
+ boolean opened = false;
+ boolean visible = false;
+ boolean active = false;
+
+ java.awt.EventQueue eventQueue = null;
+
+ protected Dialog(java.awt.Frame owner, XAccessibleComponent xAccessibleComponent) {
+ super(owner);
+ initialize(xAccessibleComponent);
+ }
+
+ protected Dialog(java.awt.Frame owner, String name, XAccessibleComponent xAccessibleComponent) {
+ super(owner, name);
+ initialize(xAccessibleComponent);
+ }
+
+ protected Dialog(java.awt.Frame owner, String name, boolean modal, XAccessibleComponent xAccessibleComponent) {
+ super(owner, name, modal);
+ initialize(xAccessibleComponent);
+ }
+
+ private void initialize(XAccessibleComponent xAccessibleComponent) {
+ unoAccessibleComponent = xAccessibleComponent;
+ eventQueue = java.awt.Toolkit.getDefaultToolkit().getSystemEventQueue();
+ XAccessibleEventBroadcaster broadcaster = (XAccessibleEventBroadcaster)
+ UnoRuntime.queryInterface(XAccessibleEventBroadcaster.class,
+ xAccessibleComponent);
+ if (broadcaster != null) {
+ broadcaster.addEventListener(new AccessibleDialogListener());
+ }
+ }
+
+ java.awt.Component initialComponent = null;
+
+ public java.awt.Component getInitialComponent() {
+ return initialComponent;
+ }
+
+ public void setInitialComponent(java.awt.Component c) {
+ initialComponent = c;
+ }
+
+ public Integer getHWND() {
+ return null;
+ }
+
+ /**
+ * Determines whether this <code>Component</code> is showing on screen.
+ * This means that the component must be visible, and it must be in a
+ * <code>container</code> that is visible and showing.
+ * @see #addNotify
+ * @see #removeNotify
+ * @since JDK1.0
+ */
+ public boolean isShowing() {
+ if (isVisible()) {
+ java.awt.Container parent = getParent();
+ return (parent == null) || parent.isShowing();
+ }
+ return false;
+ }
+
+ /**
+ * Makes this <code>Component</code> displayable by connecting it to a
+ * native screen resource.
+ * This method is called internally by the toolkit and should
+ * not be called directly by programs.
+ * @see #isDisplayable
+ * @see #removeNotify
+ * @since JDK1.0
+ */
+ public void addNotify() {
+// createHierarchyEvents(0, null, null, 0, false);
+ }
+
+ /**
+ * Makes this <code>Component</code> undisplayable by destroying it native
+ * screen resource.
+ * This method is called by the toolkit internally and should
+ * not be called directly by programs.
+ * @see #isDisplayable
+ * @see #addNotify
+ * @since JDK1.0
+ */
+ public void removeNotify() {
+ }
+
+ /**
+ * Determines if the object is visible. Note: this means that the
+ * object intends to be visible; however, it may not in fact be
+ * showing on the screen because one of the objects that this object
+ * is contained by is not visible. To determine if an object is
+ * showing on the screen, use <code>isShowing</code>.
+ *
+ * @return true if object is visible; otherwise, false
+ */
+ public boolean isVisible(){
+ return visible;
+ }
+
+ /**
+ * Shows or hides this component depending on the value of parameter
+ * <code>b</code>.
+ * @param b if <code>true</code>, shows this component;
+ * otherwise, hides this component
+ * @see #isVisible
+ * @since JDK1.1
+ */
+ public void setVisible(boolean b) {
+ if (visible != b){
+ visible = b;
+ if (b) {
+ // If it is the first show, fire WINDOW_OPENED event
+ if (!opened) {
+ postWindowEvent(java.awt.event.WindowEvent.WINDOW_OPENED);
+ opened = true;
+ }
+ postComponentEvent(java.awt.event.ComponentEvent.COMPONENT_SHOWN);
+ } else {
+ postComponentEvent(java.awt.event.ComponentEvent.COMPONENT_HIDDEN);
+ }
+ }
+ }
+
+ public void dispose() {
+ setVisible(false);
+ postWindowEvent(java.awt.event.WindowEvent.WINDOW_CLOSED);
+ }
+
+ protected void postWindowEvent(int i) {
+ eventQueue.postEvent(new java.awt.event.WindowEvent(this, i));
+ }
+
+ protected void postComponentEvent(int i) {
+ eventQueue.postEvent(new java.awt.event.ComponentEvent(this, i));
+ }
+
+ /**
+ * Update the proxy objects appropriatly on property change events
+ */
+ protected class AccessibleDialogListener implements XAccessibleEventListener {
+
+ protected AccessibleDialogListener() {
+ }
+
+ protected void setComponentState(short state, boolean enable) {
+ switch (state) {
+ case AccessibleStateType.ACTIVE:
+ active = enable;
+ if (enable) {
+ AccessibleObjectFactory.postWindowActivated(Dialog.this);
+ } else {
+ AccessibleObjectFactory.postWindowLostFocus(Dialog.this);
+ }
+ break;
+ case AccessibleStateType.ICONIFIED:
+ postWindowEvent(enable ?
+ java.awt.event.WindowEvent.WINDOW_ICONIFIED :
+ java.awt.event.WindowEvent.WINDOW_DEICONIFIED);
+ break;
+ case AccessibleStateType.VISIBLE:
+ Dialog.this.setVisible(enable);
+ break;
+ default:
+ if (Build.DEBUG) {
+ System.err.println("[dialog]: " + getTitle() + "unexpected state change " + state);
+ }
+ break;
+ }
+ }
+
+ /** Updates the accessible name and fires the appropriate PropertyChangedEvent */
+ protected void handleNameChangedEvent(Object any) {
+ try {
+ String title = AnyConverter.toString(any);
+ setTitle(title);
+ // This causes the property change event to be fired in the VCL thread
+ // context. If this causes problems, it has to be deligated to the java
+ // dispatch thread ..
+ javax.accessibility.AccessibleContext ac = accessibleContext;
+ if (ac!= null) {
+ ac.setAccessibleName(title);
+ }
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ /** Updates the accessible description and fires the appropriate PropertyChangedEvent */
+ protected void handleDescriptionChangedEvent(Object any) {
+ try {
+ // This causes the property change event to be fired in the VCL thread
+ // context. If this causes problems, it has to be deligated to the java
+ // dispatch thread ..
+ javax.accessibility.AccessibleContext ac = accessibleContext;
+ if (ac!= null) {
+ ac.setAccessibleDescription(AnyConverter.toString(any));
+ }
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ /** Updates the internal states and fires the appropriate PropertyChangedEvent */
+ protected void handleStateChangedEvent(Object any1, Object any2) {
+ try {
+ if (AnyConverter.isShort(any1)) {
+ setComponentState(AnyConverter.toShort(any1), false);
+ }
+
+ if (AnyConverter.isShort(any2)) {
+ setComponentState(AnyConverter.toShort(any2), true);
+ }
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ /** Fires a visible data property change event */
+ protected void handleVisibleDataEvent() {
+ javax.accessibility.AccessibleContext ac = accessibleContext;
+ if (ac != null) {
+ ac.firePropertyChange(javax.accessibility.AccessibleContext.ACCESSIBLE_VISIBLE_DATA_PROPERTY, null, null);
+ }
+ }
+
+ /** Called by OpenOffice process to notify property changes */
+ public void notifyEvent(AccessibleEventObject event) {
+ switch (event.EventId) {
+ case AccessibleEventId.NAME_CHANGED:
+ // Set the accessible name for the corresponding context, which will fire a property
+ // change event itself
+ handleNameChangedEvent(event.NewValue);
+ break;
+ case AccessibleEventId.DESCRIPTION_CHANGED:
+ // Set the accessible description for the corresponding context, which will fire a property
+ // change event itself - so do not set propertyName !
+ handleDescriptionChangedEvent(event.NewValue);
+ break;
+ case AccessibleEventId.STATE_CHANGED:
+ // Update the internal state set and fire the appropriate PropertyChangedEvent
+ handleStateChangedEvent(event.OldValue, event.NewValue);
+ break;
+ case AccessibleEventId.CHILD:
+ if (AnyConverter.isObject(event.OldValue)) {
+ AccessibleObjectFactory.removeChild(Dialog.this, event.OldValue);
+ } else if (AnyConverter.isObject(event.NewValue)) {
+ AccessibleObjectFactory.addChild(Dialog.this, event.NewValue);
+ }
+ break;
+ case AccessibleEventId.VISIBLE_DATA_CHANGED:
+ case AccessibleEventId.BOUNDRECT_CHANGED:
+ handleVisibleDataEvent();
+ break;
+ default:
+ // Warn about unhandled events
+ if(Build.DEBUG) {
+ System.out.println(this + ": unhandled accessibility event id=" + event.EventId);
+ }
+ }
+ }
+
+ /** Called by OpenOffice process to notify that the UNO component is disposing */
+ public void disposing(com.sun.star.lang.EventObject eventObject) {
+ }
+ }
+
+ javax.accessibility.AccessibleContext accessibleContext = null;
+
+ /** Returns the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext getAccessibleContext() {
+ if (accessibleContext == null) {
+ accessibleContext = new AccessibleDialog();
+ accessibleContext.setAccessibleName(getTitle());
+ }
+ return accessibleContext;
+ }
+
+ protected class AccessibleDialog extends java.awt.Dialog.AccessibleAWTDialog {
+ protected AccessibleDialog() {
+ super();
+ }
+
+ protected java.awt.event.ComponentListener accessibleComponentHandler = null;
+
+ /**
+ * Fire PropertyChange listener, if one is registered,
+ * when shown/hidden..
+ */
+ protected class AccessibleComponentHandler implements java.awt.event.ComponentListener {
+ public void componentHidden(java.awt.event.ComponentEvent e) {
+ AccessibleDialog.this.firePropertyChange(
+ javax.accessibility.AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
+ javax.accessibility.AccessibleState.VISIBLE, null);
+ }
+
+ public void componentShown(java.awt.event.ComponentEvent e) {
+ AccessibleDialog.this.firePropertyChange(
+ javax.accessibility.AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
+ null, javax.accessibility.AccessibleState.VISIBLE);
+ }
+
+ public void componentMoved(java.awt.event.ComponentEvent e) {
+ }
+
+ public void componentResized(java.awt.event.ComponentEvent e) {
+ }
+ } // inner class AccessibleComponentHandler
+
+ protected java.awt.event.WindowListener accessibleWindowHandler = null;
+
+ /**
+ * Fire PropertyChange listener, if one is registered,
+ * when window events happen
+ */
+ protected class AccessibleWindowHandler implements java.awt.event.WindowListener {
+ /** Invoked when the Window is set to be the active Window. */
+ public void windowActivated(java.awt.event.WindowEvent e) {
+ AccessibleDialog.this.firePropertyChange(
+ javax.accessibility.AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
+ null, javax.accessibility.AccessibleState.ACTIVE);
+ if (Build.DEBUG) {
+ System.err.println("[Dialog] " + getTitle() + " is now active");
+ }
+ }
+
+ /** Invoked when a window has been closed as the result of calling dispose on the window. */
+ public void windowClosed(java.awt.event.WindowEvent e) {
+ if (Build.DEBUG) {
+ System.err.println("[Dialog] " + getTitle() + " has been closed");
+ }
+ }
+
+ /** Invoked when the user attempts to close the window from the window's system menu. */
+ public void windowClosing(java.awt.event.WindowEvent e) {
+ if (Build.DEBUG) {
+ System.err.println("[Dialog] " + getTitle() + " is closing");
+ }
+ }
+
+ /** Invoked when a Window is no longer the active Window. */
+ public void windowDeactivated(java.awt.event.WindowEvent e) {
+ AccessibleDialog.this.firePropertyChange(
+ javax.accessibility.AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
+ javax.accessibility.AccessibleState.ACTIVE, null);
+ if (Build.DEBUG) {
+ System.err.println("[Dialog] " + getTitle() + " is no longer active");
+ }
+ }
+
+ /** Invoked when a window is changed from a minimized to a normal state. */
+ public void windowDeiconified(java.awt.event.WindowEvent e) {
+ if (Build.DEBUG) {
+ System.err.println("[Dialog] " + getTitle() + " has been deiconified");
+ }
+ }
+
+ /** Invoked when a window is changed from a normal to a minimized state. */
+ public void windowIconified(java.awt.event.WindowEvent e) {
+ if (Build.DEBUG) {
+ System.err.println("[Dialog] " + getTitle() + " has been iconified");
+ }
+ }
+
+ /** Invoked the first time a window is made visible. */
+ public void windowOpened(java.awt.event.WindowEvent e) {
+ if (Build.DEBUG) {
+ System.err.println("[Dialog] " + getTitle() + " has been opened");
+ }
+ }
+
+ } // inner class AccessibleWindowHandler
+
+ protected java.awt.event.ContainerListener accessibleContainerHandler = null;
+
+ /**
+ * Fire PropertyChange listener, if one is registered,
+ * when children added/removed.
+ */
+
+ protected class AccessibleContainerHandler implements java.awt.event.ContainerListener {
+ public void componentAdded(java.awt.event.ContainerEvent e) {
+ java.awt.Component c = e.getChild();
+ if (c != null && c instanceof javax.accessibility.Accessible) {
+ AccessibleDialog.this.firePropertyChange(
+ javax.accessibility.AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
+ null, ((javax.accessibility.Accessible) c).getAccessibleContext());
+ }
+ }
+ public void componentRemoved(java.awt.event.ContainerEvent e) {
+ java.awt.Component c = e.getChild();
+ if (c != null && c instanceof javax.accessibility.Accessible) {
+ AccessibleDialog.this.firePropertyChange(
+ javax.accessibility.AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
+ ((javax.accessibility.Accessible) c).getAccessibleContext(), null);
+ }
+ }
+ }
+
+ protected int propertyChangeListenerCount = 0;
+
+ /**
+ * Add a PropertyChangeListener to the listener list.
+ *
+ * @param listener The PropertyChangeListener to be added
+ */
+ public void addPropertyChangeListener(java.beans.PropertyChangeListener listener) {
+ if (propertyChangeListenerCount++ == 0) {
+ accessibleWindowHandler = new AccessibleWindowHandler();
+ Dialog.this.addWindowListener(accessibleWindowHandler);
+
+ accessibleContainerHandler = new AccessibleContainerHandler();
+ Dialog.this.addContainerListener(accessibleContainerHandler);
+
+ accessibleComponentHandler = new AccessibleComponentHandler();
+ Dialog.this.addComponentListener(accessibleComponentHandler);
+ }
+ super.addPropertyChangeListener(listener);
+ }
+
+ /**
+ * Remove a PropertyChangeListener from the listener list.
+ * This removes a PropertyChangeListener that was registered
+ * for all properties.
+ *
+ * @param listener The PropertyChangeListener to be removed
+ */
+ public void removePropertyChangeListener(java.beans.PropertyChangeListener listener) {
+ if (--propertyChangeListenerCount == 0) {
+ Dialog.this.removeComponentListener(accessibleComponentHandler);
+ accessibleComponentHandler = null;
+
+ Dialog.this.removeContainerListener(accessibleContainerHandler);
+ accessibleContainerHandler = null;
+
+ Dialog.this.removeWindowListener(accessibleWindowHandler);
+ accessibleWindowHandler = null;
+ }
+ super.removePropertyChangeListener(listener);
+ }
+
+ /*
+ * AccessibleComponent
+ */
+
+ /** Returns the background color of the object */
+ public java.awt.Color getBackground() {
+ try {
+ return new java.awt.Color(unoAccessibleComponent.getBackground());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ public void setBackground(java.awt.Color c) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Returns the foreground color of the object */
+ public java.awt.Color getForeground() {
+ try {
+ return new java.awt.Color(unoAccessibleComponent.getForeground());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ public void setForeground(java.awt.Color c) {
+ // Not supported by UNO accessibility API
+ }
+
+ public java.awt.Cursor getCursor() {
+ // Not supported by UNO accessibility API
+ return null;
+ }
+
+ public void setCursor(java.awt.Cursor cursor) {
+ // Not supported by UNO accessibility API
+ }
+
+ public java.awt.Font getFont() {
+ // FIXME
+ return null;
+ }
+
+ public void setFont(java.awt.Font f) {
+ // Not supported by UNO accessibility API
+ }
+
+ public java.awt.FontMetrics getFontMetrics(java.awt.Font f) {
+ // FIXME
+ return null;
+ }
+
+ public boolean isEnabled() {
+ return Dialog.this.isEnabled();
+ }
+
+ public void setEnabled(boolean b) {
+ // Not supported by UNO accessibility API
+ }
+
+ public boolean isVisible() {
+ return Dialog.this.isVisible();
+ }
+
+ public void setVisible(boolean b) {
+ // Not supported by UNO accessibility API
+ }
+
+ public boolean isShowing() {
+ return Dialog.this.isShowing();
+ }
+
+ public boolean contains(java.awt.Point p) {
+ try {
+ return unoAccessibleComponent.containsPoint(new com.sun.star.awt.Point(p.x, p.y));
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return false;
+ }
+ }
+
+ /** Returns the location of the object on the screen. */
+ public java.awt.Point getLocationOnScreen() {
+ try {
+ com.sun.star.awt.Point unoPoint = unoAccessibleComponent.getLocationOnScreen();
+ return new java.awt.Point(unoPoint.X, unoPoint.Y);
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Gets the location of this component in the form of a point specifying the component's top-left corner */
+ public java.awt.Point getLocation() {
+ try {
+ com.sun.star.awt.Point unoPoint = unoAccessibleComponent.getLocation();
+ return new java.awt.Point( unoPoint.X, unoPoint.Y );
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Moves this component to a new location */
+ public void setLocation(java.awt.Point p) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Gets the bounds of this component in the form of a Rectangle object */
+ public java.awt.Rectangle getBounds() {
+ try {
+ com.sun.star.awt.Rectangle unoRect = unoAccessibleComponent.getBounds();
+ return new java.awt.Rectangle(unoRect.X, unoRect.Y, unoRect.Width, unoRect.Height);
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Moves and resizes this component to conform to the new bounding rectangle r */
+ public void setBounds(java.awt.Rectangle r) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Returns the size of this component in the form of a Dimension object */
+ public java.awt.Dimension getSize() {
+ try {
+ com.sun.star.awt.Size unoSize = unoAccessibleComponent.getSize();
+ return new java.awt.Dimension(unoSize.Width, unoSize.Height);
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Resizes this component so that it has width d.width and height d.height */
+ public void setSize(java.awt.Dimension d) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Returns the Accessible child, if one exists, contained at the local coordinate Point */
+ public javax.accessibility.Accessible getAccessibleAt(java.awt.Point p) {
+ try {
+ java.awt.Component c = AccessibleObjectFactory.getAccessibleComponent(
+ unoAccessibleComponent.getAccessibleAtPoint(new com.sun.star.awt.Point(p.x, p.y)));
+
+ return (javax.accessibility.Accessible) c;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ public boolean isFocusTraversable() {
+ return Dialog.this.isFocusable();
+ }
+
+ public void requestFocus() {
+ unoAccessibleComponent.grabFocus();
+ }
+ }
+}
+
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/FocusTraversalPolicy.java b/accessibility/bridge/org/openoffice/java/accessibility/FocusTraversalPolicy.java
new file mode 100644
index 000000000000..75f6c91354f4
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/FocusTraversalPolicy.java
@@ -0,0 +1,89 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+
+public class FocusTraversalPolicy extends java.awt.FocusTraversalPolicy {
+
+ protected javax.accessibility.Accessible getSelectedAccessibleChild(javax.accessibility.Accessible a) {
+ javax.accessibility.AccessibleContext ac = a.getAccessibleContext();
+ if (ac != null) {
+ javax.accessibility.AccessibleSelection as = ac.getAccessibleSelection();
+ if (as != null) {
+ return as.getAccessibleSelection(0);
+ }
+ }
+ return null;
+ }
+
+ /** Returns the Component that should receive the focus after aComponent */
+ public java.awt.Component getComponentAfter(java.awt.Container focusCycleRoot,
+ java.awt.Component aComponent) {
+ return null;
+ }
+
+ /** Returns the Component that should receive the focus before aComponent */
+ public java.awt.Component getComponentBefore(java.awt.Container focusCycleRoot,
+ java.awt.Component aComponent) {
+ return null;
+ }
+
+ /** Returns the default Component to focus */
+ public java.awt.Component getDefaultComponent(java.awt.Container focusCycleRoot) {
+ // getDefaultComponent must not return null for Windows to make them focusable.
+ if (focusCycleRoot instanceof NativeFrame) {
+ java.awt.Component c = ((NativeFrame) focusCycleRoot).getInitialComponent();
+ if (c != null) {
+ return c;
+ }
+ }
+
+ if (focusCycleRoot instanceof javax.accessibility.Accessible) {
+ return (java.awt.Component) getSelectedAccessibleChild((javax.accessibility.Accessible) focusCycleRoot);
+ }
+ return null;
+ }
+
+ /** Returns the first Component in the traversal cycle */
+ public java.awt.Component getFirstComponent(java.awt.Container focusCycleRoot) {
+ return null;
+ }
+
+ /** Returns the Component that should receive the focus when a Window is made visible for the first time */
+ public java.awt.Component getInitialComponent(java.awt.Window window) {
+ if (window instanceof NativeFrame) {
+ return ((NativeFrame) window).getInitialComponent();
+ }
+ return null;
+ }
+
+ /** Returns the last Component in the traversal cycle */
+ public java.awt.Component getLastComponent(java.awt.Container focusCycleRoot) {
+ return null;
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Frame.java b/accessibility/bridge/org/openoffice/java/accessibility/Frame.java
new file mode 100644
index 000000000000..b7f37b2d6b18
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/Frame.java
@@ -0,0 +1,646 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import com.sun.star.uno.*;
+import com.sun.star.accessibility.*;
+
+public class Frame extends java.awt.Frame implements javax.accessibility.Accessible, NativeFrame {
+ protected XAccessibleComponent unoAccessibleComponent;
+
+ boolean opened = false;
+ boolean visible = false;
+ boolean active = false;
+
+ java.awt.EventQueue eventQueue = null;
+
+ protected Frame(XAccessibleComponent xAccessibleComponent) {
+ initialize(xAccessibleComponent);
+ }
+
+ protected Frame(String name, XAccessibleComponent xAccessibleComponent) {
+ super(name);
+ initialize(xAccessibleComponent);
+ }
+
+ private void initialize(XAccessibleComponent xAccessibleComponent) {
+ unoAccessibleComponent = xAccessibleComponent;
+ eventQueue = java.awt.Toolkit.getDefaultToolkit().getSystemEventQueue();
+ XAccessibleEventBroadcaster broadcaster = (XAccessibleEventBroadcaster)
+ UnoRuntime.queryInterface(XAccessibleEventBroadcaster.class,
+ unoAccessibleComponent);
+ if (broadcaster != null) {
+ broadcaster.addEventListener(new AccessibleFrameListener());
+ }
+ }
+
+ java.awt.Component initialComponent = null;
+
+ public java.awt.Component getInitialComponent() {
+ return initialComponent;
+ }
+
+ public void setInitialComponent(java.awt.Component c) {
+ initialComponent = c;
+ }
+
+ public Integer getHWND() {
+ return null;
+ }
+
+ /**
+ * Determines whether this <code>Component</code> is showing on screen.
+ * This means that the component must be visible, and it must be in a
+ * <code>container</code> that is visible and showing.
+ * @see #addNotify
+ * @see #removeNotify
+ * @since JDK1.0
+ */
+ public boolean isShowing() {
+ if (isVisible()) {
+ java.awt.Container parent = getParent();
+ return (parent == null) || parent.isShowing();
+ }
+ return false;
+ }
+
+ /**
+ * Makes this <code>Component</code> displayable by connecting it to a
+ * native screen resource.
+ * This method is called internally by the toolkit and should
+ * not be called directly by programs.
+ * @see #isDisplayable
+ * @see #removeNotify
+ * @since JDK1.0
+ */
+ public void addNotify() {
+// createHierarchyEvents(0, null, null, 0, false);
+ }
+
+ /**
+ * Makes this <code>Component</code> undisplayable by destroying it native
+ * screen resource.
+ * This method is called by the toolkit internally and should
+ * not be called directly by programs.
+ * @see #isDisplayable
+ * @see #addNotify
+ * @since JDK1.0
+ */
+ public void removeNotify() {
+ }
+
+ /**
+ * Determines if the object is visible. Note: this means that the
+ * object intends to be visible; however, it may not in fact be
+ * showing on the screen because one of the objects that this object
+ * is contained by is not visible. To determine if an object is
+ * showing on the screen, use <code>isShowing</code>.
+ *
+ * @return true if object is visible; otherwise, false
+ */
+ public boolean isVisible(){
+ return visible;
+ }
+
+ /**
+ * Shows or hides this component depending on the value of parameter
+ * <code>b</code>.
+ * @param b if <code>true</code>, shows this component;
+ * otherwise, hides this component
+ * @see #isVisible
+ * @since JDK1.1
+ */
+ public void setVisible(boolean b) {
+ if (visible != b){
+ visible = b;
+ if (b) {
+ // If it is the first show, fire WINDOW_OPENED event
+ if (!opened) {
+ postWindowEvent(java.awt.event.WindowEvent.WINDOW_OPENED);
+ opened = true;
+ }
+ postComponentEvent(java.awt.event.ComponentEvent.COMPONENT_SHOWN);
+ } else {
+ postComponentEvent(java.awt.event.ComponentEvent.COMPONENT_HIDDEN);
+ }
+ }
+ }
+
+ public void dispose() {
+ setVisible(false);
+ postWindowEvent(java.awt.event.WindowEvent.WINDOW_CLOSED);
+ }
+
+ protected void postWindowEvent(int i) {
+ eventQueue.postEvent(new java.awt.event.WindowEvent(this, i));
+ }
+
+ protected void postComponentEvent(int i) {
+ eventQueue.postEvent(new java.awt.event.ComponentEvent(this, i));
+ }
+
+ /**
+ * Update the proxy objects appropriatly on property change events
+ */
+ protected class AccessibleFrameListener implements XAccessibleEventListener {
+
+ protected AccessibleFrameListener() {
+ }
+
+ // The only expected state changes are ACTIVE and VISIBLE
+ protected void setComponentState(short state, boolean enable) {
+ switch (state) {
+ case AccessibleStateType.ACTIVE:
+ active = enable;
+ if (enable) {
+ AccessibleObjectFactory.postWindowActivated(Frame.this);
+ } else {
+ AccessibleObjectFactory.postWindowLostFocus(Frame.this);
+ }
+ break;
+ case AccessibleStateType.ICONIFIED:
+ if (Build.DEBUG) {
+ System.err.println("[frame]" + getTitle() + (enable ? " is now " : " is no longer ") + "iconified");
+ }
+ postWindowEvent(enable ?
+ java.awt.event.WindowEvent.WINDOW_ICONIFIED :
+ java.awt.event.WindowEvent.WINDOW_DEICONIFIED);
+ break;
+ case AccessibleStateType.VISIBLE:
+ Frame.this.setVisible(enable);
+ break;
+ default:
+ if (Build.DEBUG) {
+ System.err.println("[frame]: " + getTitle() + "unexpected state change " + state);
+ }
+ break;
+ }
+ }
+
+ /** Updates the accessible name and fires the appropriate PropertyChangedEvent */
+ protected void handleNameChangedEvent(Object any) {
+ try {
+ String title = AnyConverter.toString(any);
+ setTitle(title);
+ // This causes the property change event to be fired in the VCL thread
+ // context. If this causes problems, it has to be deligated to the java
+ // dispatch thread ..
+ javax.accessibility.AccessibleContext ac = accessibleContext;
+ if (ac!= null) {
+ ac.setAccessibleName(title);
+ }
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ /** Updates the accessible description and fires the appropriate PropertyChangedEvent */
+ protected void handleDescriptionChangedEvent(Object any) {
+ try {
+ // This causes the property change event to be fired in the VCL thread
+ // context. If this causes problems, it has to be deligated to the java
+ // dispatch thread ..
+ javax.accessibility.AccessibleContext ac = accessibleContext;
+ if (ac!= null) {
+ ac.setAccessibleDescription(AnyConverter.toString(any));
+ }
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ /** Updates the internal states and fires the appropriate PropertyChangedEvent */
+ protected void handleStateChangedEvent(Object any1, Object any2) {
+ try {
+ if (AnyConverter.isShort(any1)) {
+ setComponentState(AnyConverter.toShort(any1), false);
+ }
+
+ if (AnyConverter.isShort(any2)) {
+ setComponentState(AnyConverter.toShort(any2), true);
+ }
+ }
+
+ catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ /** Fires a visible data property change event */
+ protected void handleVisibleDataEvent() {
+ javax.accessibility.AccessibleContext ac = accessibleContext;
+ if (ac != null) {
+ ac.firePropertyChange(javax.accessibility.AccessibleContext.ACCESSIBLE_VISIBLE_DATA_PROPERTY, null, null);
+ }
+ }
+
+ /** Called by OpenOffice process to notify property changes */
+ public void notifyEvent(AccessibleEventObject event) {
+ switch (event.EventId) {
+ case AccessibleEventId.NAME_CHANGED:
+ // Set the accessible name for the corresponding context, which will fire a property
+ // change event itself
+ handleNameChangedEvent(event.NewValue);
+ break;
+ case AccessibleEventId.DESCRIPTION_CHANGED:
+ // Set the accessible description for the corresponding context, which will fire a property
+ // change event itself - so do not set propertyName !
+ handleDescriptionChangedEvent(event.NewValue);
+ break;
+ case AccessibleEventId.STATE_CHANGED:
+ // Update the internal state set and fire the appropriate PropertyChangedEvent
+ handleStateChangedEvent(event.OldValue, event.NewValue);
+ break;
+ case AccessibleEventId.CHILD:
+ if (AnyConverter.isObject(event.OldValue)) {
+ AccessibleObjectFactory.removeChild(Frame.this, event.OldValue);
+ } else if (AnyConverter.isObject(event.NewValue)) {
+ AccessibleObjectFactory.addChild(Frame.this, event.NewValue);
+ }
+ break;
+ case AccessibleEventId.VISIBLE_DATA_CHANGED:
+ case AccessibleEventId.BOUNDRECT_CHANGED:
+ handleVisibleDataEvent();
+ break;
+ default:
+ // Warn about unhandled events
+ if(Build.DEBUG) {
+ System.out.println(this + ": unhandled accessibility event id=" + event.EventId);
+ }
+ }
+ }
+
+ /** Called by OpenOffice process to notify that the UNO component is disposing */
+ public void disposing(com.sun.star.lang.EventObject eventObject) {
+ }
+ }
+
+ protected javax.accessibility.AccessibleContext accessibleContext = null;
+
+ /** Returns the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext getAccessibleContext() {
+ if (accessibleContext == null) {
+ accessibleContext = new AccessibleFrame();
+ accessibleContext.setAccessibleName(getTitle());
+ }
+ return accessibleContext;
+ }
+
+ protected class AccessibleFrame extends java.awt.Frame.AccessibleAWTFrame {
+ protected AccessibleFrame() {
+ super();
+ }
+
+ protected java.awt.event.ComponentListener accessibleComponentHandler = null;
+
+ /**
+ * Fire PropertyChange listener, if one is registered,
+ * when shown/hidden..
+ */
+ protected class AccessibleComponentHandler implements java.awt.event.ComponentListener {
+ public void componentHidden(java.awt.event.ComponentEvent e) {
+ AccessibleFrame.this.firePropertyChange(
+ javax.accessibility.AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
+ javax.accessibility.AccessibleState.VISIBLE, null);
+ }
+
+ public void componentShown(java.awt.event.ComponentEvent e) {
+ AccessibleFrame.this.firePropertyChange(
+ javax.accessibility.AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
+ null, javax.accessibility.AccessibleState.VISIBLE);
+ }
+
+ public void componentMoved(java.awt.event.ComponentEvent e) {
+ }
+
+ public void componentResized(java.awt.event.ComponentEvent e) {
+ }
+ } // inner class AccessibleComponentHandler
+
+ protected java.awt.event.WindowListener accessibleWindowHandler = null;
+
+ /**
+ * Fire PropertyChange listener, if one is registered,
+ * when window events happen
+ */
+ protected class AccessibleWindowHandler implements java.awt.event.WindowListener {
+ /** Invoked when the Window is set to be the active Window. */
+ public void windowActivated(java.awt.event.WindowEvent e) {
+ AccessibleFrame.this.firePropertyChange(
+ javax.accessibility.AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
+ null, javax.accessibility.AccessibleState.ACTIVE);
+ if (Build.DEBUG) {
+ System.err.println("[frame] " + getTitle() + " is now active");
+ }
+ }
+
+ /** Invoked when a window has been closed as the result of calling dispose on the window. */
+ public void windowClosed(java.awt.event.WindowEvent e) {
+ if (Build.DEBUG) {
+ System.err.println("[frame] " + getTitle() + " has been closed");
+ }
+ }
+
+ /** Invoked when the user attempts to close the window from the window's system menu. */
+ public void windowClosing(java.awt.event.WindowEvent e) {
+ if (Build.DEBUG) {
+ System.err.println("[frame] " + getTitle() + " is closing");
+ }
+ }
+
+ /** Invoked when a Window is no longer the active Window. */
+ public void windowDeactivated(java.awt.event.WindowEvent e) {
+ AccessibleFrame.this.firePropertyChange(
+ javax.accessibility.AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
+ javax.accessibility.AccessibleState.ACTIVE, null);
+ if (Build.DEBUG) {
+ System.err.println("[frame] " + getTitle() + " is no longer active");
+ }
+ }
+
+ /** Invoked when a window is changed from a minimized to a normal state. */
+ public void windowDeiconified(java.awt.event.WindowEvent e) {
+ if (Build.DEBUG) {
+ System.err.println("[frame] " + getTitle() + " is no longer iconified");
+ }
+ }
+
+ /** Invoked when a window is changed from a normal to a minimized state. */
+ public void windowIconified(java.awt.event.WindowEvent e) {
+ if (Build.DEBUG) {
+ System.err.println("[frame] " + getTitle() + " has been iconified");
+ }
+ }
+
+ /** Invoked the first time a window is made visible. */
+ public void windowOpened(java.awt.event.WindowEvent e) {
+ if (Build.DEBUG) {
+ System.err.println("[frame] " + getTitle() + " has been opened");
+ }
+ }
+
+ } // inner class AccessibleWindowHandler
+
+ protected java.awt.event.ContainerListener accessibleContainerHandler = null;
+
+ /**
+ * Fire PropertyChange listener, if one is registered,
+ * when children added/removed.
+ */
+
+ protected class AccessibleContainerHandler implements java.awt.event.ContainerListener {
+ public void componentAdded(java.awt.event.ContainerEvent e) {
+ java.awt.Component c = e.getChild();
+ if (c != null && c instanceof javax.accessibility.Accessible) {
+ AccessibleFrame.this.firePropertyChange(
+ javax.accessibility.AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
+ null, ((javax.accessibility.Accessible) c).getAccessibleContext());
+ }
+ }
+ public void componentRemoved(java.awt.event.ContainerEvent e) {
+ java.awt.Component c = e.getChild();
+ if (c != null && c instanceof javax.accessibility.Accessible) {
+ AccessibleFrame.this.firePropertyChange(
+ javax.accessibility.AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
+ ((javax.accessibility.Accessible) c).getAccessibleContext(), null);
+ }
+ }
+ }
+
+ protected int propertyChangeListenerCount = 0;
+
+ /**
+ * Add a PropertyChangeListener to the listener list.
+ *
+ * @param listener The PropertyChangeListener to be added
+ */
+ public void addPropertyChangeListener(java.beans.PropertyChangeListener listener) {
+ if (propertyChangeListenerCount++ == 0) {
+ accessibleWindowHandler = new AccessibleWindowHandler();
+ Frame.this.addWindowListener(accessibleWindowHandler);
+
+ accessibleContainerHandler = new AccessibleContainerHandler();
+ Frame.this.addContainerListener(accessibleContainerHandler);
+
+ accessibleComponentHandler = new AccessibleComponentHandler();
+ Frame.this.addComponentListener(accessibleComponentHandler);
+ }
+ super.addPropertyChangeListener(listener);
+ }
+
+ /**
+ * Remove a PropertyChangeListener from the listener list.
+ * This removes a PropertyChangeListener that was registered
+ * for all properties.
+ *
+ * @param listener The PropertyChangeListener to be removed
+ */
+ public void removePropertyChangeListener(java.beans.PropertyChangeListener listener) {
+ if (--propertyChangeListenerCount == 0) {
+ Frame.this.removeComponentListener(accessibleComponentHandler);
+ accessibleComponentHandler = null;
+
+ Frame.this.removeContainerListener(accessibleContainerHandler);
+ accessibleContainerHandler = null;
+
+ Frame.this.removeWindowListener(accessibleWindowHandler);
+ accessibleWindowHandler = null;
+ }
+ super.removePropertyChangeListener(listener);
+ }
+
+ /**
+ * Get the state set of this object.
+ *
+ * @return an instance of AccessibleState containing the current state
+ * of the object
+ * @see AccessibleState
+ */
+ public javax.accessibility.AccessibleStateSet getAccessibleStateSet() {
+ javax.accessibility.AccessibleStateSet states = super.getAccessibleStateSet();
+ if ((getExtendedState() & java.awt.Frame.ICONIFIED) > 0) {
+ states.add(javax.accessibility.AccessibleState.ICONIFIED);
+ }
+ return states;
+ }
+
+ /*
+ * AccessibleComponent
+ */
+
+ /** Returns the background color of the object */
+ public java.awt.Color getBackground() {
+ try {
+ return new java.awt.Color(unoAccessibleComponent.getBackground());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ public void setBackground(java.awt.Color c) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Returns the foreground color of the object */
+ public java.awt.Color getForeground() {
+ try {
+ return new java.awt.Color(unoAccessibleComponent.getForeground());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ public void setForeground(java.awt.Color c) {
+ // Not supported by UNO accessibility API
+ }
+
+ public java.awt.Cursor getCursor() {
+ // Not supported by UNO accessibility API
+ return null;
+ }
+
+ public void setCursor(java.awt.Cursor cursor) {
+ // Not supported by UNO accessibility API
+ }
+
+ public java.awt.Font getFont() {
+ // FIXME
+ return null;
+ }
+
+ public void setFont(java.awt.Font f) {
+ // Not supported by UNO accessibility API
+ }
+
+ public java.awt.FontMetrics getFontMetrics(java.awt.Font f) {
+ // FIXME
+ return null;
+ }
+
+ public boolean isEnabled() {
+ return Frame.this.isEnabled();
+ }
+
+ public void setEnabled(boolean b) {
+ // Not supported by UNO accessibility API
+ }
+
+ public boolean isVisible() {
+ return Frame.this.isVisible();
+ }
+
+ public void setVisible(boolean b) {
+ // Not supported by UNO accessibility API
+ }
+
+ public boolean isShowing() {
+ return Frame.this.isShowing();
+ }
+
+ public boolean contains(java.awt.Point p) {
+ try {
+ return unoAccessibleComponent.containsPoint(new com.sun.star.awt.Point(p.x, p.y));
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return false;
+ }
+ }
+
+ /** Returns the location of the object on the screen. */
+ public java.awt.Point getLocationOnScreen() {
+ try {
+ com.sun.star.awt.Point unoPoint = unoAccessibleComponent.getLocationOnScreen();
+ return new java.awt.Point(unoPoint.X, unoPoint.Y);
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Gets the location of this component in the form of a point specifying the component's top-left corner */
+ public java.awt.Point getLocation() {
+ try {
+ com.sun.star.awt.Point unoPoint = unoAccessibleComponent.getLocation();
+ return new java.awt.Point( unoPoint.X, unoPoint.Y );
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Moves this component to a new location */
+ public void setLocation(java.awt.Point p) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Gets the bounds of this component in the form of a Rectangle object */
+ public java.awt.Rectangle getBounds() {
+ try {
+ com.sun.star.awt.Rectangle unoRect = unoAccessibleComponent.getBounds();
+ return new java.awt.Rectangle(unoRect.X, unoRect.Y, unoRect.Width, unoRect.Height);
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Moves and resizes this component to conform to the new bounding rectangle r */
+ public void setBounds(java.awt.Rectangle r) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Returns the size of this component in the form of a Dimension object */
+ public java.awt.Dimension getSize() {
+ try {
+ com.sun.star.awt.Size unoSize = unoAccessibleComponent.getSize();
+ return new java.awt.Dimension(unoSize.Width, unoSize.Height);
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Resizes this component so that it has width d.width and height d.height */
+ public void setSize(java.awt.Dimension d) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Returns the Accessible child, if one exists, contained at the local coordinate Point */
+ public javax.accessibility.Accessible getAccessibleAt(java.awt.Point p) {
+ try {
+ java.awt.Component c = AccessibleObjectFactory.getAccessibleComponent(
+ unoAccessibleComponent.getAccessibleAtPoint(new com.sun.star.awt.Point(p.x, p.y)));
+
+ return (javax.accessibility.Accessible) c;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ public boolean isFocusTraversable() {
+ return Frame.this.isFocusable();
+ }
+
+ public void requestFocus() {
+ unoAccessibleComponent.grabFocus();
+ }
+ }
+}
+
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Icon.java b/accessibility/bridge/org/openoffice/java/accessibility/Icon.java
new file mode 100644
index 000000000000..8ccc97def4d8
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/Icon.java
@@ -0,0 +1,76 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+package org.openoffice.java.accessibility;
+
+import com.sun.star.accessibility.*;
+import com.sun.star.uno.*;
+
+import javax.accessibility.AccessibleState;
+import javax.accessibility.AccessibleStateSet;
+
+
+/**
+ */
+public class Icon extends Component implements javax.accessibility.Accessible {
+ protected Icon(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
+ super(xAccessible, xAccessibleContext);
+ }
+
+ /** Creates the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext createAccessibleContext() {
+ return new AccessibleIcon();
+ }
+
+ protected class AccessibleIcon extends AccessibleUNOComponent {
+ /**
+ * Though the class is abstract, this should be called by all sub-classes
+ */
+ protected AccessibleIcon() {
+ super();
+ }
+
+ /** Gets the AccessibleText associated with this object presenting text on the display */
+ public javax.accessibility.AccessibleIcon[] getAccessibleIcon() {
+ try {
+ XAccessibleImage unoAccessibleImage = (XAccessibleImage) UnoRuntime.queryInterface(XAccessibleImage.class,
+ unoAccessibleComponent);
+
+ if (unoAccessibleImage != null) {
+ javax.accessibility.AccessibleIcon[] icons = {
+ new AccessibleIconImpl(unoAccessibleImage)
+ };
+
+ return icons;
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+
+ return null;
+ }
+
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Label.java b/accessibility/bridge/org/openoffice/java/accessibility/Label.java
new file mode 100644
index 000000000000..9afaa0a1ae37
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/Label.java
@@ -0,0 +1,130 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+package org.openoffice.java.accessibility;
+
+import com.sun.star.accessibility.*;
+import com.sun.star.uno.*;
+
+import javax.accessibility.AccessibleState;
+import javax.accessibility.AccessibleStateSet;
+
+
+/**
+ */
+public class Label extends Component implements javax.accessibility.Accessible {
+ protected Label(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
+ super(xAccessible, xAccessibleContext);
+ }
+
+ /** Creates the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext createAccessibleContext() {
+ return new AccessibleLabel();
+ }
+
+ protected class AccessibleLabel extends AccessibleUNOComponent {
+ /**
+ * Though the class is abstract, this should be called by all sub-classes
+ */
+ protected AccessibleLabel() {
+ super();
+ }
+
+ /*
+ * AccessibleContext
+ */
+
+ /** Gets the role of this object */
+ public javax.accessibility.AccessibleRole getAccessibleRole() {
+ return javax.accessibility.AccessibleRole.LABEL;
+ }
+
+ /** Gets the AccessibleText associated with this object presenting text on the display */
+ public javax.accessibility.AccessibleText getAccessibleText() {
+
+ if (disposed)
+ return null;
+
+ try {
+ XAccessibleText unoAccessibleText = (XAccessibleText) UnoRuntime.queryInterface(XAccessibleText.class,
+ unoAccessibleContext);
+
+ if (unoAccessibleText != null) {
+ return new AccessibleTextImpl(unoAccessibleText);
+ } else {
+ return null;
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Returns the relation set of this object */
+ public javax.accessibility.AccessibleRelationSet getAccessibleRelationSet() {
+ try {
+ XAccessibleRelationSet unoAccessibleRelationSet = unoAccessibleContext.getAccessibleRelationSet();
+
+ if (unoAccessibleRelationSet == null) {
+ return null;
+ }
+
+ javax.accessibility.AccessibleRelationSet relationSet = new javax.accessibility.AccessibleRelationSet();
+ int count = unoAccessibleRelationSet.getRelationCount();
+
+ for (int i = 0; i < count; i++) {
+ AccessibleRelation unoAccessibleRelation = unoAccessibleRelationSet.getRelation(i);
+
+ switch (unoAccessibleRelation.RelationType) {
+ case AccessibleRelationType.LABEL_FOR:
+ relationSet.add(new javax.accessibility.AccessibleRelation(
+ javax.accessibility.AccessibleRelation.LABEL_FOR,
+ getAccessibleComponents(
+ unoAccessibleRelation.TargetSet)));
+
+ break;
+
+ case AccessibleRelationType.MEMBER_OF:
+ relationSet.add(new javax.accessibility.AccessibleRelation(
+ javax.accessibility.AccessibleRelation.MEMBER_OF,
+ getAccessibleComponents(
+ unoAccessibleRelation.TargetSet)));
+
+ break;
+
+ default:
+ break;
+ }
+ }
+
+ return relationSet;
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/List.java b/accessibility/bridge/org/openoffice/java/accessibility/List.java
new file mode 100644
index 000000000000..c0583bf9b692
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/List.java
@@ -0,0 +1,452 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import javax.accessibility.AccessibleContext;
+import javax.accessibility.AccessibleState;
+
+import com.sun.star.uno.AnyConverter;
+import com.sun.star.uno.UnoRuntime;
+import com.sun.star.accessibility.*;
+
+public class List extends DescendantManager implements javax.accessibility.Accessible {
+
+ protected List(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
+ super(xAccessible, xAccessibleContext);
+ }
+
+ protected void setActiveDescendant(javax.accessibility.Accessible descendant) {
+ javax.accessibility.Accessible oldAD = activeDescendant;
+ activeDescendant = descendant;
+ firePropertyChange(AccessibleContext.ACCESSIBLE_ACTIVE_DESCENDANT_PROPERTY,
+ oldAD, descendant);
+ }
+
+ protected void setActiveDescendant(Object any) {
+ javax.accessibility.Accessible descendant = null;
+ try {
+ if (AnyConverter.isObject(any)) {
+ XAccessible unoAccessible = (XAccessible) AnyConverter.toObject(
+ AccessibleObjectFactory.XAccessibleType, any);
+ if (unoAccessible != null) {
+ // FIXME: have to handle non transient objects here ..
+ descendant = new ListItem(unoAccessible);
+ if (Build.DEBUG) {
+ try {
+ if (Build.DEBUG) {
+ System.err.println("[List] retrieved active descendant event: new descendant is " +
+ unoAccessible.getAccessibleContext().getAccessibleName());
+ }
+ } catch (java.lang.NullPointerException e) {
+ System.err.println("*** ERROR *** new active descendant not accessible");
+ }
+ }
+ }
+ }
+ setActiveDescendant(descendant);
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ protected void add(XAccessible unoAccessible) {
+ if (unoAccessible != null) {
+ ListItem item = new ListItem(unoAccessible);
+ // The AccessBridge for Windows expects an instance of AccessibleContext
+ // as parameters
+ firePropertyChange(AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
+ null, item.getAccessibleContext());
+ }
+ }
+
+ protected void remove(XAccessible unoAccessible) {
+ if (unoAccessible != null) {
+ ListItem item = new ListItem(unoAccessible);
+ // The AccessBridge for Windows expects an instance of AccessibleContext
+ // as parameters
+ firePropertyChange(AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
+ item.getAccessibleContext(), null);
+ }
+ }
+
+ protected void add(Object any) {
+ try {
+ add((XAccessible) AnyConverter.toObject(AccessibleObjectFactory.XAccessibleType, any));
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ protected void remove(Object any) {
+ try {
+ remove((XAccessible) AnyConverter.toObject(AccessibleObjectFactory.XAccessibleType, any));
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ /**
+ * Update the proxy objects appropriatly on property change events
+ */
+ protected class AccessibleListListener extends AccessibleDescendantManagerListener {
+
+ protected AccessibleListListener() {
+ super();
+ }
+
+ /** Called by OpenOffice process to notify property changes */
+ public void notifyEvent(AccessibleEventObject event) {
+ switch (event.EventId) {
+ case AccessibleEventId.ACTIVE_DESCENDANT_CHANGED:
+ setActiveDescendant(event.NewValue);
+ break;
+ case AccessibleEventId.CHILD:
+ if (AnyConverter.isObject(event.OldValue)) {
+ remove(event.OldValue);
+ }
+ if (AnyConverter.isObject(event.NewValue)) {
+ add(event.NewValue);
+ }
+ break;
+ case AccessibleEventId.INVALIDATE_ALL_CHILDREN:
+ // Since List items a transient a child events are mostly used
+ // to attach/detach listeners, it is save to ignore it here
+ break;
+ default:
+ super.notifyEvent(event);
+ }
+ }
+ }
+
+ protected XAccessibleEventListener createEventListener() {
+ return new AccessibleListListener();
+ }
+
+ /** Creates the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext createAccessibleContext() {
+ return new AccessibleList();
+ }
+
+ protected class AccessibleList extends AccessibleDescendantManager {
+
+ /** Gets the role of this object */
+ public javax.accessibility.AccessibleRole getAccessibleRole() {
+ return javax.accessibility.AccessibleRole.LIST;
+ }
+
+ /** Returns the specified Accessible child of the object */
+ public javax.accessibility.Accessible getAccessibleChild(int i) {
+ javax.accessibility.Accessible child = null;
+ try {
+ XAccessible xAccessible = unoAccessibleContext.getAccessibleChild(i);
+ if (xAccessible != null) {
+ // Re-use the active descandant wrapper if possible
+ javax.accessibility.Accessible activeDescendant = List.this.activeDescendant;
+ if ((activeDescendant instanceof ListItem) && xAccessible.equals(((ListItem) activeDescendant).unoAccessible)) {
+ child = activeDescendant;
+ } else {
+ child = new ListItem(xAccessible);
+ }
+ }
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ return child;
+ }
+
+ /*
+ * AccessibleComponent
+ */
+
+ /** Returns the Accessible child, if one exists, contained at the local coordinate Point */
+ public javax.accessibility.Accessible getAccessibleAt(java.awt.Point p) {
+ javax.accessibility.Accessible child = null;
+ try {
+ XAccessible xAccessible = unoAccessibleComponent.getAccessibleAtPoint(new com.sun.star.awt.Point(p.x, p.y));
+ if (xAccessible != null) {
+ // Re-use the active descandant wrapper if possible
+ javax.accessibility.Accessible activeDescendant = List.this.activeDescendant;
+ if ((activeDescendant instanceof ListItem) && xAccessible.equals(((ListItem) activeDescendant).unoAccessible)) {
+ child = activeDescendant;
+ } else {
+ child = new ListItem(xAccessible);
+ }
+ }
+ return child;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /*
+ * AccessibleSelection
+ */
+
+ /** Returns an Accessible representing the specified selected child of the object */
+ public javax.accessibility.Accessible getAccessibleSelection(int i) {
+ javax.accessibility.Accessible child = null;
+ try {
+ XAccessible xAccessible = unoAccessibleSelection.getSelectedAccessibleChild(i);
+ if (xAccessible != null) {
+ // Re-use the active descandant wrapper if possible
+ javax.accessibility.Accessible activeDescendant = List.this.activeDescendant;
+ if ((activeDescendant instanceof ListItem) && xAccessible.equals(((ListItem) activeDescendant).unoAccessible)) {
+ child = activeDescendant;
+ } else {
+ child = new ListItem(xAccessible);
+ }
+ } else if (Build.DEBUG) {
+ System.out.println(i + "th selected child is not accessible");
+ }
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ if (Build.DEBUG) {
+ System.err.println("IndexOutOfBoundsException caught for AccessibleList.getAccessibleSelection(" + i + ")");
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ return child;
+ }
+ }
+
+ class ListItem extends java.awt.Component implements javax.accessibility.Accessible {
+
+ protected XAccessible unoAccessible;
+
+ public ListItem(XAccessible xAccessible) {
+ unoAccessible = xAccessible;
+ }
+
+ public Object[] create(Object[] targetSet) {
+ try {
+ java.util.ArrayList list = new java.util.ArrayList(targetSet.length);
+ for (int i=0; i < targetSet.length; i++) {
+ XAccessible xAccessible = (XAccessible) UnoRuntime.queryInterface(
+ XAccessible.class, targetSet[i]);
+ if (xAccessible != null) {
+ list.add(new ListItem(xAccessible));
+ }
+ }
+ list.trimToSize();
+ return list.toArray();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ javax.accessibility.AccessibleContext accessibleContext = null;
+
+ /** Returns the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext getAccessibleContext() {
+ if (accessibleContext == null) {
+ try {
+ XAccessibleContext xAccessibleContext = unoAccessible.getAccessibleContext();
+ if (xAccessibleContext != null) {
+ javax.accessibility.AccessibleContext ac = new AccessibleListItem(xAccessibleContext);
+ if (ac != null) {
+ ac.setAccessibleParent(List.this);
+ accessibleContext = ac;
+ }
+ AccessibleStateAdapter.setComponentState(this, xAccessibleContext.getAccessibleStateSet());
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+ return accessibleContext;
+ }
+
+ protected class AccessibleListItem extends javax.accessibility.AccessibleContext {
+
+ XAccessibleContext unoAccessibleContext;
+
+ public AccessibleListItem(XAccessibleContext xAccessibleContext) {
+ unoAccessibleContext = xAccessibleContext;
+ }
+
+ /** Returns the accessible name of this object */
+ public String getAccessibleName() {
+ try {
+ return unoAccessibleContext.getAccessibleName();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Sets the accessible name of this object */
+ public void setAccessibleName(String name) {
+ // Not supported
+ }
+
+ /** Returns the accessible name of this object */
+ public String getAccessibleDescription() {
+ try {
+ return unoAccessibleContext.getAccessibleDescription();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Sets the accessible name of this object */
+ public void setAccessibleDescription(String name) {
+ // Not supported
+ }
+
+ /** Returns the accessible role of this object */
+ public javax.accessibility.AccessibleRole getAccessibleRole() {
+ try {
+ javax.accessibility.AccessibleRole role = AccessibleRoleAdapter.getAccessibleRole(
+ unoAccessibleContext.getAccessibleRole());
+ return (role != null) ? role : javax.accessibility.AccessibleRole.LABEL;
+ } catch(com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Gets the locale of the component */
+ public java.util.Locale getLocale() throws java.awt.IllegalComponentStateException {
+ try {
+ com.sun.star.lang.Locale unoLocale = unoAccessibleContext.getLocale();
+ return new java.util.Locale(unoLocale.Language, unoLocale.Country);
+ } catch (IllegalAccessibleComponentStateException e) {
+ throw new java.awt.IllegalComponentStateException(e.getMessage());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return List.this.getLocale();
+ }
+ }
+
+ /** Gets the 0-based index of this object in its accessible parent */
+ public int getAccessibleIndexInParent() {
+ try {
+ return unoAccessibleContext.getAccessibleIndexInParent();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return -1;
+ }
+ }
+
+ /** Returns the number of accessible children of the object. */
+ public int getAccessibleChildrenCount() {
+ try {
+ return unoAccessibleContext.getAccessibleChildCount();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return 0;
+ }
+ }
+
+ /** Returns the specified Accessible child of the object. */
+ public javax.accessibility.Accessible getAccessibleChild(int i) {
+ javax.accessibility.Accessible child = null;
+ try {
+ XAccessible xAccessible = unoAccessibleContext.getAccessibleChild(i);
+ // Re-use the active descandant wrapper if possible
+ javax.accessibility.Accessible activeDescendant = List.this.activeDescendant;
+ if ((activeDescendant instanceof ListItem) && ((ListItem) activeDescendant).unoAccessible.equals(xAccessible)) {
+ child = activeDescendant;
+ } else if (xAccessible != null) {
+ child = new ListItem(xAccessible);
+ }
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ return child;
+ }
+
+ /** Returns the state set of this object */
+ public javax.accessibility.AccessibleStateSet getAccessibleStateSet() {
+ try {
+ return AccessibleStateAdapter.getAccessibleStateSet(ListItem.this,
+ unoAccessibleContext.getAccessibleStateSet());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return AccessibleStateAdapter.getDefunctStateSet();
+ }
+ }
+
+ /** Gets the AccessibleComponent associated with this object that has a graphical representation */
+ public javax.accessibility.AccessibleComponent getAccessibleComponent() {
+ try {
+ XAccessibleComponent unoAccessibleComponent = (XAccessibleComponent)
+ UnoRuntime.queryInterface(XAccessibleComponent.class, unoAccessibleContext);
+ return (unoAccessibleComponent != null) ?
+ new AccessibleComponentImpl(unoAccessibleComponent) : null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Gets the AccessibleAction associated with this object that has a graphical representation */
+ public javax.accessibility.AccessibleAction getAccessibleAction() {
+ try {
+ XAccessibleAction unoAccessibleAction = (XAccessibleAction)
+ UnoRuntime.queryInterface(XAccessibleAction.class, unoAccessibleContext);
+ return (unoAccessibleAction != null) ?
+ new AccessibleActionImpl(unoAccessibleAction) : null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Gets the AccessibleText associated with this object that has a graphical representation */
+ public javax.accessibility.AccessibleText getAccessibleText() {
+
+ if (disposed)
+ return null;
+
+ try {
+ XAccessibleText unoAccessibleText = (XAccessibleText)
+ UnoRuntime.queryInterface(XAccessibleText.class, unoAccessibleContext);
+ return (unoAccessibleText != null) ?
+ new AccessibleTextImpl(unoAccessibleText) : null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Gets the AccessibleValue associated with this object that has a graphical representation */
+ public javax.accessibility.AccessibleValue getAccessibleValue() {
+ try {
+ XAccessibleValue unoAccessibleValue = (XAccessibleValue)
+ UnoRuntime.queryInterface(XAccessibleValue.class, unoAccessibleContext);
+ return (unoAccessibleValue != null) ?
+ new AccessibleValueImpl(unoAccessibleValue) : null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Gets the AccessibleText associated with this object presenting text on the display */
+ public javax.accessibility.AccessibleIcon[] getAccessibleIcon() {
+ try {
+ XAccessibleImage unoAccessibleImage = (XAccessibleImage)
+ UnoRuntime.queryInterface(XAccessibleImage.class, unoAccessibleContext);
+ if (unoAccessibleImage != null) {
+ javax.accessibility.AccessibleIcon[] icons = { new AccessibleIconImpl(unoAccessibleImage) };
+ return icons;
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ return null;
+ }
+ }
+ }
+}
+
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Menu.java b/accessibility/bridge/org/openoffice/java/accessibility/Menu.java
new file mode 100644
index 000000000000..346baca749b3
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/Menu.java
@@ -0,0 +1,328 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+package org.openoffice.java.accessibility;
+
+import com.sun.star.accessibility.*;
+import com.sun.star.uno.AnyConverter;
+import com.sun.star.uno.UnoRuntime;
+
+
+public class Menu extends AbstractButton
+ implements javax.accessibility.Accessible {
+ private java.util.Vector children;
+ protected XAccessibleSelection unoAccessibleSelection = null;
+
+ protected Menu(XAccessible xAccessible,
+ XAccessibleContext xAccessibleContext) {
+ super(xAccessible, xAccessibleContext);
+
+ try {
+ // Create a vector with the correct initial capacity
+ int count = unoAccessibleContext.getAccessibleChildCount();
+ children = new java.util.Vector(count);
+
+ // Fill the vector with objects
+ for (int i = 0; i < count; i++) {
+ java.awt.Component c = getComponent(unoAccessibleContext.getAccessibleChild(i));
+
+ if (c != null) {
+ children.add(c);
+ }
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ if (Build.DEBUG) {
+ System.err.println(
+ "RuntimeException caught during menu initialization: " +
+ e.getMessage());
+ }
+
+ if (children == null) {
+ children = new java.util.Vector(0);
+ }
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ }
+ }
+
+ protected synchronized void add(XAccessible unoAccessible) {
+ // The AccessBridge for Windows expects an instance of AccessibleContext
+ // as parameters
+ java.awt.Component c = getComponent(unoAccessible);
+
+ if (c != null) {
+ try {
+ children.add(unoAccessible.getAccessibleContext()
+ .getAccessibleIndexInParent(), c);
+ firePropertyChange(javax.accessibility.AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
+ null,
+ ((javax.accessibility.Accessible) c).getAccessibleContext());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+ }
+
+ protected synchronized void remove(XAccessible unoAccessible) {
+ // The AccessBridge for Windows expects an instance of AccessibleContext
+ // as parameters
+ java.awt.Component c = getComponent(unoAccessible);
+
+ if (c != null) {
+ try {
+ children.remove(c);
+ firePropertyChange(javax.accessibility.AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
+ ((javax.accessibility.Accessible) c).getAccessibleContext(),
+ null);
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+ }
+
+ protected void add(Object any) {
+ try {
+ add((XAccessible) AnyConverter.toObject(
+ AccessibleObjectFactory.XAccessibleType, any));
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ protected void remove(Object any) {
+ try {
+ remove((XAccessible) AnyConverter.toObject(
+ AccessibleObjectFactory.XAccessibleType, any));
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ protected synchronized int indexOf(Object child) {
+ return children.indexOf(child);
+ }
+
+ protected java.awt.Component getComponent(XAccessible unoAccessible) {
+ java.awt.Component c = AccessibleObjectFactory.getAccessibleComponent(unoAccessible);
+
+ if (c == null) {
+ c = AccessibleObjectFactory.createAccessibleComponent(unoAccessible);
+
+ if (c instanceof javax.accessibility.Accessible) {
+ ((javax.accessibility.Accessible) c).getAccessibleContext()
+ .setAccessibleParent(this);
+ }
+ }
+
+ return c;
+ }
+
+ protected XAccessibleEventListener createEventListener() {
+ return new AccessibleMenuListener();
+ }
+
+ /** Creates the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext createAccessibleContext() {
+ return new AccessibleMenu();
+ }
+
+ /**
+ * Update the proxy objects appropriatly on property change events
+ */
+ protected class AccessibleMenuListener
+ extends AccessibleUNOComponentListener {
+ protected AccessibleMenuListener() {
+ super();
+ }
+
+ /** Called by OpenOffice process to notify property changes */
+ public void notifyEvent(AccessibleEventObject event) {
+ switch (event.EventId) {
+ case AccessibleEventId.CHILD:
+
+ if (AnyConverter.isObject(event.OldValue)) {
+ remove(event.OldValue);
+ }
+
+ if (AnyConverter.isObject(event.NewValue)) {
+ add(event.NewValue);
+ }
+
+ break;
+
+ // #i56539# Java 1.5 does not fire ACCESSIBLE_SELECTION_PROPERTY for menus
+ case AccessibleEventId.SELECTION_CHANGED:
+ break;
+
+ default:
+ super.notifyEvent(event);
+ }
+ }
+ }
+
+ protected class AccessibleMenu extends AccessibleAbstractButton
+ implements javax.accessibility.AccessibleSelection {
+ protected AccessibleMenu() {
+ unoAccessibleSelection = (XAccessibleSelection) UnoRuntime.queryInterface(XAccessibleSelection.class,
+ unoAccessibleContext);
+ }
+
+ /** Gets the role of this object */
+ public javax.accessibility.AccessibleRole getAccessibleRole() {
+ return javax.accessibility.AccessibleRole.MENU;
+ }
+
+ /** Gets the 0-based index of this object in its accessible parent */
+ public int getAccessibleIndexInParent() {
+ if (getAccessibleParent() instanceof Menu) {
+ return ((Menu) getAccessibleParent()).indexOf(Menu.this);
+ } else {
+ return super.getAccessibleIndexInParent();
+ }
+ }
+
+ /** Returns the number of accessible children of the object */
+ public synchronized int getAccessibleChildrenCount() {
+ return children.size();
+ }
+
+ /** Returns the specified Accessible child of the object */
+ public synchronized javax.accessibility.Accessible getAccessibleChild(
+ int i) {
+ try {
+ if (i < children.size()) {
+ return (javax.accessibility.Accessible) children.get(i);
+ } else {
+ return null;
+ }
+ } catch (ArrayIndexOutOfBoundsException e) {
+ return null;
+ }
+ }
+
+ /** Returns the AccessibleSelection interface for this object */
+ public javax.accessibility.AccessibleSelection getAccessibleSelection() {
+ // This method is called to determine the SELECTABLE state of every
+ // child, so don't do the query interface here.
+ return this;
+ }
+
+ /*
+ * AccessibleComponent
+ */
+
+ /** Returns the Accessible child, if one exists, contained at the local coordinate Point */
+ public javax.accessibility.Accessible getAccessibleAt(java.awt.Point p) {
+ try {
+ java.awt.Component c = AccessibleObjectFactory.getAccessibleComponent(unoAccessibleComponent.getAccessibleAtPoint(
+ new com.sun.star.awt.Point(p.x, p.y)));
+
+ return (javax.accessibility.Accessible) c;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /*
+ * AccessibleSelection
+ */
+
+ /** Returns an Accessible representing the specified selected child of the object */
+ public javax.accessibility.Accessible getAccessibleSelection(int i) {
+ try {
+ return (javax.accessibility.Accessible) getComponent(unoAccessibleSelection.getSelectedAccessibleChild(
+ i));
+ } catch (java.lang.Exception e) {
+ /*
+ * Possible exceptions are:
+ * java.lang.NullPointerException
+ * com.sun.star.uno.RuntimeException
+ * com.sun.star.lang.IndexOutOfBoundsException
+ */
+ return null;
+ }
+ }
+
+ /** Adds the specified Accessible child of the object to the object's selection */
+ public void addAccessibleSelection(int i) {
+ try {
+ javax.accessibility.Accessible a = getAccessibleChild(i);
+
+ // selecting menu items invokes the click action in Java 1.5
+ if( a instanceof MenuItem )
+ a.getAccessibleContext().getAccessibleAction().doAccessibleAction(0);
+ else
+ unoAccessibleSelection.selectAccessibleChild(i);
+ } catch (java.lang.Exception e) {
+ /*
+ * Possible exceptions are:
+ * java.lang.NullPointerException
+ * com.sun.star.uno.RuntimeException
+ * com.sun.star.lang.IndexOutOfBoundsException
+ */
+ }
+ }
+
+ /** Clears the selection in the object, so that no children in the object are selected */
+ public void clearAccessibleSelection() {
+ try {
+ unoAccessibleSelection.clearAccessibleSelection();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+
+ /** Returns the number of Accessible children currently selected */
+ public int getAccessibleSelectionCount() {
+ try {
+ return unoAccessibleSelection.getSelectedAccessibleChildCount();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return 0;
+ }
+ }
+
+ /** Determines if the current child of this object is selected */
+ public boolean isAccessibleChildSelected(int i) {
+ try {
+ return unoAccessibleSelection.isAccessibleChildSelected(i);
+ } catch (java.lang.Exception e) {
+ /*
+ * Possible exceptions are:
+ * java.lang.NullPointerException
+ * com.sun.star.uno.RuntimeException
+ * com.sun.star.lang.IndexOutOfBoundsException
+ */
+ return false;
+ }
+ }
+
+ /** Removes the specified child of the object from the object's selection */
+ public void removeAccessibleSelection(int i) {
+ if (isAccessibleChildSelected(i)) {
+ clearAccessibleSelection();
+ }
+ }
+
+ /** Causes every child of the object to be selected if the object supports multiple selection */
+ public void selectAllAccessibleSelection() {
+ // not supported
+ }
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/MenuContainer.java b/accessibility/bridge/org/openoffice/java/accessibility/MenuContainer.java
new file mode 100644
index 000000000000..ccae0ccadd04
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/MenuContainer.java
@@ -0,0 +1,167 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import javax.accessibility.AccessibleContext;
+
+import com.sun.star.uno.*;
+import com.sun.star.accessibility.*;
+
+/**
+ * Specialized container for MenuBar and Popup-Menu(s)
+ * FIXME: join with Menu ?
+ */
+public class MenuContainer extends Container implements javax.accessibility.Accessible {
+
+ protected XAccessibleSelection unoAccessibleSelection = null;
+
+ protected MenuContainer(javax.accessibility.AccessibleRole role, XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
+ super(role, xAccessible, xAccessibleContext);
+ }
+
+ protected class AccessibleMenuContainerListener extends AccessibleContainerListener {
+
+ protected AccessibleMenuContainerListener() {
+ super();
+ }
+
+ /** Called by OpenOffice process to notify property changes */
+ public void notifyEvent(AccessibleEventObject event) {
+ switch (event.EventId) {
+
+ // #i56539# Java 1.5 does not fire ACCESSIBLE_SELECTION_PROPERTY for menus
+ case AccessibleEventId.SELECTION_CHANGED:
+ break;
+
+ default:
+ super.notifyEvent(event);
+ }
+ }
+ }
+
+ protected XAccessibleEventListener createEventListener() {
+ return new AccessibleMenuContainerListener();
+ }
+
+ /** Creates the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext createAccessibleContext() {
+ return new AccessibleMenuContainer();
+ }
+
+ protected class AccessibleMenuContainer extends AccessibleContainer implements javax.accessibility.AccessibleSelection {
+
+ protected AccessibleMenuContainer() {
+ unoAccessibleSelection = (XAccessibleSelection) UnoRuntime.queryInterface(XAccessibleSelection.class,
+ unoAccessibleContext);
+ }
+
+ /** Returns the AccessibleSelection interface for this object */
+ public javax.accessibility.AccessibleSelection getAccessibleSelection() {
+ return this;
+ }
+
+ /*
+ * AccessibleSelection
+ */
+
+ /** Returns an Accessible representing the specified selected child of the object */
+ public javax.accessibility.Accessible getAccessibleSelection(int i) {
+ try {
+ return (javax.accessibility.Accessible) AccessibleObjectFactory.getAccessibleComponent(
+ unoAccessibleSelection.getSelectedAccessibleChild(i));
+ } catch (com.sun.star.uno.Exception e) {
+ return null;
+ }
+ }
+
+ /** Adds the specified Accessible child of the object to the object's selection */
+ public void addAccessibleSelection(int i) {
+ try {
+ javax.accessibility.Accessible a = getAccessibleChild(i);
+
+ // selecting menu items invokes the click action in Java 1.5
+ if( a instanceof MenuItem )
+ a.getAccessibleContext().getAccessibleAction().doAccessibleAction(0);
+ else
+ unoAccessibleSelection.selectAccessibleChild(i);
+ } catch (java.lang.Exception e) {
+ /*
+ * Possible exceptions are:
+ * java.lang.NullPointerException
+ * com.sun.star.uno.RuntimeException
+ * com.sun.star.lang.IndexOutOfBoundsException
+ */
+ }
+ }
+
+ /** Clears the selection in the object, so that no children in the object are selected */
+ public void clearAccessibleSelection() {
+ try {
+ unoAccessibleSelection.clearAccessibleSelection();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+
+ /** Returns the number of Accessible children currently selected */
+ public int getAccessibleSelectionCount() {
+ try {
+ return unoAccessibleSelection.getSelectedAccessibleChildCount();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return 0;
+ }
+ }
+
+ /** Determines if the current child of this object is selected */
+ public boolean isAccessibleChildSelected(int i) {
+ try {
+ return unoAccessibleSelection.isAccessibleChildSelected(i);
+ } catch (java.lang.Exception e) {
+ /*
+ * Possible exceptions are:
+ * java.lang.NullPointerException
+ * com.sun.star.uno.RuntimeException
+ * com.sun.star.lang.IndexOutOfBoundsException
+ */
+ return false;
+ }
+ }
+
+ /** Removes the specified child of the object from the object's selection */
+ public void removeAccessibleSelection(int i) {
+ if (isAccessibleChildSelected(i)) {
+ clearAccessibleSelection();
+ }
+ }
+
+ /** Causes every child of the object to be selected if the object supports multiple selection */
+ public void selectAllAccessibleSelection() {
+ // not supported
+ }
+ }
+}
+
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/MenuItem.java b/accessibility/bridge/org/openoffice/java/accessibility/MenuItem.java
new file mode 100644
index 000000000000..39aa1b73ce30
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/MenuItem.java
@@ -0,0 +1,99 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+package org.openoffice.java.accessibility;
+
+import com.sun.star.accessibility.XAccessible;
+import com.sun.star.accessibility.XAccessibleContext;
+import com.sun.star.accessibility.XAccessibleEventListener;
+
+
+class MenuItem extends ToggleButton {
+ public MenuItem(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
+ super(xAccessible, xAccessibleContext);
+ }
+
+ protected class AccessibleMenuItemListener extends AccessibleUNOComponentListener {
+
+ protected AccessibleMenuItemListener() {
+ }
+
+ protected void setComponentState(short state, boolean enable) {
+
+ // #i56538# menu items in Java 1.5 are ARMED, not SELECTED
+ if( state == com.sun.star.accessibility.AccessibleStateType.SELECTED )
+ fireStatePropertyChange(javax.accessibility.AccessibleState.ARMED, enable);
+ else
+ super.setComponentState(state, enable);
+ }
+ };
+
+ protected XAccessibleEventListener createEventListener() {
+ return new AccessibleMenuItemListener();
+ }
+
+ /** Creates the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext createAccessibleContext() {
+ return new AccessibleMenuItem();
+ }
+
+ protected class AccessibleMenuItem extends AccessibleToggleButton {
+ /** Gets the role of this object */
+ public javax.accessibility.AccessibleRole getAccessibleRole() {
+ return javax.accessibility.AccessibleRole.MENU_ITEM;
+ }
+
+ /** Gets the 0-based index of this object in its accessible parent */
+ public int getAccessibleIndexInParent() {
+ if (getAccessibleParent() instanceof Menu) {
+ return ((Menu) getAccessibleParent()).indexOf(MenuItem.this);
+ } else {
+ return super.getAccessibleIndexInParent();
+ }
+ }
+
+ /**
+ * Gets the current state set of this object.
+ *
+ * @return an instance of <code>AccessibleStateSet</code>
+ * containing the current state set of the object
+ * @see AccessibleState
+ */
+ public javax.accessibility.AccessibleStateSet getAccessibleStateSet() {
+ javax.accessibility.AccessibleStateSet stateSet = super.getAccessibleStateSet();
+
+ // #i56538# menu items in Java do not have SELECTABLE ..
+ stateSet.remove(javax.accessibility.AccessibleState.SELECTABLE);
+
+ // .. and also ARMED insted of SELECTED
+ if( stateSet.remove(javax.accessibility.AccessibleState.SELECTED) )
+ stateSet.add(javax.accessibility.AccessibleState.ARMED);
+
+ return stateSet;
+ }
+
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/NativeFrame.java b/accessibility/bridge/org/openoffice/java/accessibility/NativeFrame.java
new file mode 100644
index 000000000000..bcc4c0dddebc
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/NativeFrame.java
@@ -0,0 +1,35 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+public interface NativeFrame {
+ public java.awt.Component getInitialComponent();
+ public void setInitialComponent(java.awt.Component c);
+// public Integer getHWND();
+}
+
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Paragraph.java b/accessibility/bridge/org/openoffice/java/accessibility/Paragraph.java
new file mode 100644
index 000000000000..6088bf48eabe
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/Paragraph.java
@@ -0,0 +1,222 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import javax.accessibility.AccessibleContext;
+import javax.accessibility.AccessibleText;
+
+import com.sun.star.uno.*;
+import com.sun.star.accessibility.*;
+
+/**
+ */
+public class Paragraph extends Container implements javax.accessibility.Accessible {
+
+ protected Paragraph(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
+ super(javax.accessibility.AccessibleRole.TEXT, xAccessible, xAccessibleContext);
+ }
+
+ protected class AccessibleParagraphListener extends AccessibleContainerListener {
+
+ protected AccessibleParagraphListener() {
+ super();
+ }
+
+ protected void setComponentState(short state, boolean enable) {
+ switch (state) {
+ case AccessibleStateType.EDITABLE:
+ fireStatePropertyChange(javax.accessibility.AccessibleState.EDITABLE, enable);
+ break;
+ case AccessibleStateType.MULTI_LINE:
+ fireStatePropertyChange(javax.accessibility.AccessibleState.MULTI_LINE, enable);
+ break;
+ case AccessibleStateType.SINGLE_LINE:
+ break;
+ default:
+ super.setComponentState(state, enable);
+ break;
+ }
+ }
+
+
+ protected void handleVisibleDataChanged() {
+ if (Paragraph.this.isFocusOwner()) {
+ AccessibleContext ac = accessibleContext;
+ if (ac != null) {
+ AccessibleText at = ac.getAccessibleText();
+ if (at != null) {
+ int pos = at.getCaretPosition();
+ // Simulating a caret event here should help at tools
+ // that re not aware of the paragraph approach of OOo.
+ firePropertyChange(ac.ACCESSIBLE_CARET_PROPERTY,
+ new Integer(-1), new Integer(pos));
+ }
+ }
+ }
+ }
+
+ /** Called by OpenOffice process to notify property changes */
+ public void notifyEvent(AccessibleEventObject event) {
+ switch (event.EventId) {
+ case AccessibleEventId.CARET_CHANGED:
+ firePropertyChange(accessibleContext.ACCESSIBLE_CARET_PROPERTY,
+ Component.toNumber(event.OldValue),
+ Component.toNumber(event.NewValue));
+ break;
+ case AccessibleEventId.VISIBLE_DATA_CHANGED:
+ case AccessibleEventId.BOUNDRECT_CHANGED:
+ // Whenever a paragraph gets inserted above the currently
+ // focused one, this is the only event that will occur for.
+ handleVisibleDataChanged();
+ default:
+ super.notifyEvent(event);
+ break;
+ }
+ }
+ }
+
+ protected XAccessibleEventListener createEventListener() {
+ return new AccessibleParagraphListener();
+ }
+
+ /** Creates the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext createAccessibleContext() {
+ return new AccessibleParagraph();
+ }
+
+ protected class AccessibleParagraph extends AccessibleContainer {
+
+ protected AccessibleParagraph() {
+ // Don't do the queryInterface on XAccessibleText already ..
+ super(false);
+ /* Since getAccessibleText() is heavily used by the java access
+ * bridge for gnome and the gnome at-tools, we do a query interface
+ * here and remember the result.
+ */
+ accessibleText = AccessibleHypertextImpl.get(unoAccessibleContext);
+ }
+
+ /*
+ * AccessibleContext
+ */
+
+ /** Gets the role of this object */
+ public javax.accessibility.AccessibleRole getAccessibleRole() {
+ return javax.accessibility.AccessibleRole.TEXT;
+ }
+
+ /** Gets the AccessibleEditableText associated with this object presenting text on the display */
+ public javax.accessibility.AccessibleEditableText getAccessibleEditableText() {
+
+ if (disposed)
+ return null;
+
+ try {
+ XAccessibleEditableText unoAccessibleText = (XAccessibleEditableText)
+ UnoRuntime.queryInterface(XAccessibleEditableText.class,
+ unoAccessibleComponent);
+ if (unoAccessibleText != null) {
+ return new AccessibleEditableTextImpl(unoAccessibleText);
+ } else {
+ return null;
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Gets the AccessibleAction associated with this object that has a graphical representation */
+ public javax.accessibility.AccessibleAction getAccessibleAction() {
+ try {
+ XAccessibleAction unoAccessibleAction = (XAccessibleAction)
+ UnoRuntime.queryInterface(XAccessibleAction.class, unoAccessibleComponent);
+ return (unoAccessibleAction != null) ?
+ new AccessibleActionImpl(unoAccessibleAction) : null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Returns the relation set of this object */
+ public javax.accessibility.AccessibleRelationSet getAccessibleRelationSet() {
+ try {
+ XAccessibleRelationSet unoAccessibleRelationSet =
+ unoAccessible.getAccessibleContext().getAccessibleRelationSet();
+ if (unoAccessibleRelationSet == null) {
+ return super.getAccessibleRelationSet();
+ }
+
+ javax.accessibility.AccessibleRelationSet relationSet = new javax.accessibility.AccessibleRelationSet();
+ int count = unoAccessibleRelationSet.getRelationCount();
+ for (int i = 0; i < count; i++) {
+ AccessibleRelation unoAccessibleRelation = unoAccessibleRelationSet.getRelation(i);
+ switch (unoAccessibleRelation.RelationType) {
+ case AccessibleRelationType.CONTROLLED_BY:
+ relationSet.add(new javax.accessibility.AccessibleRelation(
+ javax.accessibility.AccessibleRelation.CONTROLLED_BY,
+ getAccessibleComponents(unoAccessibleRelation.TargetSet)));
+ break;
+ case AccessibleRelationType.CONTROLLER_FOR:
+ relationSet.add(new javax.accessibility.AccessibleRelation(
+ javax.accessibility.AccessibleRelation.CONTROLLER_FOR,
+ getAccessibleComponents(unoAccessibleRelation.TargetSet)));
+ break;
+ case AccessibleRelationType.LABELED_BY:
+ relationSet.add(new javax.accessibility.AccessibleRelation(
+ javax.accessibility.AccessibleRelation.LABELED_BY,
+ getAccessibleComponents(unoAccessibleRelation.TargetSet)));
+ break;
+ case AccessibleRelationType.MEMBER_OF:
+ relationSet.add(new javax.accessibility.AccessibleRelation(
+ javax.accessibility.AccessibleRelation.MEMBER_OF,
+ getAccessibleComponents(unoAccessibleRelation.TargetSet)));
+ break;
+ case AccessibleRelationType.CONTENT_FLOWS_TO:
+ relationSet.add(new javax.accessibility.AccessibleRelation(
+ "flowsTo",
+ getAccessibleComponents(unoAccessibleRelation.TargetSet)));
+ break;
+ case AccessibleRelationType.CONTENT_FLOWS_FROM:
+ relationSet.add(new javax.accessibility.AccessibleRelation(
+ "flowsFrom",
+ getAccessibleComponents(unoAccessibleRelation.TargetSet)));
+ break;
+ default:
+ break;
+ }
+ }
+ return relationSet;
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return super.getAccessibleRelationSet();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return super.getAccessibleRelationSet();
+ }
+ }
+ }
+}
+
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/RadioButton.java b/accessibility/bridge/org/openoffice/java/accessibility/RadioButton.java
new file mode 100644
index 000000000000..3daeee6cd8de
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/RadioButton.java
@@ -0,0 +1,50 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+package org.openoffice.java.accessibility;
+
+import com.sun.star.accessibility.*;
+import com.sun.star.uno.*;
+
+
+class RadioButton extends ToggleButton {
+ public RadioButton(XAccessible xAccessible,
+ XAccessibleContext xAccessibleContext) {
+ super(xAccessible, xAccessibleContext);
+ }
+
+ /** Creates the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext createAccessibleContext() {
+ return new AccessibleRadioButton();
+ }
+
+ protected class AccessibleRadioButton extends AccessibleToggleButton {
+ /** Gets the role of this object */
+ public javax.accessibility.AccessibleRole getAccessibleRole() {
+ return javax.accessibility.AccessibleRole.RADIO_BUTTON;
+ }
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/ScrollBar.java b/accessibility/bridge/org/openoffice/java/accessibility/ScrollBar.java
new file mode 100644
index 000000000000..83b17d698201
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/ScrollBar.java
@@ -0,0 +1,126 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import javax.accessibility.AccessibleState;
+import javax.accessibility.AccessibleStateSet;
+import javax.swing.SwingConstants;
+
+import com.sun.star.uno.*;
+import com.sun.star.accessibility.*;
+
+/**
+ */
+public class ScrollBar extends Component implements SwingConstants, javax.accessibility.Accessible {
+
+ public ScrollBar(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
+ super(xAccessible, xAccessibleContext);
+ }
+
+ /** Creates the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext createAccessibleContext() {
+ return new AccessibleScrollBar();
+ }
+
+ protected class AccessibleScrollBar extends AccessibleUNOComponent implements
+ javax.accessibility.AccessibleAction {
+
+ protected XAccessibleAction unoAccessibleAction;
+ protected int actionCount = 0;
+
+ /**
+ * Though the class is abstract, this should be called by all sub-classes
+ */
+ protected AccessibleScrollBar() {
+ super();
+ unoAccessibleAction = (XAccessibleAction) UnoRuntime.queryInterface(
+ XAccessibleAction.class, unoAccessibleContext);
+ if (unoAccessibleAction != null) {
+ actionCount = unoAccessibleAction.getAccessibleActionCount();
+ }
+ }
+
+ /*
+ * AccessibleContext
+ */
+
+ /** Gets the role of this object */
+ public javax.accessibility.AccessibleRole getAccessibleRole() {
+ return javax.accessibility.AccessibleRole.SCROLL_BAR;
+ }
+
+ /** Gets the AccessibleValue associated with this object that has a graphical representation */
+ public javax.accessibility.AccessibleValue getAccessibleValue() {
+ try {
+ XAccessibleValue unoAccessibleValue = (XAccessibleValue)
+ UnoRuntime.queryInterface(XAccessibleValue.class, unoAccessibleContext);
+ return (unoAccessibleValue != null) ?
+ new AccessibleValueImpl(unoAccessibleValue) : null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Gets the AccessibleAction associated with this object that supports one or more actions */
+ public javax.accessibility.AccessibleAction getAccessibleAction() {
+ return this;
+ }
+
+ /*
+ * AccessibleAction
+ */
+
+ /** Performs the specified Action on the object */
+ public boolean doAccessibleAction(int param) {
+ if (param < actionCount) {
+ try {
+ return unoAccessibleAction.doAccessibleAction(param);
+ } catch(com.sun.star.lang.IndexOutOfBoundsException e) {
+ }
+ }
+ return false;
+ }
+
+ /** Returns a description of the specified action of the object */
+ public java.lang.String getAccessibleActionDescription(int param) {
+ if(param < actionCount) {
+ try {
+ return unoAccessibleAction.getAccessibleActionDescription(param);
+ } catch(com.sun.star.lang.IndexOutOfBoundsException e) {
+ }
+ }
+ return null;
+ }
+
+ /** Returns the number of accessible actions available in this object */
+ public int getAccessibleActionCount() {
+ return actionCount;
+ }
+ }
+}
+
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Separator.java b/accessibility/bridge/org/openoffice/java/accessibility/Separator.java
new file mode 100644
index 000000000000..892768e07cbb
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/Separator.java
@@ -0,0 +1,71 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+package org.openoffice.java.accessibility;
+
+import com.sun.star.accessibility.*;
+import com.sun.star.uno.*;
+
+import javax.accessibility.AccessibleState;
+import javax.accessibility.AccessibleStateSet;
+
+import javax.swing.SwingConstants;
+
+
+/**
+ */
+public class Separator extends Component implements SwingConstants,
+ javax.accessibility.Accessible {
+
+ public Separator(XAccessible xAccessible,
+ XAccessibleContext xAccessibleContext) {
+ super(xAccessible, xAccessibleContext);
+ setFocusable(false);
+ }
+
+ /** Creates the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext createAccessibleContext() {
+ return new AccessibleSeparator();
+ }
+
+ protected class AccessibleSeparator extends AccessibleUNOComponent {
+ /**
+ * Though the class is abstract, this should be called by all sub-classes
+ */
+ protected AccessibleSeparator() {
+ super();
+ }
+
+ /*
+ * AccessibleContext
+ */
+
+ /** Gets the role of this object */
+ public javax.accessibility.AccessibleRole getAccessibleRole() {
+ return javax.accessibility.AccessibleRole.SEPARATOR;
+ }
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Table.java b/accessibility/bridge/org/openoffice/java/accessibility/Table.java
new file mode 100644
index 000000000000..24ea912d4217
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/Table.java
@@ -0,0 +1,727 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import javax.accessibility.AccessibleState;
+
+import com.sun.star.uno.AnyConverter;
+import com.sun.star.uno.UnoRuntime;
+import com.sun.star.accessibility.*;
+
+public class Table extends DescendantManager implements javax.accessibility.Accessible {
+
+ protected Table(XAccessible xAccessible, XAccessibleContext xAccessibleContext, boolean multiselectable) {
+ super(xAccessible, xAccessibleContext, multiselectable);
+ }
+
+ protected void setActiveDescendant(javax.accessibility.Accessible descendant) {
+ javax.accessibility.Accessible oldAD = activeDescendant;
+ activeDescendant = descendant;
+ firePropertyChange(javax.accessibility.AccessibleContext.ACCESSIBLE_ACTIVE_DESCENDANT_PROPERTY,
+ oldAD, descendant);
+ }
+
+ protected void setActiveDescendant(Object any) {
+ javax.accessibility.Accessible descendant = null;
+ try {
+ if (AnyConverter.isObject(any)) {
+ XAccessible unoAccessible = (XAccessible) AnyConverter.toObject(
+ AccessibleObjectFactory.XAccessibleType, any);
+ if (unoAccessible != null) {
+ // FIXME: have to handle non transient objects here ..
+ descendant = new TableCell(unoAccessible);
+ }
+ }
+ setActiveDescendant(descendant);
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ protected void add(XAccessible unoAccessible) {
+ if (unoAccessible != null) {
+ TableCell cell = new TableCell(unoAccessible);
+ // The AccessBridge for Windows expects an instance of AccessibleContext
+ // as parameters
+ firePropertyChange(javax.accessibility.AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
+ null, cell.getAccessibleContext());
+ }
+ }
+
+ protected void remove(XAccessible unoAccessible) {
+ if (unoAccessible != null) {
+ TableCell cell = new TableCell(unoAccessible);
+ // The AccessBridge for Windows expects an instance of AccessibleContext
+ // as parameters
+ firePropertyChange(javax.accessibility.AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
+ cell.getAccessibleContext(), null);
+ }
+ }
+
+ protected void add(Object any) {
+ try {
+ add((XAccessible) AnyConverter.toObject(AccessibleObjectFactory.XAccessibleType, any));
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ protected void remove(Object any) {
+ try {
+ remove((XAccessible) AnyConverter.toObject(AccessibleObjectFactory.XAccessibleType, any));
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ /**
+ * Update the proxy objects appropriatly on property change events
+ */
+ protected class AccessibleTableListener extends AccessibleDescendantManagerListener {
+
+ protected AccessibleTableListener() {
+ super();
+ }
+
+ /** Called by OpenOffice process to notify property changes */
+ public void notifyEvent(AccessibleEventObject event) {
+ switch (event.EventId) {
+ case AccessibleEventId.ACTIVE_DESCENDANT_CHANGED:
+ setActiveDescendant(event.NewValue);
+ break;
+ case AccessibleEventId.CHILD:
+ if (AnyConverter.isObject(event.OldValue)) {
+ remove(event.OldValue);
+ }
+ if (AnyConverter.isObject(event.NewValue)) {
+ add(event.NewValue);
+ }
+ break;
+ default:
+ super.notifyEvent(event);
+ }
+ }
+ }
+
+ protected XAccessibleEventListener createEventListener() {
+ return new AccessibleTableListener();
+ }
+
+ /** Creates the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext createAccessibleContext() {
+ return new AccessibleTable();
+ }
+
+ protected class AccessibleTable extends AccessibleDescendantManager implements javax.accessibility.AccessibleExtendedTable {
+
+ protected XAccessibleTable unoAccessibleTable;
+
+ public AccessibleTable() {
+ unoAccessibleTable = (XAccessibleTable) UnoRuntime.queryInterface(XAccessibleTable.class, unoAccessibleContext);
+ }
+
+ /** Gets the role of this object */
+ public javax.accessibility.AccessibleRole getAccessibleRole() {
+ return javax.accessibility.AccessibleRole.TABLE;
+ }
+
+ /** Returns the AccessibleTable interface of this object */
+ public javax.accessibility.AccessibleTable getAccessibleTable() {
+ return this;
+ }
+
+ /** Returns the specified Accessible child of the object */
+ public javax.accessibility.Accessible getAccessibleChild(int i) {
+ javax.accessibility.Accessible child = null;
+ try {
+ XAccessible xAccessible = unoAccessibleContext.getAccessibleChild(i);
+ if (xAccessible != null) {
+ // Re-use the active descandant wrapper if possible
+ javax.accessibility.Accessible activeDescendant = Table.this.activeDescendant;
+ if ((activeDescendant instanceof TableCell) && xAccessible.equals(((TableCell) activeDescendant).unoAccessible)) {
+ child = activeDescendant;
+ } else {
+ child = new TableCell(xAccessible);
+ }
+ }
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ return child;
+ }
+
+ /*
+ * AccessibleComponent
+ */
+
+ /** Returns the Accessible child, if one exists, contained at the local coordinate Point */
+ public javax.accessibility.Accessible getAccessibleAt(java.awt.Point p) {
+ javax.accessibility.Accessible child = null;
+ try {
+ XAccessible xAccessible = unoAccessibleComponent.getAccessibleAtPoint(
+ new com.sun.star.awt.Point(p.x, p.y));
+ if (xAccessible != null) {
+ // Re-use the active descandant wrapper if possible
+ javax.accessibility.Accessible activeDescendant = Table.this.activeDescendant;
+ if ((activeDescendant instanceof TableCell) && xAccessible.equals(((TableCell) activeDescendant).unoAccessible)) {
+ child = activeDescendant;
+ } else {
+ child = new TableCell(xAccessible);
+ }
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ return child;
+ }
+
+ /*
+ * AccessibleSelection
+ */
+
+ /** Returns an Accessible representing the specified selected child of the object */
+ public javax.accessibility.Accessible getAccessibleSelection(int i) {
+ javax.accessibility.Accessible child = null;
+ try {
+ XAccessible xAccessible = unoAccessibleSelection.getSelectedAccessibleChild(i);
+ if (xAccessible != null) {
+ // Re-use the active descandant wrapper if possible
+ javax.accessibility.Accessible activeDescendant = Table.this.activeDescendant;
+ if ((activeDescendant instanceof TableCell) && xAccessible.equals(((TableCell) activeDescendant).unoAccessible)) {
+ child = activeDescendant;
+ } else {
+ child = new TableCell(xAccessible);
+ }
+ }
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ return child;
+ }
+
+ /*
+ * AccessibleTable
+ */
+
+ /** Returns the Accessible at a specified row and column in the table. */
+ public javax.accessibility.Accessible getAccessibleAt(int r, int c) {
+ javax.accessibility.Accessible child = null;
+ try {
+ XAccessible xAccessible = unoAccessibleTable.getAccessibleCellAt(r,c);
+ if (xAccessible != null) {
+ // Re-use the active descandant wrapper if possible
+ javax.accessibility.Accessible activeDescendant = Table.this.activeDescendant;
+ if ((activeDescendant instanceof TableCell) && xAccessible.equals(((TableCell) activeDescendant).unoAccessible)) {
+ child = activeDescendant;
+ } else {
+ child = new TableCell(xAccessible);
+ }
+ }
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ return child;
+ }
+
+ /** Returns the caption for the table. */
+ public javax.accessibility.Accessible getAccessibleCaption() {
+ // Not yet supported.
+ return null;
+ }
+
+ /** Returns the number of columns in the table. */
+ public int getAccessibleColumnCount() {
+ try {
+ return unoAccessibleTable.getAccessibleColumnCount();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return 0;
+ }
+ }
+
+ /** Returns the description text of the specified column in the table. */
+ public javax.accessibility.Accessible getAccessibleColumnDescription(int c) {
+ try {
+ return new javax.swing.JLabel(
+ unoAccessibleTable.getAccessibleColumnDescription(c));
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /**
+ * Returns the number of columns occupied by the Accessible
+ * at a specified row and column in the table.
+ */
+ public int getAccessibleColumnExtentAt(int r, int c) {
+ try {
+ return unoAccessibleTable.getAccessibleColumnExtentAt(r,c);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return 0;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return 0;
+ }
+ }
+
+ /** Returns the column headers as an AccessibleTable. */
+ public javax.accessibility.AccessibleTable getAccessibleColumnHeader() {
+ // Not yet supported
+ return null;
+ }
+
+ /** Returns the number of rows in the table. */
+ public int getAccessibleRowCount() {
+ try {
+ return unoAccessibleTable.getAccessibleRowCount();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return 0;
+ }
+ }
+
+ /** Returns the description of the specified row in the table. */
+ public javax.accessibility.Accessible getAccessibleRowDescription(int r) {
+ try {
+ return new javax.swing.JLabel(
+ unoAccessibleTable.getAccessibleRowDescription(r));
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /**
+ * Returns the number of rows occupied by the Accessible
+ * at a specified row and column in the table.
+ */
+ public int getAccessibleRowExtentAt(int r, int c) {
+ try {
+ return unoAccessibleTable.getAccessibleRowExtentAt(r,c);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return 0;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return 0;
+ }
+ }
+
+ /** Returns the row headers as an AccessibleTable. */
+ public javax.accessibility.AccessibleTable getAccessibleRowHeader() {
+ // Not yet supported
+ return null;
+ }
+
+ /** Returns the summary description of the table. */
+ public javax.accessibility.Accessible getAccessibleSummary() {
+ // Not yet supported.
+ return null;
+ }
+
+ /** Returns the selected columns in a table. */
+ public int[] getSelectedAccessibleColumns() {
+ try {
+ return unoAccessibleTable.getSelectedAccessibleColumns();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Returns the selected rows in a table. */
+ public int[] getSelectedAccessibleRows() {
+ try {
+ return unoAccessibleTable.getSelectedAccessibleRows();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Returns a boolean value indicating whether the specified column is selected. */
+ public boolean isAccessibleColumnSelected(int c) {
+ try {
+ return unoAccessibleTable.isAccessibleColumnSelected(c);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return false;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return false;
+ }
+ }
+
+ /** Returns a boolean value indicating whether the specified row is selected. */
+ public boolean isAccessibleRowSelected(int r) {
+ try {
+ return unoAccessibleTable.isAccessibleRowSelected(r);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return false;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return false;
+ }
+ }
+
+ /**
+ * Returns a boolean value indicating whether the accessible
+ * at a specified row and column is selected.
+ */
+ public boolean isAccessibleSelected(int r, int c) {
+ try {
+ return unoAccessibleTable.isAccessibleSelected(r,c);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return false;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return false;
+ }
+ }
+
+ /** Sets the caption for the table. */
+ public void setAccessibleCaption(javax.accessibility.Accessible accessible) {
+ // Not supported by the UNO Accessibility API
+ }
+
+ /** Sets the description text of the specified column in the table. */
+ public void setAccessibleColumnDescription(int param, javax.accessibility.Accessible accessible) {
+ // Not supported by the UNO Accessibility API
+ }
+
+ /** Sets the column headers. */
+ public void setAccessibleColumnHeader(javax.accessibility.AccessibleTable accessibleTable) {
+ // Not supported by the UNO Accessibility API
+ }
+
+ /** Sets the description text of the specified row of the table. */
+ public void setAccessibleRowDescription(int param, javax.accessibility.Accessible accessible) {
+ // Not supported by the UNO Accessibility API
+ }
+
+ /** Sets the row headers. */
+ public void setAccessibleRowHeader(javax.accessibility.AccessibleTable accessibleTable) {
+ // Not supported by the UNO Accessibility API
+ }
+
+ /** Sets the summary description of the table */
+ public void setAccessibleSummary(javax.accessibility.Accessible accessible) {
+ // Not supported by the UNO Accessibility API
+ }
+
+ /** Returns the column number of an index in the table */
+ public int getAccessibleColumn(int index) {
+ try {
+ return unoAccessibleTable.getAccessibleColumn(index);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return -1;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return -1;
+ }
+ }
+
+ /** Returns the index of a specified row and column in the table. */
+ public int getAccessibleIndex(int r, int c) {
+ try {
+ return unoAccessibleTable.getAccessibleIndex(r,c);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return -1;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return -1;
+ }
+ }
+
+ /** Returns the row number of an index in the table */
+ public int getAccessibleRow(int index) {
+ try {
+ return unoAccessibleTable.getAccessibleRow(index);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return -1;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return -1;
+ }
+ }
+ }
+
+ class TableCell extends java.awt.Component implements javax.accessibility.Accessible {
+
+ protected XAccessible unoAccessible;
+
+ public TableCell(XAccessible xAccessible) {
+ unoAccessible = xAccessible;
+ }
+
+ public Object[] create(Object[] targetSet) {
+ try {
+ java.util.ArrayList list = new java.util.ArrayList(targetSet.length);
+ for (int i=0; i < targetSet.length; i++) {
+ XAccessible xAccessible = (XAccessible) UnoRuntime.queryInterface(
+ XAccessible.class, targetSet[i]);
+ if (xAccessible != null) {
+ list.add(new TableCell(xAccessible));
+ }
+ }
+ list.trimToSize();
+ return list.toArray();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ javax.accessibility.AccessibleContext accessibleContext = null;
+
+ /** Returns the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext getAccessibleContext() {
+ if (accessibleContext == null) {
+ try {
+ XAccessibleContext xAccessibleContext = unoAccessible.getAccessibleContext();
+ if (xAccessibleContext != null) {
+ javax.accessibility.AccessibleContext ac = new AccessibleTableCell(xAccessibleContext);
+ if (ac != null) {
+ ac.setAccessibleParent(Table.this);
+ accessibleContext = ac;
+ }
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+ return accessibleContext;
+ }
+
+ protected class AccessibleTableCell extends javax.accessibility.AccessibleContext {
+
+ XAccessibleContext unoAccessibleContext;
+
+ public AccessibleTableCell(XAccessibleContext xAccessibleContext) {
+ unoAccessibleContext = xAccessibleContext;
+ }
+
+ /** Returns the accessible name of this object */
+ public String getAccessibleName() {
+ try {
+ return unoAccessibleContext.getAccessibleName();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Sets the accessible name of this object */
+ public void setAccessibleName(String name) {
+ // Not supported
+ }
+
+ /** Returns the accessible name of this object */
+ public String getAccessibleDescription() {
+ try {
+ return unoAccessibleContext.getAccessibleDescription();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Sets the accessible name of this object */
+ public void setAccessibleDescription(String name) {
+ // Not supported
+ }
+
+ /** Returns the accessible role of this object */
+ public javax.accessibility.AccessibleRole getAccessibleRole() {
+ try {
+ javax.accessibility.AccessibleRole role = AccessibleRoleAdapter.getAccessibleRole(
+ unoAccessibleContext.getAccessibleRole());
+ return (role != null) ? role : javax.accessibility.AccessibleRole.LABEL;
+ } catch(com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Gets the locale of the component */
+ public java.util.Locale getLocale() throws java.awt.IllegalComponentStateException {
+ try {
+ com.sun.star.lang.Locale unoLocale = unoAccessibleContext.getLocale();
+ return new java.util.Locale(unoLocale.Language, unoLocale.Country);
+ } catch (IllegalAccessibleComponentStateException e) {
+ throw new java.awt.IllegalComponentStateException(e.getMessage());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return Table.this.getLocale();
+ }
+ }
+
+ /** Gets the 0-based index of this object in its accessible parent */
+ public int getAccessibleIndexInParent() {
+ try {
+ return unoAccessibleContext.getAccessibleIndexInParent();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return -1;
+ }
+ }
+
+ /** Returns the number of accessible children of the object. */
+ public int getAccessibleChildrenCount() {
+ try {
+ return unoAccessibleContext.getAccessibleChildCount();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return 0;
+ }
+ }
+
+ /** Returns the specified Accessible child of the object. */
+ public javax.accessibility.Accessible getAccessibleChild(int i) {
+ javax.accessibility.Accessible child = null;
+ try {
+ XAccessible xAccessible = unoAccessibleContext.getAccessibleChild(i);
+ // Re-use the active descandant wrapper if possible
+ javax.accessibility.Accessible activeDescendant = Table.this.activeDescendant;
+ if ((activeDescendant instanceof TableCell) && ((TableCell) activeDescendant).unoAccessible.equals(xAccessible)) {
+ child = activeDescendant;
+ } else if (xAccessible != null) {
+ child = new TableCell(xAccessible);
+ }
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ return child;
+ }
+
+ /** Returns the state set of this object */
+ public javax.accessibility.AccessibleStateSet getAccessibleStateSet() {
+ try {
+ return AccessibleStateAdapter.getAccessibleStateSet(TableCell.this,
+ unoAccessibleContext.getAccessibleStateSet());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return AccessibleStateAdapter.getDefunctStateSet();
+ }
+ }
+
+ /** Returns the relation set of this object */
+ public javax.accessibility.AccessibleRelationSet getAccessibleRelationSet() {
+ try {
+ XAccessibleRelationSet unoAccessibleRelationSet = unoAccessibleContext.getAccessibleRelationSet();
+ if (unoAccessibleRelationSet == null) {
+ return null;
+ }
+
+ javax.accessibility.AccessibleRelationSet relationSet = new javax.accessibility.AccessibleRelationSet();
+ int count = unoAccessibleRelationSet.getRelationCount();
+ for (int i = 0; i < count; i++) {
+ AccessibleRelation unoAccessibleRelation = unoAccessibleRelationSet.getRelation(i);
+ switch (unoAccessibleRelation.RelationType) {
+ case AccessibleRelationType.CONTROLLED_BY:
+ relationSet.add(new javax.accessibility.AccessibleRelation(
+ javax.accessibility.AccessibleRelation.CONTROLLED_BY,
+ create(unoAccessibleRelation.TargetSet)));
+ break;
+ case AccessibleRelationType.CONTROLLER_FOR:
+ relationSet.add(new javax.accessibility.AccessibleRelation(
+ javax.accessibility.AccessibleRelation.CONTROLLER_FOR,
+ create(unoAccessibleRelation.TargetSet)));
+ break;
+ case AccessibleRelationType.LABELED_BY:
+ relationSet.add(new javax.accessibility.AccessibleRelation(
+ javax.accessibility.AccessibleRelation.LABELED_BY,
+ create(unoAccessibleRelation.TargetSet)));
+ break;
+ case AccessibleRelationType.LABEL_FOR:
+ relationSet.add(new javax.accessibility.AccessibleRelation(
+ javax.accessibility.AccessibleRelation.LABEL_FOR,
+ create(unoAccessibleRelation.TargetSet)));
+ break;
+ case AccessibleRelationType.MEMBER_OF:
+ relationSet.add(new javax.accessibility.AccessibleRelation(
+ javax.accessibility.AccessibleRelation.MEMBER_OF,
+ create(unoAccessibleRelation.TargetSet)));
+ break;
+ default:
+ break;
+ }
+ }
+ return relationSet;
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Gets the AccessibleComponent associated with this object that has a graphical representation */
+ public javax.accessibility.AccessibleComponent getAccessibleComponent() {
+ try {
+ XAccessibleComponent unoAccessibleComponent = (XAccessibleComponent)
+ UnoRuntime.queryInterface(XAccessibleComponent.class, unoAccessibleContext);
+ return (unoAccessibleComponent != null) ?
+ new AccessibleComponentImpl(unoAccessibleComponent) : null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Gets the AccessibleAction associated with this object that has a graphical representation */
+ public javax.accessibility.AccessibleAction getAccessibleAction() {
+ try {
+ XAccessibleAction unoAccessibleAction = (XAccessibleAction)
+ UnoRuntime.queryInterface(XAccessibleAction.class, unoAccessibleContext);
+ return (unoAccessibleAction != null) ?
+ new AccessibleActionImpl(unoAccessibleAction) : null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Gets the AccessibleText associated with this object that has a graphical representation */
+ public javax.accessibility.AccessibleText getAccessibleText() {
+
+ if (disposed)
+ return null;
+
+ try {
+ XAccessibleText unoAccessibleText = (XAccessibleText)
+ UnoRuntime.queryInterface(XAccessibleText.class, unoAccessibleContext);
+ return (unoAccessibleText != null) ?
+ new AccessibleTextImpl(unoAccessibleText) : null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Gets the AccessibleValue associated with this object that has a graphical representation */
+ public javax.accessibility.AccessibleValue getAccessibleValue() {
+ try {
+ XAccessibleValue unoAccessibleValue = (XAccessibleValue)
+ UnoRuntime.queryInterface(XAccessibleValue.class, unoAccessibleContext);
+ return (unoAccessibleValue != null) ?
+ new AccessibleValueImpl(unoAccessibleValue) : null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Gets the AccessibleText associated with this object presenting text on the display */
+ public javax.accessibility.AccessibleIcon[] getAccessibleIcon() {
+ try {
+ XAccessibleImage unoAccessibleImage = (XAccessibleImage)
+ UnoRuntime.queryInterface(XAccessibleImage.class, unoAccessibleContext);
+ if (unoAccessibleImage != null) {
+ javax.accessibility.AccessibleIcon[] icons = { new AccessibleIconImpl(unoAccessibleImage) };
+ return icons;
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ return null;
+ }
+ }
+ }
+}
+
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/TextComponent.java b/accessibility/bridge/org/openoffice/java/accessibility/TextComponent.java
new file mode 100644
index 000000000000..a142297c4c12
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/TextComponent.java
@@ -0,0 +1,194 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import com.sun.star.uno.UnoRuntime;
+import com.sun.star.accessibility.*;
+
+/**
+ */
+public class TextComponent extends Component implements javax.accessibility.Accessible {
+
+ protected TextComponent(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
+ super(xAccessible, xAccessibleContext);
+ }
+
+ protected class AccessibleTextComponentListener extends AccessibleUNOComponentListener {
+
+ protected AccessibleTextComponentListener() {
+ super();
+ }
+
+ protected void setComponentState(short state, boolean enable) {
+ switch (state) {
+ case AccessibleStateType.EDITABLE:
+ fireStatePropertyChange(javax.accessibility.AccessibleState.EDITABLE, enable);
+ break;
+ case AccessibleStateType.MULTI_LINE:
+ fireStatePropertyChange(javax.accessibility.AccessibleState.MULTI_LINE, enable);
+ break;
+ case AccessibleStateType.SINGLE_LINE:
+ break;
+ default:
+ super.setComponentState(state, enable);
+ break;
+ }
+ }
+ }
+
+ protected XAccessibleEventListener createEventListener() {
+ return new AccessibleTextComponentListener();
+ }
+
+ /** Creates the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext createAccessibleContext() {
+ return new AccessibleTextComponent();
+ }
+
+ protected class AccessibleTextComponent extends AccessibleUNOComponent {
+
+ /**
+ * Though the class is abstract, this should be called by all sub-classes
+ */
+ protected AccessibleTextComponent() {
+ super();
+ }
+
+ /*
+ * AccessibleContext
+ */
+
+ /** Gets the role of this object */
+ public javax.accessibility.AccessibleRole getAccessibleRole() {
+ return javax.accessibility.AccessibleRole.TEXT;
+ }
+
+ /** Gets the AccessibleText associated with this object presenting text on the display */
+ public javax.accessibility.AccessibleText getAccessibleText() {
+
+ if (disposed)
+ return null;
+
+ try {
+ XAccessibleText unoAccessibleText = (XAccessibleText)
+ UnoRuntime.queryInterface(XAccessibleText.class,unoAccessibleComponent);
+ if (unoAccessibleText != null) {
+ return new AccessibleTextImpl(unoAccessibleText);
+ } else {
+ return null;
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Gets the AccessibleEditableText associated with this object presenting text on the display */
+ public javax.accessibility.AccessibleEditableText getAccessibleEditableText() {
+ try {
+ XAccessibleEditableText unoAccessibleText = (XAccessibleEditableText)
+ UnoRuntime.queryInterface(XAccessibleEditableText.class,unoAccessibleComponent);
+ if (unoAccessibleText != null) {
+ return new AccessibleEditableTextImpl(unoAccessibleText);
+ } else {
+ return null;
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Gets the AccessibleAction associated with this object that has a graphical representation */
+ public javax.accessibility.AccessibleAction getAccessibleAction() {
+ try {
+ XAccessibleAction unoAccessibleAction = (XAccessibleAction)
+ UnoRuntime.queryInterface(XAccessibleAction.class, unoAccessibleComponent);
+ return (unoAccessibleAction != null) ?
+ new AccessibleActionImpl(unoAccessibleAction) : null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Returns the relation set of this object */
+ public javax.accessibility.AccessibleRelationSet getAccessibleRelationSet() {
+ try {
+ XAccessibleRelationSet unoAccessibleRelationSet =
+ unoAccessible.getAccessibleContext().getAccessibleRelationSet();
+ if (unoAccessibleRelationSet == null) {
+ return super.getAccessibleRelationSet();
+ }
+
+ javax.accessibility.AccessibleRelationSet relationSet = new javax.accessibility.AccessibleRelationSet();
+ int count = unoAccessibleRelationSet.getRelationCount();
+ for (int i = 0; i < count; i++) {
+ AccessibleRelation unoAccessibleRelation = unoAccessibleRelationSet.getRelation(i);
+ switch (unoAccessibleRelation.RelationType) {
+ case AccessibleRelationType.CONTROLLED_BY:
+ relationSet.add(new javax.accessibility.AccessibleRelation(
+ javax.accessibility.AccessibleRelation.CONTROLLED_BY,
+ getAccessibleComponents(unoAccessibleRelation.TargetSet)));
+ break;
+ case AccessibleRelationType.CONTROLLER_FOR:
+ relationSet.add(new javax.accessibility.AccessibleRelation(
+ javax.accessibility.AccessibleRelation.CONTROLLER_FOR,
+ getAccessibleComponents(unoAccessibleRelation.TargetSet)));
+ break;
+ case AccessibleRelationType.LABELED_BY:
+ relationSet.add(new javax.accessibility.AccessibleRelation(
+ javax.accessibility.AccessibleRelation.LABELED_BY,
+ getAccessibleComponents(unoAccessibleRelation.TargetSet)));
+ break;
+ case AccessibleRelationType.MEMBER_OF:
+ relationSet.add(new javax.accessibility.AccessibleRelation(
+ javax.accessibility.AccessibleRelation.MEMBER_OF,
+ getAccessibleComponents(unoAccessibleRelation.TargetSet)));
+ break;
+ case AccessibleRelationType.CONTENT_FLOWS_TO:
+ relationSet.add(new javax.accessibility.AccessibleRelation(
+ "flowsTo",
+ getAccessibleComponents(unoAccessibleRelation.TargetSet)));
+ break;
+ case AccessibleRelationType.CONTENT_FLOWS_FROM:
+ relationSet.add(new javax.accessibility.AccessibleRelation(
+ "flowsFrom",
+ getAccessibleComponents(unoAccessibleRelation.TargetSet)));
+ break;
+ default:
+ break;
+ }
+ }
+ return relationSet;
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return super.getAccessibleRelationSet();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return super.getAccessibleRelationSet();
+ }
+ }
+ }
+}
+
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/ToggleButton.java b/accessibility/bridge/org/openoffice/java/accessibility/ToggleButton.java
new file mode 100644
index 000000000000..bac8035a2ece
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/ToggleButton.java
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+package org.openoffice.java.accessibility;
+
+import com.sun.star.accessibility.*;
+import com.sun.star.uno.*;
+
+
+class ToggleButton extends AbstractButton implements javax.accessibility.Accessible {
+ public ToggleButton(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
+ super(xAccessible, xAccessibleContext);
+ }
+
+ /** Creates the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext createAccessibleContext() {
+ return new AccessibleToggleButton();
+ }
+
+ protected class AccessibleToggleButton extends AccessibleAbstractButton {
+ /** Gets the role of this object */
+ public javax.accessibility.AccessibleRole getAccessibleRole() {
+ return javax.accessibility.AccessibleRole.TOGGLE_BUTTON;
+ }
+
+ /** Gets the AccessibleValue associated with this object that has a graphical representation */
+ public javax.accessibility.AccessibleValue getAccessibleValue() {
+ try {
+ XAccessibleValue unoAccessibleValue = (XAccessibleValue) UnoRuntime.queryInterface(XAccessibleValue.class,
+ unoAccessibleContext);
+
+ return (unoAccessibleValue != null)
+ ? new AccessibleValueImpl(unoAccessibleValue) : null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/ToolTip.java b/accessibility/bridge/org/openoffice/java/accessibility/ToolTip.java
new file mode 100644
index 000000000000..071a6a37fd98
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/ToolTip.java
@@ -0,0 +1,117 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+package org.openoffice.java.accessibility;
+
+import com.sun.star.accessibility.*;
+import com.sun.star.uno.*;
+
+import javax.accessibility.AccessibleState;
+import javax.accessibility.AccessibleStateSet;
+
+
+/**
+ */
+public class ToolTip extends Component implements javax.accessibility.Accessible {
+ protected ToolTip(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
+ super(xAccessible, xAccessibleContext);
+ }
+
+ /** Creates the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext createAccessibleContext() {
+ return new AccessibleToolTip();
+ }
+
+ protected class AccessibleToolTip extends AccessibleUNOComponent {
+
+ /*
+ * AccessibleContext
+ */
+
+ /** Gets the role of this object */
+ public javax.accessibility.AccessibleRole getAccessibleRole() {
+ return javax.accessibility.AccessibleRole.TOOL_TIP;
+ }
+
+ /** Gets the AccessibleText associated with this object presenting text on the display */
+ public javax.accessibility.AccessibleText getAccessibleText() {
+
+ if (disposed)
+ return null;
+
+ try {
+ XAccessibleText unoAccessibleText = (XAccessibleText) UnoRuntime.queryInterface(XAccessibleText.class,
+ unoAccessibleComponent);
+
+ if (unoAccessibleText != null) {
+ return new AccessibleTextImpl(unoAccessibleText);
+ } else {
+ return null;
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Returns the relation set of this object */
+
+ /*
+ public javax.accessibility.AccessibleRelationSet getAccessibleRelationSet() {
+ try {
+ XAccessibleRelationSet unoAccessibleRelationSet = unoAccessibleContext.getAccessibleRelationSet();
+ if (unoAccessibleRelationSet == null) {
+ return null;
+ }
+
+ javax.accessibility.AccessibleRelationSet relationSet = new javax.accessibility.AccessibleRelationSet();
+ int count = unoAccessibleRelationSet.getRelationCount();
+ for (int i = 0; i < count; i++) {
+ AccessibleRelation unoAccessibleRelation = unoAccessibleRelationSet.getRelation(i);
+ switch (unoAccessibleRelation.RelationType) {
+ case AccessibleRelationType.LABEL_FOR:
+ relationSet.add(new javax.accessibility.AccessibleRelation(
+ javax.accessibility.AccessibleRelation.LABEL_FOR,
+ getAccessibleComponents(unoAccessibleRelation.TargetSet)));
+ break;
+ case AccessibleRelationType.MEMBER_OF:
+ relationSet.add(new javax.accessibility.AccessibleRelation(
+ javax.accessibility.AccessibleRelation.MEMBER_OF,
+ getAccessibleComponents(unoAccessibleRelation.TargetSet)));
+ break;
+ default:
+ break;
+ }
+ }
+ return relationSet;
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+ */
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Tree.java b/accessibility/bridge/org/openoffice/java/accessibility/Tree.java
new file mode 100644
index 000000000000..5fdd5a196397
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/Tree.java
@@ -0,0 +1,768 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import javax.accessibility.AccessibleContext;
+import javax.accessibility.AccessibleState;
+
+import com.sun.star.uno.AnyConverter;
+import com.sun.star.uno.UnoRuntime;
+import com.sun.star.accessibility.*;
+
+public class Tree extends DescendantManager implements javax.accessibility.Accessible {
+
+ protected Tree(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
+ super(xAccessible, xAccessibleContext);
+ }
+
+ protected void setActiveDescendant(javax.accessibility.Accessible descendant) {
+ javax.accessibility.Accessible oldAD = activeDescendant;
+ activeDescendant = descendant;
+ firePropertyChange(AccessibleContext.ACCESSIBLE_ACTIVE_DESCENDANT_PROPERTY,
+ oldAD, descendant);
+ }
+
+ protected void setActiveDescendant(Object any) {
+ javax.accessibility.Accessible descendant = null;
+ try {
+ if (AnyConverter.isObject(any)) {
+ XAccessible unoAccessible = (XAccessible) AnyConverter.toObject(
+ AccessibleObjectFactory.XAccessibleType, any);
+ if (unoAccessible != null) {
+ // FIXME: have to handle non transient objects here ..
+ descendant = new TreeItem(unoAccessible);
+ }
+ }
+ setActiveDescendant(descendant);
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ protected void add(XAccessible unoAccessible) {
+ if (unoAccessible != null) {
+ firePropertyChange(AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
+ null, new TreeItem(unoAccessible));
+ }
+ }
+
+ protected void remove(XAccessible unoAccessible) {
+ if (unoAccessible != null) {
+ firePropertyChange(AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
+ new TreeItem(unoAccessible), null);
+ }
+ }
+
+ protected void add(Object any) {
+ try {
+ add((XAccessible) AnyConverter.toObject(AccessibleObjectFactory.XAccessibleType, any));
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ protected void remove(Object any) {
+ try {
+ remove((XAccessible) AnyConverter.toObject(AccessibleObjectFactory.XAccessibleType, any));
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ /**
+ * Update the proxy objects appropriatly on property change events
+ */
+ protected class AccessibleTreeListener extends AccessibleDescendantManagerListener {
+
+ protected AccessibleTreeListener() {
+ super();
+ }
+
+ /** Called by OpenOffice process to notify property changes */
+ public void notifyEvent(AccessibleEventObject event) {
+ switch (event.EventId) {
+ case AccessibleEventId.ACTIVE_DESCENDANT_CHANGED:
+ setActiveDescendant(event.NewValue);
+ break;
+ case AccessibleEventId.CHILD:
+ if (AnyConverter.isObject(event.OldValue)) {
+ remove(event.OldValue);
+ }
+ if (AnyConverter.isObject(event.NewValue)) {
+ add(event.NewValue);
+ }
+ break;
+
+ case AccessibleEventId.LISTBOX_ENTRY_EXPANDED:
+ firePropertyChange(AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
+ AccessibleState.COLLAPSED, AccessibleState.EXPANDED);
+ break;
+
+ case AccessibleEventId.LISTBOX_ENTRY_COLLAPSED:
+ firePropertyChange(AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
+ AccessibleState.EXPANDED, AccessibleState.COLLAPSED);
+ break;
+
+ default:
+ super.notifyEvent(event);
+ }
+ }
+ }
+
+ protected XAccessibleEventListener createEventListener() {
+ return new AccessibleTreeListener();
+ }
+
+ /** Creates the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext createAccessibleContext() {
+ return new AccessibleTree();
+ }
+
+ protected class AccessibleTree extends AccessibleDescendantManager implements javax.accessibility.AccessibleExtendedTable {
+
+ protected XAccessibleTable unoAccessibleTable;
+
+ public AccessibleTree() {
+ unoAccessibleTable = (XAccessibleTable) UnoRuntime.queryInterface(XAccessibleTable.class, unoAccessibleContext);
+ }
+
+ /*
+ * AccessibleContext
+ */
+
+ /** Gets the role of this object */
+ public javax.accessibility.AccessibleRole getAccessibleRole() {
+ return javax.accessibility.AccessibleRole.TREE;
+ }
+
+ /** Returns the AccessibleTable interface of this object */
+ public javax.accessibility.AccessibleTable getAccessibleTable() {
+ return ( unoAccessibleTable != null ) ? this : null;
+ }
+
+ /** Returns the specified Accessible child of the object */
+ public javax.accessibility.Accessible getAccessibleChild(int i) {
+ javax.accessibility.Accessible child = null;
+ try {
+ XAccessible xAccessible = unoAccessibleContext.getAccessibleChild(i);
+ if (xAccessible != null) {
+ // Re-use the active descandant wrapper if possible
+ javax.accessibility.Accessible activeDescendant = Tree.this.activeDescendant;
+ if ((activeDescendant instanceof TreeItem) && xAccessible.equals(((TreeItem) activeDescendant).unoAccessible)) {
+ child = activeDescendant;
+ } else {
+ child = new TreeItem(xAccessible);
+ }
+ }
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ return child;
+ }
+
+ /*
+ * AccessibleComponent
+ */
+
+ /** Returns the Accessible child, if one exists, contained at the local coordinate Point */
+ public javax.accessibility.Accessible getAccessibleAt(java.awt.Point p) {
+ javax.accessibility.Accessible child = null;
+ try {
+ XAccessible xAccessible = unoAccessibleComponent.getAccessibleAtPoint(
+ new com.sun.star.awt.Point(p.x, p.y));
+ if (xAccessible != null) {
+ // Re-use the active descandant wrapper if possible
+ javax.accessibility.Accessible activeDescendant = Tree.this.activeDescendant;
+ if ((activeDescendant instanceof TreeItem) && xAccessible.equals(((TreeItem) activeDescendant).unoAccessible)) {
+ child = activeDescendant;
+ } else {
+ child = new TreeItem(xAccessible);
+ }
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ return child;
+ }
+
+ /*
+ * AccessibleSelection
+ */
+
+ /** Returns an Accessible representing the specified selected child of the object */
+ public javax.accessibility.Accessible getAccessibleSelection(int i) {
+ javax.accessibility.Accessible child = null;
+ try {
+ XAccessible xAccessible = unoAccessibleContext.getAccessibleChild(i);
+ if (xAccessible != null) {
+ // Re-use the active descandant wrapper if possible
+ javax.accessibility.Accessible activeDescendant = Tree.this.activeDescendant;
+ if ((activeDescendant instanceof TreeItem) && xAccessible.equals(((TreeItem) activeDescendant).unoAccessible)) {
+ child = activeDescendant;
+ } else {
+ child = new TreeItem(xAccessible);
+ }
+ }
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ return child;
+ }
+
+ /*
+ * AccessibleTable
+ */
+
+ /** Returns the Accessible at a specified row and column in the table. */
+ public javax.accessibility.Accessible getAccessibleAt(int r, int c) {
+ javax.accessibility.Accessible child = null;
+ try {
+ XAccessible xAccessible = unoAccessibleTable.getAccessibleCellAt(r,c);
+ if (xAccessible != null) {
+ // Re-use the active descandant wrapper if possible
+ javax.accessibility.Accessible activeDescendant = Tree.this.activeDescendant;
+ if ((activeDescendant instanceof TreeItem) && xAccessible.equals(((TreeItem) activeDescendant).unoAccessible)) {
+ child = activeDescendant;
+ } else {
+ child = new TreeItem(xAccessible);
+ }
+ }
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ return child;
+ }
+
+ /** Returns the caption for the table. */
+ public javax.accessibility.Accessible getAccessibleCaption() {
+ // Not yet supported.
+ return null;
+ }
+
+ /** Returns the number of columns in the table. */
+ public int getAccessibleColumnCount() {
+ try {
+ return unoAccessibleTable.getAccessibleColumnCount();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return 0;
+ }
+ }
+
+ /** Returns the description text of the specified column in the table. */
+ public javax.accessibility.Accessible getAccessibleColumnDescription(int c) {
+ try {
+ return new javax.swing.JLabel(
+ unoAccessibleTable.getAccessibleColumnDescription(c));
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /**
+ * Returns the number of columns occupied by the Accessible
+ * at a specified row and column in the table.
+ */
+ public int getAccessibleColumnExtentAt(int r, int c) {
+ try {
+ return unoAccessibleTable.getAccessibleColumnExtentAt(r,c);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return 0;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return 0;
+ }
+ }
+
+ /** Returns the column headers as an AccessibleTable. */
+ public javax.accessibility.AccessibleTable getAccessibleColumnHeader() {
+ // Not yet supported
+ return null;
+ }
+
+ /** Returns the number of rows in the table. */
+ public int getAccessibleRowCount() {
+ try {
+ return unoAccessibleTable.getAccessibleRowCount();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return 0;
+ }
+ }
+
+ /** Returns the description of the specified row in the table. */
+ public javax.accessibility.Accessible getAccessibleRowDescription(int r) {
+ try {
+ return new javax.swing.JLabel(
+ unoAccessibleTable.getAccessibleRowDescription(r));
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /**
+ * Returns the number of rows occupied by the Accessible
+ * at a specified row and column in the table.
+ */
+ public int getAccessibleRowExtentAt(int r, int c) {
+ try {
+ return unoAccessibleTable.getAccessibleRowExtentAt(r,c);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return 0;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return 0;
+ }
+ }
+
+ /** Returns the row headers as an AccessibleTable. */
+ public javax.accessibility.AccessibleTable getAccessibleRowHeader() {
+ // Not yet supported
+ return null;
+ }
+
+ /** Returns the summary description of the table. */
+ public javax.accessibility.Accessible getAccessibleSummary() {
+ // Not yet supported.
+ return null;
+ }
+
+ /** Returns the selected columns in a table. */
+ public int[] getSelectedAccessibleColumns() {
+ try {
+ return unoAccessibleTable.getSelectedAccessibleColumns();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Returns the selected rows in a table. */
+ public int[] getSelectedAccessibleRows() {
+ try {
+ return unoAccessibleTable.getSelectedAccessibleRows();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Returns a boolean value indicating whether the specified column is selected. */
+ public boolean isAccessibleColumnSelected(int c) {
+ try {
+ return unoAccessibleTable.isAccessibleColumnSelected(c);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return false;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return false;
+ }
+ }
+
+ /** Returns a boolean value indicating whether the specified row is selected. */
+ public boolean isAccessibleRowSelected(int r) {
+ try {
+ return unoAccessibleTable.isAccessibleRowSelected(r);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return false;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return false;
+ }
+ }
+
+ /**
+ * Returns a boolean value indicating whether the accessible
+ * at a specified row and column is selected.
+ */
+ public boolean isAccessibleSelected(int r, int c) {
+ try {
+ return unoAccessibleTable.isAccessibleSelected(r,c);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return false;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return false;
+ }
+ }
+
+ /** Sets the caption for the table. */
+ public void setAccessibleCaption(javax.accessibility.Accessible accessible) {
+ // Not supported by the UNO Accessibility API
+ }
+
+ /** Sets the description text of the specified column in the table. */
+ public void setAccessibleColumnDescription(int param, javax.accessibility.Accessible accessible) {
+ // Not supported by the UNO Accessibility API
+ }
+
+ /** Sets the column headers. */
+ public void setAccessibleColumnHeader(javax.accessibility.AccessibleTable accessibleTable) {
+ // Not supported by the UNO Accessibility API
+ }
+
+ /** Sets the description text of the specified row of the table. */
+ public void setAccessibleRowDescription(int param, javax.accessibility.Accessible accessible) {
+ // Not supported by the UNO Accessibility API
+ }
+
+ /** Sets the row headers. */
+ public void setAccessibleRowHeader(javax.accessibility.AccessibleTable accessibleTable) {
+ // Not supported by the UNO Accessibility API
+ }
+
+ /** Sets the summary description of the table */
+ public void setAccessibleSummary(javax.accessibility.Accessible accessible) {
+ // Not supported by the UNO Accessibility API
+ }
+
+ /** Returns the column number of an index in the table */
+ public int getAccessibleColumn(int index) {
+ try {
+ return unoAccessibleTable.getAccessibleColumn(index);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return -1;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return -1;
+ }
+ }
+
+ /** Returns the index of a specified row and column in the table. */
+ public int getAccessibleIndex(int r, int c) {
+ try {
+ return unoAccessibleTable.getAccessibleIndex(r,c);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return -1;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return -1;
+ }
+ }
+
+ /** Returns the row number of an index in the table */
+ public int getAccessibleRow(int index) {
+ try {
+ return unoAccessibleTable.getAccessibleRow(index);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return -1;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return -1;
+ }
+ }
+ }
+
+ class TreeItem extends java.awt.Component implements javax.accessibility.Accessible {
+
+ protected XAccessible unoAccessible;
+
+ public TreeItem(XAccessible xAccessible) {
+ unoAccessible = xAccessible;
+ }
+
+ public Object[] create(Object[] targetSet) {
+ try {
+ java.util.ArrayList list = new java.util.ArrayList(targetSet.length);
+ for (int i=0; i < targetSet.length; i++) {
+ XAccessible xAccessible = (XAccessible) UnoRuntime.queryInterface(
+ XAccessible.class, targetSet[i]);
+ if (xAccessible != null) {
+ list.add(new TreeItem(xAccessible));
+ }
+ }
+ list.trimToSize();
+ return list.toArray();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ javax.accessibility.AccessibleContext accessibleContext = null;
+
+ /** Returns the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext getAccessibleContext() {
+ if (accessibleContext == null) {
+ try {
+ XAccessibleContext xAccessibleContext = unoAccessible.getAccessibleContext();
+ if (xAccessibleContext != null) {
+ javax.accessibility.AccessibleContext ac = new AccessibleTreeItem(xAccessibleContext);
+ if (ac != null) {
+ ac.setAccessibleParent(Tree.this);
+ accessibleContext = ac;
+ }
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+ return accessibleContext;
+ }
+
+ protected class AccessibleTreeItem extends javax.accessibility.AccessibleContext
+ implements javax.accessibility.AccessibleSelection {
+
+ XAccessibleContext unoAccessibleContext;
+ XAccessibleSelection unoAccessibleSelection;
+
+ public AccessibleTreeItem(XAccessibleContext xAccessibleContext) {
+ unoAccessibleContext = xAccessibleContext;
+ unoAccessibleSelection = (XAccessibleSelection)
+ UnoRuntime.queryInterface(XAccessibleSelection.class, xAccessibleContext);
+ }
+
+ /** Returns the accessible name of this object */
+ public String getAccessibleName() {
+ try {
+ return unoAccessibleContext.getAccessibleName();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Sets the accessible name of this object */
+ public void setAccessibleName(String name) {
+ // Not supported
+ }
+
+ /** Returns the accessible name of this object */
+ public String getAccessibleDescription() {
+ try {
+ return unoAccessibleContext.getAccessibleDescription();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Sets the accessible name of this object */
+ public void setAccessibleDescription(String name) {
+ // Not supported
+ }
+
+ /** Returns the accessible role of this object */
+ public javax.accessibility.AccessibleRole getAccessibleRole() {
+ try {
+ javax.accessibility.AccessibleRole role = AccessibleRoleAdapter.getAccessibleRole(
+ unoAccessibleContext.getAccessibleRole());
+ return (role != null) ? role : javax.accessibility.AccessibleRole.LABEL;
+ } catch(com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Gets the locale of the component */
+ public java.util.Locale getLocale() throws java.awt.IllegalComponentStateException {
+ try {
+ com.sun.star.lang.Locale unoLocale = unoAccessibleContext.getLocale();
+ return new java.util.Locale(unoLocale.Language, unoLocale.Country);
+ } catch (IllegalAccessibleComponentStateException e) {
+ throw new java.awt.IllegalComponentStateException(e.getMessage());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return Tree.this.getLocale();
+ }
+ }
+
+ /** Gets the 0-based index of this object in its accessible parent */
+ public int getAccessibleIndexInParent() {
+ try {
+ return unoAccessibleContext.getAccessibleIndexInParent();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return -1;
+ }
+ }
+
+ /** Returns the number of accessible children of the object. */
+ public int getAccessibleChildrenCount() {
+ try {
+ return unoAccessibleContext.getAccessibleChildCount();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return 0;
+ }
+ }
+
+ /** Returns the specified Accessible child of the object. */
+ public javax.accessibility.Accessible getAccessibleChild(int i) {
+ javax.accessibility.Accessible child = null;
+ try {
+ XAccessible xAccessible = unoAccessibleContext.getAccessibleChild(i);
+ // Re-use the active descandant wrapper if possible
+ javax.accessibility.Accessible activeDescendant = Tree.this.activeDescendant;
+ if ((activeDescendant instanceof TreeItem) && ((TreeItem) activeDescendant).unoAccessible.equals(xAccessible)) {
+ child = activeDescendant;
+ } else if (xAccessible != null) {
+ child = new TreeItem(xAccessible);
+ }
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ return child;
+ }
+
+ /** Returns the state set of this object */
+ public javax.accessibility.AccessibleStateSet getAccessibleStateSet() {
+ try {
+ return AccessibleStateAdapter.getAccessibleStateSet(TreeItem.this,
+ unoAccessibleContext.getAccessibleStateSet());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return AccessibleStateAdapter.getDefunctStateSet();
+ }
+ }
+
+ /** Gets the AccessibleComponent associated with this object that has a graphical representation */
+ public javax.accessibility.AccessibleComponent getAccessibleComponent() {
+ try {
+ XAccessibleComponent unoAccessibleComponent = (XAccessibleComponent)
+ UnoRuntime.queryInterface(XAccessibleComponent.class, unoAccessibleContext);
+ return (unoAccessibleComponent != null) ?
+ new AccessibleComponentImpl(unoAccessibleComponent) : null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Returns the AccessibleSelection interface for this object */
+ public javax.accessibility.AccessibleSelection getAccessibleSelection() {
+ return (unoAccessibleSelection != null) ? this : null;
+ }
+
+ /** Gets the AccessibleAction associated with this object that has a graphical representation */
+ public javax.accessibility.AccessibleAction getAccessibleAction() {
+ try {
+ XAccessibleAction unoAccessibleAction = (XAccessibleAction)
+ UnoRuntime.queryInterface(XAccessibleAction.class, unoAccessibleContext);
+ return (unoAccessibleAction != null) ?
+ new AccessibleActionImpl(unoAccessibleAction) : null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Gets the AccessibleText associated with this object that has a graphical representation */
+ public javax.accessibility.AccessibleText getAccessibleText() {
+
+ if (disposed)
+ return null;
+
+ try {
+ XAccessibleText unoAccessibleText = (XAccessibleText)
+ UnoRuntime.queryInterface(XAccessibleText.class, unoAccessibleContext);
+ return (unoAccessibleText != null) ?
+ new AccessibleTextImpl(unoAccessibleText) : null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Gets the AccessibleValue associated with this object that has a graphical representation */
+ public javax.accessibility.AccessibleValue getAccessibleValue() {
+ try {
+ XAccessibleValue unoAccessibleValue = (XAccessibleValue)
+ UnoRuntime.queryInterface(XAccessibleValue.class, unoAccessibleContext);
+ return (unoAccessibleValue != null) ?
+ new AccessibleValueImpl(unoAccessibleValue) : null;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Gets the AccessibleText associated with this object presenting text on the display */
+ public javax.accessibility.AccessibleIcon[] getAccessibleIcon() {
+ try {
+ XAccessibleImage unoAccessibleImage = (XAccessibleImage)
+ UnoRuntime.queryInterface(XAccessibleImage.class, unoAccessibleContext);
+ if (unoAccessibleImage != null) {
+ javax.accessibility.AccessibleIcon[] icons = { new AccessibleIconImpl(unoAccessibleImage) };
+ return icons;
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ return null;
+ }
+
+ /*
+ * AccessibleSelection
+ */
+
+ /** Returns an Accessible representing the specified selected child of the object */
+ public javax.accessibility.Accessible getAccessibleSelection(int i) {
+ javax.accessibility.Accessible child = null;
+ try {
+ XAccessible xAccessible = unoAccessibleContext.getAccessibleChild(i);
+ if (xAccessible != null) {
+ child = new TreeItem(xAccessible);
+ }
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ return child;
+ }
+
+ /** Adds the specified Accessible child of the object to the object's selection */
+ public void addAccessibleSelection(int i) {
+ try {
+ unoAccessibleSelection.selectAccessibleChild(i);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+
+ /** Clears the selection in the object, so that no children in the object are selected */
+ public void clearAccessibleSelection() {
+ try {
+ unoAccessibleSelection.clearAccessibleSelection();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+
+ /** Returns the number of Accessible children currently selected */
+ public int getAccessibleSelectionCount() {
+ try {
+ return unoAccessibleSelection.getSelectedAccessibleChildCount();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return 0;
+ }
+ }
+
+ /** Determines if the current child of this object is selected */
+ public boolean isAccessibleChildSelected(int i) {
+ try {
+ return unoAccessibleSelection.isAccessibleChildSelected(i);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ return false;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return false;
+ }
+ }
+
+ /** Removes the specified child of the object from the object's selection */
+ public void removeAccessibleSelection(int i) {
+ try {
+ unoAccessibleSelection.deselectAccessibleChild(i);
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+
+ /** Causes every child of the object to be selected if the object supports multiple selection */
+ public void selectAllAccessibleSelection() {
+ try {
+ unoAccessibleSelection.selectAllAccessibleChildren();
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+ }
+ }
+}
+
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Window.java b/accessibility/bridge/org/openoffice/java/accessibility/Window.java
new file mode 100644
index 000000000000..ef44c3380a48
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/Window.java
@@ -0,0 +1,551 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility;
+
+import com.sun.star.uno.*;
+import com.sun.star.accessibility.*;
+
+public class Window extends java.awt.Window implements javax.accessibility.Accessible, NativeFrame {
+ protected XAccessibleComponent unoAccessibleComponent;
+
+ boolean opened = false;
+ boolean visible = false;
+
+ java.awt.EventQueue eventQueue = null;
+
+ public Window(java.awt.Window owner, XAccessibleComponent xAccessibleComponent) {
+ super(owner);
+ initialize(xAccessibleComponent);
+ }
+
+ private void initialize(XAccessibleComponent xAccessibleComponent) {
+ unoAccessibleComponent = xAccessibleComponent;
+ eventQueue = java.awt.Toolkit.getDefaultToolkit().getSystemEventQueue();
+ XAccessibleEventBroadcaster broadcaster = (XAccessibleEventBroadcaster)
+ UnoRuntime.queryInterface(XAccessibleEventBroadcaster.class,
+ unoAccessibleComponent);
+ if (broadcaster != null) {
+ broadcaster.addEventListener(new AccessibleWindowListener());
+ }
+ }
+
+ java.awt.Component initialComponent = null;
+
+ public java.awt.Component getInitialComponent() {
+ if (Build.DEBUG) {
+ System.err.println("returning initial component object of class: " + initialComponent.getClass().getName());
+ }
+ return initialComponent;
+ }
+
+ public void setInitialComponent(java.awt.Component c) {
+ initialComponent = c;
+ }
+
+ public Integer getHWND() {
+ return null;
+ }
+
+ /**
+ * Determines whether this <code>Component</code> is showing on screen.
+ * This means that the component must be visible, and it must be in a
+ * <code>container</code> that is visible and showing.
+ * @see #addNotify
+ * @see #removeNotify
+ * @since JDK1.0
+ */
+ public boolean isShowing() {
+ if (isVisible()) {
+ java.awt.Container parent = getParent();
+ return (parent == null) || parent.isShowing();
+ }
+ return false;
+ }
+
+ /**
+ * Makes this <code>Component</code> displayable by connecting it to a
+ * native screen resource.
+ * This method is called internally by the toolkit and should
+ * not be called directly by programs.
+ * @see #isDisplayable
+ * @see #removeNotify
+ * @since JDK1.0
+ */
+ public void addNotify() {
+// createHierarchyEvents(0, null, null, 0, false);
+ }
+
+ /**
+ * Makes this <code>Component</code> undisplayable by destroying it native
+ * screen resource.
+ * This method is called by the toolkit internally and should
+ * not be called directly by programs.
+ * @see #isDisplayable
+ * @see #addNotify
+ * @since JDK1.0
+ */
+ public void removeNotify() {
+ }
+
+ /**
+ * Determines if the object is visible. Note: this means that the
+ * object intends to be visible; however, it may not in fact be
+ * showing on the screen because one of the objects that this object
+ * is contained by is not visible. To determine if an object is
+ * showing on the screen, use <code>isShowing</code>.
+ *
+ * @return true if object is visible; otherwise, false
+ */
+ public boolean isVisible(){
+ return visible;
+ }
+
+ /**
+ * Shows or hides this component depending on the value of parameter
+ * <code>b</code>.
+ * @param b if <code>true</code>, shows this component;
+ * otherwise, hides this component
+ * @see #isVisible
+ * @since JDK1.1
+ */
+ public void setVisible(boolean b) {
+ if (visible != b){
+ visible = b;
+ if (b) {
+ // If it is the first show, fire WINDOW_OPENED event
+ if (!opened) {
+ postWindowEvent(java.awt.event.WindowEvent.WINDOW_OPENED);
+ opened = true;
+ }
+ postComponentEvent(java.awt.event.ComponentEvent.COMPONENT_SHOWN);
+ } else {
+ postComponentEvent(java.awt.event.ComponentEvent.COMPONENT_HIDDEN);
+ }
+ }
+ }
+
+ public void dispose() {
+ setVisible(false);
+ postWindowEvent(java.awt.event.WindowEvent.WINDOW_CLOSED);
+
+ // Transfer window focus back to the owner window if it is still the active frame
+ if ((getOwner() instanceof Frame && ((Frame) getOwner()).active) ||
+ (getOwner() instanceof Dialog && ((Dialog) getOwner()).active)) {
+ eventQueue.postEvent(new java.awt.event.WindowEvent(getOwner(),
+ java.awt.event.WindowEvent.WINDOW_GAINED_FOCUS));
+ }
+ }
+
+ protected void postWindowEvent(int i) {
+ eventQueue.postEvent(new java.awt.event.WindowEvent(this, i));
+ }
+
+ protected void postComponentEvent(int i) {
+ eventQueue.postEvent(new java.awt.event.ComponentEvent(this, i));
+ }
+
+ /**
+ * Update the proxy objects appropriatly on property change events
+ */
+ protected class AccessibleWindowListener implements XAccessibleEventListener {
+
+ protected AccessibleWindowListener() {
+ }
+
+ // The only expected state changes are ACTIVE and VISIBLE
+ protected void setComponentState(short state, boolean enable) {
+ switch (state) {
+ case AccessibleStateType.ICONIFIED:
+ postWindowEvent(enable ?
+ java.awt.event.WindowEvent.WINDOW_ICONIFIED :
+ java.awt.event.WindowEvent.WINDOW_DEICONIFIED);
+ break;
+ case AccessibleStateType.SHOWING:
+ case AccessibleStateType.VISIBLE:
+ setVisible(enable);
+ break;
+ default:
+ if (Build.DEBUG) {
+// System.err.println("[frame]: " + getTitle() + "unexpected state change " + state);
+ }
+ break;
+ }
+ }
+
+ /** Updates the accessible name and fires the appropriate PropertyChangedEvent */
+ protected void handleNameChangedEvent(Object any) {
+ try {
+ // This causes the property change event to be fired in the VCL thread
+ // context. If this causes problems, it has to be deligated to the java
+ // dispatch thread ..
+ javax.accessibility.AccessibleContext ac = accessibleContext;
+ if (ac!= null) {
+ ac.setAccessibleName(AnyConverter.toString(any));
+ }
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ /** Updates the accessible description and fires the appropriate PropertyChangedEvent */
+ protected void handleDescriptionChangedEvent(Object any) {
+ try {
+ // This causes the property change event to be fired in the VCL thread
+ // context. If this causes problems, it has to be deligated to the java
+ // dispatch thread ..
+ if (accessibleContext != null) {
+ accessibleContext.setAccessibleDescription(AnyConverter.toString(any));
+ }
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ /** Updates the internal states and fires the appropriate PropertyChangedEvent */
+ protected void handleStateChangedEvent(Object any1, Object any2) {
+ try {
+ if (AnyConverter.isShort(any1)) {
+ setComponentState(AnyConverter.toShort(any1), false);
+ }
+
+ if (AnyConverter.isShort(any2)) {
+ setComponentState(AnyConverter.toShort(any2), true);
+ }
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ /** Fires a visible data property change event */
+ protected void handleVisibleDataEvent() {
+ javax.accessibility.AccessibleContext ac = accessibleContext;
+ if (ac != null) {
+ ac.firePropertyChange(javax.accessibility.AccessibleContext.ACCESSIBLE_VISIBLE_DATA_PROPERTY, null, null);
+ }
+ }
+
+ /** Called by OpenOffice process to notify property changes */
+ public void notifyEvent(AccessibleEventObject event) {
+ switch (event.EventId) {
+ case AccessibleEventId.NAME_CHANGED:
+ // Set the accessible name for the corresponding context, which will fire a property
+ // change event itself
+ handleNameChangedEvent(event.NewValue);
+ break;
+ case AccessibleEventId.DESCRIPTION_CHANGED:
+ // Set the accessible description for the corresponding context, which will fire a property
+ // change event itself - so do not set propertyName !
+ handleDescriptionChangedEvent(event.NewValue);
+ break;
+ case AccessibleEventId.STATE_CHANGED:
+ // Update the internal state set and fire the appropriate PropertyChangedEvent
+ handleStateChangedEvent(event.OldValue, event.NewValue);
+ break;
+ case AccessibleEventId.CHILD:
+ if (AnyConverter.isObject(event.OldValue)) {
+ AccessibleObjectFactory.removeChild(Window.this, event.OldValue);
+ } else if (AnyConverter.isObject(event.NewValue)) {
+ AccessibleObjectFactory.addChild(Window.this, event.NewValue);
+ }
+ break;
+ case AccessibleEventId.VISIBLE_DATA_CHANGED:
+ case AccessibleEventId.BOUNDRECT_CHANGED:
+ handleVisibleDataEvent();
+ break;
+ default:
+ // Warn about unhandled events
+ if(Build.DEBUG) {
+ System.out.println(this + ": unhandled accessibility event id=" + event.EventId);
+ }
+ }
+ }
+
+ /** Called by OpenOffice process to notify that the UNO component is disposing */
+ public void disposing(com.sun.star.lang.EventObject eventObject) {
+ }
+ }
+
+ protected javax.accessibility.AccessibleContext accessibleContext = null;
+
+ /** Returns the AccessibleContext associated with this object */
+ public javax.accessibility.AccessibleContext getAccessibleContext() {
+ if (accessibleContext == null) {
+ accessibleContext = new AccessibleWindow();
+// accessibleContext.setAccessibleName(getTitle());
+ }
+ return accessibleContext;
+ }
+
+ protected class AccessibleWindow extends java.awt.Window.AccessibleAWTWindow {
+ protected AccessibleWindow() {
+ super();
+ }
+
+ protected java.awt.event.ComponentListener accessibleComponentHandler = null;
+
+ /**
+ * Fire PropertyChange listener, if one is registered,
+ * when shown/hidden..
+ */
+ protected class AccessibleComponentHandler implements java.awt.event.ComponentListener {
+ public void componentHidden(java.awt.event.ComponentEvent e) {
+ AccessibleWindow.this.firePropertyChange(
+ javax.accessibility.AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
+ javax.accessibility.AccessibleState.VISIBLE, null);
+ }
+
+ public void componentShown(java.awt.event.ComponentEvent e) {
+ AccessibleWindow.this.firePropertyChange(
+ javax.accessibility.AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
+ null, javax.accessibility.AccessibleState.VISIBLE);
+ }
+
+ public void componentMoved(java.awt.event.ComponentEvent e) {
+ }
+
+ public void componentResized(java.awt.event.ComponentEvent e) {
+ }
+ } // inner class AccessibleComponentHandler
+
+ protected java.awt.event.ContainerListener accessibleContainerHandler = null;
+
+ /**
+ * Fire PropertyChange listener, if one is registered,
+ * when children added/removed.
+ */
+
+ protected class AccessibleContainerHandler implements java.awt.event.ContainerListener {
+ public void componentAdded(java.awt.event.ContainerEvent e) {
+ java.awt.Component c = e.getChild();
+ if (c != null && c instanceof javax.accessibility.Accessible) {
+ AccessibleWindow.this.firePropertyChange(
+ javax.accessibility.AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
+ null, ((javax.accessibility.Accessible) c).getAccessibleContext());
+ }
+ }
+ public void componentRemoved(java.awt.event.ContainerEvent e) {
+ java.awt.Component c = e.getChild();
+ if (c != null && c instanceof javax.accessibility.Accessible) {
+ AccessibleWindow.this.firePropertyChange(
+ javax.accessibility.AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
+ ((javax.accessibility.Accessible) c).getAccessibleContext(), null);
+ }
+ }
+ }
+
+ protected int propertyChangeListenerCount = 0;
+
+ /**
+ * Add a PropertyChangeListener to the listener list.
+ *
+ * @param listener The PropertyChangeListener to be added
+ */
+ public void addPropertyChangeListener(java.beans.PropertyChangeListener listener) {
+ if (propertyChangeListenerCount++ == 0) {
+ accessibleContainerHandler = new AccessibleContainerHandler();
+ Window.this.addContainerListener(accessibleContainerHandler);
+
+ accessibleComponentHandler = new AccessibleComponentHandler();
+ Window.this.addComponentListener(accessibleComponentHandler);
+ }
+ super.addPropertyChangeListener(listener);
+ }
+
+ /**
+ * Remove a PropertyChangeListener from the listener list.
+ * This removes a PropertyChangeListener that was registered
+ * for all properties.
+ *
+ * @param listener The PropertyChangeListener to be removed
+ */
+ public void removePropertyChangeListener(java.beans.PropertyChangeListener listener) {
+ if (--propertyChangeListenerCount == 0) {
+ Window.this.removeComponentListener(accessibleComponentHandler);
+ accessibleComponentHandler = null;
+
+ Window.this.removeContainerListener(accessibleContainerHandler);
+ accessibleContainerHandler = null;
+ }
+ super.removePropertyChangeListener(listener);
+ }
+
+ /*
+ * AccessibleComponent
+ */
+
+ /** Returns the background color of the object */
+ public java.awt.Color getBackground() {
+ try {
+ return new java.awt.Color(unoAccessibleComponent.getBackground());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ public void setBackground(java.awt.Color c) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Returns the foreground color of the object */
+ public java.awt.Color getForeground() {
+ try {
+ return new java.awt.Color(unoAccessibleComponent.getForeground());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ public void setForeground(java.awt.Color c) {
+ // Not supported by UNO accessibility API
+ }
+
+ public java.awt.Cursor getCursor() {
+ // Not supported by UNO accessibility API
+ return null;
+ }
+
+ public void setCursor(java.awt.Cursor cursor) {
+ // Not supported by UNO accessibility API
+ }
+
+ public java.awt.Font getFont() {
+ // FIXME
+ return null;
+ }
+
+ public void setFont(java.awt.Font f) {
+ // Not supported by UNO accessibility API
+ }
+
+ public java.awt.FontMetrics getFontMetrics(java.awt.Font f) {
+ // FIXME
+ return null;
+ }
+
+ public boolean isEnabled() {
+ return Window.this.isEnabled();
+ }
+
+ public void setEnabled(boolean b) {
+ // Not supported by UNO accessibility API
+ }
+
+ public boolean isVisible() {
+ return Window.this.isVisible();
+ }
+
+ public void setVisible(boolean b) {
+ // Not supported by UNO accessibility API
+ }
+
+ public boolean isShowing() {
+ return Window.this.isShowing();
+ }
+
+ public boolean contains(java.awt.Point p) {
+ try {
+ return unoAccessibleComponent.containsPoint(new com.sun.star.awt.Point(p.x, p.y));
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return false;
+ }
+ }
+
+ /** Returns the location of the object on the screen. */
+ public java.awt.Point getLocationOnScreen() {
+ try {
+ com.sun.star.awt.Point unoPoint = unoAccessibleComponent.getLocationOnScreen();
+ return new java.awt.Point(unoPoint.X, unoPoint.Y);
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Gets the location of this component in the form of a point specifying the component's top-left corner */
+ public java.awt.Point getLocation() {
+ try {
+ com.sun.star.awt.Point unoPoint = unoAccessibleComponent.getLocationOnScreen();
+ return new java.awt.Point( unoPoint.X, unoPoint.Y );
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Moves this component to a new location */
+ public void setLocation(java.awt.Point p) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Gets the bounds of this component in the form of a Rectangle object */
+ public java.awt.Rectangle getBounds() {
+ try {
+ com.sun.star.awt.Rectangle unoRect = unoAccessibleComponent.getBounds();
+ return new java.awt.Rectangle(unoRect.X, unoRect.Y, unoRect.Width, unoRect.Height);
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Moves and resizes this component to conform to the new bounding rectangle r */
+ public void setBounds(java.awt.Rectangle r) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Returns the size of this component in the form of a Dimension object */
+ public java.awt.Dimension getSize() {
+ try {
+ com.sun.star.awt.Size unoSize = unoAccessibleComponent.getSize();
+ return new java.awt.Dimension(unoSize.Width, unoSize.Height);
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ /** Resizes this component so that it has width d.width and height d.height */
+ public void setSize(java.awt.Dimension d) {
+ // Not supported by UNO accessibility API
+ }
+
+ /** Returns the Accessible child, if one exists, contained at the local coordinate Point */
+ public javax.accessibility.Accessible getAccessibleAt(java.awt.Point p) {
+ try {
+ java.awt.Component c = AccessibleObjectFactory.getAccessibleComponent(
+ unoAccessibleComponent.getAccessibleAtPoint(new com.sun.star.awt.Point(p.x, p.y)));
+
+ return (javax.accessibility.Accessible) c;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return null;
+ }
+ }
+
+ public boolean isFocusTraversable() {
+ return Window.this.isFocusable();
+ }
+
+ public void requestFocus() {
+ unoAccessibleComponent.grabFocus();
+ }
+ }
+}
+
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleEventLog.java b/accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleEventLog.java
new file mode 100644
index 000000000000..36bec1cab8fb
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleEventLog.java
@@ -0,0 +1,186 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility.logging;
+
+import com.sun.star.accessibility.*;
+import com.sun.star.uno.*;
+
+/**
+ *
+ */
+public class XAccessibleEventLog implements XAccessibleEventListener {
+
+ private static XAccessibleEventLog theEventListener = null;
+
+ private static java.util.Hashtable proxyList = new java.util.Hashtable();
+
+ /** Creates a new instance of UNOAccessibleEventListener */
+ public XAccessibleEventLog() {
+ }
+
+ private static XAccessibleEventListener get() {
+ if (theEventListener == null) {
+ theEventListener = new XAccessibleEventLog();
+ }
+ return theEventListener;
+ }
+
+ public static void addEventListener(XAccessibleContext xac, java.awt.Component c) {
+ XAccessibleEventBroadcaster broadcaster = (XAccessibleEventBroadcaster)
+ UnoRuntime.queryInterface(XAccessibleEventBroadcaster.class, xac);
+ if (broadcaster != null) {
+ broadcaster.addEventListener(XAccessibleEventLog.get());
+
+ // remember the proxy objects
+ synchronized (proxyList) {
+// proxyList.put(UnoRuntime.generateOid(xac), new WeakReference(c));
+ proxyList.put(UnoRuntime.generateOid(xac), c);
+ }
+ }
+ }
+
+ public void disposing(com.sun.star.lang.EventObject eventObject) {
+ }
+
+ public void notifyEvent(com.sun.star.accessibility.AccessibleEventObject accessibleEventObject) {
+ switch (accessibleEventObject.EventId) {
+ case AccessibleEventId.ACTIVE_DESCENDANT_CHANGED:
+ logMessage(accessibleEventObject.Source, "Retrieved active descendant event.");
+ break;
+ case AccessibleEventId.STATE_CHANGED:
+ logStateChange(accessibleEventObject.Source,
+ accessibleEventObject.OldValue,
+ accessibleEventObject.NewValue);
+ break;
+ case AccessibleEventId.CHILD:
+ logMessage(accessibleEventObject.Source, "Retrieved children event.");
+ break;
+ case AccessibleEventId.BOUNDRECT_CHANGED:
+ logMessage(accessibleEventObject.Source, "Retrieved boundrect changed event.");
+ break;
+ case AccessibleEventId.VISIBLE_DATA_CHANGED:
+ logMessage(accessibleEventObject.Source, "Retrieved visible data changed event.");
+ break;
+ case AccessibleEventId.INVALIDATE_ALL_CHILDREN:
+ logMessage(accessibleEventObject.Source, "Retrieved invalidate children event.");
+ break;
+ default:
+ break;
+ }
+ }
+
+ public void logStateChange(Object o, Object any1, Object any2) {
+ try {
+ if (AnyConverter.isShort(any1)) {
+ logStateChange(o, AnyConverter.toShort(any1), " is no longer ");
+ }
+
+ if (AnyConverter.isShort(any2)) {
+ logStateChange(o, AnyConverter.toShort(any2), " is now ");
+ }
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ }
+ }
+
+ public void logStateChange(Object o, short n, String s) {
+ switch(n) {
+ case AccessibleStateType.ACTIVE:
+ logMessage(o, s + javax.accessibility.AccessibleState.ACTIVE);
+ break;
+ case AccessibleStateType.ARMED:
+ logMessage(o, s + javax.accessibility.AccessibleState.ARMED);
+ break;
+ case AccessibleStateType.CHECKED:
+ logMessage(o, s + javax.accessibility.AccessibleState.CHECKED);
+ break;
+ case AccessibleStateType.ENABLED:
+ logMessage(o, s + javax.accessibility.AccessibleState.ENABLED);
+ break;
+ case AccessibleStateType.FOCUSED:
+ logMessage(o, s + javax.accessibility.AccessibleState.FOCUSED);
+ break;
+ case AccessibleStateType.PRESSED:
+ logMessage(o, s + javax.accessibility.AccessibleState.PRESSED);
+ break;
+ case AccessibleStateType.SELECTED:
+ logMessage(o, s + javax.accessibility.AccessibleState.SELECTED);
+ break;
+ case AccessibleStateType.SENSITIVE:
+ logMessage(o, s + "sensitive");
+ break;
+ case AccessibleStateType.SHOWING:
+ logMessage(o, s + javax.accessibility.AccessibleState.SHOWING);
+ break;
+ case AccessibleStateType.VISIBLE:
+ logMessage(o, s + javax.accessibility.AccessibleState.VISIBLE);
+ break;
+ default:
+ logMessage(o, s + "??? (FIXME)");
+ break;
+ }
+ }
+
+ protected static void logMessage(Object o, String s) {
+ XAccessibleContext xac = (XAccessibleContext) UnoRuntime.queryInterface(XAccessibleContext.class, o);
+ if( xac != null ) {
+ String oid = UnoRuntime.generateOid(xac);
+ synchronized (proxyList) {
+ logMessage( (javax.accessibility.Accessible) proxyList.get( oid ), s );
+// WeakReference r = (WeakReference) proxyList.get( oid );
+// if(r != null) {
+// System.err.println( "*** Warning *** event is " + r.get() );
+// logMessage( (javax.accessibility.Accessible) r.get(), s );
+// } else {
+// System.err.println( "*** Warning *** event source not found in broadcaster list" );
+// }
+ }
+ } else
+ System.err.println( "*** Warning *** event source does not implement XAccessibleContext" );
+ }
+
+ protected static void logMessage(javax.accessibility.Accessible a, String s) {
+ if (a != null) {
+ logMessage(a.getAccessibleContext(), s);
+ } else {
+ logMessage(s);
+ }
+ }
+
+ protected static void logMessage(javax.accessibility.AccessibleContext ac, String s) {
+ if (ac != null) {
+ logMessage("[" + ac.getAccessibleRole() + "] "
+ + ac.getAccessibleName() + ": " + s);
+ } else {
+ logMessage(s);
+ }
+ }
+
+ protected static void logMessage(String s) {
+ System.err.println(s);
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleHypertextLog.java b/accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleHypertextLog.java
new file mode 100644
index 000000000000..f14da6d8280b
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleHypertextLog.java
@@ -0,0 +1,61 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.java.accessibility.logging;
+
+import com.sun.star.accessibility.*;
+import com.sun.star.uno.*;
+
+/** The AccessibleHypertextImpl mapps all calls to the java AccessibleHypertext
+ * interface to the corresponding methods of the UNO XAccessibleHypertext
+ * interface.
+ */
+public class XAccessibleHypertextLog extends XAccessibleTextLog
+ implements com.sun.star.accessibility.XAccessibleHypertext {
+
+ private com.sun.star.accessibility.XAccessibleHypertext unoObject;
+
+ /** Creates a new instance of XAccessibleTextLog */
+ public XAccessibleHypertextLog(XAccessibleHypertext xAccessibleHypertext) {
+ super(xAccessibleHypertext);
+ unoObject = xAccessibleHypertext;
+ }
+
+ public XAccessibleHyperlink getHyperLink(int param)
+ throws com.sun.star.lang.IndexOutOfBoundsException {
+ return unoObject.getHyperLink(param);
+ }
+
+ public int getHyperLinkCount() {
+ return unoObject.getHyperLinkCount();
+ }
+
+ public int getHyperLinkIndex(int param)
+ throws com.sun.star.lang.IndexOutOfBoundsException {
+ return unoObject.getHyperLinkIndex(param);
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleTextLog.java b/accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleTextLog.java
new file mode 100644
index 000000000000..4b415ee60c74
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleTextLog.java
@@ -0,0 +1,270 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+package org.openoffice.java.accessibility.logging;
+
+import org.openoffice.java.accessibility.*;
+
+
+/**
+ *
+ */
+public class XAccessibleTextLog
+ implements com.sun.star.accessibility.XAccessibleText {
+ private com.sun.star.accessibility.XAccessibleText unoObject;
+ private String name = "[Unknown] NoName";
+
+ /** Creates a new instance of XAccessibleTextLog */
+ public XAccessibleTextLog(
+ com.sun.star.accessibility.XAccessibleText xAccessibleText) {
+ unoObject = xAccessibleText;
+ setName(xAccessibleText);
+ }
+
+ private void setName(
+ com.sun.star.accessibility.XAccessibleText xAccessibleText) {
+ try {
+ com.sun.star.accessibility.XAccessibleContext unoAccessibleContext = (com.sun.star.accessibility.XAccessibleContext) com.sun.star.uno.UnoRuntime.queryInterface(com.sun.star.accessibility.XAccessibleContext.class,
+ xAccessibleText);
+
+ if (unoAccessibleContext != null) {
+ name = "[" +
+ AccessibleRoleAdapter.getAccessibleRole(unoAccessibleContext.getAccessibleRole()) +
+ "] " + unoAccessibleContext.getAccessibleName() + ": ";
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+
+ private String getPartString(short s) {
+ String part = "INVALID";
+
+ switch (s) {
+ case com.sun.star.accessibility.AccessibleTextType.CHARACTER:
+ part = "CHARACTER";
+
+ break;
+
+ case com.sun.star.accessibility.AccessibleTextType.WORD:
+ part = "WORD";
+
+ break;
+
+ case com.sun.star.accessibility.AccessibleTextType.SENTENCE:
+ part = "SENTENCE";
+
+ break;
+
+ case com.sun.star.accessibility.AccessibleTextType.LINE:
+ part = "LINE";
+
+ break;
+
+ case com.sun.star.accessibility.AccessibleTextType.ATTRIBUTE_RUN:
+ part = "ATTRIBUTE_RUN";
+
+ break;
+
+ default:
+ break;
+ }
+
+ return part;
+ }
+
+ private String dumpTextSegment(com.sun.star.accessibility.TextSegment ts) {
+ if (ts != null) {
+ return "(" + ts.SegmentStart + "," + ts.SegmentEnd + "," +
+ ts.SegmentText + ")";
+ }
+
+ return "NULL";
+ }
+
+ public boolean copyText(int param, int param1)
+ throws com.sun.star.lang.IndexOutOfBoundsException {
+ return unoObject.copyText(param, param1);
+ }
+
+ public int getCaretPosition() {
+ int pos = unoObject.getCaretPosition();
+ System.err.println(name + "getCaretPosition() returns " + pos);
+
+ return pos;
+ }
+
+ public char getCharacter(int param)
+ throws com.sun.star.lang.IndexOutOfBoundsException {
+ return unoObject.getCharacter(param);
+ }
+
+ public com.sun.star.beans.PropertyValue[] getCharacterAttributes(
+ int param, String[] str)
+ throws com.sun.star.lang.IndexOutOfBoundsException {
+ return unoObject.getCharacterAttributes(param, str);
+ }
+
+ public com.sun.star.awt.Rectangle getCharacterBounds(int param)
+ throws com.sun.star.lang.IndexOutOfBoundsException {
+ try {
+ com.sun.star.awt.Rectangle r = unoObject.getCharacterBounds(param);
+ System.err.println(name + "getCharacterBounds(" + param +
+ ") returns (" + r.X + "," + r.Y + "," + r.Width + "," +
+ r.Height + ")");
+
+ return r;
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ System.err.println("IndexOutOufBoundsException caught for " + name +
+ "getCharacterBounds(" + param + ")");
+ throw e;
+ }
+ }
+
+ public int getCharacterCount() {
+ return unoObject.getCharacterCount();
+ }
+
+ public int getIndexAtPoint(com.sun.star.awt.Point point) {
+ try {
+ int index = unoObject.getIndexAtPoint(point);
+ System.err.println(name + "getIndexAtPoint(" + point.X + ", " +
+ point.Y + ") returns " + index);
+
+ return index;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ System.err.println(name +
+ "RuntimeException caught for getIndexAtPoint(" + point.X +
+ ", " + point.Y + ")");
+ System.err.println(e.getMessage());
+ throw e;
+ }
+ }
+
+ public String getSelectedText() {
+ return unoObject.getSelectedText();
+ }
+
+ public int getSelectionEnd() {
+ return unoObject.getSelectionEnd();
+ }
+
+ public int getSelectionStart() {
+ return unoObject.getSelectionStart();
+ }
+
+ public String getText() {
+ return unoObject.getText();
+ }
+
+ public com.sun.star.accessibility.TextSegment getTextAtIndex(int param,
+ short param1)
+ throws com.sun.star.lang.IndexOutOfBoundsException,
+ com.sun.star.lang.IllegalArgumentException {
+ try {
+ com.sun.star.accessibility.TextSegment ts = unoObject.getTextAtIndex(param,
+ param1);
+ System.err.println(name + "getTextAtIndex(" +
+ getPartString(param1) + "," + param + ") returns " +
+ dumpTextSegment(ts));
+
+ return ts;
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ System.err.println("IndexOutOufBoundsException caught for " + name +
+ " getTextAtIndex(" + getPartString(param1) + "," + param1 +
+ ")");
+ throw e;
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ System.err.println("IllegalArgumentException caught for " + name +
+ " getTextAtIndex(" + getPartString(param1) + "," + param + ")");
+ throw e;
+ }
+ }
+
+ public com.sun.star.accessibility.TextSegment getTextBeforeIndex(
+ int param, short param1)
+ throws com.sun.star.lang.IndexOutOfBoundsException,
+ com.sun.star.lang.IllegalArgumentException {
+ try {
+ com.sun.star.accessibility.TextSegment ts = unoObject.getTextBeforeIndex(param,
+ param1);
+ System.err.println(name + " getTextBeforeIndex(" +
+ getPartString(param1) + "," + param + ") returns " +
+ dumpTextSegment(ts));
+
+ return ts;
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ System.err.println("IndexOutOufBoundsException caught for " + name +
+ " getTextBeforeIndex(" + getPartString(param1) + "," + param1 +
+ ")");
+ throw e;
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ System.err.println("IllegalArgumentException caught for " + name +
+ " getTextBeforeIndex(" + getPartString(param1) + "," + param +
+ ")");
+ throw e;
+ }
+ }
+
+ public com.sun.star.accessibility.TextSegment getTextBehindIndex(
+ int param, short param1)
+ throws com.sun.star.lang.IndexOutOfBoundsException,
+ com.sun.star.lang.IllegalArgumentException {
+ try {
+ com.sun.star.accessibility.TextSegment ts = unoObject.getTextBehindIndex(param,
+ param1);
+ System.err.println(name + " getTextBehindIndex(" +
+ getPartString(param1) + "," + param + ") returns " +
+ dumpTextSegment(ts));
+
+ return ts;
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ System.err.println("IndexOutOufBoundsException caught for " + name +
+ " getTextBehindIndex(" + getPartString(param1) + "," + param1 +
+ ")");
+ throw e;
+ } catch (com.sun.star.lang.IllegalArgumentException e) {
+ System.err.println("IllegalArgumentException caught for " + name +
+ " getTextBehindIndex(" + getPartString(param1) + "," + param +
+ ")");
+ throw e;
+ }
+ }
+
+ public String getTextRange(int param, int param1)
+ throws com.sun.star.lang.IndexOutOfBoundsException {
+ return unoObject.getTextRange(param, param1);
+ }
+
+ public boolean setCaretPosition(int param)
+ throws com.sun.star.lang.IndexOutOfBoundsException {
+ return unoObject.setCaretPosition(param);
+ }
+
+ public boolean setSelection(int param, int param1)
+ throws com.sun.star.lang.IndexOutOfBoundsException {
+ return unoObject.setSelection(param, param1);
+ }
+}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/makefile.mk b/accessibility/bridge/org/openoffice/java/accessibility/makefile.mk
new file mode 100755
index 000000000000..0d98760a31df
--- /dev/null
+++ b/accessibility/bridge/org/openoffice/java/accessibility/makefile.mk
@@ -0,0 +1,115 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJNAME = accessibility
+PRJ = ..$/..$/..$/..$/..
+TARGET = java_accessibility
+PACKAGE = org$/openoffice$/java$/accessibility
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+JAVADIR = $(OUT)$/misc$/java
+JARFILES = jurt.jar unoil.jar ridl.jar
+JAVAFILES = \
+ logging$/XAccessibleEventLog.java \
+ logging$/XAccessibleHypertextLog.java \
+ logging$/XAccessibleTextLog.java \
+ AbstractButton.java \
+ AccessibleActionImpl.java \
+ AccessibleComponentImpl.java \
+ AccessibleEditableTextImpl.java \
+ AccessibleExtendedState.java \
+ AccessibleHypertextImpl.java \
+ AccessibleIconImpl.java \
+ AccessibleKeyBinding.java \
+ AccessibleObjectFactory.java \
+ AccessibleRoleAdapter.java \
+ AccessibleSelectionImpl.java \
+ AccessibleStateAdapter.java \
+ AccessibleTextImpl.java \
+ AccessibleValueImpl.java \
+ Alert.java \
+ Application.java \
+ Button.java \
+ CheckBox.java \
+ ComboBox.java \
+ Component.java \
+ Container.java \
+ DescendantManager.java \
+ Dialog.java \
+ FocusTraversalPolicy.java \
+ Frame.java \
+ Icon.java \
+ Label.java \
+ List.java \
+ Menu.java \
+ MenuItem.java \
+ MenuContainer.java \
+ NativeFrame.java \
+ Paragraph.java \
+ RadioButton.java \
+ ScrollBar.java \
+ Separator.java \
+ Table.java \
+ TextComponent.java \
+ ToggleButton.java \
+ ToolTip.java \
+ Tree.java \
+ Window.java
+
+JAVACLASSFILES = $(foreach,i,$(JAVAFILES) $(CLASSDIR)$/$(PACKAGE)$/$(i:s/.java//).class) $(CLASSDIR)$/$(PACKAGE)$/Build.class
+
+JARTARGET = $(TARGET).jar
+JARCOMPRESS = TRUE
+JARCLASSDIRS = $(PACKAGE)
+
+# --- Targets ------------------------------------------------------
+
+.INCLUDE : target.mk
+
+# Enable logging in non-product only
+.IF "$(PRODUCT)"!=""
+DEBUGSWITCH = false
+PRODUCTSWITCH = true
+.ELSE
+PRODUCTSWITCH = false
+DEBUGSWITCH = true
+.ENDIF
+
+$(JAVADIR)$/$(PACKAGE)$/%.java: makefile.mk
+ @@-$(MKDIRHIER) $(JAVADIR)$/$(PACKAGE)
+ @-echo package org.openoffice.java.accessibility\; > $@
+ @-echo public class Build { >> $@
+ @-echo public static final boolean DEBUG = $(DEBUGSWITCH)\; >> $@
+ @-echo public static final boolean PRODUCT = $(PRODUCTSWITCH)\; >> $@
+ @-echo } >> $@
+
+$(CLASSDIR)$/$(PACKAGE)$/Build.class : $(JAVADIR)$/$(PACKAGE)$/Build.java
+ -$(JAVAC) -d $(CLASSDIR) $(JAVADIR)$/$(PACKAGE)$/Build.java
+
diff --git a/accessibility/bridge/source/java/WindowsAccessBridgeAdapter.cxx b/accessibility/bridge/source/java/WindowsAccessBridgeAdapter.cxx
new file mode 100644
index 000000000000..a281b3aa51a1
--- /dev/null
+++ b/accessibility/bridge/source/java/WindowsAccessBridgeAdapter.cxx
@@ -0,0 +1,317 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+
+//------------------------------------------------------------------------
+// includes
+//------------------------------------------------------------------------
+
+#include <WindowsAccessBridgeAdapter.h>
+
+#include <tools/prewin.h>
+#include <wtypes.h>
+#include <tools/postwin.h>
+#include <rtl/process.h>
+#include <tools/link.hxx>
+
+#ifndef _SVAPP_HXX
+#include <vcl/svapp.hxx>
+#endif
+#include <vcl/window.hxx>
+#include <vcl/sysdata.hxx>
+#include <uno/current_context.hxx>
+#include <uno/environment.h>
+#include <uno/mapping.hxx>
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/accessibility/XAccessible.hpp>
+
+#ifndef _JVMACCESS_UNOVIRTUALMACHINE_HXX_
+#include "jvmaccess/unovirtualmachine.hxx"
+#endif
+
+#ifndef _JVMACCESS_VIRTUALMACHINE_HXX_
+#include "jvmaccess/virtualmachine.hxx"
+#endif
+
+#include <osl/diagnose.h>
+
+using ::rtl::OUString;
+using ::com::sun::star::uno::Mapping;
+using ::com::sun::star::uno::Reference;
+using ::com::sun::star::uno::RuntimeException;
+using namespace ::com::sun::star::accessibility;
+
+long VCLEventListenerLinkFunc(void * pInst, void * pData);
+
+//------------------------------------------------------------------------
+// global vatiables
+//------------------------------------------------------------------------
+
+Link g_aEventListenerLink(NULL, VCLEventListenerLinkFunc);
+
+rtl::Reference< jvmaccess::UnoVirtualMachine > g_xUnoVirtualMachine;
+typelib_InterfaceTypeDescription * g_pTypeDescription = NULL;
+Mapping g_unoMapping;
+
+jclass g_jcWindowsAccessBridgeAdapter = NULL;
+jmethodID g_jmRegisterTopWindow = 0;
+jmethodID g_jmRevokeTopWindow = 0;
+
+//------------------------------------------------------------------------
+// functions
+//------------------------------------------------------------------------
+
+JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *, void *)
+{
+ return JNI_VERSION_1_2;
+}
+
+JNIEXPORT jbyteArray JNICALL
+Java_org_openoffice_accessibility_WindowsAccessBridgeAdapter_getProcessID(JNIEnv *pJNIEnv, jclass clazz)
+{
+ // Initialize global class and method references
+ g_jcWindowsAccessBridgeAdapter =
+ static_cast< jclass > (pJNIEnv->NewGlobalRef(clazz));
+ if (NULL == g_jcWindowsAccessBridgeAdapter) {
+ return 0; /* jni error occured */
+ }
+ g_jmRegisterTopWindow =
+ pJNIEnv->GetStaticMethodID(clazz, "registerTopWindow", "(ILcom/sun/star/accessibility/XAccessible;)V");
+ if (0 == g_jmRegisterTopWindow) {
+ return 0; /* jni error occured */
+ }
+ g_jmRevokeTopWindow =
+ pJNIEnv->GetStaticMethodID(clazz, "revokeTopWindow", "(ILcom/sun/star/accessibility/XAccessible;)V");
+ if (0 == g_jmRevokeTopWindow) {
+ return 0; /* jni error occured */
+ }
+
+ // Use the special protocol of XJavaVM.getJavaVM: If the passed in
+ // process ID has an extra 17th byte of value one, the returned any
+ // contains a pointer to a jvmaccess::UnoVirtualMachine, instead of
+ // the underlying JavaVM pointer:
+ jbyte processID[17];
+ rtl_getGlobalProcessId(reinterpret_cast<sal_uInt8 *> (processID));
+ // #i51265# we need a jvmaccess::UnoVirtualMachine pointer for the
+ // uno_getEnvironment() call later.
+ processID[16] = 1;
+
+ // Copy the result into a java byte[] and return.
+ jbyteArray jbaProcessID = pJNIEnv->NewByteArray(17);
+ pJNIEnv->SetByteArrayRegion(jbaProcessID, 0, 17, processID);
+ return jbaProcessID;
+}
+
+JNIEXPORT jboolean JNICALL
+Java_org_openoffice_accessibility_WindowsAccessBridgeAdapter_createMapping(JNIEnv *, jclass, jlong pointer)
+{
+ uno_Environment * pJava_environment = NULL;
+ uno_Environment * pUno_environment = NULL;
+
+ try {
+ // We get a non-refcounted pointer to a jvmaccess::VirtualMachine
+ // from the XJavaVM service (the pointer is guaranteed to be valid
+ // as long as our reference to the XJavaVM service lasts), and
+ // convert the non-refcounted pointer into a refcounted one
+ // immediately:
+ g_xUnoVirtualMachine = reinterpret_cast< jvmaccess::UnoVirtualMachine * >(pointer);
+
+ if ( g_xUnoVirtualMachine.is() )
+ {
+ OUString sJava(RTL_CONSTASCII_USTRINGPARAM("java"));
+ uno_getEnvironment(&pJava_environment, sJava.pData, g_xUnoVirtualMachine.get());
+
+ OUString sCppu_current_lb_name(RTL_CONSTASCII_USTRINGPARAM(CPPU_CURRENT_LANGUAGE_BINDING_NAME));
+ uno_getEnvironment(&pUno_environment, sCppu_current_lb_name.pData, NULL);
+
+ if ( pJava_environment && pUno_environment )
+ {
+ g_unoMapping = Mapping(pUno_environment, pJava_environment);
+ getCppuType((::com::sun::star::uno::Reference< XAccessible > *) 0).getDescription((typelib_TypeDescription **) & g_pTypeDescription);
+ }
+
+ if ( pJava_environment )
+ {
+ // release java environment
+ pJava_environment->release(pJava_environment);
+ pJava_environment = NULL;
+ }
+
+ if ( pUno_environment )
+ {
+ // release uno environment
+ pUno_environment->release(pUno_environment);
+ pUno_environment = NULL;
+ }
+ }
+ }
+
+ catch ( RuntimeException e)
+ {
+ OSL_TRACE("RuntimeException caught while initializing the mapping");
+ }
+
+ if ( (0 != g_jmRegisterTopWindow) && (0 != g_jmRevokeTopWindow) )
+ {
+ ::Application::AddEventListener(g_aEventListenerLink);
+ }
+ return JNI_TRUE;
+}
+
+JNIEXPORT void JNICALL JNI_OnUnload(JavaVM *jvm, void *)
+{
+ ::Application::RemoveEventListener(g_aEventListenerLink);
+
+ if ( NULL != g_jcWindowsAccessBridgeAdapter )
+ {
+ JNIEnv * pJNIEnv;
+ if ( ! jvm->GetEnv((void **) &pJNIEnv, JNI_VERSION_1_2) )
+ {
+ pJNIEnv->DeleteGlobalRef(g_jcWindowsAccessBridgeAdapter);
+ g_jcWindowsAccessBridgeAdapter = NULL;
+ }
+ }
+
+ if ( NULL != g_pTypeDescription )
+ {
+ typelib_typedescription_release( reinterpret_cast< typelib_TypeDescription * > (g_pTypeDescription) );
+ g_pTypeDescription = NULL;
+ }
+
+ g_unoMapping.clear();
+ g_xUnoVirtualMachine.clear();
+}
+
+HWND GetHWND(Window * pWindow)
+{
+ const SystemEnvData * pEnvData = pWindow->GetSystemData();
+ if (pEnvData != NULL)
+ {
+ return pEnvData->hWnd;
+ }
+ return (HWND) -1;
+}
+
+void handleWindowEvent(Window * pWindow, bool bShow)
+{
+ if ( pWindow && pWindow->IsTopWindow() )
+ {
+ ::com::sun::star::uno::Reference< XAccessible > xAccessible;
+
+ // Test for combo box - drop down floating windows first
+ Window * pParentWindow = pWindow->GetParent();
+
+ if ( pParentWindow )
+ {
+ try
+ {
+ // The parent window of a combo box floating window should have the role COMBO_BOX
+ ::com::sun::star::uno::Reference< XAccessible > xParentAccessible(pParentWindow->GetAccessible());
+ if ( xParentAccessible.is() )
+ {
+ ::com::sun::star::uno::Reference< XAccessibleContext > xParentAC(xParentAccessible->getAccessibleContext());
+ if ( xParentAC.is() && (AccessibleRole::COMBO_BOX == xParentAC->getAccessibleRole()) )
+ {
+ // O.k. - this is a combo box floating window corresponding to the child of role LIST of the parent.
+ // Let's not rely on a specific child order, just search for the child with the role LIST
+ sal_Int32 nCount = xParentAC->getAccessibleChildCount();
+ for ( sal_Int32 n = 0; (n < nCount) && !xAccessible.is(); n++)
+ {
+ ::com::sun::star::uno::Reference< XAccessible > xChild = xParentAC->getAccessibleChild(n);
+ if ( xChild.is() )
+ {
+ ::com::sun::star::uno::Reference< XAccessibleContext > xChildAC = xChild->getAccessibleContext();
+ if ( xChildAC.is() && (AccessibleRole::LIST == xChildAC->getAccessibleRole()) )
+ {
+ xAccessible = xChild;
+ }
+ }
+ }
+ }
+ }
+ }
+ catch (::com::sun::star::uno::RuntimeException e)
+ {
+ // Ignore show events that throw DisposedExceptions in getAccessibleContext(),
+ // but keep revoking these windows in hide(s).
+ if (bShow)
+ return;
+ }
+ }
+
+ // We have to rely on the fact that Window::GetAccessible()->getAccessibleContext() returns a valid XAccessibleContext
+ // also for other menus than menubar or toplevel popup window. Otherwise we had to traverse the hierarchy to find the
+ // context object to this menu floater. This makes the call to Window->IsMenuFloatingWindow() obsolete.
+ if ( ! xAccessible.is() )
+ xAccessible = pWindow->GetAccessible();
+
+ if ( xAccessible.is() && g_unoMapping.is() )
+ {
+ jobject * joXAccessible = reinterpret_cast < jobject * > (g_unoMapping.mapInterface(
+ xAccessible.get(), g_pTypeDescription));
+
+ if ( NULL != joXAccessible )
+ {
+ jvmaccess::VirtualMachine::AttachGuard aGuard(g_xUnoVirtualMachine->getVirtualMachine());
+ JNIEnv * pJNIEnv = aGuard.getEnvironment();
+
+ if ( NULL != pJNIEnv )
+ {
+ // g_jmRegisterTopWindow and g_jmRevokeTopWindow are ensured to be != 0 - otherwise
+ // the event listener would not have been attached.
+ pJNIEnv->CallStaticVoidMethod(g_jcWindowsAccessBridgeAdapter,
+ (bShow) ? g_jmRegisterTopWindow : g_jmRevokeTopWindow,
+ (jint) GetHWND(pWindow), joXAccessible );
+
+ // Clear any exception that might have been occured.
+ if (pJNIEnv->ExceptionCheck()) {
+ pJNIEnv->ExceptionClear();
+ }
+ }
+ }
+ }
+ }
+}
+
+long VCLEventListenerLinkFunc(void *, void * pData)
+{
+ ::VclSimpleEvent const * pEvent = (::VclSimpleEvent const *) pData;
+
+ switch (pEvent->GetId())
+ {
+ case VCLEVENT_WINDOW_SHOW:
+ handleWindowEvent(((::VclWindowEvent const *) pEvent)->GetWindow(), true);
+ break;
+ case VCLEVENT_WINDOW_HIDE:
+ handleWindowEvent(((::VclWindowEvent const *) pEvent)->GetWindow(), false);
+ break;
+ }
+
+ return 0;
+}
diff --git a/accessibility/bridge/source/java/exports.dxp b/accessibility/bridge/source/java/exports.dxp
new file mode 100644
index 000000000000..c97dba7d0047
--- /dev/null
+++ b/accessibility/bridge/source/java/exports.dxp
@@ -0,0 +1,4 @@
+JNI_OnLoad
+JNI_OnUnload
+Java_org_openoffice_accessibility_WindowsAccessBridgeAdapter_getProcessID
+Java_org_openoffice_accessibility_WindowsAccessBridgeAdapter_createMapping
diff --git a/accessibility/bridge/source/java/makefile.mk b/accessibility/bridge/source/java/makefile.mk
new file mode 100644
index 000000000000..6bb380725ac0
--- /dev/null
+++ b/accessibility/bridge/source/java/makefile.mk
@@ -0,0 +1,70 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJ=..$/..$/..
+PRJNAME=accessibility
+TARGET=accessbridge
+LIBTARGET=NO
+USE_DEFFILE=TRUE
+ENABLE_EXCEPTIONS=TRUE
+VERSIONOBJ=
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+# --- Files --------------------------------------------------------
+
+.IF "$(GUI)"=="WNT"
+
+SLOFILES= $(SLO)$/WindowsAccessBridgeAdapter.obj
+
+SHL1TARGET=java_uno_accessbridge
+SHL1IMPLIB=i$(SHL1TARGET)
+SHL1STDLIBS=$(VCLLIB) $(TOOLSLIB) $(JVMACCESSLIB) $(CPPULIB) $(SALLIB)
+SHL1OBJS=$(SLOFILES)
+SHL1VERSIONOBJ=
+
+DEF1NAME=$(SHL1TARGET)
+DEF1EXPORTFILE=exports.dxp
+
+SHL1HEADER=$(OUT)$/inc$/WindowsAccessBridgeAdapter.h
+
+.ENDIF # "$(GUI)"=="WNT"
+
+# --- Targets ------------------------------------------------------
+
+.INCLUDE : target.mk
+
+.IF "$(GUI)"=="WNT"
+
+$(SLO)$/WindowsAccessBridgeAdapter.obj : $(SHL1HEADER)
+
+$(SHL1HEADER) :
+ javah -classpath $(OUT)$/class -o $(SHL1HEADER) org.openoffice.accessibility.WindowsAccessBridgeAdapter
+
+.ENDIF # "$(GUI)"=="WNT"
diff --git a/accessibility/inc/accessibility/extended/AccessibleBrowseBox.hxx b/accessibility/inc/accessibility/extended/AccessibleBrowseBox.hxx
new file mode 100644
index 000000000000..fd86653ca5ed
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/AccessibleBrowseBox.hxx
@@ -0,0 +1,311 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+
+#ifndef ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOX_HXX
+#define ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOX_HXX
+
+#include <accessibility/extended/AccessibleBrowseBoxBase.hxx>
+#include <cppuhelper/weakref.hxx>
+#include <svtools/accessibletableprovider.hxx>
+
+
+#include <memory>
+
+// ============================================================================
+
+namespace accessibility {
+
+ class AccessibleBrowseBoxImpl;
+ class AccessibleBrowseBoxTable;
+
+// ============================================================================
+
+/** This class represents the complete accessible BrowseBox object. */
+class AccessibleBrowseBox : public AccessibleBrowseBoxBase
+{
+ friend class AccessibleBrowseBoxAccess;
+
+protected:
+ AccessibleBrowseBox(
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxCreator,
+ ::svt::IAccessibleTableProvider& _rBrowseBox
+ );
+
+ virtual ~AccessibleBrowseBox();
+
+ /** sets the XAccessible which created the context
+
+ <p>To be called only once, and only if in the ctor NULL was passed.</p>
+ */
+ void setCreator(
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxCreator
+ );
+
+ /** Cleans up members. */
+ using AccessibleBrowseBoxBase::disposing;
+ virtual void SAL_CALL disposing();
+
+protected:
+ // XAccessibleContext -----------------------------------------------------
+
+ /** @return The count of visible children. */
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The XAccessible interface of the specified child. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleChild( sal_Int32 nChildIndex )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return The role of this object (a table). */
+// virtual sal_Int16 SAL_CALL getAccessibleRole()
+// throw ( ::com::sun::star::uno::RuntimeException );
+
+ // XAccessibleComponent ---------------------------------------------------
+
+ /** @return
+ The accessible child rendered under the given point.
+ */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleAtPoint( const ::com::sun::star::awt::Point& rPoint )
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** Grabs the focus to the BrowseBox. */
+ virtual void SAL_CALL grabFocus()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The key bindings associated with this object. */
+ virtual ::com::sun::star::uno::Any SAL_CALL getAccessibleKeyBinding()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ // XServiceInfo -----------------------------------------------------------
+
+ /** @return
+ The name of this class.
+ */
+ virtual ::rtl::OUString SAL_CALL getImplementationName()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+public:
+ // helper functions
+ /** commitHeaderBarEvent commit the event at all listeners of the column/row header bar
+ @param nEventId
+ the event id
+ @param rNewValue
+ the new value
+ @param rOldValue
+ the old value
+ */
+ void commitHeaderBarEvent(sal_Int16 nEventId,
+ const ::com::sun::star::uno::Any& rNewValue,
+ const ::com::sun::star::uno::Any& rOldValue,sal_Bool _bColumnHeaderBar = sal_True);
+
+ // helper functions
+ /** commitTableEvent commit the event at all listeners of the table
+ @param nEventId
+ the event id
+ @param rNewValue
+ the new value
+ @param rOldValue
+ the old value
+ */
+ void commitTableEvent(sal_Int16 nEventId,
+ const ::com::sun::star::uno::Any& rNewValue,
+ const ::com::sun::star::uno::Any& rOldValue);
+
+ /** returns the accessible object for the row or the column header bar
+ */
+ inline ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible >
+ getHeaderBar( ::svt::AccessibleBrowseBoxObjType _eObjType )
+ {
+ return implGetHeaderBar(_eObjType);
+ }
+
+ /** returns the accessible object for the table representation
+ */
+ inline ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible >
+ getTable( )
+ {
+ return implGetTable();
+ }
+
+protected:
+ // internal virtual methods -----------------------------------------------
+
+ /** @attention This method requires locked mutex's and a living object.
+ @return The bounding box (VCL rect.) relative to the parent window. */
+ virtual Rectangle implGetBoundingBox();
+ /** @attention This method requires locked mutex's and a living object.
+ @return The bounding box (VCL rect.) in screen coordinates. */
+ virtual Rectangle implGetBoundingBoxOnScreen();
+
+ // internal helper methods ------------------------------------------------
+
+ /** This method creates (once) and returns the accessible data table child.
+ @attention This method requires locked mutex's and a living object.
+ @return The XAccessible interface of the data table. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > implGetTable();
+
+ /** This method creates (once) and returns the specified header bar.
+ @attention This method requires locked mutex's and a living object.
+ @return The XAccessible interface of the header bar. */
+ ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible >
+ implGetHeaderBar( ::svt::AccessibleBrowseBoxObjType eObjType );
+
+ /** This method returns one of the children that are always present:
+ Data table, row and column header bar or corner control.
+ @attention This method requires locked mutex's and a living object.
+ @return The XAccessible interface of the specified child. */
+ ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible >
+ implGetFixedChild( sal_Int32 nChildIndex );
+
+ /** This method creates and returns an accessible table.
+ @return An AccessibleBrowseBoxTable. */
+ virtual AccessibleBrowseBoxTable* createAccessibleTable();
+
+private:
+ // members ----------------------------------------------------------------
+ ::std::auto_ptr< AccessibleBrowseBoxImpl > m_pImpl;
+};
+
+// ============================================================================
+/** the XAccessible which creates/returns an AccessibleBrowseBox
+
+ <p>The instance holds it's XAccessibleContext with a hard reference, while
+ the contxt holds this instance weak.</p>
+*/
+typedef ::cppu::WeakImplHelper1 < ::com::sun::star::accessibility::XAccessible
+ > AccessibleBrowseBoxAccess_Base;
+
+class AccessibleBrowseBoxAccess :public AccessibleBrowseBoxAccess_Base
+ ,public ::svt::IAccessibleBrowseBox
+{
+private:
+ ::osl::Mutex m_aMutex;
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
+ m_xParent;
+ ::svt::IAccessibleTableProvider& m_rBrowseBox;
+
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
+ m_xContext;
+ AccessibleBrowseBox* m_pContext;
+ // note that this pointer is valid as long as m_xContext is valid!
+
+public:
+ AccessibleBrowseBoxAccess(
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
+ ::svt::IAccessibleTableProvider& _rBrowseBox
+ );
+
+ /// checks whether the accessible context is still alive
+ bool isContextAlive() const;
+
+ /// returns the AccessibleContext belonging to this Accessible
+ inline AccessibleBrowseBox* getContext() { return m_pContext; }
+ inline const AccessibleBrowseBox* getContext() const { return m_pContext; }
+
+protected:
+ virtual ~AccessibleBrowseBoxAccess();
+
+ // XAccessible
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
+ SAL_CALL getAccessibleContext() throw ( ::com::sun::star::uno::RuntimeException );
+
+ // IAccessibleBrowseBox
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
+ getMyself()
+ {
+ return this;
+ }
+ void dispose();
+ virtual sal_Bool isAlive() const
+ {
+ return isContextAlive();
+ }
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
+ getHeaderBar( ::svt::AccessibleBrowseBoxObjType _eObjType )
+ {
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > xAccessible;
+ AccessibleBrowseBox* pContext( getContext() );
+ if ( pContext )
+ xAccessible = pContext->getHeaderBar( _eObjType );
+ return xAccessible;
+ }
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
+ getTable()
+ {
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > xAccessible;
+ AccessibleBrowseBox* pContext( getContext() );
+ if ( pContext )
+ xAccessible = pContext->getTable();
+ return xAccessible;
+ }
+ virtual void commitHeaderBarEvent( sal_Int16 nEventId, const ::com::sun::star::uno::Any& rNewValue,
+ const ::com::sun::star::uno::Any& rOldValue, sal_Bool _bColumnHeaderBar )
+ {
+ AccessibleBrowseBox* pContext( getContext() );
+ if ( pContext )
+ pContext->commitHeaderBarEvent( nEventId, rNewValue, rOldValue, _bColumnHeaderBar );
+ }
+ virtual void commitTableEvent( sal_Int16 nEventId,
+ const ::com::sun::star::uno::Any& rNewValue, const ::com::sun::star::uno::Any& rOldValue )
+ {
+ AccessibleBrowseBox* pContext( getContext() );
+ if ( pContext )
+ pContext->commitTableEvent( nEventId, rNewValue, rOldValue );
+ }
+ virtual void commitEvent( sal_Int16 nEventId,
+ const ::com::sun::star::uno::Any& rNewValue, const ::com::sun::star::uno::Any& rOldValue )
+ {
+ AccessibleBrowseBox* pContext( getContext() );
+ if ( pContext )
+ pContext->commitEvent( nEventId, rNewValue, rOldValue );
+ }
+
+private:
+ AccessibleBrowseBoxAccess(); // never implemented
+ AccessibleBrowseBoxAccess( const AccessibleBrowseBoxAccess& ); // never implemented
+ AccessibleBrowseBoxAccess& operator=( const AccessibleBrowseBoxAccess& ); // never implemented
+};
+
+// ============================================================================
+} // namespace accessibility
+
+// ============================================================================
+
+#endif
+
diff --git a/accessibility/inc/accessibility/extended/AccessibleBrowseBoxBase.hxx b/accessibility/inc/accessibility/extended/AccessibleBrowseBoxBase.hxx
new file mode 100644
index 000000000000..dc43e500dadd
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/AccessibleBrowseBoxBase.hxx
@@ -0,0 +1,527 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+
+#ifndef ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXBASE_HXX
+#define ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXBASE_HXX
+
+#include <svtools/AccessibleBrowseBoxObjType.hxx>
+#include <tools/debug.hxx>
+#include <rtl/ustring.hxx>
+#include <tools/gen.hxx>
+#include <vcl/svapp.hxx>
+#include <cppuhelper/compbase5.hxx>
+#include <comphelper/broadcasthelper.hxx>
+#include <unotools/accessiblestatesethelper.hxx>
+#include <toolkit/helper/convert.hxx>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <com/sun/star/lang/DisposedException.hpp>
+#include <com/sun/star/awt/XWindow.hpp>
+#include <com/sun/star/accessibility/XAccessible.hpp>
+#include <com/sun/star/accessibility/XAccessibleContext.hpp>
+#include <com/sun/star/accessibility/XAccessibleComponent.hpp>
+#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp>
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <com/sun/star/awt/XFocusListener.hpp>
+#include <comphelper/accessibleeventnotifier.hxx>
+#include <comphelper/uno3.hxx>
+
+// ============================================================================
+
+class Window;
+
+namespace utl {
+ class AccessibleStateSetHelper;
+}
+
+namespace svt {
+ class IAccessibleTableProvider;
+}
+
+// ============================================================================
+
+namespace accessibility {
+
+// ============================================================================
+
+/** Aquire the solar mutex. */
+class BBSolarGuard : public ::vos::OGuard
+{
+public:
+ inline BBSolarGuard() : ::vos::OGuard( Application::GetSolarMutex() ) {}
+};
+
+// ============================================================================
+
+typedef ::cppu::WeakAggComponentImplHelper5<
+ ::com::sun::star::accessibility::XAccessibleContext,
+ ::com::sun::star::accessibility::XAccessibleComponent,
+ ::com::sun::star::accessibility::XAccessibleEventBroadcaster,
+ ::com::sun::star::awt::XFocusListener,
+ ::com::sun::star::lang::XServiceInfo >
+ AccessibleBrowseBoxImplHelper;
+
+/** The BrowseBox accessible objects inherit from this base class. It
+ implements basic functionality for various Accessibility interfaces and
+ the event broadcaster and contains the ::osl::Mutex. */
+class AccessibleBrowseBoxBase :
+ public ::comphelper::OBaseMutex,
+ public AccessibleBrowseBoxImplHelper
+{
+public:
+ /** Constructor sets specified name and description. If the constant of a
+ text is BBTEXT_NONE, the derived class has to set the text via
+ implSetName() and implSetDescription() (in Ctor) or later via
+ setAccessibleName() and setAccessibleDescription() (these methods
+ notify the listeners about the change).
+ @param rxParent XAccessible interface of the parent object.
+ @param rBrowseBox The BrowseBox control.
+ @param eNameText The constant for the name text.
+ @param eDescrText The constant for the description text. */
+ AccessibleBrowseBoxBase(
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible >& rxParent,
+ ::svt::IAccessibleTableProvider& rBrowseBox,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
+ ::svt::AccessibleBrowseBoxObjType eObjType );
+
+ /** Constructor sets specified name and description.
+ @param rxParent XAccessible interface of the parent object.
+ @param rBrowseBox The BrowseBox control.
+ @param rName The name of this object.
+ @param rDescription The description text of this object. */
+ AccessibleBrowseBoxBase(
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible >& rxParent,
+ ::svt::IAccessibleTableProvider& rBrowseBox,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
+ ::svt::AccessibleBrowseBoxObjType eObjType,
+ const ::rtl::OUString& rName,
+ const ::rtl::OUString& rDescription );
+
+protected:
+ virtual ~AccessibleBrowseBoxBase();
+
+ /** Commits DeFunc event to listeners and cleans up members. */
+ virtual void SAL_CALL disposing();
+
+public:
+ // XAccessibleContext -----------------------------------------------------
+
+ /** @return A reference to the parent accessible object. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleParent()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The index of this object among the parent's children. */
+ virtual sal_Int32 SAL_CALL getAccessibleIndexInParent()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return
+ The description of this object.
+ */
+ virtual ::rtl::OUString SAL_CALL getAccessibleDescription()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return
+ The name of this object.
+ */
+ virtual ::rtl::OUString SAL_CALL getAccessibleName()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return
+ The relation set (the BrowseBox does not have one).
+ */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL
+ getAccessibleRelationSet()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The set of current states. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL
+ getAccessibleStateSet()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The parent's locale. */
+ virtual ::com::sun::star::lang::Locale SAL_CALL getLocale()
+ throw ( ::com::sun::star::accessibility::IllegalAccessibleComponentStateException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return
+ The role of this object. Panel, ROWHEADER, COLUMNHEADER, TABLE, TABLE_CELL are supported.
+ */
+ virtual sal_Int16 SAL_CALL getAccessibleRole()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /* Derived classes have to implement:
+ - getAccessibleChildCount,
+ - getAccessibleChild,
+ - getAccessibleRole.
+ Derived classes may overwrite getAccessibleIndexInParent to increase
+ performance. */
+
+ // XAccessibleComponent ---------------------------------------------------
+
+ /** @return
+ <TRUE/>, if the point lies within the bounding box of this object. */
+ virtual sal_Bool SAL_CALL containsPoint( const ::com::sun::star::awt::Point& rPoint )
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The bounding box of this object. */
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL getBounds()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return
+ The upper left corner of the bounding box relative to the parent. */
+ virtual ::com::sun::star::awt::Point SAL_CALL getLocation()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return
+ The upper left corner of the bounding box in screen coordinates. */
+ virtual ::com::sun::star::awt::Point SAL_CALL getLocationOnScreen()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The size of the bounding box. */
+ virtual ::com::sun::star::awt::Size SAL_CALL getSize()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return <TRUE/>, if the object is showing. */
+ virtual sal_Bool SAL_CALL isShowing()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return <TRUE/>, if the object is visible. */
+ virtual sal_Bool SAL_CALL isVisible()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return <TRUE/>, if the object can accept the focus. */
+ virtual sal_Bool SAL_CALL isFocusTraversable()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XFocusListener
+ virtual void SAL_CALL disposing( const ::com::sun::star::lang::EventObject& Source ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL focusGained( const ::com::sun::star::awt::FocusEvent& e ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL focusLost( const ::com::sun::star::awt::FocusEvent& e ) throw (::com::sun::star::uno::RuntimeException);
+
+ /* Derived classes have to implement:
+ - getAccessibleAt,
+ - grabFocus,
+ - getAccessibleKeyBinding. */
+
+ /** @return
+ No key bindings supported by default.
+ */
+ virtual ::com::sun::star::uno::Any SAL_CALL getAccessibleKeyBinding()
+ throw ( ::com::sun::star::uno::RuntimeException );
+ /** @return
+ The accessible child rendered under the given point.
+ */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleAtPoint( const ::com::sun::star::awt::Point& rPoint )
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ // XAccessibleEventBroadcaster --------------------------------------------
+
+ /** Adds a new event listener */
+ using cppu::WeakAggComponentImplHelperBase::addEventListener;
+ virtual void SAL_CALL addEventListener(
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessibleEventListener>& rxListener )
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** Removes an event listener. */
+ using cppu::WeakAggComponentImplHelperBase::removeEventListener;
+ virtual void SAL_CALL removeEventListener(
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessibleEventListener>& rxListener )
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ // XTypeProvider ----------------------------------------------------------
+
+ /** @return An unique implementation ID. */
+ virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ // XServiceInfo -----------------------------------------------------------
+
+ /** @return Whether the specified service is supported by this class. */
+ virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& rServiceName )
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return A list of all supported services. */
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL
+ getSupportedServiceNames()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /* Derived classes have to implement:
+ - getImplementationName. */
+
+ // helper methods ---------------------------------------------------------
+
+ /** @return The BrowseBox object type. */
+ inline ::svt::AccessibleBrowseBoxObjType getType() const;
+
+ /** Changes the name of the object and notifies listeners. */
+ void setAccessibleName( const ::rtl::OUString& rName );
+ /** Changes the description of the object and notifies listeners. */
+ void setAccessibleDescription( const ::rtl::OUString& rDescription );
+
+ /** Commits an event to all listeners. */
+ void commitEvent(
+ sal_Int16 nEventId,
+ const ::com::sun::star::uno::Any& rNewValue,
+
+ const ::com::sun::star::uno::Any& rOldValue );
+ /** @return <TRUE/>, if the object is not disposed or disposing. */
+ sal_Bool isAlive() const;
+
+protected:
+ // internal virtual methods -----------------------------------------------
+
+ /** Determines whether the BrowseBox control is really showing inside of
+ its parent accessible window. Derived classes may implement different
+ behaviour.
+ @attention This method requires locked mutex's and a living object.
+ @return <TRUE/>, if the object is really showing. */
+ virtual sal_Bool implIsShowing();
+
+ /** Derived classes return the bounding box relative to the parent window.
+ @attention This method requires locked mutex's and a living object.
+ @return The bounding box (VCL rect.) relative to the parent window. */
+ virtual Rectangle implGetBoundingBox() = 0;
+ /** Derived classes return the bounding box in screen coordinates.
+ @attention This method requires locked mutex's and a living object.
+ @return The bounding box (VCL rect.) in screen coordinates. */
+ virtual Rectangle implGetBoundingBoxOnScreen() = 0;
+
+ /** Creates a new AccessibleStateSetHelper and fills it with states of the
+ current object. This method calls FillStateSet at the BrowseBox which
+ fills it with more states depending on the object type. Derived classes
+ may overwrite this method and add more states.
+ @attention This method requires locked mutex's.
+ @return A filled AccessibleStateSetHelper. */
+ virtual ::utl::AccessibleStateSetHelper* implCreateStateSetHelper();
+
+ // internal helper methods ------------------------------------------------
+
+ /** @throws <type>DisposedException</type> If the object is not alive. */
+ void ensureIsAlive() const
+ throw ( ::com::sun::star::lang::DisposedException );
+
+ /** @return The ::osl::Mutex member provided by the class OBaseMutex. */
+ inline ::osl::Mutex& getOslMutex();
+ /** @return Pointer to the global ::osl::Mutex. */
+ static inline ::osl::Mutex* getOslGlobalMutex();
+
+ /** Changes the name of the object (flat assignment, no notify).
+ @attention This method requires a locked mutex. */
+ inline void implSetName( const ::rtl::OUString& rName );
+ /** Changes the description of the object (flat assignment, no notify).
+ @attention This method requires a locked mutex. */
+ inline void implSetDescription( const ::rtl::OUString& rDescription );
+
+ /** Locks all mutex's and calculates the bounding box relative to the
+ parent window.
+ @return The bounding box (VCL rect.) relative to the parent object. */
+ Rectangle getBoundingBox()
+ throw ( ::com::sun::star::lang::DisposedException );
+ /** Locks all mutex's and calculates the bounding box in screen
+ coordinates.
+ @return The bounding box (VCL rect.) in screen coordinates. */
+ Rectangle getBoundingBoxOnScreen()
+ throw ( ::com::sun::star::lang::DisposedException );
+
+ /** Creates a new UUID, if rId is empty.
+ @attention This method requires locked global mutex to prevent double
+ creation of an UUID. */
+ static void implCreateUuid( ::com::sun::star::uno::Sequence< sal_Int8 >& rId );
+
+ ::comphelper::AccessibleEventNotifier::TClientId getClientId() const { return m_aClientId; }
+ void setClientId(::comphelper::AccessibleEventNotifier::TClientId _aNewClientId) { m_aClientId = _aNewClientId; }
+
+public:
+ // public versions of internal helper methods, with access control
+ struct AccessControl { friend class SolarMethodGuard; private: AccessControl() { } };
+
+ inline ::osl::Mutex& getMutex( const AccessControl& ) { return getOslMutex(); }
+ inline void ensureIsAlive( const AccessControl& ) { ensureIsAlive(); }
+
+protected:
+ // members ----------------------------------------------------------------
+
+ /** The parent accessible object. */
+ ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > mxParent;
+ /** The VCL BrowseBox control. */
+ ::svt::IAccessibleTableProvider* mpBrowseBox;
+
+ /** This is the window which get all the nice focus events
+ */
+ ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow > m_xFocusWindow;
+
+private:
+ /** Localized name. */
+ ::rtl::OUString maName;
+ /** Localized description text. */
+ ::rtl::OUString maDescription;
+
+ /** The type of this object (for names, descriptions, state sets, ...). */
+ ::svt::AccessibleBrowseBoxObjType meObjType;
+
+ ::comphelper::AccessibleEventNotifier::TClientId m_aClientId;
+};
+
+// ============================================================================
+// a version of AccessibleBrowseBoxBase which implements not only the XAccessibleContext,
+// but also the XAccessible
+
+typedef ::cppu::ImplHelper1 < ::com::sun::star::accessibility::XAccessible
+ > BrowseBoxAccessibleElement_Base;
+
+class BrowseBoxAccessibleElement
+ :public AccessibleBrowseBoxBase
+ ,public BrowseBoxAccessibleElement_Base
+{
+protected:
+ /** Constructor sets specified name and description. If the constant of a
+ text is BBTEXT_NONE, the derived class has to set the text via
+ implSetName() and implSetDescription() (in Ctor) or later via
+ setAccessibleName() and setAccessibleDescription() (these methods
+ notify the listeners about the change).
+
+ @param rxParent XAccessible interface of the parent object.
+ @param rBrowseBox The BrowseBox control.
+ @param eNameText The constant for the name text.
+ @param eDescrText The constant for the description text.
+ */
+ BrowseBoxAccessibleElement(
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible >& rxParent,
+ ::svt::IAccessibleTableProvider& rBrowseBox,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
+ ::svt::AccessibleBrowseBoxObjType eObjType );
+
+ /** Constructor sets specified name and description.
+
+ @param rxParent XAccessible interface of the parent object.
+ @param rBrowseBox The BrowseBox control.
+ @param rName The name of this object.
+ @param rDescription The description text of this object.
+ */
+ BrowseBoxAccessibleElement(
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible >& rxParent,
+ ::svt::IAccessibleTableProvider& rBrowseBox,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
+ ::svt::AccessibleBrowseBoxObjType eObjType,
+ const ::rtl::OUString& rName,
+ const ::rtl::OUString& rDescription );
+
+public:
+ // XInterface
+ DECLARE_XINTERFACE( )
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER( )
+
+protected:
+ virtual ~BrowseBoxAccessibleElement();
+
+protected:
+ // XAccessible ------------------------------------------------------------
+
+ /** @return The XAccessibleContext interface of this object. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL
+ getAccessibleContext()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+private:
+ BrowseBoxAccessibleElement(); // never implemented
+ BrowseBoxAccessibleElement( const BrowseBoxAccessibleElement& ); // never implemented
+ BrowseBoxAccessibleElement& operator=( const BrowseBoxAccessibleElement& ); // never implemented
+};
+
+// ============================================================================
+// a helper class for protecting methods which need to lock the solar mutex in addition to the own mutex
+
+typedef ::osl::MutexGuard OslMutexGuard;
+
+class SolarMethodGuard : public BBSolarGuard, public OslMutexGuard
+{
+public:
+ inline SolarMethodGuard( AccessibleBrowseBoxBase& _rOwner, bool _bEnsureAlive = true )
+ :BBSolarGuard( )
+ ,OslMutexGuard( _rOwner.getMutex( AccessibleBrowseBoxBase::AccessControl() ) )
+ {
+ if ( _bEnsureAlive )
+ _rOwner.ensureIsAlive( AccessibleBrowseBoxBase::AccessControl() );
+ }
+};
+
+// inlines --------------------------------------------------------------------
+
+inline ::svt::AccessibleBrowseBoxObjType AccessibleBrowseBoxBase::getType() const
+{
+ return meObjType;
+}
+
+inline ::osl::Mutex& AccessibleBrowseBoxBase::getOslMutex()
+{
+ return m_aMutex;
+}
+
+inline ::osl::Mutex* AccessibleBrowseBoxBase::getOslGlobalMutex()
+{
+ return ::osl::Mutex::getGlobalMutex();
+}
+
+inline void AccessibleBrowseBoxBase::implSetName(
+ const ::rtl::OUString& rName )
+{
+ maName = rName;
+}
+
+inline void AccessibleBrowseBoxBase::implSetDescription(
+ const ::rtl::OUString& rDescription )
+{
+ maDescription = rDescription;
+}
+
+// ============================================================================
+
+} // namespace accessibility
+
+// ============================================================================
+
+#endif
+
diff --git a/accessibility/inc/accessibility/extended/AccessibleBrowseBoxCheckBoxCell.hxx b/accessibility/inc/accessibility/extended/AccessibleBrowseBoxCheckBoxCell.hxx
new file mode 100644
index 000000000000..5ab160535aa0
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/AccessibleBrowseBoxCheckBoxCell.hxx
@@ -0,0 +1,95 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXCHECKBOXCELL_HXX
+#define ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXCHECKBOXCELL_HXX
+
+#include <com/sun/star/accessibility/XAccessibleValue.hpp>
+#include <com/sun/star/accessibility/XAccessible.hpp>
+#include <com/sun/star/lang/XTypeProvider.hpp>
+#ifndef ACCESSIBILITY_EXT_BROWSE_BOX_CELL_HXX
+#include "accessibility/extended/accessiblebrowseboxcell.hxx"
+#endif
+#include <cppuhelper/implbase2.hxx>
+#include <vcl/wintypes.hxx>
+// ============================================================================
+namespace accessibility
+{
+// ============================================================================
+ typedef ::cppu::ImplHelper2 < ::com::sun::star::accessibility::XAccessible,
+ ::com::sun::star::accessibility::XAccessibleValue
+ > AccessibleCheckBoxCell_BASE;
+
+ class AccessibleCheckBoxCell : public AccessibleBrowseBoxCell
+ ,public AccessibleCheckBoxCell_BASE
+ {
+ private:
+ TriState m_eState;
+ BOOL m_bEnabled;
+ BOOL m_bIsTriState;
+
+ protected:
+ virtual ~AccessibleCheckBoxCell() {}
+
+ virtual ::utl::AccessibleStateSetHelper* implCreateStateSetHelper();
+
+ public:
+ AccessibleCheckBoxCell(const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
+ ::svt::IAccessibleTableProvider& _rBrowseBox,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
+ sal_Int32 _nRowPos,
+ sal_uInt16 _nColPos,
+ const TriState& _eState,
+ sal_Bool _bEnabled,
+ sal_Bool _bIsTriState = sal_True);
+
+ // XInterface
+ DECLARE_XINTERFACE( )
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER( )
+
+ // XAccessible
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleContext
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw ( ::com::sun::star::uno::RuntimeException );
+ virtual ::sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
+
+
+ // XAccessibleValue
+ virtual ::com::sun::star::uno::Any SAL_CALL getCurrentValue( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setCurrentValue( const ::com::sun::star::uno::Any& aNumber ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Any SAL_CALL getMaximumValue( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Any SAL_CALL getMinimumValue( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // internal
+ void SetChecked( sal_Bool _bChecked );
+ };
+}
+#endif // ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXCHECKBOXCELL_HXX
+
diff --git a/accessibility/inc/accessibility/extended/AccessibleBrowseBoxHeaderBar.hxx b/accessibility/inc/accessibility/extended/AccessibleBrowseBoxHeaderBar.hxx
new file mode 100644
index 000000000000..ac0b2761eb1f
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/AccessibleBrowseBoxHeaderBar.hxx
@@ -0,0 +1,281 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+
+#ifndef ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXHEADERBAR_HXX
+#define ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXHEADERBAR_HXX
+
+#include "accessibility/extended/AccessibleBrowseBoxTableBase.hxx"
+#include <cppuhelper/implbase1.hxx>
+#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
+
+// ============================================================================
+
+namespace accessibility {
+
+// ============================================================================
+
+typedef ::cppu::ImplHelper1<
+ ::com::sun::star::accessibility::XAccessibleSelection >
+ AccessibleBrowseBoxHeaderBarImplHelper;
+
+/** This class represents the accessible object of a header bar of a BrowseBox
+ control (row or column header bar). This object supports the
+ XAccessibleSelection interface. Selecting a child of this object selects
+ complete rows or columns of the data table. */
+class AccessibleBrowseBoxHeaderBar :
+ public AccessibleBrowseBoxTableBase,
+ public AccessibleBrowseBoxHeaderBarImplHelper
+{
+public:
+ /** @param eObjType One of the two allowed types BBTYPE_ROWHEADERBAR or
+ BBTYPE_COLUMNHEADERBAR. */
+ AccessibleBrowseBoxHeaderBar(
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible >& rxParent,
+ ::svt::IAccessibleTableProvider& rBrowseBox,
+ ::svt::AccessibleBrowseBoxObjType eObjType );
+
+protected:
+ virtual ~AccessibleBrowseBoxHeaderBar();
+
+public:
+ // XAccessibleContext -----------------------------------------------------
+
+ /** @return
+ The XAccessible interface of the specified child.
+ */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleChild( sal_Int32 nChildIndex )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return The index of this object among the parent's children. */
+ virtual sal_Int32 SAL_CALL getAccessibleIndexInParent()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ // XAccessibleComponent ---------------------------------------------------
+
+ /** @return The accessible child rendered under the given point. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleAtPoint( const ::com::sun::star::awt::Point& rPoint )
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** Grabs the focus to (the current cell of) the data table. */
+ virtual void SAL_CALL grabFocus()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The key bindings associated with this object. */
+ virtual ::com::sun::star::uno::Any SAL_CALL getAccessibleKeyBinding()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ // XAccessibleTable -------------------------------------------------------
+
+ /** @return The description text of the specified row. */
+ virtual ::rtl::OUString SAL_CALL
+ getAccessibleRowDescription( sal_Int32 nRow )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return The description text of the specified column. */
+ virtual ::rtl::OUString SAL_CALL
+ getAccessibleColumnDescription( sal_Int32 nColumn )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return The XAccessibleTable interface of the row header bar. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessibleTable > SAL_CALL
+ getAccessibleRowHeaders()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The XAccessibleTable interface of the column header bar. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessibleTable > SAL_CALL
+ getAccessibleColumnHeaders()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return An index list of completely selected rows. */
+ virtual ::com::sun::star::uno::Sequence< sal_Int32 > SAL_CALL
+ getSelectedAccessibleRows()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return An index list of completely selected columns. */
+ virtual ::com::sun::star::uno::Sequence< sal_Int32 > SAL_CALL
+ getSelectedAccessibleColumns()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return <TRUE/>, if the specified row is completely selected. */
+ virtual sal_Bool SAL_CALL isAccessibleRowSelected( sal_Int32 nRow )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return <TRUE/>, if the specified column is completely selected. */
+ virtual sal_Bool SAL_CALL isAccessibleColumnSelected( sal_Int32 nColumn )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return The XAccessible interface of the cell object at the specified
+ cell position. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleCellAt( sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return <TRUE/>, if the specified cell is selected. */
+ virtual sal_Bool SAL_CALL isAccessibleSelected( sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ // XAccessibleSelection ---------------------------------------------------
+
+ /** Selects the specified child (row or column of the table). */
+ virtual void SAL_CALL selectAccessibleChild( sal_Int32 nChildIndex )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return <TRUE/>, if the specified child (row/column) is selected. */
+ virtual sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int32 nChildIndex )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** Clears the complete selection. */
+ virtual void SAL_CALL clearAccessibleSelection()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** Selects all children or first, if multiselection is not supported. */
+ virtual void SAL_CALL selectAllAccessibleChildren()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The number of selected rows/columns. */
+ virtual sal_Int32 SAL_CALL getSelectedAccessibleChildCount()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The specified selected row/column. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** Removes the specified row/column from the selection. */
+ virtual void SAL_CALL deselectAccessibleChild( sal_Int32 nSelectedChildIndex )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ // XInterface -------------------------------------------------------------
+
+ /** Queries for a new interface. */
+ ::com::sun::star::uno::Any SAL_CALL queryInterface(
+ const ::com::sun::star::uno::Type& rType )
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** Aquires the object (calls acquire() on base class). */
+ virtual void SAL_CALL acquire() throw ();
+
+ /** Releases the object (calls release() on base class). */
+ virtual void SAL_CALL release() throw ();
+
+ // XServiceInfo -----------------------------------------------------------
+
+ /** @return The name of this class. */
+ virtual ::rtl::OUString SAL_CALL getImplementationName()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return An unique implementation ID. */
+ virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+protected:
+ // internal virtual methods -----------------------------------------------
+
+ /** @attention This method requires locked mutex's and a living object.
+ @return The bounding box (VCL rect.) relative to the parent window. */
+ virtual Rectangle implGetBoundingBox();
+ /** @attention This method requires locked mutex's and a living object.
+ @return The bounding box (VCL rect.) in screen coordinates. */
+ virtual Rectangle implGetBoundingBoxOnScreen();
+
+ /** @attention This method requires locked mutex's and a living object.
+ @return The count of used rows. */
+ virtual sal_Int32 implGetRowCount() const;
+ /** @attention This method requires locked mutex's and a living object.
+ @return The count of used columns. */
+ virtual sal_Int32 implGetColumnCount() const;
+
+ // internal helper methods ------------------------------------------------
+
+ /** @return <TRUE/>, if the objects is a header bar for rows. */
+ inline sal_Bool isRowBar() const;
+ /** @return <TRUE/>, if the objects is a header bar for columns. */
+ inline sal_Bool isColumnBar() const;
+
+ /** Returns the specified row or column. Uses one of the parameters,
+ depending on object type.
+ @attention This method requires locked mutex's and a living object.
+ @return The XAccessible interface of the specified column/row. */
+ ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible >
+ implGetChild( sal_Int32 nRow, sal_uInt16 nColumnPos );
+
+ /** @attention This method requires locked mutex's and a living object.
+ @return The absolute child index from the index of selected children.
+ @throws <type>IndexOutOfBoundsException</type>
+ If the specified index is invalid. */
+ sal_Int32 implGetChildIndexFromSelectedIndex( sal_Int32 nSelectedChildIndex )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException );
+
+ /** @attention This method requires locked mutex's and a living object.
+ @throws <type>IndexOutOfBoundsException</type>
+ If the specified row/column index (depending on type) is invalid. */
+ void ensureIsValidHeaderIndex( sal_Int32 nIndex )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException );
+};
+
+// inlines --------------------------------------------------------------------
+
+inline sal_Bool AccessibleBrowseBoxHeaderBar::isRowBar() const
+{
+ return getType() == ::svt::BBTYPE_ROWHEADERBAR;
+}
+
+inline sal_Bool AccessibleBrowseBoxHeaderBar::isColumnBar() const
+{
+ return getType() == ::svt::BBTYPE_COLUMNHEADERBAR;
+}
+
+// ============================================================================
+
+} // namespace accessibility
+
+// ============================================================================
+
+#endif
+
diff --git a/accessibility/inc/accessibility/extended/AccessibleBrowseBoxHeaderCell.hxx b/accessibility/inc/accessibility/extended/AccessibleBrowseBoxHeaderCell.hxx
new file mode 100644
index 000000000000..68d4405ff25b
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/AccessibleBrowseBoxHeaderCell.hxx
@@ -0,0 +1,81 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXHEADERCELL_HXX
+#define ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXHEADERCELL_HXX
+
+#include "accessibility/extended/AccessibleBrowseBoxBase.hxx"
+
+namespace accessibility
+{
+ class AccessibleBrowseBoxHeaderCell : public BrowseBoxAccessibleElement
+ {
+ sal_Int32 m_nColumnRowId;
+ public:
+ AccessibleBrowseBoxHeaderCell(sal_Int32 _nColumnRowId,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& rxParent,
+ ::svt::IAccessibleTableProvider& _rBrowseBox,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
+ ::svt::AccessibleBrowseBoxObjType _eObjType);
+ /** @return The count of visible children. */
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount() throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The XAccessible interface of the specified child. */
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleChild( sal_Int32 nChildIndex ) throw ( ::com::sun::star::lang::IndexOutOfBoundsException,::com::sun::star::uno::RuntimeException );
+
+ /** @return The index of this object among the parent's children. */
+ virtual sal_Int32 SAL_CALL getAccessibleIndexInParent() throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** Grabs the focus to the BrowseBox. */
+ virtual void SAL_CALL grabFocus() throw ( ::com::sun::star::uno::RuntimeException );
+
+ inline sal_Bool isRowBarCell() const
+ {
+ return getType() == ::svt::BBTYPE_ROWHEADERCELL;
+ }
+
+ /** @return
+ The name of this class.
+ */
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** Creates a new AccessibleStateSetHelper and fills it with states of the
+ current object.
+ @return
+ A filled AccessibleStateSetHelper.
+ */
+ ::utl::AccessibleStateSetHelper* implCreateStateSetHelper();
+
+ protected:
+ virtual Rectangle implGetBoundingBox();
+
+ virtual Rectangle implGetBoundingBoxOnScreen();
+ };
+}
+
+#endif // ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXHEADERCELL_HXX
+
diff --git a/accessibility/inc/accessibility/extended/AccessibleBrowseBoxTable.hxx b/accessibility/inc/accessibility/extended/AccessibleBrowseBoxTable.hxx
new file mode 100644
index 000000000000..afb345487239
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/AccessibleBrowseBoxTable.hxx
@@ -0,0 +1,175 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+
+#ifndef ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXTABLE_HXX
+#define ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXTABLE_HXX
+
+#include "accessibility/extended/AccessibleBrowseBoxTableBase.hxx"
+
+// ============================================================================
+
+namespace accessibility {
+
+// ============================================================================
+
+/** This class represents the accessible object of the data table of a
+ BrowseBox control. */
+class AccessibleBrowseBoxTable : public AccessibleBrowseBoxTableBase
+{
+ friend class AccessibleBrowseBox; // to create header bars
+
+public:
+ AccessibleBrowseBoxTable(
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible >& rxParent,
+ ::svt::IAccessibleTableProvider& rBrowseBox );
+
+protected:
+ virtual ~AccessibleBrowseBoxTable();
+
+public:
+ // XAccessibleContext -----------------------------------------------------
+
+ /** @return The XAccessible interface of the specified child. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleChild( sal_Int32 nChildIndex )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return The index of this object among the parent's children. */
+ virtual sal_Int32 SAL_CALL getAccessibleIndexInParent()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ // XAccessibleComponent ---------------------------------------------------
+
+ /** @return The accessible child rendered under the given point. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleAtPoint( const ::com::sun::star::awt::Point& rPoint )
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** Grabs the focus to (the current cell of) the data table. */
+ virtual void SAL_CALL grabFocus()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The key bindings associated with this object. */
+ virtual ::com::sun::star::uno::Any SAL_CALL getAccessibleKeyBinding()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ // XAccessibleTable -------------------------------------------------------
+
+ /** @return The description text of the specified row. */
+ virtual ::rtl::OUString SAL_CALL getAccessibleRowDescription( sal_Int32 nRow )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return The description text of the specified column. */
+ virtual ::rtl::OUString SAL_CALL getAccessibleColumnDescription( sal_Int32 nColumn )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return The XAccessibleTable interface of the row header bar. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessibleTable > SAL_CALL
+ getAccessibleRowHeaders()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The XAccessibleTable interface of the column header bar. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessibleTable > SAL_CALL
+ getAccessibleColumnHeaders()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return An index list of completely selected rows. */
+ virtual ::com::sun::star::uno::Sequence< sal_Int32 > SAL_CALL
+ getSelectedAccessibleRows()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return An index list of completely selected columns. */
+ virtual ::com::sun::star::uno::Sequence< sal_Int32 > SAL_CALL
+ getSelectedAccessibleColumns()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return <TRUE/>, if the specified row is completely selected. */
+ virtual sal_Bool SAL_CALL isAccessibleRowSelected( sal_Int32 nRow )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return <TRUE/>, if the specified column is completely selected. */
+ virtual sal_Bool SAL_CALL isAccessibleColumnSelected( sal_Int32 nColumn )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return The XAccessible interface of the cell object at the specified
+ cell position. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleCellAt( sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return <TRUE/>, if the specified cell is selected. */
+ virtual sal_Bool SAL_CALL isAccessibleSelected( sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ // XServiceInfo -----------------------------------------------------------
+
+ /** @return The name of this class. */
+ virtual ::rtl::OUString SAL_CALL getImplementationName()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+protected:
+ // internal virtual methods -----------------------------------------------
+
+ /** @attention This method requires locked mutex's and a living object.
+ @return The bounding box (VCL rect.) relative to the parent window. */
+ virtual Rectangle implGetBoundingBox();
+ /** @attention This method requires locked mutex's and a living object.
+ @return The bounding box (VCL rect.) in screen coordinates. */
+ virtual Rectangle implGetBoundingBoxOnScreen();
+
+ // internal helper methods ------------------------------------------------
+
+ /** @attention This method requires a locked mutex.
+ @return The XAccessibleTable interface of the specified header bar. */
+ ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessibleTable >
+ implGetHeaderBar( sal_Int32 nChildIndex )
+ throw ( ::com::sun::star::uno::RuntimeException );
+};
+
+// ============================================================================
+
+} // namespace accessibility
+
+// ============================================================================
+
+#endif
+
diff --git a/accessibility/inc/accessibility/extended/AccessibleBrowseBoxTableBase.hxx b/accessibility/inc/accessibility/extended/AccessibleBrowseBoxTableBase.hxx
new file mode 100644
index 000000000000..fa6ce94cfc7f
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/AccessibleBrowseBoxTableBase.hxx
@@ -0,0 +1,280 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+
+#ifndef ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXTABLEBASE_HXX
+#define ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXTABLEBASE_HXX
+
+#include "accessibility/extended/AccessibleBrowseBoxBase.hxx"
+#include <cppuhelper/implbase1.hxx>
+#include <com/sun/star/accessibility/XAccessibleTable.hpp>
+
+// ============================================================================
+
+namespace accessibility {
+
+typedef ::cppu::ImplHelper1<
+ ::com::sun::star::accessibility::XAccessibleTable >
+ AccessibleBrowseBoxTableImplHelper;
+
+/** The BrowseBox accessible table objects inherit from this base class. It
+ implements basic functionality for the XAccessibleTable interface.
+ BrowseBox table objects are: the data table, the column header bar and the
+ row header bar. */
+class AccessibleBrowseBoxTableBase :
+ public BrowseBoxAccessibleElement,
+ public AccessibleBrowseBoxTableImplHelper
+{
+public:
+ /** Constructor sets specified name and description. If the constant of a
+ text is BBTEXT_NONE, the derived class has to set the text via
+ implSetName() and implSetDescription() (in Ctor) or later via
+ setAccessibleName() and setAccessibleDescription() (these methods
+ notify the listeners about the change).
+ @param rxParent XAccessible interface of the parent object.
+ @param rBrowseBox The BrowseBox control.
+ @param eNameText The constant for the name text.
+ @param eDescrText The constant for the description text. */
+ AccessibleBrowseBoxTableBase(
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible >& rxParent,
+ ::svt::IAccessibleTableProvider& rBrowseBox,
+ ::svt::AccessibleBrowseBoxObjType eObjType );
+
+protected:
+ virtual ~AccessibleBrowseBoxTableBase();
+
+public:
+ // XAccessibleContext -----------------------------------------------------
+
+ /** @return The count of visible children. */
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The role of this object (a table). */
+ virtual sal_Int16 SAL_CALL getAccessibleRole()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /* Derived classes have to implement:
+ - getAccessibleChild,
+ - getAccessibleIndexInParent. */
+
+ // XAccessibleComponent ---------------------------------------------------
+
+ /* Derived classes have to implement:
+ - getAccessibleAt,
+ - grabFocus,
+ - getAccessibleKeyBinding. */
+
+ // XAccessibleTable -------------------------------------------------------
+
+ /** @return The number of used rows in the table (0 = empty table). */
+ virtual sal_Int32 SAL_CALL getAccessibleRowCount()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The number of used columns in the table (0 = empty table). */
+ virtual sal_Int32 SAL_CALL getAccessibleColumnCount()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The row extent of the specified cell (always 1). */
+ virtual sal_Int32 SAL_CALL
+ getAccessibleRowExtentAt( sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return The column extent of the specified cell (always 1). */
+ virtual sal_Int32 SAL_CALL
+ getAccessibleColumnExtentAt( sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return The caption cell of the table (not supported). */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleCaption()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The summary object of the table (not supported). */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleSummary()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The child index of the specified cell. */
+ virtual sal_Int32 SAL_CALL getAccessibleIndex( sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return The row index of the specified child cell. */
+ virtual sal_Int32 SAL_CALL getAccessibleRow( sal_Int32 nChildIndex )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return The column index of the specified child cell. */
+ virtual sal_Int32 SAL_CALL getAccessibleColumn( sal_Int32 nChildIndex )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /* Derived classes have to implement:
+ - getAccessibleRowDescription,
+ - getAccessibleColumnDescription,
+ - getAccessibleRowHeaders,
+ - getAccessibleColumnHeaders,
+ - getSelectedAccessibleRows,
+ - getSelectedAccessibleColumns,
+ - isAccessibleRowSelected,
+ - isAccessibleColumnSelected,
+ - getAccessibleCellAt,
+ - isAccessibleSelected. */
+
+ // XInterface -------------------------------------------------------------
+
+ /** Queries for a new interface. */
+ ::com::sun::star::uno::Any SAL_CALL queryInterface(
+ const ::com::sun::star::uno::Type& rType )
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** Aquires the object (calls acquire() on base class). */
+ virtual void SAL_CALL acquire() throw ();
+
+ /** Releases the object (calls release() on base class). */
+ virtual void SAL_CALL release() throw ();
+
+ // XTypeProvider ----------------------------------------------------------
+
+ /** @return A sequence of possible types (received from base classes). */
+ virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return An unique implementation ID. */
+ virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ // XServiceInfo -----------------------------------------------------------
+
+ /* Derived classes have to implement:
+ - getImplementationName */
+
+protected:
+ // internal virtual methods -----------------------------------------------
+
+ /** @attention This method requires locked mutex's and a living object.
+ @return The count of data rows without header bar. */
+ virtual sal_Int32 implGetRowCount() const;
+ /** @attention This method requires locked mutex's and a living object.
+ @return The count of data columns without "handle column". */
+ virtual sal_Int32 implGetColumnCount() const;
+
+ // internal helper methods ------------------------------------------------
+
+ /** @return <TRUE/>, if first BrowseBox column is the "handle column". */
+ sal_Bool implHasHandleColumn() const;
+
+ /** @attention This method requires locked mutex's and a living object.
+ @param nColumn
+ the position of the column in the Accessible world
+ @return
+ the position of the column in VCL the Accessible world
+ */
+ sal_uInt16 implToVCLColumnPos( sal_Int32 nColumn ) const;
+
+ /** @attention This method requires locked mutex's and a living object.
+ @return The number of cells of the table. */
+ sal_Int32 implGetChildCount() const;
+
+ /** @attention This method requires locked mutex's and a living object.
+ @return The row index of the specified cell index. */
+ sal_Int32 implGetRow( sal_Int32 nChildIndex ) const;
+ /** @attention This method requires locked mutex's and a living object.
+ @return The column index of the specified cell index. */
+ sal_Int32 implGetColumn( sal_Int32 nChildIndex ) const;
+ /** @attention This method requires locked mutex's and a living object.
+ @return The child index of the specified cell address. */
+ sal_Int32 implGetChildIndex( sal_Int32 nRow, sal_Int32 nColumn ) const;
+
+ /** @attention This method requires locked mutex's and a living object.
+ @return <TRUE/>, if the specified row is selected. */
+ sal_Bool implIsRowSelected( sal_Int32 nRow ) const;
+ /** @attention This method requires locked mutex's and a living object.
+ @return <TRUE/>, if the specified column is selected. */
+ sal_Bool implIsColumnSelected( sal_Int32 nColumn ) const;
+
+ /** Selects/deselects a row (tries to expand selection).
+ @attention This method requires locked mutex's and a living object.
+ @param bSelect <TRUE/> = select, <FALSE/> = deselect */
+ void implSelectRow( sal_Int32 nRow, sal_Bool bSelect );
+ /** Selects/deselects a column (tries to expand selection).
+ @attention This method requires locked mutex's and a living object.
+ @param bSelect <TRUE/> = select, <FALSE/> = deselect */
+ void implSelectColumn( sal_Int32 nColumnPos, sal_Bool bSelect );
+
+ /** @attention This method requires locked mutex's and a living object.
+ @return The count of selected rows. */
+ sal_Int32 implGetSelectedRowCount() const;
+ /** @attention This method requires locked mutex's and a living object.
+ @return The count of selected columns. */
+ sal_Int32 implGetSelectedColumnCount() const;
+
+ /** Fills a sequence with sorted indexes of completely selected rows.
+ @attention This method requires locked mutex's and a living object.
+ @param rSeq Out-parameter that takes the sorted row index list. */
+ void implGetSelectedRows( ::com::sun::star::uno::Sequence< sal_Int32 >& rSeq );
+ /** Fills a sequence with sorted indexes of completely selected columns.
+ @attention This method requires locked mutex's and a living object.
+ @param rSeq Out-parameter that takes the sorted column index list. */
+ void implGetSelectedColumns( ::com::sun::star::uno::Sequence< sal_Int32 >& rSeq );
+
+ /** @attention This method requires locked mutex's and a living object.
+ @throws <type>IndexOutOfBoundsException</type>
+ If the specified row index is invalid. */
+ void ensureIsValidRow( sal_Int32 nRow )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException );
+ /** @attention This method requires locked mutex's and a living object.
+ @throws <type>IndexOutOfBoundsException</type>
+ If the specified column index is invalid. */
+ void ensureIsValidColumn( sal_Int32 nColumn )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException );
+ /** @attention This method requires locked mutex's and a living object.
+ @throws <type>IndexOutOfBoundsException</type>
+ If the specified cell address is invalid. */
+ void ensureIsValidAddress( sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException );
+ /** @attention This method requires locked mutex's and a living object.
+ @throws <type>IndexOutOfBoundsException</type>
+ If the specified child index is invalid. */
+ void ensureIsValidIndex( sal_Int32 nChildIndex )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException );
+};
+
+// ============================================================================
+
+} // namespace accessibility
+
+// ============================================================================
+
+#endif
+
diff --git a/accessibility/inc/accessibility/extended/AccessibleBrowseBoxTableCell.hxx b/accessibility/inc/accessibility/extended/AccessibleBrowseBoxTableCell.hxx
new file mode 100644
index 000000000000..ec12e40dc179
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/AccessibleBrowseBoxTableCell.hxx
@@ -0,0 +1,143 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef ACCESSIBILITY_EXT_ACCESSIBILEBROWSEBOXTABLECELL_HXX
+#define ACCESSIBILITY_EXT_ACCESSIBILEBROWSEBOXTABLECELL_HXX
+
+#include "accessibility/extended/accessiblebrowseboxcell.hxx"
+#include <comphelper/accessibletexthelper.hxx>
+#include <cppuhelper/implbase2.hxx>
+
+namespace accessibility
+{
+ typedef ::cppu::ImplHelper2 < ::com::sun::star::accessibility::XAccessibleText
+ , ::com::sun::star::accessibility::XAccessible
+ > AccessibleTextHelper_BASE;
+
+ // implementation of a table cell of BrowseBox
+ class AccessibleBrowseBoxTableCell :public AccessibleBrowseBoxCell
+ ,public AccessibleTextHelper_BASE
+ ,public ::comphelper::OCommonAccessibleText
+ {
+ private:
+ sal_Int32 m_nOffset;
+
+ protected:
+ // OCommonAccessibleText
+ virtual ::rtl::OUString implGetText();
+ virtual ::com::sun::star::lang::Locale implGetLocale();
+ virtual void implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex );
+
+ public:
+ AccessibleBrowseBoxTableCell( const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
+ ::svt::IAccessibleTableProvider& _rBrowseBox,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
+ sal_Int32 _nRowId,
+ sal_uInt16 _nColId,
+ sal_Int32 _nOffset );
+
+ void nameChanged( const ::rtl::OUString& rNewName, const ::rtl::OUString& rOldName );
+
+ // XInterface -------------------------------------------------------------
+
+ /** Queries for a new interface. */
+ ::com::sun::star::uno::Any SAL_CALL queryInterface(
+ const ::com::sun::star::uno::Type& rType )
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** Aquires the object (calls acquire() on base class). */
+ virtual void SAL_CALL acquire() throw ();
+
+ /** Releases the object (calls release() on base class). */
+ virtual void SAL_CALL release() throw ();
+
+ // XEventListener
+ using AccessibleBrowseBoxBase::disposing;
+ virtual void SAL_CALL disposing( const ::com::sun::star::lang::EventObject& Source )
+ throw(::com::sun::star::uno::RuntimeException);
+
+ /** @return The index of this object among the parent's children. */
+ virtual sal_Int32 SAL_CALL getAccessibleIndexInParent()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return
+ The name of this class.
+ */
+ virtual ::rtl::OUString SAL_CALL getImplementationName()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return
+ The count of visible children.
+ */
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return
+ The XAccessible interface of the specified child.
+ */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleChild( sal_Int32 nChildIndex )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** Creates a new AccessibleStateSetHelper and fills it with states of the
+ current object.
+ @return
+ A filled AccessibleStateSetHelper.
+ */
+ ::utl::AccessibleStateSetHelper* implCreateStateSetHelper();
+
+ // XAccessible ------------------------------------------------------------
+
+ /** @return The XAccessibleContext interface of this object. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL
+ getAccessibleContext()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ // XAccessibleText
+ virtual sal_Int32 SAL_CALL getCaretPosition() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setCaretPosition( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Unicode SAL_CALL getCharacter( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL getCharacterBounds( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getCharacterCount() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getIndexAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getSelectedText() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getSelectionStart() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getSelectionEnd() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getText() throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ };
+}
+#endif // ACCESSIBILITY_EXT_ACCESSIBILEBROWSEBOXTABLECELL_HXX
+
diff --git a/accessibility/inc/accessibility/extended/AccessibleGridControl.hxx b/accessibility/inc/accessibility/extended/AccessibleGridControl.hxx
new file mode 100755
index 000000000000..cb2c4f6628c8
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/AccessibleGridControl.hxx
@@ -0,0 +1,265 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+
+#ifndef ACCESSIBILITY_EXT_ACCESSIBLEGRIDCONTROL_HXX
+#define ACCESSIBILITY_EXT_ACCESSIBLEGRIDCONTROL_HXX
+
+#include <accessibility/extended/AccessibleGridControlBase.hxx>
+#include <accessibility/extended/AccessibleGridControlTable.hxx>
+#include <cppuhelper/weakref.hxx>
+#include <svtools/accessibletable.hxx>
+
+
+#include <memory>
+
+using namespace ::svt::table;
+
+// ============================================================================
+
+namespace accessibility {
+
+ class AccessibleGridControl_Impl;
+
+// ============================================================================
+
+/** This class represents the complete accessible Grid Control object. */
+class AccessibleGridControl : public AccessibleGridControlBase
+{
+ friend class AccessibleGridControlAccess;
+
+protected:
+ AccessibleGridControl(
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxCreator,
+ ::svt::table::IAccessibleTable& _rTable
+ );
+
+ virtual ~AccessibleGridControl();
+
+ /** Cleans up members. */
+ using AccessibleGridControlBase::disposing;
+ virtual void SAL_CALL disposing();
+
+protected:
+ // XAccessibleContext -----------------------------------------------------
+
+ /** @return The count of visible children. */
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The XAccessible interface of the specified child. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleChild( sal_Int32 nChildIndex )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return The role of this object (a table). */
+ virtual sal_Int16 SAL_CALL getAccessibleRole()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ // XAccessibleComponent ---------------------------------------------------
+
+ /** @return
+ The accessible child rendered under the given point.
+ */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleAtPoint( const ::com::sun::star::awt::Point& rPoint )
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** Grabs the focus to the Grid Control. */
+ virtual void SAL_CALL grabFocus()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The key bindings associated with this object. */
+ virtual ::com::sun::star::uno::Any SAL_CALL getAccessibleKeyBinding()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ // XServiceInfo -----------------------------------------------------------
+
+ /** @return
+ The name of this class.
+ */
+ virtual ::rtl::OUString SAL_CALL getImplementationName()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+public:
+ // helper functions
+ /** returns the accessible object for the row or the column header bar
+ */
+ inline ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible >
+ getHeaderBar( ::svt::table::AccessibleTableControlObjType _eObjType )
+ {
+ return implGetHeaderBar(_eObjType);
+ }
+
+ /** returns the accessible object for the table representation
+ */
+ inline ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible >
+ getTable( )
+ {
+ return implGetTable();
+ }
+
+protected:
+ // internal virtual methods -----------------------------------------------
+
+ /** @attention This method requires locked mutex's and a living object.
+ @return The bounding box (VCL rect.) relative to the parent window. */
+ virtual Rectangle implGetBoundingBox();
+ /** @attention This method requires locked mutex's and a living object.
+ @return The bounding box (VCL rect.) in screen coordinates. */
+ virtual Rectangle implGetBoundingBoxOnScreen();
+
+ // internal helper methods ------------------------------------------------
+
+ /** This method creates (once) and returns the accessible data table child.
+ @attention This method requires locked mutex's and a living object.
+ @return The XAccessible interface of the data table. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > implGetTable();
+
+ /** This method creates (once) and returns the specified header bar.
+ @attention This method requires locked mutex's and a living object.
+ @return The XAccessible interface of the header bar. */
+ ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible >
+ implGetHeaderBar( ::svt::table::AccessibleTableControlObjType eObjType );
+
+ /** This method returns one of the children that are always present:
+ Data table, row and column header bar or corner control.
+ @attention This method requires locked mutex's and a living object.
+ @return The XAccessible interface of the specified child. */
+ ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible >
+ implGetFixedChild( sal_Int32 nChildIndex );
+
+ /** This method creates and returns an accessible table.
+ @return An AccessibleGridControlTable. */
+ virtual AccessibleGridControlTable* createAccessibleTable();
+
+private:
+ // members ----------------------------------------------------------------
+ ::std::auto_ptr< AccessibleGridControl_Impl > m_pImpl;
+};
+
+// ============================================================================
+/** the XAccessible which creates/returns an AccessibleGridControl
+
+ <p>The instance holds it's XAccessibleContext with a hard reference, while
+ the contxt holds this instance weak.</p>
+*/
+typedef ::cppu::WeakImplHelper1 < ::com::sun::star::accessibility::XAccessible > AccessibleGridControlAccess_Base;
+
+class AccessibleGridControlAccess :public AccessibleGridControlAccess_Base
+ ,public ::svt::table::IAccessibleTableControl
+{
+private:
+ ::osl::Mutex m_aMutex;
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
+ m_xParent;
+ ::svt::table::IAccessibleTable& m_rTable;
+
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
+ m_xContext;
+ AccessibleGridControl* m_pContext;
+ // note that this pointer is valid as long as m_xContext is valid!
+
+public:
+ AccessibleGridControlAccess(
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
+ ::svt::table::IAccessibleTable& _rTable
+ );
+
+ /// checks whether the accessible context is still alive
+ bool isContextAlive() const;
+
+ /// returns the AccessibleContext belonging to this Accessible
+ inline AccessibleGridControl* getContext() { return m_pContext; }
+ inline const AccessibleGridControl* getContext() const { return m_pContext; }
+
+protected:
+ virtual ~AccessibleGridControlAccess();
+
+ // XAccessible
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
+ SAL_CALL getAccessibleContext() throw ( ::com::sun::star::uno::RuntimeException );
+
+ // IAccessibleTable
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
+ getMyself()
+ {
+ return this;
+ }
+ void dispose();
+ virtual sal_Bool isAlive() const
+ {
+ return isContextAlive();
+ }
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
+ getTableHeader( ::svt::table::AccessibleTableControlObjType _eObjType )
+ {
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > xAccessible;
+ AccessibleGridControl* pContext( getContext() );
+ if ( pContext )
+ xAccessible = pContext->getHeaderBar( _eObjType );
+ return xAccessible;
+ }
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
+ getTable()
+ {
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > xAccessible;
+ AccessibleGridControl* pContext( getContext() );
+ if ( pContext )
+ xAccessible = pContext->getTable();
+ return xAccessible;
+ }
+ virtual void commitEvent( sal_Int16 nEventId,
+ const ::com::sun::star::uno::Any& rNewValue, const ::com::sun::star::uno::Any& rOldValue )
+ {
+ AccessibleGridControl* pContext( getContext() );
+ if ( pContext )
+ pContext->commitEvent( nEventId, rNewValue, rOldValue );
+ }
+
+private:
+ AccessibleGridControlAccess(); // never implemented
+ AccessibleGridControlAccess( const AccessibleGridControlAccess& ); // never implemented
+ AccessibleGridControlAccess& operator=( const AccessibleGridControlAccess& ); // never implemented
+};
+
+// ============================================================================
+} // namespace accessibility
+
+// ============================================================================
+
+#endif
+
diff --git a/accessibility/inc/accessibility/extended/AccessibleGridControlBase.hxx b/accessibility/inc/accessibility/extended/AccessibleGridControlBase.hxx
new file mode 100755
index 000000000000..c6a26d8c4548
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/AccessibleGridControlBase.hxx
@@ -0,0 +1,467 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+
+#ifndef ACCESSIBILITY_EXT_ACCESSIBLEGRIDCONTROLBASE_HXX
+#define ACCESSIBILITY_EXT_ACCESSIBLEGRIDCONTROLBASE_HXX
+
+#include <svtools/accessibletable.hxx>
+#include <tools/debug.hxx>
+#include <rtl/ustring.hxx>
+#include <tools/gen.hxx>
+#include <vcl/svapp.hxx>
+#include <cppuhelper/compbase4.hxx>
+#include <comphelper/broadcasthelper.hxx>
+#include <unotools/accessiblestatesethelper.hxx>
+#include <toolkit/helper/convert.hxx>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <com/sun/star/lang/DisposedException.hpp>
+#include <com/sun/star/awt/XWindow.hpp>
+#include <com/sun/star/accessibility/XAccessible.hpp>
+#include <com/sun/star/accessibility/XAccessibleContext.hpp>
+#include <com/sun/star/accessibility/XAccessibleComponent.hpp>
+#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp>
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <com/sun/star/awt/XFocusListener.hpp>
+#include <comphelper/accessibleeventnotifier.hxx>
+#include <comphelper/uno3.hxx>
+
+// ============================================================================
+
+class Window;
+
+namespace utl {
+ class AccessibleStateSetHelper;
+}
+
+// ============================================================================
+
+namespace accessibility {
+
+// ============================================================================
+
+/** Aquire the solar mutex. */
+class TCSolarGuard : public ::vos::OGuard
+{
+public:
+ inline TCSolarGuard() : ::vos::OGuard( Application::GetSolarMutex() ) {}
+};
+
+// ============================================================================
+
+typedef ::cppu::WeakAggComponentImplHelper4<
+ ::com::sun::star::accessibility::XAccessibleContext,
+ ::com::sun::star::accessibility::XAccessibleComponent,
+ ::com::sun::star::accessibility::XAccessibleEventBroadcaster,
+ ::com::sun::star::lang::XServiceInfo >
+ AccessibleGridControlImplHelper;
+
+/** The GridControl accessible objects inherit from this base class. It
+ implements basic functionality for various Accessibility interfaces and
+ the event broadcaster and contains the ::osl::Mutex. */
+class AccessibleGridControlBase :
+ public ::comphelper::OBaseMutex,
+ public AccessibleGridControlImplHelper
+{
+public:
+ /** Constructor sets specified name and description.
+ @param rxParent XAccessible interface of the parent object.
+ @param rTable The Table control.
+ @param eNameText The constant for the name text.
+ @param eDescrText The constant for the description text. */
+ AccessibleGridControlBase(
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible >& rxParent,
+ ::svt::table::IAccessibleTable& rTable,
+ ::svt::table::AccessibleTableControlObjType eObjType );
+
+protected:
+ virtual ~AccessibleGridControlBase();
+
+ /** Commits DeFunc event to listeners and cleans up members. */
+ virtual void SAL_CALL disposing();
+
+public:
+ // XAccessibleContext -----------------------------------------------------
+
+ /** @return A reference to the parent accessible object. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleParent()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The index of this object among the parent's children. */
+ virtual sal_Int32 SAL_CALL getAccessibleIndexInParent()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return
+ The description of this object.
+ */
+ virtual ::rtl::OUString SAL_CALL getAccessibleDescription()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return
+ The name of this object.
+ */
+ virtual ::rtl::OUString SAL_CALL getAccessibleName()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return
+ The relation set (the GridControl does not have one).
+ */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL
+ getAccessibleRelationSet()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The set of current states. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL
+ getAccessibleStateSet()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The parent's locale. */
+ virtual ::com::sun::star::lang::Locale SAL_CALL getLocale()
+ throw ( ::com::sun::star::accessibility::IllegalAccessibleComponentStateException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return
+ The role of this object. Panel, ROWHEADER, COLUMNHEADER, TABLE, TABLE_CELL are supported.
+ */
+ virtual sal_Int16 SAL_CALL getAccessibleRole()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /* Derived classes have to implement:
+ - getAccessibleChildCount,
+ - getAccessibleChild,
+ - getAccessibleRole.
+ Derived classes may overwrite getAccessibleIndexInParent to increase
+ performance. */
+
+ // XAccessibleComponent ---------------------------------------------------
+
+ /** @return
+ <TRUE/>, if the point lies within the bounding box of this object. */
+ virtual sal_Bool SAL_CALL containsPoint( const ::com::sun::star::awt::Point& rPoint )
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The bounding box of this object. */
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL getBounds()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return
+ The upper left corner of the bounding box relative to the parent. */
+ virtual ::com::sun::star::awt::Point SAL_CALL getLocation()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return
+ The upper left corner of the bounding box in screen coordinates. */
+ virtual ::com::sun::star::awt::Point SAL_CALL getLocationOnScreen()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The size of the bounding box. */
+ virtual ::com::sun::star::awt::Size SAL_CALL getSize()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return <TRUE/>, if the object is showing. */
+ virtual sal_Bool SAL_CALL isShowing()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return <TRUE/>, if the object is visible. */
+ virtual sal_Bool SAL_CALL isVisible()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return <TRUE/>, if the object can accept the focus. */
+ virtual sal_Bool SAL_CALL isFocusTraversable()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
+
+
+ /* Derived classes have to implement:
+ - getAccessibleAt,
+ - grabFocus,
+ - getAccessibleKeyBinding. */
+
+ /** @return
+ No key bindings supported by default.
+ */
+ virtual ::com::sun::star::uno::Any SAL_CALL getAccessibleKeyBinding()
+ throw ( ::com::sun::star::uno::RuntimeException );
+ /** @return
+ The accessible child rendered under the given point.
+ */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleAtPoint( const ::com::sun::star::awt::Point& rPoint )
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ // XAccessibleEventBroadcaster --------------------------------------------
+
+ /** Adds a new event listener */
+ using cppu::WeakAggComponentImplHelperBase::addEventListener;
+ virtual void SAL_CALL addEventListener(
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessibleEventListener>& rxListener )
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** Removes an event listener. */
+ using cppu::WeakAggComponentImplHelperBase::removeEventListener;
+ virtual void SAL_CALL removeEventListener(
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessibleEventListener>& rxListener )
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ // XTypeProvider ----------------------------------------------------------
+
+ /** @return An unique implementation ID. */
+ virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ // XServiceInfo -----------------------------------------------------------
+
+ /** @return Whether the specified service is supported by this class. */
+ virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& rServiceName )
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return A list of all supported services. */
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL
+ getSupportedServiceNames()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /* Derived classes have to implement:
+ - getImplementationName. */
+
+ // helper methods ---------------------------------------------------------
+
+ /** @return The GridControl object type. */
+ inline ::svt::table::AccessibleTableControlObjType getType() const;
+
+ /** Commits an event to all listeners. */
+ void commitEvent(
+ sal_Int16 nEventId,
+ const ::com::sun::star::uno::Any& rNewValue,
+
+ const ::com::sun::star::uno::Any& rOldValue );
+ /** @return <TRUE/>, if the object is not disposed or disposing. */
+ sal_Bool isAlive() const;
+
+protected:
+ // internal virtual methods -----------------------------------------------
+
+ /** Determines whether the Grid control is really showing inside of
+ its parent accessible window. Derived classes may implement different
+ behaviour.
+ @attention This method requires locked mutex's and a living object.
+ @return <TRUE/>, if the object is really showing. */
+ virtual sal_Bool implIsShowing();
+
+ /** Derived classes return the bounding box relative to the parent window.
+ @attention This method requires locked mutex's and a living object.
+ @return The bounding box (VCL rect.) relative to the parent window. */
+ virtual Rectangle implGetBoundingBox() = 0;
+ ///** Derived classes return the bounding box in screen coordinates.
+ // @attention This method requires locked mutex's and a living object.
+ // @return The bounding box (VCL rect.) in screen coordinates. */
+ virtual Rectangle implGetBoundingBoxOnScreen() = 0;
+
+ /** Creates a new AccessibleStateSetHelper and fills it with states of the
+ current object. This method calls FillStateSet at the GridControl which
+ fills it with more states depending on the object type. Derived classes
+ may overwrite this method and add more states.
+ @attention This method requires locked mutex's.
+ @return A filled AccessibleStateSetHelper. */
+ virtual ::utl::AccessibleStateSetHelper* implCreateStateSetHelper();
+
+ // internal helper methods ------------------------------------------------
+
+ /** @throws <type>DisposedException</type> If the object is not alive. */
+ void ensureIsAlive() const
+ throw ( ::com::sun::star::lang::DisposedException );
+
+ /** @return The ::osl::Mutex member provided by the class OBaseMutex. */
+ inline ::osl::Mutex& getOslMutex();
+ /** @return Pointer to the global ::osl::Mutex. */
+ static inline ::osl::Mutex* getOslGlobalMutex();
+
+ /** Changes the name of the object (flat assignment, no notify).
+ @attention This method requires a locked mutex. */
+ inline void implSetName( const ::rtl::OUString& rName );
+ /** Changes the description of the object (flat assignment, no notify).
+ @attention This method requires a locked mutex. */
+ inline void implSetDescription( const ::rtl::OUString& rDescription );
+
+ /** Locks all mutex's and calculates the bounding box relative to the
+ parent window.
+ @return The bounding box (VCL rect.) relative to the parent object. */
+ Rectangle getBoundingBox()
+ throw ( ::com::sun::star::lang::DisposedException );
+ ///** Locks all mutex's and calculates the bounding box in screen
+ // coordinates.
+ // @return The bounding box (VCL rect.) in screen coordinates. */
+ Rectangle getBoundingBoxOnScreen()
+ throw ( ::com::sun::star::lang::DisposedException );
+
+ /** Creates a new UUID, if rId is empty.
+ @attention This method requires locked global mutex to prevent double
+ creation of an UUID. */
+ static void implCreateUuid( ::com::sun::star::uno::Sequence< sal_Int8 >& rId );
+
+ ::comphelper::AccessibleEventNotifier::TClientId getClientId() const { return m_aClientId; }
+ void setClientId(::comphelper::AccessibleEventNotifier::TClientId _aNewClientId) { m_aClientId = _aNewClientId; }
+
+public:
+ // public versions of internal helper methods, with access control
+ struct TC_AccessControl { friend class TC_SolarMethodGuard; private: TC_AccessControl() { } };
+
+ inline ::osl::Mutex& getMutex( const TC_AccessControl& ) { return getOslMutex(); }
+ inline void ensureIsAlive( const TC_AccessControl& ) { ensureIsAlive(); }
+
+protected:
+ // members ----------------------------------------------------------------
+
+ /** The parent accessible object. */
+ ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > m_xParent;
+ /** The SVT Table control. */
+ ::svt::table::IAccessibleTable& m_aTable;
+ /** The type of this object (for names, descriptions, state sets, ...). */
+ ::svt::table::AccessibleTableControlObjType m_eObjType;
+
+private:
+ /** Localized name. */
+ ::rtl::OUString m_aName;
+ /** Localized description text. */
+ ::rtl::OUString m_aDescription;
+ ::comphelper::AccessibleEventNotifier::TClientId m_aClientId;
+};
+
+// ============================================================================
+// a version of AccessibleGridControlBase which implements not only the XAccessibleContext,
+// but also the XAccessible
+
+typedef ::cppu::ImplHelper1 < ::com::sun::star::accessibility::XAccessible
+ > GridControlAccessibleElement_Base;
+
+class GridControlAccessibleElement
+ :public AccessibleGridControlBase
+ ,public GridControlAccessibleElement_Base
+{
+protected:
+ /** Constructor sets specified name and description.
+
+ @param rxParent XAccessible interface of the parent object.
+ @param rTable The Table control.
+ @param eNameText The constant for the name text.
+ @param eDescrText The constant for the description text.
+ */
+ GridControlAccessibleElement(
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible >& rxParent,
+ ::svt::table::IAccessibleTable& rTable,
+ ::svt::table::AccessibleTableControlObjType eObjType );
+
+public:
+ // XInterface
+ DECLARE_XINTERFACE( )
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER( )
+
+protected:
+ virtual ~GridControlAccessibleElement();
+
+protected:
+ // XAccessible ------------------------------------------------------------
+
+ /** @return The XAccessibleContext interface of this object. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL
+ getAccessibleContext()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+private:
+ GridControlAccessibleElement(); // never implemented
+ GridControlAccessibleElement( const GridControlAccessibleElement& ); // never implemented
+ GridControlAccessibleElement& operator=( const GridControlAccessibleElement& ); // never implemented
+};
+
+// ============================================================================
+// a helper class for protecting methods which need to lock the solar mutex in addition to the own mutex
+
+typedef ::osl::MutexGuard OslMutexGuard;
+
+class TC_SolarMethodGuard : public TCSolarGuard, public OslMutexGuard
+{
+public:
+ inline TC_SolarMethodGuard( AccessibleGridControlBase& _rOwner, bool _bEnsureAlive = true )
+ :TCSolarGuard( )
+ ,OslMutexGuard( _rOwner.getMutex( AccessibleGridControlBase::TC_AccessControl() ) )
+ {
+ if ( _bEnsureAlive )
+ _rOwner.ensureIsAlive( AccessibleGridControlBase::TC_AccessControl() );
+ }
+};
+
+// inlines --------------------------------------------------------------------
+
+inline ::svt::table::AccessibleTableControlObjType AccessibleGridControlBase::getType() const
+{
+ return m_eObjType;
+}
+
+inline ::osl::Mutex& AccessibleGridControlBase::getOslMutex()
+{
+ return m_aMutex;
+}
+
+inline ::osl::Mutex* AccessibleGridControlBase::getOslGlobalMutex()
+{
+ return ::osl::Mutex::getGlobalMutex();
+}
+
+inline void AccessibleGridControlBase::implSetName(
+ const ::rtl::OUString& rName )
+{
+ m_aName = rName;
+}
+
+inline void AccessibleGridControlBase::implSetDescription(
+ const ::rtl::OUString& rDescription )
+{
+ m_aDescription = rDescription;
+}
+
+// ============================================================================
+
+} // namespace accessibility
+
+// ============================================================================
+
+#endif // ACCESSIBILITY_EXT_ACCESSIBILEGRIDCONTROLBASE_HXX
+
diff --git a/accessibility/inc/accessibility/extended/AccessibleGridControlHeader.hxx b/accessibility/inc/accessibility/extended/AccessibleGridControlHeader.hxx
new file mode 100755
index 000000000000..90306435bd4b
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/AccessibleGridControlHeader.hxx
@@ -0,0 +1,218 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+
+#ifndef ACCESSIBILITY_EXT_ACCESSIBLEGRIDCONTROLHEADER_HXX
+#define ACCESSIBILITY_EXT_ACCESSIBLEGRIDCONTROLHEADER_HXX
+
+
+#include "accessibility/extended/AccessibleGridControlHeaderCell.hxx"
+#include "accessibility/extended/AccessibleGridControlTableBase.hxx"
+
+// ============================================================================
+
+namespace accessibility {
+
+// ============================================================================
+
+/** This class represents the accessible object of a header bar of a Grid Control
+ (row or column header bar). This object supports the
+ XAccessibleSelection interface. Selecting a child of this object selects
+ complete rows or columns of the data table. */
+class AccessibleGridControlHeader : public AccessibleGridControlTableBase
+{
+public:
+ /** @param eObjType One of the two allowed types TCTYPE_ROWHEADERBAR or
+ TCTYPE_COLUMNHEADERBAR. */
+ AccessibleGridControlHeader(
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible >& rxParent,
+ ::svt::table::IAccessibleTable& rTable,
+ ::svt::table::AccessibleTableControlObjType eObjType );
+
+protected:
+ virtual ~AccessibleGridControlHeader();
+
+public:
+ // XAccessibleContext -----------------------------------------------------
+
+ /** @return
+ The XAccessible interface of the specified child.
+ */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleChild( sal_Int32 nChildIndex )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return The index of this object among the parent's children. */
+ virtual sal_Int32 SAL_CALL getAccessibleIndexInParent()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ // XAccessibleComponent ---------------------------------------------------
+
+ /** @return The accessible child rendered under the given point. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleAtPoint( const ::com::sun::star::awt::Point& rPoint )
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** Grabs the focus to (the current cell of) the data table. */
+ virtual void SAL_CALL grabFocus()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The key bindings associated with this object. */
+ virtual ::com::sun::star::uno::Any SAL_CALL getAccessibleKeyBinding()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ // XAccessibleTable -------------------------------------------------------
+
+ /** @return The description text of the specified row. */
+ virtual ::rtl::OUString SAL_CALL
+ getAccessibleRowDescription( sal_Int32 nRow )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return The description text of the specified column. */
+ virtual ::rtl::OUString SAL_CALL
+ getAccessibleColumnDescription( sal_Int32 nColumn )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return The XAccessibleTable interface of the row header bar. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessibleTable > SAL_CALL
+ getAccessibleRowHeaders()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The XAccessibleTable interface of the column header bar. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessibleTable > SAL_CALL
+ getAccessibleColumnHeaders()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return An index list of completely selected rows. */
+ virtual ::com::sun::star::uno::Sequence< sal_Int32 > SAL_CALL
+ getSelectedAccessibleRows()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return An index list of completely selected columns. */
+ virtual ::com::sun::star::uno::Sequence< sal_Int32 > SAL_CALL
+ getSelectedAccessibleColumns()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return <TRUE/>, if the specified row is completely selected. */
+ virtual sal_Bool SAL_CALL isAccessibleRowSelected( sal_Int32 nRow )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return <TRUE/>, if the specified column is completely selected. */
+ virtual sal_Bool SAL_CALL isAccessibleColumnSelected( sal_Int32 nColumn )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return The XAccessible interface of the cell object at the specified
+ cell position. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleCellAt( sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return <TRUE/>, if the specified cell is selected. */
+ virtual sal_Bool SAL_CALL isAccessibleSelected( sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ // XServiceInfo -----------------------------------------------------------
+
+ /** @return The name of this class. */
+ virtual ::rtl::OUString SAL_CALL getImplementationName()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return An unique implementation ID. */
+ virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+protected:
+ // internal virtual methods -----------------------------------------------
+ /** @attention This method requires locked mutex's and a living object.
+ @return The absolute child index from the index of selected children.
+ @throws <type>IndexOutOfBoundsException</type>
+ If the specified index is invalid. */
+ //sal_Int32 implGetChildIndexFromSelectedIndex( sal_Int32 nSelectedChildIndex )
+ // throw ( ::com::sun::star::lang::IndexOutOfBoundsException );
+
+ /** Returns the specified row or column. Uses one of the parameters,
+ depending on object type.
+ @attention This method requires locked mutex's and a living object.
+ @return The XAccessible interface of the specified column/row. */
+ ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible >
+ implGetChild( sal_Int32 nRow, sal_uInt32 nColumnPos );
+ /** @attention This method requires locked mutex's and a living object.
+ @return The bounding box (VCL rect.) relative to the parent window. */
+ virtual Rectangle implGetBoundingBox();
+ /** @attention This method requires locked mutex's and a living object.
+ @return The bounding box (VCL rect.) in screen coordinates. */
+ virtual Rectangle implGetBoundingBoxOnScreen();
+
+ /** @attention This method requires locked mutex's and a living object.
+ @return The count of used rows. */
+ virtual sal_Int32 implGetRowCount() const;
+ /** @attention This method requires locked mutex's and a living object.
+ @return The count of used columns. */
+ virtual sal_Int32 implGetColumnCount() const;
+
+ // internal helper methods ------------------------------------------------
+
+ /** @return <TRUE/>, if the objects is a header bar for rows. */
+ inline sal_Bool isRowBar() const;
+ /** @return <TRUE/>, if the objects is a header bar for columns. */
+ inline sal_Bool isColumnBar() const;
+};
+
+// inlines --------------------------------------------------------------------
+
+inline sal_Bool AccessibleGridControlHeader::isRowBar() const
+{
+ return getType() == ::svt::table::TCTYPE_ROWHEADERBAR;
+}
+
+inline sal_Bool AccessibleGridControlHeader::isColumnBar() const
+{
+ return getType() == ::svt::table::TCTYPE_COLUMNHEADERBAR;
+}
+
+// ============================================================================
+
+} // namespace accessibility
+
+// ============================================================================
+
+#endif // ACCESSIBILITY_EXT_ACCESSIBILEGRIDCONTROLHEADER_HXX
+
diff --git a/accessibility/inc/accessibility/extended/AccessibleGridControlHeaderCell.hxx b/accessibility/inc/accessibility/extended/AccessibleGridControlHeaderCell.hxx
new file mode 100755
index 000000000000..0672ca28a151
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/AccessibleGridControlHeaderCell.hxx
@@ -0,0 +1,102 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef ACCESSIBILITY_EXT_ACCESSIBLEGRIDCONTROLHEADERCELL_HXX
+#define ACCESSIBILITY_EXT_ACCESSIBLEGRIDCONTROLHEADERCELL_HXX
+
+#include "accessibility/extended/AccessibleGridControlTableCell.hxx"
+
+namespace accessibility
+{
+ class AccessibleGridControlHeaderCell : public AccessibleGridControlCell, public ::com::sun::star::accessibility::XAccessible
+ {
+ sal_Int32 m_nColumnRowId;
+ public:
+ AccessibleGridControlHeaderCell(sal_Int32 _nColumnRowId,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& rxParent,
+ ::svt::table::IAccessibleTable& _rTable,
+ ::svt::table::AccessibleTableControlObjType _eObjType);
+ /** @return The count of visible children. */
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount() throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The XAccessible interface of the specified child. */
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleChild( sal_Int32 nChildIndex ) throw ( ::com::sun::star::lang::IndexOutOfBoundsException,::com::sun::star::uno::RuntimeException );
+
+ /** @return The index of this object among the parent's children. */
+ virtual sal_Int32 SAL_CALL getAccessibleIndexInParent() throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** Grabs the focus to the GridControl. */
+ virtual void SAL_CALL grabFocus() throw ( ::com::sun::star::uno::RuntimeException );
+
+ // XInterface -------------------------------------------------------------
+
+ /** Queries for a new interface. */
+ ::com::sun::star::uno::Any SAL_CALL queryInterface(
+ const ::com::sun::star::uno::Type& rType )
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** Aquires the object (calls acquire() on base class). */
+ virtual void SAL_CALL acquire() throw ();
+
+ /** Releases the object (calls release() on base class). */
+ virtual void SAL_CALL release() throw ();
+ // XAccessible ------------------------------------------------------------
+
+ /** @return The XAccessibleContext interface of this object. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL
+ getAccessibleContext()
+ throw ( ::com::sun::star::uno::RuntimeException );
+ //-------------------------------------------------------------------------
+ inline sal_Bool isRowBarCell() const
+ {
+ return getType() == ::svt::table::TCTYPE_ROWHEADERCELL;
+ }
+
+ /** @return
+ The name of this class.
+ */
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** Creates a new AccessibleStateSetHelper and fills it with states of the
+ current object.
+ @return
+ A filled AccessibleStateSetHelper.
+ */
+ ::utl::AccessibleStateSetHelper* implCreateStateSetHelper();
+
+ protected:
+ virtual Rectangle implGetBoundingBox();
+
+ virtual Rectangle implGetBoundingBoxOnScreen();
+ private:
+ ::rtl::OUString m_sHeaderName;
+ };
+}
+
+#endif // ACCESSIBILITY_EXT_ACCESSIBLEGRIDCONTROLHEADERCELL_HXX
+
diff --git a/accessibility/inc/accessibility/extended/AccessibleGridControlTable.hxx b/accessibility/inc/accessibility/extended/AccessibleGridControlTable.hxx
new file mode 100644
index 000000000000..8058594d2938
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/AccessibleGridControlTable.hxx
@@ -0,0 +1,226 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+
+#ifndef ACCESSIBILITY_EXT_ACCESSIBLEGRIDCONTROLTABLE_HXX
+#define ACCESSIBILITY_EXT_ACCESSIBLEGRIDCONTROLTABLE_HXX
+
+#include "accessibility/extended/AccessibleGridControlTableBase.hxx"
+#include <cppuhelper/implbase1.hxx>
+#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
+
+// ============================================================================
+
+namespace accessibility {
+
+// ============================================================================
+typedef ::cppu::ImplHelper1<
+ ::com::sun::star::accessibility::XAccessibleSelection >
+ AccessibleGridControlTableImplHelper1;
+/** This class represents the accessible object of the data table of a
+ Grid control. */
+class AccessibleGridControlTable : public AccessibleGridControlTableBase,
+ public AccessibleGridControlTableImplHelper1
+{
+public:
+ AccessibleGridControlTable(
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible >& rxParent,
+ ::svt::table::IAccessibleTable& rTable,
+ ::svt::table::AccessibleTableControlObjType _eType);
+
+protected:
+ virtual ~AccessibleGridControlTable();
+
+public:
+ // XAccessibleContext -----------------------------------------------------
+
+ /** @return The XAccessible interface of the specified child. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleChild( sal_Int32 nChildIndex )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return The index of this object among the parent's children. */
+ virtual sal_Int32 SAL_CALL getAccessibleIndexInParent()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ // XAccessibleComponent ---------------------------------------------------
+
+ /** @return The accessible child rendered under the given point. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleAtPoint( const ::com::sun::star::awt::Point& rPoint )
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** Grabs the focus to (the current cell of) the data table. */
+ virtual void SAL_CALL grabFocus()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The key bindings associated with this object. */
+ virtual ::com::sun::star::uno::Any SAL_CALL getAccessibleKeyBinding()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ // XAccessibleTable -------------------------------------------------------
+
+ /** @return The description text of the specified row. */
+ virtual ::rtl::OUString SAL_CALL getAccessibleRowDescription( sal_Int32 nRow )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return The description text of the specified column. */
+ virtual ::rtl::OUString SAL_CALL getAccessibleColumnDescription( sal_Int32 nColumn )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return The XAccessibleTable interface of the row header bar. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessibleTable > SAL_CALL
+ getAccessibleRowHeaders()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The XAccessibleTable interface of the column header bar. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessibleTable > SAL_CALL
+ getAccessibleColumnHeaders()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return An index list of completely selected rows. */
+ virtual ::com::sun::star::uno::Sequence< sal_Int32 > SAL_CALL
+ getSelectedAccessibleRows()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return An index list of completely selected columns. */
+ virtual ::com::sun::star::uno::Sequence< sal_Int32 > SAL_CALL
+ getSelectedAccessibleColumns()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return <TRUE/>, if the specified row is completely selected. */
+ virtual sal_Bool SAL_CALL isAccessibleRowSelected( sal_Int32 nRow )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return <TRUE/>, if the specified column is completely selected. */
+ virtual sal_Bool SAL_CALL isAccessibleColumnSelected( sal_Int32 nColumn )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return The XAccessible interface of the cell object at the specified
+ cell position. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleCellAt( sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return <TRUE/>, if the specified cell is selected. */
+ virtual sal_Bool SAL_CALL isAccessibleSelected( sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ // XAccessibleSelection ---------------------------------------------------
+
+ /** Selects the specified child (row or column of the table). */
+ virtual void SAL_CALL selectAccessibleChild( sal_Int32 nChildIndex )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return <TRUE/>, if the specified child (row/column) is selected. */
+ virtual sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int32 nChildIndex )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** Clears the complete selection. */
+ virtual void SAL_CALL clearAccessibleSelection()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** Selects all children or first, if multiselection is not supported. */
+ virtual void SAL_CALL selectAllAccessibleChildren()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The number of selected rows/columns. */
+ virtual sal_Int32 SAL_CALL getSelectedAccessibleChildCount()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The specified selected row/column. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** Removes the specified row/column from the selection. */
+ virtual void SAL_CALL deselectAccessibleChild( sal_Int32 nSelectedChildIndex )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+ // XInterface -------------------------------------------------------------
+
+ /** Queries for a new interface. */
+ ::com::sun::star::uno::Any SAL_CALL queryInterface(
+ const ::com::sun::star::uno::Type& rType )
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** Aquires the object (calls acquire() on base class). */
+ virtual void SAL_CALL acquire() throw ();
+
+ /** Releases the object (calls release() on base class). */
+ virtual void SAL_CALL release() throw ();
+ // XServiceInfo -----------------------------------------------------------
+
+ /** @return The name of this class. */
+ virtual ::rtl::OUString SAL_CALL getImplementationName()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+protected:
+ // internal virtual methods -----------------------------------------------
+
+ /** @attention This method requires locked mutex's and a living object.
+ @return The bounding box (VCL rect.) relative to the parent window. */
+ virtual Rectangle implGetBoundingBox();
+ ///** @attention This method requires locked mutex's and a living object.
+ // @return The bounding box (VCL rect.) in screen coordinates. */
+ virtual Rectangle implGetBoundingBoxOnScreen();
+
+
+ //// internal helper methods ------------------------------------------------
+ ///** @attention This method requires a locked mutex.
+ // @return The XAccessibleTable interface of the specified header bar. */
+ ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessibleTable >
+ implGetHeaderBar( sal_Int32 nChildIndex )
+ throw ( ::com::sun::star::uno::RuntimeException );
+};
+
+// ============================================================================
+
+} // namespace accessibility
+
+// ============================================================================
+
+#endif // ACCESSIBILITY_EXT_ACCESSIBILEGRIDCONTROLTABLE_HXX
+
diff --git a/accessibility/inc/accessibility/extended/AccessibleGridControlTableBase.hxx b/accessibility/inc/accessibility/extended/AccessibleGridControlTableBase.hxx
new file mode 100755
index 000000000000..bee42d85e2a2
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/AccessibleGridControlTableBase.hxx
@@ -0,0 +1,228 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+
+#ifndef ACCESSIBILITY_EXT_ACCESSIBLEGRIDCONTROLTABLEBASE_HXX
+#define ACCESSIBILITY_EXT_ACCESSIBLEGRIDCONTROLTABLEBASE_HXX
+
+#include "accessibility/extended/AccessibleGridControlBase.hxx"
+#include <cppuhelper/implbase1.hxx>
+#include <com/sun/star/accessibility/XAccessibleTable.hpp>
+
+// ============================================================================
+
+namespace accessibility {
+
+typedef ::cppu::ImplHelper1<
+ ::com::sun::star::accessibility::XAccessibleTable >
+ AccessibleGridControlTableImplHelper;
+
+/** The Grid Control accessible table objects inherit from this base class. It
+ implements basic functionality for the XAccessibleTable interface.
+ Grid COntrol table objects are: the data table, the column header bar and the
+ row header bar. */
+class AccessibleGridControlTableBase :
+ public GridControlAccessibleElement,
+ public AccessibleGridControlTableImplHelper
+{
+public:
+ /** Constructor sets specified name and description.
+ @param rxParent XAccessible interface of the parent object.
+ @param rTable The Table control.
+ @param eNameText The constant for the name text.
+ @param eDescrText The constant for the description text. */
+ AccessibleGridControlTableBase(
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible >& rxParent,
+ ::svt::table::IAccessibleTable& rTable,
+ ::svt::table::AccessibleTableControlObjType eObjType );
+
+protected:
+ virtual ~AccessibleGridControlTableBase();
+
+public:
+ // XAccessibleContext -----------------------------------------------------
+
+ /** @return The count of visible children. */
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The role of this object (a table). */
+ virtual sal_Int16 SAL_CALL getAccessibleRole()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /* Derived classes have to implement:
+ - getAccessibleChild,
+ - getAccessibleIndexInParent. */
+
+ // XAccessibleComponent ---------------------------------------------------
+
+ /* Derived classes have to implement:
+ - getAccessibleAt,
+ - grabFocus,
+ - getAccessibleKeyBinding. */
+
+ // XAccessibleTable -------------------------------------------------------
+
+ /** @return The number of used rows in the table (0 = empty table). */
+ virtual sal_Int32 SAL_CALL getAccessibleRowCount()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The number of used columns in the table (0 = empty table). */
+ virtual sal_Int32 SAL_CALL getAccessibleColumnCount()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The row extent of the specified cell (always 1). */
+ virtual sal_Int32 SAL_CALL
+ getAccessibleRowExtentAt( sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return The column extent of the specified cell (always 1). */
+ virtual sal_Int32 SAL_CALL
+ getAccessibleColumnExtentAt( sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return The caption cell of the table (not supported). */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleCaption()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The summary object of the table (not supported). */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleSummary()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The child index of the specified cell. */
+ virtual sal_Int32 SAL_CALL getAccessibleIndex( sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return The row index of the specified child cell. */
+ virtual sal_Int32 SAL_CALL getAccessibleRow( sal_Int32 nChildIndex )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** @return The column index of the specified child cell. */
+ virtual sal_Int32 SAL_CALL getAccessibleColumn( sal_Int32 nChildIndex )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /* Derived classes have to implement:
+ - getAccessibleRowDescription,
+ - getAccessibleColumnDescription,
+ - getAccessibleRowHeaders,
+ - getAccessibleColumnHeaders,
+ - getSelectedAccessibleRows,
+ - getSelectedAccessibleColumns,
+ - isAccessibleRowSelected,
+ - isAccessibleColumnSelected,
+ - getAccessibleCellAt,
+ - isAccessibleSelected. */
+
+ // XInterface -------------------------------------------------------------
+
+ /** Queries for a new interface. */
+ ::com::sun::star::uno::Any SAL_CALL queryInterface(
+ const ::com::sun::star::uno::Type& rType )
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** Aquires the object (calls acquire() on base class). */
+ virtual void SAL_CALL acquire() throw ();
+
+ /** Releases the object (calls release() on base class). */
+ virtual void SAL_CALL release() throw ();
+
+ // XTypeProvider ----------------------------------------------------------
+
+ /** @return A sequence of possible types (received from base classes). */
+ virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return An unique implementation ID. */
+ virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+protected:
+ // internal helper methods ------------------------------------------------
+
+ /** @attention This method requires locked mutex's and a living object.
+ @return The number of cells of the table. */
+ sal_Int32 implGetChildCount() const;
+
+ /** @attention This method requires locked mutex's and a living object.
+ @return The row index of the specified cell index. */
+ sal_Int32 implGetRow( sal_Int32 nChildIndex ) const;
+ /** @attention This method requires locked mutex's and a living object.
+ @return The column index of the specified cell index. */
+ sal_Int32 implGetColumn( sal_Int32 nChildIndex ) const;
+ /** @attention This method requires locked mutex's and a living object.
+ @return The child index of the specified cell address. */
+ sal_Int32 implGetChildIndex( sal_Int32 nRow, sal_Int32 nColumn ) const;
+
+ /** Fills a sequence with sorted indexes of completely selected rows.
+ @attention This method requires locked mutex's and a living object.
+ @param rSeq Out-parameter that takes the sorted row index list. */
+ void implGetSelectedRows( ::com::sun::star::uno::Sequence< sal_Int32 >& rSeq );
+ /** Fills a sequence with sorted indexes of completely selected columns.
+ @attention This method requires locked mutex's and a living object.
+ @param rSeq Out-parameter that takes the sorted column index list. */
+ //void implGetSelectedColumns( ::com::sun::star::uno::Sequence< sal_Int32 >& rSeq );
+
+ /** @attention This method requires locked mutex's and a living object.
+ @throws <type>IndexOutOfBoundsException</type>
+ If the specified row index is invalid. */
+ void ensureIsValidRow( sal_Int32 nRow )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException );
+ /** @attention This method requires locked mutex's and a living object.
+ @throws <type>IndexOutOfBoundsException</type>
+ If the specified column index is invalid. */
+ void ensureIsValidColumn( sal_Int32 nColumn )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException );
+ /** @attention This method requires locked mutex's and a living object.
+ @throws <type>IndexOutOfBoundsException</type>
+ If the specified cell address is invalid. */
+ void ensureIsValidAddress( sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException );
+ /** @attention This method requires locked mutex's and a living object.
+ @throws <type>IndexOutOfBoundsException</type>
+ If the specified child index is invalid. */
+ void ensureIsValidIndex( sal_Int32 nChildIndex )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException );
+};
+
+// ============================================================================
+
+} // namespace accessibility
+
+// ============================================================================
+
+#endif // ACCESSIBILITY_EXT_ACCESSIBILEGRIDCONTROLTABLEBASE_HXX
+
diff --git a/accessibility/inc/accessibility/extended/AccessibleGridControlTableCell.hxx b/accessibility/inc/accessibility/extended/AccessibleGridControlTableCell.hxx
new file mode 100755
index 000000000000..dd44927d7fc1
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/AccessibleGridControlTableCell.hxx
@@ -0,0 +1,168 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef ACCESSIBILITY_EXT_ACCESSIBILEGRIDCONTROLTABLECELL_HXX
+#define ACCESSIBILITY_EXT_ACCESSIBILEGRIDCONTROLTABLECELL_HXX
+
+#include <comphelper/accessibletexthelper.hxx>
+#include <cppuhelper/implbase2.hxx>
+#include "accessibility/extended/AccessibleGridControlBase.hxx"
+#include <svtools/accessibletable.hxx>
+
+namespace accessibility
+{
+ class AccessibleGridControlCell : public AccessibleGridControlBase
+ {
+ private:
+ sal_Int32 m_nRowPos; // the row number of the table cell
+ sal_Int32 m_nColPos; // the column id of the table cell
+
+ protected:
+ // attribute access
+ inline sal_Int32 getRowPos( ) const { return m_nRowPos; }
+ inline sal_Int32 getColumnPos( ) const { return m_nColPos; }
+
+ // XAccessibleComponent
+ virtual void SAL_CALL grabFocus() throw ( ::com::sun::star::uno::RuntimeException );
+
+ protected:
+ AccessibleGridControlCell(
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
+ ::svt::table::IAccessibleTable& _rTable,
+ sal_Int32 _nRowPos,
+ sal_uInt16 _nColPos,
+ ::svt::table::AccessibleTableControlObjType _eType
+ );
+
+ virtual ~AccessibleGridControlCell();
+
+ private:
+ AccessibleGridControlCell(); // never implemented
+ AccessibleGridControlCell( const AccessibleGridControlCell& ); // never implemented
+ AccessibleGridControlCell& operator=( const AccessibleGridControlCell& ); // never implemented
+ };
+
+ typedef ::cppu::ImplHelper2 < ::com::sun::star::accessibility::XAccessibleText
+ , ::com::sun::star::accessibility::XAccessible
+ > AccessibleTextHelper_BASE;
+ // implementation of a table cell of GridControl
+ class AccessibleGridControlTableCell :public AccessibleGridControlCell
+ ,public AccessibleTextHelper_BASE
+ ,public ::comphelper::OCommonAccessibleText
+ {
+ private:
+ sal_Int32 m_nOffset;
+
+ protected:
+ // OCommonAccessibleText
+ virtual ::rtl::OUString implGetText();
+ virtual ::com::sun::star::lang::Locale implGetLocale();
+ virtual void implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex );
+ virtual Rectangle implGetBoundingBox();
+ virtual Rectangle implGetBoundingBoxOnScreen();
+
+ public:
+ AccessibleGridControlTableCell( const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
+ ::svt::table::IAccessibleTable& _rTable,
+ sal_Int32 _nRowId,
+ sal_uInt16 _nColId,
+ svt::table::AccessibleTableControlObjType eObjType);
+
+ // XInterface -------------------------------------------------------------
+
+ /** Queries for a new interface. */
+ ::com::sun::star::uno::Any SAL_CALL queryInterface(
+ const ::com::sun::star::uno::Type& rType )
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** Aquires the object (calls acquire() on base class). */
+ virtual void SAL_CALL acquire() throw ();
+
+ /** Releases the object (calls release() on base class). */
+ virtual void SAL_CALL release() throw ();
+
+ /** @return The index of this object among the parent's children. */
+ virtual sal_Int32 SAL_CALL getAccessibleIndexInParent()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return
+ The name of this class.
+ */
+ virtual ::rtl::OUString SAL_CALL getImplementationName()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return
+ The count of visible children.
+ */
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return
+ The XAccessible interface of the specified child.
+ */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleChild( sal_Int32 nChildIndex )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ /** Creates a new AccessibleStateSetHelper and fills it with states of the
+ current object.
+ @return
+ A filled AccessibleStateSetHelper.
+ */
+ ::utl::AccessibleStateSetHelper* implCreateStateSetHelper();
+
+ // XAccessible ------------------------------------------------------------
+
+ /** @return The XAccessibleContext interface of this object. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL
+ getAccessibleContext()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ // XAccessibleText
+ virtual sal_Int32 SAL_CALL getCaretPosition() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setCaretPosition( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Unicode SAL_CALL getCharacter( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL getCharacterBounds( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getCharacterCount() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getIndexAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getSelectedText() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getSelectionStart() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getSelectionEnd() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getText() throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ };
+}
+#endif // ACCESSIBILITY_EXT_ACCESSIBILEGRIDCONTROLTABLECELL_HXX
+
diff --git a/accessibility/inc/accessibility/extended/AccessibleToolPanelDeck.hxx b/accessibility/inc/accessibility/extended/AccessibleToolPanelDeck.hxx
new file mode 100755
index 000000000000..10c6520b6a3d
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/AccessibleToolPanelDeck.hxx
@@ -0,0 +1,91 @@
+/*************************************************************************
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACC_ACCESSIBLETOOLPANELDECK_HXX
+#define ACC_ACCESSIBLETOOLPANELDECK_HXX
+
+/** === begin UNO includes === **/
+/** === end UNO includes === **/
+
+#include <cppuhelper/implbase1.hxx>
+#include <toolkit/awt/vclxaccessiblecomponent.hxx>
+
+#include <boost/scoped_ptr.hpp>
+
+namespace svt
+{
+ class ToolPanelDeck;
+}
+
+//......................................................................................................................
+namespace accessibility
+{
+//......................................................................................................................
+
+ //==================================================================================================================
+ //= AccessibleToolPanelDeck
+ //==================================================================================================================
+ class AccessibleToolPanelDeck_Impl;
+ typedef VCLXAccessibleComponent AccessibleToolPanelDeck_Base;
+ class AccessibleToolPanelDeck : public AccessibleToolPanelDeck_Base
+ {
+ public:
+ AccessibleToolPanelDeck(
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& i_rAccessibleParent,
+ ::svt::ToolPanelDeck& i_rPanelDeck
+ );
+
+ using AccessibleToolPanelDeck_Base::NotifyAccessibleEvent;
+
+ protected:
+ virtual ~AccessibleToolPanelDeck();
+
+ // XAccessibleContext
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleComponent
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // OComponentHelper
+ virtual void SAL_CALL disposing();
+
+ // VCLXAccessibleComponent
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > GetChildAccessible( const VclWindowEvent& i_rVclWindowEvent );
+ virtual void FillAccessibleStateSet( ::utl::AccessibleStateSetHelper& i_rStateSet );
+
+ private:
+ ::boost::scoped_ptr< AccessibleToolPanelDeck_Impl > m_pImpl;
+ };
+
+//......................................................................................................................
+} // namespace accessibility
+//......................................................................................................................
+
+#endif // ACC_ACCESSIBLETOOLPANELDECK_HXX
diff --git a/accessibility/inc/accessibility/extended/AccessibleToolPanelDeckTabBar.hxx b/accessibility/inc/accessibility/extended/AccessibleToolPanelDeckTabBar.hxx
new file mode 100644
index 000000000000..cc2d39c5acbf
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/AccessibleToolPanelDeckTabBar.hxx
@@ -0,0 +1,92 @@
+/*************************************************************************
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACC_ACCESSIBLETOOLPANELTABBAR_HXX
+#define ACC_ACCESSIBLETOOLPANELTABBAR_HXX
+
+/** === begin UNO includes === **/
+/** === end UNO includes === **/
+
+#include <cppuhelper/implbase1.hxx>
+#include <toolkit/awt/vclxaccessiblecomponent.hxx>
+
+#include <boost/scoped_ptr.hpp>
+
+namespace svt
+{
+ class IToolPanelDeck;
+ class PanelTabBar;
+}
+
+//......................................................................................................................
+namespace accessibility
+{
+//......................................................................................................................
+
+ //==================================================================================================================
+ //= AccessibleToolPanelTabBar
+ //==================================================================================================================
+ class AccessibleToolPanelTabBar_Impl;
+ typedef VCLXAccessibleComponent AccessibleToolPanelTabBar_Base;
+ class AccessibleToolPanelTabBar : public AccessibleToolPanelTabBar_Base
+ {
+ public:
+ AccessibleToolPanelTabBar(
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& i_rAccessibleParent,
+ ::svt::IToolPanelDeck& i_rPanelDeck,
+ ::svt::PanelTabBar& i_rTabBar
+ );
+
+ using AccessibleToolPanelTabBar_Base::NotifyAccessibleEvent;
+
+ protected:
+ virtual ~AccessibleToolPanelTabBar();
+
+ // XAccessibleContext
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleComponent
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+
+ // OComponentHelper
+ virtual void SAL_CALL disposing();
+
+ // VCLXAccessibleComponent
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > GetChildAccessible( const VclWindowEvent& i_rVclWindowEvent );
+ virtual void FillAccessibleStateSet( ::utl::AccessibleStateSetHelper& i_rStateSet );
+
+ private:
+ ::boost::scoped_ptr< AccessibleToolPanelTabBar_Impl > m_pImpl;
+ };
+
+//......................................................................................................................
+} // namespace accessibility
+//......................................................................................................................
+
+#endif // ACC_ACCESSIBLETOOLPANELTABBAR_HXX
diff --git a/accessibility/inc/accessibility/extended/AccessibleToolPanelDeckTabBarItem.hxx b/accessibility/inc/accessibility/extended/AccessibleToolPanelDeckTabBarItem.hxx
new file mode 100644
index 000000000000..80b2ccaaf104
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/AccessibleToolPanelDeckTabBarItem.hxx
@@ -0,0 +1,107 @@
+/*************************************************************************
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACC_ACCESSIBLETOOLPANELDECKTABBARITEM_HXX
+#define ACC_ACCESSIBLETOOLPANELDECKTABBARITEM_HXX
+
+/** === begin UNO includes === **/
+/** === end UNO includes === **/
+
+#include <comphelper/accessiblecomponenthelper.hxx>
+#include <cppuhelper/implbase1.hxx>
+
+#include <boost/scoped_ptr.hpp>
+
+namespace svt
+{
+ class IToolPanelDeck;
+ class PanelTabBar;
+}
+
+//......................................................................................................................
+namespace accessibility
+{
+//......................................................................................................................
+
+ //==================================================================================================================
+ //= AccessibleToolPanelDeckTabBarItem
+ //==================================================================================================================
+ class AccessibleToolPanelDeckTabBarItem_Impl;
+ typedef ::comphelper::OAccessibleExtendedComponentHelper AccessibleToolPanelDeckTabBarItem_Base;
+ class AccessibleToolPanelDeckTabBarItem : public AccessibleToolPanelDeckTabBarItem_Base
+ {
+ public:
+ AccessibleToolPanelDeckTabBarItem(
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& i_rAccessibleParent,
+ ::svt::IToolPanelDeck& i_rPanelDeck,
+ ::svt::PanelTabBar& i_rTabBar,
+ const size_t i_nItemPos
+ );
+
+ using AccessibleToolPanelDeckTabBarItem_Base::NotifyAccessibleEvent;
+ using AccessibleToolPanelDeckTabBarItem_Base::lateInit;
+
+ protected:
+ virtual ~AccessibleToolPanelDeckTabBarItem();
+
+ public:
+ // XAccessibleContext
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleComponent
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleExtendedComponent
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFont > SAL_CALL getFont( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getTitledBorderText( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getToolTipText( ) throw (::com::sun::star::uno::RuntimeException);
+
+ protected:
+ // OCommonAccessibleComponent
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL implGetBounds( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // OComponentHelper
+ virtual void SAL_CALL disposing();
+
+ protected:
+ ::boost::scoped_ptr< AccessibleToolPanelDeckTabBarItem_Impl > m_pImpl;
+ };
+
+//......................................................................................................................
+} // namespace accessibility
+//......................................................................................................................
+
+#endif // ACC_ACCESSIBLETOOLPANELDECKTABBARITEM_HXX
diff --git a/accessibility/inc/accessibility/extended/accessiblebrowseboxcell.hxx b/accessibility/inc/accessibility/extended/accessiblebrowseboxcell.hxx
new file mode 100644
index 000000000000..a7b78c092213
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/accessiblebrowseboxcell.hxx
@@ -0,0 +1,86 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_ACCESSIBLE_BROWSE_BOX_CELL_HXX
+#define ACCESSIBILITY_ACCESSIBLE_BROWSE_BOX_CELL_HXX
+
+#include "accessibility/extended/AccessibleBrowseBoxBase.hxx"
+#include <svtools/AccessibleBrowseBoxObjType.hxx>
+
+// .................................................................................
+namespace accessibility
+{
+// .................................................................................
+
+ // =============================================================================
+ // = AccessibleBrowseBoxCell
+ // =============================================================================
+ /** common accessibility-functionality for browse box elements which occupy a cell
+ */
+ class AccessibleBrowseBoxCell : public AccessibleBrowseBoxBase
+ {
+ private:
+ sal_Int32 m_nRowPos; // the row number of the table cell
+ sal_uInt16 m_nColPos; // the column id of the table cell
+
+ protected:
+ // attribute access
+ inline sal_Int32 getRowPos( ) const { return m_nRowPos; }
+ inline sal_Int32 getColumnPos( ) const { return m_nColPos; }
+
+ protected:
+ // AccessibleBrowseBoxBase overridables
+ virtual Rectangle implGetBoundingBox();
+ virtual Rectangle implGetBoundingBoxOnScreen();
+
+ // XAccessibleComponent
+ virtual void SAL_CALL grabFocus() throw ( ::com::sun::star::uno::RuntimeException );
+
+ protected:
+ AccessibleBrowseBoxCell(
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
+ ::svt::IAccessibleTableProvider& _rBrowseBox,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
+ sal_Int32 _nRowPos,
+ sal_uInt16 _nColPos,
+ ::svt::AccessibleBrowseBoxObjType _eType = ::svt::BBTYPE_TABLECELL
+ );
+
+ virtual ~AccessibleBrowseBoxCell();
+
+ private:
+ AccessibleBrowseBoxCell(); // never implemented
+ AccessibleBrowseBoxCell( const AccessibleBrowseBoxCell& ); // never implemented
+ AccessibleBrowseBoxCell& operator=( const AccessibleBrowseBoxCell& ); // never implemented
+ };
+
+// .................................................................................
+} // namespace accessibility
+// .................................................................................
+
+
+#endif // ACCESSIBILITY_ACCESSIBLE_BROWSE_BOX_CELL_HXX
diff --git a/accessibility/inc/accessibility/extended/accessibleeditbrowseboxcell.hxx b/accessibility/inc/accessibility/extended/accessibleeditbrowseboxcell.hxx
new file mode 100644
index 000000000000..a38877d5aeae
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/accessibleeditbrowseboxcell.hxx
@@ -0,0 +1,156 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef ACCESSIBILITY_EXT_ACCESSIBILEEDITBROWSEBOXTABLECELL_HXX
+#define ACCESSIBILITY_EXT_ACCESSIBILEEDITBROWSEBOXTABLECELL_HXX
+
+#ifndef ACCESSIBILITY_EXT_BROWSE_BOX_CELL_HXX
+#include "accessiblebrowseboxcell.hxx"
+#endif
+#include <com/sun/star/accessibility/XAccessibleAction.hpp>
+#include <com/sun/star/accessibility/XAccessibleEventListener.hpp>
+#include <com/sun/star/accessibility/XAccessibleRelationSet.hpp>
+#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
+#include <com/sun/star/accessibility/XAccessibleValue.hpp>
+#include <cppuhelper/implbase1.hxx>
+#include <cppuhelper/compbase1.hxx>
+#include <comphelper/accessiblewrapper.hxx>
+
+namespace accessibility
+{
+ // =============================================================================
+ // = EditBrowseBoxTableCell
+ // =============================================================================
+ class EditBrowseBoxTableCell :public AccessibleBrowseBoxCell
+ ,public ::comphelper::OAccessibleContextWrapperHelper
+ {
+ public:
+ EditBrowseBoxTableCell(
+ const com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
+ const com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxOwningAccessible,
+ const com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >& _xControlChild,
+ ::svt::IAccessibleTableProvider& _rBrowseBox,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
+ sal_Int32 _nRowPos,
+ sal_uInt16 _nColPos
+ );
+
+ protected:
+ virtual ~EditBrowseBoxTableCell();
+
+ protected:
+ // XAccessibleComponent
+ virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException) ;
+ virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException) ;
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw ( ::com::sun::star::uno::RuntimeException );
+
+ // XInterface
+ DECLARE_XINTERFACE( )
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER( )
+
+ // XAccessibleContext
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) throw (::com::sun::star::uno::RuntimeException);
+
+ sal_Int16 SAL_CALL getAccessibleRole() throw ( ::com::sun::star::uno::RuntimeException );
+
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+
+ virtual void SAL_CALL disposing( const ::com::sun::star::lang::EventObject& Source ) throw (::com::sun::star::uno::RuntimeException);
+ protected:
+ // OComponentHelper
+ virtual void SAL_CALL disposing();
+
+ // XComponent/OComponentProxyAggregationHelper (needs to be disambiguated)
+ virtual void SAL_CALL dispose() throw( ::com::sun::star::uno::RuntimeException );
+
+ // OAccessibleContextWrapperHelper();
+ void notifyTranslatedEvent( const ::com::sun::star::accessibility::AccessibleEventObject& _rEvent ) throw (::com::sun::star::uno::RuntimeException);
+
+ private:
+ EditBrowseBoxTableCell(); // never implemented
+ EditBrowseBoxTableCell( const EditBrowseBoxTableCell& ); // never implemented
+ EditBrowseBoxTableCell& operator=( const EditBrowseBoxTableCell& ); // never implemented
+ };
+
+ // =============================================================================
+ // = EditBrowseBoxTableCell
+ // =============================================================================
+ typedef ::cppu::WeakComponentImplHelper1 < ::com::sun::star::accessibility::XAccessible
+ > EditBrowseBoxTableCellAccess_Base;
+ // XAccessible providing an EditBrowseBoxTableCell
+ class EditBrowseBoxTableCellAccess
+ :public ::comphelper::OBaseMutex
+ ,public EditBrowseBoxTableCellAccess_Base
+ {
+ protected:
+ ::com::sun::star::uno::WeakReference< ::com::sun::star::accessibility::XAccessibleContext >
+ m_aContext;
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
+ m_xParent;
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
+ m_xControlAccessible;
+ ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >
+ m_xFocusWindow;
+ ::svt::IAccessibleTableProvider* m_pBrowseBox;
+ sal_Int32 m_nRowPos;
+ sal_uInt16 m_nColPos;
+
+ public:
+ EditBrowseBoxTableCellAccess(
+ const ::com::sun::star::uno::Reference< com::sun::star::accessibility::XAccessible >& _rxParent,
+ const ::com::sun::star::uno::Reference< com::sun::star::accessibility::XAccessible > _xControlAccessible,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
+ ::svt::IAccessibleTableProvider& _rBrowseBox,
+ sal_Int32 _nRowPos,
+ sal_uInt16 _nColPos
+ );
+
+ protected:
+ virtual ~EditBrowseBoxTableCellAccess();
+
+ // XAccessible
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XComponent/OComponentHelper
+ virtual void SAL_CALL disposing();
+
+ private:
+ EditBrowseBoxTableCellAccess(); // never implemented
+ EditBrowseBoxTableCellAccess( const EditBrowseBoxTableCellAccess& ); // never implemented
+ EditBrowseBoxTableCellAccess& operator=( const EditBrowseBoxTableCellAccess& ); // never implemented
+ };
+}
+
+#endif // ACCESSIBILITY_EXT_ACCESSIBILEEDITBROWSEBOXTABLECELL_HXX
+
diff --git a/accessibility/inc/accessibility/extended/accessibleiconchoicectrl.hxx b/accessibility/inc/accessibility/extended/accessibleiconchoicectrl.hxx
new file mode 100644
index 000000000000..05dc41313fdd
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/accessibleiconchoicectrl.hxx
@@ -0,0 +1,119 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_EXT_ACCESSIBLEICONCHOICECTRL_HXX_
+#define ACCESSIBILITY_EXT_ACCESSIBLEICONCHOICECTRL_HXX_
+
+#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
+#include <com/sun/star/lang/DisposedException.hpp>
+#include <cppuhelper/implbase2.hxx>
+#include <vcl/vclevent.hxx>
+#include <toolkit/awt/vclxaccessiblecomponent.hxx>
+
+// class AccessibleListBox -----------------------------------------------
+
+class SvtIconChoiceCtrl;
+
+//........................................................................
+namespace accessibility
+{
+//........................................................................
+
+ typedef ::cppu::ImplHelper2< ::com::sun::star::accessibility::XAccessible
+ , ::com::sun::star::accessibility::XAccessibleSelection> AccessibleIconChoiceCtrl_BASE;
+
+ /** the class OAccessibleListBoxEntry represents the base class for an accessible object of a listbox entry
+ */
+ class AccessibleIconChoiceCtrl :public AccessibleIconChoiceCtrl_BASE
+ ,public VCLXAccessibleComponent
+ {
+ protected:
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > m_xParent;
+
+ protected:
+ virtual ~AccessibleIconChoiceCtrl();
+
+ /** this function is called upon disposing the component */
+ virtual void SAL_CALL disposing();
+
+ virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
+ virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
+
+ SvtIconChoiceCtrl* getCtrl();
+ public:
+ /** OAccessibleBase needs a valid view
+ @param _rIconCtrl
+ is the box for which we implement an accessible object
+ @param _xParent
+ is our parent accessible object
+ */
+ AccessibleIconChoiceCtrl( SvtIconChoiceCtrl& _rIconCtrl,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _xParent );
+
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER()
+
+ // XInterface
+ DECLARE_XINTERFACE()
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw(com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& ServiceName ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw(com::sun::star::uno::RuntimeException);
+
+ // XServiceInfo - static methods
+ static com::sun::star::uno::Sequence< ::rtl::OUString > getSupportedServiceNames_Static(void) throw(com::sun::star::uno::RuntimeException);
+ static ::rtl::OUString getImplementationName_Static(void) throw(com::sun::star::uno::RuntimeException);
+
+ // XAccessible
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleContext
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleSelection
+ void SAL_CALL selectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ void SAL_CALL clearAccessibleSelection( ) throw (::com::sun::star::uno::RuntimeException);
+ void SAL_CALL selectAllAccessibleChildren( ) throw (::com::sun::star::uno::RuntimeException);
+ sal_Int32 SAL_CALL getSelectedAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ void SAL_CALL deselectAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ };
+
+//........................................................................
+}// namespace accessibility
+//........................................................................
+
+#endif // ACCESSIBILITY_EXT_ACCESSIBLEICONCHOICECTRL_HXX_
+
diff --git a/accessibility/inc/accessibility/extended/accessibleiconchoicectrlentry.hxx b/accessibility/inc/accessibility/extended/accessibleiconchoicectrlentry.hxx
new file mode 100644
index 000000000000..245645dfebf0
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/accessibleiconchoicectrlentry.hxx
@@ -0,0 +1,213 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_EXT_ACCESSIBLEICONCHOICECTRLENTRY_HXX_
+#define ACCESSIBILITY_EXT_ACCESSIBLEICONCHOICECTRLENTRY_HXX_
+
+#include <deque>
+#include <com/sun/star/accessibility/XAccessible.hpp>
+#include <com/sun/star/accessibility/XAccessibleComponent.hpp>
+#include <com/sun/star/accessibility/XAccessibleContext.hpp>
+#include <com/sun/star/accessibility/XAccessibleStateSet.hpp>
+#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp>
+#include <com/sun/star/accessibility/XAccessibleAction.hpp>
+#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
+#include <com/sun/star/lang/DisposedException.hpp>
+#include <com/sun/star/lang/XEventListener.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <cppuhelper/compbase8.hxx>
+#include <comphelper/broadcasthelper.hxx>
+#include <comphelper/accessibletexthelper.hxx>
+#include <tools/gen.hxx>
+
+// forward ---------------------------------------------------------------
+
+class SvxIconChoiceCtrlEntry;
+class SvtIconChoiceCtrl;
+
+//........................................................................
+namespace accessibility
+{
+//........................................................................
+
+// class AccessibleIconChoiceCtrlEntry ------------------------------------------
+
+ typedef ::cppu::WeakAggComponentImplHelper8< ::com::sun::star::accessibility::XAccessible
+ , ::com::sun::star::accessibility::XAccessibleContext
+ , ::com::sun::star::accessibility::XAccessibleComponent
+ , ::com::sun::star::accessibility::XAccessibleEventBroadcaster
+ , ::com::sun::star::accessibility::XAccessibleText
+ , ::com::sun::star::accessibility::XAccessibleAction
+ , ::com::sun::star::lang::XServiceInfo
+ , ::com::sun::star::lang::XEventListener > AccessibleIconChoiceCtrlEntry_BASE;
+
+ /** the class AccessibleListBoxEntry represents the class for an accessible object of a listbox entry */
+ class AccessibleIconChoiceCtrlEntry : public ::comphelper::OBaseMutex,
+ public AccessibleIconChoiceCtrlEntry_BASE,
+ public ::comphelper::OCommonAccessibleText
+ {
+ private:
+ /** The treelistbox control */
+ SvtIconChoiceCtrl* m_pIconCtrl;
+ sal_Int32 m_nIndex;
+
+ protected:
+ /// client id in the AccessibleEventNotifier queue
+ sal_uInt32 m_nClientId;
+
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > m_xParent;
+
+ private:
+ #ifdef ACCESSIBLE_EVENT_NOTIFICATION_ENABLED
+ // (the following method is unused currently. If you need it, simply remove the #ifdef thing here and
+ // in the cxx)
+ /** notifies all listeners that this object has changed
+ @param _nEventId
+ is the event id
+ @param _aOldValue
+ is the old value
+ @param _aNewValue
+ is the new value
+ */
+ void NotifyAccessibleEvent( sal_Int16 _nEventId,
+ const ::com::sun::star::uno::Any& _aOldValue,
+ const ::com::sun::star::uno::Any& _aNewValue );
+ #endif
+
+ Rectangle GetBoundingBox_Impl() const;
+ Rectangle GetBoundingBoxOnScreen_Impl() const;
+ sal_Bool IsAlive_Impl() const;
+ sal_Bool IsShowing_Impl() const;
+
+ Rectangle GetBoundingBox() throw ( ::com::sun::star::lang::DisposedException );
+ Rectangle GetBoundingBoxOnScreen() throw ( ::com::sun::star::lang::DisposedException );
+ void EnsureIsAlive() const throw ( ::com::sun::star::lang::DisposedException );
+
+ protected:
+ virtual ~AccessibleIconChoiceCtrlEntry();
+ /** this function is called upon disposing the component
+ */
+ virtual void SAL_CALL disposing();
+
+ // OCommonAccessibleText
+ virtual ::rtl::OUString implGetText();
+ virtual ::com::sun::star::lang::Locale implGetLocale();
+ virtual void implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex );
+
+ public:
+ /** Ctor()
+ @param _rListBox
+ the view control
+ @param _pEntry
+ the entry
+ @param _xParent
+ is our parent accessible object
+ */
+ AccessibleIconChoiceCtrlEntry( SvtIconChoiceCtrl& _rIconCtrl,
+ ULONG _nPos,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _xParent );
+
+ // XTypeProvider
+ virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId() throw (::com::sun::star::uno::RuntimeException);
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw(com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& ServiceName ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw(com::sun::star::uno::RuntimeException);
+
+ // XServiceInfo - static methods
+ static com::sun::star::uno::Sequence< ::rtl::OUString > getSupportedServiceNames_Static(void) throw(com::sun::star::uno::RuntimeException);
+ static ::rtl::OUString getImplementationName_Static(void) throw(com::sun::star::uno::RuntimeException);
+
+ // XEventListener
+ virtual void SAL_CALL disposing( const ::com::sun::star::lang::EventObject& Source ) throw(::com::sun::star::uno::RuntimeException);
+
+ // XAccessible
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleContext
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::lang::Locale SAL_CALL getLocale( ) throw (::com::sun::star::accessibility::IllegalAccessibleComponentStateException, ::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleComponent
+ virtual sal_Bool SAL_CALL containsPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL getBounds( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Point SAL_CALL getLocation( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Point SAL_CALL getLocationOnScreen( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Size SAL_CALL getSize( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleText
+ virtual sal_Int32 SAL_CALL getCaretPosition() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setCaretPosition( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Unicode SAL_CALL getCharacter( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL getCharacterBounds( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getCharacterCount() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getIndexAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getSelectedText() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getSelectionStart() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getSelectionEnd() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getText() throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleEventBroadcaster
+ using cppu::WeakAggComponentImplHelperBase::addEventListener;
+ virtual void SAL_CALL addEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleEventListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ using cppu::WeakAggComponentImplHelperBase::removeEventListener;
+ virtual void SAL_CALL removeEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleEventListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleAction
+ virtual sal_Int32 SAL_CALL getAccessibleActionCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL doAccessibleAction( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleActionDescription( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleKeyBinding > SAL_CALL getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ };
+
+//........................................................................
+}// namespace accessibility
+//........................................................................
+
+#endif // ACCESSIBILITY_EXT_ACCESSIBLELISTBOXENTRY_HXX_
+
diff --git a/accessibility/inc/accessibility/extended/accessiblelistbox.hxx b/accessibility/inc/accessibility/extended/accessiblelistbox.hxx
new file mode 100644
index 000000000000..a92ac6356fa2
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/accessiblelistbox.hxx
@@ -0,0 +1,125 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_EXT_ACCESSIBLELISTBOX_HXX_
+#define ACCESSIBILITY_EXT_ACCESSIBLELISTBOX_HXX_
+
+#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
+#include <com/sun/star/lang/DisposedException.hpp>
+#include <cppuhelper/implbase2.hxx>
+#include <vcl/vclevent.hxx>
+#include <toolkit/awt/vclxaccessiblecomponent.hxx>
+
+
+// class AccessibleListBox -----------------------------------------------
+
+class SvTreeListBox;
+
+//........................................................................
+namespace accessibility
+{
+//........................................................................
+
+ typedef ::cppu::ImplHelper2< ::com::sun::star::accessibility::XAccessible
+ , ::com::sun::star::accessibility::XAccessibleSelection> AccessibleListBox_BASE;
+
+ /** the class OAccessibleListBoxEntry represents the base class for an accessible object of a listbox entry
+ */
+ class AccessibleListBox :public AccessibleListBox_BASE
+ ,public VCLXAccessibleComponent
+ {
+ protected:
+
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > m_xParent;
+
+ protected:
+ virtual ~AccessibleListBox();
+
+ // OComponentHelper overridables
+ /** this function is called upon disposing the component */
+ virtual void SAL_CALL disposing();
+
+ // VCLXAccessibleComponent
+ virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
+ virtual void ProcessWindowChildEvent( const VclWindowEvent& rVclWindowEvent );
+ virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
+
+ SvTreeListBox* getListBox() const;
+
+ public:
+ /** OAccessibleBase needs a valid view
+ @param _rListBox
+ is the box for which we implement an accessible object
+ @param _xParent
+ is our parent accessible object
+ */
+ AccessibleListBox( SvTreeListBox& _rListBox,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _xParent );
+
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER()
+
+ // XInterface
+ DECLARE_XINTERFACE()
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw(com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& ServiceName ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw(com::sun::star::uno::RuntimeException);
+
+ // XServiceInfo - static methods
+ static com::sun::star::uno::Sequence< ::rtl::OUString > getSupportedServiceNames_Static(void) throw(com::sun::star::uno::RuntimeException);
+ static ::rtl::OUString getImplementationName_Static(void) throw(com::sun::star::uno::RuntimeException);
+
+ // XAccessible
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleContext
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleSelection
+ void SAL_CALL selectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ void SAL_CALL clearAccessibleSelection( ) throw (::com::sun::star::uno::RuntimeException);
+ void SAL_CALL selectAllAccessibleChildren( ) throw (::com::sun::star::uno::RuntimeException);
+ sal_Int32 SAL_CALL getSelectedAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ void SAL_CALL deselectAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ };
+
+//........................................................................
+}// namespace accessibility
+//........................................................................
+
+#endif // ACCESSIBILITY_EXT_ACCESSIBLELISTBOX_HXX_
+
diff --git a/accessibility/inc/accessibility/extended/accessiblelistboxentry.hxx b/accessibility/inc/accessibility/extended/accessiblelistboxentry.hxx
new file mode 100644
index 000000000000..ce0fa5ad0ac0
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/accessiblelistboxentry.hxx
@@ -0,0 +1,223 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_EXT_ACCESSIBLELISTBOXENTRY_HXX_
+#define ACCESSIBILITY_EXT_ACCESSIBLELISTBOXENTRY_HXX_
+
+#include <deque>
+#include <com/sun/star/accessibility/XAccessible.hpp>
+#include <com/sun/star/accessibility/XAccessibleComponent.hpp>
+#include <com/sun/star/accessibility/XAccessibleContext.hpp>
+#include <com/sun/star/accessibility/XAccessibleStateSet.hpp>
+#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp>
+#include <com/sun/star/accessibility/XAccessibleAction.hpp>
+#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
+#include <com/sun/star/lang/DisposedException.hpp>
+#include <com/sun/star/lang/XEventListener.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <cppuhelper/compbase8.hxx>
+#include <comphelper/broadcasthelper.hxx>
+#include <comphelper/accessibletexthelper.hxx>
+#include <tools/gen.hxx>
+#include "accessibility/extended/listboxaccessible.hxx"
+
+// forward ---------------------------------------------------------------
+
+namespace com { namespace sun { namespace star { namespace awt {
+ struct Point;
+ struct Rectangle;
+ struct Size;
+ class XFocusListener;
+} } } }
+
+class SvTreeListBox;
+class SvLBoxEntry;
+
+//........................................................................
+namespace accessibility
+{
+//........................................................................
+
+// class AccessibleListBoxEntry ------------------------------------------
+
+ typedef ::cppu::WeakAggComponentImplHelper8< ::com::sun::star::accessibility::XAccessible
+ , ::com::sun::star::accessibility::XAccessibleContext
+ , ::com::sun::star::accessibility::XAccessibleComponent
+ , ::com::sun::star::accessibility::XAccessibleEventBroadcaster
+ , ::com::sun::star::accessibility::XAccessibleAction
+ , ::com::sun::star::accessibility::XAccessibleSelection
+ , ::com::sun::star::accessibility::XAccessibleText
+ , ::com::sun::star::lang::XServiceInfo > AccessibleListBoxEntry_BASE;
+
+ /** the class AccessibleListBoxEntry represents the class for an accessible object of a listbox entry */
+ class AccessibleListBoxEntry:public ::comphelper::OBaseMutex
+ ,public AccessibleListBoxEntry_BASE
+ ,public ::comphelper::OCommonAccessibleText
+ ,public ListBoxAccessibleBase
+ {
+ friend class AccessibleListBox;
+
+ private:
+ /** The treelistbox control */
+ SvTreeListBox* m_pListBox;
+ ::std::deque< sal_Int32 > m_aEntryPath;
+
+ protected:
+ /// client id in the AccessibleEventNotifier queue
+ sal_uInt32 m_nClientId;
+
+ ::com::sun::star::uno::WeakReference< ::com::sun::star::accessibility::XAccessible >
+ m_aParent;
+
+ private:
+ Rectangle GetBoundingBox_Impl() const;
+ Rectangle GetBoundingBoxOnScreen_Impl() const;
+ sal_Bool IsAlive_Impl() const;
+ sal_Bool IsShowing_Impl() const;
+
+ Rectangle GetBoundingBox() throw ( ::com::sun::star::lang::DisposedException );
+ Rectangle GetBoundingBoxOnScreen() throw ( ::com::sun::star::lang::DisposedException );
+ void EnsureIsAlive() const throw ( ::com::sun::star::lang::DisposedException );
+
+ protected:
+ virtual ~AccessibleListBoxEntry();
+
+ /** this function is called upon disposing the component
+ */
+ virtual void SAL_CALL disposing();
+
+ // ListBoxAccessible/XComponent
+ virtual void SAL_CALL dispose() throw ( ::com::sun::star::uno::RuntimeException );
+
+ // OCommonAccessibleText
+ virtual ::rtl::OUString implGetText();
+ virtual ::com::sun::star::lang::Locale implGetLocale();
+ virtual void implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex );
+
+ public:
+ /** Ctor()
+ @param _rListBox
+ the view control
+ @param _pEntry
+ the entry
+ @param _xParent
+ is our parent accessible object
+ */
+ AccessibleListBoxEntry( SvTreeListBox& _rListBox, SvLBoxEntry* _pEntry,
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible >& _xParent );
+
+ protected:
+ // XTypeProvider
+ virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId() throw (::com::sun::star::uno::RuntimeException);
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw(com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& ServiceName ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw(com::sun::star::uno::RuntimeException);
+
+ // XServiceInfo - static methods
+ static com::sun::star::uno::Sequence< ::rtl::OUString > getSupportedServiceNames_Static(void) throw(com::sun::star::uno::RuntimeException);
+ static ::rtl::OUString getImplementationName_Static(void) throw(com::sun::star::uno::RuntimeException);
+
+ // XAccessible
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleContext
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::lang::Locale SAL_CALL getLocale( ) throw (::com::sun::star::accessibility::IllegalAccessibleComponentStateException, ::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleComponent
+ virtual sal_Bool SAL_CALL containsPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL getBounds( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Point SAL_CALL getLocation( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Point SAL_CALL getLocationOnScreen( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Size SAL_CALL getSize( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleText
+ virtual sal_Int32 SAL_CALL getCaretPosition() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setCaretPosition( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Unicode SAL_CALL getCharacter( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL getCharacterBounds( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getCharacterCount() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getIndexAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getSelectedText() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getSelectionStart() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getSelectionEnd() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getText() throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleEventBroadcaster
+ using cppu::WeakAggComponentImplHelperBase::addEventListener;
+ virtual void SAL_CALL addEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleEventListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ using cppu::WeakAggComponentImplHelperBase::removeEventListener;
+ virtual void SAL_CALL removeEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleEventListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleAction
+ virtual sal_Int32 SAL_CALL getAccessibleActionCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL doAccessibleAction( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleActionDescription( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleKeyBinding > SAL_CALL getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleSelection
+ void SAL_CALL selectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ void SAL_CALL clearAccessibleSelection( ) throw (::com::sun::star::uno::RuntimeException);
+ void SAL_CALL selectAllAccessibleChildren( ) throw (::com::sun::star::uno::RuntimeException);
+ sal_Int32 SAL_CALL getSelectedAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ void SAL_CALL deselectAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+
+ private:
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > implGetParentAccessible( ) const;
+ };
+
+//........................................................................
+}// namespace accessibility
+//........................................................................
+
+#endif // ACCESSIBILITY_EXT_ACCESSIBLELISTBOXENTRY_HXX_
+
diff --git a/accessibility/inc/accessibility/extended/accessibletabbar.hxx b/accessibility/inc/accessibility/extended/accessibletabbar.hxx
new file mode 100644
index 000000000000..df30cc1dc647
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/accessibletabbar.hxx
@@ -0,0 +1,120 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_EXT_ACCESSIBLETABBAR_HXX_
+#define ACCESSIBILITY_EXT_ACCESSIBLETABBAR_HXX_
+
+#include <com/sun/star/accessibility/XAccessible.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <cppuhelper/implbase2.hxx>
+#include "accessibility/extended/accessibletabbarbase.hxx"
+
+#include <vector>
+
+namespace utl {
+class AccessibleStateSetHelper;
+}
+
+//.........................................................................
+namespace accessibility
+{
+//.........................................................................
+
+ // ----------------------------------------------------
+ // class AccessibleTabBar
+ // ----------------------------------------------------
+
+ typedef ::cppu::ImplHelper2<
+ ::com::sun::star::accessibility::XAccessible,
+ ::com::sun::star::lang::XServiceInfo > AccessibleTabBar_BASE;
+
+ class AccessibleTabBar : public AccessibleTabBarBase,
+ public AccessibleTabBar_BASE
+ {
+ private:
+ typedef ::std::vector< ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > > AccessibleChildren;
+
+ AccessibleChildren m_aAccessibleChildren;
+
+ protected:
+ virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
+ virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
+
+ // OCommonAccessibleComponent
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL implGetBounds( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XComponent
+ virtual void SAL_CALL disposing();
+
+ public:
+ AccessibleTabBar( TabBar* pTabBar );
+ ~AccessibleTabBar();
+
+ // XInterface
+ DECLARE_XINTERFACE()
+
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER()
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& rServiceName ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessible
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleContext
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::lang::Locale SAL_CALL getLocale( ) throw (::com::sun::star::accessibility::IllegalAccessibleComponentStateException, ::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleComponent
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleExtendedComponent
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFont > SAL_CALL getFont( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getTitledBorderText( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getToolTipText( ) throw (::com::sun::star::uno::RuntimeException);
+ };
+
+//.........................................................................
+} // namespace accessibility
+//.........................................................................
+
+#endif // ACCESSIBILITY_EXT_ACCESSIBLETABBAR_HXX_
+
diff --git a/accessibility/inc/accessibility/extended/accessibletabbarbase.hxx b/accessibility/inc/accessibility/extended/accessibletabbarbase.hxx
new file mode 100644
index 000000000000..eac79b152b75
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/accessibletabbarbase.hxx
@@ -0,0 +1,78 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_EXT_ACCESSIBLETABBARBASE_HXX
+#define ACCESSIBILITY_EXT_ACCESSIBLETABBARBASE_HXX
+
+#include <comphelper/accessiblecomponenthelper.hxx>
+#include <tools/link.hxx>
+
+class TabBar;
+class VCLExternalSolarLock;
+class VclSimpleEvent;
+class VclWindowEvent;
+
+//.........................................................................
+namespace accessibility
+{
+//.........................................................................
+
+// ============================================================================
+
+typedef ::comphelper::OAccessibleExtendedComponentHelper AccessibleExtendedComponentHelper_BASE;
+
+class AccessibleTabBarBase : public AccessibleExtendedComponentHelper_BASE
+{
+public:
+ explicit AccessibleTabBarBase( TabBar* pTabBar );
+ virtual ~AccessibleTabBarBase();
+
+protected:
+ DECL_LINK( WindowEventListener, VclSimpleEvent* );
+
+ virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
+
+ // XComponent
+ virtual void SAL_CALL disposing();
+
+private:
+ void SetTabBarPointer( TabBar* pTabBar );
+ void ClearTabBarPointer();
+
+protected:
+ VCLExternalSolarLock* m_pExternalLock;
+ TabBar* m_pTabBar;
+};
+
+// ============================================================================
+
+//.........................................................................
+} // namespace accessibility
+//.........................................................................
+
+#endif
+
diff --git a/accessibility/inc/accessibility/extended/accessibletabbarpage.hxx b/accessibility/inc/accessibility/extended/accessibletabbarpage.hxx
new file mode 100644
index 000000000000..9ddf20b6cc65
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/accessibletabbarpage.hxx
@@ -0,0 +1,137 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_EXT_ACCESSIBLETABBARPAGE_HXX_
+#define ACCESSIBILITY_EXT_ACCESSIBLETABBARPAGE_HXX_
+
+#include <com/sun/star/accessibility/XAccessible.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <cppuhelper/implbase2.hxx>
+#include "accessibility/extended/accessibletabbarbase.hxx"
+
+#include <vector>
+
+namespace utl {
+class AccessibleStateSetHelper;
+}
+
+//.........................................................................
+namespace accessibility
+{
+//.........................................................................
+
+ // ----------------------------------------------------
+ // class AccessibleTabBarPage
+ // ----------------------------------------------------
+
+ typedef ::cppu::ImplHelper2<
+ ::com::sun::star::accessibility::XAccessible,
+ ::com::sun::star::lang::XServiceInfo > AccessibleTabBarPage_BASE;
+
+ class AccessibleTabBarPage : public AccessibleTabBarBase,
+ public AccessibleTabBarPage_BASE
+ {
+ friend class AccessibleTabBarPageList;
+
+ private:
+ sal_uInt16 m_nPageId;
+ sal_Bool m_bEnabled;
+ sal_Bool m_bShowing;
+ sal_Bool m_bSelected;
+ ::rtl::OUString m_sPageText;
+
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > m_xParent;
+
+ protected:
+ sal_Bool IsEnabled();
+ sal_Bool IsShowing();
+ sal_Bool IsSelected();
+
+ void SetEnabled( sal_Bool bEnabled );
+ void SetShowing( sal_Bool bShowing );
+ void SetSelected( sal_Bool bSelected );
+ void SetPageText( const ::rtl::OUString& sPageText );
+
+ sal_uInt16 GetPageId() const { return m_nPageId; }
+
+ virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
+
+ // OCommonAccessibleComponent
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL implGetBounds( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XComponent
+ virtual void SAL_CALL disposing();
+
+ public:
+ AccessibleTabBarPage( TabBar* pTabBar, sal_uInt16 nPageId,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& rxParent );
+ virtual ~AccessibleTabBarPage();
+
+ // XInterface
+ DECLARE_XINTERFACE()
+
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER()
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& rServiceName ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessible
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleContext
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::lang::Locale SAL_CALL getLocale( ) throw (::com::sun::star::accessibility::IllegalAccessibleComponentStateException, ::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleComponent
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleExtendedComponent
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFont > SAL_CALL getFont( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getTitledBorderText( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getToolTipText( ) throw (::com::sun::star::uno::RuntimeException);
+ };
+
+//.........................................................................
+} // namespace accessibility
+//.........................................................................
+
+#endif // ACCESSIBILITY_EXT_ACCESSIBLETABBARPAGE_HXX_
+
diff --git a/accessibility/inc/accessibility/extended/accessibletabbarpagelist.hxx b/accessibility/inc/accessibility/extended/accessibletabbarpagelist.hxx
new file mode 100644
index 000000000000..d834e3ef86c7
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/accessibletabbarpagelist.hxx
@@ -0,0 +1,141 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_EXT_ACCESSIBLETABBARPAGELIST_HXX_
+#define ACCESSIBILITY_EXT_ACCESSIBLETABBARPAGELIST_HXX_
+
+#include <com/sun/star/accessibility/XAccessible.hpp>
+#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <cppuhelper/implbase3.hxx>
+#include "accessibility/extended/accessibletabbarbase.hxx"
+
+#include <vector>
+
+namespace utl {
+class AccessibleStateSetHelper;
+}
+
+//.........................................................................
+namespace accessibility
+{
+//.........................................................................
+
+ // ----------------------------------------------------
+ // class AccessibleTabBarPageList
+ // ----------------------------------------------------
+
+ typedef ::cppu::ImplHelper3<
+ ::com::sun::star::accessibility::XAccessible,
+ ::com::sun::star::accessibility::XAccessibleSelection,
+ ::com::sun::star::lang::XServiceInfo > AccessibleTabBarPageList_BASE;
+
+ class AccessibleTabBarPageList : public AccessibleTabBarBase,
+ public AccessibleTabBarPageList_BASE
+ {
+ private:
+ typedef ::std::vector< ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > > AccessibleChildren;
+
+ AccessibleChildren m_aAccessibleChildren;
+ sal_Int32 m_nIndexInParent;
+
+ protected:
+ void UpdateEnabled( sal_Int32 i, sal_Bool bEnabled );
+ void UpdateShowing( sal_Bool bShowing );
+ void UpdateSelected( sal_Int32 i, sal_Bool bSelected );
+ void UpdatePageText( sal_Int32 i );
+
+ void InsertChild( sal_Int32 i );
+ void RemoveChild( sal_Int32 i );
+ void MoveChild( sal_Int32 i, sal_Int32 j );
+
+ virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
+ virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
+
+ // OCommonAccessibleComponent
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL implGetBounds( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XComponent
+ virtual void SAL_CALL disposing();
+
+ public:
+ AccessibleTabBarPageList( TabBar* pTabBar, sal_Int32 nIndexInParent );
+ virtual ~AccessibleTabBarPageList();
+
+ // XInterface
+ DECLARE_XINTERFACE()
+
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER()
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& rServiceName ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessible
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleContext
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::lang::Locale SAL_CALL getLocale( ) throw (::com::sun::star::accessibility::IllegalAccessibleComponentStateException, ::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleComponent
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleExtendedComponent
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFont > SAL_CALL getFont( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getTitledBorderText( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getToolTipText( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleSelection
+ virtual void SAL_CALL selectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL clearAccessibleSelection( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL selectAllAccessibleChildren( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getSelectedAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL deselectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ };
+
+//.........................................................................
+} // namespace accessibility
+//.........................................................................
+
+#endif // ACCESSIBILITY_EXT_ACCESSIBLETABBARPAGELIST_HXX_
+
diff --git a/accessibility/inc/accessibility/extended/accessibletablistbox.hxx b/accessibility/inc/accessibility/extended/accessibletablistbox.hxx
new file mode 100644
index 000000000000..b488e9c6068b
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/accessibletablistbox.hxx
@@ -0,0 +1,115 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_EXT_ACCESSIBLETABLISTBOX_HXX
+#define ACCESSIBILITY_EXT_ACCESSIBLETABLISTBOX_HXX
+
+#include "AccessibleBrowseBox.hxx"
+#include <cppuhelper/implbase1.hxx>
+#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
+#include <svtools/accessibletableprovider.hxx>
+
+class SvHeaderTabListBox;
+
+// ============================================================================
+
+namespace accessibility {
+
+class AccessibleBrowseBoxTable;
+
+typedef ::cppu::ImplHelper1 < ::com::sun::star::accessibility::XAccessible
+ > AccessibleTabListBox_Base;
+
+/** !!! */
+class AccessibleTabListBox
+ :public AccessibleBrowseBox
+ ,public AccessibleTabListBox_Base
+ ,public ::svt::IAccessibleTabListBox
+{
+private:
+ SvHeaderTabListBox* m_pTabListBox;
+
+public:
+ /** ctor()
+ @param rxParent XAccessible interface of the parent object.
+ @param rBox The HeaderTabListBox control. */
+ AccessibleTabListBox(
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& rxParent,
+ SvHeaderTabListBox& rBox );
+
+public:
+ // XInterface
+ DECLARE_XINTERFACE( )
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER( )
+
+ // XAccessibleContext -----------------------------------------------------
+
+ /** @return The count of visible children. */
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount()
+ throw ( ::com::sun::star::uno::RuntimeException );
+
+ /** @return The XAccessible interface of the specified child. */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleChild( sal_Int32 nChildIndex )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException );
+
+ // XAccessibleContext
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext() throw ( ::com::sun::star::uno::RuntimeException );
+
+ // IAccessibleTabListBox
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
+ getMyself()
+ {
+ return this;
+ }
+
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
+ getHeaderBar( ::svt::AccessibleBrowseBoxObjType _eObjType )
+ {
+ return AccessibleBrowseBox::getHeaderBar( _eObjType );
+ }
+
+protected:
+ /** dtor() */
+ virtual ~AccessibleTabListBox();
+
+ /** This method creates and returns an accessible table.
+ @return An AccessibleBrowseBoxTable. */
+ virtual AccessibleBrowseBoxTable* createAccessibleTable();
+};
+
+// ============================================================================
+
+} // namespace accessibility
+
+// ============================================================================
+
+#endif // ACCESSIBILITY_EXT_ACCESSIBLETABLISTBOX_HXX
+
diff --git a/accessibility/inc/accessibility/extended/accessibletablistboxtable.hxx b/accessibility/inc/accessibility/extended/accessibletablistboxtable.hxx
new file mode 100644
index 000000000000..7365a17e6138
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/accessibletablistboxtable.hxx
@@ -0,0 +1,122 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_EXT_ACCESSIBLETABLISTBOXTABLE_HXX
+#define ACCESSIBILITY_EXT_ACCESSIBLETABLISTBOXTABLE_HXX
+
+#include "AccessibleBrowseBoxTable.hxx"
+#include <comphelper/uno3.hxx>
+#include <cppuhelper/implbase1.hxx>
+#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
+
+class SvHeaderTabListBox;
+
+// ============================================================================
+
+namespace accessibility {
+
+typedef ::cppu::ImplHelper1< ::com::sun::star::accessibility::XAccessibleSelection >
+ AccessibleTabListBoxTableImplHelper;
+
+class AccessibleTabListBoxTable : public AccessibleBrowseBoxTable, public AccessibleTabListBoxTableImplHelper
+{
+private:
+ SvHeaderTabListBox* m_pTabListBox;
+
+ void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
+ DECL_LINK( WindowEventListener, VclSimpleEvent* );
+
+ // helpers ----------------------------------------------------------------
+
+ /** Throws an exception, if nIndex is not a valid child index. */
+ void ensureValidIndex( sal_Int32 _nIndex ) const
+ SAL_THROW( ( ::com::sun::star::lang::IndexOutOfBoundsException ) );
+
+ /** Returns true, if the specified row is selected. */
+ sal_Bool implIsRowSelected( sal_Int32 _nRow ) const;
+ /** Selects the specified row. */
+ void implSelectRow( sal_Int32 _nRow, sal_Bool _bSelect );
+
+ /** Returns the count of rows in the table. */
+ sal_Int32 implGetRowCount() const;
+ /** Returns the total column count in the table. */
+ sal_Int32 implGetColumnCount() const;
+ /** Returns the count of selected rows in the table. */
+ sal_Int32 implGetSelRowCount() const;
+ /** Returns the total cell count in the table (including header). */
+ inline sal_Int32 implGetCellCount() const { return implGetRowCount() * implGetColumnCount(); }
+
+ /** Returns the row index from cell index. */
+ inline sal_Int32 implGetRow( sal_Int32 _nIndex ) const { return _nIndex / implGetColumnCount(); }
+ /** Returns the column index from cell index. */
+ inline sal_Int32 implGetColumn( sal_Int32 _nIndex ) const { return _nIndex % implGetColumnCount(); }
+ /** Returns the absolute row index of the nSelRow-th selected row. */
+ sal_Int32 implGetSelRow( sal_Int32 _nSelRow ) const;
+ /** Returns the child index from cell position. */
+ inline sal_Int32 implGetIndex( sal_Int32 _nRow, sal_Int32 _nColumn ) const { return _nRow * implGetColumnCount() + _nColumn; }
+
+public:
+ /** ctor()
+ @param rxParent XAccessible interface of the parent object.
+ @param rBox The HeaderTabListBox control. */
+ AccessibleTabListBoxTable(
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& rxParent,
+ SvHeaderTabListBox& rBox );
+
+protected:
+ /** dtor() */
+ virtual ~AccessibleTabListBoxTable();
+
+public:
+ // XInterface
+ DECLARE_XINTERFACE( )
+
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER( )
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName (void)
+ throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleSelection
+ void SAL_CALL selectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ void SAL_CALL clearAccessibleSelection( ) throw (::com::sun::star::uno::RuntimeException);
+ void SAL_CALL selectAllAccessibleChildren( ) throw (::com::sun::star::uno::RuntimeException);
+ sal_Int32 SAL_CALL getSelectedAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ void SAL_CALL deselectAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+};
+
+// ============================================================================
+
+} // namespace accessibility
+
+// ============================================================================
+
+#endif // ACCESSIBILITY_EXT_ACCESSIBLETABLISTBOX_HXX
+
diff --git a/accessibility/inc/accessibility/extended/listboxaccessible.hxx b/accessibility/inc/accessibility/extended/listboxaccessible.hxx
new file mode 100644
index 000000000000..f05926f3abda
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/listboxaccessible.hxx
@@ -0,0 +1,95 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_EXT_LISTBOX_ACCESSIBLE
+#define ACCESSIBILITY_EXT_LISTBOX_ACCESSIBLE
+
+#include <com/sun/star/uno/RuntimeException.hpp>
+#include <tools/link.hxx>
+
+class SvTreeListBox;
+class VclSimpleEvent;
+class VclWindowEvent;
+
+//........................................................................
+namespace accessibility
+{
+//........................................................................
+
+ //====================================================================
+ //= ListBoxAccessibleBase
+ //====================================================================
+ /** helper class which couples it's life time to the life time of an
+ SvTreeListBox
+ */
+ class ListBoxAccessibleBase
+ {
+ private:
+ SvTreeListBox* m_pWindow;
+
+ protected:
+ inline SvTreeListBox* getListBox() const
+ {
+ return const_cast< ListBoxAccessibleBase* >( this )->m_pWindow;
+ }
+
+ inline bool isAlive() const { return NULL != m_pWindow; }
+
+ public:
+ ListBoxAccessibleBase( SvTreeListBox& _rWindow );
+
+ protected:
+ virtual ~ListBoxAccessibleBase( );
+
+ // own overridables
+ /// will be called for any VclWindowEvent events broadcasted by our VCL window
+ virtual void ProcessWindowEvent( const VclWindowEvent& _rVclWindowEvent );
+
+ /** will be called when our window broadcasts the VCLEVENT_OBJECT_DYING event
+
+ <p>Usually, you derive your class from both ListBoxAccessibleBase and XComponent,
+ and call XComponent::dispose here.</p>
+ */
+ virtual void SAL_CALL dispose() throw ( ::com::sun::star::uno::RuntimeException ) = 0;
+
+ /// to be called in the dispose method of your derived class
+ void disposing();
+
+ private:
+ DECL_LINK( WindowEventListener, VclSimpleEvent* );
+
+ private:
+ ListBoxAccessibleBase( ); // never implemented
+ ListBoxAccessibleBase( const ListBoxAccessibleBase& ); // never implemented
+ ListBoxAccessibleBase& operator=( const ListBoxAccessibleBase& ); // never implemented
+ };
+
+//........................................................................
+} // namespace accessibility
+//........................................................................
+
+#endif // ACCESSIBILITY_EXT_LISTBOX_ACCESSIBLE
diff --git a/accessibility/inc/accessibility/extended/textwindowaccessibility.hxx b/accessibility/inc/accessibility/extended/textwindowaccessibility.hxx
new file mode 100644
index 000000000000..d4b3be6c5bf3
--- /dev/null
+++ b/accessibility/inc/accessibility/extended/textwindowaccessibility.hxx
@@ -0,0 +1,711 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#if !defined INCLUDED_ACCESSIBILITY_TEXTWINDOWACCESSIBILITY_HXX
+#define INCLUDED_ACCESSIBILITY_TEXTWINDOWACCESSIBILITY_HXX
+
+#include <toolkit/awt/vclxaccessiblecomponent.hxx>
+#include <svl/lstner.hxx>
+#include <svtools/textdata.hxx>
+#include <svtools/texteng.hxx>
+#include <svtools/textview.hxx>
+#include <svtools/txtattr.hxx>
+#include <com/sun/star/awt/FontWeight.hpp>
+#include <com/sun/star/lang/EventObject.hpp>
+#include <com/sun/star/uno/Reference.hxx>
+#include <com/sun/star/util/Color.hpp>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleRelationType.hpp>
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <com/sun/star/accessibility/AccessibleTextType.hpp>
+#include <com/sun/star/accessibility/XAccessible.hpp>
+#include <com/sun/star/accessibility/XAccessibleContext.hpp>
+#include <com/sun/star/accessibility/XAccessibleEditableText.hpp>
+#include <com/sun/star/accessibility/XAccessibleMultiLineText.hpp>
+#include <com/sun/star/accessibility/XAccessibleTextAttributes.hpp>
+#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp>
+#include <com/sun/star/accessibility/XAccessibleComponent.hpp>
+#include <toolkit/awt/vclxwindow.hxx>
+#include <cppuhelper/compbase7.hxx>
+#include <comphelper/accessiblecontexthelper.hxx>
+#include <comphelper/accessibletexthelper.hxx>
+#include <rtl/ref.hxx>
+
+#include <memory>
+#include <queue>
+#include <hash_map>
+
+class TextEngine;
+class TextView;
+
+namespace css = ::com::sun::star;
+
+namespace accessibility
+{
+
+class Paragraph;
+class Document;
+
+class SfxListenerGuard
+{
+public:
+ inline SfxListenerGuard(::SfxListener & rListener):
+ m_rListener(rListener), m_pNotifier(0) {}
+
+ inline ~SfxListenerGuard() { endListening(); }
+
+ // Not thread safe:
+ void startListening(::SfxBroadcaster & rNotifier);
+
+ // Not thread safe:
+ void endListening();
+
+private:
+ ::SfxListener & m_rListener;
+ ::SfxBroadcaster * m_pNotifier;
+};
+
+class WindowListenerGuard
+{
+public:
+ inline WindowListenerGuard(::Link const & rListener):
+ m_aListener(rListener), m_pNotifier(0) {}
+
+ inline ~WindowListenerGuard() { endListening(); }
+
+ // Not thread safe:
+ void startListening(::Window & rNotifier);
+
+ // Not thread safe:
+ void endListening();
+
+private:
+ ::Link m_aListener;
+ ::Window * m_pNotifier;
+};
+
+class ParagraphInfo
+{
+public:
+ inline ParagraphInfo(::sal_Int32 nHeight): m_nHeight(nHeight) {}
+
+ inline
+ ::css::uno::WeakReference< ::css::accessibility::XAccessible > const &
+ getParagraph() const { return m_xParagraph; }
+
+ inline ::sal_Int32 getHeight() const { return m_nHeight; }
+
+ inline void setParagraph(
+ ::css::uno::Reference< ::css::accessibility::XAccessible > const &
+ rParagraph) { m_xParagraph = rParagraph; }
+
+ inline void changeHeight(::sal_Int32 nHeight) { m_nHeight = nHeight; }
+
+private:
+ ::css::uno::WeakReference< ::css::accessibility::XAccessible >
+ m_xParagraph;
+ ::sal_Int32 m_nHeight;
+};
+
+typedef ::std::vector< ParagraphInfo > Paragraphs;
+
+typedef ::cppu::WeakAggComponentImplHelper7<
+ ::css::accessibility::XAccessible,
+ ::css::accessibility::XAccessibleContext,
+ ::css::accessibility::XAccessibleComponent,
+ ::css::accessibility::XAccessibleEditableText,
+ ::css::accessibility::XAccessibleMultiLineText,
+ ::css::accessibility::XAccessibleTextAttributes,
+ ::css::accessibility::XAccessibleEventBroadcaster > ParagraphBase;
+
+// The Paragraph's number is the absolute position within the text engine (from
+// 0 to N - 1), whereas the Paragraph's index is the position within the text
+// view/accessible parent (from 0 to M - 1). Paragraphs outside the currently
+// visible range have an index of -1.
+class ParagraphImpl:
+ public ParagraphBase, private ::comphelper::OCommonAccessibleText
+{
+public:
+ ParagraphImpl(::rtl::Reference< Document > const & rDocument,
+ Paragraphs::size_type nNumber, ::osl::Mutex & rMutex);
+
+ // Not thread-safe.
+ inline Paragraphs::size_type getNumber() const { return m_nNumber; }
+
+ // Not thread-safe.
+ void numberChanged(bool bIncremented);
+
+ // Not thread-safe.
+ void textChanged();
+
+ // Thread-safe.
+ void notifyEvent(::sal_Int16 nEventId, ::css::uno::Any const & rOldValue,
+ ::css::uno::Any const & rNewValue);
+
+protected:
+ // OCommonAccessibleText
+ virtual void implGetParagraphBoundary( ::css::i18n::Boundary& rBoundary,
+ ::sal_Int32 nIndex );
+ virtual void implGetLineBoundary( ::css::i18n::Boundary& rBoundary,
+ ::sal_Int32 nIndex );
+
+private:
+ virtual ::css::uno::Reference< ::css::accessibility::XAccessibleContext >
+ SAL_CALL getAccessibleContext() throw (::css::uno::RuntimeException);
+
+ virtual ::sal_Int32 SAL_CALL getAccessibleChildCount()
+ throw (::css::uno::RuntimeException);
+
+ virtual ::css::uno::Reference< ::css::accessibility::XAccessible > SAL_CALL
+ getAccessibleChild(::sal_Int32 i)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException);
+
+ virtual ::css::uno::Reference< ::css::accessibility::XAccessible > SAL_CALL
+ getAccessibleParent() throw (::css::uno::RuntimeException);
+
+ virtual ::sal_Int32 SAL_CALL getAccessibleIndexInParent()
+ throw (::css::uno::RuntimeException);
+
+ virtual ::sal_Int16 SAL_CALL getAccessibleRole()
+ throw (::css::uno::RuntimeException);
+
+ virtual ::rtl::OUString SAL_CALL getAccessibleDescription()
+ throw (::css::uno::RuntimeException);
+
+ virtual ::rtl::OUString SAL_CALL getAccessibleName()
+ throw (::css::uno::RuntimeException);
+
+ virtual
+ ::css::uno::Reference< ::css::accessibility::XAccessibleRelationSet >
+ SAL_CALL getAccessibleRelationSet() throw (::css::uno::RuntimeException);
+
+ virtual
+ ::css::uno::Reference< ::css::accessibility::XAccessibleStateSet > SAL_CALL
+ getAccessibleStateSet() throw (::css::uno::RuntimeException);
+
+ virtual ::css::lang::Locale SAL_CALL getLocale()
+ throw (::css::accessibility::IllegalAccessibleComponentStateException,
+ ::css::uno::RuntimeException);
+
+ virtual ::sal_Bool SAL_CALL containsPoint(::css::awt::Point const & rPoint)
+ throw (::css::uno::RuntimeException);
+
+ virtual ::css::uno::Reference< ::css::accessibility::XAccessible > SAL_CALL
+ getAccessibleAtPoint(::css::awt::Point const & rPoint)
+ throw (::css::uno::RuntimeException);
+
+ virtual ::css::awt::Rectangle SAL_CALL getBounds()
+ throw (::css::uno::RuntimeException);
+
+ virtual ::css::awt::Point SAL_CALL getLocation()
+ throw (::css::uno::RuntimeException);
+
+ virtual ::css::awt::Point SAL_CALL getLocationOnScreen()
+ throw (::css::uno::RuntimeException);
+
+ virtual ::css::awt::Size SAL_CALL getSize()
+ throw (::css::uno::RuntimeException);
+
+ virtual void SAL_CALL grabFocus() throw (::css::uno::RuntimeException);
+
+ virtual ::css::uno::Any SAL_CALL getAccessibleKeyBinding()
+ throw (::css::uno::RuntimeException);
+
+ virtual ::css::util::Color SAL_CALL getForeground()
+ throw (::css::uno::RuntimeException);
+
+ virtual ::css::util::Color SAL_CALL getBackground()
+ throw (::css::uno::RuntimeException);
+
+ virtual ::sal_Int32 SAL_CALL getCaretPosition()
+ throw (::css::uno::RuntimeException);
+
+ virtual ::sal_Bool SAL_CALL setCaretPosition(::sal_Int32 nIndex)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException);
+
+ virtual ::sal_Unicode SAL_CALL getCharacter(::sal_Int32 nIndex)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException);
+
+ virtual ::css::uno::Sequence< ::css::beans::PropertyValue > SAL_CALL
+ getCharacterAttributes(::sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes )
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException);
+
+ virtual ::css::awt::Rectangle SAL_CALL
+ getCharacterBounds(::sal_Int32 nIndex)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException);
+
+ virtual ::sal_Int32 SAL_CALL getCharacterCount()
+ throw (::css::uno::RuntimeException);
+
+ virtual ::sal_Int32 SAL_CALL
+ getIndexAtPoint(::css::awt::Point const & rPoint)
+ throw (::css::uno::RuntimeException);
+
+ virtual ::rtl::OUString SAL_CALL getSelectedText()
+ throw (::css::uno::RuntimeException);
+
+ virtual ::sal_Int32 SAL_CALL getSelectionStart()
+ throw (::css::uno::RuntimeException);
+
+ virtual ::sal_Int32 SAL_CALL getSelectionEnd()
+ throw (::css::uno::RuntimeException);
+
+ virtual ::sal_Bool SAL_CALL setSelection(::sal_Int32 nStartIndex,
+ ::sal_Int32 nEndIndex)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException);
+
+ virtual ::rtl::OUString SAL_CALL getText()
+ throw (::css::uno::RuntimeException);
+
+ virtual ::rtl::OUString SAL_CALL getTextRange(::sal_Int32 nStartIndex,
+ ::sal_Int32 nEndIndex)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException);
+
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+
+ virtual ::sal_Bool SAL_CALL copyText(::sal_Int32 nStartIndex,
+ ::sal_Int32 nEndIndex)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException);
+
+ virtual ::sal_Bool SAL_CALL cutText(::sal_Int32 nStartIndex,
+ ::sal_Int32 nEndIndex)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException);
+
+ virtual ::sal_Bool SAL_CALL pasteText(::sal_Int32 nIndex)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException);
+
+ virtual ::sal_Bool SAL_CALL deleteText(::sal_Int32 nStartIndex,
+ ::sal_Int32 nEndIndex)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException);
+
+ virtual ::sal_Bool SAL_CALL insertText(::rtl::OUString const & rText,
+ ::sal_Int32 nIndex)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException);
+
+ virtual ::sal_Bool SAL_CALL replaceText(
+ ::sal_Int32 nStartIndex, ::sal_Int32 nEndIndex,
+ ::rtl::OUString const & rReplacement)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException);
+
+ virtual ::sal_Bool SAL_CALL setAttributes(
+ ::sal_Int32 nStartIndex, ::sal_Int32 nEndIndex,
+ ::css::uno::Sequence< ::css::beans::PropertyValue > const &
+ rAttributeSet)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException);
+
+ virtual ::sal_Bool SAL_CALL setText(::rtl::OUString const & rText)
+ throw (::css::uno::RuntimeException);
+
+ virtual ::css::uno::Sequence< ::css::beans::PropertyValue > SAL_CALL
+ getDefaultAttributes(const ::css::uno::Sequence< ::rtl::OUString >& RequestedAttributes)
+ throw (::css::uno::RuntimeException);
+
+ virtual ::css::uno::Sequence< ::css::beans::PropertyValue > SAL_CALL
+ getRunAttributes(::sal_Int32 Index, const ::css::uno::Sequence< ::rtl::OUString >& RequestedAttributes)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException);
+
+ virtual ::sal_Int32 SAL_CALL getLineNumberAtIndex( ::sal_Int32 nIndex )
+ throw (::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException);
+
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextAtLineNumber( ::sal_Int32 nLineNo )
+ throw (::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException);
+
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextAtLineWithCaret( )
+ throw (::com::sun::star::uno::RuntimeException);
+
+ virtual ::sal_Int32 SAL_CALL getNumberOfLineWithCaret( )
+ throw (::com::sun::star::uno::RuntimeException);
+
+ using cppu::WeakAggComponentImplHelperBase::addEventListener;
+ virtual void SAL_CALL addEventListener(
+ ::css::uno::Reference<
+ ::css::accessibility::XAccessibleEventListener > const & rListener)
+ throw (::css::uno::RuntimeException);
+
+ using cppu::WeakAggComponentImplHelperBase::removeEventListener;
+ virtual void SAL_CALL removeEventListener(
+ ::css::uno::Reference<
+ ::css::accessibility::XAccessibleEventListener > const & rListener)
+ throw (::css::uno::RuntimeException);
+
+ virtual void SAL_CALL disposing();
+
+ virtual ::rtl::OUString implGetText();
+
+ virtual ::css::lang::Locale implGetLocale();
+
+ virtual void implGetSelection(::sal_Int32 & rStartIndex,
+ ::sal_Int32 & rEndIndex);
+
+ // Throws ::css::lang::DisposedException:
+ void checkDisposed();
+
+ ::rtl::Reference< Document > m_xDocument;
+ Paragraphs::size_type m_nNumber;
+
+// ::cppu::OInterfaceContainerHelper m_aListeners;
+ /// client id in the AccessibleEventNotifier queue
+ sal_uInt32 m_nClientId;
+
+ ::rtl::OUString m_aParagraphText;
+};
+
+
+typedef ::std::hash_map< ::rtl::OUString,
+ ::css::beans::PropertyValue,
+ ::rtl::OUStringHash,
+ ::std::equal_to< ::rtl::OUString > > tPropValMap;
+
+class Document: public ::VCLXAccessibleComponent, public ::SfxListener
+{
+public:
+ Document(::VCLXWindow * pVclXWindow, ::TextEngine & rEngine,
+ ::TextView & rView, bool bCompoundControlChild);
+
+ inline ::css::uno::Reference< ::css::accessibility::XAccessible >
+ getAccessible() { return m_xAccessible; }
+
+ // Must be called only after init has been called.
+ ::css::lang::Locale retrieveLocale();
+
+ // Must be called only after init has been called.
+ // To make it possible for this method to be (indirectly) called from
+ // within Paragraph's constructor (i.e., when the Paragraph's ref count is
+ // still zero), pass a "ParagraphImpl const *" instead of a
+ // "::rtl::Reference< ParagraphImpl > const &".
+ ::sal_Int32 retrieveParagraphIndex(ParagraphImpl const * pParagraph);
+
+ // Must be called only after init has been called.
+ // To make it possible for this method to be (indirectly) called from
+ // within Paragraph's constructor (i.e., when the Paragraph's ref count is
+ // still zero), pass a "ParagraphImpl const *" instead of a
+ // "::rtl::Reference< ParagraphImpl > const &".
+ ::sal_Int64 retrieveParagraphState(ParagraphImpl const * pParagraph);
+
+ // Must be called only after init has been called.
+ // To make it possible for this method to be (indirectly) called from
+ // within Paragraph's constructor (i.e., when the Paragraph's ref count is
+ // still zero), pass a "ParagraphImpl const &" instead of a
+ // "::rtl::Reference< ParagraphImpl > const &".
+ ::css::awt::Rectangle
+ retrieveParagraphBounds(ParagraphImpl const * pParagraph, bool bAbsolute);
+
+ // Must be called only after init has been called.
+ // To make it possible for this method to be (indirectly) called from
+ // within Paragraph's constructor (i.e., when the Paragraph's ref count is
+ // still zero), pass a "ParagraphImpl const &" instead of a
+ // "::rtl::Reference< ParagraphImpl > const &".
+ ::rtl::OUString retrieveParagraphText(ParagraphImpl const * pParagraph);
+
+ // Must be called only after init has been called.
+ // To make it possible for this method to be (indirectly) called from
+ // within Paragraph's constructor (i.e., when the Paragraph's ref count is
+ // still zero), pass a "ParagraphImpl const &" instead of a
+ // "::rtl::Reference< ParagraphImpl > const &".
+ void retrieveParagraphSelection(ParagraphImpl const * pParagraph,
+ ::sal_Int32 * pBegin, ::sal_Int32 * pEnd);
+
+ // Must be called only after init has been called.
+ // To make it possible for this method to be (indirectly) called from
+ // within Paragraph's constructor (i.e., when the Paragraph's ref count is
+ // still zero), pass a "ParagraphImpl const *" instead of a
+ // "::rtl::Reference< ParagraphImpl > const &".
+ ::sal_Int32 retrieveParagraphCaretPosition(ParagraphImpl const * pParagraph);
+
+ // Must be called only after init has been called.
+ // To make it possible for this method to be (indirectly) called from
+ // within Paragraph's constructor (i.e., when the Paragraph's ref count is
+ // still zero), pass a "ParagraphImpl const &" instead of a
+ // "::rtl::Reference< ParagraphImpl > const &".
+ // Throws ::css::lang::IndexOutOfBoundsException.
+ ::css::awt::Rectangle
+ retrieveCharacterBounds(ParagraphImpl const * pParagraph,
+ ::sal_Int32 nIndex);
+
+ // Must be called only after init has been called.
+ // To make it possible for this method to be (indirectly) called from
+ // within Paragraph's constructor (i.e., when the Paragraph's ref count is
+ // still zero), pass a "ParagraphImpl const &" instead of a
+ // "::rtl::Reference< ParagraphImpl > const &".
+ ::sal_Int32 retrieveCharacterIndex(ParagraphImpl const * pParagraph,
+ ::css::awt::Point const & rPoint);
+
+ // Must be called only after init has been called.
+ // To make it possible for this method to be (indirectly) called from
+ // within Paragraph's constructor (i.e., when the Paragraph's ref count is
+ // still zero), pass a "ParagraphImpl const &" instead of a
+ // "::rtl::Reference< ParagraphImpl > const &".
+ // Throws ::css::lang::IndexOutOfBoundsException.
+ ::css::uno::Sequence< ::css::beans::PropertyValue > retrieveCharacterAttributes(
+ ParagraphImpl const * pParagraph, ::sal_Int32 nIndex,
+ const ::css::uno::Sequence< ::rtl::OUString >& aRequestedAttributes);
+
+ // Must be called only after init has been called.
+ // To make it possible for this method to be (indirectly) called from
+ // within Paragraph's constructor (i.e., when the Paragraph's ref count is
+ // still zero), pass a "ParagraphImpl const &" instead of a
+ // "::rtl::Reference< ParagraphImpl > const &".
+ ::css::uno::Sequence< ::css::beans::PropertyValue > retrieveDefaultAttributes(
+ ParagraphImpl const * pParagraph,
+ const ::css::uno::Sequence< ::rtl::OUString >& RequestedAttributes);
+
+ // Must be called only after init has been called.
+ // To make it possible for this method to be (indirectly) called from
+ // within Paragraph's constructor (i.e., when the Paragraph's ref count is
+ // still zero), pass a "ParagraphImpl const &" instead of a
+ // "::rtl::Reference< ParagraphImpl > const &".
+ // Throws ::css::lang::IndexOutOfBoundsException.
+ ::css::uno::Sequence< ::css::beans::PropertyValue > retrieveRunAttributes(
+ ParagraphImpl const * pParagraph, ::sal_Int32 Index,
+ const ::css::uno::Sequence< ::rtl::OUString >& RequestedAttributes);
+
+ // Must be called only after init has been called.
+ // To make it possible for this method to be (indirectly) called from
+ // within Paragraph's constructor (i.e., when the Paragraph's ref count is
+ // still zero), pass a "ParagraphImpl const &" instead of a
+ // "::rtl::Reference< ParagraphImpl > const &".
+ void changeParagraphText(ParagraphImpl * pParagraph,
+ ::rtl::OUString const & rText);
+
+ // Must be called only after init has been called.
+ // To make it possible for this method to be (indirectly) called from
+ // within Paragraph's constructor (i.e., when the Paragraph's ref count is
+ // still zero), pass a "ParagraphImpl const &" instead of a
+ // "::rtl::Reference< ParagraphImpl > const &".
+ // Throws ::css::lang::IndexOutOfBoundsException.
+ void changeParagraphText(ParagraphImpl * pParagraph, ::sal_Int32 nBegin,
+ ::sal_Int32 nEnd, bool bCut, bool bPaste,
+ ::rtl::OUString const & rText);
+
+ // Must be called only after init has been called.
+ // To make it possible for this method to be (indirectly) called from
+ // within Paragraph's constructor (i.e., when the Paragraph's ref count is
+ // still zero), pass a "ParagraphImpl const &" instead of a
+ // "::rtl::Reference< ParagraphImpl > const &".
+ // Throws ::css::lang::IndexOutOfBoundsException.
+ void copyParagraphText(ParagraphImpl const * pParagraph,
+ ::sal_Int32 nBegin, ::sal_Int32 nEnd);
+
+ // Must be called only after init has been called.
+ // To make it possible for this method to be (indirectly) called from
+ // within Paragraph's constructor (i.e., when the Paragraph's ref count is
+ // still zero), pass a "ParagraphImpl const &" instead of a
+ // "::rtl::Reference< ParagraphImpl > const &".
+ // Throws ::css::lang::IndexOutOfBoundsException.
+ void changeParagraphAttributes(
+ ParagraphImpl * pParagraph, ::sal_Int32 nBegin, ::sal_Int32 nEnd,
+ ::css::uno::Sequence< ::css::beans::PropertyValue > const &
+ rAttributeSet);
+
+ // Must be called only after init has been called.
+ // To make it possible for this method to be (indirectly) called from
+ // within Paragraph's constructor (i.e., when the Paragraph's ref count is
+ // still zero), pass a "ParagraphImpl const &" instead of a
+ // "::rtl::Reference< ParagraphImpl > const &".
+ // Throws ::css::lang::IndexOutOfBoundsException.
+ void changeParagraphSelection(ParagraphImpl * pParagraph,
+ ::sal_Int32 nBegin, ::sal_Int32 nEnd);
+
+ ::css::i18n::Boundary
+ retrieveParagraphLineBoundary( ParagraphImpl const * pParagraph,
+ ::sal_Int32 nIndex, ::sal_Int32 *pLineNo = NULL);
+
+ ::css::i18n::Boundary
+ retrieveParagraphBoundaryOfLine( ParagraphImpl const * pParagraph,
+ ::sal_Int32 nIndex );
+
+ sal_Int32 retrieveParagraphLineWithCursor( ParagraphImpl const * pParagraph );
+
+ ::css::uno::Reference< ::css::accessibility::XAccessibleRelationSet >
+ retrieveParagraphRelationSet( ParagraphImpl const * pParagraph );
+
+protected:
+ // window event listener from base class
+ virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
+
+private:
+ virtual ::sal_Int32 SAL_CALL getAccessibleChildCount()
+ throw (::css::uno::RuntimeException);
+
+ virtual ::css::uno::Reference< ::css::accessibility::XAccessible >
+ SAL_CALL getAccessibleChild(::sal_Int32 i)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException);
+
+ virtual ::sal_Int16 SAL_CALL getAccessibleRole()
+ throw (::css::uno::RuntimeException);
+
+ virtual ::css::uno::Reference< ::css::accessibility::XAccessible >
+ SAL_CALL getAccessibleAtPoint(::css::awt::Point const & rPoint)
+ throw (::css::uno::RuntimeException);
+
+ // ??? Will be called with both the external (Solar) and internal mutex
+ // locked:
+ virtual void SAL_CALL disposing();
+
+ // ??? Will be called with the external (Solar) mutex locked.
+ // init will already have been called.
+ virtual void Notify(::SfxBroadcaster & rBC, ::SfxHint const & rHint);
+
+ // Assuming that this will only be called with the external (Solar) mutex
+ // locked.
+ // init will already have been called.
+ DECL_LINK(WindowEventHandler, VclSimpleEvent *);
+
+ // Must be called with both the external (Solar) and internal mutex
+ // locked.
+ void init();
+
+ // Must be called with both the external (Solar) and internal mutex
+ // locked, and after init has been called:
+ ::rtl::Reference< ParagraphImpl >
+ getParagraph(Paragraphs::iterator const & rIt);
+
+ // Must be called with both the external (Solar) and internal mutex
+ // locked, and after init has been called.
+ // Throws ::css::uno::RuntimeException.
+ ::css::uno::Reference< ::css::accessibility::XAccessible >
+ getAccessibleChild(Paragraphs::iterator const & rIt);
+
+ // Must be called with both the external (Solar) and internal mutex
+ // locked, and after init has been called:
+ void determineVisibleRange();
+
+ // Must be called with both the external (Solar) and internal mutex
+ // locked, and after init has been called:
+ void notifyVisibleRangeChanges(
+ Paragraphs::iterator const & rOldVisibleBegin,
+ Paragraphs::iterator const & rOldVisibleEnd,
+ Paragraphs::iterator const & rInserted);
+
+ // Must be called with both the external (Solar) and internal mutex
+ // locked, and after init has been called:
+ void changeParagraphText(::ULONG nNumber, ::USHORT nBegin, ::USHORT nEnd,
+ bool bCut, bool bPaste,
+ ::rtl::OUString const & rText);
+
+ void
+ handleParagraphNotifications();
+
+ void handleSelectionChangeNotification();
+
+ void notifySelectionChange( sal_Int32 nFirst, sal_Int32 nLast );
+
+ void justifySelection( TextPaM& rTextStart, TextPaM& rTextEnd );
+
+ void disposeParagraphs();
+
+ static ::css::uno::Any mapFontColor(::Color const & rColor);
+
+ static ::Color mapFontColor(::css::uno::Any const & rColor);
+
+ static ::css::uno::Any mapFontWeight(::FontWeight nWeight);
+
+ static ::FontWeight mapFontWeight(::css::uno::Any const & rWeight);
+
+ void retrieveDefaultAttributesImpl(
+ ParagraphImpl const * pParagraph,
+ const ::css::uno::Sequence< ::rtl::OUString >& RequestedAttributes,
+ tPropValMap& rDefAttrSeq);
+
+ void retrieveRunAttributesImpl(
+ ParagraphImpl const * pParagraph, ::sal_Int32 Index,
+ const ::css::uno::Sequence< ::rtl::OUString >& RequestedAttributes,
+ tPropValMap& rRunAttrSeq);
+
+ static ::css::uno::Sequence< ::css::beans::PropertyValue >
+ convertHashMapToSequence(tPropValMap& rAttrSeq);
+
+ ::css::uno::Reference< ::css::accessibility::XAccessible > m_xAccessible;
+ ::TextEngine & m_rEngine;
+ ::TextView & m_rView;
+
+ SfxListenerGuard m_aEngineListener;
+ WindowListenerGuard m_aViewListener;
+
+ // All the following members have valid values only after calling init:
+
+ ::std::auto_ptr< Paragraphs > m_xParagraphs;
+
+ // m_nViewOffset is from the start of the document (0) to the start of the
+ // current view, and m_nViewHeight is the height of the view:
+ ::sal_Int32 m_nViewOffset;
+ ::sal_Int32 m_nViewHeight;
+
+ // m_aVisibleBegin points to the first Paragraph that is (partially)
+ // contained in the view, and m_aVisibleEnd points past the last Paragraph
+ // that is (partially) contained. If no Paragraphs are (partially) in the
+ // view, both m_aVisibleBegin and m_aVisibleEnd are set to
+ // m_xParagraphs->end(). These values are only changed by
+ // determineVisibleRange.
+ Paragraphs::iterator m_aVisibleBegin;
+ Paragraphs::iterator m_aVisibleEnd;
+
+ // m_nVisibleBeginOffset is from m_nViewOffset back to the start of the
+ // Paragraph pointed to by m_aVisibleBegin (and always has a non-negative
+ // value). If m_aVisibleBegin == m_xParagraphs->end(),
+ // m_nVisibleBeginOffset is set to 0. These values are only changed by
+ // determineVisibleRange.
+ ::sal_Int32 m_nVisibleBeginOffset;
+
+ // If no selection has yet been set, all the following four variables are
+ // set to -1. m_nSelectionLastPara/Pos is also the cursor position.
+ ::sal_Int32 m_nSelectionFirstPara;
+ ::sal_Int32 m_nSelectionFirstPos;
+ ::sal_Int32 m_nSelectionLastPara;
+ ::sal_Int32 m_nSelectionLastPos;
+
+ Paragraphs::iterator m_aFocused;
+
+ ::std::queue< ::TextHint > m_aParagraphNotifications;
+ bool m_bSelectionChangedNotification;
+ bool m_bCompoundControlChild;
+};
+
+}
+
+#endif // INCLUDED_ACCESSIBILITY_TEXTWINDOWACCESSIBILITY_HXX
diff --git a/accessibility/inc/accessibility/helper/IComboListBoxHelper.hxx b/accessibility/inc/accessibility/helper/IComboListBoxHelper.hxx
new file mode 100644
index 000000000000..847896a14588
--- /dev/null
+++ b/accessibility/inc/accessibility/helper/IComboListBoxHelper.hxx
@@ -0,0 +1,70 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef ACCESSIBILITY_HELPER_COMBOLISTBOXHELPER_HXX
+#define ACCESSIBILITY_HELPER_COMBOLISTBOXHELPER_HXX
+
+#include <tools/gen.hxx>
+#include <tools/string.hxx>
+#include <vcl/wintypes.hxx>
+#include <tools/gen.hxx>
+
+namespace com { namespace sun { namespace star { namespace datatransfer { namespace clipboard {
+ class XClipboard;
+} } } } }
+
+class Window;
+namespace accessibility
+{
+ class SAL_NO_VTABLE IComboListBoxHelper
+ {
+ public:
+ virtual String GetEntry( USHORT nPos ) const = 0;
+ virtual Rectangle GetDropDownPosSizePixel( ) const = 0;
+ virtual Rectangle GetBoundingRectangle( USHORT nItem ) const = 0;
+ virtual Rectangle GetWindowExtentsRelative( Window* pRelativeWindow ) = 0;
+ virtual BOOL IsActive() const = 0;
+ virtual BOOL IsEntryVisible( USHORT nPos ) const = 0;
+ virtual USHORT GetDisplayLineCount() const = 0;
+ virtual void GetMaxVisColumnsAndLines( USHORT& rnCols, USHORT& rnLines ) const = 0;
+ virtual WinBits GetStyle() const = 0;
+ virtual BOOL IsMultiSelectionEnabled() const = 0;
+ virtual USHORT GetTopEntry() const = 0;
+ virtual BOOL IsEntryPosSelected( USHORT nPos ) const = 0;
+ virtual USHORT GetEntryCount() const = 0;
+ virtual void Select() = 0;
+ virtual void SelectEntryPos( USHORT nPos, BOOL bSelect = TRUE ) = 0;
+ virtual USHORT GetSelectEntryCount() const = 0;
+ virtual void SetNoSelection() = 0;
+ virtual USHORT GetSelectEntryPos( USHORT nSelIndex = 0 ) const = 0;
+ virtual BOOL IsInDropDown() const = 0;
+ virtual Rectangle GetEntryCharacterBounds( const sal_Int32 _nEntryPos, const sal_Int32 _nCharacterIndex ) const = 0;
+ virtual long GetIndexForPoint( const Point& rPoint, USHORT& nPos ) const = 0;
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::datatransfer::clipboard::XClipboard >
+ GetClipboard() = 0;
+ };
+}
+#endif // ACCESSIBILITY_HELPER_COMBOLISTBOXHELPER_HXX
diff --git a/accessibility/inc/accessibility/helper/acc_factory.hxx b/accessibility/inc/accessibility/helper/acc_factory.hxx
new file mode 100644
index 000000000000..21c5ce47e5c7
--- /dev/null
+++ b/accessibility/inc/accessibility/helper/acc_factory.hxx
@@ -0,0 +1,50 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_HELPER_FACTORY_HXX
+#define ACCESSIBILITY_HELPER_FACTORY_HXX
+
+#include <toolkit/helper/accessiblefactory.hxx>
+#include <svtools/accessiblefactory.hxx>
+
+/** this is the entry point to retrieve a factory for the toolkit-level Accessible/Contexts supplied
+ by this library
+
+ This function implements the factory function needed in toolkit
+ (of type GetStandardAccComponentFactory).
+*/
+extern "C" void* SAL_CALL getStandardAccessibleFactory();
+
+/** this is the entry point to retrieve a factory for the svtools-level Accessible/Contexts supplied
+ by this library
+
+ This function implements the factory function needed in svtools
+ (of type GetSvtAccessibilityComponentFactory).
+*/
+extern "C" void* SAL_CALL getSvtAccessibilityComponentFactory();
+
+#endif // ACCESSIBILITY_HELPER_FACTORY_HXX
diff --git a/accessibility/inc/accessibility/helper/accessiblestrings.hrc b/accessibility/inc/accessibility/helper/accessiblestrings.hrc
new file mode 100644
index 000000000000..1f936e678b98
--- /dev/null
+++ b/accessibility/inc/accessibility/helper/accessiblestrings.hrc
@@ -0,0 +1,53 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_HELPER_ACCESSIBLESTRINGS_HRC_
+#define ACCESSIBILITY_HELPER_ACCESSIBLESTRINGS_HRC_
+
+
+//------------------------------------------------------------------------------
+
+#define RID_TK_ACC_START 1000
+
+
+// Accessible Action Id's ------------------------------------------------------
+
+#define RID_STR_ACC_ACTION_CLICK ( RID_TK_ACC_START + 0 )
+#define RID_STR_ACC_ACTION_TOGGLEPOPUP ( RID_TK_ACC_START + 1 )
+#define RID_STR_ACC_ACTION_SELECT ( RID_TK_ACC_START + 2 )
+#define RID_STR_ACC_ACTION_INCLINE ( RID_TK_ACC_START + 3 )
+#define RID_STR_ACC_ACTION_DECLINE ( RID_TK_ACC_START + 4 )
+#define RID_STR_ACC_ACTION_INCBLOCK ( RID_TK_ACC_START + 5 )
+#define RID_STR_ACC_ACTION_DECBLOCK ( RID_TK_ACC_START + 6 )
+
+
+#define RID_STR_ACC_NAME_BROWSEBUTTON ( RID_TK_ACC_START + 100 )
+#define RID_STR_ACC_DESC_PANELDECL_TABBAR ( RID_TK_ACC_START + 101 )
+
+// -----------------------------------------------------------------------------
+
+#endif // ACCESSIBILITY_HELPER_ACCESSIBLESTRINGS_HRC_
diff --git a/accessibility/inc/accessibility/helper/accresmgr.hxx b/accessibility/inc/accessibility/helper/accresmgr.hxx
new file mode 100644
index 000000000000..add0aaced7e3
--- /dev/null
+++ b/accessibility/inc/accessibility/helper/accresmgr.hxx
@@ -0,0 +1,72 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_HELPER_TKARESMGR_HXX
+#define ACCESSIBILITY_HELPER_TKARESMGR_HXX
+
+#ifndef _RTL_USTRING_HXX
+#include <rtl/ustring.hxx>
+#endif
+
+class SimpleResMgr;
+
+#define TK_RES_STRING(id) TkResMgr::loadString(id)
+
+// -----------------------------------------------------------------------------
+// TkResMgr
+// -----------------------------------------------------------------------------
+
+class TkResMgr
+{
+ static SimpleResMgr* m_pImpl;
+
+private:
+ // no instantiation allowed
+ TkResMgr() { }
+ ~TkResMgr() { }
+
+ // we'll instantiate one static member of the following class,
+ // which in it's dtor ensures that m_pImpl will be deleted
+ class EnsureDelete
+ {
+ public:
+ EnsureDelete() { }
+ ~EnsureDelete();
+ };
+ friend class EnsureDelete;
+
+protected:
+ static void ensureImplExists();
+
+public:
+ // loads the string with the specified resource id
+ static ::rtl::OUString loadString( sal_uInt16 nResId );
+};
+
+
+#endif // ACCESSIBILITY_HELPER_TKARESMGR_HXX
+
diff --git a/accessibility/inc/accessibility/helper/characterattributeshelper.hxx b/accessibility/inc/accessibility/helper/characterattributeshelper.hxx
new file mode 100644
index 000000000000..25fb3ac121b3
--- /dev/null
+++ b/accessibility/inc/accessibility/helper/characterattributeshelper.hxx
@@ -0,0 +1,60 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_HELPER_CHARACTERATTRIBUTESHELPER_HXX
+#define ACCESSIBILITY_HELPER_CHARACTERATTRIBUTESHELPER_HXX
+
+#ifndef _COM_SUN_STAR_UNO_SEQUENCE_HXX
+#include <com/sun/star/uno/Sequence.hxx>
+#endif
+#include <com/sun/star/beans/PropertyValue.hpp>
+#include <vcl/font.hxx>
+
+#include <map>
+
+// -----------------------------------------------------------------------------
+// class CharacterAttributesHelper
+// -----------------------------------------------------------------------------
+
+class CharacterAttributesHelper
+{
+private:
+
+ typedef ::std::map< ::rtl::OUString, ::com::sun::star::uno::Any, ::std::less< ::rtl::OUString > > AttributeMap;
+
+ AttributeMap m_aAttributeMap;
+
+public:
+
+ CharacterAttributesHelper( const Font& rFont, sal_Int32 nBackColor, sal_Int32 nColor );
+ ~CharacterAttributesHelper();
+
+ ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > GetCharacterAttributes();
+ ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > GetCharacterAttributes( const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes );
+};
+
+#endif // ACCESSIBILITY_HELPER_CHARACTERATTRIBUTESHELPER_HXX
diff --git a/accessibility/inc/accessibility/helper/listboxhelper.hxx b/accessibility/inc/accessibility/helper/listboxhelper.hxx
new file mode 100644
index 000000000000..e0a1fed7f8e8
--- /dev/null
+++ b/accessibility/inc/accessibility/helper/listboxhelper.hxx
@@ -0,0 +1,196 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_HELPER_LISTBOXHELPER_HXX
+#define ACCESSIBILITY_HELPER_LISTBOXHELPER_HXX
+
+#include <accessibility/helper/IComboListBoxHelper.hxx>
+#include <vcl/lstbox.hxx>
+#include <vcl/combobox.hxx>
+#include <com/sun/star/datatransfer/clipboard/XClipboard.hpp>
+
+// -----------------------------------------------------------------------------
+// globals
+// -----------------------------------------------------------------------------
+
+const sal_Int32 DEFAULT_INDEX_IN_PARENT = -1;
+
+// -----------------------------------------------------------------------------
+// class VCLListBoxHelper
+// -----------------------------------------------------------------------------
+
+template< class T > class VCLListBoxHelper : public ::accessibility::IComboListBoxHelper
+{
+private:
+ T& m_aComboListBox;
+
+public:
+ inline
+ VCLListBoxHelper( T& _pListBox ) :
+ m_aComboListBox( _pListBox ){}
+
+ // -----------------------------------------------------------------------------
+ virtual String GetEntry( USHORT nPos ) const
+ {
+ return m_aComboListBox.GetEntry( nPos );
+ }
+ // -----------------------------------------------------------------------------
+ virtual Rectangle GetDropDownPosSizePixel() const
+ {
+ Rectangle aTemp = m_aComboListBox.GetWindowExtentsRelative(NULL);
+ Rectangle aRet = m_aComboListBox.GetDropDownPosSizePixel();
+ aRet.Move(aTemp.TopLeft().X(),aTemp.TopLeft().Y());
+ return aRet;
+ }
+ // -----------------------------------------------------------------------------
+ virtual Rectangle GetBoundingRectangle( USHORT nItem ) const
+ {
+ Rectangle aRect;
+ if ( m_aComboListBox.IsInDropDown() && IsEntryVisible( nItem ) )
+ {
+ Rectangle aTemp = m_aComboListBox.GetDropDownPosSizePixel();
+ Size aSize = aTemp.GetSize();
+ aSize.Height() /= m_aComboListBox.GetDisplayLineCount();
+ Point aTopLeft = aTemp.TopLeft();
+ aTopLeft.Y() += aSize.Height() * ( nItem - m_aComboListBox.GetTopEntry() );
+ aRect = Rectangle( aTopLeft, aSize );
+ }
+ else
+ aRect = m_aComboListBox.GetBoundingRectangle( nItem );
+ return aRect;
+ }
+ // -----------------------------------------------------------------------------
+ virtual Rectangle GetWindowExtentsRelative( Window* pRelativeWindow )
+ {
+ return m_aComboListBox.GetWindowExtentsRelative( pRelativeWindow );
+ }
+ // -----------------------------------------------------------------------------
+ virtual BOOL IsActive() const
+ {
+ return m_aComboListBox.IsActive();
+ }
+ // -----------------------------------------------------------------------------
+ virtual BOOL IsEntryVisible( USHORT nPos ) const
+ {
+ USHORT nTopEntry = m_aComboListBox.GetTopEntry();
+ USHORT nLines = m_aComboListBox.GetDisplayLineCount();
+ return ( nPos >= nTopEntry && nPos < ( nTopEntry + nLines ) );
+ }
+ // -----------------------------------------------------------------------------
+ virtual USHORT GetDisplayLineCount() const
+ {
+ return m_aComboListBox.GetDisplayLineCount();
+ }
+ // -----------------------------------------------------------------------------
+ virtual void GetMaxVisColumnsAndLines( USHORT& rnCols, USHORT& rnLines ) const
+ {
+ m_aComboListBox.GetMaxVisColumnsAndLines(rnCols,rnLines);
+ }
+ // -----------------------------------------------------------------------------
+ virtual WinBits GetStyle() const
+ {
+ return m_aComboListBox.GetStyle();
+ }
+ // -----------------------------------------------------------------------------
+ virtual BOOL IsMultiSelectionEnabled() const
+ {
+ return m_aComboListBox.IsMultiSelectionEnabled();
+ }
+ // -----------------------------------------------------------------------------
+ virtual USHORT GetTopEntry() const
+ {
+ return m_aComboListBox.GetTopEntry();
+ }
+ // -----------------------------------------------------------------------------
+ virtual BOOL IsEntryPosSelected( USHORT nPos ) const
+ {
+ return m_aComboListBox.IsEntryPosSelected(nPos);
+ }
+ // -----------------------------------------------------------------------------
+ virtual USHORT GetEntryCount() const
+ {
+ return m_aComboListBox.GetEntryCount();
+ }
+ // -----------------------------------------------------------------------------
+ virtual void Select()
+ {
+ m_aComboListBox.Select();
+ }
+ // -----------------------------------------------------------------------------
+ virtual void SelectEntryPos( USHORT nPos, BOOL bSelect = TRUE )
+ {
+ m_aComboListBox.SelectEntryPos(nPos,bSelect);
+ }
+ // -----------------------------------------------------------------------------
+ virtual USHORT GetSelectEntryCount() const
+ {
+ return m_aComboListBox.GetSelectEntryCount();
+ }
+ // -----------------------------------------------------------------------------
+ virtual void SetNoSelection()
+ {
+ m_aComboListBox.SetNoSelection();
+ }
+ // -----------------------------------------------------------------------------
+ virtual USHORT GetSelectEntryPos( USHORT nSelIndex = 0 ) const
+ {
+ return m_aComboListBox.GetSelectEntryPos(nSelIndex);
+ }
+ // -----------------------------------------------------------------------------
+ virtual BOOL IsInDropDown() const
+ {
+ return m_aComboListBox.IsInDropDown();
+ }
+ // -----------------------------------------------------------------------------
+ virtual Rectangle GetEntryCharacterBounds( const sal_Int32 _nEntryPos, const sal_Int32 _nCharacterIndex ) const
+ {
+ Rectangle aRect;
+
+ Pair aEntryCharacterRange = m_aComboListBox.GetLineStartEnd( _nEntryPos );
+ if ( aEntryCharacterRange.A() + _nCharacterIndex <= aEntryCharacterRange.B() )
+ {
+ long nIndex = aEntryCharacterRange.A() + _nCharacterIndex;
+ aRect = m_aComboListBox.GetCharacterBounds( nIndex );
+ }
+ return aRect;
+ }
+ // -----------------------------------------------------------------------------
+ long GetIndexForPoint( const Point& rPoint, USHORT& nPos ) const
+ {
+ return m_aComboListBox.GetIndexForPoint( rPoint, nPos );
+ }
+ // -----------------------------------------------------------------------------
+ ::com::sun::star::uno::Reference< ::com::sun::star::datatransfer::clipboard::XClipboard >
+ GetClipboard()
+ {
+ return m_aComboListBox.GetClipboard();
+ }
+ // -----------------------------------------------------------------------------
+};
+
+#endif // ACCESSIBILITY_HELPER_LISTBOXHELPER_HXX
+
diff --git a/accessibility/inc/accessibility/standard/accessiblemenubasecomponent.hxx b/accessibility/inc/accessibility/standard/accessiblemenubasecomponent.hxx
new file mode 100644
index 000000000000..4555c91ebf75
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/accessiblemenubasecomponent.hxx
@@ -0,0 +1,157 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_ACCESSIBLEMENUBASECOMPONENT_HXX
+#define ACCESSIBILITY_STANDARD_ACCESSIBLEMENUBASECOMPONENT_HXX
+
+#include <com/sun/star/accessibility/XAccessible.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <com/sun/star/awt/Point.hpp>
+#include <comphelper/accessiblecomponenthelper.hxx>
+#ifndef _CPPUHELPER_IMPLBASE2_HXX
+#include <cppuhelper/implbase2.hxx>
+#endif
+#include <tools/link.hxx>
+
+#include <vector>
+
+class Menu;
+class VclSimpleEvent;
+class VclMenuEvent;
+class VCLExternalSolarLock;
+
+namespace utl {
+class AccessibleStateSetHelper;
+}
+
+// ----------------------------------------------------
+// class OAccessibleMenuBaseComponent
+// ----------------------------------------------------
+
+typedef ::comphelper::OAccessibleExtendedComponentHelper AccessibleExtendedComponentHelper_BASE;
+
+typedef ::cppu::ImplHelper2<
+ ::com::sun::star::accessibility::XAccessible,
+ ::com::sun::star::lang::XServiceInfo > OAccessibleMenuBaseComponent_BASE;
+
+class OAccessibleMenuBaseComponent : public AccessibleExtendedComponentHelper_BASE,
+ public OAccessibleMenuBaseComponent_BASE
+{
+ friend class OAccessibleMenuItemComponent;
+ friend class VCLXAccessibleMenuItem;
+ friend class VCLXAccessibleMenu;
+
+private:
+ VCLExternalSolarLock* m_pExternalLock;
+
+protected:
+ typedef ::std::vector< ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > > AccessibleChildren;
+
+ AccessibleChildren m_aAccessibleChildren;
+ Menu* m_pMenu;
+
+ sal_Bool m_bEnabled;
+ sal_Bool m_bFocused;
+ sal_Bool m_bVisible;
+ sal_Bool m_bSelected;
+ sal_Bool m_bChecked;
+
+ Menu* GetMenu() { return m_pMenu; }
+
+ virtual sal_Bool IsEnabled();
+ virtual sal_Bool IsFocused();
+ virtual sal_Bool IsVisible();
+ virtual sal_Bool IsSelected();
+ virtual sal_Bool IsChecked();
+
+ void SetEnabled( sal_Bool bEnabled );
+ void SetFocused( sal_Bool bFocused );
+ void SetVisible( sal_Bool bVisible );
+ void SetSelected( sal_Bool bSelected );
+ void SetChecked( sal_Bool bChecked );
+
+ void UpdateEnabled( sal_Int32 i, sal_Bool bEnabled );
+ void UpdateFocused( sal_Int32 i, sal_Bool bFocused );
+ void UpdateVisible();
+ void UpdateSelected( sal_Int32 i, sal_Bool bSelected );
+ void UpdateChecked( sal_Int32 i, sal_Bool bChecked );
+ void UpdateAccessibleName( sal_Int32 i );
+ void UpdateItemText( sal_Int32 i );
+
+ sal_Int32 GetChildCount();
+
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > GetChild( sal_Int32 i );
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > GetChildAt( const ::com::sun::star::awt::Point& rPoint );
+
+ void InsertChild( sal_Int32 i );
+ void RemoveChild( sal_Int32 i );
+
+ virtual sal_Bool IsHighlighted();
+ sal_Bool IsChildHighlighted();
+
+ void SelectChild( sal_Int32 i );
+ void DeSelectAll();
+ sal_Bool IsChildSelected( sal_Int32 i );
+
+ virtual void Select();
+ virtual void DeSelect();
+ virtual void Click();
+ virtual sal_Bool IsPopupMenuOpen();
+
+ DECL_LINK( MenuEventListener, VclSimpleEvent* );
+
+ virtual void ProcessMenuEvent( const VclMenuEvent& rVclMenuEvent );
+
+ virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet ) = 0;
+
+ // XComponent
+ virtual void SAL_CALL disposing();
+
+public:
+ OAccessibleMenuBaseComponent( Menu* pMenu );
+ virtual ~OAccessibleMenuBaseComponent();
+
+ void SetStates();
+
+ // XInterface
+ DECLARE_XINTERFACE()
+
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER()
+
+ // XServiceInfo
+ virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& rServiceName ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessible
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleContext
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) throw (::com::sun::star::uno::RuntimeException);
+};
+
+#endif // ACCESSIBILITY_STANDARD_ACCESSIBLEMENUBASECOMPONENT_HXX
+
diff --git a/accessibility/inc/accessibility/standard/accessiblemenucomponent.hxx b/accessibility/inc/accessibility/standard/accessiblemenucomponent.hxx
new file mode 100644
index 000000000000..8450be8f3a49
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/accessiblemenucomponent.hxx
@@ -0,0 +1,102 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_ACCESSIBLEMENUCOMPONENT_HXX
+#define ACCESSIBILITY_STANDARD_ACCESSIBLEMENUCOMPONENT_HXX
+
+#include <accessibility/standard/accessiblemenubasecomponent.hxx>
+#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
+#ifndef _CPPUHELPER_IMPLBASE1_HXX
+#include <cppuhelper/implbase1.hxx>
+#endif
+
+
+// ----------------------------------------------------
+// class OAccessibleMenuComponent
+// ----------------------------------------------------
+
+typedef ::comphelper::OAccessibleExtendedComponentHelper AccessibleExtendedComponentHelper_BASE;
+
+typedef ::cppu::ImplHelper1<
+ ::com::sun::star::accessibility::XAccessibleSelection > OAccessibleMenuComponent_BASE;
+
+class OAccessibleMenuComponent : public OAccessibleMenuBaseComponent,
+ public OAccessibleMenuComponent_BASE
+{
+protected:
+ virtual sal_Bool IsEnabled();
+ virtual sal_Bool IsVisible();
+
+ virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
+
+ // OCommonAccessibleComponent
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL implGetBounds( ) throw (::com::sun::star::uno::RuntimeException);
+
+public:
+ OAccessibleMenuComponent( Menu* pMenu );
+ virtual ~OAccessibleMenuComponent();
+
+ // XInterface
+ DECLARE_XINTERFACE()
+
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER()
+
+ // XAccessibleContext
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::lang::Locale SAL_CALL getLocale( ) throw (::com::sun::star::accessibility::IllegalAccessibleComponentStateException, ::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleComponent
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Point SAL_CALL getLocationOnScreen( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleExtendedComponent
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFont > SAL_CALL getFont( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getTitledBorderText( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getToolTipText( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleSelection
+ virtual void SAL_CALL selectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL clearAccessibleSelection( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL selectAllAccessibleChildren( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getSelectedAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL deselectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+};
+
+#endif // ACCESSIBILITY_STANDARD_ACCESSIBLEMENUCOMPONENT_HXX
+
diff --git a/accessibility/inc/accessibility/standard/accessiblemenuitemcomponent.hxx b/accessibility/inc/accessibility/standard/accessiblemenuitemcomponent.hxx
new file mode 100644
index 000000000000..d5e513e555ea
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/accessiblemenuitemcomponent.hxx
@@ -0,0 +1,95 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_ACCESSIBLEMENUITEMCOMPONENT_HXX
+#define ACCESSIBILITY_STANDARD_ACCESSIBLEMENUITEMCOMPONENT_HXX
+
+#include <accessibility/standard/accessiblemenubasecomponent.hxx>
+
+
+// ----------------------------------------------------
+// class OAccessibleMenuItemComponent
+// ----------------------------------------------------
+
+class OAccessibleMenuItemComponent : public OAccessibleMenuBaseComponent
+{
+ friend class OAccessibleMenuBaseComponent;
+
+protected:
+ Menu* m_pParent;
+ sal_uInt16 m_nItemPos;
+ ::rtl::OUString m_sAccessibleName;
+ ::rtl::OUString m_sItemText;
+
+ virtual sal_Bool IsEnabled();
+ virtual sal_Bool IsVisible();
+ virtual void Select();
+ virtual void DeSelect();
+ virtual void Click();
+
+ void SetItemPos( sal_uInt16 nItemPos );
+ void SetAccessibleName( const ::rtl::OUString& sAccessibleName );
+ ::rtl::OUString GetAccessibleName();
+ void SetItemText( const ::rtl::OUString& sItemText );
+ ::rtl::OUString GetItemText();
+
+ virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
+
+ // OCommonAccessibleComponent
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL implGetBounds( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XComponent
+ virtual void SAL_CALL disposing();
+
+public:
+ OAccessibleMenuItemComponent( Menu* pParent, sal_uInt16 nItemPos, Menu* pMenu );
+ virtual ~OAccessibleMenuItemComponent();
+
+ // XAccessibleContext
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::lang::Locale SAL_CALL getLocale( ) throw (::com::sun::star::accessibility::IllegalAccessibleComponentStateException, ::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleComponent
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleExtendedComponent
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFont > SAL_CALL getFont( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getTitledBorderText( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getToolTipText( ) throw (::com::sun::star::uno::RuntimeException);
+};
+
+#endif // ACCESSIBILITY_STANDARD_ACCESSIBLEMENUITEMCOMPONENT_HXX
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblebox.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblebox.hxx
new file mode 100644
index 000000000000..123016f070bd
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessiblebox.hxx
@@ -0,0 +1,184 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLEBOX_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLEBOX_HXX
+
+#include <map>
+#include <accessibility/standard/vclxaccessibleedit.hxx>
+#ifndef _COM_SUN_STAR_ACCESSIBILITY_STANDARD_ACCESSIBLEROLE_HPP_
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#endif
+#include <com/sun/star/accessibility/XAccessibleKeyBinding.hpp>
+#ifndef _CPPUHELPER_IMPLBASE2_HXX
+#include <cppuhelper/implbase2.hxx>
+#endif
+
+
+typedef ::cppu::ImplHelper2<
+ ::com::sun::star::accessibility::XAccessible,
+ ::com::sun::star::accessibility::XAccessibleAction
+ > VCLXAccessibleBox_BASE;
+
+
+/** Base class for list- and combo boxes. This class manages the box'
+ children. The classed derived from this one have only to implement the
+ <member>IsValid</member> method and return the corrent implementation name.
+*/
+class VCLXAccessibleBox
+ : public VCLXAccessibleComponent,
+ public VCLXAccessibleBox_BASE
+{
+public:
+ enum BoxType {COMBOBOX, LISTBOX};
+
+ /** The constructor is initialized with the box type whitch may be
+ either <const>COMBOBOX</const> or <const>LISTBOX</const> and a flag
+ indicating whether the box is a drop down box.
+ */
+ VCLXAccessibleBox (VCLXWindow* pVCLXindow, BoxType aType, bool bIsDropDownBox);
+
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER()
+
+ // XInterface
+ DECLARE_XINTERFACE()
+
+
+
+ // XAccessible
+
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL
+ getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleContext
+
+ /** Each object has one or two children: an optional text field and the
+ actual list. The text field is not provided for non drop down list
+ boxes.
+ */
+ sal_Int32 SAL_CALL getAccessibleChildCount (void)
+ throw (::com::sun::star::uno::RuntimeException);
+ /** For drop down list boxes the text field is a not editable
+ <type>VCLXAccessibleTextField</type>, for combo boxes it is an
+ editable <type>VLCAccessibleEdit</type>.
+ */
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible> SAL_CALL
+ getAccessibleChild (sal_Int32 i)
+ throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ /** The role is always <const
+ scope="com::sun::star::accessibility">AccessibleRole::COMBO_BOX</const>.
+ */
+ sal_Int16 SAL_CALL getAccessibleRole (void)
+ throw (::com::sun::star::uno::RuntimeException);
+
+ sal_Int32 SAL_CALL getAccessibleIndexInParent (void)
+ throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleAction
+
+ /** There is one action for drop down boxes and none for others.
+ */
+ virtual sal_Int32 SAL_CALL getAccessibleActionCount (void)
+ throw (::com::sun::star::uno::RuntimeException);
+ /** The action for drop down boxes lets the user toggle the visibility of the
+ popup menu.
+ */
+ virtual sal_Bool SAL_CALL doAccessibleAction (sal_Int32 nIndex)
+ throw (::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException);
+ /** The returned string is assoicated with resource
+ <const>RID_STR_ACC_ACTION_TOGGLEPOPUP</const>.
+ */
+ virtual ::rtl::OUString SAL_CALL getAccessibleActionDescription (sal_Int32 nIndex)
+ throw (::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException);
+ /** No keybinding returned so far.
+ */
+ virtual ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessibleKeyBinding > SAL_CALL
+ getAccessibleActionKeyBinding( sal_Int32 nIndex )
+ throw (::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException);
+
+ // XComponent
+
+ /** This method is called from the implementation helper during an
+ XComponent::dispose() call.
+ */
+ virtual void SAL_CALL disposing (void);
+
+
+protected:
+ /** Specifies whether the box is a combo box or a list box. List boxes
+ have multi selection.
+ */
+ BoxType m_aBoxType;
+
+ /// Specifies whether the box is a drop down box and thus has an action.
+ bool m_bIsDropDownBox;
+
+ /// The child that represents the text field if there is one.
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible>
+ m_xText;
+
+ /// The child that contains the items of this box.
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible>
+ m_xList;
+
+ /** This flag specifies whether an object has a text field as child
+ regardless of whether that child being currently instantiated or
+ not.
+ */
+ bool m_bHasTextChild;
+
+ /** This flag specifies whether an object has a list as child regardless
+ of whether that child being currently instantiated or not. This
+ flag is always true in the current implementation because the list
+ child is just another wrapper arround this object and thus has the
+ same life time.
+ */
+ bool m_bHasListChild;
+
+ virtual ~VCLXAccessibleBox (void);
+
+ /** Returns </true> when the object is valid.
+ */
+ virtual bool IsValid (void) const = 0;
+
+ virtual void ProcessWindowChildEvent (const VclWindowEvent& rVclWindowEvent);
+ virtual void ProcessWindowEvent (const VclWindowEvent& rVclWindowEvent);
+
+
+private:
+ /// Index in parent. This is settable from the outside.
+ sal_Int32 m_nIndexInParent;
+};
+
+#endif
+
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblebutton.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblebutton.hxx
new file mode 100644
index 000000000000..76e8b3da9343
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessiblebutton.hxx
@@ -0,0 +1,90 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLEBUTTON_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLEBUTTON_HXX
+
+#include <accessibility/standard/vclxaccessibletextcomponent.hxx>
+
+#ifndef _COM_SUN_STAR_ACCESSIBILITY_XACCESSIBLE_ACTION_HPP_
+#include <com/sun/star/accessibility/XAccessibleAction.hpp>
+#endif
+#include <com/sun/star/accessibility/XAccessibleValue.hpp>
+
+#ifndef _CPPUHELPER_IMPLBASE2_HXX
+#include <cppuhelper/implbase2.hxx>
+#endif
+
+
+// ----------------------------------------------------
+// class VCLXAccessibleButton
+// ----------------------------------------------------
+
+typedef ::cppu::ImplHelper2<
+ ::com::sun::star::accessibility::XAccessibleAction,
+ ::com::sun::star::accessibility::XAccessibleValue > VCLXAccessibleButton_BASE;
+
+class VCLXAccessibleButton : public VCLXAccessibleTextComponent,
+ public VCLXAccessibleButton_BASE
+{
+protected:
+ virtual ~VCLXAccessibleButton();
+
+ virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
+ virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
+
+public:
+ VCLXAccessibleButton( VCLXWindow* pVCLXindow );
+
+ // XInterface
+ DECLARE_XINTERFACE()
+
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER()
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleContext
+ virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleAction
+ virtual sal_Int32 SAL_CALL getAccessibleActionCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL doAccessibleAction ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleActionDescription ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleKeyBinding > SAL_CALL getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleValue
+ virtual ::com::sun::star::uno::Any SAL_CALL getCurrentValue( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setCurrentValue( const ::com::sun::star::uno::Any& aNumber ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Any SAL_CALL getMaximumValue( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Any SAL_CALL getMinimumValue( ) throw (::com::sun::star::uno::RuntimeException);
+};
+
+#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLEBUTTON_HXX
+
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblecheckbox.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblecheckbox.hxx
new file mode 100644
index 000000000000..a876a236455c
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessiblecheckbox.hxx
@@ -0,0 +1,97 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLECHECKBOX_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLECHECKBOX_HXX
+
+#include <accessibility/standard/vclxaccessibletextcomponent.hxx>
+
+#ifndef _COM_SUN_STAR_ACCESSIBILITY_XACCESSIBLE_ACTION_HPP_
+#include <com/sun/star/accessibility/XAccessibleAction.hpp>
+#endif
+#include <com/sun/star/accessibility/XAccessibleValue.hpp>
+
+#ifndef _CPPUHELPER_IMPLBASE2_HXX
+#include <cppuhelper/implbase2.hxx>
+#endif
+
+
+// ----------------------------------------------------
+// class VCLXAccessibleCheckBox
+// ----------------------------------------------------
+
+typedef ::cppu::ImplHelper2<
+ ::com::sun::star::accessibility::XAccessibleAction,
+ ::com::sun::star::accessibility::XAccessibleValue > VCLXAccessibleCheckBox_BASE;
+
+class VCLXAccessibleCheckBox : public VCLXAccessibleTextComponent,
+ public VCLXAccessibleCheckBox_BASE
+{
+private:
+ bool m_bChecked;
+ bool m_bIndeterminate;
+
+protected:
+ virtual ~VCLXAccessibleCheckBox();
+
+ bool IsChecked();
+ bool IsIndeterminate();
+
+ void SetChecked( bool bChecked );
+ void SetIndeterminate( bool bIndeterminate );
+
+ virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
+ virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
+
+public:
+ VCLXAccessibleCheckBox( VCLXWindow* pVCLXindow );
+
+ // XInterface
+ DECLARE_XINTERFACE()
+
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER()
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleAction
+ virtual sal_Int32 SAL_CALL getAccessibleActionCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL doAccessibleAction ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleActionDescription ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleKeyBinding > SAL_CALL getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleValue
+ virtual ::com::sun::star::uno::Any SAL_CALL getCurrentValue( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setCurrentValue( const ::com::sun::star::uno::Any& aNumber ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Any SAL_CALL getMaximumValue( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Any SAL_CALL getMinimumValue( ) throw (::com::sun::star::uno::RuntimeException);
+};
+
+#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLECHECKBOX_HXX
+
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblecombobox.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblecombobox.hxx
new file mode 100644
index 000000000000..ce62ea845b5c
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessiblecombobox.hxx
@@ -0,0 +1,69 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLECOMBOBOX_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLECOMBOBOX_HXX
+
+#include <map>
+#include <accessibility/standard/vclxaccessiblebox.hxx>
+#ifndef _COM_SUN_STAR_ACCESSIBILITY_STANDARD_ACCESSIBLEROLE_HPP_
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#endif
+#ifndef _CPPUHELPER_IMPLBASE1_HXX
+#include <cppuhelper/implbase1.hxx>
+#endif
+
+
+/** The accessible combobox has two children. The first is the text field
+ represented by an object of the <type>VCLXAccessibleEdit</type> class.
+ The second is the list containing all items and is represented by an
+ object of the <type>VCLXAccessibleList</type> class which does not
+ support selection at the moment.
+*/
+class VCLXAccessibleComboBox
+ : public VCLXAccessibleBox
+{
+public:
+ VCLXAccessibleComboBox (VCLXWindow* pVCLXindow);
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName (void)
+ throw (::com::sun::star::uno::RuntimeException);
+ // Return combo box specific services.
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL
+ getSupportedServiceNames (void)
+ throw (::com::sun::star::uno::RuntimeException);
+
+protected:
+ virtual ~VCLXAccessibleComboBox (void);
+
+ virtual bool IsValid (void) const;
+ virtual void ProcessWindowEvent (const VclWindowEvent& rVclWindowEvent);
+};
+
+#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLECHECKBOX_HXX
+
diff --git a/accessibility/inc/accessibility/standard/vclxaccessibledropdowncombobox.hxx b/accessibility/inc/accessibility/standard/vclxaccessibledropdowncombobox.hxx
new file mode 100644
index 000000000000..6f54ede32d21
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessibledropdowncombobox.hxx
@@ -0,0 +1,73 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLEDROPDOWNCOMBOBOX_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLEDROPDOWNCOMBOBOX_HXX
+
+#include <accessibility/standard/vclxaccessiblebox.hxx>
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLETEXTEDIT_HXX
+#include <accessibility/standard/vclxaccessibleedit.hxx>
+#endif
+#include <com/sun/star/accessibility/XAccessibleAction.hpp>
+
+#ifndef _CPPUHELPER_IMPLBASE1_HXX
+#include <cppuhelper/implbase1.hxx>
+#endif
+#ifndef _CPPUHELPER_WEAKREF_HXX
+#include <cppuhelper/weakref.hxx>
+#endif
+
+
+/** The accessible drop down combobox has two children. The first is the
+ text field represented by an object of the
+ <type>VCLXAccessibleEdit</type> class. The second is the list
+ containing all items and is represented by an object of the
+ <type>VCLXAccessibleList</type> class which does not support selection
+ at the moment.
+*/
+class VCLXAccessibleDropDownComboBox : public VCLXAccessibleBox
+{
+public:
+ VCLXAccessibleDropDownComboBox (VCLXWindow* pVCLXindow);
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName (void)
+ throw (::com::sun::star::uno::RuntimeException);
+ // Return drop down combo box specific services.
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL
+ getSupportedServiceNames (void)
+ throw (::com::sun::star::uno::RuntimeException);
+
+protected:
+ virtual ~VCLXAccessibleDropDownComboBox (void);
+
+ virtual bool IsValid (void) const;
+ virtual void ProcessWindowEvent (const VclWindowEvent& rVclWindowEvent);
+};
+
+#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLEDROPDOWNCOMBOBOX_HXX
+
diff --git a/accessibility/inc/accessibility/standard/vclxaccessibledropdownlistbox.hxx b/accessibility/inc/accessibility/standard/vclxaccessibledropdownlistbox.hxx
new file mode 100644
index 000000000000..72289f210aa2
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessibledropdownlistbox.hxx
@@ -0,0 +1,71 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLEDROPDOWNLISTBOX_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLEDROPDOWNLISTBOX_HXX
+
+#include <accessibility/standard/vclxaccessiblebox.hxx>
+#include <com/sun/star/accessibility/XAccessibleAction.hpp>
+
+#ifndef _CPPUHELPER_IMPLBASE1_HXX
+#include <cppuhelper/implbase1.hxx>
+#endif
+#ifndef _CPPUHELPER_WEAKREF_HXX
+#include <cppuhelper/weakref.hxx>
+#endif
+
+
+/** The accessible drop down combobox has two children. The first is the
+ text field represented by an object of the
+ <type>VCLXAccessibleTextField</type> class which can not be edited. The
+ second is the list containing all items and is represented by an object
+ of the <type>VCLXAccessibleListBoxList</type> class which does support
+ selection.
+*/
+class VCLXAccessibleDropDownListBox : public VCLXAccessibleBox
+{
+public:
+ VCLXAccessibleDropDownListBox (VCLXWindow* pVCLXindow);
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName (void)
+ throw (::com::sun::star::uno::RuntimeException);
+ // Return drop down list box specific services.
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL
+ getSupportedServiceNames (void)
+ throw (::com::sun::star::uno::RuntimeException);
+
+protected:
+ virtual ~VCLXAccessibleDropDownListBox (void);
+
+ virtual bool IsValid (void) const;
+ virtual void ProcessWindowEvent (const VclWindowEvent& rVclWindowEvent);
+
+};
+
+#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLEDROPDOWNLISTBOX_HXX
+
diff --git a/accessibility/inc/accessibility/standard/vclxaccessibleedit.hxx b/accessibility/inc/accessibility/standard/vclxaccessibleedit.hxx
new file mode 100644
index 000000000000..1e5bb36ec03d
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessibleedit.hxx
@@ -0,0 +1,123 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLEEDIT_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLEEDIT_HXX
+
+#include <accessibility/standard/vclxaccessibletextcomponent.hxx>
+#include <com/sun/star/accessibility/XAccessibleEditableText.hpp>
+#ifndef _COM_SUN_STAR_ACCESSIBILITY_XACCESSIBLE_ACTION_HPP_
+#include <com/sun/star/accessibility/XAccessibleAction.hpp>
+#endif
+
+#ifndef _CPPUHELPER_IMPLBASE2_HXX
+#include <cppuhelper/implbase2.hxx>
+#endif
+
+
+// ----------------------------------------------------
+// class VCLXAccessibleEdit
+// ----------------------------------------------------
+
+typedef ::cppu::ImplHelper2<
+ ::com::sun::star::accessibility::XAccessibleAction,
+ ::com::sun::star::accessibility::XAccessibleEditableText > VCLXAccessibleEdit_BASE;
+
+class VCLXAccessibleEdit : public VCLXAccessibleTextComponent,
+ public VCLXAccessibleEdit_BASE
+{
+ friend class VCLXAccessibleBox;
+
+private:
+ sal_Int32 m_nSelectionStart;
+ sal_Int32 m_nCaretPosition;
+
+protected:
+ virtual ~VCLXAccessibleEdit();
+
+ virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
+ virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
+
+ // OCommonAccessibleText
+ virtual ::rtl::OUString implGetText();
+ virtual void implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex );
+
+public:
+ VCLXAccessibleEdit( VCLXWindow* pVCLXindow );
+
+ // XInterface
+ DECLARE_XINTERFACE()
+
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER()
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleContext
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleAction
+ virtual sal_Int32 SAL_CALL getAccessibleActionCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL doAccessibleAction ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleActionDescription ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleKeyBinding > SAL_CALL getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleText
+ virtual sal_Int32 SAL_CALL getCaretPosition( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setCaretPosition( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Unicode SAL_CALL getCharacter( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL getCharacterBounds( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getCharacterCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getIndexAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getSelectedText( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getSelectionStart( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getSelectionEnd( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getText( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleEditableText
+ virtual sal_Bool SAL_CALL cutText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL pasteText( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL deleteText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL insertText( const ::rtl::OUString& sText, sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL replaceText( sal_Int32 nStartIndex, sal_Int32 nEndIndex, const ::rtl::OUString& sReplacement ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setAttributes( sal_Int32 nStartIndex, sal_Int32 nEndIndex, const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& aAttributeSet ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setText( const ::rtl::OUString& sText ) throw (::com::sun::star::uno::RuntimeException);
+};
+
+#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLEEDIT_HXX
+
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblefixedhyperlink.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblefixedhyperlink.hxx
new file mode 100644
index 000000000000..250d5f7551f5
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessiblefixedhyperlink.hxx
@@ -0,0 +1,54 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLEFIXEDHYPERLINK_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLEFIXEDHYPERLINK_HXX
+
+#include <accessibility/standard/vclxaccessibletextcomponent.hxx>
+
+// ----------------------------------------------------
+// class VCLXAccessibleFixedHyperlink
+// ----------------------------------------------------
+
+class VCLXAccessibleFixedHyperlink : public VCLXAccessibleTextComponent
+{
+protected:
+ virtual ~VCLXAccessibleFixedHyperlink();
+
+ virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
+ virtual void implGetLineBoundary( ::com::sun::star::i18n::Boundary& rBoundary, sal_Int32 nIndex );
+
+public:
+ VCLXAccessibleFixedHyperlink( VCLXWindow* pVCLXindow );
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
+};
+
+#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLEFIXEDHYPERLINK_HXX
+
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblefixedtext.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblefixedtext.hxx
new file mode 100644
index 000000000000..e013fdc8d475
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessiblefixedtext.hxx
@@ -0,0 +1,54 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLEFIXEDTEXT_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLEFIXEDTEXT_HXX
+
+#include <accessibility/standard/vclxaccessibletextcomponent.hxx>
+
+// ----------------------------------------------------
+// class VCLXAccessibleFixedText
+// ----------------------------------------------------
+
+class VCLXAccessibleFixedText : public VCLXAccessibleTextComponent
+{
+protected:
+ virtual ~VCLXAccessibleFixedText();
+
+ virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
+ virtual void implGetLineBoundary( ::com::sun::star::i18n::Boundary& rBoundary, sal_Int32 nIndex );
+
+public:
+ VCLXAccessibleFixedText( VCLXWindow* pVCLXindow );
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
+};
+
+#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLEFIXEDTEXT_HXX
+
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblelist.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblelist.hxx
new file mode 100644
index 000000000000..dfebec17b4e9
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessiblelist.hxx
@@ -0,0 +1,228 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLELIST_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLELIST_HXX
+
+#include <vector>
+#include <functional>
+#include "accessibility/standard/vclxaccessiblelistitem.hxx"
+#include <accessibility/standard/vclxaccessibleedit.hxx>
+#ifndef _COM_SUN_STAR_ACCESSIBILITY_STANDARD_ACCESSIBLEROLE_HPP_
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#endif
+#include <com/sun/star/accessibility/XAccessibleAction.hpp>
+#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp>
+#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
+#ifndef _CPPUHELPER_IMPLBASE2_HXX
+#include <cppuhelper/implbase2.hxx>
+#endif
+
+typedef ::cppu::ImplHelper2<
+ ::com::sun::star::accessibility::XAccessible,
+ ::com::sun::star::accessibility::XAccessibleSelection
+ > VCLXAccessibleList_BASE;
+
+typedef std::vector< ::com::sun::star::uno::WeakReference< ::com::sun::star::accessibility::XAccessible > >
+ ListItems;
+
+namespace accessibility
+{
+ class IComboListBoxHelper;
+}
+
+
+/** Base class for the list contained in list- and combo boxes. This class
+ does not support selection because lists of combo boxes give no direct
+ access to their underlying list implementation. Look into derived
+ classes for selection.
+*/
+class VCLXAccessibleList
+ : public VCLXAccessibleComponent,
+ public VCLXAccessibleList_BASE
+{
+public:
+ enum BoxType {COMBOBOX, LISTBOX};
+
+ VCLXAccessibleList (VCLXWindow* pVCLXindow, BoxType aBoxType,
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible >& _xParent);
+
+ /** The index that is passed to this method is returned on following
+ calls to <member>getAccessibleIndexInParent</member>.
+ */
+ void SetIndexInParent (sal_Int32 nIndex);
+
+ /** Process some of the events and delegate the rest to the base classes.
+ */
+ virtual void ProcessWindowEvent (const VclWindowEvent& rVclWindowEvent);
+
+ /** Called on reception of selection events this method checks all known
+ list items for a possible change in their selection state and
+ updates that accordingly. No accessibility events are send because
+ the XAccessibleSelection interface is not supported and the items
+ are transient.
+ @param sTextOfSelectedItem
+ This string contains the text of the the currently selected
+ item. It is used to retrieve the index of that item.
+ */
+ void UpdateSelection (::rtl::OUString sTextOfSelectedItem);
+
+ // XInterface
+ DECLARE_XINTERFACE()
+
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER()
+
+ // XAccessible
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext> SAL_CALL
+ getAccessibleContext (void)
+ throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleContext
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount (void)
+ throw (::com::sun::star::uno::RuntimeException);
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible> SAL_CALL
+ getAccessibleChild (sal_Int32 i)
+ throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleParent( )
+ throw (::com::sun::star::uno::RuntimeException);
+
+ /** The index returned as index in parent is always the one set with the
+ <member>SetIndexInParent()</member> method.
+ */
+ virtual sal_Int32 SAL_CALL getAccessibleIndexInParent (void)
+ throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int16 SAL_CALL getAccessibleRole (void)
+ throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleComponent
+ virtual sal_Bool SAL_CALL contains (const ::com::sun::star::awt::Point& aPoint)
+ throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible> SAL_CALL
+ getAccessibleAt (const ::com::sun::star::awt::Point& aPoint)
+ throw (::com::sun::star::uno::RuntimeException);
+
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName (void)
+ throw (::com::sun::star::uno::RuntimeException);
+ // Return list specific services.
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL
+ getSupportedServiceNames (void)
+ throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleSelection
+ virtual void SAL_CALL selectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL clearAccessibleSelection( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL selectAllAccessibleChildren( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getSelectedAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL deselectAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+
+ virtual ::com::sun::star::awt::Point SAL_CALL getLocationOnScreen( ) throw (::com::sun::star::uno::RuntimeException);
+
+protected:
+ BoxType m_aBoxType;
+ ::accessibility::IComboListBoxHelper* m_pListBoxHelper;
+ ListItems m_aAccessibleChildren;
+ sal_Int32 m_nVisibleLineCount;
+ /// Index in parent. This is settable from the outside.
+ sal_Int32 m_nIndexInParent;
+ sal_Int32 m_nLastTopEntry;
+ USHORT m_nLastSelectedPos;
+ bool m_bDisableProcessEvent;
+ bool m_bVisible;
+
+
+
+ /// The currently selected item.
+ ::com::sun::star::uno::WeakReference< ::com::sun::star::accessibility::XAccessible>
+ m_xSelectedItem;
+
+ virtual ~VCLXAccessibleList (void);
+
+ /** This function is called from the implementation helper during a
+ XComponent::dispose call. Free the list of items and the items themselves.
+ */
+ virtual void SAL_CALL disposing (void);
+
+ /** This method adds the states
+ <const>AccessibleStateType::FOCUSABLE</const> and possibly
+ <const>AccessibleStateType::MULTI_SELECTABLE</const> to the state set
+ of the base classes.
+ */
+ virtual void FillAccessibleStateSet (utl::AccessibleStateSetHelper& rStateSet);
+
+ /** Create the specified child and insert it into the list of children.
+ Sets the child's states.
+ */
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
+ CreateChild (sal_Int32 i);
+
+ /** Call this method when the item list has been changed, i.e. items
+ have been deleted or inserted.
+ @param bItemInserted
+ Indicate whether items have been inserted (<TRUE/>) or removed
+ (<FALSE/>).
+ @param nIndex
+ Index of the new or removed item. A value of -1 indicates that
+ the whole list has been cleared.
+ */
+ virtual void HandleChangedItemList (bool bItemInserted, sal_Int32 nIndex);
+
+ // VCLXAccessibleComponent
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL implGetBounds( ) throw (::com::sun::star::uno::RuntimeException);
+
+private:
+ /** We need to save the accessible parent to return it in <type>getAccessibleParent()</type>,
+ because this method of the base class returns the wrong parent.
+ */
+ ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > m_xParent;
+
+
+ /** dispose all items aand clears the container
+ */
+ void clearItems();
+
+ void adjustEntriesIndexInParent(ListItems::iterator& _aBegin,::std::mem_fun_t<bool,VCLXAccessibleListItem>& _rMemFun);
+ void UpdateEntryRange_Impl (void);
+protected:
+ void UpdateSelection_Impl (USHORT nPos = 0);
+ BOOL checkEntrySelected(USHORT _nPos,
+ ::com::sun::star::uno::Any& _rNewValue,
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxNewAcc);
+private:
+ void notifyVisibleStates(sal_Bool _bSetNew );
+ void UpdateVisibleLineCount();
+};
+
+#endif
+
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblelistbox.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblelistbox.hxx
new file mode 100644
index 000000000000..c814cb83d84a
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessiblelistbox.hxx
@@ -0,0 +1,63 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLELISTBOX_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLELISTBOX_HXX
+
+#include <accessibility/standard/vclxaccessiblebox.hxx>
+#include <com/sun/star/accessibility/XAccessibleAction.hpp>
+#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp>
+#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
+
+
+/** The accessible drop down combobox has one children. It is the list
+ containing all items and is represented by an object of the
+ <type>VCLXAccessibleListBoxList</type> class which does support
+ selection.
+*/
+class VCLXAccessibleListBox : public VCLXAccessibleBox
+{
+public:
+ VCLXAccessibleListBox (VCLXWindow* pVCLXindow);
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName (void)
+ throw (::com::sun::star::uno::RuntimeException);
+ // Return list box specific services.
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL
+ getSupportedServiceNames (void)
+ throw (::com::sun::star::uno::RuntimeException);
+
+protected:
+ virtual ~VCLXAccessibleListBox (void);
+
+ virtual bool IsValid (void) const;
+ virtual void ProcessWindowEvent (const VclWindowEvent& rVclWindowEvent);
+};
+
+#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLELISTBOX_HXX
+
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblelistboxlist.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblelistboxlist.hxx
new file mode 100644
index 000000000000..9a266d78bb05
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessiblelistboxlist.hxx
@@ -0,0 +1,112 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLELISTBOXLIST_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLELISTBOXLIST_HXX
+
+#include <accessibility/standard/vclxaccessiblelist.hxx>
+#include <com/sun/star/accessibility/XAccessibleAction.hpp>
+#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp>
+#ifndef _COMPHELPER_BROADCASTHELPER_HXX
+#include <comphelper/broadcasthelper.hxx>
+#endif
+#ifndef _COMPHELPER_UNO3_HXX
+#include <comphelper/uno3.hxx>
+#endif
+#ifndef _CPPUHELPER_IMPLBASE1_HXX
+#include <cppuhelper/implbase1.hxx>
+#endif
+
+typedef ::cppu::ImplHelper1 < ::com::sun::star::accessibility::XAccessibleSelection
+ > VCLXAccessibleListBoxList_BASE;
+
+
+class ListBox;
+/** This class extends the list of the <type>VCLXAccessibleList</type> class
+ about selection.
+*/
+class VCLXAccessibleListBoxList :
+ public VCLXAccessibleList,
+ public VCLXAccessibleListBoxList_BASE
+{
+public:
+ VCLXAccessibleListBoxList (VCLXWindow* pVCLXindow, BoxType aBoxType,
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible >& _xParent);
+
+ // XInterface
+ DECLARE_XINTERFACE( )
+
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER( )
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName (void)
+ throw (::com::sun::star::uno::RuntimeException);
+ // Return list box list specific services.
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL
+ getSupportedServiceNames (void)
+ throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleSelection
+ void SAL_CALL selectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ void SAL_CALL clearAccessibleSelection( ) throw (::com::sun::star::uno::RuntimeException);
+ void SAL_CALL selectAllAccessibleChildren( ) throw (::com::sun::star::uno::RuntimeException);
+ sal_Int32 SAL_CALL getSelectedAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ void SAL_CALL deselectAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+
+ /** Create the specified child and insert it into the list of children.
+ Sets the child's states.
+ */
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
+ CreateChild (sal_Int32 i);
+
+
+protected:
+ virtual ~VCLXAccessibleListBoxList (void);
+
+ virtual void ProcessWindowEvent (const VclWindowEvent& rVclWindowEvent);
+
+private:
+ sal_Int32 m_nLastTopEntry;
+ USHORT m_nLastSelectedPos;
+ bool m_bDisableProcessEvent;
+
+ void UpdateEntryRange_Impl (void);
+ using VCLXAccessibleList::UpdateSelection_Impl;
+ void UpdateSelection_Impl (void);
+ using VCLXAccessibleList::checkEntrySelected;
+ BOOL checkEntrySelected(ListBox* _pListBox,
+ USHORT _nPos,
+ ::com::sun::star::uno::Any& _rNewValue,
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxNewAcc);
+};
+
+#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLELISTBOX_HXX
+
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblelistitem.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblelistitem.hxx
new file mode 100644
index 000000000000..ec07745bb0d4
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessiblelistitem.hxx
@@ -0,0 +1,200 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLELISTITEM_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLELISTITEM_HXX
+
+#include <com/sun/star/accessibility/XAccessible.hpp>
+#include <com/sun/star/accessibility/XAccessibleComponent.hpp>
+#include <com/sun/star/accessibility/XAccessibleContext.hpp>
+#include <com/sun/star/accessibility/XAccessibleStateSet.hpp>
+#include <com/sun/star/accessibility/XAccessibleText.hpp>
+#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#ifndef _CPPUHELPER_COMPBASE6_HXX
+#include <cppuhelper/compbase6.hxx>
+#endif
+#ifndef _COMPHELPER_BROADCASTHELPER_HXX
+#include <comphelper/broadcasthelper.hxx>
+#endif
+#include <comphelper/accessibletexthelper.hxx>
+
+// forward ---------------------------------------------------------------
+
+namespace com { namespace sun { namespace star { namespace awt {
+ struct Point;
+ struct Rectangle;
+ struct Size;
+ class XFocusListener;
+} } } }
+
+namespace accessibility
+{
+ class IComboListBoxHelper;
+}
+
+// class VCLXAccessibleListItem ------------------------------------------
+
+typedef ::cppu::WeakAggComponentImplHelper6< ::com::sun::star::accessibility::XAccessible
+ , ::com::sun::star::accessibility::XAccessibleContext
+ , ::com::sun::star::accessibility::XAccessibleComponent
+ , ::com::sun::star::accessibility::XAccessibleEventBroadcaster
+ , ::com::sun::star::accessibility::XAccessibleText
+ , ::com::sun::star::lang::XServiceInfo > VCLXAccessibleListItem_BASE;
+
+/** the class OAccessibleListBoxEntry represents the base class for an accessible object of a listbox entry
+*/
+class VCLXAccessibleListItem : public ::comphelper::OBaseMutex,
+ public ::comphelper::OCommonAccessibleText,
+ public VCLXAccessibleListItem_BASE
+{
+private:
+ ::rtl::OUString m_sEntryText;
+ sal_Int32 m_nIndexInParent;
+ sal_Bool m_bSelected;
+ sal_Bool m_bVisible;
+
+protected:
+ /// client id in the AccessibleEventNotifier queue
+ sal_uInt32 m_nClientId;
+ ::accessibility::IComboListBoxHelper* m_pListBoxHelper;
+
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > m_xParent;
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > m_xParentContext;
+
+private:
+ /** notifies all listeners that this object has changed
+ @param _nEventId
+ is the event id
+ @param _aOldValue
+ is the old value
+ @param _aNewValue
+ is the new value
+ */
+ void NotifyAccessibleEvent( sal_Int16 _nEventId,
+ const ::com::sun::star::uno::Any& _aOldValue,
+ const ::com::sun::star::uno::Any& _aNewValue );
+
+protected:
+ virtual ~VCLXAccessibleListItem();
+ /** this function is called upon disposing the component
+ */
+ virtual void SAL_CALL disposing();
+
+ // OCommonAccessibleText
+ virtual ::rtl::OUString implGetText();
+ virtual ::com::sun::star::lang::Locale implGetLocale();
+ virtual void implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex );
+
+public:
+ /** OAccessibleBase needs a valid view
+ @param _pListBoxHelper
+ is the list- or combobox for which we implement an accessible object
+ @param _nIndexInParent
+ is the position of the entry inside the listbox
+ @param _xParent
+ is our parent accessible object
+ */
+ VCLXAccessibleListItem( ::accessibility::IComboListBoxHelper* _pListBoxHelper,
+ sal_Int32 _nIndexInParent,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _xParent );
+
+
+ inline sal_Bool IsSelected() const { return m_bSelected; }
+ void SetSelected( sal_Bool _bSelected );
+ void SetVisible( sal_Bool _bVisible );
+ inline bool DecrementIndexInParent() { OSL_ENSURE(m_nIndexInParent != 0,"Invalid call!");--m_nIndexInParent; return true;}
+ inline bool IncrementIndexInParent() { ++m_nIndexInParent; return true;}
+
+ // XInterface
+ virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& aType ) throw(::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL acquire( ) throw();
+ virtual void SAL_CALL release( ) throw();
+
+ // XTypeProvider
+ virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId() throw (::com::sun::star::uno::RuntimeException);
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& rServiceName ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessible
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleContext
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::lang::Locale SAL_CALL getLocale( ) throw (::com::sun::star::accessibility::IllegalAccessibleComponentStateException, ::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleComponent
+ virtual sal_Bool SAL_CALL containsPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL getBounds( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Point SAL_CALL getLocation( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Point SAL_CALL getLocationOnScreen( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Size SAL_CALL getSize( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getForeground (void) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getBackground (void) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleText
+ virtual sal_Int32 SAL_CALL getCaretPosition() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setCaretPosition( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Unicode SAL_CALL getCharacter( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL getCharacterBounds( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getCharacterCount() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getIndexAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getSelectedText() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getSelectionStart() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getSelectionEnd() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getText() throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleEventBroadcaster
+ using cppu::WeakAggComponentImplHelperBase::addEventListener;
+ using cppu::WeakAggComponentImplHelperBase::removeEventListener;
+ virtual void SAL_CALL addEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleEventListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL removeEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleEventListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+};
+
+#endif // ACCESSIBILITY_STANDARD_ACCESSIBLELISTBOXENTRY_HXX
+
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblemenu.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblemenu.hxx
new file mode 100644
index 000000000000..35851788853b
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessiblemenu.hxx
@@ -0,0 +1,86 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLEMENU_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLEMENU_HXX
+
+#include <accessibility/standard/vclxaccessiblemenuitem.hxx>
+#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
+
+#ifndef _CPPUHELPER_IMPLBASE1_HXX
+#include <cppuhelper/implbase1.hxx>
+#endif
+
+
+// ----------------------------------------------------
+// class VCLXAccessibleMenu
+// ----------------------------------------------------
+
+typedef ::cppu::ImplHelper1 <
+ ::com::sun::star::accessibility::XAccessibleSelection > VCLXAccessibleMenu_BASE;
+
+class VCLXAccessibleMenu : public VCLXAccessibleMenuItem,
+ public VCLXAccessibleMenu_BASE
+{
+protected:
+ virtual sal_Bool IsFocused();
+ virtual sal_Bool IsPopupMenuOpen();
+
+public:
+ VCLXAccessibleMenu( Menu* pParent, sal_uInt16 nItemPos, Menu* pMenu );
+ virtual ~VCLXAccessibleMenu();
+
+ // XInterface
+ DECLARE_XINTERFACE()
+
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER()
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleContext
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleComponent
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleSelection
+ virtual void SAL_CALL selectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL clearAccessibleSelection( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL selectAllAccessibleChildren( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getSelectedAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL deselectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+};
+
+#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLEMENU_HXX
+
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblemenubar.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblemenubar.hxx
new file mode 100644
index 000000000000..d9899b52dc2f
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessiblemenubar.hxx
@@ -0,0 +1,72 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLEMENUBAR_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLEMENUBAR_HXX
+
+#include <accessibility/standard/accessiblemenucomponent.hxx>
+
+class VclSimpleEvent;
+class VclWindowEvent;
+class Window;
+
+
+// ----------------------------------------------------
+// class VCLXAccessibleMenuBar
+// ----------------------------------------------------
+
+class VCLXAccessibleMenuBar : public OAccessibleMenuComponent
+{
+protected:
+ Window* m_pWindow;
+
+ virtual sal_Bool IsFocused();
+
+ DECL_LINK( WindowEventListener, VclSimpleEvent* );
+
+ virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
+
+ // XComponent
+ virtual void SAL_CALL disposing();
+
+public:
+ VCLXAccessibleMenuBar( Menu* pMenu );
+ virtual ~VCLXAccessibleMenuBar();
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleContext
+ virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleExtendedComponent
+ virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
+};
+
+#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLEMENUBAR_HXX
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblemenuitem.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblemenuitem.hxx
new file mode 100644
index 000000000000..e2e430d9300b
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessiblemenuitem.hxx
@@ -0,0 +1,121 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLEMENUITEM_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLEMENUITEM_HXX
+
+#include <accessibility/standard/accessiblemenuitemcomponent.hxx>
+
+#ifndef _COM_SUN_STAR_ACCESSIBILITY_XACCESSIBLE_ACTION_HPP_
+#include <com/sun/star/accessibility/XAccessibleAction.hpp>
+#endif
+#include <com/sun/star/accessibility/XAccessibleValue.hpp>
+
+#ifndef _CPPUHELPER_IMPLBASE3_HXX
+#include <cppuhelper/implbase3.hxx>
+#endif
+#include <comphelper/accessibletexthelper.hxx>
+
+
+// ----------------------------------------------------
+// class VCLXAccessibleMenuItem
+// ----------------------------------------------------
+
+typedef ::cppu::ImplHelper3<
+ ::com::sun::star::accessibility::XAccessibleText,
+ ::com::sun::star::accessibility::XAccessibleAction,
+ ::com::sun::star::accessibility::XAccessibleValue > VCLXAccessibleMenuItem_BASE;
+
+class VCLXAccessibleMenuItem : public OAccessibleMenuItemComponent,
+ public ::comphelper::OCommonAccessibleText,
+ public VCLXAccessibleMenuItem_BASE
+{
+protected:
+ virtual sal_Bool IsFocused();
+ virtual sal_Bool IsSelected();
+ virtual sal_Bool IsChecked();
+
+ virtual sal_Bool IsHighlighted();
+
+ virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
+
+ // OCommonAccessibleText
+ virtual ::rtl::OUString implGetText();
+ virtual ::com::sun::star::lang::Locale implGetLocale();
+ virtual void implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex );
+
+public:
+ VCLXAccessibleMenuItem( Menu* pParent, sal_uInt16 nItemPos, Menu* pMenu = 0 );
+ virtual ~VCLXAccessibleMenuItem();
+
+ // XInterface
+ DECLARE_XINTERFACE()
+
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER()
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleContext
+ virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleText
+ virtual sal_Int32 SAL_CALL getCaretPosition() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setCaretPosition( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Unicode SAL_CALL getCharacter( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL getCharacterBounds( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getCharacterCount() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getIndexAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getSelectedText() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getSelectionStart() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getSelectionEnd() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getText() throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleAction
+ virtual sal_Int32 SAL_CALL getAccessibleActionCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL doAccessibleAction ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleActionDescription ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleKeyBinding > SAL_CALL getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleValue
+ virtual ::com::sun::star::uno::Any SAL_CALL getCurrentValue( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setCurrentValue( const ::com::sun::star::uno::Any& aNumber ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Any SAL_CALL getMaximumValue( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Any SAL_CALL getMinimumValue( ) throw (::com::sun::star::uno::RuntimeException);
+};
+
+#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLEMENUITEM_HXX
+
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblemenuseparator.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblemenuseparator.hxx
new file mode 100644
index 000000000000..30ae2e764cdb
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessiblemenuseparator.hxx
@@ -0,0 +1,54 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLEMENUSEPARATOR_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLEMENUSEPARATOR_HXX
+
+#include <accessibility/standard/accessiblemenuitemcomponent.hxx>
+
+
+// ----------------------------------------------------
+// class VCLXAccessibleMenuSeparator
+// ----------------------------------------------------
+
+class VCLXAccessibleMenuSeparator : public OAccessibleMenuItemComponent
+{
+public:
+ VCLXAccessibleMenuSeparator( Menu* pParent, sal_uInt16 nItemPos, Menu* pMenu = 0 );
+ virtual ~VCLXAccessibleMenuSeparator();
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleContext
+ virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
+};
+
+
+#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLEMENUSEPARATOR_HXX
+
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblepopupmenu.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblepopupmenu.hxx
new file mode 100644
index 000000000000..d4ccd5f09ff5
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessiblepopupmenu.hxx
@@ -0,0 +1,59 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLEPOPUPMENU_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLEPOPUPMENU_HXX
+
+#include <accessibility/standard/accessiblemenucomponent.hxx>
+
+
+// ----------------------------------------------------
+// class VCLXAccessiblePopupMenu
+// ----------------------------------------------------
+
+class VCLXAccessiblePopupMenu : public OAccessibleMenuComponent
+{
+protected:
+ virtual sal_Bool IsFocused();
+
+public:
+ VCLXAccessiblePopupMenu( Menu* pMenu );
+ virtual ~VCLXAccessiblePopupMenu();
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleContext
+ virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleExtendedComponent
+ virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
+};
+
+#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLEPOPUPMENU_HXX
diff --git a/accessibility/inc/accessibility/standard/vclxaccessibleradiobutton.hxx b/accessibility/inc/accessibility/standard/vclxaccessibleradiobutton.hxx
new file mode 100644
index 000000000000..615ed08ca2da
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessibleradiobutton.hxx
@@ -0,0 +1,88 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLERADIOBUTTON_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLERADIOBUTTON_HXX
+
+#include <accessibility/standard/vclxaccessibletextcomponent.hxx>
+
+#ifndef _COM_SUN_STAR_ACCESSIBILITY_XACCESSIBLE_ACTION_HPP_
+#include <com/sun/star/accessibility/XAccessibleAction.hpp>
+#endif
+#include <com/sun/star/accessibility/XAccessibleValue.hpp>
+
+#ifndef _CPPUHELPER_IMPLBASE2_HXX
+#include <cppuhelper/implbase2.hxx>
+#endif
+
+
+// ----------------------------------------------------
+// class VCLXAccessibleRadioButton
+// ----------------------------------------------------
+
+typedef ::cppu::ImplHelper2<
+ ::com::sun::star::accessibility::XAccessibleAction,
+ ::com::sun::star::accessibility::XAccessibleValue > VCLXAccessibleRadioButton_BASE;
+
+class VCLXAccessibleRadioButton : public VCLXAccessibleTextComponent,
+ public VCLXAccessibleRadioButton_BASE
+{
+protected:
+ virtual ~VCLXAccessibleRadioButton();
+
+ virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
+ virtual void FillAccessibleRelationSet( utl::AccessibleRelationSetHelper& rRelationSet );
+ virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
+
+public:
+ VCLXAccessibleRadioButton( VCLXWindow* pVCLXindow );
+
+ // XInterface
+ DECLARE_XINTERFACE()
+
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER()
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleAction
+ virtual sal_Int32 SAL_CALL getAccessibleActionCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL doAccessibleAction ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleActionDescription ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleKeyBinding > SAL_CALL getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleValue
+ virtual ::com::sun::star::uno::Any SAL_CALL getCurrentValue( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setCurrentValue( const ::com::sun::star::uno::Any& aNumber ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Any SAL_CALL getMaximumValue( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Any SAL_CALL getMinimumValue( ) throw (::com::sun::star::uno::RuntimeException);
+};
+
+#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLERADIOBUTTON_HXX
+
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblescrollbar.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblescrollbar.hxx
new file mode 100644
index 000000000000..063204214a19
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessiblescrollbar.hxx
@@ -0,0 +1,87 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLESCROLLBAR_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLESCROLLBAR_HXX
+
+#include <toolkit/awt/vclxaccessiblecomponent.hxx>
+
+#ifndef _COM_SUN_STAR_ACCESSIBILITY_XACCESSIBLE_ACTION_HPP_
+#include <com/sun/star/accessibility/XAccessibleAction.hpp>
+#endif
+#include <com/sun/star/accessibility/XAccessibleValue.hpp>
+
+#ifndef _CPPUHELPER_IMPLBASE2_HXX
+#include <cppuhelper/implbase2.hxx>
+#endif
+
+
+// ----------------------------------------------------
+// class VCLXAccessibleScrollBar
+// ----------------------------------------------------
+
+typedef ::cppu::ImplHelper2<
+ ::com::sun::star::accessibility::XAccessibleAction,
+ ::com::sun::star::accessibility::XAccessibleValue > VCLXAccessibleScrollBar_BASE;
+
+class VCLXAccessibleScrollBar : public VCLXAccessibleComponent,
+ public VCLXAccessibleScrollBar_BASE
+{
+protected:
+ virtual ~VCLXAccessibleScrollBar();
+
+ virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
+ virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
+
+public:
+ VCLXAccessibleScrollBar( VCLXWindow* pVCLXindow );
+
+ // XInterface
+ DECLARE_XINTERFACE()
+
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER()
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleAction
+ virtual sal_Int32 SAL_CALL getAccessibleActionCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL doAccessibleAction ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleActionDescription ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleKeyBinding > SAL_CALL getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleValue
+ virtual ::com::sun::star::uno::Any SAL_CALL getCurrentValue( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setCurrentValue( const ::com::sun::star::uno::Any& aNumber ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Any SAL_CALL getMaximumValue( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Any SAL_CALL getMinimumValue( ) throw (::com::sun::star::uno::RuntimeException);
+};
+
+#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLESCROLLBAR_HXX
+
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblestatusbar.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblestatusbar.hxx
new file mode 100644
index 000000000000..5243229b4902
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessiblestatusbar.hxx
@@ -0,0 +1,80 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLESTATUSBAR_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLESTATUSBAR_HXX
+
+#include <toolkit/awt/vclxaccessiblecomponent.hxx>
+
+#include <vector>
+
+class StatusBar;
+
+// ----------------------------------------------------
+// class VCLXAccessibleStatusBar
+// ----------------------------------------------------
+
+class VCLXAccessibleStatusBar : public VCLXAccessibleComponent
+{
+private:
+ typedef ::std::vector< ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > > AccessibleChildren;
+
+ AccessibleChildren m_aAccessibleChildren;
+ StatusBar* m_pStatusBar;
+
+protected:
+ void UpdateShowing( sal_Int32 i, sal_Bool bShowing );
+ void UpdateItemName( sal_Int32 i );
+ void UpdateItemText( sal_Int32 i );
+
+ void InsertChild( sal_Int32 i );
+ void RemoveChild( sal_Int32 i );
+
+ virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
+
+ // XComponent
+ virtual void SAL_CALL disposing();
+
+public:
+ VCLXAccessibleStatusBar( VCLXWindow* pVCLXWindow );
+ ~VCLXAccessibleStatusBar();
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleContext
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleComponent
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+};
+
+
+#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLESTATUSBAR_HXX
+
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblestatusbaritem.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblestatusbaritem.hxx
new file mode 100644
index 000000000000..442645c6d88f
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessiblestatusbaritem.hxx
@@ -0,0 +1,144 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLESTATUSBARITEM_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLESTATUSBARITEM_HXX
+
+#include <com/sun/star/accessibility/XAccessible.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <comphelper/accessibletexthelper.hxx>
+#ifndef _CPPUHELPER_IMPLBASE2_HXX
+#include <cppuhelper/implbase2.hxx>
+#endif
+
+
+class StatusBar;
+class VCLExternalSolarLock;
+
+namespace utl {
+class AccessibleStateSetHelper;
+}
+
+
+// ----------------------------------------------------
+// class VCLXAccessibleStatusBarItem
+// ----------------------------------------------------
+
+typedef ::comphelper::OAccessibleTextHelper AccessibleTextHelper_BASE;
+
+typedef ::cppu::ImplHelper2<
+ ::com::sun::star::accessibility::XAccessible,
+ ::com::sun::star::lang::XServiceInfo > VCLXAccessibleStatusBarItem_BASE;
+
+class VCLXAccessibleStatusBarItem : public AccessibleTextHelper_BASE,
+ public VCLXAccessibleStatusBarItem_BASE
+{
+ friend class VCLXAccessibleStatusBar;
+
+private:
+ VCLExternalSolarLock* m_pExternalLock;
+ StatusBar* m_pStatusBar;
+ sal_uInt16 m_nItemId;
+ ::rtl::OUString m_sItemName;
+ ::rtl::OUString m_sItemText;
+ sal_Bool m_bShowing;
+
+protected:
+ sal_Bool IsShowing();
+ void SetShowing( sal_Bool bShowing );
+ void SetItemName( const ::rtl::OUString& sItemName );
+ ::rtl::OUString GetItemName();
+ void SetItemText( const ::rtl::OUString& sItemText );
+ ::rtl::OUString GetItemText();
+ sal_uInt16 GetItemId() const { return m_nItemId; }
+
+ virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
+
+ // OCommonAccessibleComponent
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL implGetBounds( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // OCommonAccessibleText
+ virtual ::rtl::OUString implGetText();
+ virtual ::com::sun::star::lang::Locale implGetLocale();
+ virtual void implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex );
+
+ // XComponent
+ virtual void SAL_CALL disposing();
+
+public:
+ VCLXAccessibleStatusBarItem( StatusBar* pStatusBar, sal_uInt16 nItemId );
+ virtual ~VCLXAccessibleStatusBarItem();
+
+ // XInterface
+ DECLARE_XINTERFACE()
+
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER()
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& rServiceName ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessible
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleContext
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::lang::Locale SAL_CALL getLocale( ) throw (::com::sun::star::accessibility::IllegalAccessibleComponentStateException, ::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleComponent
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleExtendedComponent
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFont > SAL_CALL getFont( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getTitledBorderText( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getToolTipText( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleText
+ virtual sal_Int32 SAL_CALL getCaretPosition() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setCaretPosition( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL getCharacterBounds( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getIndexAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+};
+
+#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLESTATUSBARITEM_HXX
+
diff --git a/accessibility/inc/accessibility/standard/vclxaccessibletabcontrol.hxx b/accessibility/inc/accessibility/standard/vclxaccessibletabcontrol.hxx
new file mode 100644
index 000000000000..f663ca3475fc
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessibletabcontrol.hxx
@@ -0,0 +1,103 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLETABCONTROL_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLETABCONTROL_HXX
+
+#include <toolkit/awt/vclxaccessiblecomponent.hxx>
+#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
+
+#include <vector>
+
+class TabControl;
+
+
+// ----------------------------------------------------
+// class VCLXAccessibleTabControl
+// ----------------------------------------------------
+
+typedef ::cppu::ImplHelper1 <
+ ::com::sun::star::accessibility::XAccessibleSelection > VCLXAccessibleTabControl_BASE;
+
+class VCLXAccessibleTabControl : public VCLXAccessibleComponent,
+ public VCLXAccessibleTabControl_BASE
+{
+private:
+ typedef ::std::vector< ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > > AccessibleChildren;
+
+ AccessibleChildren m_aAccessibleChildren;
+ TabControl* m_pTabControl;
+
+protected:
+ void UpdateFocused();
+ void UpdateSelected( sal_Int32 i, bool bSelected );
+ void UpdatePageText( sal_Int32 i );
+ void UpdateTabPage( sal_Int32 i, bool bNew );
+
+ void InsertChild( sal_Int32 i );
+ void RemoveChild( sal_Int32 i );
+
+ virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
+ virtual void ProcessWindowChildEvent( const VclWindowEvent& rVclWindowEvent );
+ virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
+
+ // XComponent
+ virtual void SAL_CALL disposing();
+
+public:
+ VCLXAccessibleTabControl( VCLXWindow* pVCLXWindow );
+ ~VCLXAccessibleTabControl();
+
+ // XInterface
+ DECLARE_XINTERFACE()
+
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER()
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleContext
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleSelection
+ virtual void SAL_CALL selectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL clearAccessibleSelection( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL selectAllAccessibleChildren( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getSelectedAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL deselectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+};
+
+
+#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLETABCONTROL_HXX
+
diff --git a/accessibility/inc/accessibility/standard/vclxaccessibletabpage.hxx b/accessibility/inc/accessibility/standard/vclxaccessibletabpage.hxx
new file mode 100644
index 000000000000..ed47ce9f0e94
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessibletabpage.hxx
@@ -0,0 +1,148 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLETABPAGE_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLETABPAGE_HXX
+
+#include <com/sun/star/accessibility/XAccessible.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <comphelper/accessibletexthelper.hxx>
+#ifndef _CPPUHELPER_IMPLBASE2_HXX
+#include <cppuhelper/implbase2.hxx>
+#endif
+
+
+class TabControl;
+class VCLExternalSolarLock;
+
+namespace utl {
+class AccessibleStateSetHelper;
+}
+
+
+// ----------------------------------------------------
+// class VCLXAccessibleTabPage
+// ----------------------------------------------------
+
+typedef ::comphelper::OAccessibleTextHelper AccessibleTextHelper_BASE;
+
+typedef ::cppu::ImplHelper2<
+ ::com::sun::star::accessibility::XAccessible,
+ ::com::sun::star::lang::XServiceInfo > VCLXAccessibleTabPage_BASE;
+
+class VCLXAccessibleTabPage : public AccessibleTextHelper_BASE,
+ public VCLXAccessibleTabPage_BASE
+{
+ friend class VCLXAccessibleTabControl;
+
+private:
+ VCLExternalSolarLock* m_pExternalLock;
+ TabControl* m_pTabControl;
+ sal_uInt16 m_nPageId;
+ bool m_bFocused;
+ bool m_bSelected;
+ ::rtl::OUString m_sPageText;
+
+protected:
+ bool IsFocused();
+ bool IsSelected();
+
+ void SetFocused( bool bFocused );
+ void SetSelected( bool bSelected );
+ void SetPageText( const ::rtl::OUString& sPageText );
+ ::rtl::OUString GetPageText();
+
+ void Update( bool bNew );
+
+ sal_uInt16 GetPageId() const { return m_nPageId; }
+
+ virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
+
+ // OCommonAccessibleComponent
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL implGetBounds( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // OCommonAccessibleText
+ virtual ::rtl::OUString implGetText();
+ virtual ::com::sun::star::lang::Locale implGetLocale();
+ virtual void implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex );
+
+ // XComponent
+ virtual void SAL_CALL disposing();
+
+public:
+ VCLXAccessibleTabPage( TabControl* pTabControl, sal_uInt16 nPageId );
+ virtual ~VCLXAccessibleTabPage();
+
+ // XInterface
+ DECLARE_XINTERFACE()
+
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER()
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& rServiceName ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessible
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleContext
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::lang::Locale SAL_CALL getLocale( ) throw (::com::sun::star::accessibility::IllegalAccessibleComponentStateException, ::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleComponent
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleExtendedComponent
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFont > SAL_CALL getFont( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getTitledBorderText( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getToolTipText( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleText
+ virtual sal_Int32 SAL_CALL getCaretPosition() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setCaretPosition( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL getCharacterBounds( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getIndexAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+};
+
+#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLETABPAGE_HXX
+
diff --git a/accessibility/inc/accessibility/standard/vclxaccessibletabpagewindow.hxx b/accessibility/inc/accessibility/standard/vclxaccessibletabpagewindow.hxx
new file mode 100644
index 000000000000..5ba980cc8c4f
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessibletabpagewindow.hxx
@@ -0,0 +1,66 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLETABPAGEWINDOW_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLETABPAGEWINDOW_HXX
+
+#include <toolkit/awt/vclxaccessiblecomponent.hxx>
+
+
+class TabControl;
+class TabPage;
+
+
+// ----------------------------------------------------
+// class VCLXAccessibleTabPageWindow
+// ----------------------------------------------------
+
+class VCLXAccessibleTabPageWindow : public VCLXAccessibleComponent
+{
+private:
+ TabControl* m_pTabControl;
+ TabPage* m_pTabPage;
+ sal_uInt16 m_nPageId;
+
+protected:
+ // OCommonAccessibleComponent
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL implGetBounds( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XComponent
+ virtual void SAL_CALL disposing();
+
+public:
+ VCLXAccessibleTabPageWindow( VCLXWindow* pVCLXWindow );
+ ~VCLXAccessibleTabPageWindow();
+
+ // XAccessibleContext
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
+};
+
+
+#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLETABPAGEWINDOW_HXX
diff --git a/accessibility/inc/accessibility/standard/vclxaccessibletextcomponent.hxx b/accessibility/inc/accessibility/standard/vclxaccessibletextcomponent.hxx
new file mode 100644
index 000000000000..47e7189cd95a
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessibletextcomponent.hxx
@@ -0,0 +1,93 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLETEXTCOMPONENT_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLETEXTCOMPONENT_HXX
+
+#include <toolkit/awt/vclxaccessiblecomponent.hxx>
+#include <comphelper/accessibletexthelper.hxx>
+
+
+// ----------------------------------------------------
+// class VCLXAccessibleTextComponent
+// ----------------------------------------------------
+
+typedef ::cppu::ImplHelper1 <
+ ::com::sun::star::accessibility::XAccessibleText > VCLXAccessibleTextComponent_BASE;
+
+class VCLXAccessibleTextComponent : public VCLXAccessibleComponent,
+ public ::comphelper::OCommonAccessibleText,
+ public VCLXAccessibleTextComponent_BASE
+{
+protected:
+ ::rtl::OUString m_sText;
+
+ void SetText( const ::rtl::OUString& sText );
+
+ virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
+
+ // OCommonAccessibleText
+ virtual ::rtl::OUString implGetText();
+ virtual ::com::sun::star::lang::Locale implGetLocale();
+ virtual void implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex );
+
+ // XComponent
+ virtual void SAL_CALL disposing();
+
+public:
+ VCLXAccessibleTextComponent( VCLXWindow* pVCLXWindow );
+ ~VCLXAccessibleTextComponent();
+
+ // XInterface
+ DECLARE_XINTERFACE()
+
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER()
+
+ // XAccessibleText
+ virtual sal_Int32 SAL_CALL getCaretPosition() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setCaretPosition( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Unicode SAL_CALL getCharacter( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL getCharacterBounds( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getCharacterCount() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getIndexAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getSelectedText() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getSelectionStart() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getSelectionEnd() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getText() throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+};
+
+
+#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLETEXTCOMPONENT_HXX
+
diff --git a/accessibility/inc/accessibility/standard/vclxaccessibletextfield.hxx b/accessibility/inc/accessibility/standard/vclxaccessibletextfield.hxx
new file mode 100644
index 000000000000..70d35acb305a
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessibletextfield.hxx
@@ -0,0 +1,105 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLETEXTFIELD_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLETEXTFIELD_HXX
+
+#include <accessibility/standard/vclxaccessibletextcomponent.hxx>
+
+#ifndef _CPPUHELPER_IMPLBASE1_HXX
+#include <cppuhelper/implbase1.hxx>
+#endif
+
+typedef ::cppu::ImplHelper1<
+ ::com::sun::star::accessibility::XAccessible
+ > VCLXAccessible_BASE;
+
+
+/** This class represents non editable text fields. The object passed to
+ the constructor is expected to be a list (a <type>ListBox</type> to be
+ more specific). From this allways the selected item is token to be made
+ accessible by this class. When the selected item changes then also the
+ exported text changes.
+*/
+class VCLXAccessibleTextField :
+ public VCLXAccessibleTextComponent,
+ public VCLXAccessible_BASE
+{
+public:
+ VCLXAccessibleTextField (VCLXWindow* pVCLXindow,
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible >& _xParent);
+
+ // XInterface
+ DECLARE_XINTERFACE()
+
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER()
+
+ // XAccessible
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext> SAL_CALL
+ getAccessibleContext (void)
+ throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleContext
+ sal_Int32 SAL_CALL getAccessibleChildCount (void)
+ throw (::com::sun::star::uno::RuntimeException);
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible> SAL_CALL
+ getAccessibleChild (sal_Int32 i)
+ throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ sal_Int16 SAL_CALL getAccessibleRole (void)
+ throw (::com::sun::star::uno::RuntimeException);
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ getAccessibleParent( )
+ throw (::com::sun::star::uno::RuntimeException);
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName (void)
+ throw (::com::sun::star::uno::RuntimeException);
+ // Return text field specific services.
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL
+ getSupportedServiceNames (void)
+ throw (::com::sun::star::uno::RuntimeException);
+
+protected:
+ virtual ~VCLXAccessibleTextField (void);
+
+ /** With this method the text of the currently selected item is made
+ available to the <type>VCLXAccessibleTextComponent</type> base class.
+ */
+ ::rtl::OUString implGetText (void);
+
+private:
+ /** We need to save the accessible parent to return it in <type>getAccessibleParent()</type>,
+ because this method of the base class returns the wrong parent.
+ */
+ ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > m_xParent;
+};
+
+#endif
+
diff --git a/accessibility/inc/accessibility/standard/vclxaccessibletoolbox.hxx b/accessibility/inc/accessibility/standard/vclxaccessibletoolbox.hxx
new file mode 100644
index 000000000000..7283cec6a95c
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessibletoolbox.hxx
@@ -0,0 +1,113 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLETOOLBOX_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLETOOLBOX_HXX
+
+#include <map>
+#include <toolkit/awt/vclxaccessiblecomponent.hxx>
+#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
+
+// ----------------------------------------------------
+// class VCLXAccessibleToolBox
+// ----------------------------------------------------
+
+typedef ::cppu::ImplHelper1 < ::com::sun::star::accessibility::XAccessibleSelection > VCLXAccessibleToolBox_BASE;
+
+typedef std::map< sal_Int32, com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > > ToolBoxItemsMap;
+
+class VCLXAccessibleToolBoxItem;
+class ToolBox;
+
+class VCLXAccessibleToolBox : public VCLXAccessibleComponent, public VCLXAccessibleToolBox_BASE
+{
+private:
+ ToolBoxItemsMap m_aAccessibleChildren;
+
+ VCLXAccessibleToolBoxItem* GetItem_Impl( sal_Int32 _nPos, bool _bMustHaveFocus );
+
+ void UpdateFocus_Impl();
+ void ReleaseFocus_Impl( sal_Int32 _nPos );
+ void UpdateChecked_Impl( sal_Int32 _nPos );
+ void UpdateIndeterminate_Impl( sal_Int32 _nPos );
+ void UpdateItem_Impl( sal_Int32 _nPos, sal_Bool _bItemAdded );
+ void UpdateAllItems_Impl();
+ void UpdateItemName_Impl( sal_Int32 _nPos );
+ void UpdateItemEnabled_Impl( sal_Int32 _nPos );
+ void UpdateCustomPopupItemp_Impl( Window* pWindow, bool bOpen );
+ void HandleSubToolBarEvent( const VclWindowEvent& rVclWindowEvent, bool _bShow );
+ void ReleaseSubToolBox( ToolBox* _pSubToolBox );
+
+protected:
+ virtual ~VCLXAccessibleToolBox();
+
+ virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
+ virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
+ virtual void ProcessWindowChildEvent( const VclWindowEvent& rVclWindowEvent );
+
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > GetChildAccessible( const VclWindowEvent& rVclWindowEvent );
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > GetItemWindowAccessible( const VclWindowEvent& rVclWindowEvent );
+
+ // XComponent
+ virtual void SAL_CALL disposing();
+
+public:
+ VCLXAccessibleToolBox( VCLXWindow* pVCLXWindow );
+
+ // XInterface
+ DECLARE_XINTERFACE( )
+
+ // XTypeProvider
+ DECLARE_XTYPEPROVIDER( )
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleContext
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleSelection
+ virtual void SAL_CALL selectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL clearAccessibleSelection( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL selectAllAccessibleChildren( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getSelectedAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL deselectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+
+private:
+ void implReleaseToolboxItem(
+ ToolBoxItemsMap::iterator& _rMapPos,
+ bool _bNotifyRemoval,
+ bool _bDispose
+ );
+};
+
+#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLETOOLBOX_HXX
+
diff --git a/accessibility/inc/accessibility/standard/vclxaccessibletoolboxitem.hxx b/accessibility/inc/accessibility/standard/vclxaccessibletoolboxitem.hxx
new file mode 100644
index 000000000000..4e2073a47a89
--- /dev/null
+++ b/accessibility/inc/accessibility/standard/vclxaccessibletoolboxitem.hxx
@@ -0,0 +1,170 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLETOOLBOXITEM_HXX
+#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLETOOLBOXITEM_HXX
+
+#include <com/sun/star/accessibility/XAccessible.hpp>
+#ifndef _COM_SUN_STAR_ACCESSIBILITY_XACCESSIBLE_ACTION_HPP_
+#include <com/sun/star/accessibility/XAccessibleAction.hpp>
+#endif
+#include <com/sun/star/accessibility/XAccessibleComponent.hpp>
+#include <com/sun/star/accessibility/XAccessibleContext.hpp>
+#include <com/sun/star/accessibility/XAccessibleStateSet.hpp>
+#include <com/sun/star/accessibility/XAccessibleText.hpp>
+#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp>
+#include <com/sun/star/accessibility/XAccessibleValue.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#ifndef _CPPUHELPER_IMPLBASE4_HXX
+#include <cppuhelper/implbase4.hxx>
+#endif
+#include <comphelper/accessibletexthelper.hxx>
+#include <tools/solar.h>
+
+// class VCLXAccessibleToolBoxItem ---------------------------------------------
+
+class ToolBox;
+
+typedef ::comphelper::OAccessibleTextHelper AccessibleTextHelper_BASE;
+typedef ::cppu::ImplHelper4 < ::com::sun::star::accessibility::XAccessible,
+ ::com::sun::star::accessibility::XAccessibleAction,
+ ::com::sun::star::accessibility::XAccessibleValue,
+ ::com::sun::star::lang::XServiceInfo > VCLXAccessibleToolBoxItem_BASE;
+
+class VCLExternalSolarLock;
+
+class VCLXAccessibleToolBoxItem : public AccessibleTextHelper_BASE,
+ public VCLXAccessibleToolBoxItem_BASE
+{
+private:
+ ::rtl::OUString m_sOldName;
+ ToolBox* m_pToolBox;
+ VCLExternalSolarLock* m_pExternalLock;
+ sal_Int32 m_nIndexInParent;
+ sal_Int16 m_nRole;
+ USHORT m_nItemId;
+ sal_Bool m_bHasFocus;
+ sal_Bool m_bIsChecked;
+ bool m_bIndeterminate;
+
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > m_xChild;
+
+public:
+ inline sal_Int32 getIndexInParent() const { return m_nIndexInParent; }
+ inline void setIndexInParent( sal_Int32 _nNewIndex ) { m_nIndexInParent = _nNewIndex; }
+
+protected:
+ virtual ~VCLXAccessibleToolBoxItem();
+
+ virtual void SAL_CALL disposing();
+
+ /// implements the calculation of the bounding rectangle
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL implGetBounds( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // OCommonAccessibleText
+ virtual ::rtl::OUString implGetText();
+ virtual ::com::sun::star::lang::Locale implGetLocale();
+ virtual void implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex );
+
+ ::rtl::OUString GetText( bool _bAsName );
+
+public:
+ VCLXAccessibleToolBoxItem( ToolBox* _pToolBox, sal_Int32 _nPos );
+
+ void SetFocus( sal_Bool _bFocus );
+ inline sal_Bool HasFocus() const { return m_bHasFocus; }
+ void SetChecked( sal_Bool _bCheck );
+ inline sal_Bool IsChecked() const { return m_bIsChecked; }
+ void SetIndeterminate( bool _bIndeterminate );
+ inline bool IsIndeterminate() const { return m_bIndeterminate; }
+ inline void ReleaseToolBox() { m_pToolBox = NULL; }
+ void NameChanged();
+ void SetChild( const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _xChild );
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
+ GetChild() const { return m_xChild; }
+ void NotifyChildEvent( const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _xChild, bool _bShow );
+
+ void ToggleEnableState();
+
+ // XInterface
+ DECLARE_XINTERFACE( )
+ DECLARE_XTYPEPROVIDER( )
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& rServiceName ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessible
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleContext
+ virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleText
+ virtual sal_Int32 SAL_CALL getCaretPosition() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setCaretPosition( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL getCharacterBounds( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getIndexAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleComponent
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleExtendedComponent
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFont > SAL_CALL getFont( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::FontDescriptor SAL_CALL getFontMetrics( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFont >& xFont ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getTitledBorderText( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getToolTipText( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleAction
+ virtual sal_Int32 SAL_CALL getAccessibleActionCount( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL doAccessibleAction ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getAccessibleActionDescription ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleKeyBinding > SAL_CALL getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
+
+ // XAccessibleValue
+ virtual ::com::sun::star::uno::Any SAL_CALL getCurrentValue( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setCurrentValue( const ::com::sun::star::uno::Any& aNumber ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Any SAL_CALL getMaximumValue( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Any SAL_CALL getMinimumValue( ) throw (::com::sun::star::uno::RuntimeException);
+};
+
+#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLETOOLBOXITEM_HXX
+
diff --git a/accessibility/inc/makefile.mk b/accessibility/inc/makefile.mk
new file mode 100644
index 000000000000..3afcad166928
--- /dev/null
+++ b/accessibility/inc/makefile.mk
@@ -0,0 +1,47 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+PRJ=..
+
+PRJNAME=accessibility
+TARGET=inc
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+# --- Files --------------------------------------------------------
+# --- Targets -------------------------------------------------------
+
+.INCLUDE : target.mk
+
+.IF "$(ENABLE_PCH)"!=""
+ALLTAR : \
+ $(SLO)$/precompiled.pch \
+ $(SLO)$/precompiled_ex.pch
+
+.ENDIF # "$(ENABLE_PCH)"!=""
+
diff --git a/accessibility/inc/pch/precompiled_accessibility.cxx b/accessibility/inc/pch/precompiled_accessibility.cxx
new file mode 100644
index 000000000000..de6282ce69cb
--- /dev/null
+++ b/accessibility/inc/pch/precompiled_accessibility.cxx
@@ -0,0 +1,29 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#include "precompiled_accessibility.hxx"
+
diff --git a/accessibility/inc/pch/precompiled_accessibility.hxx b/accessibility/inc/pch/precompiled_accessibility.hxx
new file mode 100644
index 000000000000..4d3020b4e289
--- /dev/null
+++ b/accessibility/inc/pch/precompiled_accessibility.hxx
@@ -0,0 +1,37 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): Generated on 2006-09-01 17:49:28.952369
+
+#ifdef PRECOMPILED_HEADERS
+
+//---MARKER---
+
+#include "com/sun/star/accessibility/AccessibleRelationType.hpp"
+#include "unotools/accessiblerelationsethelper.hxx"
+#include "vcl/window.hxx"
+#endif
diff --git a/accessibility/prj/build.lst b/accessibility/prj/build.lst
new file mode 100755
index 000000000000..f410ece56d9b
--- /dev/null
+++ b/accessibility/prj/build.lst
@@ -0,0 +1,18 @@
+ac accessibility : l10n tools jurt offuh unoil vcl javaunohelper jvmaccess cppu sal toolkit svtools NULL
+ac accessibility usr1 - all ac_mkout NULL
+ac accessibility\inc nmake - all ac_inc NULL
+ac accessibility\bridge\org\openoffice\java\accessibility nmake - w ac_ooja ac_inc NULL
+ac accessibility\bridge\org\openoffice\accessibility nmake - w ac_ooa ac_ooja.w ac_inc NULL
+ac accessibility\bridge\source\java nmake - w ac_ooan ac_ooa.w ac_inc NULL
+ac accessibility\inc get - all ac_inc NULL
+ac accessibility\source\helper nmake - all ac_helper ac_inc NULL
+ac accessibility\source\standard nmake - all ac_standard ac_helper ac_inc NULL
+ac accessibility\source\extended nmake - all ac_extended ac_inc NULL
+ac accessibility\util nmake - all ac_util ac_helper ac_standard ac_extended NULL
+ac accessibility\workben\org\openoffice\accessibility\awb nmake - all ac_awb_main ac_awb_misc ac_awb_canvas ac_awb_view ac_awb_tree NULL
+ac accessibility\workben\org\openoffice\accessibility\misc nmake - all ac_awb_misc NULL
+ac accessibility\workben\org\openoffice\accessibility\awb\canvas nmake - all ac_awb_canvas ac_awb_tree NULL
+ac accessibility\workben\org\openoffice\accessibility\awb\tree nmake - all ac_awb_tree ac_awb_misc NULL
+ac accessibility\workben\org\openoffice\accessibility\awb\view nmake - all ac_awb_view ac_awb_view_text NULL
+# dependency on ac_awb_misc to avoid concurrent creation of java_ver.mk
+ac accessibility\workben\org\openoffice\accessibility\awb\view\text nmake - all ac_awb_view_text ac_awb_misc NULL
diff --git a/accessibility/prj/d.lst b/accessibility/prj/d.lst
new file mode 100644
index 000000000000..662373c7c487
--- /dev/null
+++ b/accessibility/prj/d.lst
@@ -0,0 +1,8 @@
+..\%__SRC%\class\java_uno_accessbridge.jar %_DEST%\bin%_EXT%\java_uno_accessbridge.jar
+..\%__SRC%\class\java_accessibility.jar %_DEST%\bin%_EXT%\java_accessibility.jar
+
+..\%__SRC%\bin\*.dll %_DEST%\bin%_EXT%\*.dll
+..\%__SRC%\bin\*.res %_DEST%\bin%_EXT%\*.res
+..\%__SRC%\lib\lib*.so %_DEST%\lib%_EXT%
+..\%__SRC%\lib\*.dylib %_DEST%\lib%_EXT%\*.dylib
+..\%__SRC%\misc\java_uno_accessbridge.component %_DEST%\xml\java_uno_accessbridge.component
diff --git a/accessibility/prj/l10n b/accessibility/prj/l10n
new file mode 100644
index 000000000000..69f0d9e5e24e
--- /dev/null
+++ b/accessibility/prj/l10n
@@ -0,0 +1 @@
+#i49922# In this module en-US and de are used as source language
diff --git a/accessibility/source/extended/AccessibleBrowseBox.cxx b/accessibility/source/extended/AccessibleBrowseBox.cxx
new file mode 100644
index 000000000000..677c15513d7a
--- /dev/null
+++ b/accessibility/source/extended/AccessibleBrowseBox.cxx
@@ -0,0 +1,401 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include "accessibility/extended/AccessibleBrowseBox.hxx"
+#include "accessibility/extended/AccessibleBrowseBoxTable.hxx"
+#include "accessibility/extended/AccessibleBrowseBoxHeaderBar.hxx"
+#include <svtools/accessibletableprovider.hxx>
+#include <comphelper/types.hxx>
+#include <toolkit/helper/vclunohelper.hxx>
+
+// ============================================================================
+
+namespace accessibility
+{
+
+// ============================================================================
+
+using ::rtl::OUString;
+
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::accessibility;
+using namespace ::svt;
+
+// ============================================================================
+class AccessibleBrowseBoxImpl
+{
+public:
+ /// the XAccessible which created the AccessibleBrowseBox
+ WeakReference< XAccessible > m_aCreator;
+
+ /** The data table child. */
+ Reference<
+ ::com::sun::star::accessibility::XAccessible > mxTable;
+ AccessibleBrowseBoxTable* m_pTable;
+
+ /** The header bar for rows ("handle column"). */
+ Reference<
+ ::com::sun::star::accessibility::XAccessible > mxRowHeaderBar;
+ AccessibleBrowseBoxHeaderBar* m_pRowHeaderBar;
+
+ /** The header bar for columns (first row of the table). */
+ Reference<
+ ::com::sun::star::accessibility::XAccessible > mxColumnHeaderBar;
+ AccessibleBrowseBoxHeaderBar* m_pColumnHeaderBar;
+};
+
+// Ctor/Dtor/disposing --------------------------------------------------------
+
+DBG_NAME( AccessibleBrowseBox )
+
+AccessibleBrowseBox::AccessibleBrowseBox(
+ const Reference< XAccessible >& _rxParent, const Reference< XAccessible >& _rxCreator,
+ IAccessibleTableProvider& _rBrowseBox )
+ : AccessibleBrowseBoxBase( _rxParent, _rBrowseBox,NULL, BBTYPE_BROWSEBOX )
+{
+ DBG_CTOR( AccessibleBrowseBox, NULL );
+ m_pImpl.reset( new AccessibleBrowseBoxImpl() );
+ m_pImpl->m_aCreator = _rxCreator;
+
+ m_xFocusWindow = VCLUnoHelper::GetInterface(mpBrowseBox->GetWindowInstance());
+}
+// -----------------------------------------------------------------------------
+void AccessibleBrowseBox::setCreator( const Reference< XAccessible >& _rxCreator )
+{
+#if OSL_DEBUG_LEVEL > 0
+ Reference< XAccessible > xCreator = (Reference< XAccessible >)m_pImpl->m_aCreator;
+ DBG_ASSERT( !xCreator.is(), "accessibility/extended/AccessibleBrowseBox::setCreator: creator already set!" );
+#endif
+ m_pImpl->m_aCreator = _rxCreator;
+}
+
+// -----------------------------------------------------------------------------
+AccessibleBrowseBox::~AccessibleBrowseBox()
+{
+ DBG_DTOR( AccessibleBrowseBox, NULL );
+}
+// -----------------------------------------------------------------------------
+
+void SAL_CALL AccessibleBrowseBox::disposing()
+{
+ ::osl::MutexGuard aGuard( getOslMutex() );
+
+ m_pImpl->m_pTable = NULL;
+ m_pImpl->m_pColumnHeaderBar = NULL;
+ m_pImpl->m_pRowHeaderBar = NULL;
+ m_pImpl->m_aCreator = Reference< XAccessible >();
+
+ Reference< XAccessible > xTable = m_pImpl->mxTable;
+
+ Reference< XComponent > xComp( m_pImpl->mxTable, UNO_QUERY );
+ if ( xComp.is() )
+ {
+ xComp->dispose();
+
+ }
+//! ::comphelper::disposeComponent(m_pImpl->mxTable);
+ ::comphelper::disposeComponent(m_pImpl->mxRowHeaderBar);
+ ::comphelper::disposeComponent(m_pImpl->mxColumnHeaderBar);
+
+ AccessibleBrowseBoxBase::disposing();
+}
+// -----------------------------------------------------------------------------
+
+// XAccessibleContext ---------------------------------------------------------
+
+sal_Int32 SAL_CALL AccessibleBrowseBox::getAccessibleChildCount()
+ throw ( uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ return BBINDEX_FIRSTCONTROL + mpBrowseBox->GetAccessibleControlCount();
+}
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > SAL_CALL
+AccessibleBrowseBox::getAccessibleChild( sal_Int32 nChildIndex )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+
+ Reference< XAccessible > xRet;
+ if( nChildIndex >= 0 )
+ {
+ if( nChildIndex < BBINDEX_FIRSTCONTROL )
+ xRet = implGetFixedChild( nChildIndex );
+ else
+ {
+ // additional controls
+ nChildIndex -= BBINDEX_FIRSTCONTROL;
+ if( nChildIndex < mpBrowseBox->GetAccessibleControlCount() )
+ xRet = mpBrowseBox->CreateAccessibleControl( nChildIndex );
+ }
+ }
+
+ if( !xRet.is() )
+ throw lang::IndexOutOfBoundsException();
+ return xRet;
+}
+// -----------------------------------------------------------------------------
+
+//sal_Int16 SAL_CALL AccessibleBrowseBox::getAccessibleRole()
+// throw ( uno::RuntimeException )
+//{
+// ensureIsAlive();
+// return AccessibleRole::PANEL;
+//}
+// -----------------------------------------------------------------------------
+
+// XAccessibleComponent -------------------------------------------------------
+
+Reference< XAccessible > SAL_CALL
+AccessibleBrowseBox::getAccessibleAtPoint( const awt::Point& rPoint )
+ throw ( uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+
+ Reference< XAccessible > xChild;
+ sal_Int32 nIndex = 0;
+ if( mpBrowseBox->ConvertPointToControlIndex( nIndex, VCLPoint( rPoint ) ) )
+ xChild = mpBrowseBox->CreateAccessibleControl( nIndex );
+ else
+ {
+ // try whether point is in one of the fixed children
+ // (table, header bars, corner control)
+ Point aPoint( VCLPoint( rPoint ) );
+ for( nIndex = 0; (nIndex < BBINDEX_FIRSTCONTROL) && !xChild.is(); ++nIndex )
+ {
+ Reference< XAccessible > xCurrChild( implGetFixedChild( nIndex ) );
+ Reference< XAccessibleComponent >
+ xCurrChildComp( xCurrChild, uno::UNO_QUERY );
+
+ if( xCurrChildComp.is() &&
+ VCLRectangle( xCurrChildComp->getBounds() ).IsInside( aPoint ) )
+ xChild = xCurrChild;
+ }
+ }
+ return xChild;
+}
+// -----------------------------------------------------------------------------
+
+void SAL_CALL AccessibleBrowseBox::grabFocus()
+ throw ( uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ mpBrowseBox->GrabFocus();
+}
+// -----------------------------------------------------------------------------
+
+Any SAL_CALL AccessibleBrowseBox::getAccessibleKeyBinding()
+ throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ return Any();
+}
+// -----------------------------------------------------------------------------
+
+// XServiceInfo ---------------------------------------------------------------
+
+OUString SAL_CALL AccessibleBrowseBox::getImplementationName()
+ throw ( uno::RuntimeException )
+{
+ return OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.svtools.AccessibleBrowseBox" ) );
+}
+// -----------------------------------------------------------------------------
+
+// internal virtual methods ---------------------------------------------------
+
+Rectangle AccessibleBrowseBox::implGetBoundingBox()
+{
+ Window* pParent = mpBrowseBox->GetAccessibleParentWindow();
+ DBG_ASSERT( pParent, "implGetBoundingBox - missing parent window" );
+ return mpBrowseBox->GetWindowExtentsRelative( pParent );
+}
+// -----------------------------------------------------------------------------
+
+Rectangle AccessibleBrowseBox::implGetBoundingBoxOnScreen()
+{
+ return mpBrowseBox->GetWindowExtentsRelative( NULL );
+}
+// -----------------------------------------------------------------------------
+
+// internal helper methods ----------------------------------------------------
+
+Reference< XAccessible > AccessibleBrowseBox::implGetTable()
+{
+ if( !m_pImpl->mxTable.is() )
+ {
+ m_pImpl->m_pTable = createAccessibleTable();
+ m_pImpl->mxTable = m_pImpl->m_pTable;
+
+ }
+ return m_pImpl->mxTable;
+}
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible >
+AccessibleBrowseBox::implGetHeaderBar( AccessibleBrowseBoxObjType eObjType )
+{
+ Reference< XAccessible > xRet;
+ Reference< XAccessible >* pxMember = NULL;
+
+ if( eObjType == BBTYPE_ROWHEADERBAR )
+ pxMember = &m_pImpl->mxRowHeaderBar;
+ else if( eObjType == BBTYPE_COLUMNHEADERBAR )
+ pxMember = &m_pImpl->mxColumnHeaderBar;
+
+ if( pxMember )
+ {
+ if( !pxMember->is() )
+ {
+ AccessibleBrowseBoxHeaderBar* pHeaderBar = new AccessibleBrowseBoxHeaderBar(
+ (Reference< XAccessible >)m_pImpl->m_aCreator, *mpBrowseBox, eObjType );
+
+ if ( BBTYPE_COLUMNHEADERBAR == eObjType)
+ m_pImpl->m_pColumnHeaderBar = pHeaderBar;
+ else
+ m_pImpl->m_pRowHeaderBar = pHeaderBar;
+
+ *pxMember = pHeaderBar;
+ }
+ xRet = *pxMember;
+ }
+ return xRet;
+}
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible >
+AccessibleBrowseBox::implGetFixedChild( sal_Int32 nChildIndex )
+{
+ Reference< XAccessible > xRet;
+ switch( nChildIndex )
+ {
+ case BBINDEX_COLUMNHEADERBAR:
+ xRet = implGetHeaderBar( BBTYPE_COLUMNHEADERBAR );
+ break;
+ case BBINDEX_ROWHEADERBAR:
+ xRet = implGetHeaderBar( BBTYPE_ROWHEADERBAR );
+ break;
+ case BBINDEX_TABLE:
+ xRet = implGetTable();
+ break;
+ }
+ return xRet;
+}
+// -----------------------------------------------------------------------------
+AccessibleBrowseBoxTable* AccessibleBrowseBox::createAccessibleTable()
+{
+ Reference< XAccessible > xCreator = (Reference< XAccessible >)m_pImpl->m_aCreator;
+ DBG_ASSERT( xCreator.is(), "accessibility/extended/AccessibleBrowseBox::createAccessibleTable: my creator died - how this?" );
+ return new AccessibleBrowseBoxTable( xCreator, *mpBrowseBox );
+}
+// -----------------------------------------------------------------------------
+void AccessibleBrowseBox::commitTableEvent(sal_Int16 _nEventId,const Any& _rNewValue,const Any& _rOldValue)
+{
+ if ( m_pImpl->mxTable.is() )
+ {
+ m_pImpl->m_pTable->commitEvent(_nEventId,_rNewValue,_rOldValue);
+ }
+}
+// -----------------------------------------------------------------------------
+void AccessibleBrowseBox::commitHeaderBarEvent( sal_Int16 _nEventId,
+ const Any& _rNewValue,
+ const Any& _rOldValue,sal_Bool _bColumnHeaderBar)
+{
+ Reference< XAccessible > xHeaderBar = _bColumnHeaderBar ? m_pImpl->mxColumnHeaderBar : m_pImpl->mxRowHeaderBar;
+ AccessibleBrowseBoxHeaderBar* pHeaderBar = _bColumnHeaderBar ? m_pImpl->m_pColumnHeaderBar : m_pImpl->m_pRowHeaderBar;
+ if ( xHeaderBar.is() )
+ pHeaderBar->commitEvent(_nEventId,_rNewValue,_rOldValue);
+}
+
+// ============================================================================
+// = AccessibleBrowseBoxAccess
+// ============================================================================
+DBG_NAME( AccessibleBrowseBoxAccess )
+// -----------------------------------------------------------------------------
+AccessibleBrowseBoxAccess::AccessibleBrowseBoxAccess( const Reference< XAccessible >& _rxParent, IAccessibleTableProvider& _rBrowseBox )
+ :m_xParent( _rxParent )
+ ,m_rBrowseBox( _rBrowseBox )
+ ,m_pContext( NULL )
+{
+ DBG_CTOR( AccessibleBrowseBoxAccess, NULL );
+}
+
+// -----------------------------------------------------------------------------
+AccessibleBrowseBoxAccess::~AccessibleBrowseBoxAccess()
+{
+ DBG_DTOR( AccessibleBrowseBoxAccess, NULL );
+}
+
+// -----------------------------------------------------------------------------
+void AccessibleBrowseBoxAccess::dispose()
+{
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ m_pContext = NULL;
+ ::comphelper::disposeComponent( m_xContext );
+}
+
+// -----------------------------------------------------------------------------
+Reference< XAccessibleContext > SAL_CALL AccessibleBrowseBoxAccess::getAccessibleContext() throw ( RuntimeException )
+{
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ DBG_ASSERT( ( m_pContext && m_xContext.is() ) || ( !m_pContext && !m_xContext.is() ),
+ "accessibility/extended/AccessibleBrowseBoxAccess::getAccessibleContext: inconsistency!" );
+
+ // if the context died meanwhile (we're no listener, so it won't tell us explicitily when this happens),
+ // then reset an re-create.
+ if ( m_pContext && !m_pContext->isAlive() )
+ m_xContext = m_pContext = NULL;
+
+ if ( !m_xContext.is() )
+ m_xContext = m_pContext = new AccessibleBrowseBox( m_xParent, this, m_rBrowseBox );
+
+ return m_xContext;
+}
+
+// -----------------------------------------------------------------------------
+bool AccessibleBrowseBoxAccess::isContextAlive() const
+{
+ return ( NULL != m_pContext ) && m_pContext->isAlive();
+}
+
+// ============================================================================
+
+} // namespace accessibility
diff --git a/accessibility/source/extended/AccessibleBrowseBoxBase.cxx b/accessibility/source/extended/AccessibleBrowseBoxBase.cxx
new file mode 100644
index 000000000000..f8b43ecdced2
--- /dev/null
+++ b/accessibility/source/extended/AccessibleBrowseBoxBase.cxx
@@ -0,0 +1,658 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include "accessibility/extended/AccessibleBrowseBoxBase.hxx"
+#include <svtools/accessibletableprovider.hxx>
+#include <rtl/uuid.h>
+//
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <unotools/accessiblerelationsethelper.hxx>
+
+// ============================================================================
+
+using ::rtl::OUString;
+
+using ::com::sun::star::uno::Reference;
+using ::com::sun::star::uno::Sequence;
+using ::com::sun::star::uno::Any;
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::accessibility;
+using namespace ::comphelper;
+using namespace ::svt;
+
+
+// ============================================================================
+
+namespace accessibility {
+
+using namespace com::sun::star::accessibility::AccessibleStateType;
+// ============================================================================
+
+// Ctor/Dtor/disposing --------------------------------------------------------
+
+DBG_NAME( AccessibleBrowseBoxBase )
+
+AccessibleBrowseBoxBase::AccessibleBrowseBoxBase(
+ const Reference< XAccessible >& rxParent,
+ IAccessibleTableProvider& rBrowseBox,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
+ AccessibleBrowseBoxObjType eObjType ) :
+ AccessibleBrowseBoxImplHelper( m_aMutex ),
+ mxParent( rxParent ),
+ mpBrowseBox( &rBrowseBox ),
+ m_xFocusWindow(_xFocusWindow),
+ maName( rBrowseBox.GetAccessibleObjectName( eObjType ) ),
+ maDescription( rBrowseBox.GetAccessibleObjectDescription( eObjType ) ),
+ meObjType( eObjType ),
+ m_aClientId(0)
+{
+ DBG_CTOR( AccessibleBrowseBoxBase, NULL );
+ if ( m_xFocusWindow.is() )
+ m_xFocusWindow->addFocusListener( this );
+}
+
+AccessibleBrowseBoxBase::AccessibleBrowseBoxBase(
+ const Reference< XAccessible >& rxParent,
+ IAccessibleTableProvider& rBrowseBox,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
+ AccessibleBrowseBoxObjType eObjType,
+ const ::rtl::OUString& rName,
+ const ::rtl::OUString& rDescription ) :
+ AccessibleBrowseBoxImplHelper( m_aMutex ),
+ mxParent( rxParent ),
+ mpBrowseBox( &rBrowseBox ),
+ m_xFocusWindow(_xFocusWindow),
+ maName( rName ),
+ maDescription( rDescription ),
+ meObjType( eObjType ),
+ m_aClientId(0)
+{
+ DBG_CTOR( AccessibleBrowseBoxBase, NULL );
+ if ( m_xFocusWindow.is() )
+ m_xFocusWindow->addFocusListener( this );
+}
+
+AccessibleBrowseBoxBase::~AccessibleBrowseBoxBase()
+{
+ DBG_DTOR( AccessibleBrowseBoxBase, NULL );
+
+ if( isAlive() )
+ {
+ // increment ref count to prevent double call of Dtor
+ osl_incrementInterlockedCount( &m_refCount );
+ dispose();
+ }
+}
+
+void SAL_CALL AccessibleBrowseBoxBase::disposing()
+{
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ if ( m_xFocusWindow.is() )
+ {
+ BBSolarGuard aSolarGuard;
+ m_xFocusWindow->removeFocusListener( this );
+ }
+
+ if ( getClientId( ) )
+ {
+ AccessibleEventNotifier::TClientId nId( getClientId( ) );
+ setClientId( 0 );
+ AccessibleEventNotifier::revokeClientNotifyDisposing( nId, *this );
+ }
+
+ mxParent = NULL;
+ mpBrowseBox = NULL;
+}
+
+// XAccessibleContext ---------------------------------------------------------
+
+Reference< XAccessible > SAL_CALL AccessibleBrowseBoxBase::getAccessibleParent()
+ throw ( uno::RuntimeException )
+{
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ return mxParent;
+}
+
+sal_Int32 SAL_CALL AccessibleBrowseBoxBase::getAccessibleIndexInParent()
+ throw ( uno::RuntimeException )
+{
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+
+ // -1 for child not found/no parent (according to specification)
+ sal_Int32 nRet = -1;
+
+ Reference< uno::XInterface > xMeMyselfAndI( static_cast< XAccessibleContext* >( this ), uno::UNO_QUERY );
+
+ // iterate over parent's children and search for this object
+ if( mxParent.is() )
+ {
+ Reference< XAccessibleContext >
+ xParentContext( mxParent->getAccessibleContext() );
+ if( xParentContext.is() )
+ {
+ Reference< uno::XInterface > xChild;
+
+ sal_Int32 nChildCount = xParentContext->getAccessibleChildCount();
+ for( sal_Int32 nChild = 0; nChild < nChildCount; ++nChild )
+ {
+ xChild = xChild.query( xParentContext->getAccessibleChild( nChild ) );
+
+ if ( xMeMyselfAndI.get() == xChild.get() )
+ {
+ nRet = nChild;
+ break;
+ }
+ }
+ }
+ }
+ return nRet;
+}
+
+OUString SAL_CALL AccessibleBrowseBoxBase::getAccessibleDescription()
+ throw ( uno::RuntimeException )
+{
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ return maDescription;
+}
+
+OUString SAL_CALL AccessibleBrowseBoxBase::getAccessibleName()
+ throw ( uno::RuntimeException )
+{
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ return maName;
+}
+
+Reference< XAccessibleRelationSet > SAL_CALL
+AccessibleBrowseBoxBase::getAccessibleRelationSet()
+ throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ // BrowseBox does not have relations.
+ return new utl::AccessibleRelationSetHelper;
+}
+
+Reference< XAccessibleStateSet > SAL_CALL
+AccessibleBrowseBoxBase::getAccessibleStateSet()
+ throw ( uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ // don't check whether alive -> StateSet may contain DEFUNC
+ return implCreateStateSetHelper();
+}
+
+lang::Locale SAL_CALL AccessibleBrowseBoxBase::getLocale()
+ throw ( IllegalAccessibleComponentStateException, uno::RuntimeException )
+{
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ if( mxParent.is() )
+ {
+ Reference< XAccessibleContext >
+ xParentContext( mxParent->getAccessibleContext() );
+ if( xParentContext.is() )
+ return xParentContext->getLocale();
+ }
+ throw IllegalAccessibleComponentStateException();
+}
+
+// XAccessibleComponent -------------------------------------------------------
+
+sal_Bool SAL_CALL AccessibleBrowseBoxBase::containsPoint( const awt::Point& rPoint )
+ throw ( uno::RuntimeException )
+{
+ return Rectangle( Point(), getBoundingBox().GetSize() ).IsInside( VCLPoint( rPoint ) );
+}
+
+awt::Rectangle SAL_CALL AccessibleBrowseBoxBase::getBounds()
+ throw ( uno::RuntimeException )
+{
+ return AWTRectangle( getBoundingBox() );
+}
+
+awt::Point SAL_CALL AccessibleBrowseBoxBase::getLocation()
+ throw ( uno::RuntimeException )
+{
+ return AWTPoint( getBoundingBox().TopLeft() );
+}
+
+awt::Point SAL_CALL AccessibleBrowseBoxBase::getLocationOnScreen()
+ throw ( uno::RuntimeException )
+{
+ return AWTPoint( getBoundingBoxOnScreen().TopLeft() );
+}
+
+awt::Size SAL_CALL AccessibleBrowseBoxBase::getSize()
+ throw ( uno::RuntimeException )
+{
+ return AWTSize( getBoundingBox().GetSize() );
+}
+
+sal_Bool SAL_CALL AccessibleBrowseBoxBase::isShowing()
+ throw ( uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ return implIsShowing();
+}
+
+sal_Bool SAL_CALL AccessibleBrowseBoxBase::isVisible()
+ throw ( uno::RuntimeException )
+{
+ Reference< XAccessibleStateSet > xStateSet = getAccessibleStateSet();
+ return xStateSet.is() ?
+ xStateSet->contains( AccessibleStateType::VISIBLE ) : sal_False;
+}
+
+sal_Bool SAL_CALL AccessibleBrowseBoxBase::isFocusTraversable()
+ throw ( uno::RuntimeException )
+{
+ Reference< XAccessibleStateSet > xStateSet = getAccessibleStateSet();
+ return xStateSet.is() ?
+ xStateSet->contains( AccessibleStateType::FOCUSABLE ) : sal_False;
+}
+
+void SAL_CALL AccessibleBrowseBoxBase::focusGained( const ::com::sun::star::awt::FocusEvent& ) throw (::com::sun::star::uno::RuntimeException)
+{
+ com::sun::star::uno::Any aFocused;
+ com::sun::star::uno::Any aEmpty;
+ aFocused <<= FOCUSED;
+
+ commitEvent(AccessibleEventId::STATE_CHANGED,aFocused,aEmpty);
+}
+// -----------------------------------------------------------------------------
+
+void SAL_CALL AccessibleBrowseBoxBase::focusLost( const ::com::sun::star::awt::FocusEvent& ) throw (::com::sun::star::uno::RuntimeException)
+{
+ com::sun::star::uno::Any aFocused;
+ com::sun::star::uno::Any aEmpty;
+ aFocused <<= FOCUSED;
+
+ commitEvent(AccessibleEventId::STATE_CHANGED,aEmpty,aFocused);
+}
+// XAccessibleEventBroadcaster ------------------------------------------------
+
+void SAL_CALL AccessibleBrowseBoxBase::addEventListener(
+ const Reference< XAccessibleEventListener>& _rxListener )
+ throw ( uno::RuntimeException )
+{
+ if ( _rxListener.is() )
+ {
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ if ( !getClientId( ) )
+ setClientId( AccessibleEventNotifier::registerClient( ) );
+
+ AccessibleEventNotifier::addEventListener( getClientId( ), _rxListener );
+ }
+}
+
+void SAL_CALL AccessibleBrowseBoxBase::removeEventListener(
+ const Reference< XAccessibleEventListener>& _rxListener )
+ throw ( uno::RuntimeException )
+{
+ if( _rxListener.is() && getClientId( ) )
+ {
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ sal_Int32 nListenerCount = AccessibleEventNotifier::removeEventListener( getClientId( ), _rxListener );
+ if ( !nListenerCount )
+ {
+ // no listeners anymore
+ // -> revoke ourself. This may lead to the notifier thread dying (if we were the last client),
+ // and at least to us not firing any events anymore, in case somebody calls
+ // NotifyAccessibleEvent, again
+
+ AccessibleEventNotifier::TClientId nId( getClientId( ) );
+ setClientId( 0 );
+ AccessibleEventNotifier::revokeClient( nId );
+ }
+ }
+}
+
+// XTypeProvider --------------------------------------------------------------
+
+Sequence< sal_Int8 > SAL_CALL AccessibleBrowseBoxBase::getImplementationId()
+ throw ( uno::RuntimeException )
+{
+ ::osl::MutexGuard aGuard( getOslGlobalMutex() );
+ static Sequence< sal_Int8 > aId;
+ implCreateUuid( aId );
+ return aId;
+}
+
+// XServiceInfo ---------------------------------------------------------------
+
+sal_Bool SAL_CALL AccessibleBrowseBoxBase::supportsService(
+ const OUString& rServiceName )
+ throw ( uno::RuntimeException )
+{
+ ::osl::MutexGuard aGuard( getOslMutex() );
+
+ Sequence< OUString > aSupportedServices( getSupportedServiceNames() );
+ const OUString* pArrBegin = aSupportedServices.getConstArray();
+ const OUString* pArrEnd = pArrBegin + aSupportedServices.getLength();
+ const OUString* pString = pArrBegin;
+
+ for( ; ( pString != pArrEnd ) && ( rServiceName != *pString ); ++pString )
+ ;
+
+ return pString != pArrEnd;
+}
+
+Sequence< OUString > SAL_CALL AccessibleBrowseBoxBase::getSupportedServiceNames()
+ throw ( uno::RuntimeException )
+{
+ const OUString aServiceName( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleContext" ) );
+ return Sequence< OUString >( &aServiceName, 1 );
+}
+
+// other public methods -------------------------------------------------------
+
+void AccessibleBrowseBoxBase::setAccessibleName( const OUString& rName )
+{
+ ::osl::ClearableMutexGuard aGuard( getOslMutex() );
+ Any aOld;
+ aOld <<= maName;
+ maName = rName;
+
+ aGuard.clear();
+
+ commitEvent(
+ AccessibleEventId::NAME_CHANGED,
+ uno::makeAny( maName ),
+ aOld );
+}
+
+void AccessibleBrowseBoxBase::setAccessibleDescription( const OUString& rDescription )
+{
+ ::osl::ClearableMutexGuard aGuard( getOslMutex() );
+ Any aOld;
+ aOld <<= maDescription;
+ maDescription = rDescription;
+
+ aGuard.clear();
+
+ commitEvent(
+ AccessibleEventId::DESCRIPTION_CHANGED,
+ uno::makeAny( maDescription ),
+ aOld );
+}
+
+// internal virtual methods ---------------------------------------------------
+
+sal_Bool AccessibleBrowseBoxBase::implIsShowing()
+{
+ sal_Bool bShowing = sal_False;
+ if( mxParent.is() )
+ {
+ Reference< XAccessibleComponent >
+ xParentComp( mxParent->getAccessibleContext(), uno::UNO_QUERY );
+ if( xParentComp.is() )
+ bShowing = implGetBoundingBox().IsOver(
+ VCLRectangle( xParentComp->getBounds() ) );
+ }
+ return bShowing;
+}
+
+::utl::AccessibleStateSetHelper* AccessibleBrowseBoxBase::implCreateStateSetHelper()
+{
+ ::utl::AccessibleStateSetHelper*
+ pStateSetHelper = new ::utl::AccessibleStateSetHelper;
+
+ if( isAlive() )
+ {
+ // SHOWING done with mxParent
+ if( implIsShowing() )
+ pStateSetHelper->AddState( AccessibleStateType::SHOWING );
+ // BrowseBox fills StateSet with states depending on object type
+ mpBrowseBox->FillAccessibleStateSet( *pStateSetHelper, getType() );
+ }
+ else
+ pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
+
+ return pStateSetHelper;
+}
+
+// internal helper methods ----------------------------------------------------
+
+sal_Bool AccessibleBrowseBoxBase::isAlive() const
+{
+ return !rBHelper.bDisposed && !rBHelper.bInDispose && mpBrowseBox;
+}
+
+void AccessibleBrowseBoxBase::ensureIsAlive() const
+ throw ( lang::DisposedException )
+{
+ if( !isAlive() )
+ throw lang::DisposedException();
+}
+
+Rectangle AccessibleBrowseBoxBase::getBoundingBox()
+ throw ( lang::DisposedException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ Rectangle aRect = implGetBoundingBox();
+ if ( 0 == aRect.Left() && 0 == aRect.Top() && 0 == aRect.Right() && 0 == aRect.Bottom() )
+ {
+ DBG_ERRORFILE( "shit" );
+ }
+ return aRect;
+}
+
+Rectangle AccessibleBrowseBoxBase::getBoundingBoxOnScreen()
+ throw ( lang::DisposedException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ Rectangle aRect = implGetBoundingBoxOnScreen();
+ if ( 0 == aRect.Left() && 0 == aRect.Top() && 0 == aRect.Right() && 0 == aRect.Bottom() )
+ {
+ DBG_ERRORFILE( "shit" );
+ }
+ return aRect;
+}
+
+void AccessibleBrowseBoxBase::commitEvent(
+ sal_Int16 _nEventId, const Any& _rNewValue, const Any& _rOldValue )
+{
+ ::osl::ClearableMutexGuard aGuard( getOslMutex() );
+ if ( !getClientId( ) )
+ // if we don't have a client id for the notifier, then we don't have listeners, then
+ // we don't need to notify anything
+ return;
+
+ // build an event object
+ AccessibleEventObject aEvent;
+ aEvent.Source = *this;
+ aEvent.EventId = _nEventId;
+ aEvent.OldValue = _rOldValue;
+ aEvent.NewValue = _rNewValue;
+
+ // let the notifier handle this event
+
+ AccessibleEventNotifier::addEvent( getClientId( ), aEvent );
+}
+// -----------------------------------------------------------------------------
+
+void AccessibleBrowseBoxBase::implCreateUuid( Sequence< sal_Int8 >& rId )
+{
+ if( !rId.hasElements() )
+ {
+ rId.realloc( 16 );
+ rtl_createUuid( reinterpret_cast< sal_uInt8* >( rId.getArray() ), 0, sal_True );
+ }
+}
+// -----------------------------------------------------------------------------
+sal_Int16 SAL_CALL AccessibleBrowseBoxBase::getAccessibleRole()
+ throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ sal_Int16 nRole = AccessibleRole::UNKNOWN;
+ switch ( meObjType )
+ {
+ case BBTYPE_ROWHEADERCELL:
+ nRole = AccessibleRole::ROW_HEADER;
+ break;
+ case BBTYPE_COLUMNHEADERCELL:
+ nRole = AccessibleRole::COLUMN_HEADER;
+ break;
+ case BBTYPE_COLUMNHEADERBAR:
+ case BBTYPE_ROWHEADERBAR:
+ case BBTYPE_TABLE:
+ nRole = AccessibleRole::TABLE;
+ break;
+ case BBTYPE_TABLECELL:
+ nRole = AccessibleRole::TABLE_CELL;
+ break;
+ case BBTYPE_BROWSEBOX:
+ nRole = AccessibleRole::PANEL;
+ break;
+ case BBTYPE_CHECKBOXCELL:
+ nRole = AccessibleRole::CHECK_BOX;
+ break;
+ }
+ return nRole;
+}
+// -----------------------------------------------------------------------------
+Any SAL_CALL AccessibleBrowseBoxBase::getAccessibleKeyBinding()
+ throw ( uno::RuntimeException )
+{
+ return Any();
+}
+// -----------------------------------------------------------------------------
+Reference<XAccessible > SAL_CALL AccessibleBrowseBoxBase::getAccessibleAtPoint( const ::com::sun::star::awt::Point& )
+ throw ( uno::RuntimeException )
+{
+ return NULL;
+}
+// -----------------------------------------------------------------------------
+void SAL_CALL AccessibleBrowseBoxBase::disposing( const ::com::sun::star::lang::EventObject& ) throw (::com::sun::star::uno::RuntimeException)
+{
+ m_xFocusWindow = NULL;
+}
+// -----------------------------------------------------------------------------
+sal_Int32 SAL_CALL AccessibleBrowseBoxBase::getForeground( ) throw (::com::sun::star::uno::RuntimeException)
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+
+ sal_Int32 nColor = 0;
+ Window* pInst = mpBrowseBox->GetWindowInstance();
+ if ( pInst )
+ {
+ if ( pInst->IsControlForeground() )
+ nColor = pInst->GetControlForeground().GetColor();
+ else
+ {
+ Font aFont;
+ if ( pInst->IsControlFont() )
+ aFont = pInst->GetControlFont();
+ else
+ aFont = pInst->GetFont();
+ nColor = aFont.GetColor().GetColor();
+ }
+ }
+
+ return nColor;
+}
+// -----------------------------------------------------------------------------
+sal_Int32 SAL_CALL AccessibleBrowseBoxBase::getBackground( ) throw (::com::sun::star::uno::RuntimeException)
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ sal_Int32 nColor = 0;
+ Window* pInst = mpBrowseBox->GetWindowInstance();
+ if ( pInst )
+ {
+ if ( pInst->IsControlBackground() )
+ nColor = pInst->GetControlBackground().GetColor();
+ else
+ nColor = pInst->GetBackground().GetColor().GetColor();
+ }
+
+ return nColor;
+}
+
+// ============================================================================
+DBG_NAME( BrowseBoxAccessibleElement )
+
+// XInterface -----------------------------------------------------------------
+IMPLEMENT_FORWARD_XINTERFACE2( BrowseBoxAccessibleElement, AccessibleBrowseBoxBase, BrowseBoxAccessibleElement_Base )
+
+// XTypeProvider --------------------------------------------------------------
+IMPLEMENT_FORWARD_XTYPEPROVIDER2( BrowseBoxAccessibleElement, AccessibleBrowseBoxBase, BrowseBoxAccessibleElement_Base )
+
+// XAccessible ----------------------------------------------------------------
+
+Reference< XAccessibleContext > SAL_CALL BrowseBoxAccessibleElement::getAccessibleContext() throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ return this;
+}
+
+// ----------------------------------------------------------------------------
+BrowseBoxAccessibleElement::BrowseBoxAccessibleElement( const Reference< XAccessible >& rxParent, IAccessibleTableProvider& rBrowseBox,
+ const Reference< awt::XWindow >& _xFocusWindow, AccessibleBrowseBoxObjType eObjType )
+ :AccessibleBrowseBoxBase( rxParent, rBrowseBox, _xFocusWindow, eObjType )
+{
+ DBG_CTOR( BrowseBoxAccessibleElement, NULL );
+}
+
+// ----------------------------------------------------------------------------
+BrowseBoxAccessibleElement::BrowseBoxAccessibleElement( const Reference< XAccessible >& rxParent, IAccessibleTableProvider& rBrowseBox,
+ const Reference< awt::XWindow >& _xFocusWindow, AccessibleBrowseBoxObjType eObjType,
+ const ::rtl::OUString& rName, const ::rtl::OUString& rDescription )
+ :AccessibleBrowseBoxBase( rxParent, rBrowseBox, _xFocusWindow, eObjType, rName, rDescription )
+{
+ DBG_CTOR( BrowseBoxAccessibleElement, NULL );
+}
+
+// ----------------------------------------------------------------------------
+BrowseBoxAccessibleElement::~BrowseBoxAccessibleElement( )
+{
+ DBG_DTOR( BrowseBoxAccessibleElement, NULL );
+}
+
+// ============================================================================
+
+} // namespace accessibility
+
+// ============================================================================
+
diff --git a/accessibility/source/extended/AccessibleBrowseBoxCheckBoxCell.cxx b/accessibility/source/extended/AccessibleBrowseBoxCheckBoxCell.cxx
new file mode 100644
index 000000000000..560878b544f3
--- /dev/null
+++ b/accessibility/source/extended/AccessibleBrowseBoxCheckBoxCell.cxx
@@ -0,0 +1,172 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/extended/AccessibleBrowseBoxCheckBoxCell.hxx>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <svtools/accessibletableprovider.hxx>
+
+namespace accessibility
+{
+ using namespace com::sun::star::accessibility;
+ using namespace com::sun::star::uno;
+ using namespace com::sun::star::accessibility::AccessibleEventId;
+ using namespace ::svt;
+
+ AccessibleCheckBoxCell::AccessibleCheckBoxCell(const Reference<XAccessible >& _rxParent,
+ IAccessibleTableProvider& _rBrowseBox,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
+ sal_Int32 _nRowPos,
+ sal_uInt16 _nColPos
+ ,const TriState& _eState,
+ sal_Bool _bEnabled,
+ sal_Bool _bIsTriState)
+ :AccessibleBrowseBoxCell(_rxParent, _rBrowseBox, _xFocusWindow, _nRowPos, _nColPos, BBTYPE_CHECKBOXCELL)
+ ,m_eState(_eState)
+ ,m_bEnabled(_bEnabled)
+ ,m_bIsTriState(_bIsTriState)
+ {
+ }
+ // -----------------------------------------------------------------------------
+ IMPLEMENT_FORWARD_XINTERFACE2( AccessibleCheckBoxCell, AccessibleBrowseBoxCell, AccessibleCheckBoxCell_BASE )
+ // -----------------------------------------------------------------------------
+ IMPLEMENT_FORWARD_XTYPEPROVIDER2( AccessibleCheckBoxCell, AccessibleBrowseBoxCell, AccessibleCheckBoxCell_BASE )
+ //--------------------------------------------------------------------
+ Reference< XAccessibleContext > SAL_CALL AccessibleCheckBoxCell::getAccessibleContext( ) throw (RuntimeException)
+ {
+ ensureIsAlive();
+ return this;
+ }
+ // -----------------------------------------------------------------------------
+ ::utl::AccessibleStateSetHelper* AccessibleCheckBoxCell::implCreateStateSetHelper()
+ {
+ ::utl::AccessibleStateSetHelper* pStateSetHelper =
+ AccessibleBrowseBoxCell::implCreateStateSetHelper();
+ if( isAlive() )
+ {
+ mpBrowseBox->FillAccessibleStateSetForCell(
+ *pStateSetHelper, getRowPos(), static_cast< sal_uInt16 >( getColumnPos() ) );
+ if ( m_eState == STATE_CHECK )
+ pStateSetHelper->AddState( AccessibleStateType::CHECKED );
+ }
+ return pStateSetHelper;
+ }
+ // -----------------------------------------------------------------------------
+ // -----------------------------------------------------------------------------
+ // XAccessibleValue
+ // -----------------------------------------------------------------------------
+
+ Any SAL_CALL AccessibleCheckBoxCell::getCurrentValue( ) throw (RuntimeException)
+ {
+ ::osl::MutexGuard aGuard( getOslMutex() );
+
+ sal_Int32 nValue = 0;
+ switch( m_eState )
+ {
+ case STATE_NOCHECK:
+ nValue = 0;
+ break;
+ case STATE_CHECK:
+ nValue = 1;
+ break;
+ case STATE_DONTKNOW:
+ nValue = 2;
+ break;
+ }
+ return makeAny(nValue);
+ }
+
+ // -----------------------------------------------------------------------------
+
+ sal_Bool SAL_CALL AccessibleCheckBoxCell::setCurrentValue( const Any& ) throw (RuntimeException)
+ {
+ return sal_False;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ Any SAL_CALL AccessibleCheckBoxCell::getMaximumValue( ) throw (RuntimeException)
+ {
+ ::osl::MutexGuard aGuard( getOslMutex() );
+
+ Any aValue;
+
+ if ( m_bIsTriState )
+ aValue <<= (sal_Int32) 2;
+ else
+ aValue <<= (sal_Int32) 1;
+
+ return aValue;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ Any SAL_CALL AccessibleCheckBoxCell::getMinimumValue( ) throw (RuntimeException)
+ {
+ Any aValue;
+ aValue <<= (sal_Int32) 0;
+
+ return aValue;
+ }
+ // -----------------------------------------------------------------------------
+ // XAccessibleContext
+ sal_Int32 SAL_CALL AccessibleCheckBoxCell::getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ return 0;
+ }
+ // -----------------------------------------------------------------------------
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL AccessibleCheckBoxCell::getAccessibleChild( sal_Int32 ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
+ {
+ throw ::com::sun::star::lang::IndexOutOfBoundsException();
+ }
+ // -----------------------------------------------------------------------------
+ ::rtl::OUString SAL_CALL AccessibleCheckBoxCell::getImplementationName() throw ( ::com::sun::star::uno::RuntimeException )
+ {
+ return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.svtools.TableCheckBoxCell" ) );
+ }
+ // -----------------------------------------------------------------------------
+ sal_Int32 SAL_CALL AccessibleCheckBoxCell::getAccessibleIndexInParent()
+ throw ( ::com::sun::star::uno::RuntimeException )
+ {
+ ::osl::MutexGuard aGuard( getOslMutex() );
+
+ return ( getRowPos() * mpBrowseBox->GetColumnCount() ) + getColumnPos();
+ }
+ // -----------------------------------------------------------------------------
+ void AccessibleCheckBoxCell::SetChecked( sal_Bool _bChecked )
+ {
+ m_eState = _bChecked ? STATE_CHECK : STATE_NOCHECK;
+ Any aOldValue, aNewValue;
+ if ( _bChecked )
+ aNewValue <<= AccessibleStateType::CHECKED;
+ else
+ aOldValue <<= AccessibleStateType::CHECKED;
+ commitEvent( AccessibleEventId::STATE_CHANGED, aNewValue, aOldValue );
+ }
+}
+
diff --git a/accessibility/source/extended/AccessibleBrowseBoxHeaderBar.cxx b/accessibility/source/extended/AccessibleBrowseBoxHeaderBar.cxx
new file mode 100644
index 000000000000..e801a6cf2c20
--- /dev/null
+++ b/accessibility/source/extended/AccessibleBrowseBoxHeaderBar.cxx
@@ -0,0 +1,419 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+
+
+#include "accessibility/extended/AccessibleBrowseBoxHeaderBar.hxx"
+#include <svtools/accessibletableprovider.hxx>
+
+// ============================================================================
+
+using ::rtl::OUString;
+
+using ::com::sun::star::uno::Reference;
+using ::com::sun::star::uno::Sequence;
+using ::com::sun::star::uno::Any;
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::accessibility;
+using namespace ::svt;
+
+// ============================================================================
+
+namespace accessibility {
+
+// ============================================================================
+
+// Ctor/Dtor/disposing --------------------------------------------------------
+
+DBG_NAME( AccessibleBrowseBoxHeaderBar )
+
+AccessibleBrowseBoxHeaderBar::AccessibleBrowseBoxHeaderBar(
+ const Reference< XAccessible >& rxParent,
+ IAccessibleTableProvider& rBrowseBox,
+ AccessibleBrowseBoxObjType eObjType ) :
+ AccessibleBrowseBoxTableBase( rxParent, rBrowseBox,eObjType )
+{
+ DBG_CTOR( AccessibleBrowseBoxHeaderBar, NULL );
+
+ DBG_ASSERT( isRowBar() || isColumnBar(),
+ "accessibility/extended/AccessibleBrowseBoxHeaderBar - invalid object type" );
+}
+
+AccessibleBrowseBoxHeaderBar::~AccessibleBrowseBoxHeaderBar()
+{
+ DBG_DTOR( AccessibleBrowseBoxHeaderBar, NULL );
+}
+
+// XAccessibleContext ---------------------------------------------------------
+
+Reference< XAccessible > SAL_CALL
+AccessibleBrowseBoxHeaderBar::getAccessibleChild( sal_Int32 nChildIndex )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidHeaderIndex( nChildIndex );
+ return implGetChild( nChildIndex, implToVCLColumnPos( nChildIndex ) );
+}
+
+sal_Int32 SAL_CALL AccessibleBrowseBoxHeaderBar::getAccessibleIndexInParent()
+ throw ( uno::RuntimeException )
+{
+ return isRowBar() ? BBINDEX_ROWHEADERBAR : BBINDEX_COLUMNHEADERBAR;
+}
+
+// XAccessibleComponent -------------------------------------------------------
+
+Reference< XAccessible > SAL_CALL
+AccessibleBrowseBoxHeaderBar::getAccessibleAtPoint( const awt::Point& rPoint )
+ throw ( uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+
+ sal_Int32 nRow = 0;
+ sal_uInt16 nColumnPos = 0;
+ sal_Bool bConverted = isRowBar() ?
+ mpBrowseBox->ConvertPointToRowHeader( nRow, VCLPoint( rPoint ) ) :
+ mpBrowseBox->ConvertPointToColumnHeader( nColumnPos, VCLPoint( rPoint ) );
+
+ return bConverted ? implGetChild( nRow, nColumnPos ) : Reference< XAccessible >();
+}
+
+void SAL_CALL AccessibleBrowseBoxHeaderBar::grabFocus()
+ throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ // focus on header not supported
+}
+
+Any SAL_CALL AccessibleBrowseBoxHeaderBar::getAccessibleKeyBinding()
+ throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ return Any(); // no special key bindings for header
+}
+
+// XAccessibleTable -----------------------------------------------------------
+
+OUString SAL_CALL AccessibleBrowseBoxHeaderBar::getAccessibleRowDescription( sal_Int32 nRow )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidRow( nRow );
+ return OUString(); // no headers in headers
+}
+
+OUString SAL_CALL AccessibleBrowseBoxHeaderBar::getAccessibleColumnDescription( sal_Int32 nColumn )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidColumn( nColumn );
+ return OUString(); // no headers in headers
+}
+
+Reference< XAccessibleTable > SAL_CALL AccessibleBrowseBoxHeaderBar::getAccessibleRowHeaders()
+ throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ return NULL; // no headers in headers
+}
+
+Reference< XAccessibleTable > SAL_CALL AccessibleBrowseBoxHeaderBar::getAccessibleColumnHeaders()
+ throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ return NULL; // no headers in headers
+}
+
+Sequence< sal_Int32 > SAL_CALL AccessibleBrowseBoxHeaderBar::getSelectedAccessibleRows()
+ throw ( uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+
+ Sequence< sal_Int32 > aSelSeq;
+ // row of column header bar not selectable
+ if( isRowBar() )
+ implGetSelectedRows( aSelSeq );
+ return aSelSeq;
+}
+
+Sequence< sal_Int32 > SAL_CALL AccessibleBrowseBoxHeaderBar::getSelectedAccessibleColumns()
+ throw ( uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+
+ Sequence< sal_Int32 > aSelSeq;
+ // column of row header bar ("handle column") not selectable
+ if( isColumnBar() )
+ implGetSelectedColumns( aSelSeq );
+ return aSelSeq;
+}
+
+sal_Bool SAL_CALL AccessibleBrowseBoxHeaderBar::isAccessibleRowSelected( sal_Int32 nRow )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidRow( nRow );
+ return isRowBar() ? implIsRowSelected( nRow ) : sal_False;
+}
+
+sal_Bool SAL_CALL AccessibleBrowseBoxHeaderBar::isAccessibleColumnSelected( sal_Int32 nColumn )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidColumn( nColumn );
+ return isColumnBar() ? implIsColumnSelected( nColumn ) : sal_False;
+}
+
+Reference< XAccessible > SAL_CALL AccessibleBrowseBoxHeaderBar::getAccessibleCellAt(
+ sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidAddress( nRow, nColumn );
+ return implGetChild( nRow, implToVCLColumnPos( nColumn ) );
+}
+
+sal_Bool SAL_CALL AccessibleBrowseBoxHeaderBar::isAccessibleSelected(
+ sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidAddress( nRow, nColumn );
+ return isRowBar() ? implIsRowSelected( nRow ) : implIsColumnSelected( nColumn );
+}
+
+// XAccessibleSelection -------------------------------------------------------
+
+void SAL_CALL AccessibleBrowseBoxHeaderBar::selectAccessibleChild( sal_Int32 nChildIndex )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidHeaderIndex( nChildIndex );
+ if( isRowBar() )
+ implSelectRow( nChildIndex, sal_True );
+ else
+ implSelectColumn( implToVCLColumnPos( nChildIndex ), sal_True );
+}
+
+sal_Bool SAL_CALL AccessibleBrowseBoxHeaderBar::isAccessibleChildSelected( sal_Int32 nChildIndex )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ // using interface methods - no mutex
+ return isRowBar() ?
+ isAccessibleRowSelected( nChildIndex ) :
+ isAccessibleColumnSelected( nChildIndex );
+}
+
+void SAL_CALL AccessibleBrowseBoxHeaderBar::clearAccessibleSelection()
+ throw ( uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ mpBrowseBox->SetNoSelection();
+}
+
+void SAL_CALL AccessibleBrowseBoxHeaderBar::selectAllAccessibleChildren()
+ throw ( uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ // no multiselection of columns possible
+ if( isRowBar() )
+ mpBrowseBox->SelectAll();
+ else
+ implSelectColumn( implToVCLColumnPos( 0 ), sal_True );
+}
+
+sal_Int32 SAL_CALL AccessibleBrowseBoxHeaderBar::getSelectedAccessibleChildCount()
+ throw ( uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ return isRowBar() ? implGetSelectedRowCount() : implGetSelectedColumnCount();
+}
+
+Reference< XAccessible > SAL_CALL
+AccessibleBrowseBoxHeaderBar::getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+
+ // method may throw lang::IndexOutOfBoundsException
+ sal_Int32 nIndex = implGetChildIndexFromSelectedIndex( nSelectedChildIndex );
+ return implGetChild( nIndex, implToVCLColumnPos( nIndex ) );
+}
+
+void SAL_CALL AccessibleBrowseBoxHeaderBar::deselectAccessibleChild(
+ sal_Int32 nSelectedChildIndex )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+
+ // method may throw lang::IndexOutOfBoundsException
+ if ( isAccessibleChildSelected(nSelectedChildIndex) )
+ {
+ if( isRowBar() )
+ implSelectRow( nSelectedChildIndex, sal_False );
+ else
+ implSelectColumn( implToVCLColumnPos( nSelectedChildIndex ), sal_False );
+ }
+}
+
+// XInterface -----------------------------------------------------------------
+
+Any SAL_CALL AccessibleBrowseBoxHeaderBar::queryInterface( const uno::Type& rType )
+ throw ( uno::RuntimeException )
+{
+ Any aAny( AccessibleBrowseBoxTableBase::queryInterface( rType ) );
+ return aAny.hasValue() ?
+ aAny : AccessibleBrowseBoxHeaderBarImplHelper::queryInterface( rType );
+}
+
+void SAL_CALL AccessibleBrowseBoxHeaderBar::acquire() throw ()
+{
+ AccessibleBrowseBoxTableBase::acquire();
+}
+
+void SAL_CALL AccessibleBrowseBoxHeaderBar::release() throw ()
+{
+ AccessibleBrowseBoxTableBase::release();
+}
+
+// XServiceInfo ---------------------------------------------------------------
+
+OUString SAL_CALL AccessibleBrowseBoxHeaderBar::getImplementationName()
+ throw ( uno::RuntimeException )
+{
+ return OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.svtools.AccessibleBrowseBoxHeaderBar" ) );
+}
+
+Sequence< sal_Int8 > SAL_CALL AccessibleBrowseBoxHeaderBar::getImplementationId()
+ throw ( uno::RuntimeException )
+{
+ ::osl::MutexGuard aGuard( getOslGlobalMutex() );
+ static Sequence< sal_Int8 > aId;
+ implCreateUuid( aId );
+ return aId;
+}
+
+// internal virtual methods ---------------------------------------------------
+
+Rectangle AccessibleBrowseBoxHeaderBar::implGetBoundingBox()
+{
+ return mpBrowseBox->calcHeaderRect(isColumnBar(),FALSE);
+}
+
+Rectangle AccessibleBrowseBoxHeaderBar::implGetBoundingBoxOnScreen()
+{
+ return mpBrowseBox->calcHeaderRect(isColumnBar(),TRUE);
+}
+
+sal_Int32 AccessibleBrowseBoxHeaderBar::implGetRowCount() const
+{
+ // column header bar: only 1 row
+ return isRowBar() ? AccessibleBrowseBoxTableBase::implGetRowCount() : 1;
+}
+
+sal_Int32 AccessibleBrowseBoxHeaderBar::implGetColumnCount() const
+{
+ // row header bar ("handle column"): only 1 column
+ return isColumnBar() ? AccessibleBrowseBoxTableBase::implGetColumnCount() : 1;
+}
+
+// internal helper methods ----------------------------------------------------
+
+Reference< XAccessible > AccessibleBrowseBoxHeaderBar::implGetChild(
+ sal_Int32 nRow, sal_uInt16 nColumnPos )
+{
+ return isRowBar() ?
+ mpBrowseBox->CreateAccessibleRowHeader( nRow ) :
+ mpBrowseBox->CreateAccessibleColumnHeader( nColumnPos );
+}
+
+sal_Int32 AccessibleBrowseBoxHeaderBar::implGetChildIndexFromSelectedIndex(
+ sal_Int32 nSelectedChildIndex )
+ throw ( lang::IndexOutOfBoundsException )
+{
+ Sequence< sal_Int32 > aSelSeq;
+ if( isRowBar() )
+ implGetSelectedRows( aSelSeq );
+ else
+ implGetSelectedColumns( aSelSeq );
+
+ if( (nSelectedChildIndex < 0) || (nSelectedChildIndex >= aSelSeq.getLength()) )
+ throw lang::IndexOutOfBoundsException();
+
+ return aSelSeq[ nSelectedChildIndex ];
+}
+
+void AccessibleBrowseBoxHeaderBar::ensureIsValidHeaderIndex( sal_Int32 nIndex )
+ throw ( lang::IndexOutOfBoundsException )
+{
+ if( isRowBar() )
+ ensureIsValidRow( nIndex );
+ else
+ ensureIsValidColumn( nIndex );
+}
+
+// ============================================================================
+
+} // namespace accessibility
+
+// ============================================================================
+
diff --git a/accessibility/source/extended/AccessibleBrowseBoxHeaderCell.cxx b/accessibility/source/extended/AccessibleBrowseBoxHeaderCell.cxx
new file mode 100644
index 000000000000..9e9f63ec72c8
--- /dev/null
+++ b/accessibility/source/extended/AccessibleBrowseBoxHeaderCell.cxx
@@ -0,0 +1,173 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+
+#include "accessibility/extended/AccessibleBrowseBoxHeaderCell.hxx"
+#include <svtools/accessibletableprovider.hxx>
+#include "accessibility/extended/AccessibleBrowseBox.hxx"
+
+namespace accessibility
+{
+ using namespace ::com::sun::star::accessibility;
+ using namespace ::com::sun::star::lang;
+ using namespace ::com::sun::star::uno;
+ using namespace ::svt;
+
+AccessibleBrowseBoxHeaderCell::AccessibleBrowseBoxHeaderCell(sal_Int32 _nColumnRowId,
+ const Reference< XAccessible >& rxParent,
+ IAccessibleTableProvider& rBrowseBox,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
+ AccessibleBrowseBoxObjType eObjType)
+: BrowseBoxAccessibleElement(rxParent,
+ rBrowseBox,
+ _xFocusWindow,
+ eObjType,
+ rBrowseBox.GetAccessibleObjectName( eObjType ,_nColumnRowId),
+ rBrowseBox.GetAccessibleObjectDescription( eObjType ,_nColumnRowId))
+, m_nColumnRowId(_nColumnRowId)
+{
+}
+/** Creates a new AccessibleStateSetHelper and fills it with states of the
+ current object.
+ @return
+ A filled AccessibleStateSetHelper.
+*/
+::utl::AccessibleStateSetHelper* AccessibleBrowseBoxHeaderCell::implCreateStateSetHelper()
+{
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ::utl::AccessibleStateSetHelper*
+ pStateSetHelper = new ::utl::AccessibleStateSetHelper;
+
+ if( isAlive() )
+ {
+ // SHOWING done with mxParent
+ if( implIsShowing() )
+ pStateSetHelper->AddState( AccessibleStateType::SHOWING );
+
+ BBSolarGuard aSolarGuard;
+ pStateSetHelper->AddState( AccessibleStateType::VISIBLE );
+ pStateSetHelper->AddState( AccessibleStateType::FOCUSABLE );
+ pStateSetHelper->AddState( AccessibleStateType::TRANSIENT );
+ pStateSetHelper->AddState( AccessibleStateType::SELECTABLE );
+
+ sal_Bool bSelected = isRowBarCell() ? mpBrowseBox->IsRowSelected(m_nColumnRowId) : mpBrowseBox->IsColumnSelected(m_nColumnRowId);
+ if ( bSelected )
+ pStateSetHelper->AddState( AccessibleStateType::SELECTED );
+ }
+ else
+ pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
+
+ return pStateSetHelper;
+}
+// -----------------------------------------------------------------------------
+/** @return
+ The count of visible children.
+*/
+sal_Int32 SAL_CALL AccessibleBrowseBoxHeaderCell::getAccessibleChildCount()
+ throw ( RuntimeException )
+{
+ return 0;
+}
+// -----------------------------------------------------------------------------
+
+/** @return
+ The XAccessible interface of the specified child.
+*/
+Reference<XAccessible > SAL_CALL AccessibleBrowseBoxHeaderCell::getAccessibleChild( sal_Int32 )
+ throw ( IndexOutOfBoundsException,RuntimeException )
+{
+ throw IndexOutOfBoundsException();
+}
+// -----------------------------------------------------------------------------
+
+/** Grabs the focus to the column header. */
+void SAL_CALL AccessibleBrowseBoxHeaderCell::grabFocus()
+ throw ( ::com::sun::star::uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ if ( isRowBarCell() )
+ mpBrowseBox->SelectRow(m_nColumnRowId);
+ else
+ mpBrowseBox->SelectColumn(static_cast<sal_uInt16>(m_nColumnRowId)); //!!!
+}
+// -----------------------------------------------------------------------------
+/** @return
+ The name of this class.
+*/
+::rtl::OUString SAL_CALL AccessibleBrowseBoxHeaderCell::getImplementationName()
+ throw ( ::com::sun::star::uno::RuntimeException )
+{
+ return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.svtools.AccessibleBrowseBoxHeaderCell" ) );
+}
+// -----------------------------------------------------------------------------
+namespace
+{
+ Rectangle getRectangle(IAccessibleTableProvider* _pBrowseBox,sal_Int32 _nRowColIndex, BOOL _bOnScreen,BOOL _bRowBar)
+ {
+ sal_Int32 nRow = 0;
+ sal_uInt16 nCol = (sal_uInt16)_nRowColIndex;
+ if ( _bRowBar )
+ {
+ nRow = _nRowColIndex + 1;
+ nCol = 0;
+ }
+
+ Rectangle aRet(_pBrowseBox->GetFieldRectPixelAbs( nRow , nCol, TRUE, _bOnScreen));
+ return Rectangle(aRet.TopLeft() - Point(0,aRet.GetHeight()),aRet.GetSize());
+ }
+}
+
+Rectangle AccessibleBrowseBoxHeaderCell::implGetBoundingBox()
+{
+ return getRectangle(mpBrowseBox,m_nColumnRowId,FALSE,isRowBarCell());
+}
+// -----------------------------------------------------------------------------
+
+Rectangle AccessibleBrowseBoxHeaderCell::implGetBoundingBoxOnScreen()
+{
+ return getRectangle(mpBrowseBox,m_nColumnRowId,TRUE,isRowBarCell());
+}
+// -----------------------------------------------------------------------------
+sal_Int32 SAL_CALL AccessibleBrowseBoxHeaderCell::getAccessibleIndexInParent()
+ throw ( RuntimeException )
+{
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ sal_Int32 nIndex = m_nColumnRowId;
+ if ( mpBrowseBox->HasRowHeader() )
+ --nIndex;
+ return nIndex;
+}
+// -----------------------------------------------------------------------------
+} // namespace accessibility
+// -----------------------------------------------------------------------------
+
+
diff --git a/accessibility/source/extended/AccessibleBrowseBoxTable.cxx b/accessibility/source/extended/AccessibleBrowseBoxTable.cxx
new file mode 100644
index 000000000000..00a095a104d7
--- /dev/null
+++ b/accessibility/source/extended/AccessibleBrowseBoxTable.cxx
@@ -0,0 +1,278 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+
+
+#include "accessibility/extended/AccessibleBrowseBoxTable.hxx"
+#include <svtools/accessibletableprovider.hxx>
+
+// ============================================================================
+
+using ::rtl::OUString;
+
+using ::com::sun::star::uno::Reference;
+using ::com::sun::star::uno::Sequence;
+using ::com::sun::star::uno::Any;
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::accessibility;
+using namespace ::svt;
+
+// ============================================================================
+
+namespace accessibility {
+
+// ============================================================================
+
+// Ctor/Dtor/disposing --------------------------------------------------------
+
+DBG_NAME( AccessibleBrowseBoxTable )
+
+AccessibleBrowseBoxTable::AccessibleBrowseBoxTable(
+ const Reference< XAccessible >& rxParent,
+ IAccessibleTableProvider& rBrowseBox ) :
+ AccessibleBrowseBoxTableBase( rxParent, rBrowseBox, BBTYPE_TABLE )
+{
+ DBG_CTOR( AccessibleBrowseBoxTable, NULL );
+}
+
+AccessibleBrowseBoxTable::~AccessibleBrowseBoxTable()
+{
+ DBG_DTOR( AccessibleBrowseBoxTable, NULL );
+}
+
+// XAccessibleContext ---------------------------------------------------------
+
+Reference< XAccessible > SAL_CALL
+AccessibleBrowseBoxTable::getAccessibleChild( sal_Int32 nChildIndex )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidIndex( nChildIndex );
+ return mpBrowseBox->CreateAccessibleCell(
+ implGetRow( nChildIndex ), (sal_Int16)implGetColumn( nChildIndex ) );
+}
+
+sal_Int32 SAL_CALL AccessibleBrowseBoxTable::getAccessibleIndexInParent()
+ throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ return BBINDEX_TABLE;
+}
+
+// XAccessibleComponent -------------------------------------------------------
+
+Reference< XAccessible > SAL_CALL
+AccessibleBrowseBoxTable::getAccessibleAtPoint( const awt::Point& rPoint )
+ throw ( uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+
+ Reference< XAccessible > xChild;
+ sal_Int32 nRow = 0;
+ sal_uInt16 nColumnPos = 0;
+ if( mpBrowseBox->ConvertPointToCellAddress( nRow, nColumnPos, VCLPoint( rPoint ) ) )
+ xChild = mpBrowseBox->CreateAccessibleCell( nRow, nColumnPos );
+
+ return xChild;
+}
+
+void SAL_CALL AccessibleBrowseBoxTable::grabFocus()
+ throw ( uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ mpBrowseBox->GrabTableFocus();
+}
+
+Any SAL_CALL AccessibleBrowseBoxTable::getAccessibleKeyBinding()
+ throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ return Any(); // no special key bindings for data table
+}
+
+// XAccessibleTable -----------------------------------------------------------
+
+OUString SAL_CALL AccessibleBrowseBoxTable::getAccessibleRowDescription( sal_Int32 nRow )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidRow( nRow );
+ return mpBrowseBox->GetRowDescription( nRow );
+}
+
+OUString SAL_CALL AccessibleBrowseBoxTable::getAccessibleColumnDescription( sal_Int32 nColumn )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidColumn( nColumn );
+ return mpBrowseBox->GetColumnDescription( (sal_uInt16)nColumn );
+}
+
+Reference< XAccessibleTable > SAL_CALL AccessibleBrowseBoxTable::getAccessibleRowHeaders()
+ throw ( uno::RuntimeException )
+{
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ return implGetHeaderBar( BBINDEX_ROWHEADERBAR );
+}
+
+Reference< XAccessibleTable > SAL_CALL AccessibleBrowseBoxTable::getAccessibleColumnHeaders()
+ throw ( uno::RuntimeException )
+{
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ return implGetHeaderBar( BBINDEX_COLUMNHEADERBAR );
+}
+
+Sequence< sal_Int32 > SAL_CALL AccessibleBrowseBoxTable::getSelectedAccessibleRows()
+ throw ( uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+
+ Sequence< sal_Int32 > aSelSeq;
+ implGetSelectedRows( aSelSeq );
+ return aSelSeq;
+}
+
+Sequence< sal_Int32 > SAL_CALL AccessibleBrowseBoxTable::getSelectedAccessibleColumns()
+ throw ( uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+
+ Sequence< sal_Int32 > aSelSeq;
+ implGetSelectedColumns( aSelSeq );
+ return aSelSeq;
+}
+
+sal_Bool SAL_CALL AccessibleBrowseBoxTable::isAccessibleRowSelected( sal_Int32 nRow )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidRow( nRow );
+ return implIsRowSelected( nRow );
+}
+
+sal_Bool SAL_CALL AccessibleBrowseBoxTable::isAccessibleColumnSelected( sal_Int32 nColumn )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidColumn( nColumn );
+ return implIsColumnSelected( nColumn );
+}
+
+Reference< XAccessible > SAL_CALL AccessibleBrowseBoxTable::getAccessibleCellAt(
+ sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidAddress( nRow, nColumn );
+ return mpBrowseBox->CreateAccessibleCell( nRow, (sal_Int16)nColumn );
+}
+
+sal_Bool SAL_CALL AccessibleBrowseBoxTable::isAccessibleSelected(
+ sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidAddress( nRow, nColumn );
+ return implIsRowSelected( nRow ) || implIsColumnSelected( nColumn );
+}
+
+// XServiceInfo ---------------------------------------------------------------
+
+OUString SAL_CALL AccessibleBrowseBoxTable::getImplementationName()
+ throw ( uno::RuntimeException )
+{
+ return OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.svtools.AccessibleBrowseBoxTable" ) );
+}
+
+// internal virtual methods ---------------------------------------------------
+
+Rectangle AccessibleBrowseBoxTable::implGetBoundingBox()
+{
+ return mpBrowseBox->calcTableRect(FALSE);
+}
+
+Rectangle AccessibleBrowseBoxTable::implGetBoundingBoxOnScreen()
+{
+ return mpBrowseBox->calcTableRect();
+}
+
+// internal helper methods ----------------------------------------------------
+
+Reference< XAccessibleTable > AccessibleBrowseBoxTable::implGetHeaderBar(
+ sal_Int32 nChildIndex )
+ throw ( uno::RuntimeException )
+{
+ Reference< XAccessible > xRet;
+ Reference< XAccessibleContext > xContext( mxParent, uno::UNO_QUERY );
+ if( xContext.is() )
+ {
+ try
+ {
+ xRet = xContext->getAccessibleChild( nChildIndex );
+ }
+ catch( lang::IndexOutOfBoundsException& )
+ {
+ DBG_ERROR( "implGetHeaderBar - wrong child index" );
+ }
+ // RuntimeException goes to caller
+ }
+ return Reference< XAccessibleTable >( xRet, uno::UNO_QUERY );
+}
+
+// ============================================================================
+
+} // namespace accessibility
+
+// ============================================================================
+
diff --git a/accessibility/source/extended/AccessibleBrowseBoxTableBase.cxx b/accessibility/source/extended/AccessibleBrowseBoxTableBase.cxx
new file mode 100644
index 000000000000..7a7aed644f5c
--- /dev/null
+++ b/accessibility/source/extended/AccessibleBrowseBoxTableBase.cxx
@@ -0,0 +1,355 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+
+
+#include "accessibility/extended/AccessibleBrowseBoxTableBase.hxx"
+#include <svtools/accessibletableprovider.hxx>
+#include <tools/multisel.hxx>
+#include <comphelper/sequence.hxx>
+
+// ============================================================================
+
+using ::rtl::OUString;
+
+using ::com::sun::star::uno::Reference;
+using ::com::sun::star::uno::Sequence;
+using ::com::sun::star::uno::Any;
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::accessibility;
+using namespace ::svt;
+
+// ============================================================================
+
+namespace accessibility {
+
+// ============================================================================
+
+// Ctor/Dtor/disposing --------------------------------------------------------
+
+DBG_NAME( AccessibleBrowseBoxTableBase )
+
+AccessibleBrowseBoxTableBase::AccessibleBrowseBoxTableBase(
+ const Reference< XAccessible >& rxParent,
+ IAccessibleTableProvider& rBrowseBox,
+ AccessibleBrowseBoxObjType eObjType ) :
+ BrowseBoxAccessibleElement( rxParent, rBrowseBox,NULL, eObjType )
+{
+ DBG_CTOR( AccessibleBrowseBoxTableBase, NULL );
+}
+
+AccessibleBrowseBoxTableBase::~AccessibleBrowseBoxTableBase()
+{
+ DBG_DTOR( AccessibleBrowseBoxTableBase, NULL );
+}
+
+// XAccessibleContext ---------------------------------------------------------
+
+sal_Int32 SAL_CALL AccessibleBrowseBoxTableBase::getAccessibleChildCount()
+ throw ( uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ return implGetChildCount();
+}
+
+sal_Int16 SAL_CALL AccessibleBrowseBoxTableBase::getAccessibleRole()
+ throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ return AccessibleRole::TABLE;
+}
+
+// XAccessibleTable -----------------------------------------------------------
+
+sal_Int32 SAL_CALL AccessibleBrowseBoxTableBase::getAccessibleRowCount()
+ throw ( uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ return implGetRowCount();
+}
+
+sal_Int32 SAL_CALL AccessibleBrowseBoxTableBase::getAccessibleColumnCount()
+ throw ( uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ return implGetColumnCount();
+}
+
+sal_Int32 SAL_CALL AccessibleBrowseBoxTableBase::getAccessibleRowExtentAt(
+ sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidAddress( nRow, nColumn );
+ return 1; // merged cells not supported
+}
+
+sal_Int32 SAL_CALL AccessibleBrowseBoxTableBase::getAccessibleColumnExtentAt(
+ sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidAddress( nRow, nColumn );
+ return 1; // merged cells not supported
+}
+
+Reference< XAccessible > SAL_CALL AccessibleBrowseBoxTableBase::getAccessibleCaption()
+ throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ return NULL; // not supported
+}
+
+Reference< XAccessible > SAL_CALL AccessibleBrowseBoxTableBase::getAccessibleSummary()
+ throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ return NULL; // not supported
+}
+
+sal_Int32 SAL_CALL AccessibleBrowseBoxTableBase::getAccessibleIndex(
+ sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidAddress( nRow, nColumn );
+ return implGetChildIndex( nRow, nColumn );
+}
+
+sal_Int32 SAL_CALL AccessibleBrowseBoxTableBase::getAccessibleRow( sal_Int32 nChildIndex )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidIndex( nChildIndex );
+ return implGetRow( nChildIndex );
+}
+
+sal_Int32 SAL_CALL AccessibleBrowseBoxTableBase::getAccessibleColumn( sal_Int32 nChildIndex )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidIndex( nChildIndex );
+ return implGetColumn( nChildIndex );
+}
+
+// XInterface -----------------------------------------------------------------
+
+Any SAL_CALL AccessibleBrowseBoxTableBase::queryInterface( const uno::Type& rType )
+ throw ( uno::RuntimeException )
+{
+ Any aAny( BrowseBoxAccessibleElement::queryInterface( rType ) );
+ return aAny.hasValue() ?
+ aAny : AccessibleBrowseBoxTableImplHelper::queryInterface( rType );
+}
+
+void SAL_CALL AccessibleBrowseBoxTableBase::acquire() throw ()
+{
+ BrowseBoxAccessibleElement::acquire();
+}
+
+void SAL_CALL AccessibleBrowseBoxTableBase::release() throw ()
+{
+ BrowseBoxAccessibleElement::release();
+}
+
+// XTypeProvider --------------------------------------------------------------
+
+Sequence< uno::Type > SAL_CALL AccessibleBrowseBoxTableBase::getTypes()
+ throw ( uno::RuntimeException )
+{
+ return ::comphelper::concatSequences(
+ BrowseBoxAccessibleElement::getTypes(),
+ AccessibleBrowseBoxTableImplHelper::getTypes() );
+}
+
+Sequence< sal_Int8 > SAL_CALL AccessibleBrowseBoxTableBase::getImplementationId()
+ throw ( uno::RuntimeException )
+{
+ ::osl::MutexGuard aGuard( getOslGlobalMutex() );
+ static Sequence< sal_Int8 > aId;
+ implCreateUuid( aId );
+ return aId;
+}
+
+// internal virtual methods ---------------------------------------------------
+
+sal_Int32 AccessibleBrowseBoxTableBase::implGetRowCount() const
+{
+ return mpBrowseBox->GetRowCount();
+}
+
+sal_Int32 AccessibleBrowseBoxTableBase::implGetColumnCount() const
+{
+ sal_uInt16 nColumns = mpBrowseBox->GetColumnCount();
+ // do not count the "handle column"
+ if( nColumns && implHasHandleColumn() )
+ --nColumns;
+ return nColumns;
+}
+
+// internal helper methods ----------------------------------------------------
+
+sal_Bool AccessibleBrowseBoxTableBase::implHasHandleColumn() const
+{
+ return mpBrowseBox->HasRowHeader();
+}
+
+sal_uInt16 AccessibleBrowseBoxTableBase::implToVCLColumnPos( sal_Int32 nColumn ) const
+{
+ sal_uInt16 nVCLPos = 0;
+ if( (0 <= nColumn) && (nColumn < implGetColumnCount()) )
+ {
+ // regard "handle column"
+ if( implHasHandleColumn() )
+ ++nColumn;
+ nVCLPos = static_cast< sal_uInt16 >( nColumn );
+ }
+ return nVCLPos;
+}
+
+sal_Int32 AccessibleBrowseBoxTableBase::implGetChildCount() const
+{
+ return implGetRowCount() * implGetColumnCount();
+}
+
+sal_Int32 AccessibleBrowseBoxTableBase::implGetRow( sal_Int32 nChildIndex ) const
+{
+ sal_Int32 nColumns = implGetColumnCount();
+ return nColumns ? (nChildIndex / nColumns) : 0;
+}
+
+sal_Int32 AccessibleBrowseBoxTableBase::implGetColumn( sal_Int32 nChildIndex ) const
+{
+ sal_Int32 nColumns = implGetColumnCount();
+ return nColumns ? (nChildIndex % nColumns) : 0;
+}
+
+sal_Int32 AccessibleBrowseBoxTableBase::implGetChildIndex(
+ sal_Int32 nRow, sal_Int32 nColumn ) const
+{
+ return nRow * implGetColumnCount() + nColumn;
+}
+
+sal_Bool AccessibleBrowseBoxTableBase::implIsRowSelected( sal_Int32 nRow ) const
+{
+ return mpBrowseBox->IsRowSelected( nRow );
+}
+
+sal_Bool AccessibleBrowseBoxTableBase::implIsColumnSelected( sal_Int32 nColumn ) const
+{
+ if( implHasHandleColumn() )
+ --nColumn;
+ return mpBrowseBox->IsColumnSelected( nColumn );
+}
+
+void AccessibleBrowseBoxTableBase::implSelectRow( sal_Int32 nRow, sal_Bool bSelect )
+{
+ mpBrowseBox->SelectRow( nRow, bSelect, sal_True );
+}
+
+void AccessibleBrowseBoxTableBase::implSelectColumn( sal_Int32 nColumnPos, sal_Bool bSelect )
+{
+ mpBrowseBox->SelectColumn( (sal_uInt16)nColumnPos, bSelect );
+}
+
+sal_Int32 AccessibleBrowseBoxTableBase::implGetSelectedRowCount() const
+{
+ return mpBrowseBox->GetSelectedRowCount();
+}
+
+sal_Int32 AccessibleBrowseBoxTableBase::implGetSelectedColumnCount() const
+{
+ return mpBrowseBox->GetSelectedColumnCount();
+}
+
+void AccessibleBrowseBoxTableBase::implGetSelectedRows( Sequence< sal_Int32 >& rSeq )
+{
+ mpBrowseBox->GetAllSelectedRows( rSeq );
+}
+
+void AccessibleBrowseBoxTableBase::implGetSelectedColumns( Sequence< sal_Int32 >& rSeq )
+{
+ mpBrowseBox->GetAllSelectedColumns( rSeq );
+}
+
+void AccessibleBrowseBoxTableBase::ensureIsValidRow( sal_Int32 nRow )
+ throw ( lang::IndexOutOfBoundsException )
+{
+ if( nRow >= implGetRowCount() )
+ throw lang::IndexOutOfBoundsException(
+ OUString( RTL_CONSTASCII_USTRINGPARAM( "row index is invalid" ) ), *this );
+}
+
+void AccessibleBrowseBoxTableBase::ensureIsValidColumn( sal_Int32 nColumn )
+ throw ( lang::IndexOutOfBoundsException )
+{
+ if( nColumn >= implGetColumnCount() )
+ throw lang::IndexOutOfBoundsException(
+ OUString( RTL_CONSTASCII_USTRINGPARAM("column index is invalid") ), *this );
+}
+
+void AccessibleBrowseBoxTableBase::ensureIsValidAddress(
+ sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( lang::IndexOutOfBoundsException )
+{
+ ensureIsValidRow( nRow );
+ ensureIsValidColumn( nColumn );
+}
+
+void AccessibleBrowseBoxTableBase::ensureIsValidIndex( sal_Int32 nChildIndex )
+ throw ( lang::IndexOutOfBoundsException )
+{
+ if( nChildIndex >= implGetChildCount() )
+ throw lang::IndexOutOfBoundsException(
+ OUString( RTL_CONSTASCII_USTRINGPARAM("child index is invalid") ), *this );
+}
+
+// ============================================================================
+
+} // namespace accessibility
+
+// ============================================================================
+
diff --git a/accessibility/source/extended/AccessibleBrowseBoxTableCell.cxx b/accessibility/source/extended/AccessibleBrowseBoxTableCell.cxx
new file mode 100644
index 000000000000..fe79593e5613
--- /dev/null
+++ b/accessibility/source/extended/AccessibleBrowseBoxTableCell.cxx
@@ -0,0 +1,354 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+
+#include "accessibility/extended/AccessibleBrowseBoxTableCell.hxx"
+#include <svtools/accessibletableprovider.hxx>
+#include "accessibility/extended/AccessibleBrowseBox.hxx"
+#include <tools/gen.hxx>
+#include <toolkit/helper/vclunohelper.hxx>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+
+namespace accessibility
+{
+ namespace
+ {
+ void checkIndex_Impl( sal_Int32 _nIndex, const ::rtl::OUString& _sText ) throw (::com::sun::star::lang::IndexOutOfBoundsException)
+ {
+ if ( _nIndex >= _sText.getLength() )
+ throw ::com::sun::star::lang::IndexOutOfBoundsException();
+ }
+
+ sal_Int32 getIndex_Impl( sal_Int32 _nRow, sal_uInt16 _nColumn, sal_uInt16 _nColumnCount )
+ {
+ return _nRow * _nColumnCount + _nColumn;
+ }
+ }
+ using namespace ::com::sun::star::lang;
+ using namespace utl;
+ using namespace comphelper;
+ using ::rtl::OUString;
+ using ::accessibility::AccessibleBrowseBox;
+ using namespace ::com::sun::star::uno;
+ using ::com::sun::star::accessibility::XAccessible;
+ using namespace ::com::sun::star::accessibility;
+ using namespace ::svt;
+
+
+ // implementation of a table cell
+ ::rtl::OUString AccessibleBrowseBoxTableCell::implGetText()
+ {
+ ensureIsAlive();
+ return mpBrowseBox->GetAccessibleCellText( getRowPos(), static_cast< USHORT >( getColumnPos() ) );
+ }
+
+ ::com::sun::star::lang::Locale AccessibleBrowseBoxTableCell::implGetLocale()
+ {
+ ensureIsAlive();
+ return mpBrowseBox->GetAccessible()->getAccessibleContext()->getLocale();
+ }
+
+ void AccessibleBrowseBoxTableCell::implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex )
+ {
+ nStartIndex = 0;
+ nEndIndex = 0;
+ }
+
+ AccessibleBrowseBoxTableCell::AccessibleBrowseBoxTableCell(const Reference<XAccessible >& _rxParent,
+ IAccessibleTableProvider& _rBrowseBox,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
+ sal_Int32 _nRowPos,
+ sal_uInt16 _nColPos,
+ sal_Int32 _nOffset )
+ :AccessibleBrowseBoxCell( _rxParent, _rBrowseBox, _xFocusWindow, _nRowPos, _nColPos )
+ {
+ m_nOffset = ( OFFSET_DEFAULT == _nOffset ) ? (sal_Int32)BBINDEX_FIRSTCONTROL : _nOffset;
+ sal_Int32 nIndex = getIndex_Impl( _nRowPos, _nColPos, _rBrowseBox.GetColumnCount() );
+ setAccessibleName( _rBrowseBox.GetAccessibleObjectName( BBTYPE_TABLECELL, nIndex ) );
+ setAccessibleDescription( _rBrowseBox.GetAccessibleObjectDescription( BBTYPE_TABLECELL, nIndex ) );
+ // Need to register as event listener
+ Reference< XComponent > xComponent(_rxParent, UNO_QUERY);
+ if( xComponent.is() )
+ xComponent->addEventListener(static_cast< XEventListener *> (this));
+ }
+
+ void AccessibleBrowseBoxTableCell::nameChanged( const ::rtl::OUString& rNewName, const ::rtl::OUString& rOldName )
+ {
+ implSetName( rNewName );
+ Any aOldValue, aNewValue;
+ aOldValue <<= rOldName;
+ aNewValue <<= rNewName;
+ commitEvent( AccessibleEventId::NAME_CHANGED, aOldValue, aNewValue );
+ }
+
+ // XInterface -------------------------------------------------------------
+
+ /** Queries for a new interface. */
+ ::com::sun::star::uno::Any SAL_CALL AccessibleBrowseBoxTableCell::queryInterface(
+ const ::com::sun::star::uno::Type& rType )
+ throw ( ::com::sun::star::uno::RuntimeException )
+ {
+ Any aRet = AccessibleBrowseBoxCell::queryInterface(rType);
+ if ( !aRet.hasValue() )
+ aRet = AccessibleTextHelper_BASE::queryInterface(rType);
+ return aRet;
+ }
+
+ /** Aquires the object (calls acquire() on base class). */
+ void SAL_CALL AccessibleBrowseBoxTableCell::acquire() throw ()
+ {
+ AccessibleBrowseBoxCell::acquire();
+ }
+
+ /** Releases the object (calls release() on base class). */
+ void SAL_CALL AccessibleBrowseBoxTableCell::release() throw ()
+ {
+ AccessibleBrowseBoxCell::release();
+ }
+
+ ::com::sun::star::awt::Rectangle SAL_CALL AccessibleBrowseBoxTableCell::getCharacterBounds( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+
+ ensureIsAlive();
+ if ( !implIsValidIndex( nIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ ::com::sun::star::awt::Rectangle aRect;
+
+ if ( mpBrowseBox )
+ {
+ aRect = AWTRectangle( mpBrowseBox->GetFieldCharacterBounds( getRowPos(), getColumnPos(), nIndex ) );
+ }
+
+ return aRect;
+ }
+
+ sal_Int32 SAL_CALL AccessibleBrowseBoxTableCell::getIndexAtPoint( const ::com::sun::star::awt::Point& _aPoint ) throw (RuntimeException)
+ {
+ //! TODO CTL bidi
+ // DBG_ASSERT(0,"Need to be done by base class!");
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+
+ return mpBrowseBox->GetFieldIndexAtPoint( getRowPos(), getColumnPos(), VCLPoint( _aPoint ) );
+ }
+
+ /** @return
+ The name of this class.
+ */
+ ::rtl::OUString SAL_CALL AccessibleBrowseBoxTableCell::getImplementationName()
+ throw ( ::com::sun::star::uno::RuntimeException )
+ {
+ return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.svtools.AccessibleBrowseBoxTableCell" ) );
+ }
+
+ /** @return The count of visible children. */
+ sal_Int32 SAL_CALL AccessibleBrowseBoxTableCell::getAccessibleChildCount()
+ throw ( ::com::sun::star::uno::RuntimeException )
+ {
+ return 0;
+ }
+
+ /** @return The XAccessible interface of the specified child. */
+ ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ AccessibleBrowseBoxTableCell::getAccessibleChild( sal_Int32 )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException )
+ {
+ throw ::com::sun::star::lang::IndexOutOfBoundsException();
+ }
+
+ /** Creates a new AccessibleStateSetHelper and fills it with states of the
+ current object.
+ @return
+ A filled AccessibleStateSetHelper.
+ */
+ ::utl::AccessibleStateSetHelper* AccessibleBrowseBoxTableCell::implCreateStateSetHelper()
+ {
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+
+ ::utl::AccessibleStateSetHelper* pStateSetHelper = new ::utl::AccessibleStateSetHelper;
+
+ if( isAlive() )
+ {
+ // SHOWING done with mxParent
+ if( implIsShowing() )
+ pStateSetHelper->AddState( AccessibleStateType::SHOWING );
+
+ mpBrowseBox->FillAccessibleStateSetForCell( *pStateSetHelper, getRowPos(), static_cast< sal_uInt16 >( getColumnPos() ) );
+ }
+ else
+ pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
+
+ return pStateSetHelper;
+ }
+
+
+ // XAccessible ------------------------------------------------------------
+
+ /** @return The XAccessibleContext interface of this object. */
+ Reference< XAccessibleContext > SAL_CALL AccessibleBrowseBoxTableCell::getAccessibleContext() throw ( RuntimeException )
+ {
+ ensureIsAlive();
+ return this;
+ }
+
+ // XAccessibleContext -----------------------------------------------------
+
+ sal_Int32 SAL_CALL AccessibleBrowseBoxTableCell::getAccessibleIndexInParent()
+ throw ( ::com::sun::star::uno::RuntimeException )
+ {
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+
+ return /*BBINDEX_FIRSTCONTROL*/ m_nOffset + ( getRowPos() * mpBrowseBox->GetColumnCount() ) + getColumnPos();
+ }
+
+ sal_Int32 SAL_CALL AccessibleBrowseBoxTableCell::getCaretPosition( ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ return -1;
+ }
+ sal_Bool SAL_CALL AccessibleBrowseBoxTableCell::setCaretPosition ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
+ {
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+
+ if ( !implIsValidRange( nIndex, nIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ return sal_False;
+ }
+ sal_Unicode SAL_CALL AccessibleBrowseBoxTableCell::getCharacter( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
+ {
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ return OCommonAccessibleText::getCharacter( nIndex );
+ }
+ ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL AccessibleBrowseBoxTableCell::getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
+ {
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+
+ ::rtl::OUString sText( implGetText() );
+
+ if ( !implIsValidIndex( nIndex, sText.getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ return ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >();
+ }
+ sal_Int32 SAL_CALL AccessibleBrowseBoxTableCell::getCharacterCount( ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ return OCommonAccessibleText::getCharacterCount( );
+ }
+
+ ::rtl::OUString SAL_CALL AccessibleBrowseBoxTableCell::getSelectedText( ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ return OCommonAccessibleText::getSelectedText( );
+ }
+ sal_Int32 SAL_CALL AccessibleBrowseBoxTableCell::getSelectionStart( ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ return OCommonAccessibleText::getSelectionStart( );
+ }
+ sal_Int32 SAL_CALL AccessibleBrowseBoxTableCell::getSelectionEnd( ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ return OCommonAccessibleText::getSelectionEnd( );
+ }
+ sal_Bool SAL_CALL AccessibleBrowseBoxTableCell::setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
+ {
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ if ( !implIsValidRange( nStartIndex, nEndIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ return sal_False;
+ }
+ ::rtl::OUString SAL_CALL AccessibleBrowseBoxTableCell::getText( ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ return OCommonAccessibleText::getText( );
+ }
+ ::rtl::OUString SAL_CALL AccessibleBrowseBoxTableCell::getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
+ {
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ return OCommonAccessibleText::getTextRange( nStartIndex, nEndIndex );
+ }
+ ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleBrowseBoxTableCell::getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+ {
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ return OCommonAccessibleText::getTextAtIndex( nIndex ,aTextType);
+ }
+ ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleBrowseBoxTableCell::getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+ {
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ return OCommonAccessibleText::getTextBeforeIndex( nIndex ,aTextType);
+ }
+ ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleBrowseBoxTableCell::getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+ {
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ return OCommonAccessibleText::getTextBehindIndex( nIndex ,aTextType);
+ }
+ sal_Bool SAL_CALL AccessibleBrowseBoxTableCell::copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
+ {
+ BBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ::rtl::OUString sText = implGetText();
+ checkIndex_Impl( nStartIndex, sText );
+ checkIndex_Impl( nEndIndex, sText );
+
+ //!!! don't know how to put a string into the clipboard
+ return sal_False;
+ }
+ void AccessibleBrowseBoxTableCell::disposing( const EventObject& _rSource ) throw (RuntimeException)
+ {
+ if ( _rSource.Source == mxParent )
+ {
+ dispose();
+ }
+ }
+
+}
diff --git a/accessibility/source/extended/AccessibleGridControl.cxx b/accessibility/source/extended/AccessibleGridControl.cxx
new file mode 100755
index 000000000000..f0aa406b62bf
--- /dev/null
+++ b/accessibility/source/extended/AccessibleGridControl.cxx
@@ -0,0 +1,372 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include "accessibility/extended/AccessibleGridControl.hxx"
+#include "accessibility/extended/AccessibleGridControlTable.hxx"
+#include "accessibility/extended/AccessibleGridControlHeader.hxx"
+#include <svtools/accessibletable.hxx>
+#include <comphelper/types.hxx>
+#include <toolkit/helper/vclunohelper.hxx>
+
+// ============================================================================
+
+namespace accessibility
+{
+
+// ============================================================================
+
+using ::rtl::OUString;
+
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::accessibility;
+using namespace ::svt;
+using namespace ::svt::table;
+
+// ============================================================================
+class AccessibleGridControl_Impl
+{
+public:
+ /// the XAccessible which created the AccessibleGridControl
+ WeakReference< XAccessible > m_aCreator;
+
+ /** The data table child. */
+ Reference<
+ ::com::sun::star::accessibility::XAccessible > m_xTable;
+ AccessibleGridControlTable* m_pTable;
+
+ /** The header bar for rows. */
+ Reference<
+ ::com::sun::star::accessibility::XAccessible > m_xRowHeaderBar;
+ AccessibleGridControlHeader* m_pRowHeaderBar;
+
+ /** The header bar for columns (first row of the table). */
+ Reference<
+ ::com::sun::star::accessibility::XAccessible > m_xColumnHeaderBar;
+ AccessibleGridControlHeader* m_pColumnHeaderBar;
+};
+
+DBG_NAME( AccessibleGridControl )
+
+AccessibleGridControl::AccessibleGridControl(
+ const Reference< XAccessible >& _rxParent, const Reference< XAccessible >& _rxCreator,
+ IAccessibleTable& _rTable )
+ : AccessibleGridControlBase( _rxParent, _rTable, TCTYPE_GRIDCONTROL )
+{
+ m_pImpl.reset( new AccessibleGridControl_Impl() );
+ m_pImpl->m_aCreator = _rxCreator;
+}
+
+// -----------------------------------------------------------------------------
+AccessibleGridControl::~AccessibleGridControl()
+{
+}
+// -----------------------------------------------------------------------------
+
+void SAL_CALL AccessibleGridControl::disposing()
+{
+ ::osl::MutexGuard aGuard( getOslMutex() );
+
+ m_pImpl->m_pTable = NULL;
+ m_pImpl->m_pColumnHeaderBar = NULL;
+ m_pImpl->m_pRowHeaderBar = NULL;
+ m_pImpl->m_aCreator = Reference< XAccessible >();
+
+ Reference< XAccessible > xTable = m_pImpl->m_xTable;
+
+ Reference< XComponent > xComp( m_pImpl->m_xTable, UNO_QUERY );
+ if ( xComp.is() )
+ {
+ xComp->dispose();
+ }
+
+ AccessibleGridControlBase::disposing();
+}
+// -----------------------------------------------------------------------------
+
+// XAccessibleContext ---------------------------------------------------------
+
+sal_Int32 SAL_CALL AccessibleGridControl::getAccessibleChildCount()
+ throw ( uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ return m_aTable.GetAccessibleControlCount();
+}
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > SAL_CALL
+AccessibleGridControl::getAccessibleChild( sal_Int32 nChildIndex )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+
+ if (nChildIndex<0 || nChildIndex>=getAccessibleChildCount())
+ throw IndexOutOfBoundsException();
+
+ Reference< XAccessible > xChild;
+ if (isAlive())
+ {
+ if(nChildIndex == 0 && m_aTable.HasColHeader())
+ {
+ if(!m_pImpl->m_xColumnHeaderBar.is())
+ {
+ AccessibleGridControlHeader* pColHeaderBar = new AccessibleGridControlHeader(m_pImpl->m_aCreator, m_aTable, svt::table::TCTYPE_COLUMNHEADERBAR);
+ m_pImpl->m_xColumnHeaderBar = pColHeaderBar;
+ }
+ xChild = m_pImpl->m_xColumnHeaderBar;
+ }
+ else if(m_aTable.HasRowHeader() && (nChildIndex == 1 || nChildIndex == 0))
+ {
+ if(!m_pImpl->m_xRowHeaderBar.is())
+ {
+ AccessibleGridControlHeader* pRowHeaderBar = new AccessibleGridControlHeader(m_pImpl->m_aCreator, m_aTable, svt::table::TCTYPE_ROWHEADERBAR);
+ m_pImpl->m_xRowHeaderBar = pRowHeaderBar;
+ }
+ xChild = m_pImpl->m_xRowHeaderBar;
+ }
+ else
+ {
+ AccessibleGridControlTable* pTable = new AccessibleGridControlTable(m_pImpl->m_aCreator, m_aTable, svt::table::TCTYPE_TABLE);
+ m_pImpl->m_xTable = pTable;
+ xChild = m_pImpl->m_xTable;
+ }
+ }
+ return xChild;
+}
+// -----------------------------------------------------------------------------
+
+sal_Int16 SAL_CALL AccessibleGridControl::getAccessibleRole()
+ throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ return AccessibleRole::PANEL;
+}
+// -----------------------------------------------------------------------------
+
+// XAccessibleComponent -------------------------------------------------------
+
+Reference< XAccessible > SAL_CALL
+AccessibleGridControl::getAccessibleAtPoint( const awt::Point& rPoint )
+ throw ( uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+
+ Reference< XAccessible > xChild;
+ sal_Int32 nIndex = 0;
+ if( m_aTable.ConvertPointToControlIndex( nIndex, VCLPoint( rPoint ) ) )
+ xChild = m_aTable.CreateAccessibleControl( nIndex );
+ else
+ {
+ // try whether point is in one of the fixed children
+ // (table, header bars, corner control)
+ Point aPoint( VCLPoint( rPoint ) );
+ for( nIndex = 0; (nIndex < 3) && !xChild.is(); ++nIndex )
+ {
+ Reference< XAccessible > xCurrChild( implGetFixedChild( nIndex ) );
+ Reference< XAccessibleComponent >
+ xCurrChildComp( xCurrChild, uno::UNO_QUERY );
+
+ if( xCurrChildComp.is() &&
+ VCLRectangle( xCurrChildComp->getBounds() ).IsInside( aPoint ) )
+ xChild = xCurrChild;
+ }
+ }
+ return xChild;
+}
+// -----------------------------------------------------------------------------
+
+void SAL_CALL AccessibleGridControl::grabFocus()
+ throw ( uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ m_aTable.GrabFocus();
+}
+// -----------------------------------------------------------------------------
+
+Any SAL_CALL AccessibleGridControl::getAccessibleKeyBinding()
+ throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ return Any();
+}
+// -----------------------------------------------------------------------------
+
+// XServiceInfo ---------------------------------------------------------------
+
+OUString SAL_CALL AccessibleGridControl::getImplementationName()
+ throw ( uno::RuntimeException )
+{
+ return OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleGridControl" ) );
+}
+// -----------------------------------------------------------------------------
+
+// internal virtual methods ---------------------------------------------------
+
+Rectangle AccessibleGridControl::implGetBoundingBox()
+{
+ Window* pParent = m_aTable.GetAccessibleParentWindow();
+ DBG_ASSERT( pParent, "implGetBoundingBox - missing parent window" );
+ return m_aTable.GetWindowExtentsRelative( pParent );
+}
+// -----------------------------------------------------------------------------
+
+Rectangle AccessibleGridControl::implGetBoundingBoxOnScreen()
+{
+ return m_aTable.GetWindowExtentsRelative( NULL );
+}
+// internal helper methods ----------------------------------------------------
+
+Reference< XAccessible > AccessibleGridControl::implGetTable()
+{
+ if( !m_pImpl->m_xTable.is() )
+ {
+ m_pImpl->m_pTable = createAccessibleTable();
+ m_pImpl->m_xTable = m_pImpl->m_pTable;
+ }
+ return m_pImpl->m_xTable;
+}
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible >
+AccessibleGridControl::implGetHeaderBar( AccessibleTableControlObjType eObjType )
+{
+ Reference< XAccessible > xRet;
+ Reference< XAccessible >* pxMember = NULL;
+
+ if( eObjType == TCTYPE_ROWHEADERBAR )
+ pxMember = &m_pImpl->m_xRowHeaderBar;
+ else if( eObjType == TCTYPE_COLUMNHEADERBAR )
+ pxMember = &m_pImpl->m_xColumnHeaderBar;
+
+ if( pxMember )
+ {
+ if( !pxMember->is() )
+ {
+ AccessibleGridControlHeader* pHeaderBar = new AccessibleGridControlHeader(
+ (Reference< XAccessible >)m_pImpl->m_aCreator, m_aTable, eObjType );
+
+ if ( TCTYPE_COLUMNHEADERBAR == eObjType)
+ m_pImpl->m_pColumnHeaderBar = pHeaderBar;
+ else
+ m_pImpl->m_pRowHeaderBar = pHeaderBar;
+
+ *pxMember = pHeaderBar;
+ }
+ xRet = *pxMember;
+ }
+ return xRet;
+}
+// -----------------------------------------------------------------------------
+Reference< XAccessible >
+AccessibleGridControl::implGetFixedChild( sal_Int32 nChildIndex )
+{
+ Reference< XAccessible > xRet;
+ switch( nChildIndex )
+ {
+ case TCINDEX_COLUMNHEADERBAR:
+ xRet = implGetHeaderBar( TCTYPE_COLUMNHEADERBAR );
+ break;
+ case TCINDEX_ROWHEADERBAR:
+ xRet = implGetHeaderBar( TCTYPE_ROWHEADERBAR );
+ break;
+ case TCINDEX_TABLE:
+ xRet = implGetTable();
+ break;
+ }
+ return xRet;
+}
+// -----------------------------------------------------------------------------
+AccessibleGridControlTable* AccessibleGridControl::createAccessibleTable()
+{
+ Reference< XAccessible > xCreator = (Reference< XAccessible >)m_pImpl->m_aCreator;
+ DBG_ASSERT( xCreator.is(), "accessibility/extended/AccessibleGirdControl::createAccessibleTable: my creator died - how this?" );
+ return new AccessibleGridControlTable( xCreator, m_aTable, TCTYPE_TABLE );
+}
+// ============================================================================
+// = AccessibleGridControlAccess
+// ============================================================================
+DBG_NAME( AccessibleGridControlAccess )
+// -----------------------------------------------------------------------------
+AccessibleGridControlAccess::AccessibleGridControlAccess( const Reference< XAccessible >& _rxParent, IAccessibleTable& _rTable )
+ :m_xParent( _rxParent )
+ ,m_rTable( _rTable )
+ ,m_pContext( NULL )
+{
+}
+
+// -----------------------------------------------------------------------------
+AccessibleGridControlAccess::~AccessibleGridControlAccess()
+{
+}
+
+// -----------------------------------------------------------------------------
+void AccessibleGridControlAccess::dispose()
+{
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ m_pContext = NULL;
+ ::comphelper::disposeComponent( m_xContext );
+}
+
+// -----------------------------------------------------------------------------
+Reference< XAccessibleContext > SAL_CALL AccessibleGridControlAccess::getAccessibleContext() throw ( RuntimeException )
+{
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ DBG_ASSERT( ( m_pContext && m_xContext.is() ) || ( !m_pContext && !m_xContext.is() ),
+ "accessibility/extended/AccessibleGridControlAccess::getAccessibleContext: inconsistency!" );
+
+ // if the context died meanwhile (we're no listener, so it won't tell us explicitily when this happens),
+ // then reset an re-create.
+ if ( m_pContext && !m_pContext->isAlive() )
+ m_xContext = m_pContext = NULL;
+
+ if ( !m_xContext.is() )
+ m_xContext = m_pContext = new AccessibleGridControl( m_xParent, this, m_rTable );
+
+ return m_xContext;
+}
+
+// -----------------------------------------------------------------------------
+bool AccessibleGridControlAccess::isContextAlive() const
+{
+ return ( NULL != m_pContext ) && m_pContext->isAlive();
+}
+
+// ============================================================================
+
+} // namespace accessibility
diff --git a/accessibility/source/extended/AccessibleGridControlBase.cxx b/accessibility/source/extended/AccessibleGridControlBase.cxx
new file mode 100755
index 000000000000..ea81bd350426
--- /dev/null
+++ b/accessibility/source/extended/AccessibleGridControlBase.cxx
@@ -0,0 +1,535 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include "accessibility/extended/AccessibleGridControlBase.hxx"
+#include <svtools/accessibletable.hxx>
+#include <rtl/uuid.h>
+//
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <unotools/accessiblerelationsethelper.hxx>
+
+// ============================================================================
+
+using ::rtl::OUString;
+
+using ::com::sun::star::uno::Reference;
+using ::com::sun::star::uno::Sequence;
+using ::com::sun::star::uno::Any;
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::accessibility;
+using namespace ::comphelper;
+using namespace ::svt;
+using namespace ::svt::table;
+
+
+// ============================================================================
+
+namespace accessibility {
+
+using namespace com::sun::star::accessibility::AccessibleStateType;
+// ============================================================================
+
+DBG_NAME( AccessibleGridControlBase )
+
+AccessibleGridControlBase::AccessibleGridControlBase(
+ const Reference< XAccessible >& rxParent,
+ svt::table::IAccessibleTable& rTable,
+ AccessibleTableControlObjType eObjType ) :
+ AccessibleGridControlImplHelper( m_aMutex ),
+ m_xParent( rxParent ),
+ m_aTable( rTable),
+ m_eObjType( eObjType ),
+ m_aName( rTable.GetAccessibleObjectName( eObjType, 0, 0 ) ),
+ m_aDescription( rTable.GetAccessibleObjectDescription( eObjType ) ),
+ m_aClientId(0)
+{
+}
+
+AccessibleGridControlBase::~AccessibleGridControlBase()
+{
+ if( isAlive() )
+ {
+ // increment ref count to prevent double call of Dtor
+ osl_incrementInterlockedCount( &m_refCount );
+ dispose();
+ }
+}
+
+void SAL_CALL AccessibleGridControlBase::disposing()
+{
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ m_xParent = NULL;
+}
+
+// XAccessibleContext ---------------------------------------------------------
+
+Reference< XAccessible > SAL_CALL AccessibleGridControlBase::getAccessibleParent()
+ throw ( uno::RuntimeException )
+{
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ return m_xParent;
+}
+
+sal_Int32 SAL_CALL AccessibleGridControlBase::getAccessibleIndexInParent()
+ throw ( uno::RuntimeException )
+{
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+
+ // -1 for child not found/no parent (according to specification)
+ sal_Int32 nRet = -1;
+
+ Reference< uno::XInterface > xMeMyselfAndI( static_cast< XAccessibleContext* >( this ), uno::UNO_QUERY );
+
+ // iterate over parent's children and search for this object
+ if( m_xParent.is() )
+ {
+ Reference< XAccessibleContext >
+ xParentContext( m_xParent->getAccessibleContext() );
+ if( xParentContext.is() )
+ {
+ Reference< uno::XInterface > xChild;
+
+ sal_Int32 nChildCount = xParentContext->getAccessibleChildCount();
+ for( sal_Int32 nChild = 0; nChild < nChildCount; ++nChild )
+ {
+ xChild = xChild.query( xParentContext->getAccessibleChild( nChild ) );
+ if ( xMeMyselfAndI.get() == xChild.get() )
+ {
+ nRet = nChild;
+ break;
+ }
+ }
+ }
+ }
+ return nRet;
+}
+
+OUString SAL_CALL AccessibleGridControlBase::getAccessibleDescription()
+ throw ( uno::RuntimeException )
+{
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ return m_aDescription;
+}
+
+OUString SAL_CALL AccessibleGridControlBase::getAccessibleName()
+ throw ( uno::RuntimeException )
+{
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ return m_aName;
+}
+
+Reference< XAccessibleRelationSet > SAL_CALL
+AccessibleGridControlBase::getAccessibleRelationSet()
+ throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ // GridControl does not have relations.
+ return new utl::AccessibleRelationSetHelper;
+}
+
+Reference< XAccessibleStateSet > SAL_CALL
+AccessibleGridControlBase::getAccessibleStateSet()
+ throw ( uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ // don't check whether alive -> StateSet may contain DEFUNC
+ return implCreateStateSetHelper();
+}
+
+lang::Locale SAL_CALL AccessibleGridControlBase::getLocale()
+ throw ( IllegalAccessibleComponentStateException, uno::RuntimeException )
+{
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ if( m_xParent.is() )
+ {
+ Reference< XAccessibleContext >
+ xParentContext( m_xParent->getAccessibleContext() );
+ if( xParentContext.is() )
+ return xParentContext->getLocale();
+ }
+ throw IllegalAccessibleComponentStateException();
+}
+
+// XAccessibleComponent -------------------------------------------------------
+
+sal_Bool SAL_CALL AccessibleGridControlBase::containsPoint( const awt::Point& rPoint )
+ throw ( uno::RuntimeException )
+{
+ return Rectangle( Point(), getBoundingBox().GetSize() ).IsInside( VCLPoint( rPoint ) );
+}
+
+awt::Rectangle SAL_CALL AccessibleGridControlBase::getBounds()
+ throw ( uno::RuntimeException )
+{
+ return AWTRectangle( getBoundingBox() );
+}
+
+awt::Point SAL_CALL AccessibleGridControlBase::getLocation()
+ throw ( uno::RuntimeException )
+{
+ return AWTPoint( getBoundingBox().TopLeft() );
+}
+
+awt::Point SAL_CALL AccessibleGridControlBase::getLocationOnScreen()
+ throw ( uno::RuntimeException )
+{
+ return AWTPoint( getBoundingBoxOnScreen().TopLeft() );
+}
+
+awt::Size SAL_CALL AccessibleGridControlBase::getSize()
+ throw ( uno::RuntimeException )
+{
+ return AWTSize( getBoundingBox().GetSize() );
+}
+
+sal_Bool SAL_CALL AccessibleGridControlBase::isShowing()
+ throw ( uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ return implIsShowing();
+}
+
+sal_Bool SAL_CALL AccessibleGridControlBase::isVisible()
+ throw ( uno::RuntimeException )
+{
+ Reference< XAccessibleStateSet > xStateSet = getAccessibleStateSet();
+ return xStateSet.is() ?
+ xStateSet->contains( AccessibleStateType::VISIBLE ) : sal_False;
+}
+
+sal_Bool SAL_CALL AccessibleGridControlBase::isFocusTraversable()
+ throw ( uno::RuntimeException )
+{
+ Reference< XAccessibleStateSet > xStateSet = getAccessibleStateSet();
+ return xStateSet.is() ?
+ xStateSet->contains( AccessibleStateType::FOCUSABLE ) : sal_False;
+}
+// XAccessibleEventBroadcaster ------------------------------------------------
+
+void SAL_CALL AccessibleGridControlBase::addEventListener(
+ const Reference< XAccessibleEventListener>& _rxListener )
+ throw ( uno::RuntimeException )
+{
+ if ( _rxListener.is() )
+ {
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ if ( !getClientId( ) )
+ setClientId( AccessibleEventNotifier::registerClient( ) );
+
+ AccessibleEventNotifier::addEventListener( getClientId( ), _rxListener );
+ }
+}
+
+void SAL_CALL AccessibleGridControlBase::removeEventListener(
+ const Reference< XAccessibleEventListener>& _rxListener )
+ throw ( uno::RuntimeException )
+{
+ if( _rxListener.is() && getClientId( ) )
+ {
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ sal_Int32 nListenerCount = AccessibleEventNotifier::removeEventListener( getClientId( ), _rxListener );
+ if ( !nListenerCount )
+ {
+ // no listeners anymore
+ // -> revoke ourself. This may lead to the notifier thread dying (if we were the last client),
+ // and at least to us not firing any events anymore, in case somebody calls
+ // NotifyAccessibleEvent, again
+ AccessibleEventNotifier::TClientId nId( getClientId( ) );
+ setClientId( 0 );
+ AccessibleEventNotifier::revokeClient( nId );
+ }
+ }
+}
+
+// XTypeProvider --------------------------------------------------------------
+
+Sequence< sal_Int8 > SAL_CALL AccessibleGridControlBase::getImplementationId()
+ throw ( uno::RuntimeException )
+{
+ ::osl::MutexGuard aGuard( getOslGlobalMutex() );
+ static Sequence< sal_Int8 > aId;
+ implCreateUuid( aId );
+ return aId;
+}
+
+// XServiceInfo ---------------------------------------------------------------
+
+sal_Bool SAL_CALL AccessibleGridControlBase::supportsService(
+ const OUString& rServiceName )
+ throw ( uno::RuntimeException )
+{
+ ::osl::MutexGuard aGuard( getOslMutex() );
+
+ Sequence< OUString > aSupportedServices( getSupportedServiceNames() );
+ const OUString* pArrBegin = aSupportedServices.getConstArray();
+ const OUString* pArrEnd = pArrBegin + aSupportedServices.getLength();
+ const OUString* pString = pArrBegin;
+
+ for( ; ( pString != pArrEnd ) && ( rServiceName != *pString ); ++pString )
+ ;
+ return pString != pArrEnd;
+}
+
+Sequence< OUString > SAL_CALL AccessibleGridControlBase::getSupportedServiceNames()
+ throw ( uno::RuntimeException )
+{
+ const OUString aServiceName( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleContext" ) );
+ return Sequence< OUString >( &aServiceName, 1 );
+}
+// internal virtual methods ---------------------------------------------------
+
+sal_Bool AccessibleGridControlBase::implIsShowing()
+{
+ sal_Bool bShowing = sal_False;
+ if( m_xParent.is() )
+ {
+ Reference< XAccessibleComponent >
+ xParentComp( m_xParent->getAccessibleContext(), uno::UNO_QUERY );
+ if( xParentComp.is() )
+ bShowing = implGetBoundingBox().IsOver(
+ VCLRectangle( xParentComp->getBounds() ) );
+ }
+ return bShowing;
+}
+
+::utl::AccessibleStateSetHelper* AccessibleGridControlBase::implCreateStateSetHelper()
+{
+ ::utl::AccessibleStateSetHelper*
+ pStateSetHelper = new ::utl::AccessibleStateSetHelper;
+
+ if( isAlive() )
+ {
+ // SHOWING done with m_xParent
+ if( implIsShowing() )
+ pStateSetHelper->AddState( AccessibleStateType::SHOWING );
+ // GridControl fills StateSet with states depending on object type
+ m_aTable.FillAccessibleStateSet( *pStateSetHelper, getType() );
+ }
+ else
+ pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
+ return pStateSetHelper;
+}
+
+// internal helper methods ----------------------------------------------------
+
+sal_Bool AccessibleGridControlBase::isAlive() const
+{
+ return !rBHelper.bDisposed && !rBHelper.bInDispose && &m_aTable;
+}
+
+void AccessibleGridControlBase::ensureIsAlive() const
+ throw ( lang::DisposedException )
+{
+ if( !isAlive() )
+ throw lang::DisposedException();
+}
+
+Rectangle AccessibleGridControlBase::getBoundingBox()
+ throw ( lang::DisposedException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ Rectangle aRect = implGetBoundingBox();
+ if ( 0 == aRect.Left() && 0 == aRect.Top() && 0 == aRect.Right() && 0 == aRect.Bottom() )
+ {
+ DBG_ERRORFILE( "rectangle doesn't exist" );
+ }
+ return aRect;
+}
+
+Rectangle AccessibleGridControlBase::getBoundingBoxOnScreen()
+ throw ( lang::DisposedException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ Rectangle aRect = implGetBoundingBoxOnScreen();
+ if ( 0 == aRect.Left() && 0 == aRect.Top() && 0 == aRect.Right() && 0 == aRect.Bottom() )
+ {
+ DBG_ERRORFILE( "rectangle doesn't exist" );
+ }
+ return aRect;
+}
+
+void AccessibleGridControlBase::commitEvent(
+ sal_Int16 _nEventId, const Any& _rNewValue, const Any& _rOldValue )
+{
+ ::osl::ClearableMutexGuard aGuard( getOslMutex() );
+ if ( !getClientId( ) )
+ // if we don't have a client id for the notifier, then we don't have listeners, then
+ // we don't need to notify anything
+ return;
+
+ // build an event object
+ AccessibleEventObject aEvent;
+ aEvent.Source = *this;
+ aEvent.EventId = _nEventId;
+ aEvent.OldValue = _rOldValue;
+ aEvent.NewValue = _rNewValue;
+
+ // let the notifier handle this event
+
+ AccessibleEventNotifier::addEvent( getClientId( ), aEvent );
+}
+// -----------------------------------------------------------------------------
+
+void AccessibleGridControlBase::implCreateUuid( Sequence< sal_Int8 >& rId )
+{
+ if( !rId.hasElements() )
+ {
+ rId.realloc( 16 );
+ rtl_createUuid( reinterpret_cast< sal_uInt8* >( rId.getArray() ), 0, sal_True );
+ }
+}
+// -----------------------------------------------------------------------------
+sal_Int16 SAL_CALL AccessibleGridControlBase::getAccessibleRole()
+ throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ sal_Int16 nRole = AccessibleRole::UNKNOWN;
+ switch ( m_eObjType )
+ {
+ case TCTYPE_ROWHEADERCELL:
+ nRole = AccessibleRole::ROW_HEADER;
+ break;
+ case TCTYPE_COLUMNHEADERCELL:
+ nRole = AccessibleRole::COLUMN_HEADER;
+ break;
+ case TCTYPE_COLUMNHEADERBAR:
+ case TCTYPE_ROWHEADERBAR:
+ case TCTYPE_TABLE:
+ nRole = AccessibleRole::TABLE;
+ break;
+ case TCTYPE_TABLECELL:
+ nRole = AccessibleRole::TABLE_CELL;
+ break;
+ case TCTYPE_GRIDCONTROL:
+ nRole = AccessibleRole::PANEL;
+ break;
+ }
+ return nRole;
+}
+// -----------------------------------------------------------------------------
+Any SAL_CALL AccessibleGridControlBase::getAccessibleKeyBinding()
+ throw ( uno::RuntimeException )
+{
+ return Any();
+}
+// -----------------------------------------------------------------------------
+Reference<XAccessible > SAL_CALL AccessibleGridControlBase::getAccessibleAtPoint( const ::com::sun::star::awt::Point& )
+ throw ( uno::RuntimeException )
+{
+ return NULL;
+}
+//// -----------------------------------------------------------------------------
+sal_Int32 SAL_CALL AccessibleGridControlBase::getForeground( ) throw (::com::sun::star::uno::RuntimeException)
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+
+ sal_Int32 nColor = 0;
+ Window* pInst = m_aTable.GetWindowInstance();
+ if ( pInst )
+ {
+ if ( pInst->IsControlForeground() )
+ nColor = pInst->GetControlForeground().GetColor();
+ else
+ {
+ Font aFont;
+ if ( pInst->IsControlFont() )
+ aFont = pInst->GetControlFont();
+ else
+ aFont = pInst->GetFont();
+ nColor = aFont.GetColor().GetColor();
+ }
+ }
+ return nColor;
+}
+// -----------------------------------------------------------------------------
+sal_Int32 SAL_CALL AccessibleGridControlBase::getBackground( ) throw (::com::sun::star::uno::RuntimeException)
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ sal_Int32 nColor = 0;
+ Window* pInst = m_aTable.GetWindowInstance();
+ if ( pInst )
+ {
+ if ( pInst->IsControlBackground() )
+ nColor = pInst->GetControlBackground().GetColor();
+ else
+ nColor = pInst->GetBackground().GetColor().GetColor();
+ }
+ return nColor;
+}
+
+//// ============================================================================
+GridControlAccessibleElement::GridControlAccessibleElement( const Reference< XAccessible >& rxParent,
+ IAccessibleTable& rTable,
+ AccessibleTableControlObjType eObjType )
+ :AccessibleGridControlBase( rxParent, rTable, eObjType )
+{
+}
+
+// XInterface -----------------------------------------------------------------
+IMPLEMENT_FORWARD_XINTERFACE2( GridControlAccessibleElement, AccessibleGridControlBase, GridControlAccessibleElement_Base)
+
+// XTypeProvider --------------------------------------------------------------
+IMPLEMENT_FORWARD_XTYPEPROVIDER2( GridControlAccessibleElement, AccessibleGridControlBase, GridControlAccessibleElement_Base )
+
+// XAccessible ----------------------------------------------------------------
+
+Reference< XAccessibleContext > SAL_CALL GridControlAccessibleElement::getAccessibleContext() throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ return this;
+}
+// ----------------------------------------------------------------------------
+GridControlAccessibleElement::~GridControlAccessibleElement( )
+{
+}
+
+// ============================================================================
+
+} // namespace accessibility
+
+// ============================================================================
+
diff --git a/accessibility/source/extended/AccessibleGridControlHeader.cxx b/accessibility/source/extended/AccessibleGridControlHeader.cxx
new file mode 100755
index 000000000000..1870eebc8e3e
--- /dev/null
+++ b/accessibility/source/extended/AccessibleGridControlHeader.cxx
@@ -0,0 +1,284 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+
+
+#include "accessibility/extended/AccessibleGridControlHeader.hxx"
+#include "accessibility/extended/AccessibleGridControlHeaderCell.hxx"
+#include "accessibility/extended/AccessibleGridControlTableCell.hxx"
+#include <svtools/accessibletable.hxx>
+
+
+// ============================================================================
+
+using ::rtl::OUString;
+
+using ::com::sun::star::uno::Reference;
+using ::com::sun::star::uno::Sequence;
+using ::com::sun::star::uno::Any;
+
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::accessibility;
+using namespace ::svt;
+using namespace ::svt::table;
+
+// ============================================================================
+
+namespace accessibility {
+
+// ============================================================================
+
+DBG_NAME( AccessibleGridControlHeader )
+
+AccessibleGridControlHeader::AccessibleGridControlHeader(
+ const Reference< XAccessible >& rxParent,
+ ::svt::table::IAccessibleTable& rTable,
+ ::svt::table::AccessibleTableControlObjType eObjType):
+ AccessibleGridControlTableBase( rxParent, rTable, eObjType )
+{
+ DBG_ASSERT( isRowBar() || isColumnBar(),
+ "accessibility/extended/AccessibleGridControlHeaderBar - invalid object type" );
+}
+
+AccessibleGridControlHeader::~AccessibleGridControlHeader()
+{
+}
+
+// XAccessibleContext ---------------------------------------------------------
+
+Reference< XAccessible > SAL_CALL
+AccessibleGridControlHeader::getAccessibleChild( sal_Int32 nChildIndex )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+
+ if (nChildIndex<0 || nChildIndex>=getAccessibleChildCount())
+ throw IndexOutOfBoundsException();
+ ensureIsAlive();
+ Reference< XAccessible > xChild;
+ if(m_eObjType == svt::table::TCTYPE_COLUMNHEADERBAR)
+ {
+ AccessibleGridControlHeaderCell* pColHeaderCell = new AccessibleGridControlHeaderCell(nChildIndex, this, m_aTable, svt::table::TCTYPE_COLUMNHEADERCELL);
+ xChild = pColHeaderCell;
+ }
+ else if(m_eObjType == svt::table::TCTYPE_ROWHEADERBAR)
+ {
+ AccessibleGridControlHeaderCell* pRowHeaderCell = new AccessibleGridControlHeaderCell(nChildIndex, this, m_aTable, svt::table::TCTYPE_ROWHEADERCELL);
+ xChild = pRowHeaderCell;
+ }
+ return xChild;
+}
+
+sal_Int32 SAL_CALL AccessibleGridControlHeader::getAccessibleIndexInParent()
+ throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ if(m_eObjType == svt::table::TCTYPE_ROWHEADERBAR && m_aTable.HasColHeader())
+ return 1;
+ else
+ return 0;
+}
+
+// XAccessibleComponent -------------------------------------------------------
+
+Reference< XAccessible > SAL_CALL
+AccessibleGridControlHeader::getAccessibleAtPoint( const awt::Point& rPoint )
+ throw ( uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+
+ sal_Int32 nRow = 0;
+ sal_Int32 nColumnPos = 0;
+ sal_Bool bConverted = isRowBar() ?
+ m_aTable.ConvertPointToCellAddress( nRow, nColumnPos, VCLPoint( rPoint ) ) :
+ m_aTable.ConvertPointToCellAddress( nRow, nColumnPos, VCLPoint( rPoint ) );
+
+ return bConverted ? implGetChild( nRow, nColumnPos ) : Reference< XAccessible >();
+}
+
+void SAL_CALL AccessibleGridControlHeader::grabFocus()
+ throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ // focus on header not supported
+}
+
+Any SAL_CALL AccessibleGridControlHeader::getAccessibleKeyBinding()
+ throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ return Any(); // no special key bindings for header
+}
+
+// XAccessibleTable -----------------------------------------------------------
+
+OUString SAL_CALL AccessibleGridControlHeader::getAccessibleRowDescription( sal_Int32 nRow )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidRow( nRow );
+ return OUString(); // no headers in headers
+}
+
+OUString SAL_CALL AccessibleGridControlHeader::getAccessibleColumnDescription( sal_Int32 nColumn )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidColumn( nColumn );
+ return OUString(); // no headers in headers
+}
+
+Reference< XAccessibleTable > SAL_CALL AccessibleGridControlHeader::getAccessibleRowHeaders()
+ throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ return NULL; // no headers in headers
+}
+
+Reference< XAccessibleTable > SAL_CALL AccessibleGridControlHeader::getAccessibleColumnHeaders()
+ throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ return NULL; // no headers in headers
+}
+//not selectable
+Sequence< sal_Int32 > SAL_CALL AccessibleGridControlHeader::getSelectedAccessibleRows()
+ throw ( uno::RuntimeException )
+{
+ Sequence< sal_Int32 > aSelSeq(0);
+ return aSelSeq;
+}
+//columns aren't selectable
+Sequence< sal_Int32 > SAL_CALL AccessibleGridControlHeader::getSelectedAccessibleColumns()
+ throw ( uno::RuntimeException )
+{
+ Sequence< sal_Int32 > aSelSeq(0);
+ return aSelSeq;
+}
+//row headers not selectable
+sal_Bool SAL_CALL AccessibleGridControlHeader::isAccessibleRowSelected( sal_Int32 /*nRow*/ )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ return sal_False;
+}
+//columns aren't selectable
+sal_Bool SAL_CALL AccessibleGridControlHeader::isAccessibleColumnSelected( sal_Int32 nColumn )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ (void)nColumn;
+ return sal_False;
+}
+//not implemented
+Reference< XAccessible > SAL_CALL AccessibleGridControlHeader::getAccessibleCellAt(
+ sal_Int32 /*nRow*/, sal_Int32 /*nColumn*/ )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ return NULL;
+}
+// not selectable
+sal_Bool SAL_CALL AccessibleGridControlHeader::isAccessibleSelected(
+ sal_Int32 /*nRow*/, sal_Int32 /*nColumn */)
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ return sal_False;
+}
+
+// XServiceInfo ---------------------------------------------------------------
+
+OUString SAL_CALL AccessibleGridControlHeader::getImplementationName()
+ throw ( uno::RuntimeException )
+{
+ return OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleGridControlHeader" ) );
+}
+
+Sequence< sal_Int8 > SAL_CALL AccessibleGridControlHeader::getImplementationId()
+ throw ( uno::RuntimeException )
+{
+ ::osl::MutexGuard aGuard( getOslGlobalMutex() );
+ static Sequence< sal_Int8 > aId;
+ implCreateUuid( aId );
+ return aId;
+}
+
+// internal virtual methods ---------------------------------------------------
+
+Rectangle AccessibleGridControlHeader::implGetBoundingBox()
+{
+ return m_aTable.calcHeaderRect(isColumnBar());
+}
+
+Rectangle AccessibleGridControlHeader::implGetBoundingBoxOnScreen()
+{
+ return m_aTable.calcHeaderRect(isColumnBar());
+}
+
+sal_Int32 AccessibleGridControlHeader::implGetRowCount() const
+{
+ return 1;
+}
+
+sal_Int32 AccessibleGridControlHeader::implGetColumnCount() const
+{
+ return 1;
+}
+
+// internal helper methods ----------------------------------------------------
+
+Reference< XAccessible > AccessibleGridControlHeader::implGetChild(
+ sal_Int32 nRow, sal_uInt32 nColumnPos )
+{
+ Reference< XAccessible > xChild;
+ if(m_eObjType == svt::table::TCTYPE_COLUMNHEADERBAR)
+ {
+ AccessibleGridControlHeaderCell* pColHeaderCell = new AccessibleGridControlHeaderCell(nColumnPos, this, m_aTable, svt::table::TCTYPE_COLUMNHEADERCELL);
+ xChild = pColHeaderCell;
+ }
+ else if(m_eObjType == svt::table::TCTYPE_ROWHEADERBAR)
+ {
+ AccessibleGridControlHeaderCell* pRowHeaderCell = new AccessibleGridControlHeaderCell(nRow, this, m_aTable, svt::table::TCTYPE_ROWHEADERCELL);
+ xChild = pRowHeaderCell;
+ }
+ return xChild;
+}
+
+// ============================================================================
+
+} // namespace accessibility
+
+// ============================================================================
+
diff --git a/accessibility/source/extended/AccessibleGridControlHeaderCell.cxx b/accessibility/source/extended/AccessibleGridControlHeaderCell.cxx
new file mode 100755
index 000000000000..485c57c40ae1
--- /dev/null
+++ b/accessibility/source/extended/AccessibleGridControlHeaderCell.cxx
@@ -0,0 +1,170 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+
+#include "accessibility/extended/AccessibleGridControlHeaderCell.hxx"
+#include <svtools/accessibletable.hxx>
+#include "accessibility/extended/AccessibleGridControl.hxx"
+
+namespace accessibility
+{
+ using namespace ::com::sun::star::accessibility;
+ using namespace ::com::sun::star::lang;
+ using namespace ::com::sun::star::uno;
+ using namespace ::svt;
+ using namespace ::svt::table;
+
+AccessibleGridControlHeaderCell::AccessibleGridControlHeaderCell(sal_Int32 _nColumnRowId,
+ const Reference< XAccessible >& rxParent,
+ IAccessibleTable& rTable,
+ AccessibleTableControlObjType eObjType)
+: AccessibleGridControlCell( rxParent, rTable, _nColumnRowId, 0, eObjType)
+, m_nColumnRowId(_nColumnRowId)
+{
+}
+/** Creates a new AccessibleStateSetHelper and fills it with states of the
+ current object.
+ @return
+ A filled AccessibleStateSetHelper.
+*/
+::utl::AccessibleStateSetHelper* AccessibleGridControlHeaderCell::implCreateStateSetHelper()
+{
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ::utl::AccessibleStateSetHelper*
+ pStateSetHelper = new ::utl::AccessibleStateSetHelper;
+
+ if( isAlive() )
+ {
+ // SHOWING done with mxParent
+ if( implIsShowing() )
+ pStateSetHelper->AddState( AccessibleStateType::SHOWING );
+
+ TCSolarGuard aSolarGuard;
+ pStateSetHelper->AddState( AccessibleStateType::VISIBLE );
+ pStateSetHelper->AddState( AccessibleStateType::FOCUSABLE );
+ pStateSetHelper->AddState( AccessibleStateType::TRANSIENT );
+ pStateSetHelper->AddState( AccessibleStateType::SELECTABLE );
+
+ if ( m_aTable.IsRowSelected(m_nColumnRowId) )
+ pStateSetHelper->AddState( AccessibleStateType::SELECTED );
+ }
+ else
+ pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
+
+ return pStateSetHelper;
+}
+// -----------------------------------------------------------------------------
+/** @return
+ The count of visible children.
+*/
+sal_Int32 SAL_CALL AccessibleGridControlHeaderCell::getAccessibleChildCount()
+ throw ( RuntimeException )
+{
+ return 0;
+}
+// -----------------------------------------------------------------------------
+
+/** @return
+ The XAccessible interface of the specified child.
+*/
+Reference<XAccessible > SAL_CALL AccessibleGridControlHeaderCell::getAccessibleChild( sal_Int32 )
+ throw ( IndexOutOfBoundsException,RuntimeException )
+{
+ throw IndexOutOfBoundsException();
+}
+// XInterface -------------------------------------------------------------
+
+ /** Queries for a new interface. */
+ ::com::sun::star::uno::Any SAL_CALL AccessibleGridControlHeaderCell::queryInterface(
+ const ::com::sun::star::uno::Type& rType )
+ throw ( ::com::sun::star::uno::RuntimeException )
+ {
+ Any aRet = AccessibleGridControlCell::queryInterface(rType);
+ return aRet;
+ }
+
+ /** Aquires the object (calls acquire() on base class). */
+ void SAL_CALL AccessibleGridControlHeaderCell::acquire() throw ()
+ {
+ AccessibleGridControlCell::acquire();
+ }
+
+ /** Releases the object (calls release() on base class). */
+ void SAL_CALL AccessibleGridControlHeaderCell::release() throw ()
+ {
+ AccessibleGridControlCell::release();
+ }
+ /** @return The XAccessibleContext interface of this object. */
+ Reference< com::sun::star::accessibility::XAccessibleContext > SAL_CALL AccessibleGridControlHeaderCell::getAccessibleContext() throw ( RuntimeException )
+ {
+ ensureIsAlive();
+ return this;
+ }
+
+// -----------------------------------------------------------------------------
+
+/** Grabs the focus to the column header. */
+void SAL_CALL AccessibleGridControlHeaderCell::grabFocus()
+ throw ( ::com::sun::star::uno::RuntimeException )
+{
+}
+// -----------------------------------------------------------------------------
+/** @return
+ The name of this class.
+*/
+::rtl::OUString SAL_CALL AccessibleGridControlHeaderCell::getImplementationName()
+ throw ( ::com::sun::star::uno::RuntimeException )
+{
+ return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleGridControlHeaderCell" ) );
+}
+// -----------------------------------------------------------------------------
+Rectangle AccessibleGridControlHeaderCell::implGetBoundingBox()
+{
+ return Rectangle(Point(0,0),Point(0,0));//To Do - return headercell rectangle
+}
+// -----------------------------------------------------------------------------
+
+Rectangle AccessibleGridControlHeaderCell::implGetBoundingBoxOnScreen()
+{
+ return Rectangle(Point(0,0),Point(0,0));//To Do - return headercell rectangle
+}
+// -----------------------------------------------------------------------------
+sal_Int32 SAL_CALL AccessibleGridControlHeaderCell::getAccessibleIndexInParent()
+ throw ( RuntimeException )
+{
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ sal_Int32 nIndex = m_nColumnRowId;
+ return nIndex;
+}
+// -----------------------------------------------------------------------------
+} // namespace accessibility
+// -----------------------------------------------------------------------------
+
+
diff --git a/accessibility/source/extended/AccessibleGridControlTable.cxx b/accessibility/source/extended/AccessibleGridControlTable.cxx
new file mode 100755
index 000000000000..461e776f1392
--- /dev/null
+++ b/accessibility/source/extended/AccessibleGridControlTable.cxx
@@ -0,0 +1,378 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+
+
+#include "accessibility/extended/AccessibleGridControlTable.hxx"
+#include "accessibility/extended/AccessibleGridControlTableCell.hxx"
+#include <svtools/accessibletable.hxx>
+
+// ============================================================================
+
+using ::rtl::OUString;
+
+using ::com::sun::star::uno::Reference;
+using ::com::sun::star::uno::Sequence;
+using ::com::sun::star::uno::Any;
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::accessibility;
+using namespace ::svt;
+using namespace ::svt::table;
+// ============================================================================
+
+namespace accessibility {
+
+// ============================================================================
+
+DBG_NAME( AccessibleGridControlTable )
+
+AccessibleGridControlTable::AccessibleGridControlTable(
+ const Reference< XAccessible >& rxParent,
+ IAccessibleTable& rTable,
+ AccessibleTableControlObjType _eType) :
+ AccessibleGridControlTableBase( rxParent, rTable, _eType )
+{
+}
+
+AccessibleGridControlTable::~AccessibleGridControlTable()
+{
+}
+
+// XAccessibleContext ---------------------------------------------------------
+
+Reference< XAccessible > SAL_CALL
+AccessibleGridControlTable::getAccessibleChild( sal_Int32 nChildIndex )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidIndex( nChildIndex );
+ return new AccessibleGridControlTableCell(this, m_aTable, nChildIndex/m_aTable.GetColumnCount(), nChildIndex%m_aTable.GetColumnCount(), TCTYPE_TABLECELL);
+}
+
+sal_Int32 SAL_CALL AccessibleGridControlTable::getAccessibleIndexInParent()
+ throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ if(m_aTable.HasRowHeader() && m_aTable.HasColHeader())
+ return 0;
+ else if((!m_aTable.HasRowHeader() && m_aTable.HasColHeader()) || (m_aTable.HasRowHeader() && !m_aTable.HasColHeader()) )
+ return 1;
+ else
+ return 2;
+}
+
+// XAccessibleComponent -------------------------------------------------------
+
+Reference< XAccessible > SAL_CALL
+AccessibleGridControlTable::getAccessibleAtPoint( const awt::Point& rPoint )
+ throw ( uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+
+ Reference< XAccessible > xChild;
+ sal_Int32 nRow = 0;
+ sal_Int32 nColumnPos = 0;
+ if( m_aTable.ConvertPointToCellAddress( nRow, nColumnPos, VCLPoint( rPoint ) ) )
+ xChild = new AccessibleGridControlTableCell(this, m_aTable, nRow, nColumnPos, TCTYPE_TABLECELL);
+
+ return xChild;
+}
+
+void SAL_CALL AccessibleGridControlTable::grabFocus()
+ throw ( uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ m_aTable.GrabFocus();
+}
+
+Any SAL_CALL AccessibleGridControlTable::getAccessibleKeyBinding()
+ throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ return Any(); // no special key bindings for data table
+}
+
+// XAccessibleTable -----------------------------------------------------------
+
+OUString SAL_CALL AccessibleGridControlTable::getAccessibleRowDescription( sal_Int32 nRow )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidRow( nRow );
+ return m_aTable.GetRowDescription( nRow );
+}
+
+OUString SAL_CALL AccessibleGridControlTable::getAccessibleColumnDescription( sal_Int32 nColumn )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidColumn( nColumn );
+ return m_aTable.GetColumnDescription( (sal_uInt16)nColumn );
+}
+
+Reference< XAccessibleTable > SAL_CALL AccessibleGridControlTable::getAccessibleRowHeaders()
+ throw ( uno::RuntimeException )
+{
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ if(m_aTable.HasColHeader())
+ return implGetHeaderBar( 1 );
+ else
+ return implGetHeaderBar( 0 );
+}
+
+Reference< XAccessibleTable > SAL_CALL AccessibleGridControlTable::getAccessibleColumnHeaders()
+ throw ( uno::RuntimeException )
+{
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ return implGetHeaderBar( 0 );
+}
+
+Sequence< sal_Int32 > SAL_CALL AccessibleGridControlTable::getSelectedAccessibleRows()
+ throw ( uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ Sequence< sal_Int32 > aSelSeq;
+ implGetSelectedRows( aSelSeq );
+ return aSelSeq;
+}
+
+//columns aren't selectable
+Sequence< sal_Int32 > SAL_CALL AccessibleGridControlTable::getSelectedAccessibleColumns()
+ throw ( uno::RuntimeException )
+{
+ Sequence< sal_Int32 > aSelSeq(0);
+ return aSelSeq;
+}
+
+sal_Bool SAL_CALL AccessibleGridControlTable::isAccessibleRowSelected( sal_Int32 nRow )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidRow( nRow );
+ sal_Bool bSelected = sal_False;
+ Sequence< sal_Int32 > selectedRows = getSelectedAccessibleRows();
+ for(int i=0; i<selectedRows.getLength(); i++)
+ {
+ if(nRow == selectedRows[i])
+ {
+ bSelected = sal_True;
+ continue;
+ }
+ }
+ return bSelected;
+}
+
+//columns aren't selectable
+sal_Bool SAL_CALL AccessibleGridControlTable::isAccessibleColumnSelected( sal_Int32 nColumn )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ (void) nColumn;
+ return sal_False;
+}
+
+Reference< XAccessible > SAL_CALL AccessibleGridControlTable::getAccessibleCellAt(
+ sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidAddress( nRow, nColumn );
+ return new AccessibleGridControlTableCell(this, m_aTable, nRow, nColumn, TCTYPE_TABLECELL);
+}
+
+sal_Bool SAL_CALL AccessibleGridControlTable::isAccessibleSelected(
+ sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidAddress( nRow, nColumn );
+ (void) nColumn;
+ //selection of single cells not possible, so if row is selected, the cell will be selected too
+ return isAccessibleRowSelected(nRow);
+}
+void SAL_CALL AccessibleGridControlTable::selectAccessibleChild( sal_Int32 nChildIndex )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidIndex( nChildIndex );
+ sal_Int32 nColumns = m_aTable.GetColumnCount();
+ sal_Int32 nRow = (nChildIndex / nColumns);
+ std::vector< sal_Int32 > selectedRows = m_aTable.GetSelectedRows();
+ selectedRows.push_back(nRow);
+}
+sal_Bool SAL_CALL AccessibleGridControlTable::isAccessibleChildSelected( sal_Int32 nChildIndex )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidIndex( nChildIndex );
+ sal_Int32 nColumns = m_aTable.GetColumnCount();
+ sal_Int32 nRow = (nChildIndex / nColumns);
+ return isAccessibleRowSelected(nRow);
+}
+void SAL_CALL AccessibleGridControlTable::clearAccessibleSelection()
+ throw ( uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ for(unsigned int i=0;i<m_aTable.GetSelectedRows().size();i++)
+ m_aTable.RemoveSelectedRow((sal_Int32)i);
+}
+void SAL_CALL AccessibleGridControlTable::selectAllAccessibleChildren()
+ throw ( uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ Sequence< sal_Int32 > selectedRows = getSelectedAccessibleRows();
+ for(int i=0;i<m_aTable.GetRowCount();i++)
+ selectedRows[i]=i;
+}
+sal_Int32 SAL_CALL AccessibleGridControlTable::getSelectedAccessibleChildCount()
+ throw ( uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ Sequence< sal_Int32 > selectedRows = getSelectedAccessibleRows();
+ sal_Int32 nColumns = m_aTable.GetColumnCount();
+ return selectedRows.getLength()*nColumns;
+}
+Reference< XAccessible > SAL_CALL
+AccessibleGridControlTable::getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ if(isAccessibleChildSelected(nSelectedChildIndex))
+ return getAccessibleChild(nSelectedChildIndex);
+ else
+ return NULL;
+}
+//not implemented yet, because only row selection possible
+void SAL_CALL AccessibleGridControlTable::deselectAccessibleChild(
+ sal_Int32 nSelectedChildIndex )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ (void)nSelectedChildIndex;
+}
+// XInterface -----------------------------------------------------------------
+
+Any SAL_CALL AccessibleGridControlTable::queryInterface( const uno::Type& rType )
+ throw ( uno::RuntimeException )
+{
+ Any aAny( AccessibleGridControlTableBase::queryInterface( rType ) );
+ return aAny.hasValue() ?
+ aAny : AccessibleGridControlTableImplHelper1::queryInterface( rType );
+}
+
+void SAL_CALL AccessibleGridControlTable::acquire() throw ()
+{
+ AccessibleGridControlTableBase::acquire();
+}
+
+void SAL_CALL AccessibleGridControlTable::release() throw ()
+{
+ AccessibleGridControlTableBase::release();
+}
+// XServiceInfo ---------------------------------------------------------------
+
+OUString SAL_CALL AccessibleGridControlTable::getImplementationName()
+ throw ( uno::RuntimeException )
+{
+ return OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleGridControlTable" ) );
+}
+
+// internal virtual methods ---------------------------------------------------
+
+Rectangle AccessibleGridControlTable::implGetBoundingBox()
+{
+ return m_aTable.calcTableRect();
+}
+
+Rectangle AccessibleGridControlTable::implGetBoundingBoxOnScreen()
+{
+ return m_aTable.calcTableRect();
+}
+// internal helper methods ----------------------------------------------------
+Reference< XAccessibleTable > AccessibleGridControlTable::implGetHeaderBar(
+ sal_Int32 nChildIndex )
+ throw ( uno::RuntimeException )
+{
+ Reference< XAccessible > xRet;
+ Reference< XAccessibleContext > xContext( m_xParent, uno::UNO_QUERY );
+ if( xContext.is() )
+ {
+ try
+ {
+ xRet = xContext->getAccessibleChild( nChildIndex );
+ }
+ catch( lang::IndexOutOfBoundsException& )
+ {
+ DBG_ERROR( "implGetHeaderBar - wrong child index" );
+ }
+ // RuntimeException goes to caller
+ }
+ return Reference< XAccessibleTable >( xRet, uno::UNO_QUERY );
+}
+
+// ============================================================================
+
+} // namespace accessibility
+
+// ============================================================================
+
diff --git a/accessibility/source/extended/AccessibleGridControlTableBase.cxx b/accessibility/source/extended/AccessibleGridControlTableBase.cxx
new file mode 100755
index 000000000000..f6d1147ad309
--- /dev/null
+++ b/accessibility/source/extended/AccessibleGridControlTableBase.cxx
@@ -0,0 +1,288 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+
+
+#include "accessibility/extended/AccessibleGridControlTableBase.hxx"
+#include <svtools/accessibletable.hxx>
+#include <tools/multisel.hxx>
+#include <comphelper/sequence.hxx>
+
+// ============================================================================
+
+using ::rtl::OUString;
+
+using ::com::sun::star::uno::Reference;
+using ::com::sun::star::uno::Sequence;
+using ::com::sun::star::uno::Any;
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::accessibility;
+using namespace ::svt;
+using namespace ::svt::table;
+
+// ============================================================================
+
+namespace accessibility {
+
+// ============================================================================
+
+DBG_NAME( AccessibleGridControlTableBase )
+
+AccessibleGridControlTableBase::AccessibleGridControlTableBase(
+ const Reference< XAccessible >& rxParent,
+ IAccessibleTable& rTable,
+ AccessibleTableControlObjType eObjType ) :
+ GridControlAccessibleElement( rxParent, rTable, eObjType )
+{
+}
+
+AccessibleGridControlTableBase::~AccessibleGridControlTableBase()
+{
+}
+
+// XAccessibleContext ---------------------------------------------------------
+
+sal_Int32 SAL_CALL AccessibleGridControlTableBase::getAccessibleChildCount()
+ throw ( uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ sal_Int32 nChildren = 0;
+ if(m_eObjType == TCTYPE_ROWHEADERBAR)
+ nChildren = m_aTable.GetRowCount();
+ else if(m_eObjType == TCTYPE_TABLE)
+ nChildren = m_aTable.GetRowCount()*m_aTable.GetColumnCount();
+ else if(m_eObjType == TCTYPE_COLUMNHEADERBAR)
+ nChildren = m_aTable.GetColumnCount();
+ return nChildren;
+}
+
+sal_Int16 SAL_CALL AccessibleGridControlTableBase::getAccessibleRole()
+ throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ return AccessibleRole::TABLE;
+}
+
+// XAccessibleTable -----------------------------------------------------------
+
+sal_Int32 SAL_CALL AccessibleGridControlTableBase::getAccessibleRowCount()
+ throw ( uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ return m_aTable.GetRowCount();
+}
+
+sal_Int32 SAL_CALL AccessibleGridControlTableBase::getAccessibleColumnCount()
+ throw ( uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ return m_aTable.GetColumnCount();
+}
+
+sal_Int32 SAL_CALL AccessibleGridControlTableBase::getAccessibleRowExtentAt(
+ sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidAddress( nRow, nColumn );
+ return 1; // merged cells not supported
+}
+
+sal_Int32 SAL_CALL AccessibleGridControlTableBase::getAccessibleColumnExtentAt(
+ sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidAddress( nRow, nColumn );
+ return 1; // merged cells not supported
+}
+
+Reference< XAccessible > SAL_CALL AccessibleGridControlTableBase::getAccessibleCaption()
+ throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ return NULL; // not supported
+}
+
+Reference< XAccessible > SAL_CALL AccessibleGridControlTableBase::getAccessibleSummary()
+ throw ( uno::RuntimeException )
+{
+ ensureIsAlive();
+ return NULL; // not supported
+}
+
+sal_Int32 SAL_CALL AccessibleGridControlTableBase::getAccessibleIndex(
+ sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidAddress( nRow, nColumn );
+ return implGetChildIndex( nRow, nColumn );
+}
+
+sal_Int32 SAL_CALL AccessibleGridControlTableBase::getAccessibleRow( sal_Int32 nChildIndex )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidIndex( nChildIndex );
+ return implGetRow( nChildIndex );
+}
+
+sal_Int32 SAL_CALL AccessibleGridControlTableBase::getAccessibleColumn( sal_Int32 nChildIndex )
+ throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
+{
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+ ensureIsValidIndex( nChildIndex );
+ return implGetColumn( nChildIndex );
+}
+
+// XInterface -----------------------------------------------------------------
+
+Any SAL_CALL AccessibleGridControlTableBase::queryInterface( const uno::Type& rType )
+ throw ( uno::RuntimeException )
+{
+ Any aAny( GridControlAccessibleElement::queryInterface( rType ) );
+ return aAny.hasValue() ?
+ aAny : AccessibleGridControlTableImplHelper::queryInterface( rType );
+}
+
+void SAL_CALL AccessibleGridControlTableBase::acquire() throw ()
+{
+ GridControlAccessibleElement::acquire();
+}
+
+void SAL_CALL AccessibleGridControlTableBase::release() throw ()
+{
+ GridControlAccessibleElement::release();
+}
+
+// XTypeProvider --------------------------------------------------------------
+
+Sequence< uno::Type > SAL_CALL AccessibleGridControlTableBase::getTypes()
+ throw ( uno::RuntimeException )
+{
+ return ::comphelper::concatSequences(
+ GridControlAccessibleElement::getTypes(),
+ AccessibleGridControlTableImplHelper::getTypes() );
+}
+
+Sequence< sal_Int8 > SAL_CALL AccessibleGridControlTableBase::getImplementationId()
+ throw ( uno::RuntimeException )
+{
+ ::osl::MutexGuard aGuard( getOslGlobalMutex() );
+ static Sequence< sal_Int8 > aId;
+ implCreateUuid( aId );
+ return aId;
+}
+
+// internal helper methods ----------------------------------------------------
+
+sal_Int32 AccessibleGridControlTableBase::implGetChildCount() const
+{
+ return m_aTable.GetRowCount()*m_aTable.GetColumnCount();
+}
+
+sal_Int32 AccessibleGridControlTableBase::implGetRow( sal_Int32 nChildIndex ) const
+{
+ sal_Int32 nColumns = m_aTable.GetColumnCount();
+ return nColumns ? (nChildIndex / nColumns) : 0;
+}
+
+sal_Int32 AccessibleGridControlTableBase::implGetColumn( sal_Int32 nChildIndex ) const
+{
+ sal_Int32 nColumns = m_aTable.GetColumnCount();
+ return nColumns ? (nChildIndex % nColumns) : 0;
+}
+
+sal_Int32 AccessibleGridControlTableBase::implGetChildIndex(
+ sal_Int32 nRow, sal_Int32 nColumn ) const
+{
+ return nRow * m_aTable.GetColumnCount() + nColumn;
+}
+
+void AccessibleGridControlTableBase::implGetSelectedRows( Sequence< sal_Int32 >& rSeq )
+{
+ rSeq = comphelper::containerToSequence(m_aTable.GetSelectedRows());
+}
+
+void AccessibleGridControlTableBase::ensureIsValidRow( sal_Int32 nRow )
+ throw ( lang::IndexOutOfBoundsException )
+{
+ if( nRow >= m_aTable.GetRowCount() )
+ throw lang::IndexOutOfBoundsException(
+ OUString( RTL_CONSTASCII_USTRINGPARAM( "row index is invalid" ) ), *this );
+}
+
+void AccessibleGridControlTableBase::ensureIsValidColumn( sal_Int32 nColumn )
+ throw ( lang::IndexOutOfBoundsException )
+{
+ if( nColumn >= m_aTable.GetColumnCount() )
+ throw lang::IndexOutOfBoundsException(
+ OUString( RTL_CONSTASCII_USTRINGPARAM("column index is invalid") ), *this );
+}
+
+void AccessibleGridControlTableBase::ensureIsValidAddress(
+ sal_Int32 nRow, sal_Int32 nColumn )
+ throw ( lang::IndexOutOfBoundsException )
+{
+ ensureIsValidRow( nRow );
+ ensureIsValidColumn( nColumn );
+}
+
+void AccessibleGridControlTableBase::ensureIsValidIndex( sal_Int32 nChildIndex )
+ throw ( lang::IndexOutOfBoundsException )
+{
+ if( nChildIndex >= implGetChildCount() )
+ throw lang::IndexOutOfBoundsException(
+ OUString( RTL_CONSTASCII_USTRINGPARAM("child index is invalid") ), *this );
+}
+
+// ============================================================================
+
+} // namespace accessibility
+
+// ============================================================================
+
diff --git a/accessibility/source/extended/AccessibleGridControlTableCell.cxx b/accessibility/source/extended/AccessibleGridControlTableCell.cxx
new file mode 100755
index 000000000000..43b9400e9050
--- /dev/null
+++ b/accessibility/source/extended/AccessibleGridControlTableCell.cxx
@@ -0,0 +1,370 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+
+#include "accessibility/extended/AccessibleGridControlTableCell.hxx"
+#include <svtools/accessibletable.hxx>
+#include "accessibility/extended/AccessibleGridControl.hxx"
+#include <tools/gen.hxx>
+#include <toolkit/helper/vclunohelper.hxx>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+
+namespace accessibility
+{
+ namespace
+ {
+ void checkIndex_Impl( sal_Int32 _nIndex, const ::rtl::OUString& _sText ) throw (::com::sun::star::lang::IndexOutOfBoundsException)
+ {
+ if ( _nIndex >= _sText.getLength() )
+ throw ::com::sun::star::lang::IndexOutOfBoundsException();
+ }
+
+ sal_Int32 getIndex_Impl( sal_Int32 _nRow, sal_uInt16 _nColumn, sal_uInt16 _nColumnCount )
+ {
+ return _nRow * _nColumnCount + _nColumn;
+ }
+ }
+ using namespace ::com::sun::star::lang;
+ using namespace utl;
+ using namespace comphelper;
+ using ::rtl::OUString;
+ using ::accessibility::AccessibleGridControl;
+ using namespace ::com::sun::star::uno;
+ using ::com::sun::star::accessibility::XAccessible;
+ using namespace ::com::sun::star::accessibility;
+ using namespace ::svt;
+ using namespace ::svt::table;
+
+
+ // =============================================================================
+ // = AccessibleGridControlCell
+ // =============================================================================
+ // -----------------------------------------------------------------------------
+ AccessibleGridControlCell::AccessibleGridControlCell(
+ const Reference< XAccessible >& _rxParent, IAccessibleTable& _rTable,
+ sal_Int32 _nRowPos, sal_uInt16 _nColPos, AccessibleTableControlObjType _eType )
+ :AccessibleGridControlBase( _rxParent, _rTable, _eType )
+ ,m_nRowPos( _nRowPos )
+ ,m_nColPos( _nColPos )
+ {
+ // set accessible name here, because for that we need the position of the cell
+ // and so the base class isn't capable of doing this
+ ::rtl::OUString aAccName;
+ if(_eType == TCTYPE_TABLECELL)
+ aAccName = _rTable.GetAccessibleObjectName( TCTYPE_TABLECELL, _nRowPos, _nColPos );
+ else if(_eType == TCTYPE_ROWHEADERCELL)
+ aAccName = _rTable.GetAccessibleObjectName( TCTYPE_ROWHEADERCELL, _nRowPos, 0 );
+ else if(_eType == TCTYPE_COLUMNHEADERCELL)
+ aAccName = _rTable.GetAccessibleObjectName( TCTYPE_COLUMNHEADERCELL, 0, _nRowPos );
+ implSetName( aAccName );
+ }
+
+ // -----------------------------------------------------------------------------
+ AccessibleGridControlCell::~AccessibleGridControlCell()
+ {
+ }
+
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleGridControlCell::grabFocus() throw ( RuntimeException )
+ {
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ m_aTable.GoToCell( m_nColPos, m_nRowPos );
+ }
+ //// -----------------------------------------------------------------------------
+ // implementation of a table cell
+ ::rtl::OUString AccessibleGridControlTableCell::implGetText()
+ {
+ ensureIsAlive();
+ return m_aTable.GetAccessibleCellText( getRowPos(), getColumnPos() );
+ }
+
+ ::com::sun::star::lang::Locale AccessibleGridControlTableCell::implGetLocale()
+ {
+ ensureIsAlive();
+ return m_aTable.GetAccessible()->getAccessibleContext()->getLocale();
+ }
+
+ void AccessibleGridControlTableCell::implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex )
+ {
+ nStartIndex = 0;
+ nEndIndex = 0;
+ }
+
+ AccessibleGridControlTableCell::AccessibleGridControlTableCell(const Reference<XAccessible >& _rxParent,
+ IAccessibleTable& _rTable,
+ sal_Int32 _nRowPos,
+ sal_uInt16 _nColPos,
+ AccessibleTableControlObjType eObjType)
+ :AccessibleGridControlCell( _rxParent, _rTable, _nRowPos, _nColPos, eObjType )
+ {
+ }
+
+ // XInterface -------------------------------------------------------------
+
+ /** Queries for a new interface. */
+ ::com::sun::star::uno::Any SAL_CALL AccessibleGridControlTableCell::queryInterface(
+ const ::com::sun::star::uno::Type& rType )
+ throw ( ::com::sun::star::uno::RuntimeException )
+ {
+ Any aRet = AccessibleGridControlCell::queryInterface(rType);
+ if ( !aRet.hasValue() )
+ aRet = AccessibleTextHelper_BASE::queryInterface(rType);
+ return aRet;
+ }
+
+ /** Aquires the object (calls acquire() on base class). */
+ void SAL_CALL AccessibleGridControlTableCell::acquire() throw ()
+ {
+ AccessibleGridControlCell::acquire();
+ }
+
+ /** Releases the object (calls release() on base class). */
+ void SAL_CALL AccessibleGridControlTableCell::release() throw ()
+ {
+ AccessibleGridControlCell::release();
+ }
+
+ ::com::sun::star::awt::Rectangle SAL_CALL AccessibleGridControlTableCell::getCharacterBounds( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+
+ ensureIsAlive();
+ if ( !implIsValidIndex( nIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ ::com::sun::star::awt::Rectangle aRect;
+
+ if ( &m_aTable )
+ aRect = AWTRectangle( m_aTable.GetFieldCharacterBounds( getRowPos(), getColumnPos(), nIndex ) );
+ return aRect;
+ }
+
+ sal_Int32 SAL_CALL AccessibleGridControlTableCell::getIndexAtPoint( const ::com::sun::star::awt::Point& _aPoint ) throw (RuntimeException)
+ {
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+
+ return m_aTable.GetFieldIndexAtPoint( getRowPos(), getColumnPos(), VCLPoint( _aPoint ) );
+ }
+
+ /** @return
+ The name of this class.
+ */
+ ::rtl::OUString SAL_CALL AccessibleGridControlTableCell::getImplementationName()
+ throw ( ::com::sun::star::uno::RuntimeException )
+ {
+ return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleGridControlTableCell" ) );
+ }
+
+ /** @return The count of visible children. */
+ sal_Int32 SAL_CALL AccessibleGridControlTableCell::getAccessibleChildCount()
+ throw ( ::com::sun::star::uno::RuntimeException )
+ {
+ return 0;
+ }
+
+ /** @return The XAccessible interface of the specified child. */
+ ::com::sun::star::uno::Reference<
+ ::com::sun::star::accessibility::XAccessible > SAL_CALL
+ AccessibleGridControlTableCell::getAccessibleChild( sal_Int32 )
+ throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
+ ::com::sun::star::uno::RuntimeException )
+ {
+ throw ::com::sun::star::lang::IndexOutOfBoundsException();
+ }
+
+ /** Creates a new AccessibleStateSetHelper and fills it with states of the
+ current object.
+ @return
+ A filled AccessibleStateSetHelper.
+ */
+ ::utl::AccessibleStateSetHelper* AccessibleGridControlTableCell::implCreateStateSetHelper()
+ {
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+
+ ::utl::AccessibleStateSetHelper* pStateSetHelper = new ::utl::AccessibleStateSetHelper;
+
+ if( isAlive() )
+ {
+ // SHOWING done with mxParent
+ if( implIsShowing() )
+ pStateSetHelper->AddState( AccessibleStateType::SHOWING );
+
+ m_aTable.FillAccessibleStateSetForCell( *pStateSetHelper, getRowPos(), static_cast< sal_uInt16 >( getColumnPos() ) );
+ }
+ else
+ pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
+
+ return pStateSetHelper;
+ }
+
+
+ // XAccessible ------------------------------------------------------------
+
+ /** @return The XAccessibleContext interface of this object. */
+ Reference< XAccessibleContext > SAL_CALL AccessibleGridControlTableCell::getAccessibleContext() throw ( RuntimeException )
+ {
+ ensureIsAlive();
+ return this;
+ }
+
+ // XAccessibleContext -----------------------------------------------------
+
+ sal_Int32 SAL_CALL AccessibleGridControlTableCell::getAccessibleIndexInParent()
+ throw ( ::com::sun::star::uno::RuntimeException )
+ {
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+
+ return ( getRowPos() * m_aTable.GetColumnCount() ) + getColumnPos();
+ }
+
+ sal_Int32 SAL_CALL AccessibleGridControlTableCell::getCaretPosition( ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ return -1;
+ }
+ sal_Bool SAL_CALL AccessibleGridControlTableCell::setCaretPosition ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
+ {
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+
+ if ( !implIsValidRange( nIndex, nIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ return sal_False;
+ }
+ sal_Unicode SAL_CALL AccessibleGridControlTableCell::getCharacter( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
+ {
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ return OCommonAccessibleText::getCharacter( nIndex );
+ }
+ ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL AccessibleGridControlTableCell::getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
+ {
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+
+ ::rtl::OUString sText( implGetText() );
+
+ if ( !implIsValidIndex( nIndex, sText.getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ return ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >();
+ }
+ sal_Int32 SAL_CALL AccessibleGridControlTableCell::getCharacterCount( ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ return OCommonAccessibleText::getCharacterCount( );
+ }
+
+ ::rtl::OUString SAL_CALL AccessibleGridControlTableCell::getSelectedText( ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ return OCommonAccessibleText::getSelectedText( );
+ }
+ sal_Int32 SAL_CALL AccessibleGridControlTableCell::getSelectionStart( ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ return OCommonAccessibleText::getSelectionStart( );
+ }
+ sal_Int32 SAL_CALL AccessibleGridControlTableCell::getSelectionEnd( ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ return OCommonAccessibleText::getSelectionEnd( );
+ }
+ sal_Bool SAL_CALL AccessibleGridControlTableCell::setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
+ {
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ if ( !implIsValidRange( nStartIndex, nEndIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ return sal_False;
+ }
+ ::rtl::OUString SAL_CALL AccessibleGridControlTableCell::getText( ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ return OCommonAccessibleText::getText( );
+ }
+ ::rtl::OUString SAL_CALL AccessibleGridControlTableCell::getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
+ {
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ return OCommonAccessibleText::getTextRange( nStartIndex, nEndIndex );
+ }
+ ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleGridControlTableCell::getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+ {
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ return OCommonAccessibleText::getTextAtIndex( nIndex ,aTextType);
+ }
+ ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleGridControlTableCell::getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+ {
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ return OCommonAccessibleText::getTextBeforeIndex( nIndex ,aTextType);
+ }
+ ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleGridControlTableCell::getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+ {
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ return OCommonAccessibleText::getTextBehindIndex( nIndex ,aTextType);
+ }
+ sal_Bool SAL_CALL AccessibleGridControlTableCell::copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
+ {
+ TCSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ::rtl::OUString sText = implGetText();
+ checkIndex_Impl( nStartIndex, sText );
+ checkIndex_Impl( nEndIndex, sText );
+
+ //!!! don't know how to put a string into the clipboard
+ return sal_False;
+ }
+
+ Rectangle AccessibleGridControlTableCell::implGetBoundingBox()
+ {
+ return Rectangle(Point(0,0),Point(0,0));//To Do - return headercell rectangle
+ }
+ // -----------------------------------------------------------------------------
+ Rectangle AccessibleGridControlTableCell::implGetBoundingBoxOnScreen()
+ {
+ return Rectangle(Point(0,0),Point(0,0));//To Do - return headercell rectangle
+ }
+}
diff --git a/accessibility/source/extended/AccessibleToolPanelDeck.cxx b/accessibility/source/extended/AccessibleToolPanelDeck.cxx
new file mode 100755
index 000000000000..6976b221a8b5
--- /dev/null
+++ b/accessibility/source/extended/AccessibleToolPanelDeck.cxx
@@ -0,0 +1,412 @@
+/*************************************************************************
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#include "precompiled_accessibility.hxx"
+
+#include "accessibility/extended/AccessibleToolPanelDeck.hxx"
+
+/** === begin UNO includes === **/
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <com/sun/star/lang/DisposedException.hpp>
+/** === end UNO includes === **/
+
+#include <svtools/toolpanel/toolpaneldeck.hxx>
+#include <toolkit/awt/vclxwindow.hxx>
+#include <toolkit/helper/vclunohelper.hxx>
+#include <vcl/svapp.hxx>
+#include <vos/mutex.hxx>
+#include <unotools/accessiblestatesethelper.hxx>
+#include <tools/diagnose_ex.h>
+
+#include <boost/noncopyable.hpp>
+#include <vector>
+
+//......................................................................................................................
+namespace accessibility
+{
+//......................................................................................................................
+
+ /** === begin UNO using === **/
+ using ::com::sun::star::uno::Reference;
+ using ::com::sun::star::uno::XInterface;
+ using ::com::sun::star::uno::UNO_QUERY;
+ using ::com::sun::star::uno::UNO_QUERY_THROW;
+ using ::com::sun::star::uno::UNO_SET_THROW;
+ using ::com::sun::star::uno::Exception;
+ using ::com::sun::star::uno::RuntimeException;
+ using ::com::sun::star::uno::Any;
+ using ::com::sun::star::uno::makeAny;
+ using ::com::sun::star::uno::Sequence;
+ using ::com::sun::star::uno::Type;
+ using ::com::sun::star::accessibility::XAccessible;
+ using ::com::sun::star::accessibility::XAccessibleContext;
+ using ::com::sun::star::lang::DisposedException;
+ using ::com::sun::star::lang::IndexOutOfBoundsException;
+ using ::com::sun::star::lang::Locale;
+ using ::com::sun::star::accessibility::XAccessibleRelationSet;
+ using ::com::sun::star::accessibility::XAccessibleStateSet;
+ using ::com::sun::star::accessibility::IllegalAccessibleComponentStateException;
+ using ::com::sun::star::awt::XFont;
+ /** === end UNO using === **/
+ namespace AccessibleRole = ::com::sun::star::accessibility::AccessibleRole;
+ namespace AccessibleEventId = ::com::sun::star::accessibility::AccessibleEventId;
+ namespace AccessibleStateType = ::com::sun::star::accessibility::AccessibleStateType;
+
+ typedef ::com::sun::star::awt::Rectangle UnoRectangle;
+ typedef ::com::sun::star::awt::Point UnoPoint;
+
+ //==================================================================================================================
+ //= AccessibleToolPanelDeck_Impl - declaration
+ //==================================================================================================================
+ class AccessibleToolPanelDeck_Impl :public ::boost::noncopyable
+ ,public ::svt::IToolPanelDeckListener
+ {
+ public:
+ AccessibleToolPanelDeck_Impl(
+ AccessibleToolPanelDeck& i_rAntiImpl,
+ const Reference< XAccessible >& i_rAccessibleParent,
+ ::svt::ToolPanelDeck& i_rPanelDeck
+ );
+
+ void checkDisposed();
+ bool isDisposed() const { return m_pPanelDeck == NULL; }
+ void dispose();
+
+ ~AccessibleToolPanelDeck_Impl();
+
+ Reference< XAccessible > getOwnAccessible() const;
+ Reference< XAccessible > getActivePanelAccessible();
+
+ protected:
+ // IToolPanelDeckListener
+ virtual void PanelInserted( const ::svt::PToolPanel& i_pPanel, const size_t i_nPosition );
+ virtual void PanelRemoved( const size_t i_nPosition );
+ virtual void ActivePanelChanged( const ::boost::optional< size_t >& i_rOldActive, const ::boost::optional< size_t >& i_rNewActive );
+ virtual void LayouterChanged( const ::svt::PDeckLayouter& i_rNewLayouter );
+ virtual void Dying();
+
+ public:
+ AccessibleToolPanelDeck& m_rAntiImpl;
+ Reference< XAccessible > m_xAccessibleParent;
+ ::svt::ToolPanelDeck* m_pPanelDeck;
+
+ typedef ::std::vector< Reference< XAccessible > > AccessibleChildren;
+ Reference< XAccessible > m_xActivePanelAccessible;
+ };
+
+ //==================================================================================================================
+ //= MethodGuard
+ //==================================================================================================================
+ namespace
+ {
+ class MethodGuard
+ {
+ public:
+ MethodGuard( AccessibleToolPanelDeck_Impl& i_rImpl )
+ :m_aGuard( Application::GetSolarMutex() )
+ {
+ i_rImpl.checkDisposed();
+ }
+ ~MethodGuard()
+ {
+ }
+
+ void clear()
+ {
+ m_aGuard.clear();
+ }
+
+ private:
+ ::vos::OClearableGuard m_aGuard;
+ };
+ }
+
+ //==================================================================================================================
+ //= AccessibleToolPanelDeck_Impl - implementation
+ //==================================================================================================================
+ //------------------------------------------------------------------------------------------------------------------
+ AccessibleToolPanelDeck_Impl::AccessibleToolPanelDeck_Impl( AccessibleToolPanelDeck& i_rAntiImpl, const Reference< XAccessible >& i_rAccessibleParent,
+ ::svt::ToolPanelDeck& i_rPanelDeck )
+ :m_rAntiImpl( i_rAntiImpl )
+ ,m_xAccessibleParent( i_rAccessibleParent )
+ ,m_pPanelDeck( &i_rPanelDeck )
+ ,m_xActivePanelAccessible()
+ {
+ m_pPanelDeck->AddListener( *this );
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ AccessibleToolPanelDeck_Impl::~AccessibleToolPanelDeck_Impl()
+ {
+ if ( !isDisposed() )
+ dispose();
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void AccessibleToolPanelDeck_Impl::dispose()
+ {
+ ENSURE_OR_RETURN_VOID( !isDisposed(), "disposed twice" );
+ m_pPanelDeck->RemoveListener( *this );
+ m_pPanelDeck = NULL;
+ m_xAccessibleParent.clear();
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void AccessibleToolPanelDeck_Impl::checkDisposed()
+ {
+ if ( isDisposed() )
+ throw DisposedException( ::rtl::OUString(), *&m_rAntiImpl );
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ Reference< XAccessible > AccessibleToolPanelDeck_Impl::getOwnAccessible() const
+ {
+ Reference< XAccessible > xOwnAccessible( static_cast< XAccessible* >( m_rAntiImpl.GetVCLXWindow() ) );
+ OSL_ENSURE( xOwnAccessible->getAccessibleContext() == Reference< XAccessibleContext >( &m_rAntiImpl ),
+ "AccessibleToolPanelDeck_Impl::getOwnAccessible: could not retrieve proper XAccessible for /myself!" );
+ return xOwnAccessible;
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ Reference< XAccessible > AccessibleToolPanelDeck_Impl::getActivePanelAccessible()
+ {
+ ENSURE_OR_RETURN( !isDisposed(), "AccessibleToolPanelDeck_Impl::getActivePanelAccessible: already disposed!", NULL );
+
+ if ( !m_xActivePanelAccessible.is() )
+ {
+ ::boost::optional< size_t > aActivePanel( m_pPanelDeck->GetActivePanel() );
+ ENSURE_OR_RETURN( !!aActivePanel, "AccessibleToolPanelDeck_Impl::getActivePanelAccessible: this should not be called without an active panel!", NULL );
+ ::svt::PToolPanel pActivePanel( m_pPanelDeck->GetPanel( *aActivePanel ) );
+ ENSURE_OR_RETURN( pActivePanel.get() != NULL, "AccessibleToolPanelDeck_Impl::getActivePanelAccessible: no active panel!", NULL );
+ m_xActivePanelAccessible = pActivePanel->CreatePanelAccessible( getOwnAccessible() );
+ OSL_ENSURE( m_xActivePanelAccessible.is(), "AccessibleToolPanelDeck_Impl::getActivePanelAccessible: illegal accessible returned by the panel!" );
+ }
+
+ return m_xActivePanelAccessible;
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void AccessibleToolPanelDeck_Impl::PanelInserted( const ::svt::PToolPanel& i_pPanel, const size_t i_nPosition )
+ {
+ (void)i_pPanel;
+ (void)i_nPosition;
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void AccessibleToolPanelDeck_Impl::PanelRemoved( const size_t i_nPosition )
+ {
+ (void)i_nPosition;
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void AccessibleToolPanelDeck_Impl::ActivePanelChanged( const ::boost::optional< size_t >& i_rOldActive, const ::boost::optional< size_t >& i_rNewActive )
+ {
+ if ( !!i_rOldActive )
+ {
+ if ( !m_xActivePanelAccessible.is() )
+ {
+ // again, this might in theory happen if the XAccessible for the active panel has never before been requested.
+ // In this case, just say that all our children are invalid, so they all must be re-requested.
+ m_rAntiImpl.NotifyAccessibleEvent( AccessibleEventId::INVALIDATE_ALL_CHILDREN, Any(), Any() );
+ }
+ else
+ {
+ m_rAntiImpl.NotifyAccessibleEvent( AccessibleEventId::CHILD, makeAny( m_xActivePanelAccessible ), Any() );
+ }
+ }
+
+ m_xActivePanelAccessible.clear();
+
+ if ( !!i_rNewActive )
+ {
+ m_rAntiImpl.NotifyAccessibleEvent( AccessibleEventId::CHILD, Any(), makeAny( getActivePanelAccessible() ) );
+ }
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void AccessibleToolPanelDeck_Impl::LayouterChanged( const ::svt::PDeckLayouter& i_rNewLayouter )
+ {
+ MethodGuard aGuard( *this );
+
+ (void)i_rNewLayouter;
+ m_rAntiImpl.NotifyAccessibleEvent( AccessibleEventId::INVALIDATE_ALL_CHILDREN, Any(), Any() );
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void AccessibleToolPanelDeck_Impl::Dying()
+ {
+ // the tool panel deck is dying, so dispose ourself
+ m_rAntiImpl.dispose();
+ }
+
+ //==================================================================================================================
+ //= AccessibleToolPanelDeck
+ //==================================================================================================================
+ //------------------------------------------------------------------------------------------------------------------
+ AccessibleToolPanelDeck::AccessibleToolPanelDeck( const Reference< XAccessible >& i_rAccessibleParent,
+ ::svt::ToolPanelDeck& i_rPanelDeck )
+ :AccessibleToolPanelDeck_Base( i_rPanelDeck.GetWindowPeer() )
+ ,m_pImpl( new AccessibleToolPanelDeck_Impl( *this, i_rAccessibleParent, i_rPanelDeck ) )
+ {
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ AccessibleToolPanelDeck::~AccessibleToolPanelDeck()
+ {
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ sal_Int32 SAL_CALL AccessibleToolPanelDeck::getAccessibleChildCount( ) throw (RuntimeException)
+ {
+ MethodGuard aGuard( *m_pImpl );
+
+ sal_Int32 nChildCount( m_pImpl->m_pPanelDeck->GetLayouter()->GetAccessibleChildCount() );
+
+ ::boost::optional< size_t > aActivePanel( m_pImpl->m_pPanelDeck->GetActivePanel() );
+ if ( !!aActivePanel )
+ return ++nChildCount;
+
+ return nChildCount;
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ Reference< XAccessible > SAL_CALL AccessibleToolPanelDeck::getAccessibleChild( sal_Int32 i_nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ MethodGuard aGuard( *m_pImpl );
+
+ const sal_Int32 nChildCount( getAccessibleChildCount() );
+ if ( ( i_nIndex < 0 ) || ( i_nIndex >= nChildCount ) )
+ throw IndexOutOfBoundsException( ::rtl::OUString(), *this );
+
+ // first "n" children are provided by the layouter
+ const size_t nLayouterCount( m_pImpl->m_pPanelDeck->GetLayouter()->GetAccessibleChildCount() );
+ if ( size_t( i_nIndex ) < nLayouterCount )
+ return m_pImpl->m_pPanelDeck->GetLayouter()->GetAccessibleChild(
+ size_t( i_nIndex ),
+ m_pImpl->getOwnAccessible()
+ );
+
+ // the last child is the XAccessible of the active panel
+ return m_pImpl->getActivePanelAccessible();
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ Reference< XAccessible > SAL_CALL AccessibleToolPanelDeck::getAccessibleParent( ) throw (RuntimeException)
+ {
+ MethodGuard aGuard( *m_pImpl );
+ const Reference< XAccessible > xParent = implGetForeignControlledParent();
+ if ( xParent.is() )
+ return xParent;
+ return m_pImpl->m_xAccessibleParent;
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ sal_Int16 SAL_CALL AccessibleToolPanelDeck::getAccessibleRole( ) throw (RuntimeException)
+ {
+ MethodGuard aGuard( *m_pImpl );
+ return AccessibleRole::PANEL;
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ Reference< XAccessible > SAL_CALL AccessibleToolPanelDeck::getAccessibleAtPoint( const UnoPoint& i_rPoint ) throw (RuntimeException)
+ {
+ MethodGuard aGuard( *m_pImpl );
+
+ const ::Point aRequestedPoint( VCLUnoHelper::ConvertToVCLPoint( i_rPoint ) );
+ // check the panel window itself
+ const ::Window& rActivePanelAnchor( m_pImpl->m_pPanelDeck->GetPanelWindowAnchor() );
+ const Rectangle aPanelAnchorArea( rActivePanelAnchor.GetPosPixel(), rActivePanelAnchor.GetOutputSizePixel() );
+ if ( aPanelAnchorArea.IsInside( aRequestedPoint ) )
+ // note that this assumes that the Window which actually implements the concrete panel covers
+ // the complete area of its "anchor" Window. But this is ensured by the ToolPanelDeck implementation.
+ return m_pImpl->getActivePanelAccessible();
+
+ // check the XAccessible instances provided by the layouter
+ try
+ {
+ const ::svt::PDeckLayouter pLayouter( m_pImpl->m_pPanelDeck->GetLayouter() );
+ ENSURE_OR_THROW( pLayouter.get() != NULL, "invalid layouter" );
+
+ const size_t nLayouterChildren = pLayouter->GetAccessibleChildCount();
+ for ( size_t i=0; i<nLayouterChildren; ++i )
+ {
+ const Reference< XAccessible > xLayoutItemAccessible( pLayouter->GetAccessibleChild( i, m_pImpl->getOwnAccessible() ), UNO_SET_THROW );
+ const Reference< XAccessibleComponent > xLayoutItemComponent( xLayoutItemAccessible->getAccessibleContext(), UNO_QUERY_THROW );
+ const ::Rectangle aLayoutItemBounds( VCLUnoHelper::ConvertToVCLRect( xLayoutItemComponent->getBounds() ) );
+ if ( aLayoutItemBounds.IsInside( aRequestedPoint ) )
+ return xLayoutItemAccessible;
+ }
+ }
+ catch( const Exception& )
+ {
+ DBG_UNHANDLED_EXCEPTION();
+ }
+
+ return NULL;
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void SAL_CALL AccessibleToolPanelDeck::grabFocus( ) throw (RuntimeException)
+ {
+ MethodGuard aGuard( *m_pImpl );
+ m_pImpl->m_pPanelDeck->GrabFocus();
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void SAL_CALL AccessibleToolPanelDeck::disposing()
+ {
+ AccessibleToolPanelDeck_Base::disposing();
+ m_pImpl->dispose();
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ Reference< XAccessible > AccessibleToolPanelDeck::GetChildAccessible( const VclWindowEvent& i_rVclWindowEvent )
+ {
+ // don't let the base class generate any A11Y events from VclWindowEvent, we completely manage those
+ // A11Y events ourself
+ (void)i_rVclWindowEvent;
+ return NULL;
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void AccessibleToolPanelDeck::FillAccessibleStateSet( ::utl::AccessibleStateSetHelper& i_rStateSet )
+ {
+ AccessibleToolPanelDeck_Base::FillAccessibleStateSet( i_rStateSet );
+ if ( m_pImpl->isDisposed() )
+ {
+ i_rStateSet.AddState( AccessibleStateType::DEFUNC );
+ }
+ else
+ {
+ i_rStateSet.AddState( AccessibleStateType::FOCUSABLE );
+ }
+ }
+
+//......................................................................................................................
+} // namespace accessibility
+//......................................................................................................................
diff --git a/accessibility/source/extended/AccessibleToolPanelDeckTabBar.cxx b/accessibility/source/extended/AccessibleToolPanelDeckTabBar.cxx
new file mode 100644
index 000000000000..7e97e3714172
--- /dev/null
+++ b/accessibility/source/extended/AccessibleToolPanelDeckTabBar.cxx
@@ -0,0 +1,459 @@
+/*************************************************************************
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#include "precompiled_accessibility.hxx"
+
+#include "accessibility/extended/AccessibleToolPanelDeckTabBar.hxx"
+#include "accessibility/extended/AccessibleToolPanelDeckTabBarItem.hxx"
+#include "accessibility/helper/accresmgr.hxx"
+#include "accessibility/helper/accessiblestrings.hrc"
+
+/** === begin UNO includes === **/
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <com/sun/star/lang/DisposedException.hpp>
+/** === end UNO includes === **/
+
+#include <svtools/toolpanel/toolpaneldeck.hxx>
+#include <svtools/toolpanel/paneltabbar.hxx>
+#include <unotools/accessiblestatesethelper.hxx>
+#include <toolkit/awt/vclxwindow.hxx>
+#include <toolkit/helper/vclunohelper.hxx>
+#include <vcl/svapp.hxx>
+#include <vcl/button.hxx>
+#include <vos/mutex.hxx>
+#include <tools/diagnose_ex.h>
+
+#include <vector>
+
+//......................................................................................................................
+namespace accessibility
+{
+//......................................................................................................................
+
+ /** === begin UNO using === **/
+ using ::com::sun::star::uno::Reference;
+ using ::com::sun::star::uno::XInterface;
+ using ::com::sun::star::uno::UNO_QUERY;
+ using ::com::sun::star::uno::UNO_QUERY_THROW;
+ using ::com::sun::star::uno::UNO_SET_THROW;
+ using ::com::sun::star::uno::Exception;
+ using ::com::sun::star::uno::RuntimeException;
+ using ::com::sun::star::uno::Any;
+ using ::com::sun::star::uno::makeAny;
+ using ::com::sun::star::uno::Sequence;
+ using ::com::sun::star::uno::Type;
+ using ::com::sun::star::accessibility::XAccessible;
+ using ::com::sun::star::lang::DisposedException;
+ using ::com::sun::star::lang::IndexOutOfBoundsException;
+ using ::com::sun::star::accessibility::XAccessibleContext;
+ /** === end UNO using === **/
+
+ namespace AccessibleRole = ::com::sun::star::accessibility::AccessibleRole;
+ namespace AccessibleEventId = ::com::sun::star::accessibility::AccessibleEventId;
+ namespace AccessibleStateType = ::com::sun::star::accessibility::AccessibleStateType;
+
+ typedef ::com::sun::star::awt::Point UnoPoint;
+ typedef ::com::sun::star::awt::Size UnoSize;
+ typedef ::com::sun::star::awt::Rectangle UnoRectangle;
+
+ //==================================================================================================================
+ //= AccessibleWrapper
+ //==================================================================================================================
+ typedef ::cppu::WeakImplHelper1< XAccessible > AccessibleWrapper_Base;
+ class AccessibleWrapper : public AccessibleWrapper_Base
+ {
+ public:
+ AccessibleWrapper( const Reference< XAccessibleContext >& i_rContext )
+ :m_xContext( i_rContext )
+ {
+ }
+
+ // XAccessible
+ virtual Reference< XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (RuntimeException)
+ {
+ return m_xContext;
+ }
+
+ private:
+ const Reference< XAccessibleContext > m_xContext;
+ };
+
+ //==================================================================================================================
+ //= AccessibleToolPanelTabBar_Impl
+ //==================================================================================================================
+ class AccessibleToolPanelTabBar_Impl :public ::boost::noncopyable
+ ,public ::svt::IToolPanelDeckListener
+ {
+ public:
+ AccessibleToolPanelTabBar_Impl(
+ AccessibleToolPanelTabBar& i_rAntiImpl,
+ const Reference< XAccessible >& i_rAccessibleParent,
+ ::svt::IToolPanelDeck& i_rPanelDeck,
+ ::svt::PanelTabBar& i_rTabBar
+ );
+ ~AccessibleToolPanelTabBar_Impl();
+
+ void checkDisposed();
+ bool isDisposed() const { return m_pPanelDeck == NULL; }
+ void dispose();
+
+ ::svt::IToolPanelDeck* getPanelDeck() const { return m_pPanelDeck; }
+ ::svt::PanelTabBar* getTabBar() const { return m_pTabBar; }
+ const Reference< XAccessible >& getAccessibleParent() const { return m_xAccessibleParent; }
+ Reference< XAccessible > getAccessiblePanelItem( size_t i_nPosition );
+ Reference< XAccessible > getOwnAccessible() const;
+
+ protected:
+ // IToolPanelDeckListener
+ virtual void PanelInserted( const ::svt::PToolPanel& i_pPanel, const size_t i_nPosition );
+ virtual void PanelRemoved( const size_t i_nPosition );
+ virtual void ActivePanelChanged( const ::boost::optional< size_t >& i_rOldActive, const ::boost::optional< size_t >& i_rNewActive );
+ virtual void LayouterChanged( const ::svt::PDeckLayouter& i_rNewLayouter );
+ virtual void Dying();
+
+ DECL_LINK( OnWindowEvent, const VclSimpleEvent* );
+
+ private:
+ AccessibleToolPanelTabBar& m_rAntiImpl;
+ Reference< XAccessible > m_xAccessibleParent;
+ ::svt::IToolPanelDeck* m_pPanelDeck;
+ ::svt::PanelTabBar* m_pTabBar;
+ ::std::vector< Reference< XAccessible > > m_aChildren;
+ };
+
+ //------------------------------------------------------------------------------------------------------------------
+ AccessibleToolPanelTabBar_Impl::AccessibleToolPanelTabBar_Impl( AccessibleToolPanelTabBar& i_rAntiImpl,
+ const Reference< XAccessible >& i_rAccessibleParent, ::svt::IToolPanelDeck& i_rPanelDeck, ::svt::PanelTabBar& i_rTabBar )
+ :m_rAntiImpl( i_rAntiImpl )
+ ,m_xAccessibleParent( i_rAccessibleParent )
+ ,m_pPanelDeck( &i_rPanelDeck )
+ ,m_pTabBar( &i_rTabBar )
+ ,m_aChildren()
+ {
+ m_pPanelDeck->AddListener( *this );
+ m_aChildren.resize( m_pPanelDeck->GetPanelCount() );
+
+ const String sAccessibleDescription( TK_RES_STRING( RID_STR_ACC_DESC_PANELDECL_TABBAR ) );
+ i_rTabBar.SetAccessibleName( sAccessibleDescription );
+ i_rTabBar.SetAccessibleDescription( sAccessibleDescription );
+
+ i_rTabBar.GetScrollButton( true ).AddEventListener( LINK( this, AccessibleToolPanelTabBar_Impl, OnWindowEvent ) );
+ i_rTabBar.GetScrollButton( false ).AddEventListener( LINK( this, AccessibleToolPanelTabBar_Impl, OnWindowEvent ) );
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void AccessibleToolPanelTabBar_Impl::checkDisposed()
+ {
+ if ( isDisposed() )
+ throw DisposedException( ::rtl::OUString(), *&m_rAntiImpl );
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ AccessibleToolPanelTabBar_Impl::~AccessibleToolPanelTabBar_Impl()
+ {
+ if ( !isDisposed() )
+ dispose();
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void AccessibleToolPanelTabBar_Impl::dispose()
+ {
+ ENSURE_OR_RETURN_VOID( !isDisposed(), "disposed twice" );
+ m_pPanelDeck->RemoveListener( *this );
+ m_pPanelDeck = NULL;
+
+ m_pTabBar->GetScrollButton( true ).RemoveEventListener( LINK( this, AccessibleToolPanelTabBar_Impl, OnWindowEvent ) );
+ m_pTabBar->GetScrollButton( false ).RemoveEventListener( LINK( this, AccessibleToolPanelTabBar_Impl, OnWindowEvent ) );
+ m_pTabBar = NULL;
+
+ m_xAccessibleParent.clear();
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ Reference< XAccessible > AccessibleToolPanelTabBar_Impl::getAccessiblePanelItem( size_t i_nPosition )
+ {
+ ENSURE_OR_RETURN( !isDisposed(), "AccessibleToolPanelTabBar_Impl::getAccessiblePanelItem: already disposed!", NULL );
+ ENSURE_OR_RETURN( i_nPosition < m_aChildren.size(), "AccessibleToolPanelTabBar_Impl::getAccessiblePanelItem: invalid index!", NULL );
+
+ Reference< XAccessible >& rAccessibleChild( m_aChildren[ i_nPosition ] );
+ if ( !rAccessibleChild.is() )
+ {
+ ::rtl::Reference< AccessibleToolPanelDeckTabBarItem > pAccesibleItemContext( new AccessibleToolPanelDeckTabBarItem(
+ getOwnAccessible(), *m_pPanelDeck, *m_pTabBar, i_nPosition ) );
+ rAccessibleChild.set( new AccessibleWrapper( pAccesibleItemContext.get() ) );
+ pAccesibleItemContext->lateInit( rAccessibleChild );
+ }
+ return rAccessibleChild;
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ Reference< XAccessible > AccessibleToolPanelTabBar_Impl::getOwnAccessible() const
+ {
+ Reference< XAccessible > xOwnAccessible( static_cast< XAccessible* >( m_rAntiImpl.GetVCLXWindow() ) );
+ OSL_ENSURE( xOwnAccessible->getAccessibleContext() == Reference< XAccessibleContext >( &m_rAntiImpl ),
+ "AccessibleToolPanelTabBar_Impl::getOwnAccessible: could not retrieve proper XAccessible for /myself!" );
+ return xOwnAccessible;
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void AccessibleToolPanelTabBar_Impl::PanelInserted( const ::svt::PToolPanel& i_pPanel, const size_t i_nPosition )
+ {
+ ENSURE_OR_RETURN_VOID( i_nPosition <= m_aChildren.size(), "AccessibleToolPanelTabBar_Impl::PanelInserted: illegal position (or invalid cache!)" );
+ (void)i_pPanel;
+ m_aChildren.insert( m_aChildren.begin() + i_nPosition, NULL );
+ m_rAntiImpl.NotifyAccessibleEvent( AccessibleEventId::CHILD, Any(), makeAny( getAccessiblePanelItem( i_nPosition ) ) );
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void AccessibleToolPanelTabBar_Impl::PanelRemoved( const size_t i_nPosition )
+ {
+ ENSURE_OR_RETURN_VOID( i_nPosition < m_aChildren.size(), "AccessibleToolPanelTabBar_Impl::PanelInserted: illegal position (or invalid cache!)" );
+
+ const Reference< XAccessible > xOldChild( getAccessiblePanelItem( i_nPosition ) );
+ m_aChildren.erase( m_aChildren.begin() + i_nPosition );
+ m_rAntiImpl.NotifyAccessibleEvent( AccessibleEventId::CHILD, makeAny( xOldChild ), Any() );
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void AccessibleToolPanelTabBar_Impl::ActivePanelChanged( const ::boost::optional< size_t >& i_rOldActive, const ::boost::optional< size_t >& i_rNewActive )
+ {
+ (void)i_rOldActive;
+ (void)i_rNewActive;
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void AccessibleToolPanelTabBar_Impl::LayouterChanged( const ::svt::PDeckLayouter& i_rNewLayouter )
+ {
+ (void)i_rNewLayouter;
+ m_rAntiImpl.dispose();
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void AccessibleToolPanelTabBar_Impl::Dying()
+ {
+ m_rAntiImpl.dispose();
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ IMPL_LINK( AccessibleToolPanelTabBar_Impl, OnWindowEvent, const VclSimpleEvent*, i_pEvent )
+ {
+ ENSURE_OR_RETURN( !isDisposed(), "AccessibleToolPanelTabBar_Impl::OnWindowEvent: already disposed!", 0L );
+
+ const VclWindowEvent* pWindowEvent( dynamic_cast< const VclWindowEvent* >( i_pEvent ) );
+ if ( !pWindowEvent )
+ return 0L;
+
+ const bool bForwardButton = ( pWindowEvent->GetWindow() == &m_pTabBar->GetScrollButton( true ) );
+ const bool bBackwardButton = ( pWindowEvent->GetWindow() == &m_pTabBar->GetScrollButton( false ) );
+ ENSURE_OR_RETURN( bForwardButton || bBackwardButton, "AccessibleToolPanelTabBar_Impl::OnWindowEvent: where does this come from?", 0L );
+
+ const bool bShow = ( i_pEvent->GetId() == VCLEVENT_WINDOW_SHOW );
+ const bool bHide = ( i_pEvent->GetId() == VCLEVENT_WINDOW_HIDE );
+ if ( !bShow && !bHide )
+ // not interested in events other than visibility changes
+ return 0L;
+
+ const Reference< XAccessible > xButtonAccessible( m_pTabBar->GetScrollButton( bForwardButton ).GetAccessible() );
+ const Any aOldChild( bHide ? xButtonAccessible : Reference< XAccessible >() );
+ const Any aNewChild( bShow ? xButtonAccessible : Reference< XAccessible >() );
+ m_rAntiImpl.NotifyAccessibleEvent( AccessibleEventId::CHILD, aOldChild, aNewChild );
+
+ return 1L;
+ }
+
+ //==================================================================================================================
+ //= MethodGuard
+ //==================================================================================================================
+ namespace
+ {
+ class MethodGuard
+ {
+ public:
+ MethodGuard( AccessibleToolPanelTabBar_Impl& i_rImpl )
+ :m_aGuard( Application::GetSolarMutex() )
+ {
+ i_rImpl.checkDisposed();
+ }
+ ~MethodGuard()
+ {
+ }
+
+ void clear()
+ {
+ m_aGuard.clear();
+ }
+
+ private:
+ ::vos::OClearableGuard m_aGuard;
+ };
+ }
+
+ //==================================================================================================================
+ //= AccessibleToolPanelTabBar
+ //==================================================================================================================
+ //------------------------------------------------------------------------------------------------------------------
+ AccessibleToolPanelTabBar::AccessibleToolPanelTabBar( const Reference< XAccessible >& i_rAccessibleParent,
+ ::svt::IToolPanelDeck& i_rPanelDeck, ::svt::PanelTabBar& i_rTabBar )
+ :AccessibleToolPanelTabBar_Base( i_rTabBar.GetWindowPeer() )
+ ,m_pImpl( new AccessibleToolPanelTabBar_Impl( *this, i_rAccessibleParent, i_rPanelDeck, i_rTabBar ) )
+ {
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ AccessibleToolPanelTabBar::~AccessibleToolPanelTabBar()
+ {
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ sal_Int32 SAL_CALL AccessibleToolPanelTabBar::getAccessibleChildCount( ) throw (RuntimeException)
+ {
+ MethodGuard aGuard( *m_pImpl );
+
+ const bool bHasScrollBack = m_pImpl->getTabBar()->GetScrollButton( false ).IsVisible();
+ const bool bHasScrollForward = m_pImpl->getTabBar()->GetScrollButton( true ).IsVisible();
+
+ return m_pImpl->getPanelDeck()->GetPanelCount()
+ + ( bHasScrollBack ? 1 : 0 )
+ + ( bHasScrollForward ? 1 : 0 );
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ Reference< XAccessible > SAL_CALL AccessibleToolPanelTabBar::getAccessibleChild( sal_Int32 i_nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ MethodGuard aGuard( *m_pImpl );
+
+ const bool bHasScrollBack = m_pImpl->getTabBar()->GetScrollButton( false ).IsVisible();
+ const bool bHasScrollForward = m_pImpl->getTabBar()->GetScrollButton( true ).IsVisible();
+
+ const bool bScrollBackRequested = ( bHasScrollBack && ( i_nIndex == 0 ) );
+ const bool bScrollForwardRequested = ( bHasScrollForward && ( i_nIndex == getAccessibleChildCount() - 1 ) );
+ OSL_ENSURE( !( bScrollBackRequested && bScrollForwardRequested ), "AccessibleToolPanelTabBar::getAccessibleChild: ouch!" );
+
+ if ( bScrollBackRequested || bScrollForwardRequested )
+ {
+ Reference< XAccessible > xScrollButtonAccessible( m_pImpl->getTabBar()->GetScrollButton( bScrollForwardRequested ).GetAccessible() );
+ ENSURE_OR_RETURN( xScrollButtonAccessible.is(), "AccessibleToolPanelTabBar::getAccessibleChild: invalid button accessible!", NULL );
+ #if OSL_DEBUG_LEVEL > 0
+ Reference< XAccessibleContext > xScrollButtonContext( xScrollButtonAccessible->getAccessibleContext() );
+ ENSURE_OR_RETURN( xScrollButtonContext.is(), "AccessibleToolPanelTabBar::getAccessibleChild: invalid button accessible context!", xScrollButtonAccessible );
+ OSL_ENSURE( xScrollButtonContext->getAccessibleParent() == m_pImpl->getOwnAccessible(),
+ "AccessibleToolPanelTabBar::getAccessibleChild: wrong parent at the button's accesible!" );
+ #endif
+ return xScrollButtonAccessible;
+ }
+
+ return m_pImpl->getAccessiblePanelItem( i_nIndex - ( bHasScrollBack ? 1 : 0 ) );
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ Reference< XAccessible > SAL_CALL AccessibleToolPanelTabBar::getAccessibleParent( ) throw (RuntimeException)
+ {
+ MethodGuard aGuard( *m_pImpl );
+ return m_pImpl->getAccessibleParent();
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ sal_Int16 SAL_CALL AccessibleToolPanelTabBar::getAccessibleRole( ) throw (RuntimeException)
+ {
+ MethodGuard aGuard( *m_pImpl );
+ return AccessibleRole::PAGE_TAB_LIST;
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ namespace
+ {
+ bool lcl_covers( const ::Window& i_rWindow, const ::Point& i_rPoint )
+ {
+ const Rectangle aWindowBounds( i_rWindow.GetWindowExtentsRelative( i_rWindow.GetParent() ) );
+ return aWindowBounds.IsInside( i_rPoint );
+ }
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ Reference< XAccessible > SAL_CALL AccessibleToolPanelTabBar::getAccessibleAtPoint( const UnoPoint& i_rPoint ) throw (RuntimeException)
+ {
+ MethodGuard aGuard( *m_pImpl );
+
+ // check the tab items
+ const UnoPoint aOwnScreenPos( getLocationOnScreen() );
+ const ::Point aRequestedScreenPoint( i_rPoint.X + aOwnScreenPos.X, i_rPoint.Y + aOwnScreenPos.Y );
+
+ for ( size_t i=0; i<m_pImpl->getPanelDeck()->GetPanelCount(); ++i )
+ {
+ const ::Rectangle aItemScreenRect( m_pImpl->getTabBar()->GetItemScreenRect(i) );
+ if ( aItemScreenRect.IsInside( aRequestedScreenPoint ) )
+ return m_pImpl->getAccessiblePanelItem(i);
+ }
+
+ // check the scroll buttons
+ const ::Point aRequestedClientPoint( VCLUnoHelper::ConvertToVCLPoint( i_rPoint ) );
+
+ const bool bHasScrollBack = m_pImpl->getTabBar()->GetScrollButton( false ).IsVisible();
+ if ( bHasScrollBack && lcl_covers( m_pImpl->getTabBar()->GetScrollButton( false ), aRequestedClientPoint ) )
+ return m_pImpl->getTabBar()->GetScrollButton( false ).GetAccessible();
+
+ const bool bHasScrollForward = m_pImpl->getTabBar()->GetScrollButton( true ).IsVisible();
+ if ( bHasScrollForward && lcl_covers( m_pImpl->getTabBar()->GetScrollButton( true ), aRequestedClientPoint ) )
+ return m_pImpl->getTabBar()->GetScrollButton( true ).GetAccessible();
+
+ // no hit
+ return NULL;
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void SAL_CALL AccessibleToolPanelTabBar::disposing()
+ {
+ AccessibleToolPanelTabBar_Base::disposing();
+ m_pImpl->dispose();
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ Reference< XAccessible > AccessibleToolPanelTabBar::GetChildAccessible( const VclWindowEvent& i_rVclWindowEvent )
+ {
+ // don't let the base class generate any A11Y events from VclWindowEvent, we completely manage those
+ // A11Y events ourself
+ (void)i_rVclWindowEvent;
+ return NULL;
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void AccessibleToolPanelTabBar::FillAccessibleStateSet( ::utl::AccessibleStateSetHelper& i_rStateSet )
+ {
+ AccessibleToolPanelTabBar_Base::FillAccessibleStateSet( i_rStateSet );
+ i_rStateSet.AddState( AccessibleStateType::FOCUSABLE );
+
+ ENSURE_OR_RETURN_VOID( !m_pImpl->isDisposed(), "AccessibleToolPanelTabBar::FillAccessibleStateSet: already disposed!" );
+ if ( m_pImpl->getTabBar()->IsVertical() )
+ i_rStateSet.AddState( AccessibleStateType::VERTICAL );
+ else
+ i_rStateSet.AddState( AccessibleStateType::HORIZONTAL );
+ }
+
+//......................................................................................................................
+} // namespace accessibility
+//......................................................................................................................
diff --git a/accessibility/source/extended/AccessibleToolPanelDeckTabBarItem.cxx b/accessibility/source/extended/AccessibleToolPanelDeckTabBarItem.cxx
new file mode 100644
index 000000000000..0cdfd8480457
--- /dev/null
+++ b/accessibility/source/extended/AccessibleToolPanelDeckTabBarItem.cxx
@@ -0,0 +1,455 @@
+/*************************************************************************
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#include "precompiled_accessibility.hxx"
+
+#include "accessibility/extended/AccessibleToolPanelDeckTabBarItem.hxx"
+
+/** === begin UNO includes === **/
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/lang/DisposedException.hpp>
+/** === end UNO includes === **/
+
+#include <svtools/toolpanel/toolpaneldeck.hxx>
+#include <svtools/toolpanel/paneltabbar.hxx>
+#include <unotools/accessiblestatesethelper.hxx>
+#include <unotools/accessiblerelationsethelper.hxx>
+#include <tools/diagnose_ex.h>
+#include <vcl/svapp.hxx>
+#include <vos/mutex.hxx>
+
+//......................................................................................................................
+namespace accessibility
+{
+//......................................................................................................................
+
+ typedef ::com::sun::star::awt::Rectangle UnoRectangle;
+ typedef ::com::sun::star::awt::Point UnoPoint;
+
+ /** === begin UNO using === **/
+ using ::com::sun::star::uno::Reference;
+ using ::com::sun::star::uno::XInterface;
+ using ::com::sun::star::uno::UNO_QUERY;
+ using ::com::sun::star::uno::UNO_QUERY_THROW;
+ using ::com::sun::star::uno::UNO_SET_THROW;
+ using ::com::sun::star::uno::Exception;
+ using ::com::sun::star::uno::RuntimeException;
+ using ::com::sun::star::uno::Any;
+ using ::com::sun::star::uno::makeAny;
+ using ::com::sun::star::uno::Sequence;
+ using ::com::sun::star::uno::Type;
+ using ::com::sun::star::accessibility::XAccessible;
+ using ::com::sun::star::lang::DisposedException;
+ using ::com::sun::star::lang::IndexOutOfBoundsException;
+ using ::com::sun::star::accessibility::XAccessibleRelationSet;
+ using ::com::sun::star::accessibility::XAccessibleStateSet;
+ using ::com::sun::star::accessibility::XAccessibleComponent;
+ using ::com::sun::star::accessibility::XAccessibleExtendedComponent;
+ using ::com::sun::star::awt::XFont;
+ /** === end UNO using === **/
+
+ namespace AccessibleRole = ::com::sun::star::accessibility::AccessibleRole;
+ namespace AccessibleStateType = ::com::sun::star::accessibility::AccessibleStateType;
+ namespace AccessibleEventId = ::com::sun::star::accessibility::AccessibleEventId;
+
+ //==================================================================================================================
+ //= AccessibleToolPanelDeckTabBarItem_Impl
+ //==================================================================================================================
+ class AccessibleToolPanelDeckTabBarItem_Impl : public ::svt::IToolPanelDeckListener
+ {
+ public:
+ AccessibleToolPanelDeckTabBarItem_Impl(
+ AccessibleToolPanelDeckTabBarItem& i_rAntiImpl,
+ const Reference< XAccessible >& i_rAccessibleParent,
+ ::svt::IToolPanelDeck& i_rPanelDeck,
+ ::svt::PanelTabBar& i_rTabBar,
+ const size_t i_nItemPos
+ );
+ ~AccessibleToolPanelDeckTabBarItem_Impl();
+
+ ::svt::PanelTabBar* getTabBar() const { return m_pTabBar; }
+
+ // IToolPanelDeckListener
+ virtual void PanelInserted( const ::svt::PToolPanel& i_pPanel, const size_t i_nPosition );
+ virtual void PanelRemoved( const size_t i_nPosition );
+ virtual void ActivePanelChanged( const ::boost::optional< size_t >& i_rOldActive, const ::boost::optional< size_t >& i_rNewActive );
+ virtual void LayouterChanged( const ::svt::PDeckLayouter& i_rNewLayouter );
+ virtual void Dying();
+
+ public:
+ bool isDisposed() const { return m_pPanelDeck == NULL; }
+ void checkDisposed() const;
+ void dispose();
+
+ const Reference< XAccessible >&
+ getAccessibleParent() const { return m_xAccessibleParent; }
+ size_t getItemPos() const { return m_nItemPos; }
+
+ Reference< XAccessibleComponent > getParentAccessibleComponent() const;
+ ::svt::IToolPanelDeck* getPanelDeck() const { return m_pPanelDeck; }
+ ::rtl::OUString getPanelDisplayName();
+
+ private:
+ void impl_notifyBoundRectChanges();
+ void impl_notifyStateChange( const sal_Int16 i_nLostState, const sal_Int16 i_nGainedState );
+
+ private:
+ AccessibleToolPanelDeckTabBarItem& m_rAntiImpl;
+ Reference< XAccessible > m_xAccessibleParent;
+ ::svt::IToolPanelDeck* m_pPanelDeck;
+ ::svt::PanelTabBar* m_pTabBar;
+ size_t m_nItemPos;
+ };
+
+ //==================================================================================================================
+ //= AccessibleToolPanelDeckTabBarItem_Impl
+ //==================================================================================================================
+ //------------------------------------------------------------------------------------------------------------------
+ AccessibleToolPanelDeckTabBarItem_Impl::AccessibleToolPanelDeckTabBarItem_Impl( AccessibleToolPanelDeckTabBarItem& i_rAntiImpl,
+ const Reference< XAccessible >& i_rAccessibleParent, ::svt::IToolPanelDeck& i_rPanelDeck, ::svt::PanelTabBar& i_rTabBar,
+ const size_t i_nItemPos )
+ :m_rAntiImpl( i_rAntiImpl )
+ ,m_xAccessibleParent( i_rAccessibleParent )
+ ,m_pPanelDeck( &i_rPanelDeck )
+ ,m_pTabBar( &i_rTabBar )
+ ,m_nItemPos( i_nItemPos )
+ {
+ m_pPanelDeck->AddListener( *this );
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ AccessibleToolPanelDeckTabBarItem_Impl::~AccessibleToolPanelDeckTabBarItem_Impl()
+ {
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void AccessibleToolPanelDeckTabBarItem_Impl::checkDisposed() const
+ {
+ if ( isDisposed() )
+ throw DisposedException( ::rtl::OUString(), *&m_rAntiImpl );
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void AccessibleToolPanelDeckTabBarItem_Impl::dispose()
+ {
+ ENSURE_OR_RETURN_VOID( !isDisposed(), "AccessibleToolPanelDeckTabBarItem_Impl::dispose: disposed twice!" );
+
+ m_xAccessibleParent.clear();
+ m_pPanelDeck->RemoveListener( *this );
+ m_pPanelDeck = NULL;
+ m_pTabBar = NULL;
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ Reference< XAccessibleComponent > AccessibleToolPanelDeckTabBarItem_Impl::getParentAccessibleComponent() const
+ {
+ Reference< XAccessible > xAccessibleParent( m_rAntiImpl.getAccessibleParent(), UNO_QUERY_THROW );
+ return Reference< XAccessibleComponent >( xAccessibleParent->getAccessibleContext(), UNO_QUERY );
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ ::rtl::OUString AccessibleToolPanelDeckTabBarItem_Impl::getPanelDisplayName()
+ {
+ const ::svt::PToolPanel pPanel( m_pPanelDeck->GetPanel( getItemPos() ) );
+ if ( pPanel.get() == NULL )
+ throw DisposedException();
+ return pPanel->GetDisplayName();
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void AccessibleToolPanelDeckTabBarItem_Impl::impl_notifyBoundRectChanges()
+ {
+ m_rAntiImpl.NotifyAccessibleEvent( AccessibleEventId::BOUNDRECT_CHANGED, Any(), Any() );
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void AccessibleToolPanelDeckTabBarItem_Impl::impl_notifyStateChange( const sal_Int16 i_nLostState, const sal_Int16 i_nGainedState )
+ {
+ m_rAntiImpl.NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED,
+ i_nLostState > -1 ? makeAny( i_nLostState ) : Any(),
+ i_nGainedState > -1 ? makeAny( i_nGainedState ) : Any()
+ );
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void AccessibleToolPanelDeckTabBarItem_Impl::PanelInserted( const ::svt::PToolPanel& i_pPanel, const size_t i_nPosition )
+ {
+ (void)i_pPanel;
+ if ( i_nPosition <= m_nItemPos )
+ ++m_nItemPos;
+ impl_notifyBoundRectChanges();
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void AccessibleToolPanelDeckTabBarItem_Impl::PanelRemoved( const size_t i_nPosition )
+ {
+ if ( i_nPosition == m_nItemPos )
+ {
+ m_rAntiImpl.dispose();
+ }
+ else if ( i_nPosition < m_nItemPos )
+ {
+ --m_nItemPos;
+ impl_notifyBoundRectChanges();
+ }
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void AccessibleToolPanelDeckTabBarItem_Impl::ActivePanelChanged( const ::boost::optional< size_t >& i_rOldActive, const ::boost::optional< size_t >& i_rNewActive )
+ {
+ if ( m_nItemPos == i_rOldActive )
+ {
+ impl_notifyStateChange( AccessibleStateType::ACTIVE, -1 );
+ impl_notifyStateChange( AccessibleStateType::SELECTED, -1 );
+ }
+ else if ( m_nItemPos == i_rNewActive )
+ {
+ impl_notifyStateChange( -1, AccessibleStateType::ACTIVE );
+ impl_notifyStateChange( -1, AccessibleStateType::SELECTED );
+ }
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void AccessibleToolPanelDeckTabBarItem_Impl::LayouterChanged( const ::svt::PDeckLayouter& i_rNewLayouter )
+ {
+ (void)i_rNewLayouter;
+ // if the tool panel deck has a new layouter, then the old layouter, and thus all items it was
+ // responsible for, died. So do we.
+ dispose();
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ void AccessibleToolPanelDeckTabBarItem_Impl::Dying()
+ {
+ // if the tool panel deck is dying, then its layouter dies, so should we.
+ dispose();
+ }
+
+ //==================================================================================================================
+ //= ItemMethodGuard
+ //==================================================================================================================
+ class ItemMethodGuard
+ {
+ public:
+ ItemMethodGuard( AccessibleToolPanelDeckTabBarItem_Impl& i_rImpl )
+ :m_aGuard( Application::GetSolarMutex() )
+ {
+ i_rImpl.checkDisposed();
+ }
+ ~ItemMethodGuard()
+ {
+ }
+
+ void clear()
+ {
+ m_aGuard.clear();
+ }
+
+ private:
+ ::vos::OClearableGuard m_aGuard;
+ };
+
+ //==================================================================================================================
+ //= AccessibleToolPanelDeckTabBarItem
+ //==================================================================================================================
+ //------------------------------------------------------------------------------------------------------------------
+ AccessibleToolPanelDeckTabBarItem::AccessibleToolPanelDeckTabBarItem( const Reference< XAccessible >& i_rAccessibleParent,
+ ::svt::IToolPanelDeck& i_rPanelDeck, ::svt::PanelTabBar& i_rTabBar, const size_t i_nItemPos )
+ :m_pImpl( new AccessibleToolPanelDeckTabBarItem_Impl( *this, i_rAccessibleParent, i_rPanelDeck, i_rTabBar, i_nItemPos ) )
+ {
+ }
+
+ //------------------------------------------------------------------------------------------------------------------
+ AccessibleToolPanelDeckTabBarItem::~AccessibleToolPanelDeckTabBarItem()
+ {
+ }
+
+ //--------------------------------------------------------------------
+ sal_Int32 SAL_CALL AccessibleToolPanelDeckTabBarItem::getAccessibleChildCount( ) throw (RuntimeException)
+ {
+ return 0;
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessible > SAL_CALL AccessibleToolPanelDeckTabBarItem::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ (void)i;
+ throw IndexOutOfBoundsException( ::rtl::OUString(), *this );
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessible > SAL_CALL AccessibleToolPanelDeckTabBarItem::getAccessibleParent( ) throw (RuntimeException)
+ {
+ ItemMethodGuard aGuard( *m_pImpl );
+ return m_pImpl->getAccessibleParent();
+ }
+
+ //--------------------------------------------------------------------
+ sal_Int16 SAL_CALL AccessibleToolPanelDeckTabBarItem::getAccessibleRole( ) throw (RuntimeException)
+ {
+ return AccessibleRole::PAGE_TAB;
+ }
+
+ //--------------------------------------------------------------------
+ ::rtl::OUString SAL_CALL AccessibleToolPanelDeckTabBarItem::getAccessibleDescription( ) throw (RuntimeException)
+ {
+ ItemMethodGuard aGuard( *m_pImpl );
+ return m_pImpl->getPanelDisplayName();
+ }
+
+ //--------------------------------------------------------------------
+ ::rtl::OUString SAL_CALL AccessibleToolPanelDeckTabBarItem::getAccessibleName( ) throw (RuntimeException)
+ {
+ ItemMethodGuard aGuard( *m_pImpl );
+ return m_pImpl->getPanelDisplayName();
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessibleRelationSet > SAL_CALL AccessibleToolPanelDeckTabBarItem::getAccessibleRelationSet( ) throw (RuntimeException)
+ {
+ ItemMethodGuard aGuard( *m_pImpl );
+ ::utl::AccessibleRelationSetHelper* pRelationSet = new utl::AccessibleRelationSetHelper;
+ return pRelationSet;
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessibleStateSet > SAL_CALL AccessibleToolPanelDeckTabBarItem::getAccessibleStateSet( ) throw (RuntimeException)
+ {
+ ItemMethodGuard aGuard( *m_pImpl );
+
+ ::utl::AccessibleStateSetHelper* pStateSet( new ::utl::AccessibleStateSetHelper );
+ pStateSet->AddState( AccessibleStateType::FOCUSABLE );
+ pStateSet->AddState( AccessibleStateType::SELECTABLE );
+ pStateSet->AddState( AccessibleStateType::ICONIFIED );
+
+ if ( m_pImpl->getItemPos() == m_pImpl->getPanelDeck()->GetActivePanel() )
+ {
+ pStateSet->AddState( AccessibleStateType::ACTIVE );
+ pStateSet->AddState( AccessibleStateType::SELECTED );
+ }
+
+ if ( m_pImpl->getItemPos() == m_pImpl->getTabBar()->GetFocusedPanelItem() )
+ pStateSet->AddState( AccessibleStateType::FOCUSED );
+
+ if ( m_pImpl->getTabBar()->IsEnabled() )
+ pStateSet->AddState( AccessibleStateType::ENABLED );
+
+ if ( m_pImpl->getTabBar()->IsVisible() )
+ {
+ pStateSet->AddState( AccessibleStateType::SHOWING );
+ pStateSet->AddState( AccessibleStateType::VISIBLE );
+ }
+
+ return pStateSet;
+ }
+
+
+ //--------------------------------------------------------------------
+ Reference< XAccessible > SAL_CALL AccessibleToolPanelDeckTabBarItem::getAccessibleAtPoint( const UnoPoint& i_rLocation ) throw (RuntimeException)
+ {
+ ItemMethodGuard aGuard( *m_pImpl );
+ // we do not have children ...
+ (void)i_rLocation;
+ return NULL;
+ }
+
+ //--------------------------------------------------------------------
+ void SAL_CALL AccessibleToolPanelDeckTabBarItem::grabFocus( ) throw (RuntimeException)
+ {
+ ItemMethodGuard aGuard( *m_pImpl );
+ m_pImpl->getTabBar()->FocusPanelItem( m_pImpl->getItemPos() );
+ }
+
+ //--------------------------------------------------------------------
+ ::sal_Int32 SAL_CALL AccessibleToolPanelDeckTabBarItem::getForeground( ) throw (RuntimeException)
+ {
+ ItemMethodGuard aGuard( *m_pImpl );
+ Reference< XAccessibleComponent > xParentComponent( m_pImpl->getParentAccessibleComponent(), UNO_SET_THROW );
+ return xParentComponent->getForeground();
+ }
+
+ //--------------------------------------------------------------------
+ ::sal_Int32 SAL_CALL AccessibleToolPanelDeckTabBarItem::getBackground( ) throw (RuntimeException)
+ {
+ ItemMethodGuard aGuard( *m_pImpl );
+ Reference< XAccessibleComponent > xParentComponent( m_pImpl->getParentAccessibleComponent(), UNO_SET_THROW );
+ return xParentComponent->getBackground();
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XFont > SAL_CALL AccessibleToolPanelDeckTabBarItem::getFont( ) throw (RuntimeException)
+ {
+ ItemMethodGuard aGuard( *m_pImpl );
+ Reference< XAccessibleExtendedComponent > xParentComponent( m_pImpl->getParentAccessibleComponent(), UNO_QUERY_THROW );
+ // TODO: strictly, this is not correct: The TabBar implementation of the TabLayouter might use
+ // a different font ...
+ return xParentComponent->getFont();
+ }
+
+ //--------------------------------------------------------------------
+ ::rtl::OUString SAL_CALL AccessibleToolPanelDeckTabBarItem::getTitledBorderText( ) throw (RuntimeException)
+ {
+ ItemMethodGuard aGuard( *m_pImpl );
+ // no support
+ return ::rtl::OUString();
+ }
+
+ //--------------------------------------------------------------------
+ ::rtl::OUString SAL_CALL AccessibleToolPanelDeckTabBarItem::getToolTipText( ) throw (RuntimeException)
+ {
+ ItemMethodGuard aGuard( *m_pImpl );
+ return m_pImpl->getPanelDisplayName();
+ }
+
+ //--------------------------------------------------------------------
+ UnoRectangle SAL_CALL AccessibleToolPanelDeckTabBarItem::implGetBounds() throw (RuntimeException)
+ {
+ ItemMethodGuard aGuard( *m_pImpl );
+
+ const ::Rectangle aItemScreenRect( m_pImpl->getTabBar()->GetItemScreenRect( m_pImpl->getItemPos() ) );
+
+ Reference< XAccessibleComponent > xParentComponent( m_pImpl->getParentAccessibleComponent(), UNO_SET_THROW );
+ const UnoPoint aParentLocation( xParentComponent->getLocationOnScreen() );
+ return UnoRectangle(
+ aItemScreenRect.Left() - aParentLocation.X,
+ aItemScreenRect.Top() - aParentLocation.Y,
+ aItemScreenRect.GetWidth(),
+ aItemScreenRect.GetHeight()
+ );
+ }
+
+ //--------------------------------------------------------------------
+ void SAL_CALL AccessibleToolPanelDeckTabBarItem::disposing()
+ {
+ ItemMethodGuard aGuard( *m_pImpl );
+ m_pImpl->dispose();
+ }
+
+//......................................................................................................................
+} // namespace accessibility
+//......................................................................................................................
diff --git a/accessibility/source/extended/accessiblebrowseboxcell.cxx b/accessibility/source/extended/accessiblebrowseboxcell.cxx
new file mode 100644
index 000000000000..1c7aca77e603
--- /dev/null
+++ b/accessibility/source/extended/accessiblebrowseboxcell.cxx
@@ -0,0 +1,92 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include "accessibility/extended/accessiblebrowseboxcell.hxx"
+#include <svtools/accessibletableprovider.hxx>
+
+// .................................................................................
+namespace accessibility
+{
+// .................................................................................
+
+ using namespace ::com::sun::star::uno;
+ using namespace ::com::sun::star::awt;
+ using namespace ::com::sun::star::accessibility;
+ using namespace ::svt;
+
+ // =============================================================================
+ // = AccessibleBrowseBoxCell
+ // =============================================================================
+ DBG_NAME( svt_AccessibleBrowseBoxCell )
+ // -----------------------------------------------------------------------------
+ AccessibleBrowseBoxCell::AccessibleBrowseBoxCell(
+ const Reference< XAccessible >& _rxParent, IAccessibleTableProvider& _rBrowseBox,
+ const Reference< XWindow >& _xFocusWindow,
+ sal_Int32 _nRowPos, sal_uInt16 _nColPos, AccessibleBrowseBoxObjType _eType )
+ :AccessibleBrowseBoxBase( _rxParent, _rBrowseBox, _xFocusWindow, _eType )
+ ,m_nRowPos( _nRowPos )
+ ,m_nColPos( _nColPos )
+ {
+ DBG_CTOR( svt_AccessibleBrowseBoxCell, NULL );
+ // set accessible name here, because for that we need the position of the cell
+ // and so the base class isn't capable of doing this
+ sal_Int32 nPos = _nRowPos * _rBrowseBox.GetColumnCount() + _nColPos;
+ ::rtl::OUString aAccName = _rBrowseBox.GetAccessibleObjectName( BBTYPE_TABLECELL, nPos );
+ implSetName( aAccName );
+ }
+
+ // -----------------------------------------------------------------------------
+ AccessibleBrowseBoxCell::~AccessibleBrowseBoxCell()
+ {
+ DBG_DTOR( svt_AccessibleBrowseBoxCell, NULL );
+ }
+
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleBrowseBoxCell::grabFocus() throw ( RuntimeException )
+ {
+ SolarMethodGuard aGuard( *this );
+ mpBrowseBox->GoToCell( m_nRowPos, m_nColPos );
+ }
+ // -----------------------------------------------------------------------------
+ ::Rectangle AccessibleBrowseBoxCell::implGetBoundingBox()
+ {
+ return mpBrowseBox->GetFieldRectPixelAbs( m_nRowPos, m_nColPos, FALSE, FALSE );
+ }
+
+ // -----------------------------------------------------------------------------
+ ::Rectangle AccessibleBrowseBoxCell::implGetBoundingBoxOnScreen()
+ {
+ return mpBrowseBox->GetFieldRectPixelAbs( m_nRowPos, m_nColPos, FALSE );
+ }
+
+// .................................................................................
+} // namespace accessibility
+// .................................................................................
+
+
diff --git a/accessibility/source/extended/accessibleeditbrowseboxcell.cxx b/accessibility/source/extended/accessibleeditbrowseboxcell.cxx
new file mode 100644
index 000000000000..5f5472d04050
--- /dev/null
+++ b/accessibility/source/extended/accessibleeditbrowseboxcell.cxx
@@ -0,0 +1,273 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/extended/accessibleeditbrowseboxcell.hxx>
+#include <svtools/editbrowsebox.hxx>
+#include <comphelper/processfactory.hxx>
+#include <com/sun/star/accessibility/XAccessibleText.hpp>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+
+
+// .................................................................................
+namespace accessibility
+{
+// .................................................................................
+
+ using namespace com::sun::star::accessibility;
+ using namespace ::com::sun::star::uno;
+ using namespace ::com::sun::star::lang;
+ using namespace ::com::sun::star::awt;
+ using namespace ::comphelper;
+ using namespace ::svt;
+
+ DBG_NAME( acc_EditBrowseBoxTableCell )
+ // -----------------------------------------------------------------------------
+ EditBrowseBoxTableCell::EditBrowseBoxTableCell(
+ const com::sun::star::uno::Reference< XAccessible >& _rxParent,
+ const com::sun::star::uno::Reference< XAccessible >& _rxOwningAccessible,
+ const com::sun::star::uno::Reference< XAccessibleContext >& _xControlChild,
+ IAccessibleTableProvider& _rBrowseBox,
+ const Reference< XWindow >& _xFocusWindow,
+ sal_Int32 _nRowPos,
+ sal_uInt16 _nColPos)
+ :AccessibleBrowseBoxCell( _rxParent, _rBrowseBox, _xFocusWindow, _nRowPos, _nColPos )
+ ,OAccessibleContextWrapperHelper( ::comphelper::getProcessServiceFactory(), rBHelper, _xControlChild, _rxOwningAccessible, _rxParent )
+ {
+ DBG_CTOR( acc_EditBrowseBoxTableCell, NULL );
+
+ aggregateProxy( m_refCount, *this );
+ }
+
+ // -----------------------------------------------------------------------------
+ EditBrowseBoxTableCell::~EditBrowseBoxTableCell()
+ {
+ if ( !rBHelper.bDisposed )
+ {
+ acquire(); // to prevent duplicate dtor calls
+ dispose();
+ }
+
+ DBG_DTOR( acc_EditBrowseBoxTableCell, NULL );
+ }
+
+ // -----------------------------------------------------------------------------
+ ::rtl::OUString SAL_CALL EditBrowseBoxTableCell::getImplementationName() throw ( ::com::sun::star::uno::RuntimeException )
+ {
+ return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.svtools.TableCellProxy" ) );
+ }
+
+ // -----------------------------------------------------------------------------
+ IMPLEMENT_FORWARD_XINTERFACE2( EditBrowseBoxTableCell, AccessibleBrowseBoxCell, OAccessibleContextWrapperHelper )
+
+ // -----------------------------------------------------------------------------
+ IMPLEMENT_FORWARD_XTYPEPROVIDER2( EditBrowseBoxTableCell, AccessibleBrowseBoxCell, OAccessibleContextWrapperHelper )
+
+ // -----------------------------------------------------------------------------
+ void EditBrowseBoxTableCell::notifyTranslatedEvent( const AccessibleEventObject& _rEvent ) throw (RuntimeException)
+ {
+ commitEvent( _rEvent.EventId, _rEvent.NewValue, _rEvent.OldValue );
+ }
+
+ // XAccessibleComponent
+ // -----------------------------------------------------------------------------
+ sal_Int32 SAL_CALL EditBrowseBoxTableCell::getForeground( ) throw (RuntimeException)
+ {
+ SolarMethodGuard aGuard( *this );
+ Reference< XAccessibleComponent > xAccComp( m_xInnerContext, UNO_QUERY );
+ if ( xAccComp.is() )
+ return xAccComp->getForeground();
+ return 0;
+ }
+
+ // -----------------------------------------------------------------------------
+ sal_Int32 SAL_CALL EditBrowseBoxTableCell::getBackground( ) throw (RuntimeException)
+ {
+ SolarMethodGuard aGuard( *this );
+ Reference< XAccessibleComponent > xAccComp( m_xInnerContext, UNO_QUERY );
+ if ( xAccComp.is() )
+ return xAccComp->getBackground();
+ return 0;
+ }
+
+ // -----------------------------------------------------------------------------
+ Reference< XAccessible > SAL_CALL EditBrowseBoxTableCell::getAccessibleParent( ) throw (RuntimeException)
+ {
+ return m_xParentAccessible;
+ }
+
+ // -----------------------------------------------------------------------------
+ ::rtl::OUString SAL_CALL EditBrowseBoxTableCell::getAccessibleDescription() throw ( RuntimeException )
+ {
+ SolarMethodGuard aGuard( *this );
+ return m_xInnerContext->getAccessibleDescription();
+ }
+
+ // -----------------------------------------------------------------------------
+ ::rtl::OUString SAL_CALL EditBrowseBoxTableCell::getAccessibleName() throw ( RuntimeException )
+ {
+ SolarMethodGuard aGuard( *this );
+
+ // TODO: localize this!
+ String sName = mpBrowseBox->GetColumnDescription( ::sal::static_int_cast< sal_uInt16 >( getColumnPos() ) );
+ if ( 0 == sName.Len() )
+ {
+ sName = String::CreateFromAscii( "Column " );
+ sName += String::CreateFromInt32( getColumnPos( ) );
+ }
+
+ sName += String::CreateFromAscii( ", Row " );
+ sName += String::CreateFromInt32( getRowPos( ) );
+
+ return ::rtl::OUString( sName );
+ }
+
+ // -----------------------------------------------------------------------------
+ Reference< XAccessibleRelationSet > SAL_CALL EditBrowseBoxTableCell::getAccessibleRelationSet() throw ( RuntimeException )
+ {
+ SolarMethodGuard aGuard( *this );
+ return OAccessibleContextWrapperHelper::getAccessibleRelationSet( );
+ }
+
+ // -----------------------------------------------------------------------------
+ Reference<XAccessibleStateSet > SAL_CALL EditBrowseBoxTableCell::getAccessibleStateSet() throw ( RuntimeException )
+ {
+ SolarMethodGuard aGuard( *this );
+ return m_xInnerContext->getAccessibleStateSet();
+ // TODO: shouldn't we add an ACTIVE here? Isn't the EditBrowseBoxTableCell always ACTIVE?
+ }
+
+ // -----------------------------------------------------------------------------
+ sal_Int32 SAL_CALL EditBrowseBoxTableCell::getAccessibleChildCount( ) throw (RuntimeException)
+ {
+ SolarMethodGuard aGuard( *this );
+ return OAccessibleContextWrapperHelper::getAccessibleChildCount();
+ }
+
+ // -----------------------------------------------------------------------------
+ Reference< XAccessible > SAL_CALL EditBrowseBoxTableCell::getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, RuntimeException)
+ {
+ SolarMethodGuard aGuard( *this );
+ return OAccessibleContextWrapperHelper::getAccessibleChild( i );
+ }
+
+ // -----------------------------------------------------------------------------
+ sal_Int16 SAL_CALL EditBrowseBoxTableCell::getAccessibleRole() throw ( RuntimeException )
+ {
+ SolarMethodGuard aGuard( *this );
+ return m_xInnerContext->getAccessibleRole( );
+ }
+ // -----------------------------------------------------------------------------
+ void SAL_CALL EditBrowseBoxTableCell::dispose() throw( RuntimeException )
+ {
+ // simply disambiguate. Note that the OComponentHelper base in AccessibleBrowseBoxCell
+ // will call our "disposing()", which will call "dispose()" on the OAccessibleContextWrapperHelper
+ // so there is no need to do this here.
+ AccessibleBrowseBoxCell::dispose();
+ }
+ // -----------------------------------------------------------------------------
+ void SAL_CALL EditBrowseBoxTableCell::disposing( const EventObject& _rSource ) throw (RuntimeException)
+ {
+ AccessibleBrowseBoxCell::disposing( _rSource );
+ OAccessibleContextWrapperHelper::disposing( _rSource );
+ }
+ // -----------------------------------------------------------------------------
+ void SAL_CALL EditBrowseBoxTableCell::disposing()
+ {
+ SolarMethodGuard aGuard( *this, false );
+ OAccessibleContextWrapperHelper::dispose();
+ // TODO: do we need to dispose our inner object? The base class does this, but is it a good idea?
+ AccessibleBrowseBoxCell::disposing();
+ }
+ // =============================================================================
+ // = EditBrowseBoxTableCell
+ // =============================================================================
+ DBG_NAME( EditBrowseBoxTableCellAccess )
+ // -----------------------------------------------------------------------------
+ EditBrowseBoxTableCellAccess::EditBrowseBoxTableCellAccess(
+ const Reference< XAccessible >& _rxParent, const Reference< XAccessible > _rxControlAccessible,
+ const Reference< XWindow >& _rxFocusWindow,
+ IAccessibleTableProvider& _rBrowseBox, sal_Int32 _nRowPos, sal_uInt16 _nColPos )
+ :EditBrowseBoxTableCellAccess_Base( m_aMutex )
+ ,m_xParent( _rxParent )
+ ,m_xControlAccessible( _rxControlAccessible )
+ ,m_xFocusWindow( _rxFocusWindow )
+ ,m_pBrowseBox( &_rBrowseBox )
+ ,m_nRowPos( _nRowPos )
+ ,m_nColPos( _nColPos )
+ {
+ DBG_CTOR( EditBrowseBoxTableCellAccess, NULL );
+ }
+ // -----------------------------------------------------------------------------
+ EditBrowseBoxTableCellAccess::~EditBrowseBoxTableCellAccess( )
+ {
+ DBG_DTOR( EditBrowseBoxTableCellAccess, NULL );
+ }
+ //--------------------------------------------------------------------
+ Reference< XAccessibleContext > SAL_CALL EditBrowseBoxTableCellAccess::getAccessibleContext( ) throw (RuntimeException)
+ {
+ if ( !m_pBrowseBox || !m_xControlAccessible.is() )
+ throw DisposedException();
+ Reference< XAccessibleContext > xMyContext( m_aContext );
+ if ( !xMyContext.is() )
+ {
+ Reference< XAccessibleContext > xInnerContext = m_xControlAccessible->getAccessibleContext();
+ Reference< XAccessible > xMe( this );
+
+ xMyContext = new EditBrowseBoxTableCell( m_xParent, xMe, xInnerContext, *m_pBrowseBox, m_xFocusWindow, m_nRowPos, m_nColPos );
+ m_aContext = xMyContext;
+ }
+ return xMyContext;
+ }
+ //--------------------------------------------------------------------
+ void SAL_CALL EditBrowseBoxTableCellAccess::disposing()
+ {
+ // dispose our context, if it still alive
+ Reference< XComponent > xMyContext( (Reference< XAccessibleContext >)m_aContext, UNO_QUERY );
+ if ( xMyContext.is() )
+ {
+ try
+ {
+ xMyContext->dispose();
+ }
+ catch( const Exception& e )
+ {
+ (void)e;
+ OSL_ENSURE( false, "EditBrowseBoxTableCellAccess::disposing: caught an exception while disposing the context!" );
+ }
+ }
+
+ m_pBrowseBox = NULL;
+ m_xControlAccessible.clear();
+ m_aContext = Reference< XAccessibleContext >( );
+ // NO dispose of the inner object there: it is the XAccessible of an window, and disposing
+ // it would delete the respective VCL window
+ }
+// .................................................................................
+} // namespace accessibility
+// .................................................................................
diff --git a/accessibility/source/extended/accessibleiconchoicectrl.cxx b/accessibility/source/extended/accessibleiconchoicectrl.cxx
new file mode 100644
index 000000000000..397161fd6ac0
--- /dev/null
+++ b/accessibility/source/extended/accessibleiconchoicectrl.cxx
@@ -0,0 +1,372 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include "accessibility/extended/accessibleiconchoicectrl.hxx"
+#include "accessibility/extended/accessibleiconchoicectrlentry.hxx"
+#include <svtools/ivctrl.hxx>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <unotools/accessiblestatesethelper.hxx>
+#include <tools/debug.hxx>
+#include <vcl/svapp.hxx>
+#include <cppuhelper/typeprovider.hxx>
+
+//........................................................................
+namespace accessibility
+{
+//........................................................................
+
+ // class AccessibleIconChoiceCtrl ----------------------------------------------
+
+ using namespace ::com::sun::star::accessibility;
+ using namespace ::com::sun::star::uno;
+ using namespace ::com::sun::star::lang;
+ using namespace ::com::sun::star;
+
+ DBG_NAME(AccessibleIconChoiceCtrl)
+
+ // -----------------------------------------------------------------------------
+ // Ctor() and Dtor()
+ // -----------------------------------------------------------------------------
+ AccessibleIconChoiceCtrl::AccessibleIconChoiceCtrl( SvtIconChoiceCtrl& _rIconCtrl, const Reference< XAccessible >& _xParent ) :
+
+ VCLXAccessibleComponent( _rIconCtrl.GetWindowPeer() ),
+ m_xParent ( _xParent )
+ {
+ DBG_CTOR( AccessibleIconChoiceCtrl, NULL );
+ }
+ // -----------------------------------------------------------------------------
+ AccessibleIconChoiceCtrl::~AccessibleIconChoiceCtrl()
+ {
+ DBG_DTOR( AccessibleIconChoiceCtrl, NULL );
+ }
+ // -----------------------------------------------------------------------------
+ IMPLEMENT_FORWARD_XINTERFACE2(AccessibleIconChoiceCtrl, VCLXAccessibleComponent, AccessibleIconChoiceCtrl_BASE)
+ IMPLEMENT_FORWARD_XTYPEPROVIDER2(AccessibleIconChoiceCtrl, VCLXAccessibleComponent, AccessibleIconChoiceCtrl_BASE)
+ // -----------------------------------------------------------------------------
+ void AccessibleIconChoiceCtrl::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
+ {
+ if ( isAlive() )
+ {
+ switch ( rVclWindowEvent.GetId() )
+ {
+ case VCLEVENT_LISTBOX_SELECT :
+ {
+ // First send an event that tells the listeners of a
+ // modified selection. The active descendant event is
+ // send after that so that the receiving AT has time to
+ // read the text or name of the active child.
+ NotifyAccessibleEvent( AccessibleEventId::SELECTION_CHANGED, Any(), Any() );
+ SvtIconChoiceCtrl* pCtrl = getCtrl();
+ if ( pCtrl && pCtrl->HasFocus() )
+ {
+ SvxIconChoiceCtrlEntry* pEntry = static_cast< SvxIconChoiceCtrlEntry* >( rVclWindowEvent.GetData() );
+ if ( pEntry )
+ {
+ ULONG nPos = pCtrl->GetEntryListPos( pEntry );
+ Reference< XAccessible > xChild = new AccessibleIconChoiceCtrlEntry( *pCtrl, nPos, this );
+ uno::Any aOldValue, aNewValue;
+ aNewValue <<= xChild;
+ NotifyAccessibleEvent( AccessibleEventId::ACTIVE_DESCENDANT_CHANGED, aOldValue, aNewValue );
+ }
+ }
+ break;
+ }
+ default:
+ VCLXAccessibleComponent::ProcessWindowChildEvent (rVclWindowEvent);
+ }
+ }
+ }
+ // -----------------------------------------------------------------------------
+ // XComponent
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleIconChoiceCtrl::disposing()
+ {
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ m_xParent = NULL;
+ }
+ // -----------------------------------------------------------------------------
+ // XServiceInfo
+ // -----------------------------------------------------------------------------
+ ::rtl::OUString SAL_CALL AccessibleIconChoiceCtrl::getImplementationName() throw (RuntimeException)
+ {
+ return getImplementationName_Static();
+ }
+ // -----------------------------------------------------------------------------
+ Sequence< ::rtl::OUString > SAL_CALL AccessibleIconChoiceCtrl::getSupportedServiceNames() throw (RuntimeException)
+ {
+ return getSupportedServiceNames_Static();
+ }
+ // -----------------------------------------------------------------------------
+ sal_Bool SAL_CALL AccessibleIconChoiceCtrl::supportsService( const ::rtl::OUString& _rServiceName ) throw (RuntimeException)
+ {
+ Sequence< ::rtl::OUString > aSupported( getSupportedServiceNames() );
+ const ::rtl::OUString* pSupported = aSupported.getConstArray();
+ const ::rtl::OUString* pEnd = pSupported + aSupported.getLength();
+ for ( ; pSupported != pEnd && !pSupported->equals(_rServiceName); ++pSupported )
+ ;
+
+ return pSupported != pEnd;
+ }
+ // -----------------------------------------------------------------------------
+ // XServiceInfo - static methods
+ // -----------------------------------------------------------------------------
+ Sequence< ::rtl::OUString > AccessibleIconChoiceCtrl::getSupportedServiceNames_Static(void) throw (RuntimeException)
+ {
+ Sequence< ::rtl::OUString > aSupported(3);
+ aSupported[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.accessibility.AccessibleContext") );
+ aSupported[1] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.accessibility.AccessibleComponent") );
+ aSupported[2] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.awt.AccessibleIconChoiceControl") );
+ return aSupported;
+ }
+ // -----------------------------------------------------------------------------
+ ::rtl::OUString AccessibleIconChoiceCtrl::getImplementationName_Static(void) throw (RuntimeException)
+ {
+ return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.svtools.AccessibleIconChoiceControl") );
+ }
+ // -----------------------------------------------------------------------------
+ // XAccessible
+ // -----------------------------------------------------------------------------
+ Reference< XAccessibleContext > SAL_CALL AccessibleIconChoiceCtrl::getAccessibleContext( ) throw (RuntimeException)
+ {
+ ensureAlive();
+ return this;
+ }
+ // -----------------------------------------------------------------------------
+ // XAccessibleContext
+ // -----------------------------------------------------------------------------
+ sal_Int32 SAL_CALL AccessibleIconChoiceCtrl::getAccessibleChildCount( ) throw (RuntimeException)
+ {
+ ::comphelper::OExternalLockGuard aGuard( this );
+
+ ensureAlive();
+ return getCtrl()->GetEntryCount();
+ }
+ // -----------------------------------------------------------------------------
+ Reference< XAccessible > SAL_CALL AccessibleIconChoiceCtrl::getAccessibleChild( sal_Int32 i ) throw (RuntimeException, IndexOutOfBoundsException)
+ {
+ ::comphelper::OExternalLockGuard aGuard( this );
+
+ ensureAlive();
+ SvtIconChoiceCtrl* pCtrl = getCtrl();
+ SvxIconChoiceCtrlEntry* pEntry = pCtrl->GetEntry(i);
+ if ( !pEntry )
+ throw RuntimeException();
+
+ return new AccessibleIconChoiceCtrlEntry( *pCtrl, i, this );
+ }
+ // -----------------------------------------------------------------------------
+ Reference< XAccessible > SAL_CALL AccessibleIconChoiceCtrl::getAccessibleParent( ) throw (RuntimeException)
+ {
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ ensureAlive();
+ return m_xParent;
+ }
+ // -----------------------------------------------------------------------------
+ sal_Int16 SAL_CALL AccessibleIconChoiceCtrl::getAccessibleRole( ) throw (RuntimeException)
+ {
+ return AccessibleRole::TREE;
+ }
+ // -----------------------------------------------------------------------------
+ ::rtl::OUString SAL_CALL AccessibleIconChoiceCtrl::getAccessibleDescription( ) throw (RuntimeException)
+ {
+ ::comphelper::OExternalLockGuard aGuard( this );
+
+ ensureAlive();
+ return getCtrl()->GetAccessibleDescription();
+ }
+ // -----------------------------------------------------------------------------
+ ::rtl::OUString SAL_CALL AccessibleIconChoiceCtrl::getAccessibleName( ) throw (RuntimeException)
+ {
+ ::comphelper::OExternalLockGuard aGuard( this );
+
+ ensureAlive();
+
+ ::rtl::OUString sName = getCtrl()->GetAccessibleName();
+ if ( sName.getLength() == 0 )
+ sName = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "IconChoiceControl" ) );
+ return sName;
+ }
+ // -----------------------------------------------------------------------------
+ // XAccessibleSelection
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleIconChoiceCtrl::selectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ ::comphelper::OExternalLockGuard aGuard( this );
+
+ ensureAlive();
+
+ SvtIconChoiceCtrl* pCtrl = getCtrl();
+ SvxIconChoiceCtrlEntry* pEntry = pCtrl->GetEntry( nChildIndex );
+ if ( !pEntry )
+ throw IndexOutOfBoundsException();
+
+ pCtrl->SetCursor( pEntry );
+ }
+ // -----------------------------------------------------------------------------
+ sal_Bool SAL_CALL AccessibleIconChoiceCtrl::isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ ::comphelper::OExternalLockGuard aGuard( this );
+
+ ensureAlive();
+
+ SvtIconChoiceCtrl* pCtrl = getCtrl();
+ SvxIconChoiceCtrlEntry* pEntry = pCtrl->GetEntry( nChildIndex );
+ if ( !pEntry )
+ throw IndexOutOfBoundsException();
+
+ return ( pCtrl->GetCursor() == pEntry );
+ }
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleIconChoiceCtrl::clearAccessibleSelection( ) throw (RuntimeException)
+ {
+ ::comphelper::OExternalLockGuard aGuard( this );
+
+ ensureAlive();
+ getCtrl()->SetNoSelection();
+ }
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleIconChoiceCtrl::selectAllAccessibleChildren( ) throw (RuntimeException)
+ {
+ ::comphelper::OExternalLockGuard aGuard( this );
+
+ ensureAlive();
+
+ sal_Int32 i, nCount = 0;
+ SvtIconChoiceCtrl* pCtrl = getCtrl();
+ nCount = pCtrl->GetEntryCount();
+ for ( i = 0; i < nCount; ++i )
+ {
+ SvxIconChoiceCtrlEntry* pEntry = pCtrl->GetEntry( i );
+ if ( pCtrl->GetCursor() != pEntry )
+ pCtrl->SetCursor( pEntry );
+ }
+ }
+ // -----------------------------------------------------------------------------
+ sal_Int32 SAL_CALL AccessibleIconChoiceCtrl::getSelectedAccessibleChildCount( ) throw (RuntimeException)
+ {
+ ::comphelper::OExternalLockGuard aGuard( this );
+
+ ensureAlive();
+
+ sal_Int32 i, nSelCount = 0, nCount = 0;
+ SvtIconChoiceCtrl* pCtrl = getCtrl();
+ nCount = pCtrl->GetEntryCount();
+ for ( i = 0; i < nCount; ++i )
+ {
+ SvxIconChoiceCtrlEntry* pEntry = pCtrl->GetEntry( i );
+ if ( pCtrl->GetCursor() == pEntry )
+ ++nSelCount;
+ }
+
+ return nSelCount;
+ }
+ // -----------------------------------------------------------------------------
+ Reference< XAccessible > SAL_CALL AccessibleIconChoiceCtrl::getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ ::comphelper::OExternalLockGuard aGuard( this );
+
+ ensureAlive();
+
+ if ( nSelectedChildIndex < 0 || nSelectedChildIndex >= getSelectedAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+
+ Reference< XAccessible > xChild;
+ sal_Int32 i, nSelCount = 0, nCount = 0;
+ SvtIconChoiceCtrl* pCtrl = getCtrl();
+ nCount = pCtrl->GetEntryCount();
+ for ( i = 0; i < nCount; ++i )
+ {
+ SvxIconChoiceCtrlEntry* pEntry = pCtrl->GetEntry( i );
+ if ( pCtrl->GetCursor() == pEntry )
+ ++nSelCount;
+
+ if ( nSelCount == ( nSelectedChildIndex + 1 ) )
+ {
+ xChild = new AccessibleIconChoiceCtrlEntry( *pCtrl, i, this );
+ break;
+ }
+ }
+
+ return xChild;
+ }
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleIconChoiceCtrl::deselectAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ ::comphelper::OExternalLockGuard aGuard( this );
+
+ ensureAlive();
+
+ if ( nSelectedChildIndex < 0 || nSelectedChildIndex >= getAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+
+ Reference< XAccessible > xChild;
+ sal_Int32 i, nSelCount = 0, nCount = 0;
+ SvtIconChoiceCtrl* pCtrl = getCtrl();
+ nCount = pCtrl->GetEntryCount();
+ bool bFound = false;
+ for ( i = 0; i < nCount; ++i )
+ {
+ SvxIconChoiceCtrlEntry* pEntry = pCtrl->GetEntry( i );
+ if ( pEntry->IsSelected() )
+ {
+ ++nSelCount;
+ if ( i == nSelectedChildIndex )
+ bFound = true;
+ }
+ }
+
+ // if only one entry is selected and its index is choosen to deselect -> no selection anymore
+ if ( 1 == nSelCount && bFound )
+ pCtrl->SetNoSelection();
+ }
+ // -----------------------------------------------------------------------------
+ void AccessibleIconChoiceCtrl::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
+ {
+ VCLXAccessibleComponent::FillAccessibleStateSet( rStateSet );
+ if ( isAlive() )
+ {
+ rStateSet.AddState( AccessibleStateType::FOCUSABLE );
+ rStateSet.AddState( AccessibleStateType::MANAGES_DESCENDANTS );
+ rStateSet.AddState( AccessibleStateType::SELECTABLE );
+ }
+ }
+ // -----------------------------------------------------------------------------
+ SvtIconChoiceCtrl* AccessibleIconChoiceCtrl::getCtrl()
+ {
+ return static_cast<SvtIconChoiceCtrl*>(GetWindow());
+ }
+
+//........................................................................
+}// namespace accessibility
+//........................................................................
+
diff --git a/accessibility/source/extended/accessibleiconchoicectrlentry.cxx b/accessibility/source/extended/accessibleiconchoicectrlentry.cxx
new file mode 100644
index 000000000000..19e809bcc6ea
--- /dev/null
+++ b/accessibility/source/extended/accessibleiconchoicectrlentry.cxx
@@ -0,0 +1,756 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/extended/accessibleiconchoicectrlentry.hxx>
+#include <svtools/ivctrl.hxx>
+#include <com/sun/star/awt/Point.hpp>
+#include <com/sun/star/awt/Rectangle.hpp>
+#include <com/sun/star/awt/Size.hpp>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <tools/debug.hxx>
+#include <vcl/svapp.hxx>
+#include <vcl/controllayout.hxx>
+#include <toolkit/awt/vclxwindow.hxx>
+#include <toolkit/helper/convert.hxx>
+#include <unotools/accessiblestatesethelper.hxx>
+#include <unotools/accessiblerelationsethelper.hxx>
+#include <cppuhelper/typeprovider.hxx>
+#include <comphelper/sequence.hxx>
+#include <svtools/stringtransfer.hxx>
+#include <comphelper/accessibleeventnotifier.hxx>
+
+#define ACCESSIBLE_ACTION_COUNT 1
+#define AID_EXPAND 0
+#define AID_COLLAPSE 1
+
+namespace
+{
+ void checkActionIndex_Impl( sal_Int32 _nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException)
+ {
+ if ( _nIndex < 0 || _nIndex >= ACCESSIBLE_ACTION_COUNT )
+ // only three actions
+ throw ::com::sun::star::lang::IndexOutOfBoundsException();
+ }
+}
+
+//........................................................................
+namespace accessibility
+{
+ //........................................................................
+ // class ALBSolarGuard ---------------------------------------------------------
+
+ /** Aquire the solar mutex. */
+ class ALBSolarGuard : public ::vos::OGuard
+ {
+ public:
+ inline ALBSolarGuard() : ::vos::OGuard( Application::GetSolarMutex() ) {}
+ };
+
+ // class AccessibleIconChoiceCtrlEntry -----------------------------------------------------
+
+ using namespace ::com::sun::star::accessibility;
+ using namespace ::com::sun::star::uno;
+ using namespace ::com::sun::star::lang;
+ using namespace ::com::sun::star;
+
+ DBG_NAME(AccessibleIconChoiceCtrlEntry)
+
+ // -----------------------------------------------------------------------------
+ // Ctor() and Dtor()
+ // -----------------------------------------------------------------------------
+ AccessibleIconChoiceCtrlEntry::AccessibleIconChoiceCtrlEntry( SvtIconChoiceCtrl& _rIconCtrl,
+ ULONG _nPos,
+ const Reference< XAccessible >& _xParent ) :
+
+ AccessibleIconChoiceCtrlEntry_BASE ( m_aMutex ),
+
+ m_pIconCtrl ( &_rIconCtrl ),
+ m_nIndex ( _nPos ),
+ m_nClientId ( 0 ),
+ m_xParent ( _xParent )
+
+ {
+ osl_incrementInterlockedCount( &m_refCount );
+ {
+ Reference< XComponent > xComp( m_xParent, UNO_QUERY );
+ if ( xComp.is() )
+ xComp->addEventListener( this );
+ }
+ osl_decrementInterlockedCount( &m_refCount );
+
+ DBG_CTOR( AccessibleIconChoiceCtrlEntry, NULL );
+ }
+ // -----------------------------------------------------------------------------
+ void AccessibleIconChoiceCtrlEntry::disposing( const EventObject& _rSource )
+throw(RuntimeException)
+ {
+ if ( _rSource.Source == m_xParent )
+ {
+ dispose();
+ DBG_ASSERT( !m_xParent.is() && ( NULL == m_pIconCtrl ), "" );
+ }
+ }
+ // -----------------------------------------------------------------------------
+ AccessibleIconChoiceCtrlEntry::~AccessibleIconChoiceCtrlEntry()
+ {
+ DBG_DTOR( AccessibleIconChoiceCtrlEntry, NULL );
+
+ if ( IsAlive_Impl() )
+ {
+ // increment ref count to prevent double call of Dtor
+ osl_incrementInterlockedCount( &m_refCount );
+ dispose();
+ }
+ }
+ #ifdef ACCESSIBLE_EVENT_NOTIFICATION_ENABLED
+ // (the following method is unused currently. If you need it, simply remove the #ifdef thing here and
+ // in the hxx)
+ // -----------------------------------------------------------------------------
+ void AccessibleIconChoiceCtrlEntry::NotifyAccessibleEvent( sal_Int16 _nEventId,
+ const ::com::sun::star::uno::Any& _aOldValue,
+ const ::com::sun::star::uno::Any& _aNewValue )
+ {
+ Reference< uno::XInterface > xSource( *this );
+ AccessibleEventObject aEventObj( xSource, _nEventId, _aNewValue, _aOldValue );
+
+ if (m_nClientId)
+ comphelper::AccessibleEventNotifier::addEvent( m_nClientId, aEventObj );
+ }
+ #endif
+ // -----------------------------------------------------------------------------
+ Rectangle AccessibleIconChoiceCtrlEntry::GetBoundingBox_Impl() const
+ {
+ Rectangle aRect;
+ SvxIconChoiceCtrlEntry* pEntry = m_pIconCtrl->GetEntry( m_nIndex );
+ if ( pEntry )
+ aRect = m_pIconCtrl->GetBoundingBox( pEntry );
+
+ return aRect;
+ }
+ // -----------------------------------------------------------------------------
+ Rectangle AccessibleIconChoiceCtrlEntry::GetBoundingBoxOnScreen_Impl() const
+ {
+ Rectangle aRect;
+ SvxIconChoiceCtrlEntry* pEntry = m_pIconCtrl->GetEntry( m_nIndex );
+ if ( pEntry )
+ {
+ aRect = m_pIconCtrl->GetBoundingBox( pEntry );
+ Point aTopLeft = aRect.TopLeft();
+ aTopLeft += m_pIconCtrl->GetWindowExtentsRelative( NULL ).TopLeft();
+ aRect = Rectangle( aTopLeft, aRect.GetSize() );
+ }
+
+ return aRect;
+ }
+ // -----------------------------------------------------------------------------
+ sal_Bool AccessibleIconChoiceCtrlEntry::IsAlive_Impl() const
+ {
+ return ( !rBHelper.bDisposed && !rBHelper.bInDispose && m_pIconCtrl );
+ }
+ // -----------------------------------------------------------------------------
+ sal_Bool AccessibleIconChoiceCtrlEntry::IsShowing_Impl() const
+ {
+ sal_Bool bShowing = sal_False;
+ Reference< XAccessibleContext > m_xParentContext =
+ m_xParent.is() ? m_xParent->getAccessibleContext() : Reference< XAccessibleContext >();
+ if( m_xParentContext.is() )
+ {
+ Reference< XAccessibleComponent > xParentComp( m_xParentContext, uno::UNO_QUERY );
+ if( xParentComp.is() )
+ bShowing = GetBoundingBox_Impl().IsOver( VCLRectangle( xParentComp->getBounds() ) );
+ }
+
+ return bShowing;
+ }
+ // -----------------------------------------------------------------------------
+ Rectangle AccessibleIconChoiceCtrlEntry::GetBoundingBox() throw ( lang::DisposedException )
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ EnsureIsAlive();
+ return GetBoundingBox_Impl();
+ }
+ // -----------------------------------------------------------------------------
+ Rectangle AccessibleIconChoiceCtrlEntry::GetBoundingBoxOnScreen() throw ( lang::DisposedException )
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ EnsureIsAlive();
+ return GetBoundingBoxOnScreen_Impl();
+ }
+ // -----------------------------------------------------------------------------
+ void AccessibleIconChoiceCtrlEntry::EnsureIsAlive() const throw ( lang::DisposedException )
+ {
+ if ( !IsAlive_Impl() )
+ throw lang::DisposedException();
+ }
+ // -----------------------------------------------------------------------------
+ ::rtl::OUString AccessibleIconChoiceCtrlEntry::implGetText()
+ {
+ ::rtl::OUString sRet;
+ SvxIconChoiceCtrlEntry* pEntry = m_pIconCtrl->GetEntry( m_nIndex );
+ if ( pEntry )
+ sRet = pEntry->GetDisplayText();
+ return sRet;
+ }
+ // -----------------------------------------------------------------------------
+ Locale AccessibleIconChoiceCtrlEntry::implGetLocale()
+ {
+ Locale aLocale;
+ aLocale = Application::GetSettings().GetUILocale();
+
+ return aLocale;
+ }
+ void AccessibleIconChoiceCtrlEntry::implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex )
+ {
+ nStartIndex = 0;
+ nEndIndex = 0;
+ }
+ // -----------------------------------------------------------------------------
+ // XTypeProvider
+ // -----------------------------------------------------------------------------
+ // -----------------------------------------------------------------------------
+ Sequence< sal_Int8 > AccessibleIconChoiceCtrlEntry::getImplementationId() throw (RuntimeException)
+ {
+ static ::cppu::OImplementationId* pId = NULL;
+
+ if ( !pId )
+ {
+ ::osl::Guard< ::osl::Mutex > aGuard( m_aMutex );
+
+ if ( !pId )
+ {
+ static ::cppu::OImplementationId aId;
+ pId = &aId;
+ }
+ }
+ return pId->getImplementationId();
+ }
+ // -----------------------------------------------------------------------------
+ // XComponent
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleIconChoiceCtrlEntry::disposing()
+ {
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ // Send a disposing to all listeners.
+ if ( m_nClientId )
+ {
+ sal_uInt32 nId = m_nClientId;
+ m_nClientId = 0;
+ comphelper::AccessibleEventNotifier::revokeClientNotifyDisposing( nId, *this );
+ }
+
+ Reference< XComponent > xComp( m_xParent, UNO_QUERY );
+ if ( xComp.is() )
+ xComp->removeEventListener( this );
+
+ m_pIconCtrl = NULL;
+ m_xParent = NULL;
+ }
+ // -----------------------------------------------------------------------------
+ // XServiceInfo
+ // -----------------------------------------------------------------------------
+ ::rtl::OUString SAL_CALL AccessibleIconChoiceCtrlEntry::getImplementationName() throw(RuntimeException)
+ {
+ return getImplementationName_Static();
+ }
+ // -----------------------------------------------------------------------------
+ Sequence< ::rtl::OUString > SAL_CALL AccessibleIconChoiceCtrlEntry::getSupportedServiceNames() throw(RuntimeException)
+ {
+ return getSupportedServiceNames_Static();
+ }
+ // -----------------------------------------------------------------------------
+ sal_Bool SAL_CALL AccessibleIconChoiceCtrlEntry::supportsService( const ::rtl::OUString& _rServiceName ) throw (RuntimeException)
+ {
+ Sequence< ::rtl::OUString > aSupported( getSupportedServiceNames() );
+ const ::rtl::OUString* pSupported = aSupported.getConstArray();
+ const ::rtl::OUString* pEnd = pSupported + aSupported.getLength();
+ for ( ; pSupported != pEnd && !pSupported->equals(_rServiceName); ++pSupported )
+ ;
+
+ return pSupported != pEnd;
+ }
+ // -----------------------------------------------------------------------------
+ // XServiceInfo - static methods
+ // -----------------------------------------------------------------------------
+ Sequence< ::rtl::OUString > AccessibleIconChoiceCtrlEntry::getSupportedServiceNames_Static(void) throw( RuntimeException )
+ {
+ Sequence< ::rtl::OUString > aSupported(3);
+ aSupported[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.accessibility.AccessibleContext") );
+ aSupported[1] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.accessibility.AccessibleComponent") );
+ aSupported[2] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.awt.AccessibleIconChoiceControlEntry") );
+ return aSupported;
+ }
+ // -----------------------------------------------------------------------------
+ ::rtl::OUString AccessibleIconChoiceCtrlEntry::getImplementationName_Static(void) throw( RuntimeException )
+ {
+ return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.svtools.AccessibleIconChoiceControlEntry") );
+ }
+ // -----------------------------------------------------------------------------
+ // XAccessible
+ // -----------------------------------------------------------------------------
+ Reference< XAccessibleContext > SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleContext( ) throw (RuntimeException)
+ {
+ EnsureIsAlive();
+ return this;
+ }
+ // -----------------------------------------------------------------------------
+ // XAccessibleContext
+ // -----------------------------------------------------------------------------
+ sal_Int32 SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleChildCount( ) throw (RuntimeException)
+ {
+ return 0; // no children
+ }
+ // -----------------------------------------------------------------------------
+ Reference< XAccessible > SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleChild( sal_Int32 ) throw (IndexOutOfBoundsException,RuntimeException)
+ {
+ throw IndexOutOfBoundsException();
+ }
+ // -----------------------------------------------------------------------------
+ Reference< XAccessible > SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleParent( ) throw (RuntimeException)
+ {
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ EnsureIsAlive();
+ return m_xParent;
+ }
+ // -----------------------------------------------------------------------------
+ sal_Int32 SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleIndexInParent( ) throw (RuntimeException)
+ {
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ return m_nIndex;
+ }
+ // -----------------------------------------------------------------------------
+ sal_Int16 SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleRole( ) throw (RuntimeException)
+ {
+ return AccessibleRole::LABEL;
+ }
+ // -----------------------------------------------------------------------------
+ ::rtl::OUString SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleDescription( ) throw (RuntimeException)
+ {
+ // no description for every item
+ return ::rtl::OUString();
+ }
+ // -----------------------------------------------------------------------------
+ ::rtl::OUString SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleName( ) throw (RuntimeException)
+ {
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ EnsureIsAlive();
+ return implGetText();
+ }
+ // -----------------------------------------------------------------------------
+ Reference< XAccessibleRelationSet > SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleRelationSet( ) throw (RuntimeException)
+ {
+ return new utl::AccessibleRelationSetHelper;
+ }
+ // -----------------------------------------------------------------------------
+ Reference< XAccessibleStateSet > SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleStateSet( ) throw (RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ utl::AccessibleStateSetHelper* pStateSetHelper = new utl::AccessibleStateSetHelper;
+ Reference< XAccessibleStateSet > xStateSet = pStateSetHelper;
+
+ if ( IsAlive_Impl() )
+ {
+ pStateSetHelper->AddState( AccessibleStateType::TRANSIENT );
+ pStateSetHelper->AddState( AccessibleStateType::SELECTABLE );
+ pStateSetHelper->AddState( AccessibleStateType::ENABLED );
+ pStateSetHelper->AddState( AccessibleStateType::SENSITIVE );
+ if ( IsShowing_Impl() )
+ {
+ pStateSetHelper->AddState( AccessibleStateType::SHOWING );
+ pStateSetHelper->AddState( AccessibleStateType::VISIBLE );
+ }
+
+ if ( m_pIconCtrl && m_pIconCtrl->GetCursor() == m_pIconCtrl->GetEntry( m_nIndex ) )
+ pStateSetHelper->AddState( AccessibleStateType::SELECTED );
+ }
+ else
+ pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
+
+ return xStateSet;
+ }
+ // -----------------------------------------------------------------------------
+ Locale SAL_CALL AccessibleIconChoiceCtrlEntry::getLocale( ) throw (IllegalAccessibleComponentStateException, RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ return implGetLocale();
+ }
+ // -----------------------------------------------------------------------------
+ // XAccessibleComponent
+ // -----------------------------------------------------------------------------
+ sal_Bool SAL_CALL AccessibleIconChoiceCtrlEntry::containsPoint( const awt::Point& rPoint ) throw (RuntimeException)
+ {
+ return Rectangle( Point(), GetBoundingBox().GetSize() ).IsInside( VCLPoint( rPoint ) );
+ }
+ // -----------------------------------------------------------------------------
+ Reference< XAccessible > SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleAtPoint( const awt::Point& ) throw (RuntimeException)
+ {
+ return Reference< XAccessible >();
+ }
+ // -----------------------------------------------------------------------------
+ awt::Rectangle SAL_CALL AccessibleIconChoiceCtrlEntry::getBounds( ) throw (RuntimeException)
+ {
+ return AWTRectangle( GetBoundingBox() );
+ }
+ // -----------------------------------------------------------------------------
+ awt::Point SAL_CALL AccessibleIconChoiceCtrlEntry::getLocation( ) throw (RuntimeException)
+ {
+ return AWTPoint( GetBoundingBox().TopLeft() );
+ }
+ // -----------------------------------------------------------------------------
+ awt::Point SAL_CALL AccessibleIconChoiceCtrlEntry::getLocationOnScreen( ) throw (RuntimeException)
+ {
+ return AWTPoint( GetBoundingBoxOnScreen().TopLeft() );
+ }
+ // -----------------------------------------------------------------------------
+ awt::Size SAL_CALL AccessibleIconChoiceCtrlEntry::getSize( ) throw (RuntimeException)
+ {
+ return AWTSize( GetBoundingBox().GetSize() );
+ }
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleIconChoiceCtrlEntry::grabFocus( ) throw (RuntimeException)
+ {
+ // do nothing, because no focus for each item
+ }
+ // -----------------------------------------------------------------------------
+ sal_Int32 AccessibleIconChoiceCtrlEntry::getForeground( ) throw (RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ sal_Int32 nColor = 0;
+ Reference< XAccessible > xParent = getAccessibleParent();
+ if ( xParent.is() )
+ {
+ Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
+ if ( xParentComp.is() )
+ nColor = xParentComp->getForeground();
+ }
+
+ return nColor;
+ }
+ // -----------------------------------------------------------------------------
+ sal_Int32 AccessibleIconChoiceCtrlEntry::getBackground( ) throw (RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ sal_Int32 nColor = 0;
+ Reference< XAccessible > xParent = getAccessibleParent();
+ if ( xParent.is() )
+ {
+ Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
+ if ( xParentComp.is() )
+ nColor = xParentComp->getBackground();
+ }
+
+ return nColor;
+ }
+ // -----------------------------------------------------------------------------
+ // XAccessibleText
+ // -----------------------------------------------------------------------------
+ // -----------------------------------------------------------------------------
+ awt::Rectangle SAL_CALL AccessibleIconChoiceCtrlEntry::getCharacterBounds( sal_Int32 _nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ if ( ( 0 > _nIndex ) || ( getCharacterCount() <= _nIndex ) )
+ throw IndexOutOfBoundsException();
+
+ awt::Rectangle aBounds( 0, 0, 0, 0 );
+ if ( m_pIconCtrl )
+ {
+ Rectangle aItemRect = GetBoundingBox_Impl();
+ Rectangle aCharRect = m_pIconCtrl->GetEntryCharacterBounds( m_nIndex, _nIndex );
+ aCharRect.Move( -aItemRect.Left(), -aItemRect.Top() );
+ aBounds = AWTRectangle( aCharRect );
+ }
+
+ return aBounds;
+ }
+ // -----------------------------------------------------------------------------
+ sal_Int32 SAL_CALL AccessibleIconChoiceCtrlEntry::getIndexAtPoint( const awt::Point& aPoint ) throw (RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ sal_Int32 nIndex = -1;
+ if ( m_pIconCtrl )
+ {
+ ::vcl::ControlLayoutData aLayoutData;
+ Rectangle aItemRect = GetBoundingBox_Impl();
+ m_pIconCtrl->RecordLayoutData( &aLayoutData, aItemRect );
+ Point aPnt( VCLPoint( aPoint ) );
+ aPnt += aItemRect.TopLeft();
+ nIndex = aLayoutData.GetIndexForPoint( aPnt );
+
+ long nLen = aLayoutData.m_aUnicodeBoundRects.size();
+ for ( long i = 0; i < nLen; ++i )
+ {
+ Rectangle aRect = aLayoutData.GetCharacterBounds(i);
+ BOOL bInside = aRect.IsInside( aPnt );
+
+ if ( bInside )
+ break;
+ }
+ }
+
+ return nIndex;
+ }
+ // -----------------------------------------------------------------------------
+ sal_Bool SAL_CALL AccessibleIconChoiceCtrlEntry::copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ String sText = getText();
+ if ( ( 0 > nStartIndex ) || ( sText.Len() <= nStartIndex )
+ || ( 0 > nEndIndex ) || ( sText.Len() <= nEndIndex ) )
+ throw IndexOutOfBoundsException();
+
+ sal_Int32 nLen = nEndIndex - nStartIndex + 1;
+ ::svt::OStringTransfer::CopyString( sText.Copy( (USHORT)nStartIndex, (USHORT)nLen ), m_pIconCtrl );
+
+ return sal_True;
+ }
+ // -----------------------------------------------------------------------------
+ // XAccessibleEventBroadcaster
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleIconChoiceCtrlEntry::addEventListener( const Reference< XAccessibleEventListener >& xListener ) throw (RuntimeException)
+ {
+ if (xListener.is())
+ {
+ ::osl::MutexGuard aGuard( m_aMutex );
+ if (!m_nClientId)
+ m_nClientId = comphelper::AccessibleEventNotifier::registerClient( );
+ comphelper::AccessibleEventNotifier::addEventListener( m_nClientId, xListener );
+ }
+ }
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleIconChoiceCtrlEntry::removeEventListener( const Reference< XAccessibleEventListener >& xListener ) throw (RuntimeException)
+ {
+ if (xListener.is())
+ {
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ sal_Int32 nListenerCount = comphelper::AccessibleEventNotifier::removeEventListener( m_nClientId, xListener );
+ if ( !nListenerCount )
+ {
+ // no listeners anymore
+ // -> revoke ourself. This may lead to the notifier thread dying (if we were the last client),
+ // and at least to us not firing any events anymore, in case somebody calls
+ // NotifyAccessibleEvent, again
+ sal_Int32 nId = m_nClientId;
+ m_nClientId = 0;
+ comphelper::AccessibleEventNotifier::revokeClient( nId );
+ }
+ }
+ }
+
+ sal_Int32 SAL_CALL AccessibleIconChoiceCtrlEntry::getCaretPosition( ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ return -1;
+ }
+ sal_Bool SAL_CALL AccessibleIconChoiceCtrlEntry::setCaretPosition ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+
+ if ( !implIsValidRange( nIndex, nIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ return sal_False;
+ }
+ sal_Unicode SAL_CALL AccessibleIconChoiceCtrlEntry::getCharacter( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+ return OCommonAccessibleText::getCharacter( nIndex );
+ }
+ ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL AccessibleIconChoiceCtrlEntry::getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+
+ ::rtl::OUString sText( implGetText() );
+
+ if ( !implIsValidIndex( nIndex, sText.getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ return ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >();
+ }
+ sal_Int32 SAL_CALL AccessibleIconChoiceCtrlEntry::getCharacterCount( ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+ return OCommonAccessibleText::getCharacterCount( );
+ }
+
+ ::rtl::OUString SAL_CALL AccessibleIconChoiceCtrlEntry::getSelectedText( ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+ return OCommonAccessibleText::getSelectedText( );
+ }
+ sal_Int32 SAL_CALL AccessibleIconChoiceCtrlEntry::getSelectionStart( ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+ return OCommonAccessibleText::getSelectionStart( );
+ }
+ sal_Int32 SAL_CALL AccessibleIconChoiceCtrlEntry::getSelectionEnd( ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+ return OCommonAccessibleText::getSelectionEnd( );
+ }
+ sal_Bool SAL_CALL AccessibleIconChoiceCtrlEntry::setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+
+ if ( !implIsValidRange( nStartIndex, nEndIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ return sal_False;
+ }
+ ::rtl::OUString SAL_CALL AccessibleIconChoiceCtrlEntry::getText( ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+ return OCommonAccessibleText::getText( );
+ }
+ ::rtl::OUString SAL_CALL AccessibleIconChoiceCtrlEntry::getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+ return OCommonAccessibleText::getTextRange( nStartIndex, nEndIndex );
+ }
+ ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleIconChoiceCtrlEntry::getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+ return OCommonAccessibleText::getTextAtIndex( nIndex ,aTextType);
+ }
+ ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleIconChoiceCtrlEntry::getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+ return OCommonAccessibleText::getTextBeforeIndex( nIndex ,aTextType);
+ }
+ ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleIconChoiceCtrlEntry::getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+
+ return OCommonAccessibleText::getTextBehindIndex( nIndex ,aTextType);
+ }
+
+ // -----------------------------------------------------------------------------
+ // XAccessibleAction
+ // -----------------------------------------------------------------------------
+ sal_Int32 SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleActionCount( ) throw (RuntimeException)
+ {
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ // three actions supported
+ return ACCESSIBLE_ACTION_COUNT;
+ }
+ // -----------------------------------------------------------------------------
+ sal_Bool SAL_CALL AccessibleIconChoiceCtrlEntry::doAccessibleAction( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ sal_Bool bRet = sal_False;
+ checkActionIndex_Impl( nIndex );
+ EnsureIsAlive();
+
+ SvxIconChoiceCtrlEntry* pEntry = m_pIconCtrl->GetEntry( m_nIndex );
+ if ( pEntry && !pEntry->IsSelected() )
+ {
+ m_pIconCtrl->SetNoSelection();
+ m_pIconCtrl->SetCursor( pEntry );
+ bRet = sal_True;
+ }
+
+ return bRet;
+ }
+ // -----------------------------------------------------------------------------
+ ::rtl::OUString SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleActionDescription( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ checkActionIndex_Impl( nIndex );
+ EnsureIsAlive();
+
+ static const ::rtl::OUString sActionDesc( RTL_CONSTASCII_USTRINGPARAM( "Select" ) );
+ return sActionDesc;
+ }
+ // -----------------------------------------------------------------------------
+ Reference< XAccessibleKeyBinding > AccessibleIconChoiceCtrlEntry::getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ Reference< XAccessibleKeyBinding > xRet;
+ checkActionIndex_Impl( nIndex );
+ // ... which key?
+ return xRet;
+ }
+//........................................................................
+}// namespace accessibility
+//........................................................................
+
diff --git a/accessibility/source/extended/accessiblelistbox.cxx b/accessibility/source/extended/accessiblelistbox.cxx
new file mode 100644
index 000000000000..0468cce97d94
--- /dev/null
+++ b/accessibility/source/extended/accessiblelistbox.cxx
@@ -0,0 +1,432 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/extended/accessiblelistbox.hxx>
+#include <accessibility/extended/accessiblelistboxentry.hxx>
+#include <svtools/svtreebx.hxx>
+#include <com/sun/star/awt/Point.hpp>
+#include <com/sun/star/awt/Rectangle.hpp>
+#include <com/sun/star/awt/Size.hpp>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <tools/debug.hxx>
+#include <vcl/svapp.hxx>
+#include <toolkit/awt/vclxwindow.hxx>
+#include <toolkit/helper/convert.hxx>
+#include <unotools/accessiblestatesethelper.hxx>
+
+//........................................................................
+namespace accessibility
+{
+//........................................................................
+
+ // class AccessibleListBox -----------------------------------------------------
+
+ using namespace ::com::sun::star::accessibility;
+ using namespace ::com::sun::star::uno;
+ using namespace ::com::sun::star::lang;
+ using namespace ::com::sun::star;
+
+ DBG_NAME(AccessibleListBox)
+
+ // -----------------------------------------------------------------------------
+ // Ctor() and Dtor()
+ // -----------------------------------------------------------------------------
+ AccessibleListBox::AccessibleListBox( SvTreeListBox& _rListBox, const Reference< XAccessible >& _xParent ) :
+
+ VCLXAccessibleComponent( _rListBox.GetWindowPeer() ),
+ m_xParent( _xParent )
+ {
+ DBG_CTOR( AccessibleListBox, NULL );
+ }
+ // -----------------------------------------------------------------------------
+ AccessibleListBox::~AccessibleListBox()
+ {
+ DBG_DTOR( AccessibleListBox, NULL );
+ if ( isAlive() )
+ {
+ // increment ref count to prevent double call of Dtor
+ osl_incrementInterlockedCount( &m_refCount );
+ dispose();
+ }
+ }
+ IMPLEMENT_FORWARD_XINTERFACE2(AccessibleListBox, VCLXAccessibleComponent, AccessibleListBox_BASE)
+ IMPLEMENT_FORWARD_XTYPEPROVIDER2(AccessibleListBox, VCLXAccessibleComponent, AccessibleListBox_BASE)
+ // -----------------------------------------------------------------------------
+ SvTreeListBox* AccessibleListBox::getListBox() const
+ {
+ return static_cast< SvTreeListBox* >( const_cast<AccessibleListBox*>(this)->GetWindow() );
+ }
+ // -----------------------------------------------------------------------------
+ void AccessibleListBox::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
+ {
+ if ( isAlive() )
+ {
+ switch ( rVclWindowEvent.GetId() )
+ {
+ case VCLEVENT_CHECKBOX_TOGGLE :
+ {
+ if ( getListBox() && getListBox()->HasFocus() )
+ {
+ SvLBoxEntry* pEntry = static_cast< SvLBoxEntry* >( rVclWindowEvent.GetData() );
+ if ( !pEntry )
+ pEntry = getListBox()->GetCurEntry();
+
+ if ( pEntry )
+ {
+ Reference< XAccessible > xChild = new AccessibleListBoxEntry( *getListBox(), pEntry, this );
+ uno::Any aOldValue, aNewValue;
+ aNewValue <<= xChild;
+ NotifyAccessibleEvent( AccessibleEventId::ACTIVE_DESCENDANT_CHANGED, aOldValue, aNewValue );
+ }
+ }
+ break;
+ }
+
+ case VCLEVENT_LISTBOX_SELECT :
+ {
+ // First send an event that tells the listeners of a
+ // modified selection. The active descendant event is
+ // send after that so that the receiving AT has time to
+ // read the text or name of the active child.
+ NotifyAccessibleEvent( AccessibleEventId::SELECTION_CHANGED, Any(), Any() );
+ if ( getListBox() && getListBox()->HasFocus() )
+ {
+ SvLBoxEntry* pEntry = static_cast< SvLBoxEntry* >( rVclWindowEvent.GetData() );
+ if ( pEntry )
+ {
+ Reference< XAccessible > xChild = new AccessibleListBoxEntry( *getListBox(), pEntry, this );
+ uno::Any aOldValue, aNewValue;
+ aNewValue <<= xChild;
+ NotifyAccessibleEvent( AccessibleEventId::ACTIVE_DESCENDANT_CHANGED, aOldValue, aNewValue );
+ }
+ }
+ break;
+
+ // --> OD 2009-04-01 #i92103#
+ case VCLEVENT_ITEM_EXPANDED :
+ case VCLEVENT_ITEM_COLLAPSED :
+ {
+ SvLBoxEntry* pEntry = static_cast< SvLBoxEntry* >( rVclWindowEvent.GetData() );
+ if ( pEntry )
+ {
+ AccessibleListBoxEntry* pAccListBoxEntry =
+ new AccessibleListBoxEntry( *getListBox(), pEntry, this );
+ Reference< XAccessible > xChild = pAccListBoxEntry;
+ const short nAccEvent =
+ ( rVclWindowEvent.GetId() == VCLEVENT_ITEM_EXPANDED )
+ ? AccessibleEventId::LISTBOX_ENTRY_EXPANDED
+ : AccessibleEventId::LISTBOX_ENTRY_COLLAPSED;
+ uno::Any aListBoxEntry;
+ aListBoxEntry <<= xChild;
+ NotifyAccessibleEvent( nAccEvent, Any(), aListBoxEntry );
+ if ( getListBox() && getListBox()->HasFocus() )
+ {
+ NotifyAccessibleEvent( AccessibleEventId::ACTIVE_DESCENDANT_CHANGED, Any(), aListBoxEntry );
+ }
+ }
+ break;
+ }
+ // <--
+ }
+ default:
+ VCLXAccessibleComponent::ProcessWindowEvent (rVclWindowEvent);
+ }
+ }
+ }
+ // -----------------------------------------------------------------------------
+ void AccessibleListBox::ProcessWindowChildEvent( const VclWindowEvent& rVclWindowEvent )
+ {
+ switch ( rVclWindowEvent.GetId() )
+ {
+ case VCLEVENT_WINDOW_SHOW:
+ case VCLEVENT_WINDOW_HIDE:
+ {
+ }
+ break;
+ default:
+ {
+ VCLXAccessibleComponent::ProcessWindowChildEvent( rVclWindowEvent );
+ }
+ break;
+ }
+ }
+
+ // -----------------------------------------------------------------------------
+ // XComponent
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleListBox::disposing()
+ {
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ VCLXAccessibleComponent::disposing();
+ m_xParent = NULL;
+ }
+ // -----------------------------------------------------------------------------
+ // XServiceInfo
+ // -----------------------------------------------------------------------------
+ ::rtl::OUString SAL_CALL AccessibleListBox::getImplementationName() throw(RuntimeException)
+ {
+ return getImplementationName_Static();
+ }
+ // -----------------------------------------------------------------------------
+ Sequence< ::rtl::OUString > SAL_CALL AccessibleListBox::getSupportedServiceNames() throw(RuntimeException)
+ {
+ return getSupportedServiceNames_Static();
+ }
+ // -----------------------------------------------------------------------------
+ sal_Bool SAL_CALL AccessibleListBox::supportsService( const ::rtl::OUString& _rServiceName ) throw (RuntimeException)
+ {
+ Sequence< ::rtl::OUString > aSupported( getSupportedServiceNames() );
+ const ::rtl::OUString* pSupported = aSupported.getConstArray();
+ const ::rtl::OUString* pEnd = pSupported + aSupported.getLength();
+ for ( ; pSupported != pEnd && !pSupported->equals(_rServiceName); ++pSupported )
+ ;
+
+ return pSupported != pEnd;
+ }
+ // -----------------------------------------------------------------------------
+ // XServiceInfo - static methods
+ // -----------------------------------------------------------------------------
+ Sequence< ::rtl::OUString > AccessibleListBox::getSupportedServiceNames_Static(void) throw( RuntimeException )
+ {
+ Sequence< ::rtl::OUString > aSupported(3);
+ aSupported[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.accessibility.AccessibleContext") );
+ aSupported[1] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.accessibility.AccessibleComponent") );
+ aSupported[2] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.awt.AccessibleTreeListBox") );
+ return aSupported;
+ }
+ // -----------------------------------------------------------------------------
+ ::rtl::OUString AccessibleListBox::getImplementationName_Static(void) throw( RuntimeException )
+ {
+ return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.svtools.AccessibleTreeListBox") );
+ }
+ // -----------------------------------------------------------------------------
+ // XAccessible
+ // -----------------------------------------------------------------------------
+ Reference< XAccessibleContext > SAL_CALL AccessibleListBox::getAccessibleContext( ) throw (RuntimeException)
+ {
+ ensureAlive();
+ return this;
+ }
+ // -----------------------------------------------------------------------------
+ // XAccessibleContext
+ // -----------------------------------------------------------------------------
+ sal_Int32 SAL_CALL AccessibleListBox::getAccessibleChildCount( ) throw (RuntimeException)
+ {
+ ::comphelper::OExternalLockGuard aGuard( this );
+
+ ensureAlive();
+
+ sal_Int32 nCount = 0;
+ SvTreeListBox* pSvTreeListBox = getListBox();
+ if ( pSvTreeListBox )
+ nCount = pSvTreeListBox->GetLevelChildCount( NULL );
+
+ return nCount;
+ }
+ // -----------------------------------------------------------------------------
+ Reference< XAccessible > SAL_CALL AccessibleListBox::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException,RuntimeException)
+ {
+ ::comphelper::OExternalLockGuard aGuard( this );
+
+ ensureAlive();
+ SvLBoxEntry* pEntry = getListBox()->GetEntry(i);
+ if ( !pEntry )
+ throw IndexOutOfBoundsException();
+
+ return new AccessibleListBoxEntry( *getListBox(), pEntry, this );
+ }
+ // -----------------------------------------------------------------------------
+ Reference< XAccessible > SAL_CALL AccessibleListBox::getAccessibleParent( ) throw (RuntimeException)
+ {
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ ensureAlive();
+ return m_xParent;
+ }
+ // -----------------------------------------------------------------------------
+ sal_Int16 SAL_CALL AccessibleListBox::getAccessibleRole( ) throw (RuntimeException)
+ {
+ return AccessibleRole::TREE;
+ }
+ // -----------------------------------------------------------------------------
+ ::rtl::OUString SAL_CALL AccessibleListBox::getAccessibleDescription( ) throw (RuntimeException)
+ {
+ ::comphelper::OExternalLockGuard aGuard( this );
+
+ ensureAlive();
+ return getListBox()->GetAccessibleDescription();
+ }
+ // -----------------------------------------------------------------------------
+ ::rtl::OUString SAL_CALL AccessibleListBox::getAccessibleName( ) throw (RuntimeException)
+ {
+ ::comphelper::OExternalLockGuard aGuard( this );
+
+ ensureAlive();
+ return getListBox()->GetAccessibleName();
+ }
+ // -----------------------------------------------------------------------------
+ // XAccessibleSelection
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleListBox::selectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ ::comphelper::OExternalLockGuard aGuard( this );
+
+ ensureAlive();
+
+ SvLBoxEntry* pEntry = getListBox()->GetEntry( nChildIndex );
+ if ( !pEntry )
+ throw IndexOutOfBoundsException();
+
+ getListBox()->Select( pEntry, TRUE );
+ }
+ // -----------------------------------------------------------------------------
+ sal_Bool SAL_CALL AccessibleListBox::isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ ::comphelper::OExternalLockGuard aGuard( this );
+
+ ensureAlive();
+
+ SvLBoxEntry* pEntry = getListBox()->GetEntry( nChildIndex );
+ if ( !pEntry )
+ throw IndexOutOfBoundsException();
+
+ return getListBox()->IsSelected( pEntry );
+ }
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleListBox::clearAccessibleSelection( ) throw (RuntimeException)
+ {
+ ::comphelper::OExternalLockGuard aGuard( this );
+
+ ensureAlive();
+
+ sal_Int32 i, nCount = 0;
+ nCount = getListBox()->GetLevelChildCount( NULL );
+ for ( i = 0; i < nCount; ++i )
+ {
+ SvLBoxEntry* pEntry = getListBox()->GetEntry( i );
+ if ( getListBox()->IsSelected( pEntry ) )
+ getListBox()->Select( pEntry, FALSE );
+ }
+ }
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleListBox::selectAllAccessibleChildren( ) throw (RuntimeException)
+ {
+ ::comphelper::OExternalLockGuard aGuard( this );
+
+ ensureAlive();
+
+ sal_Int32 i, nCount = 0;
+ nCount = getListBox()->GetLevelChildCount( NULL );
+ for ( i = 0; i < nCount; ++i )
+ {
+ SvLBoxEntry* pEntry = getListBox()->GetEntry( i );
+ if ( !getListBox()->IsSelected( pEntry ) )
+ getListBox()->Select( pEntry, TRUE );
+ }
+ }
+ // -----------------------------------------------------------------------------
+ sal_Int32 SAL_CALL AccessibleListBox::getSelectedAccessibleChildCount( ) throw (RuntimeException)
+ {
+ ::comphelper::OExternalLockGuard aGuard( this );
+
+ ensureAlive();
+
+ sal_Int32 i, nSelCount = 0, nCount = 0;
+ nCount = getListBox()->GetLevelChildCount( NULL );
+ for ( i = 0; i < nCount; ++i )
+ {
+ SvLBoxEntry* pEntry = getListBox()->GetEntry( i );
+ if ( getListBox()->IsSelected( pEntry ) )
+ ++nSelCount;
+ }
+
+ return nSelCount;
+ }
+ // -----------------------------------------------------------------------------
+ Reference< XAccessible > SAL_CALL AccessibleListBox::getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ ::comphelper::OExternalLockGuard aGuard( this );
+
+ ensureAlive();
+
+ if ( nSelectedChildIndex < 0 || nSelectedChildIndex >= getSelectedAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+
+ Reference< XAccessible > xChild;
+ sal_Int32 i, nSelCount = 0, nCount = 0;
+ nCount = getListBox()->GetLevelChildCount( NULL );
+ for ( i = 0; i < nCount; ++i )
+ {
+ SvLBoxEntry* pEntry = getListBox()->GetEntry( i );
+ if ( getListBox()->IsSelected( pEntry ) )
+ ++nSelCount;
+
+ if ( nSelCount == ( nSelectedChildIndex + 1 ) )
+ {
+ xChild = new AccessibleListBoxEntry( *getListBox(), pEntry, this );
+ break;
+ }
+ }
+
+ return xChild;
+ }
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleListBox::deselectAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ ::comphelper::OExternalLockGuard aGuard( this );
+
+ ensureAlive();
+
+ SvLBoxEntry* pEntry = getListBox()->GetEntry( nSelectedChildIndex );
+ if ( !pEntry )
+ throw IndexOutOfBoundsException();
+
+ getListBox()->Select( pEntry, FALSE );
+ }
+ // -----------------------------------------------------------------------------
+ void AccessibleListBox::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
+ {
+ VCLXAccessibleComponent::FillAccessibleStateSet( rStateSet );
+ if ( getListBox() && isAlive() )
+ {
+ rStateSet.AddState( AccessibleStateType::FOCUSABLE );
+ rStateSet.AddState( AccessibleStateType::MANAGES_DESCENDANTS );
+ if ( getListBox()->GetSelectionMode() == MULTIPLE_SELECTION )
+ rStateSet.AddState( AccessibleStateType::MULTI_SELECTABLE );
+ }
+ }
+
+
+//........................................................................
+}// namespace accessibility
+//........................................................................
+
diff --git a/accessibility/source/extended/accessiblelistboxentry.cxx b/accessibility/source/extended/accessiblelistboxentry.cxx
new file mode 100644
index 000000000000..5ce10cbc81b3
--- /dev/null
+++ b/accessibility/source/extended/accessiblelistboxentry.cxx
@@ -0,0 +1,970 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include "accessibility/extended/accessiblelistboxentry.hxx"
+#include <svtools/svtreebx.hxx>
+#include <svtools/stringtransfer.hxx>
+#include <com/sun/star/awt/Point.hpp>
+#include <com/sun/star/awt/Rectangle.hpp>
+#include <com/sun/star/awt/Size.hpp>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleRelationType.hpp>
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <tools/debug.hxx>
+#include <vcl/svapp.hxx>
+#include <vcl/controllayout.hxx>
+#include <toolkit/awt/vclxwindow.hxx>
+#include <toolkit/helper/convert.hxx>
+#include <unotools/accessiblestatesethelper.hxx>
+#include <unotools/accessiblerelationsethelper.hxx>
+#include <cppuhelper/typeprovider.hxx>
+#include <comphelper/sequence.hxx>
+#include <comphelper/accessibleeventnotifier.hxx>
+#include <toolkit/helper/vclunohelper.hxx>
+
+#define ACCESSIBLE_ACTION_COUNT 1
+
+namespace
+{
+ void checkActionIndex_Impl( sal_Int32 _nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException)
+ {
+ if ( _nIndex < 0 || _nIndex >= ACCESSIBLE_ACTION_COUNT )
+ // only three actions
+ throw ::com::sun::star::lang::IndexOutOfBoundsException();
+ }
+}
+
+//........................................................................
+namespace accessibility
+{
+ //........................................................................
+ // class ALBSolarGuard ---------------------------------------------------------
+
+ /** Aquire the solar mutex. */
+ class ALBSolarGuard : public ::vos::OGuard
+ {
+ public:
+ inline ALBSolarGuard() : ::vos::OGuard( Application::GetSolarMutex() ) {}
+ };
+
+ // class AccessibleListBoxEntry -----------------------------------------------------
+
+ using namespace ::com::sun::star::accessibility;
+ using namespace ::com::sun::star::uno;
+ using namespace ::com::sun::star::lang;
+ using namespace ::com::sun::star;
+
+ DBG_NAME(AccessibleListBoxEntry)
+
+ // -----------------------------------------------------------------------------
+ // Ctor() and Dtor()
+ // -----------------------------------------------------------------------------
+ AccessibleListBoxEntry::AccessibleListBoxEntry( SvTreeListBox& _rListBox,
+ SvLBoxEntry* _pEntry,
+ const Reference< XAccessible >& _xParent ) :
+
+ AccessibleListBoxEntry_BASE ( m_aMutex ),
+ ListBoxAccessibleBase( _rListBox ),
+
+ m_nClientId ( 0 ),
+ m_aParent ( _xParent )
+
+ {
+ DBG_CTOR( AccessibleListBoxEntry, NULL );
+
+ _rListBox.FillEntryPath( _pEntry, m_aEntryPath );
+ }
+ // -----------------------------------------------------------------------------
+ AccessibleListBoxEntry::~AccessibleListBoxEntry()
+ {
+ DBG_DTOR( AccessibleListBoxEntry, NULL );
+
+ if ( IsAlive_Impl() )
+ {
+ // increment ref count to prevent double call of Dtor
+ osl_incrementInterlockedCount( &m_refCount );
+ dispose();
+ }
+ }
+
+ // -----------------------------------------------------------------------------
+ Rectangle AccessibleListBoxEntry::GetBoundingBox_Impl() const
+ {
+ Rectangle aRect;
+ SvLBoxEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
+ if ( pEntry )
+ {
+ aRect = getListBox()->GetBoundingRect( pEntry );
+ SvLBoxEntry* pParent = getListBox()->GetParent( pEntry );
+ if ( pParent )
+ {
+ // position relative to parent entry
+ Point aTopLeft = aRect.TopLeft();
+ aTopLeft -= getListBox()->GetBoundingRect( pParent ).TopLeft();
+ aRect = Rectangle( aTopLeft, aRect.GetSize() );
+ }
+ }
+
+ return aRect;
+ }
+ // -----------------------------------------------------------------------------
+ Rectangle AccessibleListBoxEntry::GetBoundingBoxOnScreen_Impl() const
+ {
+ Rectangle aRect;
+ SvLBoxEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
+ if ( pEntry )
+ {
+ aRect = getListBox()->GetBoundingRect( pEntry );
+ Point aTopLeft = aRect.TopLeft();
+ aTopLeft += getListBox()->GetWindowExtentsRelative( NULL ).TopLeft();
+ aRect = Rectangle( aTopLeft, aRect.GetSize() );
+ }
+
+ return aRect;
+ }
+ // -----------------------------------------------------------------------------
+ sal_Bool AccessibleListBoxEntry::IsAlive_Impl() const
+ {
+ return ( !rBHelper.bDisposed && !rBHelper.bInDispose && isAlive() );
+ }
+ // -----------------------------------------------------------------------------
+ sal_Bool AccessibleListBoxEntry::IsShowing_Impl() const
+ {
+ Reference< XAccessible > xParent = implGetParentAccessible( );
+
+ sal_Bool bShowing = sal_False;
+ Reference< XAccessibleContext > m_xParentContext =
+ xParent.is() ? xParent->getAccessibleContext() : Reference< XAccessibleContext >();
+ if( m_xParentContext.is() )
+ {
+ Reference< XAccessibleComponent > xParentComp( m_xParentContext, uno::UNO_QUERY );
+ if( xParentComp.is() )
+ bShowing = GetBoundingBox_Impl().IsOver( VCLRectangle( xParentComp->getBounds() ) );
+ }
+
+ return bShowing;
+ }
+ // -----------------------------------------------------------------------------
+ Rectangle AccessibleListBoxEntry::GetBoundingBox() throw ( lang::DisposedException )
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ EnsureIsAlive();
+ return GetBoundingBox_Impl();
+ }
+ // -----------------------------------------------------------------------------
+ Rectangle AccessibleListBoxEntry::GetBoundingBoxOnScreen() throw ( lang::DisposedException )
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ EnsureIsAlive();
+ return GetBoundingBoxOnScreen_Impl();
+ }
+ // -----------------------------------------------------------------------------
+ void AccessibleListBoxEntry::EnsureIsAlive() const throw ( lang::DisposedException )
+ {
+ if ( !IsAlive_Impl() )
+ throw lang::DisposedException();
+ }
+ // -----------------------------------------------------------------------------
+ ::rtl::OUString AccessibleListBoxEntry::implGetText()
+ {
+ ::rtl::OUString sRet;
+ SvLBoxEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
+ if ( pEntry )
+ sRet = getListBox()->SearchEntryText( pEntry );
+ return sRet;
+ }
+ // -----------------------------------------------------------------------------
+ Locale AccessibleListBoxEntry::implGetLocale()
+ {
+ Locale aLocale;
+ aLocale = Application::GetSettings().GetUILocale();
+
+ return aLocale;
+ }
+ void AccessibleListBoxEntry::implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex )
+ {
+ nStartIndex = 0;
+ nEndIndex = 0;
+ }
+ // -----------------------------------------------------------------------------
+ // XTypeProvider
+ // -----------------------------------------------------------------------------
+ // -----------------------------------------------------------------------------
+ Sequence< sal_Int8 > AccessibleListBoxEntry::getImplementationId() throw (RuntimeException)
+ {
+ static ::cppu::OImplementationId* pId = NULL;
+
+ if ( !pId )
+ {
+ ::osl::Guard< ::osl::Mutex > aGuard( m_aMutex );
+
+ if ( !pId )
+ {
+ static ::cppu::OImplementationId aId;
+ pId = &aId;
+ }
+ }
+ return pId->getImplementationId();
+ }
+
+ // -----------------------------------------------------------------------------
+ // XComponent/ListBoxAccessibleBase
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleListBoxEntry::dispose() throw ( uno::RuntimeException )
+ {
+ AccessibleListBoxEntry_BASE::dispose();
+ }
+
+ // -----------------------------------------------------------------------------
+ // XComponent
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleListBoxEntry::disposing()
+ {
+ ALBSolarGuard();
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ Reference< XAccessible > xKeepAlive( this );
+
+ // Send a disposing to all listeners.
+ if ( m_nClientId )
+ {
+ ::comphelper::AccessibleEventNotifier::TClientId nId = m_nClientId;
+ m_nClientId = 0;
+ ::comphelper::AccessibleEventNotifier::revokeClientNotifyDisposing( nId, *this );
+ }
+
+ // clean up
+ {
+
+ ListBoxAccessibleBase::disposing();
+ }
+ m_aParent = WeakReference< XAccessible >();
+ }
+ // -----------------------------------------------------------------------------
+ // XServiceInfo
+ // -----------------------------------------------------------------------------
+ ::rtl::OUString SAL_CALL AccessibleListBoxEntry::getImplementationName() throw(RuntimeException)
+ {
+ return getImplementationName_Static();
+ }
+ // -----------------------------------------------------------------------------
+ Sequence< ::rtl::OUString > SAL_CALL AccessibleListBoxEntry::getSupportedServiceNames() throw(RuntimeException)
+ {
+ return getSupportedServiceNames_Static();
+ }
+ // -----------------------------------------------------------------------------
+ sal_Bool SAL_CALL AccessibleListBoxEntry::supportsService( const ::rtl::OUString& _rServiceName ) throw (RuntimeException)
+ {
+ Sequence< ::rtl::OUString > aSupported( getSupportedServiceNames() );
+ const ::rtl::OUString* pSupported = aSupported.getConstArray();
+ const ::rtl::OUString* pEnd = pSupported + aSupported.getLength();
+ for ( ; pSupported != pEnd && !pSupported->equals(_rServiceName); ++pSupported )
+ ;
+
+ return pSupported != pEnd;
+ }
+ // -----------------------------------------------------------------------------
+ // XServiceInfo - static methods
+ // -----------------------------------------------------------------------------
+ Sequence< ::rtl::OUString > AccessibleListBoxEntry::getSupportedServiceNames_Static(void) throw( RuntimeException )
+ {
+ Sequence< ::rtl::OUString > aSupported(3);
+ aSupported[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.accessibility.AccessibleContext") );
+ aSupported[1] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.accessibility.AccessibleComponent") );
+ aSupported[2] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.awt.AccessibleTreeListBoxEntry") );
+ return aSupported;
+ }
+ // -----------------------------------------------------------------------------
+ ::rtl::OUString AccessibleListBoxEntry::getImplementationName_Static(void) throw( RuntimeException )
+ {
+ return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.svtools.AccessibleTreeListBoxEntry") );
+ }
+ // -----------------------------------------------------------------------------
+ // XAccessible
+ // -----------------------------------------------------------------------------
+ Reference< XAccessibleContext > SAL_CALL AccessibleListBoxEntry::getAccessibleContext( ) throw (RuntimeException)
+ {
+ EnsureIsAlive();
+ return this;
+ }
+ // -----------------------------------------------------------------------------
+ // XAccessibleContext
+ // -----------------------------------------------------------------------------
+ sal_Int32 SAL_CALL AccessibleListBoxEntry::getAccessibleChildCount( ) throw (RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ EnsureIsAlive();
+ SvLBoxEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
+ sal_Int32 nCount = 0;
+ if ( pEntry )
+ nCount = getListBox()->GetLevelChildCount( pEntry );
+
+ return nCount;
+ }
+ // -----------------------------------------------------------------------------
+ Reference< XAccessible > SAL_CALL AccessibleListBoxEntry::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException,RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+
+ SvLBoxEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
+ SvLBoxEntry* pEntry = pParent ? getListBox()->GetEntry( pParent, i ) : NULL;
+ if ( !pEntry )
+ throw IndexOutOfBoundsException();
+
+ return new AccessibleListBoxEntry( *getListBox(), pEntry, this );
+ }
+
+ // -----------------------------------------------------------------------------
+ Reference< XAccessible > AccessibleListBoxEntry::implGetParentAccessible( ) const
+ {
+ Reference< XAccessible > xParent = (Reference< XAccessible >)m_aParent;
+ if ( !xParent.is() )
+ {
+ DBG_ASSERT( m_aEntryPath.size(), "AccessibleListBoxEntry::getAccessibleParent: invalid path!" );
+ if ( 1 == m_aEntryPath.size() )
+ { // we're a top level entry
+ // -> our parent is the tree listbox itself
+ if ( getListBox() )
+ xParent = getListBox()->GetAccessible( );
+ }
+ else
+ { // we have a entry as parent -> get it's accessible
+
+ // shorten our access path by one
+ ::std::deque< sal_Int32 > aParentPath( m_aEntryPath );
+ aParentPath.pop_back();
+
+ // get the entry for this shortened access path
+ SvLBoxEntry* pParentEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
+ DBG_ASSERT( pParentEntry, "AccessibleListBoxEntry::implGetParentAccessible: could not obtain a parent entry!" );
+
+ if ( pParentEntry )
+ xParent = new AccessibleListBoxEntry( *getListBox(), pParentEntry, NULL );
+ // note that we pass NULL here as parent-accessible:
+ // this is allowed, as the AccessibleListBoxEntry class will create it's parent
+ // when needed
+ }
+ }
+
+ return xParent;
+ }
+
+ // -----------------------------------------------------------------------------
+ Reference< XAccessible > SAL_CALL AccessibleListBoxEntry::getAccessibleParent( ) throw (RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+
+ return implGetParentAccessible( );
+ }
+ // -----------------------------------------------------------------------------
+ sal_Int32 SAL_CALL AccessibleListBoxEntry::getAccessibleIndexInParent( ) throw (RuntimeException)
+ {
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ DBG_ASSERT( !m_aEntryPath.empty(), "empty path" );
+ return m_aEntryPath.empty() ? -1 : m_aEntryPath.back();
+ }
+ // -----------------------------------------------------------------------------
+ sal_Int16 SAL_CALL AccessibleListBoxEntry::getAccessibleRole( ) throw (RuntimeException)
+ {
+ return AccessibleRole::LABEL;
+ }
+ // -----------------------------------------------------------------------------
+ ::rtl::OUString SAL_CALL AccessibleListBoxEntry::getAccessibleDescription( ) throw (RuntimeException)
+ {
+ // no description for every item
+ return ::rtl::OUString();
+ }
+ // -----------------------------------------------------------------------------
+ ::rtl::OUString SAL_CALL AccessibleListBoxEntry::getAccessibleName( ) throw (RuntimeException)
+ {
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ EnsureIsAlive();
+ return implGetText();
+ }
+ // -----------------------------------------------------------------------------
+ Reference< XAccessibleRelationSet > SAL_CALL AccessibleListBoxEntry::getAccessibleRelationSet( ) throw (RuntimeException)
+ {
+ Reference< XAccessibleRelationSet > xRelSet;
+ Reference< XAccessible > xParent;
+ if ( m_aEntryPath.size() > 1 ) // not a root entry
+ xParent = implGetParentAccessible();
+ if ( xParent.is() )
+ {
+ utl::AccessibleRelationSetHelper* pRelationSetHelper = new utl::AccessibleRelationSetHelper;
+ Sequence< Reference< XInterface > > aSequence(1);
+ aSequence[0] = xParent;
+ pRelationSetHelper->AddRelation(
+ AccessibleRelation( AccessibleRelationType::NODE_CHILD_OF, aSequence ) );
+ xRelSet = pRelationSetHelper;
+ }
+ return xRelSet;
+ }
+ // -----------------------------------------------------------------------------
+ Reference< XAccessibleStateSet > SAL_CALL AccessibleListBoxEntry::getAccessibleStateSet( ) throw (RuntimeException)
+ {
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ utl::AccessibleStateSetHelper* pStateSetHelper = new utl::AccessibleStateSetHelper;
+ Reference< XAccessibleStateSet > xStateSet = pStateSetHelper;
+
+ if ( IsAlive_Impl() )
+ {
+ pStateSetHelper->AddState( AccessibleStateType::TRANSIENT );
+ pStateSetHelper->AddState( AccessibleStateType::SELECTABLE );
+ pStateSetHelper->AddState( AccessibleStateType::ENABLED );
+ pStateSetHelper->AddState( AccessibleStateType::SENSITIVE );
+ if ( getListBox()->IsInplaceEditingEnabled() )
+ pStateSetHelper->AddState( AccessibleStateType::EDITABLE );
+ if ( IsShowing_Impl() )
+ pStateSetHelper->AddState( AccessibleStateType::SHOWING );
+ getListBox()->FillAccessibleEntryStateSet(
+ getListBox()->GetEntryFromPath( m_aEntryPath ), *pStateSetHelper );
+ }
+ else
+ pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
+
+ return xStateSet;
+ }
+ // -----------------------------------------------------------------------------
+ Locale SAL_CALL AccessibleListBoxEntry::getLocale( ) throw (IllegalAccessibleComponentStateException, RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ return implGetLocale();
+ }
+ // -----------------------------------------------------------------------------
+ // XAccessibleComponent
+ // -----------------------------------------------------------------------------
+ sal_Bool SAL_CALL AccessibleListBoxEntry::containsPoint( const awt::Point& rPoint ) throw (RuntimeException)
+ {
+ return Rectangle( Point(), GetBoundingBox().GetSize() ).IsInside( VCLPoint( rPoint ) );
+ }
+ // -----------------------------------------------------------------------------
+ Reference< XAccessible > SAL_CALL AccessibleListBoxEntry::getAccessibleAtPoint( const awt::Point& _aPoint ) throw (RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ EnsureIsAlive();
+ SvLBoxEntry* pEntry = getListBox()->GetEntry( VCLPoint( _aPoint ) );
+ if ( !pEntry )
+ throw RuntimeException();
+
+ Reference< XAccessible > xAcc;
+ AccessibleListBoxEntry* pAccEntry = new AccessibleListBoxEntry( *getListBox(), pEntry, this );
+ Rectangle aRect = pAccEntry->GetBoundingBox_Impl();
+ if ( aRect.IsInside( VCLPoint( _aPoint ) ) )
+ xAcc = pAccEntry;
+ return xAcc;
+ }
+ // -----------------------------------------------------------------------------
+ awt::Rectangle SAL_CALL AccessibleListBoxEntry::getBounds( ) throw (RuntimeException)
+ {
+ return AWTRectangle( GetBoundingBox() );
+ }
+ // -----------------------------------------------------------------------------
+ awt::Point SAL_CALL AccessibleListBoxEntry::getLocation( ) throw (RuntimeException)
+ {
+ return AWTPoint( GetBoundingBox().TopLeft() );
+ }
+ // -----------------------------------------------------------------------------
+ awt::Point SAL_CALL AccessibleListBoxEntry::getLocationOnScreen( ) throw (RuntimeException)
+ {
+ return AWTPoint( GetBoundingBoxOnScreen().TopLeft() );
+ }
+ // -----------------------------------------------------------------------------
+ awt::Size SAL_CALL AccessibleListBoxEntry::getSize( ) throw (RuntimeException)
+ {
+ return AWTSize( GetBoundingBox().GetSize() );
+ }
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleListBoxEntry::grabFocus( ) throw (RuntimeException)
+ {
+ // do nothing, because no focus for each item
+ }
+ // -----------------------------------------------------------------------------
+ sal_Int32 AccessibleListBoxEntry::getForeground( ) throw (RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ sal_Int32 nColor = 0;
+ Reference< XAccessible > xParent = getAccessibleParent();
+ if ( xParent.is() )
+ {
+ Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
+ if ( xParentComp.is() )
+ nColor = xParentComp->getForeground();
+ }
+
+ return nColor;
+ }
+ // -----------------------------------------------------------------------------
+ sal_Int32 AccessibleListBoxEntry::getBackground( ) throw (RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ sal_Int32 nColor = 0;
+ Reference< XAccessible > xParent = getAccessibleParent();
+ if ( xParent.is() )
+ {
+ Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
+ if ( xParentComp.is() )
+ nColor = xParentComp->getBackground();
+ }
+
+ return nColor;
+ }
+ // -----------------------------------------------------------------------------
+ // XAccessibleText
+ // -----------------------------------------------------------------------------
+ // -----------------------------------------------------------------------------
+ awt::Rectangle SAL_CALL AccessibleListBoxEntry::getCharacterBounds( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ EnsureIsAlive();
+
+ if ( !implIsValidIndex( nIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ awt::Rectangle aBounds( 0, 0, 0, 0 );
+ SvLBoxEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
+ if ( pEntry )
+ {
+ ::vcl::ControlLayoutData aLayoutData;
+ Rectangle aItemRect = GetBoundingBox();
+ getListBox()->RecordLayoutData( &aLayoutData, aItemRect );
+ Rectangle aCharRect = aLayoutData.GetCharacterBounds( nIndex );
+ aCharRect.Move( -aItemRect.Left(), -aItemRect.Top() );
+ aBounds = AWTRectangle( aCharRect );
+ }
+
+ return aBounds;
+ }
+ // -----------------------------------------------------------------------------
+ sal_Int32 SAL_CALL AccessibleListBoxEntry::getIndexAtPoint( const awt::Point& aPoint ) throw (RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+
+ sal_Int32 nIndex = -1;
+ SvLBoxEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
+ if ( pEntry )
+ {
+ ::vcl::ControlLayoutData aLayoutData;
+ Rectangle aItemRect = GetBoundingBox();
+ getListBox()->RecordLayoutData( &aLayoutData, aItemRect );
+ Point aPnt( VCLPoint( aPoint ) );
+ aPnt += aItemRect.TopLeft();
+ nIndex = aLayoutData.GetIndexForPoint( aPnt );
+ }
+
+ return nIndex;
+ }
+ // -----------------------------------------------------------------------------
+ sal_Bool SAL_CALL AccessibleListBoxEntry::copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+
+ String sText = getText();
+ if ( ( 0 > nStartIndex ) || ( sText.Len() <= nStartIndex )
+ || ( 0 > nEndIndex ) || ( sText.Len() <= nEndIndex ) )
+ throw IndexOutOfBoundsException();
+
+ sal_Int32 nLen = nEndIndex - nStartIndex + 1;
+ ::svt::OStringTransfer::CopyString( sText.Copy( (USHORT)nStartIndex, (USHORT)nLen ), getListBox() );
+
+ return sal_True;
+ }
+ // -----------------------------------------------------------------------------
+ // XAccessibleEventBroadcaster
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleListBoxEntry::addEventListener( const Reference< XAccessibleEventListener >& xListener ) throw (RuntimeException)
+ {
+ if (xListener.is())
+ {
+ ::osl::MutexGuard aGuard( m_aMutex );
+ if (!m_nClientId)
+ m_nClientId = comphelper::AccessibleEventNotifier::registerClient( );
+ comphelper::AccessibleEventNotifier::addEventListener( m_nClientId, xListener );
+ }
+ }
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleListBoxEntry::removeEventListener( const Reference< XAccessibleEventListener >& xListener ) throw (RuntimeException)
+ {
+ if (xListener.is())
+ {
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ sal_Int32 nListenerCount = comphelper::AccessibleEventNotifier::removeEventListener( m_nClientId, xListener );
+ if ( !nListenerCount )
+ {
+ // no listeners anymore
+ // -> revoke ourself. This may lead to the notifier thread dying (if we were the last client),
+ // and at least to us not firing any events anymore, in case somebody calls
+ // NotifyAccessibleEvent, again
+ sal_Int32 nId = m_nClientId;
+ m_nClientId = 0;
+ comphelper::AccessibleEventNotifier::revokeClient( nId );
+
+ }
+ }
+ }
+ // -----------------------------------------------------------------------------
+ // XAccessibleAction
+ // -----------------------------------------------------------------------------
+ sal_Int32 SAL_CALL AccessibleListBoxEntry::getAccessibleActionCount( ) throw (RuntimeException)
+ {
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ // three actions supported
+ return ACCESSIBLE_ACTION_COUNT;
+ }
+ // -----------------------------------------------------------------------------
+ sal_Bool SAL_CALL AccessibleListBoxEntry::doAccessibleAction( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ sal_Bool bRet = sal_False;
+ checkActionIndex_Impl( nIndex );
+ EnsureIsAlive();
+
+ SvLBoxEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
+ if ( pEntry )
+ {
+ if ( getListBox()->IsExpanded( pEntry ) )
+ getListBox()->Collapse( pEntry );
+ else
+ getListBox()->Expand( pEntry );
+ bRet = sal_True;
+ }
+
+ return bRet;
+ }
+ // -----------------------------------------------------------------------------
+ ::rtl::OUString SAL_CALL AccessibleListBoxEntry::getAccessibleActionDescription( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ checkActionIndex_Impl( nIndex );
+ EnsureIsAlive();
+
+ static const ::rtl::OUString sActionDesc( RTL_CONSTASCII_USTRINGPARAM( "toggleExpand" ) );
+ return sActionDesc;
+ }
+ // -----------------------------------------------------------------------------
+ Reference< XAccessibleKeyBinding > AccessibleListBoxEntry::getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ Reference< XAccessibleKeyBinding > xRet;
+ checkActionIndex_Impl( nIndex );
+ // ... which key?
+ return xRet;
+ }
+ // -----------------------------------------------------------------------------
+ // XAccessibleSelection
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleListBoxEntry::selectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ EnsureIsAlive();
+
+ SvLBoxEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
+ SvLBoxEntry* pEntry = getListBox()->GetEntry( pParent, nChildIndex );
+ if ( !pEntry )
+ throw IndexOutOfBoundsException();
+
+ getListBox()->Select( pEntry, TRUE );
+ }
+ // -----------------------------------------------------------------------------
+ sal_Bool SAL_CALL AccessibleListBoxEntry::isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ EnsureIsAlive();
+
+ SvLBoxEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
+ SvLBoxEntry* pEntry = getListBox()->GetEntry( pParent, nChildIndex );
+ if ( !pEntry )
+ throw IndexOutOfBoundsException();
+
+ return getListBox()->IsSelected( pEntry );
+ }
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleListBoxEntry::clearAccessibleSelection( ) throw (RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ EnsureIsAlive();
+
+ SvLBoxEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
+ if ( !pParent )
+ throw RuntimeException();
+ sal_Int32 i, nCount = 0;
+ nCount = getListBox()->GetLevelChildCount( pParent );
+ for ( i = 0; i < nCount; ++i )
+ {
+ SvLBoxEntry* pEntry = getListBox()->GetEntry( pParent, i );
+ if ( getListBox()->IsSelected( pEntry ) )
+ getListBox()->Select( pEntry, FALSE );
+ }
+ }
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleListBoxEntry::selectAllAccessibleChildren( ) throw (RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ EnsureIsAlive();
+
+ SvLBoxEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
+ if ( !pParent )
+ throw RuntimeException();
+ sal_Int32 i, nCount = 0;
+ nCount = getListBox()->GetLevelChildCount( pParent );
+ for ( i = 0; i < nCount; ++i )
+ {
+ SvLBoxEntry* pEntry = getListBox()->GetEntry( pParent, i );
+ if ( !getListBox()->IsSelected( pEntry ) )
+ getListBox()->Select( pEntry, TRUE );
+ }
+ }
+ // -----------------------------------------------------------------------------
+ sal_Int32 SAL_CALL AccessibleListBoxEntry::getSelectedAccessibleChildCount( ) throw (RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ EnsureIsAlive();
+
+ sal_Int32 i, nSelCount = 0, nCount = 0;
+
+ SvLBoxEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
+ if ( !pParent )
+ throw RuntimeException();
+ nCount = getListBox()->GetLevelChildCount( pParent );
+ for ( i = 0; i < nCount; ++i )
+ {
+ SvLBoxEntry* pEntry = getListBox()->GetEntry( pParent, i );
+ if ( getListBox()->IsSelected( pEntry ) )
+ ++nSelCount;
+ }
+
+ return nSelCount;
+ }
+ // -----------------------------------------------------------------------------
+ Reference< XAccessible > SAL_CALL AccessibleListBoxEntry::getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ EnsureIsAlive();
+
+ if ( nSelectedChildIndex < 0 || nSelectedChildIndex >= getSelectedAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+
+ Reference< XAccessible > xChild;
+ sal_Int32 i, nSelCount = 0, nCount = 0;
+
+ SvLBoxEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
+ if ( !pParent )
+ throw RuntimeException();
+ nCount = getListBox()->GetLevelChildCount( pParent );
+ for ( i = 0; i < nCount; ++i )
+ {
+ SvLBoxEntry* pEntry = getListBox()->GetEntry( pParent, i );
+ if ( getListBox()->IsSelected( pEntry ) )
+ ++nSelCount;
+
+ if ( nSelCount == ( nSelectedChildIndex + 1 ) )
+ {
+ xChild = new AccessibleListBoxEntry( *getListBox(), pEntry, this );
+ break;
+ }
+ }
+
+ return xChild;
+ }
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleListBoxEntry::deselectAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ EnsureIsAlive();
+
+ SvLBoxEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
+ SvLBoxEntry* pEntry = getListBox()->GetEntry( pParent, nSelectedChildIndex );
+ if ( !pEntry )
+ throw IndexOutOfBoundsException();
+
+ getListBox()->Select( pEntry, FALSE );
+ }
+ sal_Int32 SAL_CALL AccessibleListBoxEntry::getCaretPosition( ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ return -1;
+ }
+ sal_Bool SAL_CALL AccessibleListBoxEntry::setCaretPosition ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+
+ if ( !implIsValidRange( nIndex, nIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ return sal_False;
+ }
+ sal_Unicode SAL_CALL AccessibleListBoxEntry::getCharacter( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+ return OCommonAccessibleText::getCharacter( nIndex );
+ }
+ ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL AccessibleListBoxEntry::getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+
+ ::rtl::OUString sText( implGetText() );
+
+ if ( !implIsValidIndex( nIndex, sText.getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ return ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >();
+ }
+ sal_Int32 SAL_CALL AccessibleListBoxEntry::getCharacterCount( ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+ return OCommonAccessibleText::getCharacterCount( );
+ }
+
+ ::rtl::OUString SAL_CALL AccessibleListBoxEntry::getSelectedText( ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+ return OCommonAccessibleText::getSelectedText( );
+ }
+ sal_Int32 SAL_CALL AccessibleListBoxEntry::getSelectionStart( ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+ return OCommonAccessibleText::getSelectionStart( );
+ }
+ sal_Int32 SAL_CALL AccessibleListBoxEntry::getSelectionEnd( ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+ return OCommonAccessibleText::getSelectionEnd( );
+ }
+ sal_Bool SAL_CALL AccessibleListBoxEntry::setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+
+ if ( !implIsValidRange( nStartIndex, nEndIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ return sal_False;
+ }
+ ::rtl::OUString SAL_CALL AccessibleListBoxEntry::getText( ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+ return OCommonAccessibleText::getText( );
+ }
+ ::rtl::OUString SAL_CALL AccessibleListBoxEntry::getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+ return OCommonAccessibleText::getTextRange( nStartIndex, nEndIndex );
+ }
+ ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleListBoxEntry::getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+ return OCommonAccessibleText::getTextAtIndex( nIndex ,aTextType);
+ }
+ ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleListBoxEntry::getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+ return OCommonAccessibleText::getTextBeforeIndex( nIndex ,aTextType);
+ }
+ ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleListBoxEntry::getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+ {
+ ALBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( m_aMutex );
+ EnsureIsAlive();
+
+ return OCommonAccessibleText::getTextBehindIndex( nIndex ,aTextType);
+ }
+//........................................................................
+}// namespace accessibility
+//........................................................................
+
diff --git a/accessibility/source/extended/accessibletabbar.cxx b/accessibility/source/extended/accessibletabbar.cxx
new file mode 100644
index 000000000000..fc1fb578bd21
--- /dev/null
+++ b/accessibility/source/extended/accessibletabbar.cxx
@@ -0,0 +1,554 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/extended/accessibletabbar.hxx>
+#include <svtools/tabbar.hxx>
+#include <accessibility/extended/accessibletabbarpagelist.hxx>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <unotools/accessiblestatesethelper.hxx>
+#include <unotools/accessiblerelationsethelper.hxx>
+#include <vcl/svapp.hxx>
+#include <toolkit/awt/vclxfont.hxx>
+#include <toolkit/helper/convert.hxx>
+
+#include <vector>
+
+
+//.........................................................................
+namespace accessibility
+{
+//.........................................................................
+
+ using namespace ::com::sun::star;
+ using namespace ::com::sun::star::uno;
+ using namespace ::com::sun::star::lang;
+ using namespace ::com::sun::star::accessibility;
+ using namespace ::comphelper;
+
+ DBG_NAME( AccessibleTabBar )
+
+ // ----------------------------------------------------
+ // class AccessibleTabBar
+ // ----------------------------------------------------
+
+ AccessibleTabBar::AccessibleTabBar( TabBar* pTabBar )
+ :AccessibleTabBarBase( pTabBar )
+ {
+ DBG_CTOR( AccessibleTabBar, NULL );
+
+ if ( m_pTabBar )
+ m_aAccessibleChildren.assign( m_pTabBar->GetAccessibleChildWindowCount() + 1, Reference< XAccessible >() );
+ }
+
+ // -----------------------------------------------------------------------------
+
+ AccessibleTabBar::~AccessibleTabBar()
+ {
+ DBG_DTOR( AccessibleTabBar, NULL );
+ }
+
+ // -----------------------------------------------------------------------------
+
+ void AccessibleTabBar::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
+ {
+ Any aOldValue, aNewValue;
+
+ switch ( rVclWindowEvent.GetId() )
+ {
+ case VCLEVENT_WINDOW_ENABLED:
+ {
+ aNewValue <<= AccessibleStateType::SENSITIVE;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ aNewValue <<= AccessibleStateType::ENABLED;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ }
+ break;
+ case VCLEVENT_WINDOW_DISABLED:
+ {
+ aOldValue <<= AccessibleStateType::ENABLED;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ aOldValue <<= AccessibleStateType::SENSITIVE;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ }
+ break;
+ case VCLEVENT_WINDOW_GETFOCUS:
+ {
+ aNewValue <<= AccessibleStateType::FOCUSED;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ }
+ break;
+ case VCLEVENT_WINDOW_LOSEFOCUS:
+ {
+ aOldValue <<= AccessibleStateType::FOCUSED;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ }
+ break;
+ case VCLEVENT_WINDOW_SHOW:
+ {
+ aNewValue <<= AccessibleStateType::SHOWING;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ }
+ break;
+ case VCLEVENT_WINDOW_HIDE:
+ {
+ aOldValue <<= AccessibleStateType::SHOWING;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ }
+ break;
+ default:
+ {
+ AccessibleTabBarBase::ProcessWindowEvent( rVclWindowEvent );
+ }
+ break;
+ }
+ }
+
+ // -----------------------------------------------------------------------------
+
+ void AccessibleTabBar::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
+ {
+ if ( m_pTabBar )
+ {
+ if ( m_pTabBar->IsEnabled() )
+ {
+ rStateSet.AddState( AccessibleStateType::ENABLED );
+ rStateSet.AddState( AccessibleStateType::SENSITIVE );
+ }
+
+ rStateSet.AddState( AccessibleStateType::FOCUSABLE );
+
+ if ( m_pTabBar->HasFocus() )
+ rStateSet.AddState( AccessibleStateType::FOCUSED );
+
+ rStateSet.AddState( AccessibleStateType::VISIBLE );
+
+ if ( m_pTabBar->IsVisible() )
+ rStateSet.AddState( AccessibleStateType::SHOWING );
+
+ if ( m_pTabBar->GetStyle() & WB_SIZEABLE )
+ rStateSet.AddState( AccessibleStateType::RESIZABLE );
+ }
+ }
+
+ // -----------------------------------------------------------------------------
+ // OCommonAccessibleComponent
+ // -----------------------------------------------------------------------------
+
+ awt::Rectangle AccessibleTabBar::implGetBounds() throw (RuntimeException)
+ {
+ awt::Rectangle aBounds;
+ if ( m_pTabBar )
+ aBounds = AWTRectangle( Rectangle( m_pTabBar->GetPosPixel(), m_pTabBar->GetSizePixel() ) );
+
+ return aBounds;
+ }
+
+ // -----------------------------------------------------------------------------
+ // XInterface
+ // -----------------------------------------------------------------------------
+
+ IMPLEMENT_FORWARD_XINTERFACE2( AccessibleTabBar, AccessibleExtendedComponentHelper_BASE, AccessibleTabBar_BASE )
+
+ // -----------------------------------------------------------------------------
+ // XTypeProvider
+ // -----------------------------------------------------------------------------
+
+ IMPLEMENT_FORWARD_XTYPEPROVIDER2( AccessibleTabBar, AccessibleExtendedComponentHelper_BASE, AccessibleTabBar_BASE )
+
+ // -----------------------------------------------------------------------------
+ // XComponent
+ // -----------------------------------------------------------------------------
+
+ void AccessibleTabBar::disposing()
+ {
+ AccessibleTabBarBase::disposing();
+
+ // dispose all children
+ for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
+ {
+ Reference< XComponent > xComponent( m_aAccessibleChildren[i], UNO_QUERY );
+ if ( xComponent.is() )
+ xComponent->dispose();
+ }
+ m_aAccessibleChildren.clear();
+ }
+
+ // -----------------------------------------------------------------------------
+ // XServiceInfo
+ // -----------------------------------------------------------------------------
+
+ ::rtl::OUString AccessibleTabBar::getImplementationName() throw (RuntimeException)
+ {
+ return ::rtl::OUString::createFromAscii( "com.sun.star.comp.svtools.AccessibleTabBar" );
+ }
+
+ // -----------------------------------------------------------------------------
+
+ sal_Bool AccessibleTabBar::supportsService( const ::rtl::OUString& rServiceName ) throw (RuntimeException)
+ {
+ Sequence< ::rtl::OUString > aNames( getSupportedServiceNames() );
+ const ::rtl::OUString* pNames = aNames.getConstArray();
+ const ::rtl::OUString* pEnd = pNames + aNames.getLength();
+ for ( ; pNames != pEnd && !pNames->equals( rServiceName ); ++pNames )
+ ;
+
+ return pNames != pEnd;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ Sequence< ::rtl::OUString > AccessibleTabBar::getSupportedServiceNames() throw (RuntimeException)
+ {
+ Sequence< ::rtl::OUString > aNames(1);
+ aNames[0] = ::rtl::OUString::createFromAscii( "com.sun.star.awt.AccessibleTabBar" );
+ return aNames;
+ }
+
+ // -----------------------------------------------------------------------------
+ // XAccessible
+ // -----------------------------------------------------------------------------
+
+ Reference< XAccessibleContext > AccessibleTabBar::getAccessibleContext( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ return this;
+ }
+
+ // -----------------------------------------------------------------------------
+ // XAccessibleContext
+ // -----------------------------------------------------------------------------
+
+ sal_Int32 AccessibleTabBar::getAccessibleChildCount() throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ return m_aAccessibleChildren.size();
+ }
+
+ // -----------------------------------------------------------------------------
+
+ Reference< XAccessible > AccessibleTabBar::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ if ( i < 0 || i >= getAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+
+ Reference< XAccessible > xChild = m_aAccessibleChildren[i];
+ if ( !xChild.is() )
+ {
+ if ( m_pTabBar )
+ {
+ sal_Int32 nCount = m_pTabBar->GetAccessibleChildWindowCount();
+
+ if ( i < nCount )
+ {
+ Window* pChild = m_pTabBar->GetAccessibleChildWindow( (USHORT)i );
+ if ( pChild )
+ xChild = pChild->GetAccessible();
+ }
+ else if ( i == nCount )
+ {
+ xChild = new AccessibleTabBarPageList( m_pTabBar, i );
+ }
+
+ // insert into child list
+ m_aAccessibleChildren[i] = xChild;
+ }
+ }
+
+ return xChild;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ Reference< XAccessible > AccessibleTabBar::getAccessibleParent( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ Reference< XAccessible > xParent;
+ if ( m_pTabBar )
+ {
+ Window* pParent = m_pTabBar->GetAccessibleParentWindow();
+ if ( pParent )
+ xParent = pParent->GetAccessible();
+ }
+
+ return xParent;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ sal_Int32 AccessibleTabBar::getAccessibleIndexInParent( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nIndexInParent = -1;
+ if ( m_pTabBar )
+ {
+ Window* pParent = m_pTabBar->GetAccessibleParentWindow();
+ if ( pParent )
+ {
+ for ( USHORT i = 0, nCount = pParent->GetAccessibleChildWindowCount(); i < nCount; ++i )
+ {
+ Window* pChild = pParent->GetAccessibleChildWindow( i );
+ if ( pChild == static_cast< Window* >( m_pTabBar ) )
+ {
+ nIndexInParent = i;
+ break;
+ }
+ }
+ }
+ }
+
+ return nIndexInParent;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ sal_Int16 AccessibleTabBar::getAccessibleRole( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ return AccessibleRole::PANEL;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ ::rtl::OUString AccessibleTabBar::getAccessibleDescription( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ ::rtl::OUString sDescription;
+ if ( m_pTabBar )
+ sDescription = m_pTabBar->GetAccessibleDescription();
+
+ return sDescription;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ ::rtl::OUString AccessibleTabBar::getAccessibleName( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ ::rtl::OUString sName;
+ if ( m_pTabBar )
+ sName = m_pTabBar->GetAccessibleName();
+
+ return sName;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ Reference< XAccessibleRelationSet > AccessibleTabBar::getAccessibleRelationSet( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ utl::AccessibleRelationSetHelper* pRelationSetHelper = new utl::AccessibleRelationSetHelper;
+ Reference< XAccessibleRelationSet > xSet = pRelationSetHelper;
+ return xSet;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ Reference< XAccessibleStateSet > AccessibleTabBar::getAccessibleStateSet( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ utl::AccessibleStateSetHelper* pStateSetHelper = new utl::AccessibleStateSetHelper;
+ Reference< XAccessibleStateSet > xSet = pStateSetHelper;
+
+ if ( !rBHelper.bDisposed && !rBHelper.bInDispose )
+ {
+ FillAccessibleStateSet( *pStateSetHelper );
+ }
+ else
+ {
+ pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
+ }
+
+ return xSet;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ Locale AccessibleTabBar::getLocale( ) throw (IllegalAccessibleComponentStateException, RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ return Application::GetSettings().GetLocale();
+ }
+
+ // -----------------------------------------------------------------------------
+ // XAccessibleComponent
+ // -----------------------------------------------------------------------------
+
+ Reference< XAccessible > AccessibleTabBar::getAccessibleAtPoint( const awt::Point& rPoint ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ Reference< XAccessible > xChild;
+ for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
+ {
+ Reference< XAccessible > xAcc = getAccessibleChild( i );
+ if ( xAcc.is() )
+ {
+ Reference< XAccessibleComponent > xComp( xAcc->getAccessibleContext(), UNO_QUERY );
+ if ( xComp.is() )
+ {
+ Rectangle aRect = VCLRectangle( xComp->getBounds() );
+ Point aPos = VCLPoint( rPoint );
+ if ( aRect.IsInside( aPos ) )
+ {
+ xChild = xAcc;
+ break;
+ }
+ }
+ }
+ }
+
+ return xChild;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ void AccessibleTabBar::grabFocus( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ if ( m_pTabBar )
+ m_pTabBar->GrabFocus();
+ }
+
+ // -----------------------------------------------------------------------------
+
+ sal_Int32 AccessibleTabBar::getForeground( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nColor = 0;
+ if ( m_pTabBar )
+ {
+ if ( m_pTabBar->IsControlForeground() )
+ nColor = m_pTabBar->GetControlForeground().GetColor();
+ else
+ {
+ Font aFont;
+ if ( m_pTabBar->IsControlFont() )
+ aFont = m_pTabBar->GetControlFont();
+ else
+ aFont = m_pTabBar->GetFont();
+ nColor = aFont.GetColor().GetColor();
+ }
+ }
+
+ return nColor;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ sal_Int32 AccessibleTabBar::getBackground( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nColor = 0;
+ if ( m_pTabBar )
+ {
+ if ( m_pTabBar->IsControlBackground() )
+ nColor = m_pTabBar->GetControlBackground().GetColor();
+ else
+ nColor = m_pTabBar->GetBackground().GetColor().GetColor();
+ }
+
+ return nColor;
+ }
+
+ // -----------------------------------------------------------------------------
+ // XAccessibleExtendedComponent
+ // -----------------------------------------------------------------------------
+
+ Reference< awt::XFont > AccessibleTabBar::getFont( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ Reference< awt::XFont > xFont;
+ if ( m_pTabBar )
+ {
+ Reference< awt::XDevice > xDev( m_pTabBar->GetComponentInterface(), UNO_QUERY );
+ if ( xDev.is() )
+ {
+ Font aFont;
+ if ( m_pTabBar->IsControlFont() )
+ aFont = m_pTabBar->GetControlFont();
+ else
+ aFont = m_pTabBar->GetFont();
+ VCLXFont* pVCLXFont = new VCLXFont;
+ pVCLXFont->Init( *xDev.get(), aFont );
+ xFont = pVCLXFont;
+ }
+ }
+
+ return xFont;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ ::rtl::OUString AccessibleTabBar::getTitledBorderText( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ ::rtl::OUString sText;
+ if ( m_pTabBar )
+ sText = m_pTabBar->GetText();
+
+ return sText;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ ::rtl::OUString AccessibleTabBar::getToolTipText( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ ::rtl::OUString sText;
+ if ( m_pTabBar )
+ sText = m_pTabBar->GetQuickHelpText();
+
+ return sText;
+ }
+
+ // -----------------------------------------------------------------------------
+
+//.........................................................................
+} // namespace accessibility
+//.........................................................................
diff --git a/accessibility/source/extended/accessibletabbarbase.cxx b/accessibility/source/extended/accessibletabbarbase.cxx
new file mode 100644
index 000000000000..5c26185f6b03
--- /dev/null
+++ b/accessibility/source/extended/accessibletabbarbase.cxx
@@ -0,0 +1,114 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include "accessibility/extended/accessibletabbarbase.hxx"
+#ifndef ACCESSIBILITY_EXT_ACCESSIBLETABBARPAGELIST
+#include "accessibility/extended/accessibletabbarpagelist.hxx"
+#endif
+#include <toolkit/helper/externallock.hxx>
+#include <svtools/tabbar.hxx>
+
+//.........................................................................
+namespace accessibility
+{
+//.........................................................................
+
+AccessibleTabBarBase::AccessibleTabBarBase( TabBar* pTabBar ) :
+ AccessibleExtendedComponentHelper_BASE( new VCLExternalSolarLock() ),
+ m_pTabBar( 0 )
+{
+ m_pExternalLock = static_cast< VCLExternalSolarLock* >( getExternalLock() );
+ SetTabBarPointer( pTabBar );
+}
+
+AccessibleTabBarBase::~AccessibleTabBarBase()
+{
+ ClearTabBarPointer();
+ DELETEZ( m_pExternalLock );
+}
+
+IMPL_LINK( AccessibleTabBarBase, WindowEventListener, VclSimpleEvent*, pEvent )
+{
+ VclWindowEvent* pWinEvent = dynamic_cast< VclWindowEvent* >( pEvent );
+ DBG_ASSERT( pWinEvent, "AccessibleTabBarBase::WindowEventListener - unknown window event" );
+ if( pWinEvent )
+ {
+ Window* pEventWindow = pWinEvent->GetWindow();
+ DBG_ASSERT( pEventWindow, "AccessibleTabBarBase::WindowEventListener: no window!" );
+
+ if( ( pWinEvent->GetId() == VCLEVENT_TABBAR_PAGEREMOVED ) &&
+ ( (sal_uInt16)(sal_IntPtr) pWinEvent->GetData() == TabBar::PAGE_NOT_FOUND ) &&
+ ( dynamic_cast< AccessibleTabBarPageList *> (this) != NULL ) )
+ {
+ return 0;
+ }
+
+ if ( !pEventWindow->IsAccessibilityEventsSuppressed() || (pWinEvent->GetId() == VCLEVENT_OBJECT_DYING) )
+ ProcessWindowEvent( *pWinEvent );
+ }
+ return 0;
+}
+
+void AccessibleTabBarBase::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
+{
+ if( rVclWindowEvent.GetId() == VCLEVENT_OBJECT_DYING )
+ ClearTabBarPointer();
+}
+
+// XComponent
+
+void AccessibleTabBarBase::disposing()
+{
+ AccessibleExtendedComponentHelper_BASE::disposing();
+ ClearTabBarPointer();
+}
+
+// private
+
+void AccessibleTabBarBase::SetTabBarPointer( TabBar* pTabBar )
+{
+ DBG_ASSERT( !m_pTabBar, "AccessibleTabBarBase::SetTabBarPointer - multiple call" );
+ m_pTabBar = pTabBar;
+ if( m_pTabBar )
+ m_pTabBar->AddEventListener( LINK( this, AccessibleTabBarBase, WindowEventListener ) );
+}
+
+void AccessibleTabBarBase::ClearTabBarPointer()
+{
+ if( m_pTabBar )
+ {
+ m_pTabBar->RemoveEventListener( LINK( this, AccessibleTabBarBase, WindowEventListener ) );
+ m_pTabBar = 0;
+ }
+}
+
+//.........................................................................
+} // namespace accessibility
+//.........................................................................
+
diff --git a/accessibility/source/extended/accessibletabbarpage.cxx b/accessibility/source/extended/accessibletabbarpage.cxx
new file mode 100644
index 000000000000..32dfb591a3ad
--- /dev/null
+++ b/accessibility/source/extended/accessibletabbarpage.cxx
@@ -0,0 +1,511 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/extended/accessibletabbarpage.hxx>
+#include <svtools/tabbar.hxx>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <unotools/accessiblestatesethelper.hxx>
+#include <unotools/accessiblerelationsethelper.hxx>
+#include <vcl/svapp.hxx>
+#include <toolkit/helper/convert.hxx>
+
+
+//.........................................................................
+namespace accessibility
+{
+//.........................................................................
+
+ using namespace ::com::sun::star::accessibility;
+ using namespace ::com::sun::star::uno;
+ using namespace ::com::sun::star::lang;
+ using namespace ::com::sun::star;
+ using namespace ::comphelper;
+
+ // -----------------------------------------------------------------------------
+ // class AccessibleTabBarPage
+ // -----------------------------------------------------------------------------
+
+ AccessibleTabBarPage::AccessibleTabBarPage( TabBar* pTabBar, sal_uInt16 nPageId, const Reference< XAccessible >& rxParent )
+ :AccessibleTabBarBase( pTabBar )
+ ,m_nPageId( nPageId )
+ ,m_xParent( rxParent )
+ {
+ m_bEnabled = IsEnabled();
+ m_bShowing = IsShowing();
+ m_bSelected = IsSelected();
+
+ if ( m_pTabBar )
+ m_sPageText = m_pTabBar->GetPageText( m_nPageId );
+ }
+
+ // -----------------------------------------------------------------------------
+
+ AccessibleTabBarPage::~AccessibleTabBarPage()
+ {
+ }
+
+ // -----------------------------------------------------------------------------
+
+ sal_Bool AccessibleTabBarPage::IsEnabled()
+ {
+ OExternalLockGuard aGuard( this );
+
+ sal_Bool bEnabled = sal_False;
+ if ( m_pTabBar )
+ bEnabled = m_pTabBar->IsPageEnabled( m_nPageId );
+
+ return bEnabled;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ sal_Bool AccessibleTabBarPage::IsShowing()
+ {
+ sal_Bool bShowing = sal_False;
+
+ if ( m_pTabBar && m_pTabBar->IsVisible() )
+ bShowing = sal_True;
+
+ return bShowing;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ sal_Bool AccessibleTabBarPage::IsSelected()
+ {
+ sal_Bool bSelected = sal_False;
+
+ if ( m_pTabBar && m_pTabBar->GetCurPageId() == m_nPageId )
+ bSelected = sal_True;
+
+ return bSelected;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ void AccessibleTabBarPage::SetEnabled( sal_Bool bEnabled )
+ {
+ if ( m_bEnabled != bEnabled )
+ {
+ Any aOldValue[2], aNewValue[2];
+ if ( m_bEnabled )
+ {
+ aOldValue[0] <<= AccessibleStateType::SENSITIVE;
+ aOldValue[1] <<= AccessibleStateType::ENABLED;
+ }
+ else
+ {
+
+ aNewValue[0] <<= AccessibleStateType::ENABLED;
+ aNewValue[1] <<= AccessibleStateType::SENSITIVE;
+ }
+ m_bEnabled = bEnabled;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue[0], aNewValue[0] );
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue[1], aNewValue[1] );
+ }
+ }
+
+ // -----------------------------------------------------------------------------
+
+ void AccessibleTabBarPage::SetShowing( sal_Bool bShowing )
+ {
+ if ( m_bShowing != bShowing )
+ {
+ Any aOldValue, aNewValue;
+ if ( m_bShowing )
+ aOldValue <<= AccessibleStateType::SHOWING;
+ else
+ aNewValue <<= AccessibleStateType::SHOWING;
+ m_bShowing = bShowing;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ }
+ }
+
+ // -----------------------------------------------------------------------------
+
+ void AccessibleTabBarPage::SetSelected( sal_Bool bSelected )
+ {
+ if ( m_bSelected != bSelected )
+ {
+ Any aOldValue, aNewValue;
+ if ( m_bSelected )
+ aOldValue <<= AccessibleStateType::SELECTED;
+ else
+ aNewValue <<= AccessibleStateType::SELECTED;
+ m_bSelected = bSelected;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ }
+ }
+
+ // -----------------------------------------------------------------------------
+
+ void AccessibleTabBarPage::SetPageText( const ::rtl::OUString& sPageText )
+ {
+ if ( !m_sPageText.equals( sPageText ) )
+ {
+ Any aOldValue, aNewValue;
+ aOldValue <<= m_sPageText;
+ aNewValue <<= sPageText;
+ m_sPageText = sPageText;
+ NotifyAccessibleEvent( AccessibleEventId::NAME_CHANGED, aOldValue, aNewValue );
+ }
+ }
+
+ // -----------------------------------------------------------------------------
+
+ void AccessibleTabBarPage::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
+ {
+ if ( IsEnabled() )
+ {
+ rStateSet.AddState( AccessibleStateType::ENABLED );
+ rStateSet.AddState( AccessibleStateType::SENSITIVE );
+ }
+
+ rStateSet.AddState( AccessibleStateType::VISIBLE );
+
+ if ( IsShowing() )
+ rStateSet.AddState( AccessibleStateType::SHOWING );
+
+ rStateSet.AddState( AccessibleStateType::SELECTABLE );
+
+ if ( IsSelected() )
+ rStateSet.AddState( AccessibleStateType::SELECTED );
+ }
+
+ // -----------------------------------------------------------------------------
+ // OCommonAccessibleComponent
+ // -----------------------------------------------------------------------------
+
+ awt::Rectangle AccessibleTabBarPage::implGetBounds() throw (RuntimeException)
+ {
+ awt::Rectangle aBounds;
+ if ( m_pTabBar )
+ {
+ // get bounding rectangle relative to the AccessibleTabBar
+ aBounds = AWTRectangle( m_pTabBar->GetPageRect( m_nPageId ) );
+
+ // get position of the AccessibleTabBarPageList relative to the AccessibleTabBar
+ Reference< XAccessible > xParent = getAccessibleParent();
+ if ( xParent.is() )
+ {
+ Reference< XAccessibleComponent > xParentComponent( xParent->getAccessibleContext(), UNO_QUERY );
+ if ( xParentComponent.is() )
+ {
+ awt::Point aParentLoc = xParentComponent->getLocation();
+
+ // calculate bounding rectangle relative to the AccessibleTabBarPageList
+ aBounds.X -= aParentLoc.X;
+ aBounds.Y -= aParentLoc.Y;
+ }
+ }
+ }
+
+ return aBounds;
+ }
+
+ // -----------------------------------------------------------------------------
+ // XInterface
+ // -----------------------------------------------------------------------------
+
+ IMPLEMENT_FORWARD_XINTERFACE2( AccessibleTabBarPage, AccessibleExtendedComponentHelper_BASE, AccessibleTabBarPage_BASE )
+
+ // -----------------------------------------------------------------------------
+ // XTypeProvider
+ // -----------------------------------------------------------------------------
+
+ IMPLEMENT_FORWARD_XTYPEPROVIDER2( AccessibleTabBarPage, AccessibleExtendedComponentHelper_BASE, AccessibleTabBarPage_BASE )
+
+ // -----------------------------------------------------------------------------
+ // XComponent
+ // -----------------------------------------------------------------------------
+
+ void AccessibleTabBarPage::disposing()
+ {
+ AccessibleTabBarBase::disposing();
+ m_sPageText = ::rtl::OUString();
+ }
+
+ // -----------------------------------------------------------------------------
+ // XServiceInfo
+ // -----------------------------------------------------------------------------
+
+ ::rtl::OUString AccessibleTabBarPage::getImplementationName() throw (RuntimeException)
+ {
+ return ::rtl::OUString::createFromAscii( "com.sun.star.comp.svtools.AccessibleTabBarPage" );
+ }
+
+ // -----------------------------------------------------------------------------
+
+ sal_Bool AccessibleTabBarPage::supportsService( const ::rtl::OUString& rServiceName ) throw (RuntimeException)
+ {
+ Sequence< ::rtl::OUString > aNames( getSupportedServiceNames() );
+ const ::rtl::OUString* pNames = aNames.getConstArray();
+ const ::rtl::OUString* pEnd = pNames + aNames.getLength();
+ for ( ; pNames != pEnd && !pNames->equals( rServiceName ); ++pNames )
+ ;
+
+ return pNames != pEnd;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ Sequence< ::rtl::OUString > AccessibleTabBarPage::getSupportedServiceNames() throw (RuntimeException)
+ {
+ Sequence< ::rtl::OUString > aNames(1);
+ aNames[0] = ::rtl::OUString::createFromAscii( "com.sun.star.awt.AccessibleTabBarPage" );
+ return aNames;
+ }
+
+ // -----------------------------------------------------------------------------
+ // XAccessible
+ // -----------------------------------------------------------------------------
+
+ Reference< XAccessibleContext > AccessibleTabBarPage::getAccessibleContext( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ return this;
+ }
+
+ // -----------------------------------------------------------------------------
+ // XAccessibleContext
+ // -----------------------------------------------------------------------------
+
+ sal_Int32 AccessibleTabBarPage::getAccessibleChildCount() throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ return 0;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ Reference< XAccessible > AccessibleTabBarPage::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ if ( i < 0 || i >= getAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+
+ return Reference< XAccessible >();
+ }
+
+ // -----------------------------------------------------------------------------
+
+ Reference< XAccessible > AccessibleTabBarPage::getAccessibleParent( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ return m_xParent;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ sal_Int32 AccessibleTabBarPage::getAccessibleIndexInParent( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nIndexInParent = -1;
+ if ( m_pTabBar )
+ nIndexInParent = m_pTabBar->GetPagePos( m_nPageId );
+
+ return nIndexInParent;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ sal_Int16 AccessibleTabBarPage::getAccessibleRole( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ return AccessibleRole::PAGE_TAB;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ ::rtl::OUString AccessibleTabBarPage::getAccessibleDescription( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ ::rtl::OUString sDescription;
+ if ( m_pTabBar )
+ sDescription = m_pTabBar->GetHelpText( m_nPageId );
+
+ return sDescription;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ ::rtl::OUString AccessibleTabBarPage::getAccessibleName( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ return m_sPageText;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ Reference< XAccessibleRelationSet > AccessibleTabBarPage::getAccessibleRelationSet( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ utl::AccessibleRelationSetHelper* pRelationSetHelper = new utl::AccessibleRelationSetHelper;
+ Reference< XAccessibleRelationSet > xSet = pRelationSetHelper;
+ return xSet;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ Reference< XAccessibleStateSet > AccessibleTabBarPage::getAccessibleStateSet( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ utl::AccessibleStateSetHelper* pStateSetHelper = new utl::AccessibleStateSetHelper;
+ Reference< XAccessibleStateSet > xSet = pStateSetHelper;
+
+ if ( !rBHelper.bDisposed && !rBHelper.bInDispose )
+ {
+ FillAccessibleStateSet( *pStateSetHelper );
+ }
+ else
+ {
+ pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
+ }
+
+ return xSet;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ Locale AccessibleTabBarPage::getLocale( ) throw (IllegalAccessibleComponentStateException, RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ return Application::GetSettings().GetLocale();
+ }
+
+ // -----------------------------------------------------------------------------
+ // XAccessibleComponent
+ // -----------------------------------------------------------------------------
+
+ Reference< XAccessible > AccessibleTabBarPage::getAccessibleAtPoint( const awt::Point& ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ return Reference< XAccessible >();
+ }
+
+ // -----------------------------------------------------------------------------
+
+ void AccessibleTabBarPage::grabFocus( ) throw (RuntimeException)
+ {
+ // no focus
+ }
+
+ // -----------------------------------------------------------------------------
+
+ sal_Int32 AccessibleTabBarPage::getForeground( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nColor = 0;
+ Reference< XAccessible > xParent = getAccessibleParent();
+ if ( xParent.is() )
+ {
+ Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
+ if ( xParentComp.is() )
+ nColor = xParentComp->getForeground();
+ }
+
+ return nColor;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ sal_Int32 AccessibleTabBarPage::getBackground( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nColor = 0;
+ Reference< XAccessible > xParent = getAccessibleParent();
+ if ( xParent.is() )
+ {
+ Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
+ if ( xParentComp.is() )
+ nColor = xParentComp->getBackground();
+ }
+
+ return nColor;
+ }
+
+ // -----------------------------------------------------------------------------
+ // XAccessibleExtendedComponent
+ // -----------------------------------------------------------------------------
+
+ Reference< awt::XFont > AccessibleTabBarPage::getFont( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ Reference< awt::XFont > xFont;
+ Reference< XAccessible > xParent = getAccessibleParent();
+ if ( xParent.is() )
+ {
+ Reference< XAccessibleExtendedComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
+ if ( xParentComp.is() )
+ xFont = xParentComp->getFont();
+ }
+
+ return xFont;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ ::rtl::OUString AccessibleTabBarPage::getTitledBorderText( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ return m_sPageText;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ ::rtl::OUString AccessibleTabBarPage::getToolTipText( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ return ::rtl::OUString();
+ }
+
+ // -----------------------------------------------------------------------------
+
+//.........................................................................
+} // namespace accessibility
+//.........................................................................
diff --git a/accessibility/source/extended/accessibletabbarpagelist.cxx b/accessibility/source/extended/accessibletabbarpagelist.cxx
new file mode 100644
index 000000000000..51c86003b0c2
--- /dev/null
+++ b/accessibility/source/extended/accessibletabbarpagelist.cxx
@@ -0,0 +1,805 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/extended/accessibletabbarpagelist.hxx>
+#include <svtools/tabbar.hxx>
+#include <accessibility/extended/accessibletabbarpage.hxx>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <unotools/accessiblestatesethelper.hxx>
+#include <unotools/accessiblerelationsethelper.hxx>
+#include <tools/debug.hxx>
+#include <vcl/svapp.hxx>
+#include <toolkit/helper/convert.hxx>
+
+
+//.........................................................................
+namespace accessibility
+{
+//.........................................................................
+
+ using namespace ::com::sun::star::accessibility;
+ using namespace ::com::sun::star::uno;
+ using namespace ::com::sun::star::lang;
+ using namespace ::com::sun::star;
+ using namespace ::comphelper;
+
+ DBG_NAME( AccessibleTabBarPageList )
+
+ // -----------------------------------------------------------------------------
+ // class AccessibleTabBarPageList
+ // -----------------------------------------------------------------------------
+
+ AccessibleTabBarPageList::AccessibleTabBarPageList( TabBar* pTabBar, sal_Int32 nIndexInParent )
+ :AccessibleTabBarBase( pTabBar )
+ ,m_nIndexInParent( nIndexInParent )
+ {
+ DBG_CTOR( AccessibleTabBarPageList, NULL );
+ if ( m_pTabBar )
+ m_aAccessibleChildren.assign( m_pTabBar->GetPageCount(), Reference< XAccessible >() );
+ }
+
+ // -----------------------------------------------------------------------------
+
+ AccessibleTabBarPageList::~AccessibleTabBarPageList()
+ {
+ DBG_DTOR( AccessibleTabBarPageList, NULL );
+ }
+
+ // -----------------------------------------------------------------------------
+
+ void AccessibleTabBarPageList::UpdateEnabled( sal_Int32 i, sal_Bool bEnabled )
+ {
+ if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
+ {
+ Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
+ if ( xChild.is() )
+ {
+ AccessibleTabBarPage* pAccessibleTabBarPage = static_cast< AccessibleTabBarPage* >( xChild.get() );
+ if ( pAccessibleTabBarPage )
+ pAccessibleTabBarPage->SetEnabled( bEnabled );
+ }
+ }
+ }
+
+ // -----------------------------------------------------------------------------
+
+ void AccessibleTabBarPageList::UpdateShowing( sal_Bool bShowing )
+ {
+ for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
+ {
+ Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
+ if ( xChild.is() )
+ {
+ AccessibleTabBarPage* pAccessibleTabBarPage = static_cast< AccessibleTabBarPage* >( xChild.get() );
+ if ( pAccessibleTabBarPage )
+ pAccessibleTabBarPage->SetShowing( bShowing );
+ }
+ }
+ }
+
+ // -----------------------------------------------------------------------------
+
+ void AccessibleTabBarPageList::UpdateSelected( sal_Int32 i, sal_Bool bSelected )
+ {
+ NotifyAccessibleEvent( AccessibleEventId::SELECTION_CHANGED, Any(), Any() );
+
+ if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
+ {
+ Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
+ if ( xChild.is() )
+ {
+ AccessibleTabBarPage* pAccessibleTabBarPage = static_cast< AccessibleTabBarPage* >( xChild.get() );
+ if ( pAccessibleTabBarPage )
+ pAccessibleTabBarPage->SetSelected( bSelected );
+ }
+ }
+ }
+
+ // -----------------------------------------------------------------------------
+
+ void AccessibleTabBarPageList::UpdatePageText( sal_Int32 i )
+ {
+ if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
+ {
+ Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
+ if ( xChild.is() )
+ {
+ AccessibleTabBarPage* pAccessibleTabBarPage = static_cast< AccessibleTabBarPage* >( xChild.get() );
+ if ( pAccessibleTabBarPage )
+ {
+ if ( m_pTabBar )
+ {
+ ::rtl::OUString sPageText = m_pTabBar->GetPageText( m_pTabBar->GetPageId( (sal_uInt16)i ) );
+ pAccessibleTabBarPage->SetPageText( sPageText );
+ }
+ }
+ }
+ }
+ }
+
+ // -----------------------------------------------------------------------------
+
+ void AccessibleTabBarPageList::InsertChild( sal_Int32 i )
+ {
+ if ( i >= 0 && i <= (sal_Int32)m_aAccessibleChildren.size() )
+ {
+ // insert entry in child list
+ m_aAccessibleChildren.insert( m_aAccessibleChildren.begin() + i, Reference< XAccessible >() );
+
+ // send accessible child event
+ Reference< XAccessible > xChild( getAccessibleChild( i ) );
+ if ( xChild.is() )
+ {
+ Any aOldValue, aNewValue;
+ aNewValue <<= xChild;
+ NotifyAccessibleEvent( AccessibleEventId::CHILD, aOldValue, aNewValue );
+ }
+ }
+ }
+
+ // -----------------------------------------------------------------------------
+
+ void AccessibleTabBarPageList::RemoveChild( sal_Int32 i )
+ {
+ if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
+ {
+ // get the accessible of the removed page
+ Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
+
+ // remove entry in child list
+ m_aAccessibleChildren.erase( m_aAccessibleChildren.begin() + i );
+
+ // send accessible child event
+ if ( xChild.is() )
+ {
+ Any aOldValue, aNewValue;
+ aOldValue <<= xChild;
+ NotifyAccessibleEvent( AccessibleEventId::CHILD, aOldValue, aNewValue );
+
+ Reference< XComponent > xComponent( xChild, UNO_QUERY );
+ if ( xComponent.is() )
+ xComponent->dispose();
+ }
+ }
+ }
+
+ // -----------------------------------------------------------------------------
+
+ void AccessibleTabBarPageList::MoveChild( sal_Int32 i, sal_Int32 j )
+ {
+ if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() &&
+ j >= 0 && j <= (sal_Int32)m_aAccessibleChildren.size() )
+ {
+ if ( i < j )
+ --j;
+
+ // get the accessible of the moved page
+ Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
+
+ // remove entry in child list at old position
+ m_aAccessibleChildren.erase( m_aAccessibleChildren.begin() + i );
+
+ // insert entry in child list at new position
+ m_aAccessibleChildren.insert( m_aAccessibleChildren.begin() + j, xChild );
+ }
+ }
+
+ // -----------------------------------------------------------------------------
+
+ void AccessibleTabBarPageList::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
+ {
+ switch ( rVclWindowEvent.GetId() )
+ {
+ case VCLEVENT_WINDOW_ENABLED:
+ {
+ Any aNewValue;
+ aNewValue <<= AccessibleStateType::SENSITIVE;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, Any(), aNewValue );
+ aNewValue <<= AccessibleStateType::ENABLED;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, Any(), aNewValue );
+ }
+ break;
+ case VCLEVENT_WINDOW_DISABLED:
+ {
+ Any aOldValue;
+ aOldValue <<= AccessibleStateType::ENABLED;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, Any() );
+ aOldValue <<= AccessibleStateType::SENSITIVE;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, Any() );
+ }
+ break;
+ case VCLEVENT_WINDOW_SHOW:
+ {
+ Any aOldValue, aNewValue;
+ aNewValue <<= AccessibleStateType::SHOWING;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ UpdateShowing( sal_True );
+ }
+ break;
+ case VCLEVENT_WINDOW_HIDE:
+ {
+ Any aOldValue, aNewValue;
+ aOldValue <<= AccessibleStateType::SHOWING;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ UpdateShowing( sal_False );
+ }
+ break;
+ case VCLEVENT_TABBAR_PAGEENABLED:
+ {
+ if ( m_pTabBar )
+ {
+ sal_uInt16 nPageId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
+ sal_uInt16 nPagePos = m_pTabBar->GetPagePos( nPageId );
+ UpdateEnabled( nPagePos, sal_True );
+ }
+ }
+ break;
+ case VCLEVENT_TABBAR_PAGEDISABLED:
+ {
+ if ( m_pTabBar )
+ {
+ sal_uInt16 nPageId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
+ sal_uInt16 nPagePos = m_pTabBar->GetPagePos( nPageId );
+ UpdateEnabled( nPagePos, sal_False );
+ }
+ }
+ break;
+ case VCLEVENT_TABBAR_PAGESELECTED:
+ {
+ // do nothing
+ }
+ break;
+ case VCLEVENT_TABBAR_PAGEACTIVATED:
+ {
+ if ( m_pTabBar )
+ {
+ sal_uInt16 nPageId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
+ sal_uInt16 nPagePos = m_pTabBar->GetPagePos( nPageId );
+ UpdateSelected( nPagePos, sal_True );
+ }
+ }
+ break;
+ case VCLEVENT_TABBAR_PAGEDEACTIVATED:
+ {
+ if ( m_pTabBar )
+ {
+ sal_uInt16 nPageId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
+ sal_uInt16 nPagePos = m_pTabBar->GetPagePos( nPageId );
+ UpdateSelected( nPagePos, sal_False );
+ }
+ }
+ break;
+ case VCLEVENT_TABBAR_PAGEINSERTED:
+ {
+ if ( m_pTabBar )
+ {
+ sal_uInt16 nPageId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
+ sal_uInt16 nPagePos = m_pTabBar->GetPagePos( nPageId );
+ InsertChild( nPagePos );
+ }
+ }
+ break;
+ case VCLEVENT_TABBAR_PAGEREMOVED:
+ {
+ if ( m_pTabBar )
+ {
+ sal_uInt16 nPageId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
+
+ if ( nPageId == TabBar::PAGE_NOT_FOUND )
+ {
+ for ( sal_Int32 i = m_aAccessibleChildren.size() - 1; i >= 0; --i )
+ RemoveChild( i );
+ }
+ else
+ {
+ for ( sal_Int32 i = 0, nCount = getAccessibleChildCount(); i < nCount; ++i )
+ {
+ Reference< XAccessible > xChild( getAccessibleChild( i ) );
+ if ( xChild.is() )
+ {
+ AccessibleTabBarPage* pAccessibleTabBarPage = static_cast< AccessibleTabBarPage* >( xChild.get() );
+ if ( pAccessibleTabBarPage && pAccessibleTabBarPage->GetPageId() == nPageId )
+ {
+ RemoveChild( i );
+ break;
+ }
+ }
+ }
+ }
+ }
+ }
+ break;
+ case VCLEVENT_TABBAR_PAGEMOVED:
+ {
+ Pair* pPair = (Pair*) rVclWindowEvent.GetData();
+ if ( pPair )
+ MoveChild( pPair->A(), pPair->B() );
+ }
+ break;
+ case VCLEVENT_TABBAR_PAGETEXTCHANGED:
+ {
+ sal_uInt16 nPageId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
+ sal_uInt16 nPagePos = m_pTabBar->GetPagePos( nPageId );
+ UpdatePageText( nPagePos );
+ }
+ break;
+ default:
+ {
+ AccessibleTabBarBase::ProcessWindowEvent( rVclWindowEvent );
+ }
+ break;
+ }
+ }
+
+ // -----------------------------------------------------------------------------
+
+ void AccessibleTabBarPageList::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
+ {
+ if ( m_pTabBar )
+ {
+ if ( m_pTabBar->IsEnabled() )
+ {
+ rStateSet.AddState( AccessibleStateType::ENABLED );
+ rStateSet.AddState( AccessibleStateType::SENSITIVE );
+ }
+
+ rStateSet.AddState( AccessibleStateType::VISIBLE );
+
+ if ( m_pTabBar->IsVisible() )
+ rStateSet.AddState( AccessibleStateType::SHOWING );
+ }
+ }
+
+ // -----------------------------------------------------------------------------
+ // OCommonAccessibleComponent
+ // -----------------------------------------------------------------------------
+
+ awt::Rectangle AccessibleTabBarPageList::implGetBounds() throw (RuntimeException)
+ {
+ awt::Rectangle aBounds;
+ if ( m_pTabBar )
+ aBounds = AWTRectangle( m_pTabBar->GetPageArea() );
+
+ return aBounds;
+ }
+
+ // -----------------------------------------------------------------------------
+ // XInterface
+ // -----------------------------------------------------------------------------
+
+ IMPLEMENT_FORWARD_XINTERFACE2( AccessibleTabBarPageList, AccessibleExtendedComponentHelper_BASE, AccessibleTabBarPageList_BASE )
+
+ // -----------------------------------------------------------------------------
+ // XTypeProvider
+ // -----------------------------------------------------------------------------
+
+ IMPLEMENT_FORWARD_XTYPEPROVIDER2( AccessibleTabBarPageList, AccessibleExtendedComponentHelper_BASE, AccessibleTabBarPageList_BASE )
+
+ // -----------------------------------------------------------------------------
+ // XComponent
+ // -----------------------------------------------------------------------------
+
+ void AccessibleTabBarPageList::disposing()
+ {
+ AccessibleTabBarBase::disposing();
+
+ // dispose all children
+ for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
+ {
+ Reference< XComponent > xComponent( m_aAccessibleChildren[i], UNO_QUERY );
+ if ( xComponent.is() )
+ xComponent->dispose();
+ }
+ m_aAccessibleChildren.clear();
+ }
+
+ // -----------------------------------------------------------------------------
+ // XServiceInfo
+ // -----------------------------------------------------------------------------
+
+ ::rtl::OUString AccessibleTabBarPageList::getImplementationName() throw (RuntimeException)
+ {
+ return ::rtl::OUString::createFromAscii( "com.sun.star.comp.svtools.AccessibleTabBarPageList" );
+ }
+
+ // -----------------------------------------------------------------------------
+
+ sal_Bool AccessibleTabBarPageList::supportsService( const ::rtl::OUString& rServiceName ) throw (RuntimeException)
+ {
+ Sequence< ::rtl::OUString > aNames( getSupportedServiceNames() );
+ const ::rtl::OUString* pNames = aNames.getConstArray();
+ const ::rtl::OUString* pEnd = pNames + aNames.getLength();
+ for ( ; pNames != pEnd && !pNames->equals( rServiceName ); ++pNames )
+ ;
+
+ return pNames != pEnd;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ Sequence< ::rtl::OUString > AccessibleTabBarPageList::getSupportedServiceNames() throw (RuntimeException)
+ {
+ Sequence< ::rtl::OUString > aNames(1);
+ aNames[0] = ::rtl::OUString::createFromAscii( "com.sun.star.awt.AccessibleTabBarPageList" );
+ return aNames;
+ }
+
+ // -----------------------------------------------------------------------------
+ // XAccessible
+ // -----------------------------------------------------------------------------
+
+ Reference< XAccessibleContext > AccessibleTabBarPageList::getAccessibleContext( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ return this;
+ }
+
+ // -----------------------------------------------------------------------------
+ // XAccessibleContext
+ // -----------------------------------------------------------------------------
+
+ sal_Int32 AccessibleTabBarPageList::getAccessibleChildCount() throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ return m_aAccessibleChildren.size();
+ }
+
+ // -----------------------------------------------------------------------------
+
+ Reference< XAccessible > AccessibleTabBarPageList::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ if ( i < 0 || i >= getAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+
+ Reference< XAccessible > xChild = m_aAccessibleChildren[i];
+ if ( !xChild.is() )
+ {
+ if ( m_pTabBar )
+ {
+ sal_uInt16 nPageId = m_pTabBar->GetPageId( (USHORT)i );
+
+ xChild = new AccessibleTabBarPage( m_pTabBar, nPageId, this );
+
+ // insert into child list
+ m_aAccessibleChildren[i] = xChild;
+ }
+ }
+
+ return xChild;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ Reference< XAccessible > AccessibleTabBarPageList::getAccessibleParent( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ Reference< XAccessible > xParent;
+ if ( m_pTabBar )
+ xParent = m_pTabBar->GetAccessible();
+
+ return xParent;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ sal_Int32 AccessibleTabBarPageList::getAccessibleIndexInParent( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ return m_nIndexInParent;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ sal_Int16 AccessibleTabBarPageList::getAccessibleRole( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ return AccessibleRole::PAGE_TAB_LIST;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ ::rtl::OUString AccessibleTabBarPageList::getAccessibleDescription( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ return ::rtl::OUString();
+ }
+
+ // -----------------------------------------------------------------------------
+
+ ::rtl::OUString AccessibleTabBarPageList::getAccessibleName( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ return ::rtl::OUString();
+ }
+
+ // -----------------------------------------------------------------------------
+
+ Reference< XAccessibleRelationSet > AccessibleTabBarPageList::getAccessibleRelationSet( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ utl::AccessibleRelationSetHelper* pRelationSetHelper = new utl::AccessibleRelationSetHelper;
+ Reference< XAccessibleRelationSet > xSet = pRelationSetHelper;
+ return xSet;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ Reference< XAccessibleStateSet > AccessibleTabBarPageList::getAccessibleStateSet( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ utl::AccessibleStateSetHelper* pStateSetHelper = new utl::AccessibleStateSetHelper;
+ Reference< XAccessibleStateSet > xSet = pStateSetHelper;
+
+ if ( !rBHelper.bDisposed && !rBHelper.bInDispose )
+ {
+ FillAccessibleStateSet( *pStateSetHelper );
+ }
+ else
+ {
+ pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
+ }
+
+ return xSet;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ Locale AccessibleTabBarPageList::getLocale( ) throw (IllegalAccessibleComponentStateException, RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ return Application::GetSettings().GetLocale();
+ }
+
+ // -----------------------------------------------------------------------------
+ // XAccessibleComponent
+ // -----------------------------------------------------------------------------
+
+ Reference< XAccessible > AccessibleTabBarPageList::getAccessibleAtPoint( const awt::Point& rPoint ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ Reference< XAccessible > xChild;
+ for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
+ {
+ Reference< XAccessible > xAcc = getAccessibleChild( i );
+ if ( xAcc.is() )
+ {
+ Reference< XAccessibleComponent > xComp( xAcc->getAccessibleContext(), UNO_QUERY );
+ if ( xComp.is() )
+ {
+ Rectangle aRect = VCLRectangle( xComp->getBounds() );
+ Point aPos = VCLPoint( rPoint );
+ if ( aRect.IsInside( aPos ) )
+ {
+ xChild = xAcc;
+ break;
+ }
+ }
+ }
+ }
+
+ return xChild;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ void AccessibleTabBarPageList::grabFocus( ) throw (RuntimeException)
+ {
+ // no focus
+ }
+
+ // -----------------------------------------------------------------------------
+
+ sal_Int32 AccessibleTabBarPageList::getForeground( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nColor = 0;
+ Reference< XAccessible > xParent = getAccessibleParent();
+ if ( xParent.is() )
+ {
+ Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
+ if ( xParentComp.is() )
+ nColor = xParentComp->getForeground();
+ }
+
+ return nColor;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ sal_Int32 AccessibleTabBarPageList::getBackground( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nColor = 0;
+ Reference< XAccessible > xParent = getAccessibleParent();
+ if ( xParent.is() )
+ {
+ Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
+ if ( xParentComp.is() )
+ nColor = xParentComp->getBackground();
+ }
+
+ return nColor;
+ }
+
+ // -----------------------------------------------------------------------------
+ // XAccessibleExtendedComponent
+ // -----------------------------------------------------------------------------
+
+ Reference< awt::XFont > AccessibleTabBarPageList::getFont( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ Reference< awt::XFont > xFont;
+ Reference< XAccessible > xParent = getAccessibleParent();
+ if ( xParent.is() )
+ {
+ Reference< XAccessibleExtendedComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
+ if ( xParentComp.is() )
+ xFont = xParentComp->getFont();
+ }
+
+ return xFont;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ ::rtl::OUString AccessibleTabBarPageList::getTitledBorderText( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ return ::rtl::OUString();
+ }
+
+ // -----------------------------------------------------------------------------
+
+ ::rtl::OUString AccessibleTabBarPageList::getToolTipText( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ return ::rtl::OUString();
+ }
+
+ // -----------------------------------------------------------------------------
+ // XAccessibleSelection
+ // -----------------------------------------------------------------------------
+
+ void AccessibleTabBarPageList::selectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ if ( nChildIndex < 0 || nChildIndex >= getAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+
+ if ( m_pTabBar )
+ {
+ m_pTabBar->SetCurPageId( m_pTabBar->GetPageId( (USHORT)nChildIndex ) );
+ m_pTabBar->Update();
+ m_pTabBar->ActivatePage();
+ m_pTabBar->Select();
+ }
+ }
+
+ // -----------------------------------------------------------------------------
+
+ sal_Bool AccessibleTabBarPageList::isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ if ( nChildIndex < 0 || nChildIndex >= getAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+
+ sal_Bool bSelected = sal_False;
+ if ( m_pTabBar && m_pTabBar->GetCurPageId() == m_pTabBar->GetPageId( (USHORT)nChildIndex ) )
+ bSelected = sal_True;
+
+ return bSelected;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ void AccessibleTabBarPageList::clearAccessibleSelection( ) throw (RuntimeException)
+ {
+ // This method makes no sense in a TabBar, and so does nothing.
+ }
+
+ // -----------------------------------------------------------------------------
+
+ void AccessibleTabBarPageList::selectAllAccessibleChildren( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ selectAccessibleChild( 0 );
+ }
+
+ // -----------------------------------------------------------------------------
+
+ sal_Int32 AccessibleTabBarPageList::getSelectedAccessibleChildCount( ) throw (RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ return 1;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ Reference< XAccessible > AccessibleTabBarPageList::getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ if ( nSelectedChildIndex < 0 || nSelectedChildIndex >= getSelectedAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+
+ Reference< XAccessible > xChild;
+
+ for ( sal_Int32 i = 0, j = 0, nCount = getAccessibleChildCount(); i < nCount; i++ )
+ {
+ if ( isAccessibleChildSelected( i ) && ( j++ == nSelectedChildIndex ) )
+ {
+ xChild = getAccessibleChild( i );
+ break;
+ }
+ }
+
+ return xChild;
+ }
+
+ // -----------------------------------------------------------------------------
+
+ void AccessibleTabBarPageList::deselectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ OExternalLockGuard aGuard( this );
+
+ if ( nChildIndex < 0 || nChildIndex >= getAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+
+ // This method makes no sense in a TabBar, and so does nothing.
+ }
+
+ // -----------------------------------------------------------------------------
+
+//.........................................................................
+} // namespace accessibility
+//.........................................................................
diff --git a/accessibility/source/extended/accessibletablistbox.cxx b/accessibility/source/extended/accessibletablistbox.cxx
new file mode 100644
index 000000000000..aed68e55e482
--- /dev/null
+++ b/accessibility/source/extended/accessibletablistbox.cxx
@@ -0,0 +1,146 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+
+#ifndef ACCESSIBILITY_EXT_ACCESSIBLETABLISTBOX_HXX_
+#include "accessibility/extended/accessibletablistbox.hxx"
+#endif
+#include "accessibility/extended/accessibletablistboxtable.hxx"
+#include <svtools/svtabbx.hxx>
+#include <comphelper/sequence.hxx>
+
+//........................................................................
+namespace accessibility
+{
+//........................................................................
+
+ // class TLBSolarGuard ---------------------------------------------------------
+
+ /** Aquire the solar mutex. */
+ class TLBSolarGuard : public ::vos::OGuard
+ {
+ public:
+ inline TLBSolarGuard() : ::vos::OGuard( Application::GetSolarMutex() ) {}
+ };
+
+ // class AccessibleTabListBox -----------------------------------------------------
+
+ using namespace ::com::sun::star::accessibility;
+ using namespace ::com::sun::star::uno;
+ using namespace ::com::sun::star::lang;
+ using namespace ::com::sun::star;
+
+ DBG_NAME(AccessibleTabListBox)
+
+ // -----------------------------------------------------------------------------
+ // Ctor() and Dtor()
+ // -----------------------------------------------------------------------------
+ AccessibleTabListBox::AccessibleTabListBox( const Reference< XAccessible >& rxParent, SvHeaderTabListBox& rBox )
+ :AccessibleBrowseBox( rxParent, NULL, rBox )
+ ,m_pTabListBox( &rBox )
+
+ {
+ DBG_CTOR( AccessibleTabListBox, NULL );
+
+ osl_incrementInterlockedCount( &m_refCount );
+ {
+ setCreator( this );
+ }
+ osl_decrementInterlockedCount( &m_refCount );
+ }
+
+ // -----------------------------------------------------------------------------
+ AccessibleTabListBox::~AccessibleTabListBox()
+ {
+ DBG_DTOR( AccessibleTabListBox, NULL );
+
+ if ( isAlive() )
+ {
+ // increment ref count to prevent double call of Dtor
+ osl_incrementInterlockedCount( &m_refCount );
+ dispose();
+ }
+ }
+ // -----------------------------------------------------------------------------
+ AccessibleBrowseBoxTable* AccessibleTabListBox::createAccessibleTable()
+ {
+ return new AccessibleTabListBoxTable( this, *m_pTabListBox );
+ }
+
+ // XInterface -----------------------------------------------------------------
+ IMPLEMENT_FORWARD_XINTERFACE2( AccessibleTabListBox, AccessibleBrowseBox, AccessibleTabListBox_Base )
+
+ // XTypeProvider --------------------------------------------------------------
+ IMPLEMENT_FORWARD_XTYPEPROVIDER2( AccessibleTabListBox, AccessibleBrowseBox, AccessibleTabListBox_Base )
+
+ // XAccessibleContext ---------------------------------------------------------
+
+ sal_Int32 SAL_CALL AccessibleTabListBox::getAccessibleChildCount()
+ throw ( uno::RuntimeException )
+ {
+ return 2; // header and table
+ }
+
+ // -----------------------------------------------------------------------------
+ Reference< XAccessibleContext > SAL_CALL AccessibleTabListBox::getAccessibleContext() throw ( RuntimeException )
+ {
+ return this;
+ }
+
+ // -----------------------------------------------------------------------------
+ Reference< XAccessible > SAL_CALL
+ AccessibleTabListBox::getAccessibleChild( sal_Int32 nChildIndex )
+ throw ( IndexOutOfBoundsException, RuntimeException )
+ {
+ TLBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+ ensureIsAlive();
+
+ if ( nChildIndex < 0 || nChildIndex > 1 )
+ throw IndexOutOfBoundsException();
+
+ Reference< XAccessible > xRet;
+ if (nChildIndex == 0)
+ {
+ //! so far the actual implementation object only supports column headers
+ xRet = implGetFixedChild( ::svt::BBINDEX_COLUMNHEADERBAR );
+ }
+ else if (nChildIndex == 1)
+ xRet = implGetFixedChild( ::svt::BBINDEX_TABLE );
+
+ if ( !xRet.is() )
+ throw RuntimeException();
+
+ return xRet;
+ }
+
+//........................................................................
+}// namespace accessibility
+//........................................................................
+
diff --git a/accessibility/source/extended/accessibletablistboxtable.cxx b/accessibility/source/extended/accessibletablistboxtable.cxx
new file mode 100644
index 000000000000..59408a31fe84
--- /dev/null
+++ b/accessibility/source/extended/accessibletablistboxtable.cxx
@@ -0,0 +1,383 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+
+#ifndef ACCESSIBILITY_EXT_ACCESSIBLETABLISTBOXTABLE_HXX_
+#include "accessibility/extended/accessibletablistboxtable.hxx"
+#endif
+#include "accessibility/extended/AccessibleBrowseBoxTableCell.hxx"
+#include "accessibility/extended/AccessibleBrowseBoxCheckBoxCell.hxx"
+#include <svtools/svtabbx.hxx>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+
+//........................................................................
+namespace accessibility
+{
+//........................................................................
+
+ // class TLBSolarGuard ---------------------------------------------------------
+
+ /** Aquire the solar mutex. */
+ class TLBSolarGuard : public ::vos::OGuard
+ {
+ public:
+ inline TLBSolarGuard() : ::vos::OGuard( Application::GetSolarMutex() ) {}
+ };
+
+ // class AccessibleTabListBoxTable ---------------------------------------------
+
+ using namespace ::com::sun::star::accessibility;
+ using namespace ::com::sun::star::uno;
+ using namespace ::com::sun::star::lang;
+ using namespace ::com::sun::star;
+
+ DBG_NAME(AccessibleTabListBoxTable)
+
+ // -----------------------------------------------------------------------------
+ // Ctor() and Dtor()
+ // -----------------------------------------------------------------------------
+ AccessibleTabListBoxTable::AccessibleTabListBoxTable( const Reference< XAccessible >& rxParent, SvHeaderTabListBox& rBox ) :
+
+ AccessibleBrowseBoxTable( rxParent, rBox ),
+
+ m_pTabListBox ( &rBox )
+
+ {
+ DBG_CTOR( AccessibleTabListBoxTable, NULL );
+
+ m_pTabListBox->AddEventListener( LINK( this, AccessibleTabListBoxTable, WindowEventListener ) );
+ }
+ // -----------------------------------------------------------------------------
+ AccessibleTabListBoxTable::~AccessibleTabListBoxTable()
+ {
+ DBG_DTOR( AccessibleTabListBoxTable, NULL );
+
+ if ( isAlive() )
+ {
+ m_pTabListBox = NULL;
+
+ // increment ref count to prevent double call of Dtor
+ osl_incrementInterlockedCount( &m_refCount );
+ dispose();
+ }
+ }
+ // -----------------------------------------------------------------------------
+ void AccessibleTabListBoxTable::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
+ {
+ if ( isAlive() )
+ {
+ ULONG nEventId = rVclWindowEvent.GetId();
+ switch ( nEventId )
+ {
+ case VCLEVENT_OBJECT_DYING :
+ {
+ m_pTabListBox->RemoveEventListener( LINK( this, AccessibleTabListBoxTable, WindowEventListener ) );
+ m_pTabListBox = NULL;
+ break;
+ }
+
+ case VCLEVENT_CONTROL_GETFOCUS :
+ case VCLEVENT_CONTROL_LOSEFOCUS :
+ {
+ uno::Any aOldValue, aNewValue;
+ if ( VCLEVENT_CONTROL_GETFOCUS == nEventId )
+ aNewValue <<= AccessibleStateType::FOCUSED;
+ else
+ aOldValue <<= AccessibleStateType::FOCUSED;
+ commitEvent( AccessibleEventId::STATE_CHANGED, aNewValue, aOldValue );
+ break;
+ }
+
+ case VCLEVENT_LISTBOX_SELECT :
+ {
+ // First send an event that tells the listeners of a
+ // modified selection. The active descendant event is
+ // send after that so that the receiving AT has time to
+ // read the text or name of the active child.
+ commitEvent( AccessibleEventId::SELECTION_CHANGED, Any(), Any() );
+ if ( m_pTabListBox && m_pTabListBox->HasFocus() )
+ {
+ SvLBoxEntry* pEntry = static_cast< SvLBoxEntry* >( rVclWindowEvent.GetData() );
+ if ( pEntry )
+ {
+ sal_Int32 nRow = m_pTabListBox->GetEntryPos( pEntry );
+ USHORT nCol = m_pTabListBox->GetCurrColumn();
+ Reference< XAccessible > xChild =
+ m_pTabListBox->CreateAccessibleCell( nRow, nCol );
+ uno::Any aOldValue, aNewValue;
+
+ if ( m_pTabListBox->IsTransientChildrenDisabled() )
+ {
+ aNewValue <<= AccessibleStateType::FOCUSED;
+ TriState eState = STATE_DONTKNOW;
+ if ( m_pTabListBox->IsCellCheckBox( nRow, nCol, eState ) )
+ {
+ AccessibleCheckBoxCell* pCell =
+ static_cast< AccessibleCheckBoxCell* >( xChild.get() );
+ pCell->commitEvent( AccessibleEventId::STATE_CHANGED, aNewValue, aOldValue );
+ }
+ else
+ {
+ AccessibleBrowseBoxTableCell* pCell =
+ static_cast< AccessibleBrowseBoxTableCell* >( xChild.get() );
+ pCell->commitEvent( AccessibleEventId::STATE_CHANGED, aNewValue, aOldValue );
+ }
+ }
+ else
+ {
+ aNewValue <<= xChild;
+ commitEvent( AccessibleEventId::ACTIVE_DESCENDANT_CHANGED, aNewValue, aOldValue );
+ }
+ }
+ }
+ break;
+ }
+
+ case VCLEVENT_CHECKBOX_TOGGLE :
+ {
+ if ( m_pTabListBox && m_pTabListBox->HasFocus() )
+ {
+ SvLBoxEntry* pEntry = static_cast< SvLBoxEntry* >( rVclWindowEvent.GetData() );
+ if ( pEntry )
+ {
+ sal_Int32 nRow = m_pTabListBox->GetEntryPos( pEntry );
+ USHORT nCol = m_pTabListBox->GetCurrColumn();
+ TriState eState = STATE_DONTKNOW;
+ if ( m_pTabListBox->IsCellCheckBox( nRow, nCol, eState ) )
+ {
+ Reference< XAccessible > xChild =
+ m_pTabListBox->CreateAccessibleCell( nRow, nCol );
+ AccessibleCheckBoxCell* pCell =
+ static_cast< AccessibleCheckBoxCell* >( xChild.get() );
+ pCell->SetChecked( m_pTabListBox->IsItemChecked( pEntry, nCol ) );
+ }
+ }
+ }
+ break;
+ }
+
+ case VCLEVENT_TABLECELL_NAMECHANGED :
+ {
+ if ( m_pTabListBox->IsTransientChildrenDisabled() )
+ {
+ commitEvent( AccessibleEventId::SELECTION_CHANGED, Any(), Any() );
+ TabListBoxEventData* pData = static_cast< TabListBoxEventData* >( rVclWindowEvent.GetData() );
+ SvLBoxEntry* pEntry = pData != NULL ? pData->m_pEntry : NULL;
+ if ( pEntry )
+ {
+ sal_Int32 nRow = m_pTabListBox->GetEntryPos( pEntry );
+ USHORT nCol = pData->m_nColumn;
+ Reference< XAccessible > xChild =
+ m_pTabListBox->CreateAccessibleCell( nRow, nCol );
+ uno::Any aOldValue, aNewValue;
+ aOldValue <<= ::rtl::OUString( pData->m_sOldText );
+ ::rtl::OUString sNewText( m_pTabListBox->GetCellText( nRow, nCol ) );
+ aNewValue <<= sNewText;
+ TriState eState = STATE_DONTKNOW;
+
+ if ( m_pTabListBox->IsCellCheckBox( nRow, nCol, eState ) )
+ {
+ AccessibleCheckBoxCell* pCell =
+ static_cast< AccessibleCheckBoxCell* >( xChild.get() );
+ pCell->commitEvent( AccessibleEventId::NAME_CHANGED, aOldValue, aNewValue );
+ }
+ else
+ {
+ AccessibleBrowseBoxTableCell* pCell =
+ static_cast< AccessibleBrowseBoxTableCell* >( xChild.get() );
+ pCell->nameChanged( sNewText, pData->m_sOldText );
+ }
+ }
+ }
+ break;
+ }
+ }
+ }
+ }
+ // -----------------------------------------------------------------------------
+ IMPL_LINK( AccessibleTabListBoxTable, WindowEventListener, VclSimpleEvent*, pEvent )
+ {
+ DBG_ASSERT( pEvent && pEvent->ISA( VclWindowEvent ), "Unknown WindowEvent!" );
+ if ( pEvent && pEvent->ISA( VclWindowEvent ) )
+ {
+ DBG_ASSERT( ( (VclWindowEvent*)pEvent )->GetWindow() && m_pTabListBox, "no event window" );
+ ProcessWindowEvent( *(VclWindowEvent*)pEvent );
+ }
+ return 0;
+ }
+ // helpers --------------------------------------------------------------------
+
+ void AccessibleTabListBoxTable::ensureValidIndex( sal_Int32 _nIndex ) const
+ SAL_THROW( ( IndexOutOfBoundsException ) )
+ {
+ if ( ( _nIndex < 0 ) || ( _nIndex >= implGetCellCount() ) )
+ throw IndexOutOfBoundsException();
+ }
+
+ sal_Bool AccessibleTabListBoxTable::implIsRowSelected( sal_Int32 _nRow ) const
+ {
+ return m_pTabListBox ? m_pTabListBox->IsSelected( m_pTabListBox->GetEntry( _nRow ) ) : sal_False;
+ }
+
+ void AccessibleTabListBoxTable::implSelectRow( sal_Int32 _nRow, sal_Bool _bSelect )
+ {
+ if ( m_pTabListBox )
+ m_pTabListBox->Select( m_pTabListBox->GetEntry( _nRow ), _bSelect );
+ }
+
+ sal_Int32 AccessibleTabListBoxTable::implGetRowCount() const
+ {
+ return m_pTabListBox ? m_pTabListBox->GetEntryCount() : 0;
+ }
+
+ sal_Int32 AccessibleTabListBoxTable::implGetColumnCount() const
+ {
+ return m_pTabListBox ? m_pTabListBox->GetColumnCount() : 0;
+ }
+
+ sal_Int32 AccessibleTabListBoxTable::implGetSelRowCount() const
+ {
+ return m_pTabListBox ? m_pTabListBox->GetSelectionCount() : 0;
+ }
+
+ sal_Int32 AccessibleTabListBoxTable::implGetSelRow( sal_Int32 nSelRow ) const
+ {
+ if ( m_pTabListBox )
+ {
+ sal_Int32 nRow = 0;
+ SvLBoxEntry* pEntry = m_pTabListBox->FirstSelected();
+ while ( pEntry )
+ {
+ ++nRow;
+ if ( nRow == nSelRow )
+ return m_pTabListBox->GetEntryPos( pEntry );
+ pEntry = m_pTabListBox->NextSelected( pEntry );
+ }
+ }
+
+ return 0;
+ }
+ // -----------------------------------------------------------------------------
+ // XInterface & XTypeProvider
+ // -----------------------------------------------------------------------------
+ IMPLEMENT_FORWARD_XINTERFACE2(AccessibleTabListBoxTable, AccessibleBrowseBoxTable, AccessibleTabListBoxTableImplHelper)
+ IMPLEMENT_FORWARD_XTYPEPROVIDER2(AccessibleTabListBoxTable, AccessibleBrowseBoxTable, AccessibleTabListBoxTableImplHelper)
+ // -----------------------------------------------------------------------------
+ // XServiceInfo
+ // -----------------------------------------------------------------------------
+ ::rtl::OUString AccessibleTabListBoxTable::getImplementationName (void) throw (RuntimeException)
+ {
+ return ::rtl::OUString::createFromAscii("com.sun.star.comp.svtools.AccessibleTabListBoxTable");
+ }
+ // -----------------------------------------------------------------------------
+ // XAccessibleSelection
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleTabListBoxTable::selectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ TLBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+
+ ensureIsAlive();
+ ensureValidIndex( nChildIndex );
+
+ implSelectRow( implGetRow( nChildIndex ), sal_True );
+ }
+ // -----------------------------------------------------------------------------
+ sal_Bool SAL_CALL AccessibleTabListBoxTable::isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ TLBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+
+ ensureIsAlive();
+ ensureValidIndex( nChildIndex );
+
+ return implIsRowSelected( implGetRow( nChildIndex ) );
+ }
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleTabListBoxTable::clearAccessibleSelection( ) throw (RuntimeException)
+ {
+ TLBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+
+ ensureIsAlive();
+
+ m_pTabListBox->SetNoSelection();
+ }
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleTabListBoxTable::selectAllAccessibleChildren( ) throw (RuntimeException)
+ {
+ TLBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+
+ ensureIsAlive();
+
+ m_pTabListBox->SelectAll();
+ }
+ // -----------------------------------------------------------------------------
+ sal_Int32 SAL_CALL AccessibleTabListBoxTable::getSelectedAccessibleChildCount( ) throw (RuntimeException)
+ {
+ TLBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+
+ ensureIsAlive();
+
+ return implGetColumnCount() * implGetSelRowCount();
+ }
+ // -----------------------------------------------------------------------------
+ Reference< XAccessible > SAL_CALL AccessibleTabListBoxTable::getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ TLBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+
+ ensureIsAlive();
+
+ sal_Int32 nRows = implGetSelRowCount();
+ if ( nRows == 0 )
+ throw IndexOutOfBoundsException();
+
+ sal_Int32 nRow = implGetSelRow( nSelectedChildIndex % nRows );
+ sal_Int32 nColumn = nSelectedChildIndex / nRows;
+ return getAccessibleCellAt( nRow, nColumn );
+ }
+ // -----------------------------------------------------------------------------
+ void SAL_CALL AccessibleTabListBoxTable::deselectAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+ {
+ TLBSolarGuard aSolarGuard;
+ ::osl::MutexGuard aGuard( getOslMutex() );
+
+ ensureIsAlive();
+ ensureValidIndex( nSelectedChildIndex );
+
+ implSelectRow( implGetRow( nSelectedChildIndex ), sal_False );
+ }
+
+//........................................................................
+}// namespace accessibility
+//........................................................................
+
diff --git a/accessibility/source/extended/listboxaccessible.cxx b/accessibility/source/extended/listboxaccessible.cxx
new file mode 100644
index 000000000000..8600003c2bff
--- /dev/null
+++ b/accessibility/source/extended/listboxaccessible.cxx
@@ -0,0 +1,103 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/extended/listboxaccessible.hxx>
+#include <svtools/svtreebx.hxx>
+
+//........................................................................
+namespace accessibility
+{
+//........................................................................
+
+ //====================================================================
+ //= ListBoxAccessibleBase
+ //====================================================================
+ //--------------------------------------------------------------------
+ ListBoxAccessibleBase::ListBoxAccessibleBase( SvTreeListBox& _rWindow )
+ :m_pWindow( &_rWindow )
+ {
+ m_pWindow->AddEventListener( LINK( this, ListBoxAccessibleBase, WindowEventListener ) );
+ }
+
+ //--------------------------------------------------------------------
+ ListBoxAccessibleBase::~ListBoxAccessibleBase( )
+ {
+ if ( m_pWindow )
+ {
+ // cannot call "dispose" here, as it is abstract, so the VTABLE of the derived class
+ // is not intact anymore
+ // so we call our "disposing" only
+ disposing();
+ }
+ }
+
+ //--------------------------------------------------------------------
+ IMPL_LINK( ListBoxAccessibleBase, WindowEventListener, VclSimpleEvent*, pEvent )
+ {
+ DBG_ASSERT( pEvent && pEvent->ISA( VclWindowEvent ), "ListBoxAccessibleBase::WindowEventListener: unexpected WindowEvent!" );
+ if ( pEvent && pEvent->ISA( VclWindowEvent ) )
+ {
+ DBG_ASSERT( static_cast< VclWindowEvent* >( pEvent )->GetWindow() , "ListBoxAccessibleBase::WindowEventListener: no event window!" );
+ DBG_ASSERT( static_cast< VclWindowEvent* >( pEvent )->GetWindow() == m_pWindow, "ListBoxAccessibleBase::WindowEventListener: where did this come from?" );
+
+ ProcessWindowEvent( *static_cast< VclWindowEvent* >( pEvent ) );
+ }
+ return 0;
+ }
+
+ // -----------------------------------------------------------------------------
+ void ListBoxAccessibleBase::disposing()
+ {
+ if ( m_pWindow )
+ m_pWindow->RemoveEventListener( LINK( this, ListBoxAccessibleBase, WindowEventListener ) );
+ m_pWindow = NULL;
+ }
+
+ // -----------------------------------------------------------------------------
+ void ListBoxAccessibleBase::ProcessWindowEvent( const VclWindowEvent& _rVclWindowEvent )
+ {
+ if ( isAlive() )
+ {
+ switch ( _rVclWindowEvent.GetId() )
+ {
+ case VCLEVENT_OBJECT_DYING :
+ {
+ if ( m_pWindow )
+ m_pWindow->RemoveEventListener( LINK( this, ListBoxAccessibleBase, WindowEventListener ) );
+ m_pWindow = NULL;
+ dispose();
+ break;
+ }
+ }
+ }
+ }
+
+//........................................................................
+} // namespace accessibility
+//........................................................................
diff --git a/accessibility/source/extended/makefile.mk b/accessibility/source/extended/makefile.mk
new file mode 100755
index 000000000000..27f4403c8210
--- /dev/null
+++ b/accessibility/source/extended/makefile.mk
@@ -0,0 +1,81 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJ=..$/..
+
+PRJNAME=accessibility
+TARGET=extended
+
+ENABLE_EXCEPTIONS=TRUE
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+# --- Files --------------------------------------------------------
+.IF "$(OS)$(COM)"=="SOLARISI"
+NOOPTFILES=$(SLO)$/accessibletabbarpagelist.obj
+.ENDIF # "$(OS)$(COM)"=="SOLARISI"
+
+SLOFILES=\
+ $(SLO)$/AccessibleBrowseBoxCheckBoxCell.obj \
+ $(SLO)$/AccessibleBrowseBoxBase.obj \
+ $(SLO)$/AccessibleBrowseBox.obj \
+ $(SLO)$/AccessibleBrowseBoxTableCell.obj \
+ $(SLO)$/AccessibleBrowseBoxHeaderCell.obj \
+ $(SLO)$/AccessibleBrowseBoxTableBase.obj \
+ $(SLO)$/AccessibleBrowseBoxTable.obj \
+ $(SLO)$/AccessibleBrowseBoxHeaderBar.obj \
+ $(SLO)$/accessibleiconchoicectrl.obj \
+ $(SLO)$/accessibleiconchoicectrlentry.obj \
+ $(SLO)$/accessiblelistbox.obj \
+ $(SLO)$/accessiblelistboxentry.obj \
+ $(SLO)$/accessibletabbarbase.obj \
+ $(SLO)$/accessibletabbar.obj \
+ $(SLO)$/accessibletabbarpage.obj \
+ $(SLO)$/accessibletabbarpagelist.obj \
+ $(SLO)$/accessibletablistbox.obj \
+ $(SLO)$/accessibletablistboxtable.obj \
+ $(SLO)$/listboxaccessible.obj \
+ $(SLO)$/accessiblebrowseboxcell.obj \
+ $(SLO)$/accessibleeditbrowseboxcell.obj \
+ $(SLO)$/textwindowaccessibility.obj \
+ $(SLO)$/AccessibleGridControlBase.obj \
+ $(SLO)$/AccessibleGridControl.obj \
+ $(SLO)$/AccessibleGridControlTableBase.obj \
+ $(SLO)$/AccessibleGridControlHeader.obj \
+ $(SLO)$/AccessibleGridControlTableCell.obj \
+ $(SLO)$/AccessibleGridControlHeaderCell.obj \
+ $(SLO)$/AccessibleGridControlTable.obj \
+ $(SLO)$/AccessibleToolPanelDeck.obj \
+ $(SLO)$/AccessibleToolPanelDeckTabBar.obj \
+ $(SLO)$/AccessibleToolPanelDeckTabBarItem.obj
+
+# --- Targets -------------------------------------------------------
+
+.INCLUDE : target.mk
+
diff --git a/accessibility/source/extended/textwindowaccessibility.cxx b/accessibility/source/extended/textwindowaccessibility.cxx
new file mode 100644
index 000000000000..8af1b240343e
--- /dev/null
+++ b/accessibility/source/extended/textwindowaccessibility.cxx
@@ -0,0 +1,2254 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+
+#ifndef _TOOLKIT_AWT_VCLXACCESSIBLECOMPONENT_HXX_
+#include <accessibility/extended/textwindowaccessibility.hxx>
+#endif
+#include "comphelper/accessibleeventnotifier.hxx"
+#include "unotools/accessiblerelationsethelper.hxx"
+#include <unotools/accessiblestatesethelper.hxx>
+#include <vcl/window.hxx>
+#include <toolkit/helper/convert.hxx>
+
+#include <algorithm>
+#include <vector>
+#include <hash_map>
+
+namespace css = ::com::sun::star;
+
+namespace accessibility
+{
+
+// Both ::osl::Mutex and ParagraphBase implement acquire and release, and thus
+// ::rtl::Reference< Paragraph > does not work. So ParagraphImpl was factored
+// out and ::rtl::Reference< ParagraphImpl > is used instead.
+class Paragraph: private ::osl::Mutex, public ParagraphImpl
+{
+public:
+ inline Paragraph(::rtl::Reference< Document > const & rDocument,
+ Paragraphs::size_type nNumber):
+ ParagraphImpl(rDocument, nNumber, *this) {}
+};
+
+void SfxListenerGuard::startListening(::SfxBroadcaster & rNotifier)
+{
+ OSL_ENSURE(m_pNotifier == 0, "called more than once");
+ m_pNotifier = &rNotifier;
+ m_rListener.StartListening(*m_pNotifier, true);
+}
+
+void SfxListenerGuard::endListening()
+{
+ if (m_pNotifier != 0)
+ {
+ m_rListener.EndListening(*m_pNotifier);
+ m_pNotifier = 0;
+ }
+}
+
+void WindowListenerGuard::startListening(::Window & rNotifier)
+{
+ OSL_ENSURE(m_pNotifier == 0, "called more than once");
+ m_pNotifier = &rNotifier;
+ m_pNotifier->AddEventListener(m_aListener);
+}
+
+void WindowListenerGuard::endListening()
+{
+ if (m_pNotifier != 0)
+ {
+ m_pNotifier->RemoveEventListener(m_aListener);
+ m_pNotifier = 0;
+ }
+}
+
+ParagraphImpl::ParagraphImpl(::rtl::Reference< Document > const & rDocument,
+ Paragraphs::size_type nNumber,
+ ::osl::Mutex & rMutex):
+ ParagraphBase(rMutex),
+ m_xDocument(rDocument),
+ m_nNumber(nNumber),
+ m_nClientId(0)
+{
+ m_aParagraphText = m_xDocument->retrieveParagraphText(this);
+}
+
+void
+ParagraphImpl::numberChanged(bool bIncremented)
+{
+ if (bIncremented)
+ ++m_nNumber;
+ else
+ --m_nNumber;
+}
+
+void ParagraphImpl::textChanged()
+{
+ ::rtl::OUString aParagraphText = implGetText();
+ ::css::uno::Any aOldValue, aNewValue;
+ if ( implInitTextChangedEvent( m_aParagraphText, aParagraphText, aOldValue, aNewValue ) )
+ {
+ m_aParagraphText = aParagraphText;
+ notifyEvent(::css::accessibility::AccessibleEventId::
+ TEXT_CHANGED,
+ aOldValue, aNewValue);
+ }
+}
+
+void ParagraphImpl::notifyEvent(::sal_Int16 nEventId,
+ ::css::uno::Any const & rOldValue,
+ ::css::uno::Any const & rNewValue)
+{
+ if (m_nClientId)
+ comphelper::AccessibleEventNotifier::addEvent( m_nClientId, ::css::accessibility::AccessibleEventObject(
+ static_cast< ::cppu::OWeakObject * >(this),
+ nEventId, rNewValue, rOldValue) );
+}
+
+// virtual
+::css::uno::Reference< ::css::accessibility::XAccessibleContext > SAL_CALL
+ParagraphImpl::getAccessibleContext() throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+ return this;
+}
+
+// virtual
+::sal_Int32 SAL_CALL ParagraphImpl::getAccessibleChildCount()
+ throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+ return 0;
+}
+
+// virtual
+::css::uno::Reference< ::css::accessibility::XAccessible > SAL_CALL
+ParagraphImpl::getAccessibleChild(::sal_Int32)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException)
+{
+ checkDisposed();
+ throw ::css::lang::IndexOutOfBoundsException(
+ ::rtl::OUString(
+ RTL_CONSTASCII_USTRINGPARAM(
+ "textwindowaccessibility.cxx:"
+ " ParagraphImpl::getAccessibleChild")),
+ static_cast< ::css::uno::XWeak * >(this));
+}
+
+// virtual
+::css::uno::Reference< ::css::accessibility::XAccessible > SAL_CALL
+ParagraphImpl::getAccessibleParent()
+ throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+ return m_xDocument->getAccessible();
+}
+
+// virtual
+::sal_Int32 SAL_CALL ParagraphImpl::getAccessibleIndexInParent()
+ throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+ return m_xDocument->retrieveParagraphIndex(this);
+}
+
+// virtual
+::sal_Int16 SAL_CALL ParagraphImpl::getAccessibleRole()
+ throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+ return ::css::accessibility::AccessibleRole::PARAGRAPH;
+}
+
+// virtual
+::rtl::OUString SAL_CALL ParagraphImpl::getAccessibleDescription()
+ throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+ return ::rtl::OUString();
+}
+
+// virtual
+::rtl::OUString SAL_CALL ParagraphImpl::getAccessibleName()
+ throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+ return ::rtl::OUString();
+}
+
+// virtual
+::css::uno::Reference< ::css::accessibility::XAccessibleRelationSet >
+SAL_CALL ParagraphImpl::getAccessibleRelationSet()
+ throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+ return m_xDocument->retrieveParagraphRelationSet( this );
+}
+
+// virtual
+::css::uno::Reference< ::css::accessibility::XAccessibleStateSet >
+SAL_CALL ParagraphImpl::getAccessibleStateSet()
+ throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+
+ // FIXME Notification of changes (STATE_CHANGED) missing when
+ // m_rView.IsReadOnly() changes:
+ return new ::utl::AccessibleStateSetHelper(
+ m_xDocument->retrieveParagraphState(this));
+}
+
+// virtual
+::css::lang::Locale SAL_CALL ParagraphImpl::getLocale()
+ throw (::css::accessibility::IllegalAccessibleComponentStateException,
+ ::css::uno::RuntimeException)
+{
+ checkDisposed();
+ return m_xDocument->retrieveLocale();
+}
+
+// virtual
+::sal_Bool SAL_CALL ParagraphImpl::containsPoint(::css::awt::Point const & rPoint)
+ throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+ ::css::awt::Rectangle aRect(m_xDocument->retrieveParagraphBounds(this,
+ false));
+ return rPoint.X >= 0 && rPoint.X < aRect.Width
+ && rPoint.Y >= 0 && rPoint.Y < aRect.Height;
+}
+
+// virtual
+::css::uno::Reference< ::css::accessibility::XAccessible > SAL_CALL
+ParagraphImpl::getAccessibleAtPoint(::css::awt::Point const &)
+ throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+ return 0;
+}
+
+// virtual
+::css::awt::Rectangle SAL_CALL ParagraphImpl::getBounds()
+ throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+ return m_xDocument->retrieveParagraphBounds(this, false);
+}
+
+// virtual
+::css::awt::Point SAL_CALL ParagraphImpl::getLocation()
+ throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+ ::css::awt::Rectangle aRect(m_xDocument->retrieveParagraphBounds(this,
+ false));
+ return ::css::awt::Point(aRect.X, aRect.Y);
+}
+
+// virtual
+::css::awt::Point SAL_CALL ParagraphImpl::getLocationOnScreen()
+ throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+ ::css::awt::Rectangle aRect(m_xDocument->retrieveParagraphBounds(this,
+ true));
+ return ::css::awt::Point(aRect.X, aRect.Y);
+}
+
+// virtual
+::css::awt::Size SAL_CALL ParagraphImpl::getSize()
+ throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+ ::css::awt::Rectangle aRect(m_xDocument->retrieveParagraphBounds(this,
+ false));
+ return ::css::awt::Size(aRect.Width, aRect.Height);
+}
+
+// virtual
+void SAL_CALL ParagraphImpl::grabFocus() throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+ Window* pWindow = m_xDocument->GetWindow();
+ if ( pWindow )
+ {
+ pWindow->GrabFocus();
+ }
+ try
+ {
+ m_xDocument->changeParagraphSelection(this, 0, 0);
+ }
+ catch (::css::lang::IndexOutOfBoundsException & rEx)
+ {
+ OSL_TRACE(
+ "textwindowaccessibility.cxx: ParagraphImpl::grabFocus:"
+ " caught unexpected %s\n",
+ ::rtl::OUStringToOString(rEx.Message, RTL_TEXTENCODING_UTF8).
+ getStr());
+ }
+}
+
+// virtual
+::css::uno::Any SAL_CALL ParagraphImpl::getAccessibleKeyBinding()
+ throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+ return ::css::uno::Any();
+}
+
+// virtual
+::css::util::Color SAL_CALL ParagraphImpl::getForeground()
+ throw (::css::uno::RuntimeException)
+{
+ return 0; // TODO
+}
+
+// virtual
+::css::util::Color SAL_CALL ParagraphImpl::getBackground()
+ throw (::css::uno::RuntimeException)
+{
+ return 0; // TODO
+}
+
+// virtual
+::sal_Int32 SAL_CALL ParagraphImpl::getCaretPosition()
+ throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+ return m_xDocument->retrieveParagraphCaretPosition(this);
+}
+
+// virtual
+::sal_Bool SAL_CALL ParagraphImpl::setCaretPosition(::sal_Int32 nIndex)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException)
+{
+ checkDisposed();
+ m_xDocument->changeParagraphSelection(this, nIndex, nIndex);
+ return true;
+}
+
+// virtual
+::sal_Unicode SAL_CALL ParagraphImpl::getCharacter(::sal_Int32 nIndex)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException)
+{
+ checkDisposed();
+ return OCommonAccessibleText::getCharacter(nIndex);
+}
+
+// virtual
+::css::uno::Sequence< ::css::beans::PropertyValue > SAL_CALL
+ParagraphImpl::getCharacterAttributes(::sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException)
+{
+ checkDisposed();
+ return m_xDocument->retrieveCharacterAttributes( this, nIndex, aRequestedAttributes );
+}
+
+// virtual
+::css::awt::Rectangle SAL_CALL
+ParagraphImpl::getCharacterBounds(::sal_Int32 nIndex)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException)
+{
+ checkDisposed();
+ ::css::awt::Rectangle aBounds(m_xDocument->retrieveCharacterBounds(this, nIndex));
+ ::css::awt::Rectangle aParaBounds(m_xDocument->retrieveParagraphBounds(this, false));
+ aBounds.X -= aParaBounds.X;
+ aBounds.Y -= aParaBounds.Y;
+ return aBounds;
+}
+
+// virtual
+::sal_Int32 SAL_CALL ParagraphImpl::getCharacterCount()
+ throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+ return OCommonAccessibleText::getCharacterCount();
+}
+
+// virtual
+::sal_Int32 SAL_CALL
+ParagraphImpl::getIndexAtPoint(::css::awt::Point const & rPoint)
+ throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+ ::css::awt::Point aPoint(rPoint);
+ ::css::awt::Rectangle aParaBounds(m_xDocument->retrieveParagraphBounds(this, false));
+ aPoint.X += aParaBounds.X;
+ aPoint.Y += aParaBounds.Y;
+ return m_xDocument->retrieveCharacterIndex(this, aPoint);
+}
+
+// virtual
+::rtl::OUString SAL_CALL ParagraphImpl::getSelectedText()
+ throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+
+ return OCommonAccessibleText::getSelectedText();
+}
+
+// virtual
+::sal_Int32 SAL_CALL ParagraphImpl::getSelectionStart()
+ throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+ return OCommonAccessibleText::getSelectionStart();
+}
+
+// virtual
+::sal_Int32 SAL_CALL ParagraphImpl::getSelectionEnd()
+ throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+ return OCommonAccessibleText::getSelectionEnd();
+}
+
+// virtual
+::sal_Bool SAL_CALL ParagraphImpl::setSelection(::sal_Int32 nStartIndex,
+ ::sal_Int32 nEndIndex)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException)
+{
+ checkDisposed();
+ m_xDocument->changeParagraphSelection(this, nStartIndex, nEndIndex);
+ return true;
+}
+
+// virtual
+::rtl::OUString SAL_CALL ParagraphImpl::getText()
+ throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+ return OCommonAccessibleText::getText();
+}
+
+// virtual
+::rtl::OUString SAL_CALL ParagraphImpl::getTextRange(::sal_Int32 nStartIndex,
+ ::sal_Int32 nEndIndex)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException)
+{
+ checkDisposed();
+ return OCommonAccessibleText::getTextRange(nStartIndex, nEndIndex);
+}
+
+// virtual
+::com::sun::star::accessibility::TextSegment SAL_CALL ParagraphImpl::getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+{
+ checkDisposed();
+ return OCommonAccessibleText::getTextAtIndex(nIndex, aTextType);
+}
+
+// virtual
+::com::sun::star::accessibility::TextSegment SAL_CALL ParagraphImpl::getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+{
+ checkDisposed();
+ return OCommonAccessibleText::getTextBeforeIndex(nIndex, aTextType);
+}
+
+// virtual
+::com::sun::star::accessibility::TextSegment SAL_CALL ParagraphImpl::getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+{
+ checkDisposed();
+ return OCommonAccessibleText::getTextBehindIndex(nIndex, aTextType);
+}
+
+// virtual
+::sal_Bool SAL_CALL ParagraphImpl::copyText(::sal_Int32 nStartIndex,
+ ::sal_Int32 nEndIndex)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException)
+{
+ checkDisposed();
+ m_xDocument->copyParagraphText(this, nStartIndex, nEndIndex);
+ return true;
+}
+
+// virtual
+::sal_Bool SAL_CALL ParagraphImpl::cutText(::sal_Int32 nStartIndex,
+ ::sal_Int32 nEndIndex)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException)
+{
+ checkDisposed();
+ m_xDocument->changeParagraphText(this, nStartIndex, nEndIndex, true, false,
+ ::rtl::OUString());
+ return true;
+}
+
+// virtual
+::sal_Bool SAL_CALL ParagraphImpl::pasteText(::sal_Int32 nIndex)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException)
+{
+ checkDisposed();
+ m_xDocument->changeParagraphText(this, nIndex, nIndex, false, true,
+ ::rtl::OUString());
+ return true;
+}
+
+// virtual
+::sal_Bool SAL_CALL ParagraphImpl::deleteText(::sal_Int32 nStartIndex,
+ ::sal_Int32 nEndIndex)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException)
+{
+ checkDisposed();
+ m_xDocument->changeParagraphText(this, nStartIndex, nEndIndex, false, false,
+ ::rtl::OUString());
+ return true;
+}
+
+// virtual
+::sal_Bool SAL_CALL ParagraphImpl::insertText(::rtl::OUString const & rText,
+ ::sal_Int32 nIndex)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException)
+{
+ checkDisposed();
+ m_xDocument->changeParagraphText(this, nIndex, nIndex, false, false, rText);
+ return true;
+}
+
+// virtual
+::sal_Bool SAL_CALL
+ParagraphImpl::replaceText(::sal_Int32 nStartIndex, ::sal_Int32 nEndIndex,
+ ::rtl::OUString const & rReplacement)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException)
+{
+ checkDisposed();
+ m_xDocument->changeParagraphText(this, nStartIndex, nEndIndex, false, false,
+ rReplacement);
+ return true;
+}
+
+// virtual
+::sal_Bool SAL_CALL ParagraphImpl::setAttributes(
+ ::sal_Int32 nStartIndex, ::sal_Int32 nEndIndex,
+ ::css::uno::Sequence< ::css::beans::PropertyValue > const & rAttributeSet)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException)
+{
+ checkDisposed();
+ m_xDocument->changeParagraphAttributes(this, nStartIndex, nEndIndex,
+ rAttributeSet);
+ return true;
+}
+
+// virtual
+::sal_Bool SAL_CALL ParagraphImpl::setText(::rtl::OUString const & rText)
+ throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+ m_xDocument->changeParagraphText(this, rText);
+ return true;
+}
+
+// virtual
+::css::uno::Sequence< ::css::beans::PropertyValue > SAL_CALL
+ParagraphImpl::getDefaultAttributes(const ::css::uno::Sequence< ::rtl::OUString >& RequestedAttributes)
+ throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+ return m_xDocument->retrieveDefaultAttributes( this, RequestedAttributes );
+}
+
+// virtual
+::css::uno::Sequence< ::css::beans::PropertyValue > SAL_CALL
+ParagraphImpl::getRunAttributes(::sal_Int32 Index, const ::css::uno::Sequence< ::rtl::OUString >& RequestedAttributes)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException)
+{
+ checkDisposed();
+ return m_xDocument->retrieveRunAttributes( this, Index, RequestedAttributes );
+}
+
+// virtual
+::sal_Int32 SAL_CALL ParagraphImpl::getLineNumberAtIndex( ::sal_Int32 nIndex )
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException)
+{
+ checkDisposed();
+
+ ::sal_Int32 nLineNo = -1;
+ ::css::i18n::Boundary aBoundary =
+ m_xDocument->retrieveParagraphLineBoundary( this, nIndex, &nLineNo );
+
+ return nLineNo;
+}
+
+// virtual
+::css::accessibility::TextSegment SAL_CALL ParagraphImpl::getTextAtLineNumber( ::sal_Int32 nLineNo )
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException)
+{
+ checkDisposed();
+
+ ::css::i18n::Boundary aBoundary =
+ m_xDocument->retrieveParagraphBoundaryOfLine( this, nLineNo );
+
+ return ::css::accessibility::TextSegment( getTextRange(aBoundary.startPos, aBoundary.endPos),
+ aBoundary.startPos, aBoundary.endPos);
+}
+
+// virtual
+::css::accessibility::TextSegment SAL_CALL ParagraphImpl::getTextAtLineWithCaret( )
+ throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+
+ sal_Int32 nLineNo = getNumberOfLineWithCaret();
+
+ try {
+ return ( nLineNo >= 0 ) ?
+ getTextAtLineNumber( nLineNo ) :
+ ::css::accessibility::TextSegment();
+ } catch (const ::css::lang::IndexOutOfBoundsException&) {
+ throw ::css::uno::RuntimeException(
+ ::rtl::OUString(
+ RTL_CONSTASCII_USTRINGPARAM(
+ "textwindowaccessibility.cxx:"
+ " ParagraphImpl::getTextAtLineWithCaret") ),
+ static_cast< ::css::uno::XWeak * >( this ) );
+ }
+}
+
+// virtual
+::sal_Int32 SAL_CALL ParagraphImpl::getNumberOfLineWithCaret( )
+ throw (::css::uno::RuntimeException)
+{
+ checkDisposed();
+ return m_xDocument->retrieveParagraphLineWithCursor(this);
+}
+
+
+// virtual
+void SAL_CALL ParagraphImpl::addEventListener(
+ ::css::uno::Reference<
+ ::css::accessibility::XAccessibleEventListener > const & rListener)
+ throw (::css::uno::RuntimeException)
+{
+ if (rListener.is())
+ {
+ ::osl::ClearableMutexGuard aGuard(rBHelper.rMutex);
+ if (rBHelper.bDisposed || rBHelper.bInDispose)
+ {
+ aGuard.clear();
+ rListener->disposing(::css::lang::EventObject(
+ static_cast< ::cppu::OWeakObject * >(this)));
+ }
+ else
+ {
+ if (!m_nClientId)
+ m_nClientId = comphelper::AccessibleEventNotifier::registerClient( );
+ comphelper::AccessibleEventNotifier::addEventListener( m_nClientId, rListener );
+ }
+ }
+}
+
+// virtual
+void SAL_CALL ParagraphImpl::removeEventListener(
+ ::css::uno::Reference<
+ ::css::accessibility::XAccessibleEventListener > const & rListener)
+ throw (::css::uno::RuntimeException)
+{
+ comphelper::AccessibleEventNotifier::TClientId nId = 0;
+ {
+ ::osl::ClearableMutexGuard aGuard(rBHelper.rMutex);
+ if (rListener.is() && m_nClientId != 0
+ && comphelper::AccessibleEventNotifier::removeEventListener( m_nClientId, rListener ) == 0)
+ {
+ nId = m_nClientId;
+ m_nClientId = 0;
+ }
+ }
+ if (nId != 0)
+ {
+ // no listeners anymore
+ // -> revoke ourself. This may lead to the notifier thread dying (if we were the last client),
+ // and at least to us not firing any events anymore, in case somebody calls
+ // NotifyAccessibleEvent, again
+ comphelper::AccessibleEventNotifier::revokeClient(nId);
+ }
+}
+
+// virtual
+void SAL_CALL ParagraphImpl::disposing()
+{
+ comphelper::AccessibleEventNotifier::TClientId nId = 0;
+ {
+ ::osl::ClearableMutexGuard aGuard(rBHelper.rMutex);
+ nId = m_nClientId;
+ m_nClientId = 0;
+ }
+ if (nId != 0)
+ comphelper::AccessibleEventNotifier::revokeClientNotifyDisposing(nId, *this);
+}
+
+// virtual
+::rtl::OUString ParagraphImpl::implGetText()
+{
+ return m_xDocument->retrieveParagraphText(this);
+}
+
+// virtual
+::css::lang::Locale ParagraphImpl::implGetLocale()
+{
+ return m_xDocument->retrieveLocale();
+}
+
+// virtual
+void ParagraphImpl::implGetSelection(::sal_Int32 & rStartIndex,
+ ::sal_Int32 & rEndIndex)
+{
+ m_xDocument->retrieveParagraphSelection(this, &rStartIndex, &rEndIndex);
+}
+
+// virtual
+void ParagraphImpl::implGetParagraphBoundary( ::css::i18n::Boundary& rBoundary,
+ ::sal_Int32 nIndex )
+{
+ ::rtl::OUString sText( implGetText() );
+ ::sal_Int32 nLength = sText.getLength();
+
+ if ( implIsValidIndex( nIndex, nLength ) )
+ {
+ rBoundary.startPos = 0;
+ rBoundary.endPos = nLength;
+ }
+ else
+ {
+ rBoundary.startPos = nIndex;
+ rBoundary.endPos = nIndex;
+ }
+}
+
+// virtual
+void ParagraphImpl::implGetLineBoundary( ::css::i18n::Boundary& rBoundary,
+ ::sal_Int32 nIndex )
+{
+ ::rtl::OUString sText( implGetText() );
+ ::sal_Int32 nLength = sText.getLength();
+
+ if ( implIsValidIndex( nIndex, nLength ) || nIndex == nLength )
+ {
+ ::css::i18n::Boundary aBoundary =
+ m_xDocument->retrieveParagraphLineBoundary( this, nIndex );
+ rBoundary.startPos = aBoundary.startPos;
+ rBoundary.endPos = aBoundary.endPos;
+ }
+ else
+ {
+ rBoundary.startPos = nIndex;
+ rBoundary.endPos = nIndex;
+ }
+}
+
+
+void ParagraphImpl::checkDisposed()
+{
+ ::osl::MutexGuard aGuard(rBHelper.rMutex);
+ if (!(rBHelper.bDisposed || rBHelper.bInDispose))
+ return;
+ throw ::css::lang::DisposedException(
+ ::rtl::OUString(), static_cast< ::css::uno::XWeak * >(this));
+}
+
+Document::Document(::VCLXWindow * pVclXWindow, ::TextEngine & rEngine,
+ ::TextView & rView, bool bCompoundControlChild):
+ VCLXAccessibleComponent(pVclXWindow),
+ m_xAccessible(pVclXWindow),
+ m_rEngine(rEngine),
+ m_rView(rView),
+ m_aEngineListener(*this),
+ m_aViewListener(LINK(this, Document, WindowEventHandler)),
+ m_bCompoundControlChild(bCompoundControlChild)
+{}
+
+::css::lang::Locale Document::retrieveLocale()
+{
+ ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+ return m_rEngine.GetLocale();
+}
+
+::sal_Int32 Document::retrieveParagraphIndex(ParagraphImpl const * pParagraph)
+{
+ ::osl::MutexGuard aInternalGuard(GetMutex());
+
+ // If a client holds on to a Paragraph that is no longer visible, it can
+ // happen that this Paragraph lies outside the range from m_aVisibleBegin
+ // to m_aVisibleEnd. In that case, return -1 instead of a valid index:
+ Paragraphs::iterator aPara(m_xParagraphs->begin()
+ + pParagraph->getNumber());
+ return aPara < m_aVisibleBegin || aPara >= m_aVisibleEnd
+ ? -1 : static_cast< ::sal_Int32 >(aPara - m_aVisibleBegin);
+ // XXX numeric overflow
+}
+
+::sal_Int64 Document::retrieveParagraphState(ParagraphImpl const * pParagraph)
+{
+ ::osl::MutexGuard aInternalGuard(GetMutex());
+
+ // If a client holds on to a Paragraph that is no longer visible, it can
+ // happen that this Paragraph lies outside the range from m_aVisibleBegin
+ // to m_aVisibleEnd. In that case, it is neither VISIBLE nor SHOWING:
+ ::sal_Int64 nState
+ = (static_cast< ::sal_Int64 >(1)
+ << ::css::accessibility::AccessibleStateType::ENABLED)
+ | (static_cast< ::sal_Int64 >(1)
+ << ::css::accessibility::AccessibleStateType::SENSITIVE)
+ | (static_cast< ::sal_Int64 >(1)
+ << ::css::accessibility::AccessibleStateType::FOCUSABLE)
+ | (static_cast< ::sal_Int64 >(1)
+ << ::css::accessibility::AccessibleStateType::MULTI_LINE);
+ if (!m_rView.IsReadOnly())
+ nState |= (static_cast< ::sal_Int64 >(1)
+ << ::css::accessibility::AccessibleStateType::EDITABLE);
+ Paragraphs::iterator aPara(m_xParagraphs->begin()
+ + pParagraph->getNumber());
+ if (aPara >= m_aVisibleBegin && aPara < m_aVisibleEnd)
+ {
+ nState
+ |= (static_cast< ::sal_Int64 >(1)
+ << ::css::accessibility::AccessibleStateType::VISIBLE)
+ | (static_cast< ::sal_Int64 >(1)
+ << ::css::accessibility::AccessibleStateType::SHOWING);
+ if (aPara == m_aFocused)
+ nState |= (static_cast< ::sal_Int64 >(1)
+ << ::css::accessibility::AccessibleStateType::FOCUSED);
+ }
+ return nState;
+};
+
+::css::awt::Rectangle
+Document::retrieveParagraphBounds(ParagraphImpl const * pParagraph,
+ bool bAbsolute)
+{
+ ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+ ::osl::MutexGuard aInternalGuard(GetMutex());
+
+ // If a client holds on to a Paragraph that is no longer visible (as it
+ // scrolled out the top of the view), it can happen that this Paragraph
+ // lies before m_aVisibleBegin. In that case, calculate the vertical
+ // position of the Paragraph starting at paragraph 0, otherwise optimize
+ // and start at m_aVisibleBegin:
+ Paragraphs::iterator aPara(m_xParagraphs->begin()
+ + pParagraph->getNumber());
+ ::sal_Int32 nPos;
+ Paragraphs::iterator aIt;
+ if (aPara < m_aVisibleBegin)
+ {
+ nPos = 0;
+ aIt = m_xParagraphs->begin();
+ }
+ else
+ {
+ nPos = m_nViewOffset - m_nVisibleBeginOffset;
+ aIt = m_aVisibleBegin;
+ }
+ for (; aIt != aPara; ++aIt)
+ nPos += aIt->getHeight();
+
+ Point aOrig(0, 0);
+ if (bAbsolute)
+ aOrig = m_rView.GetWindow()->OutputToAbsoluteScreenPixel(aOrig);
+
+ return ::css::awt::Rectangle(
+ static_cast< ::sal_Int32 >(aOrig.X()),
+ static_cast< ::sal_Int32 >(aOrig.Y()) + nPos - m_nViewOffset,
+ m_rView.GetWindow()->GetOutputSizePixel().Width(), aPara->getHeight());
+ // XXX numeric overflow (3x)
+}
+
+::rtl::OUString
+Document::retrieveParagraphText(ParagraphImpl const * pParagraph)
+{
+ ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+ ::osl::MutexGuard aInternalGuard(GetMutex());
+ return m_rEngine.GetText(static_cast< ::ULONG >(pParagraph->getNumber()));
+ // numeric overflow cannot happen here
+}
+
+void Document::retrieveParagraphSelection(ParagraphImpl const * pParagraph,
+ ::sal_Int32 * pBegin,
+ ::sal_Int32 * pEnd)
+{
+ ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+ ::osl::MutexGuard aInternalGuard(GetMutex());
+ ::TextSelection const & rSelection = m_rView.GetSelection();
+ Paragraphs::size_type nNumber = pParagraph->getNumber();
+ TextPaM aStartPaM( rSelection.GetStart() );
+ TextPaM aEndPaM( rSelection.GetEnd() );
+ TextPaM aMinPaM( ::std::min( aStartPaM, aEndPaM ) );
+ TextPaM aMaxPaM( ::std::max( aStartPaM, aEndPaM ) );
+
+ if ( nNumber >= aMinPaM.GetPara() && nNumber <= aMaxPaM.GetPara() )
+ {
+ *pBegin = nNumber > aMinPaM.GetPara()
+ ? 0
+ : static_cast< ::sal_Int32 >( aMinPaM.GetIndex() );
+ // XXX numeric overflow
+ *pEnd = nNumber < aMaxPaM.GetPara()
+ ? static_cast< ::sal_Int32 >( m_rEngine.GetText(static_cast< ::ULONG >(nNumber)).Len() )
+ : static_cast< ::sal_Int32 >( aMaxPaM.GetIndex() );
+ // XXX numeric overflow (3x)
+
+ if ( aStartPaM > aEndPaM )
+ ::std::swap( *pBegin, *pEnd );
+ }
+ else
+ {
+ *pBegin = 0;
+ *pEnd = 0;
+ }
+}
+
+::sal_Int32 Document::retrieveParagraphCaretPosition(ParagraphImpl const * pParagraph)
+{
+ ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+ ::osl::MutexGuard aInternalGuard(GetMutex());
+ ::TextSelection const & rSelection = m_rView.GetSelection();
+ Paragraphs::size_type nNumber = pParagraph->getNumber();
+ TextPaM aEndPaM( rSelection.GetEnd() );
+
+ return aEndPaM.GetPara() == nNumber
+ ? static_cast< ::sal_Int32 >(aEndPaM.GetIndex()) : -1;
+}
+
+::css::awt::Rectangle
+Document::retrieveCharacterBounds(ParagraphImpl const * pParagraph,
+ ::sal_Int32 nIndex)
+{
+ ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+ ::osl::MutexGuard aInternalGuard(GetMutex());
+ ::ULONG nNumber = static_cast< ::ULONG >(pParagraph->getNumber());
+ sal_Int32 nLength = m_rEngine.GetText(nNumber).Len();
+ // XXX numeric overflow
+ if (nIndex < 0 || nIndex > nLength)
+ throw ::css::lang::IndexOutOfBoundsException(
+ ::rtl::OUString(
+ RTL_CONSTASCII_USTRINGPARAM(
+ "textwindowaccessibility.cxx:"
+ " Document::retrieveCharacterAttributes")),
+ static_cast< ::css::uno::XWeak * >(this));
+ ::css::awt::Rectangle aBounds( 0, 0, 0, 0 );
+ if ( nIndex == nLength )
+ {
+ aBounds = AWTRectangle(
+ m_rEngine.PaMtoEditCursor(::TextPaM(nNumber,
+ static_cast< ::USHORT >(nIndex))));
+ }
+ else
+ {
+ ::Rectangle aLeft(
+ m_rEngine.PaMtoEditCursor(::TextPaM(nNumber,
+ static_cast< ::USHORT >(nIndex))));
+ // XXX numeric overflow
+ ::Rectangle aRight(
+ m_rEngine.PaMtoEditCursor(::TextPaM(nNumber,
+ static_cast< ::USHORT >(nIndex)
+ + 1)));
+ // XXX numeric overflow (2x)
+ // FIXME If the vertical extends of the two cursors do not match, assume
+ // nIndex is the last character on the line; the bounding box will then
+ // extend to m_rEnginge.GetMaxTextWidth():
+ ::sal_Int32 nWidth = (aLeft.Top() == aRight.Top()
+ && aLeft.Bottom() == aRight.Bottom())
+ ? static_cast< ::sal_Int32 >(aRight.Left() - aLeft.Left())
+ : static_cast< ::sal_Int32 >(m_rEngine.GetMaxTextWidth()
+ - aLeft.Left());
+ // XXX numeric overflow (4x)
+ aBounds = ::css::awt::Rectangle(static_cast< ::sal_Int32 >(aLeft.Left()),
+ static_cast< ::sal_Int32 >(aLeft.Top() - m_nViewOffset),
+ nWidth,
+ static_cast< ::sal_Int32 >(aLeft.Bottom()
+ - aLeft.Top()));
+ // XXX numeric overflow (4x)
+ }
+ return aBounds;
+}
+
+::sal_Int32 Document::retrieveCharacterIndex(ParagraphImpl const * pParagraph,
+ ::css::awt::Point const & rPoint)
+{
+ ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+ ::osl::MutexGuard aInternalGuard(GetMutex());
+ ::ULONG nNumber = static_cast< ::ULONG >(pParagraph->getNumber());
+ // XXX numeric overflow
+ ::TextPaM aPaM(m_rEngine.GetPaM(::Point(static_cast< long >(rPoint.X),
+ static_cast< long >(rPoint.Y))));
+ // XXX numeric overflow (2x)
+ return aPaM.GetPara() == nNumber
+ ? static_cast< ::sal_Int32 >(aPaM.GetIndex()) : -1;
+ // XXX numeric overflow
+}
+
+::css::uno::Sequence< ::css::beans::PropertyValue >
+Document::retrieveCharacterAttributes(
+ ParagraphImpl const * pParagraph, ::sal_Int32 nIndex,
+ const ::css::uno::Sequence< ::rtl::OUString >& aRequestedAttributes)
+{
+ ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+ ::osl::MutexGuard aInternalGuard(GetMutex());
+ ::ULONG nNumber = static_cast< ::ULONG >(pParagraph->getNumber());
+ // XXX numeric overflow
+ if (nIndex < 0 || nIndex >= m_rEngine.GetText(nNumber).Len())
+ throw ::css::lang::IndexOutOfBoundsException(
+ ::rtl::OUString(
+ RTL_CONSTASCII_USTRINGPARAM(
+ "textwindowaccessibility.cxx:"
+ " Document::retrieveCharacterAttributes")),
+ static_cast< ::css::uno::XWeak * >(this));
+
+ // retrieve default attributes
+ tPropValMap aCharAttrSeq;
+ retrieveDefaultAttributesImpl( pParagraph, aRequestedAttributes, aCharAttrSeq );
+
+ // retrieve run attributes
+ tPropValMap aRunAttrSeq;
+ retrieveRunAttributesImpl( pParagraph, nIndex, aRequestedAttributes, aRunAttrSeq );
+
+ // merge default and run attributes
+ for ( tPropValMap::const_iterator aRunIter = aRunAttrSeq.begin();
+ aRunIter != aRunAttrSeq.end();
+ ++aRunIter )
+ {
+ aCharAttrSeq[ aRunIter->first ] = aRunIter->second;
+ }
+
+ return convertHashMapToSequence( aCharAttrSeq );
+}
+
+void Document::retrieveDefaultAttributesImpl(
+ ParagraphImpl const * pParagraph,
+ const ::css::uno::Sequence< ::rtl::OUString >& RequestedAttributes,
+ tPropValMap& rDefAttrSeq)
+{
+ // default attributes are not supported by text engine
+ (void) pParagraph;
+ (void) RequestedAttributes;
+ (void) rDefAttrSeq;
+}
+
+::css::uno::Sequence< ::css::beans::PropertyValue >
+Document::retrieveDefaultAttributes(
+ ParagraphImpl const * pParagraph,
+ const ::css::uno::Sequence< ::rtl::OUString >& RequestedAttributes)
+{
+ ::osl::Guard< ::comphelper::IMutex > aExternalGuard( getExternalLock() );
+ ::osl::MutexGuard aInternalGuard( GetMutex() );
+
+ tPropValMap aDefAttrSeq;
+ retrieveDefaultAttributesImpl( pParagraph, RequestedAttributes, aDefAttrSeq );
+ return convertHashMapToSequence( aDefAttrSeq );
+}
+
+// static
+::css::uno::Sequence< ::css::beans::PropertyValue >
+Document::convertHashMapToSequence(tPropValMap& rAttrSeq)
+{
+ ::css::uno::Sequence< ::css::beans::PropertyValue > aValues( rAttrSeq.size() );
+ ::css::beans::PropertyValue* pValues = aValues.getArray();
+ ::sal_Int32 i = 0;
+ for ( tPropValMap::const_iterator aIter = rAttrSeq.begin();
+ aIter != rAttrSeq.end();
+ ++aIter )
+ {
+ pValues[i] = aIter->second;
+ ++i;
+ }
+ return aValues;
+}
+
+void Document::retrieveRunAttributesImpl(
+ ParagraphImpl const * pParagraph, ::sal_Int32 Index,
+ const ::css::uno::Sequence< ::rtl::OUString >& RequestedAttributes,
+ tPropValMap& rRunAttrSeq)
+{
+ ::ULONG nNumber = static_cast< ::ULONG >( pParagraph->getNumber() );
+ ::TextPaM aPaM( nNumber, static_cast< ::USHORT >( Index ) );
+ // XXX numeric overflow
+ // FIXME TEXTATTR_HYPERLINK ignored:
+ ::TextAttribFontColor const * pColor
+ = static_cast< ::TextAttribFontColor const * >(
+ m_rEngine.FindAttrib( aPaM, TEXTATTR_FONTCOLOR ) );
+ ::TextAttribFontWeight const * pWeight
+ = static_cast< ::TextAttribFontWeight const * >(
+ m_rEngine.FindAttrib( aPaM, TEXTATTR_FONTWEIGHT ) );
+ tPropValMap aRunAttrSeq;
+ if ( pColor )
+ {
+ ::css::beans::PropertyValue aPropVal;
+ aPropVal.Name =
+ ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "CharColor" ) );
+ aPropVal.Handle = -1;
+ aPropVal.Value = mapFontColor( pColor->GetColor() );
+ aPropVal.State = ::css::beans::PropertyState_DIRECT_VALUE;
+ aRunAttrSeq[ aPropVal.Name ] = aPropVal;
+ }
+ if ( pWeight )
+ {
+ ::css::beans::PropertyValue aPropVal;
+ aPropVal.Name =
+ ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "CharWeight" ) );
+ aPropVal.Handle = -1;
+ aPropVal.Value = mapFontWeight( pWeight->getFontWeight() );
+ aPropVal.State = ::css::beans::PropertyState_DIRECT_VALUE;
+ aRunAttrSeq[ aPropVal.Name ] = aPropVal;
+ }
+ if ( RequestedAttributes.getLength() == 0 )
+ {
+ rRunAttrSeq = aRunAttrSeq;
+ }
+ else
+ {
+ const ::rtl::OUString* pReqAttrs = RequestedAttributes.getConstArray();
+ const ::sal_Int32 nLength = RequestedAttributes.getLength();
+ for ( ::sal_Int32 i = 0; i < nLength; ++i )
+ {
+ tPropValMap::iterator aIter = aRunAttrSeq.find( pReqAttrs[i] );
+ if ( aIter != aRunAttrSeq.end() )
+ {
+ rRunAttrSeq[ (*aIter).first ] = (*aIter).second;
+ }
+ }
+ }
+}
+
+::css::uno::Sequence< ::css::beans::PropertyValue >
+Document::retrieveRunAttributes(
+ ParagraphImpl const * pParagraph, ::sal_Int32 Index,
+ const ::css::uno::Sequence< ::rtl::OUString >& RequestedAttributes)
+{
+ ::osl::Guard< ::comphelper::IMutex > aExternalGuard( getExternalLock() );
+ ::osl::MutexGuard aInternalGuard( GetMutex() );
+ ::ULONG nNumber = static_cast< ::ULONG >( pParagraph->getNumber() );
+ // XXX numeric overflow
+ if ( Index < 0 || Index >= m_rEngine.GetText(nNumber).Len() )
+ throw ::css::lang::IndexOutOfBoundsException(
+ ::rtl::OUString(
+ RTL_CONSTASCII_USTRINGPARAM(
+ "textwindowaccessibility.cxx:"
+ " Document::retrieveRunAttributes") ),
+ static_cast< ::css::uno::XWeak * >( this ) );
+
+ tPropValMap aRunAttrSeq;
+ retrieveRunAttributesImpl( pParagraph, Index, RequestedAttributes, aRunAttrSeq );
+ return convertHashMapToSequence( aRunAttrSeq );
+}
+
+void Document::changeParagraphText(ParagraphImpl * pParagraph,
+ ::rtl::OUString const & rText)
+{
+ ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+ {
+ ::osl::MutexGuard aInternalGuard(GetMutex());
+ ::ULONG nNumber = static_cast< ::ULONG >(pParagraph->getNumber());
+ // XXX numeric overflow
+ changeParagraphText(nNumber, 0, m_rEngine.GetTextLen(nNumber), false,
+ false, rText);
+ }
+}
+
+void Document::changeParagraphText(ParagraphImpl * pParagraph,
+ ::sal_Int32 nBegin, ::sal_Int32 nEnd,
+ bool bCut, bool bPaste,
+ ::rtl::OUString const & rText)
+{
+ ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+ {
+ ::osl::MutexGuard aInternalGuard(GetMutex());
+ ::ULONG nNumber = static_cast< ::ULONG >(pParagraph->getNumber());
+ // XXX numeric overflow
+ if (nBegin < 0 || nBegin > nEnd
+ || nEnd > m_rEngine.GetText(nNumber).Len())
+ throw ::css::lang::IndexOutOfBoundsException(
+ ::rtl::OUString(
+ RTL_CONSTASCII_USTRINGPARAM(
+ "textwindowaccessibility.cxx:"
+ " Document::changeParagraphText")),
+ static_cast< ::css::uno::XWeak * >(this));
+ changeParagraphText(nNumber, static_cast< ::USHORT >(nBegin),
+ static_cast< ::USHORT >(nEnd), bCut, bPaste, rText);
+ // XXX numeric overflow (2x)
+ }
+}
+
+void Document::copyParagraphText(ParagraphImpl const * pParagraph,
+ ::sal_Int32 nBegin, ::sal_Int32 nEnd)
+{
+ ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+ {
+ ::osl::MutexGuard aInternalGuard(GetMutex());
+ ::ULONG nNumber = static_cast< ::ULONG >(pParagraph->getNumber());
+ // XXX numeric overflow
+ if (nBegin < 0 || nBegin > nEnd
+ || nEnd > m_rEngine.GetText(nNumber).Len())
+ throw ::css::lang::IndexOutOfBoundsException(
+ ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(
+ "textwindowaccessibility.cxx:"
+ " Document::copyParagraphText")),
+ static_cast< ::css::uno::XWeak * >(this));
+ m_rView.SetSelection(
+ ::TextSelection(::TextPaM(nNumber, static_cast< ::USHORT >(nBegin)),
+ ::TextPaM(nNumber, static_cast< ::USHORT >(nEnd))));
+ // XXX numeric overflow (2x)
+ m_rView.Copy();
+ }
+}
+
+void Document::changeParagraphAttributes(
+ ParagraphImpl * pParagraph, ::sal_Int32 nBegin, ::sal_Int32 nEnd,
+ ::css::uno::Sequence< ::css::beans::PropertyValue > const & rAttributeSet)
+{
+ ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+ {
+ ::osl::MutexGuard aInternalGuard(GetMutex());
+ ::ULONG nNumber = static_cast< ::ULONG >(pParagraph->getNumber());
+ // XXX numeric overflow
+ if (nBegin < 0 || nBegin > nEnd
+ || nEnd > m_rEngine.GetText(nNumber).Len())
+ throw ::css::lang::IndexOutOfBoundsException(
+ ::rtl::OUString(
+ RTL_CONSTASCII_USTRINGPARAM(
+ "textwindowaccessibility.cxx:"
+ " Document::changeParagraphAttributes")),
+ static_cast< ::css::uno::XWeak * >(this));
+
+ // FIXME The new attributes are added to any attributes already set,
+ // they do not replace the old attributes as required by
+ // XAccessibleEditableText.setAttributes:
+ for (::sal_Int32 i = 0; i < rAttributeSet.getLength(); ++i)
+ if (rAttributeSet[i].Name.equalsAsciiL(
+ RTL_CONSTASCII_STRINGPARAM("CharColor")))
+ m_rEngine.SetAttrib(::TextAttribFontColor(
+ mapFontColor(rAttributeSet[i].Value)),
+ nNumber, static_cast< ::USHORT >(nBegin),
+ static_cast< ::USHORT >(nEnd));
+ // XXX numeric overflow (2x)
+ else if (rAttributeSet[i].Name.equalsAsciiL(
+ RTL_CONSTASCII_STRINGPARAM("CharWeight")))
+ m_rEngine.SetAttrib(::TextAttribFontWeight(
+ mapFontWeight(rAttributeSet[i].Value)),
+ nNumber, static_cast< ::USHORT >(nBegin),
+ static_cast< ::USHORT >(nEnd));
+ // XXX numeric overflow (2x)
+ }
+}
+
+void Document::changeParagraphSelection(ParagraphImpl * pParagraph,
+ ::sal_Int32 nBegin, ::sal_Int32 nEnd)
+{
+ ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+ {
+ ::osl::MutexGuard aInternalGuard(GetMutex());
+ ::ULONG nNumber = static_cast< ::ULONG >(pParagraph->getNumber());
+ // XXX numeric overflow
+ if (nBegin < 0 || nBegin > nEnd
+ || nEnd > m_rEngine.GetText(nNumber).Len())
+ throw ::css::lang::IndexOutOfBoundsException(
+ ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(
+ "textwindowaccessibility.cxx:"
+ " Document::changeParagraphSelection")),
+ static_cast< ::css::uno::XWeak * >(this));
+ m_rView.SetSelection(
+ ::TextSelection(::TextPaM(nNumber, static_cast< ::USHORT >(nBegin)),
+ ::TextPaM(nNumber, static_cast< ::USHORT >(nEnd))));
+ // XXX numeric overflow (2x)
+ }
+}
+
+::css::i18n::Boundary
+Document::retrieveParagraphLineBoundary( ParagraphImpl const * pParagraph,
+ ::sal_Int32 nIndex, ::sal_Int32 *pLineNo )
+{
+ ::css::i18n::Boundary aBoundary;
+ aBoundary.startPos = nIndex;
+ aBoundary.endPos = nIndex;
+
+ ::osl::Guard< ::comphelper::IMutex > aExternalGuard( getExternalLock() );
+ {
+ ::osl::MutexGuard aInternalGuard( GetMutex() );
+ ::ULONG nNumber = static_cast< ::ULONG >( pParagraph->getNumber() );
+ if ( nIndex < 0 || nIndex > m_rEngine.GetText( nNumber ).Len() )
+ throw ::css::lang::IndexOutOfBoundsException(
+ ::rtl::OUString(
+ RTL_CONSTASCII_USTRINGPARAM(
+ "textwindowaccessibility.cxx:"
+ " Document::retrieveParagraphLineBoundary" ) ),
+ static_cast< ::css::uno::XWeak * >( this ) );
+ ::sal_Int32 nLineStart = 0;
+ ::sal_Int32 nLineEnd = 0;
+ ::USHORT nLineCount = m_rEngine.GetLineCount( nNumber );
+ for ( ::USHORT nLine = 0; nLine < nLineCount; ++nLine )
+ {
+ ::sal_Int32 nLineLength = static_cast< ::sal_Int32 >(
+ m_rEngine.GetLineLen( nNumber, nLine ) );
+ nLineStart = nLineEnd;
+ nLineEnd += nLineLength;
+ if ( nIndex >= nLineStart && ( ( nLine == nLineCount - 1 ) ? nIndex <= nLineEnd : nIndex < nLineEnd ) )
+ {
+ aBoundary.startPos = nLineStart;
+ aBoundary.endPos = nLineEnd;
+ if( pLineNo )
+ pLineNo[0] = nLine;
+ break;
+ }
+ }
+ }
+
+ return aBoundary;
+}
+
+::css::i18n::Boundary
+Document::retrieveParagraphBoundaryOfLine( ParagraphImpl const * pParagraph,
+ ::sal_Int32 nLineNo )
+{
+ ::css::i18n::Boundary aBoundary;
+ aBoundary.startPos = 0;
+ aBoundary.endPos = 0;
+
+ ::osl::Guard< ::comphelper::IMutex > aExternalGuard( getExternalLock() );
+ {
+ ::osl::MutexGuard aInternalGuard( GetMutex() );
+ ::ULONG nNumber = static_cast< ::ULONG >( pParagraph->getNumber() );
+ if ( nLineNo >= m_rEngine.GetLineCount( nNumber ) )
+ throw ::css::lang::IndexOutOfBoundsException(
+ ::rtl::OUString(
+ RTL_CONSTASCII_USTRINGPARAM(
+ "textwindowaccessibility.cxx:"
+ " Document::retrieveParagraphBoundaryOfLine" ) ),
+ static_cast< ::css::uno::XWeak * >( this ) );
+ ::sal_Int32 nLineStart = 0;
+ ::sal_Int32 nLineEnd = 0;
+ for ( ::USHORT nLine = 0; nLine <= nLineNo; ++nLine )
+ {
+ ::sal_Int32 nLineLength = static_cast< ::sal_Int32 >(
+ m_rEngine.GetLineLen( nNumber, nLine ) );
+ nLineStart = nLineEnd;
+ nLineEnd += nLineLength;
+ }
+
+ aBoundary.startPos = nLineStart;
+ aBoundary.endPos = nLineEnd;
+ }
+
+ return aBoundary;
+}
+
+sal_Int32 Document::retrieveParagraphLineWithCursor( ParagraphImpl const * pParagraph )
+{
+ ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
+ ::osl::MutexGuard aInternalGuard(GetMutex());
+ ::TextSelection const & rSelection = m_rView.GetSelection();
+ Paragraphs::size_type nNumber = pParagraph->getNumber();
+ TextPaM aEndPaM( rSelection.GetEnd() );
+
+ return aEndPaM.GetPara() == nNumber
+ ? m_rView.GetLineNumberOfCursorInSelection() : -1;
+}
+
+
+::css::uno::Reference< ::css::accessibility::XAccessibleRelationSet >
+Document::retrieveParagraphRelationSet( ParagraphImpl const * pParagraph )
+{
+ ::osl::MutexGuard aInternalGuard( GetMutex() );
+
+ ::utl::AccessibleRelationSetHelper* pRelationSetHelper = new ::utl::AccessibleRelationSetHelper();
+ ::css::uno::Reference< ::css::accessibility::XAccessibleRelationSet > xSet = pRelationSetHelper;
+
+ Paragraphs::iterator aPara( m_xParagraphs->begin() + pParagraph->getNumber() );
+
+ if ( aPara > m_aVisibleBegin && aPara < m_aVisibleEnd )
+ {
+ ::css::uno::Sequence< ::css::uno::Reference< ::css::uno::XInterface > > aSequence(1);
+ aSequence[0] = getAccessibleChild( aPara - 1 );
+ ::css::accessibility::AccessibleRelation aRelation( ::css::accessibility::AccessibleRelationType::CONTENT_FLOWS_FROM, aSequence );
+ pRelationSetHelper->AddRelation( aRelation );
+ }
+
+ if ( aPara >= m_aVisibleBegin && aPara < m_aVisibleEnd -1 )
+ {
+ ::css::uno::Sequence< ::css::uno::Reference< ::css::uno::XInterface > > aSequence(1);
+ aSequence[0] = getAccessibleChild( aPara + 1 );
+ ::css::accessibility::AccessibleRelation aRelation( ::css::accessibility::AccessibleRelationType::CONTENT_FLOWS_TO, aSequence );
+ pRelationSetHelper->AddRelation( aRelation );
+ }
+
+ return xSet;
+}
+
+void Document::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
+{
+ switch ( rVclWindowEvent.GetId() )
+ {
+ case VCLEVENT_WINDOW_GETFOCUS:
+ case VCLEVENT_WINDOW_LOSEFOCUS:
+ {
+ // #107179# if our parent is a compound control (e.g. MultiLineEdit),
+ // suppress the window focus events here
+ if ( !m_bCompoundControlChild )
+ VCLXAccessibleComponent::ProcessWindowEvent( rVclWindowEvent );
+ }
+ break;
+ default:
+ VCLXAccessibleComponent::ProcessWindowEvent( rVclWindowEvent );
+ }
+}
+
+// virtual
+::sal_Int32 SAL_CALL Document::getAccessibleChildCount()
+ throw (::css::uno::RuntimeException)
+{
+ ::comphelper::OExternalLockGuard aGuard(this);
+ init();
+ return m_aVisibleEnd - m_aVisibleBegin;
+}
+
+// virtual
+::css::uno::Reference< ::css::accessibility::XAccessible > SAL_CALL
+Document::getAccessibleChild(::sal_Int32 i)
+ throw (::css::lang::IndexOutOfBoundsException,
+ ::css::uno::RuntimeException)
+{
+ ::comphelper::OExternalLockGuard aGuard(this);
+ init();
+ if (i < 0 || i >= m_aVisibleEnd - m_aVisibleBegin)
+ throw ::css::lang::IndexOutOfBoundsException(
+ ::rtl::OUString(
+ RTL_CONSTASCII_USTRINGPARAM(
+ "textwindowaccessibility.cxx:"
+ " Document::getAccessibleChild")),
+ static_cast< ::css::uno::XWeak * >(this));
+ return getAccessibleChild(m_aVisibleBegin
+ + static_cast< Paragraphs::size_type >(i));
+}
+
+// virtual
+::sal_Int16 SAL_CALL Document::getAccessibleRole()
+ throw (::css::uno::RuntimeException)
+{
+ return ::css::accessibility::AccessibleRole::TEXT_FRAME;
+}
+
+// virtual
+::css::uno::Reference< ::css::accessibility::XAccessible > SAL_CALL
+Document::getAccessibleAtPoint(::css::awt::Point const & rPoint)
+ throw (::css::uno::RuntimeException)
+{
+ ::comphelper::OExternalLockGuard aGuard(this);
+ init();
+ if (rPoint.X >= 0
+ && rPoint.X < m_rView.GetWindow()->GetOutputSizePixel().Width()
+ && rPoint.Y >= 0 && rPoint.Y < m_nViewHeight)
+ {
+ ::sal_Int32 nOffset = m_nViewOffset + rPoint.Y; // XXX numeric overflow
+ ::sal_Int32 nPos = m_nViewOffset - m_nVisibleBeginOffset;
+ for (Paragraphs::iterator aIt(m_aVisibleBegin); aIt != m_aVisibleEnd;
+ ++aIt)
+ {
+ nPos += aIt->getHeight(); // XXX numeric overflow
+ if (nOffset < nPos)
+ return getAccessibleChild(aIt);
+ }
+ }
+ return 0;
+}
+
+// virtual
+void SAL_CALL Document::disposing()
+{
+ m_aEngineListener.endListening();
+ m_aViewListener.endListening();
+ if (m_xParagraphs.get() != 0)
+ disposeParagraphs();
+ VCLXAccessibleComponent::disposing();
+}
+
+// virtual
+void Document::Notify(::SfxBroadcaster &, ::SfxHint const & rHint)
+{
+ if (rHint.ISA(::TextHint))
+ {
+ ::TextHint const & rTextHint
+ = static_cast< ::TextHint const & >(rHint);
+ switch (rTextHint.GetId())
+ {
+ case TEXT_HINT_PARAINSERTED:
+ case TEXT_HINT_PARAREMOVED:
+ // TEXT_HINT_PARAINSERTED and TEXT_HINT_PARAREMOVED are sent at
+ // "unsafe" times (when the text engine has not yet re-formatted its
+ // content), so that for example calling ::TextEngine::GetTextHeight
+ // from within the code that handles TEXT_HINT_PARAINSERTED causes
+ // trouble within the text engine. Therefore, these hints are just
+ // buffered until a following ::TextEngine::FormatDoc causes a
+ // TEXT_HINT_TEXTFORMATTED to come in:
+ case TEXT_HINT_FORMATPARA:
+ // ::TextEngine::FormatDoc sends a sequence of
+ // TEXT_HINT_FORMATPARAs, followed by an optional
+ // TEXT_HINT_TEXTHEIGHTCHANGED, followed in all cases by one
+ // TEXT_HINT_TEXTFORMATTED. Only the TEXT_HINT_FORMATPARAs contain
+ // the the numbers of the affected paragraphs, but they are sent
+ // before the changes are applied. Therefore, TEXT_HINT_FORMATPARAs
+ // are just buffered until another hint comes in:
+ {
+ ::osl::MutexGuard aInternalGuard(GetMutex());
+ if (!isAlive())
+ break;
+
+ m_aParagraphNotifications.push(rTextHint);
+ break;
+ }
+ case TEXT_HINT_TEXTFORMATTED:
+ case TEXT_HINT_TEXTHEIGHTCHANGED:
+ case TEXT_HINT_MODIFIED:
+ {
+ ::osl::MutexGuard aInternalGuard(GetMutex());
+ if (!isAlive())
+ break;
+ handleParagraphNotifications();
+ break;
+ }
+ case TEXT_HINT_VIEWSCROLLED:
+ {
+ ::osl::MutexGuard aInternalGuard(GetMutex());
+ if (!isAlive())
+ break;
+ handleParagraphNotifications();
+
+ ::sal_Int32 nOffset = static_cast< ::sal_Int32 >(
+ m_rView.GetStartDocPos().Y());
+ // XXX numeric overflow
+ if (nOffset != m_nViewOffset)
+ {
+ m_nViewOffset = nOffset;
+
+ Paragraphs::iterator aOldVisibleBegin(
+ m_aVisibleBegin);
+ Paragraphs::iterator aOldVisibleEnd(m_aVisibleEnd);
+
+ determineVisibleRange();
+
+ notifyVisibleRangeChanges(aOldVisibleBegin,
+ aOldVisibleEnd,
+ m_xParagraphs->end());
+ }
+ break;
+ }
+ case TEXT_HINT_VIEWSELECTIONCHANGED:
+ {
+ ::osl::MutexGuard aInternalGuard(GetMutex());
+ if (!isAlive())
+ break;
+
+ if (m_aParagraphNotifications.empty())
+ {
+ handleSelectionChangeNotification();
+ }
+ else
+ {
+ // TEXT_HINT_VIEWSELECTIONCHANGED is sometimes sent at
+ // "unsafe" times (when the text engine has not yet re-
+ // formatted its content), so that for example calling
+ // ::TextEngine::GetTextHeight from within the code that
+ // handles a previous TEXT_HINT_PARAINSERTED causes
+ // trouble within the text engine. Therefore, these
+ // hints are just buffered (along with
+ // TEXT_HINT_PARAINSERTED/REMOVED/FORMATPARA) until a
+ // following ::TextEngine::FormatDoc causes a
+ // TEXT_HINT_TEXTFORMATTED to come in:
+ m_bSelectionChangedNotification = true;
+ }
+ break;
+ }
+ }
+ }
+}
+
+IMPL_LINK(Document, WindowEventHandler, ::VclSimpleEvent *, pEvent)
+{
+ switch (pEvent->GetId())
+ {
+ case VCLEVENT_WINDOW_RESIZE:
+ {
+ ::osl::MutexGuard aInternalGuard(GetMutex());
+ if (!isAlive())
+ break;
+
+ ::sal_Int32 nHeight = static_cast< ::sal_Int32 >(
+ m_rView.GetWindow()->GetOutputSizePixel().Height());
+ // XXX numeric overflow
+ if (nHeight != m_nViewHeight)
+ {
+ m_nViewHeight = nHeight;
+
+ Paragraphs::iterator aOldVisibleBegin(m_aVisibleBegin);
+ Paragraphs::iterator aOldVisibleEnd(m_aVisibleEnd);
+
+ determineVisibleRange();
+
+ notifyVisibleRangeChanges(aOldVisibleBegin, aOldVisibleEnd,
+ m_xParagraphs->end());
+ }
+ break;
+ }
+ case VCLEVENT_WINDOW_GETFOCUS:
+ {
+ ::osl::MutexGuard aInternalGuard(GetMutex());
+ if (!isAlive())
+ break;
+
+ if (m_aFocused >= m_aVisibleBegin && m_aFocused < m_aVisibleEnd)
+ {
+ ::rtl::Reference< ParagraphImpl > xParagraph(
+ getParagraph(m_aFocused));
+ if (xParagraph.is())
+ xParagraph->notifyEvent(
+ ::css::accessibility::AccessibleEventId::
+ STATE_CHANGED,
+ ::css::uno::Any(),
+ ::css::uno::makeAny(
+ ::css::accessibility::AccessibleStateType::
+ FOCUSED));
+ }
+ break;
+ }
+ case VCLEVENT_WINDOW_LOSEFOCUS:
+ {
+ ::osl::MutexGuard aInternalGuard(GetMutex());
+ if (!isAlive())
+ break;
+
+ if (m_aFocused >= m_aVisibleBegin && m_aFocused < m_aVisibleEnd)
+ {
+ ::rtl::Reference< ParagraphImpl > xParagraph(
+ getParagraph(m_aFocused));
+ if (xParagraph.is())
+ xParagraph->notifyEvent(
+ ::css::accessibility::AccessibleEventId::
+ STATE_CHANGED,
+ ::css::uno::makeAny(
+ ::css::accessibility::AccessibleStateType::
+ FOCUSED),
+ ::css::uno::Any());
+ }
+ break;
+ }
+ }
+ return 0;
+}
+
+void Document::init()
+{
+ if (m_xParagraphs.get() == 0)
+ {
+ ::ULONG nCount = m_rEngine.GetParagraphCount();
+ ::std::auto_ptr< Paragraphs > p(new Paragraphs);
+ p->reserve(static_cast< Paragraphs::size_type >(nCount));
+ // numeric overflow is harmless here
+ for (::ULONG i = 0; i < nCount; ++i)
+ p->push_back(ParagraphInfo(static_cast< ::sal_Int32 >(
+ m_rEngine.GetTextHeight(i))));
+ // XXX numeric overflow
+ m_nViewOffset = static_cast< ::sal_Int32 >(
+ m_rView.GetStartDocPos().Y()); // XXX numeric overflow
+ m_nViewHeight = static_cast< ::sal_Int32 >(
+ m_rView.GetWindow()->GetOutputSizePixel().Height());
+ // XXX numeric overflow
+ m_xParagraphs = p;
+ determineVisibleRange();
+ m_nSelectionFirstPara = -1;
+ m_nSelectionFirstPos = -1;
+ m_nSelectionLastPara = -1;
+ m_nSelectionLastPos = -1;
+ m_aFocused = m_xParagraphs->end();
+ m_bSelectionChangedNotification = false;
+ m_aEngineListener.startListening(m_rEngine);
+ m_aViewListener.startListening(*m_rView.GetWindow());
+ }
+}
+
+::rtl::Reference< ParagraphImpl >
+Document::getParagraph(Paragraphs::iterator const & rIt)
+{
+ return static_cast< ParagraphImpl * >(
+ ::css::uno::Reference< ::css::accessibility::XAccessible >(
+ rIt->getParagraph()).get());
+}
+
+::css::uno::Reference< ::css::accessibility::XAccessible >
+Document::getAccessibleChild(Paragraphs::iterator const & rIt)
+{
+ ::css::uno::Reference< ::css::accessibility::XAccessible > xParagraph(
+ rIt->getParagraph());
+ if (!xParagraph.is())
+ {
+ xParagraph = new Paragraph(this, rIt - m_xParagraphs->begin());
+ rIt->setParagraph(xParagraph);
+ }
+ return xParagraph;
+}
+
+void Document::determineVisibleRange()
+{
+ m_aVisibleBegin = m_xParagraphs->end();
+ m_aVisibleEnd = m_aVisibleBegin;
+ ::sal_Int32 nPos = 0;
+ for (Paragraphs::iterator aIt = m_xParagraphs->begin();;)
+ {
+ if (aIt == m_xParagraphs->end())
+ {
+ m_nVisibleBeginOffset = 0;
+ break;
+ }
+ ::sal_Int32 nOldPos = nPos;
+ nPos += aIt->getHeight(); // XXX numeric overflow
+ if (m_aVisibleBegin == m_xParagraphs->end() && nPos >= m_nViewOffset)
+ {
+ m_aVisibleBegin = aIt;
+ m_nVisibleBeginOffset = m_nViewOffset - nOldPos;
+ }
+ ++aIt;
+ if (m_aVisibleBegin != m_xParagraphs->end()
+ && (aIt == m_xParagraphs->end()
+ || nPos >= m_nViewOffset + m_nViewHeight))
+ // XXX numeric overflow
+ {
+ m_aVisibleEnd = aIt;
+ break;
+ }
+ }
+}
+
+void Document::notifyVisibleRangeChanges(
+ Paragraphs::iterator const & rOldVisibleBegin,
+ Paragraphs::iterator const & rOldVisibleEnd,
+ Paragraphs::iterator const & rInserted)
+{
+ // XXX Replace this code that determines which paragraphs have changed from
+ // invisible to visible or vice versa with a better algorithm.
+ {for (Paragraphs::iterator aIt(rOldVisibleBegin); aIt != rOldVisibleEnd;
+ ++aIt)
+ if (aIt != rInserted
+ && (aIt < m_aVisibleBegin || aIt >= m_aVisibleEnd))
+ NotifyAccessibleEvent(
+ ::css::accessibility::AccessibleEventId::
+ CHILD,
+ ::css::uno::makeAny(getAccessibleChild(aIt)),
+ ::css::uno::Any());
+ }
+ {for (Paragraphs::iterator aIt(m_aVisibleBegin); aIt != m_aVisibleEnd;
+ ++aIt)
+ if (aIt == rInserted
+ || aIt < rOldVisibleBegin || aIt >= rOldVisibleEnd)
+ NotifyAccessibleEvent(
+ ::css::accessibility::AccessibleEventId::
+ CHILD,
+ ::css::uno::Any(),
+ ::css::uno::makeAny(getAccessibleChild(aIt)));
+ }
+}
+
+void
+Document::changeParagraphText(::ULONG nNumber, ::USHORT nBegin, ::USHORT nEnd,
+ bool bCut, bool bPaste,
+ ::rtl::OUString const & rText)
+{
+ m_rView.SetSelection(::TextSelection(::TextPaM(nNumber, nBegin),
+ ::TextPaM(nNumber, nEnd)));
+ if (bCut)
+ m_rView.Cut();
+ else if (nBegin != nEnd)
+ m_rView.DeleteSelected();
+ if (bPaste)
+ m_rView.Paste();
+ else if (rText.getLength() != 0)
+ m_rView.InsertText(rText);
+}
+
+void Document::handleParagraphNotifications()
+{
+ while (!m_aParagraphNotifications.empty())
+ {
+ ::TextHint aHint(m_aParagraphNotifications.front());
+ m_aParagraphNotifications.pop();
+ switch (aHint.GetId())
+ {
+ case TEXT_HINT_PARAINSERTED:
+ {
+ ::ULONG n = aHint.GetValue();
+ OSL_ENSURE(n <= m_xParagraphs->size(),
+ "bad TEXT_HINT_PARAINSERTED event");
+
+ // Save the values of old iterators (the iterators themselves
+ // will get invalidated), and adjust the old values so that they
+ // reflect the insertion of the new paragraph:
+ Paragraphs::size_type nOldVisibleBegin
+ = m_aVisibleBegin - m_xParagraphs->begin();
+ Paragraphs::size_type nOldVisibleEnd
+ = m_aVisibleEnd - m_xParagraphs->begin();
+ Paragraphs::size_type nOldFocused
+ = m_aFocused - m_xParagraphs->begin();
+ if (n <= nOldVisibleBegin)
+ ++nOldVisibleBegin; // XXX numeric overflow
+ if (n <= nOldVisibleEnd)
+ ++nOldVisibleEnd; // XXX numeric overflow
+ if (n <= nOldFocused)
+ ++nOldFocused; // XXX numeric overflow
+ if (sal::static_int_cast<sal_Int32>(n) <= m_nSelectionFirstPara)
+ ++m_nSelectionFirstPara; // XXX numeric overflow
+ if (sal::static_int_cast<sal_Int32>(n) <= m_nSelectionLastPara)
+ ++m_nSelectionLastPara; // XXX numeric overflow
+
+ Paragraphs::iterator aIns(
+ m_xParagraphs->insert(
+ m_xParagraphs->begin() + n,
+ ParagraphInfo(static_cast< ::sal_Int32 >(
+ m_rEngine.GetTextHeight(n)))));
+ // XXX numeric overflow (2x)
+
+ determineVisibleRange();
+ m_aFocused = m_xParagraphs->begin() + nOldFocused;
+
+ for (Paragraphs::iterator aIt(aIns);;)
+ {
+ ++aIt;
+ if (aIt == m_xParagraphs->end())
+ break;
+ ::rtl::Reference< ParagraphImpl > xParagraph(
+ getParagraph(aIt));
+ if (xParagraph.is())
+ xParagraph->numberChanged(true);
+ }
+
+ notifyVisibleRangeChanges(
+ m_xParagraphs->begin() + nOldVisibleBegin,
+ m_xParagraphs->begin() + nOldVisibleEnd, aIns);
+ break;
+ }
+ case TEXT_HINT_PARAREMOVED:
+ {
+ ::ULONG n = aHint.GetValue();
+ if (n == TEXT_PARA_ALL)
+ {
+ {for (Paragraphs::iterator aIt(m_aVisibleBegin);
+ aIt != m_aVisibleEnd; ++aIt)
+ NotifyAccessibleEvent(
+ ::css::accessibility::AccessibleEventId::
+ CHILD,
+ ::css::uno::makeAny(getAccessibleChild(aIt)),
+ ::css::uno::Any());
+ }
+ disposeParagraphs();
+ m_xParagraphs->clear();
+ determineVisibleRange();
+ m_nSelectionFirstPara = -1;
+ m_nSelectionFirstPos = -1;
+ m_nSelectionLastPara = -1;
+ m_nSelectionLastPos = -1;
+ m_aFocused = m_xParagraphs->end();
+ }
+ else
+ {
+ OSL_ENSURE(n < m_xParagraphs->size(),
+ "Bad TEXT_HINT_PARAREMOVED event");
+
+ Paragraphs::iterator aIt(m_xParagraphs->begin() + n);
+ // numeric overflow cannot occur
+
+ // Save the values of old iterators (the iterators
+ // themselves will get invalidated), and adjust the old
+ // values so that they reflect the removal of the paragraph:
+ Paragraphs::size_type nOldVisibleBegin
+ = m_aVisibleBegin - m_xParagraphs->begin();
+ Paragraphs::size_type nOldVisibleEnd
+ = m_aVisibleEnd - m_xParagraphs->begin();
+ bool bWasVisible
+ = nOldVisibleBegin <= n && n < nOldVisibleEnd;
+ Paragraphs::size_type nOldFocused
+ = m_aFocused - m_xParagraphs->begin();
+ bool bWasFocused = aIt == m_aFocused;
+ if (n < nOldVisibleBegin)
+ --nOldVisibleBegin;
+ if (n < nOldVisibleEnd)
+ --nOldVisibleEnd;
+ if (n < nOldFocused)
+ --nOldFocused;
+ if (sal::static_int_cast<sal_Int32>(n) < m_nSelectionFirstPara)
+ --m_nSelectionFirstPara;
+ else if (sal::static_int_cast<sal_Int32>(n) == m_nSelectionFirstPara)
+ {
+ if (m_nSelectionFirstPara == m_nSelectionLastPara)
+ {
+ m_nSelectionFirstPara = -1;
+ m_nSelectionFirstPos = -1;
+ m_nSelectionLastPara = -1;
+ m_nSelectionLastPos = -1;
+ }
+ else
+ {
+ ++m_nSelectionFirstPara;
+ m_nSelectionFirstPos = 0;
+ }
+ }
+ if (sal::static_int_cast<sal_Int32>(n) < m_nSelectionLastPara)
+ --m_nSelectionLastPara;
+ else if (sal::static_int_cast<sal_Int32>(n) == m_nSelectionLastPara)
+ {
+ OSL_ENSURE(m_nSelectionFirstPara < m_nSelectionLastPara,
+ "logic error");
+ --m_nSelectionLastPara;
+ m_nSelectionLastPos = 0x7FFFFFFF;
+ }
+
+ ::css::uno::Reference< ::css::accessibility::XAccessible >
+ xStrong;
+ if (bWasVisible)
+ xStrong = getAccessibleChild(aIt);
+ ::css::uno::WeakReference<
+ ::css::accessibility::XAccessible > xWeak(
+ aIt->getParagraph());
+ aIt = m_xParagraphs->erase(aIt);
+
+ determineVisibleRange();
+ m_aFocused = bWasFocused ? m_xParagraphs->end()
+ : m_xParagraphs->begin() + nOldFocused;
+
+ for (; aIt != m_xParagraphs->end(); ++aIt)
+ {
+ ::rtl::Reference< ParagraphImpl > xParagraph(
+ getParagraph(aIt));
+ if (xParagraph.is())
+ xParagraph->numberChanged(false);
+ }
+
+ if (bWasVisible)
+ NotifyAccessibleEvent(
+ ::css::accessibility::AccessibleEventId::
+ CHILD,
+ ::css::uno::makeAny(getAccessibleChild(aIt)),
+ ::css::uno::Any());
+
+ ::css::uno::Reference< ::css::lang::XComponent > xComponent(
+ xWeak.get(), ::css::uno::UNO_QUERY);
+ if (xComponent.is())
+ xComponent->dispose();
+
+ notifyVisibleRangeChanges(
+ m_xParagraphs->begin() + nOldVisibleBegin,
+ m_xParagraphs->begin() + nOldVisibleEnd,
+ m_xParagraphs->end());
+ }
+ break;
+ }
+ case TEXT_HINT_FORMATPARA:
+ {
+ ::ULONG n = aHint.GetValue();
+ OSL_ENSURE(n < m_xParagraphs->size(),
+ "Bad TEXT_HINT_FORMATPARA event");
+
+ (*m_xParagraphs)[static_cast< Paragraphs::size_type >(n)].
+ changeHeight(static_cast< ::sal_Int32 >(
+ m_rEngine.GetTextHeight(n)));
+ // XXX numeric overflow
+ Paragraphs::iterator aOldVisibleBegin(m_aVisibleBegin);
+ Paragraphs::iterator aOldVisibleEnd(m_aVisibleEnd);
+ determineVisibleRange();
+ notifyVisibleRangeChanges(aOldVisibleBegin, aOldVisibleEnd,
+ m_xParagraphs->end());
+
+ if (n < m_xParagraphs->size())
+ {
+ Paragraphs::iterator aIt(m_xParagraphs->begin() + n);
+ ::rtl::Reference< ParagraphImpl > xParagraph(getParagraph(aIt));
+ if (xParagraph.is())
+ xParagraph->textChanged();
+ }
+ break;
+ }
+ default:
+ OSL_ENSURE(false, "bad buffered hint");
+ break;
+ }
+ }
+ if (m_bSelectionChangedNotification)
+ {
+ m_bSelectionChangedNotification = false;
+ handleSelectionChangeNotification();
+ }
+}
+
+void Document::handleSelectionChangeNotification()
+{
+ ::TextSelection const & rSelection = m_rView.GetSelection();
+ OSL_ENSURE(rSelection.GetStart().GetPara() < m_xParagraphs->size()
+ && rSelection.GetEnd().GetPara() < m_xParagraphs->size(),
+ "bad TEXT_HINT_VIEWSELECTIONCHANGED event");
+ ::sal_Int32 nNewFirstPara
+ = static_cast< ::sal_Int32 >(rSelection.GetStart().GetPara());
+ ::sal_Int32 nNewFirstPos
+ = static_cast< ::sal_Int32 >(rSelection.GetStart().GetIndex());
+ // XXX numeric overflow
+ ::sal_Int32 nNewLastPara
+ = static_cast< ::sal_Int32 >(rSelection.GetEnd().GetPara());
+ ::sal_Int32 nNewLastPos
+ = static_cast< ::sal_Int32 >(rSelection.GetEnd().GetIndex());
+ // XXX numeric overflow
+
+ // Lose focus:
+ Paragraphs::iterator aIt(m_xParagraphs->begin() + nNewLastPara);
+ if (m_aFocused != m_xParagraphs->end() && m_aFocused != aIt
+ && m_aFocused >= m_aVisibleBegin && m_aFocused < m_aVisibleEnd)
+ {
+ ::rtl::Reference< ParagraphImpl > xParagraph(getParagraph(m_aFocused));
+ if (xParagraph.is())
+ xParagraph->notifyEvent(
+ ::css::accessibility::AccessibleEventId::
+ STATE_CHANGED,
+ ::css::uno::makeAny(
+ ::css::accessibility::AccessibleStateType::FOCUSED),
+ ::css::uno::Any());
+ }
+
+ // Gain focus and update cursor position:
+ if (aIt >= m_aVisibleBegin && aIt < m_aVisibleEnd
+ && (aIt != m_aFocused
+ || nNewLastPara != m_nSelectionLastPara
+ || nNewLastPos != m_nSelectionLastPos))
+ {
+ ::rtl::Reference< ParagraphImpl > xParagraph(getParagraph(aIt));
+ if (xParagraph.is())
+ {
+ if (aIt != m_aFocused)
+ xParagraph->notifyEvent(
+ ::css::accessibility::AccessibleEventId::
+ STATE_CHANGED,
+ ::css::uno::Any(),
+ ::css::uno::makeAny(
+ ::css::accessibility::AccessibleStateType::FOCUSED));
+ if (nNewLastPara != m_nSelectionLastPara
+ || nNewLastPos != m_nSelectionLastPos)
+ xParagraph->notifyEvent(
+ ::css::accessibility::AccessibleEventId::
+ CARET_CHANGED,
+ ::css::uno::makeAny< ::sal_Int32 >(
+ nNewLastPara == m_nSelectionLastPara
+ ? m_nSelectionLastPos : 0),
+ ::css::uno::makeAny(nNewLastPos));
+ }
+ }
+ m_aFocused = aIt;
+
+ // Update both old and new selection. (Regardless of how the two selections
+ // look like, there will always be two ranges to the left and right of the
+ // overlap---the overlap and/or the range to the right of it possibly being
+ // empty. Only for these two ranges notifications have to be sent.)
+
+ TextPaM aOldTextStart( static_cast< ULONG >( m_nSelectionFirstPara ), static_cast< USHORT >( m_nSelectionFirstPos ) );
+ TextPaM aOldTextEnd( static_cast< ULONG >( m_nSelectionLastPara ), static_cast< USHORT >( m_nSelectionLastPos ) );
+ TextPaM aNewTextStart( static_cast< ULONG >( nNewFirstPara ), static_cast< USHORT >( nNewFirstPos ) );
+ TextPaM aNewTextEnd( static_cast< ULONG >( nNewLastPara ), static_cast< USHORT >( nNewLastPos ) );
+
+ // justify selections
+ justifySelection( aOldTextStart, aOldTextEnd );
+ justifySelection( aNewTextStart, aNewTextEnd );
+
+ sal_Int32 nFirst1;
+ sal_Int32 nLast1;
+ sal_Int32 nFirst2;
+ sal_Int32 nLast2;
+
+ if ( m_nSelectionFirstPara == -1 )
+ {
+ // old selection not initialized yet => notify events only for new selection (if not empty)
+ nFirst1 = aNewTextStart.GetPara();
+ nLast1 = aNewTextEnd.GetPara() + ( aNewTextStart != aNewTextEnd ? 1 : 0 );
+ nFirst2 = 0;
+ nLast2 = 0;
+ }
+ else if ( aOldTextStart == aOldTextEnd && aNewTextStart == aNewTextEnd )
+ {
+ // old an new selection empty => no events
+ nFirst1 = 0;
+ nLast1 = 0;
+ nFirst2 = 0;
+ nLast2 = 0;
+ }
+ else if ( aOldTextStart != aOldTextEnd && aNewTextStart == aNewTextEnd )
+ {
+ // old selection not empty + new selection empty => notify events only for old selection
+ nFirst1 = aOldTextStart.GetPara();
+ nLast1 = aOldTextEnd.GetPara() + 1;
+ nFirst2 = 0;
+ nLast2 = 0;
+ }
+ else if ( aOldTextStart == aOldTextEnd && aNewTextStart != aNewTextEnd )
+ {
+ // old selection empty + new selection not empty => notify events only for new selection
+ nFirst1 = aNewTextStart.GetPara();
+ nLast1 = aNewTextEnd.GetPara() + 1;
+ nFirst2 = 0;
+ nLast2 = 0;
+ }
+ else
+ {
+ // old and new selection not empty => notify events for the two ranges left and right of the overlap
+ ::std::vector< TextPaM > aTextPaMs(4);
+ aTextPaMs[0] = aOldTextStart;
+ aTextPaMs[1] = aOldTextEnd;
+ aTextPaMs[2] = aNewTextStart;
+ aTextPaMs[3] = aNewTextEnd;
+ ::std::sort( aTextPaMs.begin(), aTextPaMs.end() );
+
+ nFirst1 = aTextPaMs[0].GetPara();
+ nLast1 = aTextPaMs[1].GetPara() + ( aTextPaMs[0] != aTextPaMs[1] ? 1 : 0 );
+
+ nFirst2 = aTextPaMs[2].GetPara();
+ nLast2 = aTextPaMs[3].GetPara() + ( aTextPaMs[2] != aTextPaMs[3] ? 1 : 0 );
+
+ // adjust overlapping ranges
+ if ( nLast1 > nFirst2 )
+ nLast1 = nFirst2;
+ }
+
+ // notify selection changes
+ notifySelectionChange( nFirst1, nLast1 );
+ notifySelectionChange( nFirst2, nLast2 );
+
+ m_nSelectionFirstPara = nNewFirstPara;
+ m_nSelectionFirstPos = nNewFirstPos;
+ m_nSelectionLastPara = nNewLastPara;
+ m_nSelectionLastPos = nNewLastPos;
+}
+
+void Document::notifySelectionChange( sal_Int32 nFirst, sal_Int32 nLast )
+{
+ if ( nFirst < nLast )
+ {
+ Paragraphs::iterator aEnd( ::std::min( m_xParagraphs->begin() + nLast, m_aVisibleEnd ) );
+ for ( Paragraphs::iterator aIt = ::std::max( m_xParagraphs->begin() + nFirst, m_aVisibleBegin ); aIt < aEnd; ++aIt )
+ {
+ ::rtl::Reference< ParagraphImpl > xParagraph( getParagraph( aIt ) );
+ if ( xParagraph.is() )
+ {
+ xParagraph->notifyEvent(
+ ::css::accessibility::AccessibleEventId::SELECTION_CHANGED,
+ ::css::uno::Any(), ::css::uno::Any() );
+ xParagraph->notifyEvent(
+ ::css::accessibility::AccessibleEventId::TEXT_SELECTION_CHANGED,
+ ::css::uno::Any(), ::css::uno::Any() );
+ }
+ }
+ }
+}
+
+void Document::justifySelection( TextPaM& rTextStart, TextPaM& rTextEnd )
+{
+ if ( rTextStart > rTextEnd )
+ {
+ TextPaM aTextPaM( rTextStart );
+ rTextStart = rTextEnd;
+ rTextEnd = aTextPaM;
+ }
+}
+
+void Document::disposeParagraphs()
+{
+ for (Paragraphs::iterator aIt(m_xParagraphs->begin());
+ aIt != m_xParagraphs->end(); ++aIt)
+ {
+ ::css::uno::Reference< ::css::lang::XComponent > xComponent(
+ aIt->getParagraph().get(), ::css::uno::UNO_QUERY);
+ if (xComponent.is())
+ xComponent->dispose();
+ }
+}
+
+// static
+::css::uno::Any Document::mapFontColor(::Color const & rColor)
+{
+ return ::css::uno::makeAny(
+ static_cast< ::sal_Int32 >(COLORDATA_RGB(rColor.GetColor())));
+ // FIXME keep transparency?
+}
+
+// static
+::Color Document::mapFontColor(::css::uno::Any const & rColor)
+{
+ ::sal_Int32 nColor = 0;
+ rColor >>= nColor;
+ return ::Color(static_cast< ::ColorData >(nColor));
+}
+
+// static
+::css::uno::Any Document::mapFontWeight(::FontWeight nWeight)
+{
+ // Map from ::FontWeight to ::css:awt::FontWeight, depends on order of
+ // elements in ::FontWeight (vcl/vclenum.hxx):
+ static float const aWeight[]
+ = { ::css::awt::FontWeight::DONTKNOW, // WEIGHT_DONTKNOW
+ ::css::awt::FontWeight::THIN, // WEIGHT_THIN
+ ::css::awt::FontWeight::ULTRALIGHT, // WEIGHT_ULTRALIGHT
+ ::css::awt::FontWeight::LIGHT, // WEIGHT_LIGHT
+ ::css::awt::FontWeight::SEMILIGHT, // WEIGHT_SEMILIGHT
+ ::css::awt::FontWeight::NORMAL, // WEIGHT_NORMAL
+ ::css::awt::FontWeight::NORMAL, // WEIGHT_MEDIUM
+ ::css::awt::FontWeight::SEMIBOLD, // WEIGHT_SEMIBOLD
+ ::css::awt::FontWeight::BOLD, // WEIGHT_BOLD
+ ::css::awt::FontWeight::ULTRABOLD, // WEIGHT_ULTRABOLD
+ ::css::awt::FontWeight::BLACK }; // WEIGHT_BLACK
+ return ::css::uno::makeAny(aWeight[nWeight]);
+}
+
+// static
+::FontWeight Document::mapFontWeight(::css::uno::Any const & rWeight)
+{
+ float nWeight = ::css::awt::FontWeight::NORMAL;
+ rWeight >>= nWeight;
+ return nWeight <= ::css::awt::FontWeight::DONTKNOW ? WEIGHT_DONTKNOW
+ : nWeight <= ::css::awt::FontWeight::THIN ? WEIGHT_THIN
+ : nWeight <= ::css::awt::FontWeight::ULTRALIGHT ? WEIGHT_ULTRALIGHT
+ : nWeight <= ::css::awt::FontWeight::LIGHT ? WEIGHT_LIGHT
+ : nWeight <= ::css::awt::FontWeight::SEMILIGHT ? WEIGHT_SEMILIGHT
+ : nWeight <= ::css::awt::FontWeight::NORMAL ? WEIGHT_NORMAL
+ : nWeight <= ::css::awt::FontWeight::SEMIBOLD ? WEIGHT_SEMIBOLD
+ : nWeight <= ::css::awt::FontWeight::BOLD ? WEIGHT_BOLD
+ : nWeight <= ::css::awt::FontWeight::ULTRABOLD ? WEIGHT_ULTRABOLD
+ : WEIGHT_BLACK;
+}
+
+}
+
diff --git a/accessibility/source/helper/acc_factory.cxx b/accessibility/source/helper/acc_factory.cxx
new file mode 100755
index 000000000000..7279b5e2ff60
--- /dev/null
+++ b/accessibility/source/helper/acc_factory.cxx
@@ -0,0 +1,552 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/helper/acc_factory.hxx>
+
+#include <toolkit/awt/vclxwindows.hxx>
+#include <accessibility/standard/vclxaccessiblebutton.hxx>
+#include <accessibility/standard/vclxaccessiblecheckbox.hxx>
+#include <accessibility/standard/vclxaccessibledropdowncombobox.hxx>
+#include <accessibility/standard/vclxaccessiblecombobox.hxx>
+#include <accessibility/standard/vclxaccessibledropdownlistbox.hxx>
+#include <accessibility/standard/vclxaccessibleedit.hxx>
+#include <accessibility/standard/vclxaccessiblefixedhyperlink.hxx>
+#include <accessibility/standard/vclxaccessiblefixedtext.hxx>
+#include <accessibility/standard/vclxaccessiblelistbox.hxx>
+#include <accessibility/standard/vclxaccessiblemenu.hxx>
+#include <accessibility/standard/vclxaccessibleradiobutton.hxx>
+#include <accessibility/standard/vclxaccessiblescrollbar.hxx>
+#include <accessibility/standard/vclxaccessibletextcomponent.hxx>
+#include <accessibility/standard/vclxaccessibletoolbox.hxx>
+#include <toolkit/awt/vclxaccessiblecomponent.hxx>
+#include <accessibility/standard/vclxaccessiblestatusbar.hxx>
+#include <accessibility/standard/vclxaccessibletabcontrol.hxx>
+#include <accessibility/standard/vclxaccessibletabpagewindow.hxx>
+#include <accessibility/standard/vclxaccessiblemenubar.hxx>
+#include <accessibility/standard/vclxaccessiblepopupmenu.hxx>
+#include <accessibility/extended/accessibletablistbox.hxx>
+#include <accessibility/extended/AccessibleBrowseBox.hxx>
+#include <accessibility/extended/accessibleiconchoicectrl.hxx>
+#include <accessibility/extended/accessibletabbar.hxx>
+#include <accessibility/extended/accessiblelistbox.hxx>
+#include <accessibility/extended/AccessibleBrowseBoxHeaderBar.hxx>
+#include <accessibility/extended/textwindowaccessibility.hxx>
+#include <accessibility/extended/AccessibleBrowseBoxTableCell.hxx>
+#include <accessibility/extended/AccessibleBrowseBoxHeaderCell.hxx>
+#include <accessibility/extended/AccessibleBrowseBoxCheckBoxCell.hxx>
+#include <accessibility/extended/accessibleeditbrowseboxcell.hxx>
+#include <accessibility/extended/AccessibleToolPanelDeck.hxx>
+#include <accessibility/extended/AccessibleToolPanelDeckTabBar.hxx>
+#include <accessibility/extended/AccessibleToolPanelDeckTabBarItem.hxx>
+#include <vcl/lstbox.hxx>
+#include <vcl/combobox.hxx>
+#include <accessibility/extended/AccessibleGridControl.hxx>
+#include <svtools/accessibletable.hxx>
+#include <vcl/popupmenuwindow.hxx>
+#include <cppuhelper/implbase1.hxx>
+
+#include "floatingwindowaccessible.hxx"
+
+//........................................................................
+namespace accessibility
+{
+
+inline bool hasFloatingChild(Window *pWindow)
+{
+ Window * pChild = pWindow->GetAccessibleChildWindow(0);
+ if( pChild && WINDOW_FLOATINGWINDOW == pChild->GetType() )
+ return true;
+
+ return false;
+}
+
+//........................................................................
+
+ using namespace ::com::sun::star::uno;
+ using namespace ::com::sun::star::awt;
+ using namespace ::com::sun::star::accessibility;
+ using namespace ::svt;
+ using namespace ::svt::table;
+
+ //================================================================
+ //= IAccessibleFactory
+ //================================================================
+ class AccessibleFactory :public ::toolkit::IAccessibleFactory
+ ,public ::svt::IAccessibleFactory
+ {
+ private:
+ oslInterlockedCount m_refCount;
+
+ public:
+ AccessibleFactory();
+
+ // IReference
+ virtual oslInterlockedCount SAL_CALL acquire();
+ virtual oslInterlockedCount SAL_CALL release();
+
+ // ::toolkit::IAccessibleFactory
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
+ createAccessibleContext( VCLXButton* _pXWindow );
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
+ createAccessibleContext( VCLXCheckBox* _pXWindow );
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
+ createAccessibleContext( VCLXRadioButton* _pXWindow );
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
+ createAccessibleContext( VCLXListBox* _pXWindow );
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
+ createAccessibleContext( VCLXFixedText* _pXWindow );
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
+ createAccessibleContext( VCLXFixedHyperlink* _pXWindow );
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
+ createAccessibleContext( VCLXScrollBar* _pXWindow );
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
+ createAccessibleContext( VCLXEdit* _pXWindow );
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
+ createAccessibleContext( VCLXComboBox* _pXWindow );
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
+ createAccessibleContext( VCLXToolBox* _pXWindow );
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
+ createAccessibleContext( VCLXWindow* _pXWindow );
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
+ createAccessible( Menu* _pMenu, sal_Bool _bIsMenuBar );
+
+ // ::svt::IAccessibleFactory
+ virtual IAccessibleTabListBox*
+ createAccessibleTabListBox(
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& rxParent,
+ SvHeaderTabListBox& rBox
+ ) const;
+
+ virtual IAccessibleBrowseBox*
+ createAccessibleBrowseBox(
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
+ IAccessibleTableProvider& _rBrowseBox
+ ) const;
+
+ virtual IAccessibleTableControl*
+ createAccessibleTableControl(
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
+ IAccessibleTable& _rTable
+ ) const;
+
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
+ createAccessibleIconChoiceCtrl(
+ SvtIconChoiceCtrl& _rIconCtrl,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _xParent
+ ) const;
+
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
+ createAccessibleTabBar(
+ TabBar& _rTabBar
+ ) const;
+
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
+ createAccessibleTextWindowContext(
+ VCLXWindow* pVclXWindow, TextEngine& rEngine, TextView& rView, bool bCompoundControlChild
+ ) const;
+
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
+ createAccessibleTreeListBox(
+ SvTreeListBox& _rListBox,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _xParent
+ ) const;
+
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
+ createAccessibleBrowseBoxHeaderBar(
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& rxParent,
+ IAccessibleTableProvider& _rOwningTable,
+ AccessibleBrowseBoxObjType _eObjType
+ ) const;
+
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
+ createAccessibleBrowseBoxTableCell(
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
+ IAccessibleTableProvider& _rBrowseBox,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
+ sal_Int32 _nRowId,
+ sal_uInt16 _nColId,
+ sal_Int32 _nOffset
+ ) const;
+
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
+ createAccessibleBrowseBoxHeaderCell(
+ sal_Int32 _nColumnRowId,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& rxParent,
+ IAccessibleTableProvider& _rBrowseBox,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
+ AccessibleBrowseBoxObjType _eObjType
+ ) const;
+
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
+ createAccessibleCheckBoxCell(
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
+ IAccessibleTableProvider& _rBrowseBox,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
+ sal_Int32 _nRowPos,
+ sal_uInt16 _nColPos,
+ const TriState& _eState,
+ sal_Bool _bEnabled,
+ sal_Bool _bIsTriState
+ ) const;
+
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
+ createEditBrowseBoxTableCellAccess(
+ const ::com::sun::star::uno::Reference< com::sun::star::accessibility::XAccessible >& _rxParent,
+ const ::com::sun::star::uno::Reference< com::sun::star::accessibility::XAccessible >& _rxControlAccessible,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _rxFocusWindow,
+ IAccessibleTableProvider& _rBrowseBox,
+ sal_Int32 _nRowPos,
+ sal_uInt16 _nColPos
+ ) const;
+
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
+ createAccessibleToolPanelDeck(
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& i_rAccessibleParent,
+ ::svt::ToolPanelDeck& i_rPanelDeck
+ );
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
+ createAccessibleToolPanelTabBar(
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& i_rAccessibleParent,
+ ::svt::IToolPanelDeck& i_rPanelDeck,
+ ::svt::PanelTabBar& i_rTabBar
+ );
+
+ protected:
+ virtual ~AccessibleFactory();
+ };
+
+
+ //--------------------------------------------------------------------
+ AccessibleFactory::AccessibleFactory()
+ :m_refCount( 0 )
+ {
+ }
+
+ //--------------------------------------------------------------------
+ AccessibleFactory::~AccessibleFactory()
+ {
+ }
+
+ //--------------------------------------------------------------------
+ oslInterlockedCount SAL_CALL AccessibleFactory::acquire()
+ {
+ return osl_incrementInterlockedCount( &m_refCount );
+ }
+
+ //--------------------------------------------------------------------
+ oslInterlockedCount SAL_CALL AccessibleFactory::release()
+ {
+ if ( 0 == osl_decrementInterlockedCount( &m_refCount ) )
+ {
+ delete this;
+ return 0;
+ }
+ return m_refCount;
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessible > AccessibleFactory::createAccessible( Menu* _pMenu, sal_Bool _bIsMenuBar )
+ {
+ OAccessibleMenuBaseComponent* pAccessible;
+ if ( _bIsMenuBar )
+ pAccessible = new VCLXAccessibleMenuBar( _pMenu );
+ else
+ pAccessible = new VCLXAccessiblePopupMenu( _pMenu );
+ pAccessible->SetStates();
+ return pAccessible;
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessibleContext > AccessibleFactory::createAccessibleContext( VCLXButton* _pXWindow )
+ {
+ return new VCLXAccessibleButton( _pXWindow );
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessibleContext > AccessibleFactory::createAccessibleContext( VCLXCheckBox* _pXWindow )
+ {
+ return new VCLXAccessibleCheckBox( _pXWindow );
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessibleContext > AccessibleFactory::createAccessibleContext( VCLXRadioButton* _pXWindow )
+ {
+ return new VCLXAccessibleRadioButton( _pXWindow );
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessibleContext > AccessibleFactory::createAccessibleContext( VCLXListBox* _pXWindow )
+ {
+ sal_Bool bIsDropDownBox = sal_False;
+ ListBox* pBox = static_cast< ListBox* >( _pXWindow->GetWindow() );
+ if ( pBox )
+ bIsDropDownBox = ( ( pBox->GetStyle() & WB_DROPDOWN ) == WB_DROPDOWN );
+
+ if ( bIsDropDownBox )
+ return new VCLXAccessibleDropDownListBox( _pXWindow );
+ else
+ return new VCLXAccessibleListBox( _pXWindow );
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessibleContext > AccessibleFactory::createAccessibleContext( VCLXFixedText* _pXWindow )
+ {
+ return new VCLXAccessibleFixedText( _pXWindow );
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessibleContext > AccessibleFactory::createAccessibleContext( VCLXFixedHyperlink* _pXWindow )
+ {
+ return new VCLXAccessibleFixedHyperlink( _pXWindow );
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessibleContext > AccessibleFactory::createAccessibleContext( VCLXScrollBar* _pXWindow )
+ {
+ return new VCLXAccessibleScrollBar( _pXWindow );
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessibleContext > AccessibleFactory::createAccessibleContext( VCLXEdit* _pXWindow )
+ {
+ return new VCLXAccessibleEdit( _pXWindow );
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessibleContext > AccessibleFactory::createAccessibleContext( VCLXComboBox* _pXWindow )
+ {
+ sal_Bool bIsDropDownBox = sal_False;
+ ComboBox* pBox = static_cast< ComboBox* >( _pXWindow->GetWindow() );
+ if ( pBox )
+ bIsDropDownBox = ( ( pBox->GetStyle() & WB_DROPDOWN ) == WB_DROPDOWN );
+
+ if ( bIsDropDownBox )
+ return new VCLXAccessibleDropDownComboBox( _pXWindow );
+ else
+ return new VCLXAccessibleComboBox( _pXWindow );
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessibleContext > AccessibleFactory::createAccessibleContext( VCLXWindow* _pXWindow )
+ {
+ Reference< XAccessibleContext > xContext;
+
+ Window* pWindow = _pXWindow->GetWindow();
+ if ( pWindow )
+ {
+ WindowType nType = pWindow->GetType();
+
+ if ( nType == WINDOW_MENUBARWINDOW || pWindow->IsMenuFloatingWindow() || pWindow->IsToolbarFloatingWindow() )
+ {
+ Reference< XAccessible > xAcc( pWindow->GetAccessible() );
+ if ( xAcc.is() )
+ {
+ Reference< XAccessibleContext > xCont( xAcc->getAccessibleContext() );
+ if ( pWindow->GetType() == WINDOW_MENUBARWINDOW ||
+ ( xCont.is() && xCont->getAccessibleRole() == AccessibleRole::POPUP_MENU ) )
+ {
+ xContext = xCont;
+ }
+ }
+ }
+ else if ( nType == WINDOW_STATUSBAR )
+ {
+ xContext = (XAccessibleContext*) new VCLXAccessibleStatusBar( _pXWindow );
+ }
+ else if ( nType == WINDOW_TABCONTROL )
+ {
+ xContext = (XAccessibleContext*) new VCLXAccessibleTabControl( _pXWindow );
+ }
+ else if ( nType == WINDOW_TABPAGE && pWindow->GetAccessibleParentWindow() && pWindow->GetAccessibleParentWindow()->GetType() == WINDOW_TABCONTROL )
+ {
+ xContext = new VCLXAccessibleTabPageWindow( _pXWindow );
+ }
+ else if ( nType == WINDOW_FLOATINGWINDOW )
+ {
+ xContext = new FloatingWindowAccessible( _pXWindow );
+ }
+ else if ( nType == WINDOW_BORDERWINDOW && hasFloatingChild( pWindow ) )
+ {
+ PopupMenuFloatingWindow* pChild = dynamic_cast<PopupMenuFloatingWindow*>(
+ pWindow->GetAccessibleChildWindow(0));
+ if ( pChild && pChild->IsPopupMenu() )
+ {
+ // Get the accessible context from the child window.
+ Reference<XAccessible> xAccessible = pChild->CreateAccessible();
+ if (xAccessible.is())
+ xContext = xAccessible->getAccessibleContext();
+ }
+ else
+ xContext = new FloatingWindowAccessible( _pXWindow );
+ }
+ else if ( ( nType == WINDOW_HELPTEXTWINDOW ) || ( nType == WINDOW_FIXEDLINE ) )
+ {
+ xContext = (accessibility::XAccessibleContext*) new VCLXAccessibleFixedText( _pXWindow );
+ }
+ else
+ {
+ xContext = (accessibility::XAccessibleContext*) new VCLXAccessibleComponent( _pXWindow );
+ }
+ }
+
+ return xContext;
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessibleContext > AccessibleFactory::createAccessibleContext( VCLXToolBox* _pXWindow )
+ {
+ return new VCLXAccessibleToolBox( _pXWindow );
+ }
+
+ //--------------------------------------------------------------------
+ IAccessibleTabListBox* AccessibleFactory::createAccessibleTabListBox(
+ const Reference< XAccessible >& rxParent, SvHeaderTabListBox& rBox ) const
+ {
+ return new AccessibleTabListBox( rxParent, rBox );
+ }
+
+ //--------------------------------------------------------------------
+ IAccessibleBrowseBox* AccessibleFactory::createAccessibleBrowseBox(
+ const Reference< XAccessible >& _rxParent, IAccessibleTableProvider& _rBrowseBox ) const
+ {
+ return new AccessibleBrowseBoxAccess( _rxParent, _rBrowseBox );
+ }
+
+ //--------------------------------------------------------------------
+ IAccessibleTableControl* AccessibleFactory::createAccessibleTableControl(
+ const Reference< XAccessible >& _rxParent, IAccessibleTable& _rTable ) const
+ {
+ return new AccessibleGridControlAccess( _rxParent, _rTable );
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessible > AccessibleFactory::createAccessibleIconChoiceCtrl(
+ SvtIconChoiceCtrl& _rIconCtrl, const Reference< XAccessible >& _xParent ) const
+ {
+ return new AccessibleIconChoiceCtrl( _rIconCtrl, _xParent );
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessible > AccessibleFactory::createAccessibleTabBar( TabBar& _rTabBar ) const
+ {
+ return new AccessibleTabBar( &_rTabBar );
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessibleContext > AccessibleFactory::createAccessibleTextWindowContext(
+ VCLXWindow* pVclXWindow, TextEngine& rEngine, TextView& rView, bool bCompoundControlChild ) const
+ {
+ return new Document( pVclXWindow, rEngine, rView, bCompoundControlChild );
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessible > AccessibleFactory::createAccessibleTreeListBox(
+ SvTreeListBox& _rListBox, const Reference< XAccessible >& _xParent ) const
+ {
+ return new AccessibleListBox( _rListBox, _xParent );
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessible > AccessibleFactory::createAccessibleBrowseBoxHeaderBar(
+ const Reference< XAccessible >& rxParent, IAccessibleTableProvider& _rOwningTable,
+ AccessibleBrowseBoxObjType _eObjType ) const
+ {
+ return new AccessibleBrowseBoxHeaderBar( rxParent, _rOwningTable, _eObjType );
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessible > AccessibleFactory::createAccessibleBrowseBoxTableCell(
+ const Reference< XAccessible >& _rxParent, IAccessibleTableProvider& _rBrowseBox,
+ const Reference< XWindow >& _xFocusWindow, sal_Int32 _nRowId, sal_uInt16 _nColId, sal_Int32 _nOffset ) const
+ {
+ return new AccessibleBrowseBoxTableCell( _rxParent, _rBrowseBox, _xFocusWindow,
+ _nRowId, _nColId, _nOffset );
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessible > AccessibleFactory::createAccessibleBrowseBoxHeaderCell(
+ sal_Int32 _nColumnRowId, const Reference< XAccessible >& rxParent, IAccessibleTableProvider& _rBrowseBox,
+ const Reference< XWindow >& _xFocusWindow, AccessibleBrowseBoxObjType _eObjType ) const
+ {
+ return new AccessibleBrowseBoxHeaderCell( _nColumnRowId, rxParent, _rBrowseBox,
+ _xFocusWindow, _eObjType );
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessible > AccessibleFactory::createAccessibleCheckBoxCell(
+ const Reference< XAccessible >& _rxParent, IAccessibleTableProvider& _rBrowseBox,
+ const Reference< XWindow >& _xFocusWindow, sal_Int32 _nRowPos, sal_uInt16 _nColPos,
+ const TriState& _eState, sal_Bool _bEnabled, sal_Bool _bIsTriState ) const
+ {
+ return new AccessibleCheckBoxCell( _rxParent, _rBrowseBox, _xFocusWindow,
+ _nRowPos, _nColPos, _eState, _bEnabled, _bIsTriState );
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessible > AccessibleFactory::createEditBrowseBoxTableCellAccess(
+ const Reference< XAccessible >& _rxParent, const Reference< XAccessible >& _rxControlAccessible,
+ const Reference< XWindow >& _rxFocusWindow, IAccessibleTableProvider& _rBrowseBox,
+ sal_Int32 _nRowPos, sal_uInt16 _nColPos ) const
+ {
+ return new EditBrowseBoxTableCellAccess( _rxParent, _rxControlAccessible,
+ _rxFocusWindow, _rBrowseBox, _nRowPos, _nColPos );
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessibleContext > AccessibleFactory::createAccessibleToolPanelDeck(
+ const Reference< XAccessible >& i_rAccessibleParent, ::svt::ToolPanelDeck& i_rPanelDeck )
+ {
+ return new AccessibleToolPanelDeck( i_rAccessibleParent, i_rPanelDeck );
+ }
+
+ //--------------------------------------------------------------------
+ Reference< XAccessibleContext > AccessibleFactory::createAccessibleToolPanelTabBar(
+ const Reference< XAccessible >& i_rAccessibleParent, ::svt::IToolPanelDeck& i_rPanelDeck, ::svt::PanelTabBar& i_rTabBar )
+ {
+ return new AccessibleToolPanelTabBar( i_rAccessibleParent, i_rPanelDeck, i_rTabBar );
+ }
+
+//........................................................................
+} // namespace accessibility
+//........................................................................
+
+//========================================================================
+extern "C" void* SAL_CALL getStandardAccessibleFactory()
+{
+ ::toolkit::IAccessibleFactory* pFactory = new ::accessibility::AccessibleFactory;
+ pFactory->acquire();
+ return pFactory;
+}
+
+extern "C" void* SAL_CALL getSvtAccessibilityComponentFactory()
+{
+ ::svt::IAccessibleFactory* pFactory = new ::accessibility::AccessibleFactory;
+ pFactory->acquire();
+ return pFactory;
+}
diff --git a/accessibility/source/helper/accessiblestrings.src b/accessibility/source/helper/accessiblestrings.src
new file mode 100644
index 000000000000..ee7f77f9b502
--- /dev/null
+++ b/accessibility/source/helper/accessiblestrings.src
@@ -0,0 +1,76 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_HELPER_ACCESSIBLESTRINGS_HRC_
+#include <accessibility/helper/accessiblestrings.hrc>
+#endif
+
+
+String RID_STR_ACC_ACTION_CLICK
+{
+ Text = "click";
+};
+
+String RID_STR_ACC_ACTION_TOGGLEPOPUP
+{
+ Text = "togglePopup";
+};
+
+String RID_STR_ACC_ACTION_SELECT
+{
+ Text = "select";
+};
+
+String RID_STR_ACC_ACTION_INCLINE
+{
+ Text = "incrementLine";
+};
+
+String RID_STR_ACC_ACTION_DECLINE
+{
+ Text = "decrementLine";
+};
+
+String RID_STR_ACC_ACTION_INCBLOCK
+{
+ Text = "incrementBlock";
+};
+
+String RID_STR_ACC_ACTION_DECBLOCK
+{
+ Text = "decrementBlock";
+};
+
+String RID_STR_ACC_NAME_BROWSEBUTTON
+{
+ Text [ en-US ] = "Browse";
+};
+
+String RID_STR_ACC_DESC_PANELDECL_TABBAR
+{
+ Text [ en-US ] = "Panel Deck Tab Bar";
+};
diff --git a/accessibility/source/helper/accresmgr.cxx b/accessibility/source/helper/accresmgr.cxx
new file mode 100644
index 000000000000..41647837df4e
--- /dev/null
+++ b/accessibility/source/helper/accresmgr.cxx
@@ -0,0 +1,84 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/helper/accresmgr.hxx>
+
+#ifndef _TOOLS_SIMPLERESMGR_HXX
+#include <tools/simplerm.hxx>
+#endif
+#include <vcl/svapp.hxx>
+
+
+// -----------------------------------------------------------------------------
+// TkResMgr
+// -----------------------------------------------------------------------------
+
+SimpleResMgr* TkResMgr::m_pImpl = NULL;
+
+// -----------------------------------------------------------------------------
+
+TkResMgr::EnsureDelete::~EnsureDelete()
+{
+ delete TkResMgr::m_pImpl;
+}
+
+// -----------------------------------------------------------------------------
+
+void TkResMgr::ensureImplExists()
+{
+ if (m_pImpl)
+ return;
+
+ ::com::sun::star::lang::Locale aLocale = Application::GetSettings().GetUILocale();
+
+ ByteString sResMgrName( "acc" );
+
+ m_pImpl = SimpleResMgr::Create( sResMgrName.GetBuffer(), aLocale );
+
+ if (m_pImpl)
+ {
+ // now that we have a impl class, make sure it's deleted on unloading the library
+ static TkResMgr::EnsureDelete s_aDeleteTheImplClass;
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString TkResMgr::loadString( sal_uInt16 nResId )
+{
+ ::rtl::OUString sReturn;
+
+ ensureImplExists();
+ if ( m_pImpl )
+ sReturn = m_pImpl->ReadString( nResId );
+
+ return sReturn;
+}
+
+// -----------------------------------------------------------------------------
diff --git a/accessibility/source/helper/characterattributeshelper.cxx b/accessibility/source/helper/characterattributeshelper.cxx
new file mode 100644
index 000000000000..6444925dfbac
--- /dev/null
+++ b/accessibility/source/helper/characterattributeshelper.cxx
@@ -0,0 +1,119 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/helper/characterattributeshelper.hxx>
+
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::beans;
+
+
+// -----------------------------------------------------------------------------
+// CharacterAttributesHelper
+// -----------------------------------------------------------------------------
+
+CharacterAttributesHelper::CharacterAttributesHelper( const Font& rFont, sal_Int32 nBackColor, sal_Int32 nColor )
+{
+ m_aAttributeMap.insert( AttributeMap::value_type( ::rtl::OUString::createFromAscii( "CharBackColor" ), makeAny( (sal_Int32) nBackColor ) ) );
+ m_aAttributeMap.insert( AttributeMap::value_type( ::rtl::OUString::createFromAscii( "CharColor" ), makeAny( (sal_Int32) nColor ) ) );
+ m_aAttributeMap.insert( AttributeMap::value_type( ::rtl::OUString::createFromAscii( "CharFontCharSet" ), makeAny( (sal_Int16) rFont.GetCharSet() ) ) );
+ m_aAttributeMap.insert( AttributeMap::value_type( ::rtl::OUString::createFromAscii( "CharFontFamily" ), makeAny( (sal_Int16) rFont.GetFamily() ) ) );
+ m_aAttributeMap.insert( AttributeMap::value_type( ::rtl::OUString::createFromAscii( "CharFontName" ), makeAny( (::rtl::OUString) rFont.GetName() ) ) );
+ m_aAttributeMap.insert( AttributeMap::value_type( ::rtl::OUString::createFromAscii( "CharFontPitch" ), makeAny( (sal_Int16) rFont.GetPitch() ) ) );
+ m_aAttributeMap.insert( AttributeMap::value_type( ::rtl::OUString::createFromAscii( "CharFontStyleName" ), makeAny( (::rtl::OUString) rFont.GetStyleName() ) ) );
+ m_aAttributeMap.insert( AttributeMap::value_type( ::rtl::OUString::createFromAscii( "CharHeight" ), makeAny( (sal_Int16) rFont.GetSize().Height() ) ) );
+ m_aAttributeMap.insert( AttributeMap::value_type( ::rtl::OUString::createFromAscii( "CharScaleWidth" ), makeAny( (sal_Int16) rFont.GetSize().Width() ) ) );
+ m_aAttributeMap.insert( AttributeMap::value_type( ::rtl::OUString::createFromAscii( "CharStrikeout" ), makeAny( (sal_Int16) rFont.GetStrikeout() ) ) );
+ m_aAttributeMap.insert( AttributeMap::value_type( ::rtl::OUString::createFromAscii( "CharUnderline" ), makeAny( (sal_Int16) rFont.GetUnderline() ) ) );
+ m_aAttributeMap.insert( AttributeMap::value_type( ::rtl::OUString::createFromAscii( "CharWeight" ), makeAny( (float) rFont.GetWeight() ) ) );
+}
+
+// -----------------------------------------------------------------------------
+
+CharacterAttributesHelper::~CharacterAttributesHelper()
+{
+ m_aAttributeMap.clear();
+}
+
+// -----------------------------------------------------------------------------
+
+Sequence< PropertyValue > CharacterAttributesHelper::GetCharacterAttributes()
+{
+ Sequence< PropertyValue > aValues( m_aAttributeMap.size() );
+ PropertyValue* pValues = aValues.getArray();
+
+ for ( AttributeMap::iterator aIt = m_aAttributeMap.begin(); aIt != m_aAttributeMap.end(); ++aIt, ++pValues )
+ {
+ pValues->Name = aIt->first;
+ pValues->Handle = (sal_Int32) -1;
+ pValues->Value = aIt->second;
+ pValues->State = PropertyState_DIRECT_VALUE;
+ }
+
+ return aValues;
+}
+
+// -----------------------------------------------------------------------------
+
+Sequence< PropertyValue > CharacterAttributesHelper::GetCharacterAttributes( const Sequence< ::rtl::OUString >& aRequestedAttributes )
+{
+ Sequence< PropertyValue > aValues;
+ sal_Int32 nLength = aRequestedAttributes.getLength();
+
+ if ( nLength != 0 )
+ {
+ const ::rtl::OUString* pNames = aRequestedAttributes.getConstArray();
+ AttributeMap aAttributeMap;
+
+ for ( sal_Int32 i = 0; i < nLength; ++i )
+ {
+ AttributeMap::iterator aFound = m_aAttributeMap.find( pNames[i] );
+ if ( aFound != m_aAttributeMap.end() )
+ aAttributeMap.insert( *aFound );
+ }
+
+ aValues.realloc( aAttributeMap.size() );
+ PropertyValue* pValues = aValues.getArray();
+
+ for ( AttributeMap::iterator aIt = aAttributeMap.begin(); aIt != aAttributeMap.end(); ++aIt, ++pValues )
+ {
+ pValues->Name = aIt->first;
+ pValues->Handle = (sal_Int32) -1;
+ pValues->Value = aIt->second;
+ pValues->State = PropertyState_DIRECT_VALUE;
+ }
+ }
+ else
+ {
+ aValues = GetCharacterAttributes();
+ }
+
+ return aValues;
+}
+
+// -----------------------------------------------------------------------------
diff --git a/accessibility/source/helper/makefile.mk b/accessibility/source/helper/makefile.mk
new file mode 100644
index 000000000000..72284e38f3bc
--- /dev/null
+++ b/accessibility/source/helper/makefile.mk
@@ -0,0 +1,53 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJ=..$/..
+
+PRJNAME=accessibility
+TARGET=helper
+
+ENABLE_EXCEPTIONS=TRUE
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+# --- Files --------------------------------------------------------
+
+SLOFILES= \
+ $(SLO)$/acc_factory.obj \
+ $(SLO)$/accresmgr.obj \
+ $(SLO)$/characterattributeshelper.obj \
+
+SRS1NAME=$(TARGET)
+SRC1FILES=\
+ accessiblestrings.src
+
+# --- Targets ------------------------------------------------------
+
+.INCLUDE : target.mk
+
diff --git a/accessibility/source/inc/floatingwindowaccessible.hxx b/accessibility/source/inc/floatingwindowaccessible.hxx
new file mode 100644
index 000000000000..2d5e0e603f5a
--- /dev/null
+++ b/accessibility/source/inc/floatingwindowaccessible.hxx
@@ -0,0 +1,45 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef ACCESSIBILITY_FLOATINGWINDOWACCESSIBLE_HXX
+#define ACCESSIBILITY_FLOATINGWINDOWACCESSIBLE_HXX
+
+#ifndef _TOOLKIT_AWT_VCLXACCESSIBLECOMPONENT_HXX_
+#include <toolkit/awt/vclxaccessiblecomponent.hxx>
+#endif
+
+class FloatingWindowAccessible : public VCLXAccessibleComponent
+{
+public:
+ FloatingWindowAccessible( VCLXWindow* pWindow );
+ virtual ~FloatingWindowAccessible();
+
+ virtual void FillAccessibleRelationSet( utl::AccessibleRelationSetHelper& rRelationSet );
+};
+
+#endif // ACCESSIBILITY_FLOATINGWINDOWACCESSIBLE_HXX
+
diff --git a/accessibility/source/standard/accessiblemenubasecomponent.cxx b/accessibility/source/standard/accessiblemenubasecomponent.cxx
new file mode 100644
index 000000000000..cb1f425b08cf
--- /dev/null
+++ b/accessibility/source/standard/accessiblemenubasecomponent.cxx
@@ -0,0 +1,783 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+
+// includes --------------------------------------------------------------
+#include <accessibility/standard/accessiblemenubasecomponent.hxx>
+#include <accessibility/standard/vclxaccessiblemenu.hxx>
+#include <accessibility/standard/vclxaccessiblemenuitem.hxx>
+#include <accessibility/standard/vclxaccessiblemenuseparator.hxx>
+#include <toolkit/helper/externallock.hxx>
+#include <toolkit/helper/convert.hxx>
+
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+
+#include <unotools/accessiblestatesethelper.hxx>
+#include <vcl/svapp.hxx>
+#include <vcl/window.hxx>
+#include <vcl/menu.hxx>
+#include <tools/debug.hxx>
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::accessibility;
+using namespace ::comphelper;
+
+
+// -----------------------------------------------------------------------------
+// OAccessibleMenuBaseComponent
+// -----------------------------------------------------------------------------
+
+OAccessibleMenuBaseComponent::OAccessibleMenuBaseComponent( Menu* pMenu )
+ :AccessibleExtendedComponentHelper_BASE( new VCLExternalSolarLock() )
+ ,m_pMenu( pMenu )
+ ,m_bEnabled( sal_False )
+ ,m_bFocused( sal_False )
+ ,m_bVisible( sal_False )
+ ,m_bSelected( sal_False )
+ ,m_bChecked( sal_False )
+{
+ m_pExternalLock = static_cast< VCLExternalSolarLock* >( getExternalLock() );
+
+ if ( m_pMenu )
+ {
+ m_aAccessibleChildren.assign( m_pMenu->GetItemCount(), Reference< XAccessible >() );
+ m_pMenu->AddEventListener( LINK( this, OAccessibleMenuBaseComponent, MenuEventListener ) );
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+OAccessibleMenuBaseComponent::~OAccessibleMenuBaseComponent()
+{
+ if ( m_pMenu )
+ m_pMenu->RemoveEventListener( LINK( this, OAccessibleMenuBaseComponent, MenuEventListener ) );
+
+ delete m_pExternalLock;
+ m_pExternalLock = NULL;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool OAccessibleMenuBaseComponent::IsEnabled()
+{
+ return sal_False;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool OAccessibleMenuBaseComponent::IsFocused()
+{
+ return sal_False;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool OAccessibleMenuBaseComponent::IsVisible()
+{
+ return sal_False;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool OAccessibleMenuBaseComponent::IsSelected()
+{
+ return sal_False;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool OAccessibleMenuBaseComponent::IsChecked()
+{
+ return sal_False;
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuBaseComponent::SetStates()
+{
+ m_bEnabled = IsEnabled();
+ m_bFocused = IsFocused();
+ m_bVisible = IsVisible();
+ m_bSelected = IsSelected();
+ m_bChecked = IsChecked();
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuBaseComponent::SetEnabled( sal_Bool bEnabled )
+{
+ if ( m_bEnabled != bEnabled )
+ {
+ Any aOldValue[2], aNewValue[2];
+ if ( m_bEnabled )
+ {
+ aOldValue[0] <<= AccessibleStateType::SENSITIVE;
+ aOldValue[1] <<= AccessibleStateType::ENABLED;
+ }
+ else
+ {
+ aNewValue[0] <<= AccessibleStateType::ENABLED;
+ aNewValue[1] <<= AccessibleStateType::SENSITIVE;
+ }
+ m_bEnabled = bEnabled;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue[0], aNewValue[0] );
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue[1], aNewValue[1] );
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuBaseComponent::SetFocused( sal_Bool bFocused )
+{
+ if ( m_bFocused != bFocused )
+ {
+ Any aOldValue, aNewValue;
+ if ( m_bFocused )
+ aOldValue <<= AccessibleStateType::FOCUSED;
+ else
+ aNewValue <<= AccessibleStateType::FOCUSED;
+ m_bFocused = bFocused;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuBaseComponent::SetVisible( sal_Bool bVisible )
+{
+ if ( m_bVisible != bVisible )
+ {
+ Any aOldValue, aNewValue;
+ if ( m_bVisible )
+ aOldValue <<= AccessibleStateType::VISIBLE;
+ else
+ aNewValue <<= AccessibleStateType::VISIBLE;
+ m_bVisible = bVisible;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuBaseComponent::SetSelected( sal_Bool bSelected )
+{
+ if ( m_bSelected != bSelected )
+ {
+ Any aOldValue, aNewValue;
+ if ( m_bSelected )
+ aOldValue <<= AccessibleStateType::SELECTED;
+ else
+ aNewValue <<= AccessibleStateType::SELECTED;
+ m_bSelected = bSelected;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuBaseComponent::SetChecked( sal_Bool bChecked )
+{
+ if ( m_bChecked != bChecked )
+ {
+ Any aOldValue, aNewValue;
+ if ( m_bChecked )
+ aOldValue <<= AccessibleStateType::CHECKED;
+ else
+ aNewValue <<= AccessibleStateType::CHECKED;
+ m_bChecked = bChecked;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuBaseComponent::UpdateEnabled( sal_Int32 i, sal_Bool bEnabled )
+{
+ if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
+ {
+ Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
+ if ( xChild.is() )
+ {
+ OAccessibleMenuBaseComponent* pComp = static_cast< OAccessibleMenuBaseComponent* >( xChild.get() );
+ if ( pComp )
+ pComp->SetEnabled( bEnabled );
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuBaseComponent::UpdateFocused( sal_Int32 i, sal_Bool bFocused )
+{
+ if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
+ {
+ Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
+ if ( xChild.is() )
+ {
+ OAccessibleMenuBaseComponent* pComp = static_cast< OAccessibleMenuBaseComponent* >( xChild.get() );
+ if ( pComp )
+ pComp->SetFocused( bFocused );
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuBaseComponent::UpdateVisible()
+{
+ SetVisible( IsVisible() );
+ for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
+ {
+ Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
+ if ( xChild.is() )
+ {
+ OAccessibleMenuBaseComponent* pComp = static_cast< OAccessibleMenuBaseComponent* >( xChild.get() );
+ if ( pComp )
+ pComp->SetVisible( pComp->IsVisible() );
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuBaseComponent::UpdateSelected( sal_Int32 i, sal_Bool bSelected )
+{
+ NotifyAccessibleEvent( AccessibleEventId::SELECTION_CHANGED, Any(), Any() );
+
+ if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
+ {
+ Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
+ if ( xChild.is() )
+ {
+ OAccessibleMenuBaseComponent* pComp = static_cast< OAccessibleMenuBaseComponent* >( xChild.get() );
+ if ( pComp )
+ pComp->SetSelected( bSelected );
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuBaseComponent::UpdateChecked( sal_Int32 i, sal_Bool bChecked )
+{
+ if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
+ {
+ Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
+ if ( xChild.is() )
+ {
+ OAccessibleMenuBaseComponent* pComp = static_cast< OAccessibleMenuBaseComponent* >( xChild.get() );
+ if ( pComp )
+ pComp->SetChecked( bChecked );
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuBaseComponent::UpdateAccessibleName( sal_Int32 i )
+{
+ if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
+ {
+ Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
+ if ( xChild.is() )
+ {
+ OAccessibleMenuItemComponent* pComp = static_cast< OAccessibleMenuItemComponent* >( xChild.get() );
+ if ( pComp )
+ pComp->SetAccessibleName( pComp->GetAccessibleName() );
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuBaseComponent::UpdateItemText( sal_Int32 i )
+{
+ if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
+ {
+ Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
+ if ( xChild.is() )
+ {
+ OAccessibleMenuItemComponent* pComp = static_cast< OAccessibleMenuItemComponent* >( xChild.get() );
+ if ( pComp )
+ pComp->SetItemText( pComp->GetItemText() );
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 OAccessibleMenuBaseComponent::GetChildCount()
+{
+ return m_aAccessibleChildren.size();
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > OAccessibleMenuBaseComponent::GetChild( sal_Int32 i )
+{
+ Reference< XAccessible > xChild = m_aAccessibleChildren[i];
+ if ( !xChild.is() )
+ {
+ if ( m_pMenu )
+ {
+ // create a new child
+ OAccessibleMenuBaseComponent* pChild;
+
+ if ( m_pMenu->GetItemType( (USHORT)i ) == MENUITEM_SEPARATOR )
+ {
+ pChild = new VCLXAccessibleMenuSeparator( m_pMenu, (sal_uInt16)i );
+ }
+ else
+ {
+ PopupMenu* pPopupMenu = m_pMenu->GetPopupMenu( m_pMenu->GetItemId( (USHORT)i ) );
+ if ( pPopupMenu )
+ {
+ pChild = new VCLXAccessibleMenu( m_pMenu, (sal_uInt16)i, pPopupMenu );
+ pPopupMenu->SetAccessible( pChild );
+ }
+ else
+ {
+ pChild = new VCLXAccessibleMenuItem( m_pMenu, (sal_uInt16)i );
+ }
+ }
+
+ // set states
+ pChild->SetStates();
+
+ xChild = pChild;
+
+ // insert into menu item list
+ m_aAccessibleChildren[i] = xChild;
+ }
+ }
+
+ return xChild;
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > OAccessibleMenuBaseComponent::GetChildAt( const awt::Point& rPoint )
+{
+ Reference< XAccessible > xChild;
+ for ( sal_uInt32 i = 0, nCount = getAccessibleChildCount(); i < nCount; ++i )
+ {
+ Reference< XAccessible > xAcc = getAccessibleChild( i );
+ if ( xAcc.is() )
+ {
+ Reference< XAccessibleComponent > xComp( xAcc->getAccessibleContext(), UNO_QUERY );
+ if ( xComp.is() )
+ {
+ Rectangle aRect = VCLRectangle( xComp->getBounds() );
+ Point aPos = VCLPoint( rPoint );
+ if ( aRect.IsInside( aPos ) )
+ {
+ xChild = xAcc;
+ break;
+ }
+ }
+ }
+ }
+
+ return xChild;
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuBaseComponent::InsertChild( sal_Int32 i )
+{
+ if ( i > (sal_Int32)m_aAccessibleChildren.size() )
+ i = m_aAccessibleChildren.size();
+
+ if ( i >= 0 )
+ {
+ // insert entry in child list
+ m_aAccessibleChildren.insert( m_aAccessibleChildren.begin() + i, Reference< XAccessible >() );
+
+ // update item position of accessible children
+ for ( sal_uInt32 j = i, nCount = m_aAccessibleChildren.size(); j < nCount; ++j )
+ {
+ Reference< XAccessible > xAcc( m_aAccessibleChildren[j] );
+ if ( xAcc.is() )
+ {
+ OAccessibleMenuItemComponent* pComp = static_cast< OAccessibleMenuItemComponent* >( xAcc.get() );
+ if ( pComp )
+ pComp->SetItemPos( (sal_uInt16)j );
+ }
+ }
+
+ // send accessible child event
+ Reference< XAccessible > xChild( GetChild( i ) );
+ if ( xChild.is() )
+ {
+ Any aOldValue, aNewValue;
+ aNewValue <<= xChild;
+ NotifyAccessibleEvent( AccessibleEventId::CHILD, aOldValue, aNewValue );
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuBaseComponent::RemoveChild( sal_Int32 i )
+{
+ if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
+ {
+ // keep the accessible of the removed item
+ Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
+
+ // remove entry in child list
+ m_aAccessibleChildren.erase( m_aAccessibleChildren.begin() + i );
+
+ // update item position of accessible children
+ for ( sal_uInt32 j = i, nCount = m_aAccessibleChildren.size(); j < nCount; ++j )
+ {
+ Reference< XAccessible > xAcc( m_aAccessibleChildren[j] );
+ if ( xAcc.is() )
+ {
+ OAccessibleMenuItemComponent* pComp = static_cast< OAccessibleMenuItemComponent* >( xAcc.get() );
+ if ( pComp )
+ pComp->SetItemPos( (sal_uInt16)j );
+ }
+ }
+
+ // send accessible child event
+ if ( xChild.is() )
+ {
+ Any aOldValue, aNewValue;
+ aOldValue <<= xChild;
+ NotifyAccessibleEvent( AccessibleEventId::CHILD, aOldValue, aNewValue );
+
+ Reference< XComponent > xComponent( xChild, UNO_QUERY );
+ if ( xComponent.is() )
+ xComponent->dispose();
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool OAccessibleMenuBaseComponent::IsHighlighted()
+{
+ return sal_False;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool OAccessibleMenuBaseComponent::IsChildHighlighted()
+{
+ sal_Bool bChildHighlighted = sal_False;
+
+ for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
+ {
+ Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
+ if ( xChild.is() )
+ {
+ OAccessibleMenuBaseComponent* pComp = static_cast< OAccessibleMenuBaseComponent* >( xChild.get() );
+ if ( pComp && pComp->IsHighlighted() )
+ {
+ bChildHighlighted = sal_True;
+ break;
+ }
+ }
+ }
+
+ return bChildHighlighted;
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuBaseComponent::SelectChild( sal_Int32 i )
+{
+ // open the menu
+ if ( getAccessibleRole() == AccessibleRole::MENU && !IsPopupMenuOpen() )
+ Click();
+
+ // highlight the child
+ if ( m_pMenu )
+ m_pMenu->HighlightItem( (USHORT)i );
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuBaseComponent::DeSelectAll()
+{
+ if ( m_pMenu )
+ m_pMenu->DeHighlight();
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool OAccessibleMenuBaseComponent::IsChildSelected( sal_Int32 i )
+{
+ sal_Bool bSelected = sal_False;
+
+ if ( m_pMenu && m_pMenu->IsHighlighted( (USHORT)i ) )
+ bSelected = sal_True;
+
+ return bSelected;
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuBaseComponent::Select()
+{
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuBaseComponent::DeSelect()
+{
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuBaseComponent::Click()
+{
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool OAccessibleMenuBaseComponent::IsPopupMenuOpen()
+{
+ return sal_False;
+}
+
+// -----------------------------------------------------------------------------
+
+IMPL_LINK( OAccessibleMenuBaseComponent, MenuEventListener, VclSimpleEvent*, pEvent )
+{
+ DBG_ASSERT( pEvent && pEvent->ISA( VclMenuEvent ), "OAccessibleMenuBaseComponent - Unknown MenuEvent!" );
+ if ( pEvent && pEvent->ISA( VclMenuEvent ) )
+ {
+ DBG_ASSERT( ((VclMenuEvent*)pEvent)->GetMenu(), "OAccessibleMenuBaseComponent - Menu?" );
+ ProcessMenuEvent( *(VclMenuEvent*)pEvent );
+ }
+ return 0;
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuBaseComponent::ProcessMenuEvent( const VclMenuEvent& rVclMenuEvent )
+{
+ sal_uInt16 nItemPos = rVclMenuEvent.GetItemPos();
+
+ switch ( rVclMenuEvent.GetId() )
+ {
+ case VCLEVENT_MENU_SHOW:
+ case VCLEVENT_MENU_HIDE:
+ {
+ UpdateVisible();
+ }
+ break;
+ case VCLEVENT_MENU_HIGHLIGHT:
+ {
+ SetFocused( sal_False );
+ UpdateFocused( nItemPos, sal_True );
+ UpdateSelected( nItemPos, sal_True );
+ }
+ break;
+ case VCLEVENT_MENU_DEHIGHLIGHT:
+ {
+ UpdateFocused( nItemPos, sal_False );
+ UpdateSelected( nItemPos, sal_False );
+ }
+ break;
+ case VCLEVENT_MENU_SUBMENUACTIVATE:
+ {
+ }
+ break;
+ case VCLEVENT_MENU_SUBMENUDEACTIVATE:
+ {
+ UpdateFocused( nItemPos, sal_True );
+ }
+ break;
+ case VCLEVENT_MENU_ENABLE:
+ {
+ UpdateEnabled( nItemPos, sal_True );
+ }
+ break;
+ case VCLEVENT_MENU_DISABLE:
+ {
+ UpdateEnabled( nItemPos, sal_False );
+ }
+ break;
+ case VCLEVENT_MENU_SUBMENUCHANGED:
+ {
+ RemoveChild( nItemPos );
+ InsertChild( nItemPos );
+ }
+ break;
+ case VCLEVENT_MENU_INSERTITEM:
+ {
+ InsertChild( nItemPos );
+ }
+ break;
+ case VCLEVENT_MENU_REMOVEITEM:
+ {
+ RemoveChild( nItemPos );
+ }
+ break;
+ case VCLEVENT_MENU_ACCESSIBLENAMECHANGED:
+ {
+ UpdateAccessibleName( nItemPos );
+ }
+ break;
+ case VCLEVENT_MENU_ITEMTEXTCHANGED:
+ {
+ UpdateAccessibleName( nItemPos );
+ UpdateItemText( nItemPos );
+ }
+ break;
+ case VCLEVENT_MENU_ITEMCHECKED:
+ {
+ UpdateChecked( nItemPos, sal_True );
+ }
+ break;
+ case VCLEVENT_MENU_ITEMUNCHECKED:
+ {
+ UpdateChecked( nItemPos, sal_False );
+ }
+ break;
+ case VCLEVENT_OBJECT_DYING:
+ {
+ if ( m_pMenu )
+ {
+ m_pMenu->RemoveEventListener( LINK( this, OAccessibleMenuBaseComponent, MenuEventListener ) );
+
+ m_pMenu = NULL;
+
+ // dispose all menu items
+ for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
+ {
+ Reference< XComponent > xComponent( m_aAccessibleChildren[i], UNO_QUERY );
+ if ( xComponent.is() )
+ xComponent->dispose();
+ }
+ m_aAccessibleChildren.clear();
+ }
+ }
+ break;
+ default:
+ {
+ }
+ break;
+ }
+}
+
+// -----------------------------------------------------------------------------
+// XInterface
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XINTERFACE2( OAccessibleMenuBaseComponent, AccessibleExtendedComponentHelper_BASE, OAccessibleMenuBaseComponent_BASE )
+
+// -----------------------------------------------------------------------------
+// XTypeProvider
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XTYPEPROVIDER2( OAccessibleMenuBaseComponent, AccessibleExtendedComponentHelper_BASE, OAccessibleMenuBaseComponent_BASE )
+
+// -----------------------------------------------------------------------------
+// XComponent
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuBaseComponent::disposing()
+{
+ AccessibleExtendedComponentHelper_BASE::disposing();
+
+ if ( m_pMenu )
+ {
+ m_pMenu->RemoveEventListener( LINK( this, OAccessibleMenuBaseComponent, MenuEventListener ) );
+
+ m_pMenu = NULL;
+
+ // dispose all menu items
+ for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
+ {
+ Reference< XComponent > xComponent( m_aAccessibleChildren[i], UNO_QUERY );
+ if ( xComponent.is() )
+ xComponent->dispose();
+ }
+ m_aAccessibleChildren.clear();
+ }
+}
+
+// -----------------------------------------------------------------------------
+// XServiceInfo
+// -----------------------------------------------------------------------------
+
+sal_Bool OAccessibleMenuBaseComponent::supportsService( const ::rtl::OUString& rServiceName ) throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames( getSupportedServiceNames() );
+ const ::rtl::OUString* pNames = aNames.getConstArray();
+ const ::rtl::OUString* pEnd = pNames + aNames.getLength();
+ for ( ; pNames != pEnd && !pNames->equals( rServiceName ); ++pNames )
+ ;
+
+ return pNames != pEnd;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessible
+// -----------------------------------------------------------------------------
+
+Reference< XAccessibleContext > OAccessibleMenuBaseComponent::getAccessibleContext( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return this;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleContext
+// -----------------------------------------------------------------------------
+
+Reference< XAccessibleStateSet > OAccessibleMenuBaseComponent::getAccessibleStateSet( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ utl::AccessibleStateSetHelper* pStateSetHelper = new utl::AccessibleStateSetHelper;
+ Reference< XAccessibleStateSet > xSet = pStateSetHelper;
+
+ if ( !rBHelper.bDisposed && !rBHelper.bInDispose )
+ {
+ FillAccessibleStateSet( *pStateSetHelper );
+ }
+ else
+ {
+ pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
+ }
+
+ return xSet;
+}
+
+// -----------------------------------------------------------------------------
diff --git a/accessibility/source/standard/accessiblemenucomponent.cxx b/accessibility/source/standard/accessiblemenucomponent.cxx
new file mode 100644
index 000000000000..05ba722a9453
--- /dev/null
+++ b/accessibility/source/standard/accessiblemenucomponent.cxx
@@ -0,0 +1,471 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/standard/accessiblemenucomponent.hxx>
+
+#include <toolkit/awt/vclxfont.hxx>
+#include <toolkit/helper/convert.hxx>
+
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+
+#include <unotools/accessiblestatesethelper.hxx>
+#include <unotools/accessiblerelationsethelper.hxx>
+#include <cppuhelper/typeprovider.hxx>
+#include <comphelper/sequence.hxx>
+#include <vcl/svapp.hxx>
+#include <vcl/window.hxx>
+#include <vcl/menu.hxx>
+#include <vcl/unohelp2.hxx>
+
+
+using namespace ::com::sun::star::accessibility;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star;
+using namespace ::comphelper;
+
+
+// -----------------------------------------------------------------------------
+// class OAccessibleMenuComponent
+// -----------------------------------------------------------------------------
+
+OAccessibleMenuComponent::OAccessibleMenuComponent( Menu* pMenu )
+ :OAccessibleMenuBaseComponent( pMenu )
+{
+}
+
+// -----------------------------------------------------------------------------
+
+OAccessibleMenuComponent::~OAccessibleMenuComponent()
+{
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool OAccessibleMenuComponent::IsEnabled()
+{
+ return sal_True;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool OAccessibleMenuComponent::IsVisible()
+{
+ sal_Bool bVisible = sal_False;
+
+ if ( m_pMenu )
+ bVisible = m_pMenu->IsMenuVisible();
+
+ return bVisible;
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuComponent::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
+{
+ if ( IsEnabled() )
+ {
+ rStateSet.AddState( AccessibleStateType::ENABLED );
+ rStateSet.AddState( AccessibleStateType::SENSITIVE );
+ }
+
+ rStateSet.AddState( AccessibleStateType::FOCUSABLE );
+
+ if ( IsFocused() )
+ rStateSet.AddState( AccessibleStateType::FOCUSED );
+
+ if ( IsVisible() )
+ {
+ rStateSet.AddState( AccessibleStateType::VISIBLE );
+ rStateSet.AddState( AccessibleStateType::SHOWING );
+ }
+
+ rStateSet.AddState( AccessibleStateType::OPAQUE );
+}
+
+// -----------------------------------------------------------------------------
+// OCommonAccessibleComponent
+// -----------------------------------------------------------------------------
+
+awt::Rectangle OAccessibleMenuComponent::implGetBounds() throw (RuntimeException)
+{
+ awt::Rectangle aBounds( 0, 0, 0, 0 );
+
+ if ( m_pMenu )
+ {
+ Window* pWindow = m_pMenu->GetWindow();
+ if ( pWindow )
+ {
+ // get bounding rectangle of the window in screen coordinates
+ Rectangle aRect = pWindow->GetWindowExtentsRelative( NULL );
+ aBounds = AWTRectangle( aRect );
+
+ // get position of the accessible parent in screen coordinates
+ Reference< XAccessible > xParent = getAccessibleParent();
+ if ( xParent.is() )
+ {
+ Reference< XAccessibleComponent > xParentComponent( xParent->getAccessibleContext(), UNO_QUERY );
+ if ( xParentComponent.is() )
+ {
+ awt::Point aParentScreenLoc = xParentComponent->getLocationOnScreen();
+
+ // calculate position of the window relative to the accessible parent
+ aBounds.X -= aParentScreenLoc.X;
+ aBounds.Y -= aParentScreenLoc.Y;
+ }
+ }
+ }
+ }
+
+ return aBounds;
+}
+
+// -----------------------------------------------------------------------------
+// XInterface
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XINTERFACE2( OAccessibleMenuComponent, OAccessibleMenuBaseComponent, OAccessibleMenuComponent_BASE )
+
+// -----------------------------------------------------------------------------
+// XTypeProvider
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XTYPEPROVIDER2( OAccessibleMenuComponent, OAccessibleMenuBaseComponent, OAccessibleMenuComponent_BASE )
+
+// -----------------------------------------------------------------------------
+// XAccessibleContext
+// -----------------------------------------------------------------------------
+
+sal_Int32 OAccessibleMenuComponent::getAccessibleChildCount() throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return GetChildCount();
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > OAccessibleMenuComponent::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( i < 0 || i >= GetChildCount() )
+ throw IndexOutOfBoundsException();
+
+ return GetChild( i );
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > OAccessibleMenuComponent::getAccessibleParent( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Reference< XAccessible > xParent;
+
+ if ( m_pMenu )
+ {
+ Window* pWindow = m_pMenu->GetWindow();
+ if ( pWindow )
+ {
+ Window* pParent = pWindow->GetAccessibleParentWindow();
+ if ( pParent )
+ xParent = pParent->GetAccessible();
+ }
+ }
+
+ return xParent;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int16 OAccessibleMenuComponent::getAccessibleRole( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return AccessibleRole::UNKNOWN;
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString OAccessibleMenuComponent::getAccessibleDescription( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ ::rtl::OUString sDescription;
+ if ( m_pMenu )
+ {
+ Window* pWindow = m_pMenu->GetWindow();
+ if ( pWindow )
+ sDescription = pWindow->GetAccessibleDescription();
+ }
+
+ return sDescription;
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString OAccessibleMenuComponent::getAccessibleName( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return ::rtl::OUString();
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessibleRelationSet > OAccessibleMenuComponent::getAccessibleRelationSet( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ utl::AccessibleRelationSetHelper* pRelationSetHelper = new utl::AccessibleRelationSetHelper;
+ Reference< XAccessibleRelationSet > xSet = pRelationSetHelper;
+ return xSet;
+}
+
+// -----------------------------------------------------------------------------
+
+Locale OAccessibleMenuComponent::getLocale( ) throw (IllegalAccessibleComponentStateException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return Application::GetSettings().GetLocale();
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleComponent
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > OAccessibleMenuComponent::getAccessibleAtPoint( const awt::Point& rPoint ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return GetChildAt( rPoint );
+}
+
+// -----------------------------------------------------------------------------
+
+awt::Point OAccessibleMenuComponent::getLocationOnScreen( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ awt::Point aPos;
+
+ if ( m_pMenu )
+ {
+ Window* pWindow = m_pMenu->GetWindow();
+ if ( pWindow )
+ {
+ Rectangle aRect = pWindow->GetWindowExtentsRelative( NULL );
+ aPos = AWTPoint( aRect.TopLeft() );
+ }
+ }
+
+ return aPos;
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuComponent::grabFocus( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( m_pMenu )
+ {
+ Window* pWindow = m_pMenu->GetWindow();
+ if ( pWindow )
+ pWindow->GrabFocus();
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 OAccessibleMenuComponent::getForeground( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ const StyleSettings& rStyleSettings = Application::GetSettings().GetStyleSettings();
+ sal_Int32 nColor = rStyleSettings.GetMenuTextColor().GetColor();
+
+ return nColor;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 OAccessibleMenuComponent::getBackground( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return 0;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleExtendedComponent
+// -----------------------------------------------------------------------------
+
+Reference< awt::XFont > OAccessibleMenuComponent::getFont( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Reference< awt::XFont > xFont;
+
+ if ( m_pMenu )
+ {
+ Window* pWindow = m_pMenu->GetWindow();
+ if ( pWindow )
+ {
+ Reference< awt::XDevice > xDev( pWindow->GetComponentInterface(), UNO_QUERY );
+ if ( xDev.is() )
+ {
+ const StyleSettings& rStyleSettings = Application::GetSettings().GetStyleSettings();
+ VCLXFont* pVCLXFont = new VCLXFont;
+ pVCLXFont->Init( *xDev.get(), rStyleSettings.GetMenuFont() );
+ xFont = pVCLXFont;
+ }
+ }
+ }
+
+ return xFont;
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString OAccessibleMenuComponent::getTitledBorderText( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return ::rtl::OUString();
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString OAccessibleMenuComponent::getToolTipText( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return ::rtl::OUString();
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleSelection
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuComponent::selectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nChildIndex < 0 || nChildIndex >= GetChildCount() )
+ throw IndexOutOfBoundsException();
+
+ SelectChild( nChildIndex );
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool OAccessibleMenuComponent::isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nChildIndex < 0 || nChildIndex >= GetChildCount() )
+ throw IndexOutOfBoundsException();
+
+ return IsChildSelected( nChildIndex );
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuComponent::clearAccessibleSelection( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ DeSelectAll();
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuComponent::selectAllAccessibleChildren( ) throw (RuntimeException)
+{
+ // This method makes no sense in a menu, and so does nothing.
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 OAccessibleMenuComponent::getSelectedAccessibleChildCount( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nRet = 0;
+
+ for ( sal_Int32 i = 0, nCount = GetChildCount(); i < nCount; i++ )
+ {
+ if ( IsChildSelected( i ) )
+ ++nRet;
+ }
+
+ return nRet;
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > OAccessibleMenuComponent::getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nSelectedChildIndex < 0 || nSelectedChildIndex >= getSelectedAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+
+ Reference< XAccessible > xChild;
+
+ for ( sal_Int32 i = 0, j = 0, nCount = GetChildCount(); i < nCount; i++ )
+ {
+ if ( IsChildSelected( i ) && ( j++ == nSelectedChildIndex ) )
+ {
+ xChild = GetChild( i );
+ break;
+ }
+ }
+
+ return xChild;
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuComponent::deselectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nChildIndex < 0 || nChildIndex >= GetChildCount() )
+ throw IndexOutOfBoundsException();
+
+ DeSelectAll();
+}
+
+// -----------------------------------------------------------------------------
diff --git a/accessibility/source/standard/accessiblemenuitemcomponent.cxx b/accessibility/source/standard/accessiblemenuitemcomponent.cxx
new file mode 100644
index 000000000000..6bc7f59b75d9
--- /dev/null
+++ b/accessibility/source/standard/accessiblemenuitemcomponent.cxx
@@ -0,0 +1,503 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/standard/accessiblemenuitemcomponent.hxx>
+
+
+#include <accessibility/helper/accresmgr.hxx>
+#include <accessibility/helper/accessiblestrings.hrc>
+#include <toolkit/awt/vclxwindows.hxx>
+#include <toolkit/helper/externallock.hxx>
+#include <toolkit/helper/convert.hxx>
+
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <com/sun/star/datatransfer/clipboard/XClipboard.hpp>
+#include <com/sun/star/datatransfer/clipboard/XFlushableClipboard.hpp>
+
+#include <unotools/accessiblestatesethelper.hxx>
+#include <unotools/accessiblerelationsethelper.hxx>
+#include <cppuhelper/typeprovider.hxx>
+#include <comphelper/sequence.hxx>
+#include <comphelper/accessibletexthelper.hxx>
+#include <vcl/svapp.hxx>
+#include <vcl/window.hxx>
+#include <vcl/menu.hxx>
+#include <vcl/unohelp2.hxx>
+
+
+using namespace ::com::sun::star::accessibility;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::beans;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star;
+using namespace ::comphelper;
+
+
+// -----------------------------------------------------------------------------
+// class OAccessibleMenuItemComponent
+// -----------------------------------------------------------------------------
+
+OAccessibleMenuItemComponent::OAccessibleMenuItemComponent( Menu* pParent, sal_uInt16 nItemPos, Menu* pMenu )
+ :OAccessibleMenuBaseComponent( pMenu )
+ ,m_pParent( pParent )
+ ,m_nItemPos( nItemPos )
+{
+ m_sAccessibleName = GetAccessibleName();
+ m_sItemText = GetItemText();
+}
+
+// -----------------------------------------------------------------------------
+
+OAccessibleMenuItemComponent::~OAccessibleMenuItemComponent()
+{
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool OAccessibleMenuItemComponent::IsEnabled()
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Bool bEnabled = sal_False;
+ if ( m_pParent )
+ bEnabled = m_pParent->IsItemEnabled( m_pParent->GetItemId( m_nItemPos ) );
+
+ return bEnabled;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool OAccessibleMenuItemComponent::IsVisible()
+{
+ sal_Bool bVisible = sal_False;
+
+ if ( m_pParent )
+ bVisible = m_pParent->IsItemPosVisible( m_nItemPos );
+
+ return bVisible;
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuItemComponent::Select()
+{
+ // open the parent menu
+ Reference< XAccessible > xParent( getAccessibleParent() );
+ if ( xParent.is() )
+ {
+ OAccessibleMenuBaseComponent* pComp = static_cast< OAccessibleMenuBaseComponent* >( xParent.get() );
+ if ( pComp && pComp->getAccessibleRole() == AccessibleRole::MENU && !pComp->IsPopupMenuOpen() )
+ pComp->Click();
+ }
+
+ // highlight the menu item
+ if ( m_pParent )
+ m_pParent->HighlightItem( m_nItemPos );
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuItemComponent::DeSelect()
+{
+ if ( m_pParent && IsSelected() )
+ m_pParent->DeHighlight();
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuItemComponent::Click()
+{
+ // open the parent menu
+ Reference< XAccessible > xParent( getAccessibleParent() );
+ if ( xParent.is() )
+ {
+ OAccessibleMenuBaseComponent* pComp = static_cast< OAccessibleMenuBaseComponent* >( xParent.get() );
+ if ( pComp && pComp->getAccessibleRole() == AccessibleRole::MENU && !pComp->IsPopupMenuOpen() )
+ pComp->Click();
+ }
+
+ // click the menu item
+ if ( m_pParent )
+ {
+ Window* pWindow = m_pParent->GetWindow();
+ if ( pWindow )
+ {
+ // #102438# Menu items are not selectable
+ // Popup menus are executed asynchronously, triggered by a timer.
+ // As Menu::SelectItem only works, if the corresponding menu window is
+ // already created, we have to set the menu delay to 0, so
+ // that the popup menus are executed synchronously.
+ AllSettings aSettings = pWindow->GetSettings();
+ MouseSettings aMouseSettings = aSettings.GetMouseSettings();
+ ULONG nDelay = aMouseSettings.GetMenuDelay();
+ aMouseSettings.SetMenuDelay( 0 );
+ aSettings.SetMouseSettings( aMouseSettings );
+ pWindow->SetSettings( aSettings );
+
+ m_pParent->SelectItem( m_pParent->GetItemId( m_nItemPos ) );
+
+ // meanwhile the window pointer may be invalid
+ pWindow = m_pParent->GetWindow();
+ if ( pWindow )
+ {
+ // set the menu delay back to the old value
+ aSettings = pWindow->GetSettings();
+ aMouseSettings = aSettings.GetMouseSettings();
+ aMouseSettings.SetMenuDelay( nDelay );
+ aSettings.SetMouseSettings( aMouseSettings );
+ pWindow->SetSettings( aSettings );
+ }
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuItemComponent::SetItemPos( sal_uInt16 nItemPos )
+{
+ m_nItemPos = nItemPos;
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuItemComponent::SetAccessibleName( const ::rtl::OUString& sAccessibleName )
+{
+ if ( !m_sAccessibleName.equals( sAccessibleName ) )
+ {
+ Any aOldValue, aNewValue;
+ aOldValue <<= m_sAccessibleName;
+ aNewValue <<= sAccessibleName;
+ m_sAccessibleName = sAccessibleName;
+ NotifyAccessibleEvent( AccessibleEventId::NAME_CHANGED, aOldValue, aNewValue );
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString OAccessibleMenuItemComponent::GetAccessibleName()
+{
+ ::rtl::OUString sName;
+ if ( m_pParent )
+ {
+ sal_uInt16 nItemId = m_pParent->GetItemId( m_nItemPos );
+ sName = m_pParent->GetAccessibleName( nItemId );
+ if ( sName.getLength() == 0 )
+ sName = m_pParent->GetItemText( nItemId );
+ sName = OutputDevice::GetNonMnemonicString( sName );
+ }
+
+ return sName;
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuItemComponent::SetItemText( const ::rtl::OUString& sItemText )
+{
+ Any aOldValue, aNewValue;
+ if ( OCommonAccessibleText::implInitTextChangedEvent( m_sItemText, sItemText, aOldValue, aNewValue ) )
+ {
+ m_sItemText = sItemText;
+ NotifyAccessibleEvent( AccessibleEventId::TEXT_CHANGED, aOldValue, aNewValue );
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString OAccessibleMenuItemComponent::GetItemText()
+{
+ ::rtl::OUString sText;
+ if ( m_pParent )
+ sText = OutputDevice::GetNonMnemonicString( m_pParent->GetItemText( m_pParent->GetItemId( m_nItemPos ) ) );
+
+ return sText;
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuItemComponent::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
+{
+ if ( IsEnabled() )
+ {
+ rStateSet.AddState( AccessibleStateType::ENABLED );
+ rStateSet.AddState( AccessibleStateType::SENSITIVE );
+ }
+
+ if ( IsVisible() )
+ {
+ rStateSet.AddState( AccessibleStateType::VISIBLE );
+ rStateSet.AddState( AccessibleStateType::SHOWING );
+ }
+
+ rStateSet.AddState( AccessibleStateType::OPAQUE );
+}
+
+// -----------------------------------------------------------------------------
+// OCommonAccessibleComponent
+// -----------------------------------------------------------------------------
+
+awt::Rectangle OAccessibleMenuItemComponent::implGetBounds() throw (RuntimeException)
+{
+ awt::Rectangle aBounds( 0, 0, 0, 0 );
+
+ if ( m_pParent )
+ {
+ // get bounding rectangle of the item relative to the containing window
+ aBounds = AWTRectangle( m_pParent->GetBoundingRectangle( m_nItemPos ) );
+
+ // get position of containing window in screen coordinates
+ Window* pWindow = m_pParent->GetWindow();
+ if ( pWindow )
+ {
+ Rectangle aRect = pWindow->GetWindowExtentsRelative( NULL );
+ awt::Point aWindowScreenLoc = AWTPoint( aRect.TopLeft() );
+
+ // get position of accessible parent in screen coordinates
+ Reference< XAccessible > xParent = getAccessibleParent();
+ if ( xParent.is() )
+ {
+ Reference< XAccessibleComponent > xParentComponent( xParent->getAccessibleContext(), UNO_QUERY );
+ if ( xParentComponent.is() )
+ {
+ awt::Point aParentScreenLoc = xParentComponent->getLocationOnScreen();
+
+ // calculate bounding rectangle of the item relative to the accessible parent
+ aBounds.X += aWindowScreenLoc.X - aParentScreenLoc.X;
+ aBounds.Y += aWindowScreenLoc.Y - aParentScreenLoc.Y;
+ }
+ }
+ }
+ }
+
+ return aBounds;
+}
+
+// -----------------------------------------------------------------------------
+// XComponent
+// -----------------------------------------------------------------------------
+
+void SAL_CALL OAccessibleMenuItemComponent::disposing()
+{
+ OAccessibleMenuBaseComponent::disposing();
+
+ m_pParent = NULL;
+ m_sAccessibleName = ::rtl::OUString();
+ m_sItemText = ::rtl::OUString();
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleContext
+// -----------------------------------------------------------------------------
+
+sal_Int32 OAccessibleMenuItemComponent::getAccessibleChildCount() throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return 0;
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > OAccessibleMenuItemComponent::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( i < 0 || i >= getAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+
+ return Reference< XAccessible >();
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > OAccessibleMenuItemComponent::getAccessibleParent( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return m_pParent->GetAccessible();
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 OAccessibleMenuItemComponent::getAccessibleIndexInParent( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return m_nItemPos;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int16 OAccessibleMenuItemComponent::getAccessibleRole( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return AccessibleRole::UNKNOWN;
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString OAccessibleMenuItemComponent::getAccessibleDescription( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ ::rtl::OUString sDescription;
+ if ( m_pParent )
+ sDescription = m_pParent->GetHelpText( m_pParent->GetItemId( m_nItemPos ) );
+
+ return sDescription;
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString OAccessibleMenuItemComponent::getAccessibleName( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return m_sAccessibleName;
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessibleRelationSet > OAccessibleMenuItemComponent::getAccessibleRelationSet( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ utl::AccessibleRelationSetHelper* pRelationSetHelper = new utl::AccessibleRelationSetHelper;
+ Reference< XAccessibleRelationSet > xSet = pRelationSetHelper;
+ return xSet;
+}
+
+// -----------------------------------------------------------------------------
+
+Locale OAccessibleMenuItemComponent::getLocale( ) throw (IllegalAccessibleComponentStateException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return Application::GetSettings().GetLocale();
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleComponent
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > OAccessibleMenuItemComponent::getAccessibleAtPoint( const awt::Point& ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return Reference< XAccessible >();
+}
+
+// -----------------------------------------------------------------------------
+
+void OAccessibleMenuItemComponent::grabFocus( ) throw (RuntimeException)
+{
+ // no focus for items
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 OAccessibleMenuItemComponent::getForeground( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nColor = 0;
+ Reference< XAccessible > xParent = getAccessibleParent();
+ if ( xParent.is() )
+ {
+ Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
+ if ( xParentComp.is() )
+ nColor = xParentComp->getForeground();
+ }
+
+ return nColor;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 OAccessibleMenuItemComponent::getBackground( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nColor = 0;
+ Reference< XAccessible > xParent = getAccessibleParent();
+ if ( xParent.is() )
+ {
+ Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
+ if ( xParentComp.is() )
+ nColor = xParentComp->getBackground();
+ }
+
+ return nColor;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleExtendedComponent
+// -----------------------------------------------------------------------------
+
+Reference< awt::XFont > OAccessibleMenuItemComponent::getFont( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Reference< awt::XFont > xFont;
+ Reference< XAccessible > xParent = getAccessibleParent();
+ if ( xParent.is() )
+ {
+ Reference< XAccessibleExtendedComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
+ if ( xParentComp.is() )
+ xFont = xParentComp->getFont();
+ }
+
+ return xFont;
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString OAccessibleMenuItemComponent::getTitledBorderText( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return ::rtl::OUString();
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString OAccessibleMenuItemComponent::getToolTipText( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ ::rtl::OUString sRet;
+ if ( m_pParent )
+ sRet = m_pParent->GetTipHelpText( m_pParent->GetItemId( m_nItemPos ) );
+
+ return sRet;
+}
+
+// -----------------------------------------------------------------------------
diff --git a/accessibility/source/standard/floatingwindowaccessible.cxx b/accessibility/source/standard/floatingwindowaccessible.cxx
new file mode 100644
index 000000000000..5286bfd387ba
--- /dev/null
+++ b/accessibility/source/standard/floatingwindowaccessible.cxx
@@ -0,0 +1,70 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+
+#include <floatingwindowaccessible.hxx>
+
+
+#include <com/sun/star/accessibility/AccessibleRelationType.hpp>
+#include <unotools/accessiblerelationsethelper.hxx>
+#include <vcl/window.hxx>
+
+namespace uno = ::com::sun::star::uno;
+
+using ::com::sun::star::accessibility::AccessibleRelation;
+namespace AccessibleRelationType = ::com::sun::star::accessibility::AccessibleRelationType;
+
+//-------------------------------------------------------------------
+
+FloatingWindowAccessible::FloatingWindowAccessible(VCLXWindow* pWindow) :
+ VCLXAccessibleComponent(pWindow)
+{
+}
+
+//-------------------------------------------------------------------
+
+FloatingWindowAccessible::~FloatingWindowAccessible()
+{
+}
+
+//-------------------------------------------------------------------
+
+void FloatingWindowAccessible::FillAccessibleRelationSet(utl::AccessibleRelationSetHelper& rRelationSet)
+{
+ Window* pWindow = GetWindow();
+ if ( pWindow )
+ {
+ Window* pParentWindow = pWindow->GetParent();
+ if( pParentWindow )
+ {
+ uno::Sequence< uno::Reference< uno::XInterface > > aSequence(1);
+ aSequence[0] = pParentWindow->GetAccessible();
+ rRelationSet.AddRelation( AccessibleRelation( AccessibleRelationType::SUB_WINDOW_OF, aSequence ) );
+ }
+ }
+}
diff --git a/accessibility/source/standard/makefile.mk b/accessibility/source/standard/makefile.mk
new file mode 100644
index 000000000000..b79d98f659e5
--- /dev/null
+++ b/accessibility/source/standard/makefile.mk
@@ -0,0 +1,78 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJ=..$/..
+
+PRJNAME=accessibility
+TARGET=standard
+
+ENABLE_EXCEPTIONS=TRUE
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+# --- Files --------------------------------------------------------
+
+SLOFILES= \
+ $(SLO)$/accessiblemenubasecomponent.obj \
+ $(SLO)$/accessiblemenucomponent.obj \
+ $(SLO)$/accessiblemenuitemcomponent.obj \
+ $(SLO)$/floatingwindowaccessible.obj \
+ $(SLO)$/vclxaccessiblebox.obj \
+ $(SLO)$/vclxaccessiblebutton.obj \
+ $(SLO)$/vclxaccessiblecheckbox.obj \
+ $(SLO)$/vclxaccessiblecombobox.obj \
+ $(SLO)$/vclxaccessibledropdowncombobox.obj \
+ $(SLO)$/vclxaccessibledropdownlistbox.obj \
+ $(SLO)$/vclxaccessibleedit.obj \
+ $(SLO)$/vclxaccessiblefixedhyperlink.obj \
+ $(SLO)$/vclxaccessiblefixedtext.obj \
+ $(SLO)$/vclxaccessiblelist.obj \
+ $(SLO)$/vclxaccessiblelistbox.obj \
+ $(SLO)$/vclxaccessiblelistitem.obj \
+ $(SLO)$/vclxaccessiblemenu.obj \
+ $(SLO)$/vclxaccessiblemenubar.obj \
+ $(SLO)$/vclxaccessiblemenuitem.obj \
+ $(SLO)$/vclxaccessiblemenuseparator.obj \
+ $(SLO)$/vclxaccessiblepopupmenu.obj \
+ $(SLO)$/vclxaccessibleradiobutton.obj \
+ $(SLO)$/vclxaccessiblescrollbar.obj \
+ $(SLO)$/vclxaccessiblestatusbar.obj \
+ $(SLO)$/vclxaccessiblestatusbaritem.obj \
+ $(SLO)$/vclxaccessibletabcontrol.obj \
+ $(SLO)$/vclxaccessibletabpage.obj \
+ $(SLO)$/vclxaccessibletabpagewindow.obj \
+ $(SLO)$/vclxaccessibletextcomponent.obj \
+ $(SLO)$/vclxaccessibletextfield.obj \
+ $(SLO)$/vclxaccessibletoolbox.obj \
+ $(SLO)$/vclxaccessibletoolboxitem.obj
+
+# --- Targets ------------------------------------------------------
+
+.INCLUDE : target.mk
+
diff --git a/accessibility/source/standard/vclxaccessiblebox.cxx b/accessibility/source/standard/vclxaccessiblebox.cxx
new file mode 100644
index 000000000000..784588938bb8
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessiblebox.cxx
@@ -0,0 +1,374 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/standard/vclxaccessiblebox.hxx>
+#include <accessibility/standard/vclxaccessibletextfield.hxx>
+#include <accessibility/standard/vclxaccessibleedit.hxx>
+#include <accessibility/standard/vclxaccessiblelist.hxx>
+#include <accessibility/standard/vclxaccessiblelistboxlist.hxx>
+#include <accessibility/helper/listboxhelper.hxx>
+
+#include <unotools/accessiblestatesethelper.hxx>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <vcl/svapp.hxx>
+#include <vcl/combobox.hxx>
+#include <vcl/lstbox.hxx>
+#include <accessibility/helper/accresmgr.hxx>
+#include <accessibility/helper/accessiblestrings.hrc>
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::beans;
+using namespace ::com::sun::star::accessibility;
+
+VCLXAccessibleBox::VCLXAccessibleBox (VCLXWindow* pVCLWindow, BoxType aType, bool bIsDropDownBox)
+ : VCLXAccessibleComponent (pVCLWindow),
+ m_aBoxType (aType),
+ m_bIsDropDownBox (bIsDropDownBox),
+ m_nIndexInParent (DEFAULT_INDEX_IN_PARENT)
+{
+ // Set up the flags that indicate which children this object has.
+ m_bHasListChild = true;
+
+ // A text field is not present for non drop down list boxes.
+ if ((m_aBoxType==LISTBOX) && ! m_bIsDropDownBox)
+ m_bHasTextChild = false;
+ else
+ m_bHasTextChild = true;
+}
+
+VCLXAccessibleBox::~VCLXAccessibleBox (void)
+{
+}
+
+void VCLXAccessibleBox::ProcessWindowChildEvent( const VclWindowEvent& rVclWindowEvent )
+{
+ uno::Any aOldValue, aNewValue;
+ uno::Reference<XAccessible> xAcc;
+
+ switch ( rVclWindowEvent.GetId() )
+ {
+ case VCLEVENT_WINDOW_SHOW:
+ case VCLEVENT_WINDOW_HIDE:
+ {
+ Window* pChildWindow = (Window *) rVclWindowEvent.GetData();
+ // Just compare to the combo box text field. All other children
+ // are identical to this object in which case this object will
+ // be removed in a short time.
+ if (m_aBoxType==COMBOBOX)
+ {
+ ComboBox* pComboBox = static_cast<ComboBox*>(GetWindow());
+ if ( ( pComboBox != NULL ) && ( pChildWindow != NULL ) )
+ if (pChildWindow == pComboBox->GetSubEdit())
+ {
+ if (rVclWindowEvent.GetId() == VCLEVENT_WINDOW_SHOW)
+ {
+ // Instantiate text field.
+ getAccessibleChild (0);
+ aNewValue <<= m_xText;
+ }
+ else
+ {
+ // Release text field.
+ aOldValue <<= m_xText;
+ m_xText = NULL;
+ }
+ // Tell the listeners about the new/removed child.
+ NotifyAccessibleEvent (
+ AccessibleEventId::CHILD,
+ aOldValue, aNewValue);
+ }
+
+ }
+ }
+ break;
+
+ default:
+ VCLXAccessibleComponent::ProcessWindowChildEvent (rVclWindowEvent);
+ }
+}
+
+void VCLXAccessibleBox::ProcessWindowEvent (const VclWindowEvent& rVclWindowEvent)
+{
+ switch ( rVclWindowEvent.GetId() )
+ {
+ case VCLEVENT_DROPDOWN_OPEN:
+ case VCLEVENT_DROPDOWN_CLOSE:
+ case VCLEVENT_LISTBOX_DOUBLECLICK:
+ case VCLEVENT_LISTBOX_SCROLLED:
+ case VCLEVENT_LISTBOX_SELECT:
+ case VCLEVENT_LISTBOX_ITEMADDED:
+ case VCLEVENT_LISTBOX_ITEMREMOVED:
+ case VCLEVENT_COMBOBOX_ITEMADDED:
+ case VCLEVENT_COMBOBOX_ITEMREMOVED:
+ case VCLEVENT_COMBOBOX_SCROLLED:
+ {
+ // Forward the call to the list child.
+ VCLXAccessibleList* pList = static_cast<VCLXAccessibleList*>(m_xList.get());
+ if ( pList == NULL )
+ {
+ getAccessibleChild ( m_bHasTextChild ? 1 : 0 );
+ pList = static_cast<VCLXAccessibleList*>(m_xList.get());
+ }
+ if ( pList != NULL )
+ pList->ProcessWindowEvent (rVclWindowEvent);
+ break;
+ }
+
+ case VCLEVENT_COMBOBOX_SELECT:
+ case VCLEVENT_COMBOBOX_DESELECT:
+ {
+ // Selection is handled by VCLXAccessibleList which operates on
+ // the same VCL object as this box does. In case of the
+ // combobox, however, we have to help the list with providing
+ // the text of the currently selected item.
+ VCLXAccessibleList* pList = static_cast<VCLXAccessibleList*>(m_xList.get());
+ if (pList != NULL && m_xText.is())
+ {
+ Reference<XAccessibleText> xText (m_xText->getAccessibleContext(), UNO_QUERY);
+ if ( xText.is() )
+ {
+ ::rtl::OUString sText = xText->getSelectedText();
+ if ( !sText.getLength() )
+ sText = xText->getText();
+ pList->UpdateSelection (sText);
+ }
+ }
+ break;
+ }
+
+ case VCLEVENT_EDIT_MODIFY:
+ case VCLEVENT_EDIT_SELECTIONCHANGED:
+ // Modify/Selection events are handled by the combo box instead of
+ // directly by the edit field (Why?). Therefore, delegate this
+ // call to the edit field.
+ if (m_aBoxType==COMBOBOX)
+ {
+ if (m_xText.is())
+ {
+ Reference<XAccessibleContext> xContext = m_xText->getAccessibleContext();
+ VCLXAccessibleEdit* pEdit = static_cast<VCLXAccessibleEdit*>(xContext.get());
+ if (pEdit != NULL)
+ pEdit->ProcessWindowEvent (rVclWindowEvent);
+ }
+ }
+ break;
+
+ default:
+ VCLXAccessibleComponent::ProcessWindowEvent( rVclWindowEvent );
+ }
+}
+
+IMPLEMENT_FORWARD_XINTERFACE2(VCLXAccessibleBox, VCLXAccessibleComponent, VCLXAccessibleBox_BASE)
+IMPLEMENT_FORWARD_XTYPEPROVIDER2(VCLXAccessibleBox, VCLXAccessibleComponent, VCLXAccessibleBox_BASE)
+
+//===== XAccessible =========================================================
+
+Reference< XAccessibleContext > SAL_CALL VCLXAccessibleBox::getAccessibleContext( )
+ throw (RuntimeException)
+{
+ ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
+
+ return this;
+}
+
+//===== XAccessibleContext ==================================================
+
+sal_Int32 SAL_CALL VCLXAccessibleBox::getAccessibleChildCount (void)
+ throw (RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
+
+ // Usually a box has a text field and a list of items as its children.
+ // Non drop down list boxes have no text field. Additionally check
+ // whether the object is valid.
+ sal_Int32 nCount = 0;
+ if (IsValid())
+ nCount += (m_bHasTextChild?1:0) + (m_bHasListChild?1:0);
+ else
+ {
+ // Object not valid anymore. Release references to children.
+ m_bHasTextChild = false;
+ m_xText = NULL;
+ m_bHasListChild = false;
+ m_xList = NULL;
+ }
+
+ return nCount;
+}
+
+Reference<XAccessible> SAL_CALL VCLXAccessibleBox::getAccessibleChild (sal_Int32 i)
+ throw (IndexOutOfBoundsException, RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
+
+ if (i<0 || i>=getAccessibleChildCount())
+ throw IndexOutOfBoundsException();
+
+ Reference< XAccessible > xChild;
+ if (IsValid())
+ {
+ if (i==1 || ! m_bHasTextChild)
+ {
+ // List.
+ if ( ! m_xList.is())
+ {
+ VCLXAccessibleList* pList = new VCLXAccessibleList ( GetVCLXWindow(),
+ (m_aBoxType == LISTBOX ? VCLXAccessibleList::LISTBOX : VCLXAccessibleList::COMBOBOX),
+ this);
+ pList->SetIndexInParent (i);
+ m_xList = pList;
+ }
+ xChild = m_xList;
+ }
+ else
+ {
+ // Text Field.
+ if ( ! m_xText.is())
+ {
+ if (m_aBoxType==COMBOBOX)
+ {
+ ComboBox* pComboBox = static_cast<ComboBox*>(GetWindow());
+ if (pComboBox!=NULL && pComboBox->GetSubEdit()!=NULL)
+ m_xText = pComboBox->GetSubEdit()->GetAccessible();
+ }
+ else if (m_bIsDropDownBox)
+ m_xText = new VCLXAccessibleTextField (GetVCLXWindow(),this);
+ }
+ xChild = m_xText;
+ }
+ }
+
+ return xChild;
+}
+
+sal_Int16 SAL_CALL VCLXAccessibleBox::getAccessibleRole (void) throw (RuntimeException)
+{
+ ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
+
+ // Return the role <const>COMBO_BOX</const> for both VCL combo boxes and
+ // VCL list boxes in DropDown-Mode else <const>PANEL</const>.
+ // This way the Java bridge has not to handle both independently.
+ return m_bIsDropDownBox ? AccessibleRole::COMBO_BOX : AccessibleRole::PANEL;
+}
+
+sal_Int32 SAL_CALL VCLXAccessibleBox::getAccessibleIndexInParent (void)
+ throw (::com::sun::star::uno::RuntimeException)
+{
+ if (m_nIndexInParent != DEFAULT_INDEX_IN_PARENT)
+ return m_nIndexInParent;
+ else
+ return VCLXAccessibleComponent::getAccessibleIndexInParent();
+}
+
+//===== XAccessibleAction ===================================================
+
+sal_Int32 SAL_CALL VCLXAccessibleBox::getAccessibleActionCount (void)
+ throw (RuntimeException)
+{
+ ::osl::Guard< ::osl::Mutex> aGuard (GetMutex());
+
+ // There is one action for drop down boxes (toggle popup) and none for
+ // the other boxes.
+ return m_bIsDropDownBox ? 1 : 0;
+}
+
+sal_Bool SAL_CALL VCLXAccessibleBox::doAccessibleAction (sal_Int32 nIndex)
+ throw (IndexOutOfBoundsException, RuntimeException)
+{
+ sal_Bool bNotify = sal_False;
+
+ {
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
+
+ if (nIndex<0 || nIndex>=getAccessibleActionCount())
+ throw ::com::sun::star::lang::IndexOutOfBoundsException();
+
+ if (m_aBoxType == COMBOBOX)
+ {
+ ComboBox* pComboBox = static_cast< ComboBox* >( GetWindow() );
+ if (pComboBox != NULL)
+ {
+ pComboBox->ToggleDropDown();
+ bNotify = sal_True;
+ }
+ }
+ else if (m_aBoxType == LISTBOX)
+ {
+ ListBox* pListBox = static_cast< ListBox* >( GetWindow() );
+ if (pListBox != NULL)
+ {
+ pListBox->ToggleDropDown();
+ bNotify = sal_True;
+ }
+ }
+ }
+
+ if (bNotify)
+ NotifyAccessibleEvent (AccessibleEventId::ACTION_CHANGED, Any(), Any());
+
+ return bNotify;
+}
+
+::rtl::OUString SAL_CALL VCLXAccessibleBox::getAccessibleActionDescription (sal_Int32 nIndex)
+ throw (IndexOutOfBoundsException, RuntimeException)
+{
+ ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
+ if (nIndex<0 || nIndex>=getAccessibleActionCount())
+ throw ::com::sun::star::lang::IndexOutOfBoundsException();
+ return TK_RES_STRING( RID_STR_ACC_ACTION_TOGGLEPOPUP);
+}
+
+Reference< XAccessibleKeyBinding > VCLXAccessibleBox::getAccessibleActionKeyBinding( sal_Int32 nIndex )
+ throw (IndexOutOfBoundsException, RuntimeException)
+{
+ ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
+
+ Reference< XAccessibleKeyBinding > xRet;
+
+ if (nIndex<0 || nIndex>=getAccessibleActionCount())
+ throw ::com::sun::star::lang::IndexOutOfBoundsException();
+
+ // ... which key?
+ return xRet;
+}
+
+//===== XComponent ==========================================================
+
+void SAL_CALL VCLXAccessibleBox::disposing (void)
+{
+ VCLXAccessibleComponent::disposing();
+}
+
diff --git a/accessibility/source/standard/vclxaccessiblebutton.cxx b/accessibility/source/standard/vclxaccessiblebutton.cxx
new file mode 100644
index 000000000000..690babdf5c41
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessiblebutton.cxx
@@ -0,0 +1,326 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+
+// includes --------------------------------------------------------------
+#include <accessibility/standard/vclxaccessiblebutton.hxx>
+#include <accessibility/helper/accresmgr.hxx>
+#include <accessibility/helper/accessiblestrings.hrc>
+
+#include <unotools/accessiblestatesethelper.hxx>
+#include <comphelper/accessiblekeybindinghelper.hxx>
+#include <com/sun/star/awt/KeyModifier.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <cppuhelper/typeprovider.hxx>
+#include <comphelper/sequence.hxx>
+
+#include <vcl/button.hxx>
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::beans;
+using namespace ::com::sun::star::accessibility;
+using namespace ::comphelper;
+
+
+// -----------------------------------------------------------------------------
+// VCLXAccessibleButton
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleButton::VCLXAccessibleButton( VCLXWindow* pVCLWindow )
+ :VCLXAccessibleTextComponent( pVCLWindow )
+{
+}
+
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleButton::~VCLXAccessibleButton()
+{
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleButton::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
+{
+ switch ( rVclWindowEvent.GetId() )
+ {
+ case VCLEVENT_PUSHBUTTON_TOGGLE:
+ {
+ Any aOldValue;
+ Any aNewValue;
+
+ PushButton* pButton = (PushButton*) GetWindow();
+ if ( pButton && pButton->GetState() == STATE_CHECK )
+ aNewValue <<= AccessibleStateType::CHECKED;
+ else
+ aOldValue <<= AccessibleStateType::CHECKED;
+
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ }
+ break;
+ default:
+ VCLXAccessibleTextComponent::ProcessWindowEvent( rVclWindowEvent );
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleButton::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
+{
+ VCLXAccessibleTextComponent::FillAccessibleStateSet( rStateSet );
+
+ PushButton* pButton = (PushButton*) GetWindow();
+ if ( pButton )
+ {
+ rStateSet.AddState( AccessibleStateType::FOCUSABLE );
+
+ if ( pButton->GetState() == STATE_CHECK )
+ rStateSet.AddState( AccessibleStateType::CHECKED );
+
+ if ( pButton->IsPressed() )
+ rStateSet.AddState( AccessibleStateType::PRESSED );
+ }
+}
+
+// -----------------------------------------------------------------------------
+// XInterface
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XINTERFACE2( VCLXAccessibleButton, VCLXAccessibleTextComponent, VCLXAccessibleButton_BASE )
+
+// -----------------------------------------------------------------------------
+// XTypeProvider
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleButton, VCLXAccessibleTextComponent, VCLXAccessibleButton_BASE )
+
+// -----------------------------------------------------------------------------
+// XServiceInfo
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleButton::getImplementationName() throw (RuntimeException)
+{
+ return ::rtl::OUString::createFromAscii( "com.sun.star.comp.toolkit.AccessibleButton" );
+}
+
+// -----------------------------------------------------------------------------
+
+Sequence< ::rtl::OUString > VCLXAccessibleButton::getSupportedServiceNames() throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames(1);
+ aNames[0] = ::rtl::OUString::createFromAscii( "com.sun.star.awt.AccessibleButton" );
+ return aNames;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleContext
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleButton::getAccessibleName( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ ::rtl::OUString aName( VCLXAccessibleTextComponent::getAccessibleName() );
+ sal_Int32 nLength = aName.getLength();
+
+ if ( nLength >= 3 && aName.matchAsciiL( RTL_CONSTASCII_STRINGPARAM("..."), nLength - 3 ) )
+ {
+ if ( nLength == 3 )
+ {
+ // it's a browse button
+ aName = ::rtl::OUString( TK_RES_STRING( RID_STR_ACC_NAME_BROWSEBUTTON ) );
+ }
+ else
+ {
+ // remove the three trailing dots
+ aName = aName.copy( 0, nLength - 3 );
+ }
+ }
+ else if ( nLength >= 3 && aName.matchAsciiL( RTL_CONSTASCII_STRINGPARAM("<< "), 0 ) )
+ {
+ // remove the leading symbols
+ aName = aName.copy( 3, nLength - 3 );
+ }
+ else if ( nLength >= 3 && aName.matchAsciiL( RTL_CONSTASCII_STRINGPARAM(" >>"), nLength - 3 ) )
+ {
+ // remove the trailing symbols
+ aName = aName.copy( 0, nLength - 3 );
+ }
+
+ return aName;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleAction
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleButton::getAccessibleActionCount( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return 1;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleButton::doAccessibleAction ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
+ throw IndexOutOfBoundsException();
+
+ PushButton* pButton = (PushButton*) GetWindow();
+ if ( pButton )
+ pButton->Click();
+
+ return sal_True;
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleButton::getAccessibleActionDescription ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
+ throw IndexOutOfBoundsException();
+
+ return ::rtl::OUString( TK_RES_STRING( RID_STR_ACC_ACTION_CLICK ) );
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessibleKeyBinding > VCLXAccessibleButton::getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
+ throw IndexOutOfBoundsException();
+
+ OAccessibleKeyBindingHelper* pKeyBindingHelper = new OAccessibleKeyBindingHelper();
+ Reference< XAccessibleKeyBinding > xKeyBinding = pKeyBindingHelper;
+
+ Window* pWindow = GetWindow();
+ if ( pWindow )
+ {
+ KeyEvent aKeyEvent = pWindow->GetActivationKey();
+ KeyCode aKeyCode = aKeyEvent.GetKeyCode();
+ if ( aKeyCode.GetCode() != 0 )
+ {
+ awt::KeyStroke aKeyStroke;
+ aKeyStroke.Modifiers = 0;
+ if ( aKeyCode.IsShift() )
+ aKeyStroke.Modifiers |= awt::KeyModifier::SHIFT;
+ if ( aKeyCode.IsMod1() )
+ aKeyStroke.Modifiers |= awt::KeyModifier::MOD1;
+ if ( aKeyCode.IsMod2() )
+ aKeyStroke.Modifiers |= awt::KeyModifier::MOD2;
+ if ( aKeyCode.IsMod3() )
+ aKeyStroke.Modifiers |= awt::KeyModifier::MOD3;
+ aKeyStroke.KeyCode = aKeyCode.GetCode();
+ aKeyStroke.KeyChar = aKeyEvent.GetCharCode();
+ aKeyStroke.KeyFunc = static_cast< sal_Int16 >( aKeyCode.GetFunction() );
+ pKeyBindingHelper->AddKeyBinding( aKeyStroke );
+ }
+ }
+
+ return xKeyBinding;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleValue
+// -----------------------------------------------------------------------------
+
+Any VCLXAccessibleButton::getCurrentValue( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Any aValue;
+
+ PushButton* pButton = (PushButton*) GetWindow();
+ if ( pButton )
+ aValue <<= (sal_Int32) pButton->IsPressed();
+
+ return aValue;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleButton::setCurrentValue( const Any& aNumber ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Bool bReturn = sal_False;
+
+ PushButton* pButton = (PushButton*) GetWindow();
+ if ( pButton )
+ {
+ sal_Int32 nValue = 0;
+ OSL_VERIFY( aNumber >>= nValue );
+
+ if ( nValue < 0 )
+ nValue = 0;
+ else if ( nValue > 1 )
+ nValue = 1;
+
+ pButton->SetPressed( (BOOL) nValue );
+ bReturn = sal_True;
+ }
+
+ return bReturn;
+}
+
+// -----------------------------------------------------------------------------
+
+Any VCLXAccessibleButton::getMaximumValue( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Any aValue;
+ aValue <<= (sal_Int32) 1;
+
+ return aValue;
+}
+
+// -----------------------------------------------------------------------------
+
+Any VCLXAccessibleButton::getMinimumValue( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Any aValue;
+ aValue <<= (sal_Int32) 0;
+
+ return aValue;
+}
+
+// -----------------------------------------------------------------------------
diff --git a/accessibility/source/standard/vclxaccessiblecheckbox.cxx b/accessibility/source/standard/vclxaccessiblecheckbox.cxx
new file mode 100644
index 000000000000..18a7be8bf810
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessiblecheckbox.cxx
@@ -0,0 +1,361 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+
+// includes --------------------------------------------------------------
+#include <accessibility/standard/vclxaccessiblecheckbox.hxx>
+
+#include <toolkit/awt/vclxwindows.hxx>
+#include <accessibility/helper/accresmgr.hxx>
+#include <accessibility/helper/accessiblestrings.hrc>
+
+#include <unotools/accessiblestatesethelper.hxx>
+#include <comphelper/accessiblekeybindinghelper.hxx>
+#include <com/sun/star/awt/KeyModifier.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <cppuhelper/typeprovider.hxx>
+#include <comphelper/sequence.hxx>
+
+#include <vcl/button.hxx>
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::beans;
+using namespace ::com::sun::star::accessibility;
+using namespace ::comphelper;
+
+
+// -----------------------------------------------------------------------------
+// VCLXAccessibleCheckBox
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleCheckBox::VCLXAccessibleCheckBox( VCLXWindow* pVCLWindow )
+ :VCLXAccessibleTextComponent( pVCLWindow )
+{
+ m_bChecked = IsChecked();
+ m_bIndeterminate = IsIndeterminate();
+}
+
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleCheckBox::~VCLXAccessibleCheckBox()
+{
+}
+
+// -----------------------------------------------------------------------------
+
+bool VCLXAccessibleCheckBox::IsChecked()
+{
+ bool bChecked = false;
+
+ VCLXCheckBox* pVCLXCheckBox = static_cast< VCLXCheckBox* >( GetVCLXWindow() );
+ if ( pVCLXCheckBox && pVCLXCheckBox->getState() == (sal_Int16) 1 )
+ bChecked = true;
+
+ return bChecked;
+}
+
+// -----------------------------------------------------------------------------
+
+bool VCLXAccessibleCheckBox::IsIndeterminate()
+{
+ bool bIndeterminate = false;
+
+ VCLXCheckBox* pVCLXCheckBox = static_cast< VCLXCheckBox* >( GetVCLXWindow() );
+ if ( pVCLXCheckBox && pVCLXCheckBox->getState() == (sal_Int16) 2 )
+ bIndeterminate = true;
+
+ return bIndeterminate;
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleCheckBox::SetChecked( bool bChecked )
+{
+ if ( m_bChecked != bChecked )
+ {
+ Any aOldValue, aNewValue;
+ if ( m_bChecked )
+ aOldValue <<= AccessibleStateType::CHECKED;
+ else
+ aNewValue <<= AccessibleStateType::CHECKED;
+ m_bChecked = bChecked;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleCheckBox::SetIndeterminate( bool bIndeterminate )
+{
+ if ( m_bIndeterminate != bIndeterminate )
+ {
+ Any aOldValue, aNewValue;
+ if ( m_bIndeterminate )
+ aOldValue <<= AccessibleStateType::INDETERMINATE;
+ else
+ aNewValue <<= AccessibleStateType::INDETERMINATE;
+ m_bIndeterminate = bIndeterminate;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleCheckBox::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
+{
+ switch ( rVclWindowEvent.GetId() )
+ {
+ case VCLEVENT_CHECKBOX_TOGGLE:
+ {
+ SetChecked( IsChecked() );
+ SetIndeterminate( IsIndeterminate() );
+ }
+ break;
+ default:
+ VCLXAccessibleTextComponent::ProcessWindowEvent( rVclWindowEvent );
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleCheckBox::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
+{
+ VCLXAccessibleTextComponent::FillAccessibleStateSet( rStateSet );
+
+ rStateSet.AddState( AccessibleStateType::FOCUSABLE );
+
+ if ( IsChecked() )
+ rStateSet.AddState( AccessibleStateType::CHECKED );
+
+ if ( IsIndeterminate() )
+ rStateSet.AddState( AccessibleStateType::INDETERMINATE );
+}
+
+// -----------------------------------------------------------------------------
+// XInterface
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XINTERFACE2( VCLXAccessibleCheckBox, VCLXAccessibleTextComponent, VCLXAccessibleCheckBox_BASE )
+
+// -----------------------------------------------------------------------------
+// XTypeProvider
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleCheckBox, VCLXAccessibleTextComponent, VCLXAccessibleCheckBox_BASE )
+
+// -----------------------------------------------------------------------------
+// XServiceInfo
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleCheckBox::getImplementationName() throw (RuntimeException)
+{
+ return ::rtl::OUString::createFromAscii( "com.sun.star.comp.toolkit.AccessibleCheckBox" );
+}
+
+// -----------------------------------------------------------------------------
+
+Sequence< ::rtl::OUString > VCLXAccessibleCheckBox::getSupportedServiceNames() throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames(1);
+ aNames[0] = ::rtl::OUString::createFromAscii( "com.sun.star.awt.AccessibleCheckBox" );
+ return aNames;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleAction
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleCheckBox::getAccessibleActionCount( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return 1;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleCheckBox::doAccessibleAction ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
+ throw IndexOutOfBoundsException();
+
+ CheckBox* pCheckBox = (CheckBox*) GetWindow();
+ VCLXCheckBox* pVCLXCheckBox = static_cast< VCLXCheckBox* >( GetVCLXWindow() );
+ if ( pCheckBox && pVCLXCheckBox )
+ {
+ sal_Int32 nValueMin = (sal_Int32) 0;
+ sal_Int32 nValueMax = (sal_Int32) 1;
+
+ if ( pCheckBox->IsTriStateEnabled() )
+ nValueMax = (sal_Int32) 2;
+
+ sal_Int32 nValue = (sal_Int32) pVCLXCheckBox->getState();
+
+ ++nValue;
+
+ if ( nValue > nValueMax )
+ nValue = nValueMin;
+
+ pVCLXCheckBox->setState( (sal_Int16) nValue );
+ }
+
+ return sal_True;
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleCheckBox::getAccessibleActionDescription ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
+ throw IndexOutOfBoundsException();
+
+ return ::rtl::OUString( TK_RES_STRING( RID_STR_ACC_ACTION_CLICK ) );
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessibleKeyBinding > VCLXAccessibleCheckBox::getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
+ throw IndexOutOfBoundsException();
+
+ OAccessibleKeyBindingHelper* pKeyBindingHelper = new OAccessibleKeyBindingHelper();
+ Reference< XAccessibleKeyBinding > xKeyBinding = pKeyBindingHelper;
+
+ Window* pWindow = GetWindow();
+ if ( pWindow )
+ {
+ KeyEvent aKeyEvent = pWindow->GetActivationKey();
+ KeyCode aKeyCode = aKeyEvent.GetKeyCode();
+ if ( aKeyCode.GetCode() != 0 )
+ {
+ awt::KeyStroke aKeyStroke;
+ aKeyStroke.Modifiers = 0;
+ if ( aKeyCode.IsShift() )
+ aKeyStroke.Modifiers |= awt::KeyModifier::SHIFT;
+ if ( aKeyCode.IsMod1() )
+ aKeyStroke.Modifiers |= awt::KeyModifier::MOD1;
+ if ( aKeyCode.IsMod2() )
+ aKeyStroke.Modifiers |= awt::KeyModifier::MOD2;
+ if ( aKeyCode.IsMod3() )
+ aKeyStroke.Modifiers |= awt::KeyModifier::MOD3;
+ aKeyStroke.KeyCode = aKeyCode.GetCode();
+ aKeyStroke.KeyChar = aKeyEvent.GetCharCode();
+ aKeyStroke.KeyFunc = static_cast< sal_Int16 >( aKeyCode.GetFunction() );
+ pKeyBindingHelper->AddKeyBinding( aKeyStroke );
+ }
+ }
+
+ return xKeyBinding;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleValue
+// -----------------------------------------------------------------------------
+
+Any VCLXAccessibleCheckBox::getCurrentValue( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Any aValue;
+
+ VCLXCheckBox* pVCLXCheckBox = static_cast< VCLXCheckBox* >( GetVCLXWindow() );
+ if ( pVCLXCheckBox )
+ aValue <<= (sal_Int32) pVCLXCheckBox->getState();
+
+ return aValue;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleCheckBox::setCurrentValue( const Any& aNumber ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Bool bReturn = sal_False;
+
+ VCLXCheckBox* pVCLXCheckBox = static_cast< VCLXCheckBox* >( GetVCLXWindow() );
+ if ( pVCLXCheckBox )
+ {
+ sal_Int32 nValue = 0, nValueMin = 0, nValueMax = 0;
+ OSL_VERIFY( aNumber >>= nValue );
+ OSL_VERIFY( getMinimumValue() >>= nValueMin );
+ OSL_VERIFY( getMaximumValue() >>= nValueMax );
+
+ if ( nValue < nValueMin )
+ nValue = nValueMin;
+ else if ( nValue > nValueMax )
+ nValue = nValueMax;
+
+ pVCLXCheckBox->setState( (sal_Int16) nValue );
+ bReturn = sal_True;
+ }
+
+ return bReturn;
+}
+
+// -----------------------------------------------------------------------------
+
+Any VCLXAccessibleCheckBox::getMaximumValue( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Any aValue;
+
+ CheckBox* pCheckBox = (CheckBox*) GetWindow();
+ if ( pCheckBox && pCheckBox->IsTriStateEnabled() )
+ aValue <<= (sal_Int32) 2;
+ else
+ aValue <<= (sal_Int32) 1;
+
+ return aValue;
+}
+
+// -----------------------------------------------------------------------------
+
+Any VCLXAccessibleCheckBox::getMinimumValue( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Any aValue;
+ aValue <<= (sal_Int32) 0;
+
+ return aValue;
+}
+
+// -----------------------------------------------------------------------------
diff --git a/accessibility/source/standard/vclxaccessiblecombobox.cxx b/accessibility/source/standard/vclxaccessiblecombobox.cxx
new file mode 100644
index 000000000000..9ac9a13591e1
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessiblecombobox.cxx
@@ -0,0 +1,96 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/standard/vclxaccessiblecombobox.hxx>
+#include <accessibility/standard/vclxaccessiblelist.hxx>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <vcl/svapp.hxx>
+#include <vcl/combobox.hxx>
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::beans;
+using namespace ::com::sun::star::accessibility;
+
+
+VCLXAccessibleComboBox::VCLXAccessibleComboBox (VCLXWindow* pVCLWindow)
+ : VCLXAccessibleBox (pVCLWindow, VCLXAccessibleBox::COMBOBOX, false)
+{
+}
+
+
+
+
+VCLXAccessibleComboBox::~VCLXAccessibleComboBox (void)
+{
+}
+
+
+
+
+bool VCLXAccessibleComboBox::IsValid (void) const
+{
+ return static_cast<ComboBox*>(GetWindow()) != NULL;
+
+}
+
+
+
+
+void VCLXAccessibleComboBox::ProcessWindowEvent (const VclWindowEvent& rVclWindowEvent)
+{
+ VCLXAccessibleBox::ProcessWindowEvent( rVclWindowEvent );
+}
+
+
+
+
+//===== XServiceInfo ========================================================
+
+::rtl::OUString VCLXAccessibleComboBox::getImplementationName (void)
+ throw (RuntimeException)
+{
+ return ::rtl::OUString::createFromAscii ("com.sun.star.comp.toolkit.AccessibleComboBox");
+}
+
+
+
+
+Sequence< ::rtl::OUString > VCLXAccessibleComboBox::getSupportedServiceNames (void)
+ throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames = VCLXAccessibleBox::getSupportedServiceNames();
+ sal_Int32 nLength = aNames.getLength();
+ aNames.realloc( nLength + 1 );
+ aNames[nLength] = ::rtl::OUString::createFromAscii(
+ "com.sun.star.accessibility.AccessibleComboBox" );
+ return aNames;
+}
diff --git a/accessibility/source/standard/vclxaccessibledropdowncombobox.cxx b/accessibility/source/standard/vclxaccessibledropdowncombobox.cxx
new file mode 100644
index 000000000000..f396ff422947
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessibledropdowncombobox.cxx
@@ -0,0 +1,142 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/standard/vclxaccessibledropdowncombobox.hxx>
+#include <accessibility/standard/vclxaccessiblecombobox.hxx>
+#include <accessibility/standard/vclxaccessibletextfield.hxx>
+#include <accessibility/standard/vclxaccessiblelist.hxx>
+#include <accessibility/helper/accresmgr.hxx>
+#include <accessibility/helper/accessiblestrings.hrc>
+
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <tools/debug.hxx>
+#include <vcl/svapp.hxx>
+#include <vcl/combobox.hxx>
+#include <vcl/unohelp.hxx>
+
+#include <toolkit/awt/vclxwindow.hxx>
+#include <toolkit/helper/convert.hxx>
+
+#include <comphelper/sequence.hxx>
+#include <cppuhelper/typeprovider.hxx>
+#include <unotools/accessiblestatesethelper.hxx>
+
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::accessibility;
+
+
+VCLXAccessibleDropDownComboBox::VCLXAccessibleDropDownComboBox (VCLXWindow* pVCLWindow)
+ : VCLXAccessibleBox (pVCLWindow, VCLXAccessibleBox::COMBOBOX, true)
+{
+}
+
+
+
+
+VCLXAccessibleDropDownComboBox::~VCLXAccessibleDropDownComboBox (void)
+{
+}
+
+
+
+bool VCLXAccessibleDropDownComboBox::IsValid (void) const
+{
+ return static_cast<ComboBox*>(GetWindow()) != NULL;
+
+}
+
+
+
+
+void VCLXAccessibleDropDownComboBox::ProcessWindowEvent (const VclWindowEvent& rVclWindowEvent)
+{
+ switch ( rVclWindowEvent.GetId() )
+ {
+ case VCLEVENT_DROPDOWN_OPEN:
+ case VCLEVENT_DROPDOWN_CLOSE:
+ {
+ /* // child count changed
+ Any aOldValue, aNewValue;
+ // get the listbox child
+ Reference< XAccessible > xChild;
+ if ( !xChild.is() )
+ {
+ try
+ {
+ // the listbox is the second child
+ xChild = getAccessibleChild(1);
+ }
+ catch ( IndexOutOfBoundsException& ) {}
+ catch ( RuntimeException& ) {}
+ }
+ if ( rVclWindowEvent.GetId() == VCLEVENT_DROPDOWN_OPEN )
+ aNewValue <<= xChild;
+ else
+ aOldValue <<= xChild;
+ NotifyAccessibleEvent(
+ AccessibleEventId::CHILD, aOldValue, aNewValue
+ );
+ */
+ break;
+ }
+
+ default:
+ VCLXAccessibleBox::ProcessWindowEvent( rVclWindowEvent );
+ }
+}
+
+
+
+
+//===== XServiceInfo ========================================================
+
+::rtl::OUString VCLXAccessibleDropDownComboBox::getImplementationName()
+ throw (RuntimeException)
+{
+ return ::rtl::OUString::createFromAscii("com.sun.star.comp.toolkit.AccessibleDropDownComboBox");
+}
+
+
+
+
+Sequence< ::rtl::OUString > VCLXAccessibleDropDownComboBox::getSupportedServiceNames (void)
+ throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames = VCLXAccessibleBox::getSupportedServiceNames();
+ sal_Int32 nLength = aNames.getLength();
+ aNames.realloc( nLength + 1 );
+ aNames[nLength] = ::rtl::OUString::createFromAscii(
+ "com.sun.star.accessibility.AccessibleDropDownComboBox" );
+ return aNames;
+}
diff --git a/accessibility/source/standard/vclxaccessibledropdownlistbox.cxx b/accessibility/source/standard/vclxaccessibledropdownlistbox.cxx
new file mode 100644
index 000000000000..4d08d40245fb
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessibledropdownlistbox.cxx
@@ -0,0 +1,110 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+
+#include <accessibility/standard/vclxaccessibledropdownlistbox.hxx>
+#include <accessibility/standard/vclxaccessiblelistbox.hxx>
+#include <accessibility/helper/accresmgr.hxx>
+#include <accessibility/helper/accessiblestrings.hrc>
+
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <tools/debug.hxx>
+#include <vcl/svapp.hxx>
+#include <vcl/lstbox.hxx>
+#include <vcl/unohelp.hxx>
+
+#include <toolkit/awt/vclxwindow.hxx>
+#include <toolkit/helper/convert.hxx>
+
+#include <comphelper/sequence.hxx>
+#include <cppuhelper/typeprovider.hxx>
+#include <unotools/accessiblestatesethelper.hxx>
+
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::accessibility;
+
+
+VCLXAccessibleDropDownListBox::VCLXAccessibleDropDownListBox (VCLXWindow* pVCLWindow)
+ : VCLXAccessibleBox (pVCLWindow, VCLXAccessibleBox::LISTBOX, true)
+{
+}
+
+
+
+
+VCLXAccessibleDropDownListBox::~VCLXAccessibleDropDownListBox()
+{
+}
+
+
+
+
+bool VCLXAccessibleDropDownListBox::IsValid (void) const
+{
+ return static_cast<ListBox*>(GetWindow()) != NULL;
+
+}
+
+
+
+
+void VCLXAccessibleDropDownListBox::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
+{
+ VCLXAccessibleBox::ProcessWindowEvent (rVclWindowEvent);
+}
+
+
+
+
+//===== XServiceInfo ========================================================
+
+::rtl::OUString VCLXAccessibleDropDownListBox::getImplementationName()
+ throw (RuntimeException)
+{
+ return ::rtl::OUString::createFromAscii("com.sun.star.comp.toolkit.AccessibleDropDownListBox");
+}
+
+
+
+
+Sequence< ::rtl::OUString > VCLXAccessibleDropDownListBox::getSupportedServiceNames (void)
+ throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames = VCLXAccessibleBox::getSupportedServiceNames();
+ sal_Int32 nLength = aNames.getLength();
+ aNames.realloc( nLength + 1 );
+ aNames[nLength] = ::rtl::OUString::createFromAscii(
+ "com.sun.star.accessibility.AccessibleDropDownListBox" );
+ return aNames;
+}
diff --git a/accessibility/source/standard/vclxaccessibleedit.cxx b/accessibility/source/standard/vclxaccessibleedit.cxx
new file mode 100644
index 000000000000..07378c0ea42f
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessibleedit.cxx
@@ -0,0 +1,626 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+
+// includes --------------------------------------------------------------
+#include <accessibility/standard/vclxaccessibleedit.hxx>
+
+#include <toolkit/awt/vclxwindows.hxx>
+#include <toolkit/helper/convert.hxx>
+#include <accessibility/helper/accresmgr.hxx>
+#include <accessibility/helper/accessiblestrings.hrc>
+
+#include <unotools/accessiblestatesethelper.hxx>
+#include <unotools/accessiblerelationsethelper.hxx>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/datatransfer/clipboard/XClipboard.hpp>
+#include <cppuhelper/typeprovider.hxx>
+#include <comphelper/sequence.hxx>
+#include <vcl/svapp.hxx>
+#include <vcl/window.hxx>
+#include <vcl/edit.hxx>
+#include <sot/exchange.hxx>
+#include <sot/formats.hxx>
+
+#include <algorithm>
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::beans;
+using namespace ::com::sun::star::accessibility;
+using namespace ::comphelper;
+
+
+// -----------------------------------------------------------------------------
+// VCLXAccessibleEdit
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleEdit::VCLXAccessibleEdit( VCLXWindow* pVCLWindow )
+ :VCLXAccessibleTextComponent( pVCLWindow )
+{
+ m_nSelectionStart = getSelectionStart();
+ m_nCaretPosition = getCaretPosition();
+}
+
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleEdit::~VCLXAccessibleEdit()
+{
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleEdit::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
+{
+ switch ( rVclWindowEvent.GetId() )
+ {
+ case VCLEVENT_EDIT_MODIFY:
+ {
+ SetText( implGetText() );
+ }
+ break;
+ case VCLEVENT_EDIT_SELECTIONCHANGED:
+ {
+ sal_Int32 nOldCaretPosition = m_nCaretPosition;
+ sal_Int32 nOldSelectionStart = m_nSelectionStart;
+
+ m_nCaretPosition = getCaretPosition();
+ m_nSelectionStart = getSelectionStart();
+
+ Window* pWindow = GetWindow();
+ if ( pWindow && pWindow->HasChildPathFocus() )
+ {
+ if ( m_nCaretPosition != nOldCaretPosition )
+ {
+ Any aOldValue, aNewValue;
+ aOldValue <<= (sal_Int32) nOldCaretPosition;
+ aNewValue <<= (sal_Int32) m_nCaretPosition;
+ NotifyAccessibleEvent( AccessibleEventId::CARET_CHANGED, aOldValue, aNewValue );
+ }
+
+ // #i104470# VCL only has SELECTION_CHANGED, but UAA distinguishes between SELECTION_CHANGED and CARET_CHANGED
+ sal_Bool bHasSelection = ( m_nSelectionStart != m_nCaretPosition );
+ sal_Bool bHadSelection = ( nOldSelectionStart != nOldCaretPosition );
+ if ( ( bHasSelection != bHadSelection ) || ( bHasSelection && ( ( m_nCaretPosition != nOldCaretPosition ) || ( m_nSelectionStart != nOldSelectionStart ) ) ) )
+ {
+ NotifyAccessibleEvent( AccessibleEventId::TEXT_SELECTION_CHANGED, Any(), Any() );
+ }
+
+ }
+ }
+ break;
+ default:
+ VCLXAccessibleTextComponent::ProcessWindowEvent( rVclWindowEvent );
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleEdit::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
+{
+ VCLXAccessibleTextComponent::FillAccessibleStateSet( rStateSet );
+
+ VCLXEdit* pVCLXEdit = static_cast< VCLXEdit* >( GetVCLXWindow() );
+ if ( pVCLXEdit )
+ {
+ rStateSet.AddState( AccessibleStateType::FOCUSABLE );
+ rStateSet.AddState( AccessibleStateType::SINGLE_LINE );
+ if ( pVCLXEdit->isEditable() )
+ rStateSet.AddState( AccessibleStateType::EDITABLE );
+ }
+}
+
+// -----------------------------------------------------------------------------
+// OCommonAccessibleText
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleEdit::implGetText()
+{
+ ::rtl::OUString aText;
+
+ Edit* pEdit = static_cast< Edit* >( GetWindow() );
+ if ( pEdit )
+ {
+ aText = OutputDevice::GetNonMnemonicString( pEdit->GetText() );
+
+ if ( getAccessibleRole() == AccessibleRole::PASSWORD_TEXT )
+ {
+ xub_Unicode cEchoChar = pEdit->GetEchoChar();
+ if ( !cEchoChar )
+ cEchoChar = '*';
+ XubString sTmp;
+ aText = sTmp.Fill( (USHORT)aText.getLength(), cEchoChar );
+ }
+ }
+
+ return aText;
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleEdit::implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex )
+{
+ awt::Selection aSelection;
+ VCLXEdit* pVCLXEdit = static_cast< VCLXEdit* >( GetVCLXWindow() );
+ if ( pVCLXEdit )
+ aSelection = pVCLXEdit->getSelection();
+
+ nStartIndex = aSelection.Min;
+ nEndIndex = aSelection.Max;
+}
+
+// -----------------------------------------------------------------------------
+// XInterface
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XINTERFACE2( VCLXAccessibleEdit, VCLXAccessibleTextComponent, VCLXAccessibleEdit_BASE )
+
+// -----------------------------------------------------------------------------
+// XTypeProvider
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleEdit, VCLXAccessibleTextComponent, VCLXAccessibleEdit_BASE )
+
+// -----------------------------------------------------------------------------
+// XServiceInfo
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleEdit::getImplementationName() throw (RuntimeException)
+{
+ return ::rtl::OUString::createFromAscii( "com.sun.star.comp.toolkit.AccessibleEdit" );
+}
+
+// -----------------------------------------------------------------------------
+
+Sequence< ::rtl::OUString > VCLXAccessibleEdit::getSupportedServiceNames() throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames(1);
+ aNames[0] = ::rtl::OUString::createFromAscii( "com.sun.star.awt.AccessibleEdit" );
+ return aNames;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleContext
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleEdit::getAccessibleChildCount() throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return 0;
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > VCLXAccessibleEdit::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( i < 0 || i >= getAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+
+ return Reference< XAccessible >();
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int16 VCLXAccessibleEdit::getAccessibleRole( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Int16 nRole;
+ Edit* pEdit = static_cast< Edit* >( GetWindow() );
+ if ( pEdit && ( ( pEdit->GetStyle() & WB_PASSWORD ) || pEdit->GetEchoChar() ) )
+ nRole = AccessibleRole::PASSWORD_TEXT;
+ else
+ nRole = AccessibleRole::TEXT;
+
+ return nRole;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleAction
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleEdit::getAccessibleActionCount( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ // There is one action: activate
+ return 1;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleEdit::doAccessibleAction ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
+ throw IndexOutOfBoundsException();
+
+ sal_Bool bDoAction = sal_False;
+ Window* pWindow = GetWindow();
+ if ( pWindow )
+ {
+ pWindow->GrabFocus();
+ bDoAction = sal_True;
+ }
+
+ return bDoAction;
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleEdit::getAccessibleActionDescription ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
+ throw IndexOutOfBoundsException();
+
+ static const ::rtl::OUString sAction( RTL_CONSTASCII_USTRINGPARAM( "activate" ) );
+ return sAction;
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessibleKeyBinding > VCLXAccessibleEdit::getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
+ throw IndexOutOfBoundsException();
+
+ return Reference< XAccessibleKeyBinding >();
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleText
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleEdit::getCaretPosition( ) throw (RuntimeException)
+{
+ return getSelectionEnd();
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleEdit::setCaretPosition( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ return setSelection( nIndex, nIndex );
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Unicode VCLXAccessibleEdit::getCharacter( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return VCLXAccessibleTextComponent::getCharacter( nIndex );
+}
+
+// -----------------------------------------------------------------------------
+
+Sequence< PropertyValue > VCLXAccessibleEdit::getCharacterAttributes( sal_Int32 nIndex, const Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return VCLXAccessibleTextComponent::getCharacterAttributes( nIndex, aRequestedAttributes );
+}
+
+// -----------------------------------------------------------------------------
+
+awt::Rectangle VCLXAccessibleEdit::getCharacterBounds( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ awt::Rectangle aBounds( 0, 0, 0, 0 );
+ sal_Int32 nLength = implGetText().getLength();
+
+ if ( !implIsValidRange( nIndex, nIndex, nLength ) )
+ throw IndexOutOfBoundsException();
+
+ Control* pControl = static_cast< Control* >( GetWindow() );
+ if ( pControl )
+ {
+ if ( nIndex == nLength )
+ {
+ // #108914# calculate virtual bounding rectangle
+ for ( sal_Int32 i = 0; i < nLength; ++i )
+ {
+ Rectangle aRect = pControl->GetCharacterBounds( i );
+ sal_Int32 nHeight = aRect.GetHeight();
+ if ( aBounds.Height < nHeight )
+ {
+ aBounds.Y = aRect.Top();
+ aBounds.Height = nHeight;
+ }
+ if ( i == nLength - 1 )
+ {
+ aBounds.X = aRect.Right() + 1;
+ aBounds.Width = 1;
+ }
+ }
+ }
+ else
+ {
+ aBounds = AWTRectangle( pControl->GetCharacterBounds( nIndex ) );
+ }
+ }
+
+ return aBounds;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleEdit::getCharacterCount( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return VCLXAccessibleTextComponent::getCharacterCount();
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleEdit::getIndexAtPoint( const awt::Point& aPoint ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return VCLXAccessibleTextComponent::getIndexAtPoint( aPoint );
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleEdit::getSelectedText( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return VCLXAccessibleTextComponent::getSelectedText();
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleEdit::getSelectionStart( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return VCLXAccessibleTextComponent::getSelectionStart();
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleEdit::getSelectionEnd( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return VCLXAccessibleTextComponent::getSelectionEnd();
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleEdit::setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Bool bReturn = sal_False;
+ ::rtl::OUString sText( implGetText() );
+
+ if ( !implIsValidRange( nStartIndex, nEndIndex, sText.getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ VCLXEdit* pVCLXEdit = static_cast< VCLXEdit* >( GetVCLXWindow() );
+ Edit* pEdit = static_cast< Edit* >( GetWindow() );
+ if ( pVCLXEdit && pEdit && pEdit->IsEnabled() )
+ {
+ pVCLXEdit->setSelection( awt::Selection( nStartIndex, nEndIndex ) );
+ bReturn = sal_True;
+ }
+
+ return bReturn;
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleEdit::getText( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return VCLXAccessibleTextComponent::getText();
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleEdit::getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return VCLXAccessibleTextComponent::getTextRange( nStartIndex, nEndIndex );
+}
+
+// -----------------------------------------------------------------------------
+
+::com::sun::star::accessibility::TextSegment VCLXAccessibleEdit::getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return VCLXAccessibleTextComponent::getTextAtIndex( nIndex, aTextType );
+}
+
+// -----------------------------------------------------------------------------
+
+::com::sun::star::accessibility::TextSegment VCLXAccessibleEdit::getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return VCLXAccessibleTextComponent::getTextBeforeIndex( nIndex, aTextType );
+}
+
+// -----------------------------------------------------------------------------
+
+::com::sun::star::accessibility::TextSegment VCLXAccessibleEdit::getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return VCLXAccessibleTextComponent::getTextBehindIndex( nIndex, aTextType );
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleEdit::copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return VCLXAccessibleTextComponent::copyText( nStartIndex, nEndIndex );
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleEditableText
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleEdit::cutText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return copyText( nStartIndex, nEndIndex ) && deleteText( nStartIndex, nEndIndex );
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleEdit::pasteText( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Bool bReturn = sal_False;
+
+ if ( GetWindow() )
+ {
+ Reference< datatransfer::clipboard::XClipboard > xClipboard = GetWindow()->GetClipboard();
+ if ( xClipboard.is() )
+ {
+ const sal_uInt32 nRef = Application::ReleaseSolarMutex();
+ Reference< datatransfer::XTransferable > xDataObj = xClipboard->getContents();
+ Application::AcquireSolarMutex( nRef );
+ if ( xDataObj.is() )
+ {
+ datatransfer::DataFlavor aFlavor;
+ SotExchange::GetFormatDataFlavor( SOT_FORMAT_STRING, aFlavor );
+ if ( xDataObj->isDataFlavorSupported( aFlavor ) )
+ {
+ Any aData = xDataObj->getTransferData( aFlavor );
+ ::rtl::OUString sText;
+ aData >>= sText;
+ bReturn = replaceText( nIndex, nIndex, sText );
+ }
+ }
+ }
+ }
+
+ return bReturn;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleEdit::deleteText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return replaceText( nStartIndex, nEndIndex, ::rtl::OUString() );
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleEdit::insertText( const ::rtl::OUString& sText, sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return replaceText( nIndex, nIndex, sText );
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleEdit::replaceText( sal_Int32 nStartIndex, sal_Int32 nEndIndex, const ::rtl::OUString& sReplacement ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Bool bReturn = sal_False;
+ ::rtl::OUString sText( implGetText() );
+
+ if ( !implIsValidRange( nStartIndex, nEndIndex, sText.getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ sal_Int32 nMinIndex = ::std::min( nStartIndex, nEndIndex );
+ sal_Int32 nMaxIndex = ::std::max( nStartIndex, nEndIndex );
+
+ VCLXEdit* pVCLXEdit = static_cast< VCLXEdit* >( GetVCLXWindow() );
+ if ( pVCLXEdit && pVCLXEdit->isEditable() )
+ {
+ pVCLXEdit->setText( sText.replaceAt( nMinIndex, nMaxIndex - nMinIndex, sReplacement ) );
+ sal_Int32 nIndex = nMinIndex + sReplacement.getLength();
+ setSelection( nIndex, nIndex );
+ bReturn = sal_True;
+ }
+
+ return bReturn;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleEdit::setAttributes( sal_Int32 nStartIndex, sal_Int32 nEndIndex, const Sequence<PropertyValue>& ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( !implIsValidRange( nStartIndex, nEndIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ return sal_False; // attributes cannot be set for an edit
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleEdit::setText( const ::rtl::OUString& sText ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Bool bSuccess = sal_False;
+ try
+ {
+ bSuccess = replaceText( 0, implGetText().getLength(), sText );
+ }
+ catch( const IndexOutOfBoundsException& )
+ {
+ OSL_ENSURE( sal_False, "VCLXAccessibleText::setText: caught an exception!" );
+ }
+ return bSuccess;
+}
+
+// -----------------------------------------------------------------------------
diff --git a/accessibility/source/standard/vclxaccessiblefixedhyperlink.cxx b/accessibility/source/standard/vclxaccessiblefixedhyperlink.cxx
new file mode 100644
index 000000000000..90218e629669
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessiblefixedhyperlink.cxx
@@ -0,0 +1,85 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+
+// includes --------------------------------------------------------------
+#include <accessibility/standard/vclxaccessiblefixedhyperlink.hxx>
+
+using namespace ::com::sun::star;
+
+// -----------------------------------------------------------------------------
+// VCLXAccessibleFixedHyperlink
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleFixedHyperlink::VCLXAccessibleFixedHyperlink( VCLXWindow* pVCLWindow )
+ :VCLXAccessibleTextComponent( pVCLWindow )
+{
+}
+
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleFixedHyperlink::~VCLXAccessibleFixedHyperlink()
+{
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleFixedHyperlink::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
+{
+ VCLXAccessibleTextComponent::FillAccessibleStateSet( rStateSet );
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleFixedHyperlink::implGetLineBoundary( i18n::Boundary& rBoundary, sal_Int32 nIndex )
+{
+ // TODO
+ OCommonAccessibleText::implGetLineBoundary( rBoundary, nIndex );
+}
+
+// -----------------------------------------------------------------------------
+// XServiceInfo
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleFixedHyperlink::getImplementationName() throw (uno::RuntimeException)
+{
+ return ::rtl::OUString::createFromAscii( "com.sun.star.comp.toolkit.AccessibleFixedHyperlink" );
+}
+
+// -----------------------------------------------------------------------------
+
+uno::Sequence< ::rtl::OUString > VCLXAccessibleFixedHyperlink::getSupportedServiceNames() throw (uno::RuntimeException)
+{
+ uno::Sequence< ::rtl::OUString > aNames(1);
+ aNames[0] = ::rtl::OUString::createFromAscii( "com.sun.star.awt.AccessibleFixedHyperlink" );
+ return aNames;
+}
+
+// -----------------------------------------------------------------------------
+
diff --git a/accessibility/source/standard/vclxaccessiblefixedtext.cxx b/accessibility/source/standard/vclxaccessiblefixedtext.cxx
new file mode 100644
index 000000000000..ca89fa0417ab
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessiblefixedtext.cxx
@@ -0,0 +1,96 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+
+// includes --------------------------------------------------------------
+#include <accessibility/standard/vclxaccessiblefixedtext.hxx>
+
+#include <unotools/accessiblestatesethelper.hxx>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <vcl/fixed.hxx>
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::beans;
+using namespace ::com::sun::star::accessibility;
+
+
+// -----------------------------------------------------------------------------
+// VCLXAccessibleFixedText
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleFixedText::VCLXAccessibleFixedText( VCLXWindow* pVCLWindow )
+ :VCLXAccessibleTextComponent( pVCLWindow )
+{
+}
+
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleFixedText::~VCLXAccessibleFixedText()
+{
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleFixedText::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
+{
+ VCLXAccessibleTextComponent::FillAccessibleStateSet( rStateSet );
+
+ if ( GetWindow() && GetWindow()->GetStyle() & WB_WORDBREAK )
+ rStateSet.AddState( AccessibleStateType::MULTI_LINE );
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleFixedText::implGetLineBoundary( i18n::Boundary& rBoundary, sal_Int32 nIndex )
+{
+ // TODO
+ OCommonAccessibleText::implGetLineBoundary( rBoundary, nIndex );
+}
+
+// -----------------------------------------------------------------------------
+// XServiceInfo
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleFixedText::getImplementationName() throw (RuntimeException)
+{
+ return ::rtl::OUString::createFromAscii( "com.sun.star.comp.toolkit.AccessibleFixedText" );
+}
+
+// -----------------------------------------------------------------------------
+
+Sequence< ::rtl::OUString > VCLXAccessibleFixedText::getSupportedServiceNames() throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames(1);
+ aNames[0] = ::rtl::OUString::createFromAscii( "com.sun.star.awt.AccessibleFixedText" );
+ return aNames;
+}
+
+// -----------------------------------------------------------------------------
diff --git a/accessibility/source/standard/vclxaccessiblelist.cxx b/accessibility/source/standard/vclxaccessiblelist.cxx
new file mode 100644
index 000000000000..6d287a02f0e9
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessiblelist.cxx
@@ -0,0 +1,854 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/standard/vclxaccessiblelist.hxx>
+#include <accessibility/standard/vclxaccessiblelistitem.hxx>
+#include <accessibility/helper/listboxhelper.hxx>
+
+#include <unotools/accessiblestatesethelper.hxx>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <vcl/svapp.hxx>
+#include <vcl/combobox.hxx>
+#include <vcl/lstbox.hxx>
+#include <toolkit/helper/convert.hxx>
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::beans;
+using namespace ::com::sun::star::accessibility;
+using namespace ::accessibility;
+
+namespace
+{
+ void checkSelection_Impl( sal_Int32 _nIndex, const IComboListBoxHelper& _rListBox, sal_Bool bSelected )
+ throw (::com::sun::star::lang::IndexOutOfBoundsException)
+ {
+ sal_Int32 nCount = bSelected ? (sal_Int32)_rListBox.GetSelectEntryCount()
+ : (sal_Int32)_rListBox.GetEntryCount();
+ if ( _nIndex < 0 || _nIndex >= nCount )
+ throw ::com::sun::star::lang::IndexOutOfBoundsException();
+ }
+}
+
+VCLXAccessibleList::VCLXAccessibleList (VCLXWindow* pVCLWindow, BoxType aBoxType,
+ const Reference< XAccessible >& _xParent)
+ : VCLXAccessibleComponent (pVCLWindow),
+ m_aBoxType (aBoxType),
+ m_nVisibleLineCount (0),
+ m_nIndexInParent (DEFAULT_INDEX_IN_PARENT),
+ m_nLastTopEntry ( 0 ),
+ m_nLastSelectedPos ( LISTBOX_ENTRY_NOTFOUND ),
+ m_bDisableProcessEvent ( false ),
+ m_bVisible ( true ),
+ m_xParent ( _xParent )
+{
+ // Because combo boxes and list boxes have the no common interface for
+ // methods with identical signature we have to write down twice the
+ // same code.
+ switch (m_aBoxType)
+ {
+ case COMBOBOX:
+ {
+ ComboBox* pBox = static_cast<ComboBox*>(GetWindow());
+ if ( pBox != NULL )
+ m_pListBoxHelper = new VCLListBoxHelper<ComboBox> (*pBox);
+ break;
+ }
+
+ case LISTBOX:
+ {
+ ListBox* pBox = static_cast<ListBox*>(GetWindow());
+ if ( pBox != NULL )
+ m_pListBoxHelper = new VCLListBoxHelper<ListBox> (*pBox);
+ break;
+ }
+ }
+ UpdateVisibleLineCount();
+
+ USHORT nCount = static_cast<USHORT>(getAccessibleChildCount());
+ m_aAccessibleChildren.reserve(nCount);
+}
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleList::~VCLXAccessibleList (void)
+{
+ delete m_pListBoxHelper;
+}
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleList::SetIndexInParent (sal_Int32 nIndex)
+{
+ m_nIndexInParent = nIndex;
+}
+// -----------------------------------------------------------------------------
+
+void SAL_CALL VCLXAccessibleList::disposing (void)
+{
+ VCLXAccessibleComponent::disposing();
+
+ // Dispose all items in the list.
+ clearItems();
+
+ delete m_pListBoxHelper;
+ m_pListBoxHelper = NULL;
+}
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleList::clearItems()
+{
+// ListItems::iterator aEnd = m_aAccessibleChildren.end();
+// for (ListItems::iterator aIter = m_aAccessibleChildren.begin(); aIter != aEnd; ++aIter)
+// ::comphelper::disposeComponent(*aIter);
+
+ // Clear the list itself and delete all the rest.
+ ListItems().swap(m_aAccessibleChildren); // clear and minimize
+}
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleList::FillAccessibleStateSet (utl::AccessibleStateSetHelper& rStateSet)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+
+ VCLXAccessibleComponent::FillAccessibleStateSet( rStateSet );
+ // check if our list should be visible
+ if ( m_pListBoxHelper
+ && (m_pListBoxHelper->GetStyle() & WB_DROPDOWN ) == WB_DROPDOWN
+ && !m_pListBoxHelper->IsInDropDown() )
+ {
+ rStateSet.RemoveState (AccessibleStateType::VISIBLE);
+ rStateSet.RemoveState (AccessibleStateType::SHOWING);
+ m_bVisible = false;
+ }
+
+ // Both the combo box and list box are handled identical in the
+ // following but for some reason they don't have a common interface for
+ // the methods used.
+ if ( m_pListBoxHelper )
+ {
+ if ( m_pListBoxHelper->IsMultiSelectionEnabled() )
+ rStateSet.AddState( AccessibleStateType::MULTI_SELECTABLE);
+ rStateSet.AddState (AccessibleStateType::FOCUSABLE);
+ // All children are transient.
+ rStateSet.AddState (AccessibleStateType::MANAGES_DESCENDANTS);
+ }
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleList::notifyVisibleStates(sal_Bool _bSetNew )
+{
+ m_bVisible = _bSetNew ? true : false;
+ Any aOldValue, aNewValue;
+ (_bSetNew ? aNewValue : aOldValue ) <<= AccessibleStateType::VISIBLE;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ (_bSetNew ? aNewValue : aOldValue ) <<= AccessibleStateType::SHOWING;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+
+ ListItems::iterator aIter = m_aAccessibleChildren.begin();
+ ListItems::iterator aEnd = m_aAccessibleChildren.end();
+ UpdateVisibleLineCount();
+ // adjust the index inside the VCLXAccessibleListItem
+ for (;aIter != aEnd ; ++aIter)
+ {
+ Reference< XAccessible > xHold = *aIter;
+ VCLXAccessibleListItem* pItem = static_cast<VCLXAccessibleListItem*>(xHold.get());
+ if ( pItem )
+ {
+ USHORT nTopEntry = 0;
+ if ( m_pListBoxHelper )
+ nTopEntry = m_pListBoxHelper->GetTopEntry();
+ USHORT nPos = (USHORT)(aIter - m_aAccessibleChildren.begin());
+ sal_Bool bVisible = ( nPos>=nTopEntry && nPos<( nTopEntry + m_nVisibleLineCount ) );
+ pItem->SetVisible( m_bVisible && bVisible );
+ }
+
+ }
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleList::ProcessWindowEvent (const VclWindowEvent& rVclWindowEvent)
+{
+ // Create a reference to this object to prevent an early release of the
+ // listbox (VCLEVENT_OBJECT_DYING).
+ Reference< XAccessible > xTemp = this;
+
+ switch ( rVclWindowEvent.GetId() )
+ {
+ case VCLEVENT_DROPDOWN_OPEN:
+ notifyVisibleStates(sal_True);
+ break;
+ case VCLEVENT_DROPDOWN_CLOSE:
+ notifyVisibleStates(sal_False);
+ break;
+ case VCLEVENT_LISTBOX_SCROLLED:
+ case VCLEVENT_COMBOBOX_SCROLLED:
+ UpdateEntryRange_Impl();
+ break;
+
+ case VCLEVENT_LISTBOX_SELECT:
+ if ( !m_bDisableProcessEvent )
+ UpdateSelection_Impl();
+ break;
+ // The selection events VCLEVENT_COMBOBOX_SELECT and
+ // VCLEVENT_COMBOBOX_DESELECT are not handled here because here we
+ // have no access to the edit field. Its text is necessary to
+ // identify the currently selected item.
+
+ case VCLEVENT_OBJECT_DYING:
+ {
+ dispose();
+
+ VCLXAccessibleComponent::ProcessWindowEvent (rVclWindowEvent);
+ break;
+ }
+
+ case VCLEVENT_LISTBOX_ITEMREMOVED:
+ case VCLEVENT_COMBOBOX_ITEMREMOVED:
+ HandleChangedItemList (false, reinterpret_cast<sal_IntPtr>(
+ rVclWindowEvent.GetData()));
+ break;
+
+ case VCLEVENT_LISTBOX_ITEMADDED:
+ case VCLEVENT_COMBOBOX_ITEMADDED:
+ HandleChangedItemList (true, reinterpret_cast<sal_IntPtr>(
+ rVclWindowEvent.GetData()));
+ break;
+ case VCLEVENT_CONTROL_GETFOCUS:
+ VCLXAccessibleComponent::ProcessWindowEvent (rVclWindowEvent);
+ if ( m_pListBoxHelper )
+ {
+ uno::Any aOldValue,
+ aNewValue;
+ USHORT nPos = m_pListBoxHelper->GetSelectEntryPos();
+ if ( nPos == LISTBOX_ENTRY_NOTFOUND )
+ nPos = m_pListBoxHelper->GetTopEntry();
+ if ( nPos != LISTBOX_ENTRY_NOTFOUND )
+ aNewValue <<= CreateChild(nPos);
+
+ NotifyAccessibleEvent( AccessibleEventId::ACTIVE_DESCENDANT_CHANGED,
+ aOldValue,
+ aNewValue );
+ }
+ break;
+
+ default:
+ VCLXAccessibleComponent::ProcessWindowEvent (rVclWindowEvent);
+ }
+}
+// -----------------------------------------------------------------------------
+
+/** To find out which item is currently selected and to update the SELECTED
+ state of the associated accessibility objects accordingly we exploit the
+ fact that the
+*/
+void VCLXAccessibleList::UpdateSelection (::rtl::OUString sTextOfSelectedItem)
+{
+ if ( m_aBoxType == COMBOBOX )
+ {
+ ComboBox* pBox = static_cast<ComboBox*>(GetWindow());
+ if ( pBox != NULL )
+ {
+ // Find the index of the selected item inside the VCL control...
+ USHORT nIndex = pBox->GetEntryPos (XubString(sTextOfSelectedItem));
+ // ...and then find the associated accessibility object.
+ if ( nIndex == LISTBOX_ENTRY_NOTFOUND )
+ nIndex = 0;
+ UpdateSelection_Impl(nIndex);
+ }
+ }
+}
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleList::adjustEntriesIndexInParent(ListItems::iterator& _aBegin,::std::mem_fun_t<bool,VCLXAccessibleListItem>& _rMemFun)
+{
+ ListItems::iterator aIter = _aBegin;
+ ListItems::iterator aEnd = m_aAccessibleChildren.end();
+ // adjust the index inside the VCLXAccessibleListItem
+ for (;aIter != aEnd ; ++aIter)
+ {
+ Reference< XAccessible > xHold = *aIter;
+ VCLXAccessibleListItem* pItem = static_cast<VCLXAccessibleListItem*>(xHold.get());
+ if ( pItem )
+ _rMemFun(pItem);
+ }
+}
+// -----------------------------------------------------------------------------
+
+Reference<XAccessible> VCLXAccessibleList::CreateChild (sal_Int32 i)
+{
+ Reference<XAccessible> xChild;
+
+ USHORT nPos = static_cast<USHORT>(i);
+ if ( nPos >= m_aAccessibleChildren.size() )
+ {
+ m_aAccessibleChildren.resize(nPos + 1);
+
+ // insert into the container
+ xChild = new VCLXAccessibleListItem(m_pListBoxHelper, i, this);
+ m_aAccessibleChildren[nPos] = xChild;
+ }
+ else
+ {
+ xChild = m_aAccessibleChildren[nPos];
+ // check if position is empty and can be used else we have to adjust all entries behind this
+ if ( xChild.is() )
+ {
+ ListItems::iterator aIter = m_aAccessibleChildren.begin() + nPos;
+ ::std::mem_fun_t<bool, VCLXAccessibleListItem> aTemp(&VCLXAccessibleListItem::IncrementIndexInParent);
+ adjustEntriesIndexInParent( aIter, aTemp);
+ }
+ else
+ {
+ xChild = new VCLXAccessibleListItem(m_pListBoxHelper, i, this);
+ m_aAccessibleChildren[nPos] = xChild;
+ }
+ }
+
+ if ( xChild.is() )
+ {
+ // Just add the SELECTED state.
+ BOOL bNowSelected = FALSE;
+ if ( m_pListBoxHelper )
+ bNowSelected = m_pListBoxHelper->IsEntryPosSelected ((USHORT)i);
+ VCLXAccessibleListItem* pItem = static_cast< VCLXAccessibleListItem* >(xChild.get());
+ pItem->SetSelected( bNowSelected );
+
+ // Set the child's VISIBLE state.
+ UpdateVisibleLineCount();
+ USHORT nTopEntry = 0;
+ if ( m_pListBoxHelper )
+ nTopEntry = m_pListBoxHelper->GetTopEntry();
+ sal_Bool bVisible = ( nPos>=nTopEntry && nPos<( nTopEntry + m_nVisibleLineCount ) );
+ pItem->SetVisible( m_bVisible && bVisible );
+ }
+
+ return xChild;
+}
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleList::HandleChangedItemList (bool bItemInserted, sal_Int32 nIndex)
+{
+ if ( !bItemInserted )
+ {
+ if ( nIndex == -1 ) // special handling here
+ {
+ clearItems();
+ }
+ else
+ {
+ if ( nIndex >= 0 && static_cast<USHORT>(nIndex) < m_aAccessibleChildren.size() )
+ {
+ ListItems::iterator aIter = m_aAccessibleChildren.erase(m_aAccessibleChildren.begin()+nIndex);
+ ::std::mem_fun_t<bool, VCLXAccessibleListItem> aTemp(&VCLXAccessibleListItem::DecrementIndexInParent);
+ adjustEntriesIndexInParent( aIter, aTemp );
+ }
+ }
+ }
+ else
+ getAccessibleChild(nIndex);
+
+ NotifyAccessibleEvent (
+ AccessibleEventId::INVALIDATE_ALL_CHILDREN,
+ Any(), Any());
+}
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XINTERFACE2(VCLXAccessibleList, VCLXAccessibleComponent, VCLXAccessibleList_BASE)
+IMPLEMENT_FORWARD_XTYPEPROVIDER2(VCLXAccessibleList, VCLXAccessibleComponent, VCLXAccessibleList_BASE)
+
+//===== XAccessible =========================================================
+
+Reference<XAccessibleContext> SAL_CALL
+ VCLXAccessibleList::getAccessibleContext (void)
+ throw (RuntimeException)
+{
+ return this;
+}
+// -----------------------------------------------------------------------------
+
+//===== XAccessibleContext ==================================================
+
+sal_Int32 SAL_CALL VCLXAccessibleList::getAccessibleChildCount (void)
+ throw (RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
+
+ sal_Int32 nCount = 0;
+ if ( m_pListBoxHelper )
+ nCount = m_pListBoxHelper->GetEntryCount();
+
+ return nCount;
+}
+// -----------------------------------------------------------------------------
+
+Reference<XAccessible> SAL_CALL VCLXAccessibleList::getAccessibleChild (sal_Int32 i)
+ throw (IndexOutOfBoundsException, RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
+
+ if ( i < 0 || i >= getAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+
+ Reference< XAccessible > xChild;
+ // search for the child
+ if ( static_cast<USHORT>(i) >= m_aAccessibleChildren.size() )
+ xChild = CreateChild (i);
+ else
+ {
+ xChild = m_aAccessibleChildren[i];
+ if ( !xChild.is() )
+ xChild = CreateChild (i);
+ }
+ OSL_ENSURE( xChild.is(), "VCLXAccessibleList::getAccessibleChild: returning empty child!" );
+ return xChild;
+}
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > SAL_CALL VCLXAccessibleList::getAccessibleParent( )
+ throw (RuntimeException)
+{
+ ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
+
+ return m_xParent;
+}
+// -----------------------------------------------------------------------------
+
+sal_Int32 SAL_CALL VCLXAccessibleList::getAccessibleIndexInParent (void)
+ throw (::com::sun::star::uno::RuntimeException)
+{
+ if (m_nIndexInParent != DEFAULT_INDEX_IN_PARENT)
+ return m_nIndexInParent;
+ else
+ return VCLXAccessibleComponent::getAccessibleIndexInParent();
+}
+// -----------------------------------------------------------------------------
+
+sal_Int16 SAL_CALL VCLXAccessibleList::getAccessibleRole (void)
+ throw (RuntimeException)
+{
+ return AccessibleRole::LIST;
+}
+// -----------------------------------------------------------------------------
+
+//===== XAccessibleComponent ================================================
+
+sal_Bool SAL_CALL VCLXAccessibleList::contains( const awt::Point& rPoint ) throw (RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
+
+ sal_Bool bInside = sal_False;
+
+ Window* pListBox = GetWindow();
+ if ( pListBox )
+ {
+ Rectangle aRect( Point(0,0), pListBox->GetSizePixel() );
+ bInside = aRect.IsInside( VCLPoint( rPoint ) );
+ }
+
+ return bInside;
+}
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > SAL_CALL VCLXAccessibleList::getAccessibleAt( const awt::Point& rPoint )
+ throw (RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
+
+ Reference< XAccessible > xChild;
+ if ( m_pListBoxHelper )
+ {
+ UpdateVisibleLineCount();
+ if ( contains( rPoint ) && m_nVisibleLineCount > 0 )
+ {
+ Point aPos = VCLPoint( rPoint );
+ USHORT nEndPos = m_pListBoxHelper->GetTopEntry() + (USHORT)m_nVisibleLineCount;
+ for ( USHORT i = m_pListBoxHelper->GetTopEntry(); i < nEndPos; ++i )
+ {
+ if ( m_pListBoxHelper->GetBoundingRectangle(i).IsInside( aPos ) )
+ {
+ xChild = getAccessibleChild(i);
+ break;
+ }
+ }
+ }
+ }
+
+ return xChild;
+}
+// -----------------------------------------------------------------------------
+
+//===== XServiceInfo ==========================================================
+
+::rtl::OUString VCLXAccessibleList::getImplementationName (void)
+ throw (RuntimeException)
+{
+ return ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.toolkit.AccessibleList"));
+}
+// -----------------------------------------------------------------------------
+
+Sequence< ::rtl::OUString > VCLXAccessibleList::getSupportedServiceNames (void)
+ throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames = VCLXAccessibleComponent::getSupportedServiceNames();
+ sal_Int32 nLength = aNames.getLength();
+ aNames.realloc( nLength + 1 );
+ aNames[nLength] = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.accessibility.AccessibleList"));
+ return aNames;
+}
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleList::UpdateVisibleLineCount()
+{
+ if ( m_pListBoxHelper )
+ {
+ if ( (m_pListBoxHelper->GetStyle() & WB_DROPDOWN ) == WB_DROPDOWN )
+ m_nVisibleLineCount = m_pListBoxHelper->GetDisplayLineCount();
+ else
+ {
+ USHORT nCols = 0,
+ nLines = 0;
+ m_pListBoxHelper->GetMaxVisColumnsAndLines (nCols, nLines);
+ m_nVisibleLineCount = nLines;
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+void VCLXAccessibleList::UpdateEntryRange_Impl()
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
+
+ sal_Int32 nTop = m_nLastTopEntry;
+
+ if ( m_pListBoxHelper )
+ nTop = m_pListBoxHelper->GetTopEntry();
+ if ( nTop != m_nLastTopEntry )
+ {
+ UpdateVisibleLineCount();
+ sal_Int32 nBegin = Min( m_nLastTopEntry, nTop );
+ sal_Int32 nEnd = Max( m_nLastTopEntry + m_nVisibleLineCount, nTop + m_nVisibleLineCount );
+ for (USHORT i = static_cast<USHORT>(nBegin); (i <= static_cast<USHORT>(nEnd)); ++i)
+ {
+ sal_Bool bVisible = ( i >= nTop && i < ( nTop + m_nVisibleLineCount ) );
+ Reference< XAccessible > xHold;
+ if ( i < m_aAccessibleChildren.size() )
+ xHold = m_aAccessibleChildren[i];
+ else if ( bVisible )
+ xHold = CreateChild(i);
+
+ if ( xHold.is() )
+ static_cast< VCLXAccessibleListItem* >( xHold.get() )->SetVisible( m_bVisible && bVisible );
+ }
+ }
+
+ m_nLastTopEntry = nTop;
+}
+// -----------------------------------------------------------------------------
+BOOL VCLXAccessibleList::checkEntrySelected(USHORT _nPos,Any& _rNewValue,Reference< XAccessible >& _rxNewAcc)
+{
+ OSL_ENSURE(m_pListBoxHelper,"Helper is not valid!");
+ BOOL bNowSelected = FALSE;
+ if ( m_pListBoxHelper )
+ {
+ bNowSelected = m_pListBoxHelper->IsEntryPosSelected (_nPos);
+ if ( bNowSelected )
+ {
+ _rxNewAcc = CreateChild(_nPos);
+ _rNewValue <<= _rxNewAcc;
+ }
+ }
+ return bNowSelected;
+}
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleList::UpdateSelection_Impl(USHORT)
+{
+ uno::Any aOldValue, aNewValue;
+
+ {
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
+ Reference< XAccessible > xNewAcc;
+
+ if ( m_pListBoxHelper )
+ {
+ USHORT i=0;
+ for ( ListItems::iterator aIter = m_aAccessibleChildren.begin();
+ aIter != m_aAccessibleChildren.end(); ++aIter,++i)
+ {
+ Reference< XAccessible > xHold = *aIter;
+ if ( xHold.is() )
+ {
+ VCLXAccessibleListItem* pItem = static_cast< VCLXAccessibleListItem* >( xHold.get() );
+ // Retrieve the item's index from the list entry.
+ BOOL bNowSelected = m_pListBoxHelper->IsEntryPosSelected (i);
+
+ if ( bNowSelected && !pItem->IsSelected() )
+ {
+ xNewAcc = *aIter;
+ aNewValue <<= xNewAcc;
+ }
+ else if ( pItem->IsSelected() )
+ m_nLastSelectedPos = i;
+
+ pItem->SetSelected( bNowSelected );
+ }
+ else
+ { // it could happen that a child was not created before
+ checkEntrySelected(i,aNewValue,xNewAcc);
+ }
+ }
+ USHORT nCount = m_pListBoxHelper->GetEntryCount();
+ if ( i < nCount ) // here we have to check the if any other listbox entry is selected
+ {
+ for (; i < nCount && !checkEntrySelected(i,aNewValue,xNewAcc) ;++i )
+ ;
+ }
+ if ( xNewAcc.is() && GetWindow()->HasFocus() )
+ {
+ if ( m_nLastSelectedPos != LISTBOX_ENTRY_NOTFOUND )
+ aOldValue <<= getAccessibleChild( (sal_Int32)m_nLastSelectedPos );
+ aNewValue <<= xNewAcc;
+ }
+ }
+ }
+
+ if ( aNewValue.hasValue() || aOldValue.hasValue() )
+ NotifyAccessibleEvent(
+ AccessibleEventId::ACTIVE_DESCENDANT_CHANGED,
+ aOldValue,
+ aNewValue );
+
+ NotifyAccessibleEvent( AccessibleEventId::SELECTION_CHANGED, Any(), Any() );
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleSelection
+// -----------------------------------------------------------------------------
+void SAL_CALL VCLXAccessibleList::selectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ sal_Bool bNotify = sal_False;
+
+ {
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
+
+ if ( m_pListBoxHelper )
+ {
+ checkSelection_Impl(nChildIndex,*m_pListBoxHelper,sal_False);
+
+ m_pListBoxHelper->SelectEntryPos( (USHORT)nChildIndex, TRUE );
+ // call the select handler, don't handle events in this time
+ m_bDisableProcessEvent = true;
+ m_pListBoxHelper->Select();
+ m_bDisableProcessEvent = false;
+ bNotify = sal_True;
+ }
+ }
+
+ if ( bNotify )
+ UpdateSelection_Impl();
+}
+// -----------------------------------------------------------------------------
+sal_Bool SAL_CALL VCLXAccessibleList::isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
+
+ sal_Bool bRet = sal_False;
+ if ( m_pListBoxHelper )
+ {
+ checkSelection_Impl(nChildIndex,*m_pListBoxHelper,sal_False);
+
+ bRet = m_pListBoxHelper->IsEntryPosSelected( (USHORT)nChildIndex );
+ }
+ return bRet;
+}
+// -----------------------------------------------------------------------------
+void SAL_CALL VCLXAccessibleList::clearAccessibleSelection( ) throw (RuntimeException)
+{
+ sal_Bool bNotify = sal_False;
+
+ {
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
+
+ if ( m_pListBoxHelper )
+ {
+ m_pListBoxHelper->SetNoSelection();
+ bNotify = sal_True;
+ }
+ }
+
+ if ( bNotify )
+ UpdateSelection_Impl();
+}
+// -----------------------------------------------------------------------------
+void SAL_CALL VCLXAccessibleList::selectAllAccessibleChildren( ) throw (RuntimeException)
+{
+ sal_Bool bNotify = sal_False;
+
+ {
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
+
+ if ( m_pListBoxHelper )
+ {
+ USHORT nCount = m_pListBoxHelper->GetEntryCount();
+ for ( USHORT i = 0; i < nCount; ++i )
+ m_pListBoxHelper->SelectEntryPos( i, TRUE );
+ // call the select handler, don't handle events in this time
+ m_bDisableProcessEvent = true;
+ m_pListBoxHelper->Select();
+ m_bDisableProcessEvent = false;
+ bNotify = sal_True;
+ }
+ }
+
+ if ( bNotify )
+ UpdateSelection_Impl();
+}
+// -----------------------------------------------------------------------------
+sal_Int32 SAL_CALL VCLXAccessibleList::getSelectedAccessibleChildCount( ) throw (RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
+
+ sal_Int32 nCount = 0;
+ if ( m_pListBoxHelper )
+ nCount = m_pListBoxHelper->GetSelectEntryCount();
+ return nCount;
+}
+// -----------------------------------------------------------------------------
+Reference< XAccessible > SAL_CALL VCLXAccessibleList::getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
+
+ if ( m_pListBoxHelper )
+ {
+ checkSelection_Impl(nSelectedChildIndex,*m_pListBoxHelper,sal_True);
+ return getAccessibleChild( (sal_Int32)m_pListBoxHelper->GetSelectEntryPos( (USHORT)nSelectedChildIndex ) );
+ }
+
+ return NULL;
+}
+// -----------------------------------------------------------------------------
+void SAL_CALL VCLXAccessibleList::deselectAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ sal_Bool bNotify = sal_False;
+
+ {
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
+
+ if ( m_pListBoxHelper )
+ {
+ checkSelection_Impl(nSelectedChildIndex,*m_pListBoxHelper,sal_False);
+
+ m_pListBoxHelper->SelectEntryPos( (USHORT)nSelectedChildIndex, FALSE );
+ // call the select handler, don't handle events in this time
+ m_bDisableProcessEvent = true;
+ m_pListBoxHelper->Select();
+ m_bDisableProcessEvent = false;
+ bNotify = sal_True;
+ }
+ }
+
+ if ( bNotify )
+ UpdateSelection_Impl();
+}
+// -----------------------------------------------------------------------------
+// accessibility::XAccessibleComponent
+awt::Rectangle VCLXAccessibleList::implGetBounds() throw (uno::RuntimeException)
+{
+ awt::Rectangle aBounds ( 0, 0, 0, 0 );
+ if ( m_pListBoxHelper
+ && (m_pListBoxHelper->GetStyle() & WB_DROPDOWN ) == WB_DROPDOWN )
+ {
+ if ( m_pListBoxHelper->IsInDropDown() )
+ aBounds = AWTRectangle(m_pListBoxHelper->GetDropDownPosSizePixel());
+ }
+ else
+ {
+ // a list has the same bounds as his parent but starts at (0,0)
+ aBounds = VCLXAccessibleComponent::implGetBounds();
+ aBounds.X = 0;
+ aBounds.Y = 0;
+ if ( m_aBoxType == COMBOBOX )
+ {
+ ComboBox* pBox = static_cast<ComboBox*>(GetWindow());
+ if ( pBox )
+ {
+ Size aSize = pBox->GetSubEdit()->GetSizePixel();
+ aBounds.X += aSize.Height();
+ aBounds.Y += aSize.Width();
+ aBounds.Height -= aSize.Height();
+ aBounds.Width -= aSize.Width();
+ }
+ }
+ }
+ return aBounds;
+}
+// -----------------------------------------------------------------------------
+
+awt::Point VCLXAccessibleList::getLocationOnScreen( ) throw (uno::RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
+
+ awt::Point aPos;
+ if ( m_pListBoxHelper
+ && (m_pListBoxHelper->GetStyle() & WB_DROPDOWN ) == WB_DROPDOWN )
+ {
+ if ( m_pListBoxHelper->IsInDropDown() )
+ aPos = AWTPoint(m_pListBoxHelper->GetDropDownPosSizePixel().TopLeft());
+ }
+ else
+ {
+ aPos = VCLXAccessibleComponent::getLocationOnScreen();
+ if ( m_aBoxType == COMBOBOX )
+ {
+ ComboBox* pBox = static_cast<ComboBox*>(GetWindow());
+ if ( pBox )
+ {
+ aPos.X += pBox->GetSubEdit()->GetSizePixel().Height();
+ aPos.Y += pBox->GetSubEdit()->GetSizePixel().Width();
+ }
+ }
+ }
+ return aPos;
+}
+// -----------------------------------------------------------------------------
+
diff --git a/accessibility/source/standard/vclxaccessiblelistbox.cxx b/accessibility/source/standard/vclxaccessiblelistbox.cxx
new file mode 100644
index 000000000000..7645d2067c1a
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessiblelistbox.cxx
@@ -0,0 +1,108 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/standard/vclxaccessiblelistbox.hxx>
+#include <accessibility/standard/vclxaccessiblelistitem.hxx>
+#include <accessibility/helper/listboxhelper.hxx>
+
+#include <algorithm>
+
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <tools/debug.hxx>
+#include <vcl/svapp.hxx>
+#include <vcl/lstbox.hxx>
+#include <vcl/unohelp.hxx>
+
+#include <toolkit/awt/vclxwindow.hxx>
+#include <toolkit/helper/convert.hxx>
+
+#include <comphelper/sequence.hxx>
+#include <cppuhelper/typeprovider.hxx>
+#include <unotools/accessiblestatesethelper.hxx>
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::accessibility;
+
+VCLXAccessibleListBox::VCLXAccessibleListBox (VCLXWindow* pVCLWindow)
+ : VCLXAccessibleBox (pVCLWindow, VCLXAccessibleBox::LISTBOX, false)
+{
+}
+
+
+
+
+VCLXAccessibleListBox::~VCLXAccessibleListBox (void)
+{
+}
+
+
+
+
+bool VCLXAccessibleListBox::IsValid (void) const
+{
+ return static_cast<ListBox*>(GetWindow()) != NULL;
+
+}
+
+
+
+
+void VCLXAccessibleListBox::ProcessWindowEvent (const VclWindowEvent& rVclWindowEvent)
+{
+ VCLXAccessibleBox::ProcessWindowEvent( rVclWindowEvent );
+}
+
+
+
+
+//===== XServiceInfo ========================================================
+
+::rtl::OUString VCLXAccessibleListBox::getImplementationName (void)
+ throw (RuntimeException)
+{
+ return ::rtl::OUString::createFromAscii("com.sun.star.comp.toolkit.AccessibleListBox");
+}
+
+
+
+
+Sequence< ::rtl::OUString > VCLXAccessibleListBox::getSupportedServiceNames (void)
+ throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames = VCLXAccessibleBox::getSupportedServiceNames();
+ sal_Int32 nLength = aNames.getLength();
+ aNames.realloc( nLength + 1 );
+ aNames[nLength] = ::rtl::OUString::createFromAscii(
+ "com.sun.star.accessibility.AccessibleListBox" );
+ return aNames;
+}
diff --git a/accessibility/source/standard/vclxaccessiblelistitem.cxx b/accessibility/source/standard/vclxaccessiblelistitem.cxx
new file mode 100644
index 000000000000..56bcf14f1980
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessiblelistitem.cxx
@@ -0,0 +1,674 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/standard/vclxaccessiblelistitem.hxx>
+#include <toolkit/helper/convert.hxx>
+#include <accessibility/helper/listboxhelper.hxx>
+#include <com/sun/star/awt/Point.hpp>
+#include <com/sun/star/awt/Rectangle.hpp>
+#include <com/sun/star/awt/Size.hpp>
+
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <com/sun/star/datatransfer/clipboard/XClipboard.hpp>
+#include <com/sun/star/datatransfer/clipboard/XFlushableClipboard.hpp>
+#include <tools/debug.hxx>
+#include <vcl/svapp.hxx>
+#include <vcl/controllayout.hxx>
+#include <vcl/unohelp2.hxx>
+#include <toolkit/awt/vclxwindow.hxx>
+#include <unotools/accessiblestatesethelper.hxx>
+#include <unotools/accessiblerelationsethelper.hxx>
+#include <cppuhelper/typeprovider.hxx>
+#include <comphelper/sequence.hxx>
+#include <comphelper/accessibleeventnotifier.hxx>
+
+namespace
+{
+ void checkIndex_Impl( sal_Int32 _nIndex, const ::rtl::OUString& _sText ) throw (::com::sun::star::lang::IndexOutOfBoundsException)
+ {
+ if ( _nIndex < 0 || _nIndex > _sText.getLength() )
+ throw ::com::sun::star::lang::IndexOutOfBoundsException();
+ }
+}
+
+// class VCLXAccessibleListItem ------------------------------------------
+
+using namespace ::com::sun::star::accessibility;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::beans;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star;
+
+DBG_NAME(VCLXAccessibleListItem)
+
+// -----------------------------------------------------------------------------
+// Ctor() and Dtor()
+// -----------------------------------------------------------------------------
+VCLXAccessibleListItem::VCLXAccessibleListItem( ::accessibility::IComboListBoxHelper* _pListBoxHelper, sal_Int32 _nIndexInParent, const Reference< XAccessible >& _xParent ) :
+
+ VCLXAccessibleListItem_BASE ( m_aMutex ),
+
+ m_nIndexInParent( _nIndexInParent ),
+ m_bSelected ( sal_False ),
+ m_bVisible ( sal_False ),
+ m_nClientId ( 0 ),
+ m_pListBoxHelper( _pListBoxHelper ),
+ m_xParent ( _xParent )
+
+{
+ DBG_CTOR( VCLXAccessibleListItem, NULL );
+
+ if ( m_xParent.is() )
+ m_xParentContext = m_xParent->getAccessibleContext();
+
+ if ( m_pListBoxHelper )
+ m_sEntryText = m_pListBoxHelper->GetEntry( (USHORT)_nIndexInParent );
+}
+// -----------------------------------------------------------------------------
+VCLXAccessibleListItem::~VCLXAccessibleListItem()
+{
+ DBG_DTOR( VCLXAccessibleListItem, NULL );
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleListItem::SetSelected( sal_Bool _bSelected )
+{
+ if ( m_bSelected != _bSelected )
+ {
+ Any aOldValue;
+ Any aNewValue;
+ if ( m_bSelected )
+ aOldValue <<= AccessibleStateType::SELECTED;
+ else
+ aNewValue <<= AccessibleStateType::SELECTED;
+ m_bSelected = _bSelected;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ }
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleListItem::SetVisible( sal_Bool _bVisible )
+{
+ if ( m_bVisible != _bVisible )
+ {
+ Any aOldValue, aNewValue;
+ m_bVisible = _bVisible;
+ (_bVisible ? aNewValue : aOldValue ) <<= AccessibleStateType::VISIBLE;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ (_bVisible ? aNewValue : aOldValue ) <<= AccessibleStateType::SHOWING;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ }
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleListItem::NotifyAccessibleEvent( sal_Int16 _nEventId,
+ const ::com::sun::star::uno::Any& _aOldValue,
+ const ::com::sun::star::uno::Any& _aNewValue )
+{
+ AccessibleEventObject aEvt;
+ aEvt.Source = *this;
+ aEvt.EventId = _nEventId;
+ aEvt.OldValue = _aOldValue;
+ aEvt.NewValue = _aNewValue;
+
+ if (m_nClientId)
+ comphelper::AccessibleEventNotifier::addEvent( m_nClientId, aEvt );
+}
+// -----------------------------------------------------------------------------
+// OCommonAccessibleText
+// -----------------------------------------------------------------------------
+::rtl::OUString VCLXAccessibleListItem::implGetText()
+{
+ return m_sEntryText;
+}
+// -----------------------------------------------------------------------------
+Locale VCLXAccessibleListItem::implGetLocale()
+{
+ return Application::GetSettings().GetLocale();
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleListItem::implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex )
+{
+ nStartIndex = 0;
+ nEndIndex = 0;
+}
+// -----------------------------------------------------------------------------
+// XInterface
+// -----------------------------------------------------------------------------
+Any SAL_CALL VCLXAccessibleListItem::queryInterface( Type const & rType ) throw (RuntimeException)
+{
+ return VCLXAccessibleListItem_BASE::queryInterface( rType );
+}
+// -----------------------------------------------------------------------------
+void SAL_CALL VCLXAccessibleListItem::acquire() throw ()
+{
+ VCLXAccessibleListItem_BASE::acquire();
+}
+// -----------------------------------------------------------------------------
+void SAL_CALL VCLXAccessibleListItem::release() throw ()
+{
+ VCLXAccessibleListItem_BASE::release();
+}
+// -----------------------------------------------------------------------------
+// XTypeProvider
+// -----------------------------------------------------------------------------
+Sequence< Type > SAL_CALL VCLXAccessibleListItem::getTypes( ) throw (RuntimeException)
+{
+ return VCLXAccessibleListItem_BASE::getTypes();
+}
+// -----------------------------------------------------------------------------
+Sequence< sal_Int8 > VCLXAccessibleListItem::getImplementationId() throw (RuntimeException)
+{
+ static ::cppu::OImplementationId* pId = NULL;
+
+ if ( !pId )
+ {
+ ::osl::Guard< ::osl::Mutex > aGuard( m_aMutex );
+
+ if ( !pId )
+ {
+ static ::cppu::OImplementationId aId;
+ pId = &aId;
+ }
+ }
+ return pId->getImplementationId();
+}
+// -----------------------------------------------------------------------------
+// XComponent
+// -----------------------------------------------------------------------------
+void SAL_CALL VCLXAccessibleListItem::disposing()
+{
+ comphelper::AccessibleEventNotifier::TClientId nId( 0 );
+ Reference< XInterface > xEventSource;
+ {
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ VCLXAccessibleListItem_BASE::disposing();
+ m_sEntryText = ::rtl::OUString();
+ m_pListBoxHelper = NULL;
+ m_xParent = NULL;
+ m_xParentContext = NULL;
+
+ nId = m_nClientId;
+ m_nClientId = 0;
+ if ( nId )
+ xEventSource = *this;
+ }
+
+ // Send a disposing to all listeners.
+ if ( nId )
+ comphelper::AccessibleEventNotifier::revokeClientNotifyDisposing( nId, *this );
+}
+// -----------------------------------------------------------------------------
+// XServiceInfo
+// -----------------------------------------------------------------------------
+::rtl::OUString VCLXAccessibleListItem::getImplementationName() throw (RuntimeException)
+{
+ return ::rtl::OUString::createFromAscii( "com.sun.star.comp.toolkit.AccessibleListItem" );
+}
+// -----------------------------------------------------------------------------
+sal_Bool VCLXAccessibleListItem::supportsService( const ::rtl::OUString& rServiceName ) throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames( getSupportedServiceNames() );
+ const ::rtl::OUString* pNames = aNames.getConstArray();
+ const ::rtl::OUString* pEnd = pNames + aNames.getLength();
+ for ( ; pNames != pEnd && !pNames->equals( rServiceName ); ++pNames )
+ ;
+
+ return pNames != pEnd;
+}
+// -----------------------------------------------------------------------------
+Sequence< ::rtl::OUString > VCLXAccessibleListItem::getSupportedServiceNames() throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames(3);
+ aNames[0] = ::rtl::OUString::createFromAscii( "com.sun.star.accessibility.AccessibleContext" );
+ aNames[1] = ::rtl::OUString::createFromAscii( "com.sun.star.accessibility.AccessibleComponent" );
+ aNames[2] = ::rtl::OUString::createFromAscii( "com.sun.star.accessibility.AccessibleListItem" );
+ return aNames;
+}
+// -----------------------------------------------------------------------------
+// XAccessible
+// -----------------------------------------------------------------------------
+Reference< XAccessibleContext > SAL_CALL VCLXAccessibleListItem::getAccessibleContext( ) throw (RuntimeException)
+{
+ return this;
+}
+// -----------------------------------------------------------------------------
+// XAccessibleContext
+// -----------------------------------------------------------------------------
+sal_Int32 SAL_CALL VCLXAccessibleListItem::getAccessibleChildCount( ) throw (RuntimeException)
+{
+ return 0;
+}
+// -----------------------------------------------------------------------------
+Reference< XAccessible > SAL_CALL VCLXAccessibleListItem::getAccessibleChild( sal_Int32 ) throw (RuntimeException)
+{
+ return Reference< XAccessible >();
+}
+// -----------------------------------------------------------------------------
+Reference< XAccessible > SAL_CALL VCLXAccessibleListItem::getAccessibleParent( ) throw (RuntimeException)
+{
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ return m_xParent;
+}
+// -----------------------------------------------------------------------------
+sal_Int32 SAL_CALL VCLXAccessibleListItem::getAccessibleIndexInParent( ) throw (RuntimeException)
+{
+ ::osl::MutexGuard aGuard( m_aMutex );
+ return m_nIndexInParent;
+}
+// -----------------------------------------------------------------------------
+sal_Int16 SAL_CALL VCLXAccessibleListItem::getAccessibleRole( ) throw (RuntimeException)
+{
+ return AccessibleRole::LIST_ITEM;
+ // return AccessibleRole::LABEL;
+}
+// -----------------------------------------------------------------------------
+::rtl::OUString SAL_CALL VCLXAccessibleListItem::getAccessibleDescription( ) throw (RuntimeException)
+{
+ // no description for every item
+ return ::rtl::OUString();
+}
+// -----------------------------------------------------------------------------
+::rtl::OUString SAL_CALL VCLXAccessibleListItem::getAccessibleName( ) throw (RuntimeException)
+{
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ // entry text == accessible name
+ return implGetText();
+}
+// -----------------------------------------------------------------------------
+Reference< XAccessibleRelationSet > SAL_CALL VCLXAccessibleListItem::getAccessibleRelationSet( ) throw (RuntimeException)
+{
+ utl::AccessibleRelationSetHelper* pRelationSetHelper = new utl::AccessibleRelationSetHelper;
+ Reference< XAccessibleRelationSet > xSet = pRelationSetHelper;
+ return xSet;
+}
+// -----------------------------------------------------------------------------
+Reference< XAccessibleStateSet > SAL_CALL VCLXAccessibleListItem::getAccessibleStateSet( ) throw (RuntimeException)
+{
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ utl::AccessibleStateSetHelper* pStateSetHelper = new utl::AccessibleStateSetHelper;
+ Reference< XAccessibleStateSet > xStateSet = pStateSetHelper;
+
+ if ( !rBHelper.bDisposed && !rBHelper.bInDispose )
+ {
+ pStateSetHelper->AddState( AccessibleStateType::TRANSIENT );
+ pStateSetHelper->AddState( AccessibleStateType::SELECTABLE );
+ pStateSetHelper->AddState( AccessibleStateType::ENABLED );
+ pStateSetHelper->AddState( AccessibleStateType::SENSITIVE );
+ if ( m_bSelected )
+ pStateSetHelper->AddState( AccessibleStateType::SELECTED );
+ if ( m_bVisible )
+ {
+ pStateSetHelper->AddState( AccessibleStateType::VISIBLE );
+ pStateSetHelper->AddState( AccessibleStateType::SHOWING );
+ }
+ }
+ else
+ pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
+
+ return xStateSet;
+}
+// -----------------------------------------------------------------------------
+Locale SAL_CALL VCLXAccessibleListItem::getLocale( ) throw (IllegalAccessibleComponentStateException, RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ return implGetLocale();
+}
+// -----------------------------------------------------------------------------
+// XAccessibleComponent
+// -----------------------------------------------------------------------------
+sal_Bool SAL_CALL VCLXAccessibleListItem::containsPoint( const awt::Point& _aPoint ) throw (RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ sal_Bool bInside = sal_False;
+ if ( m_pListBoxHelper )
+ {
+ Rectangle aRect( m_pListBoxHelper->GetBoundingRectangle( (USHORT)m_nIndexInParent ) );
+ aRect.Move(-aRect.TopLeft().X(),-aRect.TopLeft().Y());
+ bInside = aRect.IsInside( VCLPoint( _aPoint ) );
+ }
+ return bInside;
+}
+// -----------------------------------------------------------------------------
+Reference< XAccessible > SAL_CALL VCLXAccessibleListItem::getAccessibleAtPoint( const awt::Point& ) throw (RuntimeException)
+{
+ return Reference< XAccessible >();
+}
+// -----------------------------------------------------------------------------
+awt::Rectangle SAL_CALL VCLXAccessibleListItem::getBounds( ) throw (RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ awt::Rectangle aRect;
+ if ( m_pListBoxHelper )
+ aRect = AWTRectangle( m_pListBoxHelper->GetBoundingRectangle( (USHORT)m_nIndexInParent ) );
+
+ return aRect;
+}
+// -----------------------------------------------------------------------------
+awt::Point SAL_CALL VCLXAccessibleListItem::getLocation( ) throw (RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ Point aPoint(0,0);
+ if ( m_pListBoxHelper )
+ {
+ Rectangle aRect = m_pListBoxHelper->GetBoundingRectangle( (USHORT)m_nIndexInParent );
+ aPoint = aRect.TopLeft();
+ }
+ return AWTPoint( aPoint );
+}
+// -----------------------------------------------------------------------------
+awt::Point SAL_CALL VCLXAccessibleListItem::getLocationOnScreen( ) throw (RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ Point aPoint(0,0);
+ if ( m_pListBoxHelper )
+ {
+ Rectangle aRect = m_pListBoxHelper->GetBoundingRectangle( (USHORT)m_nIndexInParent );
+ aPoint = aRect.TopLeft();
+ aPoint += m_pListBoxHelper->GetWindowExtentsRelative( NULL ).TopLeft();
+ }
+ return AWTPoint( aPoint );
+}
+// -----------------------------------------------------------------------------
+awt::Size SAL_CALL VCLXAccessibleListItem::getSize( ) throw (RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ Size aSize;
+ if ( m_pListBoxHelper )
+ aSize = m_pListBoxHelper->GetBoundingRectangle( (USHORT)m_nIndexInParent ).GetSize();
+
+ return AWTSize( aSize );
+}
+// -----------------------------------------------------------------------------
+void SAL_CALL VCLXAccessibleListItem::grabFocus( ) throw (RuntimeException)
+{
+ // no focus for each item
+}
+// -----------------------------------------------------------------------------
+// XAccessibleText
+// -----------------------------------------------------------------------------
+sal_Int32 SAL_CALL VCLXAccessibleListItem::getCaretPosition() throw (RuntimeException)
+{
+ return -1;
+}
+// -----------------------------------------------------------------------------
+sal_Bool SAL_CALL VCLXAccessibleListItem::setCaretPosition( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ if ( !implIsValidRange( nIndex, nIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ return sal_False;
+}
+// -----------------------------------------------------------------------------
+sal_Unicode SAL_CALL VCLXAccessibleListItem::getCharacter( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ return OCommonAccessibleText::getCharacter( nIndex );
+}
+// -----------------------------------------------------------------------------
+Sequence< PropertyValue > SAL_CALL VCLXAccessibleListItem::getCharacterAttributes( sal_Int32 nIndex, const Sequence< ::rtl::OUString >& ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ ::rtl::OUString sText( implGetText() );
+ if ( !implIsValidIndex( nIndex, sText.getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ return Sequence< PropertyValue >();
+}
+// -----------------------------------------------------------------------------
+awt::Rectangle SAL_CALL VCLXAccessibleListItem::getCharacterBounds( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ ::rtl::OUString sText( implGetText() );
+ if ( !implIsValidIndex( nIndex, sText.getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ awt::Rectangle aBounds( 0, 0, 0, 0 );
+ if ( m_pListBoxHelper )
+ {
+ Rectangle aCharRect = m_pListBoxHelper->GetEntryCharacterBounds( m_nIndexInParent, nIndex );
+ Rectangle aItemRect = m_pListBoxHelper->GetBoundingRectangle( (USHORT)m_nIndexInParent );
+ aCharRect.Move( -aItemRect.Left(), -aItemRect.Top() );
+ aBounds = AWTRectangle( aCharRect );
+ }
+
+ return aBounds;
+}
+// -----------------------------------------------------------------------------
+sal_Int32 SAL_CALL VCLXAccessibleListItem::getCharacterCount() throw (RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ return OCommonAccessibleText::getCharacterCount();
+}
+// -----------------------------------------------------------------------------
+sal_Int32 SAL_CALL VCLXAccessibleListItem::getIndexAtPoint( const awt::Point& aPoint ) throw (RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ sal_Int32 nIndex = -1;
+ if ( m_pListBoxHelper )
+ {
+ USHORT nPos = LISTBOX_ENTRY_NOTFOUND;
+ Rectangle aItemRect = m_pListBoxHelper->GetBoundingRectangle( (USHORT)m_nIndexInParent );
+ Point aPnt( VCLPoint( aPoint ) );
+ aPnt += aItemRect.TopLeft();
+ sal_Int32 nI = m_pListBoxHelper->GetIndexForPoint( aPnt, nPos );
+ if ( nI != -1 && (USHORT)m_nIndexInParent == nPos )
+ nIndex = nI;
+ }
+ return nIndex;
+}
+// -----------------------------------------------------------------------------
+::rtl::OUString SAL_CALL VCLXAccessibleListItem::getSelectedText() throw (RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ return OCommonAccessibleText::getSelectedText();
+}
+// -----------------------------------------------------------------------------
+sal_Int32 SAL_CALL VCLXAccessibleListItem::getSelectionStart() throw (RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ return OCommonAccessibleText::getSelectionStart();
+}
+// -----------------------------------------------------------------------------
+sal_Int32 SAL_CALL VCLXAccessibleListItem::getSelectionEnd() throw (RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ return OCommonAccessibleText::getSelectionEnd();
+}
+// -----------------------------------------------------------------------------
+sal_Bool SAL_CALL VCLXAccessibleListItem::setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ if ( !implIsValidRange( nStartIndex, nEndIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ return sal_False;
+}
+// -----------------------------------------------------------------------------
+::rtl::OUString SAL_CALL VCLXAccessibleListItem::getText() throw (RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ return OCommonAccessibleText::getText();
+}
+// -----------------------------------------------------------------------------
+::rtl::OUString SAL_CALL VCLXAccessibleListItem::getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ return OCommonAccessibleText::getTextRange( nStartIndex, nEndIndex );
+}
+// -----------------------------------------------------------------------------
+::com::sun::star::accessibility::TextSegment SAL_CALL VCLXAccessibleListItem::getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ return OCommonAccessibleText::getTextAtIndex( nIndex, aTextType );
+}
+// -----------------------------------------------------------------------------
+::com::sun::star::accessibility::TextSegment SAL_CALL VCLXAccessibleListItem::getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ return OCommonAccessibleText::getTextBeforeIndex( nIndex, aTextType );
+}
+// -----------------------------------------------------------------------------
+::com::sun::star::accessibility::TextSegment SAL_CALL VCLXAccessibleListItem::getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ return OCommonAccessibleText::getTextBehindIndex( nIndex, aTextType );
+}
+// -----------------------------------------------------------------------------
+sal_Bool SAL_CALL VCLXAccessibleListItem::copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ vos::OGuard aSolarGuard( Application::GetSolarMutex() );
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ checkIndex_Impl( nStartIndex, m_sEntryText );
+ checkIndex_Impl( nEndIndex, m_sEntryText );
+
+ sal_Bool bRet = sal_False;
+ if ( m_pListBoxHelper )
+ {
+ Reference< datatransfer::clipboard::XClipboard > xClipboard = m_pListBoxHelper->GetClipboard();
+ if ( xClipboard.is() )
+ {
+ ::rtl::OUString sText( getTextRange( nStartIndex, nEndIndex ) );
+ ::vcl::unohelper::TextDataObject* pDataObj = new ::vcl::unohelper::TextDataObject( sText );
+
+ const sal_uInt32 nRef = Application::ReleaseSolarMutex();
+ xClipboard->setContents( pDataObj, NULL );
+ Reference< datatransfer::clipboard::XFlushableClipboard > xFlushableClipboard( xClipboard, uno::UNO_QUERY );
+ if( xFlushableClipboard.is() )
+ xFlushableClipboard->flushClipboard();
+ Application::AcquireSolarMutex( nRef );
+
+ bRet = sal_True;
+ }
+ }
+
+ return bRet;
+}
+// -----------------------------------------------------------------------------
+// XAccessibleEventBroadcaster
+// -----------------------------------------------------------------------------
+void SAL_CALL VCLXAccessibleListItem::addEventListener( const Reference< XAccessibleEventListener >& xListener ) throw (RuntimeException)
+{
+ if (xListener.is())
+ {
+ if (!m_nClientId)
+ m_nClientId = comphelper::AccessibleEventNotifier::registerClient( );
+ comphelper::AccessibleEventNotifier::addEventListener( m_nClientId, xListener );
+ }
+}
+// -----------------------------------------------------------------------------
+void SAL_CALL VCLXAccessibleListItem::removeEventListener( const Reference< XAccessibleEventListener >& xListener ) throw (RuntimeException)
+{
+ if ( xListener.is() && m_nClientId )
+ {
+ sal_Int32 nListenerCount = comphelper::AccessibleEventNotifier::removeEventListener( m_nClientId, xListener );
+ if ( !nListenerCount )
+ {
+ // no listeners anymore
+ // -> revoke ourself. This may lead to the notifier thread dying (if we were the last client),
+ // and at least to us not firing any events anymore, in case somebody calls
+ // NotifyAccessibleEvent, again
+ if ( m_nClientId )
+ {
+ comphelper::AccessibleEventNotifier::TClientId nId( m_nClientId );
+ m_nClientId = 0;
+ comphelper::AccessibleEventNotifier::revokeClient( nId );
+ }
+ }
+ }
+}
+// -----------------------------------------------------------------------------
+
+
+
+// AF (Oct. 29 2002): Return black as constant foreground color. This is an
+// initial implementation and has to be substituted by code that determines
+// the color that is actually used.
+sal_Int32 SAL_CALL VCLXAccessibleListItem::getForeground (void)
+ throw (::com::sun::star::uno::RuntimeException)
+{
+ return COL_BLACK;
+}
+
+// AF (Oct. 29 2002): Return white as constant background color. This is an
+// initial implementation and has to be substituted by code that determines
+// the color that is actually used.
+sal_Int32 SAL_CALL VCLXAccessibleListItem::getBackground (void)
+ throw (::com::sun::star::uno::RuntimeException)
+{
+ return COL_WHITE;
+}
+// -----------------------------------------------------------------------------
diff --git a/accessibility/source/standard/vclxaccessiblemenu.cxx b/accessibility/source/standard/vclxaccessiblemenu.cxx
new file mode 100644
index 000000000000..f7e77f3fb8e2
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessiblemenu.cxx
@@ -0,0 +1,255 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+
+// includes --------------------------------------------------------------
+#include <accessibility/standard/vclxaccessiblemenu.hxx>
+
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <vcl/menu.hxx>
+
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::accessibility;
+using namespace ::comphelper;
+
+
+// -----------------------------------------------------------------------------
+// VCLXAccessibleMenu
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleMenu::VCLXAccessibleMenu( Menu* pParent, sal_uInt16 nItemPos, Menu* pMenu )
+ :VCLXAccessibleMenuItem( pParent, nItemPos, pMenu )
+{
+}
+
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleMenu::~VCLXAccessibleMenu()
+{
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleMenu::IsFocused()
+{
+ sal_Bool bFocused = sal_False;
+
+ if ( IsHighlighted() && !IsChildHighlighted() )
+ bFocused = sal_True;
+
+ return bFocused;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleMenu::IsPopupMenuOpen()
+{
+ sal_Bool bPopupMenuOpen = sal_False;
+
+ if ( m_pParent )
+ {
+ PopupMenu* pPopupMenu = m_pParent->GetPopupMenu( m_pParent->GetItemId( m_nItemPos ) );
+ if ( pPopupMenu && pPopupMenu->IsMenuVisible() )
+ bPopupMenuOpen = sal_True;
+ }
+
+ return bPopupMenuOpen;
+}
+
+// -----------------------------------------------------------------------------
+// XInterface
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XINTERFACE2( VCLXAccessibleMenu, VCLXAccessibleMenuItem, VCLXAccessibleMenu_BASE )
+
+// -----------------------------------------------------------------------------
+// XTypeProvider
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleMenu, VCLXAccessibleMenuItem, VCLXAccessibleMenu_BASE )
+
+// -----------------------------------------------------------------------------
+// XServiceInfo
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleMenu::getImplementationName() throw (RuntimeException)
+{
+ return ::rtl::OUString::createFromAscii( "com.sun.star.comp.toolkit.AccessibleMenu" );
+}
+
+// -----------------------------------------------------------------------------
+
+Sequence< ::rtl::OUString > VCLXAccessibleMenu::getSupportedServiceNames() throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames(1);
+ aNames[0] = ::rtl::OUString::createFromAscii( "com.sun.star.awt.AccessibleMenu" );
+ return aNames;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleContext
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleMenu::getAccessibleChildCount( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return GetChildCount();
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > VCLXAccessibleMenu::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( i < 0 || i >= GetChildCount() )
+ throw IndexOutOfBoundsException();
+
+ return GetChild( i );
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int16 VCLXAccessibleMenu::getAccessibleRole( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return AccessibleRole::MENU;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleComponent
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > VCLXAccessibleMenu::getAccessibleAtPoint( const awt::Point& rPoint ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return GetChildAt( rPoint );
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleSelection
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleMenu::selectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nChildIndex < 0 || nChildIndex >= GetChildCount() )
+ throw IndexOutOfBoundsException();
+
+ SelectChild( nChildIndex );
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleMenu::isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nChildIndex < 0 || nChildIndex >= GetChildCount() )
+ throw IndexOutOfBoundsException();
+
+ return IsChildSelected( nChildIndex );
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleMenu::clearAccessibleSelection( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ DeSelectAll();
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleMenu::selectAllAccessibleChildren( ) throw (RuntimeException)
+{
+ // This method makes no sense in a menu, and so does nothing.
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleMenu::getSelectedAccessibleChildCount( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nRet = 0;
+
+ for ( sal_Int32 i = 0, nCount = GetChildCount(); i < nCount; i++ )
+ {
+ if ( IsChildSelected( i ) )
+ ++nRet;
+ }
+
+ return nRet;
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > VCLXAccessibleMenu::getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nSelectedChildIndex < 0 || nSelectedChildIndex >= getSelectedAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+
+ Reference< XAccessible > xChild;
+
+ for ( sal_Int32 i = 0, j = 0, nCount = GetChildCount(); i < nCount; i++ )
+ {
+ if ( IsChildSelected( i ) && ( j++ == nSelectedChildIndex ) )
+ {
+ xChild = GetChild( i );
+ break;
+ }
+ }
+
+ return xChild;
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleMenu::deselectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nChildIndex < 0 || nChildIndex >= GetChildCount() )
+ throw IndexOutOfBoundsException();
+
+ DeSelectAll();
+}
+
+// -----------------------------------------------------------------------------
diff --git a/accessibility/source/standard/vclxaccessiblemenubar.cxx b/accessibility/source/standard/vclxaccessiblemenubar.cxx
new file mode 100644
index 000000000000..825e5990e783
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessiblemenubar.cxx
@@ -0,0 +1,211 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/standard/vclxaccessiblemenubar.hxx>
+
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <vcl/svapp.hxx>
+#include <vcl/window.hxx>
+#include <vcl/menu.hxx>
+
+
+using namespace ::com::sun::star::accessibility;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star;
+using namespace ::comphelper;
+
+
+// -----------------------------------------------------------------------------
+// class VCLXAccessibleMenuBar
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleMenuBar::VCLXAccessibleMenuBar( Menu* pMenu )
+ :OAccessibleMenuComponent( pMenu )
+{
+ if ( pMenu )
+ {
+ m_pWindow = pMenu->GetWindow();
+
+ if ( m_pWindow )
+ m_pWindow->AddEventListener( LINK( this, VCLXAccessibleMenuBar, WindowEventListener ) );
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleMenuBar::~VCLXAccessibleMenuBar()
+{
+ if ( m_pWindow )
+ m_pWindow->RemoveEventListener( LINK( this, VCLXAccessibleMenuBar, WindowEventListener ) );
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleMenuBar::IsFocused()
+{
+ sal_Bool bFocused = sal_False;
+
+ if ( m_pWindow && m_pWindow->HasFocus() && !IsChildHighlighted() )
+ bFocused = sal_True;
+
+ return bFocused;
+}
+
+// -----------------------------------------------------------------------------
+
+IMPL_LINK( VCLXAccessibleMenuBar, WindowEventListener, VclSimpleEvent*, pEvent )
+{
+ DBG_ASSERT( pEvent && pEvent->ISA( VclWindowEvent ), "VCLXAccessibleMenuBar::WindowEventListener: unknown window event!" );
+ if ( pEvent && pEvent->ISA( VclWindowEvent ) )
+ {
+ DBG_ASSERT( ((VclWindowEvent*)pEvent)->GetWindow(), "VCLXAccessibleMenuBar::WindowEventListener: no window!" );
+ if ( !((VclWindowEvent*)pEvent)->GetWindow()->IsAccessibilityEventsSuppressed() || ( pEvent->GetId() == VCLEVENT_OBJECT_DYING ) )
+ {
+ ProcessWindowEvent( *(VclWindowEvent*)pEvent );
+ }
+ }
+ return 0;
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleMenuBar::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
+{
+ switch ( rVclWindowEvent.GetId() )
+ {
+ case VCLEVENT_WINDOW_GETFOCUS:
+ case VCLEVENT_WINDOW_LOSEFOCUS:
+ {
+ SetFocused( rVclWindowEvent.GetId() == VCLEVENT_WINDOW_GETFOCUS );
+ }
+ break;
+ case VCLEVENT_OBJECT_DYING:
+ {
+ if ( m_pWindow )
+ {
+ m_pWindow->RemoveEventListener( LINK( this, VCLXAccessibleMenuBar, WindowEventListener ) );
+ m_pWindow = NULL;
+ }
+ }
+ break;
+ default:
+ {
+ }
+ break;
+ }
+}
+
+// -----------------------------------------------------------------------------
+// XComponent
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleMenuBar::disposing()
+{
+ OAccessibleMenuComponent::disposing();
+
+ if ( m_pWindow )
+ {
+ m_pWindow->RemoveEventListener( LINK( this, VCLXAccessibleMenuBar, WindowEventListener ) );
+ m_pWindow = NULL;
+ }
+}
+
+// -----------------------------------------------------------------------------
+// XServiceInfo
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleMenuBar::getImplementationName() throw (RuntimeException)
+{
+ return ::rtl::OUString::createFromAscii( "com.sun.star.comp.toolkit.AccessibleMenuBar" );
+}
+
+// -----------------------------------------------------------------------------
+
+Sequence< ::rtl::OUString > VCLXAccessibleMenuBar::getSupportedServiceNames() throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames(1);
+ aNames[0] = ::rtl::OUString::createFromAscii( "com.sun.star.awt.AccessibleMenuBar" );
+ return aNames;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleContext
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleMenuBar::getAccessibleIndexInParent( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nIndexInParent = -1;
+
+ if ( m_pMenu )
+ {
+ Window* pWindow = m_pMenu->GetWindow();
+ if ( pWindow )
+ {
+ Window* pParent = pWindow->GetAccessibleParentWindow();
+ if ( pParent )
+ {
+ for ( USHORT n = pParent->GetAccessibleChildWindowCount(); n; )
+ {
+ Window* pChild = pParent->GetAccessibleChildWindow( --n );
+ if ( pChild == pWindow )
+ {
+ nIndexInParent = n;
+ break;
+ }
+ }
+ }
+ }
+ }
+
+ return nIndexInParent;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int16 VCLXAccessibleMenuBar::getAccessibleRole( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return AccessibleRole::MENU_BAR;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleExtendedComponent
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleMenuBar::getBackground( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return Application::GetSettings().GetStyleSettings().GetMenuBarColor().GetColor();
+}
+
+// -----------------------------------------------------------------------------
diff --git a/accessibility/source/standard/vclxaccessiblemenuitem.cxx b/accessibility/source/standard/vclxaccessiblemenuitem.cxx
new file mode 100644
index 000000000000..7332386e4303
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessiblemenuitem.cxx
@@ -0,0 +1,607 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/standard/vclxaccessiblemenuitem.hxx>
+#include <accessibility/helper/accresmgr.hxx>
+#include <accessibility/helper/accessiblestrings.hrc>
+#include <toolkit/helper/convert.hxx>
+#include <accessibility/helper/characterattributeshelper.hxx>
+#include <comphelper/accessiblekeybindinghelper.hxx>
+#include <com/sun/star/awt/KeyModifier.hpp>
+
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <com/sun/star/datatransfer/clipboard/XClipboard.hpp>
+#include <com/sun/star/datatransfer/clipboard/XFlushableClipboard.hpp>
+#include <unotools/accessiblestatesethelper.hxx>
+#include <comphelper/sequence.hxx>
+#include <vcl/svapp.hxx>
+#include <vcl/window.hxx>
+#include <vcl/menu.hxx>
+#include <vcl/unohelp2.hxx>
+
+#include <memory>
+
+
+using namespace ::com::sun::star::accessibility;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::beans;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star;
+using namespace ::comphelper;
+
+
+// -----------------------------------------------------------------------------
+// class VCLXAccessibleMenuItem
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleMenuItem::VCLXAccessibleMenuItem( Menu* pParent, sal_uInt16 nItemPos, Menu* pMenu )
+ :OAccessibleMenuItemComponent( pParent, nItemPos, pMenu )
+{
+}
+
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleMenuItem::~VCLXAccessibleMenuItem()
+{
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleMenuItem::IsFocused()
+{
+ return IsHighlighted();
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleMenuItem::IsSelected()
+{
+ return IsHighlighted();
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleMenuItem::IsChecked()
+{
+ sal_Bool bChecked = sal_False;
+
+ if ( m_pParent )
+ {
+ sal_uInt16 nItemId = m_pParent->GetItemId( m_nItemPos );
+ if ( m_pParent->IsItemChecked( nItemId ) )
+ bChecked = sal_True;
+ }
+
+ return bChecked;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleMenuItem::IsHighlighted()
+{
+ sal_Bool bHighlighted = sal_False;
+
+ if ( m_pParent && m_pParent->IsHighlighted( m_nItemPos ) )
+ bHighlighted = sal_True;
+
+ return bHighlighted;
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleMenuItem::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
+{
+ OAccessibleMenuItemComponent::FillAccessibleStateSet( rStateSet );
+
+ rStateSet.AddState( AccessibleStateType::FOCUSABLE );
+
+ if ( IsFocused() )
+ rStateSet.AddState( AccessibleStateType::FOCUSED );
+
+ rStateSet.AddState( AccessibleStateType::SELECTABLE );
+
+ if ( IsSelected() )
+ rStateSet.AddState( AccessibleStateType::SELECTED );
+
+ if ( IsChecked() )
+ rStateSet.AddState( AccessibleStateType::CHECKED );
+}
+
+// -----------------------------------------------------------------------------
+// OCommonAccessibleText
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleMenuItem::implGetText()
+{
+ return m_sItemText;
+}
+
+// -----------------------------------------------------------------------------
+
+Locale VCLXAccessibleMenuItem::implGetLocale()
+{
+ return Application::GetSettings().GetLocale();
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleMenuItem::implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex )
+{
+ nStartIndex = 0;
+ nEndIndex = 0;
+}
+
+// -----------------------------------------------------------------------------
+// XInterface
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XINTERFACE2( VCLXAccessibleMenuItem, OAccessibleMenuItemComponent, VCLXAccessibleMenuItem_BASE )
+
+// -----------------------------------------------------------------------------
+// XTypeProvider
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleMenuItem, OAccessibleMenuItemComponent, VCLXAccessibleMenuItem_BASE )
+
+// -----------------------------------------------------------------------------
+// XServiceInfo
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleMenuItem::getImplementationName() throw (RuntimeException)
+{
+ return ::rtl::OUString::createFromAscii( "com.sun.star.comp.toolkit.AccessibleMenuItem" );
+}
+
+// -----------------------------------------------------------------------------
+
+Sequence< ::rtl::OUString > VCLXAccessibleMenuItem::getSupportedServiceNames() throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames(1);
+ aNames[0] = ::rtl::OUString::createFromAscii( "com.sun.star.awt.AccessibleMenuItem" );
+ return aNames;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleContext
+// -----------------------------------------------------------------------------
+
+sal_Int16 VCLXAccessibleMenuItem::getAccessibleRole( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return AccessibleRole::MENU_ITEM;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleText
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleMenuItem::getCaretPosition() throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return -1;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleMenuItem::setCaretPosition( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+
+ OExternalLockGuard aGuard( this );
+
+ if ( !implIsValidRange( nIndex, nIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ return sal_False;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Unicode VCLXAccessibleMenuItem::getCharacter( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return OCommonAccessibleText::getCharacter( nIndex );
+}
+
+// -----------------------------------------------------------------------------
+
+Sequence< PropertyValue > VCLXAccessibleMenuItem::getCharacterAttributes( sal_Int32 nIndex, const Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Sequence< PropertyValue > aValues;
+ ::rtl::OUString sText( implGetText() );
+
+ if ( !implIsValidIndex( nIndex, sText.getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ Font aFont = Application::GetSettings().GetStyleSettings().GetMenuFont();
+ sal_Int32 nBackColor = getBackground();
+ sal_Int32 nColor = getForeground();
+ ::std::auto_ptr< CharacterAttributesHelper > pHelper( new CharacterAttributesHelper( aFont, nBackColor, nColor ) );
+ aValues = pHelper->GetCharacterAttributes( aRequestedAttributes );
+
+ return aValues;
+}
+
+// -----------------------------------------------------------------------------
+
+awt::Rectangle VCLXAccessibleMenuItem::getCharacterBounds( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( !implIsValidIndex( nIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ awt::Rectangle aBounds( 0, 0, 0, 0 );
+ if ( m_pParent )
+ {
+ sal_uInt16 nItemId = m_pParent->GetItemId( m_nItemPos );
+ Rectangle aItemRect = m_pParent->GetBoundingRectangle( m_nItemPos );
+ Rectangle aCharRect = m_pParent->GetCharacterBounds( nItemId, nIndex );
+ aCharRect.Move( -aItemRect.Left(), -aItemRect.Top() );
+ aBounds = AWTRectangle( aCharRect );
+ }
+
+ return aBounds;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleMenuItem::getCharacterCount() throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return OCommonAccessibleText::getCharacterCount();
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleMenuItem::getIndexAtPoint( const awt::Point& aPoint ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nIndex = -1;
+ if ( m_pParent )
+ {
+ sal_uInt16 nItemId = 0;
+ Rectangle aItemRect = m_pParent->GetBoundingRectangle( m_nItemPos );
+ Point aPnt( VCLPoint( aPoint ) );
+ aPnt += aItemRect.TopLeft();
+ sal_Int32 nI = m_pParent->GetIndexForPoint( aPnt, nItemId );
+ if ( nI != -1 && m_pParent->GetItemId( m_nItemPos ) == nItemId )
+ nIndex = nI;
+ }
+
+ return nIndex;
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleMenuItem::getSelectedText() throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return OCommonAccessibleText::getSelectedText();
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleMenuItem::getSelectionStart() throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return OCommonAccessibleText::getSelectionStart();
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleMenuItem::getSelectionEnd() throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return OCommonAccessibleText::getSelectionEnd();
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleMenuItem::setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( !implIsValidRange( nStartIndex, nEndIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ return sal_False;
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleMenuItem::getText() throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return OCommonAccessibleText::getText();
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleMenuItem::getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return OCommonAccessibleText::getTextRange( nStartIndex, nEndIndex );
+}
+
+// -----------------------------------------------------------------------------
+
+::com::sun::star::accessibility::TextSegment VCLXAccessibleMenuItem::getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return OCommonAccessibleText::getTextAtIndex( nIndex, aTextType );
+}
+
+// -----------------------------------------------------------------------------
+
+::com::sun::star::accessibility::TextSegment VCLXAccessibleMenuItem::getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return OCommonAccessibleText::getTextBeforeIndex( nIndex, aTextType );
+}
+
+// -----------------------------------------------------------------------------
+
+::com::sun::star::accessibility::TextSegment VCLXAccessibleMenuItem::getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return OCommonAccessibleText::getTextBehindIndex( nIndex, aTextType );
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleMenuItem::copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Bool bReturn = sal_False;
+
+ if ( m_pParent )
+ {
+ Window* pWindow = m_pParent->GetWindow();
+ if ( pWindow )
+ {
+ Reference< datatransfer::clipboard::XClipboard > xClipboard = pWindow->GetClipboard();
+ if ( xClipboard.is() )
+ {
+ ::rtl::OUString sText( getTextRange( nStartIndex, nEndIndex ) );
+
+ ::vcl::unohelper::TextDataObject* pDataObj = new ::vcl::unohelper::TextDataObject( sText );
+ const sal_uInt32 nRef = Application::ReleaseSolarMutex();
+ xClipboard->setContents( pDataObj, NULL );
+
+ Reference< datatransfer::clipboard::XFlushableClipboard > xFlushableClipboard( xClipboard, uno::UNO_QUERY );
+ if( xFlushableClipboard.is() )
+ xFlushableClipboard->flushClipboard();
+
+ Application::AcquireSolarMutex( nRef );
+
+ bReturn = sal_True;
+ }
+ }
+ }
+
+ return bReturn;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleAction
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleMenuItem::getAccessibleActionCount( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return 1;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleMenuItem::doAccessibleAction ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
+ throw IndexOutOfBoundsException();
+
+ Click();
+
+ return sal_True;
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleMenuItem::getAccessibleActionDescription ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
+ throw IndexOutOfBoundsException();
+
+ return ::rtl::OUString( TK_RES_STRING( RID_STR_ACC_ACTION_CLICK ) );
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessibleKeyBinding > VCLXAccessibleMenuItem::getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
+ throw IndexOutOfBoundsException();
+
+ OAccessibleKeyBindingHelper* pKeyBindingHelper = new OAccessibleKeyBindingHelper();
+ Reference< XAccessibleKeyBinding > xKeyBinding = pKeyBindingHelper;
+
+ if ( m_pParent )
+ {
+ // create auto mnemonics
+ if ( Application::GetSettings().GetStyleSettings().GetAutoMnemonic() && !( m_pParent->GetMenuFlags() & MENU_FLAG_NOAUTOMNEMONICS ) )
+ m_pParent->CreateAutoMnemonics();
+
+ // activation key
+ KeyEvent aKeyEvent = m_pParent->GetActivationKey( m_pParent->GetItemId( m_nItemPos ) );
+ KeyCode aKeyCode = aKeyEvent.GetKeyCode();
+ Sequence< awt::KeyStroke > aSeq1(1);
+ aSeq1[0].Modifiers = 0;
+ Reference< XAccessible > xParent( getAccessibleParent() );
+ if ( xParent.is() )
+ {
+ Reference< XAccessibleContext > xParentContext( xParent->getAccessibleContext() );
+ if ( xParentContext.is() && xParentContext->getAccessibleRole() == AccessibleRole::MENU_BAR )
+ aSeq1[0].Modifiers |= awt::KeyModifier::MOD2;
+ }
+ aSeq1[0].KeyCode = aKeyCode.GetCode();
+ aSeq1[0].KeyChar = aKeyEvent.GetCharCode();
+ aSeq1[0].KeyFunc = static_cast< sal_Int16 >( aKeyCode.GetFunction() );
+ pKeyBindingHelper->AddKeyBinding( aSeq1 );
+
+ // complete menu activation key sequence
+ Sequence< awt::KeyStroke > aSeq;
+ if ( xParent.is() )
+ {
+ Reference< XAccessibleContext > xParentContext( xParent->getAccessibleContext() );
+ if ( xParentContext.is() && xParentContext->getAccessibleRole() == AccessibleRole::MENU )
+ {
+ Reference< XAccessibleAction > xAction( xParentContext, UNO_QUERY );
+ if ( xAction.is() && xAction->getAccessibleActionCount() > 0 )
+ {
+ Reference< XAccessibleKeyBinding > xKeyB( xAction->getAccessibleActionKeyBinding( 0 ) );
+ if ( xKeyB.is() && xKeyB->getAccessibleKeyBindingCount() > 1 )
+ aSeq = xKeyB->getAccessibleKeyBinding( 1 );
+ }
+ }
+ }
+ Sequence< awt::KeyStroke > aSeq2 = ::comphelper::concatSequences( aSeq, aSeq1 );
+ pKeyBindingHelper->AddKeyBinding( aSeq2 );
+
+ // accelerator key
+ KeyCode aAccelKeyCode = m_pParent->GetAccelKey( m_pParent->GetItemId( m_nItemPos ) );
+ if ( aAccelKeyCode.GetCode() != 0 )
+ {
+ Sequence< awt::KeyStroke > aSeq3(1);
+ aSeq3[0].Modifiers = 0;
+ if ( aAccelKeyCode.IsShift() )
+ aSeq3[0].Modifiers |= awt::KeyModifier::SHIFT;
+ if ( aAccelKeyCode.IsMod1() )
+ aSeq3[0].Modifiers |= awt::KeyModifier::MOD1;
+ if ( aAccelKeyCode.IsMod2() )
+ aSeq3[0].Modifiers |= awt::KeyModifier::MOD2;
+ if ( aAccelKeyCode.IsMod3() )
+ aSeq3[0].Modifiers |= awt::KeyModifier::MOD3;
+ aSeq3[0].KeyCode = aAccelKeyCode.GetCode();
+ aSeq3[0].KeyFunc = static_cast< sal_Int16 >( aAccelKeyCode.GetFunction() );
+ pKeyBindingHelper->AddKeyBinding( aSeq3 );
+ }
+ }
+
+ return xKeyBinding;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleValue
+// -----------------------------------------------------------------------------
+
+Any VCLXAccessibleMenuItem::getCurrentValue( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Any aValue;
+ if ( IsSelected() )
+ aValue <<= (sal_Int32) 1;
+ else
+ aValue <<= (sal_Int32) 0;
+
+ return aValue;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleMenuItem::setCurrentValue( const Any& aNumber ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Bool bReturn = sal_False;
+ sal_Int32 nValue = 0;
+ OSL_VERIFY( aNumber >>= nValue );
+
+ if ( nValue <= 0 )
+ {
+ DeSelect();
+ bReturn = sal_True;
+ }
+ else if ( nValue >= 1 )
+ {
+ Select();
+ bReturn = sal_True;
+ }
+
+ return bReturn;
+}
+
+// -----------------------------------------------------------------------------
+
+Any VCLXAccessibleMenuItem::getMaximumValue( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Any aValue;
+ aValue <<= (sal_Int32) 1;
+
+ return aValue;
+}
+
+// -----------------------------------------------------------------------------
+
+Any VCLXAccessibleMenuItem::getMinimumValue( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Any aValue;
+ aValue <<= (sal_Int32) 0;
+
+ return aValue;
+}
+
+// -----------------------------------------------------------------------------
diff --git a/accessibility/source/standard/vclxaccessiblemenuseparator.cxx b/accessibility/source/standard/vclxaccessiblemenuseparator.cxx
new file mode 100644
index 000000000000..07c8c0f2a3d4
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessiblemenuseparator.cxx
@@ -0,0 +1,85 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/standard/vclxaccessiblemenuseparator.hxx>
+
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+
+
+using namespace ::com::sun::star::accessibility;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star;
+using namespace ::comphelper;
+
+
+// -----------------------------------------------------------------------------
+// class VCLXAccessibleMenuSeparator
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleMenuSeparator::VCLXAccessibleMenuSeparator( Menu* pParent, sal_uInt16 nItemPos, Menu* pMenu )
+ :OAccessibleMenuItemComponent( pParent, nItemPos, pMenu )
+{
+}
+
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleMenuSeparator::~VCLXAccessibleMenuSeparator()
+{
+}
+
+// -----------------------------------------------------------------------------
+// XServiceInfo
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleMenuSeparator::getImplementationName() throw (RuntimeException)
+{
+ return ::rtl::OUString::createFromAscii( "com.sun.star.comp.toolkit.AccessibleMenuSeparator" );
+}
+
+// -----------------------------------------------------------------------------
+
+Sequence< ::rtl::OUString > VCLXAccessibleMenuSeparator::getSupportedServiceNames() throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames(1);
+ aNames[0] = ::rtl::OUString::createFromAscii( "com.sun.star.awt.AccessibleMenuSeparator" );
+ return aNames;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleContext
+// -----------------------------------------------------------------------------
+
+sal_Int16 VCLXAccessibleMenuSeparator::getAccessibleRole( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return AccessibleRole::SEPARATOR;
+}
+
+// -----------------------------------------------------------------------------
diff --git a/accessibility/source/standard/vclxaccessiblepopupmenu.cxx b/accessibility/source/standard/vclxaccessiblepopupmenu.cxx
new file mode 100644
index 000000000000..328e015c60e5
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessiblepopupmenu.cxx
@@ -0,0 +1,111 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/standard/vclxaccessiblepopupmenu.hxx>
+
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <vcl/svapp.hxx>
+
+using namespace ::com::sun::star::accessibility;
+using namespace ::com::sun::star::uno;
+using namespace ::comphelper;
+
+
+// -----------------------------------------------------------------------------
+// class VCLXAccessiblePopupMenu
+// -----------------------------------------------------------------------------
+
+VCLXAccessiblePopupMenu::VCLXAccessiblePopupMenu( Menu* pMenu )
+ :OAccessibleMenuComponent( pMenu )
+{
+}
+
+// -----------------------------------------------------------------------------
+
+VCLXAccessiblePopupMenu::~VCLXAccessiblePopupMenu()
+{
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessiblePopupMenu::IsFocused()
+{
+ return !IsChildHighlighted();
+}
+
+// -----------------------------------------------------------------------------
+// XServiceInfo
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessiblePopupMenu::getImplementationName() throw (RuntimeException)
+{
+ return ::rtl::OUString::createFromAscii( "com.sun.star.comp.toolkit.AccessiblePopupMenu" );
+}
+
+// -----------------------------------------------------------------------------
+
+Sequence< ::rtl::OUString > VCLXAccessiblePopupMenu::getSupportedServiceNames() throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames(1);
+ aNames[0] = ::rtl::OUString::createFromAscii( "com.sun.star.awt.AccessiblePopupMenu" );
+ return aNames;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleContext
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessiblePopupMenu::getAccessibleIndexInParent( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return 0;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int16 VCLXAccessiblePopupMenu::getAccessibleRole( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return AccessibleRole::POPUP_MENU;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleExtendedComponent
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessiblePopupMenu::getBackground( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return Application::GetSettings().GetStyleSettings().GetMenuColor().GetColor();
+}
+
+// -----------------------------------------------------------------------------
diff --git a/accessibility/source/standard/vclxaccessibleradiobutton.cxx b/accessibility/source/standard/vclxaccessibleradiobutton.cxx
new file mode 100644
index 000000000000..76940967fcce
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessibleradiobutton.cxx
@@ -0,0 +1,314 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+
+// includes --------------------------------------------------------------
+#include <accessibility/standard/vclxaccessibleradiobutton.hxx>
+
+#include <toolkit/awt/vclxwindows.hxx>
+#include <accessibility/helper/accresmgr.hxx>
+#include <accessibility/helper/accessiblestrings.hrc>
+
+#include <unotools/accessiblerelationsethelper.hxx>
+#include <unotools/accessiblestatesethelper.hxx>
+#include <comphelper/accessiblekeybindinghelper.hxx>
+#include <com/sun/star/awt/KeyModifier.hpp>
+#include <com/sun/star/accessibility/AccessibleRelationType.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <cppuhelper/typeprovider.hxx>
+#include <comphelper/sequence.hxx>
+#include <vcl/window.hxx>
+#include <vcl/button.hxx>
+
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::beans;
+using namespace ::com::sun::star::accessibility;
+using namespace ::comphelper;
+
+
+// -----------------------------------------------------------------------------
+// VCLXAccessibleRadioButton
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleRadioButton::VCLXAccessibleRadioButton( VCLXWindow* pVCLWindow )
+ :VCLXAccessibleTextComponent( pVCLWindow )
+{
+}
+
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleRadioButton::~VCLXAccessibleRadioButton()
+{
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleRadioButton::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
+{
+ switch ( rVclWindowEvent.GetId() )
+ {
+ case VCLEVENT_RADIOBUTTON_TOGGLE:
+ {
+ Any aOldValue;
+ Any aNewValue;
+
+ VCLXRadioButton* pVCLXRadioButton = static_cast< VCLXRadioButton* >( GetVCLXWindow() );
+ if ( pVCLXRadioButton && pVCLXRadioButton->getState() )
+ aNewValue <<= AccessibleStateType::CHECKED;
+ else
+ aOldValue <<= AccessibleStateType::CHECKED;
+
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ }
+ break;
+ default:
+ VCLXAccessibleTextComponent::ProcessWindowEvent( rVclWindowEvent );
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleRadioButton::FillAccessibleRelationSet( utl::AccessibleRelationSetHelper& rRelationSet )
+{
+ VCLXAccessibleTextComponent::FillAccessibleRelationSet( rRelationSet );
+
+ RadioButton* pRadioButton = dynamic_cast< RadioButton* >( GetWindow() );
+ if ( pRadioButton )
+ {
+ ::std::vector< RadioButton* > aGroup;
+ pRadioButton->GetRadioButtonGroup( aGroup, true );
+ if ( !aGroup.empty() )
+ {
+ sal_Int32 i = 0;
+ Sequence< Reference< XInterface > > aSequence( static_cast< sal_Int32 >( aGroup.size() ) );
+ ::std::vector< RadioButton* >::const_iterator aEndItr = aGroup.end();
+ for ( ::std::vector< RadioButton* >::const_iterator aItr = aGroup.begin(); aItr < aEndItr; ++aItr )
+ {
+ aSequence[i++] = (*aItr)->GetAccessible();
+ }
+ rRelationSet.AddRelation( AccessibleRelation( AccessibleRelationType::MEMBER_OF, aSequence ) );
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleRadioButton::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
+{
+ VCLXAccessibleTextComponent::FillAccessibleStateSet( rStateSet );
+
+ VCLXRadioButton* pVCLXRadioButton = static_cast< VCLXRadioButton* >( GetVCLXWindow() );
+ if ( pVCLXRadioButton )
+ {
+ rStateSet.AddState( AccessibleStateType::FOCUSABLE );
+ if ( pVCLXRadioButton->getState() )
+ rStateSet.AddState( AccessibleStateType::CHECKED );
+ }
+}
+
+// -----------------------------------------------------------------------------
+// XInterface
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XINTERFACE2( VCLXAccessibleRadioButton, VCLXAccessibleTextComponent, VCLXAccessibleRadioButton_BASE )
+
+// -----------------------------------------------------------------------------
+// XTypeProvider
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleRadioButton, VCLXAccessibleTextComponent, VCLXAccessibleRadioButton_BASE )
+
+// -----------------------------------------------------------------------------
+// XServiceInfo
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleRadioButton::getImplementationName() throw (RuntimeException)
+{
+ return ::rtl::OUString::createFromAscii( "com.sun.star.comp.toolkit.AccessibleRadioButton" );
+}
+
+// -----------------------------------------------------------------------------
+
+Sequence< ::rtl::OUString > VCLXAccessibleRadioButton::getSupportedServiceNames() throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames(1);
+ aNames[0] = ::rtl::OUString::createFromAscii( "com.sun.star.awt.AccessibleRadioButton" );
+ return aNames;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleAction
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleRadioButton::getAccessibleActionCount( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return 1;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleRadioButton::doAccessibleAction ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
+ throw IndexOutOfBoundsException();
+
+ VCLXRadioButton* pVCLXRadioButton = static_cast< VCLXRadioButton* >( GetVCLXWindow() );
+ if ( pVCLXRadioButton && !pVCLXRadioButton->getState() )
+ pVCLXRadioButton->setState( sal_True );
+
+ return sal_True;
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleRadioButton::getAccessibleActionDescription ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
+ throw IndexOutOfBoundsException();
+
+ return ::rtl::OUString( TK_RES_STRING( RID_STR_ACC_ACTION_CLICK ) );
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessibleKeyBinding > VCLXAccessibleRadioButton::getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
+ throw IndexOutOfBoundsException();
+
+ OAccessibleKeyBindingHelper* pKeyBindingHelper = new OAccessibleKeyBindingHelper();
+ Reference< XAccessibleKeyBinding > xKeyBinding = pKeyBindingHelper;
+
+ Window* pWindow = GetWindow();
+ if ( pWindow )
+ {
+ KeyEvent aKeyEvent = pWindow->GetActivationKey();
+ KeyCode aKeyCode = aKeyEvent.GetKeyCode();
+ if ( aKeyCode.GetCode() != 0 )
+ {
+ awt::KeyStroke aKeyStroke;
+ aKeyStroke.Modifiers = 0;
+ if ( aKeyCode.IsShift() )
+ aKeyStroke.Modifiers |= awt::KeyModifier::SHIFT;
+ if ( aKeyCode.IsMod1() )
+ aKeyStroke.Modifiers |= awt::KeyModifier::MOD1;
+ if ( aKeyCode.IsMod2() )
+ aKeyStroke.Modifiers |= awt::KeyModifier::MOD2;
+ if ( aKeyCode.IsMod3() )
+ aKeyStroke.Modifiers |= awt::KeyModifier::MOD3;
+ aKeyStroke.KeyCode = aKeyCode.GetCode();
+ aKeyStroke.KeyChar = aKeyEvent.GetCharCode();
+ aKeyStroke.KeyFunc = static_cast< sal_Int16 >( aKeyCode.GetFunction() );
+ pKeyBindingHelper->AddKeyBinding( aKeyStroke );
+ }
+ }
+
+ return xKeyBinding;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleValue
+// -----------------------------------------------------------------------------
+
+Any VCLXAccessibleRadioButton::getCurrentValue( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Any aValue;
+
+ VCLXRadioButton* pVCLXRadioButton = static_cast< VCLXRadioButton* >( GetVCLXWindow() );
+ if ( pVCLXRadioButton )
+ aValue <<= (sal_Int32) pVCLXRadioButton->getState();
+
+ return aValue;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleRadioButton::setCurrentValue( const Any& aNumber ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Bool bReturn = sal_False;
+
+ VCLXRadioButton* pVCLXRadioButton = static_cast< VCLXRadioButton* >( GetVCLXWindow() );
+ if ( pVCLXRadioButton )
+ {
+ sal_Int32 nValue = 0;
+ OSL_VERIFY( aNumber >>= nValue );
+
+ if ( nValue < 0 )
+ nValue = 0;
+ else if ( nValue > 1 )
+ nValue = 1;
+
+ pVCLXRadioButton->setState( (sal_Bool) nValue );
+ bReturn = sal_True;
+ }
+
+ return bReturn;
+}
+
+// -----------------------------------------------------------------------------
+
+Any VCLXAccessibleRadioButton::getMaximumValue( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Any aValue;
+ aValue <<= (sal_Int32) 1;
+
+ return aValue;
+}
+
+// -----------------------------------------------------------------------------
+
+Any VCLXAccessibleRadioButton::getMinimumValue( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Any aValue;
+ aValue <<= (sal_Int32) 0;
+
+ return aValue;
+}
+
+// -----------------------------------------------------------------------------
diff --git a/accessibility/source/standard/vclxaccessiblescrollbar.cxx b/accessibility/source/standard/vclxaccessiblescrollbar.cxx
new file mode 100644
index 000000000000..9bd9cf45f94b
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessiblescrollbar.cxx
@@ -0,0 +1,280 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+
+// includes --------------------------------------------------------------
+#include <accessibility/standard/vclxaccessiblescrollbar.hxx>
+
+#include <toolkit/awt/vclxwindows.hxx>
+#include <accessibility/helper/accresmgr.hxx>
+#include <accessibility/helper/accessiblestrings.hrc>
+
+#include <unotools/accessiblestatesethelper.hxx>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/awt/ScrollBarOrientation.hpp>
+#include <cppuhelper/typeprovider.hxx>
+#include <comphelper/sequence.hxx>
+#include <vcl/scrbar.hxx>
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::awt;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::beans;
+using namespace ::com::sun::star::accessibility;
+using namespace ::comphelper;
+
+
+// -----------------------------------------------------------------------------
+// VCLXAccessibleScrollBar
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleScrollBar::VCLXAccessibleScrollBar( VCLXWindow* pVCLWindow )
+ :VCLXAccessibleComponent( pVCLWindow )
+{
+}
+
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleScrollBar::~VCLXAccessibleScrollBar()
+{
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleScrollBar::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
+{
+ switch ( rVclWindowEvent.GetId() )
+ {
+ case VCLEVENT_SCROLLBAR_SCROLL:
+ {
+ NotifyAccessibleEvent( AccessibleEventId::VALUE_CHANGED, Any(), Any() );
+ }
+ break;
+ default:
+ VCLXAccessibleComponent::ProcessWindowEvent( rVclWindowEvent );
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleScrollBar::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
+{
+ VCLXAccessibleComponent::FillAccessibleStateSet( rStateSet );
+
+ VCLXScrollBar* pVCLXScrollBar = static_cast< VCLXScrollBar* >( GetVCLXWindow() );
+ if ( pVCLXScrollBar )
+ {
+ rStateSet.AddState( AccessibleStateType::FOCUSABLE );
+ if ( pVCLXScrollBar->getOrientation() == ScrollBarOrientation::HORIZONTAL )
+ rStateSet.AddState( AccessibleStateType::HORIZONTAL );
+ else if ( pVCLXScrollBar->getOrientation() == ScrollBarOrientation::VERTICAL )
+ rStateSet.AddState( AccessibleStateType::VERTICAL );
+ }
+}
+
+// -----------------------------------------------------------------------------
+// XInterface
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XINTERFACE2( VCLXAccessibleScrollBar, VCLXAccessibleComponent, VCLXAccessibleScrollBar_BASE )
+
+// -----------------------------------------------------------------------------
+// XTypeProvider
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleScrollBar, VCLXAccessibleComponent, VCLXAccessibleScrollBar_BASE )
+
+// -----------------------------------------------------------------------------
+// XServiceInfo
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleScrollBar::getImplementationName() throw (RuntimeException)
+{
+ return ::rtl::OUString::createFromAscii( "com.sun.star.comp.toolkit.AccessibleScrollBar" );
+}
+
+// -----------------------------------------------------------------------------
+
+Sequence< ::rtl::OUString > VCLXAccessibleScrollBar::getSupportedServiceNames() throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames(1);
+ aNames[0] = ::rtl::OUString::createFromAscii( "com.sun.star.awt.AccessibleScrollBar" );
+ return aNames;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleAction
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleScrollBar::getAccessibleActionCount( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return 4;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleScrollBar::doAccessibleAction ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
+ throw IndexOutOfBoundsException();
+
+ sal_Bool bReturn = sal_False;
+ ScrollBar* pScrollBar = static_cast< ScrollBar* >( GetWindow() );
+ if ( pScrollBar )
+ {
+ ScrollType eScrollType;
+ switch ( nIndex )
+ {
+ case 0: eScrollType = SCROLL_LINEUP; break;
+ case 1: eScrollType = SCROLL_LINEDOWN; break;
+ case 2: eScrollType = SCROLL_PAGEUP; break;
+ case 3: eScrollType = SCROLL_PAGEDOWN; break;
+ default: eScrollType = SCROLL_DONTKNOW; break;
+ }
+ if ( pScrollBar->DoScrollAction( eScrollType ) )
+ bReturn = sal_True;
+ }
+
+ return bReturn;
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleScrollBar::getAccessibleActionDescription ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
+ throw IndexOutOfBoundsException();
+
+ ::rtl::OUString sDescription;
+
+ switch ( nIndex )
+ {
+ case 0: sDescription = ::rtl::OUString( TK_RES_STRING( RID_STR_ACC_ACTION_DECLINE ) ); break;
+ case 1: sDescription = ::rtl::OUString( TK_RES_STRING( RID_STR_ACC_ACTION_INCLINE ) ); break;
+ case 2: sDescription = ::rtl::OUString( TK_RES_STRING( RID_STR_ACC_ACTION_DECBLOCK ) ); break;
+ case 3: sDescription = ::rtl::OUString( TK_RES_STRING( RID_STR_ACC_ACTION_INCBLOCK ) ); break;
+ default: break;
+ }
+
+ return sDescription;
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessibleKeyBinding > VCLXAccessibleScrollBar::getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
+ throw IndexOutOfBoundsException();
+
+ return Reference< XAccessibleKeyBinding >();
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleValue
+// -----------------------------------------------------------------------------
+
+Any VCLXAccessibleScrollBar::getCurrentValue( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Any aValue;
+
+ VCLXScrollBar* pVCLXScrollBar = static_cast< VCLXScrollBar* >( GetVCLXWindow() );
+ if ( pVCLXScrollBar )
+ aValue <<= (sal_Int32) pVCLXScrollBar->getValue();
+
+ return aValue;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleScrollBar::setCurrentValue( const Any& aNumber ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Bool bReturn = sal_False;
+
+ VCLXScrollBar* pVCLXScrollBar = static_cast< VCLXScrollBar* >( GetVCLXWindow() );
+ if ( pVCLXScrollBar )
+ {
+ sal_Int32 nValue = 0, nValueMin = 0, nValueMax = 0;
+ OSL_VERIFY( aNumber >>= nValue );
+ OSL_VERIFY( getMinimumValue() >>= nValueMin );
+ OSL_VERIFY( getMaximumValue() >>= nValueMax );
+
+ if ( nValue < nValueMin )
+ nValue = nValueMin;
+ else if ( nValue > nValueMax )
+ nValue = nValueMax;
+
+ pVCLXScrollBar->setValue( nValue );
+ bReturn = sal_True;
+ }
+
+ return bReturn;
+}
+
+// -----------------------------------------------------------------------------
+
+Any VCLXAccessibleScrollBar::getMaximumValue( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Any aValue;
+
+ VCLXScrollBar* pVCLXScrollBar = static_cast< VCLXScrollBar* >( GetVCLXWindow() );
+ if ( pVCLXScrollBar )
+ aValue <<= (sal_Int32) pVCLXScrollBar->getMaximum();
+
+ return aValue;
+}
+
+// -----------------------------------------------------------------------------
+
+Any VCLXAccessibleScrollBar::getMinimumValue( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Any aValue;
+ aValue <<= (sal_Int32) 0;
+
+ return aValue;
+}
+
+// -----------------------------------------------------------------------------
diff --git a/accessibility/source/standard/vclxaccessiblestatusbar.cxx b/accessibility/source/standard/vclxaccessiblestatusbar.cxx
new file mode 100644
index 000000000000..5dd35a699b27
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessiblestatusbar.cxx
@@ -0,0 +1,366 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/standard/vclxaccessiblestatusbar.hxx>
+#include <accessibility/standard/vclxaccessiblestatusbaritem.hxx>
+#include <toolkit/helper/convert.hxx>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <vcl/status.hxx>
+
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::accessibility;
+using namespace ::comphelper;
+
+
+// ----------------------------------------------------
+// class VCLXAccessibleStatusBar
+// ----------------------------------------------------
+
+VCLXAccessibleStatusBar::VCLXAccessibleStatusBar( VCLXWindow* pVCLXWindow )
+ :VCLXAccessibleComponent( pVCLXWindow )
+{
+ m_pStatusBar = static_cast< StatusBar* >( GetWindow() );
+
+ if ( m_pStatusBar )
+ m_aAccessibleChildren.assign( m_pStatusBar->GetItemCount(), Reference< XAccessible >() );
+}
+
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleStatusBar::~VCLXAccessibleStatusBar()
+{
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleStatusBar::UpdateShowing( sal_Int32 i, sal_Bool bShowing )
+{
+ if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
+ {
+ Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
+ if ( xChild.is() )
+ {
+ VCLXAccessibleStatusBarItem* pVCLXAccessibleStatusBarItem = static_cast< VCLXAccessibleStatusBarItem* >( xChild.get() );
+ if ( pVCLXAccessibleStatusBarItem )
+ pVCLXAccessibleStatusBarItem->SetShowing( bShowing );
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleStatusBar::UpdateItemName( sal_Int32 i )
+{
+ if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
+ {
+ Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
+ if ( xChild.is() )
+ {
+ VCLXAccessibleStatusBarItem* pVCLXAccessibleStatusBarItem = static_cast< VCLXAccessibleStatusBarItem* >( xChild.get() );
+ if ( pVCLXAccessibleStatusBarItem )
+ {
+ ::rtl::OUString sItemName = pVCLXAccessibleStatusBarItem->GetItemName();
+ pVCLXAccessibleStatusBarItem->SetItemName( sItemName );
+ }
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleStatusBar::UpdateItemText( sal_Int32 i )
+{
+ if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
+ {
+ Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
+ if ( xChild.is() )
+ {
+ VCLXAccessibleStatusBarItem* pVCLXAccessibleStatusBarItem = static_cast< VCLXAccessibleStatusBarItem* >( xChild.get() );
+ if ( pVCLXAccessibleStatusBarItem )
+ {
+ ::rtl::OUString sItemText = pVCLXAccessibleStatusBarItem->GetItemText();
+ pVCLXAccessibleStatusBarItem->SetItemText( sItemText );
+ }
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleStatusBar::InsertChild( sal_Int32 i )
+{
+ if ( i >= 0 && i <= (sal_Int32)m_aAccessibleChildren.size() )
+ {
+ // insert entry in child list
+ m_aAccessibleChildren.insert( m_aAccessibleChildren.begin() + i, Reference< XAccessible >() );
+
+ // send accessible child event
+ Reference< XAccessible > xChild( getAccessibleChild( i ) );
+ if ( xChild.is() )
+ {
+ Any aOldValue, aNewValue;
+ aNewValue <<= xChild;
+ NotifyAccessibleEvent( AccessibleEventId::CHILD, aOldValue, aNewValue );
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleStatusBar::RemoveChild( sal_Int32 i )
+{
+ if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
+ {
+ // get the accessible of the removed page
+ Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
+
+ // remove entry in child list
+ m_aAccessibleChildren.erase( m_aAccessibleChildren.begin() + i );
+
+ // send accessible child event
+ if ( xChild.is() )
+ {
+ Any aOldValue, aNewValue;
+ aOldValue <<= xChild;
+ NotifyAccessibleEvent( AccessibleEventId::CHILD, aOldValue, aNewValue );
+
+ Reference< XComponent > xComponent( xChild, UNO_QUERY );
+ if ( xComponent.is() )
+ xComponent->dispose();
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleStatusBar::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
+{
+ switch ( rVclWindowEvent.GetId() )
+ {
+ case VCLEVENT_STATUSBAR_ITEMADDED:
+ {
+ if ( m_pStatusBar )
+ {
+ sal_uInt16 nItemId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
+ sal_uInt16 nItemPos = m_pStatusBar->GetItemPos( nItemId );
+ InsertChild( nItemPos );
+ }
+ }
+ break;
+ case VCLEVENT_STATUSBAR_ITEMREMOVED:
+ {
+ if ( m_pStatusBar )
+ {
+ sal_uInt16 nItemId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
+ for ( sal_Int32 i = 0, nCount = getAccessibleChildCount(); i < nCount; ++i )
+ {
+ Reference< XAccessible > xChild( getAccessibleChild( i ) );
+ if ( xChild.is() )
+ {
+ VCLXAccessibleStatusBarItem* pVCLXAccessibleStatusBarItem = static_cast< VCLXAccessibleStatusBarItem* >( xChild.get() );
+ if ( pVCLXAccessibleStatusBarItem && pVCLXAccessibleStatusBarItem->GetItemId() == nItemId )
+ {
+ RemoveChild( i );
+ break;
+ }
+ }
+ }
+ }
+ }
+ break;
+ case VCLEVENT_STATUSBAR_ALLITEMSREMOVED:
+ {
+ for ( sal_Int32 i = m_aAccessibleChildren.size() - 1; i >= 0; --i )
+ RemoveChild( i );
+ }
+ break;
+ case VCLEVENT_STATUSBAR_SHOWITEM:
+ case VCLEVENT_STATUSBAR_HIDEITEM:
+ {
+ if ( m_pStatusBar )
+ {
+ sal_uInt16 nItemId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
+ sal_uInt16 nItemPos = m_pStatusBar->GetItemPos( nItemId );
+ UpdateShowing( nItemPos, rVclWindowEvent.GetId() == VCLEVENT_STATUSBAR_SHOWITEM );
+ }
+ }
+ break;
+ case VCLEVENT_STATUSBAR_SHOWALLITEMS:
+ case VCLEVENT_STATUSBAR_HIDEALLITEMS:
+ {
+ for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
+ UpdateShowing( i, rVclWindowEvent.GetId() == VCLEVENT_STATUSBAR_SHOWALLITEMS );
+ }
+ break;
+ case VCLEVENT_STATUSBAR_NAMECHANGED:
+ {
+ if ( m_pStatusBar )
+ {
+ sal_uInt16 nItemId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
+ sal_uInt16 nItemPos = m_pStatusBar->GetItemPos( nItemId );
+ UpdateItemName( nItemPos );
+ }
+ }
+ break;
+ case VCLEVENT_STATUSBAR_DRAWITEM:
+ {
+ if ( m_pStatusBar )
+ {
+ sal_uInt16 nItemId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
+ sal_uInt16 nItemPos = m_pStatusBar->GetItemPos( nItemId );
+ UpdateItemText( nItemPos );
+ }
+ }
+ break;
+ case VCLEVENT_OBJECT_DYING:
+ {
+ if ( m_pStatusBar )
+ {
+ m_pStatusBar = NULL;
+
+ // dispose all children
+ for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
+ {
+ Reference< XComponent > xComponent( m_aAccessibleChildren[i], UNO_QUERY );
+ if ( xComponent.is() )
+ xComponent->dispose();
+ }
+ m_aAccessibleChildren.clear();
+ }
+
+ VCLXAccessibleComponent::ProcessWindowEvent( rVclWindowEvent );
+ }
+ break;
+ default:
+ VCLXAccessibleComponent::ProcessWindowEvent( rVclWindowEvent );
+ }
+}
+
+// -----------------------------------------------------------------------------
+// XComponent
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleStatusBar::disposing()
+{
+ VCLXAccessibleComponent::disposing();
+
+ if ( m_pStatusBar )
+ {
+ m_pStatusBar = NULL;
+
+ // dispose all children
+ for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
+ {
+ Reference< XComponent > xComponent( m_aAccessibleChildren[i], UNO_QUERY );
+ if ( xComponent.is() )
+ xComponent->dispose();
+ }
+ m_aAccessibleChildren.clear();
+ }
+}
+
+// -----------------------------------------------------------------------------
+// XServiceInfo
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleStatusBar::getImplementationName() throw (RuntimeException)
+{
+ return ::rtl::OUString::createFromAscii( "com.sun.star.comp.toolkit.AccessibleStatusBar" );
+}
+
+// -----------------------------------------------------------------------------
+
+Sequence< ::rtl::OUString > VCLXAccessibleStatusBar::getSupportedServiceNames() throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames(1);
+ aNames[0] = ::rtl::OUString::createFromAscii( "com.sun.star.awt.AccessibleStatusBar" );
+ return aNames;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleContext
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleStatusBar::getAccessibleChildCount() throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return m_aAccessibleChildren.size();
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > VCLXAccessibleStatusBar::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( i < 0 || i >= getAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+
+ Reference< XAccessible > xChild = m_aAccessibleChildren[i];
+ if ( !xChild.is() )
+ {
+ if ( m_pStatusBar )
+ {
+ sal_uInt16 nItemId = m_pStatusBar->GetItemId( (USHORT)i );
+
+ xChild = new VCLXAccessibleStatusBarItem( m_pStatusBar, nItemId );
+
+ // insert into status bar item list
+ m_aAccessibleChildren[i] = xChild;
+ }
+ }
+
+ return xChild;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleComponent
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > VCLXAccessibleStatusBar::getAccessibleAtPoint( const awt::Point& rPoint ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Reference< XAccessible > xChild;
+ if ( m_pStatusBar )
+ {
+ sal_uInt16 nItemId = m_pStatusBar->GetItemId( VCLPoint( rPoint ) );
+ sal_Int32 nItemPos = m_pStatusBar->GetItemPos( nItemId );
+ if ( nItemPos >= 0 && nItemPos < (sal_Int32)m_aAccessibleChildren.size() )
+ xChild = getAccessibleChild( nItemPos );
+ }
+
+ return xChild;
+}
+
+// -----------------------------------------------------------------------------
diff --git a/accessibility/source/standard/vclxaccessiblestatusbaritem.cxx b/accessibility/source/standard/vclxaccessiblestatusbaritem.cxx
new file mode 100644
index 000000000000..c3badc50bdbf
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessiblestatusbaritem.cxx
@@ -0,0 +1,629 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/standard/vclxaccessiblestatusbaritem.hxx>
+#include <toolkit/helper/externallock.hxx>
+#include <toolkit/helper/convert.hxx>
+#include <accessibility/helper/characterattributeshelper.hxx>
+
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <com/sun/star/datatransfer/clipboard/XClipboard.hpp>
+#include <com/sun/star/datatransfer/clipboard/XFlushableClipboard.hpp>
+
+#include <unotools/accessiblestatesethelper.hxx>
+#include <unotools/accessiblerelationsethelper.hxx>
+#include <vcl/svapp.hxx>
+#include <vcl/unohelp2.hxx>
+#include <vcl/status.hxx>
+#include <vcl/controllayout.hxx>
+
+#include <memory>
+
+
+using namespace ::com::sun::star::accessibility;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::beans;
+using namespace ::com::sun::star;
+using namespace ::comphelper;
+
+
+// -----------------------------------------------------------------------------
+// class VCLXAccessibleStatusBarItem
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleStatusBarItem::VCLXAccessibleStatusBarItem( StatusBar* pStatusBar, sal_uInt16 nItemId )
+ :AccessibleTextHelper_BASE( new VCLExternalSolarLock() )
+ ,m_pStatusBar( pStatusBar )
+ ,m_nItemId( nItemId )
+{
+ m_pExternalLock = static_cast< VCLExternalSolarLock* >( getExternalLock() );
+
+ m_sItemName = GetItemName();
+ m_sItemText = GetItemText();
+ m_bShowing = IsShowing();
+}
+
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleStatusBarItem::~VCLXAccessibleStatusBarItem()
+{
+ delete m_pExternalLock;
+ m_pExternalLock = NULL;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleStatusBarItem::IsShowing()
+{
+ sal_Bool bShowing = sal_False;
+
+ if ( m_pStatusBar )
+ bShowing = m_pStatusBar->IsItemVisible( m_nItemId );
+
+ return bShowing;
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleStatusBarItem::SetShowing( sal_Bool bShowing )
+{
+ if ( m_bShowing != bShowing )
+ {
+ Any aOldValue, aNewValue;
+ if ( m_bShowing )
+ aOldValue <<= AccessibleStateType::SHOWING;
+ else
+ aNewValue <<= AccessibleStateType::SHOWING;
+ m_bShowing = bShowing;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleStatusBarItem::SetItemName( const ::rtl::OUString& sItemName )
+{
+ if ( !m_sItemName.equals( sItemName ) )
+ {
+ Any aOldValue, aNewValue;
+ aOldValue <<= m_sItemName;
+ aNewValue <<= sItemName;
+ m_sItemName = sItemName;
+ NotifyAccessibleEvent( AccessibleEventId::NAME_CHANGED, aOldValue, aNewValue );
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleStatusBarItem::GetItemName()
+{
+ ::rtl::OUString sName;
+ if ( m_pStatusBar )
+ sName = m_pStatusBar->GetAccessibleName( m_nItemId );
+
+ return sName;
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleStatusBarItem::SetItemText( const ::rtl::OUString& sItemText )
+{
+ Any aOldValue, aNewValue;
+ if ( implInitTextChangedEvent( m_sItemText, sItemText, aOldValue, aNewValue ) )
+ {
+ m_sItemText = sItemText;
+ NotifyAccessibleEvent( AccessibleEventId::TEXT_CHANGED, aOldValue, aNewValue );
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleStatusBarItem::GetItemText()
+{
+ ::rtl::OUString sText;
+ ::vcl::ControlLayoutData aLayoutData;
+ if ( m_pStatusBar )
+ {
+ Rectangle aItemRect = m_pStatusBar->GetItemRect( m_nItemId );
+ m_pStatusBar->RecordLayoutData( &aLayoutData, aItemRect );
+ sText = aLayoutData.m_aDisplayText;
+ }
+
+ return sText;
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleStatusBarItem::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
+{
+ rStateSet.AddState( AccessibleStateType::ENABLED );
+ rStateSet.AddState( AccessibleStateType::SENSITIVE );
+
+ rStateSet.AddState( AccessibleStateType::VISIBLE );
+
+ if ( IsShowing() )
+ rStateSet.AddState( AccessibleStateType::SHOWING );
+}
+
+// -----------------------------------------------------------------------------
+// OCommonAccessibleComponent
+// -----------------------------------------------------------------------------
+
+awt::Rectangle VCLXAccessibleStatusBarItem::implGetBounds() throw (RuntimeException)
+{
+ awt::Rectangle aBounds( 0, 0, 0, 0 );
+
+ if ( m_pStatusBar )
+ aBounds = AWTRectangle( m_pStatusBar->GetItemRect( m_nItemId ) );
+
+ return aBounds;
+}
+
+// -----------------------------------------------------------------------------
+// OCommonAccessibleText
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleStatusBarItem::implGetText()
+{
+ return GetItemText();
+}
+
+// -----------------------------------------------------------------------------
+
+lang::Locale VCLXAccessibleStatusBarItem::implGetLocale()
+{
+ return Application::GetSettings().GetLocale();
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleStatusBarItem::implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex )
+{
+ nStartIndex = 0;
+ nEndIndex = 0;
+}
+
+// -----------------------------------------------------------------------------
+// XInterface
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XINTERFACE2( VCLXAccessibleStatusBarItem, AccessibleTextHelper_BASE, VCLXAccessibleStatusBarItem_BASE )
+
+// -----------------------------------------------------------------------------
+// XTypeProvider
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleStatusBarItem, AccessibleTextHelper_BASE, VCLXAccessibleStatusBarItem_BASE )
+
+// -----------------------------------------------------------------------------
+// XComponent
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleStatusBarItem::disposing()
+{
+ AccessibleTextHelper_BASE::disposing();
+
+ m_pStatusBar = NULL;
+ m_sItemName = ::rtl::OUString();
+ m_sItemText = ::rtl::OUString();
+}
+
+// -----------------------------------------------------------------------------
+// XServiceInfo
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleStatusBarItem::getImplementationName() throw (RuntimeException)
+{
+ return ::rtl::OUString::createFromAscii( "com.sun.star.comp.toolkit.AccessibleStatusBarItem" );
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleStatusBarItem::supportsService( const ::rtl::OUString& rServiceName ) throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames( getSupportedServiceNames() );
+ const ::rtl::OUString* pNames = aNames.getConstArray();
+ const ::rtl::OUString* pEnd = pNames + aNames.getLength();
+ for ( ; pNames != pEnd && !pNames->equals( rServiceName ); ++pNames )
+ ;
+
+ return pNames != pEnd;
+}
+
+// -----------------------------------------------------------------------------
+
+Sequence< ::rtl::OUString > VCLXAccessibleStatusBarItem::getSupportedServiceNames() throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames(1);
+ aNames[0] = ::rtl::OUString::createFromAscii( "com.sun.star.awt.AccessibleStatusBarItem" );
+ return aNames;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessible
+// -----------------------------------------------------------------------------
+
+Reference< XAccessibleContext > VCLXAccessibleStatusBarItem::getAccessibleContext( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return this;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleContext
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleStatusBarItem::getAccessibleChildCount() throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return 0;
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > VCLXAccessibleStatusBarItem::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( i < 0 || i >= getAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+
+ return Reference< XAccessible >();
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > VCLXAccessibleStatusBarItem::getAccessibleParent( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Reference< XAccessible > xParent;
+ if ( m_pStatusBar )
+ xParent = m_pStatusBar->GetAccessible();
+
+ return xParent;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleStatusBarItem::getAccessibleIndexInParent( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nIndexInParent = -1;
+ if ( m_pStatusBar )
+ nIndexInParent = m_pStatusBar->GetItemPos( m_nItemId );
+
+ return nIndexInParent;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int16 VCLXAccessibleStatusBarItem::getAccessibleRole( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return AccessibleRole::LABEL;
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleStatusBarItem::getAccessibleDescription( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ ::rtl::OUString sDescription;
+ if ( m_pStatusBar )
+ sDescription = m_pStatusBar->GetHelpText( m_nItemId );
+
+ return sDescription;
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleStatusBarItem::getAccessibleName( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return GetItemName();
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessibleRelationSet > VCLXAccessibleStatusBarItem::getAccessibleRelationSet( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ utl::AccessibleRelationSetHelper* pRelationSetHelper = new utl::AccessibleRelationSetHelper;
+ Reference< XAccessibleRelationSet > xSet = pRelationSetHelper;
+ return xSet;
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessibleStateSet > VCLXAccessibleStatusBarItem::getAccessibleStateSet( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ utl::AccessibleStateSetHelper* pStateSetHelper = new utl::AccessibleStateSetHelper;
+ Reference< XAccessibleStateSet > xSet = pStateSetHelper;
+
+ if ( !rBHelper.bDisposed && !rBHelper.bInDispose )
+ {
+ FillAccessibleStateSet( *pStateSetHelper );
+ }
+ else
+ {
+ pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
+ }
+
+ return xSet;
+}
+
+// -----------------------------------------------------------------------------
+
+Locale VCLXAccessibleStatusBarItem::getLocale( ) throw (IllegalAccessibleComponentStateException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return Application::GetSettings().GetLocale();
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleComponent
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > VCLXAccessibleStatusBarItem::getAccessibleAtPoint( const awt::Point& ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return Reference< XAccessible >();
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleStatusBarItem::grabFocus( ) throw (RuntimeException)
+{
+ // no focus for status bar items
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleStatusBarItem::getForeground( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nColor = 0;
+ Reference< XAccessible > xParent = getAccessibleParent();
+ if ( xParent.is() )
+ {
+ Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
+ if ( xParentComp.is() )
+ nColor = xParentComp->getForeground();
+ }
+
+ return nColor;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleStatusBarItem::getBackground( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nColor = 0;
+ Reference< XAccessible > xParent = getAccessibleParent();
+ if ( xParent.is() )
+ {
+ Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
+ if ( xParentComp.is() )
+ nColor = xParentComp->getBackground();
+ }
+
+ return nColor;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleExtendedComponent
+// -----------------------------------------------------------------------------
+
+Reference< awt::XFont > VCLXAccessibleStatusBarItem::getFont( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Reference< awt::XFont > xFont;
+ Reference< XAccessible > xParent = getAccessibleParent();
+ if ( xParent.is() )
+ {
+ Reference< XAccessibleExtendedComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
+ if ( xParentComp.is() )
+ xFont = xParentComp->getFont();
+ }
+
+ return xFont;
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleStatusBarItem::getTitledBorderText( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return GetItemText();
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleStatusBarItem::getToolTipText( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return ::rtl::OUString();
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleText
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleStatusBarItem::getCaretPosition() throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return -1;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleStatusBarItem::setCaretPosition( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( !implIsValidRange( nIndex, nIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ return sal_False;
+}
+
+// -----------------------------------------------------------------------------
+
+Sequence< PropertyValue > VCLXAccessibleStatusBarItem::getCharacterAttributes( sal_Int32 nIndex, const Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Sequence< PropertyValue > aValues;
+ ::rtl::OUString sText( implGetText() );
+
+ if ( !implIsValidIndex( nIndex, sText.getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ if ( m_pStatusBar )
+ {
+ Font aFont = m_pStatusBar->GetFont();
+ sal_Int32 nBackColor = getBackground();
+ sal_Int32 nColor = getForeground();
+ ::std::auto_ptr< CharacterAttributesHelper > pHelper( new CharacterAttributesHelper( aFont, nBackColor, nColor ) );
+ aValues = pHelper->GetCharacterAttributes( aRequestedAttributes );
+ }
+
+ return aValues;
+}
+
+// -----------------------------------------------------------------------------
+
+awt::Rectangle VCLXAccessibleStatusBarItem::getCharacterBounds( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( !implIsValidIndex( nIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ awt::Rectangle aBounds( 0, 0, 0, 0 );
+ if ( m_pStatusBar )
+ {
+ ::vcl::ControlLayoutData aLayoutData;
+ Rectangle aItemRect = m_pStatusBar->GetItemRect( m_nItemId );
+ m_pStatusBar->RecordLayoutData( &aLayoutData, aItemRect );
+ Rectangle aCharRect = aLayoutData.GetCharacterBounds( nIndex );
+ aCharRect.Move( -aItemRect.Left(), -aItemRect.Top() );
+ aBounds = AWTRectangle( aCharRect );
+ }
+
+ return aBounds;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleStatusBarItem::getIndexAtPoint( const awt::Point& aPoint ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nIndex = -1;
+ if ( m_pStatusBar )
+ {
+ ::vcl::ControlLayoutData aLayoutData;
+ Rectangle aItemRect = m_pStatusBar->GetItemRect( m_nItemId );
+ m_pStatusBar->RecordLayoutData( &aLayoutData, aItemRect );
+ Point aPnt( VCLPoint( aPoint ) );
+ aPnt += aItemRect.TopLeft();
+ nIndex = aLayoutData.GetIndexForPoint( aPnt );
+ }
+
+ return nIndex;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleStatusBarItem::setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( !implIsValidRange( nStartIndex, nEndIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ return sal_False;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleStatusBarItem::copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Bool bReturn = sal_False;
+
+ if ( m_pStatusBar )
+ {
+ Reference< datatransfer::clipboard::XClipboard > xClipboard = m_pStatusBar->GetClipboard();
+ if ( xClipboard.is() )
+ {
+ ::rtl::OUString sText( getTextRange( nStartIndex, nEndIndex ) );
+
+ ::vcl::unohelper::TextDataObject* pDataObj = new ::vcl::unohelper::TextDataObject( sText );
+ const sal_uInt32 nRef = Application::ReleaseSolarMutex();
+ xClipboard->setContents( pDataObj, NULL );
+
+ Reference< datatransfer::clipboard::XFlushableClipboard > xFlushableClipboard( xClipboard, uno::UNO_QUERY );
+ if( xFlushableClipboard.is() )
+ xFlushableClipboard->flushClipboard();
+
+ Application::AcquireSolarMutex( nRef );
+
+ bReturn = sal_True;
+ }
+ }
+
+ return bReturn;
+}
+
+// -----------------------------------------------------------------------------
diff --git a/accessibility/source/standard/vclxaccessibletabcontrol.cxx b/accessibility/source/standard/vclxaccessibletabcontrol.cxx
new file mode 100644
index 000000000000..ac6aca77dda0
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessibletabcontrol.cxx
@@ -0,0 +1,515 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/standard/vclxaccessibletabcontrol.hxx>
+#include <accessibility/standard/vclxaccessibletabpage.hxx>
+
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <unotools/accessiblestatesethelper.hxx>
+#include <vcl/tabctrl.hxx>
+#include <vcl/tabpage.hxx>
+
+#include <vector>
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::accessibility;
+using namespace ::comphelper;
+
+
+// ----------------------------------------------------
+// class VCLXAccessibleTabControl
+// ----------------------------------------------------
+
+VCLXAccessibleTabControl::VCLXAccessibleTabControl( VCLXWindow* pVCLXWindow )
+ :VCLXAccessibleComponent( pVCLXWindow )
+{
+ m_pTabControl = static_cast< TabControl* >( GetWindow() );
+
+ if ( m_pTabControl )
+ m_aAccessibleChildren.assign( m_pTabControl->GetPageCount(), Reference< XAccessible >() );
+}
+
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleTabControl::~VCLXAccessibleTabControl()
+{
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTabControl::UpdateFocused()
+{
+ for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
+ {
+ Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
+ if ( xChild.is() )
+ {
+ VCLXAccessibleTabPage* pVCLXAccessibleTabPage = static_cast< VCLXAccessibleTabPage* >( xChild.get() );
+ if ( pVCLXAccessibleTabPage )
+ pVCLXAccessibleTabPage->SetFocused( pVCLXAccessibleTabPage->IsFocused() );
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTabControl::UpdateSelected( sal_Int32 i, bool bSelected )
+{
+ NotifyAccessibleEvent( AccessibleEventId::SELECTION_CHANGED, Any(), Any() );
+
+ if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
+ {
+ Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
+ if ( xChild.is() )
+ {
+ VCLXAccessibleTabPage* pVCLXAccessibleTabPage = static_cast< VCLXAccessibleTabPage* >( xChild.get() );
+ if ( pVCLXAccessibleTabPage )
+ pVCLXAccessibleTabPage->SetSelected( bSelected );
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTabControl::UpdatePageText( sal_Int32 i )
+{
+ if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
+ {
+ Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
+ if ( xChild.is() )
+ {
+ VCLXAccessibleTabPage* pVCLXAccessibleTabPage = static_cast< VCLXAccessibleTabPage* >( xChild.get() );
+ if ( pVCLXAccessibleTabPage )
+ pVCLXAccessibleTabPage->SetPageText( pVCLXAccessibleTabPage->GetPageText() );
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTabControl::UpdateTabPage( sal_Int32 i, bool bNew )
+{
+ if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
+ {
+ Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
+ if ( xChild.is() )
+ {
+ VCLXAccessibleTabPage* pVCLXAccessibleTabPage = static_cast< VCLXAccessibleTabPage* >( xChild.get() );
+ if ( pVCLXAccessibleTabPage )
+ pVCLXAccessibleTabPage->Update( bNew );
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTabControl::InsertChild( sal_Int32 i )
+{
+ if ( i >= 0 && i <= (sal_Int32)m_aAccessibleChildren.size() )
+ {
+ // insert entry in child list
+ m_aAccessibleChildren.insert( m_aAccessibleChildren.begin() + i, Reference< XAccessible >() );
+
+ // send accessible child event
+ Reference< XAccessible > xChild( getAccessibleChild( i ) );
+ if ( xChild.is() )
+ {
+ Any aOldValue, aNewValue;
+ aNewValue <<= xChild;
+ NotifyAccessibleEvent( AccessibleEventId::CHILD, aOldValue, aNewValue );
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTabControl::RemoveChild( sal_Int32 i )
+{
+ if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
+ {
+ // get the accessible of the removed page
+ Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
+
+ // remove entry in child list
+ m_aAccessibleChildren.erase( m_aAccessibleChildren.begin() + i );
+
+ // send accessible child event
+ if ( xChild.is() )
+ {
+ Any aOldValue, aNewValue;
+ aOldValue <<= xChild;
+ NotifyAccessibleEvent( AccessibleEventId::CHILD, aOldValue, aNewValue );
+
+ Reference< XComponent > xComponent( xChild, UNO_QUERY );
+ if ( xComponent.is() )
+ xComponent->dispose();
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTabControl::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
+{
+ switch ( rVclWindowEvent.GetId() )
+ {
+ case VCLEVENT_TABPAGE_ACTIVATE:
+ case VCLEVENT_TABPAGE_DEACTIVATE:
+ {
+ if ( m_pTabControl )
+ {
+ sal_uInt16 nPageId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
+ sal_uInt16 nPagePos = m_pTabControl->GetPagePos( nPageId );
+ UpdateFocused();
+ UpdateSelected( nPagePos, rVclWindowEvent.GetId() == VCLEVENT_TABPAGE_ACTIVATE );
+ }
+ }
+ break;
+ case VCLEVENT_TABPAGE_PAGETEXTCHANGED:
+ {
+ if ( m_pTabControl )
+ {
+ sal_uInt16 nPageId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
+ sal_uInt16 nPagePos = m_pTabControl->GetPagePos( nPageId );
+ UpdatePageText( nPagePos );
+ }
+ }
+ break;
+ case VCLEVENT_TABPAGE_INSERTED:
+ {
+ if ( m_pTabControl )
+ {
+ sal_uInt16 nPageId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
+ sal_uInt16 nPagePos = m_pTabControl->GetPagePos( nPageId );
+ InsertChild( nPagePos );
+ }
+ }
+ break;
+ case VCLEVENT_TABPAGE_REMOVED:
+ {
+ if ( m_pTabControl )
+ {
+ sal_uInt16 nPageId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
+ for ( sal_Int32 i = 0, nCount = getAccessibleChildCount(); i < nCount; ++i )
+ {
+ Reference< XAccessible > xChild( getAccessibleChild( i ) );
+ if ( xChild.is() )
+ {
+ VCLXAccessibleTabPage* pVCLXAccessibleTabPage = static_cast< VCLXAccessibleTabPage* >( xChild.get() );
+ if ( pVCLXAccessibleTabPage && pVCLXAccessibleTabPage->GetPageId() == nPageId )
+ {
+ RemoveChild( i );
+ break;
+ }
+ }
+ }
+ }
+ }
+ break;
+ case VCLEVENT_TABPAGE_REMOVEDALL:
+ {
+ for ( sal_Int32 i = m_aAccessibleChildren.size() - 1; i >= 0; --i )
+ RemoveChild( i );
+ }
+ break;
+ case VCLEVENT_WINDOW_GETFOCUS:
+ case VCLEVENT_WINDOW_LOSEFOCUS:
+ {
+ UpdateFocused();
+ }
+ break;
+ case VCLEVENT_OBJECT_DYING:
+ {
+ if ( m_pTabControl )
+ {
+ m_pTabControl = NULL;
+
+ // dispose all tab pages
+ for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
+ {
+ Reference< XComponent > xComponent( m_aAccessibleChildren[i], UNO_QUERY );
+ if ( xComponent.is() )
+ xComponent->dispose();
+ }
+ m_aAccessibleChildren.clear();
+ }
+
+ VCLXAccessibleComponent::ProcessWindowEvent( rVclWindowEvent );
+ }
+ break;
+ default:
+ VCLXAccessibleComponent::ProcessWindowEvent( rVclWindowEvent );
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTabControl::ProcessWindowChildEvent( const VclWindowEvent& rVclWindowEvent )
+{
+ switch ( rVclWindowEvent.GetId() )
+ {
+ case VCLEVENT_WINDOW_SHOW:
+ case VCLEVENT_WINDOW_HIDE:
+ {
+ if ( m_pTabControl )
+ {
+ Window* pChild = static_cast< Window* >( rVclWindowEvent.GetData() );
+ if ( pChild && pChild->GetType() == WINDOW_TABPAGE )
+ {
+ for ( sal_Int32 i = 0, nCount = m_pTabControl->GetPageCount(); i < nCount; ++i )
+ {
+ sal_uInt16 nPageId = m_pTabControl->GetPageId( (USHORT)i );
+ TabPage* pTabPage = m_pTabControl->GetTabPage( nPageId );
+ if ( pTabPage == (TabPage*) pChild )
+ UpdateTabPage( i, rVclWindowEvent.GetId() == VCLEVENT_WINDOW_SHOW );
+ }
+ }
+ }
+ }
+ break;
+ default:
+ VCLXAccessibleComponent::ProcessWindowChildEvent( rVclWindowEvent );
+ }
+}
+
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTabControl::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
+{
+ VCLXAccessibleComponent::FillAccessibleStateSet( rStateSet );
+
+ if ( m_pTabControl )
+ rStateSet.AddState( AccessibleStateType::FOCUSABLE );
+}
+
+// -----------------------------------------------------------------------------
+// XInterface
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XINTERFACE2( VCLXAccessibleTabControl, VCLXAccessibleComponent, VCLXAccessibleTabControl_BASE )
+
+// -----------------------------------------------------------------------------
+// XTypeProvider
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleTabControl, VCLXAccessibleComponent, VCLXAccessibleTabControl_BASE )
+
+// -----------------------------------------------------------------------------
+// XComponent
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTabControl::disposing()
+{
+ VCLXAccessibleComponent::disposing();
+
+ if ( m_pTabControl )
+ {
+ m_pTabControl = NULL;
+
+ // dispose all tab pages
+ for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
+ {
+ Reference< XComponent > xComponent( m_aAccessibleChildren[i], UNO_QUERY );
+ if ( xComponent.is() )
+ xComponent->dispose();
+ }
+ m_aAccessibleChildren.clear();
+ }
+}
+
+// -----------------------------------------------------------------------------
+// XServiceInfo
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleTabControl::getImplementationName() throw (RuntimeException)
+{
+ return ::rtl::OUString::createFromAscii( "com.sun.star.comp.toolkit.AccessibleTabControl" );
+}
+
+// -----------------------------------------------------------------------------
+
+Sequence< ::rtl::OUString > VCLXAccessibleTabControl::getSupportedServiceNames() throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames(1);
+ aNames[0] = ::rtl::OUString::createFromAscii( "com.sun.star.awt.AccessibleTabControl" );
+ return aNames;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleContext
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleTabControl::getAccessibleChildCount() throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return m_aAccessibleChildren.size();
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > VCLXAccessibleTabControl::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( i < 0 || i >= getAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+
+ Reference< XAccessible > xChild = m_aAccessibleChildren[i];
+ if ( !xChild.is() )
+ {
+ if ( m_pTabControl )
+ {
+ sal_uInt16 nPageId = m_pTabControl->GetPageId( (USHORT)i );
+
+ xChild = new VCLXAccessibleTabPage( m_pTabControl, nPageId );
+
+ // insert into tab page list
+ m_aAccessibleChildren[i] = xChild;
+ }
+ }
+
+ return xChild;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int16 VCLXAccessibleTabControl::getAccessibleRole( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return AccessibleRole::PAGE_TAB_LIST;
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleTabControl::getAccessibleName( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return ::rtl::OUString();
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleSelection
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTabControl::selectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nChildIndex < 0 || nChildIndex >= getAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+
+ if ( m_pTabControl )
+ m_pTabControl->SelectTabPage( m_pTabControl->GetPageId( (USHORT)nChildIndex ) );
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleTabControl::isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nChildIndex < 0 || nChildIndex >= getAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+
+ sal_Bool bSelected = sal_False;
+ if ( m_pTabControl && m_pTabControl->GetCurPageId() == m_pTabControl->GetPageId( (USHORT)nChildIndex ) )
+ bSelected = sal_True;
+
+ return bSelected;
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTabControl::clearAccessibleSelection( ) throw (RuntimeException)
+{
+ // This method makes no sense in a tab control, and so does nothing.
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTabControl::selectAllAccessibleChildren( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ selectAccessibleChild( 0 );
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleTabControl::getSelectedAccessibleChildCount( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return 1;
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > VCLXAccessibleTabControl::getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nSelectedChildIndex < 0 || nSelectedChildIndex >= getSelectedAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+
+ Reference< XAccessible > xChild;
+
+ for ( sal_Int32 i = 0, j = 0, nCount = getAccessibleChildCount(); i < nCount; i++ )
+ {
+ if ( isAccessibleChildSelected( i ) && ( j++ == nSelectedChildIndex ) )
+ {
+ xChild = getAccessibleChild( i );
+ break;
+ }
+ }
+
+ return xChild;
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTabControl::deselectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nChildIndex < 0 || nChildIndex >= getAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+
+ // This method makes no sense in a tab control, and so does nothing.
+}
+
+// -----------------------------------------------------------------------------
diff --git a/accessibility/source/standard/vclxaccessibletabpage.cxx b/accessibility/source/standard/vclxaccessibletabpage.cxx
new file mode 100644
index 000000000000..6b871fced829
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessibletabpage.cxx
@@ -0,0 +1,702 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/standard/vclxaccessibletabpage.hxx>
+#include <toolkit/helper/externallock.hxx>
+#include <toolkit/helper/convert.hxx>
+#include <accessibility/helper/characterattributeshelper.hxx>
+
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <com/sun/star/datatransfer/clipboard/XClipboard.hpp>
+#include <com/sun/star/datatransfer/clipboard/XFlushableClipboard.hpp>
+
+#include <unotools/accessiblestatesethelper.hxx>
+#include <unotools/accessiblerelationsethelper.hxx>
+#include <vcl/svapp.hxx>
+#include <vcl/unohelp2.hxx>
+#include <vcl/tabctrl.hxx>
+#include <vcl/tabpage.hxx>
+
+#include <memory>
+
+
+using namespace ::com::sun::star::accessibility;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::beans;
+using namespace ::com::sun::star;
+using namespace ::comphelper;
+
+
+// -----------------------------------------------------------------------------
+// class VCLXAccessibleTabPage
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleTabPage::VCLXAccessibleTabPage( TabControl* pTabControl, sal_uInt16 nPageId )
+ :AccessibleTextHelper_BASE( new VCLExternalSolarLock() )
+ ,m_pTabControl( pTabControl )
+ ,m_nPageId( nPageId )
+{
+ m_pExternalLock = static_cast< VCLExternalSolarLock* >( getExternalLock() );
+ m_bFocused = IsFocused();
+ m_bSelected = IsSelected();
+ m_sPageText = GetPageText();
+}
+
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleTabPage::~VCLXAccessibleTabPage()
+{
+ delete m_pExternalLock;
+ m_pExternalLock = NULL;
+}
+
+// -----------------------------------------------------------------------------
+
+bool VCLXAccessibleTabPage::IsFocused()
+{
+ bool bFocused = false;
+
+ if ( m_pTabControl && m_pTabControl->HasFocus() && m_pTabControl->GetCurPageId() == m_nPageId )
+ bFocused = true;
+
+ return bFocused;
+}
+
+// -----------------------------------------------------------------------------
+
+bool VCLXAccessibleTabPage::IsSelected()
+{
+ bool bSelected = false;
+
+ if ( m_pTabControl && m_pTabControl->GetCurPageId() == m_nPageId )
+ bSelected = true;
+
+ return bSelected;
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTabPage::SetFocused( bool bFocused )
+{
+ if ( m_bFocused != bFocused )
+ {
+ Any aOldValue, aNewValue;
+ if ( m_bFocused )
+ aOldValue <<= AccessibleStateType::FOCUSED;
+ else
+ aNewValue <<= AccessibleStateType::FOCUSED;
+ m_bFocused = bFocused;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTabPage::SetSelected( bool bSelected )
+{
+ if ( m_bSelected != bSelected )
+ {
+ Any aOldValue, aNewValue;
+ if ( m_bSelected )
+ aOldValue <<= AccessibleStateType::SELECTED;
+ else
+ aNewValue <<= AccessibleStateType::SELECTED;
+ m_bSelected = bSelected;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTabPage::SetPageText( const ::rtl::OUString& sPageText )
+{
+ Any aOldValue, aNewValue;
+ if ( OCommonAccessibleText::implInitTextChangedEvent( m_sPageText, sPageText, aOldValue, aNewValue ) )
+ {
+ Any aOldName, aNewName;
+ aOldName <<= m_sPageText;
+ aNewName <<= sPageText;
+ m_sPageText = sPageText;
+ NotifyAccessibleEvent( AccessibleEventId::NAME_CHANGED, aOldName, aNewName );
+ NotifyAccessibleEvent( AccessibleEventId::TEXT_CHANGED, aOldValue, aNewValue );
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleTabPage::GetPageText()
+{
+ ::rtl::OUString sText;
+ if ( m_pTabControl )
+ sText = OutputDevice::GetNonMnemonicString( m_pTabControl->GetPageText( m_nPageId ) );
+
+ return sText;
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTabPage::Update( bool bNew )
+{
+ if ( m_pTabControl )
+ {
+ TabPage* pTabPage = m_pTabControl->GetTabPage( m_nPageId );
+ if ( pTabPage )
+ {
+ Reference< XAccessible > xChild( pTabPage->GetAccessible( bNew ) );
+ if ( xChild.is() )
+ {
+ Any aOldValue, aNewValue;
+ if ( bNew )
+ aNewValue <<= xChild;
+ else
+ aOldValue <<= xChild;
+ NotifyAccessibleEvent( AccessibleEventId::CHILD, aOldValue, aNewValue );
+ }
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTabPage::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
+{
+ rStateSet.AddState( AccessibleStateType::ENABLED );
+ rStateSet.AddState( AccessibleStateType::SENSITIVE );
+
+ rStateSet.AddState( AccessibleStateType::FOCUSABLE );
+
+ if ( IsFocused() )
+ rStateSet.AddState( AccessibleStateType::FOCUSED );
+
+ rStateSet.AddState( AccessibleStateType::VISIBLE );
+
+ rStateSet.AddState( AccessibleStateType::SHOWING );
+
+ rStateSet.AddState( AccessibleStateType::SELECTABLE );
+
+ if ( IsSelected() )
+ rStateSet.AddState( AccessibleStateType::SELECTED );
+}
+
+// -----------------------------------------------------------------------------
+// OCommonAccessibleComponent
+// -----------------------------------------------------------------------------
+
+awt::Rectangle VCLXAccessibleTabPage::implGetBounds() throw (RuntimeException)
+{
+ awt::Rectangle aBounds( 0, 0, 0, 0 );
+
+ if ( m_pTabControl )
+ aBounds = AWTRectangle( m_pTabControl->GetTabBounds( m_nPageId ) );
+
+ return aBounds;
+}
+
+// -----------------------------------------------------------------------------
+// OCommonAccessibleText
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleTabPage::implGetText()
+{
+ return GetPageText();
+}
+
+// -----------------------------------------------------------------------------
+
+lang::Locale VCLXAccessibleTabPage::implGetLocale()
+{
+ return Application::GetSettings().GetLocale();
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTabPage::implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex )
+{
+ nStartIndex = 0;
+ nEndIndex = 0;
+}
+
+// -----------------------------------------------------------------------------
+// XInterface
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XINTERFACE2( VCLXAccessibleTabPage, AccessibleTextHelper_BASE, VCLXAccessibleTabPage_BASE )
+
+// -----------------------------------------------------------------------------
+// XTypeProvider
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleTabPage, AccessibleTextHelper_BASE, VCLXAccessibleTabPage_BASE )
+
+// -----------------------------------------------------------------------------
+// XComponent
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTabPage::disposing()
+{
+ AccessibleTextHelper_BASE::disposing();
+
+ m_pTabControl = NULL;
+ m_sPageText = ::rtl::OUString();
+}
+
+// -----------------------------------------------------------------------------
+// XServiceInfo
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleTabPage::getImplementationName() throw (RuntimeException)
+{
+ return ::rtl::OUString::createFromAscii( "com.sun.star.comp.toolkit.AccessibleTabPage" );
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleTabPage::supportsService( const ::rtl::OUString& rServiceName ) throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames( getSupportedServiceNames() );
+ const ::rtl::OUString* pNames = aNames.getConstArray();
+ const ::rtl::OUString* pEnd = pNames + aNames.getLength();
+ for ( ; pNames != pEnd && !pNames->equals( rServiceName ); ++pNames )
+ ;
+
+ return pNames != pEnd;
+}
+
+// -----------------------------------------------------------------------------
+
+Sequence< ::rtl::OUString > VCLXAccessibleTabPage::getSupportedServiceNames() throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames(1);
+ aNames[0] = ::rtl::OUString::createFromAscii( "com.sun.star.awt.AccessibleTabPage" );
+ return aNames;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessible
+// -----------------------------------------------------------------------------
+
+Reference< XAccessibleContext > VCLXAccessibleTabPage::getAccessibleContext( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return this;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleContext
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleTabPage::getAccessibleChildCount() throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nCount = 0;
+ if ( m_pTabControl )
+ {
+ TabPage* pTabPage = m_pTabControl->GetTabPage( m_nPageId );
+ if ( pTabPage && pTabPage->IsVisible() )
+ nCount = 1;
+ }
+
+ return nCount;
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > VCLXAccessibleTabPage::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( i < 0 || i >= getAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+
+ Reference< XAccessible > xChild;
+ if ( m_pTabControl )
+ {
+ TabPage* pTabPage = m_pTabControl->GetTabPage( m_nPageId );
+ if ( pTabPage && pTabPage->IsVisible() )
+ xChild = pTabPage->GetAccessible();
+ }
+
+ return xChild;
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > VCLXAccessibleTabPage::getAccessibleParent( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Reference< XAccessible > xParent;
+ if ( m_pTabControl )
+ xParent = m_pTabControl->GetAccessible();
+
+ return xParent;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleTabPage::getAccessibleIndexInParent( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nIndexInParent = -1;
+ if ( m_pTabControl )
+ nIndexInParent = m_pTabControl->GetPagePos( m_nPageId );
+
+ return nIndexInParent;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int16 VCLXAccessibleTabPage::getAccessibleRole( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return AccessibleRole::PAGE_TAB;
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleTabPage::getAccessibleDescription( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ ::rtl::OUString sDescription;
+ if ( m_pTabControl )
+ sDescription = m_pTabControl->GetHelpText( m_nPageId );
+
+ return sDescription;
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleTabPage::getAccessibleName( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return GetPageText();
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessibleRelationSet > VCLXAccessibleTabPage::getAccessibleRelationSet( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ utl::AccessibleRelationSetHelper* pRelationSetHelper = new utl::AccessibleRelationSetHelper;
+ Reference< XAccessibleRelationSet > xSet = pRelationSetHelper;
+ return xSet;
+}
+
+// -----------------------------------------------------------------------------
+
+Reference< XAccessibleStateSet > VCLXAccessibleTabPage::getAccessibleStateSet( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ utl::AccessibleStateSetHelper* pStateSetHelper = new utl::AccessibleStateSetHelper;
+ Reference< XAccessibleStateSet > xSet = pStateSetHelper;
+
+ if ( !rBHelper.bDisposed && !rBHelper.bInDispose )
+ {
+ FillAccessibleStateSet( *pStateSetHelper );
+ }
+ else
+ {
+ pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
+ }
+
+ return xSet;
+}
+
+// -----------------------------------------------------------------------------
+
+Locale VCLXAccessibleTabPage::getLocale( ) throw (IllegalAccessibleComponentStateException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return Application::GetSettings().GetLocale();
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleComponent
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > VCLXAccessibleTabPage::getAccessibleAtPoint( const awt::Point& rPoint ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Reference< XAccessible > xChild;
+ for ( sal_uInt32 i = 0, nCount = getAccessibleChildCount(); i < nCount; ++i )
+ {
+ Reference< XAccessible > xAcc = getAccessibleChild( i );
+ if ( xAcc.is() )
+ {
+ Reference< XAccessibleComponent > xComp( xAcc->getAccessibleContext(), UNO_QUERY );
+ if ( xComp.is() )
+ {
+ Rectangle aRect = VCLRectangle( xComp->getBounds() );
+ Point aPos = VCLPoint( rPoint );
+ if ( aRect.IsInside( aPos ) )
+ {
+ xChild = xAcc;
+ break;
+ }
+ }
+ }
+ }
+
+ return xChild;
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTabPage::grabFocus( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( m_pTabControl )
+ {
+ m_pTabControl->SelectTabPage( m_nPageId );
+ m_pTabControl->GrabFocus();
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleTabPage::getForeground( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nColor = 0;
+ Reference< XAccessible > xParent = getAccessibleParent();
+ if ( xParent.is() )
+ {
+ Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
+ if ( xParentComp.is() )
+ nColor = xParentComp->getForeground();
+ }
+
+ return nColor;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleTabPage::getBackground( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nColor = 0;
+ Reference< XAccessible > xParent = getAccessibleParent();
+ if ( xParent.is() )
+ {
+ Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
+ if ( xParentComp.is() )
+ nColor = xParentComp->getBackground();
+ }
+
+ return nColor;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleExtendedComponent
+// -----------------------------------------------------------------------------
+
+Reference< awt::XFont > VCLXAccessibleTabPage::getFont( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Reference< awt::XFont > xFont;
+ Reference< XAccessible > xParent = getAccessibleParent();
+ if ( xParent.is() )
+ {
+ Reference< XAccessibleExtendedComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
+ if ( xParentComp.is() )
+ xFont = xParentComp->getFont();
+ }
+
+ return xFont;
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleTabPage::getTitledBorderText( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return ::rtl::OUString();
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleTabPage::getToolTipText( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return ::rtl::OUString();
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleText
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleTabPage::getCaretPosition() throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return -1;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleTabPage::setCaretPosition( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( !implIsValidRange( nIndex, nIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ return sal_False;
+}
+
+// -----------------------------------------------------------------------------
+
+Sequence< PropertyValue > VCLXAccessibleTabPage::getCharacterAttributes( sal_Int32 nIndex, const Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Sequence< PropertyValue > aValues;
+ ::rtl::OUString sText( implGetText() );
+
+ if ( !implIsValidIndex( nIndex, sText.getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ if ( m_pTabControl )
+ {
+ Font aFont = m_pTabControl->GetFont();
+ sal_Int32 nBackColor = getBackground();
+ sal_Int32 nColor = getForeground();
+ ::std::auto_ptr< CharacterAttributesHelper > pHelper( new CharacterAttributesHelper( aFont, nBackColor, nColor ) );
+ aValues = pHelper->GetCharacterAttributes( aRequestedAttributes );
+ }
+
+ return aValues;
+}
+
+// -----------------------------------------------------------------------------
+
+awt::Rectangle VCLXAccessibleTabPage::getCharacterBounds( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( !implIsValidIndex( nIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ awt::Rectangle aBounds( 0, 0, 0, 0 );
+ if ( m_pTabControl )
+ {
+ Rectangle aPageRect = m_pTabControl->GetTabBounds( m_nPageId );
+ Rectangle aCharRect = m_pTabControl->GetCharacterBounds( m_nPageId, nIndex );
+ aCharRect.Move( -aPageRect.Left(), -aPageRect.Top() );
+ aBounds = AWTRectangle( aCharRect );
+ }
+
+ return aBounds;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleTabPage::getIndexAtPoint( const awt::Point& aPoint ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nIndex = -1;
+ if ( m_pTabControl )
+ {
+ sal_uInt16 nPageId = 0;
+ Rectangle aPageRect = m_pTabControl->GetTabBounds( m_nPageId );
+ Point aPnt( VCLPoint( aPoint ) );
+ aPnt += aPageRect.TopLeft();
+ sal_Int32 nI = m_pTabControl->GetIndexForPoint( aPnt, nPageId );
+ if ( nI != -1 && m_nPageId == nPageId )
+ nIndex = nI;
+ }
+
+ return nIndex;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleTabPage::setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( !implIsValidRange( nStartIndex, nEndIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ return sal_False;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleTabPage::copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Bool bReturn = sal_False;
+
+ if ( m_pTabControl )
+ {
+ Reference< datatransfer::clipboard::XClipboard > xClipboard = m_pTabControl->GetClipboard();
+ if ( xClipboard.is() )
+ {
+ ::rtl::OUString sText( getTextRange( nStartIndex, nEndIndex ) );
+
+ ::vcl::unohelper::TextDataObject* pDataObj = new ::vcl::unohelper::TextDataObject( sText );
+ const sal_uInt32 nRef = Application::ReleaseSolarMutex();
+ xClipboard->setContents( pDataObj, NULL );
+
+ Reference< datatransfer::clipboard::XFlushableClipboard > xFlushableClipboard( xClipboard, uno::UNO_QUERY );
+ if( xFlushableClipboard.is() )
+ xFlushableClipboard->flushClipboard();
+
+ Application::AcquireSolarMutex( nRef );
+
+ bReturn = sal_True;
+ }
+ }
+
+ return bReturn;
+}
+
+// -----------------------------------------------------------------------------
diff --git a/accessibility/source/standard/vclxaccessibletabpagewindow.cxx b/accessibility/source/standard/vclxaccessibletabpagewindow.cxx
new file mode 100644
index 000000000000..93fc1b3da2ff
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessibletabpagewindow.cxx
@@ -0,0 +1,141 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/standard/vclxaccessibletabpagewindow.hxx>
+#include <toolkit/helper/convert.hxx>
+#include <vcl/tabctrl.hxx>
+#include <vcl/tabpage.hxx>
+
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::accessibility;
+using namespace ::comphelper;
+
+
+// ----------------------------------------------------
+// class VCLXAccessibleTabPageWindow
+// ----------------------------------------------------
+
+VCLXAccessibleTabPageWindow::VCLXAccessibleTabPageWindow( VCLXWindow* pVCLXWindow )
+ :VCLXAccessibleComponent( pVCLXWindow )
+{
+ m_pTabPage = static_cast< TabPage* >( GetWindow() );
+ if ( m_pTabPage )
+ {
+ Window* pParent = m_pTabPage->GetAccessibleParentWindow();
+ if ( pParent && pParent->GetType() == WINDOW_TABCONTROL )
+ {
+ m_pTabControl = static_cast< TabControl* >( pParent );
+ if ( m_pTabControl )
+ {
+ for ( sal_uInt16 i = 0, nCount = m_pTabControl->GetPageCount(); i < nCount; ++i )
+ {
+ sal_uInt16 nPageId = m_pTabControl->GetPageId( i );
+ if ( m_pTabControl->GetTabPage( nPageId ) == m_pTabPage )
+ m_nPageId = nPageId;
+ }
+ }
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleTabPageWindow::~VCLXAccessibleTabPageWindow()
+{
+}
+
+// -----------------------------------------------------------------------------
+// OCommonAccessibleComponent
+// -----------------------------------------------------------------------------
+
+awt::Rectangle VCLXAccessibleTabPageWindow::implGetBounds() throw (RuntimeException)
+{
+ awt::Rectangle aBounds( 0, 0, 0, 0 );
+
+ if ( m_pTabControl )
+ {
+ Rectangle aPageRect = m_pTabControl->GetTabBounds( m_nPageId );
+ if ( m_pTabPage )
+ {
+ Rectangle aRect = Rectangle( m_pTabPage->GetPosPixel(), m_pTabPage->GetSizePixel() );
+ aRect.Move( -aPageRect.Left(), -aPageRect.Top() );
+ aBounds = AWTRectangle( aRect );
+ }
+ }
+
+ return aBounds;
+}
+
+// -----------------------------------------------------------------------------
+// XComponent
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTabPageWindow::disposing()
+{
+ VCLXAccessibleComponent::disposing();
+
+ m_pTabControl = NULL;
+ m_pTabPage = NULL;
+}
+
+// -----------------------------------------------------------------------------
+// XAccessibleContext
+// -----------------------------------------------------------------------------
+
+Reference< XAccessible > VCLXAccessibleTabPageWindow::getAccessibleParent( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Reference< XAccessible > xParent;
+ if ( m_pTabControl )
+ {
+ Reference< XAccessible > xAcc( m_pTabControl->GetAccessible() );
+ if ( xAcc.is() )
+ {
+ Reference< XAccessibleContext > xCont( xAcc->getAccessibleContext() );
+ if ( xCont.is() )
+ xParent = xCont->getAccessibleChild( m_pTabControl->GetPagePos( m_nPageId ) );
+ }
+ }
+
+ return xParent;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleTabPageWindow::getAccessibleIndexInParent( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return 0;
+}
+
+// -----------------------------------------------------------------------------
diff --git a/accessibility/source/standard/vclxaccessibletextcomponent.cxx b/accessibility/source/standard/vclxaccessibletextcomponent.cxx
new file mode 100644
index 000000000000..c6bbaddf6426
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessibletextcomponent.cxx
@@ -0,0 +1,362 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/standard/vclxaccessibletextcomponent.hxx>
+#include <toolkit/helper/macros.hxx>
+#include <toolkit/helper/convert.hxx>
+#include <accessibility/helper/characterattributeshelper.hxx>
+
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/datatransfer/clipboard/XClipboard.hpp>
+#include <com/sun/star/datatransfer/clipboard/XFlushableClipboard.hpp>
+#include <cppuhelper/typeprovider.hxx>
+#include <comphelper/sequence.hxx>
+#include <vcl/window.hxx>
+#include <vcl/svapp.hxx>
+#include <vcl/unohelp2.hxx>
+#include <vcl/ctrl.hxx>
+
+#include <memory>
+#include <vector>
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::beans;
+using namespace ::com::sun::star::accessibility;
+using namespace ::comphelper;
+
+
+// ----------------------------------------------------
+// class VCLXAccessibleTextComponent
+// ----------------------------------------------------
+
+VCLXAccessibleTextComponent::VCLXAccessibleTextComponent( VCLXWindow* pVCLXWindow )
+ :VCLXAccessibleComponent( pVCLXWindow )
+{
+ if ( GetWindow() )
+ m_sText = OutputDevice::GetNonMnemonicString( GetWindow()->GetText() );
+}
+
+// -----------------------------------------------------------------------------
+
+VCLXAccessibleTextComponent::~VCLXAccessibleTextComponent()
+{
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTextComponent::SetText( const ::rtl::OUString& sText )
+{
+ Any aOldValue, aNewValue;
+ if ( implInitTextChangedEvent( m_sText, sText, aOldValue, aNewValue ) )
+ {
+ m_sText = sText;
+ NotifyAccessibleEvent( AccessibleEventId::TEXT_CHANGED, aOldValue, aNewValue );
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTextComponent::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
+{
+ switch ( rVclWindowEvent.GetId() )
+ {
+ case VCLEVENT_WINDOW_FRAMETITLECHANGED:
+ {
+ VCLXAccessibleComponent::ProcessWindowEvent( rVclWindowEvent );
+ SetText( implGetText() );
+ }
+ break;
+ default:
+ VCLXAccessibleComponent::ProcessWindowEvent( rVclWindowEvent );
+ }
+}
+
+// -----------------------------------------------------------------------------
+// OCommonAccessibleText
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleTextComponent::implGetText()
+{
+ ::rtl::OUString aText;
+ if ( GetWindow() )
+ aText = OutputDevice::GetNonMnemonicString( GetWindow()->GetText() );
+
+ return aText;
+}
+
+// -----------------------------------------------------------------------------
+
+lang::Locale VCLXAccessibleTextComponent::implGetLocale()
+{
+ return Application::GetSettings().GetLocale();
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTextComponent::implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex )
+{
+ nStartIndex = 0;
+ nEndIndex = 0;
+}
+
+// -----------------------------------------------------------------------------
+// XComponent
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleTextComponent::disposing()
+{
+ VCLXAccessibleComponent::disposing();
+
+ m_sText = ::rtl::OUString();
+}
+
+// -----------------------------------------------------------------------------
+// XInterface
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XINTERFACE2( VCLXAccessibleTextComponent, VCLXAccessibleComponent, VCLXAccessibleTextComponent_BASE )
+
+// -----------------------------------------------------------------------------
+// XTypeProvider
+// -----------------------------------------------------------------------------
+
+IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleTextComponent, VCLXAccessibleComponent, VCLXAccessibleTextComponent_BASE )
+
+// -----------------------------------------------------------------------------
+// XAccessibleText
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleTextComponent::getCaretPosition() throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return -1;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleTextComponent::setCaretPosition( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return setSelection( nIndex, nIndex );
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Unicode VCLXAccessibleTextComponent::getCharacter( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return OCommonAccessibleText::getCharacter( nIndex );
+}
+
+// -----------------------------------------------------------------------------
+
+Sequence< PropertyValue > VCLXAccessibleTextComponent::getCharacterAttributes( sal_Int32 nIndex, const Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Sequence< PropertyValue > aValues;
+ ::rtl::OUString sText( implGetText() );
+
+ if ( !implIsValidIndex( nIndex, sText.getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ if ( GetWindow() )
+ {
+ Font aFont = GetWindow()->GetControlFont();
+ sal_Int32 nBackColor = GetWindow()->GetControlBackground().GetColor();
+ sal_Int32 nColor = GetWindow()->GetControlForeground().GetColor();
+ ::std::auto_ptr< CharacterAttributesHelper > pHelper( new CharacterAttributesHelper( aFont, nBackColor, nColor ) );
+ aValues = pHelper->GetCharacterAttributes( aRequestedAttributes );
+ }
+
+ return aValues;
+}
+
+// -----------------------------------------------------------------------------
+
+awt::Rectangle VCLXAccessibleTextComponent::getCharacterBounds( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( !implIsValidIndex( nIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ awt::Rectangle aRect;
+ Control* pControl = static_cast< Control* >( GetWindow() );
+ if ( pControl )
+ aRect = AWTRectangle( pControl->GetCharacterBounds( nIndex ) );
+
+ return aRect;
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleTextComponent::getCharacterCount() throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return OCommonAccessibleText::getCharacterCount();
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleTextComponent::getIndexAtPoint( const awt::Point& aPoint ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nIndex = -1;
+ Control* pControl = static_cast< Control* >( GetWindow() );
+ if ( pControl )
+ nIndex = pControl->GetIndexForPoint( VCLPoint( aPoint ) );
+
+ return nIndex;
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleTextComponent::getSelectedText() throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return OCommonAccessibleText::getSelectedText();
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleTextComponent::getSelectionStart() throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return OCommonAccessibleText::getSelectionStart();
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Int32 VCLXAccessibleTextComponent::getSelectionEnd() throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return OCommonAccessibleText::getSelectionEnd();
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleTextComponent::setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( !implIsValidRange( nStartIndex, nEndIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ return sal_False;
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleTextComponent::getText() throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return OCommonAccessibleText::getText();
+}
+
+// -----------------------------------------------------------------------------
+
+::rtl::OUString VCLXAccessibleTextComponent::getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return OCommonAccessibleText::getTextRange( nStartIndex, nEndIndex );
+}
+
+// -----------------------------------------------------------------------------
+
+::com::sun::star::accessibility::TextSegment VCLXAccessibleTextComponent::getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return OCommonAccessibleText::getTextAtIndex( nIndex, aTextType );
+}
+
+// -----------------------------------------------------------------------------
+
+::com::sun::star::accessibility::TextSegment VCLXAccessibleTextComponent::getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return OCommonAccessibleText::getTextBeforeIndex( nIndex, aTextType );
+}
+
+// -----------------------------------------------------------------------------
+
+::com::sun::star::accessibility::TextSegment VCLXAccessibleTextComponent::getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ return OCommonAccessibleText::getTextBehindIndex( nIndex, aTextType );
+}
+
+// -----------------------------------------------------------------------------
+
+sal_Bool VCLXAccessibleTextComponent::copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Bool bReturn = sal_False;
+
+ if ( GetWindow() )
+ {
+ Reference< datatransfer::clipboard::XClipboard > xClipboard = GetWindow()->GetClipboard();
+ if ( xClipboard.is() )
+ {
+ ::rtl::OUString sText( getTextRange( nStartIndex, nEndIndex ) );
+
+ ::vcl::unohelper::TextDataObject* pDataObj = new ::vcl::unohelper::TextDataObject( sText );
+ const sal_uInt32 nRef = Application::ReleaseSolarMutex();
+ xClipboard->setContents( pDataObj, NULL );
+
+ Reference< datatransfer::clipboard::XFlushableClipboard > xFlushableClipboard( xClipboard, uno::UNO_QUERY );
+ if( xFlushableClipboard.is() )
+ xFlushableClipboard->flushClipboard();
+
+ Application::AcquireSolarMutex( nRef );
+
+ bReturn = sal_True;
+ }
+ }
+
+ return bReturn;
+}
+
+// -----------------------------------------------------------------------------
diff --git a/accessibility/source/standard/vclxaccessibletextfield.cxx b/accessibility/source/standard/vclxaccessibletextfield.cxx
new file mode 100644
index 000000000000..e77d203d443a
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessibletextfield.cxx
@@ -0,0 +1,154 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/standard/vclxaccessibletextfield.hxx>
+#include <vcl/lstbox.hxx>
+#include <accessibility/helper/listboxhelper.hxx>
+
+#include <unotools/accessiblestatesethelper.hxx>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <vcl/svapp.hxx>
+#include <vcl/combobox.hxx>
+
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::beans;
+using namespace ::com::sun::star::accessibility;
+
+
+
+
+VCLXAccessibleTextField::VCLXAccessibleTextField (VCLXWindow* pVCLWindow, const Reference< XAccessible >& _xParent) :
+
+ VCLXAccessibleTextComponent (pVCLWindow),
+
+ m_xParent( _xParent )
+
+{
+}
+
+
+
+
+VCLXAccessibleTextField::~VCLXAccessibleTextField (void)
+{
+}
+
+
+
+
+::rtl::OUString VCLXAccessibleTextField::implGetText (void)
+{
+ ::rtl::OUString aText;
+ ListBox* pListBox = static_cast<ListBox*>(GetWindow());
+ if (pListBox!=NULL && !pListBox->IsInDropDown())
+ aText = pListBox->GetSelectEntry();
+
+ return aText;
+}
+
+
+
+
+IMPLEMENT_FORWARD_XINTERFACE2(VCLXAccessibleTextField, VCLXAccessibleTextComponent, VCLXAccessible_BASE)
+IMPLEMENT_FORWARD_XTYPEPROVIDER2(VCLXAccessibleTextField, VCLXAccessibleTextComponent, VCLXAccessible_BASE)
+
+
+//===== XAccessible =========================================================
+
+Reference<XAccessibleContext> SAL_CALL
+ VCLXAccessibleTextField::getAccessibleContext (void)
+ throw (RuntimeException)
+{
+ return this;
+}
+
+
+//===== XAccessibleContext ==================================================
+
+sal_Int32 SAL_CALL VCLXAccessibleTextField::getAccessibleChildCount (void)
+ throw (RuntimeException)
+{
+ return 0;
+}
+
+
+
+
+Reference<XAccessible> SAL_CALL VCLXAccessibleTextField::getAccessibleChild (sal_Int32)
+ throw (IndexOutOfBoundsException, RuntimeException)
+{
+ throw IndexOutOfBoundsException();
+}
+
+
+
+
+sal_Int16 SAL_CALL VCLXAccessibleTextField::getAccessibleRole (void)
+ throw (RuntimeException)
+{
+ ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
+
+ return AccessibleRole::TEXT;
+}
+
+Reference< XAccessible > SAL_CALL VCLXAccessibleTextField::getAccessibleParent( )
+ throw (RuntimeException)
+{
+ ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
+
+ return m_xParent;
+}
+
+
+
+//===== XServiceInfo ==========================================================
+
+::rtl::OUString VCLXAccessibleTextField::getImplementationName (void)
+ throw (RuntimeException)
+{
+ return ::rtl::OUString::createFromAscii ("com.sun.star.comp.toolkit.AccessibleTextField");
+}
+
+
+
+
+Sequence< ::rtl::OUString > VCLXAccessibleTextField::getSupportedServiceNames (void)
+ throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames = VCLXAccessibleTextComponent::getSupportedServiceNames();
+ sal_Int32 nLength = aNames.getLength();
+ aNames.realloc( nLength + 1 );
+ aNames[nLength] = ::rtl::OUString::createFromAscii(
+ "com.sun.star.accessibility.AccessibleTextField");
+ return aNames;
+}
diff --git a/accessibility/source/standard/vclxaccessibletoolbox.cxx b/accessibility/source/standard/vclxaccessibletoolbox.cxx
new file mode 100644
index 000000000000..ce796af77ab4
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessibletoolbox.cxx
@@ -0,0 +1,882 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+
+// includes --------------------------------------------------------------
+#include <accessibility/standard/vclxaccessibletoolbox.hxx>
+#include <accessibility/standard/vclxaccessibletoolboxitem.hxx>
+#include <toolkit/helper/convert.hxx>
+
+#include <unotools/accessiblestatesethelper.hxx>
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <com/sun/star/lang/XUnoTunnel.hpp>
+#include <com/sun/star/lang/XUnoTunnel.hpp>
+#include <tools/debug.hxx>
+#include <vcl/toolbox.hxx>
+#include <comphelper/accessiblewrapper.hxx>
+#include <comphelper/processfactory.hxx>
+
+using namespace ::comphelper;
+using namespace ::com::sun::star;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::accessibility;
+
+namespace
+{
+ // =========================================================================
+ // = OToolBoxWindowItemContext
+ // =========================================================================
+ /** XAccessibleContext implementation for a toolbox item which is represented by a VCL Window
+ */
+ class OToolBoxWindowItemContext : public OAccessibleContextWrapper
+ {
+ sal_Int32 m_nIndexInParent;
+ public:
+ OToolBoxWindowItemContext(sal_Int32 _nIndexInParent,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxORB,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >& _rxInnerAccessibleContext,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxOwningAccessible,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParentAccessible
+ ) : OAccessibleContextWrapper(
+ _rxORB,
+ _rxInnerAccessibleContext,
+ _rxOwningAccessible,
+ _rxParentAccessible )
+ ,m_nIndexInParent(_nIndexInParent)
+ {
+ }
+ virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
+ };
+
+ // -------------------------------------------------------------------------
+ sal_Int32 SAL_CALL OToolBoxWindowItemContext::getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ ::osl::MutexGuard aGuard( m_aMutex );
+ return m_nIndexInParent;
+ }
+
+ // =========================================================================
+ // = OToolBoxWindowItem
+ // =========================================================================
+ typedef ::cppu::ImplHelper1 < XUnoTunnel
+ > OToolBoxWindowItem_Base;
+
+ /** XAccessible implementation for a toolbox item which is represented by a VCL Window
+ */
+ class OToolBoxWindowItem
+ :public OAccessibleWrapper
+ ,public OToolBoxWindowItem_Base
+ {
+ private:
+ sal_Int32 m_nIndexInParent;
+
+ public:
+ inline sal_Int32 getIndexInParent() const { return m_nIndexInParent; }
+ inline void setIndexInParent( sal_Int32 _nNewIndex ) { m_nIndexInParent = _nNewIndex; }
+
+ static sal_Bool isWindowItem( const Reference< XAccessible >& _rxAcc, OToolBoxWindowItem** /* [out] */ _ppImplementation = NULL );
+
+ public:
+ OToolBoxWindowItem(sal_Int32 _nIndexInParent,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxORB,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxInnerAccessible,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParentAccessible
+ ) : OAccessibleWrapper(
+ _rxORB,
+ _rxInnerAccessible,
+ _rxParentAccessible)
+ ,m_nIndexInParent(_nIndexInParent)
+ {
+ }
+
+ protected:
+ // XInterface
+ DECLARE_XINTERFACE( )
+ DECLARE_XTYPEPROVIDER( )
+
+ // OAccessibleWrapper
+ virtual OAccessibleContextWrapper* createAccessibleContext(
+ const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >& _rxInnerContext
+ );
+
+ // XUnoTunnel
+ virtual sal_Int64 SAL_CALL getSomething( const Sequence< sal_Int8 >& aIdentifier ) throw (RuntimeException);
+ static Sequence< sal_Int8 > getUnoTunnelImplementationId();
+ };
+
+ // -------------------------------------------------------------------------
+ IMPLEMENT_FORWARD_XINTERFACE2( OToolBoxWindowItem, OAccessibleWrapper, OToolBoxWindowItem_Base )
+ IMPLEMENT_FORWARD_XTYPEPROVIDER2( OToolBoxWindowItem, OAccessibleWrapper, OToolBoxWindowItem_Base )
+
+ // -------------------------------------------------------------------------
+ OAccessibleContextWrapper* OToolBoxWindowItem::createAccessibleContext(
+ const Reference< XAccessibleContext >& _rxInnerContext )
+ {
+ return new OToolBoxWindowItemContext( m_nIndexInParent,getORB(), _rxInnerContext, this, getParent() );
+ }
+
+ //--------------------------------------------------------------------
+ sal_Bool OToolBoxWindowItem::isWindowItem( const Reference< XAccessible >& _rxAcc, OToolBoxWindowItem** /* [out] */ _ppImplementation )
+ {
+ OToolBoxWindowItem* pImplementation = NULL;
+
+ Reference< XUnoTunnel > xTunnel( _rxAcc, UNO_QUERY );
+ if ( xTunnel.is() )
+ pImplementation = reinterpret_cast< OToolBoxWindowItem* >( xTunnel->getSomething( getUnoTunnelImplementationId() ) );
+
+ if ( _ppImplementation )
+ *_ppImplementation = pImplementation;
+
+ return NULL != pImplementation;
+ }
+
+ //--------------------------------------------------------------------
+ Sequence< sal_Int8 > OToolBoxWindowItem::getUnoTunnelImplementationId()
+ {
+ static ::cppu::OImplementationId * pId = 0;
+ if (! pId)
+ {
+ ::osl::MutexGuard aGuard( ::osl::Mutex::getGlobalMutex() );
+ if (! pId)
+ {
+ static ::cppu::OImplementationId aId;
+ pId = &aId;
+ }
+ }
+ return pId->getImplementationId();
+ }
+
+ //--------------------------------------------------------------------
+ sal_Int64 SAL_CALL OToolBoxWindowItem::getSomething( const Sequence< sal_Int8 >& _rId ) throw (RuntimeException)
+ {
+ if ( ( 16 == _rId.getLength() )
+ && ( 0 == rtl_compareMemory( getUnoTunnelImplementationId().getConstArray(), _rId.getConstArray(), 16 ) )
+ )
+ return reinterpret_cast< sal_Int64>( this );
+
+ return 0;
+ }
+}
+
+DBG_NAME(VCLXAccessibleToolBox)
+
+// -----------------------------------------------------------------------------
+// VCLXAccessibleToolBox
+// -----------------------------------------------------------------------------
+VCLXAccessibleToolBox::VCLXAccessibleToolBox( VCLXWindow* pVCLXWindow ) :
+
+ VCLXAccessibleComponent( pVCLXWindow )
+
+{
+ DBG_CTOR(VCLXAccessibleToolBox,NULL);
+}
+// -----------------------------------------------------------------------------
+VCLXAccessibleToolBox::~VCLXAccessibleToolBox()
+{
+ DBG_DTOR(VCLXAccessibleToolBox,NULL);
+}
+// -----------------------------------------------------------------------------
+VCLXAccessibleToolBoxItem* VCLXAccessibleToolBox::GetItem_Impl( sal_Int32 _nPos, bool _bMustHaveFocus )
+{
+ VCLXAccessibleToolBoxItem* pItem = NULL;
+ ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
+ if ( pToolBox && ( !_bMustHaveFocus || pToolBox->HasFocus() ) )
+ {
+ ToolBoxItemsMap::iterator aIter = m_aAccessibleChildren.find( _nPos );
+ // returns only toolbox buttons, not windows
+ if ( aIter != m_aAccessibleChildren.end() && !aIter->second.is())
+ pItem = static_cast< VCLXAccessibleToolBoxItem* >( aIter->second.get() );
+ }
+
+ return pItem;
+}
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleToolBox::UpdateFocus_Impl()
+{
+ ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
+ if( !pToolBox )
+ return;
+
+ // submit events only if toolbox has the focus to avoid sending events due to mouse move
+ BOOL bHasFocus = FALSE;
+ if ( pToolBox->HasFocus() )
+ bHasFocus = TRUE;
+ else
+ {
+ // check for subtoolbar, i.e. check if our parent is a toolbar
+ ToolBox* pToolBoxParent = dynamic_cast< ToolBox* >( pToolBox->GetParent() );
+ // subtoolbars never get the focus as key input is just forwarded, so check if the parent toolbar has it
+ if ( pToolBoxParent && pToolBoxParent->HasFocus() )
+ bHasFocus = TRUE;
+ }
+
+ if ( bHasFocus )
+ {
+ USHORT nHighlightItemId = pToolBox->GetHighlightItemId();
+ USHORT nFocusCount = 0;
+ for ( ToolBoxItemsMap::iterator aIter = m_aAccessibleChildren.begin();
+ aIter != m_aAccessibleChildren.end(); ++aIter )
+ {
+ USHORT nItemId = pToolBox->GetItemId( (USHORT)aIter->first );
+
+ if ( aIter->second.is() )
+ {
+ VCLXAccessibleToolBoxItem* pItem =
+ static_cast< VCLXAccessibleToolBoxItem* >( aIter->second.get() );
+ if ( pItem->HasFocus() && nItemId != nHighlightItemId )
+ {
+ // reset the old focused item
+ pItem->SetFocus( sal_False );
+ nFocusCount++;
+ }
+ if ( nItemId == nHighlightItemId )
+ {
+ // set the new focused item
+ pItem->SetFocus( sal_True );
+ nFocusCount++;
+ }
+ }
+ // both items changed?
+ if ( nFocusCount > 1 )
+ break;
+ }
+ }
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleToolBox::ReleaseFocus_Impl( sal_Int32 _nPos )
+{
+ ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
+ if ( pToolBox ) // #107124#, do not check for focus because this message is also handled in losefocus
+ {
+ ToolBoxItemsMap::iterator aIter = m_aAccessibleChildren.find( _nPos );
+ if ( aIter != m_aAccessibleChildren.end() && aIter->second.is() )
+ {
+ VCLXAccessibleToolBoxItem* pItem =
+ static_cast< VCLXAccessibleToolBoxItem* >( aIter->second.get() );
+ if ( pItem->HasFocus() )
+ pItem->SetFocus( sal_False );
+ }
+ }
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleToolBox::UpdateChecked_Impl( sal_Int32 )
+{
+ ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
+ if ( pToolBox )
+ {
+ for ( ToolBoxItemsMap::iterator aIter = m_aAccessibleChildren.begin();
+ aIter != m_aAccessibleChildren.end(); ++aIter )
+ {
+ USHORT nItemId = pToolBox->GetItemId( (USHORT)aIter->first );
+
+ VCLXAccessibleToolBoxItem* pItem =
+ static_cast< VCLXAccessibleToolBoxItem* >( aIter->second.get() );
+ pItem->SetChecked( pToolBox->IsItemChecked( nItemId ) );
+ }
+ }
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleToolBox::UpdateIndeterminate_Impl( sal_Int32 _nPos )
+{
+ ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
+ if ( pToolBox )
+ {
+ USHORT nItemId = pToolBox->GetItemId( (USHORT)_nPos );
+
+ ToolBoxItemsMap::iterator aIter = m_aAccessibleChildren.find( _nPos );
+ if ( aIter != m_aAccessibleChildren.end() && aIter->second.is() )
+ {
+ VCLXAccessibleToolBoxItem* pItem =
+ static_cast< VCLXAccessibleToolBoxItem* >( aIter->second.get() );
+ if ( pItem )
+ pItem->SetIndeterminate( pToolBox->GetItemState( nItemId ) == STATE_DONTKNOW );
+ }
+ }
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleToolBox::implReleaseToolboxItem( ToolBoxItemsMap::iterator& _rMapPos,
+ bool _bNotifyRemoval, bool _bDispose )
+{
+ Reference< XAccessible > xItemAcc( _rMapPos->second );
+ if ( !xItemAcc.is() )
+ return;
+
+ if ( _bNotifyRemoval )
+ {
+ NotifyAccessibleEvent( AccessibleEventId::CHILD, makeAny( xItemAcc ), Any() );
+ }
+
+ OToolBoxWindowItem* pWindowItem = NULL;
+ if ( !OToolBoxWindowItem::isWindowItem( xItemAcc, &pWindowItem ) )
+ {
+ static_cast< VCLXAccessibleToolBoxItem* >( xItemAcc.get() )->ReleaseToolBox();
+ if ( _bDispose )
+ ::comphelper::disposeComponent( xItemAcc );
+ }
+ else
+ {
+ if ( _bDispose )
+ {
+ if ( pWindowItem )
+ {
+ Reference< XAccessibleContext > xContext( pWindowItem->getContextNoCreate() );
+ ::comphelper::disposeComponent( xContext );
+ }
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+void VCLXAccessibleToolBox::UpdateItem_Impl( sal_Int32 _nPos, sal_Bool _bItemAdded )
+{
+ if ( _nPos < sal_Int32( m_aAccessibleChildren.size() ) )
+ {
+ UpdateAllItems_Impl();
+ return;
+ }
+
+ ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
+ if ( pToolBox )
+ {
+ if ( !_bItemAdded )
+ { // the item was removed
+ // -> destroy the old item
+ ToolBoxItemsMap::iterator aItemPos = m_aAccessibleChildren.find( _nPos );
+ if ( m_aAccessibleChildren.end() != aItemPos )
+ {
+ implReleaseToolboxItem( aItemPos, true, true );
+ m_aAccessibleChildren.erase( aItemPos );
+ }
+ }
+
+ // adjust the "index-in-parent"s
+ ToolBoxItemsMap::iterator aIndexAdjust = m_aAccessibleChildren.upper_bound( _nPos );
+ while ( m_aAccessibleChildren.end() != aIndexAdjust )
+ {
+ Reference< XAccessible > xItemAcc( aIndexAdjust->second );
+
+ OToolBoxWindowItem* pWindowItem = NULL;
+ if ( !OToolBoxWindowItem::isWindowItem( xItemAcc, &pWindowItem ) )
+ {
+ VCLXAccessibleToolBoxItem* pItem = static_cast< VCLXAccessibleToolBoxItem* >( xItemAcc.get() );
+ if ( pItem )
+ {
+ sal_Int32 nIndex = pItem->getIndexInParent( );
+ nIndex += _bItemAdded ? +1 : -1;
+ pItem->setIndexInParent( nIndex );
+ }
+ }
+ else
+ {
+ if ( pWindowItem )
+ {
+ sal_Int32 nIndex = pWindowItem->getIndexInParent( );
+ nIndex += _bItemAdded ? +1 : -1;
+ pWindowItem->setIndexInParent( nIndex );
+ }
+ }
+
+ ++aIndexAdjust;
+ }
+
+ if ( _bItemAdded )
+ {
+ // TODO: we should make this dependent on the existence of event listeners
+ // with the current implementation, we always create accessible object
+ Any aNewChild = makeAny( getAccessibleChild( (sal_Int32)_nPos ) );
+ NotifyAccessibleEvent( AccessibleEventId::CHILD, Any(), aNewChild );
+ }
+ }
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleToolBox::UpdateAllItems_Impl()
+{
+ ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
+ if ( pToolBox )
+ {
+ // deregister the old items
+ for ( ToolBoxItemsMap::iterator aIter = m_aAccessibleChildren.begin();
+ aIter != m_aAccessibleChildren.end(); ++aIter )
+ {
+ implReleaseToolboxItem( aIter, true, true );
+ }
+ m_aAccessibleChildren.clear();
+
+ // register the new items
+ USHORT i, nCount = pToolBox->GetItemCount();
+ for ( i = 0; i < nCount; ++i )
+ {
+ Any aNewValue;
+ aNewValue <<= getAccessibleChild( (sal_Int32)i );;
+ NotifyAccessibleEvent( AccessibleEventId::CHILD, Any(), aNewValue );
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+
+void VCLXAccessibleToolBox::UpdateCustomPopupItemp_Impl( Window* pWindow, bool bOpen )
+{
+ ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
+ if( pWindow && pToolBox )
+ {
+ Reference< XAccessible > xChild( pWindow->GetAccessible() );
+ if( xChild.is() )
+ {
+ Reference< XAccessible > xChildItem( getAccessibleChild( static_cast< sal_Int32 >( pToolBox->GetItemPos( pToolBox->GetDownItemId() ) ) ) );
+ VCLXAccessibleToolBoxItem* pItem = static_cast< VCLXAccessibleToolBoxItem* >( xChildItem.get() );
+
+ pItem->SetChild( xChild );
+ pItem->NotifyChildEvent( xChild, bOpen );
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+void VCLXAccessibleToolBox::UpdateItemName_Impl( sal_Int32 _nPos )
+{
+ VCLXAccessibleToolBoxItem* pItem = GetItem_Impl( _nPos, false );
+ if ( pItem )
+ pItem->NameChanged();
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleToolBox::UpdateItemEnabled_Impl( sal_Int32 _nPos )
+{
+ VCLXAccessibleToolBoxItem* pItem = GetItem_Impl( _nPos, false );
+ if ( pItem )
+ pItem->ToggleEnableState();
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleToolBox::HandleSubToolBarEvent( const VclWindowEvent& rVclWindowEvent, bool _bShow )
+{
+ Window* pChildWindow = (Window *) rVclWindowEvent.GetData();
+ ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
+ if ( pChildWindow
+ && pToolBox
+ && pToolBox == pChildWindow->GetParent()
+ && pChildWindow->GetType() == WINDOW_TOOLBOX )
+ {
+ sal_Int32 nIndex = pToolBox->GetItemPos( pToolBox->GetCurItemId() );
+ Reference< XAccessible > xItem = getAccessibleChild( nIndex );
+ if ( xItem.is() )
+ {
+ Reference< XAccessible > xChild = pChildWindow->GetAccessible();
+ VCLXAccessibleToolBoxItem* pItem =
+ static_cast< VCLXAccessibleToolBoxItem* >( xItem.get() );
+ pItem->SetChild( xChild );
+ pItem->NotifyChildEvent( xChild, _bShow );
+ }
+ }
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleToolBox::ReleaseSubToolBox( ToolBox* _pSubToolBox )
+{
+ ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
+ if ( pToolBox )
+ {
+ sal_Int32 nIndex = pToolBox->GetItemPos( pToolBox->GetCurItemId() );
+ Reference< XAccessible > xItem = getAccessibleChild( nIndex );
+ if ( xItem.is() )
+ {
+ Reference< XAccessible > xChild = _pSubToolBox->GetAccessible();
+ VCLXAccessibleToolBoxItem* pItem =
+ static_cast< VCLXAccessibleToolBoxItem* >( xItem.get() );
+ if ( pItem->GetChild() == xChild )
+ {
+ pItem->SetChild( Reference< XAccessible >() );
+ pItem->NotifyChildEvent( xChild, false );
+ }
+ }
+ }
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleToolBox::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
+{
+ VCLXAccessibleComponent::FillAccessibleStateSet( rStateSet );
+
+ ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
+ if ( pToolBox )
+ {
+ rStateSet.AddState( AccessibleStateType::FOCUSABLE );
+ if ( pToolBox->IsHorizontal() )
+ rStateSet.AddState( AccessibleStateType::HORIZONTAL );
+ else
+ rStateSet.AddState( AccessibleStateType::VERTICAL );
+ }
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleToolBox::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
+{
+ // to prevent an early release of the toolbox (VCLEVENT_OBJECT_DYING)
+ Reference< XAccessibleContext > xTemp = this;
+
+ switch ( rVclWindowEvent.GetId() )
+ {
+ case VCLEVENT_TOOLBOX_CLICK:
+ {
+ if ( rVclWindowEvent.GetData() )
+ {
+ UpdateChecked_Impl( (sal_Int32)(sal_IntPtr)rVclWindowEvent.GetData() );
+ UpdateIndeterminate_Impl( (sal_Int32)(sal_IntPtr)rVclWindowEvent.GetData() );
+ }
+ break;
+ }
+ case VCLEVENT_TOOLBOX_DOUBLECLICK:
+ case VCLEVENT_TOOLBOX_ACTIVATE:
+ case VCLEVENT_TOOLBOX_DEACTIVATE:
+ case VCLEVENT_TOOLBOX_SELECT:
+ break;
+
+ case VCLEVENT_TOOLBOX_HIGHLIGHT:
+ UpdateFocus_Impl();
+ break;
+
+ case VCLEVENT_TOOLBOX_HIGHLIGHTOFF:
+ ReleaseFocus_Impl( (sal_Int32)(sal_IntPtr)rVclWindowEvent.GetData() );
+ break;
+
+ case VCLEVENT_TOOLBOX_ITEMADDED :
+// UpdateItem_Impl( (sal_Int32)(sal_IntPtr)rVclWindowEvent.GetData(), VCLEVENT_TOOLBOX_ITEMADDED == rVclWindowEvent.GetId() );
+ UpdateItem_Impl( (sal_Int32)(sal_IntPtr)rVclWindowEvent.GetData(), sal_True );
+ break;
+
+ case VCLEVENT_TOOLBOX_ITEMREMOVED :
+ case VCLEVENT_TOOLBOX_ALLITEMSCHANGED :
+ {
+ UpdateAllItems_Impl();
+ break;
+ }
+
+ case VCLEVENT_TOOLBOX_ITEMWINDOWCHANGED:
+ {
+ sal_Int32 nPos = (sal_Int32)(sal_IntPtr)rVclWindowEvent.GetData();
+ ToolBoxItemsMap::iterator aAccessiblePos( m_aAccessibleChildren.find( nPos ) );
+ if ( m_aAccessibleChildren.end() != aAccessiblePos )
+ {
+ implReleaseToolboxItem( aAccessiblePos, false, true );
+ m_aAccessibleChildren.erase (aAccessiblePos);
+ }
+
+ Any aNewValue;
+ aNewValue <<= getAccessibleChild(nPos);
+ NotifyAccessibleEvent( AccessibleEventId::CHILD, Any(), aNewValue );
+ break;
+ }
+ case VCLEVENT_TOOLBOX_ITEMTEXTCHANGED :
+ UpdateItemName_Impl( (sal_Int32)(sal_IntPtr)rVclWindowEvent.GetData() );
+ break;
+
+ case VCLEVENT_TOOLBOX_ITEMENABLED :
+ case VCLEVENT_TOOLBOX_ITEMDISABLED :
+ {
+ UpdateItemEnabled_Impl( (sal_Int32)(sal_IntPtr)rVclWindowEvent.GetData() );
+ break;
+ }
+
+ case VCLEVENT_DROPDOWN_OPEN:
+ case VCLEVENT_DROPDOWN_CLOSE:
+ {
+ UpdateCustomPopupItemp_Impl( static_cast< Window* >( rVclWindowEvent.GetData() ), rVclWindowEvent.GetId() == VCLEVENT_DROPDOWN_OPEN );
+ break;
+ }
+
+ case VCLEVENT_OBJECT_DYING :
+ {
+ // if this toolbox is a subtoolbox, we have to relese it from its parent
+ ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
+ if ( pToolBox && pToolBox->GetParent() &&
+ pToolBox->GetParent()->GetType() == WINDOW_TOOLBOX )
+ {
+ VCLXAccessibleToolBox* pParent = static_cast< VCLXAccessibleToolBox* >(
+ pToolBox->GetParent()->GetAccessible()->getAccessibleContext().get() );
+ if ( pParent )
+ pParent->ReleaseSubToolBox( pToolBox );
+ }
+
+ // dispose all items
+ for ( ToolBoxItemsMap::iterator aIter = m_aAccessibleChildren.begin();
+ aIter != m_aAccessibleChildren.end(); ++aIter )
+ {
+ implReleaseToolboxItem( aIter, false, true );
+ }
+ m_aAccessibleChildren.clear();
+
+ //!!! no break to call base class
+ }
+
+ default:
+ VCLXAccessibleComponent::ProcessWindowEvent( rVclWindowEvent );
+ }
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleToolBox::ProcessWindowChildEvent( const VclWindowEvent& rVclWindowEvent )
+{
+ switch ( rVclWindowEvent.GetId() )
+ {
+ case VCLEVENT_WINDOW_SHOW: // send create on show for direct accessible children
+ {
+ Reference< XAccessible > xReturn = GetItemWindowAccessible(rVclWindowEvent);
+ if ( xReturn.is() )
+ NotifyAccessibleEvent( AccessibleEventId::CHILD, Any(), makeAny(xReturn) );
+ else
+ HandleSubToolBarEvent( rVclWindowEvent, true );
+ }
+ break;
+
+ default:
+ VCLXAccessibleComponent::ProcessWindowChildEvent( rVclWindowEvent );
+
+ }
+}
+// -----------------------------------------------------------------------------
+// XInterface
+// -----------------------------------------------------------------------------
+IMPLEMENT_FORWARD_XINTERFACE2( VCLXAccessibleToolBox, VCLXAccessibleComponent, VCLXAccessibleToolBox_BASE )
+// -----------------------------------------------------------------------------
+// XTypeProvider
+// -----------------------------------------------------------------------------
+IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleToolBox, VCLXAccessibleComponent, VCLXAccessibleToolBox_BASE )
+// -----------------------------------------------------------------------------
+// XComponent
+// -----------------------------------------------------------------------------
+void SAL_CALL VCLXAccessibleToolBox::disposing()
+{
+ VCLXAccessibleComponent::disposing();
+
+ // release the items
+ for ( ToolBoxItemsMap::iterator aIter = m_aAccessibleChildren.begin();
+ aIter != m_aAccessibleChildren.end(); ++aIter )
+ {
+ implReleaseToolboxItem( aIter, false, true );
+ }
+ m_aAccessibleChildren.clear();
+}
+// -----------------------------------------------------------------------------
+// XServiceInfo
+// -----------------------------------------------------------------------------
+::rtl::OUString VCLXAccessibleToolBox::getImplementationName() throw (RuntimeException)
+{
+ return ::rtl::OUString::createFromAscii( "com.sun.star.comp.toolkit.AccessibleToolBox" );
+}
+// -----------------------------------------------------------------------------
+Sequence< ::rtl::OUString > VCLXAccessibleToolBox::getSupportedServiceNames() throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames = VCLXAccessibleComponent::getSupportedServiceNames();
+ sal_Int32 nLength = aNames.getLength();
+ aNames.realloc( nLength + 1 );
+ aNames[nLength] = ::rtl::OUString::createFromAscii( "com.sun.star.accessibility.AccessibleToolBox" );
+ return aNames;
+}
+// -----------------------------------------------------------------------------
+// XAccessibleContext
+// -----------------------------------------------------------------------------
+sal_Int32 SAL_CALL VCLXAccessibleToolBox::getAccessibleChildCount( ) throw (RuntimeException)
+{
+ comphelper::OExternalLockGuard aGuard( this );
+
+ sal_Int32 nCount = 0;
+ ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
+ if ( pToolBox )
+ nCount = pToolBox->GetItemCount();
+
+ return nCount;
+}
+// -----------------------------------------------------------------------------
+Reference< XAccessible > SAL_CALL VCLXAccessibleToolBox::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ if ( i < 0 || i >= getAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+
+ comphelper::OExternalLockGuard aGuard( this );
+
+ ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
+ if ( pToolBox )
+ {
+ Reference< XAccessible > xChild;
+ // search for the child
+ ToolBoxItemsMap::iterator aIter = m_aAccessibleChildren.find(i);
+ if ( m_aAccessibleChildren.end() == aIter )
+ {
+ USHORT nItemId = pToolBox->GetItemId( (USHORT)i );
+ USHORT nHighlightItemId = pToolBox->GetHighlightItemId();
+ Window* pItemWindow = pToolBox->GetItemWindow( nItemId );
+ // not found -> create a new child
+ VCLXAccessibleToolBoxItem* pChild = new VCLXAccessibleToolBoxItem( pToolBox, i );
+ Reference< XAccessible> xParent = pChild;
+ if ( pItemWindow )
+ {
+ xChild = new OToolBoxWindowItem(0,::comphelper::getProcessServiceFactory(),pItemWindow->GetAccessible(),xParent);
+ pItemWindow->SetAccessible(xChild);
+ pChild->SetChild( xChild );
+ }
+ xChild = pChild;
+ if ( nHighlightItemId > 0 && nItemId == nHighlightItemId )
+ pChild->SetFocus( sal_True );
+ if ( pToolBox->IsItemChecked( nItemId ) )
+ pChild->SetChecked( sal_True );
+ if ( pToolBox->GetItemState( nItemId ) == STATE_DONTKNOW )
+ pChild->SetIndeterminate( true );
+ m_aAccessibleChildren.insert( ToolBoxItemsMap::value_type( i, xChild ) );
+ }
+ else
+ {
+ // found it
+ xChild = aIter->second;
+ }
+ return xChild;
+ }
+
+ return NULL;
+}
+// -----------------------------------------------------------------------------
+Reference< XAccessible > SAL_CALL VCLXAccessibleToolBox::getAccessibleAtPoint( const awt::Point& _rPoint ) throw (RuntimeException)
+{
+ comphelper::OExternalLockGuard aGuard( this );
+
+ Reference< XAccessible > xAccessible;
+ ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
+ if ( pToolBox )
+ {
+ USHORT nItemPos = pToolBox->GetItemPos( VCLPoint( _rPoint ) );
+ if ( nItemPos != TOOLBOX_ITEM_NOTFOUND )
+ xAccessible = getAccessibleChild( nItemPos );
+ }
+
+ return xAccessible;
+}
+// -----------------------------------------------------------------------------
+Reference< XAccessible > VCLXAccessibleToolBox::GetItemWindowAccessible( const VclWindowEvent& rVclWindowEvent )
+{
+ Reference< XAccessible > xReturn;
+ Window* pChildWindow = (Window *) rVclWindowEvent.GetData();
+ ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
+ if ( pChildWindow && pToolBox )
+ {
+ USHORT nCount = pToolBox->GetItemCount();
+ for (USHORT i = 0 ; i < nCount && !xReturn.is() ; ++i)
+ {
+ USHORT nItemId = pToolBox->GetItemId( i );
+ Window* pItemWindow = pToolBox->GetItemWindow( nItemId );
+ if ( pItemWindow == pChildWindow )
+ xReturn = getAccessibleChild(i);
+ }
+ }
+ return xReturn;
+}
+// -----------------------------------------------------------------------------
+Reference< XAccessible > VCLXAccessibleToolBox::GetChildAccessible( const VclWindowEvent& rVclWindowEvent )
+{
+ Reference< XAccessible > xReturn = GetItemWindowAccessible(rVclWindowEvent);
+
+ if ( !xReturn.is() )
+ xReturn = VCLXAccessibleComponent::GetChildAccessible(rVclWindowEvent);
+ return xReturn;
+}
+// -----------------------------------------------------------------------------
+// XAccessibleSelection
+// -----------------------------------------------------------------------------
+void VCLXAccessibleToolBox::selectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+ if ( nChildIndex < 0 || nChildIndex >= getAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+ ToolBox * pToolBox = static_cast < ToolBox * > ( GetWindow() );
+ USHORT nPos = static_cast < USHORT > (nChildIndex);
+ pToolBox->ChangeHighlight( nPos );
+}
+// -----------------------------------------------------------------------------
+sal_Bool VCLXAccessibleToolBox::isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+ if ( nChildIndex < 0 || nChildIndex >= getAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+ ToolBox * pToolBox = static_cast < ToolBox * > ( GetWindow() );
+ USHORT nPos = static_cast < USHORT > (nChildIndex);
+ if ( pToolBox != NULL && pToolBox->GetHighlightItemId() == pToolBox->GetItemId( nPos ) )
+ return sal_True;
+ else
+ return sal_False;
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleToolBox::clearAccessibleSelection( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+ ToolBox * pToolBox = static_cast < ToolBox * > ( GetWindow() );
+ pToolBox -> LoseFocus();
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleToolBox::selectAllAccessibleChildren( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+ // intentionally empty. makes no sense for a toolbox
+}
+// -----------------------------------------------------------------------------
+sal_Int32 VCLXAccessibleToolBox::getSelectedAccessibleChildCount( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+ sal_Int32 nRet = 0;
+ for ( sal_Int32 i = 0, nCount = getAccessibleChildCount(); i < nCount; i++ )
+ {
+ if ( isAccessibleChildSelected( i ) )
+ {
+ nRet = 1;
+ break; // a toolbox can only have (n)one selected child
+ }
+ }
+ return nRet;
+}
+// -----------------------------------------------------------------------------
+Reference< XAccessible > VCLXAccessibleToolBox::getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+ if ( nSelectedChildIndex < 0 || nSelectedChildIndex >= getSelectedAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+ Reference< XAccessible > xChild;
+ for ( sal_Int32 i = 0, j = 0, nCount = getAccessibleChildCount(); i < nCount; i++ )
+ {
+ if ( isAccessibleChildSelected( i ) && ( j++ == nSelectedChildIndex ) )
+ {
+ xChild = getAccessibleChild( i );
+ break;
+ }
+ }
+ return xChild;
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleToolBox::deselectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+ if ( nChildIndex < 0 || nChildIndex >= getAccessibleChildCount() )
+ throw IndexOutOfBoundsException();
+ clearAccessibleSelection(); // a toolbox can only have (n)one selected child
+}
+// -----------------------------------------------------------------------------
diff --git a/accessibility/source/standard/vclxaccessibletoolboxitem.cxx b/accessibility/source/standard/vclxaccessibletoolboxitem.cxx
new file mode 100644
index 000000000000..7580d1a3ae2c
--- /dev/null
+++ b/accessibility/source/standard/vclxaccessibletoolboxitem.cxx
@@ -0,0 +1,718 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_accessibility.hxx"
+#include <accessibility/standard/vclxaccessibletoolboxitem.hxx>
+#include <toolkit/helper/convert.hxx>
+#include <accessibility/helper/accresmgr.hxx>
+#include <accessibility/helper/accessiblestrings.hrc>
+#include <com/sun/star/awt/Point.hpp>
+#include <com/sun/star/awt/Rectangle.hpp>
+#include <com/sun/star/awt/Size.hpp>
+
+#include <com/sun/star/accessibility/AccessibleEventId.hpp>
+#include <com/sun/star/accessibility/AccessibleRole.hpp>
+#include <com/sun/star/accessibility/AccessibleStateType.hpp>
+#include <com/sun/star/datatransfer/clipboard/XClipboard.hpp>
+#include <com/sun/star/datatransfer/clipboard/XFlushableClipboard.hpp>
+#include <tools/debug.hxx>
+#include <vcl/svapp.hxx>
+#include <vcl/toolbox.hxx>
+#include <vcl/unohelp2.hxx>
+#include <vcl/help.hxx>
+#include <toolkit/awt/vclxwindow.hxx>
+#include <toolkit/helper/externallock.hxx>
+#include <unotools/accessiblestatesethelper.hxx>
+#include <unotools/accessiblerelationsethelper.hxx>
+#include <cppuhelper/typeprovider.hxx>
+#include <comphelper/sequence.hxx>
+
+#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
+
+// class VCLXAccessibleToolBoxItem ------------------------------------------
+
+using namespace ::com::sun::star::accessibility;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::beans;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star;
+using namespace ::comphelper;
+
+DBG_NAME(VCLXAccessibleToolBoxItem)
+
+// -----------------------------------------------------------------------------
+// Ctor() and Dtor()
+// -----------------------------------------------------------------------------
+VCLXAccessibleToolBoxItem::VCLXAccessibleToolBoxItem( ToolBox* _pToolBox, sal_Int32 _nPos ) :
+
+ AccessibleTextHelper_BASE( new VCLExternalSolarLock() ),
+
+ m_pToolBox ( _pToolBox ),
+ m_nIndexInParent( _nPos ),
+ m_nRole ( AccessibleRole::PUSH_BUTTON ),
+ m_nItemId ( 0 ),
+ m_bHasFocus ( sal_False ),
+ m_bIsChecked ( sal_False ),
+ m_bIndeterminate( false )
+
+{
+ DBG_CTOR( VCLXAccessibleToolBoxItem, NULL );
+
+ m_pExternalLock = static_cast< VCLExternalSolarLock* >( getExternalLock( ) );
+
+ DBG_ASSERT( m_pToolBox, "invalid toolbox" );
+ m_nItemId = m_pToolBox->GetItemId( (USHORT)m_nIndexInParent );
+ m_sOldName = GetText( true );
+ m_bIsChecked = m_pToolBox->IsItemChecked( m_nItemId );
+ m_bIndeterminate = ( m_pToolBox->GetItemState( m_nItemId ) == STATE_DONTKNOW );
+ ToolBoxItemType eType = m_pToolBox->GetItemType( (USHORT)m_nIndexInParent );
+ switch ( eType )
+ {
+ case TOOLBOXITEM_BUTTON :
+ {
+ ToolBoxItemBits nBits = m_pToolBox->GetItemBits( m_nItemId );
+ if (( nBits & TIB_DROPDOWN ) == TIB_DROPDOWN)
+ m_nRole = AccessibleRole::BUTTON_DROPDOWN;
+ else if (( ( nBits & TIB_CHECKABLE ) == TIB_CHECKABLE ) ||
+ ( ( nBits & TIB_AUTOCHECK ) == TIB_AUTOCHECK ) )
+ m_nRole = AccessibleRole::TOGGLE_BUTTON;
+ else if ( m_pToolBox->GetItemWindow( m_nItemId ) )
+ m_nRole = AccessibleRole::PANEL;
+ break;
+ }
+
+ case TOOLBOXITEM_SPACE :
+ m_nRole = AccessibleRole::FILLER;
+ break;
+
+ case TOOLBOXITEM_SEPARATOR :
+ case TOOLBOXITEM_BREAK :
+ m_nRole = AccessibleRole::SEPARATOR;
+ break;
+
+ default:
+ {
+ DBG_ERRORFILE( "unsupported toolbox itemtype" );
+ }
+ }
+}
+// -----------------------------------------------------------------------------
+VCLXAccessibleToolBoxItem::~VCLXAccessibleToolBoxItem()
+{
+ DBG_DTOR( VCLXAccessibleToolBoxItem, NULL );
+
+ delete m_pExternalLock;
+ m_pExternalLock = NULL;
+}
+// -----------------------------------------------------------------------------
+::rtl::OUString VCLXAccessibleToolBoxItem::GetText( bool _bAsName )
+{
+ ::rtl::OUString sRet;
+ // no text for separators and spaces
+ if ( m_pToolBox && m_nItemId > 0 && ( _bAsName || m_pToolBox->GetButtonType() != BUTTON_SYMBOL ) )
+ {
+ sRet = m_pToolBox->GetItemText( m_nItemId );
+//OJ #108243# we only read the name of the toolboxitem
+//
+// Window* pItemWindow = m_pToolBox->GetItemWindow( m_nItemId );
+// if ( pItemWindow && pItemWindow->GetAccessible().is() &&
+// pItemWindow->GetAccessible()->getAccessibleContext().is() )
+// {
+// ::rtl::OUString sWinText = pItemWindow->GetAccessible()->getAccessibleContext()->getAccessibleName();
+// if ( ( sRet.getLength() > 0 ) && ( sWinText.getLength() > 0 ) )
+// sRet += String( RTL_CONSTASCII_USTRINGPARAM( " " ) );
+// sRet += sWinText;
+// }
+ }
+ return sRet;
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleToolBoxItem::SetFocus( sal_Bool _bFocus )
+{
+ if ( m_bHasFocus != _bFocus )
+ {
+ Any aOldValue;
+ Any aNewValue;
+ if ( m_bHasFocus )
+ aOldValue <<= AccessibleStateType::FOCUSED;
+ else
+ aNewValue <<= AccessibleStateType::FOCUSED;
+ m_bHasFocus = _bFocus;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ }
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleToolBoxItem::SetChecked( sal_Bool _bCheck )
+{
+ if ( m_bIsChecked != _bCheck )
+ {
+ Any aOldValue;
+ Any aNewValue;
+ if ( m_bIsChecked )
+ aOldValue <<= AccessibleStateType::CHECKED;
+ else
+ aNewValue <<= AccessibleStateType::CHECKED;
+ m_bIsChecked = _bCheck;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ }
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleToolBoxItem::SetIndeterminate( bool _bIndeterminate )
+{
+ if ( m_bIndeterminate != _bIndeterminate )
+ {
+ Any aOldValue, aNewValue;
+ if ( m_bIndeterminate )
+ aOldValue <<= AccessibleStateType::INDETERMINATE;
+ else
+ aNewValue <<= AccessibleStateType::INDETERMINATE;
+ m_bIndeterminate = _bIndeterminate;
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
+ }
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleToolBoxItem::NameChanged()
+{
+ ::rtl::OUString sNewName = implGetText();
+ if ( sNewName != m_sOldName )
+ {
+ Any aOldValue, aNewValue;
+ aOldValue <<= m_sOldName;
+ // save new name as old name for next change
+ m_sOldName = sNewName;
+ aNewValue <<= m_sOldName;
+ NotifyAccessibleEvent( AccessibleEventId::NAME_CHANGED, aOldValue, aNewValue );
+ }
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleToolBoxItem::SetChild( const Reference< XAccessible >& _xChild )
+{
+ m_xChild = _xChild;
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleToolBoxItem::NotifyChildEvent( const Reference< XAccessible >& _xChild, bool _bShow )
+{
+ Any aOld = _bShow ? Any() : makeAny( _xChild );
+ Any aNew = _bShow ? makeAny( _xChild ) : Any();
+ NotifyAccessibleEvent( AccessibleEventId::CHILD, aOld, aNew );
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleToolBoxItem::ToggleEnableState()
+{
+ Any aOldValue[2], aNewValue[2];
+ if ( m_pToolBox->IsItemEnabled( m_nItemId ) )
+ {
+ aNewValue[0] <<= AccessibleStateType::SENSITIVE;
+ aNewValue[1] <<= AccessibleStateType::ENABLED;
+ }
+ else
+ {
+ aOldValue[0] <<= AccessibleStateType::ENABLED;
+ aOldValue[1] <<= AccessibleStateType::SENSITIVE;
+ }
+
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue[0], aNewValue[0] );
+ NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue[1], aNewValue[1] );
+}
+// -----------------------------------------------------------------------------
+awt::Rectangle SAL_CALL VCLXAccessibleToolBoxItem::implGetBounds( ) throw (RuntimeException)
+{
+ awt::Rectangle aRect;
+ if ( m_pToolBox )
+ aRect = AWTRectangle( m_pToolBox->GetItemPosRect( (USHORT)m_nIndexInParent ) );
+
+ return aRect;
+}
+// -----------------------------------------------------------------------------
+::rtl::OUString VCLXAccessibleToolBoxItem::implGetText()
+{
+ return GetText (true);
+}
+// -----------------------------------------------------------------------------
+Locale VCLXAccessibleToolBoxItem::implGetLocale()
+{
+ return Application::GetSettings().GetUILocale();
+}
+// -----------------------------------------------------------------------------
+void VCLXAccessibleToolBoxItem::implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex )
+{
+ nStartIndex = 0;
+ nEndIndex = 0;
+}
+// -----------------------------------------------------------------------------
+// XInterface
+// -----------------------------------------------------------------------------
+IMPLEMENT_FORWARD_REFCOUNT( VCLXAccessibleToolBoxItem, AccessibleTextHelper_BASE )
+Any SAL_CALL VCLXAccessibleToolBoxItem::queryInterface( const Type& _rType ) throw (RuntimeException)
+{
+ // --> PB 2004-09-03 #i33611# - toolbox buttons without text don't support XAccessibleText
+ if ( _rType == ::getCppuType( ( const Reference< XAccessibleText >* ) 0 )
+ && ( !m_pToolBox || m_pToolBox->GetButtonType() == BUTTON_SYMBOL ) )
+ return Any();
+ // <--
+
+ ::com::sun::star::uno::Any aReturn = AccessibleTextHelper_BASE::queryInterface( _rType );
+ if ( !aReturn.hasValue() )
+ aReturn = VCLXAccessibleToolBoxItem_BASE::queryInterface( _rType );
+ return aReturn;
+}
+// -----------------------------------------------------------------------------
+// XTypeProvider
+// -----------------------------------------------------------------------------
+IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleToolBoxItem, AccessibleTextHelper_BASE, VCLXAccessibleToolBoxItem_BASE )
+// -----------------------------------------------------------------------------
+// XComponent
+// -----------------------------------------------------------------------------
+void SAL_CALL VCLXAccessibleToolBoxItem::disposing()
+{
+ AccessibleTextHelper_BASE::disposing();
+ m_pToolBox = NULL;
+}
+// -----------------------------------------------------------------------------
+// XServiceInfo
+// -----------------------------------------------------------------------------
+::rtl::OUString VCLXAccessibleToolBoxItem::getImplementationName() throw (RuntimeException)
+{
+ return ::rtl::OUString::createFromAscii( "com.sun.star.comp.toolkit.AccessibleToolBoxItem" );
+}
+// -----------------------------------------------------------------------------
+sal_Bool VCLXAccessibleToolBoxItem::supportsService( const ::rtl::OUString& rServiceName ) throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames( getSupportedServiceNames() );
+ const ::rtl::OUString* pNames = aNames.getConstArray();
+ const ::rtl::OUString* pEnd = pNames + aNames.getLength();
+ for ( ; pNames != pEnd && !pNames->equals( rServiceName ); ++pNames )
+ ;
+
+ return pNames != pEnd;
+}
+// -----------------------------------------------------------------------------
+Sequence< ::rtl::OUString > VCLXAccessibleToolBoxItem::getSupportedServiceNames() throw (RuntimeException)
+{
+ Sequence< ::rtl::OUString > aNames(4);
+ aNames[0] = ::rtl::OUString::createFromAscii( "com.sun.star.accessibility.AccessibleContext" );
+ aNames[1] = ::rtl::OUString::createFromAscii( "com.sun.star.accessibility.AccessibleComponent" );
+ aNames[2] = ::rtl::OUString::createFromAscii( "com.sun.star.accessibility.AccessibleExtendedComponent" );
+ aNames[3] = ::rtl::OUString::createFromAscii( "com.sun.star.accessibility.AccessibleToolBoxItem" );
+ return aNames;
+}
+// -----------------------------------------------------------------------------
+// XAccessible
+// -----------------------------------------------------------------------------
+Reference< XAccessibleContext > SAL_CALL VCLXAccessibleToolBoxItem::getAccessibleContext( ) throw (RuntimeException)
+{
+ return this;
+}
+// -----------------------------------------------------------------------------
+// XAccessibleContext
+// -----------------------------------------------------------------------------
+sal_Int32 SAL_CALL VCLXAccessibleToolBoxItem::getAccessibleChildCount( ) throw (RuntimeException)
+{
+ OContextEntryGuard aGuard( this );
+
+ return m_xChild.is() ? 1 : 0;
+}
+// -----------------------------------------------------------------------------
+Reference< XAccessible > SAL_CALL VCLXAccessibleToolBoxItem::getAccessibleChild( sal_Int32 i ) throw (RuntimeException, com::sun::star::lang::IndexOutOfBoundsException)
+{
+ OContextEntryGuard aGuard( this );
+
+ // no child -> so index is out of bounds
+ if ( !m_xChild.is() || i != 0 )
+ throw IndexOutOfBoundsException();
+
+ return m_xChild;
+}
+// -----------------------------------------------------------------------------
+Reference< XAccessible > SAL_CALL VCLXAccessibleToolBoxItem::getAccessibleParent( ) throw (RuntimeException)
+{
+ OContextEntryGuard aGuard( this );
+
+ return m_pToolBox->GetAccessible();
+}
+// -----------------------------------------------------------------------------
+sal_Int32 SAL_CALL VCLXAccessibleToolBoxItem::getAccessibleIndexInParent( ) throw (RuntimeException)
+{
+ OContextEntryGuard aGuard( this );
+
+ return m_nIndexInParent;
+}
+// -----------------------------------------------------------------------------
+sal_Int16 SAL_CALL VCLXAccessibleToolBoxItem::getAccessibleRole( ) throw (RuntimeException)
+{
+ OContextEntryGuard aGuard( this );
+
+ return m_nRole;
+}
+// -----------------------------------------------------------------------------
+::rtl::OUString SAL_CALL VCLXAccessibleToolBoxItem::getAccessibleDescription( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ ::rtl::OUString sDescription;
+ if ( m_pToolBox )
+ sDescription = m_pToolBox->GetHelpText( m_nItemId );
+
+ return sDescription;
+}
+// -----------------------------------------------------------------------------
+::rtl::OUString SAL_CALL VCLXAccessibleToolBoxItem::getAccessibleName( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ // entry text == accessible name
+ return GetText( true );
+}
+// -----------------------------------------------------------------------------
+Reference< XAccessibleRelationSet > SAL_CALL VCLXAccessibleToolBoxItem::getAccessibleRelationSet( ) throw (RuntimeException)
+{
+ OContextEntryGuard aGuard( this );
+
+ utl::AccessibleRelationSetHelper* pRelationSetHelper = new utl::AccessibleRelationSetHelper;
+ Reference< XAccessibleRelationSet > xSet = pRelationSetHelper;
+ return xSet;
+}
+// -----------------------------------------------------------------------------
+Reference< XAccessibleStateSet > SAL_CALL VCLXAccessibleToolBoxItem::getAccessibleStateSet( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ utl::AccessibleStateSetHelper* pStateSetHelper = new utl::AccessibleStateSetHelper;
+ Reference< XAccessibleStateSet > xStateSet = pStateSetHelper;
+
+ if ( m_pToolBox && !rBHelper.bDisposed && !rBHelper.bInDispose )
+ {
+ pStateSetHelper->AddState( AccessibleStateType::FOCUSABLE );
+ if ( m_bIsChecked )
+ pStateSetHelper->AddState( AccessibleStateType::CHECKED );
+ if ( m_bIndeterminate )
+ pStateSetHelper->AddState( AccessibleStateType::INDETERMINATE );
+ if ( m_pToolBox->IsItemEnabled( m_nItemId ) )
+ {
+ pStateSetHelper->AddState( AccessibleStateType::ENABLED );
+ pStateSetHelper->AddState( AccessibleStateType::SENSITIVE );
+ }
+ if ( m_pToolBox->IsItemVisible( m_nItemId ) )
+ pStateSetHelper->AddState( AccessibleStateType::VISIBLE );
+ if ( m_pToolBox->IsItemReallyVisible( m_nItemId ) )
+ pStateSetHelper->AddState( AccessibleStateType::SHOWING );
+ if ( m_bHasFocus )
+ pStateSetHelper->AddState( AccessibleStateType::FOCUSED );
+ }
+ else
+ pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
+
+ return xStateSet;
+}
+// -----------------------------------------------------------------------------
+// XAccessibleText
+// -----------------------------------------------------------------------------
+sal_Int32 SAL_CALL VCLXAccessibleToolBoxItem::getCaretPosition() throw (RuntimeException)
+{
+ return -1;
+}
+// -----------------------------------------------------------------------------
+sal_Bool SAL_CALL VCLXAccessibleToolBoxItem::setCaretPosition( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( !implIsValidRange( nIndex, nIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ return sal_False;
+}
+// -----------------------------------------------------------------------------
+Sequence< PropertyValue > SAL_CALL VCLXAccessibleToolBoxItem::getCharacterAttributes( sal_Int32 nIndex, const Sequence< ::rtl::OUString >& ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ ::rtl::OUString sText( implGetText() );
+
+ if ( !implIsValidIndex( nIndex, sText.getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ return Sequence< PropertyValue >();
+}
+// -----------------------------------------------------------------------------
+awt::Rectangle SAL_CALL VCLXAccessibleToolBoxItem::getCharacterBounds( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ ::rtl::OUString sText( implGetText() );
+
+ if ( !implIsValidIndex( nIndex, sText.getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ awt::Rectangle aBounds( 0, 0, 0, 0 );
+ if ( m_pToolBox && m_pToolBox->GetButtonType() != BUTTON_SYMBOL ) // symbol buttons have no character bounds
+ {
+ Rectangle aCharRect = m_pToolBox->GetCharacterBounds( m_nItemId, nIndex );
+ Rectangle aItemRect = m_pToolBox->GetItemRect( m_nItemId );
+ aCharRect.Move( -aItemRect.Left(), -aItemRect.Top() );
+ aBounds = AWTRectangle( aCharRect );
+ }
+
+ return aBounds;
+}
+// -----------------------------------------------------------------------------
+sal_Int32 SAL_CALL VCLXAccessibleToolBoxItem::getIndexAtPoint( const awt::Point& aPoint ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nIndex = -1;
+ if ( m_pToolBox && m_pToolBox->GetButtonType() != BUTTON_SYMBOL ) // symbol buttons have no character bounds
+ {
+ sal_uInt16 nItemId = 0;
+ Rectangle aItemRect = m_pToolBox->GetItemRect( m_nItemId );
+ Point aPnt( VCLPoint( aPoint ) );
+ aPnt += aItemRect.TopLeft();
+ sal_Int32 nIdx = m_pToolBox->GetIndexForPoint( aPnt, nItemId );
+ if ( nIdx != -1 && nItemId == m_nItemId )
+ nIndex = nIdx;
+ }
+
+ return nIndex;
+}
+// -----------------------------------------------------------------------------
+sal_Bool SAL_CALL VCLXAccessibleToolBoxItem::setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( !implIsValidRange( nStartIndex, nEndIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ return sal_False;
+}
+// -----------------------------------------------------------------------------
+sal_Bool SAL_CALL VCLXAccessibleToolBoxItem::copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( !implIsValidRange( nStartIndex, nEndIndex, implGetText().getLength() ) )
+ throw IndexOutOfBoundsException();
+
+ sal_Bool bReturn = sal_False;
+
+ if ( m_pToolBox )
+ {
+ Reference< datatransfer::clipboard::XClipboard > xClipboard = m_pToolBox->GetClipboard();
+ if ( xClipboard.is() )
+ {
+ ::rtl::OUString sText( getTextRange( nStartIndex, nEndIndex ) );
+
+ ::vcl::unohelper::TextDataObject* pDataObj = new ::vcl::unohelper::TextDataObject( sText );
+ const sal_uInt32 nRef = Application::ReleaseSolarMutex();
+ xClipboard->setContents( pDataObj, NULL );
+
+ Reference< datatransfer::clipboard::XFlushableClipboard > xFlushableClipboard( xClipboard, uno::UNO_QUERY );
+ if( xFlushableClipboard.is() )
+ xFlushableClipboard->flushClipboard();
+
+ Application::AcquireSolarMutex( nRef );
+
+ bReturn = sal_True;
+ }
+ }
+
+ return bReturn;
+}
+// -----------------------------------------------------------------------------
+// XAccessibleComponent
+// -----------------------------------------------------------------------------
+Reference< XAccessible > SAL_CALL VCLXAccessibleToolBoxItem::getAccessibleAtPoint( const awt::Point& ) throw (RuntimeException)
+{
+ return Reference< XAccessible >();
+}
+// -----------------------------------------------------------------------------
+void SAL_CALL VCLXAccessibleToolBoxItem::grabFocus( ) throw (RuntimeException)
+{
+ Reference< XAccessible > xParent(getAccessibleParent());
+
+ if( xParent.is() )
+ {
+ Reference< XAccessibleSelection > rxAccessibleSelection(xParent->getAccessibleContext(), UNO_QUERY);
+
+ if ( rxAccessibleSelection.is() )
+ {
+ rxAccessibleSelection -> selectAccessibleChild ( getAccessibleIndexInParent() );
+ }
+ }
+}
+// -----------------------------------------------------------------------------
+sal_Int32 SAL_CALL VCLXAccessibleToolBoxItem::getForeground( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nColor = 0;
+ if ( m_pToolBox )
+ nColor = m_pToolBox->GetControlForeground().GetColor();
+
+ return nColor;
+}
+// -----------------------------------------------------------------------------
+sal_Int32 SAL_CALL VCLXAccessibleToolBoxItem::getBackground( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Int32 nColor = 0;
+ if ( m_pToolBox )
+ nColor = m_pToolBox->GetControlBackground().GetColor();
+
+ return nColor;
+}
+// -----------------------------------------------------------------------------
+// XAccessibleExtendedComponent
+// -----------------------------------------------------------------------------
+Reference< awt::XFont > SAL_CALL VCLXAccessibleToolBoxItem::getFont( ) throw (RuntimeException)
+{
+ return uno::Reference< awt::XFont >();
+}
+// -----------------------------------------------------------------------------
+awt::FontDescriptor SAL_CALL VCLXAccessibleToolBoxItem::getFontMetrics( const Reference< awt::XFont >& xFont ) throw (RuntimeException)
+{
+ return xFont->getFontDescriptor();
+}
+// -----------------------------------------------------------------------------
+::rtl::OUString SAL_CALL VCLXAccessibleToolBoxItem::getTitledBorderText( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ ::rtl::OUString sRet;
+ if ( m_pToolBox )
+ sRet = m_pToolBox->GetItemText( m_nItemId );
+
+ return sRet;
+}
+// -----------------------------------------------------------------------------
+::rtl::OUString SAL_CALL VCLXAccessibleToolBoxItem::getToolTipText( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ ::rtl::OUString sRet;
+ if ( m_pToolBox )
+ {
+ if ( Help::IsExtHelpEnabled() )
+ sRet = m_pToolBox->GetHelpText( m_nItemId );
+ else
+ sRet = m_pToolBox->GetQuickHelpText( m_nItemId );
+ if ( !sRet.getLength() )
+ // no help text set, so use item text
+ sRet = m_pToolBox->GetItemText( m_nItemId );
+ }
+ return sRet;
+}
+// -----------------------------------------------------------------------------
+// XAccessibleAction
+// -----------------------------------------------------------------------------
+sal_Int32 VCLXAccessibleToolBoxItem::getAccessibleActionCount( ) throw (RuntimeException)
+{
+ // only one action -> "Click"
+ return 1;
+}
+// -----------------------------------------------------------------------------
+sal_Bool VCLXAccessibleToolBoxItem::doAccessibleAction ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
+ throw IndexOutOfBoundsException();
+
+ if ( m_pToolBox )
+ m_pToolBox->TriggerItem( m_nItemId );
+
+ return sal_True;
+}
+// -----------------------------------------------------------------------------
+::rtl::OUString VCLXAccessibleToolBoxItem::getAccessibleActionDescription ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
+ throw IndexOutOfBoundsException();
+
+ return ::rtl::OUString( TK_RES_STRING( RID_STR_ACC_ACTION_CLICK ) );
+}
+// -----------------------------------------------------------------------------
+Reference< XAccessibleKeyBinding > VCLXAccessibleToolBoxItem::getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
+{
+ OContextEntryGuard aGuard( this );
+
+ if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
+ throw IndexOutOfBoundsException();
+
+ return Reference< XAccessibleKeyBinding >();
+}
+// -----------------------------------------------------------------------------
+// XAccessibleValue
+// -----------------------------------------------------------------------------
+Any VCLXAccessibleToolBoxItem::getCurrentValue( ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ Any aValue;
+ if ( m_pToolBox )
+ aValue <<= (sal_Int32)m_pToolBox->IsItemChecked( m_nItemId );
+
+ return aValue;
+}
+// -----------------------------------------------------------------------------
+sal_Bool VCLXAccessibleToolBoxItem::setCurrentValue( const Any& aNumber ) throw (RuntimeException)
+{
+ OExternalLockGuard aGuard( this );
+
+ sal_Bool bReturn = sal_False;
+
+ if ( m_pToolBox )
+ {
+ sal_Int32 nValue = 0;
+ OSL_VERIFY( aNumber >>= nValue );
+
+ if ( nValue < 0 )
+ nValue = 0;
+ else if ( nValue > 1 )
+ nValue = 1;
+
+ m_pToolBox->CheckItem( m_nItemId, (BOOL) nValue );
+ bReturn = sal_True;
+ }
+
+ return bReturn;
+}
+// -----------------------------------------------------------------------------
+Any VCLXAccessibleToolBoxItem::getMaximumValue( ) throw (RuntimeException)
+{
+ return makeAny((sal_Int32)1);
+}
+// -----------------------------------------------------------------------------
+Any VCLXAccessibleToolBoxItem::getMinimumValue( ) throw (RuntimeException)
+{
+ return makeAny((sal_Int32)0);
+}
+// -----------------------------------------------------------------------------
+
+
diff --git a/accessibility/util/acc.map b/accessibility/util/acc.map
new file mode 100644
index 000000000000..b9e53f414df5
--- /dev/null
+++ b/accessibility/util/acc.map
@@ -0,0 +1,7 @@
+UDK_3_0_0 {
+ global:
+ getStandardAccessibleFactory;
+ getSvtAccessibilityComponentFactory;
+ local:
+ *;
+};
diff --git a/accessibility/util/makefile.mk b/accessibility/util/makefile.mk
new file mode 100644
index 000000000000..42a6061fa2c9
--- /dev/null
+++ b/accessibility/util/makefile.mk
@@ -0,0 +1,86 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJ=..
+PRJNAME=accessibility
+TARGET=acc
+USE_DEFFILE=TRUE
+
+# --- Settings ----------------------------------
+
+.INCLUDE : settings.mk
+
+#.INCLUDE : svpre.mk
+#.INCLUDE : settings.mk
+#.INCLUDE : sv.mk
+
+LDUMP=ldump2.exe
+
+# --- Library -----------------------------------
+# --- acc ---------------------------------------
+LIB1TARGET=$(SLB)$/$(PRJNAME).lib
+LIB1FILES=\
+ $(SLB)$/standard.lib \
+ $(SLB)$/extended.lib \
+ $(SLB)$/helper.lib
+
+SHL1TARGET=$(TARGET)$(DLLPOSTFIX)
+
+SHL1STDLIBS= \
+ $(VCLLIB) \
+ $(COMPHELPERLIB) \
+ $(SOTLIB) \
+ $(CPPULIB) \
+ $(CPPUHELPERLIB) \
+ $(UNOTOOLSLIB) \
+ $(TKLIB) \
+ $(TOOLSLIB) \
+ $(SVTOOLLIB) \
+ $(SVLLIB) \
+ $(SALLIB)
+
+SHL1LIBS=$(LIB1TARGET)
+SHL1DEPN=$(LIB1TARGET) \
+ makefile.mk
+
+
+SHL1VERSIONMAP= $(TARGET).map
+SHL1DEF= $(MISC)$/$(SHL1TARGET).def
+DEF1NAME= $(SHL1TARGET)
+
+# === .res file ==========================================================
+
+RES1FILELIST=\
+ $(SRS)$/helper.srs
+
+RESLIB1NAME=$(TARGET)
+RESLIB1SRSFILES=$(RES1FILELIST)
+
+# --- Targets ----------------------------------
+
+.INCLUDE : target.mk
+
diff --git a/accessibility/workben/TODO b/accessibility/workben/TODO
new file mode 100644
index 000000000000..6fdfd5cb81aa
--- /dev/null
+++ b/accessibility/workben/TODO
@@ -0,0 +1,13 @@
+This is a unsorted list of TODO's and idea regarding the Accessibility Workbench
+
+* increase repaint performance
+* fix paint problems in ObjectViewContainer for e.g. File menu
+* change package structure to be flat (apps don't need deep package names)
+* add ant build script(s)
+* evaluate TreeTable as enhanced overview
+* add error panel and a bunch of consistency checks
+* add focus tracking mode
+* evaluate drawing transparent frames at screen coordinates of an object
+* enhance text view (colors)
+* add table view
+* more generic view loading (Class.forName())
diff --git a/accessibility/workben/makefile b/accessibility/workben/makefile
new file mode 100644
index 000000000000..4bd7c05e44dd
--- /dev/null
+++ b/accessibility/workben/makefile
@@ -0,0 +1,9 @@
+all:
+ cd source/org/openoffice/accessibility ; $(MAKE) all
+
+ROOT=source
+SUBDIRS=source/org/openoffice/accessibility
+include source/makefile.in
+
+run: all
+ $(JAVA) -classpath $(CLASSPATH) org.openoffice.accessibility.awb.AccessibilityWorkBench
diff --git a/accessibility/workben/makefile.in b/accessibility/workben/makefile.in
new file mode 100644
index 000000000000..d81df5fb7363
--- /dev/null
+++ b/accessibility/workben/makefile.in
@@ -0,0 +1,31 @@
+PRJ=$(ROOT)/..
+SETTINGS=$(OO_SDK_HOME)/settings
+include $(SETTINGS)/settings.mk
+include $(SETTINGS)/std.mk
+include $(SETTINGS)/dk.mk
+
+OUT_COMP_JAVA = $(OUT_CLASS)/$(patsubst .,/,$(PACKAGE))
+JAVAC=$(JAVA_HOME)/bin/javac
+JAVA=$(JAVA_HOME)/bin/java
+CLASS_FILES = $(patsubst %.java, %.class, $(JAVAFILES))
+CLASSPATH = $(subst $(EMPTYSTRING) $(PATH_SEPARATOR),$(PATH_SEPARATOR),$(OFFICE_CLASSES_DIR)/jurt.jar\
+ $(PATH_SEPARATOR)$(OFFICE_CLASSES_DIR)/unoil.jar\
+ $(PATH_SEPARATOR)$(OFFICE_CLASSES_DIR)/ridl.jar\
+ $(PATH_SEPARATOR)$(OFFICE_CLASSES_DIR)/juh.jar\
+ $(PATH_SEPARATOR)$(OUT_COMP_JAVA)\
+ $(PATH_SEPARATOR).\
+ $(PATH_SEPARATOR)$(ROOT)\
+ )
+
+subdirs:
+ $(foreach dir,$(SUBDIRS), cd $(dir);$(MAKE);cd ..;)
+
+clean:
+ -rm *.class *.jar
+ $(foreach dir,$(SUBDIRS), cd $(dir);$(MAKE) clean ; cd ..;)
+
+
+%.class : %.java
+ $(JAVAC) -classpath $(CLASSPATH) $<
+
+.PHONY: all package clean subdirs
diff --git a/accessibility/workben/makefile.mk b/accessibility/workben/makefile.mk
new file mode 100644
index 000000000000..7f19d8936757
--- /dev/null
+++ b/accessibility/workben/makefile.mk
@@ -0,0 +1,39 @@
+# copied from settings.mk
+SOLARBINDIR=$(SOLARVERSION)$/$(INPATH)$/bin$(UPDMINOREXT)
+
+# Please modify the following lines to match your environment:
+# If you use the run: target at the end of the file, then adapt pipe name
+PIPE_NAME = $(USER)
+
+# The following variables probably don't need to be changed.
+JAVA = java
+# The JAR_PATH points to the jar files of your local office installation.
+JAR_PATH = $(SOLARBINDIR)$/
+
+
+# The rest of this makefile should not need to be touched.
+
+JAR_FILES = \
+ unoil.jar \
+ ridl.jar \
+ jurt.jar \
+ juh.jar \
+ java_uno.jar
+
+
+JAVA_CLASSPATHS := \
+ ..$/$(INPATH)$/class \
+ $(foreach,i,$(JAR_FILES) $(JAR_PATH)$i) \
+ $(CLASSPATH)
+
+CLASSPATH !:=$(JAVA_CLASSPATHS:t$(PATH_SEPERATOR))
+
+all:
+ build
+
+# Example of how to run the work bench.
+run:
+ +$(JAVA) -classpath "$(CLASSPATH)" org/openoffice/accessibility/awb/AccessibilityWorkBench -p $(PIPE_NAME)
+
+runjar:
+ +$(JAVA) -classpath "$(CLASSPATH)" -jar AccessibilityWorkBench.jar -p $(PIPE_NAME)
diff --git a/accessibility/workben/org/openoffice/accessibility/Makefile b/accessibility/workben/org/openoffice/accessibility/Makefile
new file mode 100644
index 000000000000..a6db6a05ab4b
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/Makefile
@@ -0,0 +1,6 @@
+all : subdirs
+
+ROOT=../../../
+SUBDIRS=misc awb
+include $(ROOT)/makefile.in
+
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/AccessibilityWorkBench.java b/accessibility/workben/org/openoffice/accessibility/awb/AccessibilityWorkBench.java
new file mode 100644
index 000000000000..6e8e45bc4e82
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/AccessibilityWorkBench.java
@@ -0,0 +1,702 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb;
+
+import java.awt.Cursor;
+import java.awt.GridBagConstraints;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.awt.event.WindowAdapter;
+import java.awt.event.WindowEvent;
+import javax.swing.ButtonGroup;
+import javax.swing.JButton;
+import javax.swing.JCheckBoxMenuItem;
+import javax.swing.JComponent;
+import javax.swing.JFrame;
+import javax.swing.JMenu;
+import javax.swing.JMenuBar;
+import javax.swing.JMenuItem;
+import javax.swing.JPanel;
+import javax.swing.JRadioButtonMenuItem;
+import javax.swing.JScrollPane;
+import javax.swing.JSplitPane;
+import javax.swing.event.TreeSelectionListener;
+import javax.swing.event.TreeSelectionEvent;
+import javax.swing.event.TreeExpansionListener;
+import javax.swing.event.TreeWillExpandListener;
+import javax.swing.tree.TreeNode;
+import javax.swing.tree.TreePath;
+
+import com.sun.star.accessibility.XAccessible;
+import com.sun.star.awt.XExtendedToolkit;
+import com.sun.star.frame.XFrame;
+import com.sun.star.frame.XTerminateListener;
+import com.sun.star.lang.EventObject;
+import com.sun.star.uno.UnoRuntime;
+
+import org.openoffice.accessibility.misc.MessageArea;
+import org.openoffice.accessibility.misc.Options;
+import org.openoffice.accessibility.misc.OfficeConnection;
+import org.openoffice.accessibility.misc.SimpleOffice;
+import org.openoffice.accessibility.awb.canvas.Canvas;
+import org.openoffice.accessibility.awb.tree.AccessibilityTree;
+import org.openoffice.accessibility.awb.tree.AccessibilityModel;
+import org.openoffice.accessibility.awb.tree.DynamicAccessibilityModel;
+import org.openoffice.accessibility.awb.view.ObjectViewContainer;
+import org.openoffice.accessibility.awb.view.ObjectViewContainerWindow;
+
+
+
+/** This class manages the GUI of the work bench.
+ @see AccessibilityTreeModel
+ for the implementation of the tree view on the left side which also
+ manages the registration of accessibility listeners.
+ @see Canvas
+ for the graphical view of the accessible objects.
+*/
+public class AccessibilityWorkBench
+ extends JFrame
+ implements XTerminateListener,
+ ActionListener,
+ TreeSelectionListener
+{
+ public static final String msVersion = "v1.9";
+ public String msOptionsFileName = ".AWBrc";
+
+ public static void main (String args[])
+ {
+ String sPipeName = System.getenv( "USER" );
+
+ for (int i=0; i<args.length; i++)
+ {
+ if (args[i].equals ("-h") || args[i].equals ("--help") || args[i].equals ("-?"))
+ {
+ System.out.println ("usage: AccessibilityWorkBench <option>*");
+ System.out.println ("options:");
+ System.out.println (" -p <pipe-name> name of the pipe to use to connect to OpenOffice.org.");
+ System.out.println (" Defaults to $USER.");
+ System.exit (0);
+ }
+ else if (args[i].equals ("-p"))
+ {
+ sPipeName = args[++i];
+ }
+ }
+
+ saWorkBench = new AccessibilityWorkBench (sPipeName);
+ }
+
+
+
+
+ /** Return the one instance of the AccessibilityWorkBench
+ @return
+ Returns null when the AccessibilityWorkBench could not be
+ created successfully.
+ */
+ public static AccessibilityWorkBench Instance ()
+ {
+ return saWorkBench;
+ }
+
+
+
+ /** Create an accessibility work bench that listens at the specified
+ port to Office applications.
+ */
+ private AccessibilityWorkBench (String sPipeName)
+ {
+ mbInitialized = false;
+
+ OfficeConnection.SetPipeName (sPipeName);
+ Options.Instance().Load (msOptionsFileName);
+ Layout ();
+
+ MessageArea.println (System.getProperty ("os.name") + " / "
+ + System.getProperty ("os.arch") + " / "
+ + System.getProperty ("os.version"));
+ MessageArea.println ("Using pipe name " + sPipeName);
+
+ maTree.addTreeSelectionListener (this);
+
+ addWindowListener (new WindowAdapter ()
+ { public void windowClosing (WindowEvent e) {Quit();} }
+ );
+
+ OfficeConnection.Instance().AddConnectionListener (this);
+ Initialize ();
+ }
+
+
+
+
+ /** Create and arrange the widgets of the GUI.
+ */
+ public void Layout ()
+ {
+ setSize (new java.awt.Dimension (800,600));
+
+ JScrollPane aScrollPane;
+ GridBagConstraints constraints;
+
+ // Create new layout.
+ java.awt.GridBagLayout aLayout = new java.awt.GridBagLayout ();
+ getContentPane().setLayout (aLayout);
+
+ // Accessible Tree.
+ javax.swing.tree.TreeModel treeModel = new DynamicAccessibilityModel();
+ maTree = new AccessibilityTree(treeModel);
+ // Add the model as tree listeners to be able to populate/clear the
+ // child lists on demand.
+ maTree.addTreeExpansionListener((TreeExpansionListener) treeModel);
+ maTree.addTreeWillExpandListener((TreeWillExpandListener) treeModel);
+
+ JScrollPane aTreeScrollPane = new JScrollPane(
+ maTree,
+ JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
+ JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
+ aTreeScrollPane.setPreferredSize (new java.awt.Dimension (400,300));
+
+ // Object view shows details about the currently selected accessible
+ // object.
+ maObjectViewContainer = new ObjectViewContainer ();
+ JScrollPane aObjectViewContainerScrollPane = new JScrollPane(
+ maObjectViewContainer,
+ JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,
+ JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
+ aObjectViewContainerScrollPane.setPreferredSize (
+ new java.awt.Dimension (400,300));
+ JButton aCornerButton = new JButton ("CreateNewViewWindow");
+ aCornerButton.addActionListener (this);
+ aObjectViewContainerScrollPane.setCorner (
+ JScrollPane.LOWER_RIGHT_CORNER,
+ aCornerButton);
+
+ // Split pane for tree view and object view.
+ JSplitPane aLeftViewSplitPane = new JSplitPane (
+ JSplitPane.VERTICAL_SPLIT,
+ aTreeScrollPane,
+ aObjectViewContainerScrollPane
+ );
+ aLeftViewSplitPane.setDividerLocation (300);
+ aLeftViewSplitPane.setContinuousLayout (true);
+
+ // Canvas.
+ maCanvas = new Canvas ();
+ maCanvas.SetTree (maTree);
+ JScrollPane aScrolledCanvas = new JScrollPane(maCanvas,
+ JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,
+ JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
+ aScrolledCanvas.getViewport().setBackground (java.awt.Color.RED);
+ aScrolledCanvas.setPreferredSize (new java.awt.Dimension(600,400));
+
+ // Split pane for tree view and canvas.
+ JSplitPane aViewSplitPane = new JSplitPane (
+ JSplitPane.HORIZONTAL_SPLIT,
+ aLeftViewSplitPane,
+ aScrolledCanvas
+ );
+ aViewSplitPane.setOneTouchExpandable(true);
+ aViewSplitPane.setDividerLocation (400);
+ aViewSplitPane.setContinuousLayout (true);
+
+ // Split pane for the three views at the top and the message area.
+ MessageArea.Instance().setPreferredSize (new java.awt.Dimension(600,50));
+ JSplitPane aSplitPane = new JSplitPane (
+ JSplitPane.VERTICAL_SPLIT,
+ aViewSplitPane,
+ MessageArea.Instance());
+ aSplitPane.setOneTouchExpandable(true);
+ aSplitPane.setContinuousLayout (true);
+ addGridElement (aSplitPane, 0,0, 2,1, 3,3,
+ GridBagConstraints.CENTER, GridBagConstraints.BOTH);
+
+ // Button bar.
+ maButtonBar = new javax.swing.JPanel();
+ java.awt.GridBagLayout aButtonLayout = new java.awt.GridBagLayout ();
+ maButtonBar.setLayout (new java.awt.FlowLayout());
+ addGridElement (maButtonBar, 0,3, 2,1, 1,0,
+ GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL);
+
+ // Buttons.
+ // maConnectButton = createButton ("Connect", "connect");
+ // maUpdateButton = createButton ("Update", "update");
+ // maShapesButton = createButton ("Expand Shapes", "shapes");
+ maExpandButton = createButton ("Expand All", "expand");
+ maQuitButton = createButton ("Quit", "quit");
+ UpdateButtonStates ();
+
+ setJMenuBar (CreateMenuBar ());
+
+ setTitle("Accessibility Workbench " + msVersion);
+
+ setVisible (true);
+ pack ();
+ aSplitPane.setDividerLocation (1.0);
+ validate ();
+ repaint();
+ }
+
+
+
+
+ /** Shortcut method for adding an object to a GridBagLayout.
+ */
+ void addGridElement (JComponent object,
+ int x, int y,
+ int width, int height,
+ int weightx, int weighty,
+ int anchor, int fill)
+ {
+ GridBagConstraints constraints = new GridBagConstraints ();
+ constraints.gridx = x;
+ constraints.gridy = y;
+ constraints.gridwidth = width;
+ constraints.gridheight = height;
+ constraints.weightx = weightx;
+ constraints.weighty = weighty;
+ constraints.anchor = anchor;
+ constraints.fill = fill;
+ getContentPane().add (object, constraints);
+ }
+
+
+
+
+ /** Create a new button and place at the right most position into the
+ button bar.
+ */
+ public JButton createButton (String title, String command)
+ {
+ JButton aButton = new JButton (title);
+ aButton.setEnabled (false);
+ aButton.setActionCommand (command);
+ aButton.addActionListener (this);
+
+ maButtonBar.add (aButton);
+ return aButton;
+ }
+
+
+
+
+ /** Create a menu bar for the application.
+ @return
+ Returns the new menu bar. The returned reference is also
+ remembered in the data member <member>maMenuBar</member>.
+ */
+ javax.swing.JMenuBar CreateMenuBar()
+ {
+ // Menu bar.
+ maMenuBar = new JMenuBar ();
+
+ // File menu.
+ JMenu aFileMenu = new JMenu ("File");
+ maMenuBar.add (aFileMenu);
+ JMenuItem aItem;
+ aItem = new JMenuItem ("Quit");
+ aFileMenu.add (aItem);
+ aItem.addActionListener (this);
+
+ // View menu.
+ JMenu aViewMenu = new JMenu ("View");
+ maMenuBar.add (aViewMenu);
+ ButtonGroup aGroup = new ButtonGroup ();
+ int nZoomMode = Options.GetInteger ("ZoomMode", Canvas.WHOLE_SCREEN);
+ JRadioButtonMenuItem aRadioButton = new JRadioButtonMenuItem (
+ "Whole Screen", nZoomMode==Canvas.WHOLE_SCREEN);
+ aGroup.add (aRadioButton);
+ aViewMenu.add (aRadioButton);
+ aRadioButton.addActionListener (this);
+ aRadioButton = new JRadioButtonMenuItem ("200%", nZoomMode==200);
+ aGroup.add (aRadioButton);
+ aViewMenu.add (aRadioButton);
+ aRadioButton.addActionListener (this);
+ aRadioButton = new JRadioButtonMenuItem ("100%", nZoomMode==100);
+ aGroup.add (aRadioButton);
+ aViewMenu.add (aRadioButton);
+ aRadioButton.addActionListener (this);
+ aRadioButton = new JRadioButtonMenuItem ("50%", nZoomMode==50);
+ aGroup.add (aRadioButton);
+ aViewMenu.add (aRadioButton);
+ aRadioButton.addActionListener (this);
+ aRadioButton = new JRadioButtonMenuItem ("25%", nZoomMode==25);
+ aGroup.add (aRadioButton);
+ aViewMenu.add (aRadioButton);
+ aRadioButton.addActionListener (this);
+ aRadioButton = new JRadioButtonMenuItem ("10%", nZoomMode==10);
+ aGroup.add (aRadioButton);
+ aViewMenu.add (aRadioButton);
+ aRadioButton.addActionListener (this);
+
+ // Options menu.
+ JMenu aOptionsMenu = new JMenu ("Options");
+ maMenuBar.add (aOptionsMenu);
+ JCheckBoxMenuItem aCBItem;
+ aCBItem = new JCheckBoxMenuItem ("Show Descriptions",
+ Options.GetBoolean("ShowDescriptions"));
+ aOptionsMenu.add (aCBItem);
+ aCBItem.addActionListener (this);
+
+ aCBItem = new JCheckBoxMenuItem ("Show Names",
+ Options.GetBoolean ("ShowNames"));
+ aOptionsMenu.add (aCBItem);
+ aCBItem.addActionListener (this);
+
+ aCBItem = new JCheckBoxMenuItem ("Show Text",
+ Options.GetBoolean ("ShowText"));
+ aOptionsMenu.add (aCBItem);
+ aCBItem.addActionListener (this);
+
+ aCBItem = new JCheckBoxMenuItem ("Antialiased Rendering",
+ Options.GetBoolean ("Antialiasing"));
+ aOptionsMenu.add (aCBItem);
+ aCBItem.addActionListener (this);
+
+ // Help menu.
+ JMenu aHelpMenu = new JMenu ("Help");
+ maMenuBar.add (aHelpMenu);
+
+ aItem = new JMenuItem ("Help");
+ aHelpMenu.add (aItem);
+ aItem.addActionListener (this);
+
+ aItem = new JMenuItem ("News");
+ aHelpMenu.add (aItem);
+ aItem.addActionListener (this);
+
+ aItem = new JMenuItem ("About");
+ aHelpMenu.add (aItem);
+ aItem.addActionListener (this);
+
+ return maMenuBar;
+ }
+
+
+
+
+ /** Initialize the AWB. This includes clearing the canvas, add
+ listeners, creation of a new tree model for the tree list box and
+ the update of the button states.
+
+ This method may be called any number of times. Note that all
+ actions will be carried out every time. The main purpose of a
+ second call is that of a re-initialization after a reconnect.
+ */
+ protected void Initialize ()
+ {
+ maCanvas.SetTree (maTree);
+
+ SimpleOffice aOffice = SimpleOffice.Instance ();
+ if (aOffice != null)
+ {
+ // Add terminate listener.
+ if (aOffice.GetDesktop() != null)
+ aOffice.GetDesktop().addTerminateListener (this);
+
+ }
+
+ mbInitialized = true;
+ UpdateButtonStates ();
+ }
+
+
+
+
+ /** Update the states of the buttons according to the internal state of
+ the AWB.
+ */
+ protected void UpdateButtonStates ()
+ {
+ // maConnectButton.setEnabled (mbInitialized);
+ maQuitButton.setEnabled (true);
+ // maUpdateButton.setEnabled (mbInitialized);
+ maExpandButton.setEnabled (mbInitialized);
+ // maShapesButton.setEnabled (mbInitialized);
+ }
+
+
+
+ /** Callback for GUI actions from the buttons.
+ */
+ public void actionPerformed (ActionEvent aEvent)
+ {
+ String sCommand = aEvent.getActionCommand();
+ if (sCommand.equals("connect"))
+ {
+ SimpleOffice.Clear();
+ Initialize ();
+ }
+ else if (sCommand.equals("quit"))
+ {
+ Quit ();
+ }
+ else if (sCommand.equals("update"))
+ {
+// maTree.Dispose();
+ Initialize ();
+ }
+ else if (sCommand.equals("shapes"))
+ {
+ Cursor aCursor = getCursor();
+ setCursor (new Cursor (Cursor.WAIT_CURSOR));
+ // maTree.expandShapes();
+ setCursor (aCursor);
+ }
+ else if (sCommand.equals("expand"))
+ {
+ Cursor aCursor = getCursor();
+ setCursor (new Cursor (Cursor.WAIT_CURSOR));
+
+ for (int i=0; i<maTree.getRowCount(); i++)
+ maTree.expandRow (i);
+ // maAccessibilityTree.expandAll();
+ setCursor (aCursor);
+ }
+ else if (sCommand.equals ("Quit"))
+ {
+ System.out.println ("exiting");
+ System.exit (0);
+ }
+ else if (sCommand.equals ("Show Descriptions"))
+ {
+ Options.SetBoolean ("ShowDescriptions",
+ ((JCheckBoxMenuItem)aEvent.getSource()).getState());
+ maCanvas.repaint();
+ }
+ else if (sCommand.equals ("Show Names"))
+ {
+ Options.SetBoolean ("ShowNames",
+ ((JCheckBoxMenuItem)aEvent.getSource()).getState());
+ maCanvas.repaint();
+ }
+ else if (sCommand.equals ("Show Text"))
+ {
+ Options.SetBoolean ("ShowText",
+ ((JCheckBoxMenuItem)aEvent.getSource()).getState());
+ maCanvas.repaint();
+ }
+ else if (sCommand.equals ("Antialiased Rendering"))
+ {
+ Options.SetBoolean ("Antialiasing",
+ ((JCheckBoxMenuItem)aEvent.getSource()).getState());
+ maCanvas.repaint();
+ }
+ else if (sCommand.equals ("Help"))
+ {
+ HelpWindow.Instance().loadFile ("help.html");
+ }
+ else if (sCommand.equals ("News"))
+ {
+ try{
+ HelpWindow.Instance().loadFile ("news.html");
+ } catch (Exception ex) {}
+ }
+ else if (sCommand.equals ("About"))
+ {
+ HelpWindow.Instance().loadFile ("about.html");
+ }
+ else if (sCommand.equals ("Whole Screen"))
+ {
+ Options.SetInteger ("ZoomMode", Canvas.WHOLE_SCREEN);
+ maCanvas.repaint();
+ }
+ else if (sCommand.equals ("200%"))
+ {
+ Options.SetInteger ("ZoomMode", 200);
+ maCanvas.repaint();
+ }
+ else if (sCommand.equals ("100%"))
+ {
+ Options.SetInteger ("ZoomMode", 100);
+ maCanvas.repaint();
+ }
+ else if (sCommand.equals ("50%"))
+ {
+ Options.SetInteger ("ZoomMode", 50);
+ maCanvas.repaint();
+ }
+ else if (sCommand.equals ("25%"))
+ {
+ Options.SetInteger ("ZoomMode", 25);
+ maCanvas.repaint();
+ }
+ else if (sCommand.equals ("10%"))
+ {
+ Options.SetInteger ("ZoomMode", 10);
+ maCanvas.repaint();
+ }
+ else if (sCommand.equals ("<connected>"))
+ {
+ Connected ();
+ }
+ else if (sCommand.equals ("CreateNewViewWindow"))
+ {
+ TreePath aSelectionPath = maTree.getSelectionPath();
+ if (aSelectionPath != null)
+ {
+ javax.swing.tree.TreeNode aSelectedNode =
+ (javax.swing.tree.TreeNode)aSelectionPath.getLastPathComponent();
+ if (aSelectedNode instanceof XAccessible) {
+ new ObjectViewContainerWindow (((XAccessible) aSelectedNode).getAccessibleContext());
+ }
+ }
+ }
+ else
+ {
+ System.err.println("unknown command " + sCommand);
+ }
+ }
+
+
+
+
+ /** TreeSelectionListener
+ Tell the object view and the canvas about the selected object.
+ */
+ public void valueChanged (TreeSelectionEvent aEvent) {
+
+ if (aEvent.isAddedPath()) {
+ Cursor aCursor = getCursor();
+ setCursor (new Cursor (Cursor.WAIT_CURSOR));
+
+ javax.swing.tree.TreePath aPath = aEvent.getPath();
+ maTree.scrollPathToVisible (aPath);
+ Object aObject = aPath.getLastPathComponent();
+ implSetCurrentObject( aObject );
+ if (aObject instanceof XAccessible)
+ {
+ if (maObjectViewContainer != null)
+ maObjectViewContainer.SetObject( ((XAccessible)aObject).getAccessibleContext() );
+ }
+ if (maCanvas != null)
+ maCanvas.SelectObject ((TreeNode) aObject);
+ setCursor (aCursor);
+ } else {
+ implSetCurrentObject( aEvent.getPath().getLastPathComponent() );
+ if (maObjectViewContainer != null)
+ maObjectViewContainer.SetObject (null);
+ if (maCanvas != null)
+ maCanvas.SelectObject (null);
+ }
+ }
+
+
+ private void implSetCurrentObject( Object i_object )
+ {
+ if ( maObjectViewContainer == null )
+ return;
+ if ( maCurrentObject != null )
+ {
+ AccessibilityModel.removeEventListener( (TreeNode)maCurrentObject, maObjectViewContainer );
+ }
+ maCurrentObject = i_object;
+ if ( maCurrentObject != null )
+ {
+ AccessibilityModel.addEventListener( (TreeNode)maCurrentObject, maObjectViewContainer );
+ }
+ }
+
+ // XEventListener
+ public void disposing (EventObject aSourceObj)
+ {
+ XFrame xFrame = (XFrame)UnoRuntime.queryInterface(
+ XFrame.class, aSourceObj.Source);
+
+ if( xFrame != null )
+ System.out.println("frame disposed");
+ else
+ System.out.println("controller disposed");
+ }
+
+
+
+
+ // XTerminateListener
+ public void queryTermination(final EventObject aEvent) throws com.sun.star.frame.TerminationVetoException
+ {
+ System.out.println ("Terminate Event : " + aEvent);
+ }
+
+
+
+
+ // XTerminateListener
+ public void notifyTermination(final EventObject aEvent)
+ {
+ System.out.println ("Notifiy Termination Event : " + aEvent);
+ }
+
+
+ /** Called after the AWB is connected to an Office application.
+ */
+ private void Connected ()
+ {
+ // Clear the tree and by expanding the root node initiate the
+ // scanning and insertion of nodes for the top-level windows.
+// maTree.Clear();
+// maTree.collapseRow (0);
+// maTree.expandRow (0);
+
+ // Register the top window listener.
+ XExtendedToolkit xToolkit =
+ SimpleOffice.Instance().GetExtendedToolkit();
+ if (xToolkit != null)
+ {
+ maTree.setToolkit(xToolkit);
+ }
+ }
+
+
+ /** Called when shutting down the AWB tool.
+ */
+ private void Quit ()
+ {
+// maTree.Dispose();
+ System.exit (0);
+ }
+
+ /// The Singleton Workbench object.
+ private static AccessibilityWorkBench
+ saWorkBench = null;
+
+ private JPanel maMainPanel;
+ private JPanel maButtonBar;
+ private Canvas maCanvas;
+ private AccessibilityTree maTree;
+ private ObjectViewContainer maObjectViewContainer;
+ private JButton
+ maConnectButton,
+ maQuitButton,
+ maUpdateButton,
+ maExpandButton,
+ maShapesButton;
+ private JMenuBar maMenuBar;
+ private boolean mbInitialized;
+ private Object maCurrentObject = null;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/HelpWindow.java b/accessibility/workben/org/openoffice/accessibility/awb/HelpWindow.java
new file mode 100644
index 000000000000..2f9671d191e5
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/HelpWindow.java
@@ -0,0 +1,187 @@
+package org.openoffice.accessibility.awb;
+
+import javax.swing.JFrame;
+import javax.swing.JScrollPane;
+import javax.swing.JEditorPane;
+import javax.swing.JButton;
+import java.net.URL;
+import javax.swing.event.HyperlinkListener;
+import javax.swing.event.HyperlinkEvent;
+import java.net.MalformedURLException;
+import java.io.IOException;
+import java.io.File;
+import java.awt.event.WindowAdapter;
+import java.awt.event.WindowEvent;
+import java.awt.GridBagLayout;
+import java.awt.GridBagConstraints;
+import java.awt.event.ActionListener;
+import java.util.LinkedList;
+
+public class HelpWindow
+ implements ActionListener
+{
+ public static synchronized HelpWindow Instance ()
+ {
+ if (maInstance == null)
+ maInstance = new HelpWindow();
+ return maInstance;
+ }
+
+ public void loadFile (String sFilename)
+ {
+ File aFile = new File (sFilename);
+ try
+ {
+ loadURL (aFile.toURL());
+ }
+ catch (MalformedURLException e)
+ {
+ e.printStackTrace (System.err);
+ }
+ }
+ public void loadURL (String sURL)
+ {
+ try
+ {
+ loadURL (new URL (sURL));
+ }
+ catch (MalformedURLException e)
+ {
+ e.printStackTrace (System.err);
+ }
+ }
+
+
+
+
+ public void loadURL (URL aURL)
+ {
+ maHistory.addLast (aURL);
+ selectHistoryPage (maHistory.size()-1);
+ maFrame.toFront ();
+ }
+
+
+
+
+ private HelpWindow ()
+ {
+ try
+ {
+ maCurrentHistoryEntry = -1;
+ maHistory = new LinkedList();
+
+ maFrame = new JFrame ();
+ maFrame.addWindowListener (new WindowAdapter ()
+ {
+ public void windowClosing (WindowEvent e)
+ {
+ maInstance = null;
+ }
+ });
+ maContent = createContentWidget();
+
+ maFrame.getContentPane().setLayout (new GridBagLayout());
+ GridBagConstraints aConstraints = new GridBagConstraints ();
+ aConstraints.gridx = 0;
+ aConstraints.gridy = 0;
+ aConstraints.gridwidth = 3;
+ aConstraints.weightx = 1;
+ aConstraints.weighty = 1;
+ aConstraints.fill = GridBagConstraints.BOTH;
+ maFrame.getContentPane().add (new JScrollPane (maContent), aConstraints);
+
+ aConstraints = new GridBagConstraints();
+ aConstraints.gridx = 0;
+ aConstraints.gridy = 1;
+ maPrevButton = new JButton ("Prev");
+ maFrame.getContentPane().add (maPrevButton, aConstraints);
+ maPrevButton.addActionListener (this);
+
+ aConstraints = new GridBagConstraints();
+ aConstraints.gridx = 1;
+ aConstraints.gridy = 1;
+ maNextButton = new JButton ("Next");
+ maFrame.getContentPane().add (maNextButton, aConstraints);
+ maNextButton.addActionListener (this);
+
+ aConstraints = new GridBagConstraints();
+ aConstraints.gridx = 2;
+ aConstraints.gridy = 1;
+ aConstraints.anchor = GridBagConstraints.EAST;
+ JButton aButton = new JButton ("Close");
+ maFrame.getContentPane().add (aButton, aConstraints);
+ aButton.addActionListener (this);
+
+ maFrame.setSize (600,400);
+ maFrame.setVisible (true);
+ }
+ catch (Exception e)
+ {}
+ }
+
+ public void actionPerformed (java.awt.event.ActionEvent e)
+ {
+ if (e.getActionCommand().equals("Prev"))
+ {
+ selectHistoryPage (maCurrentHistoryEntry - 1);
+ }
+ else if (e.getActionCommand().equals("Next"))
+ {
+ selectHistoryPage (maCurrentHistoryEntry + 1);
+ }
+ else if (e.getActionCommand().equals("Close"))
+ {
+ maFrame.dispose ();
+ maInstance = null;
+ }
+ }
+
+ private JEditorPane createContentWidget ()
+ {
+ JEditorPane aContent = new JEditorPane ();
+ aContent.setEditable (false);
+ aContent.addHyperlinkListener (new HyperlinkListener()
+ {
+ public void hyperlinkUpdate (HyperlinkEvent e)
+ {
+ if (e.getEventType() == HyperlinkEvent.EventType.ACTIVATED)
+ HelpWindow.Instance().loadURL (e.getURL());
+ }
+ });
+ return aContent;
+ }
+
+ private void selectHistoryPage (int i)
+ {
+ if (i < 0)
+ i = 0;
+ else if (i >= maHistory.size()-1)
+ i = maHistory.size()-1;
+ if (i != maCurrentHistoryEntry)
+ {
+ URL aURL = (URL)maHistory.get (i);
+ try
+ {
+ maContent.setPage (aURL);
+ }
+ catch (java.io.IOException ex)
+ {
+ ex.printStackTrace(System.err);
+ }
+
+ maCurrentHistoryEntry = i;
+ }
+
+ maPrevButton.setEnabled (maCurrentHistoryEntry > 0);
+ maNextButton.setEnabled (maCurrentHistoryEntry < maHistory.size()-1);
+ }
+
+ private static HelpWindow maInstance = null;
+ private JFrame maFrame;
+ private JEditorPane maContent;
+ private LinkedList maHistory;
+ private int maCurrentHistoryEntry;
+ private JButton maPrevButton;
+ private JButton maNextButton;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/Makefile b/accessibility/workben/org/openoffice/accessibility/awb/Makefile
new file mode 100644
index 000000000000..d38799bed109
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/Makefile
@@ -0,0 +1,13 @@
+# $Id: Makefile,v 1.1 2003/06/13 16:30:18 af Exp $
+
+all : package
+
+ROOT=../../../..
+PACKAGE = org.openoffice.accessibility.awb
+SUBDIRS = canvas event tree view
+
+include makefile.common
+
+include $(ROOT)/makefile.in
+
+package: subdirs $(CLASS_FILES)
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/canvas/Canvas.java b/accessibility/workben/org/openoffice/accessibility/awb/canvas/Canvas.java
new file mode 100644
index 000000000000..86b642e8091c
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/canvas/Canvas.java
@@ -0,0 +1,322 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.canvas;
+
+import java.awt.Color;
+import java.awt.Dimension;
+import java.awt.Graphics;
+import java.awt.Graphics2D;
+import java.awt.Rectangle;
+import java.awt.RenderingHints;
+import java.awt.Toolkit;
+import java.awt.geom.Rectangle2D;
+import java.util.Iterator;
+import javax.swing.JPanel;
+import javax.swing.JScrollPane;
+import javax.swing.JViewport;
+import javax.swing.event.TreeSelectionEvent;
+import javax.swing.tree.TreePath;
+
+import com.sun.star.accessibility.XAccessible;
+import com.sun.star.accessibility.XAccessibleContext;
+import com.sun.star.accessibility.XAccessibleComponent;
+
+import org.openoffice.accessibility.misc.Options;
+
+/** This canvas displays accessible objects graphically. Each accessible
+ object with graphical representation is represented by an
+ CanvasShape object and has to be added by the
+ <member>addAccessible</member> member function.
+
+ <p>The canvas listens to selection events of the associated JTree and
+ highlights the first selected node of that tree.</p>
+*/
+public class Canvas
+ extends JPanel
+{
+ // This constant can be passed to SetZoomMode to always show the whole screen.
+ public static final int WHOLE_SCREEN = -1;
+
+ public Canvas ()
+ {
+ super (true);
+ maShapeList = new ShapeContainer (this);
+ maMouseObserver = new MouseObserver (this);
+ maTree = null;
+ mnHOffset = 0;
+ mnVOffset = 0;
+ mnScale = 1;
+ maLastWidgetSize = new Dimension (0,0);
+ }
+
+
+
+ /** Tell the canvas which tree to use to highlight accessible
+ objects and to observe for changes in the tree structure.
+ */
+ public void SetTree (javax.swing.JTree aTree)
+ {
+ if (aTree != maTree)
+ {
+ maTree = aTree;
+ maShapeList.SetTree (maTree);
+ maMouseObserver.SetTree (maTree);
+ }
+ }
+
+
+
+
+ private void Clear ()
+ {
+ maShapeList.Clear();
+ }
+
+
+
+
+ public Iterator GetShapeIterator ()
+ {
+ return maShapeList.GetIterator();
+ }
+
+
+
+
+ public void paintComponent (Graphics g)
+ {
+ synchronized (g)
+ {
+ super.paintComponent (g);
+
+ Graphics2D g2 = (Graphics2D)g;
+ if (Options.GetBoolean("Antialiasing"))
+ g2.setRenderingHint (RenderingHints.KEY_ANTIALIASING,
+ RenderingHints.VALUE_ANTIALIAS_ON);
+ else
+ g2.setRenderingHint (RenderingHints.KEY_ANTIALIASING,
+ RenderingHints.VALUE_ANTIALIAS_OFF);
+
+ setupTransformation ();
+ g2.translate (mnHOffset, mnVOffset);
+ g2.scale (mnScale, mnScale);
+
+ // Draw the screen representation to give a hint of the location of the
+ // accessible object on the screen.
+ Dimension aScreenSize = Toolkit.getDefaultToolkit().getScreenSize();
+ Rectangle2D.Double aScreen = new Rectangle2D.Double (
+ 0,
+ 0,
+ aScreenSize.getWidth(),
+ aScreenSize.getHeight());
+ // Fill the screen rectangle and draw a frame arround it to increase its visibility.
+ g2.setColor (new Color (250,240,230));
+ g2.fill (aScreen);
+ g2.setColor (Color.BLACK);
+ g2.draw (aScreen);
+
+ synchronized (maShapeList)
+ {
+ Iterator aShapeIterator = maShapeList.GetIterator();
+ boolean bShowDescriptions = Options.GetBoolean ("ShowDescriptions");
+ boolean bShowNames = Options.GetBoolean ("ShowNames");
+ boolean bShowText = Options.GetBoolean ("ShowText");
+ while (aShapeIterator.hasNext())
+ {
+ CanvasShape aCanvasShape =
+ (CanvasShape)aShapeIterator.next();
+ try
+ {
+ aCanvasShape.paint (
+ g2,
+ bShowDescriptions, bShowNames, bShowText);
+ }
+ catch (Exception aException)
+ {
+ System.err.println ("caught exception while painting a shape:"
+ + aException);
+ aException.printStackTrace (System.err);
+ }
+ }
+ }
+
+ // Paint highlighted frame around active object as the last thing.
+ if (maActiveObject != null)
+ maActiveObject.paint_highlight (g2);
+ }
+ }
+
+
+
+
+ /** Set up the transformation so that the graphical display can show a
+ centered representation of the whole screen.
+ */
+ private void setupTransformation ()
+ {
+ // Turn off scrollbars when showing the whole screen. Otherwise show them when needed.
+ JViewport aViewport = (JViewport)getParent();
+ JScrollPane aScrollPane = (JScrollPane)aViewport.getParent();
+ int nZoomMode = Options.GetInteger ("ZoomMode", WHOLE_SCREEN);
+ if (nZoomMode == WHOLE_SCREEN)
+ {
+ if (aScrollPane.getHorizontalScrollBarPolicy()
+ != JScrollPane.HORIZONTAL_SCROLLBAR_NEVER)
+ aScrollPane.setHorizontalScrollBarPolicy (
+ JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
+ if (aScrollPane.getVerticalScrollBarPolicy()
+ != JScrollPane.VERTICAL_SCROLLBAR_NEVER)
+ aScrollPane.setVerticalScrollBarPolicy (
+ JScrollPane.VERTICAL_SCROLLBAR_NEVER);
+ }
+ else
+ {
+ if (aScrollPane.getHorizontalScrollBarPolicy()
+ != JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED)
+ aScrollPane.setHorizontalScrollBarPolicy (
+ JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
+ if (aScrollPane.getVerticalScrollBarPolicy()
+ != JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED)
+ aScrollPane.setVerticalScrollBarPolicy (
+ JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
+ }
+
+ Dimension aScreenSize = Toolkit.getDefaultToolkit().getScreenSize();
+ Dimension aWidgetSize = aViewport.getSize();
+ {
+ if ((aScreenSize.getWidth() > 0) && (aScreenSize.getHeight() > 0))
+ {
+ if (nZoomMode == WHOLE_SCREEN)
+ {
+ // Calculate the scales that would map the screen onto the
+ // widget in both of the coordinate axes and select the
+ // smaller
+ // of the two: it maps the screen onto the widget in both
+ // axes at the same time.
+ double nHScale = (aWidgetSize.getWidth() - 10)
+ / aScreenSize.getWidth();
+ double nVScale = (aWidgetSize.getHeight() - 10)
+ / aScreenSize.getHeight();
+ if (nHScale < nVScale)
+ mnScale = nHScale;
+ else
+ mnScale = nVScale;
+ }
+ else
+ {
+ mnScale = nZoomMode / 100.0;
+ }
+
+ // Calculate offsets that center the scaled screen inside
+ // the widget.
+ mnHOffset = (aWidgetSize.getWidth()
+ - mnScale*aScreenSize.getWidth()) / 2.0;
+ mnVOffset = (aWidgetSize.getHeight()
+ - mnScale*aScreenSize.getHeight()) / 2.0;
+ if (mnHOffset < 0)
+ mnHOffset = 0;
+ if (mnVOffset < 0)
+ mnVOffset = 0;
+
+ setPreferredSize (new Dimension (
+ (int)(2*mnHOffset + mnScale * aScreenSize.getWidth()),
+ (int)(2*mnVOffset + mnScale * aScreenSize.getHeight())));
+ revalidate ();
+ }
+ else
+ {
+ // In case of a degenerate (not yet initialized?) screen size
+ // use some meaningless default values.
+ mnScale = 1;
+ mnHOffset = 0;
+ mnVOffset = 0;
+ }
+ }
+ maLastWidgetSize = aWidgetSize;
+ }
+
+
+
+ protected boolean HighlightObject (CanvasShape aNewActiveObject)
+ {
+ if (aNewActiveObject != maActiveObject)
+ {
+ if (maActiveObject != null)
+ maActiveObject.Highlight (false);
+
+ maActiveObject = aNewActiveObject;
+ if (maActiveObject != null)
+ {
+ /* if (maTree != null)
+ {
+ TreePath aPath = new TreePath (
+ maActiveObject.GetNode().GetPath());
+ maTree.scrollPathToVisible (aPath);
+ maTree.setSelectionPath (aPath);
+ maTree.repaint ();
+ }
+ */
+ maActiveObject.Highlight (true);
+ }
+ repaint ();
+ return true;
+ }
+ else
+ return false;
+ }
+
+
+
+
+ /** Called when the selection of the tree changes. Highlight the
+ corresponding graphical representation of the object.
+ */
+ public void SelectObject (javax.swing.tree.TreeNode aNode)
+ {
+ CanvasShape aCanvasShape = maShapeList.Get (aNode);
+ HighlightObject (aCanvasShape);
+ }
+
+
+
+
+ private int
+ mnXAnchor,
+ mnYAnchor,
+ maResizeFlag;
+ private double
+ mnHOffset,
+ mnVOffset,
+ mnScale;
+ private CanvasShape maActiveObject;
+ private javax.swing.JTree maTree;
+ // The size of the widget at the last call of setupTransformation()
+ private Dimension maLastWidgetSize;
+ private ShapeContainer maShapeList;
+ private MouseObserver maMouseObserver;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/canvas/CanvasShape.java b/accessibility/workben/org/openoffice/accessibility/awb/canvas/CanvasShape.java
new file mode 100644
index 000000000000..f2595351a4f5
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/canvas/CanvasShape.java
@@ -0,0 +1,412 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.canvas;
+
+import java.awt.Color;
+import java.awt.Dimension;
+import java.awt.Graphics2D;
+import java.awt.Point;
+import java.awt.Rectangle;
+import java.awt.geom.Point2D;
+import java.awt.geom.Rectangle2D;
+import java.awt.geom.AffineTransform;
+import java.awt.geom.NoninvertibleTransformException;
+
+
+import com.sun.star.accessibility.*;
+import com.sun.star.lang.EventObject;
+import com.sun.star.uno.UnoRuntime;
+
+
+class CanvasShape implements XAccessibleEventListener
+{
+ public final Color maHighlightColor = Color.red;
+ public final Color maSelectionColor = Color.green;
+ public final Color maFocusColor = Color.blue;
+
+ public CanvasShape (javax.swing.tree.TreeNode aNode, Canvas aCanvas)
+ {
+ maNode = aNode;
+ msName = "<no name>";
+ msDescription = "<no description>";
+ maShape = new Rectangle2D.Double (-10,-10,10,10);
+ maPosition = new Point (-10,-10);
+ maSize = new Dimension (10,10);
+ maFgColor = java.awt.Color.black;
+ maBgColor = Color.blue;
+ mnRole = -1;
+ mbHighlighted = false;
+ mbSelected = false;
+ mbFocused = false;
+ maCanvas = aCanvas;
+
+ Update ();
+ }
+
+
+
+
+ public javax.swing.tree.TreePath getNodePath (javax.swing.tree.TreeNode node)
+ {
+ javax.swing.tree.TreeNode parent = node.getParent();
+ return (parent != null) ?
+ getNodePath(parent).pathByAddingChild(node) :
+ new javax.swing.tree.TreePath(node);
+ }
+
+ public javax.swing.tree.TreePath getNodePath ()
+ {
+ return getNodePath(maNode);
+ }
+
+
+
+ /** Update the data obtained from the <type>AccessibilityNode</type>
+ object.
+ */
+ public void Update ()
+ {
+ if (maNode instanceof XAccessible) {
+ mxContext = ((XAccessible) maNode).getAccessibleContext();
+ mxComponent = (XAccessibleComponent)UnoRuntime.queryInterface(
+ XAccessibleComponent.class, mxContext);
+ }
+
+ if (mxContext != null)
+ {
+ msName = mxContext.getAccessibleName();
+ msDescription = mxContext.getAccessibleDescription();
+ mnRole = mxContext.getAccessibleRole();
+
+ // Extract the selected and focused flag.
+ XAccessibleStateSet xStateSet = mxContext.getAccessibleStateSet ();
+ if (xStateSet != null)
+ {
+ mbSelected = xStateSet.contains (AccessibleStateType.SELECTED);
+ mbFocused = xStateSet.contains (AccessibleStateType.FOCUSED);
+ }
+ }
+
+ UpdateGeometry ();
+
+ if (mxComponent != null)
+ {
+ // Note: alpha values in office 0..255 have to be mapped to
+ // 255..0 in Java
+ Color aCol = new Color (mxComponent.getForeground(), true);
+ maFgColor = new Color (aCol.getRed (),
+ aCol.getGreen (),
+ aCol.getBlue (),
+ 0xff - aCol.getAlpha ());
+ aCol = new Color (mxComponent.getBackground(), true);
+ maBgColor = new Color (aCol.getRed (),
+ aCol.getGreen (),
+ aCol.getBlue (),
+ 0xff - aCol.getAlpha ());
+ }
+ }
+
+
+
+ public void UpdateGeometry ()
+ {
+ if (mxComponent != null)
+ {
+ com.sun.star.awt.Point aLocationOnScreen =
+ mxComponent.getLocationOnScreen();
+ com.sun.star.awt.Size aSizeOnScreen = mxComponent.getSize();
+ maPosition = new Point (
+ aLocationOnScreen.X,
+ aLocationOnScreen.Y);
+ maSize = new Dimension (
+ aSizeOnScreen.Width,
+ aSizeOnScreen.Height);
+ }
+ }
+
+
+
+ /** Paint the object into the specified canvas. It is transformed
+ according to the specified offset and scale.
+ */
+ public void paint (
+ Graphics2D g,
+ boolean bShowDescription,
+ boolean bShowName,
+ boolean bShowText)
+ {
+ try{
+ // Transform the object's position and size according to the
+ // specified offset and scale.
+ Point aLocation = new Point();
+ maShape = new Rectangle2D.Double (
+ maPosition.x,
+ maPosition.y,
+ maSize.width,
+ maSize.height);
+ maTransformation = g.getTransform();
+
+ // Fill the object's bounding box with its background color if it
+ // has no children.
+ if (mxContext.getAccessibleChildCount() == 0)
+ {
+ g.setColor (maBgColor);
+ g.fill (maShape);
+ }
+
+ // Remove alpha channel from color before drawing the frame.
+ Color color = maFgColor;
+ if (maFgColor.getAlpha()<128)
+ color = new Color (maFgColor.getRed(), maFgColor.getGreen(), maFgColor.getBlue());
+ g.setColor (color);
+ g.draw (maShape);
+
+ if (mbFocused)
+ {
+ g.setColor (maFocusColor);
+ for (int x=0; x<=2; x++)
+ for (int y=0; y<=2; y++)
+ g.fill (
+ new Rectangle2D.Double (
+ maShape.x + x/2.0 * maShape.width-3,
+ maShape.y + y/2.0 * maShape.height-3,
+ 6,
+ 6));
+ }
+ if (mbSelected)
+ {
+ g.setColor (maSelectionColor);
+ for (int x=0; x<=2; x++)
+ for (int y=0; y<=2; y++)
+ g.draw (
+ new Rectangle2D.Double (
+ maShape.x + x/2.0 * maShape.width-2,
+ maShape.y + y/2.0 * maShape.height-2,
+ 4,
+ 4));
+ }
+
+ // Write the object's text OR name and description.
+ g.setColor (maFgColor);
+ if (bShowName)
+ paintName (g);
+ if (bShowDescription)
+ paintDescription (g);
+ if (bShowText)
+ paintText (g);
+ }
+ catch (Exception e)
+ { // don't care
+ }
+ }
+
+
+ public void paint_highlight (Graphics2D g)
+ {
+ if (mbHighlighted)
+ g.setColor (maHighlightColor);
+ else
+ g.setColor (maFgColor);
+ g.draw (maShape);
+ }
+
+
+
+
+ private void paintName (Graphics2D g)
+ {
+ g.drawString ("Name: " + msName,
+ (float)maShape.x+5,
+ (float)maShape.y+15);
+ }
+
+
+
+ private void paintDescription (Graphics2D g)
+ {
+ g.drawString ("Description: " + msDescription,
+ (float)maShape.x+5,
+ (float)maShape.y+35);
+ }
+
+
+
+
+ private void paintText (Graphics2D g)
+ {
+ XAccessibleText xText = null;
+ // get XAccessibleText
+ xText = (XAccessibleText)UnoRuntime.queryInterface(
+ XAccessibleText.class, mxContext);
+
+ // Draw every character in the text string.
+ if (xText != null)
+ {
+ String sText = xText.getText();
+ try
+ {
+ for(int i = 0; i < sText.length(); i++)
+ {
+ com.sun.star.awt.Rectangle aRect =
+ xText.getCharacterBounds(i);
+
+ double x = maShape.x + aRect.X;
+ double y = maShape.y + aRect.Y + aRect.Height;
+
+ g.drawString (sText.substring(i, i+1), (float)x, (float)y);
+ }
+ }
+ catch (com.sun.star.lang.IndexOutOfBoundsException e)
+ {}
+ }
+ }
+
+
+ /** Compute whether the specified point lies inside the object's
+ bounding box.
+ */
+ public boolean Contains (int x, int y)
+ {
+ Point2D aPosition = new Point2D.Double (x,y);
+ try
+ {
+ maTransformation.inverseTransform (aPosition, aPosition);
+ // System.out.println ("transformed "+x+","+y+" to "+aPosition);
+ }
+ catch (NoninvertibleTransformException aException)
+ {
+ return false;
+ }
+ return (maShape.contains (aPosition));
+ }
+
+ public void Highlight (boolean bFlag)
+ {
+ mbHighlighted = bFlag;
+ }
+
+ public boolean IsHighlighted ()
+ {
+ return mbHighlighted;
+ }
+
+ public Rectangle GetBBox ()
+ {
+ return new Rectangle (maPosition, maSize);
+ }
+
+ public Point getOrigin ()
+ {
+ return maPosition;
+ }
+
+ public Dimension GetSize ()
+ {
+ return maSize;
+ }
+
+ public int getRole ()
+ {
+ return mnRole;
+ }
+
+ public XAccessibleContext getContext ()
+ {
+ return mxContext;
+ }
+
+ public XAccessibleComponent getComponent ()
+ {
+ return mxComponent;
+ }
+
+ public String toString ()
+ {
+ return ">"+msName+", "+msDescription+" +"+maPosition.x+"+"+maPosition.y
+ +"x"+maSize.width+"x"+maSize.height+"<";
+ }
+
+ /** */
+ public void notifyEvent(com.sun.star.accessibility.AccessibleEventObject aEvent) {
+ try {
+ switch (aEvent.EventId) {
+ case AccessibleEventId.BOUNDRECT_CHANGED:
+ case AccessibleEventId.VISIBLE_DATA_CHANGED:
+ UpdateGeometry ();
+ maCanvas.repaint();
+ break;
+ default:
+ break;
+ }
+ } catch (Exception aException) {
+ System.err.println ("caught exception while updating a shape:"
+ + aException);
+ aException.printStackTrace (System.err);
+ }
+ }
+
+ /** Callback for disposing events.
+ */
+ public void disposing (com.sun.star.lang.EventObject e)
+ {
+ System.out.println ("Disposing");
+ }
+
+
+
+
+ private Canvas
+ maCanvas;
+ private javax.swing.tree.TreeNode
+ maNode;
+ private XAccessibleContext
+ mxContext;
+ private XAccessibleComponent
+ mxComponent;
+ private String
+ msDescription,
+ msName;
+ private Rectangle2D.Double maShape;
+ private AffineTransform maTransformation;
+ private Point maPosition;
+ private Dimension
+ maTransformedSize,
+ maSize;
+ private Color
+ maFgColor,
+ maBgColor;
+ private boolean
+ // Highlighting objects is an internal concept. Corresponds to selection in the tree view.
+ mbHighlighted,
+ // Set when the accessible object is selected.
+ mbSelected,
+ // Set when the accessible object is focused.
+ mbFocused;
+ private int
+ mnRole;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/canvas/Makefile b/accessibility/workben/org/openoffice/accessibility/awb/canvas/Makefile
new file mode 100644
index 000000000000..8d9688433ff9
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/canvas/Makefile
@@ -0,0 +1,15 @@
+# $Id: Makefile,v 1.1 2003/06/13 16:30:21 af Exp $
+
+all : package
+
+ROOT=../../../../..
+PACKAGE = org.openoffice.accessibility.awb.canvas
+SUBDIRS =
+include makefile.common
+
+include $(ROOT)/makefile.in
+
+
+package : $(CLASS_FILES)
+
+
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/canvas/MouseObserver.java b/accessibility/workben/org/openoffice/accessibility/awb/canvas/MouseObserver.java
new file mode 100644
index 000000000000..3e7e2807906d
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/canvas/MouseObserver.java
@@ -0,0 +1,104 @@
+package org.openoffice.accessibility.awb.canvas;
+
+import java.awt.Dimension;
+import java.awt.event.InputEvent;
+import java.awt.event.MouseEvent;
+import java.awt.event.MouseListener;
+import java.awt.event.MouseMotionListener;
+import java.util.Iterator;
+import javax.swing.tree.TreePath;
+
+
+/** Observe the mouse and highlight shapes of the canvas when clicked.
+*/
+public class MouseObserver
+ implements MouseListener,
+ MouseMotionListener
+{
+ public MouseObserver (Canvas aCanvas)
+ {
+ maCanvas = aCanvas;
+ maCanvas.addMouseListener (this);
+ maCanvas.addMouseMotionListener (this);
+ }
+
+
+ public void SetTree (javax.swing.JTree aTree)
+ {
+ maTree = aTree;
+ }
+
+ public void mouseClicked (MouseEvent e)
+ {}
+
+ public void mousePressed (MouseEvent e)
+ {
+ CanvasShape aObjectUnderMouse = FindCanvasShapeUnderMouse (e);
+ maTree.clearSelection();
+ if (aObjectUnderMouse != null)
+ {
+ TreePath aPath = aObjectUnderMouse.getNodePath();
+ if ((e.getModifiers() & InputEvent.CTRL_MASK) != 0)
+ maTree.expandPath (aPath);
+ // Selecting the entry will eventually highlight the shape.
+ maTree.setSelectionPath (aPath);
+ maTree.makeVisible (aPath);
+ }
+ }
+
+ public void mouseReleased (MouseEvent e)
+ {}
+
+ public void mouseEntered (MouseEvent e)
+ {}
+
+ public void mouseExited (MouseEvent e)
+ {}
+
+ public void mouseDragged (MouseEvent e)
+ {
+ }
+
+ public void mouseMoved (MouseEvent e)
+ {
+ if ((e.getModifiers() & InputEvent.SHIFT_MASK) != 0)
+ maCanvas.HighlightObject (FindCanvasShapeUnderMouse (e));
+ }
+
+
+ /** Search for the smallest shape that contains the mouse position.
+ */
+ protected CanvasShape FindCanvasShapeUnderMouse (MouseEvent e)
+ {
+ Dimension aSmallestSize = null;
+ Iterator maShapeIterator = maCanvas.GetShapeIterator();
+ CanvasShape aShapeUnderMouse = null;
+ while (maShapeIterator.hasNext())
+ {
+ CanvasShape aShape = (CanvasShape)maShapeIterator.next();
+ if (aShape != null)
+ if (aShape.Contains (e.getX(),e.getY()))
+ {
+ if (aShapeUnderMouse == null)
+ {
+ aSmallestSize = aShape.GetSize();
+ aShapeUnderMouse = aShape;
+ }
+ else
+ {
+ Dimension aSize = aShape.GetSize();
+ if (aSize.getWidth()<aSmallestSize.getWidth()
+ || aSize.getHeight()<aSmallestSize.getHeight())
+ {
+ aSmallestSize = aSize;
+ aShapeUnderMouse = aShape;
+ }
+ }
+ }
+ }
+ return aShapeUnderMouse;
+ }
+
+ private Canvas maCanvas;
+ private javax.swing.JTree maTree;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/canvas/ShapeContainer.java b/accessibility/workben/org/openoffice/accessibility/awb/canvas/ShapeContainer.java
new file mode 100644
index 000000000000..03ad4bf38c46
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/canvas/ShapeContainer.java
@@ -0,0 +1,237 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.canvas;
+
+import java.awt.Rectangle;
+import java.util.Iterator;
+import javax.swing.event.TreeModelListener;
+import javax.swing.event.TreeExpansionListener;
+import javax.swing.event.TreeWillExpandListener;
+import javax.swing.event.TreeExpansionEvent;
+import javax.swing.event.TreeModelEvent;
+import javax.swing.tree.TreeNode;
+
+import com.sun.star.accessibility.XAccessibleEventBroadcaster;
+
+/** Each canvas has a shape container that is responsible for maintaining
+ a collection of shapes that are displayed by the canvas.
+*/
+public class ShapeContainer
+ implements TreeModelListener,
+ TreeExpansionListener,
+ TreeWillExpandListener
+{
+ public ShapeContainer (Canvas aCanvas)
+ {
+ maShapeList = new java.util.Hashtable();
+ maBoundingBox = new Rectangle (0,0,100,100);
+ maCanvas = aCanvas;
+ maTree = null;
+ }
+
+
+
+
+ public synchronized void SetTree (javax.swing.JTree aTree)
+ {
+ if (aTree != maTree)
+ {
+ if (maTree != null)
+ {
+ maTree.getModel().removeTreeModelListener (this);
+ maTree.removeTreeExpansionListener (this);
+ maTree.removeTreeWillExpandListener (this);
+ }
+
+ Clear();
+
+ maTree = aTree;
+
+ maTree.getModel().addTreeModelListener (this);
+ maTree.addTreeExpansionListener (this);
+ maTree.addTreeWillExpandListener (this);
+ }
+ }
+
+
+
+
+ public synchronized boolean AddNode (TreeNode aNode)
+ {
+ CanvasShape aShape = (CanvasShape)maShapeList.get (aNode);
+ if (aShape == null)
+ {
+ aShape = new CanvasShape (aNode, maCanvas);
+
+ if (aNode instanceof XAccessibleEventBroadcaster)
+ ((XAccessibleEventBroadcaster) aNode).addEventListener(aShape);
+
+ // Update bounding box that includes all objects.
+ if (maShapeList.size() == 0)
+ maBoundingBox = aShape.GetBBox();
+ else
+ maBoundingBox = maBoundingBox.union (aShape.GetBBox());
+
+ maShapeList.put (aNode, aShape);
+
+ maCanvas.repaint();
+
+ return true;
+ }
+ else
+ return false;
+ }
+
+
+ /**
+ */
+ public synchronized boolean RemoveNode (TreeNode aNode)
+ {
+ CanvasShape aShape = (CanvasShape)maShapeList.get (aNode);
+ if (aShape != null)
+ {
+ if (aNode instanceof XAccessibleEventBroadcaster)
+ ((XAccessibleEventBroadcaster) aNode).removeEventListener(aShape);
+
+ maShapeList.remove (aNode);
+ maCanvas.SelectObject (null);
+ maCanvas.repaint ();
+ return true;
+ }
+ else
+ return false;
+ }
+
+
+
+
+ public synchronized void Clear ()
+ {
+ maShapeList.clear ();
+ }
+
+
+
+
+ public Iterator GetIterator ()
+ {
+ return maShapeList.values().iterator ();
+ }
+
+
+
+
+ public CanvasShape Get (TreeNode aNode)
+ {
+ if (aNode != null) {
+ return (CanvasShape)maShapeList.get (aNode);
+ }
+ return null;
+ }
+
+
+ private void PrintMessage (String aMessage, java.util.EventObject aEvent)
+ {
+ // System.out.println ("ShapeContainer: " + aMessage + ": " + aEvent);
+ }
+
+ public void treeNodesChanged (TreeModelEvent aEvent)
+ {
+ PrintMessage ("treeNodesChanged", aEvent);
+ }
+ public void treeNodesInserted (TreeModelEvent aEvent)
+ {
+ PrintMessage ("treeNodesInserted", aEvent);
+ Object[] aNewNodes = aEvent.getChildren();
+ for (int i=0; i<aNewNodes.length; i++)
+ AddNode ((TreeNode)aNewNodes[i]);
+ }
+ public void treeNodesRemoved (TreeModelEvent aEvent)
+ {
+ PrintMessage ("treeNodesRemoved", aEvent);
+ Object[] aOldNodes = aEvent.getChildren();
+ for (int i=0; i<aOldNodes.length; i++)
+ RemoveNode ((TreeNode)aOldNodes[i]);
+ }
+ public void treeStructureChanged (TreeModelEvent aEvent)
+ {
+ PrintMessage ("treeStructureChanged", aEvent);
+ TreeNode aNode = (TreeNode)aEvent.getTreePath().getLastPathComponent();
+ RemoveAllChildren(aNode);
+ AddAllChildren(aNode);
+ }
+
+ public void treeWillExpand (TreeExpansionEvent aEvent)
+ {
+ PrintMessage ("treeWillExpand", aEvent);
+ }
+ public void treeWillCollapse (TreeExpansionEvent aEvent)
+ {
+ PrintMessage ("treeWillCollapse", aEvent);
+ TreeNode aNode = (TreeNode)aEvent.getPath().getLastPathComponent();
+ RemoveAllChildren (aNode);
+ }
+ public void treeExpanded (TreeExpansionEvent aEvent)
+ {
+ PrintMessage ("treeExpanded", aEvent);
+ TreeNode aNode = (TreeNode)aEvent.getPath().getLastPathComponent();
+ AddAllChildren (aNode);
+ }
+ public void treeCollapsed (TreeExpansionEvent aEvent)
+ {
+ PrintMessage ("treeCollapsed", aEvent);
+ }
+
+ private void AddAllChildren (TreeNode aNode) {
+ java.util.Enumeration aChildList = aNode.children();
+ while (aChildList.hasMoreElements()) {
+ TreeNode aChild = (TreeNode) aChildList.nextElement();
+ if (aChild != null) {
+ AddAllChildren (aChild);
+ AddNode (aChild);
+ }
+ }
+ }
+
+ private void RemoveAllChildren (TreeNode aNode) {
+ java.util.Enumeration aChildList = aNode.children();
+ while (aChildList.hasMoreElements()) {
+ TreeNode aChild = (TreeNode) aChildList.nextElement();
+ if (aChild != null) {
+ RemoveAllChildren (aChild);
+ RemoveNode (aChild);
+ }
+ }
+ }
+
+
+ private java.util.Hashtable maShapeList;
+ private Rectangle maBoundingBox;
+ private Canvas maCanvas;
+ private javax.swing.JTree maTree;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/canvas/makefile.common b/accessibility/workben/org/openoffice/accessibility/awb/canvas/makefile.common
new file mode 100644
index 000000000000..df47f1bc8028
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/canvas/makefile.common
@@ -0,0 +1,34 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+JARFILES = jurt.jar unoil.jar ridl.jar
+JAVAFILES = \
+ CanvasShape.java \
+ Canvas.java \
+ MouseObserver.java \
+ ShapeContainer.java
+
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/canvas/makefile.mk b/accessibility/workben/org/openoffice/accessibility/awb/canvas/makefile.mk
new file mode 100644
index 000000000000..1e56c10c98b4
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/canvas/makefile.mk
@@ -0,0 +1,55 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJNAME = awb
+PRJ = ..$/..$/..$/..$/..$/..
+TARGET = awb_canvas
+PACKAGE = org$/openoffice$/accessibility$/awb$/canvas
+
+USE_JAVAVER:=TRUE
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+.IF "$(JAVAVER:s/.//)" >= "140"
+
+.INCLUDE : makefile.common
+
+JAVACLASSFILES= $(foreach,i,$(JAVAFILES) $(CLASSDIR)$/$(PACKAGE)$/$(i:b).class)
+
+#JARTARGET = $(TARGET).jar
+#JARCOMPRESS = TRUE
+JARCLASSDIRS = $(PACKAGE) org/openoffice/java/accessibility/awb
+#CUSTOMMANIFESTFILE = manifest
+.ENDIF
+
+# --- Targets ------------------------------------------------------
+
+
+.INCLUDE : target.mk
+
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/makefile.common b/accessibility/workben/org/openoffice/accessibility/awb/makefile.common
new file mode 100644
index 000000000000..0bf38a0fada2
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/makefile.common
@@ -0,0 +1,30 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+JAVAFILES = \
+ AccessibilityWorkBench.java \
+ HelpWindow.java
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/makefile.mk b/accessibility/workben/org/openoffice/accessibility/awb/makefile.mk
new file mode 100644
index 000000000000..a07d631d6f11
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/makefile.mk
@@ -0,0 +1,57 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJNAME = awb
+PRJ = ..$/..$/..$/..$/..
+TARGET = java_awb
+PACKAGE = org$/openoffice$/accessibility$/awb
+
+USE_JAVAVER:=TRUE
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+.IF "$(JAVAVER:s/.//)" >= "140"
+JARFILES = jurt.jar unoil.jar ridl.jar
+
+.INCLUDE : makefile.common
+
+JAVACLASSFILES= $(foreach,i,$(JAVAFILES) $(CLASSDIR)$/$(PACKAGE)$/$(i:b).class)
+
+JARTARGET = $(TARGET).jar
+JARCOMPRESS = TRUE
+JARCLASSDIRS = $(PACKAGE) \
+ org$/openoffice$/accessibility$/misc
+CUSTOMMANIFESTFILE = manifest
+.ENDIF
+
+# --- Targets ------------------------------------------------------
+
+
+.INCLUDE : target.mk
+
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/manifest b/accessibility/workben/org/openoffice/accessibility/awb/manifest
new file mode 100644
index 000000000000..36111c54081d
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/manifest
@@ -0,0 +1,3 @@
+Manifest-Version: 1.0
+Main-Class: org.openoffice.accessibility.awb.AccessibilityWorkBench
+Class-Path: classes.jar ridl.jar unoil.jar jurt.jar juh.jar java_uno.jar xt.jar jaxp.jar
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityModel.java b/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityModel.java
new file mode 100644
index 000000000000..159467778554
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityModel.java
@@ -0,0 +1,154 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.tree;
+
+import javax.swing.SwingUtilities;
+import javax.swing.tree.TreeNode;
+import javax.swing.tree.MutableTreeNode;
+import javax.swing.tree.DefaultMutableTreeNode;
+
+import com.sun.star.uno.UnoRuntime;
+import com.sun.star.awt.XExtendedToolkit;
+import com.sun.star.awt.XTopWindow;
+import com.sun.star.awt.XTopWindowListener;
+import com.sun.star.accessibility.AccessibleRole;
+import com.sun.star.accessibility.XAccessible;
+import com.sun.star.accessibility.XAccessibleContext;
+import com.sun.star.accessibility.XAccessibleEventBroadcaster;
+import com.sun.star.accessibility.XAccessibleEventListener;
+
+/**
+ *
+ */
+public abstract class AccessibilityModel extends javax.swing.tree.DefaultTreeModel {
+
+ protected java.util.Hashtable nodeList;
+ protected static DefaultMutableTreeNode disconnectedRootNode =
+ new DefaultMutableTreeNode("<not connected>");
+
+ /** Creates a new instance of AccessibilityModel */
+ public AccessibilityModel() {
+ super(disconnectedRootNode, false);
+ nodeList = new java.util.Hashtable();
+ }
+
+ /* Convenience method that creates a new Toolkit node from xToolkit
+ * and sets as the new root object of the tree.
+ */
+ public synchronized void setRoot(XExtendedToolkit xToolkit) {
+ if (xToolkit != null) {
+ try {
+ // remove old root node as topwindow listener
+ if (getRoot() instanceof ToolkitNode) {
+ ToolkitNode tn = (ToolkitNode) getRoot();
+ if (tn.xToolkit != null) {
+ tn.xToolkit.removeTopWindowListener(tn);
+ }
+ }
+ nodeList.clear();
+ setRoot(new ToolkitNode(xToolkit, this));
+ xToolkit.addTopWindowListener((ToolkitNode) getRoot());
+ } catch (com.sun.star.uno.RuntimeException e) {
+ // FIXME: error message !
+ }
+ }
+ }
+
+ /* Appends the new child to parent's child list */
+ public void addNodeInto(MutableTreeNode newChild, MutableTreeNode parent) {
+ int index = parent.getChildCount();
+ if (newChild != null && newChild.getParent() == parent) {
+ index -= 1;
+ }
+ insertNodeInto(newChild, parent, index);
+ }
+
+ /** Adds listener to the listener chain of node */
+ public static void addEventListener(TreeNode node, XAccessibleEventListener listener) {
+ if (node instanceof AccessibilityNode) {
+ ((AccessibilityNode) node).addEventListener(listener);
+ }
+ }
+
+ /** Removes listener from the listener chain of node */
+ public static void removeEventListener(TreeNode node, XAccessibleEventListener listener) {
+ if (node instanceof AccessibilityNode) {
+ ((AccessibilityNode) node).removeEventListener(listener);
+ }
+ }
+
+ protected abstract AccessibilityNode createWindowNode(XAccessible xAccessible,
+ XAccessibleContext xAccessibleContext);
+ protected abstract AccessibilityNode createNode(XAccessible xAccessible);
+
+ /** Adds xAccessible,node to the internal hashtable */
+ public AccessibilityNode putNode(XAccessible xAccessible, AccessibilityNode node) {
+ if (xAccessible != null) {
+ String oid = UnoRuntime.generateOid(xAccessible);
+ java.lang.ref.WeakReference ref = (java.lang.ref.WeakReference)
+ nodeList.put(oid, new java.lang.ref.WeakReference(node));
+ if (ref != null) {
+ return (AccessibilityNode) ref.get();
+ }
+ }
+ return null;
+ }
+
+ /** Returns the AccessibilityNode for xAccessible */
+ public AccessibilityNode findNode(XAccessible xAccessible) {
+ if (xAccessible != null) {
+ String oid = UnoRuntime.generateOid(xAccessible);
+ java.lang.ref.WeakReference ref =
+ (java.lang.ref.WeakReference) nodeList.get(oid);
+ if (ref != null) {
+ return (AccessibilityNode) ref.get();
+ }
+ }
+ return null;
+ }
+
+ /** Removes the AccessibilityNode for xAccessible from the internal hashtable */
+ public AccessibilityNode removeNode(XAccessible xAccessible) {
+ if (xAccessible != null) {
+ String oid = UnoRuntime.generateOid(xAccessible);
+ java.lang.ref.WeakReference ref =
+ (java.lang.ref.WeakReference) nodeList.remove(oid);
+ if (ref != null) {
+ return (AccessibilityNode) ref.get();
+ }
+ }
+ return null;
+ }
+
+ public AccessibilityNode removeNode(Object o) {
+ if (o instanceof XAccessible) {
+ return removeNode((XAccessible) o);
+ }
+ return null;
+ }
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityNode.java b/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityNode.java
new file mode 100644
index 000000000000..81a499aabf0d
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityNode.java
@@ -0,0 +1,163 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.tree;
+
+import org.openoffice.accessibility.misc.AccessibleEventMulticaster;
+
+import javax.swing.tree.DefaultMutableTreeNode;
+import javax.swing.SwingUtilities;
+
+import com.sun.star.accessibility.AccessibleEventId;
+import com.sun.star.accessibility.AccessibleEventObject;
+import com.sun.star.accessibility.XAccessible;
+import com.sun.star.accessibility.XAccessibleContext;
+import com.sun.star.accessibility.XAccessibleEventBroadcaster;
+import com.sun.star.accessibility.XAccessibleEventListener;
+
+import com.sun.star.uno.UnoRuntime;
+
+class AccessibilityNode extends DefaultMutableTreeNode implements XAccessible,
+ XAccessibleEventListener, XAccessibleEventBroadcaster {
+
+ protected AccessibilityModel treeModel;
+ protected XAccessibleContext unoAccessibleContext;
+
+ private XAccessibleEventListener listener;
+
+ public AccessibilityNode(AccessibilityModel treeModel) {
+ this.treeModel = treeModel;
+ }
+
+ protected void finalize() throws java.lang.Throwable {
+ if (userObject != null) {
+ treeModel.removeNode(userObject);
+ }
+ }
+
+ /** Sets the XAccessibleContext object of this node */
+ public void setAccessibleContext(XAccessibleContext xAccessibleContext) {
+ unoAccessibleContext = xAccessibleContext;
+ }
+
+ /** Returns the XAccessibleContext object of this node */
+ public XAccessibleContext getAccessibleContext() {
+ return unoAccessibleContext;
+ }
+
+ /** Attaches or Detaches the itself as listener to unoAccessibleContext */
+ protected void setAttached(boolean attach) {
+ XAccessibleContext xAccessibleContext = unoAccessibleContext;
+ if (xAccessibleContext != null) {
+ try {
+ XAccessibleEventBroadcaster xAccessibleEventBroadcaster =
+ UnoRuntime.queryInterface( XAccessibleEventBroadcaster.class, xAccessibleContext );
+ if (xAccessibleEventBroadcaster != null) {
+ if (attach) {
+ xAccessibleEventBroadcaster.addEventListener(this);
+ } else {
+ xAccessibleEventBroadcaster.removeEventListener(this);
+ }
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ // FIXME: error message !
+ }
+ }
+ }
+
+ public void disposing(com.sun.star.lang.EventObject eventObject) {
+ XAccessibleEventListener localListener = this.listener;
+ if (localListener != null) {
+ localListener.disposing(eventObject);
+ }
+
+ treeModel.removeNode(userObject);
+ userObject = null;
+ unoAccessibleContext = null;
+ // FIXME: mark the object as being disposed in the tree view !
+ }
+
+ protected void handleChildRemoved(XAccessible xAccessible) {
+ final AccessibilityNode node = treeModel.findNode(xAccessible);
+ if (node != null) {
+ SwingUtilities.invokeLater(new java.lang.Runnable() {
+ public void run() {
+ treeModel.removeNodeFromParent(node);
+ }
+ });
+ }
+ }
+
+ protected void handleChildAdded(XAccessible xAccessible) {
+ final AccessibilityNode parent = this;
+ final AccessibilityNode node = treeModel.createNode(xAccessible);
+ if (node != null) {
+ SwingUtilities.invokeLater(new java.lang.Runnable() {
+ public void run() {
+ try {
+ XAccessibleContext xAC = node.getAccessibleContext();
+ if (xAC != null) {
+ treeModel.insertNodeInto(node, parent,
+ xAC.getAccessibleIndexInParent());
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ // FIXME: output
+ }
+ }
+ });
+ }
+ }
+
+ public void notifyEvent(AccessibleEventObject accessibleEventObject) {
+ if (accessibleEventObject.EventId == AccessibleEventId.CHILD) {
+ XAccessible xAccessible = UnoRuntime.queryInterface( XAccessible.class, accessibleEventObject.OldValue );
+ if (xAccessible != null) {
+ handleChildRemoved(xAccessible);
+ }
+
+ xAccessible = UnoRuntime.queryInterface( XAccessible.class, accessibleEventObject.NewValue );
+ if (xAccessible != null) {
+ handleChildAdded(xAccessible);
+ }
+ }
+
+ XAccessibleEventListener localListener = this.listener;
+ if (localListener != null) {
+ localListener.notifyEvent(accessibleEventObject);
+ }
+ }
+
+ public synchronized void addEventListener(com.sun.star.accessibility.XAccessibleEventListener xAccessibleEventListener) {
+ listener = AccessibleEventMulticaster.add(listener, xAccessibleEventListener);
+ }
+
+ public synchronized void removeEventListener(com.sun.star.accessibility.XAccessibleEventListener xAccessibleEventListener) {
+ listener = AccessibleEventMulticaster.remove(listener, xAccessibleEventListener);
+ }
+}
+
+
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityTree.java b/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityTree.java
new file mode 100644
index 000000000000..e485c993706a
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityTree.java
@@ -0,0 +1,89 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.tree;
+
+import org.openoffice.accessibility.misc.NameProvider;
+
+import javax.swing.tree.DefaultTreeModel;
+import javax.swing.tree.DefaultMutableTreeNode;
+
+import com.sun.star.awt.XExtendedToolkit;
+import com.sun.star.accessibility.XAccessible;
+import com.sun.star.accessibility.XAccessibleContext;
+
+/**
+ *
+ */
+public class AccessibilityTree extends javax.swing.JTree {
+
+ /** Creates a new instance of AccessibilityTree */
+ public AccessibilityTree(javax.swing.tree.TreeModel model) {
+ super(model);
+ // always show handles to indicate expandable / collapsable
+ showsRootHandles = true;
+ }
+
+ public void setToolkit(XExtendedToolkit xToolkit) {
+ AccessibilityModel model = (AccessibilityModel) getModel();
+ if (model != null) {
+ // hide the root node when connected
+ setRootVisible(xToolkit == null);
+ // update the root node
+ model.setRoot(xToolkit);
+ model.reload();
+ }
+ }
+
+ public String convertValueToText(Object value, boolean selected,
+ boolean expanded, boolean leaf, int row, boolean hasFocus) {
+
+ if (value instanceof DefaultMutableTreeNode) {
+ DefaultMutableTreeNode node = (DefaultMutableTreeNode) value;
+
+ Object userObject = node.getUserObject();
+ if (userObject != null && userObject instanceof XAccessible) {
+ XAccessible xAccessible = (XAccessible) userObject;
+ try {
+ XAccessibleContext xAC = xAccessible.getAccessibleContext();
+ if (xAC != null) {
+ String name = xAC.getAccessibleName();
+ if (name.length() == 0) {
+ name = new String ("<no name>");
+ }
+ value = name + " / " + NameProvider.getRoleName(xAC.getAccessibleRole());
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ value = "???";
+ }
+ }
+ }
+
+ return super.convertValueToText(value, selected, expanded, leaf, row, hasFocus);
+ }
+
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityTreeModel.java b/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityTreeModel.java
new file mode 100644
index 000000000000..6069c8f5f5ee
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityTreeModel.java
@@ -0,0 +1,217 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.tree;
+
+import com.sun.star.accessibility.XAccessible;
+import com.sun.star.awt.XExtendedToolkit;
+import com.sun.star.lang.DisposedException;
+import com.sun.star.lang.IndexOutOfBoundsException;
+
+import org.openoffice.accessibility.misc.OfficeConnection;
+import org.openoffice.accessibility.awb.event.EventQueue;
+
+import javax.swing.tree.DefaultTreeModel;
+import javax.swing.tree.TreeNode;
+
+
+public class AccessibilityTreeModel
+ extends DefaultTreeModel
+{
+ public AccessibilityTreeModel ()
+ {
+ super (null);
+ setAsksAllowsChildren (false);
+
+ SetRootNode();
+ }
+
+
+
+ /** Release all resources.
+ */
+ synchronized public void Dispose ()
+ {
+ Clear ();
+ }
+
+
+
+ /** Calls to this method are dispatched to the given node but are
+ observed for exceptions.
+ */
+ synchronized public boolean isLeaf (Object aObject)
+ {
+ boolean bIsLeaf = true;
+
+ if (aObject != null)
+ {
+ AccessibilityNode aNode = (AccessibilityNode)aObject;
+ try
+ {
+ bIsLeaf = aNode.isLeaf();
+ }
+ catch (DisposedException aException)
+ {
+ System.out.println ("node is disposed. removing it");
+ /* TreeNode aParent = aNode.GetParent();
+ int nIndexInParent = aParent.getIndex (aNode);
+ aNode.removeFromParent ();
+ System.out.println ("" + aParent + " # " + aNode + " # "+ nIndexInParent);
+ nodesWereRemoved (
+ aParent, new int[]{nIndexInParent}, new
+ Object[]{aNode});
+ */
+ }
+ catch (Exception aException)
+ {
+ System.err.println ("caught exception in AccessibilityTreeModel.isLeaf():"
+ + aException);
+ aException.printStackTrace (System.err);
+ }
+ }
+
+ return bIsLeaf;
+ }
+
+
+
+
+ synchronized public int getChildCount (Object aObject)
+ {
+ AccessibilityNode aNode = (AccessibilityNode)aObject;
+ return aNode.getChildCount();
+ }
+
+
+
+
+ /** Return the requested child of aParent. If that child is not yet
+ known to the parent then try to create it.
+ */
+ synchronized public Object getChild (Object aParent, final int nIndex)
+ {
+ AccessibilityNode aChild = null;
+
+ final AccessibilityNode aParentNode = (AccessibilityNode)aParent;
+
+ // Try to get an existing child from the super class object.
+ aChild = aParentNode.GetChildNoCreate (nIndex);
+
+ // When the requested child does not yet exist and this node is not a
+ // special node then create a new node.
+ if (aChild == null)
+ {
+ aChild = aParentNode.CreateChild (nIndex);
+ aParentNode.SetChild ((AccessibilityNode)aChild, nIndex);
+ /* EventQueue.Instance().AddEvent (new Runnable() { public void run() {
+ AccessibilityTreeModel.this.nodeWasInserted (
+ aParentNode, nIndex);
+ }});
+ */ }
+
+ return aChild;
+ }
+
+
+ synchronized public void nodeWasInserted (AccessibilityNode aParent, int nIndex)
+ {
+ nodesWereInserted (aParent, new int[]{nIndex});
+ nodeStructureChanged (aParent);
+
+ }
+
+
+
+
+ /** Clear the tree so that afterwards it has only the root node.
+ */
+ public void Clear ()
+ {
+ AccessibilityNode aRoot = (AccessibilityNode)getRoot();
+ aRoot.RemoveAllChildren();
+ SetRootNode();
+ nodeStructureChanged (aRoot);
+ }
+
+
+
+
+ private void SetRootNode ()
+ {
+ OfficeConnection aConnection = OfficeConnection.Instance();
+ AccessibilityNode aRoot;
+ if (aConnection!=null && aConnection.IsValid())
+ aRoot = new AccessibilityNode ("<connected>");
+ else
+ aRoot = new AccessibilityNode ("<not connected>");
+ setRoot (aRoot);
+ }
+
+
+
+
+ /** Add a new child to the root node.
+ */
+ public synchronized void AddTopLevelNode (AccessibilityNode aNode)
+ {
+ if (aNode != null)
+ {
+ if ( ! OfficeConnection.Instance().IsValid())
+ {
+ setRoot (null);
+ }
+
+ AccessibilityNode aRoot = (AccessibilityNode)getRoot();
+ if (aRoot == null)
+ {
+ aRoot = new AccessibilityNode ("<connected>");
+ setRoot (aRoot);
+ }
+
+ aNode.SetParent (aRoot);
+ aRoot.Append (aNode);
+ nodesWereInserted (aRoot, new int[]{aRoot.getIndex (aNode)});
+ }
+ }
+
+
+
+
+ /** Remove a node that is a direct child of the root.
+ */
+ public synchronized void RemoveTopLevelNode (AccessibilityNode aNode)
+ {
+ AccessibilityNode aRoot = (AccessibilityNode)getRoot();
+ if (aRoot != null)
+ {
+ int nIndex = aRoot.getIndex (aNode);
+ aRoot.Remove (aNode);
+ nodesWereRemoved (aRoot, new int[]{nIndex}, new Object[]{aNode});
+ }
+ }
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/tree/DynamicAccessibilityModel.java b/accessibility/workben/org/openoffice/accessibility/awb/tree/DynamicAccessibilityModel.java
new file mode 100644
index 000000000000..f2b4c6f0e97f
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/tree/DynamicAccessibilityModel.java
@@ -0,0 +1,123 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.tree;
+
+import javax.swing.tree.TreeNode;
+import javax.swing.tree.MutableTreeNode;
+import javax.swing.tree.DefaultMutableTreeNode;
+import javax.swing.event.TreeExpansionListener;
+import javax.swing.event.TreeWillExpandListener;
+
+import com.sun.star.accessibility.AccessibleRole;
+import com.sun.star.accessibility.XAccessible;
+import com.sun.star.accessibility.XAccessibleContext;
+
+/**
+ *
+ */
+public class DynamicAccessibilityModel extends AccessibilityModel implements TreeExpansionListener, TreeWillExpandListener {
+
+ /* Creates a AccessibilityNode object for a window */
+ protected AccessibilityNode createWindowNode(XAccessible xAccessible,
+ XAccessibleContext xAccessibleContext) {
+ if (xAccessible != null) {
+ // Some objects inherit XAccessible, but should not appear in
+ // the hierarchy as toplevels (like sub-menus), so they don't
+ // return an accessible context.
+ if (xAccessibleContext != null) {
+ AccessibilityNode node = new AccessibilityNode(this);
+ node.setUserObject(xAccessible);
+ node.setAccessibleContext(xAccessibleContext);
+ putNode(xAccessible, node);
+ return node;
+ }
+ }
+ return null;
+ }
+
+ /* Creates a DynamicAccessibilityNode object */
+ protected AccessibilityNode createNode(XAccessible xAccessible) {
+ if (xAccessible != null) {
+ try {
+ // Some objects inherit XAccessible, but should not appear in
+ // the hierarchy as toplevels (like sub-menus), so they don't
+ // return an accessible context.
+ XAccessibleContext xAccessibleContext = xAccessible.getAccessibleContext();
+ if (xAccessibleContext != null) {
+ AccessibilityNode node = new DynamicAccessibilityNode(this);
+ node.setUserObject(xAccessible);
+ node.setAccessibleContext(xAccessibleContext);
+ putNode(xAccessible, node);
+ return node;
+ }
+ } catch (com.sun.star.uno.RuntimeException e) {
+ }
+ }
+ return null;
+ }
+
+ public void treeCollapsed(javax.swing.event.TreeExpansionEvent treeExpansionEvent) {
+ TreeNode node = (TreeNode) treeExpansionEvent.getPath().getLastPathComponent();
+ if (node instanceof DynamicAccessibilityNode) {
+ DynamicAccessibilityNode dynode = (DynamicAccessibilityNode) node;
+ dynode.clear();
+ }
+ }
+
+ public void treeExpanded(javax.swing.event.TreeExpansionEvent treeExpansionEvent) {
+ TreeNode node = (TreeNode) treeExpansionEvent.getPath().getLastPathComponent();
+ if (node instanceof AccessibilityNode) {
+ // Calling oneway methods from an UNO thread may cause
+ // deadlocks, so adding the listeners here.
+ for (java.util.Enumeration e = node.children(); e.hasMoreElements(); ) {
+ ((AccessibilityNode) e.nextElement()).setAttached(true);
+ }
+ }
+ }
+
+ public void treeWillCollapse(javax.swing.event.TreeExpansionEvent treeExpansionEvent)
+ throws javax.swing.tree.ExpandVetoException {
+ TreeNode node = (TreeNode) treeExpansionEvent.getPath().getLastPathComponent();
+ if (node instanceof AccessibilityNode) {
+ // Calling oneway methods from an UNO thread may cause
+ // deadlocks, so adding the listeners here.
+ for (java.util.Enumeration e = node.children(); e.hasMoreElements(); ) {
+ ((AccessibilityNode) e.nextElement()).setAttached(false);
+ }
+ }
+ }
+
+ public void treeWillExpand(javax.swing.event.TreeExpansionEvent treeExpansionEvent)
+ throws javax.swing.tree.ExpandVetoException {
+ TreeNode node = (TreeNode) treeExpansionEvent.getPath().getLastPathComponent();
+ if (node instanceof DynamicAccessibilityNode) {
+ DynamicAccessibilityNode dynode = (DynamicAccessibilityNode) node;
+ dynode.populate();
+ }
+ }
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/tree/DynamicAccessibilityNode.java b/accessibility/workben/org/openoffice/accessibility/awb/tree/DynamicAccessibilityNode.java
new file mode 100644
index 000000000000..a982ad71c4d5
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/tree/DynamicAccessibilityNode.java
@@ -0,0 +1,92 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.tree;
+
+import com.sun.star.uno.UnoRuntime;
+import com.sun.star.accessibility.XAccessible;
+import com.sun.star.accessibility.XAccessibleContext;
+
+/*
+ * This class is dynamic in the way that it does not contain any children
+ * until the node is going to be expanded. It also releases all children
+ * as soon as the node is collapsed again.
+ */
+class DynamicAccessibilityNode extends AccessibilityNode {
+
+ public DynamicAccessibilityNode(AccessibilityModel treeModel) {
+ super(treeModel);
+ }
+
+ // Populates the child list. Called by AccessibilityMode.treeWillExpand().
+ protected void populate() {
+ try {
+ XAccessibleContext xAC = getAccessibleContext();
+ if (xAC != null) {
+ int n = xAC.getAccessibleChildCount();
+ for (int i=0; i<n; i++) {
+ XAccessible xAccessible = xAC.getAccessibleChild(i);
+ AccessibilityNode node = treeModel.findNode(xAccessible);
+ if (node == null) {
+ node = treeModel.createNode(xAccessible);
+ }
+ if (node != null) {
+ // NOTE: do not send any tree notifications here !
+ add(node);
+ }
+ }
+ }
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ // This should never happen since we previously checked the child
+ // count.
+ // FIXME: error message
+ } catch (com.sun.star.uno.RuntimeException e) {
+ // FIXME: error message
+ }
+ }
+
+ // Clears the child list. Called by AccessibilityModel.treeCollapsed().
+ protected void clear() {
+ removeAllChildren();
+ }
+
+ /* This is called whenever the node is painted, no matter if collapsed
+ * or expanded. Making this a "life" value seems to be appropriate.
+ */
+ public boolean isLeaf() {
+ try {
+ XAccessibleContext xAC = getAccessibleContext();
+ if (xAC != null) {
+ return xAC.getAccessibleChildCount() == 0;
+ }
+ return true;
+ } catch (com.sun.star.uno.RuntimeException e) {
+ return true;
+ }
+ }
+
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/tree/Makefile b/accessibility/workben/org/openoffice/accessibility/awb/tree/Makefile
new file mode 100644
index 000000000000..579b8822ce76
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/tree/Makefile
@@ -0,0 +1,40 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+all : package
+
+ROOT=../../../../..
+PACKAGE = org.openoffice.accessibility.awb.tree
+SUBDIRS =
+include makefile.common
+
+include $(ROOT)/makefile.in
+
+
+package : $(CLASS_FILES)
+
+
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/tree/ToolkitNode.java b/accessibility/workben/org/openoffice/accessibility/awb/tree/ToolkitNode.java
new file mode 100644
index 000000000000..8eaa9dab6c02
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/tree/ToolkitNode.java
@@ -0,0 +1,215 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.tree;
+
+import com.sun.star.accessibility.AccessibleRole;
+import com.sun.star.accessibility.XAccessible;
+import com.sun.star.accessibility.XAccessibleContext;
+
+import com.sun.star.awt.XExtendedToolkit;
+import com.sun.star.awt.XTopWindow;
+
+import com.sun.star.uno.UnoRuntime;
+
+import javax.swing.SwingUtilities;
+import javax.swing.tree.DefaultMutableTreeNode;
+
+/**
+ *
+ */
+public class ToolkitNode extends DefaultMutableTreeNode
+ implements com.sun.star.awt.XTopWindowListener {
+
+ protected XExtendedToolkit xToolkit;
+
+ private AccessibilityModel treeModel;
+
+ /** Creates a new instance of TopWindowListener */
+ public ToolkitNode(XExtendedToolkit xToolkit, AccessibilityModel treeModel) {
+ super("<connected>");
+ this.xToolkit = xToolkit;
+ this.treeModel = treeModel;
+
+ // Initially fill the child list
+ try {
+ for (int i=0,j=xToolkit.getTopWindowCount(); i<j; i++) {
+ XTopWindow xTopWindow = xToolkit.getTopWindow(i);
+ if (xTopWindow != null) {
+ AccessibilityNode an = getTopWindowNode(xTopWindow);
+ if (an != null) {
+ add(an);
+ // Calling oneway methods from an UNO thread may cause
+ // deadlocks, so adding the listeners here.
+ an.setAttached(true);
+ }
+ }
+ }
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+ // This should never happen since we properly check the count
+ // before - anyway returning what we got so far.
+ }
+ }
+
+ /** Returns an AccessibilityNode if xAccessible has a valid toplevel */
+ private AccessibilityNode getTopWindowNode(XAccessible xAccessible) {
+ XAccessibleContext xAC = xAccessible.getAccessibleContext();
+ if (xAC != null) {
+ short role = xAC.getAccessibleRole();
+ if ((role == AccessibleRole.FRAME) || (role == AccessibleRole.DIALOG) || (role == AccessibleRole.WINDOW)) {
+ return treeModel.createWindowNode(xAccessible, xAC);
+ }
+ }
+ return null;
+ }
+
+ /** Returns an AccessibilityNode if xAccessible has a valid toplevel */
+ private AccessibilityNode getTopWindowNode(XAccessible xAccessible, XAccessibleContext xAC) {
+ if (xAC != null) {
+ short role = xAC.getAccessibleRole();
+ if ((role == AccessibleRole.FRAME) || (role == AccessibleRole.DIALOG) || (role == AccessibleRole.WINDOW)) {
+ AccessibilityNode parent = treeModel.createWindowNode(xAccessible, xAC);
+ if (parent != null) {
+ try {
+ int n = xAC.getAccessibleChildCount();
+ for (int i=0; i<n; i++) {
+ AccessibilityNode child = treeModel.createNode(xAC.getAccessibleChild(i));
+ if (child != null) {
+ parent.add(child);
+ }
+ }
+ } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
+
+ }
+ }
+ return parent;
+ }
+ }
+ return null;
+ }
+
+ /** Returns the XAccessible interface corresponding to the toplevel window */
+ private AccessibilityNode getTopWindowNode(XTopWindow w) {
+ XAccessible xAccessible = (XAccessible)
+ UnoRuntime.queryInterface(XAccessible.class, w);
+ if (xAccessible != null) {
+ // XTopWindows usually have an accessible parent, which is the
+ // native container window ..
+ XAccessibleContext xAC = xAccessible.getAccessibleContext();
+ if (xAC != null) {
+ XAccessible xParent = xAC.getAccessibleParent();
+ if (xParent != null) {
+ AccessibilityNode parent = getTopWindowNode(xParent);
+ AccessibilityNode child = treeModel.createNode(xAccessible);
+ if (parent != null && child != null) {
+ parent.add(child);
+ }
+ return parent;
+ } else {
+ return getTopWindowNode(xAccessible, xAC);
+ }
+ }
+ }
+ return null;
+ }
+
+ public void disposing(com.sun.star.lang.EventObject eventObject) {
+ // FIXME : message
+ // prevent setRoot from removing this as event listener
+ xToolkit = null;
+ treeModel.setRoot(treeModel.disconnectedRootNode);
+ }
+
+ public void windowActivated(com.sun.star.lang.EventObject eventObject) {
+ }
+
+ public void windowClosed(com.sun.star.lang.EventObject eventObject) {
+ XAccessible xAccessible = (XAccessible) UnoRuntime.queryInterface(
+ XAccessible.class, eventObject.Source);
+ if (xAccessible != null) {
+ AccessibilityNode node = treeModel.findNode(xAccessible);
+
+ // The object implementing XTopWindow is often not the toplevel
+ // accessible object.
+ if (node != null && node.getParent() != this) {
+ node = (AccessibilityNode) node.getParent();
+ }
+
+ if (node != null) {
+ final AccessibilityNode an = node;
+ Runnable removeRun = new Runnable() {
+ public void run() {
+ try {
+ treeModel.removeNodeFromParent(an);
+ // Calling oneway methods from an UNO thread may cause
+ // deadlocks, so removing the listeners here.
+ an.setAttached(false);
+ } catch (IllegalArgumentException e) {
+ // for some toplevel we get more than one event -
+ // ignoring
+ }
+ }
+ };
+ SwingUtilities.invokeLater(removeRun);
+ }
+ }
+ }
+
+ public void windowClosing(com.sun.star.lang.EventObject eventObject) {
+ }
+
+ public void windowDeactivated(com.sun.star.lang.EventObject eventObject) {
+ }
+
+ public void windowMinimized(com.sun.star.lang.EventObject eventObject) {
+ }
+
+ public void windowNormalized(com.sun.star.lang.EventObject eventObject) {
+ }
+
+ public void windowOpened(com.sun.star.lang.EventObject eventObject) {
+ final XTopWindow xTopWindow = (XTopWindow) UnoRuntime.queryInterface(
+ XTopWindow.class, eventObject.Source);
+ if (xTopWindow != null) {
+ final ToolkitNode tn = this;
+ Runnable addNodeRun = new Runnable() {
+ public void run() {
+ // Note: UNO does not allow to make synchronous callbacks
+ // to oneway calls, so we have to fetch the node here.
+ AccessibilityNode an = getTopWindowNode(xTopWindow);
+ if (an != null) {
+ treeModel.addNodeInto(an, tn);
+ // Calling oneway methods from an UNO thread may cause
+ // deadlocks, so adding the listeners here.
+ an.setAttached(true);
+ }
+ }
+ };
+ SwingUtilities.invokeLater(addNodeRun);
+ }
+ }
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/tree/makefile.common b/accessibility/workben/org/openoffice/accessibility/awb/tree/makefile.common
new file mode 100644
index 000000000000..e44be51360e7
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/tree/makefile.common
@@ -0,0 +1,35 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+JARFILES = jurt.jar unoil.jar ridl.jar
+JAVAFILES = \
+ AccessibilityModel.java \
+ AccessibilityNode.java \
+ AccessibilityTree.java \
+ DynamicAccessibilityModel.java \
+ DynamicAccessibilityNode.java \
+ ToolkitNode.java
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/tree/makefile.mk b/accessibility/workben/org/openoffice/accessibility/awb/tree/makefile.mk
new file mode 100644
index 000000000000..0135ca9d6422
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/tree/makefile.mk
@@ -0,0 +1,51 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJNAME = awb
+PRJ = ..$/..$/..$/..$/..$/..
+TARGET = java_tree
+PACKAGE = org$/openoffice$/accessibility$/awb$/tree
+
+USE_JAVAVER:=TRUE
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+.IF "$(JAVAVER:s/.//)" >= "140"
+
+.INCLUDE : makefile.common
+
+JAVACLASSFILES= $(foreach,i,$(JAVAFILES) $(CLASSDIR)$/$(PACKAGE)$/$(i:b).class)
+
+.ENDIF
+
+# --- Targets ------------------------------------------------------
+
+
+.INCLUDE : target.mk
+
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/ComponentView.java b/accessibility/workben/org/openoffice/accessibility/awb/view/ComponentView.java
new file mode 100644
index 000000000000..d4c0e102b7a9
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/ComponentView.java
@@ -0,0 +1,195 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.view;
+
+import java.awt.Color;
+import java.awt.Dimension;
+
+import java.awt.event.ActionListener;
+import java.awt.event.ActionEvent;
+
+import javax.swing.JLabel;
+
+import com.sun.star.accessibility.AccessibleEventId;
+import com.sun.star.accessibility.AccessibleEventObject;
+import com.sun.star.accessibility.XAccessible;
+import com.sun.star.accessibility.XAccessibleComponent;
+import com.sun.star.accessibility.XAccessibleContext;
+import com.sun.star.uno.UnoRuntime;
+
+import org.openoffice.accessibility.misc.NameProvider;
+
+/** The <type>ContextView</type> class displays information accessible over
+ the <type>XAccessibleContext</type> interface. This includes name,
+ description, and role.
+*/
+public class ComponentView
+ extends ObjectView
+{
+ static public ObjectView Create (
+ ObjectViewContainer aContainer,
+ XAccessibleContext xContext)
+ {
+ if (UnoRuntime.queryInterface(
+ XAccessibleComponent.class, xContext) != null)
+ return new ComponentView (aContainer);
+ else
+ return null;
+ }
+
+ public ComponentView (ObjectViewContainer aContainer)
+ {
+ super (aContainer);
+
+ ViewGridLayout aLayout = new ViewGridLayout (this);
+
+ maRelativeLocationLabel = aLayout.AddLabeledEntry ("Relative Location: ");
+ maAbsoluteLocationLabel = aLayout.AddLabeledEntry ("Location on Screen: ");
+ maSizeLabel = aLayout.AddLabeledEntry ("Size");
+ maBoundingBoxLabel = aLayout.AddLabeledEntry ("Bounding Box: ");
+ maConsistencyLabel = aLayout.AddLabeledEntry ("Consistent: ");
+ maForegroundColorLabel = aLayout.AddLabeledEntry ("Foreground Color: ");
+ maBackgroundColorLabel = aLayout.AddLabeledEntry ("Background Color: ");
+ }
+
+
+ public void SetObject (XAccessibleContext xContext)
+ {
+ mxComponent = (XAccessibleComponent)UnoRuntime.queryInterface(
+ XAccessibleComponent.class, xContext);
+ super.SetObject (xContext);
+ }
+
+ public void Update ()
+ {
+ if (mxContext == null)
+ {
+ maRelativeLocationLabel.setText ("<null object>");
+ maAbsoluteLocationLabel.setText ("<null object>");
+ maSizeLabel.setText ("<null object>");
+ maBoundingBoxLabel.setText ("<null object>");
+ maConsistencyLabel.setText ("<null object>");
+ maForegroundColorLabel.setText ("<null object>");
+ maBackgroundColorLabel.setText ("<null object>");
+ }
+ else
+ {
+ com.sun.star.awt.Point aLocation = mxComponent.getLocation();
+ maRelativeLocationLabel.setText (
+ aLocation.X + ", " + aLocation.Y);
+ com.sun.star.awt.Point aLocationOnScreen =
+ mxComponent.getLocationOnScreen();
+ maAbsoluteLocationLabel.setText (
+ aLocationOnScreen.X + ", " + aLocationOnScreen.Y);
+ com.sun.star.awt.Size aSize = mxComponent.getSize();
+ maSizeLabel.setText (
+ aSize.Width + ", " + aSize.Height);
+ com.sun.star.awt.Rectangle aBBox = mxComponent.getBounds();
+ maBoundingBoxLabel.setText (
+ aBBox.X + ", " + aBBox.Y + ","
+ + aBBox.Width + ", " + aBBox.Height);
+ int nColor = mxComponent.getForeground();
+ maForegroundColorLabel.setText (
+ "R"+ (nColor>>16&0xff)
+ + "G" + (nColor>>8&0xff)
+ + "B" + (nColor>>0&0xff)
+ + "A" + (nColor>>24&0xff));
+ nColor = mxComponent.getBackground();
+ maBackgroundColorLabel.setText (
+ "R"+ (nColor>>16&0xff)
+ + "G" + (nColor>>8&0xff)
+ + "B" + (nColor>>0&0xff)
+ + "A" + (nColor>>24&0xff));
+
+ // Check consistency of coordinates.
+ String sConsistency = new String ();
+ if (aBBox.X!=aLocation.X || aBBox.Y!=aLocation.Y)
+ sConsistency += (sConsistency.length()!=0?", ":"") +
+ "Bounding box conflicts with relative location";
+ if (aBBox.Width!=aSize.Width || aBBox.Height!=aSize.Height)
+ sConsistency += (sConsistency.length()!=0?", ":"") +
+ "Bounding box conflicts with size";
+ XAccessible xParent = mxContext.getAccessibleParent();
+ XAccessibleComponent xParentComponent =
+ (XAccessibleComponent)UnoRuntime.queryInterface(
+ XAccessibleComponent.class, xParent);
+ if (xParentComponent == null)
+ {
+ if (aLocation.X != aLocationOnScreen.X
+ || aLocation.Y != aLocationOnScreen.Y)
+ sConsistency += (sConsistency.length()!=0?", ":"") +
+ "location on screen does not equal "
+ + "relative location without parent";
+ }
+ else
+ {
+ com.sun.star.awt.Point aParentLocationOnScreen =
+ xParentComponent.getLocationOnScreen();
+ if (aLocation.X+aParentLocationOnScreen.X
+ != aLocationOnScreen.X
+ || aLocation.Y+aParentLocationOnScreen.Y
+ != aLocationOnScreen.Y)
+ sConsistency += (sConsistency.length()!=0?", ":"") +
+ "location on screen does not match "
+ + "relative location";
+ }
+ if (sConsistency.length() == 0)
+ sConsistency += "yes";
+ else
+ maConsistencyLabel.setBackground (GetContainer().GetErrorColor());
+ maConsistencyLabel.setText (sConsistency);
+ }
+ }
+
+ public String GetTitle ()
+ {
+ return ("Component");
+ }
+
+ /** Listen for changes regarding displayed values.
+ */
+ public void notifyEvent (AccessibleEventObject aEvent)
+ {
+ switch (aEvent.EventId)
+ {
+ case AccessibleEventId.BOUNDRECT_CHANGED :
+ case AccessibleEventId.VISIBLE_DATA_CHANGED :
+ Update ();
+ }
+ }
+
+ private XAccessibleComponent mxComponent;
+ private JLabel
+ maRelativeLocationLabel,
+ maAbsoluteLocationLabel,
+ maSizeLabel,
+ maBoundingBoxLabel,
+ maConsistencyLabel,
+ maForegroundColorLabel,
+ maBackgroundColorLabel;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/ContextView.java b/accessibility/workben/org/openoffice/accessibility/awb/view/ContextView.java
new file mode 100644
index 000000000000..a8588cd18ca6
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/ContextView.java
@@ -0,0 +1,115 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.view;
+
+import java.awt.Color;
+import java.awt.Dimension;
+
+import java.awt.event.ActionListener;
+import java.awt.event.ActionEvent;
+
+import javax.swing.JLabel;
+import javax.swing.JTextField;
+
+import com.sun.star.accessibility.AccessibleEventId;
+import com.sun.star.accessibility.AccessibleEventObject;
+import com.sun.star.accessibility.XAccessibleContext;
+
+import org.openoffice.accessibility.misc.NameProvider;
+
+/** The <type>ContextView</type> class displays information accessible over
+ the <type>XAccessibleContext</type> interface. This includes name,
+ description, and role.
+*/
+public class ContextView
+ extends ObjectView
+ implements ActionListener
+{
+ static public ObjectView Create (
+ ObjectViewContainer aContainer,
+ XAccessibleContext xContext)
+ {
+ if (xContext != null)
+ return new ContextView (aContainer);
+ else
+ return null;
+ }
+
+ public ContextView (ObjectViewContainer aContainer)
+ {
+ super (aContainer);
+
+ ViewGridLayout aLayout = new ViewGridLayout (this);
+ maNameLabel = aLayout.AddLabeledString ("Name:");
+ maDescriptionLabel = aLayout.AddLabeledString ("Description:");
+ maRoleLabel = aLayout.AddLabeledEntry ("Role:");
+ }
+
+ public void Update ()
+ {
+ if (mxContext == null)
+ {
+ maNameLabel.setText ("<null object>");
+ maDescriptionLabel.setText ("<null object>");
+ maRoleLabel.setText ("<null object>");
+ }
+ else
+ {
+ maNameLabel.setText (mxContext.getAccessibleName());
+ maDescriptionLabel.setText (mxContext.getAccessibleDescription());
+ maRoleLabel.setText (NameProvider.getRoleName (mxContext.getAccessibleRole()));
+ }
+ }
+
+ public String GetTitle ()
+ {
+ return ("Context");
+ }
+
+ /** Listen for changes regarding displayed values.
+ */
+ public void notifyEvent (AccessibleEventObject aEvent)
+ {
+ switch (aEvent.EventId)
+ {
+ case AccessibleEventId.NAME_CHANGED :
+ case AccessibleEventId.DESCRIPTION_CHANGED :
+ Update ();
+ }
+ }
+
+ public void actionPerformed (ActionEvent aEvent)
+ {
+ }
+
+
+ private JLabel
+ maNameLabel,
+ maDescriptionLabel,
+ maRoleLabel;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/EditableTextView.java b/accessibility/workben/org/openoffice/accessibility/awb/view/EditableTextView.java
new file mode 100644
index 000000000000..2e39f117f62e
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/EditableTextView.java
@@ -0,0 +1,119 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.view;
+
+import java.awt.event.ActionListener;
+import java.awt.event.ActionEvent;
+import javax.swing.JButton;
+
+import com.sun.star.accessibility.XAccessibleContext;
+import com.sun.star.accessibility.XAccessibleEditableText;
+import com.sun.star.uno.UnoRuntime;
+
+import org.openoffice.accessibility.awb.view.text.TextDialogFactory;
+
+
+public class EditableTextView
+ extends ObjectView
+ implements ActionListener
+{
+ /** Create a EditableTextView when the given object supports the
+ XAccessibleEditableText interface.
+ */
+ static public ObjectView Create (
+ ObjectViewContainer aContainer,
+ XAccessibleContext xContext)
+ {
+ XAccessibleEditableText xEditableText =
+ (XAccessibleEditableText)UnoRuntime.queryInterface(
+ XAccessibleEditableText.class, xContext);
+ if (xEditableText != null)
+ return new EditableTextView (aContainer);
+ else
+ return null;
+ }
+
+ public EditableTextView (ObjectViewContainer aContainer)
+ {
+ super (aContainer);
+
+ JButton aButton = new JButton ("cut...");
+ aButton.setFont (ViewGridLayout.GetFont());
+ aButton.addActionListener (this);
+ add (aButton);
+ aButton = new JButton ("paste...");
+ aButton.setFont (ViewGridLayout.GetFont());
+ aButton.addActionListener (this);
+ add (aButton);
+ aButton = new JButton ("edit...");
+ aButton.setFont (ViewGridLayout.GetFont());
+ aButton.addActionListener (this);
+ add (aButton);
+ aButton = new JButton ("format...");
+ aButton.setFont (ViewGridLayout.GetFont());
+ aButton.addActionListener (this);
+ add (aButton);
+ }
+
+
+ /** Additionally to the context store a reference to the
+ XAccessibleEditableText interface.
+ */
+ public void SetObject (XAccessibleContext xObject)
+ {
+ mxEditableText = (XAccessibleEditableText)UnoRuntime.queryInterface(
+ XAccessibleEditableText.class, xObject);
+ super.SetObject (xObject);
+ }
+
+ public String GetTitle ()
+ {
+ return ("Editable Text");
+ }
+
+ synchronized public void Destroy ()
+ {
+ mxEditableText = null;
+ super.Destroy();
+ }
+
+ public void actionPerformed (ActionEvent aEvent)
+ {
+ String sCommand = aEvent.getActionCommand();
+ if (sCommand.equals ("cut..."))
+ TextDialogFactory.CreateCutDialog (mxContext);
+ else if (sCommand.equals ("past..."))
+ TextDialogFactory.CreatePasteDialog (mxContext);
+ else if (sCommand.equals ("edit..."))
+ TextDialogFactory.CreateEditDialog (mxContext);
+ else if (sCommand.equals ("format..."))
+ TextDialogFactory.CreateFormatDialog (mxContext);
+ }
+
+ private XAccessibleEditableText mxEditableText;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/EventMonitorView.java b/accessibility/workben/org/openoffice/accessibility/awb/view/EventMonitorView.java
new file mode 100644
index 000000000000..67e8091e027f
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/EventMonitorView.java
@@ -0,0 +1,126 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.view;
+
+import java.awt.BorderLayout;
+import java.awt.GridBagLayout;
+import java.awt.GridBagConstraints;
+import java.awt.Color;
+import java.awt.Dimension;
+import java.awt.Font;
+import java.awt.Graphics;
+import javax.swing.JScrollBar;
+import javax.swing.JScrollPane;
+import javax.swing.JTextArea;
+
+import com.sun.star.accessibility.AccessibleEventId;
+import com.sun.star.accessibility.AccessibleEventObject;
+import com.sun.star.accessibility.XAccessibleContext;
+
+import org.openoffice.accessibility.misc.NameProvider;
+
+
+/** A simple event monitor that shows all events sent to one accessible
+ object.
+*/
+class EventMonitorView
+ extends ObjectView
+{
+ static public ObjectView Create (
+ ObjectViewContainer aContainer,
+ XAccessibleContext xContext)
+ {
+ if (xContext != null)
+ return new EventMonitorView (aContainer);
+ else
+ return null;
+ }
+
+ public EventMonitorView (ObjectViewContainer aContainer)
+ {
+ super (aContainer);
+ mnLineNo = 0;
+ Layout();
+ }
+
+ public String GetTitle ()
+ {
+ return "Event Monitor";
+ }
+
+ /** Create and arrange the widgets for this view.
+ */
+ private void Layout ()
+ {
+ setLayout (new GridBagLayout ());
+
+ maText = new JTextArea();
+ maText.setBackground (new Color (255,250,240));
+ maText.setFont (new Font ("Helvetica", Font.PLAIN, 9));
+
+ maScrollPane = new JScrollPane (maText,
+ JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
+ JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
+ maScrollPane.setPreferredSize (new Dimension (300,200));
+
+ GridBagConstraints aConstraints = new GridBagConstraints ();
+ aConstraints.weightx = 1;
+ aConstraints.fill = GridBagConstraints.HORIZONTAL;
+ add (maScrollPane, aConstraints);
+ }
+
+
+ public void Update ()
+ {
+ }
+
+
+ private void UpdateVerticalScrollBar ()
+ {
+ JScrollBar sb = maScrollPane.getVerticalScrollBar();
+ if (sb != null)
+ {
+ int nScrollBarValue = sb.getMaximum() - sb.getVisibleAmount() - 1;
+ sb.setValue (nScrollBarValue);
+ }
+ }
+
+
+ public void notifyEvent (AccessibleEventObject aEvent)
+ {
+ maText.append ((mnLineNo++) + ". " + NameProvider.getEventName (aEvent.EventId) + " : "
+ + aEvent.OldValue.toString()
+ + " -> "
+ + aEvent.NewValue.toString() + "\n");
+ UpdateVerticalScrollBar();
+ }
+
+ private JTextArea maText;
+ private int mnLineNo;
+ private JScrollPane maScrollPane;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/FocusView.java b/accessibility/workben/org/openoffice/accessibility/awb/view/FocusView.java
new file mode 100644
index 000000000000..4dec27958d71
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/FocusView.java
@@ -0,0 +1,148 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.view;
+
+import java.awt.Font;
+import java.awt.GridBagConstraints;
+import java.awt.GridBagLayout;
+import java.awt.event.ActionListener;
+import java.awt.event.ActionEvent;
+
+import javax.swing.JButton;
+import javax.swing.JLabel;
+
+import com.sun.star.accessibility.AccessibleEventId;
+import com.sun.star.accessibility.AccessibleEventObject;
+import com.sun.star.accessibility.AccessibleStateType;
+import com.sun.star.accessibility.XAccessibleComponent;
+import com.sun.star.accessibility.XAccessibleContext;
+import com.sun.star.accessibility.XAccessibleStateSet;
+import com.sun.star.uno.UnoRuntime;
+
+public class FocusView
+ extends ObjectView
+ implements ActionListener
+{
+ /** Create a FocusView when the given object supports the
+ XAccessibleComponent interface.
+ */
+ static public ObjectView Create (
+ ObjectViewContainer aContainer,
+ XAccessibleContext xContext)
+ {
+ XAccessibleComponent xComponent = (XAccessibleComponent)UnoRuntime.queryInterface(
+ XAccessibleComponent.class, xContext);
+ if (xComponent != null)
+ return new FocusView (aContainer);
+ else
+ return null;
+ }
+
+ public FocusView (ObjectViewContainer aContainer)
+ {
+ super (aContainer);
+
+ setLayout (new GridBagLayout());
+ GridBagConstraints aConstraints = new GridBagConstraints ();
+
+ maFocused = new JLabel ();
+ maFocused.setFont (GetContainer().GetViewFont());
+ aConstraints.gridy = 0;
+ aConstraints.weightx = 1;
+ aConstraints.fill = GridBagConstraints.HORIZONTAL;
+ add (maFocused, aConstraints);
+
+ maGrabFocus = new JButton ("grabFocus");
+ maGrabFocus.setFont (GetContainer().GetViewFont());
+ aConstraints.gridy = 1;
+ aConstraints.fill = GridBagConstraints.NONE;
+ aConstraints.anchor = GridBagConstraints.WEST;
+ add (maGrabFocus, aConstraints);
+
+ maGrabFocus.addActionListener (this);
+ }
+
+ /** Additionally to the context store a reference to the
+ XAccessibleComponent interface.
+ */
+ public void SetObject (XAccessibleContext xObject)
+ {
+ mxComponent = (XAccessibleComponent)UnoRuntime.queryInterface(
+ XAccessibleComponent.class, xObject);
+ super.SetObject (xObject);
+ }
+
+ synchronized public void Destroy ()
+ {
+ super.Destroy();
+ maGrabFocus.removeActionListener (this);
+ }
+
+ synchronized public void Update ()
+ {
+ if (mxContext == null)
+ {
+ maFocused.setText ("<null object>");
+ maGrabFocus.setEnabled (false);
+ }
+ else
+ {
+ XAccessibleStateSet aStateSet = mxContext.getAccessibleStateSet();
+ if (aStateSet.contains(AccessibleStateType.FOCUSED))
+ maFocused.setText ("focused");
+ else
+ maFocused.setText ("not focused");
+ if (maGrabFocus != null)
+ maGrabFocus.setEnabled (true);
+ }
+ }
+
+ public String GetTitle ()
+ {
+ return ("Focus");
+ }
+
+ synchronized public void actionPerformed (ActionEvent aEvent)
+ {
+ if (aEvent.getActionCommand().equals("grabFocus"))
+ {
+ mxComponent.grabFocus();
+ }
+ }
+
+ public void notifyEvent (AccessibleEventObject aEvent)
+ {
+ System.out.println (aEvent);
+ if (aEvent.EventId == AccessibleEventId.STATE_CHANGED)
+ Update ();
+ }
+
+ private JLabel maFocused;
+ private JButton maGrabFocus;
+ private XAccessibleComponent mxComponent;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/LayoutManager.java b/accessibility/workben/org/openoffice/accessibility/awb/view/LayoutManager.java
new file mode 100644
index 000000000000..728b3dc426d7
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/LayoutManager.java
@@ -0,0 +1,160 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.view;
+
+import java.awt.Component;
+import java.awt.Cursor;
+import java.awt.GridBagLayout;
+import java.awt.GridBagConstraints;
+import java.awt.Point;
+import java.awt.event.MouseListener;
+import java.awt.event.MouseMotionListener;
+import java.awt.event.MouseEvent;
+import javax.swing.JComponent;
+
+class LayoutManager
+ implements MouseListener,
+ MouseMotionListener
+{
+ public LayoutManager (JComponent aLayoutedComponent)
+ {
+ maLayoutedComponent = aLayoutedComponent;
+ maDraggedView = null;
+ mbInsertionPending = false;
+ }
+
+ public void mouseClicked (MouseEvent aEvent)
+ {
+ System.out.println (aEvent);
+ }
+ public void mousePressed (MouseEvent aEvent)
+ {
+ mnOldY = aEvent.getPoint().y;
+ }
+ public void mouseReleased (MouseEvent aEvent)
+ {
+ if (mbInsertionPending)
+ {
+ InsertView (maDraggedView, aEvent.getPoint().y);
+ mbInsertionPending = false;
+ maDraggedView = null;
+ }
+ }
+ public void mouseEntered (MouseEvent aEvent)
+ {
+ }
+ public void mouseExited (MouseEvent aEvent)
+ {
+ if (mbInsertionPending)
+ {
+ InsertView (maDraggedView, mnOldY);
+ mbInsertionPending = false;
+ maDraggedView = null;
+ }
+ }
+ public void mouseDragged (MouseEvent aEvent)
+ {
+ int dy = mnOldY - aEvent.getPoint().y;
+ GridBagLayout aLayout = (GridBagLayout)maLayoutedComponent.getLayout();
+ if ( ! mbInsertionPending && dy != 0)
+ {
+ maDraggedView = RemoveView (mnOldY);
+ if (maDraggedView != null)
+ mbInsertionPending = true;
+ }
+ }
+ public void mouseMoved (MouseEvent aEvent)
+ {
+ }
+
+
+
+
+ private ObjectView RemoveView (int y)
+ {
+ ObjectView aView = null;
+ GridBagLayout aLayout = (GridBagLayout)maLayoutedComponent.getLayout();
+
+ Point aGridLocation = aLayout.location (10,y);
+ Component[] aComponentList = maLayoutedComponent.getComponents();
+ System.out.println ("removing view at " + aGridLocation);
+ for (int i=0; i<aComponentList.length && aView==null; i++)
+ {
+ GridBagConstraints aConstraints = aLayout.getConstraints (
+ aComponentList[i]);
+ if (aConstraints.gridy == aGridLocation.y)
+ aView = (ObjectView)aComponentList[i];
+ }
+ maNormalCursor = maLayoutedComponent.getCursor();
+ if (aView != null)
+ {
+ System.out.println ("removing view at " + aGridLocation.y);
+ maLayoutedComponent.setCursor (new Cursor (Cursor.MOVE_CURSOR));
+ maLayoutedComponent.remove (aView);
+ maLayoutedComponent.validate();
+ maLayoutedComponent.repaint();
+ }
+
+ return aView;
+ }
+
+ private void InsertView (ObjectView aView, int y)
+ {
+ if (aView != null)
+ {
+ GridBagLayout aLayout = (GridBagLayout)maLayoutedComponent.getLayout();
+ Point aGridLocation = aLayout.location (0,y);
+ Component[] aComponentList = maLayoutedComponent.getComponents();
+ System.out.println ("new position is " + aGridLocation.y);
+ for (int i=0; i<aComponentList.length; i++)
+ {
+ GridBagConstraints aConstraints = aLayout.getConstraints (
+ aComponentList[i]);
+ if (aConstraints.gridy >= aGridLocation.y)
+ {
+ if (aConstraints.gridy == aGridLocation.y)
+ maLayoutedComponent.add (maDraggedView, aConstraints);
+ aConstraints.gridy += 1;
+ aLayout.setConstraints (aComponentList[i], aConstraints);
+ }
+ }
+ maLayoutedComponent.validate();
+ maLayoutedComponent.repaint();
+ }
+ maLayoutedComponent.setCursor (maNormalCursor);
+ }
+
+
+
+
+ private JComponent maLayoutedComponent;
+ private ObjectView maDraggedView;
+ private int mnOldY;
+ private boolean mbInsertionPending;
+ private Cursor maNormalCursor;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/Makefile b/accessibility/workben/org/openoffice/accessibility/awb/view/Makefile
new file mode 100644
index 000000000000..2e4eb1566afd
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/Makefile
@@ -0,0 +1,13 @@
+# $Id: Makefile,v 1.1 2003/06/13 16:30:34 af Exp $
+
+all : package
+
+ROOT=../../../../..
+PACKAGE = org.openoffice.accessibility.awb.view
+SUBDIRS = text
+include makefile.common
+
+include $(ROOT)/makefile.in
+
+
+package : $(CLASS_FILES)
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/ObjectView.java b/accessibility/workben/org/openoffice/accessibility/awb/view/ObjectView.java
new file mode 100644
index 000000000000..3c1b8e90ff26
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/ObjectView.java
@@ -0,0 +1,90 @@
+package org.openoffice.accessibility.awb.view;
+
+import javax.swing.JPanel;
+
+import com.sun.star.accessibility.AccessibleEventObject;
+import com.sun.star.accessibility.XAccessibleContext;
+
+/** This is the base class for all object views that can be placed inside an
+ object view container.
+
+ <p>When provided with a new accessible object the container will call
+ the Create method to create a new instance when certain conditions are
+ met. It then calls SetObject to pass the object to the instance.
+ Finally it calls Update.</p>
+
+ <p>The SetObject and Update methods may be called for a new object
+ without calling Create first. In this way an existing instance is
+ recycled.</p>
+*/
+abstract public class ObjectView
+ extends JPanel
+{
+ /** This factory method creates a new instance of the (derived) class
+ when the given accessible object supports all necessary features.
+ In the ususal case this will be the support of a specific
+ accessibility interface.
+ */
+ static public ObjectView Create (
+ ObjectViewContainer aContainer,
+ XAccessibleContext xContext)
+ {
+ return null;
+ }
+
+ public ObjectView (ObjectViewContainer aContainer)
+ {
+ maContainer = aContainer;
+ mxContext = null;
+ }
+
+ /** Call this when you want the object to be destroyed. Release all
+ resources when called.
+ */
+ public void Destroy ()
+ {
+ }
+
+ /** Tell the view to display information for a new accessible object.
+ @param xObject
+ The given object may be null. A typical behaviour in this case
+ would be to display a blank area. But is also possible to show
+ information about the last object.
+ */
+ public void SetObject (XAccessibleContext xContext)
+ {
+ mxContext = xContext;
+ Update ();
+ }
+
+
+ /** This is a request of a repaint with the current state of the current
+ object. The current object may or may not be the same as the one
+ when Update() was called the last time.
+ */
+ public void Update ()
+ {
+ }
+
+
+ /** Return a string that is used as a title of an enclosing frame.
+ */
+ abstract public String GetTitle ();
+
+
+ public ObjectViewContainer GetContainer ()
+ {
+ return maContainer;
+ }
+
+
+ /** Implement this method if you are interested in accessible events.
+ */
+ public void notifyEvent (AccessibleEventObject aEvent)
+ {}
+
+ /// Reference to the current object to display information about.
+ protected XAccessibleContext mxContext;
+
+ protected ObjectViewContainer maContainer;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/ObjectViewContainer.java b/accessibility/workben/org/openoffice/accessibility/awb/view/ObjectViewContainer.java
new file mode 100644
index 000000000000..54855cbaf885
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/ObjectViewContainer.java
@@ -0,0 +1,310 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.view;
+
+import java.awt.Color;
+import java.awt.Component;
+import java.awt.Font;
+import java.awt.GridBagLayout;
+import java.awt.GridBagConstraints;
+import java.awt.Insets;
+
+import java.util.Vector;
+
+import java.lang.reflect.Method;
+import java.lang.NoSuchMethodException;
+import java.lang.IllegalAccessException;
+import java.lang.reflect.InvocationTargetException;
+
+import javax.swing.JPanel;
+import javax.swing.JTree;
+import javax.swing.BorderFactory;
+import javax.swing.border.Border;
+import javax.swing.border.BevelBorder;
+import javax.swing.SwingUtilities;
+
+import com.sun.star.accessibility.AccessibleEventObject;
+import com.sun.star.accessibility.XAccessibleContext;
+import com.sun.star.accessibility.XAccessibleComponent;
+import com.sun.star.accessibility.XAccessibleEventBroadcaster;
+import com.sun.star.accessibility.XAccessibleEventListener;
+import com.sun.star.accessibility.XAccessibleSelection;
+import com.sun.star.lang.EventObject;
+import com.sun.star.uno.UnoRuntime;
+
+import org.openoffice.accessibility.awb.view.ObjectView;
+
+
+
+/** This container of specialized object views displays information about
+ one accessible object.
+ In this it plays several roles:
+ 1. Object container.
+ 2. Accessibility event dispatcher.
+ 3. Object view class registration manager.
+ 4. Swing widget.
+*/
+public class ObjectViewContainer
+ extends JPanel
+ implements XAccessibleEventListener
+{
+ public ObjectViewContainer ()
+ {
+ maFont = new Font ("Dialog", Font.PLAIN, 11);
+ maViewTemplates = new Vector ();
+ maViewBorder = BorderFactory.createBevelBorder (BevelBorder.RAISED);
+ GridBagLayout aLayout = new GridBagLayout ();
+ setLayout (aLayout);
+ // maLayoutManager = new LayoutManager (this);
+ maLayoutManager = null;
+
+ RegisterView (ContextView.class);
+ RegisterView (ComponentView.class);
+ RegisterView (ParentView.class);
+ RegisterView (StateSetView.class);
+ RegisterView (FocusView.class);
+ RegisterView (TextView.class);
+ RegisterView (EditableTextView.class);
+ RegisterView (TableView.class);
+ RegisterView (SelectionView.class);
+ RegisterView (ServiceInterfaceView.class);
+ RegisterView (EventMonitorView.class);
+
+ mxContext = null;
+
+ // addMouseListener (maLayoutManager);
+ // addMouseMotionListener (maLayoutManager);
+ }
+
+
+
+ /** Remove all existing views and create new ones according to the
+ interfaces supported by the given object.
+ */
+ public synchronized void SetObject (XAccessibleContext xContext)
+ {
+ // Call Destroy at all views to give them a chance to release their
+ // resources.
+ int n = getComponentCount();
+ for (int i=0; i<n; i++)
+ ((ObjectView)getComponent(i)).Destroy();
+ // Remove existing views.
+ removeAll ();
+
+ mxContext = xContext;
+
+ // Add new views.
+ for (int i=0; i<maViewTemplates.size(); i++)
+ {
+ try
+ {
+ Class aViewClass = (Class)maViewTemplates.elementAt (i);
+ Method aCreateMethod = aViewClass.getDeclaredMethod (
+ "Create", new Class[] {
+ ObjectViewContainer.class,
+ XAccessibleContext.class});
+ if (aCreateMethod != null)
+ {
+ ObjectView aView = (ObjectView)
+ aCreateMethod.invoke (
+ null, new Object[] {this, xContext});
+ Add (aView);
+ }
+ }
+ catch (NoSuchMethodException e)
+ {System.err.println ("Caught exception while creating view "
+ + i + " : " + e);}
+ catch (IllegalAccessException e)
+ {System.err.println ("Caught exception while creating view "
+ + i + " : " + e);}
+ catch (InvocationTargetException e)
+ {System.err.println ("Caught exception while creating view "
+ + i + " : " + e);}
+ }
+
+ UpdateLayoutManager ();
+
+ // Now set the object at all views.
+ n = getComponentCount();
+ for (int i=0; i<n; i++)
+ ((ObjectView)getComponent(i)).SetObject (xContext);
+
+ setPreferredSize (getLayout().preferredLayoutSize (this));
+ ((GridBagLayout) getLayout()).invalidateLayout(this);
+ validate();
+ }
+
+
+
+
+ /** Add the given class to the list of classes which will be
+ instantiated the next time an accessible object is set.
+ */
+ public void RegisterView (Class aObjectViewClass)
+ {
+ maViewTemplates.addElement (aObjectViewClass);
+ }
+
+
+
+
+ /** Replace one view class with another.
+ */
+ public void ReplaceView (Class aObjectViewClass, Class aSubstitution)
+ {
+ int nIndex = maViewTemplates.indexOf (aObjectViewClass);
+ if (nIndex >= 0)
+ maViewTemplates.setElementAt (aSubstitution, nIndex);
+ }
+
+
+ /** Return a font that should be used for widgets in the views.
+ */
+ public Font GetViewFont ()
+ {
+ return maFont;
+ }
+
+ public Color GetErrorColor ()
+ {
+ return new Color (255,80,50);
+ }
+
+ /** Add an object view and place it below all previously added views.
+ @param aView
+ This argument may be null. In this case nothing happens.
+ */
+ private void Add (ObjectView aView)
+ {
+ if (aView != null)
+ {
+ GridBagConstraints constraints = new GridBagConstraints ();
+ constraints.gridx = 0;
+ constraints.gridy = getComponentCount();
+ constraints.gridwidth = 1;
+ constraints.gridheight = 1;
+ constraints.weightx = 1;
+ constraints.weighty = 0;
+ constraints.ipadx = 2;
+ constraints.ipady = 5;
+ constraints.insets = new Insets (5,5,5,5);
+ constraints.anchor = GridBagConstraints.NORTH;
+ constraints.fill = GridBagConstraints.HORIZONTAL;
+
+ aView.setBorder (
+ BorderFactory.createTitledBorder (
+ maViewBorder, aView.GetTitle()));
+
+ add (aView, constraints);
+ }
+ }
+
+ /** Update the layout manager by setting the vertical weight of the
+ bottom entry to 1 and so make it strech to over the available
+ space.
+
+ */
+ private void UpdateLayoutManager ()
+ {
+ // Adapt the layout manager.
+ if (getComponentCount() > 1000)
+ {
+ Component aComponent = getComponent (getComponentCount()-1);
+ GridBagLayout aLayout = (GridBagLayout)getLayout();
+ GridBagConstraints aConstraints = aLayout.getConstraints (aComponent);
+ aConstraints.weighty = 1;
+ aLayout.setConstraints (aComponent, aConstraints);
+ }
+ }
+
+
+
+
+ /** Put the event just received into the event queue which will deliver
+ it soon asynchronuously to the DispatchEvent method.
+ */
+ public void notifyEvent (final AccessibleEventObject aEvent)
+ {
+ SwingUtilities.invokeLater(
+ new Runnable()
+ {
+ public void run()
+ {
+ DispatchEvent (aEvent);
+ }
+ }
+ );
+ }
+
+
+
+
+ /** Forward accessibility events to all views without them being
+ registered as event listeners each on their own.
+ */
+ private void DispatchEvent (AccessibleEventObject aEvent)
+ {
+ int n = getComponentCount();
+ for (int i=0; i<n; i++)
+ ((ObjectView)getComponent(i)).notifyEvent (aEvent);
+ }
+
+
+
+ /** When the object is disposed that is displayed by the views of this
+ container then tell all views about this.
+ */
+ public void disposing (EventObject aEvent)
+ {
+ mxContext = null;
+ SwingUtilities.invokeLater(
+ new Runnable()
+ {
+ public void run()
+ {
+ SetObject (null);
+ }
+ }
+ );
+ }
+
+
+
+
+ /// The current accessible context display by the views.
+ private XAccessibleContext mxContext;
+
+ /// Observe this tree for selection changes and notify them to all
+ /// children.
+ private JTree maTree;
+ private Border maViewBorder;
+ /// List of view templates which are instantiated when new object is set.
+ private Vector maViewTemplates;
+ private Font maFont;
+ private LayoutManager maLayoutManager;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/ObjectViewContainerWindow.java b/accessibility/workben/org/openoffice/accessibility/awb/view/ObjectViewContainerWindow.java
new file mode 100644
index 000000000000..8db9af4f46ca
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/ObjectViewContainerWindow.java
@@ -0,0 +1,35 @@
+package org.openoffice.accessibility.awb.view;
+
+import java.awt.BorderLayout;
+import javax.swing.JFrame;
+import com.sun.star.accessibility.XAccessibleContext;
+
+
+/** Top level window that creates a single object view container. This
+ container shows information about a specific accessible object and is
+ not affected by the selection of the accessbility tree widget.
+*/
+public class ObjectViewContainerWindow
+ extends JFrame
+{
+ public ObjectViewContainerWindow (XAccessibleContext xContext)
+ {
+ setSize (new java.awt.Dimension (300,600));
+
+ maContainer = new ObjectViewContainer ();
+ maContainer.SetObject (xContext);
+ getContentPane().add (maContainer, BorderLayout.CENTER);
+
+ pack ();
+ setVisible (true);
+ }
+
+ /** Set the object that is displayed in this window.
+ */
+ public void SetObject (XAccessibleContext xContext)
+ {
+ maContainer.SetObject (xContext);
+ }
+
+ private ObjectViewContainer maContainer;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/ParentView.java b/accessibility/workben/org/openoffice/accessibility/awb/view/ParentView.java
new file mode 100644
index 000000000000..216bc3a82bfc
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/ParentView.java
@@ -0,0 +1,147 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.view;
+
+import java.awt.Color;
+import java.awt.Dimension;
+import java.awt.GridBagLayout;
+import java.awt.GridBagConstraints;
+import java.lang.Integer;
+import javax.swing.JLabel;
+import javax.swing.JTextField;
+
+import com.sun.star.accessibility.AccessibleEventId;
+import com.sun.star.accessibility.AccessibleEventObject;
+import com.sun.star.accessibility.XAccessible;
+import com.sun.star.accessibility.XAccessibleContext;
+import com.sun.star.lang.IndexOutOfBoundsException;
+
+import org.openoffice.accessibility.misc.NameProvider;
+
+
+/** Show informations related to the parent/child relationship.
+*/
+public class ParentView
+ extends ObjectView
+{
+ static public ObjectView Create (
+ ObjectViewContainer aContainer,
+ XAccessibleContext xContext)
+ {
+ if (xContext != null)
+ return new ParentView (aContainer);
+ else
+ return null;
+ }
+
+ public ParentView (ObjectViewContainer aContainer)
+ {
+ super (aContainer);
+
+ ViewGridLayout aLayout = new ViewGridLayout (this);
+ maParentLabel = aLayout.AddLabeledEntry ("Has parent: ");
+ maIndexLabel = aLayout.AddLabeledEntry ("Index in parent: ");
+ maValidLabel = aLayout.AddLabeledEntry ("Parent/Child relationship valid: ");
+ maChildrenLabel = aLayout.AddLabeledEntry ("Child count: ");
+ }
+
+ public void Update ()
+ {
+ if (mxContext == null)
+ {
+ maParentLabel.setText ("<null object>");
+ maIndexLabel.setText ("<null object>");
+ maValidLabel.setText ("<null object>");
+ maChildrenLabel.setText ("<null object>");
+ }
+ else
+ {
+ XAccessible xParent = mxContext.getAccessibleParent();
+ int nIndex = mxContext.getAccessibleIndexInParent();
+ maIndexLabel.setText (Integer.toString(nIndex));
+ if (xParent != null)
+ {
+ maParentLabel.setText ("yes");
+ XAccessibleContext xParentContext =
+ xParent.getAccessibleContext();
+ if (xParentContext != null)
+ {
+ try
+ {
+ XAccessible xChild =
+ xParentContext.getAccessibleChild(nIndex);
+ if (xChild != mxContext)
+ maValidLabel.setText ("yes");
+ else
+ {
+ maValidLabel.setText ("no");
+ maValidLabel.setBackground (GetContainer().GetErrorColor());
+ }
+ }
+ catch (IndexOutOfBoundsException e)
+ {
+ maValidLabel.setText ("no: invalid index in parent");
+ maValidLabel.setBackground (GetContainer().GetErrorColor());
+ }
+ }
+ else
+ {
+ maValidLabel.setText ("no: parent has no context");
+ maValidLabel.setBackground (GetContainer().GetErrorColor());
+ }
+ }
+ else
+ maParentLabel.setText ("no");
+ maChildrenLabel.setText (Integer.toString(mxContext.getAccessibleChildCount()));
+ }
+ }
+
+ public String GetTitle ()
+ {
+ return ("Parent");
+ }
+
+
+ /** Listen for changes regarding displayed values.
+ */
+ public void notifyEvent (AccessibleEventObject aEvent)
+ {
+ switch (aEvent.EventId)
+ {
+ default:
+ Update ();
+ }
+ }
+
+
+ private JLabel
+ maParentLabel,
+ maIndexLabel,
+ maValidLabel,
+ maChildrenLabel;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/SelectionView.java b/accessibility/workben/org/openoffice/accessibility/awb/view/SelectionView.java
new file mode 100644
index 000000000000..ad5a83467372
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/SelectionView.java
@@ -0,0 +1,267 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.view;
+
+import java.util.Vector;
+
+import java.awt.event.ActionListener;
+import java.awt.event.ActionEvent;
+
+import java.awt.BorderLayout;
+import java.awt.Dimension;
+import java.awt.GridBagLayout;
+import java.awt.GridBagConstraints;
+
+import javax.swing.BoxLayout;
+import javax.swing.ButtonGroup;
+import javax.swing.JButton;
+import javax.swing.JCheckBox;
+import javax.swing.JLabel;
+import javax.swing.JList;
+import javax.swing.JPanel;
+import javax.swing.JOptionPane;
+import javax.swing.JRadioButton;
+import javax.swing.JScrollPane;
+import javax.swing.JToggleButton;
+import javax.swing.ListSelectionModel;
+
+
+import com.sun.star.accessibility.AccessibleEventId;
+import com.sun.star.accessibility.AccessibleEventObject;
+import com.sun.star.accessibility.AccessibleRole;
+import com.sun.star.accessibility.AccessibleStateType;
+import com.sun.star.accessibility.XAccessible;
+import com.sun.star.accessibility.XAccessibleContext;
+import com.sun.star.accessibility.XAccessibleSelection;
+import com.sun.star.accessibility.XAccessibleStateSet;
+
+import com.sun.star.uno.UnoRuntime;
+import com.sun.star.lang.IndexOutOfBoundsException;
+
+
+/** Display a list of children and select/deselect buttons
+*/
+class SelectionView
+ extends ObjectView
+ implements ActionListener
+{
+ static public ObjectView Create (
+ ObjectViewContainer aContainer,
+ XAccessibleContext xContext)
+ {
+ XAccessibleSelection xSelection = (XAccessibleSelection)UnoRuntime.queryInterface(
+ XAccessibleSelection.class, xContext);
+ if (xSelection != null)
+ return new SelectionView(aContainer);
+ else
+ return null;
+ }
+
+ public SelectionView (ObjectViewContainer aContainer)
+ {
+ super (aContainer);
+ Layout();
+ }
+
+ public String GetTitle ()
+ {
+ return "Selection";
+ }
+
+ /** Create and arrange the widgets for this view.
+ */
+ private void Layout ()
+ {
+ setLayout (new GridBagLayout());
+
+ GridBagConstraints aConstraints = new GridBagConstraints();
+
+ // Label that shows whether the selection is multi selectable.
+ aConstraints.gridx = 0;
+ aConstraints.gridy = 0;
+ aConstraints.anchor = GridBagConstraints.WEST;
+ maTypeLabel = new JLabel ();
+ maTypeLabel.setFont (maContainer.GetViewFont());
+ add (maTypeLabel, aConstraints);
+
+ // the JListBox
+ maChildrenSelector = new JPanel ();
+ maChildrenSelector.setPreferredSize (new Dimension (100,100));
+ maChildrenSelector.setLayout (
+ new BoxLayout (maChildrenSelector, BoxLayout.Y_AXIS));
+
+ aConstraints.gridx = 0;
+ aConstraints.gridwidth = 4;
+ aConstraints.gridy = 1;
+ aConstraints.fill = GridBagConstraints.HORIZONTAL;
+ add (new JScrollPane (maChildrenSelector,
+ JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,
+ JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED),
+ aConstraints);
+
+ JButton aButton;
+ aButton = new JButton( "Select all" );
+ aButton.setFont (maContainer.GetViewFont());
+ aButton.setActionCommand( "Select all" );
+ aButton.addActionListener( this );
+ aConstraints.gridx = 0;
+ aConstraints.gridwidth = 1;
+ aConstraints.gridy = 2;
+ aConstraints.fill = GridBagConstraints.NONE;
+ aConstraints.anchor = GridBagConstraints.WEST;
+ add (aButton, aConstraints);
+
+ aButton = new JButton( "Clear Selection" );
+ aButton.setFont (maContainer.GetViewFont());
+ aButton.setActionCommand( "Clear Selection" );
+ aButton.addActionListener( this );
+ aConstraints.gridx = 1;
+ aConstraints.gridy = 2;
+ aConstraints.weightx = 1;
+ add (aButton, aConstraints);
+
+ setSize (getPreferredSize());
+ }
+
+
+ public void SetObject (XAccessibleContext xContext)
+ {
+ mxSelection = (XAccessibleSelection)UnoRuntime.queryInterface(
+ XAccessibleSelection.class, xContext);
+ super.SetObject (xContext);
+ }
+
+
+ public void Update ()
+ {
+ maChildrenSelector.removeAll ();
+
+ // Determine whether multi selection is possible.
+ XAccessibleStateSet aStateSet = mxContext.getAccessibleStateSet();
+ boolean bMultiSelectable = false;
+ if (aStateSet!=null && aStateSet.contains(
+ AccessibleStateType.MULTI_SELECTABLE))
+ {
+ bMultiSelectable = true;
+ maTypeLabel.setText ("multi selectable");
+ }
+ else
+ {
+ maTypeLabel.setText ("single selectable");
+ }
+
+ if (mxContext.getAccessibleRole() != AccessibleRole.TABLE)
+ {
+ int nCount = mxContext.getAccessibleChildCount();
+ for (int i=0; i<nCount; i++)
+ {
+ try
+ {
+ XAccessible xChild = mxContext.getAccessibleChild(i);
+ XAccessibleContext xChildContext = xChild.getAccessibleContext();
+
+ String sName = i + " " + xChildContext.getAccessibleName();
+ JToggleButton aChild;
+ aChild = new JCheckBox (sName);
+ aChild.setFont (maContainer.GetViewFont());
+
+ XAccessibleStateSet aChildStateSet =
+ mxContext.getAccessibleStateSet();
+ aChild.setSelected (aChildStateSet!=null
+ && aChildStateSet.contains(AccessibleStateType.SELECTED));
+
+ aChild.addActionListener (this);
+ maChildrenSelector.add (aChild);
+
+ }
+ catch (IndexOutOfBoundsException e)
+ {
+ }
+ }
+ }
+ }
+
+
+ void SelectAll()
+ {
+ mxSelection.selectAllAccessibleChildren();
+ }
+
+ void ClearSelection()
+ {
+ mxSelection.clearAccessibleSelection();
+ }
+
+
+
+ /** Call the function associated with the pressed button.
+ */
+ public void actionPerformed (ActionEvent aEvent)
+ {
+ String sCommand = aEvent.getActionCommand();
+
+ if (sCommand.equals ("Clear Selection"))
+ ClearSelection();
+ else if (sCommand.equals ("Select all"))
+ SelectAll();
+ else
+ {
+ // Extract the child index from the widget text.
+ String[] aWords = sCommand.split (" ");
+ int nIndex = Integer.parseInt(aWords[0]);
+ try
+ {
+ if (((JToggleButton)aEvent.getSource()).isSelected())
+ mxSelection.selectAccessibleChild (nIndex);
+ else
+ mxSelection.deselectAccessibleChild (nIndex);
+ }
+ catch (IndexOutOfBoundsException e)
+ {
+ System.err.println (
+ "caught exception while changing selection: " + e);
+ }
+ }
+ }
+
+
+ public void notifyEvent (AccessibleEventObject aEvent)
+ {
+ switch (aEvent.EventId)
+ {
+ case AccessibleEventId.SELECTION_CHANGED:
+ case AccessibleEventId.STATE_CHANGED:
+ case AccessibleEventId.CHILD:
+ Update ();
+ }
+ }
+
+ private JPanel maChildrenSelector;
+ private XAccessibleSelection mxSelection;
+ private JLabel maTypeLabel;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/ServiceInterfaceView.java b/accessibility/workben/org/openoffice/accessibility/awb/view/ServiceInterfaceView.java
new file mode 100644
index 000000000000..7c41ff01c97e
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/ServiceInterfaceView.java
@@ -0,0 +1,150 @@
+package org.openoffice.accessibility.awb.view;
+
+import java.awt.GridLayout;
+import java.awt.Color;
+import java.awt.Dimension;
+import java.awt.GridBagLayout;
+import java.awt.GridBagConstraints;
+import java.lang.Integer;
+import javax.swing.JScrollPane;
+import javax.swing.JTree;
+import javax.swing.tree.DefaultMutableTreeNode;
+import javax.swing.tree.DefaultTreeModel;
+
+import com.sun.star.accessibility.AccessibleEventId;
+import com.sun.star.accessibility.AccessibleEventObject;
+import com.sun.star.accessibility.XAccessible;
+import com.sun.star.accessibility.XAccessibleContext;
+import com.sun.star.lang.IndexOutOfBoundsException;
+import com.sun.star.lang.XServiceInfo;
+import com.sun.star.lang.XTypeProvider;
+import com.sun.star.uno.Type;
+import com.sun.star.uno.UnoRuntime;
+
+import org.openoffice.accessibility.misc.NameProvider;
+
+
+/** Show all supported services and interfaces.
+*/
+public class ServiceInterfaceView
+ extends ObjectView
+{
+ static public ObjectView Create (
+ ObjectViewContainer aContainer,
+ XAccessibleContext xContext)
+ {
+ if (xContext != null)
+ return new ServiceInterfaceView (aContainer);
+ else
+ return null;
+ }
+
+
+
+
+ public ServiceInterfaceView (ObjectViewContainer aContainer)
+ {
+ super (aContainer);
+
+ maImplementationNameRoot = new DefaultMutableTreeNode ("Implementation Name");
+ maServiceRoot = new DefaultMutableTreeNode ("Supported Services");
+ maInterfaceRoot = new DefaultMutableTreeNode ("Supported Interfaces");
+ maTree = new JTree (new DefaultMutableTreeNode[]
+ {maServiceRoot,maInterfaceRoot});
+ JScrollPane aScrollPane = new JScrollPane (
+ maTree,
+ JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,
+ JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
+
+ setMinimumSize (new Dimension(300,200));
+ setLayout (new GridLayout (1,1));
+ add (aScrollPane);
+ }
+
+
+
+
+ public void Update ()
+ {
+ DefaultTreeModel aModel = (DefaultTreeModel)maTree.getModel();
+
+ // Clear old tree.
+ DefaultMutableTreeNode aRoot =(DefaultMutableTreeNode)aModel.getRoot();
+ aRoot.removeAllChildren();
+
+ // Create the new tree.
+ CreateImplementationNameTree ();
+ CreateServiceTree ();
+ CreateInterfaceTree ();
+ aRoot.add (maImplementationNameRoot);
+ aRoot.add (maServiceRoot);
+ aRoot.add (maInterfaceRoot);
+ aModel.setRoot (aRoot);
+
+ // Expand whole tree.
+ for (int i=0; i<maTree.getRowCount(); i++)
+ maTree.expandRow (i);
+ }
+
+ private void CreateImplementationNameTree ()
+ {
+ XServiceInfo xServiceInfo = (XServiceInfo)UnoRuntime.queryInterface(
+ XServiceInfo.class, mxContext);
+ maImplementationNameRoot.removeAllChildren();
+ if (xServiceInfo != null)
+ {
+ maImplementationNameRoot.add (
+ new DefaultMutableTreeNode (
+ (xServiceInfo!=null
+ ? xServiceInfo.getImplementationName()
+ : "<XServiceInfo not supported>")));
+ }
+ }
+
+ private void CreateServiceTree ()
+ {
+ XServiceInfo xServiceInfo = (XServiceInfo)UnoRuntime.queryInterface(
+ XServiceInfo.class, mxContext);
+ maServiceRoot.removeAllChildren();
+ if (xServiceInfo != null)
+ {
+ String[] aServiceNames = xServiceInfo.getSupportedServiceNames();
+ int nCount = aServiceNames.length;
+ for (int i=0; i<nCount; i++)
+ maServiceRoot.add (
+ new DefaultMutableTreeNode (aServiceNames[i]));
+ }
+ else
+ maServiceRoot.add (
+ new DefaultMutableTreeNode("XServiceInfo not supported"));
+ }
+
+ private void CreateInterfaceTree ()
+ {
+ XTypeProvider xTypeProvider = (XTypeProvider)UnoRuntime.queryInterface(
+ XTypeProvider.class, mxContext);
+ maInterfaceRoot.removeAllChildren();
+ if (xTypeProvider != null)
+ {
+ Type[] aTypes = xTypeProvider.getTypes();
+ int nCount = aTypes.length;
+ for (int i=0; i<nCount; i++)
+ maInterfaceRoot.add (
+ new DefaultMutableTreeNode (aTypes[i].getTypeName()));
+ }
+ else
+ maInterfaceRoot.add (
+ new DefaultMutableTreeNode("XTypeProvider not supported"));
+ }
+
+ public String GetTitle ()
+ {
+ return ("Supported Services and Interfaces");
+ }
+
+
+ private JTree maTree;
+ private DefaultMutableTreeNode maImplementationNameRoot;
+ private DefaultMutableTreeNode maServiceRoot;
+ private DefaultMutableTreeNode maInterfaceRoot;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/StateSetView.java b/accessibility/workben/org/openoffice/accessibility/awb/view/StateSetView.java
new file mode 100644
index 000000000000..44638b099edc
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/StateSetView.java
@@ -0,0 +1,199 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.view;
+
+import java.awt.Color;
+import java.awt.Dimension;
+import java.awt.Graphics;
+import java.awt.Graphics2D;
+import java.awt.Insets;
+import java.awt.Rectangle;
+import java.awt.RenderingHints;
+import java.awt.geom.AffineTransform;
+
+
+
+import com.sun.star.accessibility.AccessibleEventObject;
+import com.sun.star.accessibility.AccessibleEventId;
+import com.sun.star.accessibility.AccessibleStateType;
+import com.sun.star.accessibility.XAccessibleContext;
+import com.sun.star.accessibility.XAccessibleStateSet;
+
+import org.openoffice.accessibility.misc.NameProvider;
+
+public class StateSetView
+ extends ObjectView
+{
+ /** Create a FocusView when the given object supports the
+ XAccessibleComponent interface.
+ */
+ static public ObjectView Create (
+ ObjectViewContainer aContainer,
+ XAccessibleContext xContext)
+ {
+ ObjectView aView = null;
+ if (xContext != null)
+ aView = new StateSetView (aContainer);
+
+ return aView;
+ }
+
+ public StateSetView (ObjectViewContainer aContainer)
+ {
+ super (aContainer);
+ setPreferredSize (new Dimension(300,110));
+ setMinimumSize (new Dimension(200,80));
+ }
+
+ public String GetTitle ()
+ {
+ return ("StateSet");
+ }
+
+ public void notifyEvent (AccessibleEventObject aEvent)
+ {
+ if (aEvent.EventId == AccessibleEventId.STATE_CHANGED)
+ Update();
+ }
+
+
+ public void Update ()
+ {
+ repaint ();
+ }
+
+ public void paintChildren (Graphics g)
+ {
+ if (g != null)
+ synchronized (g)
+ {
+ super.paintChildren (g);
+
+ // Calculcate the are inside the border.
+ Insets aInsets = getInsets ();
+ Dimension aSize = getSize();
+ Rectangle aWidgetArea = new Rectangle (
+ aInsets.left,
+ aInsets.top,
+ aSize.width-aInsets.left-aInsets.right,
+ aSize.height-aInsets.top-aInsets.bottom);
+
+ PaintAllStates ((Graphics2D)g, aWidgetArea);
+ }
+ }
+
+ private void PaintAllStates (Graphics2D g, Rectangle aWidgetArea)
+ {
+ Color aTextColor = g.getColor();
+
+ g.setRenderingHint (
+ RenderingHints.KEY_ANTIALIASING,
+ RenderingHints.VALUE_ANTIALIAS_ON);
+
+ XAccessibleStateSet xStateSet = ( mxContext != null ) ? mxContext.getAccessibleStateSet() : null;
+ if (xStateSet != null)
+ {
+ short aStates[] = xStateSet.getStates ();
+ final int nMaxStateIndex = AccessibleStateType.VISIBLE;//MANAGES_DESCENDANTS;
+ int nStateWidth = (aWidgetArea.width-12) / (nMaxStateIndex+1);
+ AffineTransform aTransform = g.getTransform ();
+ g.setColor (aTextColor);
+ int y = aWidgetArea.y+aWidgetArea.height - 25;
+ double nTextRotation = -0.9;//-java.lang.Math.PI/2;
+ double nScale = 0.6;
+
+ // Create a shape for the boxes.
+ int nBoxWidth = 8;
+ Rectangle aCheckBox = new Rectangle (-nBoxWidth/2,0,nBoxWidth,nBoxWidth);
+
+ // For each state draw a box, fill it appropriately, and draw
+ // thre states name.
+ for (short i=0; i<=nMaxStateIndex; i++)
+ {
+ int x = nStateWidth + i * nStateWidth;
+ String sStateName = NameProvider.getStateName (i);
+ if (sStateName == null)
+ sStateName = new String ("<unknown state " + i + ">");
+ boolean bStateSet = xStateSet.contains (i);
+ g.setTransform (aTransform);
+ g.translate (x,y);
+ if (bStateSet)
+ {
+ switch (i)
+ {
+ case AccessibleStateType.INVALID:
+ case AccessibleStateType.DEFUNC:
+ g.setColor (saInvalidColor);
+ break;
+ case AccessibleStateType.FOCUSED:
+ g.setColor (saFocusColor);
+ break;
+ case AccessibleStateType.SELECTED:
+ g.setColor (saSelectionColor);
+ break;
+ case AccessibleStateType.EDITABLE:
+ g.setColor (saEditColor);
+ break;
+ default:
+ g.setColor (saDefaultColor);
+ break;
+ }
+ g.fill (aCheckBox);
+ g.setColor (aTextColor);
+ }
+ g.draw (aCheckBox);
+ g.rotate (nTextRotation);
+ g.scale (nScale, nScale);
+ g.translate (2,-2);
+ g.drawString (sStateName, 0,0);
+ }
+
+ // Draw string of set states.
+ String sStates = new String ();
+ for (int i=0; i<aStates.length; i++)
+ {
+ if (i > 0)
+ sStates = sStates + ", ";
+ sStates = sStates + NameProvider.getStateName(aStates[i]);
+ }
+ g.setTransform (aTransform);
+ g.translate (10,aWidgetArea.y+aWidgetArea.height-3);
+ g.scale (0.9,0.9);
+ g.drawString (sStates,0,0);
+ }
+ }
+
+ static private Color
+ saInvalidColor = new Color (255,0,255),
+ saFocusColor = new Color (100,100,255),
+ saSelectionColor = Color.GREEN,
+ saDefaultColor = new Color (90,90,90),
+ saEditColor = new Color (240,240,0);
+}
+
+
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/TableView.java b/accessibility/workben/org/openoffice/accessibility/awb/view/TableView.java
new file mode 100644
index 000000000000..07b5d2bb9b78
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/TableView.java
@@ -0,0 +1,161 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.view;
+
+import java.lang.Integer;
+import java.lang.StringBuffer;
+
+import javax.swing.JLabel;
+
+import com.sun.star.accessibility.AccessibleEventId;
+import com.sun.star.accessibility.AccessibleEventObject;
+import com.sun.star.accessibility.XAccessible;
+import com.sun.star.accessibility.XAccessibleContext;
+import com.sun.star.accessibility.XAccessibleTable;
+import com.sun.star.uno.UnoRuntime;
+
+
+
+/** The <type>ContextView</type> class displays information accessible over
+ the <type>XAccessibleContext</type> interface. This includes name,
+ description, and role.
+*/
+public class TableView
+ extends ObjectView
+{
+ static public ObjectView Create (
+ ObjectViewContainer aContainer,
+ XAccessibleContext xContext)
+ {
+ if (UnoRuntime.queryInterface(
+ XAccessibleTable.class, xContext) != null)
+ return new TableView (aContainer);
+ else
+ return null;
+ }
+
+ public TableView (ObjectViewContainer aContainer)
+ {
+ super (aContainer);
+
+ ViewGridLayout aLayout = new ViewGridLayout (this);
+
+ maRowCountLabel = aLayout.AddLabeledEntry ("Row Count: ");
+ maColumnCountLabel = aLayout.AddLabeledEntry ("Column Count: ");
+ maCellCountLabel = aLayout.AddLabeledEntry ("Cell Count: ");
+ maSelectedRowsLabel = aLayout.AddLabeledEntry ("Selected Rows: ");
+ maSelectedColumnsLabel = aLayout.AddLabeledEntry ("Selected Columns: ");
+ }
+
+
+ public void SetObject (XAccessibleContext xContext)
+ {
+ mxTable = (XAccessibleTable)UnoRuntime.queryInterface(
+ XAccessibleTable.class, xContext);
+ super.SetObject (xContext);
+ }
+
+
+ public void Update ()
+ {
+ if (mxTable == null)
+ {
+ maRowCountLabel.setText ("<null object>");
+ maColumnCountLabel.setText ("<null object>");
+ maCellCountLabel.setText ("<null object>");
+ maSelectedRowsLabel.setText ("<null object>");
+ maSelectedColumnsLabel.setText ("<null object>");
+ }
+ else
+ {
+ int nRowCount = mxTable.getAccessibleRowCount();
+ int nColumnCount = mxTable.getAccessibleColumnCount();
+ maRowCountLabel.setText (Integer.toString (nRowCount));
+ maColumnCountLabel.setText (Integer.toString (nColumnCount));
+ maCellCountLabel.setText (Integer.toString (nRowCount*nColumnCount));
+
+ StringBuffer sList = new StringBuffer();
+ int[] aSelected = mxTable.getSelectedAccessibleRows();
+ boolean bFirst = true;
+ for (int i=0; i<aSelected.length; i++)
+ {
+ if ( ! bFirst)
+ {
+ sList.append (", ");
+ bFirst = false;
+ }
+ sList.append (Integer.toString(aSelected[i]));
+ }
+ maSelectedRowsLabel.setText (sList.toString());
+ sList = new StringBuffer();
+ aSelected = mxTable.getSelectedAccessibleColumns();
+ bFirst = true;
+ for (int i=0; i<aSelected.length; i++)
+ {
+ if ( ! bFirst)
+ {
+ sList.append (", ");
+ bFirst = false;
+ }
+ sList.append (Integer.toString(aSelected[i]));
+ }
+ maSelectedColumnsLabel.setText (sList.toString());
+ }
+ }
+
+
+
+
+ public String GetTitle ()
+ {
+ return ("Table");
+ }
+
+
+
+
+ /** Listen for changes regarding displayed values.
+ */
+ public void notifyEvent (AccessibleEventObject aEvent)
+ {
+ switch (aEvent.EventId)
+ {
+ case AccessibleEventId.TABLE_MODEL_CHANGED :
+ case AccessibleEventId.SELECTION_CHANGED:
+ Update ();
+ }
+ }
+
+ private XAccessibleTable mxTable;
+ private JLabel
+ maRowCountLabel,
+ maColumnCountLabel,
+ maCellCountLabel,
+ maSelectedRowsLabel,
+ maSelectedColumnsLabel;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/TextView.java b/accessibility/workben/org/openoffice/accessibility/awb/view/TextView.java
new file mode 100644
index 000000000000..4a838aa85884
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/TextView.java
@@ -0,0 +1,467 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.view;
+
+import java.awt.Color;
+import java.awt.Dimension;
+import java.awt.GridBagConstraints;
+import java.awt.GridBagLayout;
+import java.awt.event.ActionListener;
+import java.awt.event.ActionEvent;
+
+import javax.swing.JButton;
+import javax.swing.JComponent;
+import javax.swing.JLabel;
+import javax.swing.JPanel;
+import javax.swing.JScrollPane;
+import javax.swing.JSpinner;
+import javax.swing.JTree;
+import javax.swing.tree.TreeNode;
+import javax.swing.tree.DefaultMutableTreeNode;
+import javax.swing.tree.DefaultTreeModel;
+import javax.swing.tree.MutableTreeNode;
+
+import com.sun.star.accessibility.AccessibleEventId;
+import com.sun.star.accessibility.AccessibleEventObject;
+import com.sun.star.accessibility.AccessibleTextType;
+import com.sun.star.accessibility.AccessibleStateType;
+import com.sun.star.accessibility.TextSegment;
+import com.sun.star.accessibility.XAccessibleText;
+import com.sun.star.accessibility.XAccessibleContext;
+import com.sun.star.accessibility.XAccessibleMultiLineText;
+import com.sun.star.accessibility.XAccessibleStateSet;
+import com.sun.star.awt.Point;
+import com.sun.star.awt.Rectangle;
+import com.sun.star.beans.PropertyValue;
+import com.sun.star.lang.IndexOutOfBoundsException;
+import com.sun.star.lang.IllegalArgumentException;
+import com.sun.star.uno.UnoRuntime;
+
+import org.openoffice.accessibility.awb.view.text.CaretSpinnerModel;
+import org.openoffice.accessibility.awb.view.text.TextDialogFactory;
+
+
+public class TextView
+ extends ObjectView
+ implements ActionListener
+{
+
+ /** Create a TextView when the given object supports the
+ XAccessibleText interface.
+ */
+ static public ObjectView Create (
+ ObjectViewContainer aContainer,
+ XAccessibleContext xContext)
+ {
+ XAccessibleText xText = (XAccessibleText)UnoRuntime.queryInterface(
+ XAccessibleText.class, xContext);
+ if (xText != null)
+ return new TextView (aContainer);
+ else
+ return null;
+ }
+
+
+ public TextView (ObjectViewContainer aContainer)
+ {
+ super (aContainer);
+
+ ViewGridLayout aLayout = new ViewGridLayout (this);
+
+ maTextLabel = aLayout.AddLabeledString ("Text: ");
+ maCharacterArrayLabel = aLayout.AddLabeledEntry ("Characters: ");
+ maCharacterCountLabel = aLayout.AddLabeledEntry ("Character Count: ");
+ maSelectionLabel = aLayout.AddLabeledEntry ("Selection: ");
+ maBoundsLabel = aLayout.AddLabeledEntry ("Bounds Test: ");
+ maCaretPositionSpinner = (JSpinner)aLayout.AddLabeledComponent (
+ "Caret position:", new JSpinner());
+ Dimension aSize = maCaretPositionSpinner.getSize();
+ maCaretPositionSpinner.setPreferredSize (new Dimension (100,20));
+ maCaretLineNoLabel = aLayout.AddLabeledEntry ("Line number at caret: ");
+ maCaretLineTextLabel = aLayout.AddLabeledEntry ("Text of line at caret: ");
+ maLineNoFromCaretPosLabel = aLayout.AddLabeledEntry ("Line number at index of caret: ");
+ maLineTextFromCaretPosLabel = aLayout.AddLabeledEntry ("Text of line at index of caret: ");
+
+ JPanel aButtonPanel = new JPanel ();
+ aLayout.AddComponent (aButtonPanel);
+
+ JButton aButton = new JButton ("select...");
+ aButton.setFont (aLayout.GetFont());
+ aButton.addActionListener (this);
+ aButtonPanel.add (aButton);
+
+ aButton = new JButton ("copy...");
+ aButton.setFont (aLayout.GetFont());
+ aButton.addActionListener (this);
+ aButtonPanel.add (aButton);
+
+ // A tree that holds the text broken down into various segments.
+ maTree = new JTree ();
+ aLayout.AddComponent (new JScrollPane (
+ maTree,
+ JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,
+ JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED));
+ }
+
+
+ /** Additionally to the context store a reference to the
+ XAccessibleText interface.
+ */
+ public void SetObject (XAccessibleContext xObject)
+ {
+ mxText = (XAccessibleText)UnoRuntime.queryInterface(
+ XAccessibleText.class, xObject);
+ maCaretSpinnerModel = new CaretSpinnerModel(mxText);
+ maCaretPositionSpinner.setModel (maCaretSpinnerModel);
+ super.SetObject (xObject);
+ }
+
+ synchronized public void Destroy ()
+ {
+ mxText = null;
+ super.Destroy();
+ }
+
+ synchronized public void Update ()
+ {
+ maCaretPositionSpinner.setEnabled (mxText != null);
+ DefaultMutableTreeNode aRoot = new DefaultMutableTreeNode ("Text Segments");
+ if (mxText == null)
+ {
+ maTextLabel.setText ("<null object>");
+ maCharacterArrayLabel.setText ("<null object>");
+ maCharacterCountLabel.setText ("<null object>");
+ maSelectionLabel.setText ("<null object>");
+ maBoundsLabel.setText ("<null object>");
+ maCaretLineNoLabel.setText ("<null object>");
+ maCaretLineTextLabel.setText ("<null object>");
+ maLineNoFromCaretPosLabel.setText ("<null object>");
+ maLineTextFromCaretPosLabel.setText ("<null object>");
+ }
+ else
+ {
+ maTextLabel.setText (mxText.getText());
+ maCharacterArrayLabel.setText (GetCharacterArray());
+ maCharacterCountLabel.setText (
+ Integer.toString(mxText.getCharacterCount()));
+ // Selection.
+ maSelectionLabel.setText (
+ "[" + mxText.getSelectionStart()
+ + "," + mxText.getSelectionEnd()
+ + "] \"" + mxText.getSelectedText() + "\"");
+
+ // Character bounds.
+ maBoundsLabel.setText (GetTextBoundsString());
+
+ // Caret position.
+ maCaretPositionSpinner.setValue (new Integer (mxText.getCaretPosition()));
+
+ // Multi line methods.
+ XAccessibleMultiLineText xMultiText = (XAccessibleMultiLineText)
+ UnoRuntime.queryInterface( XAccessibleMultiLineText.class, mxText );
+
+ if( null != xMultiText ) {
+ try {
+ maCaretLineNoLabel.setText ( Integer.toString( xMultiText.getNumberOfLineWithCaret() ) );
+ TextSegment ts = xMultiText.getTextAtLineWithCaret();
+ maCaretLineTextLabel.setText ( "[" + ts.SegmentStart
+ + "," + ts.SegmentEnd
+ + "] \"" + ts.SegmentText + "\"");
+ maLineNoFromCaretPosLabel.setText ( Integer.toString( xMultiText.getLineNumberAtIndex( mxText.getCaretPosition() ) ) );
+ ts = xMultiText.getTextAtLineNumber(xMultiText.getLineNumberAtIndex( mxText.getCaretPosition() ) );
+ maLineTextFromCaretPosLabel.setText ( "[" + ts.SegmentStart
+ + "," + ts.SegmentEnd
+ + "] \"" + ts.SegmentText + "\"");
+ } catch( IndexOutOfBoundsException e) {
+ }
+ }
+
+ // Text segments.
+ aRoot.add (CreateNode ("Character", AccessibleTextType.CHARACTER));
+ aRoot.add (CreateNode ("Word", AccessibleTextType.WORD));
+ aRoot.add (CreateNode ("Sentence", AccessibleTextType.SENTENCE));
+ aRoot.add (CreateNode ("Paragraph", AccessibleTextType.PARAGRAPH));
+ aRoot.add (CreateNode ("Line", AccessibleTextType.LINE));
+ aRoot.add (CreateNode ("Attribute", AccessibleTextType.ATTRIBUTE_RUN));
+ aRoot.add (CreateNode ("Glyph", AccessibleTextType.GLYPH));
+ }
+ ((DefaultTreeModel)maTree.getModel()).setRoot (aRoot);
+ }
+
+ public String GetTitle ()
+ {
+ return ("Text");
+ }
+
+ public void notifyEvent (AccessibleEventObject aEvent)
+ {
+ System.out.println (aEvent);
+ switch (aEvent.EventId)
+ {
+ case AccessibleEventId.CARET_CHANGED :
+ maCaretSpinnerModel.Update();
+ Update ();
+ break;
+
+ case AccessibleEventId.TEXT_CHANGED :
+ case AccessibleEventId.TEXT_SELECTION_CHANGED:
+ Update ();
+ break;
+ }
+ }
+
+ public void actionPerformed (ActionEvent aEvent)
+ {
+ String sCommand = aEvent.getActionCommand();
+ if (sCommand.equals ("select..."))
+ TextDialogFactory.CreateSelectionDialog (mxContext);
+ else if (sCommand.equals ("copy..."))
+ TextDialogFactory.CreateCopyDialog (mxContext);
+ }
+
+
+
+ /** Create a string that is a list of all characters returned by the
+ getCharacter() method.
+ */
+ private String GetCharacterArray ()
+ {
+ // Do not show more than 30 characters.
+ int nCharacterCount = mxText.getCharacterCount();
+ int nMaxDisplayCount = 30;
+
+ // build up string
+ StringBuffer aCharacterArray = new StringBuffer();
+ int nIndex = 0;
+ try
+ {
+ while (nIndex<nCharacterCount && nIndex<nMaxDisplayCount)
+ {
+ aCharacterArray.append (mxText.getCharacter (nIndex));
+ if (nIndex < nCharacterCount-1)
+ aCharacterArray.append (",");
+ nIndex ++;
+ }
+ if (nMaxDisplayCount < nCharacterCount)
+ aCharacterArray.append (", ...");
+ }
+ catch (IndexOutOfBoundsException e)
+ {
+ aCharacterArray.append ("; Index Out Of Bounds at index " + nIndex);
+ }
+
+ return aCharacterArray.toString();
+ }
+
+
+
+ /** Iterate over all characters and translate their positions
+ back and forth.
+ */
+ private String GetTextBoundsString ()
+ {
+ StringBuffer aBuffer = new StringBuffer ();
+ try
+ {
+ // Iterate over all characters in the text.
+ int nCount = mxText.getCharacterCount();
+ for (int i=0; i<nCount; i++)
+ {
+ // Get bounds for this character.
+ Rectangle aBBox = mxText.getCharacterBounds (i);
+
+ // get the character by 'clicking' into the middle of
+ // the bounds
+ Point aMiddle = new Point();
+ aMiddle.X = aBBox.X + (aBBox.Width / 2) - 1;
+ aMiddle.Y = aBBox.Y + (aBBox.Height / 2) - 1;
+ int nIndex = mxText.getIndexAtPoint (aMiddle);
+
+ // get the character, or a '#' for an illegal index
+ if ((nIndex >= 0) && (nIndex < mxText.getCharacter(i)))
+ aBuffer.append (mxText.getCharacter(nIndex));
+ else
+ aBuffer.append ('#');
+ }
+ }
+ catch (IndexOutOfBoundsException aEvent)
+ {
+ // Ignore errors.
+ }
+
+ return aBuffer.toString();
+ }
+
+
+
+
+ private final static int BEFORE = -1;
+ private final static int AT = 0;
+ private final static int BEHIND = +1;
+
+ private MutableTreeNode CreateNode (String sTitle, short nTextType)
+ {
+ DefaultMutableTreeNode aNode = new DefaultMutableTreeNode (sTitle);
+
+ aNode.add (CreateSegmentNode ("Before", nTextType, BEFORE));
+ aNode.add (CreateSegmentNode ("At", nTextType, AT));
+ aNode.add (CreateSegmentNode ("Behind", nTextType, BEHIND));
+
+ return aNode;
+ }
+
+ private MutableTreeNode CreateSegmentNode (String sTitle, short nTextType, int nWhere)
+ {
+ TextSegment aSegment;
+ int nTextLength = mxText.getCharacterCount();
+ DefaultMutableTreeNode aNode = new DefaultMutableTreeNode (sTitle);
+ for (int nIndex=0; nIndex<=nTextLength; /* empty */)
+ {
+ aSegment = GetTextSegment (nIndex, nTextType, nWhere);
+ DefaultMutableTreeNode aSegmentNode = new DefaultMutableTreeNode (
+ new StringBuffer (
+ Integer.toString (nIndex) + " -> "
+ + Integer.toString (aSegment.SegmentStart) + " - "
+ + Integer.toString (aSegment.SegmentEnd) + " : "
+ + aSegment.SegmentText.toString()));
+ aNode.add (aSegmentNode);
+ if (nTextType == AccessibleTextType.ATTRIBUTE_RUN)
+ AddAttributeNodes (aSegmentNode, aSegment);
+ if (aSegment.SegmentEnd > nIndex)
+ nIndex = aSegment.SegmentEnd;
+ else
+ nIndex ++;
+ }
+
+ return aNode;
+ }
+
+
+ private TextSegment GetTextSegment (int nIndex, short nTextType, int nWhere)
+ {
+ TextSegment aSegment;
+
+ try
+ {
+ switch (nWhere)
+ {
+ case BEFORE:
+ aSegment = mxText.getTextBeforeIndex (nIndex, nTextType);
+ break;
+
+ case AT:
+ aSegment = mxText.getTextAtIndex (nIndex, nTextType);
+ break;
+
+ case BEHIND:
+ aSegment = mxText.getTextBehindIndex (nIndex, nTextType);
+ break;
+
+ default:
+ aSegment = new TextSegment();
+ aSegment.SegmentText = new String ("unknown position " + nWhere);
+ aSegment.SegmentStart = nIndex;
+ aSegment.SegmentStart = nIndex+1;
+ break;
+ }
+ }
+ catch (IndexOutOfBoundsException aException)
+ {
+ aSegment = new TextSegment ();
+ aSegment.SegmentText = new String ("Invalid index at ") + nIndex + " : "
+ + aException.toString();
+ aSegment.SegmentStart = nIndex;
+ aSegment.SegmentEnd = nIndex+1;
+ }
+ catch (IllegalArgumentException aException)
+ {
+ aSegment = new TextSegment ();
+ aSegment.SegmentText = new String ("Illegal argument at ") + nIndex + " : "
+ + aException.toString();
+ aSegment.SegmentStart = nIndex;
+ aSegment.SegmentEnd = nIndex+1;
+ }
+
+ return aSegment;
+ }
+
+
+ /** Add to the given node one node for every attribute of the given segment.
+ */
+ private void AddAttributeNodes (
+ DefaultMutableTreeNode aNode,
+ TextSegment aSegment)
+ {
+ try
+ {
+ PropertyValue[] aValues = mxText.getCharacterAttributes (
+ aSegment.SegmentStart, aAttributeList);
+ for (int i=0; i<aValues.length; i++)
+ aNode.add (new DefaultMutableTreeNode (
+ aValues[i].Name + ": " + aValues[i].Value));
+ }
+ catch (IndexOutOfBoundsException aException)
+ {
+ aNode.add (new DefaultMutableTreeNode (
+ "caught IndexOutOfBoundsException while retrieveing attributes"));
+ }
+ }
+
+ private XAccessibleText mxText;
+ private JLabel
+ maTextLabel,
+ maCharacterArrayLabel,
+ maCharacterCountLabel,
+ maSelectionLabel,
+ maBoundsLabel,
+ maCaretLineNoLabel,
+ maCaretLineTextLabel,
+ maLineNoFromCaretPosLabel,
+ maLineTextFromCaretPosLabel;
+
+ private JSpinner maCaretPositionSpinner;
+ private JTree maTree;
+ private CaretSpinnerModel maCaretSpinnerModel;
+
+ private static String[] aAttributeList = new String[] {
+ "CharBackColor",
+ "CharColor",
+ "CharEscapement",
+ "CharHeight",
+ "CharPosture",
+ "CharStrikeout",
+ "CharUnderline",
+ "CharWeight",
+ "ParaAdjust",
+ "ParaBottomMargin",
+ "ParaFirstLineIndent",
+ "ParaLeftMargin",
+ "ParaLineSpacing",
+ "ParaRightMargin",
+ "ParaTabStops"};
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/ViewGridLayout.java b/accessibility/workben/org/openoffice/accessibility/awb/view/ViewGridLayout.java
new file mode 100644
index 000000000000..bc598dcaf2fa
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/ViewGridLayout.java
@@ -0,0 +1,117 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.view;
+
+import java.awt.Color;
+import java.awt.Dimension;
+import java.awt.Font;
+import java.awt.GridBagLayout;
+import java.awt.GridBagConstraints;
+import javax.swing.JComponent;
+import javax.swing.JLabel;
+
+
+/** This class is a convenience class for views to use the GridBagLayout.
+*/
+class ViewGridLayout
+{
+ public ViewGridLayout (JComponent aComponent)
+ {
+ maComponent = aComponent;
+ maComponent.setLayout (new GridBagLayout());
+ maComponent.setMinimumSize (new Dimension (300,30));
+ maComponent.setMaximumSize (new Dimension (300,1000));
+ mnCurrentLine = 0;
+ }
+
+ public JLabel AddLabeledEntry (String sTitle)
+ {
+ return (JLabel)AddLabeledComponent (sTitle, new JLabel (""));
+ }
+
+ public JLabel AddLabeledString (String sTitle)
+ {
+ JLabel aLabel = AddLabeledEntry (sTitle);
+ aLabel.setBackground (new Color(220,220,220));
+ aLabel.setOpaque (true);
+ return aLabel;
+ }
+
+ public JComponent AddLabeledComponent (String sTitle, JComponent aComponent)
+ {
+ GridBagConstraints constraints = new GridBagConstraints ();
+ constraints.gridx = 0;
+ constraints.anchor = GridBagConstraints.WEST;
+ constraints.fill = GridBagConstraints.NONE;
+ constraints.gridy = mnCurrentLine;
+
+ JLabel aLabel = new JLabel(sTitle);
+ aLabel.setFont (saFont);
+ maComponent.add (aLabel, constraints);
+ constraints.gridx = 1;
+ constraints.weightx = 1;
+ constraints.fill = GridBagConstraints.NONE;
+ aComponent.setFont (saFont);
+ maComponent.add (aComponent, constraints);
+
+ mnCurrentLine += 1;
+
+ return aComponent;
+ }
+
+ public JComponent AddComponent (JComponent aComponent)
+ {
+ GridBagConstraints constraints = new GridBagConstraints ();
+ constraints.gridx = 0;
+ constraints.gridwidth = 2;
+ constraints.weightx = 1;
+ constraints.anchor = GridBagConstraints.WEST;
+ constraints.fill = GridBagConstraints.HORIZONTAL;
+ constraints.gridy = mnCurrentLine;
+
+ maComponent.add (aComponent, constraints);
+
+ mnCurrentLine += 1;
+
+ return aComponent;
+ }
+
+ static public Font GetFont ()
+ {
+ return saFont;
+ }
+
+ static private Font saFont;
+ private int mnCurrentLine;
+ private JComponent maComponent;
+
+ static
+ {
+ saFont = new Font ("Dialog", Font.PLAIN, 11);
+ }
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/makefile.common b/accessibility/workben/org/openoffice/accessibility/awb/view/makefile.common
new file mode 100644
index 000000000000..38033b3ab658
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/makefile.common
@@ -0,0 +1,45 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+JARFILES = jurt.jar unoil.jar ridl.jar
+JAVAFILES = \
+ ComponentView.java \
+ ContextView.java \
+ EditableTextView.java \
+ EventMonitorView.java \
+ FocusView.java \
+ LayoutManager.java \
+ ObjectView.java \
+ ObjectViewContainer.java \
+ ObjectViewContainerWindow.java \
+ ParentView.java \
+ SelectionView.java \
+ ServiceInterfaceView.java \
+ StateSetView.java \
+ TableView.java \
+ TextView.java \
+ ViewGridLayout.java
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/makefile.mk b/accessibility/workben/org/openoffice/accessibility/awb/view/makefile.mk
new file mode 100644
index 000000000000..0bfa48537ea2
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/makefile.mk
@@ -0,0 +1,51 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJNAME = awb
+PRJ = ..$/..$/..$/..$/..$/..
+TARGET = awb_view
+PACKAGE = org$/openoffice$/accessibility$/awb$/view
+
+USE_JAVAVER:=TRUE
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+.IF "$(JAVAVER:s/.//)" >= "140"
+
+.INCLUDE : makefile.common
+
+JAVACLASSFILES= $(foreach,i,$(JAVAFILES) $(CLASSDIR)$/$(PACKAGE)$/$(i:b).class)
+
+.ENDIF
+
+# --- Targets ------------------------------------------------------
+
+
+.INCLUDE : target.mk
+
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/text/CaretSpinnerModel.java b/accessibility/workben/org/openoffice/accessibility/awb/view/text/CaretSpinnerModel.java
new file mode 100644
index 000000000000..c210b0eff086
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/text/CaretSpinnerModel.java
@@ -0,0 +1,122 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.view.text;
+
+import java.lang.Integer;
+import java.util.Vector;
+import javax.swing.SpinnerModel;
+import javax.swing.event.ChangeEvent;
+import javax.swing.event.ChangeListener;
+
+import com.sun.star.accessibility.XAccessibleText;
+import com.sun.star.lang.IndexOutOfBoundsException;
+
+
+/** A simple model for JSpinner objects that clips the spinner values to valid
+ text indices.
+*/
+public class CaretSpinnerModel
+ implements SpinnerModel
+{
+ public CaretSpinnerModel (XAccessibleText xText)
+ {
+ mxText = xText;
+ maListeners = new Vector ();
+ }
+
+ public void addChangeListener (ChangeListener aListener)
+ {
+ if (aListener != null)
+ maListeners.add (aListener);
+ }
+
+ public void removeChangeListener (ChangeListener aListener)
+ {
+ maListeners.removeElement (aListener);
+ }
+
+ public Object getNextValue ()
+ {
+ if (mxText != null)
+ {
+ int nPosition = mxText.getCaretPosition();
+ if (nPosition+1 <= mxText.getCharacterCount())
+ return new Integer (nPosition+1);
+ }
+ return null;
+ }
+
+ public Object getPreviousValue ()
+ {
+ if (mxText != null)
+ {
+ int nPosition = mxText.getCaretPosition();
+ if (nPosition > 0)
+ return new Integer (nPosition-1);
+ }
+ return null;
+ }
+
+ public Object getValue ()
+ {
+ if (mxText != null)
+ return new Integer (mxText.getCaretPosition());
+ else
+ return null;
+ }
+
+ public void setValue (Object aValue)
+ {
+ if (mxText != null)
+ if (aValue instanceof Integer)
+ {
+ try
+ {
+ if( ((Integer)aValue).intValue() != mxText.getCaretPosition() )
+ mxText.setCaretPosition (((Integer)aValue).intValue());
+ }
+ catch (IndexOutOfBoundsException aException)
+ {
+ }
+ }
+ }
+
+ /** Call this method when the caret position has changes so that the model
+ can inform its listeners about it.
+ */
+ public void Update ()
+ {
+ ChangeEvent aEvent = new ChangeEvent (this);
+ for (int i=0; i<maListeners.size(); i++)
+ ((ChangeListener)maListeners.elementAt(i)).stateChanged (aEvent);
+ }
+
+ private XAccessibleText mxText;
+ private Integer maValue;
+ private Vector maListeners;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/text/Makefile b/accessibility/workben/org/openoffice/accessibility/awb/view/text/Makefile
new file mode 100644
index 000000000000..c58899a09f6e
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/text/Makefile
@@ -0,0 +1,13 @@
+# $Id: Makefile,v 1.1 2003/06/13 16:30:41 af Exp $
+
+all : package
+
+ROOT=../../../../..
+PACKAGE = org.openoffice.accessibility.awb.view.text
+SUBDIRS =
+include makefile.common
+
+include $(ROOT)/makefile.in
+
+
+package : $(CLASS_FILES)
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/text/TextActionDialog.java b/accessibility/workben/org/openoffice/accessibility/awb/view/text/TextActionDialog.java
new file mode 100644
index 000000000000..f37969d5ee59
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/text/TextActionDialog.java
@@ -0,0 +1,208 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.view.text;
+
+import java.awt.BorderLayout;
+import java.awt.Container;
+import java.awt.FlowLayout;
+import java.awt.event.ActionListener;
+import java.awt.event.ActionEvent;
+import javax.swing.JButton;
+import javax.swing.JCheckBox;
+import javax.swing.JDialog;
+import javax.swing.JLabel;
+import javax.swing.JOptionPane;
+import javax.swing.JPanel;
+import javax.swing.JTextArea;
+import javax.swing.text.JTextComponent;
+
+import com.sun.star.accessibility.XAccessibleContext;
+import com.sun.star.accessibility.XAccessibleText;
+import com.sun.star.accessibility.XAccessibleEditableText;
+import com.sun.star.lang.IndexOutOfBoundsException;
+import com.sun.star.uno.UnoRuntime;
+
+
+/**
+ * Display a dialog with a text field and a pair of cancel/do-it buttons
+ */
+class TextActionDialog
+ extends JDialog
+ implements ActionListener
+{
+ public TextActionDialog (
+ XAccessibleContext xContext,
+ String sExplanation,
+ String sTitle)
+ {
+ super();// AccessibilityWorkBench.Instance() );
+
+ mxContext = xContext;
+ msTitle = sTitle;
+ msExplanation = sExplanation;
+ Layout ();
+ setSize (350, 225);
+
+ }
+
+
+ /** build dialog */
+ protected void Layout()
+ {
+ setTitle (msTitle);
+
+ // vertical stacking of the elements
+ Container aContent = getContentPane();
+ // aContent.setLayout( new BorderLayout() );
+
+ // Label with explanation.
+ if (msExplanation.length() > 0)
+ aContent.add (new JLabel (msExplanation), BorderLayout.NORTH);
+
+ // the text field
+ maText = new JTextArea();
+ maText.setLineWrap (true);
+ maText.setEditable (false);
+ aContent.add (maText, BorderLayout.CENTER);
+
+ XAccessibleText xText = (XAccessibleText)UnoRuntime.queryInterface(
+ XAccessibleText.class, mxContext);
+ String sText = xText.getText();
+ maText.setText (sText);
+ maText.setRows (sText.length() / 40 + 1);
+ maText.setColumns (Math.min (Math.max (40, sText.length()), 20));
+
+ JPanel aButtons = new JPanel();
+ aButtons.setLayout (new FlowLayout());
+ maIndexToggle = new JCheckBox ("reverse selection");
+ aButtons.add (maIndexToggle);
+
+ JButton aActionButton = new JButton (msTitle);
+ aActionButton.setActionCommand ("Action");
+ aActionButton.addActionListener (this);
+ aButtons.add (aActionButton);
+
+ JButton aCancelButton = new JButton ("cancel");
+ aCancelButton.setActionCommand ("Cancel");
+ aCancelButton.addActionListener (this);
+ aButtons.add (aCancelButton);
+
+ // add Panel with buttons
+ aContent.add (aButtons, BorderLayout.SOUTH);
+ }
+
+ protected void Cancel()
+ {
+ hide();
+ dispose();
+ }
+
+ public void actionPerformed(ActionEvent e)
+ {
+ String sCommand = e.getActionCommand();
+
+ if( "Cancel".equals( sCommand ) )
+ Cancel();
+ else if( "Action".equals( sCommand ) )
+ Action();
+ }
+
+
+ protected int GetSelectionStart()
+ {
+ return GetSelection(true);
+ }
+ protected int GetSelectionEnd()
+ {
+ return GetSelection(false);
+ }
+ private int GetSelection (boolean bStart)
+ {
+ if (bStart ^ maIndexToggle.isSelected())
+ return maText.getSelectionStart();
+ else
+ return maText.getSelectionEnd();
+ }
+
+
+
+ protected void Action ()
+ {
+ String sError = null;
+ boolean bSuccess = true;
+ try
+ {
+ XAccessibleText xText =
+ (XAccessibleText)UnoRuntime.queryInterface(
+ XAccessibleText.class, mxContext);
+ if (xText != null)
+ bSuccess = bSuccess && TextAction (xText);
+
+ XAccessibleEditableText xEditableText =
+ (XAccessibleEditableText)UnoRuntime.queryInterface(
+ XAccessibleEditableText.class, mxContext);
+ if (xEditableText != null)
+ bSuccess = bSuccess && EditableTextAction (xEditableText);
+
+ if ( ! bSuccess)
+ sError = "Can't execute";
+ }
+ catch (IndexOutOfBoundsException e)
+ {
+ sError = "Index out of bounds";
+ }
+
+ if (sError != null)
+ JOptionPane.showMessageDialog (
+ this,// AccessibilityWorkBench.Instance(),
+ sError,
+ msTitle,
+ JOptionPane.ERROR_MESSAGE);
+
+ Cancel();
+ }
+
+ /** override this for dialog-specific action */
+ boolean TextAction (XAccessibleText xText)
+ throws IndexOutOfBoundsException
+ {
+ return true;
+ }
+
+ boolean EditableTextAction (XAccessibleEditableText xText)
+ throws IndexOutOfBoundsException
+ {
+ return true;
+ }
+
+ private XAccessibleContext mxContext;
+ protected JTextArea maText;
+ private String msTitle;
+ private String msExplanation;
+ private JCheckBox maIndexToggle;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/text/TextAttributeDialog.java b/accessibility/workben/org/openoffice/accessibility/awb/view/text/TextAttributeDialog.java
new file mode 100644
index 000000000000..dad548ca730e
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/text/TextAttributeDialog.java
@@ -0,0 +1,179 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.view.text;
+
+import java.awt.BorderLayout;
+import java.awt.Color;
+import java.awt.Component;
+import java.awt.Graphics;
+import java.awt.event.ActionListener;
+import java.awt.event.ActionEvent;
+import javax.swing.BoxLayout;
+import javax.swing.Icon;
+import javax.swing.JButton;
+import javax.swing.JCheckBox;
+import javax.swing.JColorChooser;
+import javax.swing.JPanel;
+import javax.swing.text.JTextComponent;
+
+import com.sun.star.accessibility.XAccessibleContext;
+import com.sun.star.accessibility.XAccessibleEditableText;
+import com.sun.star.beans.PropertyValue;
+import com.sun.star.lang.IndexOutOfBoundsException;
+import com.sun.star.uno.UnoRuntime;
+
+
+class TextAttributeDialog
+ extends TextActionDialog
+{
+ public TextAttributeDialog (XAccessibleContext xContext)
+ {
+ super (xContext,
+ "Choose attributes, select text, and press 'Set':",
+ "set");
+ }
+
+ protected void Layout ()
+ {
+ super.Layout ();
+
+ maForeground = Color.black;
+ maBackground = Color.white;
+
+ JPanel aPanel = new JPanel();
+ aPanel.setLayout (new BoxLayout (aPanel, BoxLayout.Y_AXIS));
+
+ maBoldCheckBox = new JCheckBox ("bold");
+ maUnderlineCheckBox = new JCheckBox ("underline");
+ maItalicsCheckBox = new JCheckBox ("italics");
+
+ JButton aForegroundButton = new JButton ("Foreground",
+ new TextAttributeDialog.ColorIcon(true));
+ aForegroundButton.addActionListener (new ActionListener()
+ {
+ public void actionPerformed (ActionEvent aEvent)
+ {
+ maForeground = JColorChooser.showDialog (
+ TextAttributeDialog.this,
+ "Select Foreground Color",
+ maForeground);
+ }
+ } );
+
+ JButton aBackgroundButton = new JButton("Background",
+ new TextAttributeDialog.ColorIcon(false));
+ aBackgroundButton.addActionListener (new ActionListener()
+ {
+ public void actionPerformed (ActionEvent eEvent)
+ {
+ maBackground = JColorChooser.showDialog(
+ TextAttributeDialog.this,
+ "Select Background Color",
+ maBackground);
+ }
+ } );
+
+ aPanel.add (maBoldCheckBox);
+ aPanel.add (maUnderlineCheckBox);
+ aPanel.add (maItalicsCheckBox);
+ aPanel.add (aForegroundButton);
+ aPanel.add (aBackgroundButton);
+
+ getContentPane().add (aPanel, BorderLayout.WEST);
+ }
+
+
+ /** edit the text */
+ boolean EditableTextAction (XAccessibleEditableText xText)
+ throws IndexOutOfBoundsException
+ {
+ PropertyValue[] aSequence = new PropertyValue[6];
+ aSequence[0] = new PropertyValue();
+ aSequence[0].Name = "CharWeight";
+ aSequence[0].Value = new Integer (maBoldCheckBox.isSelected() ? 150 : 100);
+ aSequence[1] = new PropertyValue();
+ aSequence[1].Name = "CharUnderline";
+ aSequence[1].Value = new Integer (maUnderlineCheckBox.isSelected() ? 1 : 0);
+ aSequence[2] = new PropertyValue();
+ aSequence[2].Name = "CharBackColor";
+ aSequence[2].Value = new Integer (maBackground.getRGB());
+ aSequence[3] = new PropertyValue();
+ aSequence[3].Name = "CharColor";
+ aSequence[3].Value = new Integer (maForeground.getRGB());
+ aSequence[4] = new PropertyValue();
+ aSequence[4].Name = "CharPosture";
+ aSequence[4].Value = new Integer (maItalicsCheckBox.isSelected() ? 1 : 0);
+ aSequence[5] = new PropertyValue();
+ aSequence[5].Name = "CharBackTransparent";
+ aSequence[5].Value = new Boolean (false);
+
+ return xText.setAttributes (
+ GetSelectionStart(),
+ GetSelectionEnd(),
+ aSequence);
+ }
+
+ class ColorIcon
+ implements Icon
+ {
+ public ColorIcon(boolean bWhich) { bForeground = bWhich; }
+ public int getIconHeight() { return nHeight; }
+ public int getIconWidth() { return nWidth; }
+ public void paintIcon (Component c, Graphics g, int x, int y)
+ {
+ g.setColor( getColor() );
+ g.fillRect( x, y, nHeight, nWidth );
+ g.setColor( c.getForeground() );
+ g.drawRect( x, y, nHeight, nWidth );
+ }
+ Color getColor()
+ {
+ if (bForeground)
+ return maForeground;
+ else
+ return maBackground;
+ }
+
+ private static final int nHeight = 16;
+ private static final int nWidth = 16;
+ private boolean bForeground;
+ }
+
+
+
+
+ private JCheckBox
+ maBoldCheckBox,
+ maUnderlineCheckBox,
+ maItalicsCheckBox;
+ private Color
+ maForeground,
+ maBackground;
+
+}
+
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/text/TextDialogFactory.java b/accessibility/workben/org/openoffice/accessibility/awb/view/text/TextDialogFactory.java
new file mode 100644
index 000000000000..cdb3f26b5e55
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/text/TextDialogFactory.java
@@ -0,0 +1,136 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.view.text;
+
+import javax.swing.JDialog;
+import javax.swing.text.JTextComponent;
+
+import com.sun.star.accessibility.XAccessibleContext;
+import com.sun.star.accessibility.XAccessibleEditableText;
+import com.sun.star.accessibility.XAccessibleText;
+import com.sun.star.lang.IndexOutOfBoundsException;
+import com.sun.star.uno.UnoRuntime;
+
+
+/** Factory for dialogs of the text views.
+*/
+public class TextDialogFactory
+{
+ static public JDialog CreateSelectionDialog (XAccessibleContext xContext)
+ {
+ JDialog aDialog = new TextActionDialog(
+ xContext,
+ "Select range:",
+ "select")
+ {
+ boolean TextAction (XAccessibleText xText)
+ throws IndexOutOfBoundsException
+ {
+ return xText.setSelection(
+ GetSelectionStart(),
+ GetSelectionEnd() );
+ }
+ };
+ if (aDialog != null)
+ aDialog.show();
+ return aDialog;
+ }
+
+ static public JDialog CreateCopyDialog (XAccessibleContext xContext)
+ {
+ JDialog aDialog = new TextActionDialog(
+ xContext,
+ "Select range and copy:",
+ "copy")
+ {
+ boolean TextAction (XAccessibleText xText)
+ throws IndexOutOfBoundsException
+ {
+ return xText.copyText(
+ GetSelectionStart(),
+ GetSelectionEnd());
+ }
+ };
+ if (aDialog != null)
+ aDialog.show();
+ return aDialog;
+ }
+ static public JDialog CreateCutDialog (XAccessibleContext xContext)
+ {
+ JDialog aDialog = new TextActionDialog(
+ xContext,
+ "Select range and cut:",
+ "cut")
+ {
+ boolean EditableTextAction (XAccessibleEditableText xText)
+ throws IndexOutOfBoundsException
+ {
+ return xText.cutText(
+ GetSelectionStart(),
+ GetSelectionEnd() );
+ }
+ };
+ if (aDialog != null)
+ aDialog.show();
+ return aDialog;
+ }
+ static public JDialog CreatePasteDialog (XAccessibleContext xContext)
+ {
+ JDialog aDialog = new TextActionDialog (
+ xContext,
+ "Place Caret and paste:",
+ "paste")
+ {
+ boolean EditableTextAction (XAccessibleEditableText xText)
+ throws IndexOutOfBoundsException
+ {
+ return xText.pasteText(maText.getCaretPosition());
+ }
+ };
+ if (aDialog != null)
+ aDialog.show();
+ return aDialog;
+ }
+ static public JDialog CreateEditDialog (XAccessibleContext xContext)
+ {
+ JDialog aDialog = new TextEditDialog (
+ xContext,
+ "Edit text:",
+ "edit");
+ if (aDialog != null)
+ aDialog.show();
+ return aDialog;
+ }
+ static public JDialog CreateFormatDialog (XAccessibleContext xContext)
+ {
+ JDialog aDialog = new TextAttributeDialog (xContext);
+ if (aDialog != null)
+ aDialog.show();
+ return aDialog;
+ }
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/text/TextEditDialog.java b/accessibility/workben/org/openoffice/accessibility/awb/view/text/TextEditDialog.java
new file mode 100644
index 000000000000..a8710cbad7cc
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/text/TextEditDialog.java
@@ -0,0 +1,122 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.awb.view.text;
+
+import javax.swing.text.JTextComponent;
+
+import com.sun.star.accessibility.XAccessibleContext;
+import com.sun.star.accessibility.XAccessibleEditableText;
+import com.sun.star.lang.IndexOutOfBoundsException;
+import com.sun.star.uno.UnoRuntime;
+
+
+class TextEditDialog
+ extends TextActionDialog
+{
+ public TextEditDialog (
+ XAccessibleContext xContext,
+ String sExplanation,
+ String sTitle )
+ {
+ super (xContext, sExplanation, sTitle);
+ }
+
+ protected void Layout()
+ {
+ super.Layout();
+ maText.setEditable (true);
+ }
+
+
+ /** edit the text */
+ boolean EditableTextAction (XAccessibleEditableText xText)
+ {
+ return UpdateText (xText, maText.getText());
+ }
+
+
+ /** update the text */
+ boolean UpdateText (XAccessibleEditableText xText, String sNew)
+ {
+ boolean bResult = false;
+
+ String sOld = xText.getText();
+
+ // false alarm? Early out if no change was done!
+ if ( ! sOld.equals (sNew))
+ {
+
+ // Get the minimum length of both strings.
+ int nMinLength = sOld.length();
+ if (sNew.length() < nMinLength)
+ nMinLength = sNew.length();
+
+ // Count equal characters from front and end.
+ int nFront = 0;
+ while ((nFront < nMinLength) &&
+ (sNew.charAt(nFront) == sOld.charAt(nFront)))
+ nFront++;
+ int nBack = 0;
+ while ((nBack < nMinLength) &&
+ (sNew.charAt(sNew.length()-nBack-1) ==
+ sOld.charAt(sOld.length()-nBack-1) ))
+ nBack++;
+ if (nFront + nBack > nMinLength)
+ nBack = nMinLength - nFront;
+
+ // so... the first nFront and the last nBack characters are the
+ // same. Change the others!
+ String sDel = sOld.substring (nFront, sOld.length() - nBack);
+ String sIns = sNew.substring (nFront, sNew.length() - nBack);
+
+ System.out.println ("edit text: " +
+ sOld.substring(0, nFront) +
+ " [ " + sDel + " -> " + sIns + " ] " +
+ sOld.substring(sOld.length() - nBack));
+
+ try
+ {
+ // edit the text, and use
+ // (set|insert|delete|replace)Text as needed
+ if( nFront+nBack == 0 )
+ bResult = xText.setText( sIns );
+ else if( sDel.length() == 0 )
+ bResult = xText.insertText( sIns, nFront );
+ else if( sIns.length() == 0 )
+ bResult = xText.deleteText( nFront, sOld.length()-nBack );
+ else
+ bResult = xText.replaceText(nFront, sOld.length()-nBack,sIns);
+ }
+ catch( IndexOutOfBoundsException aException)
+ {
+ }
+ }
+
+ return bResult;
+ }
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/text/makefile.common b/accessibility/workben/org/openoffice/accessibility/awb/view/text/makefile.common
new file mode 100644
index 000000000000..7d9a5e8febfa
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/text/makefile.common
@@ -0,0 +1,34 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+JARFILES = jurt.jar unoil.jar ridl.jar
+JAVAFILES = \
+ CaretSpinnerModel.java \
+ TextActionDialog.java \
+ TextEditDialog.java \
+ TextAttributeDialog.java \
+ TextDialogFactory.java
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/text/makefile.mk b/accessibility/workben/org/openoffice/accessibility/awb/view/text/makefile.mk
new file mode 100644
index 000000000000..1ec7da26619b
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/awb/view/text/makefile.mk
@@ -0,0 +1,51 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJNAME = awb
+PRJ = ..$/..$/..$/..$/..$/..$/..
+TARGET = awb_view_text
+PACKAGE = org$/openoffice$/accessibility$/awb$/view$/text
+
+USE_JAVAVER:=TRUE
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+.IF "$(JAVAVER:s/.//)" >= "140"
+
+.INCLUDE : makefile.common
+
+JAVACLASSFILES= $(foreach,i,$(JAVAFILES) $(CLASSDIR)$/$(PACKAGE)$/$(i:b).class)
+
+.ENDIF
+
+# --- Targets ------------------------------------------------------
+
+
+.INCLUDE : target.mk
+
diff --git a/accessibility/workben/org/openoffice/accessibility/misc/AccessibleEventMulticaster.java b/accessibility/workben/org/openoffice/accessibility/misc/AccessibleEventMulticaster.java
new file mode 100644
index 000000000000..0f56117e1fdf
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/misc/AccessibleEventMulticaster.java
@@ -0,0 +1,92 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+package org.openoffice.accessibility.misc;
+
+import com.sun.star.lang.EventObject;
+
+import com.sun.star.accessibility.AccessibleEventObject;
+import com.sun.star.accessibility.XAccessibleEventBroadcaster;
+import com.sun.star.accessibility.XAccessibleEventListener;
+
+/**
+ *
+ */
+public class AccessibleEventMulticaster implements XAccessibleEventListener {
+
+ private final XAccessibleEventListener a;
+ private final XAccessibleEventListener b;
+
+ /** Creates a new instance of AccessibleEventMulticaster */
+ protected AccessibleEventMulticaster(XAccessibleEventListener a,
+ XAccessibleEventListener b) {
+ this.a = a;
+ this.b = b;
+ }
+
+ protected XAccessibleEventListener remove(XAccessibleEventListener l) {
+ if (l == a)
+ return b;
+ if (l == b)
+ return a;
+ XAccessibleEventListener a2 = remove(a, l);
+ XAccessibleEventListener b2 = remove(b, l);
+ if (a2 == a && b2 == b) {
+ return this; // not found
+ }
+ return add(a2, b2);
+ }
+
+ public void notifyEvent(AccessibleEventObject accessibleEventObject) {
+ a.notifyEvent(accessibleEventObject);
+ b.notifyEvent(accessibleEventObject);
+ }
+
+ public void disposing(EventObject eventObject) {
+ a.disposing(eventObject);
+ b.disposing(eventObject);
+ }
+
+ public static XAccessibleEventListener add(XAccessibleEventListener a, XAccessibleEventListener b) {
+ if (a == null)
+ return b;
+ if (b == null)
+ return a;
+ return new AccessibleEventMulticaster(a,b);
+ }
+
+ public static XAccessibleEventListener remove(XAccessibleEventListener l, XAccessibleEventListener oldl) {
+ if (l == oldl || l == null) {
+ return null;
+ } else if (l instanceof AccessibleEventMulticaster) {
+ return ((AccessibleEventMulticaster) l).remove(oldl);
+ } else {
+ return l;
+ }
+ }
+
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/misc/Connector.java b/accessibility/workben/org/openoffice/accessibility/misc/Connector.java
new file mode 100644
index 000000000000..de188676e224
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/misc/Connector.java
@@ -0,0 +1,50 @@
+package org.openoffice.accessibility.misc;
+
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.util.Timer;
+import java.util.TimerTask;
+import java.util.Vector;
+
+
+/** Wait for an Office application and connect to it.
+*/
+public class Connector
+ extends TimerTask
+{
+ final public static long snDelay = 3000;
+
+ public Connector ()
+ {
+ maTimer = new Timer (true);
+ maListeners = new Vector();
+ run ();
+ }
+
+ public void AddConnectionListener (ActionListener aListener)
+ {
+ SimpleOffice aOffice = SimpleOffice.Instance();
+ if (aOffice!=null && aOffice.IsConnected())
+ aListener.actionPerformed (
+ new ActionEvent (aOffice,0,"<connected>"));
+ maListeners.add (aListener);
+ }
+
+ public void run ()
+ {
+ SimpleOffice aOffice = SimpleOffice.Instance();
+ if (aOffice!=null && !aOffice.IsConnected())
+ if ( ! aOffice.Connect())
+ maTimer.schedule (this, snDelay);
+ else
+ {
+ ActionEvent aEvent = new ActionEvent (aOffice,0,"<connected>");
+ for (int i=0; i<maListeners.size(); i++)
+ ((ActionListener)maListeners.elementAt(i)).actionPerformed(
+ aEvent);
+ }
+ }
+
+ Timer maTimer;
+ Vector maListeners;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/misc/InformationWriter.java b/accessibility/workben/org/openoffice/accessibility/misc/InformationWriter.java
new file mode 100644
index 000000000000..fbd1455cd295
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/misc/InformationWriter.java
@@ -0,0 +1,421 @@
+package org.openoffice.accessibility.misc;
+
+import java.lang.Thread;
+import java.io.PrintStream;
+
+import com.sun.star.awt.Rectangle;
+import com.sun.star.awt.XWindow;
+
+import com.sun.star.beans.Property;
+import com.sun.star.beans.PropertyValue;
+import com.sun.star.beans.XPropertySet;
+import com.sun.star.beans.XPropertySetInfo;
+
+import com.sun.star.container.XIndexAccess;
+import com.sun.star.container.XChild;
+import com.sun.star.container.XEnumerationAccess;
+import com.sun.star.container.XEnumeration;
+
+import com.sun.star.frame.XComponentLoader;
+import com.sun.star.frame.XController;
+import com.sun.star.frame.XDesktop;
+import com.sun.star.frame.XFrame;
+import com.sun.star.frame.XTasksSupplier;
+import com.sun.star.frame.XTask;
+
+import com.sun.star.lang.XComponent;
+import com.sun.star.lang.XMultiServiceFactory;
+import com.sun.star.lang.XServiceInfo;
+import com.sun.star.lang.XServiceName;
+import com.sun.star.lang.XTypeProvider;
+
+import com.sun.star.uno.UnoRuntime;
+import com.sun.star.uno.XInterface;
+import com.sun.star.uno.Type;
+
+import com.sun.star.drawing.XDrawView;
+import com.sun.star.drawing.XDrawPage;
+import com.sun.star.drawing.XShapes;
+import com.sun.star.drawing.XShape;
+import com.sun.star.drawing.XShapeDescriptor;
+
+import com.sun.star.accessibility.XAccessible;
+import com.sun.star.accessibility.XAccessibleContext;
+import com.sun.star.accessibility.XAccessibleComponent;
+import com.sun.star.accessibility.XAccessibleRelationSet;
+import com.sun.star.accessibility.XAccessibleStateSet;
+
+public class InformationWriter
+{
+ public InformationWriter (PrintStream aOut)
+ {
+ maOut = aOut;
+ }
+
+ public void drawPageTest (XInterface xPage)
+ {
+ try
+ {
+ printProperty (xPage, "BorderBottom ", "BorderBottom");
+ printProperty (xPage, "BorderLeft ", "BorderLeft");
+ printProperty (xPage, "BorderRight ", "BorderRight");
+ printProperty (xPage, "BorderTop ", "BorderTop");
+ printProperty (xPage, "Height ", "Height");
+ printProperty (xPage, "Width ", "Width");
+ printProperty (xPage, "Number ", "Number");
+ }
+ catch (Exception e)
+ {
+ System.out.println ("caught exception while testing draw page:" + e);
+ }
+ }
+
+ public void printProperty (XInterface xObject, String prefix, String name)
+ {
+ try
+ {
+ XPropertySet xPropertySet = (XPropertySet) UnoRuntime.queryInterface(
+ XPropertySet.class, xObject);
+ maOut.println (prefix +
+ xPropertySet.getPropertyValue (name));
+ }
+ catch (Exception e)
+ {
+ maOut.println ("caught exception while getting property "
+ + name + " : " + e);
+ }
+ }
+
+
+
+ public void showShapes (XDrawPage xPage)
+ {
+ try
+ {
+ XIndexAccess xShapeList = (XIndexAccess) UnoRuntime.queryInterface(
+ XIndexAccess.class, xPage);
+
+ maOut.println ("There are " + xShapeList.getCount()
+ + " shapes");
+ for (int i=0; i<xShapeList.getCount(); i++)
+ {
+ XShape xShape = (XShape) UnoRuntime.queryInterface(
+ XShape.class, xShapeList.getByIndex (i));
+
+ XShapeDescriptor xShapeDescriptor =
+ (XShapeDescriptor) UnoRuntime.queryInterface(
+ XShapeDescriptor.class, xShape);
+ String sName = xShapeDescriptor.getShapeType ();
+ maOut.println (" shape " + i + " : " + sName);
+
+ XPropertySet xPropertySet =
+ (XPropertySet) UnoRuntime.queryInterface(
+ XPropertySet.class, xShape);
+ Integer nZOrder =
+ (Integer) xPropertySet.getPropertyValue ("ZOrder");
+ maOut.println (" zorder = " + nZOrder);
+ }
+ }
+ catch (Exception e)
+ {
+ maOut.println ("caught exception in showShapes: " + e);
+ }
+ }
+
+
+
+
+ /** @descr Print all available services of the given object to the
+ standard output.
+ */
+ public void showServices (XInterface xObject)
+ {
+ try
+ {
+ maOut.println ("Services:");
+ XMultiServiceFactory xMSF = (XMultiServiceFactory) UnoRuntime.queryInterface (
+ XMultiServiceFactory.class,
+ xObject
+ );
+ if (xMSF == null)
+ maOut.println (" object does not support interface XMultiServiceFactory");
+ else
+ {
+ String[] sServiceNames = xMSF.getAvailableServiceNames ();
+ maOut.println (" object can create "
+ + sServiceNames.length + " services");
+ for (int i=0; i<sServiceNames.length; i++)
+ maOut.println (" service " + i + " : " + sServiceNames[i]);
+ }
+ }
+ catch (Exception e)
+ {
+ maOut.println ("caught exception in showServices : " + e);
+ }
+ }
+
+ /** @descr Print the service and implementation name of the given
+ object.
+ */
+ public void showInfo (XInterface xObject)
+ {
+ try
+ {
+ System.out.println ("Info:");
+ // Use interface XServiceName to retrieve name of (main) service.
+ XServiceName xSN = (XServiceName) UnoRuntime.queryInterface (
+ XServiceName.class, xObject);
+ if (xSN == null)
+ maOut.println (" interface XServiceName not supported");
+ else
+ {
+ maOut.println (" Service name : " + xSN.getServiceName ());
+ }
+
+ // Use interface XServiceInfo to retrieve information about
+ // supported services.
+ XServiceInfo xSI = (XServiceInfo) UnoRuntime.queryInterface (
+ XServiceInfo.class, xObject);
+ if (xSI == null)
+ maOut.println (" interface XServiceInfo not supported");
+ else
+ {
+ maOut.println (" Implementation name : "
+ + xSI.getImplementationName ());
+ }
+ }
+ catch (Exception e)
+ {
+ maOut.println ("caught exception in showInfo : " + e);
+ }
+ }
+
+
+
+
+ /** @descr Print information about supported interfaces.
+ */
+ public void showInterfaces (XInterface xObject)
+ {
+ try
+ {
+ maOut.println ("Interfaces:");
+ // Use interface XTypeProvider to retrieve a list of supported
+ // interfaces.
+ XTypeProvider xTP = (XTypeProvider) UnoRuntime.queryInterface (
+ XTypeProvider.class, xObject);
+ if (xTP == null)
+ maOut.println (" interface XTypeProvider not supported");
+ else
+ {
+ Type[] aTypeList = xTP.getTypes ();
+ maOut.println (" object supports " + aTypeList.length
+ + " interfaces");
+ for (int i=0; i<aTypeList.length; i++)
+ maOut.println (" " + i + " : "
+ + aTypeList[i].getTypeName());
+ }
+ }
+ catch (Exception e)
+ {
+ maOut.println ("caught exception in showInterfaces : " + e);
+ }
+ }
+
+
+ /** @descr Print information concerning the accessibility of the given
+ object.
+ */
+ public boolean showAccessibility (XInterface xObject, int depth)
+ {
+ try
+ {
+ // Create indentation string.
+ String sIndent = "";
+ while (depth-- > 0)
+ sIndent += " ";
+
+ // Get XAccessibleContext object if given object does not
+ // already support this interface.
+ XAccessibleContext xContext
+ = (XAccessibleContext) UnoRuntime.queryInterface (
+ XAccessibleContext.class, xObject);
+ if (xContext == null)
+ {
+ XAccessible xAccessible
+ = (XAccessible) UnoRuntime.queryInterface (
+ XAccessible.class, xObject);
+ if (xAccessible == null)
+ {
+ maOut.println (sIndent + "given object " + xObject
+ + " is not accessible");
+ return false;
+ }
+ else
+ xContext = xAccessible.getAccessibleContext();
+ }
+
+ // Print information about the accessible context.
+ if (xContext != null)
+ {
+ maOut.println (sIndent + "Name : "
+ + xContext.getAccessibleName());
+ maOut.println (sIndent + "Description : "
+ + xContext.getAccessibleDescription());
+ maOut.println (sIndent + "Role : "
+ + xContext.getAccessibleRole());
+ String sHasParent;
+ if (xContext.getAccessibleParent() != null)
+ {
+ maOut.println (sIndent + "Has parent : yes");
+ maOut.println (sIndent + "Parent index : "
+ + xContext.getAccessibleIndexInParent());
+ }
+ else
+ maOut.println (sIndent + "Has parent : no");
+ maOut.println (sIndent + "Child count : "
+ + xContext.getAccessibleChildCount());
+ maOut.print (sIndent + "Relation set : ");
+ XAccessibleRelationSet xRelationSet
+ = xContext.getAccessibleRelationSet();
+ if (xRelationSet != null)
+ {
+ maOut.print (xRelationSet.getRelationCount() + " (");
+ for (int i=0; i<xRelationSet.getRelationCount(); i++)
+ {
+ if (i > 0)
+ maOut.print (", ");
+ maOut.print (xRelationSet.getRelation(i).toString());
+ }
+ maOut.println (")");
+ }
+ else
+ maOut.println ("no relation set");
+
+ maOut.print (sIndent + "State set : ");
+ XAccessibleStateSet xStateSet =
+ xContext.getAccessibleStateSet();
+ if (xStateSet != null)
+ {
+ XIndexAccess xStates =
+ (XIndexAccess) UnoRuntime.queryInterface (
+ XIndexAccess.class, xStateSet);
+ maOut.print (xStates.getCount() + " (");
+ for (int i=0; i<xStates.getCount(); i++)
+ {
+ if (i > 0)
+ maOut.print (", ");
+ maOut.print (xStates.getByIndex(i).toString());
+ }
+ maOut.println (")");
+ }
+ else
+ maOut.println ("no state set");
+
+ showAccessibleComponent (xContext, sIndent);
+ }
+ else
+ maOut.println ("object has no accessible context.");
+
+ // showInfo (xContext);
+ // showServices (xContext);
+ // showInterfaces (xContext);
+ }
+ catch (Exception e)
+ {
+ System.out.println ("caught exception in showAccessibility :" + e);
+ }
+ return true;
+ }
+
+
+
+
+ /** @descr Print information about the given accessible component.
+ */
+ public void showAccessibleComponent (XInterface xObject, String sIndent)
+ {
+ try
+ {
+ XAccessibleComponent xComponent =
+ (XAccessibleComponent) UnoRuntime.queryInterface (
+ XAccessibleComponent.class, xObject);
+
+ // Print information about the accessible context.
+ if (xComponent != null)
+ {
+ maOut.println (sIndent + "Position : "
+ + xComponent.getLocation().X+", "
+ + xComponent.getLocation().Y);
+ maOut.println (sIndent + "Screen position : "
+ + xComponent.getLocationOnScreen().X+", "
+ + xComponent.getLocationOnScreen().Y);
+ maOut.println (sIndent + "Size : "
+ + xComponent.getSize().Width+", "
+ + xComponent.getSize().Height);
+ }
+ }
+ catch (Exception e)
+ {
+ System.out.println (
+ "caught exception in showAccessibleComponent : " + e);
+ }
+ }
+
+
+ /** Show a textual representation of the accessibility subtree rooted in
+ xRoot.
+ */
+ public boolean showAccessibilityTree (XAccessible xRoot, int depth)
+ {
+ try
+ {
+ if ( ! showAccessibility (xRoot, depth))
+ return false;
+
+ String sIndent = "";
+ for (int i=0; i<depth; i++)
+ sIndent += " ";
+
+ // Iterate over children and show them.
+ XAccessibleContext xContext = xRoot.getAccessibleContext();
+ if (xContext != null)
+ {
+ int n = xContext.getAccessibleChildCount();
+ for (int i=0; i<n; i++)
+ {
+ maOut.println (sIndent + "child " + i + " :");
+ showAccessibilityTree (xContext.getAccessibleChild(i),depth+1);
+ }
+ }
+ else
+ maOut.println ("Accessible object has no context");
+ }
+ catch (Exception e)
+ {
+ System.out.println (
+ "caught exception in showAccessibleTree : " + e);
+ return false;
+ }
+
+ return true;
+ }
+
+ public void showProperties (XInterface xObject)
+ {
+ XPropertySet xSet = (XPropertySet) UnoRuntime.queryInterface (
+ XPropertySet.class, xObject);
+ if (xSet == null)
+ maOut.println ("object does not support XPropertySet");
+ else
+ {
+ XPropertySetInfo xInfo = xSet.getPropertySetInfo ();
+ Property[] aProperties = xInfo.getProperties ();
+ int n = aProperties.length;
+ for (int i=0; i<n; i++)
+ maOut.println (i + " : " + aProperties[i].Name +", " + aProperties[i].Type);
+ }
+ }
+
+ private PrintStream maOut;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/misc/Makefile b/accessibility/workben/org/openoffice/accessibility/misc/Makefile
new file mode 100644
index 000000000000..ce9091d5d735
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/misc/Makefile
@@ -0,0 +1,38 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+all : package
+
+ROOT=../../../..
+PACKAGE = org.openoffice.accessibility.misc
+SUBDIRS =
+
+include makefile.common
+
+include $(ROOT)/makefile.in
+
+package: subdirs $(CLASS_FILES)
diff --git a/accessibility/workben/org/openoffice/accessibility/misc/MessageArea.java b/accessibility/workben/org/openoffice/accessibility/misc/MessageArea.java
new file mode 100644
index 000000000000..d990a517dfc1
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/misc/MessageArea.java
@@ -0,0 +1,125 @@
+package org.openoffice.accessibility.misc;
+
+import java.awt.Font;
+import java.awt.Rectangle;
+import java.awt.Color;
+import java.awt.Graphics;
+import javax.swing.JScrollPane;
+import javax.swing.JTextArea;
+import javax.swing.JScrollBar;
+
+
+
+/** A message area displays text in a scrollable text widget. It is a
+ singleton. Other objects can access it directly to display messages.
+*/
+public class MessageArea
+ extends JScrollPane
+{
+ public static synchronized MessageArea Instance ()
+ {
+ if (saInstance == null)
+ saInstance = new MessageArea ();
+ return saInstance;
+ }
+
+
+
+
+ /** Create a new message area. This method is private because the class is
+ a singleton and may therefore not be instanciated from the outside.
+ */
+ private MessageArea ()
+ {
+ maText = new JTextArea();
+ maText.setBackground (new Color (255,250,240));
+ maText.setFont (new Font ("Helvetica", Font.PLAIN, 9));
+ setViewportView (maText);
+ setVerticalScrollBarPolicy (JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
+ setHorizontalScrollBarPolicy (JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
+
+ printMessage (
+ "class path is " + System.getProperty ("java.class.path") + "\n");
+ }
+
+
+
+
+ /** Show the given string at the end of the message area and scroll to make
+ it visible.
+ */
+ public static synchronized void print (String aMessage)
+ {
+ print (0, aMessage);
+ }
+
+
+
+
+ /** Show the given string at the end of the message area and scroll to make
+ it visible. Indent the string as requested.
+ */
+ public static synchronized void print (int nIndentation, String aMessage)
+ {
+ while (nIndentation-- > 0)
+ aMessage = " " + aMessage;
+ Instance().printMessage(aMessage);
+ }
+
+
+
+
+ /** Show the given string at the end of the message area and scroll to make
+ it visible.
+ */
+ public static void println (String aMessage)
+ {
+ println (0, aMessage);
+ }
+
+
+
+
+ /** Show the given string at the end of the message area and scroll to make
+ it visible.
+ */
+ public static void println (int nIndentation, String aMessage)
+ {
+ print (nIndentation, aMessage+"\n");
+ }
+
+
+
+
+ public void paintComponent (Graphics g)
+ {
+ synchronized (g)
+ {
+ JScrollBar sb = getVerticalScrollBar();
+ if (sb != null)
+ {
+ int nScrollBarValue = sb.getMaximum() - sb.getVisibleAmount() - 1;
+ sb.setValue (nScrollBarValue);
+ }
+ super.paintComponent (g);
+ }
+ }
+
+
+
+
+ /** Append the given string to the end of the text and scroll so that it
+ becomes visible. This is an internal method. Use one of the static
+ and public ones.
+ */
+ private synchronized void printMessage (String aMessage)
+ {
+ maText.append (aMessage);
+ }
+
+
+
+
+ private static MessageArea saInstance = null;
+ private JTextArea maText;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/misc/NameProvider.java b/accessibility/workben/org/openoffice/accessibility/misc/NameProvider.java
new file mode 100644
index 000000000000..736bc2c7f17b
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/misc/NameProvider.java
@@ -0,0 +1,263 @@
+package org.openoffice.accessibility.misc;
+
+import java.util.HashMap;
+import com.sun.star.accessibility.AccessibleStateType;
+import com.sun.star.accessibility.AccessibleEventId;
+import com.sun.star.accessibility.AccessibleRole;
+import com.sun.star.accessibility.AccessibleRelationType;
+
+
+/** Provide names for several accessibility constants groups.
+*/
+public class NameProvider
+{
+ /** Return the name of the specified state.
+ @param nStateId
+ Id of the state for which to return its name. This is one of
+ the ids listed in the <type>AccessibleStateType</const>
+ constants group.
+ @return
+ Returns the name of the specified state. When an invalid or
+ unknown state id is given then a special string is returned that
+ says that the state does not exist.
+ */
+ public static String getStateName (int nStateId)
+ {
+ String sStateName = (String)maStateMap.get (new Integer(nStateId));
+ if (sStateName == null)
+ sStateName = new String ("<unknown state " + nStateId + ">");
+ return sStateName;
+ }
+
+
+ /** Return the name of the specified event.
+ @param nEventId
+ Id of the event type for which to return its name. This is one
+ of the ids listed in the <type>AccessibleEventId</const>
+ constants group.
+ @return
+ Returns the name of the specified event type or an empty string
+ if an invalid / unknown event id was given.
+ */
+ public static String getEventName (int nEventId)
+ {
+ return (String)maEventMap.get (new Integer(nEventId));
+ }
+
+
+ /** Return the name of the specified role.
+ @param nRole
+ Id of the role for which to return its name. This is one of
+ the ids listed in the <type>AccessibleRole</const>
+ constants group.
+ @return
+ Returns the name of the specified role or an empty string if an
+ invalid / unknown role id was given.
+ */
+ public static String getRoleName (int nRole)
+ {
+ return (String)maRoleMap.get (new Integer(nRole));
+ }
+
+
+ /** Return the name of the specified relation.
+ @param nRelation
+ Id of the relation for which to return its name. This is one of
+ the ids listed in the <type>AccessibleRelationType</const>
+ constants group.
+ @return
+ Returns the name of the specified relation type or an empty
+ string if an invalid / unknown role id was given.
+ */
+ public static String getRelationName (int nRelation)
+ {
+ return (String)maRelationMap.get (new Integer(nRelation));
+ }
+
+
+ private static HashMap maStateMap = new HashMap();
+ private static HashMap maEventMap = new HashMap();
+ private static HashMap maRoleMap = new HashMap();
+ private static HashMap maRelationMap = new HashMap();
+
+ static {
+ maStateMap.put (new Integer (AccessibleStateType.INVALID), "INVALID");
+ maStateMap.put (new Integer (AccessibleStateType.ACTIVE), "ACTIVE");
+ maStateMap.put (new Integer (AccessibleStateType.ARMED), "ARMED");
+ maStateMap.put (new Integer (AccessibleStateType.BUSY), "BUSY");
+ maStateMap.put (new Integer (AccessibleStateType.CHECKED), "CHECKED");
+ // maStateMap.put (new Integer (AccessibleStateType.COLLAPSED), "COLLAPSED");
+ maStateMap.put (new Integer (AccessibleStateType.DEFUNC), "DEFUNC");
+ maStateMap.put (new Integer (AccessibleStateType.EDITABLE), "EDITABLE");
+ maStateMap.put (new Integer (AccessibleStateType.ENABLED), "ENABLED");
+ maStateMap.put (new Integer (AccessibleStateType.EXPANDABLE), "EXPANDABLE");
+ maStateMap.put (new Integer (AccessibleStateType.EXPANDED), "EXPANDED");
+ maStateMap.put (new Integer (AccessibleStateType.FOCUSABLE), "FOCUSABLE");
+ maStateMap.put (new Integer (AccessibleStateType.FOCUSED), "FOCUSED");
+ maStateMap.put (new Integer (AccessibleStateType.HORIZONTAL), "HORIZONTAL");
+ maStateMap.put (new Integer (AccessibleStateType.ICONIFIED), "ICONIFIED");
+ maStateMap.put (new Integer (AccessibleStateType.MODAL), "MODAL");
+ maStateMap.put (new Integer (AccessibleStateType.MULTI_LINE), "MULTI_LINE");
+ maStateMap.put (new Integer (AccessibleStateType.MULTI_SELECTABLE), "MULTI_SELECTABLE");
+ maStateMap.put (new Integer (AccessibleStateType.OPAQUE), "OPAQUE");
+ maStateMap.put (new Integer (AccessibleStateType.PRESSED), "PRESSED");
+ maStateMap.put (new Integer (AccessibleStateType.RESIZABLE), "RESIZABLE");
+ maStateMap.put (new Integer (AccessibleStateType.SELECTABLE), "SELECTABLE");
+ maStateMap.put (new Integer (AccessibleStateType.SELECTED), "SELECTED");
+ maStateMap.put (new Integer (AccessibleStateType.SENSITIVE), "SENSITIVE");
+ maStateMap.put (new Integer (AccessibleStateType.SHOWING), "SHOWING");
+ maStateMap.put (new Integer (AccessibleStateType.SINGLE_LINE), "SINGLE_LINE");
+ maStateMap.put (new Integer (AccessibleStateType.STALE), "STALE");
+ maStateMap.put (new Integer (AccessibleStateType.TRANSIENT), "TRANSIENT");
+ maStateMap.put (new Integer (AccessibleStateType.VERTICAL), "VERTICAL");
+ maStateMap.put (new Integer (AccessibleStateType.VISIBLE), "VISIBLE");
+ maStateMap.put (new Integer (AccessibleStateType.MANAGES_DESCENDANTS),
+ "MANAGES_DESCENDANTS");
+ //maStateMap.put (new Integer (AccessibleStateType.INCONSISTENT),"INCONSISTENT");
+
+
+ maEventMap.put (new Integer (0),
+ "[UNKNOWN]");
+ maEventMap.put (new Integer (AccessibleEventId.NAME_CHANGED),
+ "NAME_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.DESCRIPTION_CHANGED),
+ "DESCRIPTION_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.ACTION_CHANGED),
+ "ACTION_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.STATE_CHANGED),
+ "STATE_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.ACTIVE_DESCENDANT_CHANGED),
+ "ACTIVE_DESCENDANT_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.BOUNDRECT_CHANGED),
+ "BOUNDRECT_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.CHILD),
+ "CHILD");
+ maEventMap.put (new Integer (AccessibleEventId.INVALIDATE_ALL_CHILDREN),
+ "INVALIDATE_ALL_CHILDREN");
+ maEventMap.put (new Integer (AccessibleEventId.SELECTION_CHANGED),
+ "SELECTION_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.VISIBLE_DATA_CHANGED),
+ "VISIBLE_DATA_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.VALUE_CHANGED),
+ "VALUE_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.CONTENT_FLOWS_FROM_RELATION_CHANGED),
+ "CONTENT_FLOWS_FROM_RELATION_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.CONTENT_FLOWS_TO_RELATION_CHANGED),
+ "CONTENT_FLOWS_TO_RELATION_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.CONTROLLED_BY_RELATION_CHANGED),
+ "CONTROLLED_BY_RELATION_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.CONTROLLER_FOR_RELATION_CHANGED),
+ "CONTROLLER_FOR_RELATION_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.LABEL_FOR_RELATION_CHANGED),
+ "LABEL_FOR_RELATION_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.LABELED_BY_RELATION_CHANGED),
+ "LABELED_BY_RELATION_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.MEMBER_OF_RELATION_CHANGED),
+ "MEMBER_OF_RELATION_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.SUB_WINDOW_OF_RELATION_CHANGED),
+ "SUB_WINDOW_OF_RELATION_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.CARET_CHANGED),
+ "CARET_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.TEXT_SELECTION_CHANGED),
+ "TEXT_SELECTION_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.TEXT_CHANGED),
+ "TEXT_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.TEXT_ATTRIBUTE_CHANGED),
+ "TEXT_ATTRIBUTE_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.HYPERTEXT_CHANGED),
+ "HYPERTEXT_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.TABLE_CAPTION_CHANGED),
+ "TABLE_CAPTION_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.TABLE_COLUMN_DESCRIPTION_CHANGED),
+ "TABLE_COLUMN_DESCRIPTION_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.TABLE_COLUMN_HEADER_CHANGED),
+ "TABLE_COLUMN_HEADER_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.TABLE_MODEL_CHANGED),
+ "TABLE_MODEL_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.TABLE_ROW_DESCRIPTION_CHANGED),
+ "TABLE_ROW_DESCRIPTION_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.TABLE_ROW_HEADER_CHANGED),
+ "TABLE_ROW_HEADER_CHANGED");
+ maEventMap.put (new Integer (AccessibleEventId.TABLE_SUMMARY_CHANGED),
+ "TABLE_SUMMARY_CHANGED");
+
+ maRoleMap.put (new Integer(AccessibleRole.UNKNOWN), "UNKNOWN");
+ maRoleMap.put (new Integer (AccessibleRole.UNKNOWN), "UNKNOWN");
+ maRoleMap.put (new Integer (AccessibleRole.ALERT), "ALERT");
+ maRoleMap.put (new Integer (AccessibleRole.COLUMN_HEADER), "COLUMN_HEADER");
+ maRoleMap.put (new Integer (AccessibleRole.CANVAS), "CANVAS");
+ maRoleMap.put (new Integer (AccessibleRole.CHECK_BOX), "CHECK_BOX");
+ maRoleMap.put (new Integer (AccessibleRole.CHECK_MENU_ITEM), "CHECK_MENU_ITEM");
+ maRoleMap.put (new Integer (AccessibleRole.COLOR_CHOOSER), "COLOR_CHOOSER");
+ maRoleMap.put (new Integer (AccessibleRole.COMBO_BOX), "COMBO_BOX");
+ maRoleMap.put (new Integer (AccessibleRole.DESKTOP_ICON), "DESKTOP_ICON");
+ maRoleMap.put (new Integer (AccessibleRole.DESKTOP_PANE), "DESKTOP_PANE");
+ maRoleMap.put (new Integer (AccessibleRole.DIRECTORY_PANE), "DIRECTORY_PANE");
+ maRoleMap.put (new Integer (AccessibleRole.DIALOG), "DIALOG");
+ maRoleMap.put (new Integer (AccessibleRole.DOCUMENT), "DOCUMENT");
+ maRoleMap.put (new Integer (AccessibleRole.EMBEDDED_OBJECT), "EMBEDDED_OBJECT");
+ maRoleMap.put (new Integer (AccessibleRole.END_NOTE), "END_NOTE");
+ maRoleMap.put (new Integer (AccessibleRole.FILE_CHOOSER), "FILE_CHOOSER");
+ maRoleMap.put (new Integer (AccessibleRole.FILLER), "FILLER");
+ maRoleMap.put (new Integer (AccessibleRole.FONT_CHOOSER), "FONT_CHOOSER");
+ maRoleMap.put (new Integer (AccessibleRole.FOOTER), "FOOTER");
+ maRoleMap.put (new Integer (AccessibleRole.FOOTNOTE), "FOOTNOTE");
+ maRoleMap.put (new Integer (AccessibleRole.FRAME), "FRAME");
+ maRoleMap.put (new Integer (AccessibleRole.GLASS_PANE), "GLASS_PANE");
+ maRoleMap.put (new Integer (AccessibleRole.GRAPHIC), "GRAPHIC");
+ maRoleMap.put (new Integer (AccessibleRole.GROUP_BOX), "GROUP_BOX");
+ maRoleMap.put (new Integer (AccessibleRole.HEADER), "HEADER");
+ maRoleMap.put (new Integer (AccessibleRole.HEADING), "HEADING");
+ maRoleMap.put (new Integer (AccessibleRole.HYPER_LINK), "HYPER_LINK");
+ maRoleMap.put (new Integer (AccessibleRole.ICON), "ICON");
+ maRoleMap.put (new Integer (AccessibleRole.INTERNAL_FRAME), "INTERNAL_FRAME");
+ maRoleMap.put (new Integer (AccessibleRole.LABEL), "LABEL");
+ maRoleMap.put (new Integer (AccessibleRole.LAYERED_PANE), "LAYERED_PANE");
+ maRoleMap.put (new Integer (AccessibleRole.LIST), "LIST");
+ maRoleMap.put (new Integer (AccessibleRole.LIST_ITEM), "LIST_ITEM");
+ maRoleMap.put (new Integer (AccessibleRole.MENU), "MENU");
+ maRoleMap.put (new Integer (AccessibleRole.MENU_BAR), "MENU_BAR");
+ maRoleMap.put (new Integer (AccessibleRole.MENU_ITEM), "MENU_ITEM");
+ maRoleMap.put (new Integer (AccessibleRole.OPTION_PANE), "OPTION_PANE");
+ maRoleMap.put (new Integer (AccessibleRole.PAGE_TAB), "PAGE_TAB");
+ maRoleMap.put (new Integer (AccessibleRole.PAGE_TAB_LIST), "PAGE_TAB_LIST");
+ maRoleMap.put (new Integer (AccessibleRole.PANEL), "PANEL");
+ maRoleMap.put (new Integer (AccessibleRole.PARAGRAPH), "PARAGRAPH");
+ maRoleMap.put (new Integer (AccessibleRole.PASSWORD_TEXT), "PASSWORD_TEXT");
+ maRoleMap.put (new Integer (AccessibleRole.POPUP_MENU), "POPUP_MENU");
+ maRoleMap.put (new Integer (AccessibleRole.PUSH_BUTTON), "PUSH_BUTTON");
+ maRoleMap.put (new Integer (AccessibleRole.PROGRESS_BAR), "PROGRESS_BAR");
+ maRoleMap.put (new Integer (AccessibleRole.RADIO_BUTTON), "RADIO_BUTTON");
+ maRoleMap.put (new Integer (AccessibleRole.RADIO_MENU_ITEM), "RADIO_MENU_ITEM");
+ maRoleMap.put (new Integer (AccessibleRole.ROW_HEADER), "ROW_HEADER");
+ maRoleMap.put (new Integer (AccessibleRole.ROOT_PANE), "ROOT_PANE");
+ maRoleMap.put (new Integer (AccessibleRole.SCROLL_BAR), "SCROLL_BAR");
+ maRoleMap.put (new Integer (AccessibleRole.SCROLL_PANE), "SCROLL_PANE");
+ maRoleMap.put (new Integer (AccessibleRole.SHAPE), "SHAPE");
+ maRoleMap.put (new Integer (AccessibleRole.SEPARATOR), "SEPARATOR");
+ maRoleMap.put (new Integer (AccessibleRole.SLIDER), "SLIDER");
+ maRoleMap.put (new Integer (AccessibleRole.SPIN_BOX), "SPIN_BOX");
+ maRoleMap.put (new Integer (AccessibleRole.SPLIT_PANE), "SPLIT_PANE");
+ maRoleMap.put (new Integer (AccessibleRole.STATUS_BAR), "STATUS_BAR");
+ maRoleMap.put (new Integer (AccessibleRole.TABLE), "TABLE");
+ maRoleMap.put (new Integer (AccessibleRole.TABLE_CELL), "TABLE_CELL");
+ maRoleMap.put (new Integer (AccessibleRole.TEXT), "TEXT");
+ maRoleMap.put (new Integer (AccessibleRole.TEXT_FRAME), "TEXT_FRAME");
+ maRoleMap.put (new Integer (AccessibleRole.TOGGLE_BUTTON), "TOGGLE_BUTTON");
+ maRoleMap.put (new Integer (AccessibleRole.TOOL_BAR), "TOOL_BAR");
+ maRoleMap.put (new Integer (AccessibleRole.TOOL_TIP), "TOOL_TIP");
+ maRoleMap.put (new Integer (AccessibleRole.TREE), "TREE");
+ maRoleMap.put (new Integer (AccessibleRole.VIEW_PORT), "VIEW_PORT");
+ maRoleMap.put (new Integer (AccessibleRole.WINDOW), "WINDOW");
+
+ maRelationMap.put (new Integer (AccessibleRelationType.INVALID), "INVALID");
+ maRelationMap.put (new Integer (AccessibleRelationType.CONTENT_FLOWS_FROM), "CONTENT_FLOWS_FROM");
+ maRelationMap.put (new Integer (AccessibleRelationType.CONTENT_FLOWS_TO), "CONTENT_FLOWS_TO");
+ maRelationMap.put (new Integer (AccessibleRelationType.CONTROLLED_BY), "CONTROLLED_BY");
+ maRelationMap.put (new Integer (AccessibleRelationType.CONTROLLER_FOR), "CONTROLLER_FOR");
+ maRelationMap.put (new Integer (AccessibleRelationType.LABEL_FOR), "LABEL_FOR");
+ maRelationMap.put (new Integer (AccessibleRelationType.LABELED_BY), "LABELED_BY");
+ maRelationMap.put (new Integer (AccessibleRelationType.MEMBER_OF), "MEMBER_OF");
+ maRelationMap.put (new Integer (AccessibleRelationType.SUB_WINDOW_OF), "SUB_WINDOW_OF");
+ }
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/misc/OfficeConnection.java b/accessibility/workben/org/openoffice/accessibility/misc/OfficeConnection.java
new file mode 100644
index 000000000000..d9f77d9e4e07
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/misc/OfficeConnection.java
@@ -0,0 +1,169 @@
+package org.openoffice.accessibility.misc;
+
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.io.PrintStream;
+import java.util.Timer;
+import java.util.TimerTask;
+import java.util.Vector;
+
+import com.sun.star.uno.UnoRuntime;
+import com.sun.star.bridge.XUnoUrlResolver;
+import com.sun.star.lang.XMultiServiceFactory;
+import com.sun.star.comp.helper.Bootstrap;
+
+/** This class establishes a connection to a StarOffice application.
+ */
+public class OfficeConnection
+ extends TimerTask
+{
+ final public static long snDelay = 3000;
+
+ public static synchronized OfficeConnection Instance ()
+ {
+ if (saInstance == null)
+ saInstance = new OfficeConnection ();
+ return saInstance;
+ }
+
+
+
+
+ static public void SetPipeName (String sPipeName)
+ {
+ ssDefaultPipeName = sPipeName;
+ }
+
+
+
+
+ public void AddConnectionListener (ActionListener aListener)
+ {
+ SimpleOffice aOffice = SimpleOffice.Instance();
+ if (IsValid())
+ aListener.actionPerformed (
+ new ActionEvent (aOffice,0,"<connected>"));
+ maListeners.add (aListener);
+ }
+
+
+
+ /** @descr Return the service manager that represents the connected
+ StarOffice application
+ */
+ public XMultiServiceFactory GetServiceManager ()
+ {
+ return maServiceManager;
+ }
+
+
+
+
+ /** Return a flag that indicates if the constructor has been able to
+ establish a valid connection.
+ */
+ public boolean IsValid ()
+ {
+ return (maServiceManager != null);
+ }
+
+
+
+
+ /** Connect to a already running StarOffice application that has
+ been started with a command line argument like
+ "-accept=pipe,name=<username>;urp;"
+ */
+ private boolean Connect ()
+ {
+ mbInitialized = true;
+ // Set up connection string.
+ String sConnectString = "uno:pipe,name=" + msPipeName
+ + ";urp;StarOffice.ServiceManager";
+
+ // connect to a running office and get the ServiceManager
+ try
+ {
+ // Create a URL Resolver.
+ XMultiServiceFactory aLocalServiceManager =
+ Bootstrap.createSimpleServiceManager();
+ XUnoUrlResolver aURLResolver =
+ (XUnoUrlResolver) UnoRuntime.queryInterface (
+ XUnoUrlResolver.class,
+ aLocalServiceManager.createInstance (
+ "com.sun.star.bridge.UnoUrlResolver")
+ );
+
+ maServiceManager =
+ (XMultiServiceFactory) UnoRuntime.queryInterface (
+ XMultiServiceFactory.class,
+ aURLResolver.resolve (sConnectString)
+ );
+ }
+
+ catch (Exception e)
+ {
+ if (maOut != null)
+ {
+ maOut.println ("Could not connect with "
+ + sConnectString + " : " + e);
+ maOut.println ("Please start OpenOffice/StarOffice with "
+ + "\"-accept=pipe,name=" + msPipeName + ";urp;\"");
+ }
+ }
+
+ return maServiceManager != null;
+ }
+
+
+ public void run ()
+ {
+ if ( ! IsValid())
+ {
+ MessageArea.println ("trying to connect");
+ if (Connect())
+ {
+ // Stop the timer.
+ cancel ();
+
+ ActionEvent aEvent = new ActionEvent (this,0,"<connected>");
+ for (int i=0; i<maListeners.size(); i++)
+ ((ActionListener)maListeners.elementAt(i)).actionPerformed(aEvent);
+ }
+ }
+ }
+
+ private OfficeConnection ()
+ {
+ this (null);
+ }
+
+
+ private OfficeConnection (PrintStream aOut)
+ {
+ msPipeName = ssDefaultPipeName;
+ maOut = aOut;
+ maListeners = new Vector();
+ maServiceManager = null;
+
+ maTimer = new Timer (true);
+ maTimer.schedule (this, 0, snDelay);
+ }
+
+
+ private static OfficeConnection saInstance = null;
+ private static String ssDefaultPipeName = System.getenv( "USER" );
+
+ private XMultiServiceFactory maServiceManager;
+ String msPipeName;
+
+ /** A value of true just indicates that it has been tried to establish a connection,
+ not that that has been successfull.
+ */
+ private boolean mbInitialized = false;
+
+ /// Stream used to print messages.
+ private PrintStream maOut;
+ private Timer maTimer;
+ private Vector maListeners;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/misc/Options.java b/accessibility/workben/org/openoffice/accessibility/misc/Options.java
new file mode 100644
index 000000000000..e3c358264a1d
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/misc/Options.java
@@ -0,0 +1,106 @@
+package org.openoffice.accessibility.misc;
+
+import java.io.File;
+import java.io.FileReader;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.util.Properties;
+
+
+/** Load from and save options into a file.
+*/
+public class Options
+ extends Properties
+{
+ static public Options Instance ()
+ {
+ if (saOptions == null)
+ saOptions = new Options ();
+ return saOptions;
+ }
+
+ static public void SetString (String sName, String sValue)
+ {
+ Instance().setProperty (sName, sValue);
+ Instance().Save ();
+ }
+
+ static public String GetString (String sName)
+ {
+ return Instance().getProperty (sName);
+ }
+
+ static public void SetBoolean (String sName, boolean bValue)
+ {
+ Instance().setProperty (sName, Boolean.toString(bValue));
+ Instance().Save ();
+ }
+
+ static public boolean GetBoolean (String sName)
+ {
+ return Boolean.valueOf(Instance().getProperty (sName)).booleanValue();
+ }
+
+ static public void SetInteger (String sName, int nValue)
+ {
+ Instance().setProperty (sName, Integer.toString(nValue));
+ Instance().Save ();
+ }
+
+ static public int GetInteger (String sName, int nDefault)
+ {
+ String sValue = Instance().getProperty (sName);
+ if (sValue == null)
+ return nDefault;
+ else
+ return Integer.parseInt (sValue);
+ }
+
+ public void Load (String sBaseName)
+ {
+ try
+ {
+ load (new FileInputStream (ProvideFile(sBaseName)));
+ }
+ catch (java.io.IOException e)
+ {
+ // Ignore a non-existing options file.
+ }
+ }
+
+ public void Save (String sBaseName)
+ {
+ ProvideFile(sBaseName);
+ Save ();
+ }
+
+ public void Save ()
+ {
+ if (maFile != null)
+ {
+ try
+ {
+ store (new FileOutputStream (maFile), null);
+ }
+ catch (java.io.IOException e)
+ {
+ }
+ }
+ }
+
+ private Options ()
+ {
+ maFile = null;
+ }
+
+ private File ProvideFile (String sBaseName)
+ {
+ maFile = new File (
+ System.getProperty ("user.home"),
+ sBaseName);
+ return maFile;
+ }
+
+ static private Options saOptions = null;
+ private File maFile;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/misc/SimpleOffice.java b/accessibility/workben/org/openoffice/accessibility/misc/SimpleOffice.java
new file mode 100644
index 000000000000..3a2dcdf21926
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/misc/SimpleOffice.java
@@ -0,0 +1,413 @@
+package org.openoffice.accessibility.misc;
+
+import java.lang.Thread;
+
+import com.sun.star.awt.Rectangle;
+import com.sun.star.awt.XExtendedToolkit;
+import com.sun.star.awt.XWindow;
+
+import com.sun.star.beans.PropertyValue;
+import com.sun.star.beans.XPropertySet;
+
+import com.sun.star.container.XIndexAccess;
+import com.sun.star.container.XChild;
+import com.sun.star.container.XEnumerationAccess;
+import com.sun.star.container.XEnumeration;
+
+import com.sun.star.frame.XComponentLoader;
+import com.sun.star.frame.XController;
+import com.sun.star.frame.XDesktop;
+import com.sun.star.frame.XFrame;
+import com.sun.star.frame.XModel;
+import com.sun.star.frame.XTasksSupplier;
+import com.sun.star.frame.XTask;
+
+import com.sun.star.lang.XComponent;
+import com.sun.star.lang.XMultiServiceFactory;
+import com.sun.star.lang.XServiceInfo;
+import com.sun.star.lang.XServiceName;
+import com.sun.star.lang.XTypeProvider;
+
+import com.sun.star.uno.UnoRuntime;
+import com.sun.star.uno.XInterface;
+import com.sun.star.uno.Type;
+
+import com.sun.star.drawing.XDrawView;
+import com.sun.star.drawing.XDrawPage;
+import com.sun.star.drawing.XShapes;
+import com.sun.star.drawing.XShape;
+import com.sun.star.drawing.XShapeDescriptor;
+
+import com.sun.star.accessibility.XAccessible;
+import com.sun.star.accessibility.XAccessibleContext;
+import com.sun.star.accessibility.XAccessibleComponent;
+import com.sun.star.accessibility.XAccessibleRelationSet;
+import com.sun.star.accessibility.XAccessibleStateSet;
+
+
+/** This singleton class tries to simplify some tasks like loading a document
+ or getting various objects.
+*/
+public class SimpleOffice
+{
+ synchronized static public SimpleOffice Instance ()
+ {
+ if (saInstance == null)
+ saInstance = new SimpleOffice ();
+
+ return saInstance;
+ }
+
+ synchronized static public void Clear ()
+ {
+ saInstance = null;
+ }
+
+
+ public XModel LoadDocument (String URL)
+ {
+ XModel xModel = null;
+ try
+ {
+ // Load the document from the specified URL.
+ XComponentLoader xLoader =
+ (XComponentLoader)UnoRuntime.queryInterface(
+ XComponentLoader.class, mxDesktop);
+
+ XComponent xComponent = xLoader.loadComponentFromURL (
+ URL,
+ "_blank",
+ 0,
+ new PropertyValue[0]
+ );
+
+ xModel = (XModel) UnoRuntime.queryInterface(
+ XModel.class, xComponent);
+ }
+ catch (java.lang.NullPointerException e)
+ {
+ MessageArea.println ("caught exception while loading "
+ + URL + " : " + e);
+ }
+ catch (Exception e)
+ {
+ MessageArea.println ("caught exception while loading "
+ + URL + " : " + e);
+ }
+ return xModel;
+ }
+
+
+
+
+ public XModel GetModel (String name)
+ {
+ XModel xModel = null;
+ try
+ {
+ XTasksSupplier xTasksSupplier =
+ (XTasksSupplier) UnoRuntime.queryInterface(
+ XTasksSupplier.class, mxDesktop);
+ XEnumerationAccess xEA = xTasksSupplier.getTasks();
+ XEnumeration xE = xEA.createEnumeration();
+ while (xE.hasMoreElements())
+ {
+ XTask xTask = (XTask) UnoRuntime.queryInterface(
+ XTask.class, xE.nextElement());
+ MessageArea.print (xTask.getName());
+ }
+ }
+ catch (Exception e)
+ {
+ MessageArea.println ("caught exception while getting Model " + name
+ + ": " + e);
+ }
+ return xModel;
+ }
+
+
+ public XModel GetModel (XDrawView xView)
+ {
+ XController xController = (XController) UnoRuntime.queryInterface(
+ XController.class, xView);
+ if (xController != null)
+ return xController.getModel();
+ else
+ {
+ MessageArea.println ("can't cast view to controller");
+ return null;
+ }
+ }
+
+
+
+
+ public XDesktop GetDesktop ()
+ {
+ if (mxDesktop != null)
+ return mxDesktop;
+ try
+ {
+ // Get the factory of the connected office.
+ XMultiServiceFactory xMSF =
+ OfficeConnection.Instance().GetServiceManager ();
+ if (xMSF == null)
+ {
+ MessageArea.println ("can't connect to office");
+ return null;
+ }
+ else
+ MessageArea.println ("Connected successfully.");
+
+ // Create a new desktop.
+ mxDesktop = (XDesktop) UnoRuntime.queryInterface(
+ XDesktop.class,
+ xMSF.createInstance ("com.sun.star.frame.Desktop")
+ );
+ }
+ catch (Exception e)
+ {
+ MessageArea.println ("caught exception while creating desktop: "
+ + e);
+ }
+
+ return mxDesktop;
+ }
+
+
+ /** Return a reference to the extended toolkit which is a broadcaster of
+ top window, key, and focus events.
+ */
+ public XExtendedToolkit GetExtendedToolkit ()
+ {
+ XExtendedToolkit xToolkit = null;
+ if (this != null)
+ try
+ {
+ // Get the factory of the connected office.
+ XMultiServiceFactory xMSF =
+ OfficeConnection.Instance().GetServiceManager ();
+ if (xMSF != null)
+ {
+ xToolkit = (XExtendedToolkit) UnoRuntime.queryInterface(
+ XExtendedToolkit.class,
+ xMSF.createInstance ("stardiv.Toolkit.VCLXToolkit")
+ );
+ }
+ }
+ catch (Exception e)
+ {
+ MessageArea.println (
+ "caught exception while creating extended toolkit: " + e);
+ }
+
+ return xToolkit;
+ }
+
+
+
+ static public XAccessible GetAccessibleObject (XInterface xObject)
+ {
+ XAccessible xAccessible = null;
+ try
+ {
+ xAccessible = (XAccessible) UnoRuntime.queryInterface(
+ XAccessible.class, xObject);
+ }
+ catch (Exception e)
+ {
+ System.err.println (
+ "caught exception while getting accessible object" + e);
+ e.printStackTrace (System.err);
+ }
+ return xAccessible;
+ }
+
+ static public XAccessibleContext GetAccessibleContext (XInterface xObject)
+ {
+ XAccessible xAccessible = GetAccessibleObject (xObject);
+ if (xAccessible != null)
+ return xAccessible.getAccessibleContext();
+ else
+ return null;
+ }
+
+ /** Return the root object of the accessibility hierarchy.
+ */
+ public XAccessible GetAccessibleRoot (XAccessible xAccessible)
+ {
+ try
+ {
+ XAccessible xParent = null;
+ do
+ {
+ XAccessibleContext xContext = xAccessible.getAccessibleContext();
+ if (xContext != null)
+ xParent = xContext.getAccessibleParent();
+ if (xParent != null)
+ xAccessible = xParent;
+ }
+ while (xParent != null);
+ }
+ catch (Exception e)
+ {
+ MessageArea.println (
+ "caught exception while getting accessible root" + e);
+ e.printStackTrace();
+ }
+ return xAccessible;
+ }
+
+
+
+
+ /** @descr Return the current window associated with the given
+ model.
+ */
+ public XWindow GetCurrentWindow ()
+ {
+ return GetCurrentWindow ((XModel) UnoRuntime.queryInterface(
+ XModel.class, GetDesktop()));
+ }
+
+
+
+
+
+ public XWindow GetCurrentWindow (XModel xModel)
+ {
+ XWindow xWindow = null;
+ try
+ {
+ if (xModel == null)
+ MessageArea.println ("invalid model (==null)");
+ XController xController = xModel.getCurrentController();
+ if (xController == null)
+ MessageArea.println ("can't get controller from model");
+ XFrame xFrame = xController.getFrame();
+ if (xFrame == null)
+ MessageArea.println ("can't get frame from controller");
+ xWindow = xFrame.getComponentWindow ();
+ if (xWindow == null)
+ MessageArea.println ("can't get window from frame");
+ }
+ catch (Exception e)
+ {
+ MessageArea.println ("caught exception while getting current window" + e);
+ }
+
+ return xWindow;
+ }
+
+
+ /** @descr Return the current draw page of the given desktop.
+ */
+ public XDrawPage GetCurrentDrawPage ()
+ {
+ return GetCurrentDrawPage (
+ (XDrawView) UnoRuntime.queryInterface(
+ XDrawView.class,
+ GetCurrentView()));
+ }
+
+
+
+
+ public XDrawPage GetCurrentDrawPage (XDrawView xView)
+ {
+ XDrawPage xPage = null;
+ try
+ {
+ if (xView == null)
+ MessageArea.println ("can't get current draw page from null view");
+ else
+ xPage = xView.getCurrentPage();
+ }
+ catch (Exception e)
+ {
+ MessageArea.println ("caught exception while getting current draw page : " + e);
+ }
+
+ return xPage;
+ }
+
+
+
+
+ /** @descr Return the current view of the given desktop.
+ */
+ public XDrawView GetCurrentView ()
+ {
+ return GetCurrentView (GetDesktop());
+ }
+
+ public XDrawView GetCurrentView (XDesktop xDesktop)
+ {
+ if (xDesktop == null)
+ MessageArea.println ("can't get desktop to retrieve current view");
+
+ XDrawView xView = null;
+ try
+ {
+ XComponent xComponent = xDesktop.getCurrentComponent();
+ if (xComponent == null)
+ MessageArea.println ("can't get component to retrieve current view");
+
+ XFrame xFrame = xDesktop.getCurrentFrame();
+ if (xFrame == null)
+ MessageArea.println ("can't get frame to retrieve current view");
+
+ XController xController = xFrame.getController();
+ if (xController == null)
+ MessageArea.println ("can't get controller to retrieve current view");
+
+ xView = (XDrawView) UnoRuntime.queryInterface(
+ XDrawView.class, xController);
+ if (xView == null)
+ MessageArea.println ("could not cast controller into view");
+ }
+ catch (Exception e)
+ {
+ MessageArea.println ("caught exception while getting current view : " + e);
+ }
+
+ return xView;
+ }
+
+
+
+
+ // Return the accessible object of the document window.
+ public static XAccessible GetAccessibleDocumentWindow (XDrawPage xPage)
+ {
+ XIndexAccess xShapeList = (XIndexAccess) UnoRuntime.queryInterface(
+ XIndexAccess.class, xPage);
+ if (xShapeList.getCount() > 0)
+ {
+ // All shapes return as accessible object the document window's
+ // accessible object. This is, of course, a hack and will be
+ // removed as soon as the missing infrastructure for obtaining
+ // the object directly is implemented.
+ XShape xShape = null;
+ try{
+ xShape = (XShape) UnoRuntime.queryInterface(
+ XShape.class, xShapeList.getByIndex (0));
+ } catch (Exception e)
+ {}
+ XAccessible xAccessible = (XAccessible) UnoRuntime.queryInterface (
+ XAccessible.class, xShape);
+ return xAccessible;
+ }
+ else
+ return null;
+ }
+
+ private SimpleOffice ()
+ {
+ }
+
+
+
+ private XDesktop mxDesktop;
+ private static SimpleOffice saInstance = null;
+}
diff --git a/accessibility/workben/org/openoffice/accessibility/misc/makefile.common b/accessibility/workben/org/openoffice/accessibility/misc/makefile.common
new file mode 100644
index 000000000000..0d7b0a3f51df
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/misc/makefile.common
@@ -0,0 +1,36 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+JARFILES = jurt.jar unoil.jar ridl.jar juh.jar java_uno.jar
+JAVAFILES = \
+ AccessibleEventMulticaster.java \
+ InformationWriter.java \
+ MessageArea.java \
+ NameProvider.java \
+ OfficeConnection.java \
+ Options.java \
+ SimpleOffice.java
diff --git a/accessibility/workben/org/openoffice/accessibility/misc/makefile.mk b/accessibility/workben/org/openoffice/accessibility/misc/makefile.mk
new file mode 100644
index 000000000000..312410c1de48
--- /dev/null
+++ b/accessibility/workben/org/openoffice/accessibility/misc/makefile.mk
@@ -0,0 +1,55 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJNAME = awb
+PRJ = ..$/..$/..$/..$/..
+TARGET = java_misc
+PACKAGE = org$/openoffice$/accessibility$/misc
+
+USE_JAVAVER:=TRUE
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+.IF "$(JAVAVER:s/.//)" >= "140"
+
+.INCLUDE : makefile.common
+
+JAVACLASSFILES= $(foreach,i,$(JAVAFILES) $(CLASSDIR)$/$(PACKAGE)$/$(i:b).class)
+
+#JARTARGET = $(TARGET).jar
+#JARCOMPRESS = TRUE
+#JARCLASSDIRS = $(PACKAGE) org/openoffice/java/accessibility/awb
+#CUSTOMMANIFESTFILE = manifest
+.ENDIF
+
+# --- Targets ------------------------------------------------------
+
+
+.INCLUDE : target.mk
+
diff --git a/acinclude.m4 b/acinclude.m4
new file mode 100644
index 000000000000..71f01544d11b
--- /dev/null
+++ b/acinclude.m4
@@ -0,0 +1,138 @@
+dnl @synopsis AX_FUNC_WHICH_GETSPNAM_R
+dnl
+dnl Determines which historical variant of the getspnam_r() call
+dnl (taking four or five arguments) is available on the system
+dnl and sets NEW_SHADOW_API=YES if there are five arguments.
+dnl
+dnl Originally named "AX_FUNC_WHICH_GETHOSTBYNAME_R". Rewritten
+dnl for AX_FUNC_WHICH_GETSPNAM_R
+dnl
+dnl @author Caolan McNamara <caolan@skynet.ie>
+dnl @author Daniel Richard G. <skunk@iskunk.org>
+dnl @version 2006-05-01
+dnl @license LGPL
+
+AC_DEFUN([AX_FUNC_WHICH_GETSPNAM_R], [
+
+ AC_LANG_PUSH(C)
+ AC_MSG_CHECKING([how many arguments getspnam_r() takes])
+
+ AC_CACHE_VAL(ac_cv_func_which_getspnam_r, [
+
+################################################################
+
+ac_cv_func_which_getspnam_r=unknown
+
+#
+# ONE ARGUMENT (sanity check)
+#
+
+# This should fail, as there is no variant of getspnam_r() that takes
+# a single argument. If it actually compiles, then we can assume that
+# netdb.h is not declaring the function, and the compiler is thereby
+# assuming an implicit prototype. In which case, we're out of luck.
+#
+AC_COMPILE_IFELSE(
+ AC_LANG_PROGRAM(
+ [[
+ #include <sys/types.h>
+ #include <shadow.h>
+ ]],
+ [[
+ const char *name = "myname";
+ getspnam_r(name) /* ; */
+ ]]),
+ ac_cv_func_which_getspnam_r=no)
+
+#
+# FIVE ARGUMENTS
+#
+
+if test "$ac_cv_func_which_getspnam_r" = "unknown"; then
+
+AC_COMPILE_IFELSE(
+ AC_LANG_PROGRAM(
+ [[
+ #include <sys/types.h>
+ #include <shadow.h>
+ ]],
+ [[
+ char buffer[[]] = { '\0' };
+ struct spwd spwdStruct;
+ const char *name = "myname";
+ getspnam_r(name, &spwdStruct, buffer, sizeof buffer, 0) /* ; */
+ ]]),
+ ac_cv_func_which_getspnam_r=five)
+
+fi
+
+#
+# FOUR ARGUMENTS
+#
+
+if test "$ac_cv_func_which_getspnam_r" = "unknown"; then
+
+AC_COMPILE_IFELSE(
+ AC_LANG_PROGRAM(
+ [[
+ #include <sys/types.h>
+ #include <shadow.h>
+ ]],
+ [[
+ char buffer[[]] = { '\0' };
+ struct spwd spwdStruct;
+ const char *name = "myname";
+ getspnam_r(name, &spwdStruct, buffer, sizeof buffer) /* ; */
+ ]]),
+ ac_cv_func_which_getspnam_r=four)
+
+fi
+
+################################################################
+
+]) dnl end AC_CACHE_VAL
+
+case "$ac_cv_func_which_getspnam_r" in
+ five)
+ AC_MSG_RESULT([five])
+ NEW_SHADOW_API=YES
+ ;;
+
+ four)
+ AC_MSG_RESULT([four])
+ ;;
+
+ no)
+ AC_MSG_RESULT([cannot find function declaration in shadow.h])
+ ;;
+
+ unknown)
+ AC_MSG_RESULT([can't tell])
+ ;;
+
+ *)
+ AC_MSG_ERROR([internal error])
+ ;;
+esac
+
+AC_LANG_POP(C)
+
+]) dnl end AC_DEFUN
+
+dnl PKG_CHECK_MODULES_MACHACK is like PKG_CHECK_MODULES but sneaks in an extra
+dnl argument between the first and second, denoting a program to call instead of
+dnl pkg-config on Mac OS X (aka Darwin):
+AC_DEFUN([PKG_CHECK_MODULES_MACHACK],
+[if test "$_os" = "Darwin"; then
+ AC_MSG_CHECKING($1_CFLAGS)
+ $1_CFLAGS=`$2 --cflags`
+ AC_MSG_RESULT($$1_CFLAGS)
+ AC_MSG_CHECKING($1_LIBS)
+ $1_LIBS=`$2 --libs`
+ AC_MSG_RESULT($$1_LIBS)
+ AC_SUBST($1_CFLAGS)
+ AC_SUBST($1_LIBS)
+ else
+ PKG_CHECK_MODULES($1, $3, $4, $5, $6)
+ fi
+])
diff --git a/afms/delzip b/afms/delzip
new file mode 100644
index 000000000000..e69de29bb2d1
--- /dev/null
+++ b/afms/delzip
diff --git a/afms/makefile.mk b/afms/makefile.mk
new file mode 100644
index 000000000000..b1d2eafe7555
--- /dev/null
+++ b/afms/makefile.mk
@@ -0,0 +1,58 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJ=.
+
+PRJNAME=afms
+TARGET=afms
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+.IF "$(L10N_framework)"==""
+# --- Files --------------------------------------------------------
+
+TARFILE_NAME=Adobe-Core35_AFMs-314
+TARFILE_MD5=1756c4fa6c616ae15973c104cd8cb256
+TARFILE_ROOTDIR=Adobe-Core35_AFMs-314
+
+# --- Targets ------------------------------------------------------
+
+.INCLUDE : set_ext.mk
+
+ZIP1DIR = $(MISC)$/build$/$(TARFILE_NAME)
+ZIP1TARGET = fontunxafm
+ZIP1LIST = *.afm -x "*Helvetica-Narrow*"
+
+.ENDIF # L10N_framework
+.INCLUDE : target.mk
+
+.INCLUDE : tg_ext.mk
+.IF "$(L10N_framework)"==""
+$(ZIP1TARGETN): $(PACKAGE_DIR)$/$(UNTAR_FLAG_FILE)
+
+.ENDIF # L10N_framework
diff --git a/afms/prj/build.lst b/afms/prj/build.lst
new file mode 100644
index 000000000000..ed3d01fd2909
--- /dev/null
+++ b/afms/prj/build.lst
@@ -0,0 +1,3 @@
+af afms : solenv NULL
+af afms usr1 - all af_mkout NULL
+af afms nmake - all af_fonts NULL
diff --git a/afms/prj/d.lst b/afms/prj/d.lst
new file mode 100644
index 000000000000..78396a65f9e4
--- /dev/null
+++ b/afms/prj/d.lst
@@ -0,0 +1,3 @@
+mkdir: %_DEST%\pck%_EXT%
+..\%__SRC%\bin\*.zip %_DEST%\pck%_EXT%\*.zip
+
diff --git a/agg/inc/agg_alpha_mask_u8.h b/agg/inc/agg_alpha_mask_u8.h
new file mode 100755
index 000000000000..b7e5c926092f
--- /dev/null
+++ b/agg/inc/agg_alpha_mask_u8.h
@@ -0,0 +1,499 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// scanline_u8 class
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_ALPHA_MASK_U8_INCLUDED
+#define AGG_ALPHA_MASK_U8_INCLUDED
+
+#include <string.h>
+#include "agg_basics.h"
+#include "agg_rendering_buffer.h"
+
+namespace agg
+{
+ //===================================================one_component_mask_u8
+ struct one_component_mask_u8
+ {
+ static unsigned calculate(const int8u* p) { return *p; }
+ };
+
+
+ //=====================================================rgb_to_gray_mask_u8
+ template<unsigned R, unsigned G, unsigned B>
+ struct rgb_to_gray_mask_u8
+ {
+ static unsigned calculate(const int8u* p)
+ {
+ return (p[R]*77 + p[G]*150 + p[B]*29) >> 8;
+ }
+ };
+
+ //==========================================================alpha_mask_u8
+ template<unsigned Step=1, unsigned Offset=0, class MaskF=one_component_mask_u8>
+ class alpha_mask_u8
+ {
+ public:
+ typedef int8u cover_type;
+ typedef alpha_mask_u8<Step, Offset, MaskF> self_type;
+ enum
+ {
+ cover_shift = 8,
+ cover_none = 0,
+ cover_full = 255
+ };
+
+ alpha_mask_u8() : m_rbuf(0) {}
+ alpha_mask_u8(rendering_buffer& rbuf) : m_rbuf(&rbuf) {}
+
+ void attach(rendering_buffer& rbuf) { m_rbuf = &rbuf; }
+
+ MaskF& mask_function() { return m_mask_function; }
+ const MaskF& mask_function() const { return m_mask_function; }
+
+
+ //--------------------------------------------------------------------
+ cover_type pixel(int x, int y) const
+ {
+ if(x >= 0 && y >= 0 &&
+ x < (int)m_rbuf->width() &&
+ y <= (int)m_rbuf->height())
+ {
+ return (cover_type)m_mask_function.calculate(
+ m_rbuf->row(y) + x * Step + Offset);
+ }
+ return 0;
+ }
+
+ //--------------------------------------------------------------------
+ cover_type combine_pixel(int x, int y, cover_type val) const
+ {
+ if(x >= 0 && y >= 0 &&
+ x < (int)m_rbuf->width() &&
+ y <= (int)m_rbuf->height())
+ {
+ return (cover_type)((val *
+ m_mask_function.calculate(
+ m_rbuf->row(y) + x * Step + Offset)) >>
+ cover_shift);
+ }
+ return 0;
+ }
+
+
+ //--------------------------------------------------------------------
+ void fill_hspan(int x, int y, cover_type* dst, int num_pix) const
+ {
+ int xmax = m_rbuf->width() - 1;
+ int ymax = m_rbuf->height() - 1;
+
+ int count = num_pix;
+ cover_type* covers = dst;
+
+ if(y < 0 || y > ymax)
+ {
+ memset(dst, 0, num_pix * sizeof(cover_type));
+ return;
+ }
+
+ if(x < 0)
+ {
+ count += x;
+ if(count <= 0)
+ {
+ memset(dst, 0, num_pix * sizeof(cover_type));
+ return;
+ }
+ memset(covers, 0, -x * sizeof(cover_type));
+ covers -= x;
+ x = 0;
+ }
+
+ if(x + count > xmax)
+ {
+ int rest = x + count - xmax - 1;
+ count -= rest;
+ if(count <= 0)
+ {
+ memset(dst, 0, num_pix * sizeof(cover_type));
+ return;
+ }
+ memset(covers + count, 0, rest * sizeof(cover_type));
+ }
+
+ const int8u* mask = m_rbuf->row(y) + x * Step + Offset;
+ do
+ {
+ *covers++ = (cover_type)m_mask_function.calculate(mask);
+ mask += Step;
+ }
+ while(--count);
+ }
+
+
+ //--------------------------------------------------------------------
+ void combine_hspan(int x, int y, cover_type* dst, int num_pix) const
+ {
+ int xmax = m_rbuf->width() - 1;
+ int ymax = m_rbuf->height() - 1;
+
+ int count = num_pix;
+ cover_type* covers = dst;
+
+ if(y < 0 || y > ymax)
+ {
+ memset(dst, 0, num_pix * sizeof(cover_type));
+ return;
+ }
+
+ if(x < 0)
+ {
+ count += x;
+ if(count <= 0)
+ {
+ memset(dst, 0, num_pix * sizeof(cover_type));
+ return;
+ }
+ memset(covers, 0, -x * sizeof(cover_type));
+ covers -= x;
+ x = 0;
+ }
+
+ if(x + count > xmax)
+ {
+ int rest = x + count - xmax - 1;
+ count -= rest;
+ if(count <= 0)
+ {
+ memset(dst, 0, num_pix * sizeof(cover_type));
+ return;
+ }
+ memset(covers + count, 0, rest * sizeof(cover_type));
+ }
+
+ const int8u* mask = m_rbuf->row(y) + x * Step + Offset;
+ do
+ {
+ *covers = (cover_type)(((*covers) *
+ m_mask_function.calculate(mask)) >>
+ cover_shift);
+ ++covers;
+ mask += Step;
+ }
+ while(--count);
+ }
+
+ //--------------------------------------------------------------------
+ void fill_vspan(int x, int y, cover_type* dst, int num_pix) const
+ {
+ int xmax = m_rbuf->width() - 1;
+ int ymax = m_rbuf->height() - 1;
+
+ int count = num_pix;
+ cover_type* covers = dst;
+
+ if(x < 0 || x > xmax)
+ {
+ memset(dst, 0, num_pix * sizeof(cover_type));
+ return;
+ }
+
+ if(y < 0)
+ {
+ count += y;
+ if(count <= 0)
+ {
+ memset(dst, 0, num_pix * sizeof(cover_type));
+ return;
+ }
+ memset(covers, 0, -y * sizeof(cover_type));
+ covers -= y;
+ y = 0;
+ }
+
+ if(y + count > ymax)
+ {
+ int rest = y + count - ymax - 1;
+ count -= rest;
+ if(count <= 0)
+ {
+ memset(dst, 0, num_pix * sizeof(cover_type));
+ return;
+ }
+ memset(covers + count, 0, rest * sizeof(cover_type));
+ }
+
+ const int8u* mask = m_rbuf->row(y) + x * Step + Offset;
+ do
+ {
+ *covers++ = (cover_type)m_mask_function.calculate(mask);
+ mask += m_rbuf->stride();
+ }
+ while(--count);
+ }
+
+ //--------------------------------------------------------------------
+ void combine_vspan(int x, int y, cover_type* dst, int num_pix) const
+ {
+ int xmax = m_rbuf->width() - 1;
+ int ymax = m_rbuf->height() - 1;
+
+ int count = num_pix;
+ cover_type* covers = dst;
+
+ if(x < 0 || x > xmax)
+ {
+ memset(dst, 0, num_pix * sizeof(cover_type));
+ return;
+ }
+
+ if(y < 0)
+ {
+ count += y;
+ if(count <= 0)
+ {
+ memset(dst, 0, num_pix * sizeof(cover_type));
+ return;
+ }
+ memset(covers, 0, -y * sizeof(cover_type));
+ covers -= y;
+ y = 0;
+ }
+
+ if(y + count > ymax)
+ {
+ int rest = y + count - ymax - 1;
+ count -= rest;
+ if(count <= 0)
+ {
+ memset(dst, 0, num_pix * sizeof(cover_type));
+ return;
+ }
+ memset(covers + count, 0, rest * sizeof(cover_type));
+ }
+
+ const int8u* mask = m_rbuf->row(y) + x * Step + Offset;
+ do
+ {
+ *covers = (cover_type)(((*covers) *
+ m_mask_function.calculate(mask)) >>
+ cover_shift);
+ ++covers;
+ mask += m_rbuf->stride();
+ }
+ while(--count);
+ }
+
+
+ private:
+ alpha_mask_u8(const self_type&);
+ const self_type& operator = (const self_type&);
+
+ rendering_buffer* m_rbuf;
+ MaskF m_mask_function;
+ };
+
+
+ typedef alpha_mask_u8<1, 0> alpha_mask_gray8; //----alpha_mask_gray8
+
+ typedef alpha_mask_u8<3, 0> alpha_mask_rgb24r; //----alpha_mask_rgb24r
+ typedef alpha_mask_u8<3, 1> alpha_mask_rgb24g; //----alpha_mask_rgb24g
+ typedef alpha_mask_u8<3, 2> alpha_mask_rgb24b; //----alpha_mask_rgb24b
+
+ typedef alpha_mask_u8<3, 2> alpha_mask_bgr24r; //----alpha_mask_bgr24r
+ typedef alpha_mask_u8<3, 1> alpha_mask_bgr24g; //----alpha_mask_bgr24g
+ typedef alpha_mask_u8<3, 0> alpha_mask_bgr24b; //----alpha_mask_bgr24b
+
+ typedef alpha_mask_u8<4, 0> alpha_mask_rgba32r; //----alpha_mask_rgba32r
+ typedef alpha_mask_u8<4, 1> alpha_mask_rgba32g; //----alpha_mask_rgba32g
+ typedef alpha_mask_u8<4, 2> alpha_mask_rgba32b; //----alpha_mask_rgba32b
+ typedef alpha_mask_u8<4, 3> alpha_mask_rgba32a; //----alpha_mask_rgba32a
+
+ typedef alpha_mask_u8<4, 1> alpha_mask_argb32r; //----alpha_mask_argb32r
+ typedef alpha_mask_u8<4, 2> alpha_mask_argb32g; //----alpha_mask_argb32g
+ typedef alpha_mask_u8<4, 3> alpha_mask_argb32b; //----alpha_mask_argb32b
+ typedef alpha_mask_u8<4, 0> alpha_mask_argb32a; //----alpha_mask_argb32a
+
+ typedef alpha_mask_u8<4, 2> alpha_mask_bgra32r; //----alpha_mask_bgra32r
+ typedef alpha_mask_u8<4, 1> alpha_mask_bgra32g; //----alpha_mask_bgra32g
+ typedef alpha_mask_u8<4, 0> alpha_mask_bgra32b; //----alpha_mask_bgra32b
+ typedef alpha_mask_u8<4, 3> alpha_mask_bgra32a; //----alpha_mask_bgra32a
+
+ typedef alpha_mask_u8<4, 3> alpha_mask_abgr32r; //----alpha_mask_abgr32r
+ typedef alpha_mask_u8<4, 2> alpha_mask_abgr32g; //----alpha_mask_abgr32g
+ typedef alpha_mask_u8<4, 1> alpha_mask_abgr32b; //----alpha_mask_abgr32b
+ typedef alpha_mask_u8<4, 0> alpha_mask_abgr32a; //----alpha_mask_abgr32a
+
+ typedef alpha_mask_u8<3, 0, rgb_to_gray_mask_u8<0, 1, 2> > alpha_mask_rgb24gray; //----alpha_mask_rgb24gray
+ typedef alpha_mask_u8<3, 0, rgb_to_gray_mask_u8<2, 1, 0> > alpha_mask_bgr24gray; //----alpha_mask_bgr24gray
+ typedef alpha_mask_u8<4, 0, rgb_to_gray_mask_u8<0, 1, 2> > alpha_mask_rgba32gray; //----alpha_mask_rgba32gray
+ typedef alpha_mask_u8<4, 1, rgb_to_gray_mask_u8<0, 1, 2> > alpha_mask_argb32gray; //----alpha_mask_argb32gray
+ typedef alpha_mask_u8<4, 0, rgb_to_gray_mask_u8<2, 1, 0> > alpha_mask_bgra32gray; //----alpha_mask_bgra32gray
+ typedef alpha_mask_u8<4, 1, rgb_to_gray_mask_u8<2, 1, 0> > alpha_mask_abgr32gray; //----alpha_mask_abgr32gray
+
+
+
+ //==========================================================amask_no_clip_u8
+ template<unsigned Step=1, unsigned Offset=0, class MaskF=one_component_mask_u8>
+ class amask_no_clip_u8
+ {
+ public:
+ typedef int8u cover_type;
+ typedef amask_no_clip_u8<Step, Offset, MaskF> self_type;
+ enum
+ {
+ cover_shift = 8,
+ cover_none = 0,
+ cover_full = 255
+ };
+
+ amask_no_clip_u8() : m_rbuf(0) {}
+ amask_no_clip_u8(rendering_buffer& rbuf) : m_rbuf(&rbuf) {}
+
+ void attach(rendering_buffer& rbuf) { m_rbuf = &rbuf; }
+
+ MaskF& mask_function() { return m_mask_function; }
+ const MaskF& mask_function() const { return m_mask_function; }
+
+
+ //--------------------------------------------------------------------
+ cover_type pixel(int x, int y) const
+ {
+ return (cover_type)m_mask_function.calculate(
+ m_rbuf->row(y) + x * Step + Offset);
+ }
+
+
+ //--------------------------------------------------------------------
+ cover_type combine_pixel(int x, int y, cover_type val) const
+ {
+ return (cover_type)((val *
+ m_mask_function.calculate(
+ m_rbuf->row(y) + x * Step + Offset)) >>
+ cover_shift);
+ }
+
+
+ //--------------------------------------------------------------------
+ void fill_hspan(int x, int y, cover_type* dst, int num_pix) const
+ {
+ const int8u* mask = m_rbuf->row(y) + x * Step + Offset;
+ do
+ {
+ *dst++ = (cover_type)m_mask_function.calculate(mask);
+ mask += Step;
+ }
+ while(--num_pix);
+ }
+
+
+
+ //--------------------------------------------------------------------
+ void combine_hspan(int x, int y, cover_type* dst, int num_pix) const
+ {
+ const int8u* mask = m_rbuf->row(y) + x * Step + Offset;
+ do
+ {
+ *dst = (cover_type)(((*dst) *
+ m_mask_function.calculate(mask)) >>
+ cover_shift);
+ ++dst;
+ mask += Step;
+ }
+ while(--num_pix);
+ }
+
+
+ //--------------------------------------------------------------------
+ void fill_vspan(int x, int y, cover_type* dst, int num_pix) const
+ {
+ const int8u* mask = m_rbuf->row(y) + x * Step + Offset;
+ do
+ {
+ *dst++ = (cover_type)m_mask_function.calculate(mask);
+ mask += m_rbuf->stride();
+ }
+ while(--num_pix);
+ }
+
+
+ //--------------------------------------------------------------------
+ void combine_vspan(int x, int y, cover_type* dst, int num_pix) const
+ {
+ const int8u* mask = m_rbuf->row(y) + x * Step + Offset;
+ do
+ {
+ *dst = (cover_type)(((*dst) *
+ m_mask_function.calculate(mask)) >>
+ cover_shift);
+ ++dst;
+ mask += m_rbuf->stride();
+ }
+ while(--num_pix);
+ }
+
+ private:
+ amask_no_clip_u8(const self_type&);
+ const self_type& operator = (const self_type&);
+
+ rendering_buffer* m_rbuf;
+ MaskF m_mask_function;
+ };
+
+
+ typedef amask_no_clip_u8<1, 0> amask_no_clip_gray8; //----amask_no_clip_gray8
+
+ typedef amask_no_clip_u8<3, 0> amask_no_clip_rgb24r; //----amask_no_clip_rgb24r
+ typedef amask_no_clip_u8<3, 1> amask_no_clip_rgb24g; //----amask_no_clip_rgb24g
+ typedef amask_no_clip_u8<3, 2> amask_no_clip_rgb24b; //----amask_no_clip_rgb24b
+
+ typedef amask_no_clip_u8<3, 2> amask_no_clip_bgr24r; //----amask_no_clip_bgr24r
+ typedef amask_no_clip_u8<3, 1> amask_no_clip_bgr24g; //----amask_no_clip_bgr24g
+ typedef amask_no_clip_u8<3, 0> amask_no_clip_bgr24b; //----amask_no_clip_bgr24b
+
+ typedef amask_no_clip_u8<4, 0> amask_no_clip_rgba32r; //----amask_no_clip_rgba32r
+ typedef amask_no_clip_u8<4, 1> amask_no_clip_rgba32g; //----amask_no_clip_rgba32g
+ typedef amask_no_clip_u8<4, 2> amask_no_clip_rgba32b; //----amask_no_clip_rgba32b
+ typedef amask_no_clip_u8<4, 3> amask_no_clip_rgba32a; //----amask_no_clip_rgba32a
+
+ typedef amask_no_clip_u8<4, 1> amask_no_clip_argb32r; //----amask_no_clip_argb32r
+ typedef amask_no_clip_u8<4, 2> amask_no_clip_argb32g; //----amask_no_clip_argb32g
+ typedef amask_no_clip_u8<4, 3> amask_no_clip_argb32b; //----amask_no_clip_argb32b
+ typedef amask_no_clip_u8<4, 0> amask_no_clip_argb32a; //----amask_no_clip_argb32a
+
+ typedef amask_no_clip_u8<4, 2> amask_no_clip_bgra32r; //----amask_no_clip_bgra32r
+ typedef amask_no_clip_u8<4, 1> amask_no_clip_bgra32g; //----amask_no_clip_bgra32g
+ typedef amask_no_clip_u8<4, 0> amask_no_clip_bgra32b; //----amask_no_clip_bgra32b
+ typedef amask_no_clip_u8<4, 3> amask_no_clip_bgra32a; //----amask_no_clip_bgra32a
+
+ typedef amask_no_clip_u8<4, 3> amask_no_clip_abgr32r; //----amask_no_clip_abgr32r
+ typedef amask_no_clip_u8<4, 2> amask_no_clip_abgr32g; //----amask_no_clip_abgr32g
+ typedef amask_no_clip_u8<4, 1> amask_no_clip_abgr32b; //----amask_no_clip_abgr32b
+ typedef amask_no_clip_u8<4, 0> amask_no_clip_abgr32a; //----amask_no_clip_abgr32a
+
+ typedef amask_no_clip_u8<3, 0, rgb_to_gray_mask_u8<0, 1, 2> > amask_no_clip_rgb24gray; //----amask_no_clip_rgb24gray
+ typedef amask_no_clip_u8<3, 0, rgb_to_gray_mask_u8<2, 1, 0> > amask_no_clip_bgr24gray; //----amask_no_clip_bgr24gray
+ typedef amask_no_clip_u8<4, 0, rgb_to_gray_mask_u8<0, 1, 2> > amask_no_clip_rgba32gray; //----amask_no_clip_rgba32gray
+ typedef amask_no_clip_u8<4, 1, rgb_to_gray_mask_u8<0, 1, 2> > amask_no_clip_argb32gray; //----amask_no_clip_argb32gray
+ typedef amask_no_clip_u8<4, 0, rgb_to_gray_mask_u8<2, 1, 0> > amask_no_clip_bgra32gray; //----amask_no_clip_bgra32gray
+ typedef amask_no_clip_u8<4, 1, rgb_to_gray_mask_u8<2, 1, 0> > amask_no_clip_abgr32gray; //----amask_no_clip_abgr32gray
+
+
+}
+
+
+
+#endif
diff --git a/agg/inc/agg_arc.h b/agg/inc/agg_arc.h
new file mode 100755
index 000000000000..80b148d910d0
--- /dev/null
+++ b/agg/inc/agg_arc.h
@@ -0,0 +1,74 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Arc vertex generator
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_ARC_INCLUDED
+#define AGG_ARC_INCLUDED
+
+#include <math.h>
+#include "agg_basics.h"
+
+namespace agg
+{
+
+ //=====================================================================arc
+ //
+ // See Implementation agg_arc.cpp
+ //
+ class arc
+ {
+ public:
+ arc() : m_scale(1.0), m_initialized(false) {}
+ arc(double x, double y,
+ double rx, double ry,
+ double a1, double a2,
+ bool ccw=true);
+
+ void init(double x, double y,
+ double rx, double ry,
+ double a1, double a2,
+ bool ccw=true);
+
+ void approximation_scale(double s);
+ double approximation_scale() const { return m_scale; }
+
+ void rewind(unsigned);
+ unsigned vertex(double* x, double* y);
+
+ private:
+ void normalize(double a1, double a2, bool ccw);
+
+ double m_x;
+ double m_y;
+ double m_rx;
+ double m_ry;
+ double m_angle;
+ double m_start;
+ double m_end;
+ double m_scale;
+ double m_da;
+ bool m_ccw;
+ bool m_initialized;
+ unsigned m_path_cmd;
+ };
+
+
+}
+
+
+#endif
diff --git a/agg/inc/agg_array.h b/agg/inc/agg_array.h
new file mode 100755
index 000000000000..2970181c4510
--- /dev/null
+++ b/agg/inc/agg_array.h
@@ -0,0 +1,887 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+#ifndef AGG_ARRAY_INCLUDED
+#define AGG_ARRAY_INCLUDED
+
+#include <stddef.h>
+#include <string.h>
+#include "agg_basics.h"
+
+namespace agg
+{
+
+
+
+ //-------------------------------------------------------pod_array_adaptor
+ template<class T> class pod_array_adaptor
+ {
+ public:
+ typedef T value_type;
+ pod_array_adaptor(T* array, unsigned _size) :
+ m_array(array), m_size(_size) {}
+
+ unsigned size() const { return m_size; }
+ const T& operator [] (unsigned idx) const { return m_array[idx]; }
+ T& operator [] (unsigned idx) { return m_array[idx]; }
+ private:
+ T* m_array;
+ unsigned m_size;
+ };
+
+
+
+ //---------------------------------------------------------pod_auto_array
+ template<class T, unsigned Size> class pod_auto_array
+ {
+ public:
+ typedef T value_type;
+ typedef pod_auto_array<T, Size> self_type;
+
+ pod_auto_array() {}
+ explicit pod_auto_array(const T* c)
+ {
+ memcpy(m_array, c, sizeof(T) * Size);
+ }
+
+ const self_type& operator = (const T* c)
+ {
+ memcpy(m_array, c, sizeof(T) * Size);
+ return *this;
+ }
+
+ static unsigned size() { return Size; }
+ const T& operator [] (unsigned i) const { return m_array[i]; }
+ T& operator [] (unsigned i) { return m_array[i]; }
+ private:
+ T m_array[Size];
+ };
+
+
+
+
+
+ //---------------------------------------------------------------pod_array
+ // A simple class template to store Plain Old Data, a vector
+ // of a fixed size. The data is continous in memory
+ //------------------------------------------------------------------------
+ template<class T> class pod_array
+ {
+ public:
+ typedef T value_type;
+
+ ~pod_array() { delete [] m_array; }
+ pod_array() : m_size(0), m_capacity(0), m_array(0) {}
+ pod_array(unsigned cap, unsigned extra_tail=0);
+
+ // Copying
+ pod_array(const pod_array<T>&);
+ const pod_array<T>& operator = (const pod_array<T>&);
+
+ unsigned capacity() const { return m_capacity; }
+ void capacity(unsigned cap, unsigned extra_tail=0);
+
+ void resize(unsigned new_size);
+
+ void add(const T& v) { m_array[m_size++] = v; }
+ void inc_size(unsigned _size) { m_size += _size; }
+ unsigned size() const { return m_size; }
+ unsigned byte_size() const { return m_size * sizeof(T); }
+ void serialize(int8u* ptr) const;
+ void deserialize(const int8u* data, unsigned byte_size);
+ const T& operator [] (unsigned idx) const { return m_array[idx]; }
+ T& operator [] (unsigned idx) { return m_array[idx]; }
+
+ void remove_all() { m_size = 0; }
+ void cut_at(unsigned num) { if(num < m_size) m_size = num; }
+
+ private:
+ unsigned m_size;
+ unsigned m_capacity;
+ T* m_array;
+ };
+
+ //------------------------------------------------------------------------
+ template<class T>
+ void pod_array<T>::capacity(unsigned cap, unsigned extra_tail)
+ {
+ m_size = 0;
+ if(cap > m_capacity)
+ {
+ delete [] m_array;
+ m_capacity = cap + extra_tail;
+ m_array = m_capacity ? new T [m_capacity] : 0;
+ }
+ }
+
+ //------------------------------------------------------------------------
+ template<class T>
+ void pod_array<T>::resize(unsigned new_size)
+ {
+ if(new_size > m_size)
+ {
+ if(new_size > m_capacity)
+ {
+ T* data = new T[new_size];
+ memcpy(data, m_array, m_size * sizeof(T));
+ delete [] m_array;
+ m_array = data;
+ }
+ }
+ else
+ {
+ m_size = new_size;
+ }
+ }
+
+ //------------------------------------------------------------------------
+ template<class T> pod_array<T>::pod_array(unsigned cap, unsigned extra_tail) :
+ m_size(cap), m_capacity(cap + extra_tail), m_array(new T[m_capacity]) {}
+
+ //------------------------------------------------------------------------
+ template<class T> pod_array<T>::pod_array(const pod_array<T>& v) :
+ m_size(v.m_size),
+ m_capacity(v.m_capacity),
+ m_array(v.m_capacity ? new T [v.m_capacity] : 0)
+ {
+ memcpy(m_array, v.m_array, sizeof(T) * v.m_size);
+ }
+
+ //------------------------------------------------------------------------
+ template<class T> const pod_array<T>&
+ pod_array<T>::operator = (const pod_array<T>&v)
+ {
+ capacity(v.m_capacity);
+ if(v.m_size) memcpy(m_array, v.m_array, sizeof(T) * v.m_size);
+ return *this;
+ }
+
+ //------------------------------------------------------------------------
+ template<class T> void pod_array<T>::serialize(int8u* ptr) const
+ {
+ if(m_size) memcpy(ptr, m_array, m_size * sizeof(T));
+ }
+
+ //------------------------------------------------------------------------
+ template<class T>
+ void pod_array<T>::deserialize(const int8u* data, unsigned _byte_size)
+ {
+ _byte_size /= sizeof(T);
+ capacity(_byte_size);
+ if(_byte_size) memcpy(m_array, data, _byte_size * sizeof(T));
+ }
+
+
+
+
+
+ //---------------------------------------------------------------pod_deque
+ // A simple class template to store Plain Old Data, similar to std::deque
+ // It doesn't reallocate memory but instead, uses blocks of data of size
+ // of (1 << S), that is, power of two. The data is NOT contiguous in memory,
+ // so the only valid access method is operator [] or curr(), prev(), next()
+ //
+ // There reallocs occure only when the pool of pointers to blocks needs
+ // to be extended (it happens very rarely). You can control the value
+ // of increment to reallocate the pointer buffer. See the second constructor.
+ // By default, the incremeent value equals (1 << S), i.e., the block size.
+ //------------------------------------------------------------------------
+ template<class T, unsigned S=6> class pod_deque
+ {
+ public:
+ enum
+ {
+ block_shift = S,
+ block_size = 1 << block_shift,
+ block_mask = block_size - 1
+ };
+
+ typedef T value_type;
+
+ ~pod_deque();
+ pod_deque();
+ pod_deque(unsigned block_ptr_inc);
+
+ // Copying
+ pod_deque(const pod_deque<T, S>& v);
+ const pod_deque<T, S>& operator = (const pod_deque<T, S>& v);
+
+ void remove_all() { m_size = 0; }
+ void free_all() { free_tail(0); }
+ void free_tail(unsigned size);
+ void add(const T& val);
+ void modify_last(const T& val);
+ void remove_last();
+
+ int allocate_continuous_block(unsigned num_elements);
+
+ void add_array(const T* ptr, unsigned num_elem)
+ {
+ while(num_elem--)
+ {
+ add(*ptr++);
+ }
+ }
+
+ template<class DataAccessor> void add_data(DataAccessor& data)
+ {
+ while(data.size())
+ {
+ add(*data);
+ ++data;
+ }
+ }
+
+ void cut_at(unsigned _size)
+ {
+ if(_size < m_size) m_size = _size;
+ }
+
+ unsigned size() const { return m_size; }
+
+ const T& operator [] (unsigned idx) const
+ {
+ return m_blocks[idx >> block_shift][idx & block_mask];
+ }
+
+ T& operator [] (unsigned idx)
+ {
+ return m_blocks[idx >> block_shift][idx & block_mask];
+ }
+
+ const T& curr(unsigned idx) const
+ {
+ return (*this)[idx];
+ }
+
+ T& curr(unsigned idx)
+ {
+ return (*this)[idx];
+ }
+
+ const T& prev(unsigned idx) const
+ {
+ return (*this)[(idx + m_size - 1) % m_size];
+ }
+
+ T& prev(unsigned idx)
+ {
+ return (*this)[(idx + m_size - 1) % m_size];
+ }
+
+ const T& next(unsigned idx) const
+ {
+ return (*this)[(idx + 1) % m_size];
+ }
+
+ T& next(unsigned idx)
+ {
+ return (*this)[(idx + 1) % m_size];
+ }
+
+ const T& last() const
+ {
+ return (*this)[m_size - 1];
+ }
+
+ T& last()
+ {
+ return (*this)[m_size - 1];
+ }
+
+ unsigned byte_size() const;
+ void serialize(int8u* ptr) const;
+ void deserialize(const int8u* data, unsigned byte_size);
+ void deserialize(unsigned start, const T& empty_val,
+ const int8u* data, unsigned byte_size);
+
+ template<class ByteAccessor>
+ void deserialize(ByteAccessor data)
+ {
+ remove_all();
+ unsigned elem_size = data.size() / sizeof(T);
+
+ for(unsigned i = 0; i < elem_size; ++i)
+ {
+ int8u* ptr = (int8u*)data_ptr();
+ for(unsigned j = 0; j < sizeof(T); ++j)
+ {
+ *ptr++ = *data;
+ ++data;
+ }
+ ++m_size;
+ }
+ }
+
+ template<class ByteAccessor>
+ void deserialize(unsigned start, const T& empty_val, ByteAccessor data)
+ {
+ while(m_size < start)
+ {
+ add(empty_val);
+ }
+
+ unsigned elem_size = data.size() / sizeof(T);
+ for(unsigned i = 0; i < elem_size; ++i)
+ {
+ int8u* ptr;
+ if(start + i < m_size)
+ {
+ ptr = (int8u*)(&((*this)[start + i]));
+ }
+ else
+ {
+ ptr = (int8u*)data_ptr();
+ ++m_size;
+ }
+ for(unsigned j = 0; j < sizeof(T); ++j)
+ {
+ *ptr++ = *data;
+ ++data;
+ }
+ }
+ }
+
+ const T* block(unsigned nb) const { return m_blocks[nb]; }
+
+ private:
+ void allocate_block(unsigned nb);
+ T* data_ptr();
+
+ unsigned m_size;
+ unsigned m_num_blocks;
+ unsigned m_max_blocks;
+ T** m_blocks;
+ unsigned m_block_ptr_inc;
+ };
+
+
+ //------------------------------------------------------------------------
+ template<class T, unsigned S> pod_deque<T, S>::~pod_deque()
+ {
+ if(m_num_blocks)
+ {
+ T** blk = m_blocks + m_num_blocks - 1;
+ while(m_num_blocks--)
+ {
+ delete [] *blk;
+ --blk;
+ }
+ delete [] m_blocks;
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class T, unsigned S>
+ void pod_deque<T, S>::free_tail(unsigned _size)
+ {
+ if(_size < m_size)
+ {
+ unsigned nb = (_size + block_mask) >> block_shift;
+ while(m_num_blocks > nb)
+ {
+ delete [] m_blocks[--m_num_blocks];
+ }
+ m_size = _size;
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class T, unsigned S> pod_deque<T, S>::pod_deque() :
+ m_size(0),
+ m_num_blocks(0),
+ m_max_blocks(0),
+ m_blocks(0),
+ m_block_ptr_inc(block_size)
+ {
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class T, unsigned S>
+ pod_deque<T, S>::pod_deque(unsigned block_ptr_inc) :
+ m_size(0),
+ m_num_blocks(0),
+ m_max_blocks(0),
+ m_blocks(0),
+ m_block_ptr_inc(block_ptr_inc)
+ {
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class T, unsigned S>
+ pod_deque<T, S>::pod_deque(const pod_deque<T, S>& v) :
+ m_size(v.m_size),
+ m_num_blocks(v.m_num_blocks),
+ m_max_blocks(v.m_max_blocks),
+ m_blocks(v.m_max_blocks ? new T* [v.m_max_blocks] : 0),
+ m_block_ptr_inc(v.m_block_ptr_inc)
+ {
+ unsigned i;
+ for(i = 0; i < v.m_num_blocks; ++i)
+ {
+ m_blocks[i] = new T [block_size];
+ memcpy(m_blocks[i], v.m_blocks[i], block_size * sizeof(T));
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class T, unsigned S>
+ const pod_deque<T, S>& pod_deque<T, S>::operator = (const pod_deque<T, S>& v)
+ {
+ unsigned i;
+ for(i = m_num_blocks; i < v.m_num_blocks; ++i)
+ {
+ allocate_block(i);
+ }
+ for(i = 0; i < v.m_num_blocks; ++i)
+ {
+ memcpy(m_blocks[i], v.m_blocks[i], block_size * sizeof(T));
+ }
+ m_size = v.m_size;
+ return *this;
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class T, unsigned S>
+ void pod_deque<T, S>::allocate_block(unsigned nb)
+ {
+ if(nb >= m_max_blocks)
+ {
+ T** new_blocks = new T* [m_max_blocks + m_block_ptr_inc];
+
+ if(m_blocks)
+ {
+ memcpy(new_blocks,
+ m_blocks,
+ m_num_blocks * sizeof(T*));
+
+ delete [] m_blocks;
+ }
+ m_blocks = new_blocks;
+ m_max_blocks += m_block_ptr_inc;
+ }
+ m_blocks[nb] = new T [block_size];
+ m_num_blocks++;
+ }
+
+
+
+ //------------------------------------------------------------------------
+ template<class T, unsigned S>
+ inline T* pod_deque<T, S>::data_ptr()
+ {
+ unsigned nb = m_size >> block_shift;
+ if(nb >= m_num_blocks)
+ {
+ allocate_block(nb);
+ }
+ return m_blocks[nb] + (m_size & block_mask);
+ }
+
+
+
+ //------------------------------------------------------------------------
+ template<class T, unsigned S>
+ inline void pod_deque<T, S>::add(const T& val)
+ {
+ *data_ptr() = val;
+ ++m_size;
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class T, unsigned S>
+ inline void pod_deque<T, S>::remove_last()
+ {
+ if(m_size) --m_size;
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class T, unsigned S>
+ void pod_deque<T, S>::modify_last(const T& val)
+ {
+ remove_last();
+ add(val);
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class T, unsigned S>
+ int pod_deque<T, S>::allocate_continuous_block(unsigned num_elements)
+ {
+ if(num_elements < block_size)
+ {
+ data_ptr(); // Allocate initial block if necessary
+ unsigned rest = block_size - (m_size & block_mask);
+ unsigned index;
+ if(num_elements <= rest)
+ {
+ // The rest of the block is good, we can use it
+ //-----------------
+ index = m_size;
+ m_size += num_elements;
+ return index;
+ }
+
+ // New block
+ //---------------
+ m_size += rest;
+ data_ptr();
+ index = m_size;
+ m_size += num_elements;
+ return index;
+ }
+ return -1; // Impossible to allocate
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class T, unsigned S>
+ unsigned pod_deque<T, S>::byte_size() const
+ {
+ return m_size * sizeof(T);
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class T, unsigned S>
+ void pod_deque<T, S>::serialize(int8u* ptr) const
+ {
+ unsigned i;
+ for(i = 0; i < m_size; i++)
+ {
+ memcpy(ptr, &(*this)[i], sizeof(T));
+ ptr += sizeof(T);
+ }
+ }
+
+ //------------------------------------------------------------------------
+ template<class T, unsigned S>
+ void pod_deque<T, S>::deserialize(const int8u* data, unsigned _byte_size)
+ {
+ remove_all();
+ _byte_size /= sizeof(T);
+ for(unsigned i = 0; i < _byte_size; ++i)
+ {
+ T* ptr = data_ptr();
+ memcpy(ptr, data, sizeof(T));
+ ++m_size;
+ data += sizeof(T);
+ }
+ }
+
+
+ // Replace or add a number of elements starting from "start" position
+ //------------------------------------------------------------------------
+ template<class T, unsigned S>
+ void pod_deque<T, S>::deserialize(unsigned start, const T& empty_val,
+ const int8u* data, unsigned _byte_size)
+ {
+ while(m_size < start)
+ {
+ add(empty_val);
+ }
+
+ _byte_size /= sizeof(T);
+ for(unsigned i = 0; i < _byte_size; ++i)
+ {
+ if(start + i < m_size)
+ {
+ memcpy(&((*this)[start + i]), data, sizeof(T));
+ }
+ else
+ {
+ T* ptr = data_ptr();
+ memcpy(ptr, data, sizeof(T));
+ ++m_size;
+ }
+ data += sizeof(T);
+ }
+ }
+
+
+ //-----------------------------------------------------------pod_allocator
+ // Allocator for arbitrary POD data. Most usable in different cache
+ // systems for efficient memory allocations.
+ // Memory is allocated with blocks of fixed size ("block_size" in
+ // the constructor). If required size exceeds the block size the allocator
+ // creates a new block of the required size. However, the most efficient
+ // use is when the average reqired size is much less than the block size.
+ //------------------------------------------------------------------------
+ class pod_allocator
+ {
+ public:
+ void remove_all()
+ {
+ if(m_num_blocks)
+ {
+ int8u** blk = m_blocks + m_num_blocks - 1;
+ while(m_num_blocks--)
+ {
+ delete [] *blk;
+ --blk;
+ }
+ delete [] m_blocks;
+ }
+ m_num_blocks = 0;
+ m_max_blocks = 0;
+ m_blocks = 0;
+ m_buf_ptr = 0;
+ m_rest = 0;
+ }
+
+ ~pod_allocator()
+ {
+ remove_all();
+ }
+
+ pod_allocator(unsigned block_size, unsigned block_ptr_inc=256-8) :
+ m_block_size(block_size),
+ m_block_ptr_inc(block_ptr_inc),
+ m_num_blocks(0),
+ m_max_blocks(0),
+ m_blocks(0),
+ m_buf_ptr(0),
+ m_rest(0)
+ {
+ }
+
+
+ int8u* allocate(unsigned size, unsigned alignment=1)
+ {
+ if(size == 0) return 0;
+ if(size <= m_rest)
+ {
+ int8u* ptr = m_buf_ptr;
+ if(alignment > 1)
+ {
+ unsigned align = (alignment - unsigned((size_t)ptr) % alignment) % alignment;
+ size += align;
+ ptr += align;
+ if(size <= m_rest)
+ {
+ m_rest -= size;
+ m_buf_ptr += size;
+ return ptr;
+ }
+ allocate_block(size);
+ return allocate(size - align, alignment);
+ }
+ m_rest -= size;
+ m_buf_ptr += size;
+ return ptr;
+ }
+ allocate_block(size + alignment - 1);
+ return allocate(size, alignment);
+ }
+
+
+ private:
+ void allocate_block(unsigned size)
+ {
+ if(size < m_block_size) size = m_block_size;
+ if(m_num_blocks >= m_max_blocks)
+ {
+ int8u** new_blocks = new int8u* [m_max_blocks + m_block_ptr_inc];
+
+ if(m_blocks)
+ {
+ memcpy(new_blocks,
+ m_blocks,
+ m_num_blocks * sizeof(int8u*));
+
+ delete [] m_blocks;
+ }
+ m_blocks = new_blocks;
+ m_max_blocks += m_block_ptr_inc;
+ }
+ m_blocks[m_num_blocks] = m_buf_ptr = new int8u [size];
+ m_num_blocks++;
+ m_rest = size;
+ }
+
+ unsigned m_block_size;
+ unsigned m_block_ptr_inc;
+ unsigned m_num_blocks;
+ unsigned m_max_blocks;
+ int8u** m_blocks;
+ int8u* m_buf_ptr;
+ unsigned m_rest;
+ };
+
+
+
+
+
+
+
+
+ //------------------------------------------------------------------------
+ enum
+ {
+ quick_sort_threshold = 9
+ };
+
+
+ //-----------------------------------------------------------swap_elements
+ template<class T> inline void swap_elements(T& a, T& b)
+ {
+ T temp = a;
+ a = b;
+ b = temp;
+ }
+
+
+ //--------------------------------------------------------------quick_sort
+ template<class Array, class Less>
+ void quick_sort(Array& arr, Less less)
+ {
+ if(arr.size() < 2) return;
+
+ typename Array::value_type* e1;
+ typename Array::value_type* e2;
+
+ int stack[80];
+ int* top = stack;
+ int limit = arr.size();
+ int base = 0;
+
+ for(;;)
+ {
+ int len = limit - base;
+
+ int i;
+ int j;
+ int pivot;
+
+ if(len > quick_sort_threshold)
+ {
+ // we use base + len/2 as the pivot
+ pivot = base + len / 2;
+ swap_elements(arr[base], arr[pivot]);
+
+ i = base + 1;
+ j = limit - 1;
+
+ // now ensure that *i <= *base <= *j
+ e1 = &(arr[j]);
+ e2 = &(arr[i]);
+ if(less(*e1, *e2)) swap_elements(*e1, *e2);
+
+ e1 = &(arr[base]);
+ e2 = &(arr[i]);
+ if(less(*e1, *e2)) swap_elements(*e1, *e2);
+
+ e1 = &(arr[j]);
+ e2 = &(arr[base]);
+ if(less(*e1, *e2)) swap_elements(*e1, *e2);
+
+ for(;;)
+ {
+ do i++; while( less(arr[i], arr[base]) );
+ do j--; while( less(arr[base], arr[j]) );
+
+ if( i > j )
+ {
+ break;
+ }
+
+ swap_elements(arr[i], arr[j]);
+ }
+
+ swap_elements(arr[base], arr[j]);
+
+ // now, push the largest sub-array
+ if(j - base > limit - i)
+ {
+ top[0] = base;
+ top[1] = j;
+ base = i;
+ }
+ else
+ {
+ top[0] = i;
+ top[1] = limit;
+ limit = j;
+ }
+ top += 2;
+ }
+ else
+ {
+ // the sub-array is small, perform insertion sort
+ j = base;
+ i = j + 1;
+
+ for(; i < limit; j = i, i++)
+ {
+ for(; less(*(e1 = &(arr[j + 1])), *(e2 = &(arr[j]))); j--)
+ {
+ swap_elements(*e1, *e2);
+ if(j == base)
+ {
+ break;
+ }
+ }
+ }
+ if(top > stack)
+ {
+ top -= 2;
+ base = top[0];
+ limit = top[1];
+ }
+ else
+ {
+ break;
+ }
+ }
+ }
+ }
+
+
+
+
+ //------------------------------------------------------remove_duplicates
+ // Remove duplicates from a sorted array. It doesn't cut the the
+ // tail of the array, it just returns the number of remaining elements.
+ //-----------------------------------------------------------------------
+ template<class Array, class Equal>
+ unsigned remove_duplicates(Array& arr, Equal equal)
+ {
+ if(arr.size() < 2) return arr.size();
+
+ unsigned i, j;
+ for(i = 1, j = 1; i < arr.size(); i++)
+ {
+ typename Array::value_type& e = arr[i];
+ if(!equal(e, arr[i - 1]))
+ {
+ arr[j++] = e;
+ }
+ }
+ return j;
+ }
+
+
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_arrowhead.h b/agg/inc/agg_arrowhead.h
new file mode 100755
index 000000000000..aac99c5ae980
--- /dev/null
+++ b/agg/inc/agg_arrowhead.h
@@ -0,0 +1,82 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Simple arrowhead/arrowtail generator
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_ARROWHEAD_INCLUDED
+#define AGG_ARROWHEAD_INCLUDED
+
+#include "agg_basics.h"
+
+namespace agg
+{
+
+ //===============================================================arrowhead
+ //
+ // See implementation agg_arrowhead.cpp
+ //
+ class arrowhead
+ {
+ public:
+ arrowhead();
+
+ void head(double d1, double d2, double d3, double d4)
+ {
+ m_head_d1 = d1;
+ m_head_d2 = d2;
+ m_head_d3 = d3;
+ m_head_d4 = d4;
+ m_head_flag = true;
+ }
+
+ void head() { m_head_flag = true; }
+ void no_head() { m_head_flag = false; }
+
+ void tail(double d1, double d2, double d3, double d4)
+ {
+ m_tail_d1 = d1;
+ m_tail_d2 = d2;
+ m_tail_d3 = d3;
+ m_tail_d4 = d4;
+ m_tail_flag = true;
+ }
+
+ void tail() { m_tail_flag = true; }
+ void no_tail() { m_tail_flag = false; }
+
+ void rewind(unsigned id);
+ unsigned vertex(double* x, double* y);
+
+ private:
+ double m_head_d1;
+ double m_head_d2;
+ double m_head_d3;
+ double m_head_d4;
+ double m_tail_d1;
+ double m_tail_d2;
+ double m_tail_d3;
+ double m_tail_d4;
+ bool m_head_flag;
+ bool m_tail_flag;
+ double m_coord[16];
+ unsigned m_cmd[8];
+ unsigned m_curr_id;
+ unsigned m_curr_coord;
+ };
+
+}
+
+#endif
diff --git a/agg/inc/agg_basics.h b/agg/inc/agg_basics.h
new file mode 100755
index 000000000000..d9ca881ab328
--- /dev/null
+++ b/agg/inc/agg_basics.h
@@ -0,0 +1,343 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_BASICS_INCLUDED
+#define AGG_BASICS_INCLUDED
+
+#include "agg_config.h"
+
+//-------------------------------------------------------- Default basic types
+//
+// If the compiler has different capacity of the basic types you can redefine
+// them via the compiler command line or by generating agg_config.h that is
+// empty by default.
+//
+#ifndef AGG_INT8
+#define AGG_INT8 signed char
+#endif
+
+#ifndef AGG_INT8U
+#define AGG_INT8U unsigned char
+#endif
+
+#ifndef AGG_INT16
+#define AGG_INT16 short
+#endif
+
+#ifndef AGG_INT16U
+#define AGG_INT16U unsigned short
+#endif
+
+#ifndef AGG_INT32
+#define AGG_INT32 int
+#endif
+
+#ifndef AGG_INT32U
+#define AGG_INT32U unsigned
+#endif
+
+#ifndef AGG_INT64
+#if defined(_MSC_VER)
+#define AGG_INT64 signed __int64
+#else
+#define AGG_INT64 signed long long
+#endif
+#endif
+
+#ifndef AGG_INT64U
+#if defined(_MSC_VER)
+#define AGG_INT64U unsigned __int64
+#else
+#define AGG_INT64U unsigned long long
+#endif
+#endif
+
+//------------------------------------------------ Some fixes for MS Visual C++
+#if defined(_MSC_VER)
+#pragma warning(disable:4786) // Identifier was truncated...
+#endif
+
+#if defined(_MSC_VER)
+#define AGG_INLINE __forceinline
+#else
+#define AGG_INLINE inline
+#endif
+
+namespace agg
+{
+ //-------------------------------------------------------------------------
+ typedef AGG_INT8 int8; //----int8
+ typedef AGG_INT8U int8u; //----int8u
+ typedef AGG_INT16 int16; //----int16
+ typedef AGG_INT16U int16u; //----int16u
+ typedef AGG_INT32 int32; //----int32
+ typedef AGG_INT32U int32u; //----int32u
+ typedef AGG_INT64 int64; //----int64
+ typedef AGG_INT64U int64u; //----int64u
+
+ //-------------------------------------------------------------------------
+ typedef unsigned char cover_type; //----cover_type
+ enum
+ {
+ cover_shift = 8, //----cover_shift
+ cover_size = 1 << cover_shift, //----cover_size
+ cover_mask = cover_size - 1, //----cover_mask
+ cover_none = 0, //----cover_none
+ cover_full = cover_mask //----cover_full
+ };
+
+
+ //-----------------------------------------------------------------------pi
+ const double pi = 3.14159265358979323846;
+
+ //------------------------------------------------------------------deg2rad
+ inline double deg2rad(double deg)
+ {
+ return deg * pi / 180.0;
+ }
+
+ //------------------------------------------------------------------rad2deg
+ inline double rad2deg(double rad)
+ {
+ return rad * 180.0 / pi;
+ }
+
+ //----------------------------------------------------------------rect_base
+ template<class T> struct rect_base
+ {
+ typedef rect_base<T> self_type;
+ T x1;
+ T y1;
+ T x2;
+ T y2;
+
+ rect_base() {}
+ rect_base(T x1_, T y1_, T x2_, T y2_) :
+ x1(x1_), y1(y1_), x2(x2_), y2(y2_) {}
+
+ const self_type& normalize()
+ {
+ T t;
+ if(x1 > x2) { t = x1; x1 = x2; x2 = t; }
+ if(y1 > y2) { t = y1; y1 = y2; y2 = t; }
+ return *this;
+ }
+
+ bool clip(const self_type& r)
+ {
+ if(x2 > r.x2) x2 = r.x2;
+ if(y2 > r.y2) y2 = r.y2;
+ if(x1 < r.x1) x1 = r.x1;
+ if(y1 < r.y1) y1 = r.y1;
+ return x1 <= x2 && y1 <= y2;
+ }
+
+ bool is_valid() const
+ {
+ return x1 <= x2 && y1 <= y2;
+ }
+ };
+
+ //-----------------------------------------------------intersect_rectangles
+ template<class Rect>
+ inline Rect intersect_rectangles(const Rect& r1, const Rect& r2)
+ {
+ Rect r = r1;
+
+ // First process x2,y2 because the other order
+ // results in Internal Compiler Error under
+ // Microsoft Visual C++ .NET 2003 69462-335-0000007-18038 in
+ // case of "Maximize Speed" optimization option.
+ //-----------------
+ if(r.x2 > r2.x2) r.x2 = r2.x2;
+ if(r.y2 > r2.y2) r.y2 = r2.y2;
+ if(r.x1 < r2.x1) r.x1 = r2.x1;
+ if(r.y1 < r2.y1) r.y1 = r2.y1;
+ return r;
+ }
+
+
+ //---------------------------------------------------------unite_rectangles
+ template<class Rect>
+ inline Rect unite_rectangles(const Rect& r1, const Rect& r2)
+ {
+ Rect r = r1;
+ if(r.x2 < r2.x2) r.x2 = r2.x2;
+ if(r.y2 < r2.y2) r.y2 = r2.y2;
+ if(r.x1 > r2.x1) r.x1 = r2.x1;
+ if(r.y1 > r2.y1) r.y1 = r2.y1;
+ return r;
+ }
+
+ typedef rect_base<int> rect; //----rect
+ typedef rect_base<double> rect_d; //----rect_d
+
+ //---------------------------------------------------------path_commands_e
+ enum path_commands_e
+ {
+ path_cmd_stop = 0, //----path_cmd_stop
+ path_cmd_move_to = 1, //----path_cmd_move_to
+ path_cmd_line_to = 2, //----path_cmd_line_to
+ path_cmd_curve3 = 3, //----path_cmd_curve3
+ path_cmd_curve4 = 4, //----path_cmd_curve4
+ path_cmd_end_poly = 6, //----path_cmd_end_poly
+ path_cmd_mask = 0x0F //----path_cmd_mask
+ };
+
+ //------------------------------------------------------------path_flags_e
+ enum path_flags_e
+ {
+ path_flags_none = 0, //----path_flags_none
+ path_flags_ccw = 0x10, //----path_flags_ccw
+ path_flags_cw = 0x20, //----path_flags_cw
+ path_flags_close = 0x40, //----path_flags_close
+ path_flags_mask = 0xF0 //----path_flags_mask
+ };
+
+ //---------------------------------------------------------------is_vertex
+ inline bool is_vertex(unsigned c)
+ {
+ return c >= path_cmd_move_to && c < path_cmd_end_poly;
+ }
+
+ //-----------------------------------------------------------------is_stop
+ inline bool is_stop(unsigned c)
+ {
+ return c == path_cmd_stop;
+ }
+
+ //--------------------------------------------------------------is_move_to
+ inline bool is_move_to(unsigned c)
+ {
+ return c == path_cmd_move_to;
+ }
+
+ //--------------------------------------------------------------is_line_to
+ inline bool is_line_to(unsigned c)
+ {
+ return c == path_cmd_line_to;
+ }
+
+ //----------------------------------------------------------------is_curve
+ inline bool is_curve(unsigned c)
+ {
+ return c == path_cmd_curve3 || c == path_cmd_curve4;
+ }
+
+ //---------------------------------------------------------------is_curve3
+ inline bool is_curve3(unsigned c)
+ {
+ return c == path_cmd_curve3;
+ }
+
+ //---------------------------------------------------------------is_curve4
+ inline bool is_curve4(unsigned c)
+ {
+ return c == path_cmd_curve4;
+ }
+
+ //-------------------------------------------------------------is_end_poly
+ inline bool is_end_poly(unsigned c)
+ {
+ return (c & path_cmd_mask) == path_cmd_end_poly;
+ }
+
+ //----------------------------------------------------------------is_close
+ inline bool is_close(unsigned c)
+ {
+ return (c & ~(path_flags_cw | path_flags_ccw)) ==
+ (((bool)path_cmd_end_poly) | ((bool)path_flags_close));
+ }
+
+ //------------------------------------------------------------is_next_poly
+ inline bool is_next_poly(unsigned c)
+ {
+ return is_stop(c) || is_move_to(c) || is_end_poly(c);
+ }
+
+ //-------------------------------------------------------------------is_cw
+ inline bool is_cw(unsigned c)
+ {
+ return (c & path_flags_cw) != 0;
+ }
+
+ //------------------------------------------------------------------is_ccw
+ inline bool is_ccw(unsigned c)
+ {
+ return (c & path_flags_ccw) != 0;
+ }
+
+ //-------------------------------------------------------------is_oriented
+ inline bool is_oriented(unsigned c)
+ {
+ return (c & (path_flags_cw | path_flags_ccw)) != 0;
+ }
+
+ //---------------------------------------------------------------is_closed
+ inline bool is_closed(unsigned c)
+ {
+ return (c & path_flags_close) != 0;
+ }
+
+ //----------------------------------------------------------get_close_flag
+ inline unsigned get_close_flag(unsigned c)
+ {
+ return c & path_flags_close;
+ }
+
+ //-------------------------------------------------------clear_orientation
+ inline unsigned clear_orientation(unsigned c)
+ {
+ return c & ~(path_flags_cw | path_flags_ccw);
+ }
+
+ //---------------------------------------------------------get_orientation
+ inline unsigned get_orientation(unsigned c)
+ {
+ return c & (path_flags_cw | path_flags_ccw);
+ }
+
+ //---------------------------------------------------------set_orientation
+ inline unsigned set_orientation(unsigned c, unsigned o)
+ {
+ return clear_orientation(c) | o;
+ }
+
+ //--------------------------------------------------------------point_type
+ struct point_type
+ {
+ double x, y;
+
+ point_type() {}
+ point_type(double x_, double y_) : x(x_), y(y_) {}
+ };
+
+ //-------------------------------------------------------------vertex_type
+ struct vertex_type
+ {
+ double x, y;
+ unsigned cmd;
+
+ vertex_type() {}
+ vertex_type(double x_, double y_, unsigned cmd_) :
+ x(x_), y(y_), cmd(cmd_) {}
+ };
+
+
+}
+
+
+#endif
+
diff --git a/agg/inc/agg_bezier_arc.h b/agg/inc/agg_bezier_arc.h
new file mode 100755
index 000000000000..f437ab0a00bd
--- /dev/null
+++ b/agg/inc/agg_bezier_arc.h
@@ -0,0 +1,158 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Arc generator. Produces at most 4 consecutive cubic bezier curves, i.e.,
+// 4, 7, 10, or 13 vertices.
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_BEZIER_ARC_INCLUDED
+#define AGG_BEZIER_ARC_INCLUDED
+
+#include "agg_conv_transform.h"
+
+namespace agg
+{
+
+ //-----------------------------------------------------------------------
+ void arc_to_bezier(double cx, double cy, double rx, double ry,
+ double start_angle, double sweep_angle,
+ double* curve);
+
+
+ //==============================================================bezier_arc
+ //
+ // See implemantaion agg_bezier_arc.cpp
+ //
+ class bezier_arc
+ {
+ public:
+ //--------------------------------------------------------------------
+ bezier_arc() : m_vertex(26) {}
+ bezier_arc(double x, double y,
+ double rx, double ry,
+ double start_angle,
+ double sweep_angle)
+ {
+ init(x, y, rx, ry, start_angle, sweep_angle);
+ }
+
+ //--------------------------------------------------------------------
+ void init(double x, double y,
+ double rx, double ry,
+ double start_angle,
+ double sweep_angle);
+
+ //--------------------------------------------------------------------
+ void rewind(unsigned)
+ {
+ m_vertex = 0;
+ }
+
+ //--------------------------------------------------------------------
+ unsigned vertex(double* x, double* y)
+ {
+ if(m_vertex >= m_num_vertices) return path_cmd_stop;
+ *x = m_vertices[m_vertex];
+ *y = m_vertices[m_vertex + 1];
+ m_vertex += 2;
+ return (m_vertex == 2) ? path_cmd_move_to : path_cmd_curve4;
+ }
+
+ // Supplemantary functions. num_vertices() actually returns doubled
+ // number of vertices. That is, for 1 vertex it returns 2.
+ //--------------------------------------------------------------------
+ unsigned num_vertices() const { return m_num_vertices; }
+ const double* vertices() const { return m_vertices; }
+ double* vertices() { return m_vertices; }
+
+ private:
+ unsigned m_vertex;
+ unsigned m_num_vertices;
+ double m_vertices[26];
+ };
+
+
+
+ //==========================================================bezier_arc_svg
+ // Compute an SVG-style bezier arc.
+ //
+ // Computes an elliptical arc from (x1, y1) to (x2, y2). The size and
+ // orientation of the ellipse are defined by two radii (rx, ry)
+ // and an x-axis-rotation, which indicates how the ellipse as a whole
+ // is rotated relative to the current coordinate system. The center
+ // (cx, cy) of the ellipse is calculated automatically to satisfy the
+ // constraints imposed by the other parameters.
+ // large-arc-flag and sweep-flag contribute to the automatic calculations
+ // and help determine how the arc is drawn.
+ class bezier_arc_svg
+ {
+ public:
+ //--------------------------------------------------------------------
+ bezier_arc_svg() : m_arc(), m_radii_ok(false) {}
+
+ bezier_arc_svg(double x1, double y1,
+ double rx, double ry,
+ double angle,
+ bool large_arc_flag,
+ bool sweep_flag,
+ double x2, double y2) :
+ m_arc(), m_radii_ok(false)
+ {
+ init(x1, y1, rx, ry, angle, large_arc_flag, sweep_flag, x2, y2);
+ }
+
+ //--------------------------------------------------------------------
+ void init(double x1, double y1,
+ double rx, double ry,
+ double angle,
+ bool large_arc_flag,
+ bool sweep_flag,
+ double x2, double y2);
+
+ //--------------------------------------------------------------------
+ bool radii_ok() const { return m_radii_ok; }
+
+ //--------------------------------------------------------------------
+ void rewind(unsigned)
+ {
+ m_arc.rewind(0);
+ }
+
+ //--------------------------------------------------------------------
+ unsigned vertex(double* x, double* y)
+ {
+ return m_arc.vertex(x, y);
+ }
+
+ // Supplemantary functions. num_vertices() actually returns doubled
+ // number of vertices. That is, for 1 vertex it returns 2.
+ //--------------------------------------------------------------------
+ unsigned num_vertices() const { return m_arc.num_vertices(); }
+ const double* vertices() const { return m_arc.vertices(); }
+ double* vertices() { return m_arc.vertices(); }
+
+ private:
+ bezier_arc m_arc;
+ bool m_radii_ok;
+ };
+
+
+
+
+}
+
+
+#endif
diff --git a/agg/inc/agg_bitset_iterator.h b/agg/inc/agg_bitset_iterator.h
new file mode 100755
index 000000000000..543432b65d54
--- /dev/null
+++ b/agg/inc/agg_bitset_iterator.h
@@ -0,0 +1,54 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_BITSET_ITERATOR_INCLUDED
+#define AGG_BITSET_ITERATOR_INCLUDED
+
+#include "agg_basics.h"
+
+namespace agg
+{
+
+ class bitset_iterator
+ {
+ public:
+ bitset_iterator(const int8u* bits, unsigned offset = 0) :
+ m_bits(bits + (offset >> 3)),
+ m_mask(0x80 >> (offset & 7))
+ {}
+
+ void operator ++ ()
+ {
+ m_mask >>= 1;
+ if(m_mask == 0)
+ {
+ ++m_bits;
+ m_mask = 0x80;
+ }
+ }
+
+ unsigned bit() const
+ {
+ return (*m_bits) & m_mask;
+ }
+
+ private:
+ const int8u* m_bits;
+ int8u m_mask;
+ };
+
+}
+
+#endif
diff --git a/agg/inc/agg_bounding_rect.h b/agg/inc/agg_bounding_rect.h
new file mode 100755
index 000000000000..9a3c301069d7
--- /dev/null
+++ b/agg/inc/agg_bounding_rect.h
@@ -0,0 +1,116 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// bounding_rect function template
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_BOUNDING_RECT_INCLUDED
+#define AGG_BOUNDING_RECT_INCLUDED
+
+#include "agg_basics.h"
+
+namespace agg
+{
+
+ //-----------------------------------------------------------bounding_rect
+ template<class VertexSource, class GetId, class CoordT>
+ bool bounding_rect(VertexSource& vs, GetId& gi,
+ unsigned start, unsigned num,
+ CoordT* x1, CoordT* y1, CoordT* x2, CoordT* y2)
+ {
+ unsigned i;
+ double x;
+ double y;
+ bool first = true;
+
+ *x1 = CoordT(1);
+ *y1 = CoordT(1);
+ *x2 = CoordT(0);
+ *y2 = CoordT(0);
+
+ for(i = 0; i < num; i++)
+ {
+ vs.rewind(gi[start + i]);
+ unsigned cmd;
+ while(!is_stop(cmd = vs.vertex(&x, &y)))
+ {
+ if(is_vertex(cmd))
+ {
+ if(first)
+ {
+ *x1 = CoordT(x);
+ *y1 = CoordT(y);
+ *x2 = CoordT(x);
+ *y2 = CoordT(y);
+ first = false;
+ }
+ else
+ {
+ if(CoordT(x) < *x1) *x1 = CoordT(x);
+ if(CoordT(y) < *y1) *y1 = CoordT(y);
+ if(CoordT(x) > *x2) *x2 = CoordT(x);
+ if(CoordT(y) > *y2) *y2 = CoordT(y);
+ }
+ }
+ }
+ }
+ return *x1 <= *x2 && *y1 <= *y2;
+ }
+
+
+ //-----------------------------------------------------bounding_rect_single
+ template<class VertexSource, class CoordT>
+ bool bounding_rect_single(VertexSource& vs, unsigned path_id,
+ CoordT* x1, CoordT* y1, CoordT* x2, CoordT* y2)
+ {
+ double x;
+ double y;
+ bool first = true;
+
+ *x1 = CoordT(1);
+ *y1 = CoordT(1);
+ *x2 = CoordT(0);
+ *y2 = CoordT(0);
+
+ vs.rewind(path_id);
+ unsigned cmd;
+ while(!is_stop(cmd = vs.vertex(&x, &y)))
+ {
+ if(is_vertex(cmd))
+ {
+ if(first)
+ {
+ *x1 = CoordT(x);
+ *y1 = CoordT(y);
+ *x2 = CoordT(x);
+ *y2 = CoordT(y);
+ first = false;
+ }
+ else
+ {
+ if(CoordT(x) < *x1) *x1 = CoordT(x);
+ if(CoordT(y) < *y1) *y1 = CoordT(y);
+ if(CoordT(x) > *x2) *x2 = CoordT(x);
+ if(CoordT(y) > *y2) *y2 = CoordT(y);
+ }
+ }
+ }
+ return *x1 <= *x2 && *y1 <= *y2;
+ }
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_bspline.h b/agg/inc/agg_bspline.h
new file mode 100755
index 000000000000..ca58fa839b44
--- /dev/null
+++ b/agg/inc/agg_bspline.h
@@ -0,0 +1,77 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// class bspline
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_BSPLINE_INCLUDED
+#define AGG_BSPLINE_INCLUDED
+
+#include "agg_basics.h"
+
+namespace agg
+{
+ //----------------------------------------------------------------bspline
+ // A very simple class of Bi-cubic Spline interpolation.
+ // First call init(num, x[], y[]) where num - number of source points,
+ // x, y - arrays of X and Y values respectively. Here Y must be a function
+ // of X. It means that all the X-coordinates must be arranged in the ascending
+ // order.
+ // Then call get(x) that calculates a value Y for the respective X.
+ // The class supports extrapolation, i.e. you can call get(x) where x is
+ // outside the given with init() X-range. Extrapolation is a simple linear
+ // function.
+ //
+ // See Implementation agg_bspline.cpp
+ //------------------------------------------------------------------------
+ class bspline
+ {
+ public:
+ ~bspline();
+ bspline();
+ bspline(int num);
+ bspline(int num, const double* x, const double* y);
+
+ void init(int num);
+ void add_point(double x, double y);
+ void prepare();
+
+ void init(int num, const double* x, const double* y);
+
+ double get(double x) const;
+ double get_stateful(double x) const;
+
+ private:
+ bspline(const bspline&);
+ const bspline& operator = (const bspline&);
+
+ static void bsearch(int n, const double *x, double x0, int *i);
+ double extrapolation_left(double x) const;
+ double extrapolation_right(double x) const;
+ double interpolation(double x, int i) const;
+
+ int m_max;
+ int m_num;
+ double* m_x;
+ double* m_y;
+ double* m_am;
+ mutable int m_last_idx;
+ };
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_clip_liang_barsky.h b/agg/inc/agg_clip_liang_barsky.h
new file mode 100755
index 000000000000..e229d52bc6e9
--- /dev/null
+++ b/agg/inc/agg_clip_liang_barsky.h
@@ -0,0 +1,209 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Liang-Barsky clipping
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_CLIP_LIANG_BARSKY_INCLUDED
+#define AGG_CLIP_LIANG_BARSKY_INCLUDED
+
+#include "agg_basics.h"
+
+namespace agg
+{
+
+ //----------------------------------------------------------clipping_flags
+ // Determine the clipping code of the vertex according to the
+ // Cyrus-Beck line clipping algorithm
+ //
+ // | |
+ // 0110 | 0010 | 0011
+ // | |
+ // -------+--------+-------- clip_box.y2
+ // | |
+ // 0100 | 0000 | 0001
+ // | |
+ // -------+--------+-------- clip_box.y1
+ // | |
+ // 1100 | 1000 | 1001
+ // | |
+ // clip_box.x1 clip_box.x2
+ //
+ //
+ template<class T>
+ inline unsigned clipping_flags(T x, T y, const rect_base<T>& clip_box)
+ {
+ return (x > clip_box.x2) |
+ ((y > clip_box.y2) << 1) |
+ ((x < clip_box.x1) << 2) |
+ ((y < clip_box.y1) << 3);
+ }
+
+
+
+ //-------------------------------------------------------clip_liang_barsky
+ template<class T>
+ /*inline*/ unsigned clip_liang_barsky(T x1, T y1, T x2, T y2,
+ const rect_base<T>& clip_box,
+ T* x, T* y)
+ {
+ const double nearzero = 1e-30;
+
+ double deltax = x2 - x1;
+ double deltay = y2 - y1;
+ double xin;
+ double xout;
+ double yin;
+ double yout;
+ double tinx;
+ double tiny;
+ double toutx;
+ double touty;
+ double tin1;
+ double tin2;
+ double tout1;
+ unsigned np = 0;
+
+ if(deltax == 0.0)
+ {
+ // bump off of the vertical
+ deltax = (x1 > clip_box.x1) ? -nearzero : nearzero;
+ }
+
+ if(deltay == 0.0)
+ {
+ // bump off of the horizontal
+ deltay = (y1 > clip_box.y1) ? -nearzero : nearzero;
+ }
+
+ if(deltax > 0.0)
+ {
+ // points to right
+ xin = clip_box.x1;
+ xout = clip_box.x2;
+ }
+ else
+ {
+ xin = clip_box.x2;
+ xout = clip_box.x1;
+ }
+
+ if(deltay > 0.0)
+ {
+ // points up
+ yin = clip_box.y1;
+ yout = clip_box.y2;
+ }
+ else
+ {
+ yin = clip_box.y2;
+ yout = clip_box.y1;
+ }
+
+ tinx = (xin - x1) / deltax;
+ tiny = (yin - y1) / deltay;
+
+ if (tinx < tiny)
+ {
+ // hits x first
+ tin1 = tinx;
+ tin2 = tiny;
+ }
+ else
+ {
+ // hits y first
+ tin1 = tiny;
+ tin2 = tinx;
+ }
+
+ if(tin1 <= 1.0)
+ {
+ if(0.0 < tin1)
+ {
+ *x++ = (T)xin;
+ *y++ = (T)yin;
+ ++np;
+ }
+
+ if(tin2 <= 1.0)
+ {
+ toutx = (xout - x1) / deltax;
+ touty = (yout - y1) / deltay;
+
+ tout1 = (toutx < touty) ? toutx : touty;
+
+ if(tin2 > 0.0 || tout1 > 0.0)
+ {
+ if(tin2 <= tout1)
+ {
+ if(tin2 > 0.0)
+ {
+ if(tinx > tiny)
+ {
+ *x++ = (T)xin;
+ *y++ = (T)(y1 + tinx * deltay);
+ }
+ else
+ {
+ *x++ = (T)(x1 + tiny * deltax);
+ *y++ = (T)yin;
+ }
+ ++np;
+ }
+
+ if(tout1 < 1.0)
+ {
+ if(toutx < touty)
+ {
+ *x++ = (T)xout;
+ *y++ = (T)(y1 + toutx * deltay);
+ }
+ else
+ {
+ *x++ = (T)(x1 + touty * deltax);
+ *y++ = (T)yout;
+ }
+ }
+ else
+ {
+ *x++ = x2;
+ *y++ = y2;
+ }
+ ++np;
+ }
+ else
+ {
+ if(tinx > tiny)
+ {
+ *x++ = (T)xin;
+ *y++ = (T)yout;
+ }
+ else
+ {
+ *x++ = (T)xout;
+ *y++ = (T)yin;
+ }
+ ++np;
+ }
+ }
+ }
+ }
+ return np;
+ }
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_color_gray.h b/agg/inc/agg_color_gray.h
new file mode 100755
index 000000000000..1d0ffd8e773d
--- /dev/null
+++ b/agg/inc/agg_color_gray.h
@@ -0,0 +1,364 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Adaptation for high precision colors has been sponsored by
+// Liberty Technology Systems, Inc., visit http://lib-sys.com
+//
+// Liberty Technology Systems, Inc. is the provider of
+// PostScript and PDF technology for software developers.
+//
+//----------------------------------------------------------------------------
+//
+// color types gray8, gray16
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_COLOR_GRAY_INCLUDED
+#define AGG_COLOR_GRAY_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_color_rgba.h"
+
+namespace agg
+{
+
+ //===================================================================gray8
+ struct gray8
+ {
+ typedef int8u value_type;
+ typedef int32u calc_type;
+ typedef int32 long_type;
+ enum
+ {
+ base_shift = 8,
+ base_size = 1 << base_shift,
+ base_mask = base_size - 1
+ };
+ typedef gray8 self_type;
+
+ value_type v;
+ value_type a;
+
+ //--------------------------------------------------------------------
+ gray8() {}
+
+ //--------------------------------------------------------------------
+ gray8(unsigned v_, unsigned a_=base_mask) :
+ v(int8u(v_)), a(int8u(a_)) {}
+
+ //--------------------------------------------------------------------
+ gray8(const self_type& c, unsigned a_) :
+ v(c.v), a(value_type(a_)) {}
+
+ //--------------------------------------------------------------------
+ gray8(const rgba& c) :
+ v(value_type((0.299*c.r + 0.587*c.g + 0.114*c.b) * double(base_mask) + 0.5)),
+ a(value_type(c.a * double(base_mask))) {}
+
+ //--------------------------------------------------------------------
+ gray8(const rgba& c, double a_) :
+ v(value_type((0.299*c.r + 0.587*c.g + 0.114*c.b) * double(base_mask) + 0.5)),
+ a(value_type(a_ * double(base_mask))) {}
+
+ //--------------------------------------------------------------------
+ gray8(const rgba8& c) :
+ v((c.r*77 + c.g*150 + c.b*29) >> 8),
+ a(c.a) {}
+
+ //--------------------------------------------------------------------
+ gray8(const rgba8& c, unsigned a_) :
+ v((c.r*77 + c.g*150 + c.b*29) >> 8),
+ a(a_) {}
+
+ //--------------------------------------------------------------------
+ void clear()
+ {
+ v = a = 0;
+ }
+
+ //--------------------------------------------------------------------
+ const self_type& transparent()
+ {
+ a = 0;
+ return *this;
+ }
+
+ //--------------------------------------------------------------------
+ void opacity(double a_)
+ {
+ if(a_ < 0.0) a_ = 0.0;
+ if(a_ > 1.0) a_ = 1.0;
+ a = value_type(a_ * double(base_mask));
+ }
+
+ //--------------------------------------------------------------------
+ double opacity() const
+ {
+ return double(a) / double(base_mask);
+ }
+
+
+ //--------------------------------------------------------------------
+ const self_type& premultiply()
+ {
+ if(a == base_mask) return *this;
+ if(a == 0)
+ {
+ v = 0;
+ return *this;
+ }
+ v = value_type((calc_type(v) * a) >> base_shift);
+ return *this;
+ }
+
+ //--------------------------------------------------------------------
+ const self_type& premultiply(unsigned a_)
+ {
+ if(a == base_mask && a_ >= base_mask) return *this;
+ if(a == 0 || a_ == 0)
+ {
+ v = a = 0;
+ return *this;
+ }
+ calc_type v_ = (calc_type(v) * a_) / a;
+ v = value_type((v_ > a_) ? a_ : v_);
+ a = value_type(a_);
+ return *this;
+ }
+
+ //--------------------------------------------------------------------
+ const self_type& demultiply()
+ {
+ if(a == base_mask) return *this;
+ if(a == 0)
+ {
+ v = 0;
+ return *this;
+ }
+ calc_type v_ = (calc_type(v) * base_mask) / a;
+ v = value_type((v_ > base_mask) ? base_mask : v_);
+ return *this;
+ }
+
+ //--------------------------------------------------------------------
+ self_type gradient(self_type c, double k) const
+ {
+ self_type ret;
+ calc_type ik = calc_type(k * base_size);
+ ret.v = value_type(calc_type(v) + (((calc_type(c.v) - v) * ik) >> base_shift));
+ ret.a = value_type(calc_type(a) + (((calc_type(c.a) - a) * ik) >> base_shift));
+ return ret;
+ }
+
+ //--------------------------------------------------------------------
+ static self_type no_color() { return self_type(0,0); }
+ };
+
+
+ //-------------------------------------------------------------gray8_pre
+ inline gray8 gray8_pre(unsigned v, unsigned a = gray8::base_mask)
+ {
+ return gray8(v,a).premultiply();
+ }
+ inline gray8 gray8_pre(const gray8& c, unsigned a)
+ {
+ return gray8(c,a).premultiply();
+ }
+ inline gray8 gray8_pre(const rgba& c)
+ {
+ return gray8(c).premultiply();
+ }
+ inline gray8 gray8_pre(const rgba& c, double a)
+ {
+ return gray8(c,a).premultiply();
+ }
+ inline gray8 gray8_pre(const rgba8& c)
+ {
+ return gray8(c).premultiply();
+ }
+ inline gray8 gray8_pre(const rgba8& c, unsigned a)
+ {
+ return gray8(c,a).premultiply();
+ }
+
+
+
+
+ //==================================================================gray16
+ struct gray16
+ {
+ typedef int16u value_type;
+ typedef int32u calc_type;
+ typedef int64 long_type;
+ enum
+ {
+ base_shift = 16,
+ base_size = 1 << base_shift,
+ base_mask = base_size - 1
+ };
+ typedef gray16 self_type;
+
+ value_type v;
+ value_type a;
+
+ //--------------------------------------------------------------------
+ gray16() {}
+
+ //--------------------------------------------------------------------
+ gray16(unsigned v_, unsigned a_=base_mask) :
+ v(int16u(v_)), a(int16u(a_)) {}
+
+ //--------------------------------------------------------------------
+ gray16(const self_type& c, unsigned a_) :
+ v(c.v), a(value_type(a_)) {}
+
+ //--------------------------------------------------------------------
+ gray16(const rgba& c) :
+ v(value_type((0.299*c.r + 0.587*c.g + 0.114*c.b) * double(base_mask) + 0.5)),
+ a(value_type(c.a * double(base_mask))) {}
+
+ //--------------------------------------------------------------------
+ gray16(const rgba& c, double a_) :
+ v(value_type((0.299*c.r + 0.587*c.g + 0.114*c.b) * double(base_mask) + 0.5)),
+ a(value_type(a_ * double(base_mask))) {}
+
+ //--------------------------------------------------------------------
+ gray16(const rgba8& c) :
+ v(c.r*77 + c.g*150 + c.b*29),
+ a((value_type(c.a) << 8) | c.a) {}
+
+ //--------------------------------------------------------------------
+ gray16(const rgba8& c, unsigned a_) :
+ v(c.r*77 + c.g*150 + c.b*29),
+ a((value_type(a_) << 8) | c.a) {}
+
+ //--------------------------------------------------------------------
+ void clear()
+ {
+ v = a = 0;
+ }
+
+ //--------------------------------------------------------------------
+ const self_type& transparent()
+ {
+ a = 0;
+ return *this;
+ }
+
+ //--------------------------------------------------------------------
+ void opacity(double a_)
+ {
+ if(a_ < 0.0) a_ = 0.0;
+ if(a_ > 1.0) a_ = 1.0;
+ a = value_type(a_ * double(base_mask));
+ }
+
+ //--------------------------------------------------------------------
+ double opacity() const
+ {
+ return double(a) / double(base_mask);
+ }
+
+
+ //--------------------------------------------------------------------
+ const self_type& premultiply()
+ {
+ if(a == base_mask) return *this;
+ if(a == 0)
+ {
+ v = 0;
+ return *this;
+ }
+ v = value_type((calc_type(v) * a) >> base_shift);
+ return *this;
+ }
+
+ //--------------------------------------------------------------------
+ const self_type& premultiply(unsigned a_)
+ {
+ if(a == base_mask && a_ >= base_mask) return *this;
+ if(a == 0 || a_ == 0)
+ {
+ v = a = 0;
+ return *this;
+ }
+ calc_type v_ = (calc_type(v) * a_) / a;
+ v = value_type((v_ > a_) ? a_ : v_);
+ a = value_type(a_);
+ return *this;
+ }
+
+ //--------------------------------------------------------------------
+ const self_type& demultiply()
+ {
+ if(a == base_mask) return *this;
+ if(a == 0)
+ {
+ v = 0;
+ return *this;
+ }
+ calc_type v_ = (calc_type(v) * base_mask) / a;
+ v = value_type((v_ > base_mask) ? base_mask : v_);
+ return *this;
+ }
+
+ //--------------------------------------------------------------------
+ self_type gradient(self_type c, double k) const
+ {
+ self_type ret;
+ calc_type ik = calc_type(k * base_size);
+ ret.v = value_type(calc_type(v) + (((calc_type(c.v) - v) * ik) >> base_shift));
+ ret.a = value_type(calc_type(a) + (((calc_type(c.a) - a) * ik) >> base_shift));
+ return ret;
+ }
+
+ //--------------------------------------------------------------------
+ static self_type no_color() { return self_type(0,0); }
+ };
+
+
+ //------------------------------------------------------------gray16_pre
+ inline gray16 gray16_pre(unsigned v, unsigned a = gray16::base_mask)
+ {
+ return gray16(v,a).premultiply();
+ }
+ inline gray16 gray16_pre(const gray16& c, unsigned a)
+ {
+ return gray16(c,a).premultiply();
+ }
+ inline gray16 gray16_pre(const rgba& c)
+ {
+ return gray16(c).premultiply();
+ }
+ inline gray16 gray16_pre(const rgba& c, double a)
+ {
+ return gray16(c,a).premultiply();
+ }
+ inline gray16 gray16_pre(const rgba8& c)
+ {
+ return gray16(c).premultiply();
+ }
+ inline gray16 gray16_pre(const rgba8& c, unsigned a)
+ {
+ return gray16(c,a).premultiply();
+ }
+
+
+}
+
+
+
+
+#endif
diff --git a/agg/inc/agg_color_rgba.h b/agg/inc/agg_color_rgba.h
new file mode 100755
index 000000000000..e1f77206cc66
--- /dev/null
+++ b/agg/inc/agg_color_rgba.h
@@ -0,0 +1,618 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+//
+// Adaptation for high precision colors has been sponsored by
+// Liberty Technology Systems, Inc., visit http://lib-sys.com
+//
+// Liberty Technology Systems, Inc. is the provider of
+// PostScript and PDF technology for software developers.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_COLOR_RGBA_INCLUDED
+#define AGG_COLOR_RGBA_INCLUDED
+
+#include <math.h>
+#include "agg_basics.h"
+
+namespace agg
+{
+ // Supported byte orders for RGB and RGBA pixel formats
+ //=======================================================================
+ struct order_rgb { enum { R=0, G=1, B=2, rgb_tag }; }; //----order_rgb
+ struct order_bgr { enum { B=0, G=1, R=2, rgb_tag }; }; //----order_bgr
+ struct order_rgba { enum { R=0, G=1, B=2, A=3, rgba_tag }; }; //----order_rgba
+ struct order_argb { enum { A=0, R=1, G=2, B=3, rgba_tag }; }; //----order_argb
+ struct order_abgr { enum { A=0, B=1, G=2, R=3, rgba_tag }; }; //----order_abgr
+ struct order_bgra { enum { B=0, G=1, R=2, A=3, rgba_tag }; }; //----order_bgra
+
+ //====================================================================rgba
+ struct rgba
+ {
+ typedef double value_type;
+
+ double r;
+ double g;
+ double b;
+ double a;
+
+ //--------------------------------------------------------------------
+ rgba() {}
+
+ //--------------------------------------------------------------------
+ rgba(double r_, double g_, double b_, double a_=1.0) :
+ r(r_), g(g_), b(b_), a(a_) {}
+
+ //--------------------------------------------------------------------
+ rgba(const rgba& c, double a_) : r(c.r), g(c.g), b(c.b), a(a_) {}
+
+ //--------------------------------------------------------------------
+ void clear()
+ {
+ r = g = b = a = 0;
+ }
+
+ //--------------------------------------------------------------------
+ const rgba& transparent()
+ {
+ a = 0.0;
+ return *this;
+ }
+
+ //--------------------------------------------------------------------
+ const rgba& opacity(double a_)
+ {
+ if(a_ < 0.0) a_ = 0.0;
+ if(a_ > 1.0) a_ = 1.0;
+ a = a_;
+ return *this;
+ }
+
+ //--------------------------------------------------------------------
+ double opacity() const
+ {
+ return a;
+ }
+
+ //--------------------------------------------------------------------
+ const rgba& premultiply()
+ {
+ r *= a;
+ g *= a;
+ b *= a;
+ return *this;
+ }
+
+ //--------------------------------------------------------------------
+ const rgba& premultiply(double a_)
+ {
+ if(a <= 0.0 || a_ <= 0.0)
+ {
+ r = g = b = a = 0.0;
+ return *this;
+ }
+ a_ /= a;
+ r *= a_;
+ g *= a_;
+ b *= a_;
+ a = a_;
+ return *this;
+ }
+
+ //--------------------------------------------------------------------
+ const rgba& demultiply()
+ {
+ if(a == 0)
+ {
+ r = g = b = 0;
+ return *this;
+ }
+ double a_ = 1.0 / a;
+ r *= a_;
+ g *= a_;
+ b *= a_;
+ return *this;
+ }
+
+
+ //--------------------------------------------------------------------
+ rgba gradient(rgba c, double k) const
+ {
+ rgba ret;
+ ret.r = r + (c.r - r) * k;
+ ret.g = g + (c.g - g) * k;
+ ret.b = b + (c.b - b) * k;
+ ret.a = a + (c.a - a) * k;
+ return ret;
+ }
+
+ //--------------------------------------------------------------------
+ static rgba no_color() { return rgba(0,0,0,0); }
+
+ //--------------------------------------------------------------------
+ static rgba from_wavelength(double wl, double gamma = 1.0);
+
+ //--------------------------------------------------------------------
+ rgba(double wavelen, double gamma=1.0)
+ {
+ *this = from_wavelength(wavelen, gamma);
+ }
+
+ };
+
+ //----------------------------------------------------------------rgba_pre
+ inline rgba rgba_pre(double r, double g, double b, double a=1.0)
+ {
+ return rgba(r, g, b, a).premultiply();
+ }
+ inline rgba rgba_pre(const rgba& c)
+ {
+ return rgba(c).premultiply();
+ }
+ inline rgba rgba_pre(const rgba& c, double a)
+ {
+ return rgba(c, a).premultiply();
+ }
+
+ //------------------------------------------------------------------------
+ inline rgba rgba::from_wavelength(double wl, double gamma)
+ {
+ rgba t(0.0, 0.0, 0.0);
+
+ if(wl >= 380.0 && wl <= 440.0)
+ {
+ t.r = -1.0 * (wl - 440.0) / (440.0 - 380.0);
+ t.b = 1.0;
+ }
+ else
+ if(wl >= 440.0 && wl <= 490.0)
+ {
+ t.g = (wl - 440.0) / (490.0 - 440.0);
+ t.b = 1.0;
+ }
+ else
+ if(wl >= 490.0 && wl <= 510.0)
+ {
+ t.g = 1.0;
+ t.b = -1.0 * (wl - 510.0) / (510.0 - 490.0);
+ }
+ else
+ if(wl >= 510.0 && wl <= 580.0)
+ {
+ t.r = (wl - 510.0) / (580.0 - 510.0);
+ t.g = 1.0;
+ }
+ else
+ if(wl >= 580.0 && wl <= 645.0)
+ {
+ t.r = 1.0;
+ t.g = -1.0 * (wl - 645.0) / (645.0 - 580.0);
+ }
+ else
+ if(wl >= 645.0 && wl <= 780.0)
+ {
+ t.r = 1.0;
+ }
+
+ double s = 1.0;
+ if(wl > 700.0) s = 0.3 + 0.7 * (780.0 - wl) / (780.0 - 700.0);
+ else if(wl < 420.0) s = 0.3 + 0.7 * (wl - 380.0) / (420.0 - 380.0);
+
+ t.r = pow(t.r * s, gamma);
+ t.g = pow(t.g * s, gamma);
+ t.b = pow(t.b * s, gamma);
+ return t;
+ }
+
+
+
+
+ //===================================================================rgba8
+ struct rgba8
+ {
+ typedef int8u value_type;
+ typedef int32u calc_type;
+ typedef int32 long_type;
+ enum
+ {
+ base_shift = 8,
+ base_size = 1 << base_shift,
+ base_mask = base_size - 1
+ };
+ typedef rgba8 self_type;
+
+
+ value_type r;
+ value_type g;
+ value_type b;
+ value_type a;
+
+ //--------------------------------------------------------------------
+ rgba8() {}
+
+ //--------------------------------------------------------------------
+ rgba8(unsigned r_, unsigned g_, unsigned b_, unsigned a_=base_mask) :
+ r(value_type(r_)),
+ g(value_type(g_)),
+ b(value_type(b_)),
+ a(value_type(a_)) {}
+
+ //--------------------------------------------------------------------
+ rgba8(const rgba& c, double a_) :
+ r(value_type(c.r * double(base_mask) + 0.5)),
+ g(value_type(c.g * double(base_mask) + 0.5)),
+ b(value_type(c.b * double(base_mask) + 0.5)),
+ a(value_type(a_ * double(base_mask) + 0.5)) {}
+
+ //--------------------------------------------------------------------
+ rgba8(const self_type& c, unsigned a_) :
+ r(c.r), g(c.g), b(c.b), a(value_type(a_)) {}
+
+ //--------------------------------------------------------------------
+ rgba8(const rgba& c) :
+ r(value_type(c.r * double(base_mask) + 0.5)),
+ g(value_type(c.g * double(base_mask) + 0.5)),
+ b(value_type(c.b * double(base_mask) + 0.5)),
+ a(value_type(c.a * double(base_mask) + 0.5)) {}
+
+ //--------------------------------------------------------------------
+ void clear()
+ {
+ r = g = b = a = 0;
+ }
+
+ //--------------------------------------------------------------------
+ const self_type& transparent()
+ {
+ a = 0;
+ return *this;
+ }
+
+ //--------------------------------------------------------------------
+ const self_type& opacity(double a_)
+ {
+ if(a_ < 0.0) a_ = 0.0;
+ if(a_ > 1.0) a_ = 1.0;
+ a = value_type(a_ * double(base_mask) + 0.5);
+ return *this;
+ }
+
+ //--------------------------------------------------------------------
+ double opacity() const
+ {
+ return double(a) / double(base_mask);
+ }
+
+ //--------------------------------------------------------------------
+ const self_type& premultiply()
+ {
+ if(a == base_mask) return *this;
+ if(a == 0)
+ {
+ r = g = b = 0;
+ return *this;
+ }
+ r = value_type((calc_type(r) * a) >> base_shift);
+ g = value_type((calc_type(g) * a) >> base_shift);
+ b = value_type((calc_type(b) * a) >> base_shift);
+ return *this;
+ }
+
+ //--------------------------------------------------------------------
+ const self_type& premultiply(unsigned a_)
+ {
+ if(a == base_mask && a_ >= base_mask) return *this;
+ if(a == 0 || a_ == 0)
+ {
+ r = g = b = a = 0;
+ return *this;
+ }
+ calc_type r_ = (calc_type(r) * a_) / a;
+ calc_type g_ = (calc_type(g) * a_) / a;
+ calc_type b_ = (calc_type(b) * a_) / a;
+ r = value_type((r_ > a_) ? a_ : r_);
+ g = value_type((g_ > a_) ? a_ : g_);
+ b = value_type((b_ > a_) ? a_ : b_);
+ a = value_type(a_);
+ return *this;
+ }
+
+ //--------------------------------------------------------------------
+ const self_type& demultiply()
+ {
+ if(a == base_mask) return *this;
+ if(a == 0)
+ {
+ r = g = b = 0;
+ return *this;
+ }
+ calc_type r_ = (calc_type(r) * base_mask) / a;
+ calc_type g_ = (calc_type(g) * base_mask) / a;
+ calc_type b_ = (calc_type(b) * base_mask) / a;
+ r = value_type((r_ > base_mask) ? base_mask : r_);
+ g = value_type((g_ > base_mask) ? base_mask : g_);
+ b = value_type((b_ > base_mask) ? base_mask : b_);
+ return *this;
+ }
+
+ //--------------------------------------------------------------------
+ self_type gradient(const self_type& c, double k) const
+ {
+ self_type ret;
+ calc_type ik = calc_type(k * base_size);
+ ret.r = value_type(calc_type(r) + (((calc_type(c.r) - r) * ik) >> base_shift));
+ ret.g = value_type(calc_type(g) + (((calc_type(c.g) - g) * ik) >> base_shift));
+ ret.b = value_type(calc_type(b) + (((calc_type(c.b) - b) * ik) >> base_shift));
+ ret.a = value_type(calc_type(a) + (((calc_type(c.a) - a) * ik) >> base_shift));
+ return ret;
+ }
+
+ //--------------------------------------------------------------------
+ static self_type no_color() { return self_type(0,0,0,0); }
+
+ //--------------------------------------------------------------------
+ static self_type from_wavelength(double wl, double gamma = 1.0)
+ {
+ return self_type(rgba::from_wavelength(wl, gamma));
+ }
+ };
+
+
+ //-------------------------------------------------------------rgba8_pre
+ inline rgba8 rgba8_pre(unsigned r, unsigned g, unsigned b,
+ unsigned a = rgba8::base_mask)
+ {
+ return rgba8(r,g,b,a).premultiply();
+ }
+ inline rgba8 rgba8_pre(const rgba8& c)
+ {
+ return rgba8(c).premultiply();
+ }
+ inline rgba8 rgba8_pre(const rgba8& c, unsigned a)
+ {
+ return rgba8(c,a).premultiply();
+ }
+ inline rgba8 rgba8_pre(const rgba& c)
+ {
+ return rgba8(c).premultiply();
+ }
+ inline rgba8 rgba8_pre(const rgba& c, double a)
+ {
+ return rgba8(c,a).premultiply();
+ }
+
+
+ //-----------------------------------------------------------rgb8_packed
+ inline rgba8 rgb8_packed(unsigned v)
+ {
+ return rgba8((v >> 16) & 0xFF, (v >> 8) & 0xFF, v & 0xFF);
+ }
+
+ //-----------------------------------------------------------bgr8_packed
+ inline rgba8 bgr8_packed(unsigned v)
+ {
+ return rgba8(v & 0xFF, (v >> 8) & 0xFF, (v >> 16) & 0xFF);
+ }
+
+ //----------------------------------------------------------argb8_packed
+ inline rgba8 argb8_packed(unsigned v)
+ {
+ return rgba8((v >> 16) & 0xFF, (v >> 8) & 0xFF, v & 0xFF, v >> 24);
+ }
+
+
+
+
+
+
+
+
+ //=================================================================rgba16
+ struct rgba16
+ {
+ typedef int16u value_type;
+ typedef int32u calc_type;
+ typedef int64 long_type;
+ enum
+ {
+ base_shift = 16,
+ base_size = 1 << base_shift,
+ base_mask = base_size - 1
+ };
+ typedef rgba16 self_type;
+
+ value_type r;
+ value_type g;
+ value_type b;
+ value_type a;
+
+ //--------------------------------------------------------------------
+ rgba16() {}
+
+ //--------------------------------------------------------------------
+ rgba16(unsigned r_, unsigned g_, unsigned b_, unsigned a_=base_mask) :
+ r(value_type(r_)),
+ g(value_type(g_)),
+ b(value_type(b_)),
+ a(value_type(a_)) {}
+
+ //--------------------------------------------------------------------
+ rgba16(const self_type& c, unsigned a_) :
+ r(c.r), g(c.g), b(c.b), a(value_type(a_)) {}
+
+ //--------------------------------------------------------------------
+ rgba16(const rgba& c) :
+ r(value_type(c.r * double(base_mask) + 0.5)),
+ g(value_type(c.g * double(base_mask) + 0.5)),
+ b(value_type(c.b * double(base_mask) + 0.5)),
+ a(value_type(c.a * double(base_mask) + 0.5)) {}
+
+ //--------------------------------------------------------------------
+ rgba16(const rgba& c, double a_) :
+ r(value_type(c.r * double(base_mask) + 0.5)),
+ g(value_type(c.g * double(base_mask) + 0.5)),
+ b(value_type(c.b * double(base_mask) + 0.5)),
+ a(value_type(a_ * double(base_mask) + 0.5)) {}
+
+ //--------------------------------------------------------------------
+ rgba16(const rgba8& c) :
+ r(value_type((value_type(c.r) << 8) | c.r)),
+ g(value_type((value_type(c.g) << 8) | c.g)),
+ b(value_type((value_type(c.b) << 8) | c.b)),
+ a(value_type((value_type(c.a) << 8) | c.a)) {}
+
+ //--------------------------------------------------------------------
+ rgba16(const rgba8& c, unsigned a_) :
+ r(value_type((value_type(c.r) << 8) | c.r)),
+ g(value_type((value_type(c.g) << 8) | c.g)),
+ b(value_type((value_type(c.b) << 8) | c.b)),
+ a(value_type(( a_ << 8) | c.a)) {}
+
+ //--------------------------------------------------------------------
+ void clear()
+ {
+ r = g = b = a = 0;
+ }
+
+ //--------------------------------------------------------------------
+ const self_type& transparent()
+ {
+ a = 0;
+ return *this;
+ }
+
+ //--------------------------------------------------------------------
+ const self_type& opacity(double a_)
+ {
+ if(a_ < 0.0) a_ = 0.0;
+ if(a_ > 1.0) a_ = 1.0;
+ a = value_type(a_ * double(base_mask) + 0.5);
+ return *this;
+ }
+
+ //--------------------------------------------------------------------
+ double opacity() const
+ {
+ return double(a) / double(base_mask);
+ }
+
+ //--------------------------------------------------------------------
+ const self_type& premultiply()
+ {
+ if(a == base_mask) return *this;
+ if(a == 0)
+ {
+ r = g = b = 0;
+ return *this;
+ }
+ r = value_type((calc_type(r) * a) >> base_shift);
+ g = value_type((calc_type(g) * a) >> base_shift);
+ b = value_type((calc_type(b) * a) >> base_shift);
+ return *this;
+ }
+
+ //--------------------------------------------------------------------
+ const self_type& premultiply(unsigned a_)
+ {
+ if(a == base_mask && a_ >= base_mask) return *this;
+ if(a == 0 || a_ == 0)
+ {
+ r = g = b = a = 0;
+ return *this;
+ }
+ calc_type r_ = (calc_type(r) * a_) / a;
+ calc_type g_ = (calc_type(g) * a_) / a;
+ calc_type b_ = (calc_type(b) * a_) / a;
+ r = value_type((r_ > a_) ? a_ : r_);
+ g = value_type((g_ > a_) ? a_ : g_);
+ b = value_type((b_ > a_) ? a_ : b_);
+ a = value_type(a_);
+ return *this;
+ }
+
+ //--------------------------------------------------------------------
+ const self_type& demultiply()
+ {
+ if(a == base_mask) return *this;
+ if(a == 0)
+ {
+ r = g = b = 0;
+ return *this;
+ }
+ calc_type r_ = (calc_type(r) * base_mask) / a;
+ calc_type g_ = (calc_type(g) * base_mask) / a;
+ calc_type b_ = (calc_type(b) * base_mask) / a;
+ r = value_type((r_ > base_mask) ? base_mask : r_);
+ g = value_type((g_ > base_mask) ? base_mask : g_);
+ b = value_type((b_ > base_mask) ? base_mask : b_);
+ return *this;
+ }
+
+ //--------------------------------------------------------------------
+ self_type gradient(const self_type& c, double k) const
+ {
+ self_type ret;
+ calc_type ik = calc_type(k * base_size);
+ ret.r = value_type(calc_type(r) + (((calc_type(c.r) - r) * ik) >> base_shift));
+ ret.g = value_type(calc_type(g) + (((calc_type(c.g) - g) * ik) >> base_shift));
+ ret.b = value_type(calc_type(b) + (((calc_type(c.b) - b) * ik) >> base_shift));
+ ret.a = value_type(calc_type(a) + (((calc_type(c.a) - a) * ik) >> base_shift));
+ return ret;
+ }
+
+ //--------------------------------------------------------------------
+ static self_type no_color() { return self_type(0,0,0,0); }
+
+ //--------------------------------------------------------------------
+ static self_type from_wavelength(double wl, double gamma = 1.0)
+ {
+ return self_type(rgba::from_wavelength(wl, gamma));
+ }
+ };
+
+
+
+ //--------------------------------------------------------------rgba16_pre
+ inline rgba16 rgba16_pre(unsigned r, unsigned g, unsigned b,
+ unsigned a = rgba16::base_mask)
+ {
+ return rgba16(r,g,b,a).premultiply();
+ }
+ inline rgba16 rgba16_pre(const rgba16& c, unsigned a)
+ {
+ return rgba16(c,a).premultiply();
+ }
+ inline rgba16 rgba16_pre(const rgba& c)
+ {
+ return rgba16(c).premultiply();
+ }
+ inline rgba16 rgba16_pre(const rgba& c, double a)
+ {
+ return rgba16(c,a).premultiply();
+ }
+ inline rgba16 rgba16_pre(const rgba8& c)
+ {
+ return rgba16(c).premultiply();
+ }
+ inline rgba16 rgba16_pre(const rgba8& c, unsigned a)
+ {
+ return rgba16(c,a).premultiply();
+ }
+
+}
+
+
+
+#endif
diff --git a/agg/inc/agg_config.h b/agg/inc/agg_config.h
new file mode 100755
index 000000000000..b412a6dff178
--- /dev/null
+++ b/agg/inc/agg_config.h
@@ -0,0 +1,31 @@
+#ifndef AGG_CONFIG_INCLUDED
+#define AGG_CONFIG_INCLUDED
+
+// This file can be used to redefine the default basic types such as:
+//
+// AGG_INT8
+// AGG_INT8U
+// AGG_INT16
+// AGG_INT16U
+// AGG_INT32
+// AGG_INT32U
+// AGG_INT64
+// AGG_INT64U
+//
+// Just replace this file with new defines if necessary.
+// For example, if your compiler doesn't have a 64 bit integer type
+// you can still use AGG if you define the follows:
+//
+// #define AGG_INT64 int
+// #define AGG_INT64U unsigned
+//
+// It will result in overflow in 16 bit-per-component image/pattern resampling
+// but it won't result any crash and the rest of the library will remain
+// fully functional.
+
+// #i65318# Passing agg version on to clients
+#ifndef AGG_VERSION
+# define AGG_VERSION 2300
+#endif
+
+#endif
diff --git a/agg/inc/agg_conv_adaptor_vcgen.h b/agg/inc/agg_conv_adaptor_vcgen.h
new file mode 100755
index 000000000000..f8233a388357
--- /dev/null
+++ b/agg/inc/agg_conv_adaptor_vcgen.h
@@ -0,0 +1,169 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_CONV_ADAPTOR_VCGEN_INCLUDED
+#define AGG_CONV_ADAPTOR_VCGEN_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_vertex_iterator.h"
+
+namespace agg
+{
+ //------------------------------------------------------------null_markers
+ struct null_markers
+ {
+ void remove_all() {}
+ void add_vertex(double, double, unsigned) {}
+ void prepare_src() {}
+
+ void rewind(unsigned) {}
+ unsigned vertex(double*, double*) { return path_cmd_stop; }
+
+ typedef null_markers source_type;
+ typedef vertex_iterator<source_type> iterator;
+ iterator begin(unsigned id) { return iterator(*this, id); }
+ iterator end() { return iterator(path_cmd_stop); }
+ };
+
+
+ //------------------------------------------------------conv_adaptor_vcgen
+ template<class VertexSource,
+ class Generator,
+ class Markers=null_markers> class conv_adaptor_vcgen
+ {
+ enum status
+ {
+ initial,
+ accumulate,
+ generate
+ };
+
+ public:
+ conv_adaptor_vcgen(VertexSource& source) :
+ m_source(&source),
+ m_status(initial)
+ {}
+
+ void set_source(VertexSource& source) { m_source = &source; }
+
+ Generator& generator() { return m_generator; }
+ const Generator& generator() const { return m_generator; }
+
+ Markers& markers() { return m_markers; }
+ const Markers& markers() const { return m_markers; }
+
+ void rewind(unsigned id)
+ {
+ m_source->rewind(id);
+ m_status = initial;
+ }
+
+ unsigned vertex(double* x, double* y);
+
+ typedef conv_adaptor_vcgen<VertexSource, Generator, Markers> source_type;
+ typedef vertex_iterator<source_type> iterator;
+ iterator begin(unsigned id) { return iterator(*this, id); }
+ iterator end() { return iterator(path_cmd_stop); }
+
+ private:
+ // Prohibit copying
+ conv_adaptor_vcgen(const conv_adaptor_vcgen<VertexSource, Generator, Markers>&);
+ const conv_adaptor_vcgen<VertexSource, Generator, Markers>&
+ operator = (const conv_adaptor_vcgen<VertexSource, Generator, Markers>&);
+
+ VertexSource* m_source;
+ Generator m_generator;
+ Markers m_markers;
+ status m_status;
+ unsigned m_last_cmd;
+ double m_start_x;
+ double m_start_y;
+ };
+
+
+
+
+
+ //------------------------------------------------------------------------
+ template<class VertexSource, class Generator, class Markers>
+ unsigned conv_adaptor_vcgen<VertexSource, Generator, Markers>::vertex(double* x, double* y)
+ {
+ unsigned cmd = path_cmd_stop;
+ bool done = false;
+ while(!done)
+ {
+ switch(m_status)
+ {
+ case initial:
+ m_markers.remove_all();
+ m_last_cmd = m_source->vertex(&m_start_x, &m_start_y);
+ m_status = accumulate;
+
+ case accumulate:
+ if(is_stop(m_last_cmd)) return path_cmd_stop;
+
+ m_generator.remove_all();
+ m_generator.add_vertex(m_start_x, m_start_y, path_cmd_move_to);
+ m_markers.add_vertex(m_start_x, m_start_y, path_cmd_move_to);
+
+ for(;;)
+ {
+ cmd = m_source->vertex(x, y);
+ if(is_vertex(cmd))
+ {
+ m_last_cmd = cmd;
+ if(is_move_to(cmd))
+ {
+ m_start_x = *x;
+ m_start_y = *y;
+ break;
+ }
+ m_generator.add_vertex(*x, *y, cmd);
+ m_markers.add_vertex(*x, *y, path_cmd_line_to);
+ }
+ else
+ {
+ if(is_stop(cmd))
+ {
+ m_last_cmd = path_cmd_stop;
+ break;
+ }
+ if(is_end_poly(cmd))
+ {
+ m_generator.add_vertex(*x, *y, cmd);
+ break;
+ }
+ }
+ }
+ m_generator.rewind(0);
+ m_status = generate;
+
+ case generate:
+ cmd = m_generator.vertex(x, y);
+ if(is_stop(cmd))
+ {
+ m_status = accumulate;
+ break;
+ }
+ done = true;
+ break;
+ }
+ }
+ return cmd;
+ }
+
+}
+
+#endif
diff --git a/agg/inc/agg_conv_adaptor_vpgen.h b/agg/inc/agg_conv_adaptor_vpgen.h
new file mode 100755
index 000000000000..f6afdb4d7f12
--- /dev/null
+++ b/agg/inc/agg_conv_adaptor_vpgen.h
@@ -0,0 +1,166 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_CONV_ADAPTOR_VPGEN_INCLUDED
+#define AGG_CONV_ADAPTOR_VPGEN_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_vertex_iterator.h"
+
+namespace agg
+{
+
+ //======================================================conv_adaptor_vpgen
+ template<class VertexSource, class VPGen> class conv_adaptor_vpgen
+ {
+ public:
+ conv_adaptor_vpgen(VertexSource& source) : m_source(&source) {}
+
+ void set_source(VertexSource& source) { m_source = &source; }
+
+ VPGen& vpgen() { return m_vpgen; }
+ const VPGen& vpgen() const { return m_vpgen; }
+
+ void rewind(unsigned path_id);
+ unsigned vertex(double* x, double* y);
+
+ typedef conv_adaptor_vpgen<VertexSource, VPGen> source_type;
+ typedef vertex_iterator<source_type> iterator;
+ iterator begin(unsigned id) { return iterator(*this, id); }
+ iterator end() { return iterator(path_cmd_stop); }
+
+ private:
+ conv_adaptor_vpgen(const conv_adaptor_vpgen<VertexSource, VPGen>&);
+ const conv_adaptor_vpgen<VertexSource, VPGen>&
+ operator = (const conv_adaptor_vpgen<VertexSource, VPGen>&);
+
+ VertexSource* m_source;
+ VPGen m_vpgen;
+ double m_start_x;
+ double m_start_y;
+ unsigned m_poly_flags;
+ int m_vertices;
+ };
+
+
+
+ //------------------------------------------------------------------------
+ template<class VertexSource, class VPGen>
+ void conv_adaptor_vpgen<VertexSource, VPGen>::rewind(unsigned path_id)
+ {
+ m_source->rewind(path_id);
+ m_vpgen.reset();
+ m_start_x = 0;
+ m_start_y = 0;
+ m_poly_flags = 0;
+ m_vertices = 0;
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class VertexSource, class VPGen>
+ unsigned conv_adaptor_vpgen<VertexSource, VPGen>::vertex(double* x, double* y)
+ {
+ unsigned cmd = path_cmd_stop;
+ for(;;)
+ {
+ cmd = m_vpgen.vertex(x, y);
+ if(!is_stop(cmd)) break;
+
+ if(m_poly_flags && !m_vpgen.auto_unclose())
+ {
+ *x = 0.0;
+ *y = 0.0;
+ cmd = m_poly_flags;
+ m_poly_flags = 0;
+ break;
+ }
+
+ if(m_vertices < 0)
+ {
+ if(m_vertices < -1)
+ {
+ m_vertices = 0;
+ return path_cmd_stop;
+ }
+ m_vpgen.move_to(m_start_x, m_start_y);
+ m_vertices = 1;
+ continue;
+ }
+
+ double tx, ty;
+ cmd = m_source->vertex(&tx, &ty);
+ if(is_vertex(cmd))
+ {
+ if(is_move_to(cmd))
+ {
+ if(m_vpgen.auto_close() && m_vertices > 2)
+ {
+ m_vpgen.line_to(m_start_x, m_start_y);
+ m_poly_flags = path_cmd_end_poly | path_flags_close;
+ m_start_x = tx;
+ m_start_y = ty;
+ m_vertices = -1;
+ continue;
+ }
+ m_vpgen.move_to(tx, ty);
+ m_start_x = tx;
+ m_start_y = ty;
+ m_vertices = 1;
+ }
+ else
+ {
+ m_vpgen.line_to(tx, ty);
+ ++m_vertices;
+ }
+ }
+ else
+ {
+ if(is_end_poly(cmd))
+ {
+ m_poly_flags = cmd;
+ if(is_closed(cmd) || m_vpgen.auto_close())
+ {
+ if(m_vpgen.auto_close()) m_poly_flags |= path_flags_close;
+ if(m_vertices > 2)
+ {
+ m_vpgen.line_to(m_start_x, m_start_y);
+ }
+ m_vertices = 0;
+ }
+ }
+ else
+ {
+ // path_cmd_stop
+ if(m_vpgen.auto_close() && m_vertices > 2)
+ {
+ m_vpgen.line_to(m_start_x, m_start_y);
+ m_poly_flags = path_cmd_end_poly | path_flags_close;
+ m_vertices = -2;
+ continue;
+ }
+ break;
+ }
+ }
+ }
+ return cmd;
+ }
+
+
+}
+
+
+#endif
+
diff --git a/agg/inc/agg_conv_bspline.h b/agg/inc/agg_conv_bspline.h
new file mode 100755
index 000000000000..9c504daff209
--- /dev/null
+++ b/agg/inc/agg_conv_bspline.h
@@ -0,0 +1,48 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+#ifndef AGG_CONV_BSPLINE_INCLUDED
+#define AGG_CONV_BSPLINE_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_vcgen_bspline.h"
+#include "agg_conv_adaptor_vcgen.h"
+
+
+namespace agg
+{
+
+ //---------------------------------------------------------conv_bspline
+ template<class VertexSource>
+ struct conv_bspline : public conv_adaptor_vcgen<VertexSource, vcgen_bspline>
+ {
+ typedef conv_adaptor_vcgen<VertexSource, vcgen_bspline> base_type;
+
+ conv_bspline(VertexSource& vs) :
+ conv_adaptor_vcgen<VertexSource, vcgen_bspline>(vs) {}
+
+ void interpolation_step(double v) { base_type::generator().interpolation_step(v); }
+ double interpolation_step() const { return base_type::generator().interpolation_step(); }
+
+ private:
+ conv_bspline(const conv_bspline<VertexSource>&);
+ const conv_bspline<VertexSource>&
+ operator = (const conv_bspline<VertexSource>&);
+ };
+
+}
+
+
+#endif
+
diff --git a/agg/inc/agg_conv_clip_polygon.h b/agg/inc/agg_conv_clip_polygon.h
new file mode 100755
index 000000000000..cbecc51fbdd5
--- /dev/null
+++ b/agg/inc/agg_conv_clip_polygon.h
@@ -0,0 +1,69 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Polygon clipping converter
+// There an optimized Liang-Basky algorithm is used.
+// The algorithm doesn't optimize the degenerate edges, i.e. it will never
+// break a closed polygon into two or more ones, instead, there will be
+// degenerate edges coinciding with the respective clipping boundaries.
+// This is a sub-optimal solution, because that optimization would require
+// extra, rather expensive math while the rasterizer tolerates it quite well,
+// without any considerable overhead.
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_CONV_CLIP_POLYGON_INCLUDED
+#define AGG_CONV_CLIP_POLYGON_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_conv_adaptor_vpgen.h"
+#include "agg_vpgen_clip_polygon.h"
+#include "agg_vertex_iterator.h"
+
+namespace agg
+{
+
+ //=======================================================conv_clip_polygon
+ template<class VertexSource>
+ struct conv_clip_polygon : public conv_adaptor_vpgen<VertexSource, vpgen_clip_polygon>
+ {
+ typedef conv_adaptor_vpgen<VertexSource, vpgen_clip_polygon> base_type;
+
+ conv_clip_polygon(VertexSource& vs) :
+ conv_adaptor_vpgen<VertexSource, vpgen_clip_polygon>(vs) {}
+
+ void clip_box(double x1, double y1, double x2, double y2)
+ {
+ base_type::vpgen().clip_box(x1, y1, x2, y2);
+ }
+
+ double x1() const { return base_type::vpgen().x1(); }
+ double y1() const { return base_type::vpgen().y1(); }
+ double x2() const { return base_type::vpgen().x2(); }
+ double y2() const { return base_type::vpgen().y2(); }
+
+ typedef conv_clip_polygon<VertexSource> source_type;
+ typedef vertex_iterator<source_type> iterator;
+ iterator begin(unsigned id) { return iterator(*this, id); }
+ iterator end() { return iterator(path_cmd_stop); }
+
+ private:
+ conv_clip_polygon(const conv_clip_polygon<VertexSource>&);
+ const conv_clip_polygon<VertexSource>&
+ operator = (const conv_clip_polygon<VertexSource>&);
+ };
+
+}
+
+#endif
diff --git a/agg/inc/agg_conv_clip_polyline.h b/agg/inc/agg_conv_clip_polyline.h
new file mode 100755
index 000000000000..4ac66276891c
--- /dev/null
+++ b/agg/inc/agg_conv_clip_polyline.h
@@ -0,0 +1,69 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// polyline clipping converter
+// There an optimized Liang-Basky algorithm is used.
+// The algorithm doesn't optimize the degenerate edges, i.e. it will never
+// break a closed polyline into two or more ones, instead, there will be
+// degenerate edges coinciding with the respective clipping boundaries.
+// This is a sub-optimal solution, because that optimization would require
+// extra, rather expensive math while the rasterizer tolerates it quite well,
+// without any considerable overhead.
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_CONV_CLIP_polyline_INCLUDED
+#define AGG_CONV_CLIP_polyline_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_conv_adaptor_vpgen.h"
+#include "agg_vpgen_clip_polyline.h"
+#include "agg_vertex_iterator.h"
+
+namespace agg
+{
+
+ //=======================================================conv_clip_polyline
+ template<class VertexSource>
+ struct conv_clip_polyline : public conv_adaptor_vpgen<VertexSource, vpgen_clip_polyline>
+ {
+ typedef conv_adaptor_vpgen<VertexSource, vpgen_clip_polyline> base_type;
+
+ conv_clip_polyline(VertexSource& vs) :
+ conv_adaptor_vpgen<VertexSource, vpgen_clip_polyline>(vs) {}
+
+ void clip_box(double x1, double y1, double x2, double y2)
+ {
+ base_type::vpgen().clip_box(x1, y1, x2, y2);
+ }
+
+ double x1() const { return base_type::vpgen().x1(); }
+ double y1() const { return base_type::vpgen().y1(); }
+ double x2() const { return base_type::vpgen().x2(); }
+ double y2() const { return base_type::vpgen().y2(); }
+
+ typedef conv_clip_polyline<VertexSource> source_type;
+ typedef vertex_iterator<source_type> iterator;
+ iterator begin(unsigned id) { return iterator(*this, id); }
+ iterator end() { return iterator(path_cmd_stop); }
+
+ private:
+ conv_clip_polyline(const conv_clip_polyline<VertexSource>&);
+ const conv_clip_polyline<VertexSource>&
+ operator = (const conv_clip_polyline<VertexSource>&);
+ };
+
+}
+
+#endif
diff --git a/agg/inc/agg_conv_close_polygon.h b/agg/inc/agg_conv_close_polygon.h
new file mode 100755
index 000000000000..60a756a7408a
--- /dev/null
+++ b/agg/inc/agg_conv_close_polygon.h
@@ -0,0 +1,132 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_CONV_CLOSE_POLYGON_INCLUDED
+#define AGG_CONV_CLOSE_POLYGON_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_vertex_iterator.h"
+
+namespace agg
+{
+
+ //======================================================conv_close_polygon
+ template<class VertexSource> class conv_close_polygon
+ {
+ public:
+ conv_close_polygon(VertexSource& vs) : m_source(&vs) {}
+
+ void set_source(VertexSource& source) { m_source = &source; }
+
+ void rewind(unsigned path_id);
+ unsigned vertex(double* x, double* y);
+
+ typedef conv_close_polygon<VertexSource> source_type;
+ typedef vertex_iterator<source_type> iterator;
+ iterator begin(unsigned id) { return iterator(*this, id); }
+ iterator end() { return iterator(path_cmd_stop); }
+
+ private:
+ conv_close_polygon(const conv_close_polygon<VertexSource>&);
+ const conv_close_polygon<VertexSource>&
+ operator = (const conv_close_polygon<VertexSource>&);
+
+ VertexSource* m_source;
+ unsigned m_cmd[2];
+ double m_x[2];
+ double m_y[2];
+ unsigned m_vertex;
+ bool m_line_to;
+ };
+
+
+
+ //------------------------------------------------------------------------
+ template<class VertexSource>
+ void conv_close_polygon<VertexSource>::rewind(unsigned path_id)
+ {
+ m_source->rewind(path_id);
+ m_vertex = 2;
+ m_line_to = false;
+ }
+
+
+
+ //------------------------------------------------------------------------
+ template<class VertexSource>
+ unsigned conv_close_polygon<VertexSource>::vertex(double* x, double* y)
+ {
+ unsigned cmd = path_cmd_stop;
+ for(;;)
+ {
+ if(m_vertex < 2)
+ {
+ *x = m_x[m_vertex];
+ *y = m_y[m_vertex];
+ cmd = m_cmd[m_vertex];
+ ++m_vertex;
+ break;
+ }
+
+ cmd = m_source->vertex(x, y);
+
+ if(is_end_poly(cmd))
+ {
+ cmd |= path_flags_close;
+ break;
+ }
+
+ if(is_stop(cmd))
+ {
+ if(m_line_to)
+ {
+ m_cmd[0] = path_cmd_end_poly | path_flags_close;
+ m_cmd[1] = path_cmd_stop;
+ m_vertex = 0;
+ m_line_to = false;
+ continue;
+ }
+ break;
+ }
+
+ if(is_move_to(cmd))
+ {
+ if(m_line_to)
+ {
+ m_x[0] = 0.0;
+ m_y[0] = 0.0;
+ m_cmd[0] = path_cmd_end_poly | path_flags_close;
+ m_x[1] = *x;
+ m_y[1] = *y;
+ m_cmd[1] = cmd;
+ m_vertex = 0;
+ m_line_to = false;
+ continue;
+ }
+ break;
+ }
+
+ if(is_vertex(cmd))
+ {
+ m_line_to = true;
+ break;
+ }
+ }
+ return cmd;
+ }
+
+}
+
+#endif
diff --git a/agg/inc/agg_conv_concat.h b/agg/inc/agg_conv_concat.h
new file mode 100755
index 000000000000..2b9886a1be46
--- /dev/null
+++ b/agg/inc/agg_conv_concat.h
@@ -0,0 +1,80 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_CONV_CONCAT_INCLUDED
+#define AGG_CONV_CONCAT_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_vertex_iterator.h"
+
+namespace agg
+{
+ //=============================================================conv_concat
+ // Concatenation of two paths. Usually used to combine lines or curves
+ // with markers such as arrowheads
+ template<class VS1, class VS2> class conv_concat
+ {
+ public:
+ conv_concat(VS1& source1, VS2& source2) :
+ m_source1(&source1), m_source2(&source2), m_status(2) {}
+
+ void set_source1(VS1& source) { m_source1 = &source; }
+ void set_source2(VS2& source) { m_source2 = &source; }
+
+
+ void rewind(unsigned id)
+ {
+ m_source1->rewind(id);
+ m_source2->rewind(0);
+ m_status = 0;
+ }
+
+ unsigned vertex(double* x, double* y)
+ {
+ unsigned cmd;
+ if(m_status == 0)
+ {
+ cmd = m_source1->vertex(x, y);
+ if(!is_stop(cmd)) return cmd;
+ m_status = 1;
+ }
+ if(m_status == 1)
+ {
+ cmd = m_source2->vertex(x, y);
+ if(!is_stop(cmd)) return cmd;
+ m_status = 2;
+ }
+ return path_cmd_stop;
+ }
+
+ typedef conv_concat<VS1, VS2> source_type;
+ typedef vertex_iterator<source_type> iterator;
+ iterator begin(unsigned id) { return iterator(*this, id); }
+ iterator end() { return iterator(path_cmd_stop); }
+
+ private:
+ conv_concat(const conv_concat<VS1, VS2>&);
+ const conv_concat<VS1, VS2>&
+ operator = (const conv_concat<VS1, VS2>&);
+
+ VS1* m_source1;
+ VS2* m_source2;
+ int m_status;
+
+ };
+}
+
+
+#endif
diff --git a/agg/inc/agg_conv_contour.h b/agg/inc/agg_conv_contour.h
new file mode 100755
index 000000000000..652a8e1fa4f3
--- /dev/null
+++ b/agg/inc/agg_conv_contour.h
@@ -0,0 +1,65 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// conv_stroke
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_CONV_CONTOUR_INCLUDED
+#define AGG_CONV_CONTOUR_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_vcgen_contour.h"
+#include "agg_conv_adaptor_vcgen.h"
+
+namespace agg
+{
+
+ //-----------------------------------------------------------conv_contour
+ template<class VertexSource>
+ struct conv_contour : public conv_adaptor_vcgen<VertexSource, vcgen_contour>
+ {
+ typedef conv_adaptor_vcgen<VertexSource, vcgen_contour> base_type;
+
+ conv_contour(VertexSource& vs) :
+ conv_adaptor_vcgen<VertexSource, vcgen_contour>(vs)
+ {
+ }
+
+ void line_join(line_join_e lj) { base_type::generator().line_join(lj); }
+ void inner_line_join(line_join_e lj) { base_type::generator().inner_line_join(lj); }
+ void width(double w) { base_type::generator().width(w); }
+ void miter_limit(double ml) { base_type::generator().miter_limit(ml); }
+ void miter_limit_theta(double t) { base_type::generator().miter_limit_theta(t); }
+ void inner_miter_limit(double ml) { base_type::generator().inner_miter_limit(ml); }
+ void approximation_scale(double as) { base_type::generator().approximation_scale(as); }
+ void auto_detect_orientation(bool v) { base_type::generator().auto_detect_orientation(v); }
+
+ line_join_e line_join() const { return base_type::generator().line_join(); }
+ line_join_e inner_line_join() const { return base_type::generator().inner_line_join(); }
+ double width() const { return base_type::generator().width(); }
+ double miter_limit() const { return base_type::generator().miter_limit(); }
+ double inner_miter_limit() const { return base_type::generator().inner_miter_limit(); }
+ double approximation_scale() const { return base_type::generator().approximation_scale(); }
+ bool auto_detect_orientation() const { return base_type::generator().auto_detect_orientation(); }
+
+ private:
+ conv_contour(const conv_contour<VertexSource>&);
+ const conv_contour<VertexSource>&
+ operator = (const conv_contour<VertexSource>&);
+ };
+
+}
+
+#endif
diff --git a/agg/inc/agg_conv_curve.h b/agg/inc/agg_conv_curve.h
new file mode 100755
index 000000000000..3b8e6cff2e2e
--- /dev/null
+++ b/agg/inc/agg_conv_curve.h
@@ -0,0 +1,174 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// classes conv_curve
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_CONV_CURVE_INCLUDED
+#define AGG_CONV_CURVE_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_curves.h"
+
+namespace agg
+{
+
+
+ //---------------------------------------------------------------conv_curve
+ // Curve converter class. Any path storage can have Bezier curves defined
+ // by their control points. There're two types of curves supported: curve3
+ // and curve4. Curve3 is a conic Bezier curve with 2 endpoints and 1 control
+ // point. Curve4 has 2 control points (4 points in total) and can be used
+ // to interpolate more complicated curves. Curve4, unlike curve3 can be used
+ // to approximate arcs, both curcular and elliptical. Curves are approximated
+ // with straight lines and one of the approaches is just to store the whole
+ // sequence of vertices that approximate our curve. It takes additional
+ // memory, and at the same time the consecutive vertices can be calculated
+ // on demand.
+ //
+ // Initially, path storages are not suppose to keep all the vertices of the
+ // curves (although, nothig prevents us from doing so). Instead, path_storage
+ // keeps only vertices, needed to calculate a curve on demand. Those vertices
+ // are marked with special commands. So, if the path_storage contains curves
+ // (which are not real curves yet), and we render this storage directly,
+ // all we will see is only 2 or 3 straight line segments (for curve3 and
+ // curve4 respectively). If we need to see real curves drawn we need to
+ // include this class into the conversion pipeline.
+ //
+ // Class conv_curve recognizes commands path_cmd_curve3 and path_cmd_curve4
+ // and converts these vertices into a move_to/line_to sequence.
+ //-----------------------------------------------------------------------
+ template<class VertexSource> class conv_curve
+ {
+ public:
+ conv_curve(VertexSource& source) :
+ m_source(&source), m_last_x(0.0), m_last_y(0.0) {}
+
+ void set_source(VertexSource& source) { m_source = &source; }
+
+ void approximation_scale(double s)
+ {
+ m_curve3.approximation_scale(s);
+ m_curve4.approximation_scale(s);
+ }
+
+ double approximation_scale() const
+ {
+ return m_curve3.approximation_scale();
+ }
+
+ void rewind(unsigned id);
+ unsigned vertex(double* x, double* y);
+
+ typedef conv_curve<VertexSource> source_type;
+ typedef vertex_iterator<source_type> iterator;
+ iterator begin(unsigned id) { return iterator(*this, id); }
+ iterator end() { return iterator(path_cmd_stop); }
+
+ private:
+ conv_curve(const conv_curve<VertexSource>&);
+ const conv_curve<VertexSource>&
+ operator = (const conv_curve<VertexSource>&);
+
+ VertexSource* m_source;
+ double m_last_x;
+ double m_last_y;
+ curve3 m_curve3;
+ curve4 m_curve4;
+ };
+
+
+
+ //------------------------------------------------------------------------
+ template<class VertexSource>
+ void conv_curve<VertexSource>::rewind(unsigned id)
+ {
+ m_source->rewind(id);
+ m_last_x = 0.0;
+ m_last_y = 0.0;
+ m_curve3.reset();
+ m_curve4.reset();
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class VertexSource>
+ unsigned conv_curve<VertexSource>::vertex(double* x, double* y)
+ {
+ if(!is_stop(m_curve3.vertex(x, y)))
+ {
+ m_last_x = *x;
+ m_last_y = *y;
+ return path_cmd_line_to;
+ }
+
+ if(!is_stop(m_curve4.vertex(x, y)))
+ {
+ m_last_x = *x;
+ m_last_y = *y;
+ return path_cmd_line_to;
+ }
+
+ double ct2_x = 0;
+ double ct2_y = 0;
+ double end_x = 0;
+ double end_y = 0;
+
+ unsigned cmd = m_source->vertex(x, y);
+ switch(cmd)
+ {
+ case path_cmd_move_to:
+ case path_cmd_line_to:
+ m_last_x = *x;
+ m_last_y = *y;
+ default:
+ break;
+
+ case path_cmd_curve3:
+ m_source->vertex(&end_x, &end_y);
+
+ m_curve3.init(m_last_x, m_last_y,
+ *x, *y,
+ end_x, end_y);
+
+ m_curve3.vertex(x, y); // First call returns path_cmd_move_to
+ m_curve3.vertex(x, y); // This is the first vertex of the curve
+ cmd = path_cmd_line_to;
+ break;
+
+ case path_cmd_curve4:
+ m_source->vertex(&ct2_x, &ct2_y);
+ m_source->vertex(&end_x, &end_y);
+
+ m_curve4.init(m_last_x, m_last_y,
+ *x, *y,
+ ct2_x, ct2_y,
+ end_x, end_y);
+
+ m_curve4.vertex(x, y); // First call returns path_cmd_move_to
+ m_curve4.vertex(x, y); // This is the first vertex of the curve
+ cmd = path_cmd_line_to;
+ break;
+ }
+ return cmd;
+ }
+
+
+}
+
+
+
+#endif
diff --git a/agg/inc/agg_conv_dash.h b/agg/inc/agg_conv_dash.h
new file mode 100755
index 000000000000..0520276bbb96
--- /dev/null
+++ b/agg/inc/agg_conv_dash.h
@@ -0,0 +1,68 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// conv_dash
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_CONV_DASH_INCLUDED
+#define AGG_CONV_DASH_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_vcgen_dash.h"
+#include "agg_conv_adaptor_vcgen.h"
+
+namespace agg
+{
+
+ //---------------------------------------------------------------conv_dash
+ template<class VertexSource, class Markers=null_markers>
+ struct conv_dash : public conv_adaptor_vcgen<VertexSource, vcgen_dash, Markers>
+ {
+ typedef Markers marker_type;
+ typedef conv_adaptor_vcgen<VertexSource, vcgen_dash, Markers> base_type;
+
+ conv_dash(VertexSource& vs) :
+ conv_adaptor_vcgen<VertexSource, vcgen_dash, Markers>(vs)
+ {
+ }
+
+ void remove_all_dashes()
+ {
+ base_type::generator().remove_all_dashes();
+ }
+
+ void add_dash(double dash_len, double gap_len)
+ {
+ base_type::generator().add_dash(dash_len, gap_len);
+ }
+
+ void dash_start(double ds)
+ {
+ base_type::generator().dash_start(ds);
+ }
+
+ void shorten(double s) { base_type::generator().shorten(s); }
+ double shorten() const { return base_type::generator().shorten(); }
+
+ private:
+ conv_dash(const conv_dash<VertexSource, Markers>&);
+ const conv_dash<VertexSource, Markers>&
+ operator = (const conv_dash<VertexSource, Markers>&);
+ };
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_conv_gpc.h b/agg/inc/agg_conv_gpc.h
new file mode 100755
index 000000000000..1810309d208a
--- /dev/null
+++ b/agg/inc/agg_conv_gpc.h
@@ -0,0 +1,443 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// General Polygon Clipper based on the GPC library by Alan Murta
+// Union, Intersection, XOR, A-B, B-A
+// Contact the author if you intend to use it in commercial applications!
+// http://www.cs.man.ac.uk/aig/staff/alan/software/
+// Alan Murta (email: gpc@cs.man.ac.uk)
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_CONV_GPC_INCLUDED
+#define AGG_CONV_GPC_INCLUDED
+
+#include <math.h>
+#include "agg_basics.h"
+#include "agg_array.h"
+#include "agg_vertex_iterator.h"
+
+extern "C"
+{
+#include "gpc.h"
+}
+
+namespace agg
+{
+ enum gpc_op_e
+ {
+ gpc_or,
+ gpc_and,
+ gpc_xor,
+ gpc_a_minus_b,
+ gpc_b_minus_a
+ };
+
+
+ //================================================================conv_gpc
+ template<class VSA, class VSB> class conv_gpc
+ {
+ enum status
+ {
+ status_move_to,
+ status_line_to,
+ status_stop
+ };
+
+ struct contour_header_type
+ {
+ int num_vertices;
+ int hole_flag;
+ gpc_vertex* vertices;
+ };
+
+ typedef pod_deque<gpc_vertex, 8> vertex_array_type;
+ typedef pod_deque<contour_header_type, 6> contour_header_array_type;
+
+
+ public:
+ typedef VSA source_a_type;
+ typedef VSB source_b_type;
+ typedef conv_gpc<source_a_type, source_b_type> self_type;
+
+ ~conv_gpc()
+ {
+ free_gpc_data();
+ }
+
+ conv_gpc(source_a_type& a, source_b_type& b, gpc_op_e op = gpc_or) :
+ m_src_a(&a),
+ m_src_b(&b),
+ m_status(status_move_to),
+ m_vertex(-1),
+ m_contour(-1),
+ m_operation(op)
+ {
+ memset(&m_poly_a, 0, sizeof(m_poly_a));
+ memset(&m_poly_b, 0, sizeof(m_poly_b));
+ memset(&m_result, 0, sizeof(m_result));
+ }
+
+ void set_source1(VSA& source) { m_src_a = &source; }
+ void set_source2(VSB& source) { m_src_b = &source; }
+
+ void operation(gpc_op_e v) { m_operation = v; }
+
+ // Vertex Source Interface
+ void rewind(unsigned id);
+ unsigned vertex(double* x, double* y);
+
+ // Iterator
+ typedef vertex_iterator<self_type> iterator;
+ iterator begin(unsigned id) { return iterator(*this, id); }
+ iterator end() { return iterator(path_cmd_stop); }
+
+ private:
+ conv_gpc(const conv_gpc<VSA, VSB>&);
+ const conv_gpc<VSA, VSB>& operator = (const conv_gpc<VSA, VSB>&);
+
+ //--------------------------------------------------------------------
+ void free_polygon(gpc_polygon& p);
+ void free_result();
+ void free_gpc_data();
+ void start_contour();
+ void add_vertex(double x, double y);
+ void end_contour(unsigned orientation);
+ void make_polygon(gpc_polygon& p);
+ void start_extracting();
+ bool next_contour();
+ bool next_vertex(double* x, double* y);
+
+
+ //--------------------------------------------------------------------
+ template<class VS> void add(VS& src, gpc_polygon& p)
+ {
+ unsigned cmd;
+ double x, y;
+ double start_x = 0.0;
+ double start_y = 0.0;
+ bool line_to = false;
+ unsigned orientation = 0;
+
+ m_contour_accumulator.remove_all();
+
+ while(!is_stop(cmd = src.vertex(&x, &y)))
+ {
+ if(is_vertex(cmd))
+ {
+ if(is_move_to(cmd))
+ {
+ if(line_to)
+ {
+ end_contour(orientation);
+ orientation = 0;
+ }
+ start_contour();
+ start_x = x;
+ start_y = y;
+ }
+ add_vertex(x, y);
+ line_to = true;
+ }
+ else
+ {
+ if(is_end_poly(cmd))
+ {
+ orientation = get_orientation(cmd);
+ if(line_to && is_closed(cmd))
+ {
+ add_vertex(start_x, start_y);
+ }
+ }
+ }
+ }
+ if(line_to)
+ {
+ end_contour(orientation);
+ }
+ make_polygon(p);
+ }
+
+
+ private:
+ //--------------------------------------------------------------------
+ source_a_type* m_src_a;
+ source_b_type* m_src_b;
+ status m_status;
+ int m_vertex;
+ int m_contour;
+ gpc_op_e m_operation;
+ vertex_array_type m_vertex_accumulator;
+ contour_header_array_type m_contour_accumulator;
+ gpc_polygon m_poly_a;
+ gpc_polygon m_poly_b;
+ gpc_polygon m_result;
+ };
+
+
+
+
+
+ //------------------------------------------------------------------------
+ template<class VSA, class VSB>
+ void conv_gpc<VSA, VSB>::free_polygon(gpc_polygon& p)
+ {
+ int i;
+ for(i = 0; i < p.num_contours; i++)
+ {
+ delete [] p.contour[i].vertex;
+ }
+ delete [] p.hole;
+ delete [] p.contour;
+ memset(&p, 0, sizeof(gpc_polygon));
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class VSA, class VSB>
+ void conv_gpc<VSA, VSB>::free_result()
+ {
+ if(m_result.contour)
+ {
+ gpc_free_polygon(&m_result);
+ }
+ memset(&m_result, 0, sizeof(m_result));
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class VSA, class VSB>
+ void conv_gpc<VSA, VSB>::free_gpc_data()
+ {
+ free_polygon(m_poly_a);
+ free_polygon(m_poly_b);
+ free_result();
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class VSA, class VSB>
+ void conv_gpc<VSA, VSB>::start_contour()
+ {
+ contour_header_type h;
+ memset(&h, 0, sizeof(h));
+ m_contour_accumulator.add(h);
+ m_vertex_accumulator.remove_all();
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class VSA, class VSB>
+ inline void conv_gpc<VSA, VSB>::add_vertex(double x, double y)
+ {
+ gpc_vertex v;
+ v.x = x;
+ v.y = y;
+ m_vertex_accumulator.add(v);
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class VSA, class VSB>
+ void conv_gpc<VSA, VSB>::end_contour(unsigned orientation)
+ {
+ if(m_contour_accumulator.size())
+ {
+ if(m_vertex_accumulator.size() > 2)
+ {
+ contour_header_type& h =
+ m_contour_accumulator[m_contour_accumulator.size() - 1];
+
+ h.num_vertices = m_vertex_accumulator.size();
+ h.hole_flag = 0;
+
+ // TO DO: Clarify the "holes"
+ //if(is_cw(orientation)) h.hole_flag = 1;
+
+ h.vertices = new gpc_vertex [h.num_vertices];
+ gpc_vertex* d = h.vertices;
+ int i;
+ for(i = 0; i < h.num_vertices; i++)
+ {
+ const gpc_vertex& s = m_vertex_accumulator[i];
+ d->x = s.x;
+ d->y = s.y;
+ ++d;
+ }
+ }
+ else
+ {
+ m_vertex_accumulator.remove_last();
+ }
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class VSA, class VSB>
+ void conv_gpc<VSA, VSB>::make_polygon(gpc_polygon& p)
+ {
+ free_polygon(p);
+ if(m_contour_accumulator.size())
+ {
+ p.num_contours = m_contour_accumulator.size();
+
+ // TO DO: Clarify the "holes"
+ //p.hole = new int[p.num_contours];
+ p.hole = 0;
+
+ p.contour = new gpc_vertex_list[p.num_contours];
+
+ int i;
+ //int* ph = p.hole;
+ gpc_vertex_list* pv = p.contour;
+ for(i = 0; i < p.num_contours; i++)
+ {
+ const contour_header_type& h = m_contour_accumulator[i];
+ // *ph++ = h.hole_flag;
+ pv->num_vertices = h.num_vertices;
+ pv->vertex = h.vertices;
+ ++pv;
+ }
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class VSA, class VSB>
+ void conv_gpc<VSA, VSB>::start_extracting()
+ {
+ m_status = status_move_to;
+ m_contour = -1;
+ m_vertex = -1;
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class VSA, class VSB>
+ bool conv_gpc<VSA, VSB>::next_contour()
+ {
+ if(++m_contour < m_result.num_contours)
+ {
+ m_vertex = -1;
+ return true;
+ }
+ return false;
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class VSA, class VSB>
+ inline bool conv_gpc<VSA, VSB>::next_vertex(double* x, double* y)
+ {
+ const gpc_vertex_list& vlist = m_result.contour[m_contour];
+ if(++m_vertex < vlist.num_vertices)
+ {
+ const gpc_vertex& v = vlist.vertex[m_vertex];
+ *x = v.x;
+ *y = v.y;
+ return true;
+ }
+ return false;
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class VSA, class VSB>
+ void conv_gpc<VSA, VSB>::rewind(unsigned id)
+ {
+ free_result();
+ m_src_a->rewind(id);
+ m_src_b->rewind(id);
+ add(*m_src_a, m_poly_a);
+ add(*m_src_b, m_poly_b);
+ switch(m_operation)
+ {
+ case gpc_or:
+ gpc_polygon_clip(GPC_UNION,
+ &m_poly_a,
+ &m_poly_b,
+ &m_result);
+ break;
+
+ case gpc_and:
+ gpc_polygon_clip(GPC_INT,
+ &m_poly_a,
+ &m_poly_b,
+ &m_result);
+ break;
+
+ case gpc_xor:
+ gpc_polygon_clip(GPC_XOR,
+ &m_poly_a,
+ &m_poly_b,
+ &m_result);
+ break;
+
+ case gpc_a_minus_b:
+ gpc_polygon_clip(GPC_DIFF,
+ &m_poly_a,
+ &m_poly_b,
+ &m_result);
+ break;
+
+ case gpc_b_minus_a:
+ gpc_polygon_clip(GPC_DIFF,
+ &m_poly_b,
+ &m_poly_a,
+ &m_result);
+ break;
+ }
+ start_extracting();
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class VSA, class VSB>
+ unsigned conv_gpc<VSA, VSB>::vertex(double* x, double* y)
+ {
+ if(m_status == status_move_to)
+ {
+ if(next_contour())
+ {
+ if(next_vertex(x, y))
+ {
+ m_status = status_line_to;
+ return path_cmd_move_to;
+ }
+ m_status = status_stop;
+ return path_cmd_end_poly | path_flags_close;
+ }
+ }
+ else
+ {
+ if(next_vertex(x, y))
+ {
+ return path_cmd_line_to;
+ }
+ else
+ {
+ m_status = status_move_to;
+ }
+ return path_cmd_end_poly | path_flags_close;
+ }
+ return path_cmd_stop;
+ }
+
+
+}
+
+
+#endif
diff --git a/agg/inc/agg_conv_marker.h b/agg/inc/agg_conv_marker.h
new file mode 100755
index 000000000000..1ae7fc92307b
--- /dev/null
+++ b/agg/inc/agg_conv_marker.h
@@ -0,0 +1,154 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// conv_marker
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_CONV_MARKER_INCLUDED
+#define AGG_CONV_MARKER_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_trans_affine.h"
+#include "agg_vertex_iterator.h"
+
+namespace agg
+{
+ //-------------------------------------------------------------conv_marker
+ template<class MarkerLocator, class MarkerShapes>
+ class conv_marker
+ {
+ public:
+ conv_marker(MarkerLocator& ml, MarkerShapes& ms);
+
+ trans_affine& transform() { return m_transform; }
+ const trans_affine& transform() const { return m_transform; }
+
+ void rewind(unsigned id);
+ unsigned vertex(double* x, double* y);
+
+ typedef conv_marker<MarkerLocator, MarkerShapes> source_type;
+ typedef vertex_iterator<source_type> iterator;
+ iterator begin(unsigned id) { return iterator(*this, id); }
+ iterator end() { return iterator(path_cmd_stop); }
+
+ private:
+ conv_marker(const conv_marker<MarkerLocator, MarkerShapes>&);
+ const conv_marker<MarkerLocator, MarkerShapes>&
+ operator = (const conv_marker<MarkerLocator, MarkerShapes>&);
+
+ enum status_e
+ {
+ initial,
+ markers,
+ polygon,
+ stop
+ };
+
+ MarkerLocator* m_marker_locator;
+ MarkerShapes* m_marker_shapes;
+ trans_affine m_transform;
+ trans_affine m_mtx;
+ status_e m_status;
+ unsigned m_marker;
+ unsigned m_num_markers;
+ };
+
+
+ //------------------------------------------------------------------------
+ template<class MarkerLocator, class MarkerShapes>
+ conv_marker<MarkerLocator, MarkerShapes>::conv_marker(MarkerLocator& ml, MarkerShapes& ms) :
+ m_marker_locator(&ml),
+ m_marker_shapes(&ms),
+ m_status(initial),
+ m_marker(0),
+ m_num_markers(1)
+ {
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class MarkerLocator, class MarkerShapes>
+ void conv_marker<MarkerLocator, MarkerShapes>::rewind(unsigned)
+ {
+ m_status = initial;
+ m_marker = 0;
+ m_num_markers = 1;
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class MarkerLocator, class MarkerShapes>
+ unsigned conv_marker<MarkerLocator, MarkerShapes>::vertex(double* x, double* y)
+ {
+ unsigned cmd = path_cmd_move_to;
+ double x1, y1, x2, y2;
+
+ while(!is_stop(cmd))
+ {
+ switch(m_status)
+ {
+ case initial:
+ if(m_num_markers == 0)
+ {
+ cmd = path_cmd_stop;
+ break;
+ }
+ m_marker_locator->rewind(m_marker);
+ ++m_marker;
+ m_num_markers = 0;
+ m_status = markers;
+
+ case markers:
+ if(is_stop(m_marker_locator->vertex(&x1, &y1)))
+ {
+ m_status = initial;
+ break;
+ }
+ if(is_stop(m_marker_locator->vertex(&x2, &y2)))
+ {
+ m_status = initial;
+ break;
+ }
+ ++m_num_markers;
+ m_mtx = m_transform;
+ m_mtx *= trans_affine_rotation(atan2(y2 - y1, x2 - x1));
+ m_mtx *= trans_affine_translation(x1, y1);
+ m_marker_shapes->rewind(m_marker - 1);
+ m_status = polygon;
+
+ case polygon:
+ cmd = m_marker_shapes->vertex(x, y);
+ if(is_stop(cmd))
+ {
+ cmd = path_cmd_move_to;
+ m_status = markers;
+ break;
+ }
+ m_mtx.transform(x, y);
+ return cmd;
+
+ case stop:
+ cmd = path_cmd_stop;
+ break;
+ }
+ }
+ return cmd;
+ }
+
+}
+
+
+#endif
+
diff --git a/agg/inc/agg_conv_marker_adaptor.h b/agg/inc/agg_conv_marker_adaptor.h
new file mode 100755
index 000000000000..282d26eb5afc
--- /dev/null
+++ b/agg/inc/agg_conv_marker_adaptor.h
@@ -0,0 +1,51 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_CONV_MARKER_ADAPTOR_INCLUDED
+#define AGG_CONV_MARKER_ADAPTOR_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_conv_adaptor_vcgen.h"
+#include "agg_vcgen_vertex_sequence.h"
+
+namespace agg
+{
+
+ //=====================================================conv_marker_adaptor
+ template<class VertexSource, class Markers=null_markers>
+ struct conv_marker_adaptor :
+ public conv_adaptor_vcgen<VertexSource, vcgen_vertex_sequence, Markers>
+ {
+ typedef Markers marker_type;
+ typedef conv_adaptor_vcgen<VertexSource, vcgen_vertex_sequence, Markers> base_type;
+
+ conv_marker_adaptor(VertexSource& vs) :
+ conv_adaptor_vcgen<VertexSource, vcgen_vertex_sequence, Markers>(vs)
+ {
+ }
+
+ void shorten(double s) { base_type::generator().shorten(s); }
+ double shorten() const { return base_type::generator().shorten(); }
+
+ private:
+ conv_marker_adaptor(const conv_marker_adaptor<VertexSource, Markers>&);
+ const conv_marker_adaptor<VertexSource, Markers>&
+ operator = (const conv_marker_adaptor<VertexSource, Markers>&);
+ };
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_conv_segmentator.h b/agg/inc/agg_conv_segmentator.h
new file mode 100755
index 000000000000..df81fea9b276
--- /dev/null
+++ b/agg/inc/agg_conv_segmentator.h
@@ -0,0 +1,48 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_CONV_SEGMENTATOR_INCLUDED
+#define AGG_CONV_SEGMENTATOR_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_conv_adaptor_vpgen.h"
+#include "agg_vpgen_segmentator.h"
+
+namespace agg
+{
+
+ //========================================================conv_segmentator
+ template<class VertexSource>
+ struct conv_segmentator : public conv_adaptor_vpgen<VertexSource, vpgen_segmentator>
+ {
+ typedef conv_adaptor_vpgen<VertexSource, vpgen_segmentator> base_type;
+
+ conv_segmentator(VertexSource& vs) :
+ conv_adaptor_vpgen<VertexSource, vpgen_segmentator>(vs) {}
+
+ void approximation_scale(double s) { base_type::vpgen().approximation_scale(s); }
+ double approximation_scale() const { return base_type::vpgen().approximation_scale(); }
+
+ private:
+ conv_segmentator(const conv_segmentator<VertexSource>&);
+ const conv_segmentator<VertexSource>&
+ operator = (const conv_segmentator<VertexSource>&);
+ };
+
+
+}
+
+#endif
+
diff --git a/agg/inc/agg_conv_shorten_path.h b/agg/inc/agg_conv_shorten_path.h
new file mode 100755
index 000000000000..07bc9357d6ca
--- /dev/null
+++ b/agg/inc/agg_conv_shorten_path.h
@@ -0,0 +1,50 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_CONV_SHORTEN_PATH_INCLUDED
+#define AGG_CONV_SHORTEN_PATH_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_conv_adaptor_vcgen.h"
+#include "agg_vcgen_vertex_sequence.h"
+
+namespace agg
+{
+
+ //=======================================================conv_shorten_path
+ template<class VertexSource> class conv_shorten_path :
+ public conv_adaptor_vcgen<VertexSource, vcgen_vertex_sequence>
+ {
+ public:
+ typedef conv_adaptor_vcgen<VertexSource, vcgen_vertex_sequence> base_type;
+
+ conv_shorten_path(VertexSource& vs) :
+ conv_adaptor_vcgen<VertexSource, vcgen_vertex_sequence>(vs)
+ {
+ }
+
+ void shorten(double s) { base_type::generator().shorten(s); }
+ double shorten() const { return base_type::generator().shorten(); }
+
+ private:
+ conv_shorten_path(const conv_shorten_path<VertexSource>&);
+ const conv_shorten_path<VertexSource>&
+ operator = (const conv_shorten_path<VertexSource>&);
+ };
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_conv_smooth_poly1.h b/agg/inc/agg_conv_smooth_poly1.h
new file mode 100755
index 000000000000..f50a48747f9a
--- /dev/null
+++ b/agg/inc/agg_conv_smooth_poly1.h
@@ -0,0 +1,80 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Smooth polygon generator
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_CONV_SMOOTH_POLY1_INCLUDED
+#define AGG_CONV_SMOOTH_POLY1_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_vcgen_smooth_poly1.h"
+#include "agg_conv_adaptor_vcgen.h"
+#include "agg_conv_curve.h"
+
+
+namespace agg
+{
+
+ //-------------------------------------------------------conv_smooth_poly1
+ template<class VertexSource>
+ struct conv_smooth_poly1 :
+ public conv_adaptor_vcgen<VertexSource, vcgen_smooth_poly1>
+ {
+ typedef conv_adaptor_vcgen<VertexSource, vcgen_smooth_poly1> base_type;
+
+ conv_smooth_poly1(VertexSource& vs) :
+ conv_adaptor_vcgen<VertexSource, vcgen_smooth_poly1>(vs)
+ {
+ }
+
+ void smooth_value(double v) { base_type::generator().smooth_value(v); }
+ double smooth_value() const { return base_type::generator().smooth_value(); }
+
+ private:
+ conv_smooth_poly1(const conv_smooth_poly1<VertexSource>&);
+ const conv_smooth_poly1<VertexSource>&
+ operator = (const conv_smooth_poly1<VertexSource>&);
+ };
+
+
+
+ //-------------------------------------------------conv_smooth_poly1_curve
+ template<class VertexSource>
+ struct conv_smooth_poly1_curve :
+ public conv_curve<conv_smooth_poly1<VertexSource> >
+ {
+ conv_smooth_poly1_curve(VertexSource& vs) :
+ conv_curve<conv_smooth_poly1<VertexSource> >(m_smooth),
+ m_smooth(vs)
+ {
+ }
+
+ void smooth_value(double v) { m_smooth.generator().smooth_value(v); }
+ double smooth_value() const { return m_smooth.generator().smooth_value(); }
+
+ private:
+ conv_smooth_poly1_curve(const conv_smooth_poly1_curve<VertexSource>&);
+ const conv_smooth_poly1_curve<VertexSource>&
+ operator = (const conv_smooth_poly1_curve<VertexSource>&);
+
+ conv_smooth_poly1<VertexSource> m_smooth;
+ };
+
+}
+
+
+#endif
+
diff --git a/agg/inc/agg_conv_stroke.h b/agg/inc/agg_conv_stroke.h
new file mode 100755
index 000000000000..cbdce446b7be
--- /dev/null
+++ b/agg/inc/agg_conv_stroke.h
@@ -0,0 +1,73 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// conv_stroke
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_CONV_STROKE_INCLUDED
+#define AGG_CONV_STROKE_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_vcgen_stroke.h"
+#include "agg_conv_adaptor_vcgen.h"
+
+namespace agg
+{
+
+ //-------------------------------------------------------------conv_stroke
+ template<class VertexSource, class Markers=null_markers>
+ struct conv_stroke :
+ public conv_adaptor_vcgen<VertexSource, vcgen_stroke, Markers>
+ {
+ typedef Markers marker_type;
+ typedef conv_adaptor_vcgen<VertexSource, vcgen_stroke, Markers> base_type;
+
+ conv_stroke(VertexSource& vs) :
+ conv_adaptor_vcgen<VertexSource, vcgen_stroke, Markers>(vs)
+ {
+ }
+
+ void line_cap(line_cap_e lc) { base_type::generator().line_cap(lc); }
+ void line_join(line_join_e lj) { base_type::generator().line_join(lj); }
+ void inner_line_join(line_join_e lj) { base_type::generator().inner_line_join(lj); }
+
+ line_cap_e line_cap() const { return base_type::generator().line_cap(); }
+ line_join_e line_join() const { return base_type::generator().line_join(); }
+ line_join_e inner_line_join() const { return base_type::generator().inner_line_join(); }
+
+ void width(double w) { base_type::generator().width(w); }
+ void miter_limit(double ml) { base_type::generator().miter_limit(ml); }
+ void miter_limit_theta(double t) { base_type::generator().miter_limit_theta(t); }
+ void inner_miter_limit(double ml) { base_type::generator().inner_miter_limit(ml); }
+ void approximation_scale(double as) { base_type::generator().approximation_scale(as); }
+
+ double width() const { return base_type::generator().width(); }
+ double miter_limit() const { return base_type::generator().miter_limit(); }
+ double inner_miter_limit() const { return base_type::generator().inner_miter_limit(); }
+ double approximation_scale() const { return base_type::generator().approximation_scale(); }
+
+ void shorten(double s) { base_type::generator().shorten(s); }
+ double shorten() const { return base_type::generator().shorten(); }
+
+ private:
+ conv_stroke(const conv_stroke<VertexSource, Markers>&);
+ const conv_stroke<VertexSource, Markers>&
+ operator = (const conv_stroke<VertexSource, Markers>&);
+
+ };
+
+}
+
+#endif
diff --git a/agg/inc/agg_conv_transform.h b/agg/inc/agg_conv_transform.h
new file mode 100755
index 000000000000..fb2dddcef617
--- /dev/null
+++ b/agg/inc/agg_conv_transform.h
@@ -0,0 +1,75 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// class conv_transform
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_CONV_TRANSFORM_INCLUDED
+#define AGG_CONV_TRANSFORM_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_trans_affine.h"
+#include "agg_vertex_iterator.h"
+
+namespace agg
+{
+
+ //----------------------------------------------------------conv_transform
+ template<class VertexSource, class Transformer=trans_affine> class conv_transform
+ {
+ public:
+ conv_transform(VertexSource& source, const Transformer& tr) :
+ m_source(&source), m_trans(&tr) {}
+
+ void set_source(VertexSource& source) { m_source = &source; }
+
+ void rewind(unsigned id)
+ {
+ m_source->rewind(id);
+ }
+
+ unsigned vertex(double* x, double* y)
+ {
+ unsigned cmd = m_source->vertex(x, y);
+ if(is_vertex(cmd))
+ {
+ m_trans->transform(x, y);
+ }
+ return cmd;
+ }
+
+ void transformer(const Transformer& tr)
+ {
+ m_trans = &tr;
+ }
+
+ typedef conv_transform<VertexSource, Transformer> source_type;
+ typedef vertex_iterator<source_type> iterator;
+ iterator begin(unsigned id) { return iterator(*this, id); }
+ iterator end() { return iterator(path_cmd_stop); }
+
+ private:
+ conv_transform(const conv_transform<VertexSource>&);
+ const conv_transform<VertexSource>&
+ operator = (const conv_transform<VertexSource>&);
+
+ VertexSource* m_source;
+ const Transformer* m_trans;
+ };
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_conv_unclose_polygon.h b/agg/inc/agg_conv_unclose_polygon.h
new file mode 100755
index 000000000000..a6ba30a1119e
--- /dev/null
+++ b/agg/inc/agg_conv_unclose_polygon.h
@@ -0,0 +1,59 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_CONV_UNCLOSE_POLYGON_INCLUDED
+#define AGG_CONV_UNCLOSE_POLYGON_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_vertex_iterator.h"
+
+namespace agg
+{
+ //====================================================conv_unclose_polygon
+ template<class VertexSource> class conv_unclose_polygon
+ {
+ public:
+ conv_unclose_polygon(VertexSource& vs) : m_source(&vs) {}
+
+ void set_source(VertexSource& source) { m_source = &source; }
+
+ void rewind(unsigned path_id)
+ {
+ m_source->rewind(path_id);
+ }
+
+ unsigned vertex(double* x, double* y)
+ {
+ unsigned cmd = m_source->vertex(x, y);
+ if(is_end_poly(cmd)) cmd &= ~path_flags_close;
+ return cmd;
+ }
+
+ typedef conv_unclose_polygon<VertexSource> source_type;
+ typedef vertex_iterator<source_type> iterator;
+ iterator begin(unsigned id) { return iterator(*this, id); }
+ iterator end() { return iterator(path_cmd_stop); }
+
+ private:
+ conv_unclose_polygon(const conv_unclose_polygon<VertexSource>&);
+ const conv_unclose_polygon<VertexSource>&
+ operator = (const conv_unclose_polygon<VertexSource>&);
+
+ VertexSource* m_source;
+ };
+
+}
+
+#endif
diff --git a/agg/inc/agg_curves.h b/agg/inc/agg_curves.h
new file mode 100755
index 000000000000..bfb02e91ab96
--- /dev/null
+++ b/agg/inc/agg_curves.h
@@ -0,0 +1,150 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// classes curve3 and curve4
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_CURVES_INCLUDED
+#define AGG_CURVES_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_vertex_iterator.h"
+
+namespace agg
+{
+
+ // See Implemantation agg_curves.cpp
+
+
+ //------------------------------------------------------------------curve3
+ class curve3
+ {
+ public:
+ curve3() :
+ m_num_steps(0), m_step(0), m_scale(1.0) { }
+
+ curve3(double x1, double y1,
+ double x2, double y2,
+ double x3, double y3) :
+ m_num_steps(0), m_step(0), m_scale(1.0)
+ {
+ init(x1, y1, x2, y2, x3, y3);
+ }
+
+ void reset() { m_num_steps = 0; m_step = -1; }
+ void init(double x1, double y1,
+ double x2, double y2,
+ double x3, double y3);
+ void approximation_scale(double s) { m_scale = s; }
+ double approximation_scale() const { return m_scale; }
+
+ void rewind(unsigned id);
+ unsigned vertex(double* x, double* y);
+
+ typedef curve3 source_type;
+ typedef vertex_iterator<source_type> iterator;
+ iterator begin(unsigned id) { return iterator(*this, id); }
+ iterator end() { return iterator(path_cmd_stop); }
+
+ private:
+ int m_num_steps;
+ int m_step;
+ double m_scale;
+ double m_start_x;
+ double m_start_y;
+ double m_end_x;
+ double m_end_y;
+ double m_fx;
+ double m_fy;
+ double m_dfx;
+ double m_dfy;
+ double m_ddfx;
+ double m_ddfy;
+ double m_saved_fx;
+ double m_saved_fy;
+ double m_saved_dfx;
+ double m_saved_dfy;
+ };
+
+
+
+
+
+
+
+ //-----------------------------------------------------------------curve4
+ class curve4
+ {
+ public:
+ curve4() :
+ m_num_steps(0), m_step(0), m_scale(1.0) { }
+
+ curve4(double x1, double y1,
+ double x2, double y2,
+ double x3, double y3,
+ double x4, double y4) :
+ m_num_steps(0), m_step(0), m_scale(1.0)
+ {
+ init(x1, y1, x2, y2, x3, y3, x4, y4);
+ }
+
+ void reset() { m_num_steps = 0; m_step = -1; }
+ void init(double x1, double y1,
+ double x2, double y2,
+ double x3, double y3,
+ double x4, double y4);
+
+ void approximation_scale(double s) { m_scale = s; }
+ double approximation_scale() const { return m_scale; }
+
+ void rewind(unsigned id);
+ unsigned vertex(double* x, double* y);
+
+ typedef curve4 source_type;
+ typedef vertex_iterator<source_type> iterator;
+ iterator begin(unsigned id) { return iterator(*this, id); }
+ iterator end() { return iterator(path_cmd_stop); }
+
+ private:
+ int m_num_steps;
+ int m_step;
+ double m_scale;
+ double m_start_x;
+ double m_start_y;
+ double m_end_x;
+ double m_end_y;
+ double m_fx;
+ double m_fy;
+ double m_dfx;
+ double m_dfy;
+ double m_ddfx;
+ double m_ddfy;
+ double m_dddfx;
+ double m_dddfy;
+ double m_saved_fx;
+ double m_saved_fy;
+ double m_saved_dfx;
+ double m_saved_dfy;
+ double m_saved_ddfx;
+ double m_saved_ddfy;
+ };
+
+
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_dda_line.h b/agg/inc/agg_dda_line.h
new file mode 100755
index 000000000000..6e7335c6dfec
--- /dev/null
+++ b/agg/inc/agg_dda_line.h
@@ -0,0 +1,290 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// classes dda_line_interpolator, dda2_line_interpolator
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_DDA_LINE_INCLUDED
+#define AGG_DDA_LINE_INCLUDED
+
+#include <stdlib.h>
+#include "agg_basics.h"
+
+namespace agg
+{
+
+ //===================================================dda_line_interpolator
+ template<int FractionShift, int YShift=0> class dda_line_interpolator
+ {
+ public:
+ //--------------------------------------------------------------------
+ dda_line_interpolator() {}
+
+ //--------------------------------------------------------------------
+ dda_line_interpolator(int y1, int y2, unsigned count) :
+ m_y(y1),
+ m_inc(((y2 - y1) << FractionShift) / int(count)),
+ m_dy(0)
+ {
+ }
+
+ //--------------------------------------------------------------------
+ void operator ++ ()
+ {
+ m_dy += m_inc;
+ }
+
+ //--------------------------------------------------------------------
+ void operator -- ()
+ {
+ m_dy -= m_inc;
+ }
+
+ //--------------------------------------------------------------------
+ void operator += (unsigned n)
+ {
+ m_dy += m_inc * n;
+ }
+
+ //--------------------------------------------------------------------
+ void operator -= (unsigned n)
+ {
+ m_dy -= m_inc * n;
+ }
+
+
+ //--------------------------------------------------------------------
+ int y() const { return m_y + (m_dy >> (FractionShift-YShift)); }
+ int dy() const { return m_dy; }
+
+
+ private:
+ int m_y;
+ int m_inc;
+ int m_dy;
+ };
+
+
+
+
+
+ //=================================================dda2_line_interpolator
+ class dda2_line_interpolator
+ {
+ public:
+ typedef int save_data_type;
+ enum { save_size = 2 };
+
+ //--------------------------------------------------------------------
+ dda2_line_interpolator() {}
+
+ //-------------------------------------------- Forward-adjusted line
+ dda2_line_interpolator(int y1, int y2, int count) :
+ m_cnt(count <= 0 ? 1 : count),
+ m_lft((y2 - y1) / m_cnt),
+ m_rem((y2 - y1) % m_cnt),
+ m_mod(m_rem),
+ m_y(y1)
+ {
+ if(m_mod <= 0)
+ {
+ m_mod += count;
+ m_rem += count;
+ m_lft--;
+ }
+ m_mod -= count;
+ }
+
+ //-------------------------------------------- Backward-adjusted line
+ dda2_line_interpolator(int y1, int y2, int count, int) :
+ m_cnt(count <= 0 ? 1 : count),
+ m_lft((y2 - y1) / m_cnt),
+ m_rem((y2 - y1) % m_cnt),
+ m_mod(m_rem),
+ m_y(y1)
+ {
+ if(m_mod <= 0)
+ {
+ m_mod += count;
+ m_rem += count;
+ m_lft--;
+ }
+ }
+
+ //-------------------------------------------- Backward-adjusted line
+ dda2_line_interpolator(int _y, int count) :
+ m_cnt(count <= 0 ? 1 : count),
+ m_lft(_y / m_cnt),
+ m_rem(_y % m_cnt),
+ m_mod(m_rem),
+ m_y(0)
+ {
+ if(m_mod <= 0)
+ {
+ m_mod += count;
+ m_rem += count;
+ m_lft--;
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void save(save_data_type* data) const
+ {
+ data[0] = m_mod;
+ data[1] = m_y;
+ }
+
+ //--------------------------------------------------------------------
+ void load(const save_data_type* data)
+ {
+ m_mod = data[0];
+ m_y = data[1];
+ }
+
+ //--------------------------------------------------------------------
+ void operator++()
+ {
+ m_mod += m_rem;
+ m_y += m_lft;
+ if(m_mod > 0)
+ {
+ m_mod -= m_cnt;
+ m_y++;
+ }
+ }
+
+ //--------------------------------------------------------------------
+ void operator--()
+ {
+ if(m_mod <= m_rem)
+ {
+ m_mod += m_cnt;
+ m_y--;
+ }
+ m_mod -= m_rem;
+ m_y -= m_lft;
+ }
+
+ //--------------------------------------------------------------------
+ void adjust_forward()
+ {
+ m_mod -= m_cnt;
+ }
+
+ //--------------------------------------------------------------------
+ void adjust_backward()
+ {
+ m_mod += m_cnt;
+ }
+
+ //--------------------------------------------------------------------
+ int mod() const { return m_mod; }
+ int rem() const { return m_rem; }
+ int lft() const { return m_lft; }
+
+ //--------------------------------------------------------------------
+ int y() const { return m_y; }
+
+ private:
+ int m_cnt;
+ int m_lft;
+ int m_rem;
+ int m_mod;
+ int m_y;
+ };
+
+
+
+
+
+
+
+ //---------------------------------------------line_bresenham_interpolator
+ class line_bresenham_interpolator
+ {
+ public:
+ enum
+ {
+ subpixel_shift = 8,
+ subpixel_size = 1 << subpixel_shift,
+ subpixel_mask = subpixel_size - 1
+ };
+
+ //--------------------------------------------------------------------
+ static int line_lr(int v) { return v >> subpixel_shift; }
+
+ //--------------------------------------------------------------------
+ line_bresenham_interpolator(int _x1, int _y1, int _x2, int _y2) :
+ m_x1_lr(line_lr(_x1)),
+ m_y1_lr(line_lr(_y1)),
+ m_x2_lr(line_lr(_x2)),
+ m_y2_lr(line_lr(_y2)),
+ m_ver(abs(m_x2_lr - m_x1_lr) < abs(m_y2_lr - m_y1_lr)),
+ m_len(m_ver ? abs(m_y2_lr - m_y1_lr) :
+ abs(m_x2_lr - m_x1_lr)),
+ m_inc(m_ver ? ((_y2 > _y1) ? 1 : -1) : ((_x2 > _x1) ? 1 : -1)),
+ m_interpolator(m_ver ? _x1 : _y1,
+ m_ver ? _x2 : _y2,
+ m_len)
+ {
+ }
+
+ //--------------------------------------------------------------------
+ bool is_ver() const { return m_ver; }
+ unsigned len() const { return m_len; }
+ int inc() const { return m_inc; }
+
+ //--------------------------------------------------------------------
+ void hstep()
+ {
+ ++m_interpolator;
+ m_x1_lr += m_inc;
+ }
+
+ //--------------------------------------------------------------------
+ void vstep()
+ {
+ ++m_interpolator;
+ m_y1_lr += m_inc;
+ }
+
+ //--------------------------------------------------------------------
+ int x1() const { return m_x1_lr; }
+ int y1() const { return m_y1_lr; }
+ int x2() const { return line_lr(m_interpolator.y()); }
+ int y2() const { return line_lr(m_interpolator.y()); }
+ int x2_hr() const { return m_interpolator.y(); }
+ int y2_hr() const { return m_interpolator.y(); }
+
+ private:
+ int m_x1_lr;
+ int m_y1_lr;
+ int m_x2_lr;
+ int m_y2_lr;
+ bool m_ver;
+ unsigned m_len;
+ int m_inc;
+ dda2_line_interpolator m_interpolator;
+
+ };
+
+
+}
+
+
+
+#endif
diff --git a/agg/inc/agg_ellipse.h b/agg/inc/agg_ellipse.h
new file mode 100755
index 000000000000..158ecf8b55ed
--- /dev/null
+++ b/agg/inc/agg_ellipse.h
@@ -0,0 +1,98 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// class ellipse
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_ELLIPSE_INCLUDED
+#define AGG_ELLIPSE_INCLUDED
+
+#include "agg_basics.h"
+#include <math.h>
+
+namespace agg
+{
+
+ //----------------------------------------------------------------ellipse
+ class ellipse
+ {
+ public:
+ ellipse() : m_x(0.0), m_y(0.0), m_rx(1.0), m_ry(1.0), m_num(4), m_step(0) {}
+ ellipse(double x, double y, double rx, double ry, unsigned num_steps)
+ : m_x(x), m_y(y), m_rx(rx), m_ry(ry), m_num(num_steps), m_step(0) {}
+
+ void init(double x, double y, double rx, double ry, unsigned num_steps);
+ void approximation_scale(double scale);
+ void rewind(unsigned id);
+ unsigned vertex(double* x, double* y);
+
+ private:
+ double m_x;
+ double m_y;
+ double m_rx;
+ double m_ry;
+ unsigned m_num;
+ unsigned m_step;
+ };
+
+
+ //------------------------------------------------------------------------
+ inline void ellipse::init(double x, double y, double rx, double ry, unsigned num_steps)
+ {
+ m_x = x;
+ m_y = y;
+ m_rx = rx;
+ m_ry = ry;
+ m_num = num_steps;
+ m_step = 0;
+ }
+
+ //------------------------------------------------------------------------
+ inline void ellipse::approximation_scale(double scale)
+ {
+ m_num = unsigned((fabs(m_rx) + fabs(m_ry) + 6.0) * scale);
+ if(m_num < 6) m_num = 6;
+ }
+
+ //------------------------------------------------------------------------
+ inline void ellipse::rewind(unsigned)
+ {
+ m_step = 0;
+ }
+
+ //------------------------------------------------------------------------
+ inline unsigned ellipse::vertex(double* x, double* y)
+ {
+ if(m_step == m_num)
+ {
+ ++m_step;
+ return path_cmd_end_poly | path_flags_close | path_flags_ccw;
+ }
+ if(m_step > m_num) return path_cmd_stop;
+ double angle = double(m_step) / double(m_num) * 2.0 * pi;
+ *x = m_x + cos(angle) * m_rx;
+ *y = m_y + sin(angle) * m_ry;
+ m_step++;
+ return ((m_step == 1) ? path_cmd_move_to : path_cmd_line_to);
+ }
+
+}
+
+
+
+#endif
+
+
diff --git a/agg/inc/agg_ellipse_bresenham.h b/agg/inc/agg_ellipse_bresenham.h
new file mode 100755
index 000000000000..41133a473d9e
--- /dev/null
+++ b/agg/inc/agg_ellipse_bresenham.h
@@ -0,0 +1,113 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Simple Bresenham interpolator for ellipsees
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_ELLIPSE_BRESENHAM_INCLUDED
+#define AGG_ELLIPSE_BRESENHAM_INCLUDED
+
+
+#include "agg_basics.h"
+
+
+namespace agg
+{
+
+ //------------------------------------------ellipse_bresenham_interpolator
+ class ellipse_bresenham_interpolator
+ {
+ public:
+ ellipse_bresenham_interpolator(int rx, int ry) :
+ m_rx2(rx * rx),
+ m_ry2(ry * ry),
+ m_two_rx2(m_rx2 << 1),
+ m_two_ry2(m_ry2 << 1),
+ m_dx(0),
+ m_dy(0),
+ m_inc_x(0),
+ m_inc_y(-ry * m_two_rx2),
+ m_cur_f(0)
+ {}
+
+ int dx() const { return m_dx; }
+ int dy() const { return m_dy; }
+
+ void operator++ ()
+ {
+ int mx, my, mxy, min_m;
+ int fx, fy, fxy;
+
+ mx = fx = m_cur_f + m_inc_x + m_ry2;
+ if(mx < 0) mx = -mx;
+
+ my = fy = m_cur_f + m_inc_y + m_rx2;
+ if(my < 0) my = -my;
+
+ mxy = fxy = m_cur_f + m_inc_x + m_ry2 + m_inc_y + m_rx2;
+ if(mxy < 0) mxy = -mxy;
+
+ min_m = mx;
+ bool flag = true;
+
+ if(min_m > my)
+ {
+ min_m = my;
+ flag = false;
+ }
+
+ m_dx = m_dy = 0;
+
+ if(min_m > mxy)
+ {
+ m_inc_x += m_two_ry2;
+ m_inc_y += m_two_rx2;
+ m_cur_f = fxy;
+ m_dx = 1;
+ m_dy = 1;
+ return;
+ }
+
+ if(flag)
+ {
+ m_inc_x += m_two_ry2;
+ m_cur_f = fx;
+ m_dx = 1;
+ return;
+ }
+
+ m_inc_y += m_two_rx2;
+ m_cur_f = fy;
+ m_dy = 1;
+ }
+
+ private:
+ int m_rx2;
+ int m_ry2;
+ int m_two_rx2;
+ int m_two_ry2;
+ int m_dx;
+ int m_dy;
+ int m_inc_x;
+ int m_inc_y;
+ int m_cur_f;
+
+ };
+
+}
+
+#endif
+
diff --git a/agg/inc/agg_embedded_raster_fonts.h b/agg/inc/agg_embedded_raster_fonts.h
new file mode 100755
index 000000000000..f30fedfebe39
--- /dev/null
+++ b/agg/inc/agg_embedded_raster_fonts.h
@@ -0,0 +1,59 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_EMBEDDED_RASTER_FONTS_INCLUDED
+#define AGG_EMBEDDED_RASTER_FONTS_INCLUDED
+
+#include "agg_basics.h"
+
+namespace agg
+{
+ extern const int8u gse4x6[];
+ extern const int8u gse4x8[];
+ extern const int8u gse5x7[];
+ extern const int8u gse5x9[];
+ extern const int8u gse6x12[];
+ extern const int8u gse6x9[];
+ extern const int8u gse7x11[];
+ extern const int8u gse7x11_bold[];
+ extern const int8u gse7x15[];
+ extern const int8u gse7x15_bold[];
+ extern const int8u gse8x16[];
+ extern const int8u gse8x16_bold[];
+ extern const int8u mcs11_prop[];
+ extern const int8u mcs11_prop_condensed[];
+ extern const int8u mcs12_prop[];
+ extern const int8u mcs13_prop[];
+ extern const int8u mcs5x10_mono[];
+ extern const int8u mcs5x11_mono[];
+ extern const int8u mcs6x10_mono[];
+ extern const int8u mcs6x11_mono[];
+ extern const int8u mcs7x12_mono_high[];
+ extern const int8u mcs7x12_mono_low[];
+ extern const int8u verdana12[];
+ extern const int8u verdana12_bold[];
+ extern const int8u verdana13[];
+ extern const int8u verdana13_bold[];
+ extern const int8u verdana14[];
+ extern const int8u verdana14_bold[];
+ extern const int8u verdana16[];
+ extern const int8u verdana16_bold[];
+ extern const int8u verdana17[];
+ extern const int8u verdana17_bold[];
+ extern const int8u verdana18[];
+ extern const int8u verdana18_bold[];
+}
+
+#endif
diff --git a/agg/inc/agg_font_cache_manager.h b/agg/inc/agg_font_cache_manager.h
new file mode 100755
index 000000000000..55c4d39db75d
--- /dev/null
+++ b/agg/inc/agg_font_cache_manager.h
@@ -0,0 +1,397 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_FONT_CACHE_MANAGER_INCLUDED
+#define AGG_FONT_CACHE_MANAGER_INCLUDED
+
+#include <string.h>
+#include "agg_array.h"
+
+namespace agg
+{
+
+ //---------------------------------------------------------glyph_data_type
+ enum glyph_data_type
+ {
+ glyph_data_invalid = 0,
+ glyph_data_mono = 1,
+ glyph_data_gray8 = 2,
+ glyph_data_outline = 3
+ };
+
+
+ //-------------------------------------------------------------glyph_cache
+ struct glyph_cache
+ {
+ unsigned glyph_index;
+ int8u* data;
+ unsigned data_size;
+ glyph_data_type data_type;
+ rect bounds;
+ double advance_x;
+ double advance_y;
+ };
+
+
+ //--------------------------------------------------------------font_cache
+ class font_cache
+ {
+ public:
+ enum { block_size = 16384-16 };
+
+ //--------------------------------------------------------------------
+ font_cache(const char* font_signature) :
+ m_allocator(block_size),
+ m_font_signature(0)
+ {
+ m_font_signature = (char*)m_allocator.allocate(strlen(font_signature) + 1);
+ strcpy(m_font_signature, font_signature);
+ memset(m_glyphs, 0, sizeof(m_glyphs));
+ }
+
+ //--------------------------------------------------------------------
+ bool font_is(const char* font_signature) const
+ {
+ return strcmp(font_signature, m_font_signature) == 0;
+ }
+
+ //--------------------------------------------------------------------
+ const glyph_cache* find_glyph(unsigned glyph_code) const
+ {
+ unsigned msb = (glyph_code >> 8) & 0xFF;
+ if(m_glyphs[msb])
+ {
+ return m_glyphs[msb][glyph_code & 0xFF];
+ }
+ return 0;
+ }
+
+ //--------------------------------------------------------------------
+ glyph_cache* cache_glyph(unsigned glyph_code,
+ unsigned glyph_index,
+ unsigned data_size,
+ glyph_data_type data_type,
+ const rect& bounds,
+ double advance_x,
+ double advance_y)
+ {
+ unsigned msb = (glyph_code >> 8) & 0xFF;
+ if(m_glyphs[msb] == 0)
+ {
+ m_glyphs[msb] =
+ (glyph_cache**)m_allocator.allocate(sizeof(glyph_cache*) * 256,
+ sizeof(glyph_cache*));
+ memset(m_glyphs[msb], 0, sizeof(glyph_cache*) * 256);
+ }
+
+ unsigned lsb = glyph_code & 0xFF;
+ if(m_glyphs[msb][lsb]) return 0; // Already exists, do not overwrite
+
+ glyph_cache* glyph =
+ (glyph_cache*)m_allocator.allocate(sizeof(glyph_cache),
+ sizeof(double));
+
+ glyph->glyph_index = glyph_index;
+ glyph->data = m_allocator.allocate(data_size);
+ glyph->data_size = data_size;
+ glyph->data_type = data_type;
+ glyph->bounds = bounds;
+ glyph->advance_x = advance_x;
+ glyph->advance_y = advance_y;
+ return m_glyphs[msb][lsb] = glyph;
+ }
+
+ private:
+ pod_allocator m_allocator;
+ glyph_cache** m_glyphs[256];
+ char* m_font_signature;
+ };
+
+
+
+
+
+
+
+ //---------------------------------------------------------font_cache_pool
+ class font_cache_pool
+ {
+ public:
+ //--------------------------------------------------------------------
+ ~font_cache_pool()
+ {
+ unsigned i;
+ for(i = 0; i < m_num_fonts; ++i)
+ {
+ delete m_fonts[i];
+ }
+ delete [] m_fonts;
+ }
+
+ //--------------------------------------------------------------------
+ font_cache_pool(unsigned max_fonts=32) :
+ m_fonts(new font_cache* [max_fonts]),
+ m_max_fonts(max_fonts),
+ m_num_fonts(0),
+ m_cur_font(0)
+ {}
+
+
+ //--------------------------------------------------------------------
+ void font(const char* font_signature, bool reset_cache = false)
+ {
+ int idx = find_font(font_signature);
+ if(idx >= 0)
+ {
+ if(reset_cache)
+ {
+ delete m_fonts[idx];
+ m_fonts[idx] = new font_cache(font_signature);
+ }
+ m_cur_font = m_fonts[idx];
+ }
+ else
+ {
+ if(m_num_fonts >= m_max_fonts)
+ {
+ delete m_fonts[0];
+ memcpy(m_fonts,
+ m_fonts + 1,
+ (m_max_fonts - 1) * sizeof(font_cache*));
+ m_num_fonts = m_max_fonts - 1;
+ }
+ m_fonts[m_num_fonts] = new font_cache(font_signature);
+ m_cur_font = m_fonts[m_num_fonts];
+ ++m_num_fonts;
+ }
+ }
+
+ //--------------------------------------------------------------------
+ const font_cache* font() const
+ {
+ return m_cur_font;
+ }
+
+ //--------------------------------------------------------------------
+ const glyph_cache* find_glyph(unsigned glyph_code) const
+ {
+ if(m_cur_font) return m_cur_font->find_glyph(glyph_code);
+ return 0;
+ }
+
+ //--------------------------------------------------------------------
+ glyph_cache* cache_glyph(unsigned glyph_code,
+ unsigned glyph_index,
+ unsigned data_size,
+ glyph_data_type data_type,
+ const rect& bounds,
+ double advance_x,
+ double advance_y)
+ {
+ if(m_cur_font)
+ {
+ return m_cur_font->cache_glyph(glyph_code,
+ glyph_index,
+ data_size,
+ data_type,
+ bounds,
+ advance_x,
+ advance_y);
+ }
+ return 0;
+ }
+
+
+ //--------------------------------------------------------------------
+ int find_font(const char* font_signature)
+ {
+ unsigned i;
+ for(i = 0; i < m_num_fonts; i++)
+ {
+ if(m_fonts[i]->font_is(font_signature)) return int(i);
+ }
+ return -1;
+ }
+
+ private:
+ font_cache** m_fonts;
+ unsigned m_max_fonts;
+ unsigned m_num_fonts;
+ font_cache* m_cur_font;
+ };
+
+
+
+
+ //------------------------------------------------------------------------
+ enum glyph_rendering
+ {
+ glyph_ren_native_mono,
+ glyph_ren_native_gray8,
+ glyph_ren_outline,
+ glyph_ren_agg_mono,
+ glyph_ren_agg_gray8
+ };
+
+
+
+
+ //------------------------------------------------------font_cache_manager
+ template<class FontEngine> class font_cache_manager
+ {
+ public:
+ typedef FontEngine font_engine_type;
+ typedef font_cache_manager<FontEngine> self_type;
+ typedef typename font_engine_type::path_adaptor_type path_adaptor_type;
+ typedef typename font_engine_type::gray8_adaptor_type gray8_adaptor_type;
+ typedef typename gray8_adaptor_type::embedded_scanline gray8_scanline_type;
+ typedef typename font_engine_type::mono_adaptor_type mono_adaptor_type;
+ typedef typename mono_adaptor_type::embedded_scanline mono_scanline_type;
+
+ //--------------------------------------------------------------------
+ font_cache_manager(font_engine_type& engine, unsigned max_fonts=32) :
+ m_fonts(max_fonts),
+ m_engine(engine),
+ m_change_stamp(-1),
+ m_prev_glyph(0),
+ m_last_glyph(0)
+ {}
+
+ //--------------------------------------------------------------------
+ const glyph_cache* glyph(unsigned glyph_code)
+ {
+ synchronize();
+ const glyph_cache* gl = m_fonts.find_glyph(glyph_code);
+ if(gl)
+ {
+ m_prev_glyph = m_last_glyph;
+ return m_last_glyph = gl;
+ }
+ else
+ {
+ if(m_engine.prepare_glyph(glyph_code))
+ {
+ m_prev_glyph = m_last_glyph;
+ m_last_glyph = m_fonts.cache_glyph(glyph_code,
+ m_engine.glyph_index(),
+ m_engine.data_size(),
+ m_engine.data_type(),
+ m_engine.bounds(),
+ m_engine.advance_x(),
+ m_engine.advance_y());
+ m_engine.write_glyph_to(m_last_glyph->data);
+ return m_last_glyph;
+ }
+ }
+ return 0;
+ }
+
+ //--------------------------------------------------------------------
+ void init_embedded_adaptors(const glyph_cache* gl,
+ double x, double y,
+ double scale=1.0)
+ {
+ if(gl)
+ {
+ switch(gl->data_type)
+ {
+ default: return;
+ case glyph_data_mono:
+ m_mono_adaptor.init(gl->data, gl->data_size, x, y);
+ break;
+
+ case glyph_data_gray8:
+ m_gray8_adaptor.init(gl->data, gl->data_size, x, y);
+ break;
+
+ case glyph_data_outline:
+ m_path_adaptor.init(gl->data, gl->data_size, x, y, scale);
+ break;
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ path_adaptor_type& path_adaptor() { return m_path_adaptor; }
+ gray8_adaptor_type& gray8_adaptor() { return m_gray8_adaptor; }
+ gray8_scanline_type& gray8_scanline() { return m_gray8_scanline; }
+ mono_adaptor_type& mono_adaptor() { return m_mono_adaptor; }
+ mono_scanline_type& mono_scanline() { return m_mono_scanline; }
+
+ //--------------------------------------------------------------------
+ const glyph_cache* perv_glyph() const { return m_prev_glyph; }
+ const glyph_cache* last_glyph() const { return m_last_glyph; }
+
+ //--------------------------------------------------------------------
+ bool add_kerning(double* x, double* y)
+ {
+ if(m_prev_glyph && m_last_glyph)
+ {
+ return m_engine.add_kerning(m_prev_glyph->glyph_index,
+ m_last_glyph->glyph_index,
+ x, y);
+ }
+ return false;
+ }
+
+ //--------------------------------------------------------------------
+ void precache(unsigned from, unsigned to)
+ {
+ for(; from <= to; ++from) glyph(from);
+ }
+
+ //--------------------------------------------------------------------
+ void reset_cache()
+ {
+ m_fonts.font(m_engine.font_signature(), true);
+ m_change_stamp = m_engine.change_stamp();
+ m_prev_glyph = m_last_glyph = 0;
+ }
+
+ private:
+ //--------------------------------------------------------------------
+ font_cache_manager(const self_type&);
+ const self_type& operator = (const self_type&);
+
+ //--------------------------------------------------------------------
+ void synchronize()
+ {
+ if(m_change_stamp != m_engine.change_stamp())
+ {
+ m_fonts.font(m_engine.font_signature());
+ m_change_stamp = m_engine.change_stamp();
+ m_prev_glyph = m_last_glyph = 0;
+ }
+ }
+
+ font_cache_pool m_fonts;
+ font_engine_type& m_engine;
+ int m_change_stamp;
+ double m_dx;
+ double m_dy;
+ const glyph_cache* m_prev_glyph;
+ const glyph_cache* m_last_glyph;
+ path_adaptor_type m_path_adaptor;
+ gray8_adaptor_type m_gray8_adaptor;
+ gray8_scanline_type m_gray8_scanline;
+ mono_adaptor_type m_mono_adaptor;
+ mono_scanline_type m_mono_scanline;
+ };
+
+}
+
+#endif
+
diff --git a/agg/inc/agg_gamma_functions.h b/agg/inc/agg_gamma_functions.h
new file mode 100755
index 000000000000..09a8305faedb
--- /dev/null
+++ b/agg/inc/agg_gamma_functions.h
@@ -0,0 +1,123 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_GAMMA_FUNCTIONS_INCLUDED
+#define AGG_GAMMA_FUNCTIONS_INCLUDED
+
+#include <math.h>
+#include "agg_basics.h"
+
+namespace agg
+{
+ //===============================================================gamma_none
+ struct gamma_none
+ {
+ double operator()(double x) const { return x; }
+ };
+
+
+ //==============================================================gamma_power
+ class gamma_power
+ {
+ public:
+ gamma_power() : m_gamma(1.0) {}
+ gamma_power(double g) : m_gamma(g) {}
+
+ void gamma(double g) { m_gamma = g; }
+ double gamma() const { return m_gamma; }
+
+ double operator() (double x) const
+ {
+ return pow(x, m_gamma);
+ }
+
+ private:
+ double m_gamma;
+ };
+
+
+ //==========================================================gamma_threshold
+ class gamma_threshold
+ {
+ public:
+ gamma_threshold() : m_threshold(0.5) {}
+ gamma_threshold(double t) : m_threshold(t) {}
+
+ void threshold(double t) { m_threshold = t; }
+ double threshold() const { return m_threshold; }
+
+ double operator() (double x) const
+ {
+ return (x < m_threshold) ? 0.0 : 1.0;
+ }
+
+ private:
+ double m_threshold;
+ };
+
+
+ //============================================================gamma_linear
+ class gamma_linear
+ {
+ public:
+ gamma_linear() : m_start(0.0), m_end(1.0) {}
+ gamma_linear(double s, double e) : m_start(s), m_end(e) {}
+
+ void set(double s, double e) { m_start = s; m_end = e; }
+ void start(double s) { m_start = s; }
+ void end(double e) { m_end = e; }
+ double start() const { return m_start; }
+ double end() const { return m_end; }
+
+ double operator() (double x) const
+ {
+ if(x < m_start) return 0.0;
+ if(x > m_end) return 1.0;
+ return (x - m_start) / (m_end - m_start);
+ }
+
+ private:
+ double m_start;
+ double m_end;
+ };
+
+
+ //==========================================================gamma_multiply
+ class gamma_multiply
+ {
+ public:
+ gamma_multiply() : m_mul(1.0) {}
+ gamma_multiply(double v) : m_mul(v) {}
+
+ void value(double v) { m_mul = v; }
+ double value() const { return m_mul; }
+
+ double operator() (double x) const
+ {
+ double y = x * m_mul;
+ if(y > 1.0) y = 1.0;
+ return y;
+ }
+
+ private:
+ double m_mul;
+ };
+
+}
+
+#endif
+
+
+
diff --git a/agg/inc/agg_gamma_lut.h b/agg/inc/agg_gamma_lut.h
new file mode 100755
index 000000000000..30e3b3c89d04
--- /dev/null
+++ b/agg/inc/agg_gamma_lut.h
@@ -0,0 +1,114 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_GAMMA_LUT_INCLUDED
+#define AGG_GAMMA_LUT_INCLUDED
+
+#include <math.h>
+#include "agg_basics.h"
+
+namespace agg
+{
+ template<class LoResT=int8u,
+ class HiResT=int8u,
+ unsigned GammaShift=8,
+ unsigned HiResShift=8> class gamma_lut
+ {
+ public:
+ enum
+ {
+ gamma_shift = GammaShift,
+ gamma_size = 1 << gamma_shift,
+ gamma_mask = gamma_size - 1
+ };
+
+ enum
+ {
+ hi_res_shift = HiResShift,
+ hi_res_size = 1 << hi_res_shift,
+ hi_res_mask = hi_res_size - 1
+ };
+
+ ~gamma_lut()
+ {
+ delete [] m_inv_gamma;
+ delete [] m_dir_gamma;
+ }
+
+ gamma_lut() :
+ m_gamma(1.0),
+ m_dir_gamma(new HiResT[gamma_size]),
+ m_inv_gamma(new LoResT[hi_res_size])
+ {
+ unsigned i;
+ for(i = 0; i < gamma_size; i++)
+ {
+ m_dir_gamma[i] = HiResT(i << (hi_res_shift - gamma_shift));
+ }
+
+ for(i = 0; i < hi_res_size; i++)
+ {
+ m_inv_gamma[i] = LoResT(i >> (hi_res_shift - gamma_shift));
+ }
+ }
+
+ gamma_lut(double g) :
+ m_gamma(1.0),
+ m_dir_gamma(new HiResT[gamma_size]),
+ m_inv_gamma(new LoResT[hi_res_size])
+ {
+ gamma(g);
+ }
+
+ void gamma(double g)
+ {
+ m_gamma = g;
+
+ unsigned i;
+ for(i = 0; i < gamma_size; i++)
+ {
+ m_dir_gamma[i] = (HiResT)(pow(double(i) / double(gamma_mask), m_gamma) * double(hi_res_mask) + 0.5);
+ }
+
+ double inv_g = 1.0 / g;
+ for(i = 0; i < hi_res_size; i++)
+ {
+ m_inv_gamma[i] = (LoResT)(pow(double(i) / double(hi_res_mask), inv_g) * double(gamma_mask) + 0.5);
+ }
+ }
+
+ double gamma() const
+ {
+ return m_gamma;
+ }
+
+ HiResT dir(LoResT v) const
+ {
+ return m_dir_gamma[unsigned(v)];
+ }
+
+ LoResT inv(HiResT v) const
+ {
+ return m_inv_gamma[unsigned(v)];
+ }
+
+ private:
+ double m_gamma;
+ HiResT* m_dir_gamma;
+ LoResT* m_inv_gamma;
+ };
+}
+
+#endif
diff --git a/agg/inc/agg_glyph_raster_bin.h b/agg/inc/agg_glyph_raster_bin.h
new file mode 100755
index 000000000000..851d9f94bd72
--- /dev/null
+++ b/agg/inc/agg_glyph_raster_bin.h
@@ -0,0 +1,155 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_GLYPH_RASTER_BIN_INCLUDED
+#define AGG_GLYPH_RASTER_BIN_INCLUDED
+
+#include <string.h>
+#include "agg_basics.h"
+
+namespace agg
+{
+
+ //========================================================glyph_raster_bin
+ template<class ColorT> class glyph_raster_bin
+ {
+ public:
+ typedef ColorT color_type;
+
+ //--------------------------------------------------------------------
+ struct glyph_rect
+ {
+ int x1,y1,x2,y2;
+ double dx, dy;
+ };
+
+ //--------------------------------------------------------------------
+ glyph_raster_bin(const int8u* font) :
+ m_font(font),
+ m_big_endian(false)
+ {
+ int t = 1;
+ if(*(char*)&t == 0) m_big_endian = true;
+ memset(m_span, 0, sizeof(m_span));
+ }
+
+ //--------------------------------------------------------------------
+ const int8u* font() const { return m_font; }
+ void font(const int8u* f) { m_font = f; }
+
+ //--------------------------------------------------------------------
+ double height() const { return m_font[0]; }
+ double base_line() const { return m_font[1]; }
+
+ //--------------------------------------------------------------------
+ template<class CharT>
+ double width(const CharT* str) const
+ {
+ unsigned start_char = m_font[2];
+ unsigned num_chars = m_font[3];
+
+ unsigned w = 0;
+ while(*str)
+ {
+ unsigned glyph = *str;
+ const int8u* bits = m_font + 4 + num_chars * 2 +
+ value(m_font + 4 + (glyph - start_char) * 2);
+ w += *bits;
+ ++str;
+ }
+ return w;
+ }
+
+ //--------------------------------------------------------------------
+ void prepare(glyph_rect* r, double x, double y, unsigned glyph, bool flip)
+ {
+ unsigned start_char = m_font[2];
+ unsigned num_chars = m_font[3];
+
+ m_bits = m_font + 4 + num_chars * 2 +
+ value(m_font + 4 + (glyph - start_char) * 2);
+
+ m_glyph_width = *m_bits++;
+ m_glyph_byte_width = (m_glyph_width + 7) >> 3;
+
+ r->x1 = int(x);
+ r->x2 = r->x1 + m_glyph_width - 1;
+ if(flip)
+ {
+ r->y1 = int(y) - m_font[0] + m_font[1];
+ r->y2 = r->y1 + m_font[0] - 1;
+ }
+ else
+ {
+ r->y1 = int(y) - m_font[1] + 1;
+ r->y2 = r->y1 + m_font[0] - 1;
+ }
+ r->dx = m_glyph_width;
+ r->dy = 0;
+ }
+
+ //--------------------------------------------------------------------
+ const cover_type* span(unsigned i)
+ {
+ i = m_font[0] - i - 1;
+ const int8u* bits = m_bits + i * m_glyph_byte_width;
+ unsigned j;
+ unsigned val = *bits;
+ unsigned nb = 0;
+ for(j = 0; j < m_glyph_width; ++j)
+ {
+ m_span[j] = (cover_type)((val & 0x80) ? cover_full : cover_none);
+ val <<= 1;
+ if(++nb >= 8)
+ {
+ val = *++bits;
+ nb = 0;
+ }
+ }
+ return m_span;
+ }
+
+ private:
+ //--------------------------------------------------------------------
+ int16u value(const int8u* p) const
+ {
+ int16u v;
+ if(m_big_endian)
+ {
+ *(int8u*)&v = p[1];
+ *((int8u*)&v + 1) = p[0];
+ }
+ else
+ {
+ *(int8u*)&v = p[0];
+ *((int8u*)&v + 1) = p[1];
+ }
+ return v;
+ }
+
+
+ //--------------------------------------------------------------------
+ const int8u* m_font;
+ bool m_big_endian;
+ cover_type m_span[32];
+ const int8u* m_bits;
+ unsigned m_glyph_width;
+ unsigned m_glyph_byte_width;
+ };
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_gsv_text.h b/agg/inc/agg_gsv_text.h
new file mode 100755
index 000000000000..5d8e1cf63bab
--- /dev/null
+++ b/agg/inc/agg_gsv_text.h
@@ -0,0 +1,154 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Class gsv_text
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_GSV_TEXT_INCLUDED
+#define AGG_GSV_TEXT_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_conv_stroke.h"
+#include "agg_conv_transform.h"
+
+namespace agg
+{
+
+
+ //---------------------------------------------------------------gsv_text
+ //
+ // See Implementation agg_gsv_text.cpp
+ //
+ class gsv_text
+ {
+ enum status
+ {
+ initial,
+ next_char,
+ start_glyph,
+ glyph
+ };
+
+ public:
+ ~gsv_text();
+ gsv_text();
+
+ void font(const void* font);
+ void flip(bool flip_y) { m_flip = flip_y; }
+ void load_font(const char* file);
+ void size(double height, double width=0.0);
+ void space(double space);
+ void line_space(double line_space);
+ void start_point(double x, double y);
+ void text(const char* text);
+
+ void rewind(unsigned id);
+ unsigned vertex(double* x, double* y);
+
+ private:
+ // not supposed to be copied
+ gsv_text(const gsv_text&);
+ const gsv_text& operator = (const gsv_text&);
+
+ int16u value(const int8u* p) const
+ {
+ int16u v;
+ if(m_big_endian)
+ {
+ *(int8u*)&v = p[1];
+ *((int8u*)&v + 1) = p[0];
+ }
+ else
+ {
+ *(int8u*)&v = p[0];
+ *((int8u*)&v + 1) = p[1];
+ }
+ return v;
+ }
+
+ private:
+ double m_x;
+ double m_y;
+ double m_start_x;
+ double m_width;
+ double m_height;
+ double m_space;
+ double m_line_space;
+ char m_chr[2];
+ char* m_text;
+ char* m_text_buf;
+ unsigned m_buf_size;
+ char* m_cur_chr;
+ const void* m_font;
+ char* m_loaded_font;
+ status m_status;
+ bool m_big_endian;
+ bool m_flip;
+
+ int8u* m_indices;
+ int8* m_glyphs;
+ int8* m_bglyph;
+ int8* m_eglyph;
+ double m_w;
+ double m_h;
+ };
+
+
+
+
+ //--------------------------------------------------------gsv_text_outline
+ template<class Transformer = trans_affine> class gsv_text_outline
+ {
+ public:
+ gsv_text_outline(gsv_text& text, const Transformer& trans) :
+ m_polyline(text),
+ m_trans(m_polyline, trans)
+ {
+ }
+
+ void width(double w)
+ {
+ m_polyline.width(w);
+ }
+
+ void transformer(const Transformer* trans)
+ {
+ m_trans->transformer(trans);
+ }
+
+ void rewind(unsigned id)
+ {
+ m_trans.rewind(id);
+ m_polyline.line_join(round_join);
+ m_polyline.line_cap(round_cap);
+ }
+
+ unsigned vertex(double* x, double* y)
+ {
+ return m_trans.vertex(x, y);
+ }
+
+ private:
+ conv_stroke<gsv_text> m_polyline;
+ conv_transform<conv_stroke<gsv_text>, Transformer> m_trans;
+ };
+
+
+
+}
+
+
+#endif
diff --git a/agg/inc/agg_image_filters.h b/agg/inc/agg_image_filters.h
new file mode 100755
index 000000000000..a2037fe0eff1
--- /dev/null
+++ b/agg/inc/agg_image_filters.h
@@ -0,0 +1,449 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Image transformation filters,
+// Filtering classes (image_filter_lut, image_filter),
+// Basic filter shape classes
+//----------------------------------------------------------------------------
+#ifndef AGG_IMAGE_FILTERS_INCLUDED
+#define AGG_IMAGE_FILTERS_INCLUDED
+
+#include <math.h>
+#include "agg_basics.h"
+
+namespace agg
+{
+
+ // See Implementation agg_image_filters.cpp
+
+ enum
+ {
+ image_filter_shift = 14, //----image_filter_shift
+ image_filter_size = 1 << image_filter_shift, //----image_filter_size
+ image_filter_mask = image_filter_size - 1, //----image_filter_mask
+
+ image_subpixel_shift = 8, //----image_subpixel_shift
+ image_subpixel_size = 1 << image_subpixel_shift, //----image_subpixel_size
+ image_subpixel_mask = image_subpixel_size - 1 //----image_subpixel_mask
+ };
+
+
+ //-----------------------------------------------------image_filter_lut
+ class image_filter_lut
+ {
+ public:
+ ~image_filter_lut();
+ image_filter_lut();
+
+ template<class FilterF> void calculate(const FilterF& filter,
+ bool normalization=true)
+ {
+ double r = filter.radius();
+ realloc(r);
+ unsigned i;
+ unsigned pivot = diameter() << (image_subpixel_shift - 1);
+ for(i = 0; i < pivot; i++)
+ {
+ double x = double(i) / double(image_subpixel_size);
+ double y = filter.calc_weight(x);
+ m_weight_array[pivot + i] =
+ m_weight_array[pivot - i] = int16(y * image_filter_size + 0.5);
+ }
+ unsigned end = (diameter() << image_subpixel_shift) - 1;
+ m_weight_array[0] = m_weight_array[end];
+ if(normalization)
+ {
+ normalize();
+ }
+ }
+
+ template<class FilterF> image_filter_lut(const FilterF& filter,
+ bool normalization=true) :
+ m_weight_array(0),
+ m_max_size(0)
+ {
+ calculate(filter, normalization);
+ }
+
+ double radius() const { return m_radius; }
+ unsigned diameter() const { return m_diameter; }
+ int start() const { return m_start; }
+ const int16* weight_array() const { return m_weight_array; }
+ void normalize();
+
+ private:
+ void realloc(double radius);
+ image_filter_lut(const image_filter_lut&);
+ const image_filter_lut& operator = (const image_filter_lut&);
+
+ double m_radius;
+ unsigned m_diameter;
+ int m_start;
+ int16* m_weight_array;
+ unsigned m_max_size;
+ };
+
+
+
+ //--------------------------------------------------------image_filter
+ template<class FilterF> class image_filter : public image_filter_lut
+ {
+ public:
+ image_filter()
+ {
+ calculate(m_filter_function);
+ }
+ private:
+ FilterF m_filter_function;
+ };
+
+
+ //-----------------------------------------------image_filter_bilinear
+ struct image_filter_bilinear
+ {
+ static double radius() { return 1.0; }
+ static double calc_weight(double x)
+ {
+ return 1.0 - x;
+ }
+ };
+
+
+ //-----------------------------------------------image_filter_hanning
+ struct image_filter_hanning
+ {
+ static double radius() { return 1.0; }
+ static double calc_weight(double x)
+ {
+ return 0.5 + 0.5 * cos(pi * x);
+ }
+ };
+
+
+ //-----------------------------------------------image_filter_hamming
+ struct image_filter_hamming
+ {
+ static double radius() { return 1.0; }
+ static double calc_weight(double x)
+ {
+ return 0.54 + 0.46 * cos(pi * x);
+ }
+ };
+
+ //-----------------------------------------------image_filter_hermite
+ struct image_filter_hermite
+ {
+ static double radius() { return 1.0; }
+ static double calc_weight(double x)
+ {
+ return (2.0 * x - 3.0) * x * x + 1.0;
+ }
+ };
+
+ //------------------------------------------------image_filter_quadric
+ struct image_filter_quadric
+ {
+ static double radius() { return 1.5; }
+ static double calc_weight(double x)
+ {
+ double t;
+ if(x < 0.5) return 0.75 - x * x;
+ if(x < 1.5) {t = x - 1.5; return 0.5 * t * t;}
+ return 0.0;
+ }
+ };
+
+ //------------------------------------------------image_filter_bicubic
+ class image_filter_bicubic
+ {
+ static double pow3(double x)
+ {
+ return (x <= 0.0) ? 0.0 : x * x * x;
+ }
+
+ public:
+ static double radius() { return 2.0; }
+ static double calc_weight(double x)
+ {
+ return
+ (1.0/6.0) *
+ (pow3(x + 2) - 4 * pow3(x + 1) + 6 * pow3(x) - 4 * pow3(x - 1));
+ }
+ };
+
+ //-------------------------------------------------image_filter_kaiser
+ class image_filter_kaiser
+ {
+ double a;
+ double i0a;
+ double epsilon;
+
+ public:
+ image_filter_kaiser(double b = 6.33) :
+ a(b), epsilon(1e-12)
+ {
+ i0a = 1.0 / bessel_i0(b);
+ }
+
+ static double radius() { return 1.0; }
+ double calc_weight(double x) const
+ {
+ return bessel_i0(a * sqrt(1. - x * x)) * i0a;
+ }
+
+ private:
+ double bessel_i0(double x) const
+ {
+ int i;
+ double sum, y, t;
+
+ sum = 1.;
+ y = x * x / 4.;
+ t = y;
+
+ for(i = 2; t > epsilon; i++)
+ {
+ sum += t;
+ t *= (double)y / (i * i);
+ }
+ return sum;
+ }
+ };
+
+ //----------------------------------------------image_filter_catrom
+ struct image_filter_catrom
+ {
+ static double radius() { return 2.0; }
+ static double calc_weight(double x)
+ {
+ if(x < 1.0) return 0.5 * (2.0 + x * x * (-5.0 + x * 3.0));
+ if(x < 2.0) return 0.5 * (4.0 + x * (-8.0 + x * (5.0 - x)));
+ return 0.;
+ }
+ };
+
+ //---------------------------------------------image_filter_mitchell
+ class image_filter_mitchell
+ {
+ double p0, p2, p3;
+ double q0, q1, q2, q3;
+
+ public:
+ image_filter_mitchell(double b = 1.0/3.0, double c = 1.0/3.0) :
+ p0((6.0 - 2.0 * b) / 6.0),
+ p2((-18.0 + 12.0 * b + 6.0 * c) / 6.0),
+ p3((12.0 - 9.0 * b - 6.0 * c) / 6.0),
+ q0((8.0 * b + 24.0 * c) / 6.0),
+ q1((-12.0 * b - 48.0 * c) / 6.0),
+ q2((6.0 * b + 30.0 * c) / 6.0),
+ q3((-b - 6.0 * c) / 6.0)
+ {}
+
+ static double radius() { return 2.0; }
+ double calc_weight(double x) const
+ {
+ if(x < 1.0) return p0 + x * x * (p2 + x * p3);
+ if(x < 2.0) return q0 + x * (q1 + x * (q2 + x * q3));
+ return 0.0;
+ }
+ };
+
+
+ //----------------------------------------------image_filter_spline16
+ struct image_filter_spline16
+ {
+ static double radius() { return 2.0; }
+ static double calc_weight(double x)
+ {
+ if(x < 1.0)
+ {
+ return ((x - 9.0/5.0 ) * x - 1.0/5.0 ) * x + 1.0;
+ }
+ return ((-1.0/3.0 * (x-1) + 4.0/5.0) * (x-1) - 7.0/15.0 ) * (x-1);
+ }
+ };
+
+
+ //---------------------------------------------image_filter_spline36
+ struct image_filter_spline36
+ {
+ static double radius() { return 3.0; }
+ static double calc_weight(double x)
+ {
+ if(x < 1.0)
+ {
+ return ((13.0/11.0 * x - 453.0/209.0) * x - 3.0/209.0) * x + 1.0;
+ }
+ if(x < 2.0)
+ {
+ return ((-6.0/11.0 * (x-1) + 270.0/209.0) * (x-1) - 156.0/ 209.0) * (x-1);
+ }
+ return ((1.0/11.0 * (x-2) - 45.0/209.0) * (x-2) + 26.0/209.0) * (x-2);
+ }
+ };
+
+
+ //----------------------------------------------image_filter_gaussian
+ struct image_filter_gaussian
+ {
+ static double radius() { return 2.0; }
+ static double calc_weight(double x)
+ {
+ return exp(-2.0 * x * x) * sqrt(2.0 / pi);
+ }
+ };
+
+
+ //------------------------------------------------image_filter_bessel
+ struct image_filter_bessel
+ {
+ static double radius() { return 3.2383; }
+ static double calc_weight(double x)
+ {
+ return (x == 0.0) ? pi / 4.0 : j1(pi * x) / (2.0 * x);
+ }
+ };
+
+
+ //-------------------------------------------------image_filter_sinc
+ class image_filter_sinc
+ {
+ public:
+ image_filter_sinc(double r) : m_radius(r < 2.0 ? 2.0 : r) {}
+ double radius() const { return m_radius; }
+ double calc_weight(double x) const
+ {
+ if(x == 0.0) return 1.0;
+ x *= pi;
+ return sin(x) / x;
+ }
+ private:
+ double m_radius;
+ };
+
+
+ //-----------------------------------------------image_filter_lanczos
+ class image_filter_lanczos
+ {
+ public:
+ image_filter_lanczos(double r) : m_radius(r < 2.0 ? 2.0 : r) {}
+ double radius() const { return m_radius; }
+ double calc_weight(double x) const
+ {
+ if(x == 0.0) return 1.0;
+ if(x > m_radius) return 0.0;
+ x *= pi;
+ double xr = x / m_radius;
+ return (sin(x) / x) * (sin(xr) / xr);
+ }
+ private:
+ double m_radius;
+ };
+
+
+ //----------------------------------------------image_filter_blackman
+ class image_filter_blackman
+ {
+ public:
+ image_filter_blackman(double r) : m_radius(r < 2.0 ? 2.0 : r) {}
+ double radius() const { return m_radius; }
+ double calc_weight(double x) const
+ {
+ if(x == 0.0) return 1.0;
+ if(x > m_radius) return 0.0;
+ x *= pi;
+ double xr = x / m_radius;
+ return (sin(x) / x) * (0.42 + 0.5*cos(xr) + 0.08*cos(2*xr));
+ }
+ private:
+ double m_radius;
+ };
+
+ //------------------------------------------------image_filter_sinc36
+ class image_filter_sinc36 : public image_filter_sinc
+ { public: image_filter_sinc36() : image_filter_sinc(3.0){} };
+
+ //------------------------------------------------image_filter_sinc64
+ class image_filter_sinc64 : public image_filter_sinc
+ { public: image_filter_sinc64() : image_filter_sinc(4.0){} };
+
+ //-----------------------------------------------image_filter_sinc100
+ class image_filter_sinc100 : public image_filter_sinc
+ { public: image_filter_sinc100() : image_filter_sinc(5.0){} };
+
+ //-----------------------------------------------image_filter_sinc144
+ class image_filter_sinc144 : public image_filter_sinc
+ { public: image_filter_sinc144() : image_filter_sinc(6.0){} };
+
+ //-----------------------------------------------image_filter_sinc196
+ class image_filter_sinc196 : public image_filter_sinc
+ { public: image_filter_sinc196() : image_filter_sinc(7.0){} };
+
+ //-----------------------------------------------image_filter_sinc256
+ class image_filter_sinc256 : public image_filter_sinc
+ { public: image_filter_sinc256() : image_filter_sinc(8.0){} };
+
+ //---------------------------------------------image_filter_lanczos36
+ class image_filter_lanczos36 : public image_filter_lanczos
+ { public: image_filter_lanczos36() : image_filter_lanczos(3.0){} };
+
+ //---------------------------------------------image_filter_lanczos64
+ class image_filter_lanczos64 : public image_filter_lanczos
+ { public: image_filter_lanczos64() : image_filter_lanczos(4.0){} };
+
+ //--------------------------------------------image_filter_lanczos100
+ class image_filter_lanczos100 : public image_filter_lanczos
+ { public: image_filter_lanczos100() : image_filter_lanczos(5.0){} };
+
+ //--------------------------------------------image_filter_lanczos144
+ class image_filter_lanczos144 : public image_filter_lanczos
+ { public: image_filter_lanczos144() : image_filter_lanczos(6.0){} };
+
+ //--------------------------------------------image_filter_lanczos196
+ class image_filter_lanczos196 : public image_filter_lanczos
+ { public: image_filter_lanczos196() : image_filter_lanczos(7.0){} };
+
+ //--------------------------------------------image_filter_lanczos256
+ class image_filter_lanczos256 : public image_filter_lanczos
+ { public: image_filter_lanczos256() : image_filter_lanczos(8.0){} };
+
+ //--------------------------------------------image_filter_blackman36
+ class image_filter_blackman36 : public image_filter_blackman
+ { public: image_filter_blackman36() : image_filter_blackman(3.0){} };
+
+ //--------------------------------------------image_filter_blackman64
+ class image_filter_blackman64 : public image_filter_blackman
+ { public: image_filter_blackman64() : image_filter_blackman(4.0){} };
+
+ //-------------------------------------------image_filter_blackman100
+ class image_filter_blackman100 : public image_filter_blackman
+ { public: image_filter_blackman100() : image_filter_blackman(5.0){} };
+
+ //-------------------------------------------image_filter_blackman144
+ class image_filter_blackman144 : public image_filter_blackman
+ { public: image_filter_blackman144() : image_filter_blackman(6.0){} };
+
+ //-------------------------------------------image_filter_blackman196
+ class image_filter_blackman196 : public image_filter_blackman
+ { public: image_filter_blackman196() : image_filter_blackman(7.0){} };
+
+ //-------------------------------------------image_filter_blackman256
+ class image_filter_blackman256 : public image_filter_blackman
+ { public: image_filter_blackman256() : image_filter_blackman(8.0){} };
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_line_aa_basics.h b/agg/inc/agg_line_aa_basics.h
new file mode 100755
index 000000000000..ab8e94715019
--- /dev/null
+++ b/agg/inc/agg_line_aa_basics.h
@@ -0,0 +1,152 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+#ifndef AGG_LINE_AA_BASICS_INCLUDED
+#define AGG_LINE_AA_BASICS_INCLUDED
+
+#include <stdlib.h>
+#include "agg_basics.h"
+
+namespace agg
+{
+
+ // See Implementation agg_line_aa_basics.cpp
+
+ //-------------------------------------------------------------------------
+ enum
+ {
+ line_subpixel_shift = 8, //----line_subpixel_shift
+ line_subpixel_size = 1 << line_subpixel_shift, //----line_subpixel_size
+ line_subpixel_mask = line_subpixel_size - 1 //----line_subpixel_mask
+ };
+
+ //-------------------------------------------------------------------------
+ enum
+ {
+ line_mr_subpixel_shift = 4, //----line_mr_subpixel_shift
+ line_mr_subpixel_size = 1 << line_mr_subpixel_shift, //----line_mr_subpixel_size
+ line_mr_subpixel_mask = line_mr_subpixel_size - 1 //----line_mr_subpixel_mask
+ };
+
+ //------------------------------------------------------------------line_mr
+ inline int line_mr(int x)
+ {
+ return x >> ((int)line_subpixel_shift - (int)line_mr_subpixel_shift);
+ }
+
+ //-------------------------------------------------------------------line_hr
+ inline int line_hr(int x)
+ {
+ return x << ((int)line_subpixel_shift - (int)line_mr_subpixel_shift);
+ }
+
+ //---------------------------------------------------------------line_dbl_hr
+ inline int line_dbl_hr(int x)
+ {
+ return x << line_subpixel_shift;
+ }
+
+ //---------------------------------------------------------------line_coord
+ inline int line_coord(double x)
+ {
+ return int(x * line_subpixel_size);
+ }
+
+ //==========================================================line_parameters
+ struct line_parameters
+ {
+ //---------------------------------------------------------------------
+ line_parameters() {}
+ line_parameters(int x1_, int y1_, int x2_, int y2_, int len_) :
+ x1(x1_), y1(y1_), x2(x2_), y2(y2_),
+ dx(abs(x2_ - x1_)),
+ dy(abs(y2_ - y1_)),
+ sx((x2_ > x1_) ? 1 : -1),
+ sy((y2_ > y1_) ? 1 : -1),
+ vertical(dy >= dx),
+ inc(vertical ? sy : sx),
+ len(len_),
+ octant((sy & 4) | (sx & 2) | int(vertical))
+ {
+ }
+
+ //---------------------------------------------------------------------
+ unsigned orthogonal_quadrant() const { return s_orthogonal_quadrant[octant]; }
+ unsigned diagonal_quadrant() const { return s_diagonal_quadrant[octant]; }
+
+ //---------------------------------------------------------------------
+ bool same_orthogonal_quadrant(const line_parameters& lp) const
+ {
+ return s_orthogonal_quadrant[octant] == s_orthogonal_quadrant[lp.octant];
+ }
+
+ //---------------------------------------------------------------------
+ bool same_diagonal_quadrant(const line_parameters& lp) const
+ {
+ return s_diagonal_quadrant[octant] == s_diagonal_quadrant[lp.octant];
+ }
+
+ //---------------------------------------------------------------------
+ int x1, y1, x2, y2, dx, dy, sx, sy;
+ bool vertical;
+ int inc;
+ int len;
+ int octant;
+
+ //---------------------------------------------------------------------
+ static int8u s_orthogonal_quadrant[8];
+ static int8u s_diagonal_quadrant[8];
+ };
+
+
+
+ // See Implementation agg_line_aa_basics.cpp
+
+ //----------------------------------------------------------------bisectrix
+ void bisectrix(const line_parameters& l1,
+ const line_parameters& l2,
+ int* x, int* y);
+
+
+ //-------------------------------------------fix_degenerate_bisectrix_start
+ void inline fix_degenerate_bisectrix_start(const line_parameters& lp,
+ int* x, int* y)
+ {
+ int d = int((double(*x - lp.x2) * double(lp.y2 - lp.y1) -
+ double(*y - lp.y2) * double(lp.x2 - lp.x1)) / lp.len);
+ if(d < line_subpixel_size)
+ {
+ *x = lp.x1 + (lp.y2 - lp.y1);
+ *y = lp.y1 - (lp.x2 - lp.x1);
+ }
+ }
+
+
+ //---------------------------------------------fix_degenerate_bisectrix_end
+ void inline fix_degenerate_bisectrix_end(const line_parameters& lp,
+ int* x, int* y)
+ {
+ int d = int((double(*x - lp.x2) * double(lp.y2 - lp.y1) -
+ double(*y - lp.y2) * double(lp.x2 - lp.x1)) / lp.len);
+ if(d < line_subpixel_size)
+ {
+ *x = lp.x2 + (lp.y2 - lp.y1);
+ *y = lp.y2 - (lp.x2 - lp.x1);
+ }
+ }
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_math.h b/agg/inc/agg_math.h
new file mode 100755
index 000000000000..4aef4df9638e
--- /dev/null
+++ b/agg/inc/agg_math.h
@@ -0,0 +1,247 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_MATH_INCLUDED
+#define AGG_MATH_INCLUDED
+
+#include <math.h>
+#include "agg_basics.h"
+
+namespace agg
+{
+
+ const double intersection_epsilon = 1.0e-8;
+
+ //------------------------------------------------------calc_point_location
+ AGG_INLINE double calc_point_location(double x1, double y1,
+ double x2, double y2,
+ double x, double y)
+ {
+ return (x - x2) * (y2 - y1) - (y - y2) * (x2 - x1);
+ }
+
+
+ //--------------------------------------------------------point_in_triangle
+ AGG_INLINE bool point_in_triangle(double x1, double y1,
+ double x2, double y2,
+ double x3, double y3,
+ double x, double y)
+ {
+ bool cp1 = calc_point_location(x1, y1, x2, y2, x, y) < 0.0;
+ bool cp2 = calc_point_location(x2, y2, x3, y3, x, y) < 0.0;
+ bool cp3 = calc_point_location(x3, y3, x1, y1, x, y) < 0.0;
+ return cp1 == cp2 && cp2 == cp3 && cp3 == cp1;
+ }
+
+
+ //-----------------------------------------------------------calc_distance
+ AGG_INLINE double calc_distance(double x1, double y1, double x2, double y2)
+ {
+ double dx = x2-x1;
+ double dy = y2-y1;
+ return sqrt(dx * dx + dy * dy);
+ }
+
+
+ //------------------------------------------------calc_point_line_distance
+ AGG_INLINE double calc_point_line_distance(double x1, double y1,
+ double x2, double y2,
+ double x, double y)
+ {
+ double dx = x2-x1;
+ double dy = y2-y1;
+ return ((x - x2) * dy - (y - y2) * dx) / sqrt(dx * dx + dy * dy);
+ }
+
+
+ //-------------------------------------------------------calc_intersection
+ AGG_INLINE bool calc_intersection(double ax, double ay, double bx, double by,
+ double cx, double cy, double dx, double dy,
+ double* x, double* y)
+ {
+ double num = (ay-cy) * (dx-cx) - (ax-cx) * (dy-cy);
+ double den = (bx-ax) * (dy-cy) - (by-ay) * (dx-cx);
+ if(fabs(den) < intersection_epsilon) return false;
+ double r = num / den;
+ *x = ax + r * (bx-ax);
+ *y = ay + r * (by-ay);
+ return true;
+ }
+
+
+ //--------------------------------------------------------calc_orthogonal
+ AGG_INLINE void calc_orthogonal(double thickness,
+ double x1, double y1,
+ double x2, double y2,
+ double* x, double* y)
+ {
+ double dx = x2 - x1;
+ double dy = y2 - y1;
+ double d = sqrt(dx*dx + dy*dy);
+ *x = thickness * dy / d;
+ *y = thickness * dx / d;
+ }
+
+
+ //--------------------------------------------------------dilate_triangle
+ AGG_INLINE void dilate_triangle(double x1, double y1,
+ double x2, double y2,
+ double x3, double y3,
+ double *x, double* y,
+ double d)
+ {
+ double dx1=0.0;
+ double dy1=0.0;
+ double dx2=0.0;
+ double dy2=0.0;
+ double dx3=0.0;
+ double dy3=0.0;
+ double loc = calc_point_location(x1, y1, x2, y2, x3, y3);
+ if(fabs(loc) > intersection_epsilon)
+ {
+ if(calc_point_location(x1, y1, x2, y2, x3, y3) > 0.0)
+ {
+ d = -d;
+ }
+ calc_orthogonal(d, x1, y1, x2, y2, &dx1, &dy1);
+ calc_orthogonal(d, x2, y2, x3, y3, &dx2, &dy2);
+ calc_orthogonal(d, x3, y3, x1, y1, &dx3, &dy3);
+ }
+ *x++ = x1 + dx1; *y++ = y1 - dy1;
+ *x++ = x2 + dx1; *y++ = y2 - dy1;
+ *x++ = x2 + dx2; *y++ = y2 - dy2;
+ *x++ = x3 + dx2; *y++ = y3 - dy2;
+ *x++ = x3 + dx3; *y++ = y3 - dy3;
+ *x++ = x1 + dx3; *y++ = y1 - dy3;
+ }
+
+ //-------------------------------------------------------calc_polygon_area
+ template<class Storage> double calc_polygon_area(const Storage& st)
+ {
+ unsigned i;
+ double sum = 0.0;
+ double x = st[0].x;
+ double y = st[0].y;
+ double xs = x;
+ double ys = y;
+
+ for(i = 1; i < st.size(); i++)
+ {
+ const typename Storage::value_type& v = st[i];
+ sum += x * v.y - y * v.x;
+ x = v.x;
+ y = v.y;
+ }
+ return (sum + x * ys - y * xs) * 0.5;
+ }
+
+ //------------------------------------------------------------------------
+ // Tables for fast sqrt
+ extern int16u g_sqrt_table[1024];
+ extern int8 g_elder_bit_table[256];
+
+
+ //---------------------------------------------------------------fast_sqrt
+ //Fast integer Sqrt - really fast: no cycles, divisions or multiplications
+ #if defined(_MSC_VER)
+ #pragma warning(push)
+ #pragma warning(disable : 4035) //Disable warning "no return value"
+ #endif
+ AGG_INLINE unsigned fast_sqrt(unsigned val)
+ {
+ #if defined(_M_IX86) && defined(_MSC_VER) && !defined(AGG_NO_ASM)
+ //For Ix86 family processors this assembler code is used.
+ //The key command here is bsr - determination the number of the most
+ //significant bit of the value. For other processors
+ //(and maybe compilers) the pure C "#else" section is used.
+ __asm
+ {
+ mov ebx, val
+ mov edx, 11
+ bsr ecx, ebx
+ sub ecx, 9
+ jle less_than_9_bits
+ shr ecx, 1
+ adc ecx, 0
+ sub edx, ecx
+ shl ecx, 1
+ shr ebx, cl
+ less_than_9_bits:
+ xor eax, eax
+ mov ax, g_sqrt_table[ebx*2]
+ mov ecx, edx
+ shr eax, cl
+ }
+ #else
+
+ //This code is actually pure C and portable to most
+ //arcitectures including 64bit ones.
+ unsigned t = val;
+ int bit=0;
+ unsigned shift = 11;
+
+ //The following piece of code is just an emulation of the
+ //Ix86 assembler command "bsr" (see above). However on old
+ //Intels (like Intel MMX 233MHz) this code is about twice
+ //faster (sic!) then just one "bsr". On PIII and PIV the
+ //bsr is optimized quite well.
+ bit = t >> 24;
+ if(bit)
+ {
+ bit = g_elder_bit_table[bit] + 24;
+ }
+ else
+ {
+ bit = (t >> 16) & 0xFF;
+ if(bit)
+ {
+ bit = g_elder_bit_table[bit] + 16;
+ }
+ else
+ {
+ bit = (t >> 8) & 0xFF;
+ if(bit)
+ {
+ bit = g_elder_bit_table[bit] + 8;
+ }
+ else
+ {
+ bit = g_elder_bit_table[t];
+ }
+ }
+ }
+
+ //This is calculation sqrt itself.
+ bit -= 9;
+ if(bit > 0)
+ {
+ bit = (bit >> 1) + (bit & 1);
+ shift -= bit;
+ val >>= (bit << 1);
+ }
+ return g_sqrt_table[val] >> shift;
+ #endif
+ }
+ #if defined(_MSC_VER)
+ #pragma warning(pop)
+ #endif
+
+
+
+
+}
+
+
+#endif
diff --git a/agg/inc/agg_math_stroke.h b/agg/inc/agg_math_stroke.h
new file mode 100755
index 000000000000..84d83738a9cd
--- /dev/null
+++ b/agg/inc/agg_math_stroke.h
@@ -0,0 +1,340 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Stroke math
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_STROKE_MATH_INCLUDED
+#define AGG_STROKE_MATH_INCLUDED
+
+#include "agg_math.h"
+#include "agg_vertex_sequence.h"
+
+namespace agg
+{
+ //-------------------------------------------------------------line_cap_e
+ enum line_cap_e
+ {
+ butt_cap,
+ square_cap,
+ round_cap
+ };
+
+ //------------------------------------------------------------line_join_e
+ enum line_join_e
+ {
+ miter_join,
+ miter_join_revert,
+ round_join,
+ bevel_join
+ };
+
+ // Minimal angle to calculate round joins, less than 0.1 degree.
+ const double stroke_theta = 0.001; //----stroke_theta
+
+
+ //--------------------------------------------------------stroke_calc_arc
+ template<class VertexConsumer>
+ void stroke_calc_arc(VertexConsumer& out_vertices,
+ double x, double y,
+ double dx1, double dy1,
+ double dx2, double dy2,
+ double width,
+ double approximation_scale)
+ {
+ typedef typename VertexConsumer::value_type coord_type;
+
+ //// Check if we actually need the arc (this optimization works bad)
+ ////-----------------
+ //double dd = calc_distance(dx1, dy1, dx2, dy2);
+ //if(dd < 1.0/approximation_scale)
+ //{
+ // out_vertices.add(coord_type(x + dx1, y + dy1));
+ // if(dd > 0.25/approximation_scale)
+ // {
+ // out_vertices.add(coord_type(x + dx2, y + dy2));
+ // }
+ // return;
+ //}
+
+ double a1 = atan2(dy1, dx1);
+ double a2 = atan2(dy2, dx2);
+ double da = a1 - a2;
+
+ if(fabs(da) < stroke_theta)
+ {
+ out_vertices.add(coord_type((x + x + dx1 + dx2) * 0.5,
+ (y + y + dy1 + dy2) * 0.5));
+ return;
+ }
+
+ bool ccw = da > 0.0 && da < pi;
+
+ if(width < 0) width = -width;
+ da = fabs(1.0 / (width * approximation_scale));
+ if(!ccw)
+ {
+ if(a1 > a2) a2 += 2 * pi;
+ while(a1 < a2)
+ {
+ out_vertices.add(coord_type(x + cos(a1) * width, y + sin(a1) * width));
+ a1 += da;
+ }
+ }
+ else
+ {
+ if(a1 < a2) a2 -= 2 * pi;
+ while(a1 > a2)
+ {
+ out_vertices.add(coord_type(x + cos(a1) * width, y + sin(a1) * width));
+ a1 -= da;
+ }
+ }
+ out_vertices.add(coord_type(x + dx2, y + dy2));
+ }
+
+
+
+ //-------------------------------------------------------stroke_calc_miter
+ template<class VertexConsumer>
+ void stroke_calc_miter(VertexConsumer& out_vertices,
+ const vertex_dist& v0,
+ const vertex_dist& v1,
+ const vertex_dist& v2,
+ double dx1, double dy1,
+ double dx2, double dy2,
+ double width,
+ bool revert_flag,
+ double miter_limit)
+ {
+ typedef typename VertexConsumer::value_type coord_type;
+
+ double xi = v1.x;
+ double yi = v1.y;
+
+ if(!calc_intersection(v0.x + dx1, v0.y - dy1,
+ v1.x + dx1, v1.y - dy1,
+ v1.x + dx2, v1.y - dy2,
+ v2.x + dx2, v2.y - dy2,
+ &xi, &yi))
+ {
+ // The calculation didn't succeed, most probaly
+ // the three points lie one straight line
+ //----------------
+ if(calc_distance(dx1, -dy1, dx2, -dy2) < width * 0.025)
+ {
+ // This case means that the next segment continues
+ // the previous one (straight line)
+ //-----------------
+ out_vertices.add(coord_type(v1.x + dx1, v1.y - dy1));
+ }
+ else
+ {
+ // This case means that the next segment goes back
+ //-----------------
+ if(revert_flag)
+ {
+ out_vertices.add(coord_type(v1.x + dx1, v1.y - dy1));
+ out_vertices.add(coord_type(v1.x + dx2, v1.y - dy2));
+ }
+ else
+ {
+ // If no miter-revert, calcuate new dx1, dy1, dx2, dy2
+ out_vertices.add(coord_type(v1.x + dx1 + dy1 * miter_limit,
+ v1.y - dy1 + dx1 * miter_limit));
+ out_vertices.add(coord_type(v1.x + dx2 - dy2 * miter_limit,
+ v1.y - dy2 - dx2 * miter_limit));
+ }
+ }
+ }
+ else
+ {
+ double d1 = calc_distance(v1.x, v1.y, xi, yi);
+ double lim = width * miter_limit;
+ if(d1 > lim)
+ {
+ // Miter limit exceeded
+ //------------------------
+ if(revert_flag)
+ {
+ // For the compatibility with SVG, PDF, etc,
+ // we use a simple bevel join instead of
+ // "smart" bevel
+ //-------------------
+ out_vertices.add(coord_type(v1.x + dx1, v1.y - dy1));
+ out_vertices.add(coord_type(v1.x + dx2, v1.y - dy2));
+ }
+ else
+ {
+ // Smart bevel that cuts the miter at the limit point
+ //-------------------
+ d1 = lim / d1;
+ double x1 = v1.x + dx1;
+ double y1 = v1.y - dy1;
+ double x2 = v1.x + dx2;
+ double y2 = v1.y - dy2;
+
+ x1 += (xi - x1) * d1;
+ y1 += (yi - y1) * d1;
+ x2 += (xi - x2) * d1;
+ y2 += (yi - y2) * d1;
+ out_vertices.add(coord_type(x1, y1));
+ out_vertices.add(coord_type(x2, y2));
+ }
+ }
+ else
+ {
+ // Inside the miter limit
+ //---------------------
+ out_vertices.add(coord_type(xi, yi));
+ }
+ }
+ }
+
+
+
+
+
+
+ //--------------------------------------------------------stroke_calc_cap
+ template<class VertexConsumer>
+ void stroke_calc_cap(VertexConsumer& out_vertices,
+ const vertex_dist& v0,
+ const vertex_dist& v1,
+ double len,
+ line_cap_e line_cap,
+ double width,
+ double approximation_scale)
+ {
+ typedef typename VertexConsumer::value_type coord_type;
+
+ out_vertices.remove_all();
+
+ double dx1 = width * (v1.y - v0.y) / len;
+ double dy1 = width * (v1.x - v0.x) / len;
+ double dx2 = 0;
+ double dy2 = 0;
+
+ if(line_cap == square_cap)
+ {
+ dx2 = dy1;
+ dy2 = dx1;
+ }
+
+ if(line_cap == round_cap)
+ {
+ double a1 = atan2(dy1, -dx1);
+ double a2 = a1 + pi;
+ double da = fabs(1.0 / (width * approximation_scale));
+ while(a1 < a2)
+ {
+ out_vertices.add(coord_type(v0.x + cos(a1) * width,
+ v0.y + sin(a1) * width));
+ a1 += da;
+ }
+ out_vertices.add(coord_type(v0.x + dx1, v0.y - dy1));
+ }
+ else
+ {
+ out_vertices.add(coord_type(v0.x - dx1 - dx2, v0.y + dy1 - dy2));
+ out_vertices.add(coord_type(v0.x + dx1 - dx2, v0.y - dy1 - dy2));
+ }
+ }
+
+
+
+ //-------------------------------------------------------stroke_calc_join
+ template<class VertexConsumer>
+ void stroke_calc_join(VertexConsumer& out_vertices,
+ const vertex_dist& v0,
+ const vertex_dist& v1,
+ const vertex_dist& v2,
+ double len1,
+ double len2,
+ double width,
+ line_join_e line_join,
+ line_join_e inner_line_join,
+ double miter_limit,
+ double inner_miter_limit,
+ double approximation_scale)
+ {
+ typedef typename VertexConsumer::value_type coord_type;
+
+ double dx1, dy1, dx2, dy2;
+
+ dx1 = width * (v1.y - v0.y) / len1;
+ dy1 = width * (v1.x - v0.x) / len1;
+
+ dx2 = width * (v2.y - v1.y) / len2;
+ dy2 = width * (v2.x - v1.x) / len2;
+
+ out_vertices.remove_all();
+
+ if(calc_point_location(v0.x, v0.y, v1.x, v1.y, v2.x, v2.y) > 0.0)
+ {
+ // Inner join
+ //---------------
+ stroke_calc_miter(out_vertices,
+ v0, v1, v2, dx1, dy1, dx2, dy2,
+ width,
+ inner_line_join == miter_join_revert,
+ inner_miter_limit);
+ }
+ else
+ {
+ // Outer join
+ //---------------
+ switch(line_join)
+ {
+ case miter_join:
+ stroke_calc_miter(out_vertices,
+ v0, v1, v2, dx1, dy1, dx2, dy2,
+ width,
+ false,
+ miter_limit);
+ break;
+
+ case miter_join_revert:
+ stroke_calc_miter(out_vertices,
+ v0, v1, v2, dx1, dy1, dx2, dy2,
+ width,
+ true,
+ miter_limit);
+ break;
+
+ case round_join:
+ stroke_calc_arc(out_vertices,
+ v1.x, v1.y, dx1, -dy1, dx2, -dy2,
+ width, approximation_scale);
+ break;
+
+ default: // Bevel join
+ out_vertices.add(coord_type(v1.x + dx1, v1.y - dy1));
+ if(calc_distance(dx1, dy1, dx2, dy2) > approximation_scale * 0.25)
+ {
+ out_vertices.add(coord_type(v1.x + dx2, v1.y - dy2));
+ }
+ break;
+ }
+ }
+ }
+
+
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_path_storage.h b/agg/inc/agg_path_storage.h
new file mode 100755
index 000000000000..8cdb9b9bbeb6
--- /dev/null
+++ b/agg/inc/agg_path_storage.h
@@ -0,0 +1,364 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_PATH_STORAGE_INCLUDED
+#define AGG_PATH_STORAGE_INCLUDED
+
+#include "agg_basics.h"
+
+namespace agg
+{
+
+ //------------------------------------------------------------path_storage
+ // A container to store vertices with their flags.
+ // A path consists of a number of contours separated with "move_to"
+ // commands. The path storage can keep and maintain more than one
+ // path.
+ // To navigate to the beginning of a particular path, use rewind(path_id);
+ // Where path_id is what start_new_path() returns. So, when you call
+ // start_new_path() you need to store its return value somewhere else
+ // to navigate to the path afterwards.
+ //
+ // See Implementation: agg_path_storage.cpp
+ // See also: vertex_source concept
+ //------------------------------------------------------------------------
+ class path_storage
+ {
+ // Allocation parameters
+ enum
+ {
+ block_shift = 8,
+ block_size = 1 << block_shift,
+ block_mask = block_size - 1,
+ block_pool = 256
+ };
+
+ public:
+
+ //--------------------------------------------------------------------
+ class const_iterator
+ {
+ void vertex()
+ {
+ if(m_vertex_idx < m_path->total_vertices())
+ {
+ m_vertex.cmd = m_path->vertex(m_vertex_idx, &m_vertex.x, &m_vertex.y);
+ }
+ else
+ {
+ m_vertex.cmd = path_cmd_stop;
+ m_vertex.x = m_vertex.y = 0.0;
+ }
+ }
+
+ public:
+ const_iterator() {}
+ const_iterator(unsigned cmd) { m_vertex.cmd = cmd; }
+ const_iterator(const const_iterator& i) :
+ m_path(i.m_path),
+ m_vertex_idx(i.m_vertex_idx),
+ m_vertex(i.m_vertex)
+ {
+ }
+
+ const_iterator(const path_storage& p, unsigned id) :
+ m_path(&p),
+ m_vertex_idx(id)
+ {
+ vertex();
+ }
+
+ const_iterator& operator++()
+ {
+ ++m_vertex_idx;
+ vertex();
+ return *this;
+ }
+
+ const vertex_type& operator*() const { return m_vertex; }
+ const vertex_type* operator->() const { return &m_vertex; }
+
+ bool operator != (const const_iterator& i)
+ {
+ return m_vertex.cmd != i.m_vertex.cmd;
+ }
+
+ private:
+ const path_storage* m_path;
+ unsigned m_vertex_idx;
+ vertex_type m_vertex;
+ };
+
+ ~path_storage();
+ path_storage();
+ path_storage(const path_storage& ps);
+
+ void remove_all();
+
+ unsigned last_vertex(double* x, double* y) const;
+ unsigned prev_vertex(double* x, double* y) const;
+
+ void rel_to_abs(double* x, double* y) const;
+
+ void move_to(double x, double y);
+ void move_rel(double dx, double dy);
+
+ void line_to(double x, double y);
+ void line_rel(double dx, double dy);
+
+ void arc_to(double rx, double ry,
+ double angle,
+ bool large_arc_flag,
+ bool sweep_flag,
+ double x, double y);
+
+ void arc_rel(double rx, double ry,
+ double angle,
+ bool large_arc_flag,
+ bool sweep_flag,
+ double dx, double dy);
+
+ void curve3(double x_ctrl, double y_ctrl,
+ double x_to, double y_to);
+
+ void curve3_rel(double dx_ctrl, double dy_ctrl,
+ double dx_to, double dy_to);
+
+ void curve3(double x_to, double y_to);
+
+ void curve3_rel(double dx_to, double dy_to);
+
+ void curve4(double x_ctrl1, double y_ctrl1,
+ double x_ctrl2, double y_ctrl2,
+ double x_to, double y_to);
+
+ void curve4_rel(double dx_ctrl1, double dy_ctrl1,
+ double dx_ctrl2, double dy_ctrl2,
+ double dx_to, double dy_to);
+
+ void curve4(double x_ctrl2, double y_ctrl2,
+ double x_to, double y_to);
+
+ void curve4_rel(double x_ctrl2, double y_ctrl2,
+ double x_to, double y_to);
+
+
+ void end_poly(unsigned flags = path_flags_close);
+
+ void close_polygon(unsigned flags = path_flags_none)
+ {
+ end_poly(path_flags_close | flags);
+ }
+
+ void add_poly(const double* vertices, unsigned num,
+ bool solid_path = false,
+ unsigned end_flags = path_flags_none);
+
+ template<class VertexSource>
+ void add_path(VertexSource& vs,
+ unsigned path_id = 0,
+ bool solid_path = true)
+ {
+ double x, y;
+ unsigned cmd;
+ vs.rewind(path_id);
+ while(!is_stop(cmd = vs.vertex(&x, &y)))
+ {
+ if(is_move_to(cmd) && solid_path && m_total_vertices)
+ {
+ cmd = path_cmd_line_to;
+ }
+ add_vertex(x, y, cmd);
+ }
+ }
+
+ unsigned start_new_path();
+
+ void copy_from(const path_storage& ps);
+ const path_storage& operator = (const path_storage& ps)
+ {
+ copy_from(ps);
+ return *this;
+ }
+
+
+ unsigned total_vertices() const { return m_total_vertices; }
+ unsigned vertex(unsigned idx, double* x, double* y) const
+ {
+ unsigned nb = idx >> block_shift;
+ const double* pv = m_coord_blocks[nb] + ((idx & block_mask) << 1);
+ *x = *pv++;
+ *y = *pv;
+ return m_cmd_blocks[nb][idx & block_mask];
+ }
+ unsigned command(unsigned idx) const
+ {
+ return m_cmd_blocks[idx >> block_shift][idx & block_mask];
+ }
+
+ void rewind(unsigned path_id);
+ unsigned vertex(double* x, double* y);
+
+ const_iterator begin(unsigned id) const { return const_iterator(*this, id); }
+ const_iterator begin() const { return const_iterator(*this, 0); }
+ const_iterator end() const { return const_iterator(path_cmd_stop); }
+
+ // Arrange the orientation of all the polygons. After calling this
+ // method all the polygons will have the same orientation
+ // determined by the new_orientation flag, i.e.,
+ // path_flags_cw or path_flags_ccw
+ unsigned arrange_orientations(unsigned path_id, path_flags_e new_orientation);
+ void arrange_orientations_all_paths(path_flags_e new_orientation);
+
+ // Flip all the vertices horizontally or vertically
+ void flip_x(double x1, double x2);
+ void flip_y(double y1, double y2);
+
+ // This function adds a vertex with its flags directly. Since there's no
+ // checking for errors, keeping proper path integrity is the responsibility
+ // of the caller. It can be said the function is "not very public".
+ void add_vertex(double x, double y, unsigned cmd);
+
+ // Allows you to modify vertex coordinates. The caller must know
+ // the index of the vertex.
+ void modify_vertex(unsigned idx, double x, double y)
+ {
+ double* pv = m_coord_blocks[idx >> block_shift] + ((idx & block_mask) << 1);
+ *pv++ = x;
+ *pv = y;
+ }
+
+ // Allows you to modify vertex command. The caller must know
+ // the index of the vertex.
+ void modify_command(unsigned idx, unsigned cmd)
+ {
+ m_cmd_blocks[idx >> block_shift][idx & block_mask] = (unsigned char)cmd;
+ }
+
+
+ private:
+ void allocate_block(unsigned nb);
+ unsigned char* storage_ptrs(double** xy_ptr);
+ unsigned perceive_polygon_orientation(unsigned idx,
+ double xs, double ys,
+ unsigned* orientation);
+ void reverse_polygon(unsigned start, unsigned end);
+
+ private:
+ unsigned m_total_vertices;
+ unsigned m_total_blocks;
+ unsigned m_max_blocks;
+ double** m_coord_blocks;
+ unsigned char** m_cmd_blocks;
+ unsigned m_iterator;
+ };
+
+
+ //------------------------------------------------------------------------
+ inline unsigned path_storage::vertex(double* x, double* y)
+ {
+ if(m_iterator >= m_total_vertices) return path_cmd_stop;
+ return vertex(m_iterator++, x, y);
+ }
+
+ //------------------------------------------------------------------------
+ inline unsigned path_storage::prev_vertex(double* x, double* y) const
+ {
+ if(m_total_vertices > 1)
+ {
+ return vertex(m_total_vertices - 2, x, y);
+ }
+ return path_cmd_stop;
+ }
+
+ //------------------------------------------------------------------------
+ inline unsigned path_storage::last_vertex(double* x, double* y) const
+ {
+ if(m_total_vertices)
+ {
+ return vertex(m_total_vertices - 1, x, y);
+ }
+ return path_cmd_stop;
+ }
+
+ //------------------------------------------------------------------------
+ inline void path_storage::rel_to_abs(double* x, double* y) const
+ {
+ if(m_total_vertices)
+ {
+ double x2;
+ double y2;
+ if(is_vertex(vertex(m_total_vertices - 1, &x2, &y2)))
+ {
+ *x += x2;
+ *y += y2;
+ }
+ }
+ }
+
+ //------------------------------------------------------------------------
+ inline unsigned char* path_storage::storage_ptrs(double** xy_ptr)
+ {
+ unsigned nb = m_total_vertices >> block_shift;
+ if(nb >= m_total_blocks)
+ {
+ allocate_block(nb);
+ }
+ *xy_ptr = m_coord_blocks[nb] + ((m_total_vertices & block_mask) << 1);
+ return m_cmd_blocks[nb] + (m_total_vertices & block_mask);
+ }
+
+
+ //------------------------------------------------------------------------
+ inline void path_storage::add_vertex(double x, double y, unsigned cmd)
+ {
+ double* coord_ptr = 0;
+ unsigned char* cmd_ptr = storage_ptrs(&coord_ptr);
+ *cmd_ptr = (unsigned char)cmd;
+ *coord_ptr++ = x;
+ *coord_ptr = y;
+ m_total_vertices++;
+ }
+
+ //------------------------------------------------------------------------
+ inline void path_storage::move_to(double x, double y)
+ {
+ add_vertex(x, y, path_cmd_move_to);
+ }
+
+ //------------------------------------------------------------------------
+ inline void path_storage::move_rel(double dx, double dy)
+ {
+ rel_to_abs(&dx, &dy);
+ add_vertex(dx, dy, path_cmd_move_to);
+ }
+
+ //------------------------------------------------------------------------
+ inline void path_storage::line_to(double x, double y)
+ {
+ add_vertex(x, y, path_cmd_line_to);
+ }
+
+ //------------------------------------------------------------------------
+ inline void path_storage::line_rel(double dx, double dy)
+ {
+ rel_to_abs(&dx, &dy);
+ add_vertex(dx, dy, path_cmd_line_to);
+ }
+}
+
+
+
+#endif
diff --git a/agg/inc/agg_path_storage_integer.h b/agg/inc/agg_path_storage_integer.h
new file mode 100755
index 000000000000..841bd10aa27a
--- /dev/null
+++ b/agg/inc/agg_path_storage_integer.h
@@ -0,0 +1,300 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_PATH_STORAGE_INTEGER_INCLUDED
+#define AGG_PATH_STORAGE_INTEGER_INCLUDED
+
+#include <string.h>
+#include "agg_array.h"
+
+namespace agg
+{
+
+ //---------------------------------------------------------vertex_integer
+ template<class T, unsigned CoordShift=6> struct vertex_integer
+ {
+ enum path_cmd
+ {
+ cmd_move_to = 0,
+ cmd_line_to = 1,
+ cmd_curve3 = 2,
+ cmd_curve4 = 3
+ };
+
+ enum
+ {
+ coord_shift = CoordShift,
+ coord_mult = 1 << coord_shift
+ };
+
+ T x,y;
+ vertex_integer() {}
+ vertex_integer(T x_, T y_, unsigned flag) :
+ x(((x_ << 1) & ~1) | (flag & 1)),
+ y(((y_ << 1) & ~1) | (flag >> 1)) {}
+
+ unsigned vertex(double* x_, double* y_,
+ double dx=0, double dy=0,
+ double scale=1.0) const
+ {
+ *x_ = dx + (double(x >> 1) / coord_mult) * scale;
+ *y_ = dy + (double(y >> 1) / coord_mult) * scale;
+ switch(((y & 1) << 1) | (x & 1))
+ {
+ case cmd_move_to: return path_cmd_move_to;
+ case cmd_line_to: return path_cmd_line_to;
+ case cmd_curve3: return path_cmd_curve3;
+ case cmd_curve4: return path_cmd_curve4;
+ }
+ return path_cmd_stop;
+ }
+ };
+
+
+ //---------------------------------------------------path_storage_integer
+ template<class T, unsigned CoordShift=6> class path_storage_integer
+ {
+ public:
+ typedef vertex_integer<T, CoordShift> vertex_integer_type;
+
+ //--------------------------------------------------------------------
+ path_storage_integer() : m_storage(), m_vertex_idx(0), m_closed(true) {}
+
+ //--------------------------------------------------------------------
+ void remove_all() { m_storage.remove_all(); }
+
+ //--------------------------------------------------------------------
+ void move_to(T x, T y)
+ {
+ m_storage.add(vertex_integer_type(x, y, vertex_integer_type::cmd_move_to));
+ }
+
+ //--------------------------------------------------------------------
+ void line_to(T x, T y)
+ {
+ m_storage.add(vertex_integer_type(x, y, vertex_integer_type::cmd_line_to));
+ }
+
+ //--------------------------------------------------------------------
+ void curve3(T x_ctrl, T y_ctrl,
+ T x_to, T y_to)
+ {
+ m_storage.add(vertex_integer_type(x_ctrl, y_ctrl, vertex_integer_type::cmd_curve3));
+ m_storage.add(vertex_integer_type(x_to, y_to, vertex_integer_type::cmd_curve3));
+ }
+
+ //--------------------------------------------------------------------
+ void curve4(T x_ctrl1, T y_ctrl1,
+ T x_ctrl2, T y_ctrl2,
+ T x_to, T y_to)
+ {
+ m_storage.add(vertex_integer_type(x_ctrl1, y_ctrl1, vertex_integer_type::cmd_curve4));
+ m_storage.add(vertex_integer_type(x_ctrl2, y_ctrl2, vertex_integer_type::cmd_curve4));
+ m_storage.add(vertex_integer_type(x_to, y_to, vertex_integer_type::cmd_curve4));
+ }
+
+ //--------------------------------------------------------------------
+ void close_polygon() {}
+
+ //--------------------------------------------------------------------
+ unsigned size() const { return m_storage.size(); }
+ unsigned vertex(unsigned idx, T* x, T* y) const
+ {
+ const vertex_integer_type& v = m_storage[idx];
+ *x = v.x >> 1;
+ *y = v.y >> 1;
+ return ((v.y & 1) << 1) | (v.x & 1);
+ }
+
+ //--------------------------------------------------------------------
+ unsigned byte_size() const { return m_storage.size() * sizeof(vertex_integer_type); }
+ void serialize(int8u* ptr) const
+ {
+ unsigned i;
+ for(i = 0; i < m_storage.size(); i++)
+ {
+ memcpy(ptr, &m_storage[i], sizeof(vertex_integer_type));
+ ptr += sizeof(vertex_integer_type);
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void rewind(unsigned)
+ {
+ m_vertex_idx = 0;
+ m_closed = true;
+ }
+
+ //--------------------------------------------------------------------
+ unsigned vertex(double* x, double* y)
+ {
+ if(m_storage.size() < 2 || m_vertex_idx > m_storage.size())
+ {
+ *x = 0;
+ *y = 0;
+ return path_cmd_stop;
+ }
+ if(m_vertex_idx == m_storage.size())
+ {
+ *x = 0;
+ *y = 0;
+ ++m_vertex_idx;
+ return path_cmd_end_poly | path_flags_close;
+ }
+ unsigned cmd = m_storage[m_vertex_idx].vertex(x, y);
+ if(is_move_to(cmd) && !m_closed)
+ {
+ *x = 0;
+ *y = 0;
+ m_closed = true;
+ return path_cmd_end_poly | path_flags_close;
+ }
+ m_closed = false;
+ ++m_vertex_idx;
+ return cmd;
+ }
+
+ //--------------------------------------------------------------------
+ rect_d bounding_rect() const
+ {
+ rect_d bounds(1e100, 1e100, -1e100, -1e100);
+ if(m_storage.size() == 0)
+ {
+ bounds.x1 = bounds.y1 = bounds.x2 = bounds.y2 = 0.0;
+ }
+ else
+ {
+ unsigned i;
+ for(i = 0; i < m_storage.size(); i++)
+ {
+ double x, y;
+ m_storage[i].vertex(&x, &y);
+ if(x < bounds.x1) bounds.x1 = x;
+ if(y < bounds.y1) bounds.y1 = y;
+ if(x > bounds.x2) bounds.x2 = x;
+ if(y > bounds.y2) bounds.y2 = y;
+ }
+ }
+ return bounds;
+ }
+
+
+ private:
+ pod_deque<vertex_integer_type, 6> m_storage;
+ unsigned m_vertex_idx;
+ bool m_closed;
+ };
+
+
+
+
+ //-----------------------------------------serialized_integer_path_adaptor
+ template<class T, unsigned CoordShift=6> class serialized_integer_path_adaptor
+ {
+ public:
+ typedef vertex_integer<T, CoordShift> vertex_integer_type;
+
+ //--------------------------------------------------------------------
+ serialized_integer_path_adaptor() :
+ m_data(0),
+ m_end(0),
+ m_ptr(0),
+ m_dx(0.0),
+ m_dy(0.0),
+ m_scale(1.0),
+ m_vertices(0)
+ {}
+
+ //--------------------------------------------------------------------
+ serialized_integer_path_adaptor(const int8u* data, unsigned size,
+ double dx, double dy) :
+ m_data(data),
+ m_end(data + size),
+ m_ptr(data),
+ m_dx(dx),
+ m_dy(dy),
+ m_vertices(0)
+ {}
+
+ //--------------------------------------------------------------------
+ void init(const int8u* data, unsigned size,
+ double dx, double dy, double scale=1.0)
+ {
+ m_data = data;
+ m_end = data + size;
+ m_ptr = data;
+ m_dx = dx;
+ m_dy = dy;
+ m_scale = scale;
+ m_vertices = 0;
+ }
+
+
+ //--------------------------------------------------------------------
+ void rewind(unsigned)
+ {
+ m_ptr = m_data;
+ m_vertices = 0;
+ }
+
+ //--------------------------------------------------------------------
+ unsigned vertex(double* x, double* y)
+ {
+ if(m_data == 0 || m_ptr > m_end)
+ {
+ *x = 0;
+ *y = 0;
+ return path_cmd_stop;
+ }
+
+ if(m_ptr == m_end)
+ {
+ *x = 0;
+ *y = 0;
+ m_ptr += sizeof(vertex_integer_type);
+ return path_cmd_end_poly | path_flags_close;
+ }
+
+ vertex_integer_type v;
+ memcpy(&v, m_ptr, sizeof(vertex_integer_type));
+ unsigned cmd = v.vertex(x, y, m_dx, m_dy, m_scale);
+ if(is_move_to(cmd) && m_vertices > 2)
+ {
+ *x = 0;
+ *y = 0;
+ m_vertices = 0;
+ return path_cmd_end_poly | path_flags_close;
+ }
+ ++m_vertices;
+ m_ptr += sizeof(vertex_integer_type);
+ return cmd;
+ }
+
+ private:
+ const int8u* m_data;
+ const int8u* m_end;
+ const int8u* m_ptr;
+ double m_dx;
+ double m_dy;
+ double m_scale;
+ unsigned m_vertices;
+ };
+
+}
+
+
+#endif
+
diff --git a/agg/inc/agg_pattern_filters_rgba.h b/agg/inc/agg_pattern_filters_rgba.h
new file mode 100755
index 000000000000..5d194b2e39ba
--- /dev/null
+++ b/agg/inc/agg_pattern_filters_rgba.h
@@ -0,0 +1,122 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+#ifndef AGG_PATTERN_FILTERS_RGBA8_INCLUDED
+#define AGG_PATTERN_FILTERS_RGBA8_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_line_aa_basics.h"
+#include "agg_color_rgba.h"
+
+
+namespace agg
+{
+
+ //=======================================================pattern_filter_nn
+ template<class ColorT> struct pattern_filter_nn
+ {
+ typedef ColorT color_type;
+ static unsigned dilation() { return 0; }
+
+ static void AGG_INLINE pixel_low_res(color_type const* const* buf,
+ color_type* p, int x, int y)
+ {
+ *p = buf[y][x];
+ }
+
+ static void AGG_INLINE pixel_high_res(color_type const* const* buf,
+ color_type* p, int x, int y)
+ {
+ *p = buf[y >> line_subpixel_shift]
+ [x >> line_subpixel_shift];
+ }
+ };
+
+ typedef pattern_filter_nn<rgba8> pattern_filter_nn_rgba8;
+ typedef pattern_filter_nn<rgba16> pattern_filter_nn_rgba16;
+
+
+ //===========================================pattern_filter_bilinear_rgba
+ template<class ColorT> struct pattern_filter_bilinear_rgba
+ {
+ typedef ColorT color_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+
+
+ static unsigned dilation() { return 1; }
+
+ static AGG_INLINE void pixel_low_res(color_type const* const* buf,
+ color_type* p, int x, int y)
+ {
+ *p = buf[y][x];
+ }
+
+ static AGG_INLINE void pixel_high_res(color_type const* const* buf,
+ color_type* p, int x, int y)
+ {
+ calc_type r, g, b, a;
+ r = g = b = a = line_subpixel_size * line_subpixel_size / 2;
+
+ calc_type weight;
+ int x_lr = x >> line_subpixel_shift;
+ int y_lr = y >> line_subpixel_shift;
+
+ x &= line_subpixel_mask;
+ y &= line_subpixel_mask;
+ const color_type* ptr = buf[y_lr] + x_lr;
+
+ weight = (line_subpixel_size - x) *
+ (line_subpixel_size - y);
+ r += weight * ptr->r;
+ g += weight * ptr->g;
+ b += weight * ptr->b;
+ a += weight * ptr->a;
+
+ ++ptr;
+
+ weight = x * (line_subpixel_size - y);
+ r += weight * ptr->r;
+ g += weight * ptr->g;
+ b += weight * ptr->b;
+ a += weight * ptr->a;
+
+ ptr = buf[y_lr + 1] + x_lr;
+
+ weight = (line_subpixel_size - x) * y;
+ r += weight * ptr->r;
+ g += weight * ptr->g;
+ b += weight * ptr->b;
+ a += weight * ptr->a;
+
+ ++ptr;
+
+ weight = x * y;
+ r += weight * ptr->r;
+ g += weight * ptr->g;
+ b += weight * ptr->b;
+ a += weight * ptr->a;
+
+ p->r = (value_type)(r >> line_subpixel_shift * 2);
+ p->g = (value_type)(g >> line_subpixel_shift * 2);
+ p->b = (value_type)(b >> line_subpixel_shift * 2);
+ p->a = (value_type)(a >> line_subpixel_shift * 2);
+ }
+ };
+
+ typedef pattern_filter_bilinear_rgba<rgba8> pattern_filter_bilinear_rgba8;
+ typedef pattern_filter_bilinear_rgba<rgba16> pattern_filter_bilinear_rgba16;
+}
+
+#endif
diff --git a/agg/inc/agg_pixfmt_amask_adaptor.h b/agg/inc/agg_pixfmt_amask_adaptor.h
new file mode 100755
index 000000000000..7f3d5899b1c6
--- /dev/null
+++ b/agg/inc/agg_pixfmt_amask_adaptor.h
@@ -0,0 +1,265 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_PIXFMT_AMASK_ADAPTOR_INCLUDED
+#define AGG_PIXFMT_AMASK_ADAPTOR_INCLUDED
+
+
+#include <string.h>
+#include "agg_rendering_buffer.h"
+
+
+namespace agg
+{
+ //==================================================pixfmt_amask_adaptor
+ template<class PixFmt, class AlphaMask> class pixfmt_amask_adaptor
+ {
+ public:
+ typedef PixFmt pixfmt_type;
+ typedef typename pixfmt_type::color_type color_type;
+ typedef AlphaMask amask_type;
+ typedef typename amask_type::cover_type cover_type;
+
+ private:
+ enum { span_extra_tail = 256 };
+
+ void realloc_span(unsigned len)
+ {
+ if(len > m_max_len)
+ {
+ delete [] m_span;
+ m_span = new cover_type[m_max_len = len + span_extra_tail];
+ }
+ }
+
+ void init_span(unsigned len)
+ {
+ realloc_span(len);
+
+ // ATTN! May work incorrectly if cover_type is more that one byte
+ memset(m_span, amask_type::cover_full, len * sizeof(cover_type));
+ }
+
+ void init_span(unsigned len, const cover_type* covers)
+ {
+ realloc_span(len);
+ memcpy(m_span, covers, len * sizeof(cover_type));
+ }
+
+
+ public:
+ ~pixfmt_amask_adaptor() { delete [] m_span; }
+
+ pixfmt_amask_adaptor(pixfmt_type& pixf, const amask_type& mask) :
+ m_pixf(&pixf), m_mask(&mask), m_span(0), m_max_len(0)
+ {}
+
+ void attach_pixfmt(pixfmt_type& pixf) { m_pixf = &pixf; }
+ void attach_alpha_mask(const amask_type& mask) { m_mask = &mask; }
+
+ //--------------------------------------------------------------------
+ unsigned width() const { return m_pixf->width(); }
+ unsigned height() const { return m_pixf->height(); }
+
+ //--------------------------------------------------------------------
+ color_type pixel(int x, int y)
+ {
+ return m_pixf->pixel(x, y);
+ }
+
+ //--------------------------------------------------------------------
+ void copy_pixel(int x, int y, const color_type& c)
+ {
+ m_pixf->blend_pixel(x, y, c, m_mask->pixel(x, y));
+ }
+
+ //--------------------------------------------------------------------
+ void blend_pixel(int x, int y, const color_type& c, cover_type cover)
+ {
+ m_pixf->blend_pixel(x, y, c, m_mask->combine_pixel(x, y, cover));
+ }
+
+ //--------------------------------------------------------------------
+ void copy_hline(int x, int y,
+ unsigned len,
+ const color_type& c)
+ {
+ realloc_span(len);
+ m_mask->fill_hspan(x, y, m_span, len);
+ m_pixf->blend_solid_hspan(x, y, len, c, m_span);
+ }
+
+ //--------------------------------------------------------------------
+ void blend_hline(int x, int y,
+ unsigned len,
+ const color_type& c,
+ cover_type cover)
+ {
+ init_span(len);
+ m_mask->combine_hspan(x, y, m_span, len);
+ m_pixf->blend_solid_hspan(x, y, len, c, m_span);
+ }
+
+ //--------------------------------------------------------------------
+ void copy_vline(int x, int y,
+ unsigned len,
+ const color_type& c)
+ {
+ realloc_span(len);
+ m_mask->fill_vspan(x, y, m_span, len);
+ m_pixf->blend_solid_vspan(x, y, len, c, m_span);
+ }
+
+ //--------------------------------------------------------------------
+ void blend_vline(int x, int y,
+ unsigned len,
+ const color_type& c,
+ cover_type cover)
+ {
+ init_span(len);
+ m_mask->combine_vspan(x, y, m_span, len);
+ m_pixf->blend_solid_vspan(x, y, len, c, m_span);
+ }
+
+ //--------------------------------------------------------------------
+ void copy_from(const rendering_buffer& from,
+ int xdst, int ydst,
+ int xsrc, int ysrc,
+ unsigned len)
+ {
+ m_pixf->copy_from(from, xdst, ydst, xsrc, ysrc, len);
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_solid_hspan(int x, int y,
+ unsigned len,
+ const color_type& c,
+ const cover_type* covers)
+ {
+ init_span(len, covers);
+ m_mask->combine_hspan(x, y, m_span, len);
+ m_pixf->blend_solid_hspan(x, y, len, c, m_span);
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_solid_vspan(int x, int y,
+ unsigned len,
+ const color_type& c,
+ const cover_type* covers)
+ {
+ init_span(len, covers);
+ m_mask->combine_vspan(x, y, m_span, len);
+ m_pixf->blend_solid_vspan(x, y, len, c, m_span);
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_color_hspan(int x, int y,
+ unsigned len,
+ const color_type* colors,
+ const cover_type* covers,
+ cover_type cover = cover_full)
+ {
+ if(covers)
+ {
+ init_span(len, covers);
+ m_mask->combine_hspan(x, y, m_span, len);
+ }
+ else
+ {
+ realloc_span(len);
+ m_mask->fill_hspan(x, y, m_span, len);
+ }
+ m_pixf->blend_color_hspan(x, y, len, colors, m_span, cover);
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_color_vspan(int x, int y,
+ unsigned len,
+ const color_type* colors,
+ const cover_type* covers,
+ cover_type cover = cover_full)
+ {
+ if(covers)
+ {
+ init_span(len, covers);
+ m_mask->combine_vspan(x, y, m_span, len);
+ }
+ else
+ {
+ realloc_span(len);
+ m_mask->fill_vspan(x, y, m_span, len);
+ }
+ m_pixf->blend_color_vspan(x, y, len, colors, m_span, cover);
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_opaque_color_hspan(int x, int y,
+ unsigned len,
+ const color_type* colors,
+ const cover_type* covers,
+ cover_type cover = cover_full)
+ {
+ if(covers)
+ {
+ init_span(len, covers);
+ m_mask->combine_hspan(x, y, m_span, len);
+ }
+ else
+ {
+ realloc_span(len);
+ m_mask->fill_hspan(x, y, m_span, len);
+ }
+ m_pixf->blend_opaque_color_hspan(x, y, len, colors, m_span, cover);
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_opaque_color_vspan(int x, int y,
+ unsigned len,
+ const color_type* colors,
+ const cover_type* covers,
+ cover_type cover = cover_full)
+ {
+ if(covers)
+ {
+ init_span(len, covers);
+ m_mask->combine_vspan(x, y, m_span, len);
+ }
+ else
+ {
+ realloc_span(len);
+ m_mask->fill_vspan(x, y, m_span, len);
+ }
+ m_pixf->blend_opaque_color_vspan(x, y, len, colors, m_span, cover);
+ }
+
+
+ private:
+ pixfmt_type* m_pixf;
+ const amask_type* m_mask;
+
+ cover_type* m_span;
+ unsigned m_max_len;
+ };
+
+}
+
+#endif
+
diff --git a/agg/inc/agg_pixfmt_gray.h b/agg/inc/agg_pixfmt_gray.h
new file mode 100755
index 000000000000..48f47d1de32e
--- /dev/null
+++ b/agg/inc/agg_pixfmt_gray.h
@@ -0,0 +1,703 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Adaptation for high precision colors has been sponsored by
+// Liberty Technology Systems, Inc., visit http://lib-sys.com
+//
+// Liberty Technology Systems, Inc. is the provider of
+// PostScript and PDF technology for software developers.
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_PIXFMT_GRAY_INCLUDED
+#define AGG_PIXFMT_GRAY_INCLUDED
+
+#include <string.h>
+#include "agg_basics.h"
+#include "agg_color_gray.h"
+#include "agg_rendering_buffer.h"
+
+namespace agg
+{
+
+ //============================================================blender_gray
+ template<class ColorT> struct blender_gray
+ {
+ typedef ColorT color_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum { base_shift = color_type::base_shift };
+
+ static AGG_INLINE void blend_pix(value_type* p, unsigned cv,
+ unsigned alpha, unsigned)
+ {
+ *p = (value_type)((((cv - calc_type(*p)) * alpha) + (calc_type(*p) << base_shift)) >> base_shift);
+ }
+ };
+
+
+ //======================================================blender_gray_pre
+ template<class ColorT> struct blender_gray_pre
+ {
+ typedef ColorT color_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum { base_shift = color_type::base_shift };
+
+ static AGG_INLINE void blend_pix(value_type* p, unsigned cv,
+ unsigned alpha, unsigned cover)
+ {
+ alpha = color_type::base_mask - alpha;
+ cover = (cover + 1) << (base_shift - 8);
+ *p = (value_type)((*p * alpha + cv * cover) >> base_shift);
+ }
+ };
+
+
+
+ //=====================================================apply_gamma_dir_gray
+ template<class ColorT, class GammaLut> class apply_gamma_dir_gray
+ {
+ public:
+ typedef typename ColorT::value_type value_type;
+
+ apply_gamma_dir_gray(const GammaLut& gamma) : m_gamma(gamma) {}
+
+ AGG_INLINE void operator () (value_type* p)
+ {
+ *p = m_gamma.dir(*p);
+ }
+
+ private:
+ const GammaLut& m_gamma;
+ };
+
+
+
+ //=====================================================apply_gamma_inv_gray
+ template<class ColorT, class GammaLut> class apply_gamma_inv_gray
+ {
+ public:
+ typedef typename ColorT::value_type value_type;
+
+ apply_gamma_inv_gray(const GammaLut& gamma) : m_gamma(gamma) {}
+
+ AGG_INLINE void operator () (value_type* p)
+ {
+ *p = m_gamma.inv(*p);
+ }
+
+ private:
+ const GammaLut& m_gamma;
+ };
+
+
+
+ //======================================================pixel_formats_gray
+ template<class Blender, unsigned Step=1, unsigned Offset=0>
+ class pixel_formats_gray
+ {
+ public:
+ typedef rendering_buffer::row_data row_data;
+ typedef typename Blender::color_type color_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_size = color_type::base_size,
+ base_mask = color_type::base_mask
+ };
+
+ private:
+ //--------------------------------------------------------------------
+ static AGG_INLINE void copy_or_blend_pix(value_type* p,
+ const color_type& c,
+ unsigned cover)
+ {
+ if (c.a)
+ {
+ calc_type alpha = (calc_type(c.a) * (cover + 1)) >> 8;
+ if(alpha == base_mask)
+ {
+ *p = c.v;
+ }
+ else
+ {
+ Blender::blend_pix(p, c.v, alpha, cover);
+ }
+ }
+ }
+
+ //--------------------------------------------------------------------
+ static AGG_INLINE void copy_or_blend_opaque_pix(value_type* p,
+ const color_type& c,
+ unsigned cover)
+ {
+ if(cover == 255)
+ {
+ *p = c.v;
+ }
+ else
+ {
+ Blender::blend_pix(p, c.v, (cover + 1) << (base_shift - 8), cover);
+ }
+ }
+
+ public:
+ //--------------------------------------------------------------------
+ pixel_formats_gray(rendering_buffer& rb) :
+ m_rbuf(&rb)
+ {}
+
+
+ //--------------------------------------------------------------------
+ AGG_INLINE unsigned width() const { return m_rbuf->width(); }
+ AGG_INLINE unsigned height() const { return m_rbuf->height(); }
+
+ //--------------------------------------------------------------------
+ AGG_INLINE color_type pixel(int x, int y) const
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + x * Step + Offset;
+ return color_type(*p);
+ }
+
+ //--------------------------------------------------------------------
+ row_data span(int x, int y) const
+ {
+ return row_data(x,
+ width() - 1,
+ m_rbuf->row(y) +
+ x * Step * sizeof(value_type) +
+ Offset * sizeof(value_type));
+ }
+
+ //--------------------------------------------------------------------
+ AGG_INLINE void copy_pixel(int x, int y, const color_type& c)
+ {
+ *((value_type*)m_rbuf->row(y) + x * Step + Offset) = c.v;
+ }
+
+ //--------------------------------------------------------------------
+ AGG_INLINE void blend_pixel(int x, int y, const color_type& c, int8u cover)
+ {
+ copy_or_blend_pix((value_type*)m_rbuf->row(y) + x * Step + Offset, c, cover);
+ }
+
+
+ //--------------------------------------------------------------------
+ AGG_INLINE void copy_hline(int x, int y,
+ unsigned len,
+ const color_type& c)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + x * Step + Offset;
+ do
+ {
+ *p = c.v;
+ p += Step;
+ }
+ while(--len);
+ }
+
+
+ //--------------------------------------------------------------------
+ AGG_INLINE void copy_vline(int x, int y,
+ unsigned len,
+ const color_type& c)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + x * Step + Offset;
+ do
+ {
+ *p = c.v;
+ p = (value_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_hline(int x, int y,
+ unsigned len,
+ const color_type& c,
+ int8u cover)
+ {
+ if (c.a)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + x * Step + Offset;
+ calc_type alpha = (calc_type(c.a) * (cover + 1)) >> 8;
+ if(alpha == base_mask)
+ {
+ do
+ {
+ *p = c.v;
+ p += Step;
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ Blender::blend_pix(p, c.v, alpha, cover);
+ p += Step;
+ }
+ while(--len);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_vline(int x, int y,
+ unsigned len,
+ const color_type& c,
+ int8u cover)
+ {
+ if (c.a)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + x * Step + Offset;
+ calc_type alpha = (calc_type(c.a) * (cover + 1)) >> 8;
+ if(alpha == base_mask)
+ {
+ do
+ {
+ *p = c.v;
+ p = (value_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ Blender::blend_pix(p, c.v, alpha, cover);
+ p = (value_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_solid_hspan(int x, int y,
+ unsigned len,
+ const color_type& c,
+ const int8u* covers)
+ {
+ if (c.a)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + x * Step + Offset;
+ do
+ {
+ calc_type alpha = (calc_type(c.a) * (calc_type(*covers) + 1)) >> 8;
+ if(alpha == base_mask)
+ {
+ *p = c.v;
+ }
+ else
+ {
+ Blender::blend_pix(p, c.v, alpha, *covers);
+ }
+ p += Step;
+ ++covers;
+ }
+ while(--len);
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_solid_vspan(int x, int y,
+ unsigned len,
+ const color_type& c,
+ const int8u* covers)
+ {
+ if (c.a)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + x * Step + Offset;
+ do
+ {
+ calc_type alpha = (calc_type(c.a) * (calc_type(*covers) + 1)) >> 8;
+ if(alpha == base_mask)
+ {
+ *p = c.v;
+ }
+ else
+ {
+ Blender::blend_pix(p, c.v, alpha, *covers);
+ }
+ p = (value_type*)m_rbuf->next_row(p);
+ ++covers;
+ }
+ while(--len);
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_color_hspan(int x, int y,
+ unsigned len,
+ const color_type* colors,
+ const int8u* covers,
+ int8u cover)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + x * Step + Offset;
+ if(covers)
+ {
+ do
+ {
+ copy_or_blend_pix(p, *colors++, *covers++);
+ p += Step;
+ }
+ while(--len);
+ }
+ else
+ {
+ if(cover == 255)
+ {
+ do
+ {
+ if(colors->a == base_mask)
+ {
+ *p = colors->v;
+ }
+ else
+ {
+ copy_or_blend_pix(p, *colors, 255);
+ }
+ p += Step;
+ ++colors;
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ copy_or_blend_pix(p, *colors++, cover);
+ p += Step;
+ }
+ while(--len);
+ }
+ }
+ }
+
+
+
+ //--------------------------------------------------------------------
+ void blend_color_vspan(int x, int y,
+ unsigned len,
+ const color_type* colors,
+ const int8u* covers,
+ int8u cover)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + x * Step + Offset;
+ if(covers)
+ {
+ do
+ {
+ copy_or_blend_pix(p, *colors++, *covers++);
+ p = (value_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+ else
+ {
+ if(cover == 255)
+ {
+ do
+ {
+ if(colors->a == base_mask)
+ {
+ *p = colors->v;
+ }
+ else
+ {
+ copy_or_blend_pix(p, *colors, 255);
+ }
+ p = (value_type*)m_rbuf->next_row(p);
+ ++colors;
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ copy_or_blend_pix(p, *colors++, cover);
+ p = (value_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+ }
+ }
+
+ //--------------------------------------------------------------------
+ void blend_opaque_color_hspan(int x, int y,
+ unsigned len,
+ const color_type* colors,
+ const int8u* covers,
+ int8u cover)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + x * Step + Offset;
+ if(covers)
+ {
+ do
+ {
+ copy_or_blend_opaque_pix(p, *colors++, *covers++);
+ p += Step;
+ }
+ while(--len);
+ }
+ else
+ {
+ if(cover == 255)
+ {
+ do
+ {
+ *p = colors->v;
+ p += Step;
+ ++colors;
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ copy_or_blend_opaque_pix(p, *colors++, cover);
+ p += Step;
+ }
+ while(--len);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_opaque_color_vspan(int x, int y,
+ unsigned len,
+ const color_type* colors,
+ const int8u* covers,
+ int8u cover)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + x * Step + Offset;
+ if(covers)
+ {
+ do
+ {
+ copy_or_blend_opaque_pix(p, *colors++, *covers++);
+ p = (value_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+ else
+ {
+ if(cover == 255)
+ {
+ do
+ {
+ *p = colors->v;
+ p = (value_type*)m_rbuf->next_row(p);
+ ++colors;
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ copy_or_blend_opaque_pix(p, *colors++, cover);
+ p = (value_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+ }
+ }
+
+ //--------------------------------------------------------------------
+ template<class Function> void for_each_pixel(Function f)
+ {
+ unsigned y;
+ for(y = 0; y < height(); ++y)
+ {
+ unsigned len = width();
+ value_type* p = (value_type*)m_rbuf->row(y) + Offset;
+ do
+ {
+ f(p);
+ p += Step;
+ }
+ while(--len);
+ }
+ }
+
+ //--------------------------------------------------------------------
+ template<class GammaLut> void apply_gamma_dir(const GammaLut& g)
+ {
+ for_each_pixel(apply_gamma_dir_gray<color_type, GammaLut>(g));
+ }
+
+ //--------------------------------------------------------------------
+ template<class GammaLut> void apply_gamma_inv(const GammaLut& g)
+ {
+ for_each_pixel(apply_gamma_inv_gray<color_type, GammaLut>(g));
+ }
+
+ //--------------------------------------------------------------------
+ void copy_from(const rendering_buffer& from,
+ int xdst, int ydst,
+ int xsrc, int ysrc,
+ unsigned len)
+ {
+ memmove((value_type*)m_rbuf->row(ydst) + xdst,
+ (value_type*)from.row(ysrc) + xsrc,
+ sizeof(value_type) * len);
+ }
+
+ private:
+ rendering_buffer* m_rbuf;
+ };
+
+ typedef blender_gray<gray8> blender_gray8;
+ typedef blender_gray_pre<gray8> blender_gray8_pre;
+ typedef blender_gray<gray16> blender_gray16;
+ typedef blender_gray_pre<gray16> blender_gray16_pre;
+
+ typedef pixel_formats_gray<blender_gray8, 1, 0> pixfmt_gray8; //----pixfmt_gray8
+
+ typedef pixel_formats_gray<blender_gray8, 3, 0> pixfmt_gray8_rgb24r; //----pixfmt_gray8_rgb24r
+ typedef pixel_formats_gray<blender_gray8, 3, 1> pixfmt_gray8_rgb24g; //----pixfmt_gray8_rgb24g
+ typedef pixel_formats_gray<blender_gray8, 3, 2> pixfmt_gray8_rgb24b; //----pixfmt_gray8_rgb24b
+
+ typedef pixel_formats_gray<blender_gray8, 3, 2> pixfmt_gray8_bgr24r; //----pixfmt_gray8_bgr24r
+ typedef pixel_formats_gray<blender_gray8, 3, 1> pixfmt_gray8_bgr24g; //----pixfmt_gray8_bgr24g
+ typedef pixel_formats_gray<blender_gray8, 3, 0> pixfmt_gray8_bgr24b; //----pixfmt_gray8_bgr24b
+
+ typedef pixel_formats_gray<blender_gray8, 4, 0> pixfmt_gray8_rgba32r; //----pixfmt_gray8_rgba32r
+ typedef pixel_formats_gray<blender_gray8, 4, 1> pixfmt_gray8_rgba32g; //----pixfmt_gray8_rgba32g
+ typedef pixel_formats_gray<blender_gray8, 4, 2> pixfmt_gray8_rgba32b; //----pixfmt_gray8_rgba32b
+ typedef pixel_formats_gray<blender_gray8, 4, 3> pixfmt_gray8_rgba32a; //----pixfmt_gray8_rgba32a
+
+ typedef pixel_formats_gray<blender_gray8, 4, 1> pixfmt_gray8_argb32r; //----pixfmt_gray8_argb32r
+ typedef pixel_formats_gray<blender_gray8, 4, 2> pixfmt_gray8_argb32g; //----pixfmt_gray8_argb32g
+ typedef pixel_formats_gray<blender_gray8, 4, 3> pixfmt_gray8_argb32b; //----pixfmt_gray8_argb32b
+ typedef pixel_formats_gray<blender_gray8, 4, 0> pixfmt_gray8_argb32a; //----pixfmt_gray8_argb32a
+
+ typedef pixel_formats_gray<blender_gray8, 4, 2> pixfmt_gray8_bgra32r; //----pixfmt_gray8_bgra32r
+ typedef pixel_formats_gray<blender_gray8, 4, 1> pixfmt_gray8_bgra32g; //----pixfmt_gray8_bgra32g
+ typedef pixel_formats_gray<blender_gray8, 4, 0> pixfmt_gray8_bgra32b; //----pixfmt_gray8_bgra32b
+ typedef pixel_formats_gray<blender_gray8, 4, 3> pixfmt_gray8_bgra32a; //----pixfmt_gray8_bgra32a
+
+ typedef pixel_formats_gray<blender_gray8, 4, 3> pixfmt_gray8_abgr32r; //----pixfmt_gray8_abgr32r
+ typedef pixel_formats_gray<blender_gray8, 4, 2> pixfmt_gray8_abgr32g; //----pixfmt_gray8_abgr32g
+ typedef pixel_formats_gray<blender_gray8, 4, 1> pixfmt_gray8_abgr32b; //----pixfmt_gray8_abgr32b
+ typedef pixel_formats_gray<blender_gray8, 4, 0> pixfmt_gray8_abgr32a; //----pixfmt_gray8_abgr32a
+
+ typedef pixel_formats_gray<blender_gray8_pre, 1, 0> pixfmt_gray8_pre; //----pixfmt_gray8_pre
+
+ typedef pixel_formats_gray<blender_gray8_pre, 3, 0> pixfmt_gray8_pre_rgb24r; //----pixfmt_gray8_pre_rgb24r
+ typedef pixel_formats_gray<blender_gray8_pre, 3, 1> pixfmt_gray8_pre_rgb24g; //----pixfmt_gray8_pre_rgb24g
+ typedef pixel_formats_gray<blender_gray8_pre, 3, 2> pixfmt_gray8_pre_rgb24b; //----pixfmt_gray8_pre_rgb24b
+
+ typedef pixel_formats_gray<blender_gray8_pre, 3, 2> pixfmt_gray8_pre_bgr24r; //----pixfmt_gray8_pre_bgr24r
+ typedef pixel_formats_gray<blender_gray8_pre, 3, 1> pixfmt_gray8_pre_bgr24g; //----pixfmt_gray8_pre_bgr24g
+ typedef pixel_formats_gray<blender_gray8_pre, 3, 0> pixfmt_gray8_pre_bgr24b; //----pixfmt_gray8_pre_bgr24b
+
+ typedef pixel_formats_gray<blender_gray8_pre, 4, 0> pixfmt_gray8_pre_rgba32r; //----pixfmt_gray8_pre_rgba32r
+ typedef pixel_formats_gray<blender_gray8_pre, 4, 1> pixfmt_gray8_pre_rgba32g; //----pixfmt_gray8_pre_rgba32g
+ typedef pixel_formats_gray<blender_gray8_pre, 4, 2> pixfmt_gray8_pre_rgba32b; //----pixfmt_gray8_pre_rgba32b
+ typedef pixel_formats_gray<blender_gray8_pre, 4, 3> pixfmt_gray8_pre_rgba32a; //----pixfmt_gray8_pre_rgba32a
+
+ typedef pixel_formats_gray<blender_gray8_pre, 4, 1> pixfmt_gray8_pre_argb32r; //----pixfmt_gray8_pre_argb32r
+ typedef pixel_formats_gray<blender_gray8_pre, 4, 2> pixfmt_gray8_pre_argb32g; //----pixfmt_gray8_pre_argb32g
+ typedef pixel_formats_gray<blender_gray8_pre, 4, 3> pixfmt_gray8_pre_argb32b; //----pixfmt_gray8_pre_argb32b
+ typedef pixel_formats_gray<blender_gray8_pre, 4, 0> pixfmt_gray8_pre_argb32a; //----pixfmt_gray8_pre_argb32a
+
+ typedef pixel_formats_gray<blender_gray8_pre, 4, 2> pixfmt_gray8_pre_bgra32r; //----pixfmt_gray8_pre_bgra32r
+ typedef pixel_formats_gray<blender_gray8_pre, 4, 1> pixfmt_gray8_pre_bgra32g; //----pixfmt_gray8_pre_bgra32g
+ typedef pixel_formats_gray<blender_gray8_pre, 4, 0> pixfmt_gray8_pre_bgra32b; //----pixfmt_gray8_pre_bgra32b
+ typedef pixel_formats_gray<blender_gray8_pre, 4, 3> pixfmt_gray8_pre_bgra32a; //----pixfmt_gray8_pre_bgra32a
+
+ typedef pixel_formats_gray<blender_gray8_pre, 4, 3> pixfmt_gray8_pre_abgr32r; //----pixfmt_gray8_pre_abgr32r
+ typedef pixel_formats_gray<blender_gray8_pre, 4, 2> pixfmt_gray8_pre_abgr32g; //----pixfmt_gray8_pre_abgr32g
+ typedef pixel_formats_gray<blender_gray8_pre, 4, 1> pixfmt_gray8_pre_abgr32b; //----pixfmt_gray8_pre_abgr32b
+ typedef pixel_formats_gray<blender_gray8_pre, 4, 0> pixfmt_gray8_pre_abgr32a; //----pixfmt_gray8_pre_abgr32a
+
+ typedef pixel_formats_gray<blender_gray16, 1, 0> pixfmt_gray16; //----pixfmt_gray16
+
+ typedef pixel_formats_gray<blender_gray16, 3, 0> pixfmt_gray16_rgb48r; //----pixfmt_gray16_rgb48r
+ typedef pixel_formats_gray<blender_gray16, 3, 1> pixfmt_gray16_rgb48g; //----pixfmt_gray16_rgb48g
+ typedef pixel_formats_gray<blender_gray16, 3, 2> pixfmt_gray16_rgb48b; //----pixfmt_gray16_rgb48b
+
+ typedef pixel_formats_gray<blender_gray16, 3, 2> pixfmt_gray16_bgr48r; //----pixfmt_gray16_bgr48r
+ typedef pixel_formats_gray<blender_gray16, 3, 1> pixfmt_gray16_bgr48g; //----pixfmt_gray16_bgr48g
+ typedef pixel_formats_gray<blender_gray16, 3, 0> pixfmt_gray16_bgr48b; //----pixfmt_gray16_bgr48b
+
+ typedef pixel_formats_gray<blender_gray16, 4, 0> pixfmt_gray16_rgba64r; //----pixfmt_gray16_rgba64r
+ typedef pixel_formats_gray<blender_gray16, 4, 1> pixfmt_gray16_rgba64g; //----pixfmt_gray16_rgba64g
+ typedef pixel_formats_gray<blender_gray16, 4, 2> pixfmt_gray16_rgba64b; //----pixfmt_gray16_rgba64b
+ typedef pixel_formats_gray<blender_gray16, 4, 3> pixfmt_gray16_rgba64a; //----pixfmt_gray16_rgba64a
+
+ typedef pixel_formats_gray<blender_gray16, 4, 1> pixfmt_gray16_argb64r; //----pixfmt_gray16_argb64r
+ typedef pixel_formats_gray<blender_gray16, 4, 2> pixfmt_gray16_argb64g; //----pixfmt_gray16_argb64g
+ typedef pixel_formats_gray<blender_gray16, 4, 3> pixfmt_gray16_argb64b; //----pixfmt_gray16_argb64b
+ typedef pixel_formats_gray<blender_gray16, 4, 0> pixfmt_gray16_argb64a; //----pixfmt_gray16_argb64a
+
+ typedef pixel_formats_gray<blender_gray16, 4, 2> pixfmt_gray16_bgra64r; //----pixfmt_gray16_bgra64r
+ typedef pixel_formats_gray<blender_gray16, 4, 1> pixfmt_gray16_bgra64g; //----pixfmt_gray16_bgra64g
+ typedef pixel_formats_gray<blender_gray16, 4, 0> pixfmt_gray16_bgra64b; //----pixfmt_gray16_bgra64b
+ typedef pixel_formats_gray<blender_gray16, 4, 3> pixfmt_gray16_bgra64a; //----pixfmt_gray16_bgra64a
+
+ typedef pixel_formats_gray<blender_gray16, 4, 3> pixfmt_gray16_abgr64r; //----pixfmt_gray16_abgr64r
+ typedef pixel_formats_gray<blender_gray16, 4, 2> pixfmt_gray16_abgr64g; //----pixfmt_gray16_abgr64g
+ typedef pixel_formats_gray<blender_gray16, 4, 1> pixfmt_gray16_abgr64b; //----pixfmt_gray16_abgr64b
+ typedef pixel_formats_gray<blender_gray16, 4, 0> pixfmt_gray16_abgr64a; //----pixfmt_gray16_abgr64a
+
+ typedef pixel_formats_gray<blender_gray16_pre, 1, 0> pixfmt_gray16_pre; //----pixfmt_gray16_pre
+
+ typedef pixel_formats_gray<blender_gray16_pre, 3, 0> pixfmt_gray16_pre_rgb48r; //----pixfmt_gray16_pre_rgb48r
+ typedef pixel_formats_gray<blender_gray16_pre, 3, 1> pixfmt_gray16_pre_rgb48g; //----pixfmt_gray16_pre_rgb48g
+ typedef pixel_formats_gray<blender_gray16_pre, 3, 2> pixfmt_gray16_pre_rgb48b; //----pixfmt_gray16_pre_rgb48b
+
+ typedef pixel_formats_gray<blender_gray16_pre, 3, 2> pixfmt_gray16_pre_bgr48r; //----pixfmt_gray16_pre_bgr48r
+ typedef pixel_formats_gray<blender_gray16_pre, 3, 1> pixfmt_gray16_pre_bgr48g; //----pixfmt_gray16_pre_bgr48g
+ typedef pixel_formats_gray<blender_gray16_pre, 3, 0> pixfmt_gray16_pre_bgr48b; //----pixfmt_gray16_pre_bgr48b
+
+ typedef pixel_formats_gray<blender_gray16_pre, 4, 0> pixfmt_gray16_pre_rgba64r; //----pixfmt_gray16_pre_rgba64r
+ typedef pixel_formats_gray<blender_gray16_pre, 4, 1> pixfmt_gray16_pre_rgba64g; //----pixfmt_gray16_pre_rgba64g
+ typedef pixel_formats_gray<blender_gray16_pre, 4, 2> pixfmt_gray16_pre_rgba64b; //----pixfmt_gray16_pre_rgba64b
+ typedef pixel_formats_gray<blender_gray16_pre, 4, 3> pixfmt_gray16_pre_rgba64a; //----pixfmt_gray16_pre_rgba64a
+
+ typedef pixel_formats_gray<blender_gray16_pre, 4, 1> pixfmt_gray16_pre_argb64r; //----pixfmt_gray16_pre_argb64r
+ typedef pixel_formats_gray<blender_gray16_pre, 4, 2> pixfmt_gray16_pre_argb64g; //----pixfmt_gray16_pre_argb64g
+ typedef pixel_formats_gray<blender_gray16_pre, 4, 3> pixfmt_gray16_pre_argb64b; //----pixfmt_gray16_pre_argb64b
+ typedef pixel_formats_gray<blender_gray16_pre, 4, 0> pixfmt_gray16_pre_argb64a; //----pixfmt_gray16_pre_argb64a
+
+ typedef pixel_formats_gray<blender_gray16_pre, 4, 2> pixfmt_gray16_pre_bgra64r; //----pixfmt_gray16_pre_bgra64r
+ typedef pixel_formats_gray<blender_gray16_pre, 4, 1> pixfmt_gray16_pre_bgra64g; //----pixfmt_gray16_pre_bgra64g
+ typedef pixel_formats_gray<blender_gray16_pre, 4, 0> pixfmt_gray16_pre_bgra64b; //----pixfmt_gray16_pre_bgra64b
+ typedef pixel_formats_gray<blender_gray16_pre, 4, 3> pixfmt_gray16_pre_bgra64a; //----pixfmt_gray16_pre_bgra64a
+
+ typedef pixel_formats_gray<blender_gray16_pre, 4, 3> pixfmt_gray16_pre_abgr64r; //----pixfmt_gray16_pre_abgr64r
+ typedef pixel_formats_gray<blender_gray16_pre, 4, 2> pixfmt_gray16_pre_abgr64g; //----pixfmt_gray16_pre_abgr64g
+ typedef pixel_formats_gray<blender_gray16_pre, 4, 1> pixfmt_gray16_pre_abgr64b; //----pixfmt_gray16_pre_abgr64b
+ typedef pixel_formats_gray<blender_gray16_pre, 4, 0> pixfmt_gray16_pre_abgr64a; //----pixfmt_gray16_pre_abgr64a
+
+}
+
+#endif
+
diff --git a/agg/inc/agg_pixfmt_rgb.h b/agg/inc/agg_pixfmt_rgb.h
new file mode 100755
index 000000000000..436dfa4b284f
--- /dev/null
+++ b/agg/inc/agg_pixfmt_rgb.h
@@ -0,0 +1,760 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Adaptation for high precision colors has been sponsored by
+// Liberty Technology Systems, Inc., visit http://lib-sys.com
+//
+// Liberty Technology Systems, Inc. is the provider of
+// PostScript and PDF technology for software developers.
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_PIXFMT_RGB_INCLUDED
+#define AGG_PIXFMT_RGB_INCLUDED
+
+#include <string.h>
+#include "agg_basics.h"
+#include "agg_color_rgba.h"
+#include "agg_rendering_buffer.h"
+
+namespace agg
+{
+
+ //=====================================================apply_gamma_dir_rgb
+ template<class ColorT, class Order, class GammaLut> class apply_gamma_dir_rgb
+ {
+ public:
+ typedef typename ColorT::value_type value_type;
+
+ apply_gamma_dir_rgb(const GammaLut& gamma) : m_gamma(gamma) {}
+
+ AGG_INLINE void operator () (value_type* p)
+ {
+ p[Order::R] = m_gamma.dir(p[Order::R]);
+ p[Order::G] = m_gamma.dir(p[Order::G]);
+ p[Order::B] = m_gamma.dir(p[Order::B]);
+ }
+
+ private:
+ const GammaLut& m_gamma;
+ };
+
+
+
+ //=====================================================apply_gamma_inv_rgb
+ template<class ColorT, class Order, class GammaLut> class apply_gamma_inv_rgb
+ {
+ public:
+ typedef typename ColorT::value_type value_type;
+
+ apply_gamma_inv_rgb(const GammaLut& gamma) : m_gamma(gamma) {}
+
+ AGG_INLINE void operator () (value_type* p)
+ {
+ p[Order::R] = m_gamma.inv(p[Order::R]);
+ p[Order::G] = m_gamma.inv(p[Order::G]);
+ p[Order::B] = m_gamma.inv(p[Order::B]);
+ }
+
+ private:
+ const GammaLut& m_gamma;
+ };
+
+
+ //=========================================================blender_rgb
+ template<class ColorT, class Order> struct blender_rgb
+ {
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum { base_shift = color_type::base_shift };
+
+ //--------------------------------------------------------------------
+ static AGG_INLINE void blend_pix(value_type* p,
+ unsigned cr, unsigned cg, unsigned cb,
+ unsigned alpha,
+ unsigned)
+ {
+ p[Order::R] += (value_type)(((cr - p[Order::R]) * alpha) >> base_shift);
+ p[Order::G] += (value_type)(((cg - p[Order::G]) * alpha) >> base_shift);
+ p[Order::B] += (value_type)(((cb - p[Order::B]) * alpha) >> base_shift);
+ }
+ };
+
+
+ //======================================================blender_rgb_pre
+ template<class ColorT, class Order> struct blender_rgb_pre
+ {
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum { base_shift = color_type::base_shift };
+
+ //--------------------------------------------------------------------
+ static AGG_INLINE void blend_pix(value_type* p,
+ unsigned cr, unsigned cg, unsigned cb,
+ unsigned alpha,
+ unsigned cover)
+ {
+ alpha = color_type::base_mask - alpha;
+ cover = (cover + 1) << (base_shift - 8);
+ p[Order::R] = (value_type)((p[Order::R] * alpha + cr * cover) >> base_shift);
+ p[Order::G] = (value_type)((p[Order::G] * alpha + cg * cover) >> base_shift);
+ p[Order::B] = (value_type)((p[Order::B] * alpha + cb * cover) >> base_shift);
+ }
+ };
+
+
+
+ //===================================================blender_rgb_gamma
+ template<class ColorT, class Order, class Gamma> class blender_rgb_gamma
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Gamma gamma_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum { base_shift = color_type::base_shift };
+
+ //--------------------------------------------------------------------
+ blender_rgb_gamma() : m_gamma(0) {}
+ void gamma(const gamma_type& g) { m_gamma = &g; }
+
+ //--------------------------------------------------------------------
+ AGG_INLINE void blend_pix(value_type* p,
+ unsigned cr, unsigned cg, unsigned cb,
+ unsigned alpha,
+ unsigned)
+ {
+ calc_type r = m_gamma->dir(p[Order::R]);
+ calc_type g = m_gamma->dir(p[Order::G]);
+ calc_type b = m_gamma->dir(p[Order::B]);
+ p[Order::R] = m_gamma->inv((((m_gamma->dir(cr) - r) * alpha) >> base_shift) + r);
+ p[Order::G] = m_gamma->inv((((m_gamma->dir(cg) - g) * alpha) >> base_shift) + g);
+ p[Order::B] = m_gamma->inv((((m_gamma->dir(cb) - b) * alpha) >> base_shift) + b);
+ }
+
+ private:
+ const gamma_type* m_gamma;
+ };
+
+
+
+
+ //==================================================pixel_formats_rgb
+ template<class Blender> class pixel_formats_rgb
+ {
+ public:
+ typedef rendering_buffer::row_data row_data;
+ typedef typename Blender::color_type color_type;
+ typedef typename Blender::order_type order_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_size = color_type::base_size,
+ base_mask = color_type::base_mask
+ };
+
+ private:
+ //--------------------------------------------------------------------
+ AGG_INLINE void copy_or_blend_pix(value_type* p,
+ const color_type& c,
+ unsigned cover)
+ {
+ if (c.a)
+ {
+ calc_type alpha = (calc_type(c.a) * (cover + 1)) >> 8;
+ if(alpha == base_mask)
+ {
+ p[order_type::R] = c.r;
+ p[order_type::G] = c.g;
+ p[order_type::B] = c.b;
+ }
+ else
+ {
+ m_blender.blend_pix(p, c.r, c.g, c.b, alpha, cover);
+ }
+ }
+ }
+
+ //--------------------------------------------------------------------
+ AGG_INLINE void copy_or_blend_opaque_pix(value_type* p,
+ const color_type& c,
+ unsigned cover)
+ {
+ if(cover == 255)
+ {
+ p[order_type::R] = c.r;
+ p[order_type::G] = c.g;
+ p[order_type::B] = c.b;
+ }
+ else
+ {
+ m_blender.blend_pix(p, c.r, c.g, c.b, (cover + 1) << (base_shift - 8), cover);
+ }
+ }
+
+
+ public:
+ //--------------------------------------------------------------------
+ pixel_formats_rgb(rendering_buffer& rb) :
+ m_rbuf(&rb)
+ {}
+
+ //--------------------------------------------------------------------
+ Blender& blender() { return m_blender; }
+
+ //--------------------------------------------------------------------
+ AGG_INLINE unsigned width() const { return m_rbuf->width(); }
+ AGG_INLINE unsigned height() const { return m_rbuf->height(); }
+
+ //--------------------------------------------------------------------
+ AGG_INLINE color_type pixel(int x, int y) const
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + x + x + x;
+ return color_type(p[order_type::R],
+ p[order_type::G],
+ p[order_type::B]);
+ }
+
+ //--------------------------------------------------------------------
+ row_data span(int x, int y) const
+ {
+ return row_data(x,
+ width() - 1,
+ m_rbuf->row(y) + x * 3 * sizeof(value_type));
+ }
+
+ //--------------------------------------------------------------------
+ AGG_INLINE void copy_pixel(int x, int y, const color_type& c)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + x + x + x;
+ p[order_type::R] = c.r;
+ p[order_type::G] = c.g;
+ p[order_type::B] = c.b;
+ }
+
+ //--------------------------------------------------------------------
+ AGG_INLINE void blend_pixel(int x, int y, const color_type& c, int8u cover)
+ {
+ copy_or_blend_pix((value_type*)m_rbuf->row(y) + x + x + x, c, cover);
+ }
+
+
+ //--------------------------------------------------------------------
+ AGG_INLINE void copy_hline(int x, int y,
+ unsigned len,
+ const color_type& c)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + x + x + x;
+ do
+ {
+ p[order_type::R] = c.r;
+ p[order_type::G] = c.g;
+ p[order_type::B] = c.b;
+ p += 3;
+ }
+ while(--len);
+ }
+
+
+ //--------------------------------------------------------------------
+ AGG_INLINE void copy_vline(int x, int y,
+ unsigned len,
+ const color_type& c)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + x + x + x;
+ do
+ {
+ p[order_type::R] = c.r;
+ p[order_type::G] = c.g;
+ p[order_type::B] = c.b;
+ p = (value_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_hline(int x, int y,
+ unsigned len,
+ const color_type& c,
+ int8u cover)
+ {
+ if (c.a)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + x + x + x;
+ calc_type alpha = (calc_type(c.a) * (calc_type(cover) + 1)) >> 8;
+ if(alpha == base_mask)
+ {
+ do
+ {
+ p[order_type::R] = c.r;
+ p[order_type::G] = c.g;
+ p[order_type::B] = c.b;
+ p += 3;
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ m_blender.blend_pix(p, c.r, c.g, c.b, alpha, cover);
+ p += 3;
+ }
+ while(--len);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_vline(int x, int y,
+ unsigned len,
+ const color_type& c,
+ int8u cover)
+ {
+ if (c.a)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + x + x + x;
+ calc_type alpha = (calc_type(c.a) * (cover + 1)) >> 8;
+ if(alpha == base_mask)
+ {
+ do
+ {
+ p[order_type::R] = c.r;
+ p[order_type::G] = c.g;
+ p[order_type::B] = c.b;
+ p = (value_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ m_blender.blend_pix(p, c.r, c.g, c.b, alpha, cover);
+ p = (value_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_solid_hspan(int x, int y,
+ unsigned len,
+ const color_type& c,
+ const int8u* covers)
+ {
+ if (c.a)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + x + x + x;
+ do
+ {
+ calc_type alpha = (calc_type(c.a) * (calc_type(*covers) + 1)) >> 8;
+ if(alpha == base_mask)
+ {
+ p[order_type::R] = c.r;
+ p[order_type::G] = c.g;
+ p[order_type::B] = c.b;
+ }
+ else
+ {
+ m_blender.blend_pix(p, c.r, c.g, c.b, alpha, *covers);
+ }
+ p += 3;
+ ++covers;
+ }
+ while(--len);
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_solid_vspan(int x, int y,
+ unsigned len,
+ const color_type& c,
+ const int8u* covers)
+ {
+ if (c.a)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + x + x + x;
+ do
+ {
+ calc_type alpha = (calc_type(c.a) * (calc_type(*covers) + 1)) >> 8;
+ if(alpha == base_mask)
+ {
+ p[order_type::R] = c.r;
+ p[order_type::G] = c.g;
+ p[order_type::B] = c.b;
+ }
+ else
+ {
+ m_blender.blend_pix(p, c.r, c.g, c.b, alpha, *covers);
+ }
+ p = (value_type*)m_rbuf->next_row(p);
+ ++covers;
+ }
+ while(--len);
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_color_hspan(int x, int y,
+ unsigned len,
+ const color_type* colors,
+ const int8u* covers,
+ int8u cover)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + x + x + x;
+ if(covers)
+ {
+ do
+ {
+ copy_or_blend_pix(p, *colors++, *covers++);
+ p += 3;
+ }
+ while(--len);
+ }
+ else
+ {
+ if(cover == 255)
+ {
+ do
+ {
+ if(colors->a == base_mask)
+ {
+ p[order_type::R] = colors->r;
+ p[order_type::G] = colors->g;
+ p[order_type::B] = colors->b;
+ }
+ else
+ {
+ copy_or_blend_pix(p, *colors, 255);
+ }
+ p += 3;
+ ++colors;
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ copy_or_blend_pix(p, *colors++, cover);
+ p += 3;
+ }
+ while(--len);
+ }
+ }
+ }
+
+
+
+ //--------------------------------------------------------------------
+ void blend_color_vspan(int x, int y,
+ unsigned len,
+ const color_type* colors,
+ const int8u* covers,
+ int8u cover)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + x + x + x;
+ if(covers)
+ {
+ do
+ {
+ copy_or_blend_pix(p, *colors++, *covers++);
+ p = (value_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+ else
+ {
+ if(cover == 255)
+ {
+ do
+ {
+ if(colors->a == base_mask)
+ {
+ p[order_type::R] = colors->r;
+ p[order_type::G] = colors->g;
+ p[order_type::B] = colors->b;
+ }
+ else
+ {
+ copy_or_blend_pix(p, *colors, 255);
+ }
+ p = (value_type*)m_rbuf->next_row(p);
+ ++colors;
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ copy_or_blend_pix(p, *colors++, cover);
+ p = (value_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_opaque_color_hspan(int x, int y,
+ unsigned len,
+ const color_type* colors,
+ const int8u* covers,
+ int8u cover)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + x + x + x;
+ if(covers)
+ {
+ do
+ {
+ copy_or_blend_opaque_pix(p, *colors++, *covers++);
+ p += 3;
+ }
+ while(--len);
+ }
+ else
+ {
+ if(cover == 255)
+ {
+ do
+ {
+ p[order_type::R] = colors->r;
+ p[order_type::G] = colors->g;
+ p[order_type::B] = colors->b;
+ p += 3;
+ ++colors;
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ copy_or_blend_opaque_pix(p, *colors++, cover);
+ p += 3;
+ }
+ while(--len);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_opaque_color_vspan(int x, int y,
+ unsigned len,
+ const color_type* colors,
+ const int8u* covers,
+ int8u cover)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + x + x + x;
+ if(covers)
+ {
+ do
+ {
+ copy_or_blend_opaque_pix(p, *colors++, *covers++);
+ p = (value_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+ else
+ {
+ if(cover == 255)
+ {
+ do
+ {
+ p[order_type::R] = colors->r;
+ p[order_type::G] = colors->g;
+ p[order_type::B] = colors->b;
+ p = (value_type*)m_rbuf->next_row(p);
+ ++colors;
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ copy_or_blend_opaque_pix(p, *colors++, cover);
+ p = (value_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+ }
+ }
+
+ //--------------------------------------------------------------------
+ template<class Function> void for_each_pixel(Function f)
+ {
+ unsigned y;
+ for(y = 0; y < height(); ++y)
+ {
+ unsigned len = width();
+ value_type* p = (value_type*)m_rbuf->row(y);
+ do
+ {
+ f(p);
+ p += 3;
+ }
+ while(--len);
+ }
+ }
+
+ //--------------------------------------------------------------------
+ template<class GammaLut> void apply_gamma_dir(const GammaLut& g)
+ {
+ for_each_pixel(apply_gamma_dir_rgb<color_type, order_type, GammaLut>(g));
+ }
+
+ //--------------------------------------------------------------------
+ template<class GammaLut> void apply_gamma_inv(const GammaLut& g)
+ {
+ for_each_pixel(apply_gamma_inv_rgb<color_type, order_type, GammaLut>(g));
+ }
+
+ //--------------------------------------------------------------------
+ void copy_from(const rendering_buffer& from,
+ int xdst, int ydst,
+ int xsrc, int ysrc,
+ unsigned len)
+ {
+ memmove((value_type*)m_rbuf->row(ydst) + xdst * 3,
+ (const value_type*)from.row(ysrc) + xsrc * 3,
+ sizeof(value_type) * 3 * len);
+ }
+
+
+ //--------------------------------------------------------------------
+ template<class SrcPixelFormatRenderer>
+ void blend_from(const SrcPixelFormatRenderer& from,
+ const int8u* psrc_,
+ int xdst, int ydst,
+ int xsrc, int ysrc,
+ unsigned len)
+ {
+ typedef typename SrcPixelFormatRenderer::order_type src_order;
+
+ const value_type* psrc = (const value_type*)psrc_;
+ value_type* pdst = (value_type*)m_rbuf->row(ydst) + xdst * 3;
+ do
+ {
+ value_type alpha = psrc[src_order::A];
+ if(alpha)
+ {
+ if(alpha == base_mask)
+ {
+ pdst[order_type::R] = psrc[src_order::R];
+ pdst[order_type::G] = psrc[src_order::G];
+ pdst[order_type::B] = psrc[src_order::B];
+ }
+ else
+ {
+ m_blender.blend_pix(pdst,
+ psrc[src_order::R],
+ psrc[src_order::G],
+ psrc[src_order::B],
+ alpha,
+ 255);
+ }
+ }
+ psrc += 4;
+ pdst += 3;
+ }
+ while(--len);
+ }
+
+ private:
+ rendering_buffer* m_rbuf;
+ Blender m_blender;
+ };
+
+ typedef pixel_formats_rgb<blender_rgb<rgba8, order_rgb> > pixfmt_rgb24; //----pixfmt_rgb24
+ typedef pixel_formats_rgb<blender_rgb<rgba8, order_bgr> > pixfmt_bgr24; //----pixfmt_bgr24
+ typedef pixel_formats_rgb<blender_rgb<rgba16, order_rgb> > pixfmt_rgb48; //----pixfmt_rgb48
+ typedef pixel_formats_rgb<blender_rgb<rgba16, order_bgr> > pixfmt_bgr48; //----pixfmt_bgr48
+
+ typedef pixel_formats_rgb<blender_rgb_pre<rgba8, order_rgb> > pixfmt_rgb24_pre; //----pixfmt_rgb24_pre
+ typedef pixel_formats_rgb<blender_rgb_pre<rgba8, order_bgr> > pixfmt_bgr24_pre; //----pixfmt_bgr24_pre
+ typedef pixel_formats_rgb<blender_rgb_pre<rgba16, order_rgb> > pixfmt_rgb48_pre; //----pixfmt_rgb48_pre
+ typedef pixel_formats_rgb<blender_rgb_pre<rgba16, order_bgr> > pixfmt_bgr48_pre; //----pixfmt_bgr48_pre
+
+ //-----------------------------------------------------pixfmt_rgb24_gamma
+ template<class Gamma> class pixfmt_rgb24_gamma :
+ public pixel_formats_rgb<blender_rgb_gamma<rgba8, order_rgb, Gamma> >
+ {
+ public:
+ pixfmt_rgb24_gamma(rendering_buffer& rb, const Gamma& g) :
+ pixel_formats_rgb<blender_rgb_gamma<rgba8, order_rgb, Gamma> >(rb)
+ {
+ this->blender().gamma(g);
+ }
+ };
+
+ //-----------------------------------------------------pixfmt_bgr24_gamma
+ template<class Gamma> class pixfmt_bgr24_gamma :
+ public pixel_formats_rgb<blender_rgb_gamma<rgba8, order_bgr, Gamma> >
+ {
+ public:
+ pixfmt_bgr24_gamma(rendering_buffer& rb, const Gamma& g) :
+ pixel_formats_rgb<blender_rgb_gamma<rgba8, order_bgr, Gamma> >(rb)
+ {
+ this->blender().gamma(g);
+ }
+ };
+
+ //-----------------------------------------------------pixfmt_rgb48_gamma
+ template<class Gamma> class pixfmt_rgb48_gamma :
+ public pixel_formats_rgb<blender_rgb_gamma<rgba16, order_rgb, Gamma> >
+ {
+ public:
+ pixfmt_rgb48_gamma(rendering_buffer& rb, const Gamma& g) :
+ pixel_formats_rgb<blender_rgb_gamma<rgba16, order_rgb, Gamma> >(rb)
+ {
+ this->blender().gamma(g);
+ }
+ };
+
+ //-----------------------------------------------------pixfmt_bgr48_gamma
+ template<class Gamma> class pixfmt_bgr48_gamma :
+ public pixel_formats_rgb<blender_rgb_gamma<rgba16, order_bgr, Gamma> >
+ {
+ public:
+ pixfmt_bgr48_gamma(rendering_buffer& rb, const Gamma& g) :
+ pixel_formats_rgb<blender_rgb_gamma<rgba16, order_bgr, Gamma> >(rb)
+ {
+ this->blender().gamma(g);
+ }
+ };
+
+
+}
+
+#endif
+
diff --git a/agg/inc/agg_pixfmt_rgb_packed.h b/agg/inc/agg_pixfmt_rgb_packed.h
new file mode 100755
index 000000000000..4f582ed59847
--- /dev/null
+++ b/agg/inc/agg_pixfmt_rgb_packed.h
@@ -0,0 +1,1277 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Adaptation for high precision colors has been sponsored by
+// Liberty Technology Systems, Inc., visit http://lib-sys.com
+//
+// Liberty Technology Systems, Inc. is the provider of
+// PostScript and PDF technology for software developers.
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_PIXFMT_RGB_PACKED_INCLUDED
+#define AGG_PIXFMT_RGB_PACKED_INCLUDED
+
+#include <string.h>
+#include "agg_basics.h"
+#include "agg_color_rgba.h"
+#include "agg_rendering_buffer.h"
+
+namespace agg
+{
+ //=========================================================blender_rgb555
+ struct blender_rgb555
+ {
+ typedef rgba8 color_type;
+ typedef color_type::value_type value_type;
+ typedef color_type::calc_type calc_type;
+ typedef int16u pixel_type;
+
+ static AGG_INLINE void blend_pix(pixel_type* p,
+ unsigned cr, unsigned cg, unsigned cb,
+ unsigned alpha,
+ unsigned)
+ {
+ pixel_type rgb = *p;
+ calc_type r = (rgb >> 7) & 0xF8;
+ calc_type g = (rgb >> 2) & 0xF8;
+ calc_type b = (rgb << 3) & 0xF8;
+ *p = (pixel_type)
+ (((((cr - r) * alpha + (r << 8)) >> 1) & 0x7C00) |
+ ((((cg - g) * alpha + (g << 8)) >> 6) & 0x03E0) |
+ (((cb - b) * alpha + (b << 8)) >> 11) | 0x8000);
+ }
+
+ static AGG_INLINE pixel_type make_pix(unsigned r, unsigned g, unsigned b)
+ {
+ return (pixel_type)(((r & 0xF8) << 7) |
+ ((g & 0xF8) << 2) |
+ (b >> 3) | 0x8000);
+ }
+
+ static AGG_INLINE color_type make_color(pixel_type p)
+ {
+ return color_type((p >> 7) & 0xF8,
+ (p >> 2) & 0xF8,
+ (p << 3) & 0xF8);
+ }
+ };
+
+
+ //=====================================================blender_rgb555_pre
+ struct blender_rgb555_pre
+ {
+ typedef rgba8 color_type;
+ typedef color_type::value_type value_type;
+ typedef color_type::calc_type calc_type;
+ typedef int16u pixel_type;
+
+ static AGG_INLINE void blend_pix(pixel_type* p,
+ unsigned cr, unsigned cg, unsigned cb,
+ unsigned alpha,
+ unsigned cover)
+ {
+ alpha = color_type::base_mask - alpha;
+ pixel_type rgb = *p;
+ calc_type r = (rgb >> 7) & 0xF8;
+ calc_type g = (rgb >> 2) & 0xF8;
+ calc_type b = (rgb << 3) & 0xF8;
+ *p = (pixel_type)
+ ((((r * alpha + cr * cover) >> 1) & 0x7C00) |
+ (((g * alpha + cg * cover) >> 6) & 0x03E0) |
+ ((b * alpha + cb * cover) >> 11) | 0x8000);
+ }
+
+ static AGG_INLINE pixel_type make_pix(unsigned r, unsigned g, unsigned b)
+ {
+ return (pixel_type)(((r & 0xF8) << 7) |
+ ((g & 0xF8) << 2) |
+ (b >> 3) | 0x8000);
+ }
+
+ static AGG_INLINE color_type make_color(pixel_type p)
+ {
+ return color_type((p >> 7) & 0xF8,
+ (p >> 2) & 0xF8,
+ (p << 3) & 0xF8);
+ }
+ };
+
+
+
+
+ //=====================================================blender_rgb555_gamma
+ template<class Gamma> class blender_rgb555_gamma
+ {
+ public:
+ typedef rgba8 color_type;
+ typedef color_type::value_type value_type;
+ typedef color_type::calc_type calc_type;
+ typedef int16u pixel_type;
+ typedef Gamma gamma_type;
+
+ blender_rgb555_gamma() : m_gamma(0) {}
+ void gamma(const gamma_type& g) { m_gamma = &g; }
+
+ AGG_INLINE void blend_pix(pixel_type* p,
+ unsigned cr, unsigned cg, unsigned cb,
+ unsigned alpha,
+ unsigned)
+ {
+ pixel_type rgb = *p;
+ calc_type r = m_gamma->dir((rgb >> 7) & 0xF8);
+ calc_type g = m_gamma->dir((rgb >> 2) & 0xF8);
+ calc_type b = m_gamma->dir((rgb << 3) & 0xF8);
+ *p = (pixel_type)
+ (((m_gamma->inv(((m_gamma->dir(cr) - r) * alpha + (r << 8)) >> 8) << 7) & 0x7C00) |
+ ((m_gamma->inv(((m_gamma->dir(cg) - g) * alpha + (g << 8)) >> 8) << 2) & 0x03E0) |
+ (m_gamma->inv(((m_gamma->dir(cb) - b) * alpha + (b << 8)) >> 8) >> 3) | 0x8000);
+ }
+
+ static AGG_INLINE pixel_type make_pix(unsigned r, unsigned g, unsigned b)
+ {
+ return (pixel_type)(((r & 0xF8) << 7) |
+ ((g & 0xF8) << 2) |
+ (b >> 3) | 0x8000);
+ }
+
+ static AGG_INLINE color_type make_color(pixel_type p)
+ {
+ return color_type((p >> 7) & 0xF8,
+ (p >> 2) & 0xF8,
+ (p << 3) & 0xF8);
+ }
+
+ private:
+ const Gamma* m_gamma;
+ };
+
+
+
+
+
+ //=========================================================blender_rgb565
+ struct blender_rgb565
+ {
+ typedef rgba8 color_type;
+ typedef color_type::value_type value_type;
+ typedef color_type::calc_type calc_type;
+ typedef int16u pixel_type;
+
+ static AGG_INLINE void blend_pix(pixel_type* p,
+ unsigned cr, unsigned cg, unsigned cb,
+ unsigned alpha,
+ unsigned)
+ {
+ pixel_type rgb = *p;
+ calc_type r = (rgb >> 8) & 0xF8;
+ calc_type g = (rgb >> 3) & 0xFC;
+ calc_type b = (rgb << 3) & 0xF8;
+ *p = (pixel_type)
+ (((((cr - r) * alpha + (r << 8)) ) & 0xF800) |
+ ((((cg - g) * alpha + (g << 8)) >> 5) & 0x07E0) |
+ (((cb - b) * alpha + (b << 8)) >> 11));
+ }
+
+ static AGG_INLINE pixel_type make_pix(unsigned r, unsigned g, unsigned b)
+ {
+ return (pixel_type)(((r & 0xF8) << 8) | ((g & 0xFC) << 3) | (b >> 3));
+ }
+
+ static AGG_INLINE color_type make_color(pixel_type p)
+ {
+ return color_type((p >> 8) & 0xF8,
+ (p >> 3) & 0xFC,
+ (p << 3) & 0xF8);
+ }
+ };
+
+
+
+ //=====================================================blender_rgb565_pre
+ struct blender_rgb565_pre
+ {
+ typedef rgba8 color_type;
+ typedef color_type::value_type value_type;
+ typedef color_type::calc_type calc_type;
+ typedef int16u pixel_type;
+
+ static AGG_INLINE void blend_pix(pixel_type* p,
+ unsigned cr, unsigned cg, unsigned cb,
+ unsigned alpha,
+ unsigned cover)
+ {
+ alpha = color_type::base_mask - alpha;
+ pixel_type rgb = *p;
+ calc_type r = (rgb >> 8) & 0xF8;
+ calc_type g = (rgb >> 3) & 0xFC;
+ calc_type b = (rgb << 3) & 0xF8;
+ *p = (pixel_type)
+ ((((r * alpha + cr * cover) ) & 0xF800) |
+ (((g * alpha + cg * cover) >> 5 ) & 0x07E0) |
+ ((b * alpha + cb * cover) >> 11));
+ }
+
+ static AGG_INLINE pixel_type make_pix(unsigned r, unsigned g, unsigned b)
+ {
+ return (pixel_type)(((r & 0xF8) << 8) | ((g & 0xFC) << 3) | (b >> 3));
+ }
+
+ static AGG_INLINE color_type make_color(pixel_type p)
+ {
+ return color_type((p >> 8) & 0xF8,
+ (p >> 3) & 0xFC,
+ (p << 3) & 0xF8);
+ }
+ };
+
+
+
+ //=====================================================blender_rgb565_gamma
+ template<class Gamma> class blender_rgb565_gamma
+ {
+ public:
+ typedef rgba8 color_type;
+ typedef color_type::value_type value_type;
+ typedef color_type::calc_type calc_type;
+ typedef int16u pixel_type;
+ typedef Gamma gamma_type;
+
+ blender_rgb565_gamma() : m_gamma(0) {}
+ void gamma(const gamma_type& g) { m_gamma = &g; }
+
+ AGG_INLINE void blend_pix(pixel_type* p,
+ unsigned cr, unsigned cg, unsigned cb,
+ unsigned alpha,
+ unsigned)
+ {
+ pixel_type rgb = *p;
+ calc_type r = m_gamma->dir((rgb >> 8) & 0xF8);
+ calc_type g = m_gamma->dir((rgb >> 3) & 0xFC);
+ calc_type b = m_gamma->dir((rgb << 3) & 0xF8);
+ *p = (pixel_type)
+ (((m_gamma->inv(((m_gamma->dir(cr) - r) * alpha + (r << 8)) >> 8) << 8) & 0xF800) |
+ ((m_gamma->inv(((m_gamma->dir(cg) - g) * alpha + (g << 8)) >> 8) << 3) & 0x07E0) |
+ (m_gamma->inv(((m_gamma->dir(cb) - b) * alpha + (b << 8)) >> 8) >> 3));
+ }
+
+ static AGG_INLINE pixel_type make_pix(unsigned r, unsigned g, unsigned b)
+ {
+ return (pixel_type)(((r & 0xF8) << 8) | ((g & 0xFC) << 3) | (b >> 3));
+ }
+
+ static AGG_INLINE color_type make_color(pixel_type p)
+ {
+ return color_type((p >> 8) & 0xF8,
+ (p >> 3) & 0xFC,
+ (p << 3) & 0xF8);
+ }
+
+ private:
+ const Gamma* m_gamma;
+ };
+
+
+
+ //=====================================================blender_rgbAAA
+ struct blender_rgbAAA
+ {
+ typedef rgba16 color_type;
+ typedef color_type::value_type value_type;
+ typedef color_type::calc_type calc_type;
+ typedef int32u pixel_type;
+
+ static AGG_INLINE void blend_pix(pixel_type* p,
+ unsigned cr, unsigned cg, unsigned cb,
+ unsigned alpha,
+ unsigned)
+ {
+ pixel_type rgb = *p;
+ calc_type r = (rgb >> 14) & 0xFFC0;
+ calc_type g = (rgb >> 4) & 0xFFC0;
+ calc_type b = (rgb << 6) & 0xFFC0;
+ *p = (pixel_type)
+ (((((cr - r) * alpha + (r << 16)) >> 2) & 0x3FF00000) |
+ ((((cg - g) * alpha + (g << 16)) >> 12) & 0x000FFC00) |
+ (((cb - b) * alpha + (b << 16)) >> 22) | 0xC0000000);
+ }
+
+ static AGG_INLINE pixel_type make_pix(unsigned r, unsigned g, unsigned b)
+ {
+ return (pixel_type)(((r & 0xFFC0) << 14) |
+ ((g & 0xFFC0) << 4) |
+ (b >> 6) | 0xC0000000);
+ }
+
+ static AGG_INLINE color_type make_color(pixel_type p)
+ {
+ return color_type((p >> 14) & 0xFFC0,
+ (p >> 4) & 0xFFC0,
+ (p << 6) & 0xFFC0);
+ }
+ };
+
+
+
+ //==================================================blender_rgbAAA_pre
+ struct blender_rgbAAA_pre
+ {
+ typedef rgba16 color_type;
+ typedef color_type::value_type value_type;
+ typedef color_type::calc_type calc_type;
+ typedef int32u pixel_type;
+
+ static AGG_INLINE void blend_pix(pixel_type* p,
+ unsigned cr, unsigned cg, unsigned cb,
+ unsigned alpha,
+ unsigned cover)
+ {
+ alpha = color_type::base_mask - alpha;
+ cover = (cover + 1) << (color_type::base_shift - 8);
+ pixel_type rgb = *p;
+ calc_type r = (rgb >> 14) & 0xFFC0;
+ calc_type g = (rgb >> 4) & 0xFFC0;
+ calc_type b = (rgb << 6) & 0xFFC0;
+ *p = (pixel_type)
+ ((((r * alpha + cr * cover) >> 2) & 0x3FF00000) |
+ (((g * alpha + cg * cover) >> 12) & 0x000FFC00) |
+ ((b * alpha + cb * cover) >> 22) | 0xC0000000);
+ }
+
+ static AGG_INLINE pixel_type make_pix(unsigned r, unsigned g, unsigned b)
+ {
+ return (pixel_type)(((r & 0xFFC0) << 14) |
+ ((g & 0xFFC0) << 4) |
+ (b >> 6) | 0xC0000000);
+ }
+
+ static AGG_INLINE color_type make_color(pixel_type p)
+ {
+ return color_type((p >> 14) & 0xFFC0,
+ (p >> 4) & 0xFFC0,
+ (p << 6) & 0xFFC0);
+ }
+ };
+
+
+
+ //=================================================blender_rgbAAA_gamma
+ template<class Gamma> class blender_rgbAAA_gamma
+ {
+ public:
+ typedef rgba16 color_type;
+ typedef color_type::value_type value_type;
+ typedef color_type::calc_type calc_type;
+ typedef int32u pixel_type;
+ typedef Gamma gamma_type;
+
+ blender_rgbAAA_gamma() : m_gamma(0) {}
+ void gamma(const gamma_type& g) { m_gamma = &g; }
+
+ AGG_INLINE void blend_pix(pixel_type* p,
+ unsigned cr, unsigned cg, unsigned cb,
+ unsigned alpha,
+ unsigned)
+ {
+ pixel_type rgb = *p;
+ calc_type r = m_gamma->dir((rgb >> 14) & 0xFFC0);
+ calc_type g = m_gamma->dir((rgb >> 4) & 0xFFC0);
+ calc_type b = m_gamma->dir((rgb << 6) & 0xFFC0);
+ *p = (pixel_type)
+ (((m_gamma->inv(((m_gamma->dir(cr) - r) * alpha + (r << 16)) >> 16) << 14) & 0x3FF00000) |
+ ((m_gamma->inv(((m_gamma->dir(cg) - g) * alpha + (g << 16)) >> 16) << 4 ) & 0x000FFC00) |
+ (m_gamma->inv(((m_gamma->dir(cb) - b) * alpha + (b << 16)) >> 16) >> 6 ) | 0xC0000000);
+ }
+
+ static AGG_INLINE pixel_type make_pix(unsigned r, unsigned g, unsigned b)
+ {
+ return (pixel_type)(((r & 0xFFC0) << 14) |
+ ((g & 0xFFC0) << 4) |
+ (b >> 6) | 0xC0000000);
+ }
+
+ static AGG_INLINE color_type make_color(pixel_type p)
+ {
+ return color_type((p >> 14) & 0xFFC0,
+ (p >> 4) & 0xFFC0,
+ (p << 6) & 0xFFC0);
+ }
+ private:
+ const Gamma* m_gamma;
+ };
+
+
+ //=====================================================blender_bgrAAA
+ struct blender_bgrAAA
+ {
+ typedef rgba16 color_type;
+ typedef color_type::value_type value_type;
+ typedef color_type::calc_type calc_type;
+ typedef int32u pixel_type;
+
+ static AGG_INLINE void blend_pix(pixel_type* p,
+ unsigned cr, unsigned cg, unsigned cb,
+ unsigned alpha,
+ unsigned)
+ {
+ pixel_type bgr = *p;
+ calc_type b = (bgr >> 14) & 0xFFC0;
+ calc_type g = (bgr >> 4) & 0xFFC0;
+ calc_type r = (bgr << 6) & 0xFFC0;
+ *p = (pixel_type)
+ (((((cb - b) * alpha + (b << 16)) >> 2) & 0x3FF00000) |
+ ((((cg - g) * alpha + (g << 16)) >> 12) & 0x000FFC00) |
+ (((cr - r) * alpha + (r << 16)) >> 22) | 0xC0000000);
+ }
+
+ static AGG_INLINE pixel_type make_pix(unsigned r, unsigned g, unsigned b)
+ {
+ return (pixel_type)(((b & 0xFFC0) << 14) |
+ ((g & 0xFFC0) << 4) |
+ (r >> 6) | 0xC0000000);
+ }
+
+ static AGG_INLINE color_type make_color(pixel_type p)
+ {
+ return color_type((p << 6) & 0xFFC0,
+ (p >> 4) & 0xFFC0,
+ (p >> 14) & 0xFFC0);
+ }
+ };
+
+
+
+ //=================================================blender_bgrAAA_pre
+ struct blender_bgrAAA_pre
+ {
+ typedef rgba16 color_type;
+ typedef color_type::value_type value_type;
+ typedef color_type::calc_type calc_type;
+ typedef int32u pixel_type;
+
+ static AGG_INLINE void blend_pix(pixel_type* p,
+ unsigned cr, unsigned cg, unsigned cb,
+ unsigned alpha,
+ unsigned cover)
+ {
+ alpha = color_type::base_mask - alpha;
+ cover = (cover + 1) << (color_type::base_shift - 8);
+ pixel_type bgr = *p;
+ calc_type b = (bgr >> 14) & 0xFFC0;
+ calc_type g = (bgr >> 4) & 0xFFC0;
+ calc_type r = (bgr << 6) & 0xFFC0;
+ *p = (pixel_type)
+ ((((b * alpha + cb * cover) >> 2) & 0x3FF00000) |
+ (((g * alpha + cg * cover) >> 12) & 0x000FFC00) |
+ ((r * alpha + cr * cover) >> 22) | 0xC0000000);
+ }
+
+ static AGG_INLINE pixel_type make_pix(unsigned r, unsigned g, unsigned b)
+ {
+ return (pixel_type)(((b & 0xFFC0) << 14) |
+ ((g & 0xFFC0) << 4) |
+ (r >> 6) | 0xC0000000);
+ }
+
+ static AGG_INLINE color_type make_color(pixel_type p)
+ {
+ return color_type((p << 6) & 0xFFC0,
+ (p >> 4) & 0xFFC0,
+ (p >> 14) & 0xFFC0);
+ }
+ };
+
+
+
+ //=================================================blender_bgrAAA_gamma
+ template<class Gamma> class blender_bgrAAA_gamma
+ {
+ public:
+ typedef rgba16 color_type;
+ typedef color_type::value_type value_type;
+ typedef color_type::calc_type calc_type;
+ typedef int32u pixel_type;
+ typedef Gamma gamma_type;
+
+ blender_bgrAAA_gamma() : m_gamma(0) {}
+ void gamma(const gamma_type& g) { m_gamma = &g; }
+
+ AGG_INLINE void blend_pix(pixel_type* p,
+ unsigned cr, unsigned cg, unsigned cb,
+ unsigned alpha,
+ unsigned)
+ {
+ pixel_type bgr = *p;
+ calc_type b = m_gamma->dir((bgr >> 14) & 0xFFC0);
+ calc_type g = m_gamma->dir((bgr >> 4) & 0xFFC0);
+ calc_type r = m_gamma->dir((bgr << 6) & 0xFFC0);
+ *p = (pixel_type)
+ (((m_gamma->inv(((m_gamma->dir(cb) - b) * alpha + (b << 16)) >> 16) << 14) & 0x3FF00000) |
+ ((m_gamma->inv(((m_gamma->dir(cg) - g) * alpha + (g << 16)) >> 16) << 4 ) & 0x000FFC00) |
+ (m_gamma->inv(((m_gamma->dir(cr) - r) * alpha + (r << 16)) >> 16) >> 6 ) | 0xC0000000);
+ }
+
+ static AGG_INLINE pixel_type make_pix(unsigned r, unsigned g, unsigned b)
+ {
+ return (pixel_type)(((b & 0xFFC0) << 14) |
+ ((g & 0xFFC0) << 4) |
+ (r >> 6) | 0xC0000000);
+ }
+
+ static AGG_INLINE color_type make_color(pixel_type p)
+ {
+ return color_type((p << 6) & 0xFFC0,
+ (p >> 4) & 0xFFC0,
+ (p >> 14) & 0xFFC0);
+ }
+
+ private:
+ const Gamma* m_gamma;
+ };
+
+
+
+ //=====================================================blender_rgbBBA
+ struct blender_rgbBBA
+ {
+ typedef rgba16 color_type;
+ typedef color_type::value_type value_type;
+ typedef color_type::calc_type calc_type;
+ typedef int32u pixel_type;
+
+ static AGG_INLINE void blend_pix(pixel_type* p,
+ unsigned cr, unsigned cg, unsigned cb,
+ unsigned alpha,
+ unsigned)
+ {
+ pixel_type rgb = *p;
+ calc_type r = (rgb >> 16) & 0xFFE0;
+ calc_type g = (rgb >> 5) & 0xFFE0;
+ calc_type b = (rgb << 6) & 0xFFC0;
+ *p = (pixel_type)
+ (((((cr - r) * alpha + (r << 16)) ) & 0xFFE00000) |
+ ((((cg - g) * alpha + (g << 16)) >> 11) & 0x001FFC00) |
+ (((cb - b) * alpha + (b << 16)) >> 22));
+ }
+
+ static AGG_INLINE pixel_type make_pix(unsigned r, unsigned g, unsigned b)
+ {
+ return (pixel_type)(((r & 0xFFE0) << 16) | ((g & 0xFFE0) << 5) | (b >> 6));
+ }
+
+ static AGG_INLINE color_type make_color(pixel_type p)
+ {
+ return color_type((p >> 16) & 0xFFE0,
+ (p >> 5) & 0xFFE0,
+ (p << 6) & 0xFFC0);
+ }
+ };
+
+
+ //=================================================blender_rgbBBA_pre
+ struct blender_rgbBBA_pre
+ {
+ typedef rgba16 color_type;
+ typedef color_type::value_type value_type;
+ typedef color_type::calc_type calc_type;
+ typedef int32u pixel_type;
+
+ static AGG_INLINE void blend_pix(pixel_type* p,
+ unsigned cr, unsigned cg, unsigned cb,
+ unsigned alpha,
+ unsigned cover)
+ {
+ alpha = color_type::base_mask - alpha;
+ cover = (cover + 1) << (color_type::base_shift - 8);
+ pixel_type rgb = *p;
+ calc_type r = (rgb >> 16) & 0xFFE0;
+ calc_type g = (rgb >> 5) & 0xFFE0;
+ calc_type b = (rgb << 6) & 0xFFC0;
+ *p = (pixel_type)
+ ((((r * alpha + cr * cover) ) & 0xFFE00000) |
+ (((g * alpha + cg * cover) >> 11) & 0x001FFC00) |
+ ((b * alpha + cb * cover) >> 22));
+ }
+
+ static AGG_INLINE pixel_type make_pix(unsigned r, unsigned g, unsigned b)
+ {
+ return (pixel_type)(((r & 0xFFE0) << 16) | ((g & 0xFFE0) << 5) | (b >> 6));
+ }
+
+ static AGG_INLINE color_type make_color(pixel_type p)
+ {
+ return color_type((p >> 16) & 0xFFE0,
+ (p >> 5) & 0xFFE0,
+ (p << 6) & 0xFFC0);
+ }
+ };
+
+
+
+ //=================================================blender_rgbBBA_gamma
+ template<class Gamma> class blender_rgbBBA_gamma
+ {
+ public:
+ typedef rgba16 color_type;
+ typedef color_type::value_type value_type;
+ typedef color_type::calc_type calc_type;
+ typedef int32u pixel_type;
+ typedef Gamma gamma_type;
+
+ blender_rgbBBA_gamma() : m_gamma(0) {}
+ void gamma(const gamma_type& g) { m_gamma = &g; }
+
+ AGG_INLINE void blend_pix(pixel_type* p,
+ unsigned cr, unsigned cg, unsigned cb,
+ unsigned alpha,
+ unsigned)
+ {
+ pixel_type rgb = *p;
+ calc_type r = m_gamma->dir((rgb >> 16) & 0xFFE0);
+ calc_type g = m_gamma->dir((rgb >> 5) & 0xFFE0);
+ calc_type b = m_gamma->dir((rgb << 6) & 0xFFC0);
+ *p = (pixel_type)
+ (((m_gamma->inv(((m_gamma->dir(cr) - r) * alpha + (r << 16)) >> 16) << 16) & 0xFFE00000) |
+ ((m_gamma->inv(((m_gamma->dir(cg) - g) * alpha + (g << 16)) >> 16) << 5 ) & 0x001FFC00) |
+ (m_gamma->inv(((m_gamma->dir(cb) - b) * alpha + (b << 16)) >> 16) >> 6 ));
+ }
+
+ static AGG_INLINE pixel_type make_pix(unsigned r, unsigned g, unsigned b)
+ {
+ return (pixel_type)(((r & 0xFFE0) << 16) | ((g & 0xFFE0) << 5) | (b >> 6));
+ }
+
+ static AGG_INLINE color_type make_color(pixel_type p)
+ {
+ return color_type((p >> 16) & 0xFFE0,
+ (p >> 5) & 0xFFE0,
+ (p << 6) & 0xFFC0);
+ }
+
+ private:
+ const Gamma* m_gamma;
+ };
+
+
+ //=====================================================blender_bgrABB
+ struct blender_bgrABB
+ {
+ typedef rgba16 color_type;
+ typedef color_type::value_type value_type;
+ typedef color_type::calc_type calc_type;
+ typedef int32u pixel_type;
+
+ static AGG_INLINE void blend_pix(pixel_type* p,
+ unsigned cr, unsigned cg, unsigned cb,
+ unsigned alpha,
+ unsigned)
+ {
+ pixel_type bgr = *p;
+ calc_type b = (bgr >> 16) & 0xFFC0;
+ calc_type g = (bgr >> 6) & 0xFFE0;
+ calc_type r = (bgr << 5) & 0xFFE0;
+ *p = (pixel_type)
+ (((((cb - b) * alpha + (b << 16)) ) & 0xFFC00000) |
+ ((((cg - g) * alpha + (g << 16)) >> 10) & 0x003FF800) |
+ (((cr - r) * alpha + (r << 16)) >> 21));
+ }
+
+ static AGG_INLINE pixel_type make_pix(unsigned r, unsigned g, unsigned b)
+ {
+ return (pixel_type)(((b & 0xFFC0) << 16) | ((g & 0xFFE0) << 6) | (r >> 5));
+ }
+
+ static AGG_INLINE color_type make_color(pixel_type p)
+ {
+ return color_type((p << 5) & 0xFFE0,
+ (p >> 6) & 0xFFE0,
+ (p >> 16) & 0xFFC0);
+ }
+ };
+
+
+ //=================================================blender_bgrABB_pre
+ struct blender_bgrABB_pre
+ {
+ typedef rgba16 color_type;
+ typedef color_type::value_type value_type;
+ typedef color_type::calc_type calc_type;
+ typedef int32u pixel_type;
+
+ static AGG_INLINE void blend_pix(pixel_type* p,
+ unsigned cr, unsigned cg, unsigned cb,
+ unsigned alpha,
+ unsigned cover)
+ {
+ alpha = color_type::base_mask - alpha;
+ cover = (cover + 1) << (color_type::base_shift - 8);
+ pixel_type bgr = *p;
+ calc_type b = (bgr >> 16) & 0xFFC0;
+ calc_type g = (bgr >> 6) & 0xFFE0;
+ calc_type r = (bgr << 5) & 0xFFE0;
+ *p = (pixel_type)
+ ((((b * alpha + cb * cover) ) & 0xFFC00000) |
+ (((g * alpha + cg * cover) >> 10) & 0x003FF800) |
+ ((r * alpha + cr * cover) >> 21));
+ }
+
+ static AGG_INLINE pixel_type make_pix(unsigned r, unsigned g, unsigned b)
+ {
+ return (pixel_type)(((b & 0xFFC0) << 16) | ((g & 0xFFE0) << 6) | (r >> 5));
+ }
+
+ static AGG_INLINE color_type make_color(pixel_type p)
+ {
+ return color_type((p << 5) & 0xFFE0,
+ (p >> 6) & 0xFFE0,
+ (p >> 16) & 0xFFC0);
+ }
+ };
+
+
+
+ //=================================================blender_bgrABB_gamma
+ template<class Gamma> class blender_bgrABB_gamma
+ {
+ public:
+ typedef rgba16 color_type;
+ typedef color_type::value_type value_type;
+ typedef color_type::calc_type calc_type;
+ typedef int32u pixel_type;
+ typedef Gamma gamma_type;
+
+ blender_bgrABB_gamma() : m_gamma(0) {}
+ void gamma(const gamma_type& g) { m_gamma = &g; }
+
+ AGG_INLINE void blend_pix(pixel_type* p,
+ unsigned cr, unsigned cg, unsigned cb,
+ unsigned alpha,
+ unsigned)
+ {
+ pixel_type bgr = *p;
+ calc_type b = m_gamma->dir((bgr >> 16) & 0xFFC0);
+ calc_type g = m_gamma->dir((bgr >> 6) & 0xFFE0);
+ calc_type r = m_gamma->dir((bgr << 5) & 0xFFE0);
+ *p = (pixel_type)
+ (((m_gamma->inv(((m_gamma->dir(cb) - b) * alpha + (b << 16)) >> 16) << 16) & 0xFFC00000) |
+ ((m_gamma->inv(((m_gamma->dir(cg) - g) * alpha + (g << 16)) >> 16) << 6 ) & 0x003FF800) |
+ (m_gamma->inv(((m_gamma->dir(cr) - r) * alpha + (r << 16)) >> 16) >> 5 ));
+ }
+
+ static AGG_INLINE pixel_type make_pix(unsigned r, unsigned g, unsigned b)
+ {
+ return (pixel_type)(((b & 0xFFC0) << 16) | ((g & 0xFFE0) << 6) | (r >> 5));
+ }
+
+ static AGG_INLINE color_type make_color(pixel_type p)
+ {
+ return color_type((p << 5) & 0xFFE0,
+ (p >> 6) & 0xFFE0,
+ (p >> 16) & 0xFFC0);
+ }
+
+ private:
+ const Gamma* m_gamma;
+ };
+
+
+
+ //===============================================pixel_formats_rgb_packed
+ template<class Blender> class pixel_formats_rgb_packed
+ {
+ public:
+ typedef rendering_buffer::row_data row_data;
+ typedef typename Blender::color_type color_type;
+ typedef typename Blender::pixel_type pixel_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_size = color_type::base_size,
+ base_mask = color_type::base_mask
+ };
+
+ private:
+ //--------------------------------------------------------------------
+ AGG_INLINE void copy_or_blend_pix(pixel_type* p, const color_type& c, unsigned cover)
+ {
+ if (c.a)
+ {
+ calc_type alpha = (calc_type(c.a) * (cover + 1)) >> 8;
+ if(alpha == base_mask)
+ {
+ *p = m_blender.make_pix(c.r, c.g, c.b);
+ }
+ else
+ {
+ m_blender.blend_pix(p, c.r, c.g, c.b, alpha, cover);
+ }
+ }
+ }
+
+ //--------------------------------------------------------------------
+ AGG_INLINE void copy_or_blend_opaque_pix(pixel_type* p, const color_type& c, unsigned cover)
+ {
+ if(cover == 255)
+ {
+ *p = m_blender.make_pix(c.r, c.g, c.b);
+ }
+ else
+ {
+ m_blender.blend_pix(p, c.r, c.g, c.b, (cover + 1) << (base_shift - 8), cover);
+ }
+ }
+
+
+ public:
+ //--------------------------------------------------------------------
+ pixel_formats_rgb_packed(rendering_buffer& rb) :
+ m_rbuf(&rb)
+ {}
+
+ //--------------------------------------------------------------------
+ Blender& blender() { return m_blender; }
+
+ //--------------------------------------------------------------------
+ AGG_INLINE unsigned width() const { return m_rbuf->width(); }
+ AGG_INLINE unsigned height() const { return m_rbuf->height(); }
+
+ //--------------------------------------------------------------------
+ AGG_INLINE color_type pixel(int x, int y) const
+ {
+ pixel_type* p = (pixel_type*)m_rbuf->row(y) + x;
+ return m_blender.make_color(((pixel_type*)m_rbuf->row(y))[x]);
+ }
+
+ //--------------------------------------------------------------------
+ row_data span(int x, int y) const
+ {
+ return row_data(x,
+ width() - 1,
+ m_rbuf->row(y) + x * sizeof(pixel_type));
+ }
+
+ //--------------------------------------------------------------------
+ AGG_INLINE void copy_pixel(int x, int y, const color_type& c)
+ {
+ ((pixel_type*)m_rbuf->row(y))[x] = m_blender.make_pix(c.r, c.g, c.b);
+ }
+
+ //--------------------------------------------------------------------
+ AGG_INLINE void blend_pixel(int x, int y, const color_type& c, int8u cover)
+ {
+ copy_or_blend_pix((pixel_type*)m_rbuf->row(y) + x, c, cover);
+ }
+
+
+ //--------------------------------------------------------------------
+ AGG_INLINE void copy_hline(int x, int y,
+ unsigned len,
+ const color_type& c)
+ {
+ pixel_type* p = (pixel_type*)m_rbuf->row(y) + x;
+ pixel_type v = m_blender.make_pix(c.r, c.g, c.b);
+ do
+ {
+ *p++ = v;
+ }
+ while(--len);
+ }
+
+
+ //--------------------------------------------------------------------
+ AGG_INLINE void copy_vline(int x, int y,
+ unsigned len,
+ const color_type& c)
+ {
+ pixel_type* p = (pixel_type*)m_rbuf->row(y) + x;
+ pixel_type v = m_blender.make_pix(c.r, c.g, c.b);
+ do
+ {
+ *p = v;
+ p = (pixel_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_hline(int x, int y,
+ unsigned len,
+ const color_type& c,
+ int8u cover)
+ {
+ if (c.a)
+ {
+ pixel_type* p = (pixel_type*)m_rbuf->row(y) + x;
+ calc_type alpha = (calc_type(c.a) * (cover + 1)) >> 8;
+ if(alpha == base_mask)
+ {
+ pixel_type v = m_blender.make_pix(c.r, c.g, c.b);
+ do
+ {
+ *p++ = v;
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ m_blender.blend_pix(p, c.r, c.g, c.b, alpha, cover);
+ ++p;
+ }
+ while(--len);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_vline(int x, int y,
+ unsigned len,
+ const color_type& c,
+ int8u cover)
+ {
+ if (c.a)
+ {
+ pixel_type* p = (pixel_type*)m_rbuf->row(y) + x;
+ calc_type alpha = (calc_type(c.a) * (cover + 1)) >> 8;
+ if(alpha == base_mask)
+ {
+ pixel_type v = m_blender.make_pix(c.r, c.g, c.b);
+ do
+ {
+ *p = v;
+ p = (pixel_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ m_blender.blend_pix(p, c.r, c.g, c.b, alpha, cover);
+ p = (pixel_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_solid_hspan(int x, int y,
+ unsigned len,
+ const color_type& c,
+ const int8u* covers)
+ {
+ pixel_type* p = (pixel_type*)m_rbuf->row(y) + x;
+ do
+ {
+ copy_or_blend_pix(p, c, *covers++);
+ ++p;
+ }
+ while(--len);
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_solid_vspan(int x, int y,
+ unsigned len,
+ const color_type& c,
+ const int8u* covers)
+ {
+ pixel_type* p = (pixel_type*)m_rbuf->row(y) + x;
+ do
+ {
+ copy_or_blend_pix(p, c, *covers++);
+ p = (pixel_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_color_hspan(int x, int y,
+ unsigned len,
+ const color_type* colors,
+ const int8u* covers,
+ int8u cover)
+ {
+ pixel_type* p = (pixel_type*)m_rbuf->row(y) + x;
+ do
+ {
+ copy_or_blend_pix(p++, *colors++, covers ? *covers++ : cover);
+ }
+ while(--len);
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_color_vspan(int x, int y,
+ unsigned len,
+ const color_type* colors,
+ const int8u* covers,
+ int8u cover)
+ {
+ pixel_type* p = (pixel_type*)m_rbuf->row(y) + x;
+ do
+ {
+ copy_or_blend_pix(p, *colors++, covers ? *covers++ : cover);
+ p = (pixel_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_opaque_color_hspan(int x, int y,
+ unsigned len,
+ const color_type* colors,
+ const int8u* covers,
+ int8u cover)
+ {
+ pixel_type* p = (pixel_type*)m_rbuf->row(y) + x;
+ if(covers)
+ {
+ do
+ {
+ copy_or_blend_opaque_pix(p++, *colors++, *covers++);
+ }
+ while(--len);
+ }
+ else
+ {
+ if(cover == 255)
+ {
+ do
+ {
+ *p++ = m_blender.make_pix(colors->r, colors->g, colors->b);
+ ++colors;
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ copy_or_blend_opaque_pix(p++, *colors++, cover);
+ }
+ while(--len);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_opaque_color_vspan(int x, int y,
+ unsigned len,
+ const color_type* colors,
+ const int8u* covers,
+ int8u cover)
+ {
+ pixel_type* p = (pixel_type*)m_rbuf->row(y) + x;
+ if(covers)
+ {
+ do
+ {
+ copy_or_blend_opaque_pix(p, *colors++, *covers++);
+ p = (pixel_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+ else
+ {
+ if(cover == 255)
+ {
+ do
+ {
+ *p = m_blender.make_pix(colors->r, colors->g, colors->b);
+ p = (value_type*)m_rbuf->next_row(p);
+ ++colors;
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ copy_or_blend_opaque_pix(p, *colors++, cover);
+ p = (value_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void copy_from(const rendering_buffer& from,
+ int xdst, int ydst,
+ int xsrc, int ysrc,
+ unsigned len)
+ {
+ memmove((pixel_type*)m_rbuf->row(ydst) + xdst,
+ (pixel_type*)from.row(ysrc) + xsrc,
+ sizeof(pixel_type) * len);
+ }
+
+
+ //--------------------------------------------------------------------
+ template<class SrcPixelFormatRenderer>
+ void blend_from(const SrcPixelFormatRenderer& from,
+ const int8u* psrc_,
+ int xdst, int ydst,
+ int xsrc, int ysrc,
+ unsigned len)
+ {
+ typedef typename SrcPixelFormatRenderer::order_type src_order;
+
+ const value_type* psrc = (const value_type*)psrc_;
+ pixel_type* pdst = (pixel_type*)m_rbuf->row(ydst) + xdst;
+ do
+ {
+ value_type alpha = psrc[src_order::A];
+ if(alpha)
+ {
+ if(alpha == base_mask)
+ {
+ *pdst = m_blender.make_pix(psrc[src_order::R],
+ psrc[src_order::G],
+ psrc[src_order::B]);
+ }
+ else
+ {
+ m_blender.blend_pix(pdst,
+ psrc[src_order::R],
+ psrc[src_order::G],
+ psrc[src_order::B],
+ alpha,
+ 255);
+ }
+ }
+ psrc += 4;
+ ++pdst;
+ }
+ while(--len);
+ }
+
+
+ private:
+ rendering_buffer* m_rbuf;
+ Blender m_blender;
+ };
+
+ typedef pixel_formats_rgb_packed<blender_rgb555> pixfmt_rgb555; //----pixfmt_rgb555
+ typedef pixel_formats_rgb_packed<blender_rgb565> pixfmt_rgb565; //----pixfmt_rgb565
+
+ typedef pixel_formats_rgb_packed<blender_rgb555_pre> pixfmt_rgb555_pre; //----pixfmt_rgb555_pre
+ typedef pixel_formats_rgb_packed<blender_rgb565_pre> pixfmt_rgb565_pre; //----pixfmt_rgb565_pre
+
+ typedef pixel_formats_rgb_packed<blender_rgbAAA> pixfmt_rgbAAA; //----pixfmt_rgbAAA
+ typedef pixel_formats_rgb_packed<blender_bgrAAA> pixfmt_bgrAAA; //----pixfmt_bgrAAA
+ typedef pixel_formats_rgb_packed<blender_rgbBBA> pixfmt_rgbBBA; //----pixfmt_rgbBBA
+ typedef pixel_formats_rgb_packed<blender_bgrABB> pixfmt_bgrABB; //----pixfmt_bgrABB
+
+ typedef pixel_formats_rgb_packed<blender_rgbAAA_pre> pixfmt_rgbAAA_pre; //----pixfmt_rgbAAA_pre
+ typedef pixel_formats_rgb_packed<blender_bgrAAA_pre> pixfmt_bgrAAA_pre; //----pixfmt_bgrAAA_pre
+ typedef pixel_formats_rgb_packed<blender_rgbBBA_pre> pixfmt_rgbBBA_pre; //----pixfmt_rgbBBA_pre
+ typedef pixel_formats_rgb_packed<blender_bgrABB_pre> pixfmt_bgrABB_pre; //----pixfmt_bgrABB_pre
+
+
+ //-----------------------------------------------------pixfmt_rgb555_gamma
+ template<class Gamma> class pixfmt_rgb555_gamma :
+ public pixel_formats_rgb_packed<blender_rgb555_gamma<Gamma> >
+ {
+ public:
+ pixfmt_rgb555_gamma(rendering_buffer& rb, const Gamma& g) :
+ pixel_formats_rgb_packed<blender_rgb555_gamma<Gamma> >(rb)
+ {
+ this->blender().gamma(g);
+ }
+ };
+
+
+ //-----------------------------------------------------pixfmt_rgb565_gamma
+ template<class Gamma> class pixfmt_rgb565_gamma :
+ public pixel_formats_rgb_packed<blender_rgb565_gamma<Gamma> >
+ {
+ public:
+ pixfmt_rgb565_gamma(rendering_buffer& rb, const Gamma& g) :
+ pixel_formats_rgb_packed<blender_rgb565_gamma<Gamma> >(rb)
+ {
+ this->blender().gamma(g);
+ }
+ };
+
+
+ //-----------------------------------------------------pixfmt_rgbAAA_gamma
+ template<class Gamma> class pixfmt_rgbAAA_gamma :
+ public pixel_formats_rgb_packed<blender_rgbAAA_gamma<Gamma> >
+ {
+ public:
+ pixfmt_rgbAAA_gamma(rendering_buffer& rb, const Gamma& g) :
+ pixel_formats_rgb_packed<blender_rgbAAA_gamma<Gamma> >(rb)
+ {
+ this->blender().gamma(g);
+ }
+ };
+
+
+ //-----------------------------------------------------pixfmt_bgrAAA_gamma
+ template<class Gamma> class pixfmt_bgrAAA_gamma :
+ public pixel_formats_rgb_packed<blender_bgrAAA_gamma<Gamma> >
+ {
+ public:
+ pixfmt_bgrAAA_gamma(rendering_buffer& rb, const Gamma& g) :
+ pixel_formats_rgb_packed<blender_bgrAAA_gamma<Gamma> >(rb)
+ {
+ this->blender().gamma(g);
+ }
+ };
+
+
+ //-----------------------------------------------------pixfmt_rgbBBA_gamma
+ template<class Gamma> class pixfmt_rgbBBA_gamma :
+ public pixel_formats_rgb_packed<blender_rgbBBA_gamma<Gamma> >
+ {
+ public:
+ pixfmt_rgbBBA_gamma(rendering_buffer& rb, const Gamma& g) :
+ pixel_formats_rgb_packed<blender_rgbBBA_gamma<Gamma> >(rb)
+ {
+ this->blender().gamma(g);
+ }
+ };
+
+
+ //-----------------------------------------------------pixfmt_bgrABB_gamma
+ template<class Gamma> class pixfmt_bgrABB_gamma :
+ public pixel_formats_rgb_packed<blender_bgrABB_gamma<Gamma> >
+ {
+ public:
+ pixfmt_bgrABB_gamma(rendering_buffer& rb, const Gamma& g) :
+ pixel_formats_rgb_packed<blender_bgrABB_gamma<Gamma> >(rb)
+ {
+ this->blender().gamma(g);
+ }
+ };
+
+
+}
+
+#endif
+
diff --git a/agg/inc/agg_pixfmt_rgba.h b/agg/inc/agg_pixfmt_rgba.h
new file mode 100755
index 000000000000..3716877e04f7
--- /dev/null
+++ b/agg/inc/agg_pixfmt_rgba.h
@@ -0,0 +1,1312 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Adaptation for high precision colors has been sponsored by
+// Liberty Technology Systems, Inc., visit http://lib-sys.com
+//
+// Liberty Technology Systems, Inc. is the provider of
+// PostScript and PDF technology for software developers.
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_PIXFMT_RGBA_INCLUDED
+#define AGG_PIXFMT_RGBA_INCLUDED
+
+#include <string.h>
+#include "agg_basics.h"
+#include "agg_color_rgba.h"
+#include "agg_rendering_buffer.h"
+
+namespace agg
+{
+
+ //=========================================================multiplier_rgba
+ template<class ColorT, class Order> struct multiplier_rgba
+ {
+ typedef typename ColorT::value_type value_type;
+ typedef typename ColorT::calc_type calc_type;
+
+ //--------------------------------------------------------------------
+ static AGG_INLINE void premultiply(value_type* p)
+ {
+ calc_type a = p[Order::A];
+ if(a < ColorT::base_mask)
+ {
+ if(a == 0)
+ {
+ p[Order::R] = p[Order::G] = p[Order::B] = 0;
+ return;
+ }
+ p[Order::R] = value_type((p[Order::R] * a) >> ColorT::base_shift);
+ p[Order::G] = value_type((p[Order::G] * a) >> ColorT::base_shift);
+ p[Order::B] = value_type((p[Order::B] * a) >> ColorT::base_shift);
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ static AGG_INLINE void demultiply(value_type* p)
+ {
+ calc_type a = p[Order::A];
+ if(a < ColorT::base_mask)
+ {
+ if(a == 0)
+ {
+ p[Order::R] = p[Order::G] = p[Order::B] = 0;
+ return;
+ }
+ calc_type r = (calc_type(p[Order::R]) * ColorT::base_mask) / a;
+ calc_type g = (calc_type(p[Order::G]) * ColorT::base_mask) / a;
+ calc_type b = (calc_type(p[Order::B]) * ColorT::base_mask) / a;
+ p[Order::R] = value_type((r > ColorT::base_mask) ? ColorT::base_mask : r);
+ p[Order::G] = value_type((g > ColorT::base_mask) ? ColorT::base_mask : g);
+ p[Order::B] = value_type((b > ColorT::base_mask) ? ColorT::base_mask : b);
+ }
+ }
+ };
+
+
+ //=====================================================apply_gamma_dir_rgba
+ template<class ColorT, class Order, class GammaLut> class apply_gamma_dir_rgba
+ {
+ public:
+ typedef typename ColorT::value_type value_type;
+
+ apply_gamma_dir_rgba(const GammaLut& gamma) : m_gamma(gamma) {}
+
+ AGG_INLINE void operator () (value_type* p)
+ {
+ p[Order::R] = m_gamma.dir(p[Order::R]);
+ p[Order::G] = m_gamma.dir(p[Order::G]);
+ p[Order::B] = m_gamma.dir(p[Order::B]);
+ }
+
+ private:
+ const GammaLut& m_gamma;
+ };
+
+
+
+ //=====================================================apply_gamma_inv_rgba
+ template<class ColorT, class Order, class GammaLut> class apply_gamma_inv_rgba
+ {
+ public:
+ typedef typename ColorT::value_type value_type;
+
+ apply_gamma_inv_rgba(const GammaLut& gamma) : m_gamma(gamma) {}
+
+ AGG_INLINE void operator () (value_type* p)
+ {
+ p[Order::R] = m_gamma.inv(p[Order::R]);
+ p[Order::G] = m_gamma.inv(p[Order::G]);
+ p[Order::B] = m_gamma.inv(p[Order::B]);
+ }
+
+ private:
+ const GammaLut& m_gamma;
+ };
+
+
+
+ //=============================================================blender_rgba
+ template<class ColorT, class Order, class PixelT> struct blender_rgba
+ {
+ typedef ColorT color_type;
+ typedef PixelT pixel_type;
+ typedef Order order_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ static AGG_INLINE void blend_pix(value_type* p,
+ unsigned cr, unsigned cg, unsigned cb,
+ unsigned alpha,
+ unsigned)
+ {
+ calc_type r = p[Order::R];
+ calc_type g = p[Order::G];
+ calc_type b = p[Order::B];
+ calc_type a = p[Order::A];
+ p[Order::R] = (value_type)(((cr - r) * alpha + (r << base_shift)) >> base_shift);
+ p[Order::G] = (value_type)(((cg - g) * alpha + (g << base_shift)) >> base_shift);
+ p[Order::B] = (value_type)(((cb - b) * alpha + (b << base_shift)) >> base_shift);
+ p[Order::A] = (value_type)((alpha + a) - ((alpha * a + base_mask) >> base_shift));
+ }
+ };
+
+
+ //=========================================================blender_rgba_pre
+ template<class ColorT, class Order, class PixelT> struct blender_rgba_pre
+ {
+ typedef ColorT color_type;
+ typedef PixelT pixel_type;
+ typedef Order order_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ static AGG_INLINE void blend_pix(value_type* p,
+ unsigned cr, unsigned cg, unsigned cb,
+ unsigned alpha,
+ unsigned cover)
+ {
+ alpha = color_type::base_mask - alpha;
+ cover = (cover + 1) << (base_shift - 8);
+ p[Order::R] = (value_type)((p[Order::R] * alpha + cr * cover) >> base_shift);
+ p[Order::G] = (value_type)((p[Order::G] * alpha + cg * cover) >> base_shift);
+ p[Order::B] = (value_type)((p[Order::B] * alpha + cb * cover) >> base_shift);
+ p[Order::A] = (value_type)(base_mask - ((alpha * (base_mask - p[Order::A])) >> base_shift));
+ }
+ };
+
+
+
+ //======================================================blender_rgba_plain
+ template<class ColorT, class Order, class PixelT> struct blender_rgba_plain
+ {
+ typedef ColorT color_type;
+ typedef PixelT pixel_type;
+ typedef Order order_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum { base_shift = color_type::base_shift };
+
+ //--------------------------------------------------------------------
+ static AGG_INLINE void blend_pix(value_type* p,
+ unsigned cr, unsigned cg, unsigned cb,
+ unsigned alpha,
+ unsigned)
+ {
+ if(alpha == 0) return;
+ calc_type a = p[Order::A];
+ calc_type r = p[Order::R] * a;
+ calc_type g = p[Order::G] * a;
+ calc_type b = p[Order::B] * a;
+ a = ((alpha + a) << base_shift) - alpha * a;
+ p[Order::A] = (value_type)(a >> base_shift);
+ p[Order::R] = (value_type)((((cr << base_shift) - r) * alpha + (r << base_shift)) / a);
+ p[Order::G] = (value_type)((((cg << base_shift) - g) * alpha + (g << base_shift)) / a);
+ p[Order::B] = (value_type)((((cb << base_shift) - b) * alpha + (b << base_shift)) / a);
+ }
+ };
+
+
+ //====================================================blender_rgba_wrapper
+ template<class Blender> struct blender_rgba_wrapper
+ {
+ typedef typename Blender::color_type color_type;
+ typedef typename Blender::order_type order_type;
+ typedef typename Blender::pixel_type pixel_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_size = color_type::base_size,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ static AGG_INLINE void blend_pix(value_type* p,
+ unsigned cr, unsigned cg, unsigned cb,
+ unsigned alpha,
+ unsigned cover)
+ {
+ Blender::blend_pix(p, cr, cg, cb, alpha, cover);
+ }
+
+ //--------------------------------------------------------------------
+ static AGG_INLINE void copy_or_blend_pix(value_type* p,
+ const color_type& c,
+ unsigned cover)
+ {
+ if (c.a)
+ {
+ calc_type alpha = (calc_type(c.a) * (cover + 1)) >> 8;
+ if(alpha == base_mask)
+ {
+ p[order_type::R] = c.r;
+ p[order_type::G] = c.g;
+ p[order_type::B] = c.b;
+ p[order_type::A] = c.a;
+ }
+ else
+ {
+ Blender::blend_pix(p, c.r, c.g, c.b, alpha, cover);
+ }
+ }
+ }
+
+ //--------------------------------------------------------------------
+ static AGG_INLINE void copy_or_blend_opaque_pix(value_type* p,
+ const color_type& c,
+ unsigned cover)
+ {
+ if(cover == 255)
+ {
+ p[order_type::R] = c.r;
+ p[order_type::G] = c.g;
+ p[order_type::B] = c.b;
+ p[order_type::A] = base_mask;
+ }
+ else
+ {
+ Blender::blend_pix(p, c.r, c.g, c.b, (cover + 1) << (base_shift - 8), cover);
+ }
+ }
+ };
+
+
+
+
+ //=======================================================pixel_formats_rgba
+ template<class Blender> class pixel_formats_rgba
+ {
+ public:
+ typedef rendering_buffer::row_data row_data;
+ typedef typename Blender::color_type color_type;
+ typedef typename Blender::order_type order_type;
+ typedef typename Blender::pixel_type pixel_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ typedef blender_rgba_wrapper<Blender> blender_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_size = color_type::base_size,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ pixel_formats_rgba(rendering_buffer& rb) :
+ m_rbuf(&rb)
+ {}
+
+ //--------------------------------------------------------------------
+ AGG_INLINE unsigned width() const { return m_rbuf->width(); }
+ AGG_INLINE unsigned height() const { return m_rbuf->height(); }
+
+ //--------------------------------------------------------------------
+ AGG_INLINE color_type pixel(int x, int y) const
+ {
+ const value_type* p = (value_type*)m_rbuf->row(y) + (x << 2);
+ return color_type(p[order_type::R],
+ p[order_type::G],
+ p[order_type::B],
+ p[order_type::A]);
+ }
+
+ //--------------------------------------------------------------------
+ row_data span(int x, int y) const
+ {
+ return row_data(x,
+ width() - 1,
+ m_rbuf->row(y) + x * 4 * sizeof(value_type));
+ }
+
+ //--------------------------------------------------------------------
+ AGG_INLINE void copy_pixel(int x, int y, const color_type& c)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + (x << 2);
+ p[order_type::R] = c.r;
+ p[order_type::G] = c.g;
+ p[order_type::B] = c.b;
+ p[order_type::A] = c.a;
+ }
+
+ //--------------------------------------------------------------------
+ AGG_INLINE void blend_pixel(int x, int y, const color_type& c, int8u cover)
+ {
+ blender_type::copy_or_blend_pix((value_type*)m_rbuf->row(y) + (x << 2), c, cover);
+ }
+
+
+ //--------------------------------------------------------------------
+ AGG_INLINE void copy_hline(int x, int y,
+ unsigned len,
+ const color_type& c)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + (x << 2);
+ pixel_type v;
+ ((value_type*)&v)[order_type::R] = c.r;
+ ((value_type*)&v)[order_type::G] = c.g;
+ ((value_type*)&v)[order_type::B] = c.b;
+ ((value_type*)&v)[order_type::A] = c.a;
+ do
+ {
+ *(pixel_type*)p = v;
+ p += 4;
+ }
+ while(--len);
+ }
+
+
+ //--------------------------------------------------------------------
+ AGG_INLINE void copy_vline(int x, int y,
+ unsigned len,
+ const color_type& c)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + (x << 2);
+ pixel_type v;
+ ((value_type*)&v)[order_type::R] = c.r;
+ ((value_type*)&v)[order_type::G] = c.g;
+ ((value_type*)&v)[order_type::B] = c.b;
+ ((value_type*)&v)[order_type::A] = c.a;
+ do
+ {
+ *(pixel_type*)p = v;
+ p = (value_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_hline(int x, int y,
+ unsigned len,
+ const color_type& c,
+ int8u cover)
+ {
+ if (c.a)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + (x << 2);
+ calc_type alpha = (calc_type(c.a) * (cover + 1)) >> 8;
+ if(alpha == base_mask)
+ {
+ pixel_type v;
+ ((value_type*)&v)[order_type::R] = c.r;
+ ((value_type*)&v)[order_type::G] = c.g;
+ ((value_type*)&v)[order_type::B] = c.b;
+ ((value_type*)&v)[order_type::A] = c.a;
+ do
+ {
+ *(pixel_type*)p = v;
+ p += 4;
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ blender_type::blend_pix(p, c.r, c.g, c.b, alpha, cover);
+ p += 4;
+ }
+ while(--len);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_vline(int x, int y,
+ unsigned len,
+ const color_type& c,
+ int8u cover)
+ {
+ if (c.a)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + (x << 2);
+ calc_type alpha = (calc_type(c.a) * (cover + 1)) >> 8;
+ if(alpha == base_mask)
+ {
+ pixel_type v;
+ ((value_type*)&v)[order_type::R] = c.r;
+ ((value_type*)&v)[order_type::G] = c.g;
+ ((value_type*)&v)[order_type::B] = c.b;
+ ((value_type*)&v)[order_type::A] = c.a;
+ do
+ {
+ *(pixel_type*)p = v;
+ p = (value_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ blender_type::blend_pix(p, c.r, c.g, c.b, alpha, cover);
+ p = (value_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_solid_hspan(int x, int y,
+ unsigned len,
+ const color_type& c,
+ const int8u* covers)
+ {
+ if (c.a)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + (x << 2);
+ do
+ {
+ calc_type alpha = (calc_type(c.a) * (calc_type(*covers) + 1)) >> 8;
+ if(alpha == base_mask)
+ {
+ p[order_type::R] = c.r;
+ p[order_type::G] = c.g;
+ p[order_type::B] = c.b;
+ p[order_type::A] = base_mask;
+ }
+ else
+ {
+ blender_type::blend_pix(p, c.r, c.g, c.b, alpha, *covers);
+ }
+ p += 4;
+ ++covers;
+ }
+ while(--len);
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_solid_vspan(int x, int y,
+ unsigned len,
+ const color_type& c,
+ const int8u* covers)
+ {
+ if (c.a)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + (x << 2);
+ do
+ {
+ calc_type alpha = (calc_type(c.a) * (calc_type(*covers) + 1)) >> 8;
+ if(alpha == base_mask)
+ {
+ p[order_type::R] = c.r;
+ p[order_type::G] = c.g;
+ p[order_type::B] = c.b;
+ p[order_type::A] = base_mask;
+ }
+ else
+ {
+ blender_type::blend_pix(p, c.r, c.g, c.b, alpha, *covers);
+ }
+ p = (value_type*)m_rbuf->next_row(p);
+ ++covers;
+ }
+ while(--len);
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_color_hspan(int x, int y,
+ unsigned len,
+ const color_type* colors,
+ const int8u* covers,
+ int8u cover)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + (x << 2);
+ if(covers)
+ {
+ do
+ {
+ blender_type::copy_or_blend_pix(p, *colors++, *covers++);
+ p += 4;
+ }
+ while(--len);
+ }
+ else
+ {
+ if(cover == 255)
+ {
+ do
+ {
+ if(colors->a == base_mask)
+ {
+ p[order_type::R] = colors->r;
+ p[order_type::G] = colors->g;
+ p[order_type::B] = colors->b;
+ p[order_type::A] = base_mask;
+ }
+ else
+ {
+ blender_type::copy_or_blend_pix(p, *colors, 255);
+ }
+ p += 4;
+ ++colors;
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ blender_type::copy_or_blend_pix(p, *colors++, cover);
+ p += 4;
+ }
+ while(--len);
+ }
+ }
+ }
+
+
+
+ //--------------------------------------------------------------------
+ void blend_color_vspan(int x, int y,
+ unsigned len,
+ const color_type* colors,
+ const int8u* covers,
+ int8u cover)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + (x << 2);
+ if(covers)
+ {
+ do
+ {
+ blender_type::copy_or_blend_pix(p, *colors++, *covers++);
+ p = (value_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+ else
+ {
+ if(cover == 255)
+ {
+ do
+ {
+ if(colors->a == base_mask)
+ {
+ p[order_type::R] = colors->r;
+ p[order_type::G] = colors->g;
+ p[order_type::B] = colors->b;
+ p[order_type::A] = base_mask;
+ }
+ else
+ {
+ blender_type::copy_or_blend_pix(p, *colors, 255);
+ }
+ p = (value_type*)m_rbuf->next_row(p);
+ ++colors;
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ blender_type::copy_or_blend_pix(p, *colors++, cover);
+ p = (value_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_opaque_color_hspan(int x, int y,
+ unsigned len,
+ const color_type* colors,
+ const int8u* covers,
+ int8u cover)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + (x << 2);
+ if(covers)
+ {
+ do
+ {
+ blender_type::copy_or_blend_opaque_pix(p, *colors++, *covers++);
+ p += 4;
+ }
+ while(--len);
+ }
+ else
+ {
+ if(cover == 255)
+ {
+ do
+ {
+ p[order_type::R] = colors->r;
+ p[order_type::G] = colors->g;
+ p[order_type::B] = colors->b;
+ p[order_type::A] = base_mask;
+ p += 4;
+ ++colors;
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ blender_type::copy_or_blend_opaque_pix(p, *colors++, cover);
+ p += 4;
+ }
+ while(--len);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_opaque_color_vspan(int x, int y,
+ unsigned len,
+ const color_type* colors,
+ const int8u* covers,
+ int8u cover)
+ {
+ value_type* p = (value_type*)m_rbuf->row(y) + (x << 2);
+ if(covers)
+ {
+ do
+ {
+ blender_type::copy_or_blend_opaque_pix(p, *colors++, *covers++);
+ p = (value_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+ else
+ {
+ if(cover == 255)
+ {
+ do
+ {
+ p[order_type::R] = colors->r;
+ p[order_type::G] = colors->g;
+ p[order_type::B] = colors->b;
+ p[order_type::A] = base_mask;
+ p = (value_type*)m_rbuf->next_row(p);
+ ++colors;
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ blender_type::copy_or_blend_opaque_pix(p, *colors++, cover);
+ p = (value_type*)m_rbuf->next_row(p);
+ }
+ while(--len);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ template<class Function> void for_each_pixel(Function f)
+ {
+ unsigned y;
+ for(y = 0; y < height(); ++y)
+ {
+ unsigned len = width();
+ value_type* p = (value_type*)m_rbuf->row(y);
+ do
+ {
+ f(p);
+ p += 4;
+ }
+ while(--len);
+ }
+ }
+
+ //--------------------------------------------------------------------
+ void premultiply()
+ {
+ for_each_pixel(multiplier_rgba<color_type, order_type>::premultiply);
+ }
+
+ //--------------------------------------------------------------------
+ void demultiply()
+ {
+ for_each_pixel(multiplier_rgba<color_type, order_type>::demultiply);
+ }
+
+ //--------------------------------------------------------------------
+ template<class GammaLut> void apply_gamma_dir(const GammaLut& g)
+ {
+ for_each_pixel(apply_gamma_dir_rgba<color_type, order_type, GammaLut>(g));
+ }
+
+ //--------------------------------------------------------------------
+ template<class GammaLut> void apply_gamma_inv(const GammaLut& g)
+ {
+ for_each_pixel(apply_gamma_inv_rgba<color_type, order_type, GammaLut>(g));
+ }
+
+ //--------------------------------------------------------------------
+ void copy_from(const rendering_buffer& from,
+ int xdst, int ydst,
+ int xsrc, int ysrc,
+ unsigned len)
+ {
+ memmove((value_type*)m_rbuf->row(ydst) + xdst * 4,
+ (value_type*)from.row(ysrc) + xsrc * 4,
+ sizeof(value_type) * 4 * len);
+ }
+
+
+ //--------------------------------------------------------------------
+ template<class SrcPixelFormatRenderer>
+ void blend_from(const SrcPixelFormatRenderer& from,
+ const int8u* psrc_,
+ int xdst, int ydst,
+ int xsrc, int ysrc,
+ unsigned len)
+ {
+ typedef typename SrcPixelFormatRenderer::order_type src_order;
+
+ const value_type* psrc = (const value_type*)psrc_;
+ value_type* pdst = (value_type*)m_rbuf->row(ydst) + (xdst << 2);
+ int incp = 4;
+ if(xdst > xsrc)
+ {
+ psrc += (len-1) << 2;
+ pdst += (len-1) << 2;
+ incp = -4;
+ }
+ do
+ {
+ value_type alpha = psrc[src_order::A];
+
+ if(alpha)
+ {
+ if(alpha == base_mask)
+ {
+ pdst[order_type::R] = psrc[src_order::R];
+ pdst[order_type::G] = psrc[src_order::G];
+ pdst[order_type::B] = psrc[src_order::B];
+ pdst[order_type::A] = psrc[src_order::A];
+ }
+ else
+ {
+ blender_type::blend_pix(pdst,
+ psrc[src_order::R],
+ psrc[src_order::G],
+ psrc[src_order::B],
+ alpha,
+ 255);
+ }
+ }
+ psrc += incp;
+ pdst += incp;
+ }
+ while(--len);
+ }
+
+ private:
+ rendering_buffer* m_rbuf;
+ };
+
+
+
+
+ //================================================pixfmt_custom_rbuf_rgba
+ template<class Blender, class RenBuf> class pixfmt_custom_rbuf_rgba
+ {
+ public:
+ typedef typename Blender::color_type color_type;
+ typedef typename Blender::order_type order_type;
+ typedef typename Blender::pixel_type pixel_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ typedef blender_rgba_wrapper<Blender> blender_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_size = color_type::base_size,
+ base_mask = color_type::base_mask
+ };
+
+ typedef RenBuf rbuf_type;
+ typedef typename rbuf_type::row_data row_data;
+
+ //--------------------------------------------------------------------
+ pixfmt_custom_rbuf_rgba(rbuf_type& rb) : m_rbuf(&rb) {}
+
+ //--------------------------------------------------------------------
+ unsigned width() const { return m_rbuf->width(); }
+ unsigned height() const { return m_rbuf->height(); }
+
+ //--------------------------------------------------------------------
+ color_type pixel(int x, int y) const
+ {
+ const value_type* p = m_rbuf->span_ptr(x, y, 1);
+ return p ? color_type(p[order_type::R],
+ p[order_type::G],
+ p[order_type::B],
+ p[order_type::A]) :
+ color_type::no_color();
+ }
+
+ //--------------------------------------------------------------------
+ row_data span(int x, int y) const
+ {
+ return m_rbuf->span(x, y);
+ }
+
+ //--------------------------------------------------------------------
+ void copy_pixel(int x, int y, const color_type& c)
+ {
+ int8u* p = m_rbuf->span_ptr(x, y, 1);
+ p[order_type::R] = c.r;
+ p[order_type::G] = c.g;
+ p[order_type::B] = c.b;
+ p[order_type::A] = c.b;
+ }
+
+ //--------------------------------------------------------------------
+ void blend_pixel(int x, int y, const color_type& c, int8u cover)
+ {
+ blender_type::copy_or_blend_pix((value_type*)m_rbuf->span_ptr(x, y, 1), c, cover);
+ }
+
+ //--------------------------------------------------------------------
+ void copy_hline(int x, int y, unsigned len, const color_type& c)
+ {
+ value_type* p = (value_type*)m_rbuf->span_ptr(x, y, len);
+ pixel_type v;
+ ((value_type*)&v)[order_type::R] = c.r;
+ ((value_type*)&v)[order_type::G] = c.g;
+ ((value_type*)&v)[order_type::B] = c.b;
+ ((value_type*)&v)[order_type::A] = c.a;
+ do
+ {
+ *(pixel_type*)p = v;
+ p += 4;
+ }
+ while(--len);
+ }
+
+ //--------------------------------------------------------------------
+ void copy_vline(int x, int y, unsigned len, const color_type& c)
+ {
+ pixel_type v;
+ ((value_type*)&v)[order_type::R] = c.r;
+ ((value_type*)&v)[order_type::G] = c.g;
+ ((value_type*)&v)[order_type::B] = c.b;
+ ((value_type*)&v)[order_type::A] = c.a;
+ do
+ {
+ *(pixel_type*)(m_rbuf->span_ptr(x, y++, 1)) = v;
+ }
+ while(--len);
+ }
+
+ //--------------------------------------------------------------------
+ void blend_hline(int x, int y, unsigned len,
+ const color_type& c, int8u cover)
+ {
+ if (c.a)
+ {
+ value_type* p = (value_type*)m_rbuf->span_ptr(x, y, len);
+ calc_type alpha = (calc_type(c.a) * (cover + 1)) >> 8;
+ if(alpha == base_mask)
+ {
+ pixel_type v;
+ ((value_type*)&v)[order_type::R] = c.r;
+ ((value_type*)&v)[order_type::G] = c.g;
+ ((value_type*)&v)[order_type::B] = c.b;
+ ((value_type*)&v)[order_type::A] = c.a;
+ do
+ {
+ *(pixel_type*)p = v;
+ p += 4;
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ blender_type::blend_pix(p, c.r, c.g, c.b, alpha, cover);
+ p += 4;
+ }
+ while(--len);
+ }
+ }
+ }
+
+ //--------------------------------------------------------------------
+ void blend_vline(int x, int y, unsigned len,
+ const color_type& c, int8u cover)
+ {
+ if (c.a)
+ {
+ calc_type alpha = (calc_type(c.a) * (cover + 1)) >> 8;
+ if(alpha == base_mask)
+ {
+ pixel_type v;
+ ((value_type*)&v)[order_type::R] = c.r;
+ ((value_type*)&v)[order_type::G] = c.g;
+ ((value_type*)&v)[order_type::B] = c.b;
+ ((value_type*)&v)[order_type::A] = c.a;
+ do
+ {
+ *(pixel_type*)(m_rbuf->span_ptr(x, y++, 1)) = v;
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ blender_type::blend_pix(*(pixel_type*)m_rbuf->span_ptr(x, y++, 1),
+ c.r, c.g, c.b, alpha, cover);
+ }
+ while(--len);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_solid_hspan(int x, int y, unsigned len,
+ const color_type& c, const int8u* covers)
+ {
+ value_type* p = (value_type*)m_rbuf->span_ptr(x, y, len);
+ do
+ {
+ blender_type::copy_or_blend_pix(p, c, *covers++);
+ p += 4;
+ }
+ while(--len);
+ }
+
+
+
+ //--------------------------------------------------------------------
+ void blend_solid_vspan(int x, int y, unsigned len,
+ const color_type& c, const int8u* covers)
+ {
+ do
+ {
+ blender_type::copy_or_blend_pix((value_type*)m_rbuf->span_ptr(x, y++, 1),
+ c,
+ *covers++);
+ }
+ while(--len);
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_color_hspan(int x, int y, unsigned len,
+ const color_type* colors,
+ const int8u* covers,
+ int8u cover)
+ {
+ value_type* p = (value_type*)m_rbuf->span_ptr(x, y, len);
+ do
+ {
+ blender_type::copy_or_blend_pix(p, *colors++, covers ? *covers++ : cover);
+ p += 4;
+ }
+ while(--len);
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_color_vspan(int x, int y, unsigned len,
+ const color_type* colors,
+ const int8u* covers,
+ int8u cover)
+ {
+ do
+ {
+ blender_type::copy_or_blend_pix((value_type*)m_rbuf->span_ptr(x, y++, 1),
+ *colors++, covers ? *covers++ : cover);
+ }
+ while(--len);
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_opaque_color_hspan(int x, int y,
+ unsigned len,
+ const color_type* colors,
+ const int8u* covers,
+ int8u cover)
+ {
+ value_type* p = (value_type*)m_rbuf->span_ptr(x, y, len);
+ if(covers)
+ {
+ do
+ {
+ blender_type::copy_or_blend_opaque_pix(p, *colors++, *covers++);
+ p += 4;
+ }
+ while(--len);
+ }
+ else
+ {
+ if(cover == 255)
+ {
+ do
+ {
+ p[order_type::R] = colors->r;
+ p[order_type::G] = colors->g;
+ p[order_type::B] = colors->b;
+ p[order_type::A] = base_mask;
+ p += 4;
+ ++colors;
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ blender_type::copy_or_blend_opaque_pix(p, *colors++, cover);
+ p += 4;
+ }
+ while(--len);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_opaque_color_vspan(int x, int y,
+ unsigned len,
+ const color_type* colors,
+ const int8u* covers,
+ int8u cover)
+ {
+ if(covers)
+ {
+ do
+ {
+ blender_type::copy_or_blend_opaque_pix((value_type*)m_rbuf->span_ptr(x, y++, 1),
+ *colors++, *covers++);
+ }
+ while(--len);
+ }
+ else
+ {
+ if(cover == 255)
+ {
+ do
+ {
+ value_type* p = (value_type*)m_rbuf->span_ptr(x, y++, 1);
+ p[order_type::R] = colors->r;
+ p[order_type::G] = colors->g;
+ p[order_type::B] = colors->b;
+ p[order_type::A] = base_mask;
+ ++colors;
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ blender_type::copy_or_blend_opaque_pix((value_type*)m_rbuf->span_ptr(x, y++, 1),
+ *colors++, cover);
+ }
+ while(--len);
+ }
+ }
+ }
+
+
+
+ //--------------------------------------------------------------------
+ template<class Function> void for_each_pixel(Function f)
+ {
+ unsigned y;
+ for(y = 0; y < height(); ++y)
+ {
+ row_data sp = span(0, y);
+ if(sp.ptr)
+ {
+ value_type* p = (value_type*)sp.ptr;
+ while(sp.x1 <= sp.x2)
+ {
+ f(p);
+ p += 4;
+ ++sp.x1;
+ }
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void premultiply()
+ {
+ for_each_pixel(multiplier_rgba<color_type, order_type>::premultiply);
+ }
+
+ //--------------------------------------------------------------------
+ void demultiply()
+ {
+ for_each_pixel(multiplier_rgba<color_type, order_type>::demultiply);
+ }
+
+ //--------------------------------------------------------------------
+ template<class GammaLut> void apply_gamma_dir(const GammaLut& g)
+ {
+ for_each_pixel(apply_gamma_dir_rgba<color_type, order_type, GammaLut>(g));
+ }
+
+ //--------------------------------------------------------------------
+ template<class GammaLut> void apply_gamma_inv(const GammaLut& g)
+ {
+ for_each_pixel(apply_gamma_inv_rgba<color_type, order_type, GammaLut>(g));
+ }
+
+ //--------------------------------------------------------------------
+ template<class RenBuf2> void copy_from(const RenBuf2& from,
+ int xdst, int ydst,
+ int xsrc, int ysrc,
+ unsigned len)
+ {
+ const int8u* p = from.row(ysrc);
+ if(p)
+ {
+ p += xsrc * 4 * sizeof(value_type);
+ memmove(m_rbuf->span_ptr(xdst, ydst, len),
+ p,
+ len * 4 * sizeof(value_type));
+ }
+ }
+
+
+
+ //--------------------------------------------------------------------
+ template<class SrcPixelFormatRenderer>
+ void blend_from(const SrcPixelFormatRenderer& from,
+ const int8u* psrc_,
+ int xdst, int ydst,
+ int xsrc, int ysrc,
+ unsigned len)
+ {
+ typedef typename SrcPixelFormatRenderer::order_type src_order;
+ const value_type* psrc = (const value_type*)psrc_;
+ value_type* pdst = (value_type*)m_rbuf->span_ptr(xdst, ydst, len);
+
+ int incp = 4;
+ if(xdst > xsrc)
+ {
+ psrc += (len-1) << 2;
+ pdst += (len-1) << 2;
+ incp = -4;
+ }
+ do
+ {
+ value_type alpha = psrc[src_order::A];
+
+ if(alpha)
+ {
+ if(alpha == base_mask)
+ {
+ pdst[order_type::R] = psrc[src_order::R];
+ pdst[order_type::G] = psrc[src_order::G];
+ pdst[order_type::B] = psrc[src_order::B];
+ pdst[order_type::A] = psrc[src_order::A];
+ }
+ else
+ {
+ blender_type::blend_pix(pdst,
+ psrc[src_order::R],
+ psrc[src_order::G],
+ psrc[src_order::B],
+ alpha,
+ 255);
+ }
+ }
+ psrc += incp;
+ pdst += incp;
+ }
+ while(--len);
+ }
+
+
+ private:
+ rbuf_type* m_rbuf;
+ };
+
+
+
+
+
+
+
+ //-----------------------------------------------------------------------
+ typedef blender_rgba<rgba8, order_rgba, int32u> blender_rgba32; //----blender_rgba32
+ typedef blender_rgba<rgba8, order_argb, int32u> blender_argb32; //----blender_argb32
+ typedef blender_rgba<rgba8, order_abgr, int32u> blender_abgr32; //----blender_abgr32
+ typedef blender_rgba<rgba8, order_bgra, int32u> blender_bgra32; //----blender_bgra32
+
+ typedef blender_rgba_pre<rgba8, order_rgba, int32u> blender_rgba32_pre; //----blender_rgba32_pre
+ typedef blender_rgba_pre<rgba8, order_argb, int32u> blender_argb32_pre; //----blender_argb32_pre
+ typedef blender_rgba_pre<rgba8, order_abgr, int32u> blender_abgr32_pre; //----blender_abgr32_pre
+ typedef blender_rgba_pre<rgba8, order_bgra, int32u> blender_bgra32_pre; //----blender_bgra32_pre
+
+ typedef blender_rgba_plain<rgba8, order_rgba, int32u> blender_rgba32_plain; //----blender_rgba32_plain
+ typedef blender_rgba_plain<rgba8, order_argb, int32u> blender_argb32_plain; //----blender_argb32_plain
+ typedef blender_rgba_plain<rgba8, order_abgr, int32u> blender_abgr32_plain; //----blender_abgr32_plain
+ typedef blender_rgba_plain<rgba8, order_bgra, int32u> blender_bgra32_plain; //----blender_bgra32_plain
+
+ struct pixel64_type { int16u c[4]; };
+ typedef blender_rgba<rgba16, order_rgba, pixel64_type> blender_rgba64; //----blender_rgba64
+ typedef blender_rgba<rgba16, order_argb, pixel64_type> blender_argb64; //----blender_argb64
+ typedef blender_rgba<rgba16, order_abgr, pixel64_type> blender_abgr64; //----blender_abgr64
+ typedef blender_rgba<rgba16, order_bgra, pixel64_type> blender_bgra64; //----blender_bgra64
+
+ typedef blender_rgba_pre<rgba16, order_rgba, pixel64_type> blender_rgba64_pre; //----blender_rgba64_pre
+ typedef blender_rgba_pre<rgba16, order_argb, pixel64_type> blender_argb64_pre; //----blender_argb64_pre
+ typedef blender_rgba_pre<rgba16, order_abgr, pixel64_type> blender_abgr64_pre; //----blender_abgr64_pre
+ typedef blender_rgba_pre<rgba16, order_bgra, pixel64_type> blender_bgra64_pre; //----blender_bgra64_pre
+
+
+ //-----------------------------------------------------------------------
+ typedef pixel_formats_rgba<blender_rgba32> pixfmt_rgba32; //----pixfmt_rgba32
+ typedef pixel_formats_rgba<blender_argb32> pixfmt_argb32; //----pixfmt_argb32
+ typedef pixel_formats_rgba<blender_abgr32> pixfmt_abgr32; //----pixfmt_abgr32
+ typedef pixel_formats_rgba<blender_bgra32> pixfmt_bgra32; //----pixfmt_bgra32
+
+ typedef pixel_formats_rgba<blender_rgba32_pre> pixfmt_rgba32_pre; //----pixfmt_rgba32_pre
+ typedef pixel_formats_rgba<blender_argb32_pre> pixfmt_argb32_pre; //----pixfmt_argb32_pre
+ typedef pixel_formats_rgba<blender_abgr32_pre> pixfmt_abgr32_pre; //----pixfmt_abgr32_pre
+ typedef pixel_formats_rgba<blender_bgra32_pre> pixfmt_bgra32_pre; //----pixfmt_bgra32_pre
+
+ typedef pixel_formats_rgba<blender_rgba32_plain> pixfmt_rgba32_plain; //----pixfmt_rgba32_plain
+ typedef pixel_formats_rgba<blender_argb32_plain> pixfmt_argb32_plain; //----pixfmt_argb32_plain
+ typedef pixel_formats_rgba<blender_abgr32_plain> pixfmt_abgr32_plain; //----pixfmt_abgr32_plain
+ typedef pixel_formats_rgba<blender_bgra32_plain> pixfmt_bgra32_plain; //----pixfmt_bgra32_plain
+
+ typedef pixel_formats_rgba<blender_rgba64> pixfmt_rgba64; //----pixfmt_rgba64
+ typedef pixel_formats_rgba<blender_argb64> pixfmt_argb64; //----pixfmt_argb64
+ typedef pixel_formats_rgba<blender_abgr64> pixfmt_abgr64; //----pixfmt_abgr64
+ typedef pixel_formats_rgba<blender_bgra64> pixfmt_bgra64; //----pixfmt_bgra64
+
+ typedef pixel_formats_rgba<blender_rgba64_pre> pixfmt_rgba64_pre; //----pixfmt_rgba64_pre
+ typedef pixel_formats_rgba<blender_argb64_pre> pixfmt_argb64_pre; //----pixfmt_argb64_pre
+ typedef pixel_formats_rgba<blender_abgr64_pre> pixfmt_abgr64_pre; //----pixfmt_abgr64_pre
+ typedef pixel_formats_rgba<blender_bgra64_pre> pixfmt_bgra64_pre; //----pixfmt_bgra64_pre
+}
+
+#endif
+
diff --git a/agg/inc/agg_rasterizer_outline.h b/agg/inc/agg_rasterizer_outline.h
new file mode 100755
index 000000000000..18512e76a1ad
--- /dev/null
+++ b/agg/inc/agg_rasterizer_outline.h
@@ -0,0 +1,146 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+#ifndef AGG_RASTERIZER_OUTLINE_INCLUDED
+#define AGG_RASTERIZER_OUTLINE_INCLUDED
+
+#include "agg_basics.h"
+
+namespace agg
+{
+ //======================================================rasterizer_outline
+ template<class Renderer> class rasterizer_outline
+ {
+ public:
+ rasterizer_outline(Renderer& ren) :
+ m_ren(&ren),
+ m_start_x(0),
+ m_start_y(0),
+ m_vertices(0)
+ {
+ }
+
+ //--------------------------------------------------------------------
+ void move_to(int x, int y)
+ {
+ m_vertices = 1;
+ m_ren->move_to(m_start_x = x, m_start_y = y);
+ }
+
+ //--------------------------------------------------------------------
+ void line_to(int x, int y)
+ {
+ ++m_vertices;
+ m_ren->line_to(x, y);
+ }
+
+ //--------------------------------------------------------------------
+ void move_to_d(double x, double y)
+ {
+ move_to(m_ren->coord(x), m_ren->coord(y));
+ }
+
+ //--------------------------------------------------------------------
+ void line_to_d(double x, double y)
+ {
+ line_to(m_ren->coord(x), m_ren->coord(y));
+ }
+
+ //--------------------------------------------------------------------
+ void close()
+ {
+ if(m_vertices > 2)
+ {
+ line_to(m_start_x, m_start_y);
+ }
+ m_vertices = 0;
+ }
+
+ //--------------------------------------------------------------------
+ void add_vertex(double x, double y, unsigned cmd)
+ {
+ if(is_move_to(cmd))
+ {
+ move_to_d(x, y);
+ }
+ else
+ {
+ if(is_end_poly(cmd))
+ {
+ if(is_closed(cmd)) close();
+ }
+ else
+ {
+ line_to_d(x, y);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ template<class VertexSource>
+ void add_path(VertexSource& vs, unsigned id=0)
+ {
+ double x;
+ double y;
+
+ unsigned cmd;
+ vs.rewind(id);
+ while(!is_stop(cmd = vs.vertex(&x, &y)))
+ {
+ add_vertex(x, y, cmd);
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ template<class VertexSource, class ColorStorage, class PathId>
+ void render_all_paths(VertexSource& vs,
+ const ColorStorage& colors,
+ const PathId& id,
+ unsigned num_paths)
+ {
+ for(unsigned i = 0; i < num_paths; i++)
+ {
+ m_ren->line_color(colors[i]);
+ add_path(vs, id[i]);
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ template<class Ctrl> void render_ctrl(Ctrl& c)
+ {
+ unsigned i;
+ for(i = 0; i < c.num_paths(); i++)
+ {
+ m_ren->line_color(c.color(i));
+ add_path(c, i);
+ }
+ }
+
+
+ private:
+ Renderer* m_ren;
+ int m_start_x;
+ int m_start_y;
+ unsigned m_vertices;
+ };
+
+
+}
+
+
+#endif
+
diff --git a/agg/inc/agg_rasterizer_outline_aa.h b/agg/inc/agg_rasterizer_outline_aa.h
new file mode 100755
index 000000000000..3f4d6395fafa
--- /dev/null
+++ b/agg/inc/agg_rasterizer_outline_aa.h
@@ -0,0 +1,516 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+#ifndef AGG_RASTERIZER_OUTLINE_AA_INCLUDED
+#define AGG_RASTERIZER_OUTLINE_AA_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_line_aa_basics.h"
+#include "agg_vertex_sequence.h"
+
+namespace agg
+{
+
+ //-------------------------------------------------------------------------
+ inline bool cmp_dist_start(int d) { return d > 0; }
+ inline bool cmp_dist_end(int d) { return d <= 0; }
+
+
+
+ //-----------------------------------------------------------line_aa_vertex
+ // Vertex (x, y) with the distance to the next one. The last vertex has
+ // the distance between the last and the first points
+ struct line_aa_vertex
+ {
+ int x;
+ int y;
+ int len;
+
+ line_aa_vertex() {}
+ line_aa_vertex(int x_, int y_) :
+ x(x_),
+ y(y_),
+ len(0)
+ {
+ }
+
+ bool operator () (const line_aa_vertex& val)
+ {
+ double dx = val.x - x;
+ double dy = val.y - y;
+ return (len = int(sqrt(dx * dx + dy * dy))) >
+ (line_subpixel_size + line_subpixel_size / 2);
+ }
+ };
+
+
+
+
+ //=======================================================rasterizer_outline_aa
+ template<class Renderer> class rasterizer_outline_aa
+ {
+ private:
+ //------------------------------------------------------------------------
+ struct draw_vars
+ {
+ unsigned idx;
+ int x1, y1, x2, y2;
+ line_parameters curr, next;
+ int lcurr, lnext;
+ int xb1, yb1, xb2, yb2;
+ unsigned flags;
+ };
+
+ void draw(draw_vars& dv, unsigned start, unsigned end);
+
+ public:
+ typedef line_aa_vertex vertex_type;
+ typedef vertex_sequence<vertex_type, 6> vertex_storage_type;
+
+ rasterizer_outline_aa(Renderer& ren) :
+ m_ren(ren),
+ m_accurate_join(m_ren.accurate_join_only()),
+ m_round_cap(false),
+ m_start_x(0),
+ m_start_y(0)
+ {
+ }
+
+ //------------------------------------------------------------------------
+ void accurate_join(bool v)
+ {
+ m_accurate_join = m_ren.accurate_join_only() ? true : v;
+ }
+ bool accurate_join() const { return m_accurate_join; }
+
+ //------------------------------------------------------------------------
+ void round_cap(bool v) { m_round_cap = v; }
+ bool round_cap() const { return m_round_cap; }
+
+ //------------------------------------------------------------------------
+ void move_to(int x, int y)
+ {
+ m_src_vertices.modify_last(vertex_type(m_start_x = x, m_start_y = y));
+ }
+
+ //------------------------------------------------------------------------
+ void line_to(int x, int y)
+ {
+ m_src_vertices.add(vertex_type(x, y));
+ }
+
+ //------------------------------------------------------------------------
+ void move_to_d(double x, double y)
+ {
+ move_to(line_coord(x), line_coord(y));
+ }
+
+ //------------------------------------------------------------------------
+ void line_to_d(double x, double y)
+ {
+ line_to(line_coord(x), line_coord(y));
+ }
+
+ //------------------------------------------------------------------------
+ void render(bool close_polygon);
+
+ //------------------------------------------------------------------------
+ void add_vertex(double x, double y, unsigned cmd)
+ {
+ if(is_move_to(cmd))
+ {
+ render(false);
+ move_to_d(x, y);
+ }
+ else
+ {
+ if(is_end_poly(cmd))
+ {
+ render(is_closed(cmd));
+ if(is_closed(cmd))
+ {
+ move_to(m_start_x, m_start_y);
+ }
+ }
+ else
+ {
+ line_to_d(x, y);
+ }
+ }
+ }
+
+ //------------------------------------------------------------------------
+ template<class VertexSource>
+ void add_path(VertexSource& vs, unsigned id=0)
+ {
+ double x;
+ double y;
+
+ unsigned cmd;
+ vs.rewind(id);
+ while(!is_stop(cmd = vs.vertex(&x, &y)))
+ {
+ add_vertex(x, y, cmd);
+ }
+ render(false);
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class VertexSource, class ColorStorage, class PathId>
+ void render_all_paths(VertexSource& vs,
+ const ColorStorage& colors,
+ const PathId& id,
+ unsigned num_paths)
+ {
+ for(unsigned i = 0; i < num_paths; i++)
+ {
+ m_ren.color(colors[i]);
+ add_path(vs, id[i]);
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class Ctrl> void render_ctrl(Ctrl& c)
+ {
+ unsigned i;
+ for(i = 0; i < c.num_paths(); i++)
+ {
+ m_ren.color(c.color(i));
+ add_path(c, i);
+ }
+ }
+
+ private:
+ rasterizer_outline_aa(const rasterizer_outline_aa<Renderer>&);
+ const rasterizer_outline_aa<Renderer>& operator =
+ (const rasterizer_outline_aa<Renderer>&);
+
+ Renderer& m_ren;
+ vertex_storage_type m_src_vertices;
+ bool m_accurate_join;
+ bool m_round_cap;
+ int m_start_x;
+ int m_start_y;
+ };
+
+
+
+
+
+
+
+
+ //----------------------------------------------------------------------------
+ template<class Renderer>
+ void rasterizer_outline_aa<Renderer>::draw(draw_vars& dv, unsigned start, unsigned end)
+ {
+ unsigned i;
+ const vertex_storage_type::value_type* v;
+
+ for(i = start; i < end; i++)
+ {
+ switch(dv.flags)
+ {
+ case 0: m_ren.line3(dv.curr, dv.xb1, dv.yb1, dv.xb2, dv.yb2); break;
+ case 1: m_ren.line2(dv.curr, dv.xb2, dv.yb2); break;
+ case 2: m_ren.line1(dv.curr, dv.xb1, dv.yb1); break;
+ case 3: m_ren.line0(dv.curr); break;
+ }
+
+ dv.x1 = dv.x2;
+ dv.y1 = dv.y2;
+ dv.lcurr = dv.lnext;
+ dv.lnext = m_src_vertices[dv.idx].len;
+
+ ++dv.idx;
+ if(dv.idx >= m_src_vertices.size()) dv.idx = 0;
+
+ v = &m_src_vertices[dv.idx];
+ dv.x2 = v->x;
+ dv.y2 = v->y;
+
+ dv.curr = dv.next;
+ dv.next = line_parameters(dv.x1, dv.y1, dv.x2, dv.y2, dv.lnext);
+ dv.xb1 = dv.xb2;
+ dv.yb1 = dv.yb2;
+
+ if(m_accurate_join)
+ {
+ dv.flags = 0;
+ }
+ else
+ {
+ dv.flags >>= 1;
+ dv.flags |= ((dv.curr.diagonal_quadrant() ==
+ dv.next.diagonal_quadrant()) << 1);
+ }
+
+ if((dv.flags & 2) == 0)
+ {
+ bisectrix(dv.curr, dv.next, &dv.xb2, &dv.yb2);
+ }
+ }
+ }
+
+
+
+
+ //----------------------------------------------------------------------------
+ template<class Renderer>
+ void rasterizer_outline_aa<Renderer>::render(bool close_polygon)
+ {
+ m_src_vertices.close(close_polygon);
+ draw_vars dv;
+ const vertex_storage_type::value_type* v;
+ int x1;
+ int y1;
+ int x2;
+ int y2;
+ int lprev;
+
+ if(close_polygon)
+ {
+ if(m_src_vertices.size() >= 3)
+ {
+ dv.idx = 2;
+
+ v = &m_src_vertices[m_src_vertices.size() - 1];
+ x1 = v->x;
+ y1 = v->y;
+ lprev = v->len;
+
+ v = &m_src_vertices[0];
+ x2 = v->x;
+ y2 = v->y;
+ dv.lcurr = v->len;
+ line_parameters prev(x1, y1, x2, y2, lprev);
+
+ v = &m_src_vertices[1];
+ dv.x1 = v->x;
+ dv.y1 = v->y;
+ dv.lnext = v->len;
+ dv.curr = line_parameters(x2, y2, dv.x1, dv.y1, dv.lcurr);
+
+ v = &m_src_vertices[dv.idx];
+ dv.x2 = v->x;
+ dv.y2 = v->y;
+ dv.next = line_parameters(dv.x1, dv.y1, dv.x2, dv.y2, dv.lnext);
+
+ dv.xb1 = 0;
+ dv.yb1 = 0;
+ dv.xb2 = 0;
+ dv.yb2 = 0;
+
+ if(m_accurate_join)
+ {
+ dv.flags = 0;
+ }
+ else
+ {
+ dv.flags =
+ (prev.diagonal_quadrant() == dv.curr.diagonal_quadrant()) |
+ ((dv.curr.diagonal_quadrant() == dv.next.diagonal_quadrant()) << 1);
+ }
+
+ if((dv.flags & 1) == 0)
+ {
+ bisectrix(prev, dv.curr, &dv.xb1, &dv.yb1);
+ }
+
+ if((dv.flags & 2) == 0)
+ {
+ bisectrix(dv.curr, dv.next, &dv.xb2, &dv.yb2);
+ }
+ draw(dv, 0, m_src_vertices.size());
+ }
+ }
+ else
+ {
+ switch(m_src_vertices.size())
+ {
+ case 0:
+ case 1:
+ break;
+
+ case 2:
+ {
+ v = &m_src_vertices[0];
+ x1 = v->x;
+ y1 = v->y;
+ lprev = v->len;
+ v = &m_src_vertices[1];
+ x2 = v->x;
+ y2 = v->y;
+ line_parameters lp(x1, y1, x2, y2, lprev);
+ if(m_round_cap)
+ {
+ m_ren.semidot(cmp_dist_start, x1, y1, x1 + (y2 - y1), y1 - (x2 - x1));
+ }
+ m_ren.line3(lp,
+ x1 + (y2 - y1),
+ y1 - (x2 - x1),
+ x2 + (y2 - y1),
+ y2 - (x2 - x1));
+ if(m_round_cap)
+ {
+ m_ren.semidot(cmp_dist_end, x2, y2, x2 + (y2 - y1), y2 - (x2 - x1));
+ }
+ }
+ break;
+
+ case 3:
+ {
+ int x3, y3;
+ int lnext;
+ v = &m_src_vertices[0];
+ x1 = v->x;
+ y1 = v->y;
+ lprev = v->len;
+ v = &m_src_vertices[1];
+ x2 = v->x;
+ y2 = v->y;
+ lnext = v->len;
+ v = &m_src_vertices[2];
+ x3 = v->x;
+ y3 = v->y;
+ line_parameters lp1(x1, y1, x2, y2, lprev);
+ line_parameters lp2(x2, y2, x3, y3, lnext);
+ bisectrix(lp1, lp2, &dv.xb1, &dv.yb1);
+
+ if(m_round_cap)
+ {
+ m_ren.semidot(cmp_dist_start, x1, y1, x1 + (y2 - y1), y1 - (x2 - x1));
+ }
+ m_ren.line3(lp1,
+ x1 + (y2 - y1),
+ y1 - (x2 - x1),
+ dv.xb1,
+ dv.yb1);
+
+ m_ren.line3(lp2,
+ dv.xb1,
+ dv.yb1,
+ x3 + (y3 - y2),
+ y3 - (x3 - x2));
+ if(m_round_cap)
+ {
+ m_ren.semidot(cmp_dist_end, x3, y3, x3 + (y3 - y2), y3 - (x3 - x2));
+ }
+ }
+ break;
+
+ default:
+ {
+ dv.idx = 3;
+
+ v = &m_src_vertices[0];
+ x1 = v->x;
+ y1 = v->y;
+ lprev = v->len;
+
+ v = &m_src_vertices[1];
+ x2 = v->x;
+ y2 = v->y;
+ dv.lcurr = v->len;
+ line_parameters prev(x1, y1, x2, y2, lprev);
+
+ v = &m_src_vertices[2];
+ dv.x1 = v->x;
+ dv.y1 = v->y;
+ dv.lnext = v->len;
+ dv.curr = line_parameters(x2, y2, dv.x1, dv.y1, dv.lcurr);
+
+ v = &m_src_vertices[dv.idx];
+ dv.x2 = v->x;
+ dv.y2 = v->y;
+ dv.next = line_parameters(dv.x1, dv.y1, dv.x2, dv.y2, dv.lnext);
+
+ dv.xb1 = 0;
+ dv.yb1 = 0;
+ dv.xb2 = 0;
+ dv.yb2 = 0;
+
+ if(m_accurate_join)
+ {
+ dv.flags = 0;
+ }
+ else
+ {
+ dv.flags =
+ (prev.diagonal_quadrant() == dv.curr.diagonal_quadrant()) |
+ ((dv.curr.diagonal_quadrant() == dv.next.diagonal_quadrant()) << 1);
+ }
+
+ if((dv.flags & 1) == 0)
+ {
+ bisectrix(prev, dv.curr, &dv.xb1, &dv.yb1);
+ m_ren.line3(prev,
+ x1 + (y2 - y1),
+ y1 - (x2 - x1),
+ dv.xb1,
+ dv.yb1);
+ }
+ else
+ {
+ m_ren.line1(prev,
+ x1 + (y2 - y1),
+ y1 - (x2 - x1));
+ }
+ if(m_round_cap)
+ {
+ m_ren.semidot(cmp_dist_start, x1, y1, x1 + (y2 - y1), y1 - (x2 - x1));
+ }
+ if((dv.flags & 2) == 0)
+ {
+ bisectrix(dv.curr, dv.next, &dv.xb2, &dv.yb2);
+ }
+
+ draw(dv, 1, m_src_vertices.size() - 2);
+
+ if((dv.flags & 1) == 0)
+ {
+ m_ren.line3(dv.curr,
+ dv.xb1,
+ dv.yb1,
+ dv.curr.x2 + (dv.curr.y2 - dv.curr.y1),
+ dv.curr.y2 - (dv.curr.x2 - dv.curr.x1));
+ }
+ else
+ {
+ m_ren.line2(dv.curr,
+ dv.curr.x2 + (dv.curr.y2 - dv.curr.y1),
+ dv.curr.y2 - (dv.curr.x2 - dv.curr.x1));
+ }
+ if(m_round_cap)
+ {
+ m_ren.semidot(cmp_dist_end, dv.curr.x2, dv.curr.y2,
+ dv.curr.x2 + (dv.curr.y2 - dv.curr.y1),
+ dv.curr.y2 - (dv.curr.x2 - dv.curr.x1));
+ }
+
+ }
+ break;
+ }
+ }
+ m_src_vertices.remove_all();
+ }
+
+
+}
+
+
+#endif
+
diff --git a/agg/inc/agg_rasterizer_scanline_aa.h b/agg/inc/agg_rasterizer_scanline_aa.h
new file mode 100755
index 000000000000..03be55dcc62a
--- /dev/null
+++ b/agg/inc/agg_rasterizer_scanline_aa.h
@@ -0,0 +1,743 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+// The author gratefully acknowleges the support of David Turner,
+// Robert Wilhelm, and Werner Lemberg - the authors of the FreeType
+// libray - in producing this work. See http://www.freetype.org for details.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Class rasterizer_scanline_aa
+//
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_RASTERIZER_SCANLINE_AA_INCLUDED
+#define AGG_RASTERIZER_SCANLINE_AA_INCLUDED
+
+#include <string.h>
+#include <math.h>
+#include "agg_basics.h"
+#include "agg_math.h"
+#include "agg_gamma_functions.h"
+#include "agg_clip_liang_barsky.h"
+#include "agg_render_scanlines.h"
+
+
+namespace agg
+{
+
+ //------------------------------------------------------------------------
+ // These constants determine the subpixel accuracy, to be more precise,
+ // the number of bits of the fractional part of the coordinates.
+ // The possible coordinate capacity in bits can be calculated by formula:
+ // sizeof(int) * 8 - poly_base_shift * 2, i.e, for 32-bit integers and
+ // 8-bits fractional part the capacity is 16 bits or [-32768...32767].
+ enum
+ {
+ poly_base_shift = 8, //----poly_base_shift
+ poly_base_size = 1 << poly_base_shift, //----poly_base_size
+ poly_base_mask = poly_base_size - 1 //----poly_base_mask
+ };
+
+ //--------------------------------------------------------------poly_coord
+ inline int poly_coord(double c)
+ {
+ return int(c * poly_base_size);
+ }
+
+ //-----------------------------------------------------------------cell_aa
+ // A pixel cell. There're no constructors defined and it was done
+ // intentionally in order to avoid extra overhead when allocating an
+ // array of cells.
+ struct cell_aa
+ {
+ int16 x;
+ int16 y;
+ int packed_coord;
+ int cover;
+ int area;
+
+ void set(int x, int y, int c, int a);
+ void set_coord(int x, int y);
+ void set_cover(int c, int a);
+ void add_cover(int c, int a);
+ };
+
+
+ //--------------------------------------------------------------outline_aa
+ // An internal class that implements the main rasterization algorithm.
+ // Used in the rasterizer. Should not be used direcly.
+ class outline_aa
+ {
+ enum
+ {
+ cell_block_shift = 12,
+ cell_block_size = 1 << cell_block_shift,
+ cell_block_mask = cell_block_size - 1,
+ cell_block_pool = 256,
+ cell_block_limit = 1024
+ };
+
+ public:
+
+ ~outline_aa();
+ outline_aa();
+
+ void reset();
+
+ void move_to(int x, int y);
+ void line_to(int x, int y);
+
+ int min_x() const { return m_min_x; }
+ int min_y() const { return m_min_y; }
+ int max_x() const { return m_max_x; }
+ int max_y() const { return m_max_y; }
+
+ const cell_aa* const* cells();
+ unsigned num_cells() { cells(); return m_num_cells; }
+ bool sorted() const { return m_sorted; }
+
+ private:
+ outline_aa(const outline_aa&);
+ const outline_aa& operator = (const outline_aa&);
+
+ void set_cur_cell(int x, int y);
+ void add_cur_cell();
+ void sort_cells();
+ void render_hline(int ey, int x1, int y1, int x2, int y2);
+ void render_line(int x1, int y1, int x2, int y2);
+ void allocate_block();
+
+ static void qsort_cells(cell_aa** start, unsigned num);
+
+ private:
+ unsigned m_num_blocks;
+ unsigned m_max_blocks;
+ unsigned m_cur_block;
+ unsigned m_num_cells;
+ cell_aa** m_cells;
+ cell_aa* m_cur_cell_ptr;
+ cell_aa** m_sorted_cells;
+ unsigned m_sorted_size;
+ cell_aa m_cur_cell;
+ int m_cur_x;
+ int m_cur_y;
+ int m_min_x;
+ int m_min_y;
+ int m_max_x;
+ int m_max_y;
+ bool m_sorted;
+ };
+
+
+ //----------------------------------------------------------filling_rule_e
+ enum filling_rule_e
+ {
+ fill_non_zero,
+ fill_even_odd
+ };
+
+
+ //==================================================rasterizer_scanline_aa
+ // Polygon rasterizer that is used to render filled polygons with
+ // high-quality Anti-Aliasing. Internally, by default, the class uses
+ // integer coordinates in format 24.8, i.e. 24 bits for integer part
+ // and 8 bits for fractional - see poly_base_shift. This class can be
+ // used in the following way:
+ //
+ // 1. filling_rule(filling_rule_e ft) - optional.
+ //
+ // 2. gamma() - optional.
+ //
+ // 3. reset()
+ //
+ // 4. move_to(x, y) / line_to(x, y) - make the polygon. One can create
+ // more than one contour, but each contour must consist of at least 3
+ // vertices, i.e. move_to(x1, y1); line_to(x2, y2); line_to(x3, y3);
+ // is the absolute minimum of vertices that define a triangle.
+ // The algorithm does not check either the number of vertices nor
+ // coincidence of their coordinates, but in the worst case it just
+ // won't draw anything.
+ // The orger of the vertices (clockwise or counterclockwise)
+ // is important when using the non-zero filling rule (fill_non_zero).
+ // In this case the vertex order of all the contours must be the same
+ // if you want your intersecting polygons to be without "holes".
+ // You actually can use different vertices order. If the contours do not
+ // intersect each other the order is not important anyway. If they do,
+ // contours with the same vertex order will be rendered without "holes"
+ // while the intersecting contours with different orders will have "holes".
+ //
+ // filling_rule() and gamma() can be called anytime before "sweeping".
+ //------------------------------------------------------------------------
+ template<unsigned XScale=1, unsigned AA_Shift=8> class rasterizer_scanline_aa
+ {
+ enum status
+ {
+ status_initial,
+ status_line_to,
+ status_closed
+ };
+
+ struct iterator
+ {
+ const cell_aa* const* cells;
+ int cover;
+ int last_y;
+ };
+
+ public:
+ enum
+ {
+ aa_shift = AA_Shift,
+ aa_num = 1 << aa_shift,
+ aa_mask = aa_num - 1,
+ aa_2num = aa_num * 2,
+ aa_2mask = aa_2num - 1
+ };
+
+ //--------------------------------------------------------------------
+ rasterizer_scanline_aa() :
+ m_filling_rule(fill_non_zero),
+ m_clipped_start_x(0),
+ m_clipped_start_y(0),
+ m_start_x(0),
+ m_start_y(0),
+ m_prev_x(0),
+ m_prev_y(0),
+ m_prev_flags(0),
+ m_status(status_initial),
+ m_clipping(false)
+ {
+ int i;
+ for(i = 0; i < aa_num; i++) m_gamma[i] = i;
+ }
+
+ //--------------------------------------------------------------------
+ template<class GammaF>
+ rasterizer_scanline_aa(const GammaF& gamma_function) :
+ m_filling_rule(fill_non_zero),
+ m_clipped_start_x(0),
+ m_clipped_start_y(0),
+ m_start_x(0),
+ m_start_y(0),
+ m_prev_x(0),
+ m_prev_y(0),
+ m_prev_flags(0),
+ m_status(status_initial),
+ m_clipping(false)
+ {
+ gamma(gamma_function);
+ }
+
+ //--------------------------------------------------------------------
+ void reset();
+ void filling_rule(filling_rule_e filling_rule);
+ void clip_box(double x1, double y1, double x2, double y2);
+ void reset_clipping();
+
+ //--------------------------------------------------------------------
+ template<class GammaF> void gamma(const GammaF& gamma_function)
+ {
+ int i;
+ for(i = 0; i < aa_num; i++)
+ {
+ m_gamma[i] = int(floor(gamma_function(double(i) / aa_mask) * aa_mask + 0.5));
+ }
+ }
+
+ //--------------------------------------------------------------------
+ unsigned apply_gamma(unsigned cover) const
+ {
+ return m_gamma[cover];
+ }
+
+ //--------------------------------------------------------------------
+ void add_vertex(double x, double y, unsigned cmd);
+ void move_to(int x, int y);
+ void line_to(int x, int y);
+ void close_polygon();
+ void move_to_d(double x, double y);
+ void line_to_d(double x, double y);
+
+ //--------------------------------------------------------------------
+ int min_x() const { return m_outline.min_x(); }
+ int min_y() const { return m_outline.min_y(); }
+ int max_x() const { return m_outline.max_x(); }
+ int max_y() const { return m_outline.max_y(); }
+
+ //--------------------------------------------------------------------
+ AGG_INLINE unsigned calculate_alpha(int area) const
+ {
+ int cover = area >> (poly_base_shift*2 + 1 - aa_shift);
+
+ if(cover < 0) cover = -cover;
+ if(m_filling_rule == fill_even_odd)
+ {
+ cover &= aa_2mask;
+ if(cover > aa_num)
+ {
+ cover = aa_2num - cover;
+ }
+ }
+ if(cover > aa_mask) cover = aa_mask;
+ return m_gamma[cover];
+ }
+
+ //--------------------------------------------------------------------
+ void sort()
+ {
+ m_outline.cells();
+ }
+
+
+ //--------------------------------------------------------------------
+ bool rewind_scanlines()
+ {
+ close_polygon();
+ m_iterator.cells = m_outline.cells();
+ if(m_outline.num_cells() == 0)
+ {
+ return false;
+ }
+ m_iterator.cover = 0;
+ m_iterator.last_y = (*m_iterator.cells)->y;
+ return true;
+ }
+
+
+ //--------------------------------------------------------------------
+ template<class Scanline> bool sweep_scanline(Scanline& sl)
+ {
+ sl.reset_spans();
+ for(;;)
+ {
+ const cell_aa* cur_cell = *m_iterator.cells;
+ if(cur_cell == 0) return false;
+ ++m_iterator.cells;
+ m_iterator.last_y = cur_cell->y;
+
+ for(;;)
+ {
+ int coord = cur_cell->packed_coord;
+ int area = cur_cell->area;
+ int last_x = cur_cell->x;
+
+ m_iterator.cover += cur_cell->cover;
+
+ //accumulate all cells with the same coordinates
+ for(; (cur_cell = *m_iterator.cells) != 0; ++m_iterator.cells)
+ {
+ if(cur_cell->packed_coord != coord) break;
+ area += cur_cell->area;
+ m_iterator.cover += cur_cell->cover;
+ }
+
+ int alpha;
+ if(cur_cell == 0 || cur_cell->y != m_iterator.last_y)
+ {
+
+ if(area)
+ {
+ alpha = calculate_alpha((m_iterator.cover << (poly_base_shift + 1)) - area);
+ if(alpha)
+ {
+ sl.add_cell(last_x, alpha);
+ }
+ ++last_x;
+ }
+ break;
+ }
+
+ ++m_iterator.cells;
+
+ if(area)
+ {
+ alpha = calculate_alpha((m_iterator.cover << (poly_base_shift + 1)) - area);
+ if(alpha)
+ {
+ sl.add_cell(last_x, alpha);
+ }
+ ++last_x;
+ }
+
+ if(cur_cell->x > last_x)
+ {
+ alpha = calculate_alpha(m_iterator.cover << (poly_base_shift + 1));
+ if(alpha)
+ {
+ sl.add_span(last_x, cur_cell->x - last_x, alpha);
+ }
+ }
+ }
+ if(sl.num_spans())
+ {
+ sl.finalize(m_iterator.last_y);
+ break;
+ }
+ }
+ return true;
+ }
+
+
+ //--------------------------------------------------------------------
+ bool hit_test(int tx, int ty);
+
+
+ //--------------------------------------------------------------------
+ void add_xy(const double* x, const double* y, unsigned n)
+ {
+ if(n > 2)
+ {
+ move_to_d(*x++, *y++);
+ --n;
+ do
+ {
+ line_to_d(*x++, *y++);
+ }
+ while(--n);
+ }
+ }
+
+ //-------------------------------------------------------------------
+ template<class VertexSource>
+ void add_path(VertexSource& vs, unsigned id=0)
+ {
+ double x;
+ double y;
+
+ unsigned cmd;
+ vs.rewind(id);
+ while(!is_stop(cmd = vs.vertex(&x, &y)))
+ {
+ add_vertex(x, y, cmd);
+ }
+ }
+
+
+ private:
+ //--------------------------------------------------------------------
+ // Disable copying
+ rasterizer_scanline_aa(const rasterizer_scanline_aa<XScale, AA_Shift>&);
+ const rasterizer_scanline_aa<XScale, AA_Shift>&
+ operator = (const rasterizer_scanline_aa<XScale, AA_Shift>&);
+
+ //--------------------------------------------------------------------
+ void move_to_no_clip(int x, int y);
+ void line_to_no_clip(int x, int y);
+ void close_polygon_no_clip();
+ void clip_segment(int x, int y);
+
+ private:
+ outline_aa m_outline;
+ int m_gamma[aa_num];
+ filling_rule_e m_filling_rule;
+ int m_clipped_start_x;
+ int m_clipped_start_y;
+ int m_start_x;
+ int m_start_y;
+ int m_prev_x;
+ int m_prev_y;
+ unsigned m_prev_flags;
+ unsigned m_status;
+ rect m_clip_box;
+ bool m_clipping;
+ iterator m_iterator;
+ };
+
+
+
+
+
+
+
+
+
+
+ //------------------------------------------------------------------------
+ template<unsigned XScale, unsigned AA_Shift>
+ void rasterizer_scanline_aa<XScale, AA_Shift>::reset()
+ {
+ m_outline.reset();
+ m_status = status_initial;
+ }
+
+ //------------------------------------------------------------------------
+ template<unsigned XScale, unsigned AA_Shift>
+ void rasterizer_scanline_aa<XScale, AA_Shift>::filling_rule(filling_rule_e _filling_rule)
+ {
+ m_filling_rule = _filling_rule;
+ }
+
+ //------------------------------------------------------------------------
+ template<unsigned XScale, unsigned AA_Shift>
+ void rasterizer_scanline_aa<XScale, AA_Shift>::clip_box(double x1, double y1, double x2, double y2)
+ {
+ reset();
+ m_clip_box = rect(poly_coord(x1), poly_coord(y1),
+ poly_coord(x2), poly_coord(y2));
+ m_clip_box.normalize();
+ m_clipping = true;
+ }
+
+ //------------------------------------------------------------------------
+ template<unsigned XScale, unsigned AA_Shift>
+ void rasterizer_scanline_aa<XScale, AA_Shift>::reset_clipping()
+ {
+ reset();
+ m_clipping = false;
+ }
+
+
+
+ //------------------------------------------------------------------------
+ template<unsigned XScale, unsigned AA_Shift>
+ void rasterizer_scanline_aa<XScale, AA_Shift>::move_to_no_clip(int x, int y)
+ {
+ if(m_status == status_line_to)
+ {
+ close_polygon_no_clip();
+ }
+ m_outline.move_to(x * XScale, y);
+ m_clipped_start_x = x;
+ m_clipped_start_y = y;
+ m_status = status_line_to;
+ }
+
+
+ //------------------------------------------------------------------------
+ template<unsigned XScale, unsigned AA_Shift>
+ void rasterizer_scanline_aa<XScale, AA_Shift>::line_to_no_clip(int x, int y)
+ {
+ if(m_status != status_initial)
+ {
+ m_outline.line_to(x * XScale, y);
+ m_status = status_line_to;
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ template<unsigned XScale, unsigned AA_Shift>
+ void rasterizer_scanline_aa<XScale, AA_Shift>::close_polygon_no_clip()
+ {
+ if(m_status == status_line_to)
+ {
+ m_outline.line_to(m_clipped_start_x * XScale, m_clipped_start_y);
+ m_status = status_closed;
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ template<unsigned XScale, unsigned AA_Shift>
+ void rasterizer_scanline_aa<XScale, AA_Shift>::clip_segment(int x, int y)
+ {
+ unsigned flags = clipping_flags(x, y, m_clip_box);
+ if(m_prev_flags == flags)
+ {
+ if(flags == 0)
+ {
+ if(m_status == status_initial)
+ {
+ move_to_no_clip(x, y);
+ }
+ else
+ {
+ line_to_no_clip(x, y);
+ }
+ }
+ }
+ else
+ {
+ int cx[4];
+ int cy[4];
+ unsigned n = clip_liang_barsky(m_prev_x, m_prev_y,
+ x, y,
+ m_clip_box,
+ cx, cy);
+ const int* px = cx;
+ const int* py = cy;
+ while(n--)
+ {
+ if(m_status == status_initial)
+ {
+ move_to_no_clip(*px++, *py++);
+ }
+ else
+ {
+ line_to_no_clip(*px++, *py++);
+ }
+ }
+ }
+ m_prev_flags = flags;
+ m_prev_x = x;
+ m_prev_y = y;
+ }
+
+
+
+ //------------------------------------------------------------------------
+ template<unsigned XScale, unsigned AA_Shift>
+ void rasterizer_scanline_aa<XScale, AA_Shift>::add_vertex(double x, double y, unsigned cmd)
+ {
+ if(is_close(cmd))
+ {
+ close_polygon();
+ }
+ else
+ {
+ if(is_move_to(cmd))
+ {
+ move_to(poly_coord(x), poly_coord(y));
+ }
+ else
+ {
+ if(is_vertex(cmd))
+ {
+ line_to(poly_coord(x), poly_coord(y));
+ }
+ }
+ }
+ }
+
+
+
+ //------------------------------------------------------------------------
+ template<unsigned XScale, unsigned AA_Shift>
+ void rasterizer_scanline_aa<XScale, AA_Shift>::move_to(int x, int y)
+ {
+ if(m_clipping)
+ {
+ if(m_outline.sorted())
+ {
+ reset();
+ }
+ if(m_status == status_line_to)
+ {
+ close_polygon();
+ }
+ m_prev_x = m_start_x = x;
+ m_prev_y = m_start_y = y;
+ m_status = status_initial;
+ m_prev_flags = clipping_flags(x, y, m_clip_box);
+ if(m_prev_flags == 0)
+ {
+ move_to_no_clip(x, y);
+ }
+ }
+ else
+ {
+ move_to_no_clip(x, y);
+ }
+ }
+
+ //------------------------------------------------------------------------
+ template<unsigned XScale, unsigned AA_Shift>
+ void rasterizer_scanline_aa<XScale, AA_Shift>::line_to(int x, int y)
+ {
+ if(m_clipping)
+ {
+ clip_segment(x, y);
+ }
+ else
+ {
+ line_to_no_clip(x, y);
+ }
+ }
+
+ //------------------------------------------------------------------------
+ template<unsigned XScale, unsigned AA_Shift>
+ void rasterizer_scanline_aa<XScale, AA_Shift>::close_polygon()
+ {
+ if(m_clipping)
+ {
+ clip_segment(m_start_x, m_start_y);
+ }
+ close_polygon_no_clip();
+ }
+
+ //------------------------------------------------------------------------
+ template<unsigned XScale, unsigned AA_Shift>
+ void rasterizer_scanline_aa<XScale, AA_Shift>::move_to_d(double x, double y)
+ {
+ move_to(poly_coord(x), poly_coord(y));
+ }
+
+ //------------------------------------------------------------------------
+ template<unsigned XScale, unsigned AA_Shift>
+ void rasterizer_scanline_aa<XScale, AA_Shift>::line_to_d(double x, double y)
+ {
+ line_to(poly_coord(x), poly_coord(y));
+ }
+
+
+ //------------------------------------------------------------------------
+ template<unsigned XScale, unsigned AA_Shift>
+ bool rasterizer_scanline_aa<XScale, AA_Shift>::hit_test(int tx, int ty)
+ {
+ close_polygon();
+ const cell_aa* const* cells = m_outline.cells();
+ if(m_outline.num_cells() == 0) return false;
+
+ int cover = 0;
+
+ const cell_aa* cur_cell = *cells++;
+ for(;;)
+ {
+ int alpha;
+ int coord = cur_cell->packed_coord;
+ int x = cur_cell->x;
+ int y = cur_cell->y;
+
+ if(y > ty) return false;
+
+ int area = cur_cell->area;
+ cover += cur_cell->cover;
+
+ while((cur_cell = *cells++) != 0)
+ {
+ if(cur_cell->packed_coord != coord) break;
+ area += cur_cell->area;
+ cover += cur_cell->cover;
+ }
+
+ if(area)
+ {
+ alpha = calculate_alpha((cover << (poly_base_shift + 1)) - area);
+ if(alpha)
+ {
+ if(tx == x && ty == y) return true;
+ }
+ x++;
+ }
+
+ if(!cur_cell) break;
+
+ if(cur_cell->x > x)
+ {
+ alpha = calculate_alpha(cover << (poly_base_shift + 1));
+ if(alpha)
+ {
+ if(ty == y && tx >= x && tx <= cur_cell->x) return true;
+ }
+ }
+ }
+ return false;
+ }
+
+}
+
+
+
+#endif
+
diff --git a/agg/inc/agg_render_scanlines.h b/agg/inc/agg_render_scanlines.h
new file mode 100755
index 000000000000..60ddecf5c2d6
--- /dev/null
+++ b/agg/inc/agg_render_scanlines.h
@@ -0,0 +1,66 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_RENDER_SCANLINES_INCLUDED
+#define AGG_RENDER_SCANLINES_INCLUDED
+
+#include "agg_basics.h"
+
+namespace agg
+{
+ //========================================================render_scanlines
+ template<class Rasterizer, class Scanline, class Renderer>
+ void render_scanlines(Rasterizer& ras, Scanline& sl, Renderer& ren)
+ {
+ if(ras.rewind_scanlines())
+ {
+ sl.reset(ras.min_x(), ras.max_x());
+ ren.prepare(unsigned(ras.max_x() - ras.min_x() + 2));
+
+ while(ras.sweep_scanline(sl))
+ {
+ ren.render(sl);
+ }
+ }
+ }
+
+
+ //========================================================render_all_paths
+ template<class Rasterizer, class Scanline, class Renderer,
+ class VertexSource, class ColorStorage, class PathId>
+ void render_all_paths(Rasterizer& ras,
+ Scanline& sl,
+ Renderer& r,
+ VertexSource& vs,
+ const ColorStorage& as,
+ const PathId& id,
+ unsigned num_paths)
+ {
+ for(unsigned i = 0; i < num_paths; i++)
+ {
+ ras.reset();
+ ras.add_path(vs, id[i]);
+ r.color(as[i]);
+ render_scanlines(ras, sl, r);
+ }
+ }
+
+
+}
+
+#endif
+
+
+
diff --git a/agg/inc/agg_renderer_base.h b/agg/inc/agg_renderer_base.h
new file mode 100755
index 000000000000..1ef44fecc6d2
--- /dev/null
+++ b/agg/inc/agg_renderer_base.h
@@ -0,0 +1,618 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// class renderer_base
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_RENDERER_BASE_INCLUDED
+#define AGG_RENDERER_BASE_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_rendering_buffer.h"
+
+namespace agg
+{
+
+ //-----------------------------------------------------------renderer_base
+ template<class PixelFormat> class renderer_base
+ {
+ public:
+ typedef PixelFormat pixfmt_type;
+ typedef typename pixfmt_type::color_type color_type;
+
+ //--------------------------------------------------------------------
+ renderer_base(pixfmt_type& _ren) :
+ m_ren(&_ren),
+ m_clip_box(0, 0, _ren.width() - 1, _ren.height() - 1)
+ {
+ }
+
+ //--------------------------------------------------------------------
+ const pixfmt_type& ren() const { return *m_ren; }
+ pixfmt_type& ren() { return *m_ren; }
+
+ //--------------------------------------------------------------------
+ unsigned width() const { return m_ren->width(); }
+ unsigned height() const { return m_ren->height(); }
+
+ //--------------------------------------------------------------------
+ bool clip_box(int x1, int y1, int x2, int y2)
+ {
+ rect cb(x1, y1, x2, y2);
+ cb.normalize();
+ if(cb.clip(rect(0, 0, width() - 1, height() - 1)))
+ {
+ m_clip_box = cb;
+ return true;
+ }
+ m_clip_box.x1 = 1;
+ m_clip_box.y1 = 1;
+ m_clip_box.x2 = 0;
+ m_clip_box.y2 = 0;
+ return false;
+ }
+
+ //--------------------------------------------------------------------
+ void reset_clipping(bool visibility)
+ {
+ if(visibility)
+ {
+ m_clip_box.x1 = 0;
+ m_clip_box.y1 = 0;
+ m_clip_box.x2 = width() - 1;
+ m_clip_box.y2 = height() - 1;
+ }
+ else
+ {
+ m_clip_box.x1 = 1;
+ m_clip_box.y1 = 1;
+ m_clip_box.x2 = 0;
+ m_clip_box.y2 = 0;
+ }
+ }
+
+ //--------------------------------------------------------------------
+ void clip_box_naked(int x1, int y1, int x2, int y2)
+ {
+ m_clip_box.x1 = x1;
+ m_clip_box.y1 = y1;
+ m_clip_box.x2 = x2;
+ m_clip_box.y2 = y2;
+ }
+
+ //--------------------------------------------------------------------
+ bool inbox(int x, int y) const
+ {
+ return x >= m_clip_box.x1 && y >= m_clip_box.y1 &&
+ x <= m_clip_box.x2 && y <= m_clip_box.y2;
+ }
+
+ //--------------------------------------------------------------------
+ void first_clip_box() {}
+ bool next_clip_box() { return false; }
+
+ //--------------------------------------------------------------------
+ const rect& clip_box() const { return m_clip_box; }
+ int xmin() const { return m_clip_box.x1; }
+ int ymin() const { return m_clip_box.y1; }
+ int xmax() const { return m_clip_box.x2; }
+ int ymax() const { return m_clip_box.y2; }
+
+ //--------------------------------------------------------------------
+ const rect& bounding_clip_box() const { return m_clip_box; }
+ int bounding_xmin() const { return m_clip_box.x1; }
+ int bounding_ymin() const { return m_clip_box.y1; }
+ int bounding_xmax() const { return m_clip_box.x2; }
+ int bounding_ymax() const { return m_clip_box.y2; }
+
+ //--------------------------------------------------------------------
+ void clear(const color_type& c)
+ {
+ unsigned y;
+ if(width())
+ {
+ for(y = 0; y < height(); y++)
+ {
+ m_ren->copy_hline(0, y, width(), c);
+ }
+ }
+ }
+
+ //--------------------------------------------------------------------
+ void copy_pixel(int x, int y, const color_type& c)
+ {
+ if(inbox(x, y))
+ {
+ m_ren->copy_pixel(x, y, c);
+ }
+ }
+
+ //--------------------------------------------------------------------
+ void blend_pixel(int x, int y, const color_type& c, cover_type cover)
+ {
+ if(inbox(x, y))
+ {
+ m_ren->blend_pixel(x, y, c, cover);
+ }
+ }
+
+ //--------------------------------------------------------------------
+ color_type pixel(int x, int y) const
+ {
+ return inbox(x, y) ?
+ m_ren->pixel(x, y) :
+ color_type::no_color();
+ }
+
+ //--------------------------------------------------------------------
+ void copy_hline(int x1, int y, int x2, const color_type& c)
+ {
+ if(x1 > x2) { int t = x2; x2 = x1; x1 = t; }
+ if(y > ymax()) return;
+ if(y < ymin()) return;
+ if(x1 > xmax()) return;
+ if(x2 < xmin()) return;
+
+ if(x1 < xmin()) x1 = xmin();
+ if(x2 > xmax()) x2 = xmax();
+
+ m_ren->copy_hline(x1, y, x2 - x1 + 1, c);
+ }
+
+ //--------------------------------------------------------------------
+ void copy_vline(int x, int y1, int y2, const color_type& c)
+ {
+ if(y1 > y2) { int t = y2; y2 = y1; y1 = t; }
+ if(x > xmax()) return;
+ if(x < xmin()) return;
+ if(y1 > ymax()) return;
+ if(y2 < ymin()) return;
+
+ if(y1 < ymin()) y1 = ymin();
+ if(y2 > ymax()) y2 = ymax();
+
+ m_ren->copy_vline(x, y1, y2 - y1 + 1, c);
+ }
+
+ //--------------------------------------------------------------------
+ void blend_hline(int x1, int y, int x2,
+ const color_type& c, cover_type cover)
+ {
+ if(x1 > x2) { int t = x2; x2 = x1; x1 = t; }
+ if(y > ymax()) return;
+ if(y < ymin()) return;
+ if(x1 > xmax()) return;
+ if(x2 < xmin()) return;
+
+ if(x1 < xmin()) x1 = xmin();
+ if(x2 > xmax()) x2 = xmax();
+
+ m_ren->blend_hline(x1, y, x2 - x1 + 1, c, cover);
+ }
+
+ //--------------------------------------------------------------------
+ void blend_vline(int x, int y1, int y2,
+ const color_type& c, cover_type cover)
+ {
+ if(y1 > y2) { int t = y2; y2 = y1; y1 = t; }
+ if(x > xmax()) return;
+ if(x < xmin()) return;
+ if(y1 > ymax()) return;
+ if(y2 < ymin()) return;
+
+ if(y1 < ymin()) y1 = ymin();
+ if(y2 > ymax()) y2 = ymax();
+
+ m_ren->blend_vline(x, y1, y2 - y1 + 1, c, cover);
+ }
+
+
+ //--------------------------------------------------------------------
+ void copy_bar(int x1, int y1, int x2, int y2, const color_type& c)
+ {
+ rect rc(x1, y1, x2, y2);
+ rc.normalize();
+ if(rc.clip(clip_box()))
+ {
+ int y;
+ for(y = rc.y1; y <= rc.y2; y++)
+ {
+ m_ren->copy_hline(rc.x1, y, unsigned(rc.x2 - rc.x1 + 1), c);
+ }
+ }
+ }
+
+ //--------------------------------------------------------------------
+ void blend_bar(int x1, int y1, int x2, int y2,
+ const color_type& c, cover_type cover)
+ {
+ rect rc(x1, y1, x2, y2);
+ rc.normalize();
+ if(rc.clip(clip_box()))
+ {
+ int y;
+ for(y = rc.y1; y <= rc.y2; y++)
+ {
+ m_ren->blend_hline(rc.x1,
+ y,
+ unsigned(rc.x2 - rc.x1 + 1),
+ c,
+ cover);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_solid_hspan(int x, int y, int len,
+ const color_type& c,
+ const cover_type* covers)
+ {
+ if(y > ymax()) return;
+ if(y < ymin()) return;
+
+ if(x < xmin())
+ {
+ len -= xmin() - x;
+ if(len <= 0) return;
+ covers += xmin() - x;
+ x = xmin();
+ }
+ if(x + len > xmax())
+ {
+ len = xmax() - x + 1;
+ if(len <= 0) return;
+ }
+ m_ren->blend_solid_hspan(x, y, len, c, covers);
+ }
+
+ //--------------------------------------------------------------------
+ void blend_solid_vspan(int x, int y, int len,
+ const color_type& c,
+ const cover_type* covers)
+ {
+ if(x > xmax()) return;
+ if(x < xmin()) return;
+
+ if(y < ymin())
+ {
+ len -= ymin() - y;
+ if(len <= 0) return;
+ covers += ymin() - y;
+ y = ymin();
+ }
+ if(y + len > ymax())
+ {
+ len = ymax() - y + 1;
+ if(len <= 0) return;
+ }
+ m_ren->blend_solid_vspan(x, y, len, c, covers);
+ }
+
+ //--------------------------------------------------------------------
+ void blend_color_hspan(int x, int y, int len,
+ const color_type* colors,
+ const cover_type* covers,
+ cover_type cover = cover_full)
+ {
+ if(y > ymax()) return;
+ if(y < ymin()) return;
+
+ if(x < xmin())
+ {
+ int d = xmin() - x;
+ len -= d;
+ if(len <= 0) return;
+ if(covers) covers += d;
+ colors += d;
+ x = xmin();
+ }
+ if(x + len > xmax())
+ {
+ len = xmax() - x + 1;
+ if(len <= 0) return;
+ }
+ m_ren->blend_color_hspan(x, y, len, colors, covers, cover);
+ }
+
+ //--------------------------------------------------------------------
+ void blend_color_vspan(int x, int y, int len,
+ const color_type* colors,
+ const cover_type* covers,
+ cover_type cover = cover_full)
+ {
+ if(x > xmax()) return;
+ if(x < xmin()) return;
+
+ if(y < ymin())
+ {
+ int d = ymin() - y;
+ len -= d;
+ if(len <= 0) return;
+ if(covers) covers += d;
+ colors += d;
+ y = ymin();
+ }
+ if(y + len > ymax())
+ {
+ len = ymax() - y + 1;
+ if(len <= 0) return;
+ }
+ m_ren->blend_color_vspan(x, y, len, colors, covers, cover);
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_opaque_color_hspan(int x, int y, int len,
+ const color_type* colors,
+ const cover_type* covers,
+ cover_type cover = cover_full)
+ {
+ if(y > ymax()) return;
+ if(y < ymin()) return;
+
+ if(x < xmin())
+ {
+ int d = xmin() - x;
+ len -= d;
+ if(len <= 0) return;
+ if(covers) covers += d;
+ colors += d;
+ x = xmin();
+ }
+ if(x + len > xmax())
+ {
+ len = xmax() - x + 1;
+ if(len <= 0) return;
+ }
+ m_ren->blend_opaque_color_hspan(x, y, len, colors, covers, cover);
+ }
+
+ //--------------------------------------------------------------------
+ void blend_opaque_color_vspan(int x, int y, int len,
+ const color_type* colors,
+ const cover_type* covers,
+ cover_type cover = cover_full)
+ {
+ if(x > xmax()) return;
+ if(x < xmin()) return;
+
+ if(y < ymin())
+ {
+ int d = ymin() - y;
+ len -= d;
+ if(len <= 0) return;
+ if(covers) covers += d;
+ colors += d;
+ y = ymin();
+ }
+ if(y + len > ymax())
+ {
+ len = ymax() - y + 1;
+ if(len <= 0) return;
+ }
+ m_ren->blend_opaque_color_vspan(x, y, len, colors, covers, cover);
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_color_hspan_no_clip(int x, int y, int len,
+ const color_type* colors,
+ const cover_type* covers,
+ cover_type cover = cover_full)
+ {
+ m_ren->blend_color_hspan(x, y, len, colors, covers, cover);
+ }
+
+ //--------------------------------------------------------------------
+ void blend_color_vspan_no_clip(int x, int y, int len,
+ const color_type* colors,
+ const cover_type* covers,
+ cover_type cover = cover_full)
+ {
+ m_ren->blend_color_vspan(x, y, len, colors, covers, cover);
+ }
+
+ //--------------------------------------------------------------------
+ void blend_opaque_color_hspan_no_clip(int x, int y, int len,
+ const color_type* colors,
+ const cover_type* covers,
+ cover_type cover = cover_full)
+ {
+ m_ren->blend_opaque_color_hspan(x, y, len, colors, covers, cover);
+ }
+
+ //--------------------------------------------------------------------
+ void blend_opaque_color_vspan_no_clip(int x, int y, int len,
+ const color_type* colors,
+ const cover_type* covers,
+ cover_type cover = cover_full)
+ {
+ m_ren->blend_opaque_color_vspan(x, y, len, colors, covers, cover);
+ }
+
+ //--------------------------------------------------------------------
+ rect clip_rect_area(rect& dst, rect& src, int wsrc, int hsrc) const
+ {
+ rect rc(0,0,0,0);
+ rect cb = clip_box();
+ ++cb.x2;
+ ++cb.y2;
+
+ if(src.x1 < 0)
+ {
+ dst.x1 -= src.x1;
+ src.x1 = 0;
+ }
+ if(src.y1 < 0)
+ {
+ dst.y1 -= src.y1;
+ src.y1 = 0;
+ }
+
+ if(src.x2 > wsrc) src.x2 = wsrc;
+ if(src.y2 > hsrc) src.y2 = hsrc;
+
+ if(dst.x1 < cb.x1)
+ {
+ src.x1 += cb.x1 - dst.x1;
+ dst.x1 = cb.x1;
+ }
+ if(dst.y1 < cb.y1)
+ {
+ src.y1 += cb.y1 - dst.y1;
+ dst.y1 = cb.y1;
+ }
+
+ if(dst.x2 > cb.x2) dst.x2 = cb.x2;
+ if(dst.y2 > cb.y2) dst.y2 = cb.y2;
+
+ rc.x2 = dst.x2 - dst.x1;
+ rc.y2 = dst.y2 - dst.y1;
+
+ if(rc.x2 > src.x2 - src.x1) rc.x2 = src.x2 - src.x1;
+ if(rc.y2 > src.y2 - src.y1) rc.y2 = src.y2 - src.y1;
+ return rc;
+ }
+
+
+ //--------------------------------------------------------------------
+ void copy_from(const rendering_buffer& src,
+ const rect* rect_src_ptr = 0,
+ int dx = 0,
+ int dy = 0)
+ {
+ rect rsrc(0, 0, src.width(), src.height());
+ if(rect_src_ptr)
+ {
+ rsrc.x1 = rect_src_ptr->x1;
+ rsrc.y1 = rect_src_ptr->y1;
+ rsrc.x2 = rect_src_ptr->x2 + 1;
+ rsrc.y2 = rect_src_ptr->y2 + 1;
+ }
+
+ // Version with xdst, ydst (absolute positioning)
+ //rect rdst(xdst, ydst, xdst + rsrc.x2 - rsrc.x1, ydst + rsrc.y2 - rsrc.y1);
+
+ // Version with dx, dy (relative positioning)
+ rect rdst(rsrc.x1 + dx, rsrc.y1 + dy, rsrc.x2 + dx, rsrc.y2 + dy);
+
+ rect rc = clip_rect_area(rdst, rsrc, src.width(), src.height());
+
+ if(rc.x2 > 0)
+ {
+ int incy = 1;
+ if(rdst.y1 > rsrc.y1)
+ {
+ rsrc.y1 += rc.y2 - 1;
+ rdst.y1 += rc.y2 - 1;
+ incy = -1;
+ }
+ while(rc.y2 > 0)
+ {
+ m_ren->copy_from(src,
+ rdst.x1, rdst.y1,
+ rsrc.x1, rsrc.y1,
+ rc.x2);
+ rdst.y1 += incy;
+ rsrc.y1 += incy;
+ --rc.y2;
+ }
+ }
+ }
+
+
+
+ //--------------------------------------------------------------------
+ template<class SrcPixelFormatRenderer>
+ void blend_from(const SrcPixelFormatRenderer& src,
+ const rect* rect_src_ptr = 0,
+ int dx = 0,
+ int dy = 0)
+ {
+ rect rsrc(0, 0, src.width(), src.height());
+ if(rect_src_ptr)
+ {
+ rsrc.x1 = rect_src_ptr->x1;
+ rsrc.y1 = rect_src_ptr->y1;
+ rsrc.x2 = rect_src_ptr->x2 + 1;
+ rsrc.y2 = rect_src_ptr->y2 + 1;
+ }
+
+ // Version with xdst, ydst (absolute positioning)
+ //rect rdst(xdst, ydst, xdst + rsrc.x2 - rsrc.x1, ydst + rsrc.y2 - rsrc.y1);
+
+ // Version with dx, dy (relative positioning)
+ rect rdst(rsrc.x1 + dx, rsrc.y1 + dy, rsrc.x2 + dx, rsrc.y2 + dy);
+
+ rect rc = clip_rect_area(rdst, rsrc, src.width(), src.height());
+
+ if(rc.x2 > 0)
+ {
+ int incy = 1;
+ if(rdst.y1 > rsrc.y1)
+ {
+ rsrc.y1 += rc.y2 - 1;
+ rdst.y1 += rc.y2 - 1;
+ incy = -1;
+ }
+ while(rc.y2 > 0)
+ {
+ typename SrcPixelFormatRenderer::row_data span = src.span(rsrc.x1, rsrc.y1);
+ if(span.ptr)
+ {
+ int x1src = rsrc.x1;
+ int x1dst = rdst.x1;
+ int len = rc.x2;
+ if(span.x1 > x1src)
+ {
+ x1dst += span.x1 - x1src;
+ len -= span.x1 - x1src;
+ x1src = span.x1;
+ }
+ if(len > 0)
+ {
+ if(x1src + len-1 > span.x2)
+ {
+ len -= x1src + len - span.x2 - 1;
+ }
+ if(len > 0)
+ {
+ m_ren->blend_from(src, span.ptr,
+ x1dst, rdst.y1,
+ x1src, rsrc.y1,
+ len);
+ }
+ }
+ }
+ rdst.y1 += incy;
+ rsrc.y1 += incy;
+ --rc.y2;
+ }
+ }
+ }
+
+
+
+ private:
+ pixfmt_type* m_ren;
+ rect m_clip_box;
+ };
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_renderer_markers.h b/agg/inc/agg_renderer_markers.h
new file mode 100755
index 000000000000..ff47995554d9
--- /dev/null
+++ b/agg/inc/agg_renderer_markers.h
@@ -0,0 +1,707 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// class renderer_markers
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_RENDERER_MARKERS_INCLUDED
+#define AGG_RENDERER_MARKERS_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_renderer_primitives.h"
+
+namespace agg
+{
+
+ //---------------------------------------------------------------marker_e
+ enum marker_e
+ {
+ marker_square,
+ marker_diamond,
+ marker_circle,
+ marker_crossed_circle,
+ marker_semiellipse_left,
+ marker_semiellipse_right,
+ marker_semiellipse_up,
+ marker_semiellipse_down,
+ marker_triangle_left,
+ marker_triangle_right,
+ marker_triangle_up,
+ marker_triangle_down,
+ marker_four_rays,
+ marker_cross,
+ marker_x,
+ marker_dash,
+ marker_dot,
+ marker_pixel,
+
+ end_of_markers
+ };
+
+
+
+ //--------------------------------------------------------renderer_markers
+ template<class BaseRenderer> class renderer_markers :
+ public renderer_primitives<BaseRenderer>
+ {
+ public:
+ typedef renderer_primitives<BaseRenderer> base_type;
+ typedef BaseRenderer base_ren_type;
+ typedef typename base_ren_type::color_type color_type;
+
+ //--------------------------------------------------------------------
+ renderer_markers(base_ren_type& rbuf) :
+ base_type(rbuf)
+ {
+ }
+
+ //--------------------------------------------------------------------
+ bool visible(int x, int y, int r) const
+ {
+ rect rc(x-r, y-r, x+y, y+r);
+ return rc.clip(base_type::ren().bounding_clip_box());
+ }
+
+ //--------------------------------------------------------------------
+ void square(int x, int y, int r)
+ {
+ if(visible(x, y, r))
+ {
+ if(r) base_type::outlined_rectangle(x-r, y-r, x+r, y+r);
+ else base_type::ren().blend_pixel(x, y, base_type::fill_color(), cover_full);
+ }
+ }
+
+ //--------------------------------------------------------------------
+ void diamond(int x, int y, int r)
+ {
+ if(visible(x, y, r))
+ {
+ if(r)
+ {
+ int dy = -r;
+ int dx = 0;
+ do
+ {
+ base_type::ren().blend_pixel(x - dx, y + dy, base_type::line_color(), cover_full);
+ base_type::ren().blend_pixel(x + dx, y + dy, base_type::line_color(), cover_full);
+ base_type::ren().blend_pixel(x - dx, y - dy, base_type::line_color(), cover_full);
+ base_type::ren().blend_pixel(x + dx, y - dy, base_type::line_color(), cover_full);
+
+ if(dx)
+ {
+ base_type::ren().blend_hline(x-dx+1, y+dy, x+dx-1, base_type::fill_color(), cover_full);
+ base_type::ren().blend_hline(x-dx+1, y-dy, x+dx-1, base_type::fill_color(), cover_full);
+ }
+ ++dy;
+ ++dx;
+ }
+ while(dy <= 0);
+ }
+ else
+ {
+ base_type::ren().blend_pixel(x, y, base_type::fill_color(), cover_full);
+ }
+ }
+ }
+
+ //--------------------------------------------------------------------
+ void circle(int x, int y, int r)
+ {
+ if(visible(x, y, r))
+ {
+ if(r) base_type::outlined_ellipse(x, y, r, r);
+ else base_type::ren().blend_pixel(x, y, base_type::fill_color(), cover_full);
+ }
+ }
+
+
+
+ //--------------------------------------------------------------------
+ void crossed_circle(int x, int y, int r)
+ {
+ if(visible(x, y, r))
+ {
+ if(r)
+ {
+ base_type::outlined_ellipse(x, y, r, r);
+ int r6 = r + (r >> 1);
+ if(r <= 2) r6++;
+ r >>= 1;
+ base_type::ren().blend_hline(x-r6, y, x-r, base_type::line_color(), cover_full);
+ base_type::ren().blend_hline(x+r, y, x+r6, base_type::line_color(), cover_full);
+ base_type::ren().blend_vline(x, y-r6, y-r, base_type::line_color(), cover_full);
+ base_type::ren().blend_vline(x, y+r, y+r6, base_type::line_color(), cover_full);
+ }
+ else
+ {
+ base_type::ren().blend_pixel(x, y, base_type::fill_color(), cover_full);
+ }
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ void semiellipse_left(int x, int y, int r)
+ {
+ if(visible(x, y, r))
+ {
+ if(r)
+ {
+ int r8 = r * 4 / 5;
+ int dy = -r;
+ int dx = 0;
+ ellipse_bresenham_interpolator ei(r * 3 / 5, r+r8);
+ do
+ {
+ dx += ei.dx();
+ dy += ei.dy();
+
+ base_type::ren().blend_pixel(x + dy, y + dx, base_type::line_color(), cover_full);
+ base_type::ren().blend_pixel(x + dy, y - dx, base_type::line_color(), cover_full);
+
+ if(ei.dy() && dx)
+ {
+ base_type::ren().blend_vline(x+dy, y-dx+1, y+dx-1, base_type::fill_color(), cover_full);
+ }
+ ++ei;
+ }
+ while(dy < r8);
+ base_type::ren().blend_vline(x+dy, y-dx, y+dx, base_type::line_color(), cover_full);
+ }
+ else
+ {
+ base_type::ren().blend_pixel(x, y, base_type::fill_color(), cover_full);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void semiellipse_right(int x, int y, int r)
+ {
+ if(visible(x, y, r))
+ {
+ if(r)
+ {
+ int r8 = r * 4 / 5;
+ int dy = -r;
+ int dx = 0;
+ ellipse_bresenham_interpolator ei(r * 3 / 5, r+r8);
+ do
+ {
+ dx += ei.dx();
+ dy += ei.dy();
+
+ base_type::ren().blend_pixel(x - dy, y + dx, base_type::line_color(), cover_full);
+ base_type::ren().blend_pixel(x - dy, y - dx, base_type::line_color(), cover_full);
+
+ if(ei.dy() && dx)
+ {
+ base_type::ren().blend_vline(x-dy, y-dx+1, y+dx-1, base_type::fill_color(), cover_full);
+ }
+ ++ei;
+ }
+ while(dy < r8);
+ base_type::ren().blend_vline(x-dy, y-dx, y+dx, base_type::line_color(), cover_full);
+ }
+ else
+ {
+ base_type::ren().blend_pixel(x, y, base_type::fill_color(), cover_full);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void semiellipse_up(int x, int y, int r)
+ {
+ if(visible(x, y, r))
+ {
+ if(r)
+ {
+ int r8 = r * 4 / 5;
+ int dy = -r;
+ int dx = 0;
+ ellipse_bresenham_interpolator ei(r * 3 / 5, r+r8);
+ do
+ {
+ dx += ei.dx();
+ dy += ei.dy();
+
+ base_type::ren().blend_pixel(x + dx, y - dy, base_type::line_color(), cover_full);
+ base_type::ren().blend_pixel(x - dx, y - dy, base_type::line_color(), cover_full);
+
+ if(ei.dy() && dx)
+ {
+ base_type::ren().blend_hline(x-dx+1, y-dy, x+dx-1, base_type::fill_color(), cover_full);
+ }
+ ++ei;
+ }
+ while(dy < r8);
+ base_type::ren().blend_hline(x-dx, y-dy-1, x+dx, base_type::line_color(), cover_full);
+ }
+ else
+ {
+ base_type::ren().blend_pixel(x, y, base_type::fill_color(), cover_full);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void semiellipse_down(int x, int y, int r)
+ {
+ if(visible(x, y, r))
+ {
+ if(r)
+ {
+ int r8 = r * 4 / 5;
+ int dy = -r;
+ int dx = 0;
+ ellipse_bresenham_interpolator ei(r * 3 / 5, r+r8);
+ do
+ {
+ dx += ei.dx();
+ dy += ei.dy();
+
+ base_type::ren().blend_pixel(x + dx, y + dy, base_type::line_color(), cover_full);
+ base_type::ren().blend_pixel(x - dx, y + dy, base_type::line_color(), cover_full);
+
+ if(ei.dy() && dx)
+ {
+ base_type::ren().blend_hline(x-dx+1, y+dy, x+dx-1, base_type::fill_color(), cover_full);
+ }
+ ++ei;
+ }
+ while(dy < r8);
+ base_type::ren().blend_hline(x-dx, y+dy+1, x+dx, base_type::line_color(), cover_full);
+ }
+ else
+ {
+ base_type::ren().blend_pixel(x, y, base_type::fill_color(), cover_full);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void triangle_left(int x, int y, int r)
+ {
+ if(visible(x, y, r))
+ {
+ if(r)
+ {
+ int dy = -r;
+ int dx = 0;
+ int flip = 0;
+ int r6 = r * 3 / 5;
+ do
+ {
+ base_type::ren().blend_pixel(x + dy, y - dx, base_type::line_color(), cover_full);
+ base_type::ren().blend_pixel(x + dy, y + dx, base_type::line_color(), cover_full);
+
+ if(dx)
+ {
+ base_type::ren().blend_vline(x+dy, y-dx+1, y+dx-1, base_type::fill_color(), cover_full);
+ }
+ ++dy;
+ dx += flip;
+ flip ^= 1;
+ }
+ while(dy < r6);
+ base_type::ren().blend_vline(x+dy, y-dx, y+dx, base_type::line_color(), cover_full);
+ }
+ else
+ {
+ base_type::ren().blend_pixel(x, y, base_type::fill_color(), cover_full);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void triangle_right(int x, int y, int r)
+ {
+ if(visible(x, y, r))
+ {
+ if(r)
+ {
+ int dy = -r;
+ int dx = 0;
+ int flip = 0;
+ int r6 = r * 3 / 5;
+ do
+ {
+ base_type::ren().blend_pixel(x - dy, y - dx, base_type::line_color(), cover_full);
+ base_type::ren().blend_pixel(x - dy, y + dx, base_type::line_color(), cover_full);
+
+ if(dx)
+ {
+ base_type::ren().blend_vline(x-dy, y-dx+1, y+dx-1, base_type::fill_color(), cover_full);
+ }
+ ++dy;
+ dx += flip;
+ flip ^= 1;
+ }
+ while(dy < r6);
+ base_type::ren().blend_vline(x-dy, y-dx, y+dx, base_type::line_color(), cover_full);
+ }
+ else
+ {
+ base_type::ren().blend_pixel(x, y, base_type::fill_color(), cover_full);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void triangle_up(int x, int y, int r)
+ {
+ if(visible(x, y, r))
+ {
+ if(r)
+ {
+ int dy = -r;
+ int dx = 0;
+ int flip = 0;
+ int r6 = r * 3 / 5;
+ do
+ {
+ base_type::ren().blend_pixel(x - dx, y - dy, base_type::line_color(), cover_full);
+ base_type::ren().blend_pixel(x + dx, y - dy, base_type::line_color(), cover_full);
+
+ if(dx)
+ {
+ base_type::ren().blend_hline(x-dx+1, y-dy, x+dx-1, base_type::fill_color(), cover_full);
+ }
+ ++dy;
+ dx += flip;
+ flip ^= 1;
+ }
+ while(dy < r6);
+ base_type::ren().blend_hline(x-dx, y-dy, x+dx, base_type::line_color(), cover_full);
+ }
+ else
+ {
+ base_type::ren().blend_pixel(x, y, base_type::fill_color(), cover_full);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void triangle_down(int x, int y, int r)
+ {
+ if(visible(x, y, r))
+ {
+ if(r)
+ {
+ int dy = -r;
+ int dx = 0;
+ int flip = 0;
+ int r6 = r * 3 / 5;
+ do
+ {
+ base_type::ren().blend_pixel(x - dx, y + dy, base_type::line_color(), cover_full);
+ base_type::ren().blend_pixel(x + dx, y + dy, base_type::line_color(), cover_full);
+
+ if(dx)
+ {
+ base_type::ren().blend_hline(x-dx+1, y+dy, x+dx-1, base_type::fill_color(), cover_full);
+ }
+ ++dy;
+ dx += flip;
+ flip ^= 1;
+ }
+ while(dy < r6);
+ base_type::ren().blend_hline(x-dx, y+dy, x+dx, base_type::line_color(), cover_full);
+ }
+ else
+ {
+ base_type::ren().blend_pixel(x, y, base_type::fill_color(), cover_full);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void four_rays(int x, int y, int r)
+ {
+ if(visible(x, y, r))
+ {
+ if(r)
+ {
+ int dy = -r;
+ int dx = 0;
+ int flip = 0;
+ int r3 = -(r / 3);
+ do
+ {
+ base_type::ren().blend_pixel(x - dx, y + dy, base_type::line_color(), cover_full);
+ base_type::ren().blend_pixel(x + dx, y + dy, base_type::line_color(), cover_full);
+ base_type::ren().blend_pixel(x - dx, y - dy, base_type::line_color(), cover_full);
+ base_type::ren().blend_pixel(x + dx, y - dy, base_type::line_color(), cover_full);
+ base_type::ren().blend_pixel(x + dy, y - dx, base_type::line_color(), cover_full);
+ base_type::ren().blend_pixel(x + dy, y + dx, base_type::line_color(), cover_full);
+ base_type::ren().blend_pixel(x - dy, y - dx, base_type::line_color(), cover_full);
+ base_type::ren().blend_pixel(x - dy, y + dx, base_type::line_color(), cover_full);
+
+ if(dx)
+ {
+ base_type::ren().blend_hline(x-dx+1, y+dy, x+dx-1, base_type::fill_color(), cover_full);
+ base_type::ren().blend_hline(x-dx+1, y-dy, x+dx-1, base_type::fill_color(), cover_full);
+ base_type::ren().blend_vline(x+dy, y-dx+1, y+dx-1, base_type::fill_color(), cover_full);
+ base_type::ren().blend_vline(x-dy, y-dx+1, y+dx-1, base_type::fill_color(), cover_full);
+ }
+ ++dy;
+ dx += flip;
+ flip ^= 1;
+ }
+ while(dy <= r3);
+ base_type::solid_rectangle(x+r3+1, y+r3+1, x-r3-1, y-r3-1);
+ }
+ else
+ {
+ base_type::ren().blend_pixel(x, y, base_type::fill_color(), cover_full);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void cross(int x, int y, int r)
+ {
+ if(visible(x, y, r))
+ {
+ if(r)
+ {
+ base_type::ren().blend_vline(x, y-r, y+r, base_type::line_color(), cover_full);
+ base_type::ren().blend_hline(x-r, y, x+r, base_type::line_color(), cover_full);
+ }
+ else
+ {
+ base_type::ren().blend_pixel(x, y, base_type::fill_color(), cover_full);
+ }
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void xing(int x, int y, int r)
+ {
+ if(visible(x, y, r))
+ {
+ if(r)
+ {
+ int dy = -r * 7 / 10;
+ do
+ {
+ base_type::ren().blend_pixel(x + dy, y + dy, base_type::line_color(), cover_full);
+ base_type::ren().blend_pixel(x - dy, y + dy, base_type::line_color(), cover_full);
+ base_type::ren().blend_pixel(x + dy, y - dy, base_type::line_color(), cover_full);
+ base_type::ren().blend_pixel(x - dy, y - dy, base_type::line_color(), cover_full);
+ ++dy;
+ }
+ while(dy < 0);
+ }
+ base_type::ren().blend_pixel(x, y, base_type::fill_color(), cover_full);
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void dash(int x, int y, int r)
+ {
+ if(visible(x, y, r))
+ {
+ if(r) base_type::ren().blend_hline(x-r, y, x+r, base_type::line_color(), cover_full);
+ else base_type::ren().blend_pixel(x, y, base_type::fill_color(), cover_full);
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ void dot(int x, int y, int r)
+ {
+ if(visible(x, y, r))
+ {
+ if(r) base_type::solid_ellipse(x, y, r, r);
+ else base_type::ren().blend_pixel(x, y, base_type::fill_color(), cover_full);
+ }
+ }
+
+ //--------------------------------------------------------------------
+ void pixel(int x, int y, int)
+ {
+ base_type::ren().blend_pixel(x, y, base_type::fill_color(), cover_full);
+ }
+
+ //--------------------------------------------------------------------
+ void marker(int x, int y, int r, marker_e type)
+ {
+ switch(type)
+ {
+ case marker_square: square(x, y, r); break;
+ case marker_diamond: diamond(x, y, r); break;
+ case marker_circle: circle(x, y, r); break;
+ case marker_crossed_circle: crossed_circle(x, y, r); break;
+ case marker_semiellipse_left: semiellipse_left(x, y, r); break;
+ case marker_semiellipse_right: semiellipse_right(x, y, r); break;
+ case marker_semiellipse_up: semiellipse_up(x, y, r); break;
+ case marker_semiellipse_down: semiellipse_down(x, y, r); break;
+ case marker_triangle_left: triangle_left(x, y, r); break;
+ case marker_triangle_right: triangle_right(x, y, r); break;
+ case marker_triangle_up: triangle_up(x, y, r); break;
+ case marker_triangle_down: triangle_down(x, y, r); break;
+ case marker_four_rays: four_rays(x, y, r); break;
+ case marker_cross: cross(x, y, r); break;
+ case marker_x: xing(x, y, r); break;
+ case marker_dash: dash(x, y, r); break;
+ case marker_dot: dot(x, y, r); break;
+ case marker_pixel: pixel(x, y, r); break;
+ }
+ }
+
+
+ //--------------------------------------------------------------------
+ template<class T>
+ void markers(int n, const T* x, const T* y, T r, marker_e type)
+ {
+ if(n <= 0) return;
+ if(r == 0)
+ {
+ do
+ {
+ base_type::ren().blend_pixel(int(*x), int(*y), base_type::fill_color(), cover_full);
+ ++x;
+ ++y;
+ }
+ while(--n);
+ return;
+ }
+
+ switch(type)
+ {
+ case marker_square: do { square (int(*x), int(*y), int(r)); ++x; ++y; } while(--n); break;
+ case marker_diamond: do { diamond (int(*x), int(*y), int(r)); ++x; ++y; } while(--n); break;
+ case marker_circle: do { circle (int(*x), int(*y), int(r)); ++x; ++y; } while(--n); break;
+ case marker_crossed_circle: do { crossed_circle (int(*x), int(*y), int(r)); ++x; ++y; } while(--n); break;
+ case marker_semiellipse_left: do { semiellipse_left (int(*x), int(*y), int(r)); ++x; ++y; } while(--n); break;
+ case marker_semiellipse_right: do { semiellipse_right(int(*x), int(*y), int(r)); ++x; ++y; } while(--n); break;
+ case marker_semiellipse_up: do { semiellipse_up (int(*x), int(*y), int(r)); ++x; ++y; } while(--n); break;
+ case marker_semiellipse_down: do { semiellipse_down (int(*x), int(*y), int(r)); ++x; ++y; } while(--n); break;
+ case marker_triangle_left: do { triangle_left (int(*x), int(*y), int(r)); ++x; ++y; } while(--n); break;
+ case marker_triangle_right: do { triangle_right (int(*x), int(*y), int(r)); ++x; ++y; } while(--n); break;
+ case marker_triangle_up: do { triangle_up (int(*x), int(*y), int(r)); ++x; ++y; } while(--n); break;
+ case marker_triangle_down: do { triangle_down (int(*x), int(*y), int(r)); ++x; ++y; } while(--n); break;
+ case marker_four_rays: do { four_rays (int(*x), int(*y), int(r)); ++x; ++y; } while(--n); break;
+ case marker_cross: do { cross (int(*x), int(*y), int(r)); ++x; ++y; } while(--n); break;
+ case marker_x: do { xing (int(*x), int(*y), int(r)); ++x; ++y; } while(--n); break;
+ case marker_dash: do { dash (int(*x), int(*y), int(r)); ++x; ++y; } while(--n); break;
+ case marker_dot: do { dot (int(*x), int(*y), int(r)); ++x; ++y; } while(--n); break;
+ case marker_pixel: do { pixel (int(*x), int(*y), int(r)); ++x; ++y; } while(--n); break;
+ }
+ }
+
+ //--------------------------------------------------------------------
+ template<class T>
+ void markers(int n, const T* x, const T* y, const T* r, marker_e type)
+ {
+ if(n <= 0) return;
+ switch(type)
+ {
+ case marker_square: do { square (int(*x), int(*y), int(*r)); ++x; ++y; ++r; } while(--n); break;
+ case marker_diamond: do { diamond (int(*x), int(*y), int(*r)); ++x; ++y; ++r; } while(--n); break;
+ case marker_circle: do { circle (int(*x), int(*y), int(*r)); ++x; ++y; ++r; } while(--n); break;
+ case marker_crossed_circle: do { crossed_circle (int(*x), int(*y), int(*r)); ++x; ++y; ++r; } while(--n); break;
+ case marker_semiellipse_left: do { semiellipse_left (int(*x), int(*y), int(*r)); ++x; ++y; ++r; } while(--n); break;
+ case marker_semiellipse_right: do { semiellipse_right(int(*x), int(*y), int(*r)); ++x; ++y; ++r; } while(--n); break;
+ case marker_semiellipse_up: do { semiellipse_up (int(*x), int(*y), int(*r)); ++x; ++y; ++r; } while(--n); break;
+ case marker_semiellipse_down: do { semiellipse_down (int(*x), int(*y), int(*r)); ++x; ++y; ++r; } while(--n); break;
+ case marker_triangle_left: do { triangle_left (int(*x), int(*y), int(*r)); ++x; ++y; ++r; } while(--n); break;
+ case marker_triangle_right: do { triangle_right (int(*x), int(*y), int(*r)); ++x; ++y; ++r; } while(--n); break;
+ case marker_triangle_up: do { triangle_up (int(*x), int(*y), int(*r)); ++x; ++y; ++r; } while(--n); break;
+ case marker_triangle_down: do { triangle_down (int(*x), int(*y), int(*r)); ++x; ++y; ++r; } while(--n); break;
+ case marker_four_rays: do { four_rays (int(*x), int(*y), int(*r)); ++x; ++y; ++r; } while(--n); break;
+ case marker_cross: do { cross (int(*x), int(*y), int(*r)); ++x; ++y; ++r; } while(--n); break;
+ case marker_x: do { xing (int(*x), int(*y), int(*r)); ++x; ++y; ++r; } while(--n); break;
+ case marker_dash: do { dash (int(*x), int(*y), int(*r)); ++x; ++y; ++r; } while(--n); break;
+ case marker_dot: do { dot (int(*x), int(*y), int(*r)); ++x; ++y; ++r; } while(--n); break;
+ case marker_pixel: do { pixel (int(*x), int(*y), int(*r)); ++x; ++y; ++r; } while(--n); break;
+ }
+ }
+
+ //--------------------------------------------------------------------
+ template<class T>
+ void markers(int n, const T* x, const T* y, const T* r, const color_type* fc, marker_e type)
+ {
+ if(n <= 0) return;
+ switch(type)
+ {
+ case marker_square: do { base_type::fill_color(*fc); square (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; } while(--n); break;
+ case marker_diamond: do { base_type::fill_color(*fc); diamond (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; } while(--n); break;
+ case marker_circle: do { base_type::fill_color(*fc); circle (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; } while(--n); break;
+ case marker_crossed_circle: do { base_type::fill_color(*fc); crossed_circle (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; } while(--n); break;
+ case marker_semiellipse_left: do { base_type::fill_color(*fc); semiellipse_left (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; } while(--n); break;
+ case marker_semiellipse_right: do { base_type::fill_color(*fc); semiellipse_right(int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; } while(--n); break;
+ case marker_semiellipse_up: do { base_type::fill_color(*fc); semiellipse_up (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; } while(--n); break;
+ case marker_semiellipse_down: do { base_type::fill_color(*fc); semiellipse_down (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; } while(--n); break;
+ case marker_triangle_left: do { base_type::fill_color(*fc); triangle_left (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; } while(--n); break;
+ case marker_triangle_right: do { base_type::fill_color(*fc); triangle_right (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; } while(--n); break;
+ case marker_triangle_up: do { base_type::fill_color(*fc); triangle_up (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; } while(--n); break;
+ case marker_triangle_down: do { base_type::fill_color(*fc); triangle_down (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; } while(--n); break;
+ case marker_four_rays: do { base_type::fill_color(*fc); four_rays (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; } while(--n); break;
+ case marker_cross: do { base_type::fill_color(*fc); cross (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; } while(--n); break;
+ case marker_x: do { base_type::fill_color(*fc); xing (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; } while(--n); break;
+ case marker_dash: do { base_type::fill_color(*fc); dash (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; } while(--n); break;
+ case marker_dot: do { base_type::fill_color(*fc); dot (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; } while(--n); break;
+ case marker_pixel: do { base_type::fill_color(*fc); pixel (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; } while(--n); break;
+ }
+ }
+
+ //--------------------------------------------------------------------
+ template<class T>
+ void markers(int n, const T* x, const T* y, const T* r, const color_type* fc, const color_type* lc, marker_e type)
+ {
+ if(n <= 0) return;
+ switch(type)
+ {
+ case marker_square: do { base_type::fill_color(*fc); base_type::line_color(*lc); square (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; ++lc; } while(--n); break;
+ case marker_diamond: do { base_type::fill_color(*fc); base_type::line_color(*lc); diamond (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; ++lc; } while(--n); break;
+ case marker_circle: do { base_type::fill_color(*fc); base_type::line_color(*lc); circle (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; ++lc; } while(--n); break;
+ case marker_crossed_circle: do { base_type::fill_color(*fc); base_type::line_color(*lc); crossed_circle (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; ++lc; } while(--n); break;
+ case marker_semiellipse_left: do { base_type::fill_color(*fc); base_type::line_color(*lc); semiellipse_left (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; ++lc; } while(--n); break;
+ case marker_semiellipse_right: do { base_type::fill_color(*fc); base_type::line_color(*lc); semiellipse_right(int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; ++lc; } while(--n); break;
+ case marker_semiellipse_up: do { base_type::fill_color(*fc); base_type::line_color(*lc); semiellipse_up (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; ++lc; } while(--n); break;
+ case marker_semiellipse_down: do { base_type::fill_color(*fc); base_type::line_color(*lc); semiellipse_down (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; ++lc; } while(--n); break;
+ case marker_triangle_left: do { base_type::fill_color(*fc); base_type::line_color(*lc); triangle_left (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; ++lc; } while(--n); break;
+ case marker_triangle_right: do { base_type::fill_color(*fc); base_type::line_color(*lc); triangle_right (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; ++lc; } while(--n); break;
+ case marker_triangle_up: do { base_type::fill_color(*fc); base_type::line_color(*lc); triangle_up (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; ++lc; } while(--n); break;
+ case marker_triangle_down: do { base_type::fill_color(*fc); base_type::line_color(*lc); triangle_down (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; ++lc; } while(--n); break;
+ case marker_four_rays: do { base_type::fill_color(*fc); base_type::line_color(*lc); four_rays (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; ++lc; } while(--n); break;
+ case marker_cross: do { base_type::fill_color(*fc); base_type::line_color(*lc); cross (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; ++lc; } while(--n); break;
+ case marker_x: do { base_type::fill_color(*fc); base_type::line_color(*lc); xing (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; ++lc; } while(--n); break;
+ case marker_dash: do { base_type::fill_color(*fc); base_type::line_color(*lc); dash (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; ++lc; } while(--n); break;
+ case marker_dot: do { base_type::fill_color(*fc); base_type::line_color(*lc); dot (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; ++lc; } while(--n); break;
+ case marker_pixel: do { base_type::fill_color(*fc); base_type::line_color(*lc); pixel (int(*x), int(*y), int(*r)); ++x; ++y; ++r; ++fc; ++lc; } while(--n); break;
+ }
+ }
+ };
+
+}
+
+#endif
diff --git a/agg/inc/agg_renderer_mclip.h b/agg/inc/agg_renderer_mclip.h
new file mode 100755
index 000000000000..dc758b9ea72d
--- /dev/null
+++ b/agg/inc/agg_renderer_mclip.h
@@ -0,0 +1,383 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// class renderer_mclip
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_RENDERER_MCLIP_INCLUDED
+#define AGG_RENDERER_MCLIP_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_array.h"
+#include "agg_renderer_base.h"
+
+namespace agg
+{
+
+ //----------------------------------------------------------renderer_mclip
+ template<class PixelFormat> class renderer_mclip
+ {
+ public:
+ typedef PixelFormat pixfmt_type;
+ typedef typename pixfmt_type::color_type color_type;
+ typedef renderer_base<pixfmt_type> base_ren_type;
+
+ //--------------------------------------------------------------------
+ renderer_mclip(pixfmt_type& ren) :
+ m_ren(ren),
+ m_curr_cb(0),
+ m_bounds(m_ren.xmin(), m_ren.ymin(), m_ren.xmax(), m_ren.ymax())
+ {
+ }
+
+ //--------------------------------------------------------------------
+ const pixfmt_type& ren() const { return m_ren.ren(); }
+ pixfmt_type& ren() { return m_ren.ren(); }
+
+ //--------------------------------------------------------------------
+ unsigned width() const { return m_ren.width(); }
+ unsigned height() const { return m_ren.height(); }
+
+ //--------------------------------------------------------------------
+ const rect& clip_box() const { return m_ren.clip_box(); }
+ int xmin() const { return m_ren.xmin(); }
+ int ymin() const { return m_ren.ymin(); }
+ int xmax() const { return m_ren.xmax(); }
+ int ymax() const { return m_ren.ymax(); }
+
+ //--------------------------------------------------------------------
+ const rect& bounding_clip_box() const { return m_bounds; }
+ int bounding_xmin() const { return m_bounds.x1; }
+ int bounding_ymin() const { return m_bounds.y1; }
+ int bounding_xmax() const { return m_bounds.x2; }
+ int bounding_ymax() const { return m_bounds.y2; }
+
+ //--------------------------------------------------------------------
+ void first_clip_box()
+ {
+ m_curr_cb = 0;
+ if(m_clip.size())
+ {
+ const rect& cb = m_clip[0];
+ m_ren.clip_box_naked(cb.x1, cb.y1, cb.x2, cb.y2);
+ }
+ }
+
+ //--------------------------------------------------------------------
+ bool next_clip_box()
+ {
+ if(++m_curr_cb < m_clip.size())
+ {
+ const rect& cb = m_clip[m_curr_cb];
+ m_ren.clip_box_naked(cb.x1, cb.y1, cb.x2, cb.y2);
+ return true;
+ }
+ return false;
+ }
+
+ //--------------------------------------------------------------------
+ void reset_clipping(bool visibility)
+ {
+ m_ren.reset_clipping(visibility);
+ m_clip.remove_all();
+ m_curr_cb = 0;
+ m_bounds = m_ren.clip_box();
+ }
+
+ //--------------------------------------------------------------------
+ void add_clip_box(int x1, int y1, int x2, int y2)
+ {
+ rect cb(x1, y1, x2, y2);
+ cb.normalize();
+ if(cb.clip(rect(0, 0, width() - 1, height() - 1)))
+ {
+ m_clip.add(cb);
+ if(cb.x1 < m_bounds.x1) m_bounds.x1 = cb.x1;
+ if(cb.y1 < m_bounds.y1) m_bounds.y1 = cb.y1;
+ if(cb.x2 > m_bounds.x2) m_bounds.x2 = cb.x2;
+ if(cb.y2 > m_bounds.y2) m_bounds.y2 = cb.y2;
+ }
+ }
+
+ //--------------------------------------------------------------------
+ void clear(const color_type& c)
+ {
+ m_ren.clear(c);
+ }
+
+ //--------------------------------------------------------------------
+ void copy_pixel(int x, int y, const color_type& c)
+ {
+ first_clip_box();
+ do
+ {
+ if(m_ren.inbox(x, y))
+ {
+ m_ren.ren().copy_pixel(x, y, c);
+ break;
+ }
+ }
+ while(next_clip_box());
+ }
+
+ //--------------------------------------------------------------------
+ void blend_pixel(int x, int y, const color_type& c, cover_type cover)
+ {
+ first_clip_box();
+ do
+ {
+ if(m_ren.inbox(x, y))
+ {
+ m_ren.ren().blend_pixel(x, y, c, cover);
+ break;
+ }
+ }
+ while(next_clip_box());
+ }
+
+ //--------------------------------------------------------------------
+ color_type pixel(int x, int y) const
+ {
+ first_clip_box();
+ do
+ {
+ if(m_ren.inbox(x, y))
+ {
+ return m_ren.ren().pixel(x, y);
+ }
+ }
+ while(next_clip_box());
+ return color_type::no_color();
+ }
+
+ //--------------------------------------------------------------------
+ void copy_hline(int x1, int y, int x2, const color_type& c)
+ {
+ first_clip_box();
+ do
+ {
+ m_ren.copy_hline(x1, y, x2, c);
+ }
+ while(next_clip_box());
+ }
+
+ //--------------------------------------------------------------------
+ void copy_vline(int x, int y1, int y2, const color_type& c)
+ {
+ first_clip_box();
+ do
+ {
+ m_ren.copy_vline(x, y1, y2, c);
+ }
+ while(next_clip_box());
+ }
+
+ //--------------------------------------------------------------------
+ void blend_hline(int x1, int y, int x2,
+ const color_type& c, cover_type cover)
+ {
+ first_clip_box();
+ do
+ {
+ m_ren.blend_hline(x1, y, x2, c, cover);
+ }
+ while(next_clip_box());
+ }
+
+ //--------------------------------------------------------------------
+ void blend_vline(int x, int y1, int y2,
+ const color_type& c, cover_type cover)
+ {
+ first_clip_box();
+ do
+ {
+ m_ren.blend_vline(x, y1, y2, c, cover);
+ }
+ while(next_clip_box());
+ }
+
+ //--------------------------------------------------------------------
+ void copy_bar(int x1, int y1, int x2, int y2, const color_type& c)
+ {
+ first_clip_box();
+ do
+ {
+ m_ren.copy_bar(x1, y1, x2, y2, c);
+ }
+ while(next_clip_box());
+ }
+
+ //--------------------------------------------------------------------
+ void blend_bar(int x1, int y1, int x2, int y2,
+ const color_type& c, cover_type cover)
+ {
+ first_clip_box();
+ do
+ {
+ m_ren.blend_bar(x1, y1, x2, y2, c, cover);
+ }
+ while(next_clip_box());
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_solid_hspan(int x, int y, int len,
+ const color_type& c, const cover_type* covers)
+ {
+ first_clip_box();
+ do
+ {
+ m_ren.blend_solid_hspan(x, y, len, c, covers);
+ }
+ while(next_clip_box());
+ }
+
+ //--------------------------------------------------------------------
+ void blend_solid_vspan(int x, int y, int len,
+ const color_type& c, const cover_type* covers)
+ {
+ first_clip_box();
+ do
+ {
+ m_ren.blend_solid_vspan(x, y, len, c, covers);
+ }
+ while(next_clip_box());
+ }
+
+ //--------------------------------------------------------------------
+ void blend_color_hspan(int x, int y, int len,
+ const color_type* colors,
+ const cover_type* covers,
+ cover_type cover = cover_full)
+ {
+ first_clip_box();
+ do
+ {
+ m_ren.blend_color_hspan(x, y, len, colors, covers, cover);
+ }
+ while(next_clip_box());
+ }
+
+ //--------------------------------------------------------------------
+ void blend_color_vspan(int x, int y, int len,
+ const color_type* colors,
+ const cover_type* covers,
+ cover_type cover = cover_full)
+ {
+ first_clip_box();
+ do
+ {
+ m_ren.blend_color_hspan(x, y, len, colors, covers, cover);
+ }
+ while(next_clip_box());
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_qpaque_color_hspan(int x, int y, int len,
+ const color_type* colors,
+ const cover_type* covers,
+ cover_type cover = cover_full)
+ {
+ first_clip_box();
+ do
+ {
+ m_ren.blend_opaque_color_hspan(x, y, len, colors, covers, cover);
+ }
+ while(next_clip_box());
+ }
+
+ //--------------------------------------------------------------------
+ void blend_opaque_color_vspan(int x, int y, int len,
+ const color_type* colors,
+ const cover_type* covers,
+ cover_type cover = cover_full)
+ {
+ first_clip_box();
+ do
+ {
+ m_ren.blend_opaque_color_hspan(x, y, len, colors, covers, cover);
+ }
+ while(next_clip_box());
+ }
+
+
+ //--------------------------------------------------------------------
+ void blend_color_hspan_no_clip(int x, int y, int len,
+ const color_type* colors,
+ const cover_type* covers,
+ cover_type cover = cover_full)
+ {
+ m_ren.blend_color_hspan_no_clip(x, y, len, colors, covers, cover);
+ }
+
+ //--------------------------------------------------------------------
+ void blend_color_vspan_no_clip(int x, int y, int len,
+ const color_type* colors,
+ const cover_type* covers,
+ cover_type cover = cover_full)
+ {
+ m_ren.blend_color_vspan_no_clip(x, y, len, colors, covers, cover);
+ }
+
+ //--------------------------------------------------------------------
+ void blend_opaque_color_hspan_no_clip(int x, int y, int len,
+ const color_type* colors,
+ const cover_type* covers,
+ cover_type cover = cover_full)
+ {
+ m_ren.blend_opaque_color_hspan_no_clip(x, y, len, colors, covers, cover);
+ }
+
+ //--------------------------------------------------------------------
+ void blend_opaque_color_vspan_no_clip(int x, int y, int len,
+ const color_type* colors,
+ const cover_type* covers,
+ cover_type cover = cover_full)
+ {
+ m_ren.blend_opaque_color_vspan_no_clip(x, y, len, colors, covers, cover);
+ }
+
+
+ //--------------------------------------------------------------------
+ void copy_from(const rendering_buffer& from,
+ const rect* rc=0,
+ int x_to=0,
+ int y_to=0)
+ {
+ first_clip_box();
+ do
+ {
+ m_ren.copy_from(from, rc, x_to, y_to);
+ }
+ while(next_clip_box());
+ }
+
+ private:
+ renderer_mclip(const renderer_mclip<PixelFormat>&);
+ const renderer_mclip<PixelFormat>&
+ operator = (const renderer_mclip<PixelFormat>&);
+
+ base_ren_type m_ren;
+ pod_deque<rect, 4> m_clip;
+ unsigned m_curr_cb;
+ rect m_bounds;
+ };
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_renderer_outline_aa.h b/agg/inc/agg_renderer_outline_aa.h
new file mode 100755
index 000000000000..d2f9484c5a1d
--- /dev/null
+++ b/agg/inc/agg_renderer_outline_aa.h
@@ -0,0 +1,1545 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+#ifndef AGG_RENDERER_OUTLINE_AA_INCLUDED
+#define AGG_RENDERER_OUTLINE_AA_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_math.h"
+#include "agg_line_aa_basics.h"
+#include "agg_dda_line.h"
+#include "agg_ellipse_bresenham.h"
+#include "agg_renderer_base.h"
+#include "agg_gamma_functions.h"
+
+namespace agg
+{
+
+ //===================================================distance_interpolator0
+ class distance_interpolator0
+ {
+ public:
+ //---------------------------------------------------------------------
+ distance_interpolator0() {}
+ distance_interpolator0(int x1, int y1, int x2, int y2, int x, int y) :
+ m_dx(line_mr(x2) - line_mr(x1)),
+ m_dy(line_mr(y2) - line_mr(y1)),
+ m_dist((line_mr(x + line_subpixel_size/2) - line_mr(x2)) * m_dy -
+ (line_mr(y + line_subpixel_size/2) - line_mr(y2)) * m_dx)
+ {
+ m_dx <<= line_mr_subpixel_shift;
+ m_dy <<= line_mr_subpixel_shift;
+ }
+
+ //---------------------------------------------------------------------
+ void inc_x() { m_dist += m_dy; }
+ void dec_x() { m_dist -= m_dy; }
+ void inc_y() { m_dist -= m_dx; }
+ void dec_y() { m_dist += m_dx; }
+
+ //---------------------------------------------------------------------
+ void inc_x(int _dy)
+ {
+ m_dist += m_dy;
+ if(_dy > 0) m_dist -= m_dx;
+ if(_dy < 0) m_dist += m_dx;
+ }
+
+ //---------------------------------------------------------------------
+ void dec_x(int _dy)
+ {
+ m_dist -= m_dy;
+ if(_dy > 0) m_dist -= m_dx;
+ if(_dy < 0) m_dist += m_dx;
+ }
+
+ //---------------------------------------------------------------------
+ void inc_y(int _dx)
+ {
+ m_dist -= m_dx;
+ if(_dx > 0) m_dist += m_dy;
+ if(_dx < 0) m_dist -= m_dy;
+ }
+
+ void dec_y(int _dx)
+ //---------------------------------------------------------------------
+ {
+ m_dist += m_dx;
+ if(_dx > 0) m_dist += m_dy;
+ if(_dx < 0) m_dist -= m_dy;
+ }
+
+ //---------------------------------------------------------------------
+ int dist() const { return m_dist; }
+ int dx() const { return m_dx; }
+ int dy() const { return m_dy; }
+
+ private:
+ //---------------------------------------------------------------------
+ int m_dx;
+ int m_dy;
+ int m_dist;
+ };
+
+
+
+ //===================================================distance_interpolator1
+ class distance_interpolator1
+ {
+ public:
+ //---------------------------------------------------------------------
+ distance_interpolator1() {}
+ distance_interpolator1(int x1, int y1, int x2, int y2, int x, int y) :
+ m_dx(x2 - x1),
+ m_dy(y2 - y1),
+ m_dist(int(double(x + line_subpixel_size/2 - x2) * double(m_dy) -
+ double(y + line_subpixel_size/2 - y2) * double(m_dx)))
+ {
+ m_dx <<= line_subpixel_shift;
+ m_dy <<= line_subpixel_shift;
+ }
+
+ //---------------------------------------------------------------------
+ void inc_x() { m_dist += m_dy; }
+ void dec_x() { m_dist -= m_dy; }
+ void inc_y() { m_dist -= m_dx; }
+ void dec_y() { m_dist += m_dx; }
+
+ //---------------------------------------------------------------------
+ void inc_x(int _dy)
+ {
+ m_dist += m_dy;
+ if(_dy > 0) m_dist -= m_dx;
+ if(_dy < 0) m_dist += m_dx;
+ }
+
+ //---------------------------------------------------------------------
+ void dec_x(int _dy)
+ {
+ m_dist -= m_dy;
+ if(_dy > 0) m_dist -= m_dx;
+ if(_dy < 0) m_dist += m_dx;
+ }
+
+ //---------------------------------------------------------------------
+ void inc_y(int _dx)
+ {
+ m_dist -= m_dx;
+ if(_dx > 0) m_dist += m_dy;
+ if(_dx < 0) m_dist -= m_dy;
+ }
+
+ void dec_y(int _dx)
+ //---------------------------------------------------------------------
+ {
+ m_dist += m_dx;
+ if(_dx > 0) m_dist += m_dy;
+ if(_dx < 0) m_dist -= m_dy;
+ }
+
+ //---------------------------------------------------------------------
+ int dist() const { return m_dist; }
+ int dx() const { return m_dx; }
+ int dy() const { return m_dy; }
+
+ private:
+ //---------------------------------------------------------------------
+ int m_dx;
+ int m_dy;
+ int m_dist;
+ };
+
+
+
+
+
+ //===================================================distance_interpolator2
+ class distance_interpolator2
+ {
+ public:
+ //---------------------------------------------------------------------
+ distance_interpolator2() {}
+ distance_interpolator2(int x1, int y1, int x2, int y2,
+ int sx, int sy, int x, int y) :
+ m_dx(x2 - x1),
+ m_dy(y2 - y1),
+ m_dx_start(line_mr(sx) - line_mr(x1)),
+ m_dy_start(line_mr(sy) - line_mr(y1)),
+
+ m_dist(int(double(x + line_subpixel_size/2 - x2) * double(m_dy) -
+ double(y + line_subpixel_size/2 - y2) * double(m_dx))),
+
+ m_dist_start((line_mr(x + line_subpixel_size/2) - line_mr(sx)) * m_dy_start -
+ (line_mr(y + line_subpixel_size/2) - line_mr(sy)) * m_dx_start)
+ {
+ m_dx <<= line_subpixel_shift;
+ m_dy <<= line_subpixel_shift;
+ m_dx_start <<= line_mr_subpixel_shift;
+ m_dy_start <<= line_mr_subpixel_shift;
+ }
+
+ distance_interpolator2(int x1, int y1, int x2, int y2,
+ int ex, int ey, int x, int y, int) :
+ m_dx(x2 - x1),
+ m_dy(y2 - y1),
+ m_dx_start(line_mr(ex) - line_mr(x2)),
+ m_dy_start(line_mr(ey) - line_mr(y2)),
+
+ m_dist(int(double(x + line_subpixel_size/2 - x2) * double(m_dy) -
+ double(y + line_subpixel_size/2 - y2) * double(m_dx))),
+
+ m_dist_start((line_mr(x + line_subpixel_size/2) - line_mr(ex)) * m_dy_start -
+ (line_mr(y + line_subpixel_size/2) - line_mr(ey)) * m_dx_start)
+ {
+ m_dx <<= line_subpixel_shift;
+ m_dy <<= line_subpixel_shift;
+ m_dx_start <<= line_mr_subpixel_shift;
+ m_dy_start <<= line_mr_subpixel_shift;
+ }
+
+
+ //---------------------------------------------------------------------
+ void inc_x() { m_dist += m_dy; m_dist_start += m_dy_start; }
+ void dec_x() { m_dist -= m_dy; m_dist_start -= m_dy_start; }
+ void inc_y() { m_dist -= m_dx; m_dist_start -= m_dx_start; }
+ void dec_y() { m_dist += m_dx; m_dist_start += m_dx_start; }
+
+ //---------------------------------------------------------------------
+ void inc_x(int _dy)
+ {
+ m_dist += m_dy;
+ m_dist_start += m_dy_start;
+ if(_dy > 0)
+ {
+ m_dist -= m_dx;
+ m_dist_start -= m_dx_start;
+ }
+ if(_dy < 0)
+ {
+ m_dist += m_dx;
+ m_dist_start += m_dx_start;
+ }
+ }
+
+ //---------------------------------------------------------------------
+ void dec_x(int _dy)
+ {
+ m_dist -= m_dy;
+ m_dist_start -= m_dy_start;
+ if(_dy > 0)
+ {
+ m_dist -= m_dx;
+ m_dist_start -= m_dx_start;
+ }
+ if(_dy < 0)
+ {
+ m_dist += m_dx;
+ m_dist_start += m_dx_start;
+ }
+ }
+
+ //---------------------------------------------------------------------
+ void inc_y(int _dx)
+ {
+ m_dist -= m_dx;
+ m_dist_start -= m_dx_start;
+ if(_dx > 0)
+ {
+ m_dist += m_dy;
+ m_dist_start += m_dy_start;
+ }
+ if(_dx < 0)
+ {
+ m_dist -= m_dy;
+ m_dist_start -= m_dy_start;
+ }
+ }
+
+ //---------------------------------------------------------------------
+ void dec_y(int _dx)
+ {
+ m_dist += m_dx;
+ m_dist_start += m_dx_start;
+ if(_dx > 0)
+ {
+ m_dist += m_dy;
+ m_dist_start += m_dy_start;
+ }
+ if(_dx < 0)
+ {
+ m_dist -= m_dy;
+ m_dist_start -= m_dy_start;
+ }
+ }
+
+ //---------------------------------------------------------------------
+ int dist() const { return m_dist; }
+ int dist_start() const { return m_dist_start; }
+ int dist_end() const { return m_dist_start; }
+
+ //---------------------------------------------------------------------
+ int dx() const { return m_dx; }
+ int dy() const { return m_dy; }
+ int dx_start() const { return m_dx_start; }
+ int dy_start() const { return m_dy_start; }
+ int dx_end() const { return m_dx_start; }
+ int dy_end() const { return m_dy_start; }
+
+ private:
+ //---------------------------------------------------------------------
+ int m_dx;
+ int m_dy;
+ int m_dx_start;
+ int m_dy_start;
+
+ int m_dist;
+ int m_dist_start;
+ };
+
+
+
+
+
+ //===================================================distance_interpolator3
+ class distance_interpolator3
+ {
+ public:
+ //---------------------------------------------------------------------
+ distance_interpolator3() {}
+ distance_interpolator3(int x1, int y1, int x2, int y2,
+ int sx, int sy, int ex, int ey,
+ int x, int y) :
+ m_dx(x2 - x1),
+ m_dy(y2 - y1),
+ m_dx_start(line_mr(sx) - line_mr(x1)),
+ m_dy_start(line_mr(sy) - line_mr(y1)),
+ m_dx_end(line_mr(ex) - line_mr(x2)),
+ m_dy_end(line_mr(ey) - line_mr(y2)),
+
+ m_dist(int(double(x + line_subpixel_size/2 - x2) * double(m_dy) -
+ double(y + line_subpixel_size/2 - y2) * double(m_dx))),
+
+ m_dist_start((line_mr(x + line_subpixel_size/2) - line_mr(sx)) * m_dy_start -
+ (line_mr(y + line_subpixel_size/2) - line_mr(sy)) * m_dx_start),
+
+ m_dist_end((line_mr(x + line_subpixel_size/2) - line_mr(ex)) * m_dy_end -
+ (line_mr(y + line_subpixel_size/2) - line_mr(ey)) * m_dx_end)
+ {
+ m_dx <<= line_subpixel_shift;
+ m_dy <<= line_subpixel_shift;
+ m_dx_start <<= line_mr_subpixel_shift;
+ m_dy_start <<= line_mr_subpixel_shift;
+ m_dx_end <<= line_mr_subpixel_shift;
+ m_dy_end <<= line_mr_subpixel_shift;
+ }
+
+ //---------------------------------------------------------------------
+ void inc_x() { m_dist += m_dy; m_dist_start += m_dy_start; m_dist_end += m_dy_end; }
+ void dec_x() { m_dist -= m_dy; m_dist_start -= m_dy_start; m_dist_end -= m_dy_end; }
+ void inc_y() { m_dist -= m_dx; m_dist_start -= m_dx_start; m_dist_end -= m_dx_end; }
+ void dec_y() { m_dist += m_dx; m_dist_start += m_dx_start; m_dist_end += m_dx_end; }
+
+ //---------------------------------------------------------------------
+ void inc_x(int _dy)
+ {
+ m_dist += m_dy;
+ m_dist_start += m_dy_start;
+ m_dist_end += m_dy_end;
+ if(_dy > 0)
+ {
+ m_dist -= m_dx;
+ m_dist_start -= m_dx_start;
+ m_dist_end -= m_dx_end;
+ }
+ if(_dy < 0)
+ {
+ m_dist += m_dx;
+ m_dist_start += m_dx_start;
+ m_dist_end += m_dx_end;
+ }
+ }
+
+ //---------------------------------------------------------------------
+ void dec_x(int _dy)
+ {
+ m_dist -= m_dy;
+ m_dist_start -= m_dy_start;
+ m_dist_end -= m_dy_end;
+ if(_dy > 0)
+ {
+ m_dist -= m_dx;
+ m_dist_start -= m_dx_start;
+ m_dist_end -= m_dx_end;
+ }
+ if(_dy < 0)
+ {
+ m_dist += m_dx;
+ m_dist_start += m_dx_start;
+ m_dist_end += m_dx_end;
+ }
+ }
+
+ //---------------------------------------------------------------------
+ void inc_y(int _dx)
+ {
+ m_dist -= m_dx;
+ m_dist_start -= m_dx_start;
+ m_dist_end -= m_dx_end;
+ if(_dx > 0)
+ {
+ m_dist += m_dy;
+ m_dist_start += m_dy_start;
+ m_dist_end += m_dy_end;
+ }
+ if(_dx < 0)
+ {
+ m_dist -= m_dy;
+ m_dist_start -= m_dy_start;
+ m_dist_end -= m_dy_end;
+ }
+ }
+
+ //---------------------------------------------------------------------
+ void dec_y(int _dx)
+ {
+ m_dist += m_dx;
+ m_dist_start += m_dx_start;
+ m_dist_end += m_dx_end;
+ if(_dx > 0)
+ {
+ m_dist += m_dy;
+ m_dist_start += m_dy_start;
+ m_dist_end += m_dy_end;
+ }
+ if(_dx < 0)
+ {
+ m_dist -= m_dy;
+ m_dist_start -= m_dy_start;
+ m_dist_end -= m_dy_end;
+ }
+ }
+
+ //---------------------------------------------------------------------
+ int dist() const { return m_dist; }
+ int dist_start() const { return m_dist_start; }
+ int dist_end() const { return m_dist_end; }
+
+ //---------------------------------------------------------------------
+ int dx() const { return m_dx; }
+ int dy() const { return m_dy; }
+ int dx_start() const { return m_dx_start; }
+ int dy_start() const { return m_dy_start; }
+ int dx_end() const { return m_dx_end; }
+ int dy_end() const { return m_dy_end; }
+
+ private:
+ //---------------------------------------------------------------------
+ int m_dx;
+ int m_dy;
+ int m_dx_start;
+ int m_dy_start;
+ int m_dx_end;
+ int m_dy_end;
+
+ int m_dist;
+ int m_dist_start;
+ int m_dist_end;
+ };
+
+
+
+
+
+ //================================================line_interpolator_aa_base
+ template<class Renderer> class line_interpolator_aa_base
+ {
+ public:
+ typedef Renderer renderer_type;
+ typedef typename Renderer::color_type color_type;
+
+ //---------------------------------------------------------------------
+ enum
+ {
+ max_half_width = 64
+ };
+
+ //---------------------------------------------------------------------
+ line_interpolator_aa_base(renderer_type& ren, const line_parameters& lp) :
+ m_lp(&lp),
+ m_li(lp.vertical ? line_dbl_hr(lp.x2 - lp.x1) :
+ line_dbl_hr(lp.y2 - lp.y1),
+ lp.vertical ? abs(lp.y2 - lp.y1) :
+ abs(lp.x2 - lp.x1) + 1),
+ m_ren(ren),
+ m_len((lp.vertical == (lp.inc > 0)) ? -lp.len : lp.len),
+ m_x(lp.x1 >> line_subpixel_shift),
+ m_y(lp.y1 >> line_subpixel_shift),
+ m_old_x(m_x),
+ m_old_y(m_y),
+ m_count((lp.vertical ? abs((lp.y2 >> line_subpixel_shift) - m_y) :
+ abs((lp.x2 >> line_subpixel_shift) - m_x))),
+ m_width(ren.subpixel_width()),
+ m_max_extent(m_width >> (line_subpixel_shift - 2)),
+ m_step(0)
+ {
+ agg::dda2_line_interpolator li(0, lp.vertical ?
+ (lp.dy << agg::line_subpixel_shift) :
+ (lp.dx << agg::line_subpixel_shift),
+ lp.len);
+
+ unsigned i;
+ int stop = m_width + line_subpixel_size * 2;
+ for(i = 0; i < max_half_width; ++i)
+ {
+ m_dist[i] = li.y();
+ if(m_dist[i] >= stop) break;
+ ++li;
+ }
+ m_dist[i++] = 0x7FFF0000;
+ }
+
+ //---------------------------------------------------------------------
+ template<class DI> int step_hor_base(DI& di)
+ {
+ ++m_li;
+ m_x += m_lp->inc;
+ m_y = (m_lp->y1 + m_li.y()) >> line_subpixel_shift;
+
+ if(m_lp->inc > 0) di.inc_x(m_y - m_old_y);
+ else di.dec_x(m_y - m_old_y);
+
+ m_old_y = m_y;
+
+ return di.dist() / m_len;
+ }
+
+ //---------------------------------------------------------------------
+ template<class DI> int step_ver_base(DI& di)
+ {
+ ++m_li;
+ m_y += m_lp->inc;
+ m_x = (m_lp->x1 + m_li.y()) >> line_subpixel_shift;
+
+ if(m_lp->inc > 0) di.inc_y(m_x - m_old_x);
+ else di.dec_y(m_x - m_old_x);
+
+ m_old_x = m_x;
+
+ return di.dist() / m_len;
+ }
+
+ //---------------------------------------------------------------------
+ bool vertical() const { return m_lp->vertical; }
+ int width() const { return m_width; }
+ int count() const { return m_count; }
+
+ private:
+ line_interpolator_aa_base(const line_interpolator_aa_base<Renderer>&);
+ const line_interpolator_aa_base<Renderer>&
+ operator = (const line_interpolator_aa_base<Renderer>&);
+
+ protected:
+ const line_parameters* m_lp;
+ dda2_line_interpolator m_li;
+ renderer_type& m_ren;
+ int m_len;
+ int m_x;
+ int m_y;
+ int m_old_x;
+ int m_old_y;
+ int m_count;
+ int m_width;
+ int m_max_extent;
+ int m_step;
+ int m_dist[max_half_width + 1];
+ cover_type m_covers[max_half_width * 2 + 4];
+ };
+
+
+
+
+
+
+
+ //====================================================line_interpolator_aa0
+ template<class Renderer> class line_interpolator_aa0 :
+ public line_interpolator_aa_base<Renderer>
+ {
+ public:
+ typedef Renderer renderer_type;
+ typedef typename Renderer::color_type color_type;
+ typedef line_interpolator_aa_base<Renderer> base_type;
+
+ //---------------------------------------------------------------------
+ line_interpolator_aa0(renderer_type& ren, const line_parameters& lp) :
+ line_interpolator_aa_base<Renderer>(ren, lp),
+ m_di(lp.x1, lp.y1, lp.x2, lp.y2,
+ lp.x1 & ~line_subpixel_mask, lp.y1 & ~line_subpixel_mask)
+ {
+ base_type::m_li.adjust_forward();
+ }
+
+ //---------------------------------------------------------------------
+ bool step_hor()
+ {
+ int dist;
+ int dy;
+ int s1 = base_type::step_hor_base(m_di);
+ cover_type* p0 = base_type::m_covers + base_type::max_half_width + 2;
+ cover_type* p1 = p0;
+
+ *p1++ = (cover_type)base_type::m_ren.cover(s1);
+
+ dy = 1;
+ while((dist = base_type::m_dist[dy] - s1) <= base_type::m_width)
+ {
+ *p1++ = (cover_type)base_type::m_ren.cover(dist);
+ ++dy;
+ }
+
+ dy = 1;
+ while((dist = base_type::m_dist[dy] + s1) <= base_type::m_width)
+ {
+ *--p0 = (cover_type)base_type::m_ren.cover(dist);
+ ++dy;
+ }
+ base_type::m_ren.blend_solid_vspan(base_type::m_x,
+ base_type::m_y - dy + 1,
+ unsigned(p1 - p0),
+ p0);
+ return ++base_type::m_step < base_type::m_count;
+ }
+
+ //---------------------------------------------------------------------
+ bool step_ver()
+ {
+ int dist;
+ int dx;
+ int s1 = base_type::step_ver_base(m_di);
+ cover_type* p0 = base_type::m_covers + base_type::max_half_width + 2;
+ cover_type* p1 = p0;
+
+ *p1++ = (cover_type)base_type::m_ren.cover(s1);
+
+ dx = 1;
+ while((dist = base_type::m_dist[dx] - s1) <= base_type::m_width)
+ {
+ *p1++ = (cover_type)base_type::m_ren.cover(dist);
+ ++dx;
+ }
+
+ dx = 1;
+ while((dist = base_type::m_dist[dx] + s1) <= base_type::m_width)
+ {
+ *--p0 = (cover_type)base_type::m_ren.cover(dist);
+ ++dx;
+ }
+ base_type::m_ren.blend_solid_hspan(base_type::m_x - dx + 1,
+ base_type::m_y,
+ unsigned(p1 - p0),
+ p0);
+ return ++base_type::m_step < base_type::m_count;
+ }
+
+ private:
+ line_interpolator_aa0(const line_interpolator_aa0<Renderer>&);
+ const line_interpolator_aa0<Renderer>&
+ operator = (const line_interpolator_aa0<Renderer>&);
+
+ //---------------------------------------------------------------------
+ distance_interpolator1 m_di;
+ };
+
+
+
+
+
+
+ //====================================================line_interpolator_aa1
+ template<class Renderer> class line_interpolator_aa1 :
+ public line_interpolator_aa_base<Renderer>
+ {
+ public:
+ typedef Renderer renderer_type;
+ typedef typename Renderer::color_type color_type;
+ typedef line_interpolator_aa_base<Renderer> base_type;
+
+ //---------------------------------------------------------------------
+ line_interpolator_aa1(renderer_type& ren, const line_parameters& lp,
+ int sx, int sy) :
+ line_interpolator_aa_base<Renderer>(ren, lp),
+ m_di(lp.x1, lp.y1, lp.x2, lp.y2, sx, sy,
+ lp.x1 & ~line_subpixel_mask, lp.y1 & ~line_subpixel_mask)
+ {
+ int dist1_start;
+ int dist2_start;
+
+ int npix = 1;
+
+ if(lp.vertical)
+ {
+ do
+ {
+ --base_type::m_li;
+ base_type::m_y -= lp.inc;
+ base_type::m_x = (base_type::m_lp->x1 + base_type::m_li.y()) >> line_subpixel_shift;
+
+ if(lp.inc > 0) m_di.dec_y(base_type::m_x - base_type::m_old_x);
+ else m_di.inc_y(base_type::m_x - base_type::m_old_x);
+
+ base_type::m_old_x = base_type::m_x;
+
+ dist1_start = dist2_start = m_di.dist_start();
+
+ int dx = 0;
+ if(dist1_start < 0) ++npix;
+ do
+ {
+ dist1_start += m_di.dy_start();
+ dist2_start -= m_di.dy_start();
+ if(dist1_start < 0) ++npix;
+ if(dist2_start < 0) ++npix;
+ ++dx;
+ }
+ while(base_type::m_dist[dx] <= base_type::m_width);
+ --base_type::m_step;
+ if(npix == 0) break;
+ npix = 0;
+ }
+ while(base_type::m_step >= -base_type::m_max_extent);
+ }
+ else
+ {
+ do
+ {
+ --base_type::m_li;
+ base_type::m_x -= lp.inc;
+ base_type::m_y = (base_type::m_lp->y1 + base_type::m_li.y()) >> line_subpixel_shift;
+
+ if(lp.inc > 0) m_di.dec_x(base_type::m_y - base_type::m_old_y);
+ else m_di.inc_x(base_type::m_y - base_type::m_old_y);
+
+ base_type::m_old_y = base_type::m_y;
+
+ dist1_start = dist2_start = m_di.dist_start();
+
+ int dy = 0;
+ if(dist1_start < 0) ++npix;
+ do
+ {
+ dist1_start -= m_di.dx_start();
+ dist2_start += m_di.dx_start();
+ if(dist1_start < 0) ++npix;
+ if(dist2_start < 0) ++npix;
+ ++dy;
+ }
+ while(base_type::m_dist[dy] <= base_type::m_width);
+ --base_type::m_step;
+ if(npix == 0) break;
+ npix = 0;
+ }
+ while(base_type::m_step >= -base_type::m_max_extent);
+ }
+ base_type::m_li.adjust_forward();
+ }
+
+ //---------------------------------------------------------------------
+ bool step_hor()
+ {
+ int dist_start;
+ int dist;
+ int dy;
+ int s1 = base_type::step_hor_base(m_di);
+
+ dist_start = m_di.dist_start();
+ cover_type* p0 = base_type::m_covers + base_type::max_half_width + 2;
+ cover_type* p1 = p0;
+
+ *p1 = 0;
+ if(dist_start <= 0)
+ {
+ *p1 = (cover_type)base_type::m_ren.cover(s1);
+ }
+ ++p1;
+
+ dy = 1;
+ while((dist = base_type::m_dist[dy] - s1) <= base_type::m_width)
+ {
+ dist_start -= m_di.dx_start();
+ *p1 = 0;
+ if(dist_start <= 0)
+ {
+ *p1 = (cover_type)base_type::m_ren.cover(dist);
+ }
+ ++p1;
+ ++dy;
+ }
+
+ dy = 1;
+ dist_start = m_di.dist_start();
+ while((dist = base_type::m_dist[dy] + s1) <= base_type::m_width)
+ {
+ dist_start += m_di.dx_start();
+ *--p0 = 0;
+ if(dist_start <= 0)
+ {
+ *p0 = (cover_type)base_type::m_ren.cover(dist);
+ }
+ ++dy;
+ }
+
+ base_type::m_ren.blend_solid_vspan(base_type::m_x,
+ base_type::m_y - dy + 1,
+ unsigned(p1 - p0),
+ p0);
+ return ++base_type::m_step < base_type::m_count;
+ }
+
+ //---------------------------------------------------------------------
+ bool step_ver()
+ {
+ int dist_start;
+ int dist;
+ int dx;
+ int s1 = base_type::step_ver_base(m_di);
+ cover_type* p0 = base_type::m_covers + base_type::max_half_width + 2;
+ cover_type* p1 = p0;
+
+ dist_start = m_di.dist_start();
+
+ *p1 = 0;
+ if(dist_start <= 0)
+ {
+ *p1 = (cover_type)base_type::m_ren.cover(s1);
+ }
+ ++p1;
+
+ dx = 1;
+ while((dist = base_type::m_dist[dx] - s1) <= base_type::m_width)
+ {
+ dist_start += m_di.dy_start();
+ *p1 = 0;
+ if(dist_start <= 0)
+ {
+ *p1 = (cover_type)base_type::m_ren.cover(dist);
+ }
+ ++p1;
+ ++dx;
+ }
+
+ dx = 1;
+ dist_start = m_di.dist_start();
+ while((dist = base_type::m_dist[dx] + s1) <= base_type::m_width)
+ {
+ dist_start -= m_di.dy_start();
+ *--p0 = 0;
+ if(dist_start <= 0)
+ {
+ *p0 = (cover_type)base_type::m_ren.cover(dist);
+ }
+ ++dx;
+ }
+ base_type::m_ren.blend_solid_hspan(base_type::m_x - dx + 1,
+ base_type::m_y,
+ unsigned(p1 - p0),
+ p0);
+ return ++base_type::m_step < base_type::m_count;
+ }
+
+ private:
+ line_interpolator_aa1(const line_interpolator_aa1<Renderer>&);
+ const line_interpolator_aa1<Renderer>&
+ operator = (const line_interpolator_aa1<Renderer>&);
+
+ //---------------------------------------------------------------------
+ distance_interpolator2 m_di;
+ };
+
+
+
+
+
+
+
+
+
+
+
+
+ //====================================================line_interpolator_aa2
+ template<class Renderer> class line_interpolator_aa2 :
+ public line_interpolator_aa_base<Renderer>
+ {
+ public:
+ typedef Renderer renderer_type;
+ typedef typename Renderer::color_type color_type;
+ typedef line_interpolator_aa_base<Renderer> base_type;
+
+ //---------------------------------------------------------------------
+ line_interpolator_aa2(renderer_type& ren, const line_parameters& lp,
+ int ex, int ey) :
+ line_interpolator_aa_base<Renderer>(ren, lp),
+ m_di(lp.x1, lp.y1, lp.x2, lp.y2, ex, ey,
+ lp.x1 & ~line_subpixel_mask, lp.y1 & ~line_subpixel_mask,
+ 0)
+ {
+ base_type::m_li.adjust_forward();
+ base_type::m_step -= base_type::m_max_extent;
+ }
+
+ //---------------------------------------------------------------------
+ bool step_hor()
+ {
+ int dist_end;
+ int dist;
+ int dy;
+ int s1 = base_type::step_hor_base(m_di);
+ cover_type* p0 = base_type::m_covers + base_type::max_half_width + 2;
+ cover_type* p1 = p0;
+
+ dist_end = m_di.dist_end();
+
+ int npix = 0;
+ *p1 = 0;
+ if(dist_end > 0)
+ {
+ *p1 = (cover_type)base_type::m_ren.cover(s1);
+ ++npix;
+ }
+ ++p1;
+
+ dy = 1;
+ while((dist = base_type::m_dist[dy] - s1) <= base_type::m_width)
+ {
+ dist_end -= m_di.dx_end();
+ *p1 = 0;
+ if(dist_end > 0)
+ {
+ *p1 = (cover_type)base_type::m_ren.cover(dist);
+ ++npix;
+ }
+ ++p1;
+ ++dy;
+ }
+
+ dy = 1;
+ dist_end = m_di.dist_end();
+ while((dist = base_type::m_dist[dy] + s1) <= base_type::m_width)
+ {
+ dist_end += m_di.dx_end();
+ *--p0 = 0;
+ if(dist_end > 0)
+ {
+ *p0 = (cover_type)base_type::m_ren.cover(dist);
+ ++npix;
+ }
+ ++dy;
+ }
+ base_type::m_ren.blend_solid_vspan(base_type::m_x,
+ base_type::m_y - dy + 1,
+ unsigned(p1 - p0),
+ p0);
+ return npix && ++base_type::m_step < base_type::m_count;
+ }
+
+ //---------------------------------------------------------------------
+ bool step_ver()
+ {
+ int dist_end;
+ int dist;
+ int dx;
+ int s1 = base_type::step_ver_base(m_di);
+ cover_type* p0 = base_type::m_covers + base_type::max_half_width + 2;
+ cover_type* p1 = p0;
+
+ dist_end = m_di.dist_end();
+
+ int npix = 0;
+ *p1 = 0;
+ if(dist_end > 0)
+ {
+ *p1 = (cover_type)base_type::m_ren.cover(s1);
+ ++npix;
+ }
+ ++p1;
+
+ dx = 1;
+ while((dist = base_type::m_dist[dx] - s1) <= base_type::m_width)
+ {
+ dist_end += m_di.dy_end();
+ *p1 = 0;
+ if(dist_end > 0)
+ {
+ *p1 = (cover_type)base_type::m_ren.cover(dist);
+ ++npix;
+ }
+ ++p1;
+ ++dx;
+ }
+
+ dx = 1;
+ dist_end = m_di.dist_end();
+ while((dist = base_type::m_dist[dx] + s1) <= base_type::m_width)
+ {
+ dist_end -= m_di.dy_end();
+ *--p0 = 0;
+ if(dist_end > 0)
+ {
+ *p0 = (cover_type)base_type::m_ren.cover(dist);
+ ++npix;
+ }
+ ++dx;
+ }
+ base_type::m_ren.blend_solid_hspan(base_type::m_x - dx + 1,
+ base_type::m_y,
+ unsigned(p1 - p0),
+ p0);
+ return npix && ++base_type::m_step < base_type::m_count;
+ }
+
+ private:
+ line_interpolator_aa2(const line_interpolator_aa2<Renderer>&);
+ const line_interpolator_aa2<Renderer>&
+ operator = (const line_interpolator_aa2<Renderer>&);
+
+ //---------------------------------------------------------------------
+ distance_interpolator2 m_di;
+ };
+
+
+
+
+
+
+
+
+
+
+ //====================================================line_interpolator_aa3
+ template<class Renderer> class line_interpolator_aa3 :
+ public line_interpolator_aa_base<Renderer>
+ {
+ public:
+ typedef Renderer renderer_type;
+ typedef typename Renderer::color_type color_type;
+ typedef line_interpolator_aa_base<Renderer> base_type;
+
+ //---------------------------------------------------------------------
+ line_interpolator_aa3(renderer_type& ren, const line_parameters& lp,
+ int sx, int sy, int ex, int ey) :
+ line_interpolator_aa_base<Renderer>(ren, lp),
+ m_di(lp.x1, lp.y1, lp.x2, lp.y2, sx, sy, ex, ey,
+ lp.x1 & ~line_subpixel_mask, lp.y1 & ~line_subpixel_mask)
+ {
+ int dist1_start;
+ int dist2_start;
+ int npix = 1;
+ if(lp.vertical)
+ {
+ do
+ {
+ --base_type::m_li;
+ base_type::m_y -= lp.inc;
+ base_type::m_x = (base_type::m_lp->x1 + base_type::m_li.y()) >> line_subpixel_shift;
+
+ if(lp.inc > 0) m_di.dec_y(base_type::m_x - base_type::m_old_x);
+ else m_di.inc_y(base_type::m_x - base_type::m_old_x);
+
+ base_type::m_old_x = base_type::m_x;
+
+ dist1_start = dist2_start = m_di.dist_start();
+
+ int dx = 0;
+ if(dist1_start < 0) ++npix;
+ do
+ {
+ dist1_start += m_di.dy_start();
+ dist2_start -= m_di.dy_start();
+ if(dist1_start < 0) ++npix;
+ if(dist2_start < 0) ++npix;
+ ++dx;
+ }
+ while(base_type::m_dist[dx] <= base_type::m_width);
+ if(npix == 0) break;
+ npix = 0;
+ }
+ while(--base_type::m_step >= -base_type::m_max_extent);
+ }
+ else
+ {
+ do
+ {
+ --base_type::m_li;
+ base_type::m_x -= lp.inc;
+ base_type::m_y = (base_type::m_lp->y1 + base_type::m_li.y()) >> line_subpixel_shift;
+
+ if(lp.inc > 0) m_di.dec_x(base_type::m_y - base_type::m_old_y);
+ else m_di.inc_x(base_type::m_y - base_type::m_old_y);
+
+ base_type::m_old_y = base_type::m_y;
+
+ dist1_start = dist2_start = m_di.dist_start();
+
+ int dy = 0;
+ if(dist1_start < 0) ++npix;
+ do
+ {
+ dist1_start -= m_di.dx_start();
+ dist2_start += m_di.dx_start();
+ if(dist1_start < 0) ++npix;
+ if(dist2_start < 0) ++npix;
+ ++dy;
+ }
+ while(base_type::m_dist[dy] <= base_type::m_width);
+ if(npix == 0) break;
+ npix = 0;
+ }
+ while(--base_type::m_step >= -base_type::m_max_extent);
+ }
+ base_type::m_li.adjust_forward();
+ base_type::m_step -= base_type::m_max_extent;
+ }
+
+
+ //---------------------------------------------------------------------
+ bool step_hor()
+ {
+ int dist_start;
+ int dist_end;
+ int dist;
+ int dy;
+ int s1 = base_type::step_hor_base(m_di);
+ cover_type* p0 = base_type::m_covers + base_type::max_half_width + 2;
+ cover_type* p1 = p0;
+
+ dist_start = m_di.dist_start();
+ dist_end = m_di.dist_end();
+
+ int npix = 0;
+ *p1 = 0;
+ if(dist_end > 0)
+ {
+ if(dist_start <= 0)
+ {
+ *p1 = (cover_type)base_type::m_ren.cover(s1);
+ }
+ ++npix;
+ }
+ ++p1;
+
+ dy = 1;
+ while((dist = base_type::m_dist[dy] - s1) <= base_type::m_width)
+ {
+ dist_start -= m_di.dx_start();
+ dist_end -= m_di.dx_end();
+ *p1 = 0;
+ if(dist_end > 0 && dist_start <= 0)
+ {
+ *p1 = (cover_type)base_type::m_ren.cover(dist);
+ ++npix;
+ }
+ ++p1;
+ ++dy;
+ }
+
+ dy = 1;
+ dist_start = m_di.dist_start();
+ dist_end = m_di.dist_end();
+ while((dist = base_type::m_dist[dy] + s1) <= base_type::m_width)
+ {
+ dist_start += m_di.dx_start();
+ dist_end += m_di.dx_end();
+ *--p0 = 0;
+ if(dist_end > 0 && dist_start <= 0)
+ {
+ *p0 = (cover_type)base_type::m_ren.cover(dist);
+ ++npix;
+ }
+ ++dy;
+ }
+ base_type::m_ren.blend_solid_vspan(base_type::m_x,
+ base_type::m_y - dy + 1,
+ unsigned(p1 - p0),
+ p0);
+ return npix && ++base_type::m_step < base_type::m_count;
+ }
+
+ //---------------------------------------------------------------------
+ bool step_ver()
+ {
+ int dist_start;
+ int dist_end;
+ int dist;
+ int dx;
+ int s1 = base_type::step_ver_base(m_di);
+ cover_type* p0 = base_type::m_covers + base_type::max_half_width + 2;
+ cover_type* p1 = p0;
+
+ dist_start = m_di.dist_start();
+ dist_end = m_di.dist_end();
+
+ int npix = 0;
+ *p1 = 0;
+ if(dist_end > 0)
+ {
+ if(dist_start <= 0)
+ {
+ *p1 = (cover_type)base_type::m_ren.cover(s1);
+ }
+ ++npix;
+ }
+ ++p1;
+
+ dx = 1;
+ while((dist = base_type::m_dist[dx] - s1) <= base_type::m_width)
+ {
+ dist_start += m_di.dy_start();
+ dist_end += m_di.dy_end();
+ *p1 = 0;
+ if(dist_end > 0 && dist_start <= 0)
+ {
+ *p1 = (cover_type)base_type::m_ren.cover(dist);
+ ++npix;
+ }
+ ++p1;
+ ++dx;
+ }
+
+ dx = 1;
+ dist_start = m_di.dist_start();
+ dist_end = m_di.dist_end();
+ while((dist = base_type::m_dist[dx] + s1) <= base_type::m_width)
+ {
+ dist_start -= m_di.dy_start();
+ dist_end -= m_di.dy_end();
+ *--p0 = 0;
+ if(dist_end > 0 && dist_start <= 0)
+ {
+ *p0 = (cover_type)base_type::m_ren.cover(dist);
+ ++npix;
+ }
+ ++dx;
+ }
+ base_type::m_ren.blend_solid_hspan(base_type::m_x - dx + 1,
+ base_type::m_y,
+ unsigned(p1 - p0),
+ p0);
+ return npix && ++base_type::m_step < base_type::m_count;
+ }
+
+ private:
+ line_interpolator_aa3(const line_interpolator_aa3<Renderer>&);
+ const line_interpolator_aa3<Renderer>&
+ operator = (const line_interpolator_aa3<Renderer>&);
+
+ //---------------------------------------------------------------------
+ distance_interpolator3 m_di;
+ };
+
+
+
+
+ //==========================================================line_profile_aa
+ //
+ // See Implementation agg_line_profile_aa.cpp
+ //
+ class line_profile_aa
+ {
+ public:
+ //---------------------------------------------------------------------
+ typedef int8u value_type;
+ enum
+ {
+ subpixel_shift = line_subpixel_shift,
+ subpixel_size = 1 << subpixel_shift,
+ subpixel_mask = subpixel_size - 1
+ };
+
+ enum
+ {
+ aa_shift = 8,
+ aa_num = 1 << aa_shift,
+ aa_mask = aa_num - 1
+ };
+
+ //---------------------------------------------------------------------
+ ~line_profile_aa() { delete [] m_profile; }
+
+ //---------------------------------------------------------------------
+ line_profile_aa() :
+ m_size(0),
+ m_profile(0),
+ m_subpixel_width(0),
+ m_min_width(1.0),
+ m_smoother_width(1.0)
+ {
+ int i;
+ for(i = 0; i < aa_num; i++) m_gamma[i] = (value_type)i;
+ }
+
+ //---------------------------------------------------------------------
+ template<class GammaF>
+ line_profile_aa(double w, const GammaF& gamma_function) :
+ m_size(0),
+ m_profile(0),
+ m_subpixel_width(0),
+ m_min_width(1.0),
+ m_smoother_width(1.0)
+ {
+ gamma(gamma_function);
+ width(w);
+ }
+
+ //---------------------------------------------------------------------
+ void min_width(double w) { m_min_width = w; }
+ void smoother_width(double w) { m_smoother_width = w; }
+
+ //---------------------------------------------------------------------
+ template<class GammaF> void gamma(const GammaF& gamma_function)
+ {
+ int i;
+ for(i = 0; i < aa_num; i++)
+ {
+ m_gamma[i] = value_type(
+ floor(
+ gamma_function(double(i) / aa_mask) * aa_mask + 0.5));
+ }
+ }
+
+ void width(double w);
+
+ unsigned profile_size() const { return m_size; }
+ int subpixel_width() const { return m_subpixel_width; }
+
+ //---------------------------------------------------------------------
+ double min_width() const { return m_min_width; }
+ double smoother_width() const { return m_smoother_width; }
+
+ //---------------------------------------------------------------------
+ value_type value(int dist) const
+ {
+ return m_profile[dist + subpixel_size*2];
+ }
+
+ private:
+ line_profile_aa(const line_profile_aa&);
+ const line_profile_aa& operator = (const line_profile_aa&);
+
+ value_type* profile(double w);
+ void set(double center_width, double smoother_width);
+
+ //---------------------------------------------------------------------
+ unsigned m_size;
+ value_type* m_profile;
+ value_type m_gamma[aa_num];
+ int m_subpixel_width;
+ double m_min_width;
+ double m_smoother_width;
+ };
+
+
+ //======================================================renderer_outline_aa
+ template<class BaseRenderer> class renderer_outline_aa
+ {
+ public:
+ //---------------------------------------------------------------------
+ typedef BaseRenderer base_ren_type;
+ typedef renderer_outline_aa<base_ren_type> self_type;
+ typedef typename base_ren_type::color_type color_type;
+
+ //---------------------------------------------------------------------
+ renderer_outline_aa(base_ren_type& ren, const line_profile_aa& prof) :
+ m_ren(&ren),
+ m_profile(&prof)
+ {
+ }
+
+ //---------------------------------------------------------------------
+ void color(const color_type& c) { m_color = c; }
+ const color_type& color() const { return m_color; }
+
+ //---------------------------------------------------------------------
+ void profile(const line_profile_aa& prof) { m_profile = &prof; }
+ const line_profile_aa& profile() const { return *m_profile; }
+ line_profile_aa& profile() { return const_cast<line_profile_aa&>(*m_profile); }
+
+ //---------------------------------------------------------------------
+ int subpixel_width() const { return m_profile->subpixel_width(); }
+
+ //---------------------------------------------------------------------
+ int cover(int d) const
+ {
+ return m_profile->value(d);
+ }
+
+ //-------------------------------------------------------------------------
+ void blend_solid_hspan(int x, int y, unsigned len, const cover_type* covers)
+ {
+ m_ren->blend_solid_hspan(x, y, len, m_color, covers);
+ }
+
+ //-------------------------------------------------------------------------
+ void blend_solid_vspan(int x, int y, unsigned len, const cover_type* covers)
+ {
+ m_ren->blend_solid_vspan(x, y, len, m_color, covers);
+ }
+
+ //-------------------------------------------------------------------------
+ static bool accurate_join_only() { return false; }
+
+ //-------------------------------------------------------------------------
+ template<class Cmp>
+ void semidot_hline(Cmp cmp,
+ int xc1, int yc1, int xc2, int yc2,
+ int x1, int y1, int x2)
+ {
+ cover_type covers[line_interpolator_aa_base<self_type>::max_half_width * 2 + 4];
+ cover_type* p0 = covers;
+ cover_type* p1 = covers;
+ int x = x1 << line_subpixel_shift;
+ int y = y1 << line_subpixel_shift;
+ int w = subpixel_width();
+ distance_interpolator0 di(xc1, yc1, xc2, yc2, x, y);
+ x += line_subpixel_size/2;
+ y += line_subpixel_size/2;
+
+ int x0 = x1;
+ int dx = x - xc1;
+ int dy = y - yc1;
+ do
+ {
+ int d = int(fast_sqrt(dx*dx + dy*dy));
+ *p1 = 0;
+ if(cmp(di.dist()) && d <= w)
+ {
+ *p1 = (cover_type)cover(d);
+ }
+ ++p1;
+ dx += line_subpixel_size;
+ di.inc_x();
+ }
+ while(++x1 <= x2);
+ m_ren->blend_solid_hspan(x0, y1,
+ unsigned(p1 - p0),
+ color(),
+ p0);
+ }
+
+ //-------------------------------------------------------------------------
+ template<class Cmp>
+ void semidot(Cmp cmp, int xc1, int yc1, int xc2, int yc2)
+ {
+ int r = ((subpixel_width() + line_subpixel_mask) >> line_subpixel_shift);
+ if(r < 1) r = 1;
+ ellipse_bresenham_interpolator ei(r, r);
+ int dx = 0;
+ int dy = -r;
+ int dy0 = dy;
+ int dx0 = dx;
+ int x = xc1 >> line_subpixel_shift;
+ int y = yc1 >> line_subpixel_shift;
+
+ do
+ {
+ dx += ei.dx();
+ dy += ei.dy();
+
+ if(dy != dy0)
+ {
+ semidot_hline(cmp, xc1, yc1, xc2, yc2, x-dx0, y+dy0, x+dx0);
+ semidot_hline(cmp, xc1, yc1, xc2, yc2, x-dx0, y-dy0, x+dx0);
+ }
+ dx0 = dx;
+ dy0 = dy;
+ ++ei;
+ }
+ while(dy < 0);
+ semidot_hline(cmp, xc1, yc1, xc2, yc2, x-dx0, y+dy0, x+dx0);
+ }
+
+ //-------------------------------------------------------------------------
+ void line0(const line_parameters& lp)
+ {
+ line_interpolator_aa0<self_type> li(*this, lp);
+ if(li.count())
+ {
+ if(li.vertical())
+ {
+ while(li.step_ver()) ;
+ }
+ else
+ {
+ while(li.step_hor()) ;
+ }
+ }
+ }
+
+ //-------------------------------------------------------------------------
+ void line1(const line_parameters& lp, int sx, int sy)
+ {
+ fix_degenerate_bisectrix_start(lp, &sx, &sy);
+ line_interpolator_aa1<self_type> li(*this, lp, sx, sy);
+ if(li.vertical())
+ {
+ while(li.step_ver()) ;
+ }
+ else
+ {
+ while(li.step_hor()) ;
+ }
+ }
+
+ //-------------------------------------------------------------------------
+ void line2(const line_parameters& lp, int ex, int ey)
+ {
+ fix_degenerate_bisectrix_end(lp, &ex, &ey);
+ line_interpolator_aa2<self_type> li(*this, lp, ex, ey);
+ if(li.vertical())
+ {
+ while(li.step_ver()) ;
+ }
+ else
+ {
+ while(li.step_hor()) ;
+ }
+ }
+
+ //-------------------------------------------------------------------------
+ void line3(const line_parameters& lp,
+ int sx, int sy, int ex, int ey)
+ {
+ fix_degenerate_bisectrix_start(lp, &sx, &sy);
+ fix_degenerate_bisectrix_end(lp, &ex, &ey);
+ line_interpolator_aa3<self_type> li(*this, lp, sx, sy, ex, ey);
+ if(li.vertical())
+ {
+ while(li.step_ver()) ;
+ }
+ else
+ {
+ while(li.step_hor()) ;
+ }
+ }
+
+ private:
+ base_ren_type* m_ren;
+ const line_profile_aa* m_profile;
+ color_type m_color;
+ };
+
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_renderer_outline_image.h b/agg/inc/agg_renderer_outline_image.h
new file mode 100755
index 000000000000..d5cd3992448c
--- /dev/null
+++ b/agg/inc/agg_renderer_outline_image.h
@@ -0,0 +1,924 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+#ifndef AGG_RENDERER_OUTLINE_IMAGE_INCLUDED
+#define AGG_RENDERER_OUTLINE_IMAGE_INCLUDED
+
+#include <math.h>
+#include "agg_line_aa_basics.h"
+#include "agg_dda_line.h"
+#include "agg_rendering_buffer.h"
+
+
+namespace agg
+{
+ //========================================================line_image_scale
+ template<class Source> class line_image_scale
+ {
+ public:
+ typedef typename Source::color_type color_type;
+
+ line_image_scale(const Source& src, double height) :
+ m_source(src),
+ m_height(height),
+ m_scale(src.height() / height)
+ {
+ }
+
+ double width() const { return m_source.width(); }
+ double height() const { return m_height; }
+
+ color_type pixel(int x, int y) const
+ {
+ double src_y = (y + 0.5) * m_scale - 0.5;
+ int h = int(m_source.height()) - 1;
+ int y1 = int(floor(src_y));
+ int y2 = y1 + 1;
+ color_type pix1 = (y1 < 0) ? color_type::no_color() : m_source.pixel(x, y1);
+ color_type pix2 = (y2 > h) ? color_type::no_color() : m_source.pixel(x, y2);
+ return pix1.gradient(pix2, src_y - y1);
+ }
+
+ private:
+ line_image_scale(const line_image_scale<Source>&);
+ const line_image_scale<Source>& operator = (const line_image_scale<Source>&);
+
+ const Source& m_source;
+ double m_height;
+ double m_scale;
+ };
+
+
+
+ //======================================================line_image_pattern
+ template<class Filter> class line_image_pattern
+ {
+ public:
+ typedef Filter filter_type;
+ typedef typename filter_type::color_type color_type;
+
+ //--------------------------------------------------------------------
+ ~line_image_pattern()
+ {
+ delete [] m_data;
+ }
+
+ //--------------------------------------------------------------------
+ line_image_pattern(const Filter& filter) :
+ m_filter(&filter),
+ m_dilation(filter.dilation() + 1),
+ m_dilation_hr(m_dilation << line_subpixel_shift),
+ m_data(0),
+ m_width(0),
+ m_height(0),
+ m_width_hr(0),
+ m_half_height_hr(0),
+ m_offset_y_hr(0)
+ {
+ }
+
+ // Create
+ //--------------------------------------------------------------------
+ template<class Source>
+ line_image_pattern(const Filter& filter, const Source& src) :
+ m_filter(&filter),
+ m_dilation(filter.dilation() + 1),
+ m_dilation_hr(m_dilation << line_subpixel_shift),
+ m_data(0),
+ m_width(0),
+ m_height(0),
+ m_width_hr(0),
+ m_half_height_hr(0),
+ m_offset_y_hr(0)
+ {
+ create(src);
+ }
+
+ // Create
+ //--------------------------------------------------------------------
+ template<class Source> void create(const Source& src)
+ {
+ m_height = unsigned(ceil((double)src.height()));
+ m_width = unsigned(ceil((double)src.width()));
+ m_width_hr = int(src.width() * line_subpixel_size);
+ m_half_height_hr = int(src.height() * line_subpixel_size/2);
+ m_offset_y_hr = m_dilation_hr + m_half_height_hr - line_subpixel_size/2;
+ m_half_height_hr += line_subpixel_size/2;
+
+ delete [] m_data;
+ m_data = new color_type [(m_width + m_dilation * 2) * (m_height + m_dilation * 2)];
+
+ m_buf.attach(m_data, m_width + m_dilation * 2,
+ m_height + m_dilation * 2,
+ m_width + m_dilation * 2);
+ unsigned x, y;
+ color_type* d1;
+ color_type* d2;
+ for(y = 0; y < m_height; y++)
+ {
+ d1 = m_buf.row(y + m_dilation) + m_dilation;
+ for(x = 0; x < m_width; x++)
+ {
+ *d1++ = src.pixel(x, y);
+ }
+ }
+
+ const color_type* s1;
+ const color_type* s2;
+ for(y = 0; y < m_dilation; y++)
+ {
+ //s1 = m_buf.row(m_height + m_dilation - 1) + m_dilation;
+ //s2 = m_buf.row(m_dilation) + m_dilation;
+ d1 = m_buf.row(m_dilation + m_height + y) + m_dilation;
+ d2 = m_buf.row(m_dilation - y - 1) + m_dilation;
+ for(x = 0; x < m_width; x++)
+ {
+ //*d1++ = color_type(*s1++, 0);
+ //*d2++ = color_type(*s2++, 0);
+ *d1++ = color_type::no_color();
+ *d2++ = color_type::no_color();
+ }
+ }
+
+ unsigned h = m_height + m_dilation * 2;
+ for(y = 0; y < h; y++)
+ {
+ s1 = m_buf.row(y) + m_dilation;
+ s2 = m_buf.row(y) + m_dilation + m_width;
+ d1 = m_buf.row(y) + m_dilation + m_width;
+ d2 = m_buf.row(y) + m_dilation;
+
+ for(x = 0; x < m_dilation; x++)
+ {
+ *d1++ = *s1++;
+ *--d2 = *--s2;
+ }
+ }
+ }
+
+ //--------------------------------------------------------------------
+ int pattern_width() const { return m_width_hr; }
+ int line_width() const { return m_half_height_hr; }
+
+ //--------------------------------------------------------------------
+ void pixel(color_type* p, int x, int y) const
+ {
+ m_filter->pixel_high_res(m_buf.rows(),
+ p,
+ x % m_width_hr + m_dilation_hr,
+ y + m_offset_y_hr);
+ }
+
+ //--------------------------------------------------------------------
+ const filter_type& filter() const { return *m_filter; }
+
+ private:
+ line_image_pattern(const line_image_pattern<filter_type>&);
+ const line_image_pattern<filter_type>&
+ operator = (const line_image_pattern<filter_type>&);
+
+ protected:
+ row_ptr_cache<color_type> m_buf;
+ const filter_type* m_filter;
+ unsigned m_dilation;
+ int m_dilation_hr;
+ color_type* m_data;
+ unsigned m_width;
+ unsigned m_height;
+ int m_width_hr;
+ int m_half_height_hr;
+ int m_offset_y_hr;
+ };
+
+
+
+
+
+
+ //=================================================line_image_pattern_pow2
+ template<class Filter> class line_image_pattern_pow2 :
+ public line_image_pattern<Filter>
+ {
+ public:
+ typedef Filter filter_type;
+ typedef typename filter_type::color_type color_type;
+ typedef line_image_pattern<Filter> base_type;
+
+ //--------------------------------------------------------------------
+ line_image_pattern_pow2(const Filter& filter) :
+ line_image_pattern<Filter>(filter), m_mask(line_subpixel_mask) {}
+
+ //--------------------------------------------------------------------
+ template<class Source>
+ line_image_pattern_pow2(const Filter& filter, const Source& src) :
+ line_image_pattern<Filter>(filter), m_mask(line_subpixel_mask)
+ {
+ create(src);
+ }
+
+ //--------------------------------------------------------------------
+ template<class Source> void create(const Source& src)
+ {
+ line_image_pattern<Filter>::create(src);
+ m_mask = 1;
+ while(m_mask < base_type::m_width)
+ {
+ m_mask <<= 1;
+ m_mask |= 1;
+ }
+ m_mask <<= line_subpixel_shift - 1;
+ m_mask |= line_subpixel_mask;
+ base_type::m_width_hr = m_mask + 1;
+ }
+
+ //--------------------------------------------------------------------
+ void pixel(color_type* p, int x, int y) const
+ {
+ base_type::m_filter->pixel_high_res(
+ base_type::m_buf.rows(),
+ p,
+ (x & m_mask) + base_type::m_dilation_hr,
+ y + base_type::m_offset_y_hr);
+ }
+ private:
+ unsigned m_mask;
+ };
+
+
+
+
+
+
+
+ //===================================================distance_interpolator4
+ class distance_interpolator4
+ {
+ public:
+ //---------------------------------------------------------------------
+ distance_interpolator4() {}
+ distance_interpolator4(int x1, int y1, int x2, int y2,
+ int sx, int sy, int ex, int ey,
+ int len, double scale, int x, int y) :
+ m_dx(x2 - x1),
+ m_dy(y2 - y1),
+ m_dx_start(line_mr(sx) - line_mr(x1)),
+ m_dy_start(line_mr(sy) - line_mr(y1)),
+ m_dx_end(line_mr(ex) - line_mr(x2)),
+ m_dy_end(line_mr(ey) - line_mr(y2)),
+
+ m_dist(int(double(x + line_subpixel_size/2 - x2) * double(m_dy) -
+ double(y + line_subpixel_size/2 - y2) * double(m_dx))),
+
+ m_dist_start((line_mr(x + line_subpixel_size/2) - line_mr(sx)) * m_dy_start -
+ (line_mr(y + line_subpixel_size/2) - line_mr(sy)) * m_dx_start),
+
+ m_dist_end((line_mr(x + line_subpixel_size/2) - line_mr(ex)) * m_dy_end -
+ (line_mr(y + line_subpixel_size/2) - line_mr(ey)) * m_dx_end),
+ m_len(int(len / scale))
+ {
+ double d = len * scale;
+ int dx = int(((x2 - x1) << line_subpixel_shift) / d);
+ int dy = int(((y2 - y1) << line_subpixel_shift) / d);
+ m_dx_pict = -dy;
+ m_dy_pict = dx;
+ m_dist_pict = ((x + line_subpixel_size/2 - (x1 - dy)) * m_dy_pict -
+ (y + line_subpixel_size/2 - (y1 + dx)) * m_dx_pict) >>
+ line_subpixel_shift;
+
+ m_dx <<= line_subpixel_shift;
+ m_dy <<= line_subpixel_shift;
+ m_dx_start <<= line_mr_subpixel_shift;
+ m_dy_start <<= line_mr_subpixel_shift;
+ m_dx_end <<= line_mr_subpixel_shift;
+ m_dy_end <<= line_mr_subpixel_shift;
+ }
+
+ //---------------------------------------------------------------------
+ void inc_x()
+ {
+ m_dist += m_dy;
+ m_dist_start += m_dy_start;
+ m_dist_pict += m_dy_pict;
+ m_dist_end += m_dy_end;
+ }
+
+ //---------------------------------------------------------------------
+ void dec_x()
+ {
+ m_dist -= m_dy;
+ m_dist_start -= m_dy_start;
+ m_dist_pict -= m_dy_pict;
+ m_dist_end -= m_dy_end;
+ }
+
+ //---------------------------------------------------------------------
+ void inc_y()
+ {
+ m_dist -= m_dx;
+ m_dist_start -= m_dx_start;
+ m_dist_pict -= m_dx_pict;
+ m_dist_end -= m_dx_end;
+ }
+
+ //---------------------------------------------------------------------
+ void dec_y()
+ {
+ m_dist += m_dx;
+ m_dist_start += m_dx_start;
+ m_dist_pict += m_dx_pict;
+ m_dist_end += m_dx_end;
+ }
+
+ //---------------------------------------------------------------------
+ void inc_x(int dy)
+ {
+ m_dist += m_dy;
+ m_dist_start += m_dy_start;
+ m_dist_pict += m_dy_pict;
+ m_dist_end += m_dy_end;
+ if(dy > 0)
+ {
+ m_dist -= m_dx;
+ m_dist_start -= m_dx_start;
+ m_dist_pict -= m_dx_pict;
+ m_dist_end -= m_dx_end;
+ }
+ if(dy < 0)
+ {
+ m_dist += m_dx;
+ m_dist_start += m_dx_start;
+ m_dist_pict += m_dx_pict;
+ m_dist_end += m_dx_end;
+ }
+ }
+
+ //---------------------------------------------------------------------
+ void dec_x(int dy)
+ {
+ m_dist -= m_dy;
+ m_dist_start -= m_dy_start;
+ m_dist_pict -= m_dy_pict;
+ m_dist_end -= m_dy_end;
+ if(dy > 0)
+ {
+ m_dist -= m_dx;
+ m_dist_start -= m_dx_start;
+ m_dist_pict -= m_dx_pict;
+ m_dist_end -= m_dx_end;
+ }
+ if(dy < 0)
+ {
+ m_dist += m_dx;
+ m_dist_start += m_dx_start;
+ m_dist_pict += m_dx_pict;
+ m_dist_end += m_dx_end;
+ }
+ }
+
+ //---------------------------------------------------------------------
+ void inc_y(int dx)
+ {
+ m_dist -= m_dx;
+ m_dist_start -= m_dx_start;
+ m_dist_pict -= m_dx_pict;
+ m_dist_end -= m_dx_end;
+ if(dx > 0)
+ {
+ m_dist += m_dy;
+ m_dist_start += m_dy_start;
+ m_dist_pict += m_dy_pict;
+ m_dist_end += m_dy_end;
+ }
+ if(dx < 0)
+ {
+ m_dist -= m_dy;
+ m_dist_start -= m_dy_start;
+ m_dist_pict -= m_dy_pict;
+ m_dist_end -= m_dy_end;
+ }
+ }
+
+ //---------------------------------------------------------------------
+ void dec_y(int dx)
+ {
+ m_dist += m_dx;
+ m_dist_start += m_dx_start;
+ m_dist_pict += m_dx_pict;
+ m_dist_end += m_dx_end;
+ if(dx > 0)
+ {
+ m_dist += m_dy;
+ m_dist_start += m_dy_start;
+ m_dist_pict += m_dy_pict;
+ m_dist_end += m_dy_end;
+ }
+ if(dx < 0)
+ {
+ m_dist -= m_dy;
+ m_dist_start -= m_dy_start;
+ m_dist_pict -= m_dy_pict;
+ m_dist_end -= m_dy_end;
+ }
+ }
+
+ //---------------------------------------------------------------------
+ int dist() const { return m_dist; }
+ int dist_start() const { return m_dist_start; }
+ int dist_pict() const { return m_dist_pict; }
+ int dist_end() const { return m_dist_end; }
+
+ //---------------------------------------------------------------------
+ int dx() const { return m_dx; }
+ int dy() const { return m_dy; }
+ int dx_start() const { return m_dx_start; }
+ int dy_start() const { return m_dy_start; }
+ int dx_pict() const { return m_dx_pict; }
+ int dy_pict() const { return m_dy_pict; }
+ int dx_end() const { return m_dx_end; }
+ int dy_end() const { return m_dy_end; }
+ int len() const { return m_len; }
+
+ private:
+ //---------------------------------------------------------------------
+ int m_dx;
+ int m_dy;
+ int m_dx_start;
+ int m_dy_start;
+ int m_dx_pict;
+ int m_dy_pict;
+ int m_dx_end;
+ int m_dy_end;
+
+ int m_dist;
+ int m_dist_start;
+ int m_dist_pict;
+ int m_dist_end;
+ int m_len;
+ };
+
+
+
+
+
+ //==================================================line_interpolator_image
+ template<class Renderer> class line_interpolator_image
+ {
+ public:
+ typedef Renderer renderer_type;
+ typedef typename Renderer::color_type color_type;
+
+ //---------------------------------------------------------------------
+ enum
+ {
+ max_half_width = 64
+ };
+
+ //---------------------------------------------------------------------
+ line_interpolator_image(renderer_type& ren, const line_parameters& lp,
+ int sx, int sy, int ex, int ey,
+ int pattern_start,
+ double scale_x) :
+ m_lp(lp),
+ m_li(lp.vertical ? line_dbl_hr(lp.x2 - lp.x1) :
+ line_dbl_hr(lp.y2 - lp.y1),
+ lp.vertical ? abs(lp.y2 - lp.y1) :
+ abs(lp.x2 - lp.x1) + 1),
+ m_di(lp.x1, lp.y1, lp.x2, lp.y2, sx, sy, ex, ey, lp.len, scale_x,
+ lp.x1 & ~line_subpixel_mask, lp.y1 & ~line_subpixel_mask),
+ m_ren(ren),
+ m_x(lp.x1 >> line_subpixel_shift),
+ m_y(lp.y1 >> line_subpixel_shift),
+ m_old_x(m_x),
+ m_old_y(m_y),
+ m_count((lp.vertical ? abs((lp.y2 >> line_subpixel_shift) - m_y) :
+ abs((lp.x2 >> line_subpixel_shift) - m_x))),
+ m_width(ren.subpixel_width()),
+ m_max_extent(m_width >> (line_subpixel_shift - 2)),
+ m_start(pattern_start + (m_max_extent + 2) * ren.pattern_width()),
+ m_step(0)
+ {
+ agg::dda2_line_interpolator li(0, lp.vertical ?
+ (lp.dy << agg::line_subpixel_shift) :
+ (lp.dx << agg::line_subpixel_shift),
+ lp.len);
+
+ unsigned i;
+ int stop = m_width + line_subpixel_size * 2;
+ for(i = 0; i < max_half_width; ++i)
+ {
+ m_dist_pos[i] = li.y();
+ if(m_dist_pos[i] >= stop) break;
+ ++li;
+ }
+ m_dist_pos[i] = 0x7FFF0000;
+
+ int dist1_start;
+ int dist2_start;
+ int npix = 1;
+
+ if(lp.vertical)
+ {
+ do
+ {
+ --m_li;
+ m_y -= lp.inc;
+ m_x = (m_lp.x1 + m_li.y()) >> line_subpixel_shift;
+
+ if(lp.inc > 0) m_di.dec_y(m_x - m_old_x);
+ else m_di.inc_y(m_x - m_old_x);
+
+ m_old_x = m_x;
+
+ dist1_start = dist2_start = m_di.dist_start();
+
+ int dx = 0;
+ if(dist1_start < 0) ++npix;
+ do
+ {
+ dist1_start += m_di.dy_start();
+ dist2_start -= m_di.dy_start();
+ if(dist1_start < 0) ++npix;
+ if(dist2_start < 0) ++npix;
+ ++dx;
+ }
+ while(m_dist_pos[dx] <= m_width);
+ if(npix == 0) break;
+
+ npix = 0;
+ }
+ while(--m_step >= -m_max_extent);
+ }
+ else
+ {
+ do
+ {
+ --m_li;
+
+ m_x -= lp.inc;
+ m_y = (m_lp.y1 + m_li.y()) >> line_subpixel_shift;
+
+ if(lp.inc > 0) m_di.dec_x(m_y - m_old_y);
+ else m_di.inc_x(m_y - m_old_y);
+
+ m_old_y = m_y;
+
+ dist1_start = dist2_start = m_di.dist_start();
+
+ int dy = 0;
+ if(dist1_start < 0) ++npix;
+ do
+ {
+ dist1_start -= m_di.dx_start();
+ dist2_start += m_di.dx_start();
+ if(dist1_start < 0) ++npix;
+ if(dist2_start < 0) ++npix;
+ ++dy;
+ }
+ while(m_dist_pos[dy] <= m_width);
+ if(npix == 0) break;
+
+ npix = 0;
+ }
+ while(--m_step >= -m_max_extent);
+ }
+ m_li.adjust_forward();
+ m_step -= m_max_extent;
+ }
+
+ //---------------------------------------------------------------------
+ bool step_hor()
+ {
+ ++m_li;
+ m_x += m_lp.inc;
+ m_y = (m_lp.y1 + m_li.y()) >> line_subpixel_shift;
+
+ if(m_lp.inc > 0) m_di.inc_x(m_y - m_old_y);
+ else m_di.dec_x(m_y - m_old_y);
+
+ m_old_y = m_y;
+
+ int s1 = m_di.dist() / m_lp.len;
+ int s2 = -s1;
+
+ if(m_lp.inc < 0) s1 = -s1;
+
+ int dist_start;
+ int dist_pict;
+ int dist_end;
+ int dy;
+ int dist;
+
+ dist_start = m_di.dist_start();
+ dist_pict = m_di.dist_pict() + m_start;
+ dist_end = m_di.dist_end();
+ color_type* p0 = m_colors + max_half_width + 2;
+ color_type* p1 = p0;
+
+ int npix = 0;
+ p1->clear();
+ if(dist_end > 0)
+ {
+ if(dist_start <= 0)
+ {
+ m_ren.pixel(p1, dist_pict, s2);
+ }
+ ++npix;
+ }
+ ++p1;
+
+ dy = 1;
+ while((dist = m_dist_pos[dy]) - s1 <= m_width)
+ {
+ dist_start -= m_di.dx_start();
+ dist_pict -= m_di.dx_pict();
+ dist_end -= m_di.dx_end();
+ p1->clear();
+ if(dist_end > 0 && dist_start <= 0)
+ {
+ if(m_lp.inc > 0) dist = -dist;
+ m_ren.pixel(p1, dist_pict, s2 - dist);
+ ++npix;
+ }
+ ++p1;
+ ++dy;
+ }
+
+ dy = 1;
+ dist_start = m_di.dist_start();
+ dist_pict = m_di.dist_pict() + m_start;
+ dist_end = m_di.dist_end();
+ while((dist = m_dist_pos[dy]) + s1 <= m_width)
+ {
+ dist_start += m_di.dx_start();
+ dist_pict += m_di.dx_pict();
+ dist_end += m_di.dx_end();
+ --p0;
+ p0->clear();
+ if(dist_end > 0 && dist_start <= 0)
+ {
+ if(m_lp.inc > 0) dist = -dist;
+ m_ren.pixel(p0, dist_pict, s2 + dist);
+ ++npix;
+ }
+ ++dy;
+ }
+ m_ren.blend_color_vspan(m_x,
+ m_y - dy + 1,
+ unsigned(p1 - p0),
+ p0);
+ return npix && ++m_step < m_count;
+ }
+
+
+
+ //---------------------------------------------------------------------
+ bool step_ver()
+ {
+ ++m_li;
+ m_y += m_lp.inc;
+ m_x = (m_lp.x1 + m_li.y()) >> line_subpixel_shift;
+
+ if(m_lp.inc > 0) m_di.inc_y(m_x - m_old_x);
+ else m_di.dec_y(m_x - m_old_x);
+
+ m_old_x = m_x;
+
+ int s1 = m_di.dist() / m_lp.len;
+ int s2 = -s1;
+
+ if(m_lp.inc > 0) s1 = -s1;
+
+ int dist_start;
+ int dist_pict;
+ int dist_end;
+ int dist;
+ int dx;
+
+ dist_start = m_di.dist_start();
+ dist_pict = m_di.dist_pict() + m_start;
+ dist_end = m_di.dist_end();
+ color_type* p0 = m_colors + max_half_width + 2;
+ color_type* p1 = p0;
+
+ int npix = 0;
+ p1->clear();
+ if(dist_end > 0)
+ {
+ if(dist_start <= 0)
+ {
+ m_ren.pixel(p1, dist_pict, s2);
+ }
+ ++npix;
+ }
+ ++p1;
+
+ dx = 1;
+ while((dist = m_dist_pos[dx]) - s1 <= m_width)
+ {
+ dist_start += m_di.dy_start();
+ dist_pict += m_di.dy_pict();
+ dist_end += m_di.dy_end();
+ p1->clear();
+ if(dist_end > 0 && dist_start <= 0)
+ {
+ if(m_lp.inc > 0) dist = -dist;
+ m_ren.pixel(p1, dist_pict, s2 + dist);
+ ++npix;
+ }
+ ++p1;
+ ++dx;
+ }
+
+ dx = 1;
+ dist_start = m_di.dist_start();
+ dist_pict = m_di.dist_pict() + m_start;
+ dist_end = m_di.dist_end();
+ while((dist = m_dist_pos[dx]) + s1 <= m_width)
+ {
+ dist_start -= m_di.dy_start();
+ dist_pict -= m_di.dy_pict();
+ dist_end -= m_di.dy_end();
+ --p0;
+ p0->clear();
+ if(dist_end > 0 && dist_start <= 0)
+ {
+ if(m_lp.inc > 0) dist = -dist;
+ m_ren.pixel(p0, dist_pict, s2 - dist);
+ ++npix;
+ }
+ ++dx;
+ }
+ m_ren.blend_color_hspan(m_x - dx + 1,
+ m_y,
+ unsigned(p1 - p0),
+ p0);
+ return npix && ++m_step < m_count;
+ }
+
+
+ //---------------------------------------------------------------------
+ int pattern_end() const { return m_start + m_di.len(); }
+
+ //---------------------------------------------------------------------
+ bool vertical() const { return m_lp.vertical; }
+ int width() const { return m_width; }
+ int count() const { return m_count; }
+
+ private:
+ line_interpolator_image(const line_interpolator_image<Renderer>&);
+ const line_interpolator_image<Renderer>&
+ operator = (const line_interpolator_image<Renderer>&);
+
+ protected:
+ const line_parameters& m_lp;
+ dda2_line_interpolator m_li;
+ distance_interpolator4 m_di;
+ renderer_type& m_ren;
+ int m_plen;
+ int m_x;
+ int m_y;
+ int m_old_x;
+ int m_old_y;
+ int m_count;
+ int m_width;
+ int m_max_extent;
+ int m_start;
+ int m_step;
+ int m_dist_pos[max_half_width + 1];
+ color_type m_colors[max_half_width * 2 + 4];
+ };
+
+
+
+
+
+
+
+
+ //===================================================renderer_outline_image
+ template<class BaseRenderer, class ImagePattern>
+ class renderer_outline_image
+ {
+ public:
+ //---------------------------------------------------------------------
+ typedef BaseRenderer base_ren_type;
+ typedef renderer_outline_image<BaseRenderer, ImagePattern> self_type;
+ typedef typename base_ren_type::color_type color_type;
+ typedef ImagePattern pattern_type;
+
+
+ //---------------------------------------------------------------------
+ renderer_outline_image(base_ren_type& ren, const pattern_type& patt) :
+ m_ren(&ren),
+ m_pattern(&patt),
+ m_start(0),
+ m_scale_x(1.0)
+ {
+ }
+
+ //---------------------------------------------------------------------
+ void pattern(const pattern_type& p) { m_pattern = &p; }
+ const pattern_type& pattern() const { return *m_pattern; }
+
+ //---------------------------------------------------------------------
+ void scale_x(double s) { m_scale_x = s; }
+ double scale_x() const { return m_scale_x; }
+
+ //---------------------------------------------------------------------
+ void start_x(double s) { m_start = int(s * line_subpixel_size); }
+ double start_x() const { return double(m_start) / line_subpixel_size; }
+
+ //---------------------------------------------------------------------
+ int subpixel_width() const { return m_pattern->line_width(); }
+ int pattern_width() const { return m_pattern->pattern_width(); }
+
+ //-------------------------------------------------------------------------
+ void pixel(color_type* p, int x, int y) const
+ {
+ m_pattern->pixel(p, x, y);
+ }
+
+ //-------------------------------------------------------------------------
+ void blend_color_hspan(int x, int y, unsigned len, const color_type* colors)
+ {
+ m_ren->blend_color_hspan(x, y, len, colors, 0);
+ }
+
+ //-------------------------------------------------------------------------
+ void blend_color_vspan(int x, int y, unsigned len, const color_type* colors)
+ {
+ m_ren->blend_color_vspan(x, y, len, colors, 0);
+ }
+
+ //-------------------------------------------------------------------------
+ static bool accurate_join_only() { return true; }
+
+ //-------------------------------------------------------------------------
+ template<class Cmp>
+ void semidot(Cmp, int, int, int, int)
+ {
+ }
+
+ //-------------------------------------------------------------------------
+ void line0(const line_parameters&)
+ {
+ }
+
+ //-------------------------------------------------------------------------
+ void line1(const line_parameters&, int, int)
+ {
+ }
+
+ //-------------------------------------------------------------------------
+ void line2(const line_parameters&, int, int)
+ {
+ }
+
+ //-------------------------------------------------------------------------
+ void line3(const line_parameters& lp,
+ int sx, int sy, int ex, int ey)
+ {
+ fix_degenerate_bisectrix_start(lp, &sx, &sy);
+ fix_degenerate_bisectrix_end(lp, &ex, &ey);
+ line_interpolator_image<self_type> li(*this, lp,
+ sx, sy,
+ ex, ey,
+ m_start, m_scale_x);
+ if(li.vertical())
+ {
+ while(li.step_ver());
+ }
+ else
+ {
+ while(li.step_hor());
+ }
+ m_start = li.pattern_end();
+ }
+
+ private:
+ base_ren_type* m_ren;
+ const pattern_type* m_pattern;
+ int m_start;
+ double m_scale_x;
+ };
+
+
+
+
+
+}
+
+
+
+#endif
diff --git a/agg/inc/agg_renderer_primitives.h b/agg/inc/agg_renderer_primitives.h
new file mode 100755
index 000000000000..522432c06df6
--- /dev/null
+++ b/agg/inc/agg_renderer_primitives.h
@@ -0,0 +1,224 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// class renderer_primitives
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_RENDERER_PRIMITIVES_INCLUDED
+#define AGG_RENDERER_PRIMITIVES_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_renderer_base.h"
+#include "agg_dda_line.h"
+#include "agg_ellipse_bresenham.h"
+
+namespace agg
+{
+ //-----------------------------------------------------renderer_primitives
+ template<class BaseRenderer> class renderer_primitives
+ {
+ public:
+ typedef BaseRenderer base_ren_type;
+ typedef typename base_ren_type::color_type color_type;
+
+ //--------------------------------------------------------------------
+ renderer_primitives(base_ren_type& ren) :
+ m_ren(&ren),
+ m_fill_color(),
+ m_line_color(),
+ m_curr_x(0),
+ m_curr_y(0)
+ {
+ }
+
+ //--------------------------------------------------------------------
+ static int coord(double c)
+ {
+ return int(c * line_bresenham_interpolator::subpixel_size);
+ }
+
+ //--------------------------------------------------------------------
+ void fill_color(const color_type& c) { m_fill_color = c; }
+ void line_color(const color_type& c) { m_line_color = c; }
+ const color_type& fill_color() const { return m_fill_color; }
+ const color_type& line_color() const { return m_line_color; }
+
+ //--------------------------------------------------------------------
+ void rectangle(int x1, int y1, int x2, int y2)
+ {
+ m_ren->blend_hline(x1, y1, x2-1, m_line_color, cover_full);
+ m_ren->blend_vline(x2, y1, y2-1, m_line_color, cover_full);
+ m_ren->blend_hline(x1+1, y2, x2, m_line_color, cover_full);
+ m_ren->blend_vline(x1, y1+1, y2, m_line_color, cover_full);
+ }
+
+ //--------------------------------------------------------------------
+ void solid_rectangle(int x1, int y1, int x2, int y2)
+ {
+ m_ren->blend_bar(x1, y1, x2, y2, m_fill_color, cover_full);
+ }
+
+ //--------------------------------------------------------------------
+ void outlined_rectangle(int x1, int y1, int x2, int y2)
+ {
+ rectangle(x1, y1, x2, y2);
+ m_ren->blend_bar(x1+1, y1+1, x2-1, y2-1, m_fill_color, cover_full);
+ }
+
+ //--------------------------------------------------------------------
+ void ellipse(int x, int y, int rx, int ry)
+ {
+ ellipse_bresenham_interpolator ei(rx, ry);
+ int dx = 0;
+ int dy = -ry;
+ do
+ {
+ dx += ei.dx();
+ dy += ei.dy();
+ m_ren->blend_pixel(x + dx, y + dy, m_line_color, cover_full);
+ m_ren->blend_pixel(x + dx, y - dy, m_line_color, cover_full);
+ m_ren->blend_pixel(x - dx, y - dy, m_line_color, cover_full);
+ m_ren->blend_pixel(x - dx, y + dy, m_line_color, cover_full);
+ ++ei;
+ }
+ while(dy < 0);
+ }
+
+ //--------------------------------------------------------------------
+ void solid_ellipse(int x, int y, int rx, int ry)
+ {
+ ellipse_bresenham_interpolator ei(rx, ry);
+ int dx = 0;
+ int dy = -ry;
+ int dy0 = dy;
+ int dx0 = dx;
+
+ do
+ {
+ dx += ei.dx();
+ dy += ei.dy();
+
+ if(dy != dy0)
+ {
+ m_ren->blend_hline(x-dx0, y+dy0, x+dx0, m_fill_color, cover_full);
+ m_ren->blend_hline(x-dx0, y-dy0, x+dx0, m_fill_color, cover_full);
+ }
+ dx0 = dx;
+ dy0 = dy;
+ ++ei;
+ }
+ while(dy < 0);
+ m_ren->blend_hline(x-dx0, y+dy0, x+dx0, m_fill_color, cover_full);
+ }
+
+ //--------------------------------------------------------------------
+ void outlined_ellipse(int x, int y, int rx, int ry)
+ {
+ ellipse_bresenham_interpolator ei(rx, ry);
+ int dx = 0;
+ int dy = -ry;
+
+ do
+ {
+ dx += ei.dx();
+ dy += ei.dy();
+
+ m_ren->blend_pixel(x + dx, y + dy, m_line_color, cover_full);
+ m_ren->blend_pixel(x + dx, y - dy, m_line_color, cover_full);
+ m_ren->blend_pixel(x - dx, y - dy, m_line_color, cover_full);
+ m_ren->blend_pixel(x - dx, y + dy, m_line_color, cover_full);
+
+ if(ei.dy() && dx)
+ {
+ m_ren->blend_hline(x-dx+1, y+dy, x+dx-1, m_fill_color, cover_full);
+ m_ren->blend_hline(x-dx+1, y-dy, x+dx-1, m_fill_color, cover_full);
+ }
+ ++ei;
+ }
+ while(dy < 0);
+ }
+
+ //--------------------------------------------------------------------
+ void line(int x1, int y1, int x2, int y2, bool last=false)
+ {
+ line_bresenham_interpolator li(x1, y1, x2, y2);
+
+ unsigned len = li.len();
+ if(len == 0)
+ {
+ if(last)
+ {
+ m_ren->blend_pixel(li.line_lr(x1), li.line_lr(y1), m_line_color, cover_full);
+ }
+ return;
+ }
+
+ if(last) ++len;
+
+ if(li.is_ver())
+ {
+ do
+ {
+ m_ren->blend_pixel(li.x2(), li.y1(), m_line_color, cover_full);
+ li.vstep();
+ }
+ while(--len);
+ }
+ else
+ {
+ do
+ {
+ m_ren->blend_pixel(li.x1(), li.y2(), m_line_color, cover_full);
+ li.hstep();
+ }
+ while(--len);
+ }
+ }
+
+ //--------------------------------------------------------------------
+ void move_to(int x, int y)
+ {
+ m_curr_x = x;
+ m_curr_y = y;
+ }
+
+ //--------------------------------------------------------------------
+ void line_to(int x, int y, bool last=false)
+ {
+ line(m_curr_x, m_curr_y, x, y, last);
+ m_curr_x = x;
+ m_curr_y = y;
+ }
+
+ //--------------------------------------------------------------------
+ const base_ren_type& ren() const { return *m_ren; }
+ base_ren_type& ren() { return *m_ren; }
+
+ //--------------------------------------------------------------------
+ const rendering_buffer& rbuf() const { return m_ren->rbuf(); }
+ rendering_buffer& rbuf() { return m_ren->rbuf(); }
+
+ private:
+ base_ren_type* m_ren;
+ color_type m_fill_color;
+ color_type m_line_color;
+ int m_curr_x;
+ int m_curr_y;
+ };
+
+}
+
+#endif
diff --git a/agg/inc/agg_renderer_raster_text.h b/agg/inc/agg_renderer_raster_text.h
new file mode 100755
index 000000000000..957944600332
--- /dev/null
+++ b/agg/inc/agg_renderer_raster_text.h
@@ -0,0 +1,264 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_RENDERER_RASTER_TEXT_INCLUDED
+#define AGG_RENDERER_RASTER_TEXT_INCLUDED
+
+#include "agg_basics.h"
+
+namespace agg
+{
+
+ //==============================================renderer_raster_htext_solid
+ template<class BaseRenderer, class GlyphGenerator>
+ class renderer_raster_htext_solid
+ {
+ public:
+ typedef BaseRenderer ren_type;
+ typedef GlyphGenerator glyph_gen_type;
+ typedef typename glyph_gen_type::glyph_rect glyph_rect;
+ typedef typename ren_type::color_type color_type;
+
+ renderer_raster_htext_solid(ren_type& ren, glyph_gen_type& glyph) :
+ m_ren(&ren),
+ m_glyph(&glyph)
+ {
+ }
+
+ //--------------------------------------------------------------------
+ void color(const color_type& c) { m_color = c; }
+ const color_type& color() const { return m_color; }
+
+ //--------------------------------------------------------------------
+ template<class CharT>
+ void render_text(double x, double y, const CharT* str, bool flip=false)
+ {
+ glyph_rect r;
+ while(*str)
+ {
+ m_glyph->prepare(&r, x, y, *str, flip);
+ if(r.x2 >= r.x1)
+ {
+ int i;
+ if(flip)
+ {
+ for(i = r.y1; i <= r.y2; i++)
+ {
+ m_ren->blend_solid_hspan(r.x1, i, (r.x2 - r.x1 + 1),
+ m_color,
+ m_glyph->span(r.y2 - i));
+ }
+ }
+ else
+ {
+ for(i = r.y1; i <= r.y2; i++)
+ {
+ m_ren->blend_solid_hspan(r.x1, i, (r.x2 - r.x1 + 1),
+ m_color,
+ m_glyph->span(i - r.y1));
+ }
+ }
+ }
+ x += r.dx;
+ y += r.dy;
+ ++str;
+ }
+ }
+
+ private:
+ ren_type* m_ren;
+ glyph_gen_type* m_glyph;
+ color_type m_color;
+ };
+
+
+
+ //=============================================renderer_raster_vtext_solid
+ template<class BaseRenderer, class GlyphGenerator>
+ class renderer_raster_vtext_solid
+ {
+ public:
+ typedef BaseRenderer ren_type;
+ typedef GlyphGenerator glyph_gen_type;
+ typedef typename glyph_gen_type::glyph_rect glyph_rect;
+ typedef typename ren_type::color_type color_type;
+
+ renderer_raster_vtext_solid(ren_type& ren, glyph_gen_type& glyph) :
+ m_ren(&ren),
+ m_glyph(&glyph)
+ {
+ }
+
+ //--------------------------------------------------------------------
+ void color(const color_type& c) { m_color = c; }
+ const color_type& color() const { return m_color; }
+
+ //--------------------------------------------------------------------
+ template<class CharT>
+ void render_text(double x, double y, const CharT* str, bool flip=false)
+ {
+ glyph_rect r;
+ while(*str)
+ {
+ m_glyph->prepare(&r, x, y, *str, !flip);
+ if(r.x2 >= r.x1)
+ {
+ int i;
+ if(flip)
+ {
+ for(i = r.y1; i <= r.y2; i++)
+ {
+ m_ren->blend_solid_vspan(i, r.x1, (r.x2 - r.x1 + 1),
+ m_color,
+ m_glyph->span(i - r.y1));
+ }
+ }
+ else
+ {
+ for(i = r.y1; i <= r.y2; i++)
+ {
+ m_ren->blend_solid_vspan(i, r.x1, (r.x2 - r.x1 + 1),
+ m_color,
+ m_glyph->span(r.y2 - i));
+ }
+ }
+ }
+ x += r.dx;
+ y += r.dy;
+ ++str;
+ }
+ }
+
+ private:
+ ren_type* m_ren;
+ glyph_gen_type* m_glyph;
+ color_type m_color;
+ };
+
+
+
+
+
+
+ //===================================================renderer_raster_htext
+ template<class ScanlineRenderer, class GlyphGenerator>
+ class renderer_raster_htext
+ {
+ public:
+ typedef ScanlineRenderer ren_type;
+ typedef GlyphGenerator glyph_gen_type;
+ typedef typename glyph_gen_type::glyph_rect glyph_rect;
+
+ class scanline_single_span
+ {
+ public:
+ typedef agg::cover_type cover_type;
+
+ //----------------------------------------------------------------
+ struct const_span
+ {
+ int x;
+ unsigned len;
+ const cover_type* covers;
+
+ const_span() {}
+ const_span(int x_, unsigned len_, const cover_type* covers_) :
+ x(x_), len(len_), covers(covers_)
+ {}
+ };
+
+ typedef const const_span* const_iterator;
+
+ //----------------------------------------------------------------
+ scanline_single_span(int x, int y, unsigned len,
+ const cover_type* covers) :
+ m_y(y),
+ m_span(x, len, covers)
+ {}
+
+ //----------------------------------------------------------------
+ int y() const { return m_y; }
+ unsigned num_spans() const { return 1; }
+ const_iterator begin() const { return &m_span; }
+
+ private:
+ //----------------------------------------------------------------
+ int m_y;
+ const_span m_span;
+ };
+
+
+
+ //--------------------------------------------------------------------
+ renderer_raster_htext(ren_type& ren, glyph_gen_type& glyph) :
+ m_ren(&ren),
+ m_glyph(&glyph)
+ {
+ }
+
+
+ //--------------------------------------------------------------------
+ template<class CharT>
+ void render_text(double x, double y, const CharT* str, bool flip=false)
+ {
+ glyph_rect r;
+ while(*str)
+ {
+ m_glyph->prepare(&r, x, y, *str, flip);
+ if(r.x2 >= r.x1)
+ {
+ m_ren->prepare(r.x2 - r.x1 + 1);
+ int i;
+ if(flip)
+ {
+ for(i = r.y1; i <= r.y2; i++)
+ {
+ m_ren->render(
+ scanline_single_span(r.x1,
+ i,
+ (r.x2 - r.x1 + 1),
+ m_glyph->span(r.y2 - i)));
+ }
+ }
+ else
+ {
+ for(i = r.y1; i <= r.y2; i++)
+ {
+ m_ren->render(
+ scanline_single_span(r.x1,
+ i,
+ (r.x2 - r.x1 + 1),
+ m_glyph->span(i - r.y1)));
+ }
+ }
+ }
+ x += r.dx;
+ y += r.dy;
+ ++str;
+ }
+ }
+
+ private:
+ ren_type* m_ren;
+ glyph_gen_type* m_glyph;
+ };
+
+
+
+
+}
+
+#endif
+
diff --git a/agg/inc/agg_renderer_scanline.h b/agg/inc/agg_renderer_scanline.h
new file mode 100755
index 000000000000..cc33942a3770
--- /dev/null
+++ b/agg/inc/agg_renderer_scanline.h
@@ -0,0 +1,450 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_RENDERER_SCANLINE_INCLUDED
+#define AGG_RENDERER_SCANLINE_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_renderer_base.h"
+#include "agg_render_scanlines.h"
+
+namespace agg
+{
+
+ //====================================================renderer_scanline_aa
+ template<class BaseRenderer, class SpanGenerator> class renderer_scanline_aa
+ {
+ public:
+ typedef BaseRenderer base_ren_type;
+
+ //--------------------------------------------------------------------
+ renderer_scanline_aa(base_ren_type& ren, SpanGenerator& span_gen) :
+ m_ren(&ren),
+ m_span_gen(&span_gen)
+ {
+ }
+
+ //--------------------------------------------------------------------
+ void prepare(unsigned max_span_len)
+ {
+ m_span_gen->prepare(max_span_len);
+ }
+
+ //--------------------------------------------------------------------
+ template<class Scanline> void render(const Scanline& sl)
+ {
+ int y = sl.y();
+ m_ren->first_clip_box();
+ do
+ {
+ int xmin = m_ren->xmin();
+ int xmax = m_ren->xmax();
+
+ if(y >= m_ren->ymin() && y <= m_ren->ymax())
+ {
+ unsigned num_spans = sl.num_spans();
+ typename Scanline::const_iterator span = sl.begin();
+ do
+ {
+ int x = span->x;
+ int len = span->len;
+ bool solid = false;
+ const typename Scanline::cover_type* covers = span->covers;
+
+ if(len < 0)
+ {
+ solid = true;
+ len = -len;
+ }
+
+ if(x < xmin)
+ {
+ len -= xmin - x;
+ if(!solid)
+ {
+ covers += xmin - x;
+ }
+ x = xmin;
+ }
+
+ if(len > 0)
+ {
+ if(x + len > xmax)
+ {
+ len = xmax - x + 1;
+ }
+ if(len > 0)
+ {
+ m_ren->blend_color_hspan_no_clip(
+ x, y, len,
+ m_span_gen->generate(x, y, len),
+ solid ? 0 : covers,
+ *covers);
+ }
+ }
+ ++span;
+ }
+ while(--num_spans);
+ }
+ }
+ while(m_ren->next_clip_box());
+ }
+
+ private:
+ base_ren_type* m_ren;
+ SpanGenerator* m_span_gen;
+ };
+
+
+
+
+ //==============================================renderer_scanline_aa_opaque
+ template<class BaseRenderer, class SpanGenerator> class renderer_scanline_aa_opaque
+ {
+ public:
+ typedef BaseRenderer base_ren_type;
+
+ //--------------------------------------------------------------------
+ renderer_scanline_aa_opaque(base_ren_type& ren, SpanGenerator& span_gen) :
+ m_ren(&ren),
+ m_span_gen(&span_gen)
+ {
+ }
+
+ //--------------------------------------------------------------------
+ void prepare(unsigned max_span_len)
+ {
+ m_span_gen->prepare(max_span_len);
+ }
+
+ //--------------------------------------------------------------------
+ template<class Scanline> void render(const Scanline& sl)
+ {
+ int y = sl.y();
+ m_ren->first_clip_box();
+ do
+ {
+ int xmin = m_ren->xmin();
+ int xmax = m_ren->xmax();
+
+ if(y >= m_ren->ymin() && y <= m_ren->ymax())
+ {
+ unsigned num_spans = sl.num_spans();
+ typename Scanline::const_iterator span = sl.begin();
+ do
+ {
+ int x = span->x;
+ int len = span->len;
+ bool solid = false;
+ const typename Scanline::cover_type* covers = span->covers;
+
+ if(len < 0)
+ {
+ solid = true;
+ len = -len;
+ }
+
+ if(x < xmin)
+ {
+ len -= xmin - x;
+ if(!solid)
+ {
+ covers += xmin - x;
+ }
+ x = xmin;
+ }
+
+ if(len > 0)
+ {
+ if(x + len > xmax)
+ {
+ len = xmax - x + 1;
+ }
+ if(len > 0)
+ {
+ m_ren->blend_opaque_color_hspan_no_clip(
+ x, y, len,
+ m_span_gen->generate(x, y, len),
+ solid ? 0 : covers,
+ *covers);
+ }
+ }
+ ++span;
+ }
+ while(--num_spans);
+ }
+ }
+ while(m_ren->next_clip_box());
+ }
+
+ private:
+ base_ren_type* m_ren;
+ SpanGenerator* m_span_gen;
+ };
+
+
+
+ //==============================================renderer_scanline_aa_solid
+ template<class BaseRenderer> class renderer_scanline_aa_solid
+ {
+ public:
+ typedef BaseRenderer base_ren_type;
+ typedef typename base_ren_type::color_type color_type;
+
+ //--------------------------------------------------------------------
+ renderer_scanline_aa_solid(base_ren_type& ren) :
+ m_ren(&ren)
+ {
+ }
+
+ //--------------------------------------------------------------------
+ void color(const color_type& c) { m_color = c; }
+ const color_type& color() const { return m_color; }
+
+ //--------------------------------------------------------------------
+ void prepare(unsigned) {}
+
+ //--------------------------------------------------------------------
+ template<class Scanline> void render(const Scanline& sl)
+ {
+ int y = sl.y();
+ unsigned num_spans = sl.num_spans();
+ typename Scanline::const_iterator span = sl.begin();
+
+ do
+ {
+ int x = span->x;
+ if(span->len > 0)
+ {
+ m_ren->blend_solid_hspan(x, y, (unsigned)span->len,
+ m_color,
+ span->covers);
+ }
+ else
+ {
+ m_ren->blend_hline(x, y, (unsigned)(x - span->len - 1),
+ m_color,
+ *(span->covers));
+ }
+ ++span;
+ }
+ while(--num_spans);
+ }
+
+ private:
+ base_ren_type* m_ren;
+ color_type m_color;
+ };
+
+
+
+
+
+
+
+ //===================================================renderer_scanline_bin
+ template<class BaseRenderer, class SpanGenerator> class renderer_scanline_bin
+ {
+ public:
+ typedef BaseRenderer base_ren_type;
+
+ //--------------------------------------------------------------------
+ renderer_scanline_bin(base_ren_type& ren, SpanGenerator& span_gen) :
+ m_ren(&ren),
+ m_span_gen(&span_gen)
+ {
+ }
+
+ //--------------------------------------------------------------------
+ void prepare(unsigned max_span_len)
+ {
+ m_span_gen->prepare(max_span_len);
+ }
+
+ //--------------------------------------------------------------------
+ template<class Scanline> void render(const Scanline& sl)
+ {
+ int y = sl.y();
+ m_ren->first_clip_box();
+ do
+ {
+ int xmin = m_ren->xmin();
+ int xmax = m_ren->xmax();
+
+ if(y >= m_ren->ymin() && y <= m_ren->ymax())
+ {
+ unsigned num_spans = sl.num_spans();
+ typename Scanline::const_iterator span = sl.begin();
+ do
+ {
+ int x = span->x;
+ int len = span->len;
+
+ if(len < 0) len = -len;
+ if(x < xmin)
+ {
+ len -= xmin - x;
+ x = xmin;
+ }
+ if(len > 0)
+ {
+ if(x + len > xmax)
+ {
+ len = xmax - x + 1;
+ }
+ if(len > 0)
+ {
+ m_ren->blend_color_hspan_no_clip(
+ x, y, len,
+ m_span_gen->generate(x, y, len),
+ 0);
+ }
+ }
+ ++span;
+ }
+ while(--num_spans);
+ }
+ }
+ while(m_ren->next_clip_box());
+ }
+
+ private:
+ base_ren_type* m_ren;
+ SpanGenerator* m_span_gen;
+ };
+
+
+
+ //===============================================renderer_scanline_bin_opaque
+ template<class BaseRenderer, class SpanGenerator> class renderer_scanline_bin_opaque
+ {
+ public:
+ typedef BaseRenderer base_ren_type;
+
+ //--------------------------------------------------------------------
+ renderer_scanline_bin_opaque(base_ren_type& ren, SpanGenerator& span_gen) :
+ m_ren(&ren),
+ m_span_gen(&span_gen)
+ {
+ }
+
+ //--------------------------------------------------------------------
+ void prepare(unsigned max_span_len)
+ {
+ m_span_gen->prepare(max_span_len);
+ }
+
+ //--------------------------------------------------------------------
+ template<class Scanline> void render(const Scanline& sl)
+ {
+ int y = sl.y();
+ m_ren->first_clip_box();
+ do
+ {
+ int xmin = m_ren->xmin();
+ int xmax = m_ren->xmax();
+
+ if(y >= m_ren->ymin() && y <= m_ren->ymax())
+ {
+ unsigned num_spans = sl.num_spans();
+ typename Scanline::const_iterator span = sl.begin();
+ do
+ {
+ int x = span->x;
+ int len = span->len;
+
+ if(len < 0) len = -len;
+ if(x < xmin)
+ {
+ len -= xmin - x;
+ x = xmin;
+ }
+ if(len > 0)
+ {
+ if(x + len > xmax)
+ {
+ len = xmax - x + 1;
+ }
+ if(len > 0)
+ {
+ m_ren->blend_opaque_color_hspan_no_clip(
+ x, y, len,
+ m_span_gen->generate(x, y, len),
+ 0);
+ }
+ }
+ ++span;
+ }
+ while(--num_spans);
+ }
+ }
+ while(m_ren->next_clip_box());
+ }
+
+ private:
+ base_ren_type* m_ren;
+ SpanGenerator* m_span_gen;
+ };
+
+
+
+
+ //=============================================renderer_scanline_bin_solid
+ template<class BaseRenderer> class renderer_scanline_bin_solid
+ {
+ public:
+ typedef BaseRenderer base_ren_type;
+ typedef typename base_ren_type::color_type color_type;
+
+ //--------------------------------------------------------------------
+ renderer_scanline_bin_solid(base_ren_type& ren) :
+ m_ren(&ren)
+ {
+ }
+
+ //--------------------------------------------------------------------
+ void color(const color_type& c) { m_color = c; }
+ const color_type& color() const { return m_color; }
+
+ //--------------------------------------------------------------------
+ void prepare(unsigned) {}
+
+ //--------------------------------------------------------------------
+ template<class Scanline> void render(const Scanline& sl)
+ {
+ unsigned num_spans = sl.num_spans();
+ typename Scanline::const_iterator span = sl.begin();
+ do
+ {
+ m_ren->blend_hline(span->x,
+ sl.y(),
+ span->x - 1 + ((span->len < 0) ?
+ -span->len :
+ span->len),
+ m_color,
+ cover_full);
+ ++span;
+ }
+ while(--num_spans);
+ }
+
+ private:
+ base_ren_type* m_ren;
+ color_type m_color;
+ };
+
+}
+
+#endif
diff --git a/agg/inc/agg_rendering_buffer.h b/agg/inc/agg_rendering_buffer.h
new file mode 100755
index 000000000000..50b6a46fdfa8
--- /dev/null
+++ b/agg/inc/agg_rendering_buffer.h
@@ -0,0 +1,179 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// class rendering_buffer
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_RENDERING_BUFFER_INCLUDED
+#define AGG_RENDERING_BUFFER_INCLUDED
+
+#include "agg_basics.h"
+
+namespace agg
+{
+
+ //==========================================================row_ptr_cache
+ template<class T> class row_ptr_cache
+ {
+ public:
+ //--------------------------------------------------------------------
+ struct row_data
+ {
+ int x1, x2;
+ const int8u* ptr;
+ row_data() {}
+ row_data(int x1_, int x2_, const int8u* ptr_) :
+ x1(x1_), x2(x2_), ptr(ptr_) {}
+ };
+
+ //-------------------------------------------------------------------
+ ~row_ptr_cache()
+ {
+ delete [] m_rows;
+ }
+
+ //-------------------------------------------------------------------
+ row_ptr_cache() :
+ m_buf(0),
+ m_rows(0),
+ m_width(0),
+ m_height(0),
+ m_stride(0),
+ m_max_height(0)
+ {
+ }
+
+ //--------------------------------------------------------------------
+ row_ptr_cache(T* _buf, unsigned _width, unsigned _height, int _stride) :
+ m_buf(0),
+ m_rows(0),
+ m_width(0),
+ m_height(0),
+ m_stride(0),
+ m_max_height(0)
+ {
+ attach(_buf, _width, _height, _stride);
+ }
+
+ //--------------------------------------------------------------------
+ void attach(T* _buf, unsigned _width, unsigned _height, int _stride)
+ {
+ m_buf = _buf;
+ m_width = _width;
+ m_height = _height;
+ m_stride = _stride;
+ if(_height > m_max_height)
+ {
+ delete [] m_rows;
+ m_rows = new T* [m_max_height = _height];
+ }
+
+ T* row_ptr = m_buf;
+
+ if(_stride < 0)
+ {
+ row_ptr = m_buf - int(_height - 1) * _stride;
+ }
+
+ T** _rows = m_rows;
+
+ while(_height--)
+ {
+ *_rows++ = row_ptr;
+ row_ptr += _stride;
+ }
+ }
+
+ //--------------------------------------------------------------------
+ const T* buf() const { return m_buf; }
+ unsigned width() const { return m_width; }
+ unsigned height() const { return m_height; }
+ int stride() const { return m_stride; }
+ unsigned stride_abs() const
+ {
+ return (m_stride < 0) ?
+ unsigned(-m_stride) :
+ unsigned(m_stride);
+ }
+
+ //--------------------------------------------------------------------
+ T* row(unsigned y) { return m_rows[y]; }
+ const T* row(unsigned y) const { return m_rows[y]; }
+
+ T* next_row(void* p) { return (T*)p + m_stride; }
+ const T* next_row(const void* p) const { return (T*)p + m_stride; }
+
+ T const* const* rows() const { return m_rows; }
+
+ //--------------------------------------------------------------------
+ void copy_from(const row_ptr_cache<T>& mtx)
+ {
+ unsigned h = height();
+ if(mtx.height() < h) h = mtx.height();
+
+ unsigned l = stride_abs();
+ if(mtx.stride_abs() < l) l = mtx.stride_abs();
+
+ l *= sizeof(T);
+
+ unsigned y;
+ for (y = 0; y < h; y++)
+ {
+ memcpy(row(y), mtx.row(y), l);
+ }
+ }
+
+ //--------------------------------------------------------------------
+ void clear(T value)
+ {
+ unsigned y;
+ for(y = 0; y < height(); y++)
+ {
+ T* p = row(y);
+ unsigned x;
+ for(x = 0; x < stride_abs(); x++)
+ {
+ *p++ = value;
+ }
+ }
+ }
+
+
+ private:
+ //--------------------------------------------------------------------
+ // Prohibit copying
+ row_ptr_cache(const row_ptr_cache<T>&);
+ const row_ptr_cache<T>& operator = (const row_ptr_cache<T>&);
+
+ private:
+ //--------------------------------------------------------------------
+ T* m_buf; // Pointer to renrdering buffer
+ T** m_rows; // Pointers to each row of the buffer
+ unsigned m_width; // Width in pixels
+ unsigned m_height; // Height in pixels
+ int m_stride; // Number of bytes per row. Can be < 0
+ unsigned m_max_height; // The maximal height (currently allocated)
+ };
+
+
+
+ //========================================================rendering_buffer
+ typedef row_ptr_cache<int8u> rendering_buffer;
+
+}
+
+
+#endif
diff --git a/agg/inc/agg_rendering_buffer_dynarow.h b/agg/inc/agg_rendering_buffer_dynarow.h
new file mode 100755
index 000000000000..b6724d99ff78
--- /dev/null
+++ b/agg/inc/agg_rendering_buffer_dynarow.h
@@ -0,0 +1,184 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// class rendering_buffer_dynarow
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_RENDERING_BUFFER_DYNAROW_INCLUDED
+#define AGG_RENDERING_BUFFER_DYNAROW_INCLUDED
+
+#include "agg_basics.h"
+
+namespace agg
+{
+
+ //===============================================rendering_buffer_dynarow
+ // Rendering buffer class with dynamic allocation of the rows.
+ // The rows are allocated as needed when requesting for span_ptr().
+ // The class automatically calculates min_x and max_x for each row.
+ // Generally it's more efficient to use this class as a temporary buffer
+ // for rendering a few lines and then to blend it with another buffer.
+ //
+ template<unsigned PixWidth> class rendering_buffer_dynarow
+ {
+ public:
+ //-------------------------------------------------------------------
+ struct row_data
+ {
+ int8u* ptr;
+ int x1;
+ int x2;
+ };
+
+ //-------------------------------------------------------------------
+ ~rendering_buffer_dynarow()
+ {
+ init(0,0);
+ }
+
+ //-------------------------------------------------------------------
+ rendering_buffer_dynarow() :
+ m_rows(0),
+ m_width(0),
+ m_height(0)
+ {
+ }
+
+ // Allocate and clear the buffer
+ //--------------------------------------------------------------------
+ rendering_buffer_dynarow(unsigned width, unsigned height) :
+ m_rows(new row_data[height]),
+ m_width(width),
+ m_height(height)
+ {
+ memset(m_rows, 0, sizeof(row_data) * height);
+ }
+
+ // Allocate and clear the buffer
+ //--------------------------------------------------------------------
+ void init(unsigned width, unsigned height)
+ {
+ unsigned i;
+ for(i = 0; i < m_height; ++i) delete [] m_rows[i].ptr;
+ delete [] m_rows;
+ m_rows = 0;
+ if(width && height)
+ {
+ m_width = width;
+ m_height = height;
+ m_rows = new row_data[height];
+ memset(m_rows, 0, sizeof(row_data) * height);
+ }
+ }
+
+ //--------------------------------------------------------------------
+ unsigned width() const { return m_width; }
+ unsigned height() const { return m_height; }
+
+ // Get pointer to the beginning of the row. Memory for the row
+ // is allocated as needed.
+ //--------------------------------------------------------------------
+ int8u* row(int y)
+ {
+ row_data* r = m_rows + y;
+ if(r->ptr == 0)
+ {
+ r->ptr = new int8u [m_width * PixWidth];
+ memset(r->ptr, 0, m_width * PixWidth);
+ }
+ return r->ptr;
+ }
+
+ // Get const pointer to the row. The caller must check it for null.
+ //--------------------------------------------------------------------
+ const int8u* row(int y) const
+ {
+ return m_rows[y].ptr;
+ }
+
+ // Get the Y-th span. The pointer r.ptr is automatically adjusted
+ // to the actual beginning of the span. Use this function as follows:
+ //
+ // rendering_buffer_dynarow::row_data r = rbuf.span(x, y);
+ // if(r.ptr)
+ // {
+ // do { blend(r.ptr); r.ptr += PixWidth } while(++r.x1 < r.x2);
+ // }
+ //--------------------------------------------------------------------
+ row_data span(int x, int y) const
+ {
+ row_data r = m_rows[y];
+ if(r.ptr)
+ {
+ if(x < r.x1) x = r.x1;
+ r.ptr += x * PixWidth;
+ }
+ return r;
+ }
+
+
+ // The main function used for rendering. Returns pointer to the
+ // pre-allocated span. Memory for the row is allocated as needed.
+ //--------------------------------------------------------------------
+ int8u* span_ptr(int x, int y, unsigned len)
+ {
+ row_data* r = m_rows + y;
+ int x2 = x + len - 1;
+ if(r->ptr)
+ {
+ if(x < r->x1) { r->x1 = x; }
+ if(x2 > r->x2) { r->x2 = x2; }
+ }
+ else
+ {
+ r->ptr = new int8u [m_width * PixWidth];
+ r->x1 = x;
+ r->x2 = x2;
+ memset(r->ptr, 0, m_width * PixWidth);
+ }
+ return r->ptr + x * PixWidth;
+ }
+
+ // Get const pointer to the span. Used mostly in GetPixel function
+ // The caller must check the returned pointer for null.
+ //--------------------------------------------------------------------
+ const int8u* span_ptr(int x, int y, unsigned) const
+ {
+ row_data* r = m_rows + y;
+ return r->ptr ? r->ptr + x * PixWidth : 0;
+ }
+
+
+
+ private:
+ //--------------------------------------------------------------------
+ // Prohibit copying
+ rendering_buffer_dynarow(const rendering_buffer_dynarow<PixWidth>&);
+ const rendering_buffer_dynarow<PixWidth>&
+ operator = (const rendering_buffer_dynarow<PixWidth>&);
+
+ private:
+ //--------------------------------------------------------------------
+ row_data* m_rows; // Pointers to each row of the buffer
+ unsigned m_width; // Width in pixels
+ unsigned m_height; // Height in pixels
+ };
+
+
+}
+
+
+#endif
diff --git a/agg/inc/agg_rounded_rect.h b/agg/inc/agg_rounded_rect.h
new file mode 100755
index 000000000000..d4185dafa5b3
--- /dev/null
+++ b/agg/inc/agg_rounded_rect.h
@@ -0,0 +1,79 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Rounded rectangle vertex generator
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_ROUNDED_RECT_INCLUDED
+#define AGG_ROUNDED_RECT_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_arc.h"
+#include "agg_vertex_iterator.h"
+
+
+namespace agg
+{
+ //------------------------------------------------------------rounded_rect
+ //
+ // See Implemantation agg_rounded_rect.cpp
+ //
+ class rounded_rect
+ {
+ public:
+ rounded_rect() {}
+ rounded_rect(double x1, double y1, double x2, double y2, double r);
+
+ void rect(double x1, double y1, double x2, double y2);
+ void radius(double r);
+ void radius(double rx, double ry);
+ void radius(double rx_bottom, double ry_bottom, double rx_top, double ry_top);
+ void radius(double rx1, double ry1, double rx2, double ry2,
+ double rx3, double ry3, double rx4, double ry4);
+ void normalize_radius();
+
+ void approximation_scale(double s) { m_arc.approximation_scale(s); }
+ double approximation_scale() const { return m_arc.approximation_scale(); }
+
+ void rewind(unsigned);
+ unsigned vertex(double* x, double* y);
+
+ typedef rounded_rect source_type;
+ typedef vertex_iterator<source_type> iterator;
+ iterator begin(unsigned id) { return iterator(*this, id); }
+ iterator end() { return iterator(path_cmd_stop); }
+
+ private:
+ double m_x1;
+ double m_y1;
+ double m_x2;
+ double m_y2;
+ double m_rx1;
+ double m_ry1;
+ double m_rx2;
+ double m_ry2;
+ double m_rx3;
+ double m_ry3;
+ double m_rx4;
+ double m_ry4;
+ unsigned m_status;
+ arc m_arc;
+ };
+
+}
+
+#endif
+
diff --git a/agg/inc/agg_scanline_bin.h b/agg/inc/agg_scanline_bin.h
new file mode 100755
index 000000000000..aa60ed061e07
--- /dev/null
+++ b/agg/inc/agg_scanline_bin.h
@@ -0,0 +1,171 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Class scanline_bin - binary scanline.
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_SCANLINE_BIN_INCLUDED
+#define AGG_SCANLINE_BIN_INCLUDED
+
+#include "agg_basics.h"
+
+namespace agg
+{
+
+ //=============================================================scanline_bin
+ //
+ // This is binary scaline container which supports the interface
+ // used in the rasterizer::render(). See description of agg_scanline_u8
+ // for details.
+ //
+ // Rendering:
+ //-------------------------------------------------------------------------
+ //
+ // int y = sl.y();
+ //
+ // ************************************
+ // ...Perform vertical clipping here...
+ // ************************************
+ //
+ // unsigned num_spans = sl.num_spans();
+ // const agg::scanline_bin::span* cur_span = sl.spans();
+ //
+ // do
+ // {
+ // x = cur_span->x;
+ // len = cur_span->len;
+ //
+ // **************************************
+ // ...Perform horizontal clipping here...
+ // **************************************
+ //
+ // hor_line(x, y, len)
+ // ++cur_span;
+ // }
+ // while(--num_spans);
+ //
+ //------------------------------------------------------------------------
+ class scanline_bin
+ {
+ public:
+ struct span
+ {
+ int16 x;
+ int16 len;
+ };
+
+ typedef const span* const_iterator;
+
+ ~scanline_bin()
+ {
+ delete [] m_spans;
+ }
+
+ scanline_bin() :
+ m_max_len(0),
+ m_last_x(0x7FFF),
+ m_spans(0),
+ m_cur_span(0)
+ {
+ }
+
+ void reset(int min_x, int max_x);
+ void add_cell(int x, unsigned);
+ void add_cells(int x, unsigned len, const void*);
+ void add_span(int x, unsigned len, unsigned);
+ void finalize(int y) { m_y = y; }
+ void reset_spans();
+
+ int y() const { return m_y; }
+ unsigned num_spans() const { return unsigned(m_cur_span - m_spans); }
+ const_iterator begin() const { return m_spans + 1; }
+
+ private:
+ scanline_bin(const scanline_bin&);
+ const scanline_bin operator = (const scanline_bin&);
+
+ unsigned m_max_len;
+ int m_last_x;
+ int m_y;
+ span* m_spans;
+ span* m_cur_span;
+ };
+
+
+ //------------------------------------------------------------------------
+ inline void scanline_bin::reset(int min_x, int max_x)
+ {
+ unsigned max_len = max_x - min_x + 3;
+ if(max_len > m_max_len)
+ {
+ delete [] m_spans;
+ m_spans = new span [max_len];
+ m_max_len = max_len;
+ }
+ m_last_x = 0x7FFF;
+ m_cur_span = m_spans;
+ }
+
+
+ //------------------------------------------------------------------------
+ inline void scanline_bin::reset_spans()
+ {
+ m_last_x = 0x7FFF;
+ m_cur_span = m_spans;
+ }
+
+
+ //------------------------------------------------------------------------
+ inline void scanline_bin::add_cell(int x, unsigned)
+ {
+ if(x == m_last_x+1)
+ {
+ m_cur_span->len++;
+ }
+ else
+ {
+ ++m_cur_span;
+ m_cur_span->x = (int16)x;
+ m_cur_span->len = 1;
+ }
+ m_last_x = x;
+ }
+
+
+ //------------------------------------------------------------------------
+ inline void scanline_bin::add_span(int x, unsigned len, unsigned)
+ {
+ if(x == m_last_x+1)
+ {
+ m_cur_span->len = (int16)(m_cur_span->len + len);
+ }
+ else
+ {
+ ++m_cur_span;
+ m_cur_span->x = (int16)x;
+ m_cur_span->len = (int16)len;
+ }
+ m_last_x = x + len - 1;
+ }
+
+ //------------------------------------------------------------------------
+ inline void scanline_bin::add_cells(int x, unsigned len, const void*)
+ {
+ add_span(x, len, 0);
+ }
+}
+
+
+#endif
diff --git a/agg/inc/agg_scanline_boolean_algebra.h b/agg/inc/agg_scanline_boolean_algebra.h
new file mode 100755
index 000000000000..7f1a3c5ba774
--- /dev/null
+++ b/agg/inc/agg_scanline_boolean_algebra.h
@@ -0,0 +1,1559 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_SCANLINE_BOOLEAN_ALGEBRA_INCLUDED
+#define AGG_SCANLINE_BOOLEAN_ALGEBRA_INCLUDED
+
+#include <stdlib.h>
+#include <math.h>
+#include "agg_basics.h"
+
+
+namespace agg
+{
+
+ //-----------------------------------------------sbool_combine_spans_bin
+ // Functor.
+ // Combine two binary encoded spans, i.e., when we don't have any
+ // anti-aliasing information, but only X and Length. The function
+ // is compatible with any type of scanlines.
+ //----------------
+ template<class Scanline1,
+ class Scanline2,
+ class Scanline>
+ struct sbool_combine_spans_bin
+ {
+ void operator () (const typename Scanline1::const_iterator&,
+ const typename Scanline2::const_iterator&,
+ int x, unsigned len,
+ Scanline& sl) const
+ {
+ sl.add_span(x, len, cover_full);
+ }
+ };
+
+
+
+ //---------------------------------------------sbool_combine_spans_empty
+ // Functor.
+ // Combine two spans as empty ones. The functor does nothing
+ // and is used to XOR binary spans.
+ //----------------
+ template<class Scanline1,
+ class Scanline2,
+ class Scanline>
+ struct sbool_combine_spans_empty
+ {
+ void operator () (const typename Scanline1::const_iterator&,
+ const typename Scanline2::const_iterator&,
+ int, unsigned,
+ Scanline&) const
+ {}
+ };
+
+
+
+ //--------------------------------------------------sbool_add_span_empty
+ // Functor.
+ // Add nothing. Used in conbine_shapes_sub
+ //----------------
+ template<class Scanline1,
+ class Scanline>
+ struct sbool_add_span_empty
+ {
+ void operator () (const typename Scanline1::const_iterator&,
+ int, unsigned,
+ Scanline&) const
+ {}
+ };
+
+
+ //----------------------------------------------------sbool_add_span_bin
+ // Functor.
+ // Add a binary span
+ //----------------
+ template<class Scanline1,
+ class Scanline>
+ struct sbool_add_span_bin
+ {
+ void operator () (const typename Scanline1::const_iterator&,
+ int x, unsigned len,
+ Scanline& sl) const
+ {
+ sl.add_span(x, len, cover_full);
+ }
+ };
+
+
+
+
+ //-----------------------------------------------------sbool_add_span_aa
+ // Functor.
+ // Add an anti-aliased span
+ // anti-aliasing information, but only X and Length. The function
+ // is compatible with any type of scanlines.
+ //----------------
+ template<class Scanline1,
+ class Scanline>
+ struct sbool_add_span_aa
+ {
+ void operator () (const typename Scanline1::const_iterator& span,
+ int x, unsigned len,
+ Scanline& sl) const
+ {
+ if(span->len < 0)
+ {
+ sl.add_span(x, len, *span->covers);
+ }
+ else
+ if(span->len > 0)
+ {
+ const typename Scanline1::cover_type* covers = span->covers;
+ if(span->x < x) covers += x - span->x;
+ sl.add_cells(x, len, covers);
+ }
+ }
+ };
+
+
+
+
+ //----------------------------------------------sbool_intersect_spans_aa
+ // Functor.
+ // Intersect two spans preserving the anti-aliasing information.
+ // The result is added to the "sl" scanline.
+ //------------------
+ template<class Scanline1,
+ class Scanline2,
+ class Scanline,
+ unsigned CoverShift = cover_shift>
+ struct sbool_intersect_spans_aa
+ {
+ enum
+ {
+ cover_shift = CoverShift,
+ cover_size = 1 << cover_shift,
+ cover_mask = cover_size - 1,
+ cover_full = cover_mask
+ };
+
+
+ void operator () (const typename Scanline1::const_iterator& span1,
+ const typename Scanline2::const_iterator& span2,
+ int x, unsigned len,
+ Scanline& sl) const
+ {
+ unsigned cover;
+ const typename Scanline1::cover_type* covers1;
+ const typename Scanline2::cover_type* covers2;
+
+ // Calculate the operation code and choose the
+ // proper combination algorithm.
+ // 0 = Both spans are of AA type
+ // 1 = span1 is solid, span2 is AA
+ // 2 = span1 is AA, span2 is solid
+ // 3 = Both spans are of solid type
+ //-----------------
+ switch((span1->len < 0) | ((span2->len < 0) << 1))
+ {
+ case 0: // Both are AA spans
+ covers1 = span1->covers;
+ covers2 = span2->covers;
+ if(span1->x < x) covers1 += x - span1->x;
+ if(span2->x < x) covers2 += x - span2->x;
+ do
+ {
+ cover = *covers1++ * *covers2++;
+ sl.add_cell(x++,
+ (cover == cover_full * cover_full) ?
+ cover_full :
+ (cover >> cover_shift));
+ }
+ while(--len);
+ break;
+
+ case 1: // span1 is solid, span2 is AA
+ covers2 = span2->covers;
+ if(span2->x < x) covers2 += x - span2->x;
+ if(*(span1->covers) == cover_full)
+ {
+ sl.add_cells(x, len, covers2);
+ }
+ else
+ {
+ do
+ {
+ cover = *(span1->covers) * *covers2++;
+ sl.add_cell(x++,
+ (cover == cover_full * cover_full) ?
+ cover_full :
+ (cover >> cover_shift));
+ }
+ while(--len);
+ }
+ break;
+
+ case 2: // span1 is AA, span2 is solid
+ covers1 = span1->covers;
+ if(span1->x < x) covers1 += x - span1->x;
+ if(*(span2->covers) == cover_full)
+ {
+ sl.add_cells(x, len, covers1);
+ }
+ else
+ {
+ do
+ {
+ cover = *covers1++ * *(span2->covers);
+ sl.add_cell(x++,
+ (cover == cover_full * cover_full) ?
+ cover_full :
+ (cover >> cover_shift));
+ }
+ while(--len);
+ }
+ break;
+
+ case 3: // Both are solid spans
+ cover = *(span1->covers) * *(span2->covers);
+ sl.add_span(x, len,
+ (cover == cover_full * cover_full) ?
+ cover_full :
+ (cover >> cover_shift));
+ break;
+ }
+ }
+ };
+
+
+
+
+
+
+ //--------------------------------------------------sbool_unite_spans_aa
+ // Functor.
+ // Unite two spans preserving the anti-aliasing information.
+ // The result is added to the "sl" scanline.
+ //------------------
+ template<class Scanline1,
+ class Scanline2,
+ class Scanline,
+ unsigned CoverShift = cover_shift>
+ struct sbool_unite_spans_aa
+ {
+ enum
+ {
+ cover_shift = CoverShift,
+ cover_size = 1 << cover_shift,
+ cover_mask = cover_size - 1,
+ cover_full = cover_mask
+ };
+
+
+ void operator () (const typename Scanline1::const_iterator& span1,
+ const typename Scanline2::const_iterator& span2,
+ int x, unsigned len,
+ Scanline& sl) const
+ {
+ unsigned cover;
+ const typename Scanline1::cover_type* covers1;
+ const typename Scanline2::cover_type* covers2;
+
+ // Calculate the operation code and choose the
+ // proper combination algorithm.
+ // 0 = Both spans are of AA type
+ // 1 = span1 is solid, span2 is AA
+ // 2 = span1 is AA, span2 is solid
+ // 3 = Both spans are of solid type
+ //-----------------
+ switch((span1->len < 0) | ((span2->len < 0) << 1))
+ {
+ case 0: // Both are AA spans
+ covers1 = span1->covers;
+ covers2 = span2->covers;
+ if(span1->x < x) covers1 += x - span1->x;
+ if(span2->x < x) covers2 += x - span2->x;
+ do
+ {
+ cover = cover_mask * cover_mask -
+ (cover_mask - *covers1++) *
+ (cover_mask - *covers2++);
+ sl.add_cell(x++,
+ (cover == cover_full * cover_full) ?
+ cover_full :
+ (cover >> cover_shift));
+ }
+ while(--len);
+ break;
+
+ case 1: // span1 is solid, span2 is AA
+ covers2 = span2->covers;
+ if(span2->x < x) covers2 += x - span2->x;
+ if(*(span1->covers) == cover_full)
+ {
+ sl.add_span(x, len, cover_full);
+ }
+ else
+ {
+ do
+ {
+ cover = cover_mask * cover_mask -
+ (cover_mask - *(span1->covers)) *
+ (cover_mask - *covers2++);
+ sl.add_cell(x++,
+ (cover == cover_full * cover_full) ?
+ cover_full :
+ (cover >> cover_shift));
+ }
+ while(--len);
+ }
+ break;
+
+ case 2: // span1 is AA, span2 is solid
+ covers1 = span1->covers;
+ if(span1->x < x) covers1 += x - span1->x;
+ if(*(span2->covers) == cover_full)
+ {
+ sl.add_span(x, len, cover_full);
+ }
+ else
+ {
+ do
+ {
+ cover = cover_mask * cover_mask -
+ (cover_mask - *covers1++) *
+ (cover_mask - *(span2->covers));
+ sl.add_cell(x++,
+ (cover == cover_full * cover_full) ?
+ cover_full :
+ (cover >> cover_shift));
+ }
+ while(--len);
+ }
+ break;
+
+ case 3: // Both are solid spans
+ cover = cover_mask * cover_mask -
+ (cover_mask - *(span1->covers)) *
+ (cover_mask - *(span2->covers));
+ sl.add_span(x, len,
+ (cover == cover_full * cover_full) ?
+ cover_full :
+ (cover >> cover_shift));
+ break;
+ }
+ }
+ };
+
+
+ //---------------------------------------------sbool_xor_formula_linear
+ template<unsigned CoverShift = cover_shift>
+ struct sbool_xor_formula_linear
+ {
+ enum
+ {
+ cover_shift = CoverShift,
+ cover_size = 1 << cover_shift,
+ cover_mask = cover_size - 1
+ };
+
+ static AGG_INLINE unsigned calculate(unsigned a, unsigned b)
+ {
+ unsigned cover = a + b;
+ if(cover > cover_mask) cover = cover_mask + cover_mask - cover;
+ return cover;
+ }
+ };
+
+
+ //---------------------------------------------sbool_xor_formula_saddle
+ template<unsigned CoverShift = cover_shift>
+ struct sbool_xor_formula_saddle
+ {
+ enum
+ {
+ cover_shift = CoverShift,
+ cover_size = 1 << cover_shift,
+ cover_mask = cover_size - 1
+ };
+
+ static AGG_INLINE unsigned calculate(unsigned a, unsigned b)
+ {
+ unsigned k = a * b;
+ if(k == cover_mask * cover_mask) return 0;
+
+ a = (cover_mask * cover_mask - (a << cover_shift) + k) >> cover_shift;
+ b = (cover_mask * cover_mask - (b << cover_shift) + k) >> cover_shift;
+ return cover_mask - ((a * b) >> cover_shift);
+ }
+ };
+
+
+ //-------------------------------------------sbool_xor_formula_abs_diff
+ struct sbool_xor_formula_abs_diff
+ {
+ static AGG_INLINE unsigned calculate(unsigned a, unsigned b)
+ {
+ return unsigned(abs(int(a) - int(b)));
+ }
+ };
+
+
+
+ //----------------------------------------------------sbool_xor_spans_aa
+ // Functor.
+ // XOR two spans preserving the anti-aliasing information.
+ // The result is added to the "sl" scanline.
+ //------------------
+ template<class Scanline1,
+ class Scanline2,
+ class Scanline,
+ class XorFormula,
+ unsigned CoverShift = cover_shift>
+ struct sbool_xor_spans_aa
+ {
+ enum
+ {
+ cover_shift = CoverShift,
+ cover_size = 1 << cover_shift,
+ cover_mask = cover_size - 1,
+ cover_full = cover_mask
+ };
+
+
+ void operator () (const typename Scanline1::const_iterator& span1,
+ const typename Scanline2::const_iterator& span2,
+ int x, unsigned len,
+ Scanline& sl) const
+ {
+ unsigned cover;
+ const typename Scanline1::cover_type* covers1;
+ const typename Scanline2::cover_type* covers2;
+
+ // Calculate the operation code and choose the
+ // proper combination algorithm.
+ // 0 = Both spans are of AA type
+ // 1 = span1 is solid, span2 is AA
+ // 2 = span1 is AA, span2 is solid
+ // 3 = Both spans are of solid type
+ //-----------------
+ switch((span1->len < 0) | ((span2->len < 0) << 1))
+ {
+ case 0: // Both are AA spans
+ covers1 = span1->covers;
+ covers2 = span2->covers;
+ if(span1->x < x) covers1 += x - span1->x;
+ if(span2->x < x) covers2 += x - span2->x;
+ do
+ {
+ cover = XorFormula::calculate(*covers1++, *covers2++);
+ if(cover) sl.add_cell(x, cover);
+ ++x;
+ }
+ while(--len);
+ break;
+
+ case 1: // span1 is solid, span2 is AA
+ covers2 = span2->covers;
+ if(span2->x < x) covers2 += x - span2->x;
+ do
+ {
+ cover = XorFormula::calculate(*(span1->covers), *covers2++);
+ if(cover) sl.add_cell(x, cover);
+ ++x;
+ }
+ while(--len);
+ break;
+
+ case 2: // span1 is AA, span2 is solid
+ covers1 = span1->covers;
+ if(span1->x < x) covers1 += x - span1->x;
+ do
+ {
+ cover = XorFormula::calculate(*covers1++, *(span2->covers));
+ if(cover) sl.add_cell(x, cover);
+ ++x;
+ }
+ while(--len);
+ break;
+
+ case 3: // Both are solid spans
+ cover = XorFormula::calculate(*(span1->covers), *(span2->covers));
+ if(cover) sl.add_span(x, len, cover);
+ break;
+
+ }
+ }
+ };
+
+
+
+
+
+ //-----------------------------------------------sbool_subtract_spans_aa
+ // Functor.
+ // Unite two spans preserving the anti-aliasing information.
+ // The result is added to the "sl" scanline.
+ //------------------
+ template<class Scanline1,
+ class Scanline2,
+ class Scanline,
+ unsigned CoverShift = cover_shift>
+ struct sbool_subtract_spans_aa
+ {
+ enum
+ {
+ cover_shift = CoverShift,
+ cover_size = 1 << cover_shift,
+ cover_mask = cover_size - 1,
+ cover_full = cover_mask
+ };
+
+
+ void operator () (const typename Scanline1::const_iterator& span1,
+ const typename Scanline2::const_iterator& span2,
+ int x, unsigned len,
+ Scanline& sl) const
+ {
+ unsigned cover;
+ const typename Scanline1::cover_type* covers1;
+ const typename Scanline2::cover_type* covers2;
+
+ // Calculate the operation code and choose the
+ // proper combination algorithm.
+ // 0 = Both spans are of AA type
+ // 1 = span1 is solid, span2 is AA
+ // 2 = span1 is AA, span2 is solid
+ // 3 = Both spans are of solid type
+ //-----------------
+ switch((span1->len < 0) | ((span2->len < 0) << 1))
+ {
+ case 0: // Both are AA spans
+ covers1 = span1->covers;
+ covers2 = span2->covers;
+ if(span1->x < x) covers1 += x - span1->x;
+ if(span2->x < x) covers2 += x - span2->x;
+ do
+ {
+ cover = *covers1++ * (cover_mask - *covers2++);
+ if(cover)
+ {
+ sl.add_cell(x,
+ (cover == cover_full * cover_full) ?
+ cover_full :
+ (cover >> cover_shift));
+ }
+ ++x;
+ }
+ while(--len);
+ break;
+
+ case 1: // span1 is solid, span2 is AA
+ covers2 = span2->covers;
+ if(span2->x < x) covers2 += x - span2->x;
+ do
+ {
+ cover = *(span1->covers) * (cover_mask - *covers2++);
+ if(cover)
+ {
+ sl.add_cell(x,
+ (cover == cover_full * cover_full) ?
+ cover_full :
+ (cover >> cover_shift));
+ }
+ ++x;
+ }
+ while(--len);
+ break;
+
+ case 2: // span1 is AA, span2 is solid
+ covers1 = span1->covers;
+ if(span1->x < x) covers1 += x - span1->x;
+ if(*(span2->covers) != cover_full)
+ {
+ do
+ {
+ cover = *covers1++ * (cover_mask - *(span2->covers));
+ if(cover)
+ {
+ sl.add_cell(x,
+ (cover == cover_full * cover_full) ?
+ cover_full :
+ (cover >> cover_shift));
+ }
+ ++x;
+ }
+ while(--len);
+ }
+ break;
+
+ case 3: // Both are solid spans
+ cover = *(span1->covers) * (cover_mask - *(span2->covers));
+ if(cover)
+ {
+ sl.add_span(x, len,
+ (cover == cover_full * cover_full) ?
+ cover_full :
+ (cover >> cover_shift));
+ }
+ break;
+ }
+ }
+ };
+
+
+
+
+
+
+ //--------------------------------------------sbool_add_spans_and_render
+ template<class Scanline1,
+ class Scanline,
+ class Renderer,
+ class AddSpanFunctor>
+ void sbool_add_spans_and_render(const Scanline1& sl1,
+ Scanline& sl,
+ Renderer& ren,
+ AddSpanFunctor add_span)
+ {
+ sl.reset_spans();
+ typename Scanline::const_iterator span = sl1.begin();
+ unsigned num_spans = sl1.num_spans();
+ do
+ {
+ add_span(span, span->x, abs((int)span->len), sl);
+ ++span;
+ }
+ while(--num_spans);
+ sl.finalize(sl1.y());
+ ren.render(sl);
+ }
+
+
+
+
+
+
+
+ //---------------------------------------------sbool_intersect_scanlines
+ // Intersect two scanlines, "sl1" and "sl2" and generate a new "sl" one.
+ // The combine_spans functor can be of type sbool_combine_spans_bin or
+ // sbool_intersect_spans_aa. First is a general functor to combine
+ // two spans without Anti-Aliasing, the second preserves the AA
+ // information, but works slower
+ //
+ template<class Scanline1,
+ class Scanline2,
+ class Scanline,
+ class CombineSpansFunctor>
+ void sbool_intersect_scanlines(const Scanline1& sl1,
+ const Scanline2& sl2,
+ Scanline& sl,
+ CombineSpansFunctor combine_spans)
+ {
+ sl.reset_spans();
+
+ unsigned num1 = sl1.num_spans();
+ if(num1 == 0) return;
+
+ unsigned num2 = sl2.num_spans();
+ if(num2 == 0) return;
+
+ typename Scanline::const_iterator span1 = sl1.begin();
+ typename Scanline::const_iterator span2 = sl2.begin();
+
+ while(num1 && num2)
+ {
+ int xb1 = span1->x;
+ int xb2 = span2->x;
+ int xe1 = xb1 + abs((int)span1->len) - 1;
+ int xe2 = xb2 + abs((int)span2->len) - 1;
+
+ // Determine what spans we should advance in the next step
+ // The span with the least ending X should be advanced
+ // advance_both is just an optimization when we ending
+ // coordinates are the same and we can advance both
+ //--------------
+ bool advance_span1 = xe1 < xe2;
+ bool advance_both = xe1 == xe2;
+
+ // Find the intersection of the spans
+ // and check if they intersect
+ //--------------
+ if(xb1 < xb2) xb1 = xb2;
+ if(xe1 > xe2) xe1 = xe2;
+ if(xb1 <= xe1)
+ {
+ combine_spans(span1, span2, xb1, xe1 - xb1 + 1, sl);
+ }
+
+ // Advance the spans
+ //--------------
+ if(advance_both)
+ {
+ --num1;
+ --num2;
+ ++span1;
+ ++span2;
+ }
+ else
+ {
+ if(advance_span1)
+ {
+ --num1;
+ ++span1;
+ }
+ else
+ {
+ --num2;
+ ++span2;
+ }
+ }
+ }
+ }
+
+
+
+
+
+
+
+
+ //------------------------------------------------sbool_intersect_shapes
+ // Intersect the scanline shapes. Here the "Scanline Generator"
+ // abstraction is used. ScanlineGen1 and ScanlineGen2 are
+ // the generators, and can be of type rasterizer_scanline_aa<>.
+ // There function requires three scanline containers that can be of
+ // different types.
+ // "sl1" and "sl2" are used to retrieve scanlines from the generators,
+ // "sl" is ised as the resulting scanline to render it.
+ // The external "sl1" and "sl2" are used only for the sake of
+ // optimization and reusing of the scanline objects.
+ // the function calls sbool_intersect_scanlines with CombineSpansFunctor
+ // as the last argument. See sbool_intersect_scanlines for details.
+ //----------
+ template<class ScanlineGen1,
+ class ScanlineGen2,
+ class Scanline1,
+ class Scanline2,
+ class Scanline,
+ class Renderer,
+ class CombineSpansFunctor>
+ void sbool_intersect_shapes(ScanlineGen1& sg1, ScanlineGen2& sg2,
+ Scanline1& sl1, Scanline2& sl2,
+ Scanline& sl, Renderer& ren,
+ CombineSpansFunctor combine_spans)
+ {
+ // Prepare the scanline generators.
+ // If anyone of them doesn't contain
+ // any scanlines, then return.
+ //-----------------
+ if(!sg1.rewind_scanlines()) return;
+ if(!sg2.rewind_scanlines()) return;
+
+ // Get the bounding boxes
+ //----------------
+ rect r1(sg1.min_x(), sg1.min_y(), sg1.max_x(), sg1.max_y());
+ rect r2(sg2.min_x(), sg2.min_y(), sg2.max_x(), sg2.max_y());
+
+ // Calculate the intersection of the bounding
+ // boxes and return if they don't intersect.
+ //-----------------
+ rect ir = intersect_rectangles(r1, r2);
+ if(!ir.is_valid()) return;
+
+ // Reset the scanlines and get two first ones
+ //-----------------
+ sl.reset(ir.x1, ir.x2);
+ sl1.reset(sg1.min_x(), sg1.max_x());
+ sl2.reset(sg2.min_x(), sg2.max_x());
+ if(!sg1.sweep_scanline(sl1)) return;
+ if(!sg2.sweep_scanline(sl2)) return;
+
+ ren.prepare(unsigned(ir.x2 - ir.x1 + 2));
+
+ // The main loop
+ // Here we synchronize the scanlines with
+ // the same Y coordinate, ignoring all other ones.
+ // Only scanlines having the same Y-coordinate
+ // are to be combined.
+ //-----------------
+ for(;;)
+ {
+ while(sl1.y() < sl2.y())
+ {
+ if(!sg1.sweep_scanline(sl1)) return;
+ }
+ while(sl2.y() < sl1.y())
+ {
+ if(!sg2.sweep_scanline(sl2)) return;
+ }
+
+ if(sl1.y() == sl2.y())
+ {
+ // The Y coordinates are the same.
+ // Combine the scanlines, render if they contain any spans,
+ // and advance both generators to the next scanlines
+ //----------------------
+ sbool_intersect_scanlines(sl1, sl2, sl, combine_spans);
+ if(sl.num_spans())
+ {
+ sl.finalize(sl1.y());
+ ren.render(sl);
+ }
+ if(!sg1.sweep_scanline(sl1)) return;
+ if(!sg2.sweep_scanline(sl2)) return;
+ }
+ }
+ }
+
+
+
+
+
+
+
+ //-------------------------------------------------sbool_unite_scanlines
+ // Unite two scanlines, "sl1" and "sl2" and generate a new "sl" one.
+ // The combine_spans functor can be of type sbool_combine_spans_bin or
+ // sbool_intersect_spans_aa. First is a general functor to combine
+ // two spans without Anti-Aliasing, the second preserves the AA
+ // information, but works slower
+ //
+ template<class Scanline1,
+ class Scanline2,
+ class Scanline,
+ class AddSpanFunctor1,
+ class AddSpanFunctor2,
+ class CombineSpansFunctor>
+ void sbool_unite_scanlines(const Scanline1& sl1,
+ const Scanline2& sl2,
+ Scanline& sl,
+ AddSpanFunctor1 add_span1,
+ AddSpanFunctor2 add_span2,
+ CombineSpansFunctor combine_spans)
+ {
+ sl.reset_spans();
+
+ unsigned num1 = sl1.num_spans();
+ unsigned num2 = sl2.num_spans();
+
+ typename Scanline::const_iterator span1;
+ typename Scanline::const_iterator span2;
+
+ enum { invalid_b = 0xFFFFFFF, invalid_e = invalid_b - 1 };
+
+ // Initialize the spans as invalid
+ //---------------
+ int xb1 = invalid_b;
+ int xb2 = invalid_b;
+ int xe1 = invalid_e;
+ int xe2 = invalid_e;
+
+ // Initialize span1 if there are spans
+ //---------------
+ if(num1)
+ {
+ span1 = sl1.begin();
+ xb1 = span1->x;
+ xe1 = xb1 + abs((int)span1->len) - 1;
+ --num1;
+ }
+
+ // Initialize span2 if there are spans
+ //---------------
+ if(num2)
+ {
+ span2 = sl2.begin();
+ xb2 = span2->x;
+ xe2 = xb2 + abs((int)span2->len) - 1;
+ --num2;
+ }
+
+
+ for(;;)
+ {
+ // Retrieve a new span1 if it's invalid
+ //----------------
+ if(num1 && xb1 > xe1)
+ {
+ --num1;
+ ++span1;
+ xb1 = span1->x;
+ xe1 = xb1 + abs((int)span1->len) - 1;
+ }
+
+ // Retrieve a new span2 if it's invalid
+ //----------------
+ if(num2 && xb2 > xe2)
+ {
+ --num2;
+ ++span2;
+ xb2 = span2->x;
+ xe2 = xb2 + abs((int)span2->len) - 1;
+ }
+
+ if(xb1 > xe1 && xb2 > xe2) break;
+
+ // Calculate the intersection
+ //----------------
+ int xb = xb1;
+ int xe = xe1;
+ if(xb < xb2) xb = xb2;
+ if(xe > xe2) xe = xe2;
+ int len = xe - xb + 1; // The length of the intersection
+ if(len > 0)
+ {
+ // The spans intersect,
+ // add the beginning of the span
+ //----------------
+ if(xb1 < xb2)
+ {
+ add_span1(span1, xb1, xb2 - xb1, sl);
+ xb1 = xb2;
+ }
+ else
+ if(xb2 < xb1)
+ {
+ add_span2(span2, xb2, xb1 - xb2, sl);
+ xb2 = xb1;
+ }
+
+ // Add the combination part of the spans
+ //----------------
+ combine_spans(span1, span2, xb, len, sl);
+
+
+ // Invalidate the fully processed span or both
+ //----------------
+ if(xe1 < xe2)
+ {
+ // Invalidate span1 and eat
+ // the processed part of span2
+ //--------------
+ xb1 = invalid_b;
+ xe1 = invalid_e;
+ xb2 += len;
+ }
+ else
+ if(xe2 < xe1)
+ {
+ // Invalidate span2 and eat
+ // the processed part of span1
+ //--------------
+ xb2 = invalid_b;
+ xe2 = invalid_e;
+ xb1 += len;
+ }
+ else
+ {
+ xb1 = invalid_b; // Invalidate both
+ xb2 = invalid_b;
+ xe1 = invalid_e;
+ xe2 = invalid_e;
+ }
+ }
+ else
+ {
+ // The spans do not intersect
+ //--------------
+ if(xb1 < xb2)
+ {
+ // Advance span1
+ //---------------
+ if(xb1 <= xe1)
+ {
+ add_span1(span1, xb1, xe1 - xb1 + 1, sl);
+ }
+ xb1 = invalid_b; // Invalidate
+ xe1 = invalid_e;
+ }
+ else
+ {
+ // Advance span2
+ //---------------
+ if(xb2 <= xe2)
+ {
+ add_span2(span2, xb2, xe2 - xb2 + 1, sl);
+ }
+ xb2 = invalid_b; // Invalidate
+ xe2 = invalid_e;
+ }
+ }
+ }
+ }
+
+
+
+
+ //----------------------------------------------------sbool_unite_shapes
+ // Unite the scanline shapes. Here the "Scanline Generator"
+ // abstraction is used. ScanlineGen1 and ScanlineGen2 are
+ // the generators, and can be of type rasterizer_scanline_aa<>.
+ // There function requires three scanline containers that can be
+ // of different type.
+ // "sl1" and "sl2" are used to retrieve scanlines from the generators,
+ // "sl" is ised as the resulting scanline to render it.
+ // The external "sl1" and "sl2" are used only for the sake of
+ // optimization and reusing of the scanline objects.
+ // the function calls sbool_unite_scanlines with CombineSpansFunctor
+ // as the last argument. See sbool_unite_scanlines for details.
+ //----------
+ template<class ScanlineGen1,
+ class ScanlineGen2,
+ class Scanline1,
+ class Scanline2,
+ class Scanline,
+ class Renderer,
+ class AddSpanFunctor1,
+ class AddSpanFunctor2,
+ class CombineSpansFunctor>
+ void sbool_unite_shapes(ScanlineGen1& sg1, ScanlineGen2& sg2,
+ Scanline1& sl1, Scanline2& sl2,
+ Scanline& sl, Renderer& ren,
+ AddSpanFunctor1 add_span1,
+ AddSpanFunctor2 add_span2,
+ CombineSpansFunctor combine_spans)
+ {
+ // Prepare the scanline generators.
+ // If anyone of them doesn't contain
+ // any scanlines, then return.
+ //-----------------
+ bool flag1 = sg1.rewind_scanlines();
+ bool flag2 = sg2.rewind_scanlines();
+ if(!flag1 && !flag2) return;
+
+ // Get the bounding boxes
+ //----------------
+ rect r1(sg1.min_x(), sg1.min_y(), sg1.max_x(), sg1.max_y());
+ rect r2(sg2.min_x(), sg2.min_y(), sg2.max_x(), sg2.max_y());
+
+ // Calculate the union of the bounding boxes
+ //-----------------
+ rect ur = unite_rectangles(r1, r2);
+ if(!ur.is_valid()) return;
+
+ ren.prepare(unsigned(ur.x2 - ur.x2 + 2));
+
+ // Reset the scanlines and get two first ones
+ //-----------------
+ sl.reset(ur.x1, ur.x2);
+ if(flag1)
+ {
+ sl1.reset(sg1.min_x(), sg1.max_x());
+ flag1 = sg1.sweep_scanline(sl1);
+ }
+
+ if(flag2)
+ {
+ sl2.reset(sg2.min_x(), sg2.max_x());
+ flag2 = sg2.sweep_scanline(sl2);
+ }
+
+ // The main loop
+ // Here we synchronize the scanlines with
+ // the same Y coordinate.
+ //-----------------
+ while(flag1 || flag2)
+ {
+ if(flag1 && flag2)
+ {
+ if(sl1.y() == sl2.y())
+ {
+ // The Y coordinates are the same.
+ // Combine the scanlines, render if they contain any spans,
+ // and advance both generators to the next scanlines
+ //----------------------
+ sbool_unite_scanlines(sl1, sl2, sl,
+ add_span1, add_span2, combine_spans);
+ if(sl.num_spans())
+ {
+ sl.finalize(sl1.y());
+ ren.render(sl);
+ }
+ flag1 = sg1.sweep_scanline(sl1);
+ flag2 = sg2.sweep_scanline(sl2);
+ }
+ else
+ {
+ if(sl1.y() < sl2.y())
+ {
+ sbool_add_spans_and_render(sl1, sl, ren, add_span1);
+ flag1 = sg1.sweep_scanline(sl1);
+ }
+ else
+ {
+ sbool_add_spans_and_render(sl2, sl, ren, add_span2);
+ flag2 = sg2.sweep_scanline(sl2);
+ }
+ }
+ }
+ else
+ {
+ if(flag1)
+ {
+ sbool_add_spans_and_render(sl1, sl, ren, add_span1);
+ flag1 = sg1.sweep_scanline(sl1);
+ }
+ if(flag2)
+ {
+ sbool_add_spans_and_render(sl2, sl, ren, add_span2);
+ flag2 = sg2.sweep_scanline(sl2);
+ }
+ }
+ }
+ }
+
+
+
+
+
+
+
+
+ //-------------------------------------------------sbool_subtract_shapes
+ // Subtract the scanline shapes, "sg1-sg2". Here the "Scanline Generator"
+ // abstraction is used. ScanlineGen1 and ScanlineGen2 are
+ // the generators, and can be of type rasterizer_scanline_aa<>.
+ // There function requires three scanline containers that can be of
+ // different types.
+ // "sl1" and "sl2" are used to retrieve scanlines from the generators,
+ // "sl" is ised as the resulting scanline to render it.
+ // The external "sl1" and "sl2" are used only for the sake of
+ // optimization and reusing of the scanline objects.
+ // the function calls sbool_intersect_scanlines with CombineSpansFunctor
+ // as the last argument. See combine_scanlines_sub for details.
+ //----------
+ template<class ScanlineGen1,
+ class ScanlineGen2,
+ class Scanline1,
+ class Scanline2,
+ class Scanline,
+ class Renderer,
+ class AddSpanFunctor1,
+ class CombineSpansFunctor>
+ void sbool_subtract_shapes(ScanlineGen1& sg1, ScanlineGen2& sg2,
+ Scanline1& sl1, Scanline2& sl2,
+ Scanline& sl, Renderer& ren,
+ AddSpanFunctor1 add_span1,
+ CombineSpansFunctor combine_spans)
+ {
+ // Prepare the scanline generators.
+ // Here "sg1" is master, "sg2" is slave.
+ //-----------------
+ if(!sg1.rewind_scanlines()) return;
+ bool flag2 = sg2.rewind_scanlines();
+
+ // Get the bounding box
+ //----------------
+ rect r1(sg1.min_x(), sg1.min_y(), sg1.max_x(), sg1.max_y());
+
+ // Reset the scanlines and get two first ones
+ //-----------------
+ sl.reset(sg1.min_x(), sg1.max_x());
+ sl1.reset(sg1.min_x(), sg1.max_x());
+ sl2.reset(sg2.min_x(), sg2.max_x());
+ if(!sg1.sweep_scanline(sl1)) return;
+
+ if(flag2) flag2 = sg2.sweep_scanline(sl2);
+
+ ren.prepare(unsigned(sg1.max_x() - sg1.min_x() + 2));
+
+ // A fake span2 processor
+ sbool_add_span_empty<Scanline1, Scanline> add_span2;
+
+ // The main loop
+ // Here we synchronize the scanlines with
+ // the same Y coordinate, ignoring all other ones.
+ // Only scanlines having the same Y-coordinate
+ // are to be combined.
+ //-----------------
+ bool flag1 = true;
+ do
+ {
+ // Synchronize "slave" with "master"
+ //-----------------
+ while(flag2 && sl2.y() < sl1.y())
+ {
+ flag2 = sg2.sweep_scanline(sl2);
+ }
+
+
+ if(flag2 && sl2.y() == sl1.y())
+ {
+ // The Y coordinates are the same.
+ // Combine the scanlines and render if they contain any spans.
+ //----------------------
+ sbool_unite_scanlines(sl1, sl2, sl, add_span1, add_span2, combine_spans);
+ if(sl.num_spans())
+ {
+ sl.finalize(sl1.y());
+ ren.render(sl);
+ }
+ }
+ else
+ {
+ sbool_add_spans_and_render(sl1, sl, ren, add_span1);
+ }
+
+ // Advance the "master"
+ flag1 = sg1.sweep_scanline(sl1);
+ }
+ while(flag1);
+ }
+
+
+
+
+
+
+
+ //---------------------------------------------sbool_intersect_shapes_aa
+ // Intersect two anti-aliased scanline shapes.
+ // Here the "Scanline Generator" abstraction is used.
+ // ScanlineGen1 and ScanlineGen2 are the generators, and can be of
+ // type rasterizer_scanline_aa<>. There function requires three
+ // scanline containers that can be of different types.
+ // "sl1" and "sl2" are used to retrieve scanlines from the generators,
+ // "sl" is ised as the resulting scanline to render it.
+ // The external "sl1" and "sl2" are used only for the sake of
+ // optimization and reusing of the scanline objects.
+ //----------
+ template<class ScanlineGen1,
+ class ScanlineGen2,
+ class Scanline1,
+ class Scanline2,
+ class Scanline,
+ class Renderer>
+ void sbool_intersect_shapes_aa(ScanlineGen1& sg1, ScanlineGen2& sg2,
+ Scanline1& sl1, Scanline2& sl2,
+ Scanline& sl, Renderer& ren)
+ {
+ sbool_intersect_spans_aa<Scanline1, Scanline2, Scanline> combine_functor;
+ sbool_intersect_shapes(sg1, sg2, sl1, sl2, sl, ren, combine_functor);
+ }
+
+
+
+
+
+ //--------------------------------------------sbool_intersect_shapes_bin
+ // Intersect two binary scanline shapes (without anti-aliasing).
+ // See intersect_shapes_aa for more comments
+ //----------
+ template<class ScanlineGen1,
+ class ScanlineGen2,
+ class Scanline1,
+ class Scanline2,
+ class Scanline,
+ class Renderer>
+ void sbool_intersect_shapes_bin(ScanlineGen1& sg1, ScanlineGen2& sg2,
+ Scanline1& sl1, Scanline2& sl2,
+ Scanline& sl, Renderer& ren)
+ {
+ sbool_combine_spans_bin<Scanline1, Scanline2, Scanline> combine_functor;
+ sbool_intersect_shapes(sg1, sg2, sl1, sl2, sl, ren, combine_functor);
+ }
+
+
+
+
+
+ //-------------------------------------------------sbool_unite_shapes_aa
+ // Unite two anti-aliased scanline shapes
+ // See intersect_shapes_aa for more comments
+ //----------
+ template<class ScanlineGen1,
+ class ScanlineGen2,
+ class Scanline1,
+ class Scanline2,
+ class Scanline,
+ class Renderer>
+ void sbool_unite_shapes_aa(ScanlineGen1& sg1, ScanlineGen2& sg2,
+ Scanline1& sl1, Scanline2& sl2,
+ Scanline& sl, Renderer& ren)
+ {
+ sbool_add_span_aa<Scanline1, Scanline> add_functor1;
+ sbool_add_span_aa<Scanline2, Scanline> add_functor2;
+ sbool_unite_spans_aa<Scanline1, Scanline2, Scanline> combine_functor;
+ sbool_unite_shapes(sg1, sg2, sl1, sl2, sl, ren,
+ add_functor1, add_functor2, combine_functor);
+ }
+
+
+
+
+
+ //------------------------------------------------sbool_unite_shapes_bin
+ // Unite two binary scanline shapes (without anti-aliasing).
+ // See intersect_shapes_aa for more comments
+ //----------
+ template<class ScanlineGen1,
+ class ScanlineGen2,
+ class Scanline1,
+ class Scanline2,
+ class Scanline,
+ class Renderer>
+ void sbool_unite_shapes_bin(ScanlineGen1& sg1, ScanlineGen2& sg2,
+ Scanline1& sl1, Scanline2& sl2,
+ Scanline& sl, Renderer& ren)
+ {
+ sbool_add_span_bin<Scanline1, Scanline> add_functor1;
+ sbool_add_span_bin<Scanline2, Scanline> add_functor2;
+ sbool_combine_spans_bin<Scanline1, Scanline2, Scanline> combine_functor;
+ sbool_unite_shapes(sg1, sg2, sl1, sl2, sl, ren,
+ add_functor1, add_functor2, combine_functor);
+ }
+
+
+
+
+
+
+
+
+
+ //---------------------------------------------------sbool_xor_shapes_aa
+ // Apply eXclusive OR to two anti-aliased scanline shapes. There's
+ // a modified "Linear" XOR used instead of classical "Saddle" one.
+ // The reason is to have the result absolutely conststent with what
+ // the scanline rasterizer produces.
+ // See intersect_shapes_aa for more comments
+ //----------
+ template<class ScanlineGen1,
+ class ScanlineGen2,
+ class Scanline1,
+ class Scanline2,
+ class Scanline,
+ class Renderer>
+ void sbool_xor_shapes_aa(ScanlineGen1& sg1, ScanlineGen2& sg2,
+ Scanline1& sl1, Scanline2& sl2,
+ Scanline& sl, Renderer& ren)
+ {
+ sbool_add_span_aa<Scanline1, Scanline> add_functor1;
+ sbool_add_span_aa<Scanline2, Scanline> add_functor2;
+ sbool_xor_spans_aa<Scanline1, Scanline2, Scanline,
+ sbool_xor_formula_linear<> > combine_functor;
+ sbool_unite_shapes(sg1, sg2, sl1, sl2, sl, ren,
+ add_functor1, add_functor2, combine_functor);
+ }
+
+
+
+ //------------------------------------------sbool_xor_shapes_saddle_aa
+ // Apply eXclusive OR to two anti-aliased scanline shapes.
+ // There's the classical "Saddle" used to calculate the
+ // Anti-Aliasing values, that is:
+ // a XOR b : 1-((1-a+a*b)*(1-b+a*b))
+ // See intersect_shapes_aa for more comments
+ //----------
+ template<class ScanlineGen1,
+ class ScanlineGen2,
+ class Scanline1,
+ class Scanline2,
+ class Scanline,
+ class Renderer>
+ void sbool_xor_shapes_saddle_aa(ScanlineGen1& sg1, ScanlineGen2& sg2,
+ Scanline1& sl1, Scanline2& sl2,
+ Scanline& sl, Renderer& ren)
+ {
+ sbool_add_span_aa<Scanline1, Scanline> add_functor1;
+ sbool_add_span_aa<Scanline2, Scanline> add_functor2;
+ sbool_xor_spans_aa<Scanline1,
+ Scanline2,
+ Scanline,
+ sbool_xor_formula_saddle<> > combine_functor;
+ sbool_unite_shapes(sg1, sg2, sl1, sl2, sl, ren,
+ add_functor1, add_functor2, combine_functor);
+ }
+
+
+ //--------------------------------------sbool_xor_shapes_abs_diff_aa
+ // Apply eXclusive OR to two anti-aliased scanline shapes.
+ // There's the absolute difference used to calculate
+ // Anti-Aliasing values, that is:
+ // a XOR b : abs(a-b)
+ // See intersect_shapes_aa for more comments
+ //----------
+ template<class ScanlineGen1,
+ class ScanlineGen2,
+ class Scanline1,
+ class Scanline2,
+ class Scanline,
+ class Renderer>
+ void sbool_xor_shapes_abs_diff_aa(ScanlineGen1& sg1, ScanlineGen2& sg2,
+ Scanline1& sl1, Scanline2& sl2,
+ Scanline& sl, Renderer& ren)
+ {
+ sbool_add_span_aa<Scanline1, Scanline> add_functor1;
+ sbool_add_span_aa<Scanline2, Scanline> add_functor2;
+ sbool_xor_spans_aa<Scanline1,
+ Scanline2,
+ Scanline,
+ sbool_xor_formula_abs_diff> combine_functor;
+ sbool_unite_shapes(sg1, sg2, sl1, sl2, sl, ren,
+ add_functor1, add_functor2, combine_functor);
+ }
+
+
+
+ //--------------------------------------------------sbool_xor_shapes_bin
+ // Apply eXclusive OR to two binary scanline shapes (without anti-aliasing).
+ // See intersect_shapes_aa for more comments
+ //----------
+ template<class ScanlineGen1,
+ class ScanlineGen2,
+ class Scanline1,
+ class Scanline2,
+ class Scanline,
+ class Renderer>
+ void sbool_xor_shapes_bin(ScanlineGen1& sg1, ScanlineGen2& sg2,
+ Scanline1& sl1, Scanline2& sl2,
+ Scanline& sl, Renderer& ren)
+ {
+ sbool_add_span_bin<Scanline1, Scanline> add_functor1;
+ sbool_add_span_bin<Scanline2, Scanline> add_functor2;
+ sbool_combine_spans_empty<Scanline1, Scanline2, Scanline> combine_functor;
+ sbool_unite_shapes(sg1, sg2, sl1, sl2, sl, ren,
+ add_functor1, add_functor2, combine_functor);
+ }
+
+
+
+
+
+
+ //----------------------------------------------sbool_subtract_shapes_aa
+ // Subtract shapes "sg1-sg2" with anti-aliasing
+ // See intersect_shapes_aa for more comments
+ //----------
+ template<class ScanlineGen1,
+ class ScanlineGen2,
+ class Scanline1,
+ class Scanline2,
+ class Scanline,
+ class Renderer>
+ void sbool_subtract_shapes_aa(ScanlineGen1& sg1, ScanlineGen2& sg2,
+ Scanline1& sl1, Scanline2& sl2,
+ Scanline& sl, Renderer& ren)
+ {
+ sbool_add_span_aa<Scanline1, Scanline> add_functor;
+ sbool_subtract_spans_aa<Scanline1, Scanline2, Scanline> combine_functor;
+ sbool_subtract_shapes(sg1, sg2, sl1, sl2, sl, ren,
+ add_functor, combine_functor);
+ }
+
+
+
+
+
+ //---------------------------------------------sbool_subtract_shapes_bin
+ // Subtract binary shapes "sg1-sg2" without anti-aliasing
+ // See intersect_shapes_aa for more comments
+ //----------
+ template<class ScanlineGen1,
+ class ScanlineGen2,
+ class Scanline1,
+ class Scanline2,
+ class Scanline,
+ class Renderer>
+ void sbool_subtract_shapes_bin(ScanlineGen1& sg1, ScanlineGen2& sg2,
+ Scanline1& sl1, Scanline2& sl2,
+ Scanline& sl, Renderer& ren)
+ {
+ sbool_add_span_bin<Scanline1, Scanline> add_functor;
+ sbool_combine_spans_empty<Scanline1, Scanline2, Scanline> combine_functor;
+ sbool_subtract_shapes(sg1, sg2, sl1, sl2, sl, ren,
+ add_functor, combine_functor);
+ }
+
+
+
+
+
+
+ //------------------------------------------------------------sbool_op_e
+ enum sbool_op_e
+ {
+ sbool_or, //----sbool_or
+ sbool_and, //----sbool_and
+ sbool_xor, //----sbool_xor
+ sbool_xor_saddle, //----sbool_xor_saddle
+ sbool_xor_abs_diff, //----sbool_xor_abs_diff
+ sbool_a_minus_b, //----sbool_a_minus_b
+ sbool_b_minus_a //----sbool_b_minus_a
+ };
+
+
+
+
+
+
+ //----------------------------------------------sbool_combine_shapes_bin
+ template<class ScanlineGen1,
+ class ScanlineGen2,
+ class Scanline1,
+ class Scanline2,
+ class Scanline,
+ class Renderer>
+ void sbool_combine_shapes_bin(sbool_op_e op,
+ ScanlineGen1& sg1, ScanlineGen2& sg2,
+ Scanline1& sl1, Scanline2& sl2,
+ Scanline& sl, Renderer& ren)
+ {
+ switch(op)
+ {
+ case sbool_or : sbool_unite_shapes_bin (sg1, sg2, sl1, sl2, sl, ren); break;
+ case sbool_and : sbool_intersect_shapes_bin(sg1, sg2, sl1, sl2, sl, ren); break;
+ case sbool_xor :
+ case sbool_xor_saddle :
+ case sbool_xor_abs_diff: sbool_xor_shapes_bin (sg1, sg2, sl1, sl2, sl, ren); break;
+ case sbool_a_minus_b : sbool_subtract_shapes_bin (sg1, sg2, sl1, sl2, sl, ren); break;
+ case sbool_b_minus_a : sbool_subtract_shapes_bin (sg2, sg1, sl2, sl1, sl, ren); break;
+ }
+ }
+
+
+
+
+ //-----------------------------------------------sbool_combine_shapes_aa
+ template<class ScanlineGen1,
+ class ScanlineGen2,
+ class Scanline1,
+ class Scanline2,
+ class Scanline,
+ class Renderer>
+ void sbool_combine_shapes_aa(sbool_op_e op,
+ ScanlineGen1& sg1, ScanlineGen2& sg2,
+ Scanline1& sl1, Scanline2& sl2,
+ Scanline& sl, Renderer& ren)
+ {
+ switch(op)
+ {
+ case sbool_or : sbool_unite_shapes_aa (sg1, sg2, sl1, sl2, sl, ren); break;
+ case sbool_and : sbool_intersect_shapes_aa (sg1, sg2, sl1, sl2, sl, ren); break;
+ case sbool_xor : sbool_xor_shapes_aa (sg1, sg2, sl1, sl2, sl, ren); break;
+ case sbool_xor_saddle : sbool_xor_shapes_saddle_aa (sg1, sg2, sl1, sl2, sl, ren); break;
+ case sbool_xor_abs_diff: sbool_xor_shapes_abs_diff_aa(sg1, sg2, sl1, sl2, sl, ren); break;
+ case sbool_a_minus_b : sbool_subtract_shapes_aa (sg1, sg2, sl1, sl2, sl, ren); break;
+ case sbool_b_minus_a : sbool_subtract_shapes_aa (sg2, sg1, sl2, sl1, sl, ren); break;
+ }
+ }
+
+}
+
+
+#endif
+
diff --git a/agg/inc/agg_scanline_p.h b/agg/inc/agg_scanline_p.h
new file mode 100755
index 000000000000..f217998578a1
--- /dev/null
+++ b/agg/inc/agg_scanline_p.h
@@ -0,0 +1,197 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Class scanline_p - a general purpose scanline container with packed spans.
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_SCANLINE_P_INCLUDED
+#define AGG_SCANLINE_P_INCLUDED
+
+#include "agg_basics.h"
+
+namespace agg
+{
+
+ //==============================================================scanline_p
+ //
+ // This is a general purpose scaline container which supports the interface
+ // used in the rasterizer::render(). See description of agg_scanline_u
+ // for details.
+ //
+ //------------------------------------------------------------------------
+ template<class T> class scanline_p
+ {
+ public:
+ typedef T cover_type;
+
+ struct span
+ {
+ int16 x;
+ int16 len; // If negative, it's a solid span, covers is valid
+ const T* covers;
+ };
+
+ typedef span* iterator;
+ typedef const span* const_iterator;
+
+ ~scanline_p()
+ {
+ delete [] m_spans;
+ delete [] m_covers;
+ }
+
+ scanline_p() :
+ m_max_len(0),
+ m_last_x(0x7FFFFFF0),
+ m_covers(0),
+ m_cover_ptr(0),
+ m_spans(0),
+ m_cur_span(0)
+ {
+ }
+
+ void reset(int min_x, int max_x);
+ void add_cell(int x, unsigned cover);
+ void add_cells(int x, unsigned len, const T* covers);
+ void add_span(int x, unsigned len, unsigned cover);
+ void finalize(int y_) { m_y = y_; }
+ void reset_spans();
+
+ int y() const { return m_y; }
+ unsigned num_spans() const { return unsigned(m_cur_span - m_spans); }
+ const_iterator begin() const { return m_spans + 1; }
+
+ private:
+ scanline_p(const scanline_p<T>&);
+ const scanline_p<T>& operator = (const scanline_p<T>&);
+
+ unsigned m_max_len;
+ int m_last_x;
+ int m_y;
+ T* m_covers;
+ T* m_cover_ptr;
+ span* m_spans;
+ span* m_cur_span;
+ };
+
+
+ //------------------------------------------------------------------------
+ template<class T>
+ void scanline_p<T>::reset(int min_x, int max_x)
+ {
+ unsigned max_len = max_x - min_x + 3;
+ if(max_len > m_max_len)
+ {
+ delete [] m_spans;
+ delete [] m_covers;
+ m_covers = new T [max_len];
+ m_spans = new span [max_len];
+ m_max_len = max_len;
+ }
+ m_last_x = 0x7FFFFFF0;
+ m_cover_ptr = m_covers;
+ m_cur_span = m_spans;
+ m_cur_span->len = 0;
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class T>
+ void scanline_p<T>::reset_spans()
+ {
+ m_last_x = 0x7FFFFFF0;
+ m_cover_ptr = m_covers;
+ m_cur_span = m_spans;
+ m_cur_span->len = 0;
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class T>
+ void scanline_p<T>::add_cell(int x, unsigned cover)
+ {
+ *m_cover_ptr = (T)cover;
+ if(x == m_last_x+1 && m_cur_span->len > 0)
+ {
+ m_cur_span->len++;
+ }
+ else
+ {
+ m_cur_span++;
+ m_cur_span->covers = m_cover_ptr;
+ m_cur_span->x = (int16)x;
+ m_cur_span->len = 1;
+ }
+ m_last_x = x;
+ m_cover_ptr++;
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class T>
+ void scanline_p<T>::add_cells(int x, unsigned len, const T* covers)
+ {
+ memcpy(m_cover_ptr, covers, len * sizeof(T));
+ if(x == m_last_x+1 && m_cur_span->len > 0)
+ {
+ m_cur_span->len += (int16)len;
+ }
+ else
+ {
+ m_cur_span++;
+ m_cur_span->covers = m_cover_ptr;
+ m_cur_span->x = (int16)x;
+ m_cur_span->len = (int16)len;
+ }
+ m_cover_ptr += len;
+ m_last_x = x + len - 1;
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class T>
+ void scanline_p<T>::add_span(int x, unsigned len, unsigned cover)
+ {
+ if(x == m_last_x+1 &&
+ m_cur_span->len < 0 &&
+ cover == *m_cur_span->covers)
+ {
+ m_cur_span->len -= (int16)len;
+ }
+ else
+ {
+ *m_cover_ptr = (T)cover;
+ m_cur_span++;
+ m_cur_span->covers = m_cover_ptr++;
+ m_cur_span->x = (int16)x;
+ m_cur_span->len = -((int16)len);
+ }
+ m_last_x = x + len - 1;
+ }
+
+
+ //=============================================================scanline_p8
+ typedef scanline_p<int8u> scanline_p8;
+
+ //============================================================scanline_p16
+ typedef scanline_p<int16u> scanline_p16;
+
+ //============================================================scanline_p32
+ typedef scanline_p<int32u> scanline_p32;
+}
+
+
+#endif
+
diff --git a/agg/inc/agg_scanline_storage_aa.h b/agg/inc/agg_scanline_storage_aa.h
new file mode 100755
index 000000000000..3d8b5b946cf9
--- /dev/null
+++ b/agg/inc/agg_scanline_storage_aa.h
@@ -0,0 +1,796 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_SCANLINE_STORAGE_AA_INCLUDED
+#define AGG_SCANLINE_STORAGE_AA_INCLUDED
+
+#include <string.h>
+#include <stdlib.h>
+#include <math.h>
+#include "agg_array.h"
+#include "agg_render_scanlines.h"
+
+
+namespace agg
+{
+
+ //----------------------------------------------scanline_cell_storage
+ template<class T> class scanline_cell_storage
+ {
+ struct extra_span
+ {
+ unsigned len;
+ T* ptr;
+ };
+
+ public:
+ typedef T value_type;
+
+ //---------------------------------------------------------------
+ ~scanline_cell_storage()
+ {
+ remove_all();
+ }
+
+ //---------------------------------------------------------------
+ scanline_cell_storage() :
+ m_cells(128-2),
+ m_extra_storage()
+ {}
+
+
+ // Copying
+ //---------------------------------------------------------------
+ scanline_cell_storage(const scanline_cell_storage<T>& v) :
+ m_cells(v.m_cells),
+ m_extra_storage()
+ {
+ copy_extra_storage(v);
+ }
+
+ //---------------------------------------------------------------
+ const scanline_cell_storage<T>&
+ operator = (const scanline_cell_storage<T>& v)
+ {
+ remove_all();
+ m_cells = v.m_cells;
+ copy_extra_storage(v);
+ return *this;
+ }
+
+ //---------------------------------------------------------------
+ void remove_all()
+ {
+ int i;
+ for(i = m_extra_storage.size()-1; i >= 0; --i)
+ {
+ delete [] m_extra_storage[(unsigned)i].ptr;
+ }
+ m_extra_storage.remove_all();
+ m_cells.remove_all();
+ }
+
+ //---------------------------------------------------------------
+ int add_cells(const T* cells, unsigned num_cells)
+ {
+ int idx = m_cells.allocate_continuous_block(num_cells);
+ if(idx >= 0)
+ {
+ T* ptr = &m_cells[idx];
+ memcpy(ptr, cells, sizeof(T) * num_cells);
+ return idx;
+ }
+ extra_span s;
+ s.len = num_cells;
+ s.ptr = new T [num_cells];
+ memcpy(s.ptr, cells, sizeof(T) * num_cells);
+ m_extra_storage.add(s);
+ return -int(m_extra_storage.size());
+ }
+
+ //---------------------------------------------------------------
+ const T* operator [] (int idx) const
+ {
+ if(idx >= 0)
+ {
+ if((unsigned)idx >= m_cells.size()) return 0;
+ return &m_cells[(unsigned)idx];
+ }
+ unsigned i = unsigned(-idx - 1);
+ if(i >= m_extra_storage.size()) return 0;
+ return m_extra_storage[i].ptr;
+ }
+
+ //---------------------------------------------------------------
+ T* operator [] (int idx)
+ {
+ if(idx >= 0)
+ {
+ if((unsigned)idx >= m_cells.size()) return 0;
+ return &m_cells[(unsigned)idx];
+ }
+ unsigned i = unsigned(-idx - 1);
+ if(i >= m_extra_storage.size()) return 0;
+ return m_extra_storage[i].ptr;
+ }
+
+ private:
+ void copy_extra_storage(const scanline_cell_storage<T>& v)
+ {
+ unsigned i;
+ for(i = 0; i < v.m_extra_storage.size(); ++i)
+ {
+ const extra_span& src = v.m_extra_storage[i];
+ extra_span dst;
+ dst.len = src.len;
+ dst.ptr = new T [dst.len];
+ memcpy(dst.ptr, src.ptr, dst.len * sizeof(T));
+ m_extra_storage.add(dst);
+ }
+ }
+
+ pod_deque<T, 12> m_cells;
+ pod_deque<extra_span, 6> m_extra_storage;
+ };
+
+
+
+
+
+
+ //-----------------------------------------------scanline_storage_aa
+ template<class T> class scanline_storage_aa
+ {
+ public:
+ typedef T cover_type;
+
+ //---------------------------------------------------------------
+ struct span_data
+ {
+ int16 x;
+ int16 len; // If negative, it's a solid span, covers is valid
+ int covers_id; // The index of the cells in the scanline_cell_storage
+ };
+
+ //---------------------------------------------------------------
+ struct scanline_data
+ {
+ int y;
+ unsigned num_spans;
+ unsigned start_span;
+ };
+
+
+ //---------------------------------------------------------------
+ class embedded_scanline
+ {
+ public:
+
+ //-----------------------------------------------------------
+ class const_iterator
+ {
+ public:
+ struct span
+ {
+ int16 x;
+ int16 len; // If negative, it's a solid span, covers is valid
+ const T* covers;
+ };
+
+ const_iterator(const embedded_scanline& sl) :
+ m_storage(sl.m_storage),
+ m_span_idx(sl.m_scanline.start_span)
+ {
+ init_span();
+ }
+
+ const span& operator*() const { return m_span; }
+ const span* operator->() const { return &m_span; }
+
+ void operator ++ ()
+ {
+ ++m_span_idx;
+ init_span();
+ }
+
+ private:
+ void init_span()
+ {
+ const span_data& s = m_storage->span_by_index(m_span_idx);
+ m_span.x = s.x;
+ m_span.len = s.len;
+ m_span.covers = m_storage->covers_by_index(s.covers_id);
+ }
+
+ const scanline_storage_aa* m_storage;
+ unsigned m_span_idx;
+ span m_span;
+ };
+
+ friend class const_iterator;
+
+
+ //-----------------------------------------------------------
+ embedded_scanline(const scanline_storage_aa& storage) :
+ m_storage(&storage)
+ {
+ init(0);
+ }
+
+ //-----------------------------------------------------------
+ void reset(int, int) {}
+ unsigned num_spans() const { return m_scanline.num_spans; }
+ int y() const { return m_scanline.y; }
+ const_iterator begin() const { return const_iterator(*this); }
+
+ //-----------------------------------------------------------
+ void init(unsigned scanline_idx)
+ {
+ m_scanline_idx = scanline_idx;
+ m_scanline = m_storage->scanline_by_index(m_scanline_idx);
+ }
+
+ private:
+ const scanline_storage_aa* m_storage;
+ scanline_data m_scanline;
+ unsigned m_scanline_idx;
+ };
+
+
+ //---------------------------------------------------------------
+ scanline_storage_aa() :
+ m_covers(),
+ m_spans(256-2), // Block increment size
+ m_scanlines(),
+ m_min_x( 0x7FFFFFFF),
+ m_min_y( 0x7FFFFFFF),
+ m_max_x(-0x7FFFFFFF),
+ m_max_y(-0x7FFFFFFF),
+ m_cur_scanline(0)
+ {
+ m_fake_scanline.y = 0;
+ m_fake_scanline.num_spans = 0;
+ m_fake_scanline.start_span = 0;
+ m_fake_span.x = 0;
+ m_fake_span.len = 0;
+ m_fake_span.covers_id = 0;
+ }
+
+ // Renderer Interface
+ //---------------------------------------------------------------
+ void prepare(unsigned)
+ {
+ m_covers.remove_all();
+ m_scanlines.remove_all();
+ m_spans.remove_all();
+ m_min_x = 0x7FFFFFFF;
+ m_min_y = 0x7FFFFFFF;
+ m_max_x = -0x7FFFFFFF;
+ m_max_y = -0x7FFFFFFF;
+ m_cur_scanline = 0;
+ }
+
+ //---------------------------------------------------------------
+ template<class Scanline> void render(const Scanline& sl)
+ {
+ scanline_data sl_this;
+
+ int y = sl.y();
+ if(y < m_min_y) m_min_y = y;
+ if(y > m_max_y) m_max_y = y;
+
+ sl_this.y = y;
+ sl_this.num_spans = sl.num_spans();
+ sl_this.start_span = m_spans.size();
+ typename Scanline::const_iterator span_iterator = sl.begin();
+
+ unsigned num_spans = sl_this.num_spans;
+ do
+ {
+ span_data sp;
+
+ sp.x = span_iterator->x;
+ sp.len = span_iterator->len;
+ int len = abs(int(sp.len));
+ sp.covers_id =
+ m_covers.add_cells(span_iterator->covers,
+ unsigned(len));
+ m_spans.add(sp);
+ int x1 = sp.x;
+ int x2 = sp.x + len - 1;
+ if(x1 < m_min_x) m_min_x = x1;
+ if(x2 > m_max_x) m_max_x = x2;
+ ++span_iterator;
+ }
+ while(--num_spans);
+ m_scanlines.add(sl_this);
+ }
+
+
+ //---------------------------------------------------------------
+ // Iterate scanlines interface
+ int min_x() const { return m_min_x; }
+ int min_y() const { return m_min_y; }
+ int max_x() const { return m_max_x; }
+ int max_y() const { return m_max_y; }
+
+ //---------------------------------------------------------------
+ bool rewind_scanlines()
+ {
+ m_cur_scanline = 0;
+ return m_scanlines.size() > 0;
+ }
+
+
+ //---------------------------------------------------------------
+ template<class Scanline> bool sweep_scanline(Scanline& sl)
+ {
+ sl.reset_spans();
+ for(;;)
+ {
+ if(m_cur_scanline >= m_scanlines.size()) return false;
+ const scanline_data& sl_this = m_scanlines[m_cur_scanline];
+
+ unsigned num_spans = sl_this.num_spans;
+ unsigned span_idx = sl_this.start_span;
+ do
+ {
+ const span_data& sp = m_spans[span_idx++];
+ const T* covers = covers_by_index(sp.covers_id);
+ if(sp.len < 0)
+ {
+ sl.add_span(sp.x, unsigned(-sp.len), *covers);
+ }
+ else
+ {
+ sl.add_cells(sp.x, sp.len, covers);
+ }
+ }
+ while(--num_spans);
+ ++m_cur_scanline;
+ if(sl.num_spans())
+ {
+ sl.finalize(sl_this.y);
+ break;
+ }
+ }
+ return true;
+ }
+
+
+ //---------------------------------------------------------------
+ // Specialization for embedded_scanline
+ bool sweep_scanline(embedded_scanline& sl)
+ {
+ do
+ {
+ if(m_cur_scanline >= m_scanlines.size()) return false;
+ sl.init(m_cur_scanline);
+ ++m_cur_scanline;
+ }
+ while(sl.num_spans() == 0);
+ return true;
+ }
+
+ //---------------------------------------------------------------
+ unsigned byte_size() const
+ {
+ unsigned i;
+ unsigned size = sizeof(int16) * 4; // min_x, min_y, max_x, max_y
+
+ for(i = 0; i < m_scanlines.size(); ++i)
+ {
+ size += sizeof(int16) * 3; // scanline size in bytes, Y, num_spans
+
+ const scanline_data& sl_this = m_scanlines[i];
+
+ unsigned num_spans = sl_this.num_spans;
+ unsigned span_idx = sl_this.start_span;
+ do
+ {
+ const span_data& sp = m_spans[span_idx++];
+
+ size += sizeof(int16) * 2; // X, span_len
+ if(sp.len < 0)
+ {
+ size += sizeof(T); // cover
+ }
+ else
+ {
+ size += sizeof(T) * unsigned(sp.len); // covers
+ }
+ }
+ while(--num_spans);
+ }
+ return size;
+ }
+
+
+ //---------------------------------------------------------------
+ static void write_int16(int8u* dst, int16 val)
+ {
+ dst[0] = ((const int8u*)&val)[0];
+ dst[1] = ((const int8u*)&val)[1];
+ }
+
+
+ //---------------------------------------------------------------
+ void serialize(int8u* data) const
+ {
+ unsigned i;
+
+ write_int16(data, int16u(min_x())); // min_x
+ data += sizeof(int16u);
+ write_int16(data, int16u(min_y())); // min_y
+ data += sizeof(int16u);
+ write_int16(data, int16u(max_x())); // max_x
+ data += sizeof(int16u);
+ write_int16(data, int16u(max_y())); // max_y
+ data += sizeof(int16u);
+
+ for(i = 0; i < m_scanlines.size(); ++i)
+ {
+ const scanline_data& sl_this = m_scanlines[i];
+
+ int8u* size_ptr = data;
+ data += sizeof(int16); // Reserve space for scanline size in bytes
+
+ write_int16(data, int16(sl_this.y)); // Y
+ data += sizeof(int16);
+
+ write_int16(data, int16(sl_this.num_spans)); // num_spans
+ data += sizeof(int16);
+
+ unsigned num_spans = sl_this.num_spans;
+ unsigned span_idx = sl_this.start_span;
+ do
+ {
+ const span_data& sp = m_spans[span_idx++];
+ const T* covers = covers_by_index(sp.covers_id);
+
+ write_int16(data, int16(sp.x)); // X
+ data += sizeof(int16);
+
+ write_int16(data, int16(sp.len)); // span_len
+ data += sizeof(int16);
+
+ if(sp.len < 0)
+ {
+ memcpy(data, covers, sizeof(T));
+ data += sizeof(T);
+ }
+ else
+ {
+ memcpy(data, covers, unsigned(sp.len) * sizeof(T));
+ data += sizeof(T) * unsigned(sp.len);
+ }
+ }
+ while(--num_spans);
+ write_int16(size_ptr, int16(unsigned(data - size_ptr)));
+ }
+ }
+
+
+ //---------------------------------------------------------------
+ const scanline_data& scanline_by_index(unsigned i) const
+ {
+ return (i < m_scanlines.size()) ? m_scanlines[i] : m_fake_scanline;
+ }
+
+ //---------------------------------------------------------------
+ const span_data& span_by_index(unsigned i) const
+ {
+ return (i < m_spans.size()) ? m_spans[i] : m_fake_span;
+ }
+
+ //---------------------------------------------------------------
+ const T* covers_by_index(int i) const
+ {
+ return m_covers[i];
+ }
+
+ private:
+ scanline_cell_storage<T> m_covers;
+ pod_deque<span_data, 10> m_spans;
+ pod_deque<scanline_data, 8> m_scanlines;
+ span_data m_fake_span;
+ scanline_data m_fake_scanline;
+ int m_min_x;
+ int m_min_y;
+ int m_max_x;
+ int m_max_y;
+ unsigned m_cur_scanline;
+ };
+
+
+ typedef scanline_storage_aa<int8u> scanline_storage_aa8; //--------scanline_storage_aa8
+ typedef scanline_storage_aa<int16u> scanline_storage_aa16; //--------scanline_storage_aa16
+ typedef scanline_storage_aa<int32u> scanline_storage_aa32; //--------scanline_storage_aa32
+
+
+
+
+ //------------------------------------------serialized_scanlines_adaptor_aa
+ template<class T> class serialized_scanlines_adaptor_aa
+ {
+ public:
+ typedef T cover_type;
+
+ //---------------------------------------------------------------------
+ class embedded_scanline
+ {
+ public:
+ typedef T cover_type;
+
+ //-----------------------------------------------------------------
+ class const_iterator
+ {
+ public:
+ struct span
+ {
+ int16 x;
+ int16 len; // If negative, it's a solid span, "covers" is valid
+ const T* covers;
+ };
+
+ const_iterator(const embedded_scanline& sl) :
+ m_ptr(sl.m_ptr),
+ m_dx(sl.m_dx)
+ {
+ init_span();
+ }
+
+ const span& operator*() const { return m_span; }
+ const span* operator->() const { return &m_span; }
+
+ void operator ++ ()
+ {
+ if(m_span.len < 0)
+ {
+ m_ptr += sizeof(T);
+ }
+ else
+ {
+ m_ptr += m_span.len * sizeof(T);
+ }
+ init_span();
+ }
+
+ private:
+ int read_int16()
+ {
+ int16 val;
+ ((int8u*)&val)[0] = *m_ptr++;
+ ((int8u*)&val)[1] = *m_ptr++;
+ return val;
+ }
+
+ void init_span()
+ {
+ m_span.x = read_int16() + m_dx;
+ m_span.len = read_int16();
+ m_span.covers = m_ptr;
+ }
+
+ const int8u* m_ptr;
+ span m_span;
+ int m_dx;
+ };
+
+ friend class const_iterator;
+
+
+ //-----------------------------------------------------------------
+ embedded_scanline() : m_ptr(0), m_y(0), m_num_spans(0) {}
+
+ //-----------------------------------------------------------------
+ void reset(int, int) {}
+ unsigned num_spans() const { return m_num_spans; }
+ int y() const { return m_y; }
+ const_iterator begin() const { return const_iterator(*this); }
+
+
+ private:
+ //-----------------------------------------------------------------
+ int read_int16()
+ {
+ int16 val;
+ ((int8u*)&val)[0] = *m_ptr++;
+ ((int8u*)&val)[1] = *m_ptr++;
+ return val;
+ }
+
+ public:
+ //-----------------------------------------------------------------
+ void init(const int8u* ptr, int dx, int dy)
+ {
+ m_ptr = ptr;
+ m_y = read_int16() + dy;
+ m_num_spans = unsigned(read_int16());
+ m_dx = dx;
+ }
+
+ private:
+ const int8u* m_ptr;
+ int m_y;
+ unsigned m_num_spans;
+ int m_dx;
+ };
+
+
+
+ public:
+ //--------------------------------------------------------------------
+ serialized_scanlines_adaptor_aa() :
+ m_data(0),
+ m_end(0),
+ m_ptr(0),
+ m_dx(0),
+ m_dy(0),
+ m_min_x(0x7FFFFFFF),
+ m_min_y(0x7FFFFFFF),
+ m_max_x(-0x7FFFFFFF),
+ m_max_y(-0x7FFFFFFF)
+ {}
+
+ //--------------------------------------------------------------------
+ serialized_scanlines_adaptor_aa(const int8u* data, unsigned size,
+ double dx, double dy) :
+ m_data(data),
+ m_end(data + size),
+ m_ptr(data),
+ m_dx(int(floor(dx + 0.5))),
+ m_dy(int(floor(dy + 0.5))),
+ m_min_x(0x7FFFFFFF),
+ m_min_y(0x7FFFFFFF),
+ m_max_x(-0x7FFFFFFF),
+ m_max_y(-0x7FFFFFFF)
+ {}
+
+ //--------------------------------------------------------------------
+ void init(const int8u* data, unsigned size, double dx, double dy)
+ {
+ m_data = data;
+ m_end = data + size;
+ m_ptr = data;
+ m_dx = int(floor(dx + 0.5));
+ m_dy = int(floor(dy + 0.5));
+ m_min_x = 0x7FFFFFFF;
+ m_min_y = 0x7FFFFFFF;
+ m_max_x = -0x7FFFFFFF;
+ m_max_y = -0x7FFFFFFF;
+ }
+
+ private:
+ //--------------------------------------------------------------------
+ int read_int16()
+ {
+ int16 val;
+ ((int8u*)&val)[0] = *m_ptr++;
+ ((int8u*)&val)[1] = *m_ptr++;
+ return val;
+ }
+
+ //--------------------------------------------------------------------
+ unsigned read_int16u()
+ {
+ int16u val;
+ ((int8u*)&val)[0] = *m_ptr++;
+ ((int8u*)&val)[1] = *m_ptr++;
+ return val;
+ }
+
+ public:
+ // Iterate scanlines interface
+ //--------------------------------------------------------------------
+ bool rewind_scanlines()
+ {
+ m_ptr = m_data;
+ if(m_ptr < m_end)
+ {
+ m_min_x = read_int16() + m_dx;
+ m_min_y = read_int16() + m_dy;
+ m_max_x = read_int16() + m_dx;
+ m_max_y = read_int16() + m_dy;
+ return true;
+ }
+ return false;
+ }
+
+ //--------------------------------------------------------------------
+ int min_x() const { return m_min_x; }
+ int min_y() const { return m_min_y; }
+ int max_x() const { return m_max_x; }
+ int max_y() const { return m_max_y; }
+
+ //--------------------------------------------------------------------
+ template<class Scanline> bool sweep_scanline(Scanline& sl)
+ {
+ sl.reset_spans();
+ for(;;)
+ {
+ if(m_ptr >= m_end) return false;
+
+ read_int16(); // Skip scanline size in bytes
+ int y = read_int16() + m_dy;
+ unsigned num_spans = read_int16();
+
+ do
+ {
+ int x = read_int16() + m_dx;
+ int len = read_int16();
+
+ if(len < 0)
+ {
+ sl.add_span(x, unsigned(-len), *m_ptr);
+ m_ptr += sizeof(T);
+ }
+ else
+ {
+ sl.add_cells(x, len, m_ptr);
+ m_ptr += len * sizeof(T);
+ }
+ }
+ while(--num_spans);
+
+ if(sl.num_spans())
+ {
+ sl.finalize(y);
+ break;
+ }
+ }
+ return true;
+ }
+
+
+ //--------------------------------------------------------------------
+ // Specialization for embedded_scanline
+ bool sweep_scanline(embedded_scanline& sl)
+ {
+ do
+ {
+ if(m_ptr >= m_end) return false;
+
+ unsigned byte_size = read_int16u();
+ sl.init(m_ptr, m_dx, m_dy);
+ m_ptr += byte_size - sizeof(int16);
+ }
+ while(sl.num_spans() == 0);
+ return true;
+ }
+
+ private:
+ const int8u* m_data;
+ const int8u* m_end;
+ const int8u* m_ptr;
+ int m_dx;
+ int m_dy;
+ int m_min_x;
+ int m_min_y;
+ int m_max_x;
+ int m_max_y;
+ };
+
+
+
+ typedef serialized_scanlines_adaptor_aa<int8u> serialized_scanlines_adaptor_aa8; //----serialized_scanlines_adaptor_aa8
+ typedef serialized_scanlines_adaptor_aa<int16u> serialized_scanlines_adaptor_aa16; //----serialized_scanlines_adaptor_aa16
+ typedef serialized_scanlines_adaptor_aa<int32u> serialized_scanlines_adaptor_aa32; //----serialized_scanlines_adaptor_aa32
+
+}
+
+
+#endif
+
diff --git a/agg/inc/agg_scanline_storage_bin.h b/agg/inc/agg_scanline_storage_bin.h
new file mode 100755
index 000000000000..90fa50e4ee6d
--- /dev/null
+++ b/agg/inc/agg_scanline_storage_bin.h
@@ -0,0 +1,569 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_SCANLINE_STORAGE_BIN_INCLUDED
+#define AGG_SCANLINE_STORAGE_BIN_INCLUDED
+
+#include <string.h>
+#include <stdlib.h>
+#include <math.h>
+#include "agg_array.h"
+#include "agg_render_scanlines.h"
+
+
+namespace agg
+{
+
+ //-----------------------------------------------scanline_storage_bin
+ class scanline_storage_bin
+ {
+ public:
+ //---------------------------------------------------------------
+ struct span_data
+ {
+ int16 x;
+ int16 len;
+ };
+
+ //---------------------------------------------------------------
+ struct scanline_data
+ {
+ int y;
+ unsigned num_spans;
+ unsigned start_span;
+ };
+
+
+ //---------------------------------------------------------------
+ class embedded_scanline
+ {
+ public:
+
+ //-----------------------------------------------------------
+ class const_iterator
+ {
+ public:
+ const_iterator(const embedded_scanline& sl) :
+ m_storage(sl.m_storage),
+ m_span_idx(sl.m_scanline.start_span)
+ {
+ m_span = m_storage->span_by_index(m_span_idx);
+ }
+
+ const span_data& operator*() const { return m_span; }
+ const span_data* operator->() const { return &m_span; }
+
+ void operator ++ ()
+ {
+ ++m_span_idx;
+ m_span = m_storage->span_by_index(m_span_idx);
+ }
+
+ private:
+ const scanline_storage_bin* m_storage;
+ unsigned m_span_idx;
+ span_data m_span;
+ };
+
+ friend class const_iterator;
+
+
+ //-----------------------------------------------------------
+ embedded_scanline(const scanline_storage_bin& storage) :
+ m_storage(&storage)
+ {
+ setup(0);
+ }
+
+ //-----------------------------------------------------------
+ void reset(int, int) {}
+ unsigned num_spans() const { return m_scanline.num_spans; }
+ int y() const { return m_scanline.y; }
+ const_iterator begin() const { return const_iterator(*this); }
+
+ //-----------------------------------------------------------
+ void setup(unsigned scanline_idx)
+ {
+ m_scanline_idx = scanline_idx;
+ m_scanline = m_storage->scanline_by_index(m_scanline_idx);
+ }
+
+ private:
+ const scanline_storage_bin* m_storage;
+ scanline_data m_scanline;
+ unsigned m_scanline_idx;
+ };
+
+
+ //---------------------------------------------------------------
+ scanline_storage_bin() :
+ m_spans(256-2), // Block increment size
+ m_scanlines(),
+ m_min_x( 0x7FFFFFFF),
+ m_min_y( 0x7FFFFFFF),
+ m_max_x(-0x7FFFFFFF),
+ m_max_y(-0x7FFFFFFF),
+ m_cur_scanline(0)
+ {
+ m_fake_scanline.y = 0;
+ m_fake_scanline.num_spans = 0;
+ m_fake_scanline.start_span = 0;
+ m_fake_span.x = 0;
+ m_fake_span.len = 0;
+ }
+
+ // Renderer Interface
+ //---------------------------------------------------------------
+ void prepare(unsigned)
+ {
+ m_scanlines.remove_all();
+ m_spans.remove_all();
+ m_min_x = 0x7FFFFFFF;
+ m_min_y = 0x7FFFFFFF;
+ m_max_x = -0x7FFFFFFF;
+ m_max_y = -0x7FFFFFFF;
+ m_cur_scanline = 0;
+ }
+
+ //---------------------------------------------------------------
+ template<class Scanline> void render(const Scanline& sl)
+ {
+ scanline_data sl_this;
+
+ int y = sl.y();
+ if(y < m_min_y) m_min_y = y;
+ if(y > m_max_y) m_max_y = y;
+
+ sl_this.y = y;
+ sl_this.num_spans = sl.num_spans();
+ sl_this.start_span = m_spans.size();
+ typename Scanline::const_iterator span_iterator = sl.begin();
+
+ unsigned num_spans = sl_this.num_spans;
+ do
+ {
+ span_data sp;
+ sp.x = span_iterator->x;
+ sp.len = (int16)abs((int)(span_iterator->len));
+ m_spans.add(sp);
+ int x1 = sp.x;
+ int x2 = sp.x + sp.len - 1;
+ if(x1 < m_min_x) m_min_x = x1;
+ if(x2 > m_max_x) m_max_x = x2;
+ ++span_iterator;
+ }
+ while(--num_spans);
+ m_scanlines.add(sl_this);
+ }
+
+
+ //---------------------------------------------------------------
+ // Iterate scanlines interface
+ int min_x() const { return m_min_x; }
+ int min_y() const { return m_min_y; }
+ int max_x() const { return m_max_x; }
+ int max_y() const { return m_max_y; }
+
+ //---------------------------------------------------------------
+ bool rewind_scanlines()
+ {
+ m_cur_scanline = 0;
+ return m_scanlines.size() > 0;
+ }
+
+
+ //---------------------------------------------------------------
+ template<class Scanline> bool sweep_scanline(Scanline& sl)
+ {
+ sl.reset_spans();
+ for(;;)
+ {
+ if(m_cur_scanline >= m_scanlines.size()) return false;
+ const scanline_data& sl_this = m_scanlines[m_cur_scanline];
+
+ unsigned num_spans = sl_this.num_spans;
+ unsigned span_idx = sl_this.start_span;
+ do
+ {
+ const span_data& sp = m_spans[span_idx++];
+ sl.add_span(sp.x, sp.len, cover_full);
+ }
+ while(--num_spans);
+
+ ++m_cur_scanline;
+ if(sl.num_spans())
+ {
+ sl.finalize(sl_this.y);
+ break;
+ }
+ }
+ return true;
+ }
+
+
+ //---------------------------------------------------------------
+ // Specialization for embedded_scanline
+ bool sweep_scanline(embedded_scanline& sl)
+ {
+ do
+ {
+ if(m_cur_scanline >= m_scanlines.size()) return false;
+ sl.setup(m_cur_scanline);
+ ++m_cur_scanline;
+ }
+ while(sl.num_spans() == 0);
+ return true;
+ }
+
+
+ //---------------------------------------------------------------
+ unsigned byte_size() const
+ {
+ unsigned i;
+ unsigned size = sizeof(int16) * 4; // min_x, min_y, max_x, max_y
+
+ for(i = 0; i < m_scanlines.size(); ++i)
+ {
+ size += sizeof(int16) * 2 + // Y, num_spans
+ unsigned(m_scanlines[i].num_spans) * sizeof(int16) * 2; // X, span_len
+ }
+ return size;
+ }
+
+
+ //---------------------------------------------------------------
+ static void write_int16(int8u* dst, int16 val)
+ {
+ dst[0] = ((const int8u*)&val)[0];
+ dst[1] = ((const int8u*)&val)[1];
+ }
+
+
+ //---------------------------------------------------------------
+ void serialize(int8u* data) const
+ {
+ unsigned i;
+
+ write_int16(data, int16u(min_x())); // min_x
+ data += sizeof(int16u);
+ write_int16(data, int16u(min_y())); // min_y
+ data += sizeof(int16u);
+ write_int16(data, int16u(max_x())); // max_x
+ data += sizeof(int16u);
+ write_int16(data, int16u(max_y())); // max_y
+ data += sizeof(int16u);
+
+ for(i = 0; i < m_scanlines.size(); ++i)
+ {
+ const scanline_data& sl_this = m_scanlines[i];
+
+ write_int16(data, int16(sl_this.y)); // Y
+ data += sizeof(int16);
+
+ write_int16(data, int16(sl_this.num_spans)); // num_spans
+ data += sizeof(int16);
+
+ unsigned num_spans = sl_this.num_spans;
+ unsigned span_idx = sl_this.start_span;
+ do
+ {
+ const span_data& sp = m_spans[span_idx++];
+
+ write_int16(data, int16(sp.x)); // X
+ data += sizeof(int16);
+
+ write_int16(data, int16(sp.len)); // len
+ data += sizeof(int16);
+ }
+ while(--num_spans);
+ }
+ }
+
+
+ //---------------------------------------------------------------
+ const scanline_data& scanline_by_index(unsigned i) const
+ {
+ return (i < m_scanlines.size()) ? m_scanlines[i] : m_fake_scanline;
+ }
+
+ //---------------------------------------------------------------
+ const span_data& span_by_index(unsigned i) const
+ {
+ return (i < m_spans.size()) ? m_spans[i] : m_fake_span;
+ }
+
+
+ private:
+ pod_deque<span_data, 10> m_spans;
+ pod_deque<scanline_data, 8> m_scanlines;
+ span_data m_fake_span;
+ scanline_data m_fake_scanline;
+ int m_min_x;
+ int m_min_y;
+ int m_max_x;
+ int m_max_y;
+ unsigned m_cur_scanline;
+ };
+
+
+
+
+
+
+
+
+
+
+
+
+
+ //---------------------------------------serialized_scanlines_adaptor_bin
+ class serialized_scanlines_adaptor_bin
+ {
+ public:
+ typedef bool cover_type;
+
+ //--------------------------------------------------------------------
+ class embedded_scanline
+ {
+ public:
+
+ //----------------------------------------------------------------
+ class const_iterator
+ {
+ public:
+ struct span
+ {
+ int16 x;
+ int16 len;
+ };
+
+ const_iterator(const embedded_scanline& sl) :
+ m_ptr(sl.m_ptr),
+ m_dx(sl.m_dx)
+ {
+ m_span.x = read_int16() + m_dx;
+ m_span.len = read_int16();
+ }
+
+ const span& operator*() const { return m_span; }
+ const span* operator->() const { return &m_span; }
+
+ void operator ++ ()
+ {
+ m_span.x = read_int16() + m_dx;
+ m_span.len = read_int16();
+ }
+
+ private:
+ int read_int16()
+ {
+ int16 val;
+ ((int8u*)&val)[0] = *m_ptr++;
+ ((int8u*)&val)[1] = *m_ptr++;
+ return val;
+ }
+
+ const int8u* m_ptr;
+ span m_span;
+ int m_dx;
+ };
+
+ friend class const_iterator;
+
+
+ //----------------------------------------------------------------
+ embedded_scanline() : m_ptr(0), m_y(0), m_num_spans(0) {}
+
+ //----------------------------------------------------------------
+ void reset(int, int) {}
+ unsigned num_spans() const { return m_num_spans; }
+ int y() const { return m_y; }
+ const_iterator begin() const { return const_iterator(*this); }
+
+
+ private:
+ //----------------------------------------------------------------
+ int read_int16()
+ {
+ int16 val;
+ ((int8u*)&val)[0] = *m_ptr++;
+ ((int8u*)&val)[1] = *m_ptr++;
+ return val;
+ }
+
+ public:
+ //----------------------------------------------------------------
+ void init(const int8u* ptr, int dx, int dy)
+ {
+ m_ptr = ptr;
+ m_y = read_int16() + dy;
+ m_num_spans = unsigned(read_int16());
+ m_dx = dx;
+ }
+
+ private:
+ const int8u* m_ptr;
+ int m_y;
+ unsigned m_num_spans;
+ int m_dx;
+ };
+
+
+
+ public:
+ //--------------------------------------------------------------------
+ serialized_scanlines_adaptor_bin() :
+ m_data(0),
+ m_end(0),
+ m_ptr(0),
+ m_dx(0),
+ m_dy(0),
+ m_min_x(0x7FFFFFFF),
+ m_min_y(0x7FFFFFFF),
+ m_max_x(-0x7FFFFFFF),
+ m_max_y(-0x7FFFFFFF)
+ {}
+
+ //--------------------------------------------------------------------
+ serialized_scanlines_adaptor_bin(const int8u* data, unsigned size,
+ double dx, double dy) :
+ m_data(data),
+ m_end(data + size),
+ m_ptr(data),
+ m_dx(int(floor(dx + 0.5))),
+ m_dy(int(floor(dy + 0.5))),
+ m_min_x(0x7FFFFFFF),
+ m_min_y(0x7FFFFFFF),
+ m_max_x(-0x7FFFFFFF),
+ m_max_y(-0x7FFFFFFF)
+ {}
+
+ //--------------------------------------------------------------------
+ void init(const int8u* data, unsigned size, double dx, double dy)
+ {
+ m_data = data;
+ m_end = data + size;
+ m_ptr = data;
+ m_dx = int(floor(dx + 0.5));
+ m_dy = int(floor(dy + 0.5));
+ m_min_x = 0x7FFFFFFF;
+ m_min_y = 0x7FFFFFFF;
+ m_max_x = -0x7FFFFFFF;
+ m_max_y = -0x7FFFFFFF;
+ }
+
+ private:
+ //--------------------------------------------------------------------
+ int read_int16()
+ {
+ int16 val;
+ ((int8u*)&val)[0] = *m_ptr++;
+ ((int8u*)&val)[1] = *m_ptr++;
+ return val;
+ }
+
+ public:
+ // Iterate scanlines interface
+ //--------------------------------------------------------------------
+ bool rewind_scanlines()
+ {
+ m_ptr = m_data;
+ if(m_ptr < m_end)
+ {
+ m_min_x = read_int16() + m_dx;
+ m_min_y = read_int16() + m_dy;
+ m_max_x = read_int16() + m_dx;
+ m_max_y = read_int16() + m_dy;
+ return true;
+ }
+ return false;
+ }
+
+ //--------------------------------------------------------------------
+ int min_x() const { return m_min_x; }
+ int min_y() const { return m_min_y; }
+ int max_x() const { return m_max_x; }
+ int max_y() const { return m_max_y; }
+
+ //--------------------------------------------------------------------
+ template<class Scanline> bool sweep_scanline(Scanline& sl)
+ {
+ sl.reset_spans();
+ for(;;)
+ {
+ if(m_ptr >= m_end) return false;
+
+ int y = read_int16() + m_dy;
+ unsigned num_spans = read_int16();
+
+ do
+ {
+ int x = read_int16() + m_dx;
+ int len = read_int16();
+
+ if(len < 0) len = -len;
+ sl.add_span(x, unsigned(len), cover_full);
+ }
+ while(--num_spans);
+
+ if(sl.num_spans())
+ {
+ sl.finalize(y);
+ break;
+ }
+ }
+ return true;
+ }
+
+
+ //--------------------------------------------------------------------
+ // Specialization for embedded_scanline
+ bool sweep_scanline(embedded_scanline& sl)
+ {
+ do
+ {
+ if(m_ptr >= m_end) return false;
+
+ sl.init(m_ptr, m_dx, m_dy);
+
+ // Jump to the next scanline
+ //--------------------------
+ read_int16(); // Y
+ int num_spans = read_int16(); // num_spans
+ m_ptr += num_spans * sizeof(int16) * 2;
+ }
+ while(sl.num_spans() == 0);
+ return true;
+ }
+
+ private:
+ const int8u* m_data;
+ const int8u* m_end;
+ const int8u* m_ptr;
+ int m_dx;
+ int m_dy;
+ int m_min_x;
+ int m_min_y;
+ int m_max_x;
+ int m_max_y;
+ };
+
+
+
+}
+
+#endif
+
diff --git a/agg/inc/agg_scanline_u.h b/agg/inc/agg_scanline_u.h
new file mode 100755
index 000000000000..749c5b3c0054
--- /dev/null
+++ b/agg/inc/agg_scanline_u.h
@@ -0,0 +1,323 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_SCANLINE_U_INCLUDED
+#define AGG_SCANLINE_U_INCLUDED
+
+#include <string.h>
+#include "agg_basics.h"
+
+namespace agg
+{
+ //==============================================================scanline_u
+ //
+ // Unpacked scanline container class
+ //
+ // This class is used to transfer data from a scanline rastyerizer
+ // to the rendering buffer. It's organized very simple. The class stores
+ // information of horizontal spans to render it into a pixel-map buffer.
+ // Each span has staring X, length, and an array of bytes that determine the
+ // cover-values for each pixel.
+ // Before using this class you should know the minimal and maximal pixel
+ // coordinates of your scanline. The protocol of using is:
+ // 1. reset(min_x, max_x)
+ // 2. add_cell() / add_span() - accumulate scanline.
+ // When forming one scanline the next X coordinate must be always greater
+ // than the last stored one, i.e. it works only with ordered coordinates.
+ // 3. Call finalize(y) and render the scanline.
+ // 3. Call reset_spans() to prepare for the new scanline.
+ //
+ // 4. Rendering:
+ //
+ // Scanline provides an iterator class that allows you to extract
+ // the spans and the cover values for each pixel. Be aware that clipping
+ // has not been done yet, so you should perform it yourself.
+ // Use scanline_u8::iterator to render spans:
+ //-------------------------------------------------------------------------
+ //
+ // int y = sl.y(); // Y-coordinate of the scanline
+ //
+ // ************************************
+ // ...Perform vertical clipping here...
+ // ************************************
+ //
+ // scanline_u8::const_iterator span = sl.begin();
+ //
+ // unsigned char* row = m_rbuf->row(y); // The the address of the beginning
+ // // of the current row
+ //
+ // unsigned num_spans = sl.num_spans(); // Number of spans. It's guaranteed that
+ // // num_spans is always greater than 0.
+ //
+ // do
+ // {
+ // const scanline_u8::cover_type* covers =
+ // span->covers; // The array of the cover values
+ //
+ // int num_pix = span->len; // Number of pixels of the span.
+ // // Always greater than 0, still it's
+ // // better to use "int" instead of
+ // // "unsigned" because it's more
+ // // convenient for clipping
+ // int x = span->x;
+ //
+ // **************************************
+ // ...Perform horizontal clipping here...
+ // ...you have x, covers, and pix_count..
+ // **************************************
+ //
+ // unsigned char* dst = row + x; // Calculate the start address of the row.
+ // // In this case we assume a simple
+ // // grayscale image 1-byte per pixel.
+ // do
+ // {
+ // *dst++ = *covers++; // Hypotetical rendering.
+ // }
+ // while(--num_pix);
+ //
+ // ++span;
+ // }
+ // while(--num_spans); // num_spans cannot be 0, so this loop is quite safe
+ //------------------------------------------------------------------------
+ //
+ // The question is: why should we accumulate the whole scanline when we
+ // could render just separate spans when they're ready?
+ // That's because using the scaline is generally faster. When is consists
+ // of more than one span the conditions for the processor cash system
+ // are better, because switching between two different areas of memory
+ // (that can be very large) occures less frequently.
+ //------------------------------------------------------------------------
+ template<class T> class scanline_u
+ {
+ public:
+ typedef T cover_type;
+
+ //--------------------------------------------------------------------
+ struct span
+ {
+ int16 x;
+ int16 len;
+ cover_type* covers;
+ };
+
+ typedef span* iterator;
+ typedef const span* const_iterator;
+
+ //--------------------------------------------------------------------
+ ~scanline_u();
+ scanline_u();
+
+ void reset(int min_x, int max_x);
+ void add_cell(int x, unsigned cover);
+ void add_cells(int x, unsigned len, const T* covers);
+ void add_span(int x, unsigned len, unsigned cover);
+ void finalize(int y) { m_y = y; }
+ void reset_spans();
+
+ int y() const { return m_y; }
+ unsigned num_spans() const { return unsigned(m_cur_span - m_spans); }
+ const_iterator begin() const { return m_spans + 1; }
+ iterator begin() { return m_spans + 1; }
+
+ private:
+ scanline_u<T>(const scanline_u<T>&);
+ const scanline_u<T>& operator = (const scanline_u<T>&);
+
+ private:
+ int m_min_x;
+ unsigned m_max_len;
+ int m_last_x;
+ int m_y;
+ cover_type* m_covers;
+ span* m_spans;
+ span* m_cur_span;
+ };
+
+
+
+ //------------------------------------------------------------------------
+ template<class T> scanline_u<T>::~scanline_u()
+ {
+ delete [] m_spans;
+ delete [] m_covers;
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class T> scanline_u<T>::scanline_u() :
+ m_min_x(0),
+ m_max_len(0),
+ m_last_x(0x7FFFFFF0),
+ m_covers(0),
+ m_spans(0),
+ m_cur_span(0)
+ {
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class T> void scanline_u<T>::reset(int min_x, int max_x)
+ {
+ unsigned max_len = max_x - min_x + 2;
+ if(max_len > m_max_len)
+ {
+ delete [] m_spans;
+ delete [] m_covers;
+ m_covers = new cover_type [max_len];
+ m_spans = new span [max_len];
+ m_max_len = max_len;
+ }
+ m_last_x = 0x7FFFFFF0;
+ m_min_x = min_x;
+ m_cur_span = m_spans;
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class T> inline void scanline_u<T>::reset_spans()
+ {
+ m_last_x = 0x7FFFFFF0;
+ m_cur_span = m_spans;
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class T> inline void scanline_u<T>::add_cell(int x, unsigned cover)
+ {
+ x -= m_min_x;
+ m_covers[x] = (unsigned char)cover;
+ if(x == m_last_x+1)
+ {
+ m_cur_span->len++;
+ }
+ else
+ {
+ m_cur_span++;
+ m_cur_span->x = (int16)(x + m_min_x);
+ m_cur_span->len = 1;
+ m_cur_span->covers = m_covers + x;
+ }
+ m_last_x = x;
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class T> void scanline_u<T>::add_cells(int x, unsigned len, const T* covers)
+ {
+ x -= m_min_x;
+ memcpy(m_covers + x, covers, len * sizeof(T));
+ if(x == m_last_x+1)
+ {
+ m_cur_span->len += (int16)len;
+ }
+ else
+ {
+ m_cur_span++;
+ m_cur_span->x = (int16)(x + m_min_x);
+ m_cur_span->len = (int16)len;
+ m_cur_span->covers = m_covers + x;
+ }
+ m_last_x = x + len - 1;
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class T> void scanline_u<T>::add_span(int x, unsigned len, unsigned cover)
+ {
+ x -= m_min_x;
+ memset(m_covers + x, cover, len);
+ if(x == m_last_x+1)
+ {
+ m_cur_span->len += (int16)len;
+ }
+ else
+ {
+ m_cur_span++;
+ m_cur_span->x = (int16)(x + m_min_x);
+ m_cur_span->len = (int16)len;
+ m_cur_span->covers = m_covers + x;
+ }
+ m_last_x = x + len - 1;
+ }
+
+
+ //=============================================================scanline_u8
+ typedef scanline_u<int8u> scanline_u8;
+
+ //============================================================scanline_u16
+ typedef scanline_u<int16u> scanline_u16;
+
+ //============================================================scanline_u32
+ typedef scanline_u<int32u> scanline_u32;
+
+
+ //=============================================================scanline_am
+ //
+ // The scanline container with alpha-masking
+ //
+ //------------------------------------------------------------------------
+ template<class AlphaMask, class CoverT>
+ class scanline_am : public scanline_u<CoverT>
+ {
+ public:
+ typedef AlphaMask alpha_mask_type;
+ typedef CoverT cover_type;
+ typedef scanline_u<CoverT> scanline_type;
+
+ scanline_am() : scanline_type(), m_alpha_mask(0) {}
+ scanline_am(const AlphaMask& am) : scanline_type(), m_alpha_mask(&am) {}
+
+ //--------------------------------------------------------------------
+ void finalize(int span_y)
+ {
+ scanline_u<CoverT>::finalize(span_y);
+ if(m_alpha_mask)
+ {
+ typename scanline_type::iterator span = scanline_type::begin();
+ unsigned count = scanline_type::num_spans();
+ do
+ {
+ m_alpha_mask->combine_hspan(span->x,
+ scanline_type::y(),
+ span->covers,
+ span->len);
+ ++span;
+ }
+ while(--count);
+ }
+ }
+
+ private:
+ const AlphaMask* m_alpha_mask;
+ };
+
+
+ //==========================================================scanline_u8_am
+ template<class AlphaMask>
+ class scanline_u8_am : public scanline_am<AlphaMask, int8u>
+ {
+ public:
+ typedef AlphaMask alpha_mask_type;
+ typedef int8u cover_type;
+ typedef scanline_am<alpha_mask_type, cover_type> self_type;
+
+ scanline_u8_am() : self_type() {}
+ scanline_u8_am(const AlphaMask& am) : self_type(am) {}
+ };
+
+}
+
+#endif
+
diff --git a/agg/inc/agg_shorten_path.h b/agg/inc/agg_shorten_path.h
new file mode 100755
index 000000000000..271d2a7ec572
--- /dev/null
+++ b/agg/inc/agg_shorten_path.h
@@ -0,0 +1,66 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_SHORTEN_PATH_INCLUDED
+#define AGG_SHORTEN_PATH_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_vertex_sequence.h"
+
+namespace agg
+{
+
+ //===========================================================shorten_path
+ template<class VertexSequence>
+ void shorten_path(VertexSequence& vs, double s, unsigned closed = 0)
+ {
+ typedef typename VertexSequence::value_type vertex_type;
+
+ if(s > 0.0 && vs.size() > 1)
+ {
+ double d;
+ int n = int(vs.size() - 2);
+ while(n)
+ {
+ d = vs[n].dist;
+ if(d > s) break;
+ vs.remove_last();
+ s -= d;
+ --n;
+ }
+ if(vs.size() < 2)
+ {
+ vs.remove_all();
+ }
+ else
+ {
+ n = vs.size() - 1;
+ vertex_type& prev = vs[n-1];
+ vertex_type& last = vs[n];
+ d = (prev.dist - s) / prev.dist;
+ double x = prev.x + (last.x - prev.x) * d;
+ double y = prev.y + (last.y - prev.y) * d;
+ last.x = x;
+ last.y = y;
+ if(!prev(last)) vs.remove_last();
+ vs.close(closed != 0);
+ }
+ }
+ }
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_simul_eq.h b/agg/inc/agg_simul_eq.h
new file mode 100755
index 000000000000..f52662e82926
--- /dev/null
+++ b/agg/inc/agg_simul_eq.h
@@ -0,0 +1,147 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Solving simultaneous equations
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_SIMUL_EQ_INCLUDED
+#define AGG_SIMUL_EQ_INCLUDED
+
+#include <math.h>
+#include "agg_basics.h"
+
+namespace agg
+{
+
+ //=============================================================swap_arrays
+ template<class T> void swap_arrays(T* a1, T* a2, unsigned n)
+ {
+ unsigned i;
+ for(i = 0; i < n; i++)
+ {
+ T tmp = *a1;
+ *a1++ = *a2;
+ *a2++ = tmp;
+ }
+ }
+
+
+ //============================================================matrix_pivot
+ template<unsigned Rows, unsigned Cols>
+ struct matrix_pivot
+ {
+ static int pivot(double m[Rows][Cols], unsigned row)
+ {
+ int k = int(row);
+ double max_val, tmp;
+
+ max_val = -1.0;
+ unsigned i;
+ for(i = row; i < Rows; i++)
+ {
+ if((tmp = fabs(m[i][row])) > max_val && tmp != 0.0)
+ {
+ max_val = tmp;
+ k = i;
+ }
+ }
+
+ if(m[k][row] == 0.0)
+ {
+ return -1;
+ }
+
+ if(k != int(row))
+ {
+ swap_arrays(m[k], m[row], Cols);
+ return k;
+ }
+ return 0;
+ }
+ };
+
+
+
+ //===============================================================simul_eq
+ template<unsigned Size, unsigned RightCols>
+ struct simul_eq
+ {
+ static bool solve(const double left[Size][Size],
+ const double right[Size][RightCols],
+ double result[Size][RightCols])
+ {
+ unsigned i, j, k;
+ double a1;
+
+ double tmp[Size][Size + RightCols];
+
+ for(i = 0; i < Size; i++)
+ {
+ for(j = 0; j < Size; j++)
+ {
+ tmp[i][j] = left[i][j];
+ }
+ for(j = 0; j < RightCols; j++)
+ {
+ tmp[i][Size + j] = right[i][j];
+ }
+ }
+
+ for(k = 0; k < Size; k++)
+ {
+ if(matrix_pivot<Size, Size + RightCols>::pivot(tmp, k) < 0)
+ {
+ return false; // Singularity....
+ }
+
+ a1 = tmp[k][k];
+
+ for(j = k; j < Size + RightCols; j++)
+ {
+ tmp[k][j] /= a1;
+ }
+
+ for(i = k + 1; i < Size; i++)
+ {
+ a1 = tmp[i][k];
+ for (j = k; j < Size + RightCols; j++)
+ {
+ tmp[i][j] -= a1 * tmp[k][j];
+ }
+ }
+ }
+
+
+ for(k = 0; k < RightCols; k++)
+ {
+ int m;
+ for(m = int(Size - 1); m >= 0; m--)
+ {
+ result[m][k] = tmp[m][Size + k];
+ for(j = m + 1; j < Size; j++)
+ {
+ result[m][k] -= tmp[m][j] * result[j][k];
+ }
+ }
+ }
+ return true;
+ }
+
+ };
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_span_allocator.h b/agg/inc/agg_span_allocator.h
new file mode 100755
index 000000000000..d99c5b9d8936
--- /dev/null
+++ b/agg/inc/agg_span_allocator.h
@@ -0,0 +1,72 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_SPAN_ALLOCATOR_INCLUDED
+#define AGG_SPAN_ALLOCATOR_INCLUDED
+
+#include "agg_basics.h"
+
+namespace agg
+{
+ //----------------------------------------------------------span_allocator
+ template<class ColorT> class span_allocator
+ {
+ public:
+ typedef ColorT color_type;
+
+ //--------------------------------------------------------------------
+ ~span_allocator()
+ {
+ delete [] m_span;
+ }
+
+ //--------------------------------------------------------------------
+ span_allocator() :
+ m_max_span_len(0),
+ m_span(0)
+ {
+ }
+
+ //--------------------------------------------------------------------
+ color_type* allocate(unsigned max_span_len)
+ {
+ if(max_span_len > m_max_span_len)
+ {
+ delete [] m_span;
+ m_span = new color_type[m_max_span_len = max_span_len];
+ }
+ return m_span;
+ }
+
+ //--------------------------------------------------------------------
+ color_type* span()
+ {
+ return m_span;
+ }
+
+ private:
+ //--------------------------------------------------------------------
+ span_allocator(const span_allocator<ColorT>&);
+ const span_allocator<ColorT>& operator = (const span_allocator<ColorT>&);
+
+ unsigned m_max_span_len;
+ color_type* m_span;
+ };
+}
+
+
+#endif
+
+
diff --git a/agg/inc/agg_span_converter.h b/agg/inc/agg_span_converter.h
new file mode 100755
index 000000000000..104cd7d8e73e
--- /dev/null
+++ b/agg/inc/agg_span_converter.h
@@ -0,0 +1,53 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_SPAN_CONVERTER_INCLUDED
+#define AGG_SPAN_CONVERTER_INCLUDED
+
+#include "agg_basics.h"
+
+namespace agg
+{
+ //----------------------------------------------------------span_converter
+ template<class SpanGenerator, class Conv> class span_converter
+ {
+ public:
+ typedef typename SpanGenerator::color_type color_type;
+
+ span_converter(SpanGenerator& span_gen, Conv& conv) :
+ m_span_gen(&span_gen), m_conv(&conv) {}
+
+ //--------------------------------------------------------------------
+ void prepare(unsigned max_span_len)
+ {
+ m_span_gen->prepare(max_span_len);
+ }
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ color_type* span = m_span_gen->generate(x, y, len);
+ m_conv->convert(span, x, y, len);
+ return span;
+ }
+
+ private:
+ SpanGenerator* m_span_gen;
+ Conv* m_conv;
+ };
+
+}
+
+#endif
diff --git a/agg/inc/agg_span_generator.h b/agg/inc/agg_span_generator.h
new file mode 100755
index 000000000000..82b0ebef95f3
--- /dev/null
+++ b/agg/inc/agg_span_generator.h
@@ -0,0 +1,50 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_SPAN_GENERATOR_INCLUDED
+#define AGG_SPAN_GENERATOR_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_span_allocator.h"
+
+namespace agg
+{
+
+ //==========================================================span_generator
+ template<class ColorT, class Allocator> class span_generator
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Allocator alloc_type;
+
+ //--------------------------------------------------------------------
+ span_generator(alloc_type& alloc) : m_alloc(&alloc) {}
+
+ //--------------------------------------------------------------------
+ void allocator(alloc_type& alloc) { m_alloc = &alloc; }
+ alloc_type& allocator() { return *m_alloc; }
+
+ //--------------------------------------------------------------------
+ void prepare(unsigned max_span_len)
+ {
+ m_alloc->allocate(max_span_len);
+ }
+
+ private:
+ alloc_type* m_alloc;
+ };
+}
+
+#endif
diff --git a/agg/inc/agg_span_gouraud.h b/agg/inc/agg_span_gouraud.h
new file mode 100755
index 000000000000..76747899b5fc
--- /dev/null
+++ b/agg/inc/agg_span_gouraud.h
@@ -0,0 +1,180 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_SPAN_GOURAUD_INCLUDED
+#define AGG_SPAN_GOURAUD_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_math.h"
+#include "agg_span_generator.h"
+
+namespace agg
+{
+
+ //============================================================span_gouraud
+ template<class ColorT, class Allocator>
+ class span_gouraud : public span_generator<ColorT, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Allocator alloc_type;
+
+ struct coord_type
+ {
+ double x;
+ double y;
+ color_type color;
+ };
+
+ //--------------------------------------------------------------------
+ span_gouraud(alloc_type& alloc) :
+ span_generator<color_type, alloc_type>(alloc),
+ m_vertex(0)
+ {
+ m_cmd[0] = path_cmd_stop;
+ }
+
+ //--------------------------------------------------------------------
+ span_gouraud(alloc_type& alloc,
+ const color_type& c1,
+ const color_type& c2,
+ const color_type& c3,
+ double x1, double y1,
+ double x2, double y2,
+ double x3, double y3,
+ double d) :
+ span_generator<color_type, alloc_type>(alloc)
+ {
+ colors(c1, c2, c3);
+ triangle(x1, y1, x2, y2, x3, y3, d);
+ }
+
+ //--------------------------------------------------------------------
+ void colors(ColorT c1, ColorT c2, ColorT c3)
+ {
+ m_coord[0].color = c1;
+ m_coord[1].color = c2;
+ m_coord[2].color = c3;
+ }
+
+ //--------------------------------------------------------------------
+ // Sets the triangle and dilates it if needed.
+ // The trick here is to calculate beveled joins in the vertices of the
+ // triangle and render it as a 6-vertex polygon.
+ // It's necessary to achieve numerical stability.
+ // However, the coordinates to interpolate colors are calculated
+ // as miter joins (calc_intersection).
+ void triangle(double x1, double y1,
+ double x2, double y2,
+ double x3, double y3,
+ double d)
+ {
+ m_coord[0].x = m_x[0] = x1;
+ m_coord[0].y = m_y[0] = y1;
+ m_coord[1].x = m_x[1] = x2;
+ m_coord[1].y = m_y[1] = y2;
+ m_coord[2].x = m_x[2] = x3;
+ m_coord[2].y = m_y[2] = y3;
+ m_cmd[0] = path_cmd_move_to;
+ m_cmd[1] = path_cmd_line_to;
+ m_cmd[2] = path_cmd_line_to;
+ m_cmd[3] = path_cmd_stop;
+
+ if(d != 0.0)
+ {
+ dilate_triangle(m_coord[0].x, m_coord[0].y,
+ m_coord[1].x, m_coord[1].y,
+ m_coord[2].x, m_coord[2].y,
+ m_x, m_y, d);
+
+ calc_intersection(m_x[4], m_y[4], m_x[5], m_y[5],
+ m_x[0], m_y[0], m_x[1], m_y[1],
+ &m_coord[0].x, &m_coord[0].y);
+
+ calc_intersection(m_x[0], m_y[0], m_x[1], m_y[1],
+ m_x[2], m_y[2], m_x[3], m_y[3],
+ &m_coord[1].x, &m_coord[1].y);
+
+ calc_intersection(m_x[2], m_y[2], m_x[3], m_y[3],
+ m_x[4], m_y[4], m_x[5], m_y[5],
+ &m_coord[2].x, &m_coord[2].y);
+ m_cmd[3] = path_cmd_line_to;
+ m_cmd[4] = path_cmd_line_to;
+ m_cmd[5] = path_cmd_line_to;
+ m_cmd[6] = path_cmd_stop;
+ }
+ }
+
+ //--------------------------------------------------------------------
+ // Vertex Source Interface to feed the coordinates to the rasterizer
+ void rewind(unsigned)
+ {
+ m_vertex = 0;
+ }
+
+ //--------------------------------------------------------------------
+ unsigned vertex(double* x, double* y)
+ {
+ *x = m_x[m_vertex];
+ *y = m_y[m_vertex];
+ return m_cmd[m_vertex++];
+ }
+
+
+
+ protected:
+ //--------------------------------------------------------------------
+ void arrange_vertices(coord_type* coord) const
+ {
+ coord[0] = m_coord[0];
+ coord[1] = m_coord[1];
+ coord[2] = m_coord[2];
+
+ if(m_coord[0].y > m_coord[2].y)
+ {
+ coord[0] = m_coord[2];
+ coord[2] = m_coord[0];
+ }
+
+ coord_type tmp;
+ if(coord[0].y > coord[1].y)
+ {
+ tmp = coord[1];
+ coord[1] = coord[0];
+ coord[0] = tmp;
+ }
+
+ if(coord[1].y > coord[2].y)
+ {
+ tmp = coord[2];
+ coord[2] = coord[1];
+ coord[1] = tmp;
+ }
+ }
+
+
+ private:
+ //--------------------------------------------------------------------
+ coord_type m_coord[3];
+ double m_x[8];
+ double m_y[8];
+ unsigned m_cmd[8];
+ unsigned m_vertex;
+ };
+
+}
+
+#endif
+
diff --git a/agg/inc/agg_span_gouraud_gray.h b/agg/inc/agg_span_gouraud_gray.h
new file mode 100755
index 000000000000..caf288919e93
--- /dev/null
+++ b/agg/inc/agg_span_gouraud_gray.h
@@ -0,0 +1,185 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Adaptation for high precision colors has been sponsored by
+// Liberty Technology Systems, Inc., visit http://lib-sys.com
+//
+// Liberty Technology Systems, Inc. is the provider of
+// PostScript and PDF technology for software developers.
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_SPAN_GOURAUD_GRAY_INCLUDED
+#define AGG_SPAN_GOURAUD_GRAY_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_color_gray.h"
+#include "agg_dda_line.h"
+#include "agg_span_gouraud.h"
+
+namespace agg
+{
+
+ //=======================================================span_gouraud_gray
+ template<class ColorT, class Allocator = span_allocator<ColorT> >
+ class span_gouraud_gray : public span_gouraud<ColorT, Allocator>
+ {
+ public:
+ typedef Allocator alloc_type;
+ typedef ColorT color_type;
+ typedef typename color_type::value_type value_type;
+ typedef span_gouraud<color_type, alloc_type> base_type;
+ typedef typename base_type::coord_type coord_type;
+
+ private:
+ //--------------------------------------------------------------------
+ struct gray_calc
+ {
+ void init(const coord_type& c1, const coord_type& c2)
+ {
+ m_x1 = c1.x;
+ m_y1 = c1.y;
+ m_dx = c2.x - c1.x;
+ m_dy = 1.0 / (c2.y - c1.y);
+ m_v1 = c1.color.v;
+ m_a1 = c1.color.a;
+ m_dv = c2.color.v - m_v1;
+ m_da = c2.color.a - m_a1;
+ }
+
+ void calc(int y)
+ {
+ double k = 0.0;
+ if(y > m_y1) k = (y - m_y1) * m_dy;
+ gray8 c;
+ m_v = m_v1 + int(m_dv * k);
+ m_a = m_a1 + int(m_da * k);
+ m_x = int(m_x1 + m_dx * k);
+ }
+
+ double m_x1;
+ double m_y1;
+ double m_dx;
+ double m_dy;
+ int m_v1;
+ int m_a1;
+ int m_dv;
+ int m_da;
+ int m_v;
+ int m_a;
+ int m_x;
+ };
+
+
+ public:
+ //--------------------------------------------------------------------
+ span_gouraud_gray(alloc_type& alloc) : base_type(alloc) {}
+
+ //--------------------------------------------------------------------
+ span_gouraud_gray(alloc_type& alloc,
+ const color_type& c1,
+ const color_type& c2,
+ const color_type& c3,
+ double x1, double y1,
+ double x2, double y2,
+ double x3, double y3,
+ double d = 0) :
+ base_type(alloc, c1, c2, c3, x1, y1, x2, y2, x3, y3, d)
+ {}
+
+ //--------------------------------------------------------------------
+ void prepare(unsigned max_span_len)
+ {
+ base_type::prepare(max_span_len);
+
+ coord_type coord[3];
+ arrange_vertices(coord);
+
+ m_y2 = int(coord[1].y);
+
+ m_swap = calc_point_location(coord[0].x, coord[0].y,
+ coord[2].x, coord[2].y,
+ coord[1].x, coord[1].y) < 0.0;
+
+ m_c1.init(coord[0], coord[2]);
+ m_c2.init(coord[0], coord[1]);
+ m_c3.init(coord[1], coord[2]);
+ }
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ m_c1.calc(y);
+ const gray_calc* pc1 = &m_c1;
+ const gray_calc* pc2 = &m_c2;
+
+ if(y < m_y2)
+ {
+ m_c2.calc(y+1);
+ }
+ else
+ {
+ m_c3.calc(y);
+ pc2 = &m_c3;
+ }
+
+ if(m_swap)
+ {
+ const gray_calc* t = pc2;
+ pc2 = pc1;
+ pc1 = t;
+ }
+
+ int nx = pc1->m_x;
+ unsigned nlen = pc2->m_x - pc1->m_x + 1;
+
+ if(nlen < len) nlen = len;
+
+ dda_line_interpolator<14> v(pc1->m_v, pc2->m_v, nlen);
+ dda_line_interpolator<14> a(pc1->m_a, pc2->m_a, nlen);
+
+ if(nx < x)
+ {
+ unsigned d = unsigned(x - nx);
+ v += d;
+ a += d;
+ }
+
+ color_type* span = base_type::allocator().span();
+ do
+ {
+ span->v = (value_type)v.y();
+ span->a = (value_type)a.y();
+ ++v;
+ ++a;
+ ++span;
+ }
+ while(--len);
+ return base_type::allocator().span();
+ }
+
+
+ private:
+ bool m_swap;
+ int m_y2;
+ gray_calc m_c1;
+ gray_calc m_c2;
+ gray_calc m_c3;
+ };
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_span_gouraud_rgba.h b/agg/inc/agg_span_gouraud_rgba.h
new file mode 100755
index 000000000000..75679a9426c2
--- /dev/null
+++ b/agg/inc/agg_span_gouraud_rgba.h
@@ -0,0 +1,206 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Adaptation for high precision colors has been sponsored by
+// Liberty Technology Systems, Inc., visit http://lib-sys.com
+//
+// Liberty Technology Systems, Inc. is the provider of
+// PostScript and PDF technology for software developers.
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_SPAN_GOURAUD_RGBA_INCLUDED
+#define AGG_SPAN_GOURAUD_RGBA_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_color_rgba.h"
+#include "agg_dda_line.h"
+#include "agg_span_gouraud.h"
+
+namespace agg
+{
+
+ //=======================================================span_gouraud_rgba
+ template<class ColorT, class Allocator = span_allocator<ColorT> >
+ class span_gouraud_rgba : public span_gouraud<ColorT, Allocator>
+ {
+ public:
+ typedef Allocator alloc_type;
+ typedef ColorT color_type;
+ typedef typename ColorT::value_type value_type;
+ typedef span_gouraud<color_type, alloc_type> base_type;
+ typedef typename base_type::coord_type coord_type;
+
+ private:
+ //--------------------------------------------------------------------
+ struct rgba_calc
+ {
+ void init(const coord_type& c1, const coord_type& c2)
+ {
+ m_x1 = c1.x;
+ m_y1 = c1.y;
+ m_dx = c2.x - c1.x;
+ m_dy = 1.0 / (c2.y - c1.y);
+ m_r1 = c1.color.r;
+ m_g1 = c1.color.g;
+ m_b1 = c1.color.b;
+ m_a1 = c1.color.a;
+ m_dr = c2.color.r - m_r1;
+ m_dg = c2.color.g - m_g1;
+ m_db = c2.color.b - m_b1;
+ m_da = c2.color.a - m_a1;
+ }
+
+ void calc(int y)
+ {
+ double k = 0.0;
+ if(y > m_y1) k = (y - m_y1) * m_dy;
+ color_type rgba;
+ m_r = m_r1 + int(m_dr * k);
+ m_g = m_g1 + int(m_dg * k);
+ m_b = m_b1 + int(m_db * k);
+ m_a = m_a1 + int(m_da * k);
+ m_x = int(m_x1 + m_dx * k);
+ }
+
+ double m_x1;
+ double m_y1;
+ double m_dx;
+ double m_dy;
+ int m_r1;
+ int m_g1;
+ int m_b1;
+ int m_a1;
+ int m_dr;
+ int m_dg;
+ int m_db;
+ int m_da;
+ int m_r;
+ int m_g;
+ int m_b;
+ int m_a;
+ int m_x;
+ };
+
+ public:
+
+ //--------------------------------------------------------------------
+ span_gouraud_rgba(alloc_type& alloc) : base_type(alloc) {}
+
+ //--------------------------------------------------------------------
+ span_gouraud_rgba(alloc_type& alloc,
+ const color_type& c1,
+ const color_type& c2,
+ const color_type& c3,
+ double x1, double y1,
+ double x2, double y2,
+ double x3, double y3,
+ double d = 0) :
+ base_type(alloc, c1, c2, c3, x1, y1, x2, y2, x3, y3, d)
+ {}
+
+ //--------------------------------------------------------------------
+ void prepare(unsigned max_span_len)
+ {
+ base_type::prepare(max_span_len);
+
+ coord_type coord[3];
+ arrange_vertices(coord);
+
+ m_y2 = int(coord[1].y);
+
+ m_swap = calc_point_location(coord[0].x, coord[0].y,
+ coord[2].x, coord[2].y,
+ coord[1].x, coord[1].y) < 0.0;
+
+ m_rgba1.init(coord[0], coord[2]);
+ m_rgba2.init(coord[0], coord[1]);
+ m_rgba3.init(coord[1], coord[2]);
+ }
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ m_rgba1.calc(y);
+ const rgba_calc* pc1 = &m_rgba1;
+ const rgba_calc* pc2 = &m_rgba2;
+
+ if(y < m_y2)
+ {
+ m_rgba2.calc(y+1);
+ }
+ else
+ {
+ m_rgba3.calc(y);
+ pc2 = &m_rgba3;
+ }
+
+ if(m_swap)
+ {
+ const rgba_calc* t = pc2;
+ pc2 = pc1;
+ pc1 = t;
+ }
+
+ int nx = pc1->m_x;
+ unsigned nlen = pc2->m_x - pc1->m_x + 1;
+
+ if(nlen < len) nlen = len;
+
+ dda_line_interpolator<14> r(pc1->m_r, pc2->m_r, nlen);
+ dda_line_interpolator<14> g(pc1->m_g, pc2->m_g, nlen);
+ dda_line_interpolator<14> b(pc1->m_b, pc2->m_b, nlen);
+ dda_line_interpolator<14> a(pc1->m_a, pc2->m_a, nlen);
+
+ if(nx < x)
+ {
+ unsigned d = unsigned(x - nx);
+ r += d;
+ g += d;
+ b += d;
+ a += d;
+ }
+
+ color_type* span = base_type::allocator().span();
+ do
+ {
+ span->r = (value_type)r.y();
+ span->g = (value_type)g.y();
+ span->b = (value_type)b.y();
+ span->a = (value_type)a.y();
+ ++r;
+ ++g;
+ ++b;
+ ++a;
+ ++span;
+ }
+ while(--len);
+ return base_type::allocator().span();
+ }
+
+
+ private:
+ bool m_swap;
+ int m_y2;
+ rgba_calc m_rgba1;
+ rgba_calc m_rgba2;
+ rgba_calc m_rgba3;
+ };
+
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_span_gradient.h b/agg/inc/agg_span_gradient.h
new file mode 100755
index 000000000000..6bac1c652a84
--- /dev/null
+++ b/agg/inc/agg_span_gradient.h
@@ -0,0 +1,422 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_SPAN_GRADIENT_INCLUDED
+#define AGG_SPAN_GRADIENT_INCLUDED
+
+#include <math.h>
+#include <stdlib.h>
+#include <string.h>
+#include "agg_basics.h"
+#include "agg_span_generator.h"
+#include "agg_math.h"
+#include "agg_array.h"
+
+
+namespace agg
+{
+
+ enum
+ {
+ gradient_subpixel_shift = 4, //-----gradient_subpixel_shift
+ gradient_subpixel_size = 1 << gradient_subpixel_shift, //-----gradient_subpixel_size
+ gradient_subpixel_mask = gradient_subpixel_size - 1 //-----gradient_subpixel_mask
+ };
+
+
+
+ //==========================================================span_gradient
+ template<class ColorT,
+ class Interpolator,
+ class GradientF,
+ class ColorF,
+ class Allocator = span_allocator<ColorT> >
+ class span_gradient : public span_generator<ColorT, Allocator>
+ {
+ public:
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef ColorT color_type;
+ typedef span_generator<color_type, alloc_type> base_type;
+
+ enum
+ {
+ downscale_shift = interpolator_type::subpixel_shift -
+ gradient_subpixel_shift
+ };
+
+ //--------------------------------------------------------------------
+ span_gradient(alloc_type& alloc) : base_type(alloc) {}
+
+ //--------------------------------------------------------------------
+ span_gradient(alloc_type& alloc,
+ interpolator_type& inter,
+ const GradientF& gradient_function_,
+ const ColorF& color_function_,
+ double d1_, double d2_) :
+ base_type(alloc),
+ m_interpolator(&inter),
+ m_gradient_function(&gradient_function_),
+ m_color_function(&color_function_),
+ m_d1(int(d1_ * gradient_subpixel_size)),
+ m_d2(int(d2_ * gradient_subpixel_size))
+ {}
+
+ //--------------------------------------------------------------------
+ interpolator_type& interpolator() { return *m_interpolator; }
+ const GradientF& gradient_function() const { return *m_gradient_function; }
+ const ColorF& color_function() const { return *m_color_function; }
+ double d1() const { return double(m_d1) / gradient_subpixel_size; }
+ double d2() const { return double(m_d2) / gradient_subpixel_size; }
+
+ //--------------------------------------------------------------------
+ void interpolator(interpolator_type& i) { m_interpolator = &i; }
+ void gradient_function(const GradientF& gf) { m_gradient_function = &gf; }
+ void color_function(const ColorF& cf) { m_color_function = &cf; }
+ void d1(double v) { m_d1 = int(v * gradient_subpixel_size); }
+ void d2(double v) { m_d2 = int(v * gradient_subpixel_size); }
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ color_type* span = base_type::allocator().span();
+ int dd = m_d2 - m_d1;
+ if(dd < 1) dd = 1;
+ m_interpolator->begin(x+0.5, y+0.5, len);
+ do
+ {
+ m_interpolator->coordinates(&x, &y);
+ int d = m_gradient_function->calculate(x >> downscale_shift,
+ y >> downscale_shift, dd);
+ d = ((d - m_d1) * (int)m_color_function->size()) / dd;
+ if(d < 0) d = 0;
+ if(d >= (int)m_color_function->size()) d = m_color_function->size() - 1;
+ *span++ = (*m_color_function)[d];
+ ++(*m_interpolator);
+ }
+ while(--len);
+ return base_type::allocator().span();
+ }
+
+ private:
+ interpolator_type* m_interpolator;
+ const GradientF* m_gradient_function;
+ const ColorF* m_color_function;
+ int m_d1;
+ int m_d2;
+ };
+
+
+
+
+ //=====================================================gradient_linear_color
+ template<class ColorT>
+ struct gradient_linear_color
+ {
+ typedef ColorT color_type;
+
+ gradient_linear_color() {}
+ gradient_linear_color(const color_type& c1, const color_type& c2,
+ unsigned size = 256) :
+ m_c1(c1), m_c2(c2), m_size(size) {}
+
+ unsigned size() const { return m_size; }
+ color_type operator [] (unsigned v) const
+ {
+ return m_c1.gradient(m_c2, double(v) / double(m_size - 1));
+ }
+
+ void colors(const color_type& c1, const color_type& c2, unsigned size = 256)
+ {
+ m_c1 = c1;
+ m_c2 = c2;
+ m_size = size;
+ }
+
+ color_type m_c1;
+ color_type m_c2;
+ unsigned m_size;
+ };
+
+
+ //==========================================================gradient_circle
+ class gradient_circle
+ {
+ // Actually the same as radial. Just for compatibility
+ public:
+ static AGG_INLINE int calculate(int x, int y, int)
+ {
+ return int(fast_sqrt(x*x + y*y));
+ }
+ };
+
+
+ //==========================================================gradient_radial
+ class gradient_radial
+ {
+ public:
+ static AGG_INLINE int calculate(int x, int y, int)
+ {
+ return int(fast_sqrt(x*x + y*y));
+ }
+ };
+
+
+ //========================================================gradient_radial_d
+ class gradient_radial_d
+ {
+ public:
+ static AGG_INLINE int calculate(int x, int y, int)
+ {
+ return int(sqrt(double(x)*double(x) + double(y)*double(y)));
+ }
+ };
+
+
+ //====================================================gradient_radial_focus
+ class gradient_radial_focus
+ {
+ public:
+ //---------------------------------------------------------------------
+ gradient_radial_focus() :
+ m_radius(100 * gradient_subpixel_size),
+ m_focus_x(0),
+ m_focus_y(0)
+ {
+ update_values();
+ }
+
+ //---------------------------------------------------------------------
+ gradient_radial_focus(double r, double fx, double fy) :
+ m_radius (int(r * gradient_subpixel_size)),
+ m_focus_x(int(fx * gradient_subpixel_size)),
+ m_focus_y(int(fy * gradient_subpixel_size))
+ {
+ update_values();
+ }
+
+ //---------------------------------------------------------------------
+ void init(double r, double fx, double fy)
+ {
+ m_radius = int(r * gradient_subpixel_size);
+ m_focus_x = int(fx * gradient_subpixel_size);
+ m_focus_y = int(fy * gradient_subpixel_size);
+ update_values();
+ }
+
+ //---------------------------------------------------------------------
+ double radius() const { return double(m_radius) / gradient_subpixel_size; }
+ double focus_x() const { return double(m_focus_x) / gradient_subpixel_size; }
+ double focus_y() const { return double(m_focus_y) / gradient_subpixel_size; }
+
+ //---------------------------------------------------------------------
+ int calculate(int x, int y, int d) const
+ {
+ double solution_x;
+ double solution_y;
+
+ // Special case to avoid divide by zero or very near zero
+ //---------------------------------
+ if(x == int(m_focus_x))
+ {
+ solution_x = m_focus_x;
+ solution_y = 0.0;
+ solution_y += (y > m_focus_y) ? m_trivial : -m_trivial;
+ }
+ else
+ {
+ // Slope of the focus-current line
+ //-------------------------------
+ double slope = double(y - m_focus_y) / double(x - m_focus_x);
+
+ // y-intercept of that same line
+ //--------------------------------
+ double yint = double(y) - (slope * x);
+
+ // Use the classical quadratic formula to calculate
+ // the intersection point
+ //--------------------------------
+ double a = (slope * slope) + 1;
+ double b = 2 * slope * yint;
+ double c = yint * yint - m_radius2;
+ double det = sqrt((b * b) - (4.0 * a * c));
+ solution_x = -b;
+
+ // Choose the positive or negative root depending
+ // on where the X coord lies with respect to the focus.
+ solution_x += (x < m_focus_x) ? -det : det;
+ solution_x /= 2.0 * a;
+
+ // Calculating of Y is trivial
+ solution_y = (slope * solution_x) + yint;
+ }
+
+ // Calculate the percentage (0...1) of the current point along the
+ // focus-circumference line and return the normalized (0...d) value
+ //-------------------------------
+ solution_x -= double(m_focus_x);
+ solution_y -= double(m_focus_y);
+ double int_to_focus = solution_x * solution_x + solution_y * solution_y;
+ double cur_to_focus = double(x - m_focus_x) * double(x - m_focus_x) +
+ double(y - m_focus_y) * double(y - m_focus_y);
+
+ return int(sqrt(cur_to_focus / int_to_focus) * d);
+ }
+
+ private:
+ //---------------------------------------------------------------------
+ void update_values()
+ {
+ // For use in the quadractic equation
+ //-------------------------------
+ m_radius2 = double(m_radius) * double(m_radius);
+
+ double dist = sqrt(double(m_focus_x) * double(m_focus_x) +
+ double(m_focus_y) * double(m_focus_y));
+
+ // Test if distance from focus to center is greater than the radius
+ // For the sake of assurance factor restrict the point to be
+ // no further than 99% of the radius.
+ //-------------------------------
+ double r = m_radius * 0.99;
+ if(dist > r)
+ {
+ // clamp focus to radius
+ // x = r cos theta, y = r sin theta
+ //------------------------
+ double a = atan2(double(m_focus_y), double(m_focus_x));
+ m_focus_x = int(r * cos(a));
+ m_focus_y = int(r * sin(a));
+ }
+
+ // Calculate the solution to be used in the case where x == focus_x
+ //------------------------------
+ m_trivial = sqrt(m_radius2 - (m_focus_x * m_focus_x));
+ }
+
+ int m_radius;
+ int m_focus_x;
+ int m_focus_y;
+ double m_radius2;
+ double m_trivial;
+ };
+
+
+
+ //==============================================================gradient_x
+ class gradient_x
+ {
+ public:
+ static int calculate(int x, int, int) { return x; }
+ };
+
+
+ //==============================================================gradient_y
+ class gradient_y
+ {
+ public:
+ static int calculate(int, int y, int) { return y; }
+ };
+
+
+ //========================================================gradient_diamond
+ class gradient_diamond
+ {
+ public:
+ static AGG_INLINE int calculate(int x, int y, int)
+ {
+ int ax = abs(x);
+ int ay = abs(y);
+ return ax > ay ? ax : ay;
+ }
+ };
+
+
+ //=============================================================gradient_xy
+ class gradient_xy
+ {
+ public:
+ static AGG_INLINE int calculate(int x, int y, int d)
+ {
+ return abs(x) * abs(y) / d;
+ }
+ };
+
+
+ //========================================================gradient_sqrt_xy
+ class gradient_sqrt_xy
+ {
+ public:
+ static AGG_INLINE int calculate(int x, int y, int)
+ {
+ return fast_sqrt(abs(x) * abs(y));
+ }
+ };
+
+
+ //==========================================================gradient_conic
+ class gradient_conic
+ {
+ public:
+ static AGG_INLINE int calculate(int x, int y, int d)
+ {
+ return int(fabs(atan2(double(y), double(x))) * double(d) / pi);
+ }
+ };
+
+
+ //=================================================gradient_repeat_adaptor
+ template<class GradientF> class gradient_repeat_adaptor
+ {
+ public:
+ gradient_repeat_adaptor(const GradientF& gradient) :
+ m_gradient(&gradient) {}
+
+ AGG_INLINE int calculate(int x, int y, int d) const
+ {
+ int ret = m_gradient->calculate(x, y, d) % d;
+ if(ret < 0) ret += d;
+ return ret;
+ }
+
+ private:
+ const GradientF* m_gradient;
+ };
+
+
+ //================================================gradient_reflect_adaptor
+ template<class GradientF> class gradient_reflect_adaptor
+ {
+ public:
+ gradient_reflect_adaptor(const GradientF& gradient) :
+ m_gradient(&gradient) {}
+
+ AGG_INLINE int calculate(int x, int y, int d) const
+ {
+ int d2 = d << 1;
+ int ret = m_gradient->calculate(x, y, d) % d2;
+ if(ret < 0) ret += d2;
+ if(ret >= d) ret = d2 - ret;
+ return ret;
+ }
+
+ private:
+ const GradientF* m_gradient;
+ };
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_span_gradient_alpha.h b/agg/inc/agg_span_gradient_alpha.h
new file mode 100755
index 000000000000..b1444ed8c4bc
--- /dev/null
+++ b/agg/inc/agg_span_gradient_alpha.h
@@ -0,0 +1,123 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_SPAN_GRADIENT_ALPHA_INCLUDED
+#define AGG_SPAN_GRADIENT_ALPHA_INCLUDED
+
+#include "agg_span_gradient.h"
+
+namespace agg
+{
+ //======================================================span_gradient_alpha
+ template<class ColorT,
+ class Interpolator,
+ class GradientF,
+ class AlphaF>
+ class span_gradient_alpha
+ {
+ public:
+ typedef Interpolator interpolator_type;
+ typedef ColorT color_type;
+ typedef typename color_type::value_type alpha_type;
+
+ enum
+ {
+ downscale_shift = interpolator_type::subpixel_shift - gradient_subpixel_shift
+ };
+
+
+ //--------------------------------------------------------------------
+ span_gradient_alpha() {}
+
+ //--------------------------------------------------------------------
+ span_gradient_alpha(interpolator_type& inter,
+ const GradientF& gradient_function,
+ const AlphaF& alpha_function,
+ double d1, double d2) :
+ m_interpolator(&inter),
+ m_gradient_function(&gradient_function),
+ m_alpha_function(&alpha_function),
+ m_d1(int(d1 * gradient_subpixel_size)),
+ m_d2(int(d2 * gradient_subpixel_size))
+ {}
+
+ //--------------------------------------------------------------------
+ interpolator_type& interpolator() { return *m_interpolator; }
+ const GradientF& gradient_function() const { return *m_gradient_function; }
+ const AlphaF& alpha_function() const { return *m_alpha_function; }
+ double d1() const { return double(m_d1) / gradient_subpixel_size; }
+ double d2() const { return double(m_d2) / gradient_subpixel_size; }
+
+ //--------------------------------------------------------------------
+ void interpolator(interpolator_type& i) { m_interpolator = &i; }
+ void gradient_function(const GradientF& gf) { m_gradient_function = &gf; }
+ void alpha_function(const AlphaF& af) { m_alpha_function = &af; }
+ void d1(double v) { m_d1 = int(v * gradient_subpixel_size); }
+ void d2(double v) { m_d2 = int(v * gradient_subpixel_size); }
+
+ //--------------------------------------------------------------------
+ void convert(color_type* span, int x, int y, unsigned len)
+ {
+ int dd = m_d2 - m_d1;
+ if(dd < 1) dd = 1;
+ m_interpolator->begin(x+0.5, y+0.5, len);
+ do
+ {
+ m_interpolator->coordinates(&x, &y);
+ int d = m_gradient_function->calculate(x >> downscale_shift,
+ y >> downscale_shift, dd);
+ d = ((d - m_d1) * (int)m_alpha_function->size()) / dd;
+ if(d < 0) d = 0;
+ if(d >= (int)m_alpha_function->size()) d = m_alpha_function->size() - 1;
+ span->a = (*m_alpha_function)[d];
+ ++span;
+ ++(*m_interpolator);
+ }
+ while(--len);
+ }
+
+ private:
+ interpolator_type* m_interpolator;
+ const GradientF* m_gradient_function;
+ const AlphaF* m_alpha_function;
+ int m_d1;
+ int m_d2;
+ };
+
+
+ //=======================================================gradient_alpha_x
+ template<class ColorT> struct gradient_alpha_x
+ {
+ typedef typename ColorT::value_type alpha_type;
+ alpha_type operator [] (alpha_type x) const { return x; }
+ };
+
+ //====================================================gradient_alpha_x_u8
+ struct gradient_alpha_x_u8
+ {
+ typedef int8u alpha_type;
+ alpha_type operator [] (alpha_type x) const { return x; }
+ };
+
+ //==========================================gradient_alpha_one_munus_x_u8
+ struct gradient_alpha_one_munus_x_u8
+ {
+ typedef int8u alpha_type;
+ alpha_type operator [] (alpha_type x) const { return 255-x; }
+ };
+
+}
+
+#endif
diff --git a/agg/inc/agg_span_image_filter.h b/agg/inc/agg_span_image_filter.h
new file mode 100755
index 000000000000..34163bb29f24
--- /dev/null
+++ b/agg/inc/agg_span_image_filter.h
@@ -0,0 +1,110 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Image transformations with filtering. Span generator base class
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_SPAN_IMAGE_FILTER_INCLUDED
+#define AGG_SPAN_IMAGE_FILTER_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_image_filters.h"
+#include "agg_rendering_buffer.h"
+#include "agg_span_generator.h"
+
+
+namespace agg
+{
+
+ //--------------------------------------------------span_image_filter
+ template<class ColorT, class Interpolator, class Allocator>
+ class span_image_filter : public span_generator<ColorT, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Allocator alloc_type;
+ typedef Interpolator interpolator_type;
+ typedef span_generator<color_type, alloc_type> base_type;
+
+ //----------------------------------------------------------------
+ span_image_filter(alloc_type& alloc) :
+ span_generator<color_type, alloc_type>(alloc)
+ {}
+
+ //----------------------------------------------------------------
+ span_image_filter(alloc_type& alloc,
+ const rendering_buffer& src,
+ const color_type& back_color,
+ interpolator_type& interpolator_,
+ const image_filter_lut* filter_) :
+ span_generator<color_type, alloc_type>(alloc),
+ m_src(&src),
+ m_back_color(back_color),
+ m_interpolator(&interpolator_),
+ m_filter(filter_),
+ m_dx_dbl(0.5),
+ m_dy_dbl(0.5),
+ m_dx_int(image_subpixel_size / 2),
+ m_dy_int(image_subpixel_size / 2)
+ {}
+
+ //----------------------------------------------------------------
+ const rendering_buffer& source_image() const { return *m_src; }
+ const color_type& background_color() const { return m_back_color; }
+ const image_filter_lut& filter() const { return *m_filter; }
+ int filter_dx_int() const { return m_dx_int; }
+ int filter_dy_int() const { return m_dy_int; }
+ double filter_dx_dbl() const { return m_dx_dbl; }
+ double filter_dy_dbl() const { return m_dy_dbl; }
+
+ //----------------------------------------------------------------
+ void source_image(const rendering_buffer& v) { m_src = &v; }
+ void background_color(const color_type& v) { m_back_color = v; }
+ void interpolator(interpolator_type& v) { m_interpolator = &v; }
+ void filter(const image_filter_lut& v) { m_filter = &v; }
+ void filter_offset(double dx, double dy)
+ {
+ m_dx_dbl = dx;
+ m_dy_dbl = dy;
+ m_dx_int = int(dx * image_subpixel_size);
+ m_dy_int = int(dy * image_subpixel_size);
+ }
+ void filter_offset(double d) { filter_offset(d, d); }
+
+ //----------------------------------------------------------------
+ interpolator_type& interpolator() { return *m_interpolator; }
+
+ //--------------------------------------------------------------------
+ void prepare(unsigned max_span_len)
+ {
+ base_type::prepare(max_span_len);
+ }
+
+ //----------------------------------------------------------------
+ private:
+ const rendering_buffer* m_src;
+ color_type m_back_color;
+ interpolator_type* m_interpolator;
+ const image_filter_lut* m_filter;
+ double m_dx_dbl;
+ double m_dy_dbl;
+ unsigned m_dx_int;
+ unsigned m_dy_int;
+ };
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_span_image_filter_gray.h b/agg/inc/agg_span_image_filter_gray.h
new file mode 100755
index 000000000000..3f7ae6fcfa72
--- /dev/null
+++ b/agg/inc/agg_span_image_filter_gray.h
@@ -0,0 +1,701 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Adaptation for high precision colors has been sponsored by
+// Liberty Technology Systems, Inc., visit http://lib-sys.com
+//
+// Liberty Technology Systems, Inc. is the provider of
+// PostScript and PDF technology for software developers.
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_SPAN_IMAGE_FILTER_GRAY_INCLUDED
+#define AGG_SPAN_IMAGE_FILTER_GRAY_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_color_gray.h"
+#include "agg_span_image_filter.h"
+
+
+namespace agg
+{
+
+
+ //==============================================span_image_filter_gray_nn
+ template<class ColorT,
+ class Interpolator,
+ class Allocator = span_allocator<ColorT> >
+ class span_image_filter_gray_nn :
+ public span_image_filter<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_filter<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ span_image_filter_gray_nn(alloc_type& alloc) : base_type(alloc) {}
+
+ //--------------------------------------------------------------------
+ span_image_filter_gray_nn(alloc_type& alloc,
+ const rendering_buffer& src,
+ const color_type& back_color,
+ interpolator_type& inter) :
+ base_type(alloc, src, back_color, inter, 0)
+ {}
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ base_type::interpolator().begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+
+ calc_type fg;
+ calc_type src_alpha;
+
+ color_type* span = base_type::allocator().span();
+
+ int maxx = base_type::source_image().width() - 1;
+ int maxy = base_type::source_image().height() - 1;
+
+ do
+ {
+ base_type::interpolator().coordinates(&x, &y);
+
+ x >>= image_subpixel_shift;
+ y >>= image_subpixel_shift;
+
+ if(x >= 0 && y >= 0 &&
+ x <= maxx && y <= maxy)
+ {
+ fg = *((const value_type*)base_type::source_image().row(y) + x);
+ src_alpha = base_mask;
+ }
+ else
+ {
+ fg = base_type::background_color().v;
+ src_alpha = base_type::background_color().a;
+ }
+
+ span->v = (value_type)fg;
+ span->a = (value_type)src_alpha;
+ ++span;
+ ++base_type::interpolator();
+
+ } while(--len);
+
+ return base_type::allocator().span();
+ }
+ };
+
+
+
+
+ //========================================span_image_filter_gray_bilinear
+ template<class ColorT,
+ class Interpolator,
+ class Allocator = span_allocator<ColorT> >
+ class span_image_filter_gray_bilinear :
+ public span_image_filter<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_filter<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ span_image_filter_gray_bilinear(alloc_type& alloc) : base_type(alloc) {}
+
+ //--------------------------------------------------------------------
+ span_image_filter_gray_bilinear(alloc_type& alloc,
+ const rendering_buffer& src,
+ const color_type& back_color,
+ interpolator_type& inter) :
+ base_type(alloc, src, back_color, inter, 0)
+ {}
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ base_type::interpolator().begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+ calc_type fg;
+ calc_type src_alpha;
+ value_type back_v = base_type::background_color().v;
+ value_type back_a = base_type::background_color().a;
+
+ const value_type *fg_ptr;
+
+ color_type* span = base_type::allocator().span();
+
+ int maxx = base_type::source_image().width() - 1;
+ int maxy = base_type::source_image().height() - 1;
+
+ do
+ {
+ int x_hr;
+ int y_hr;
+
+ base_type::interpolator().coordinates(&x_hr, &y_hr);
+
+ x_hr -= base_type::filter_dx_int();
+ y_hr -= base_type::filter_dy_int();
+
+ int x_lr = x_hr >> image_subpixel_shift;
+ int y_lr = y_hr >> image_subpixel_shift;
+
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr < maxx && y_lr < maxy)
+ {
+ fg = image_subpixel_size * image_subpixel_size / 2;
+
+ x_hr &= image_subpixel_mask;
+ y_hr &= image_subpixel_mask;
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr) + x_lr;
+
+ fg += *fg_ptr++ * (image_subpixel_size - x_hr) * (image_subpixel_size - y_hr);
+ fg += *fg_ptr++ * (image_subpixel_size - y_hr) * x_hr;
+
+ fg_ptr = (const value_type*)base_type::source_image().next_row(fg_ptr - 2);
+
+ fg += *fg_ptr++ * (image_subpixel_size - x_hr) * y_hr;
+ fg += *fg_ptr++ * x_hr * y_hr;
+
+ fg >>= image_subpixel_shift * 2;
+ src_alpha = base_mask;
+ }
+ else
+ {
+ unsigned weight;
+ if(x_lr < -1 || y_lr < -1 ||
+ x_lr > maxx || y_lr > maxy)
+ {
+ fg = back_v;
+ src_alpha = back_a;
+ }
+ else
+ {
+ fg =
+ src_alpha = image_subpixel_size * image_subpixel_size / 2;
+
+ x_hr &= image_subpixel_mask;
+ y_hr &= image_subpixel_mask;
+
+ weight = (image_subpixel_size - x_hr) *
+ (image_subpixel_size - y_hr);
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ fg += weight * *((const value_type*)base_type::source_image().row(y_lr) + x_lr);
+ src_alpha += weight * base_mask;
+ }
+ else
+ {
+ fg += back_v * weight;
+ src_alpha += back_a * weight;
+ }
+
+ x_lr++;
+
+ weight = x_hr * (image_subpixel_size - y_hr);
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ fg += weight * *((const value_type*)base_type::source_image().row(y_lr) + x_lr);
+ src_alpha += weight * base_mask;
+ }
+ else
+ {
+ fg += back_v * weight;
+ src_alpha += back_a * weight;
+ }
+
+ x_lr--;
+ y_lr++;
+
+ weight = (image_subpixel_size - x_hr) * y_hr;
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ fg += weight * *((const value_type*)base_type::source_image().row(y_lr) + x_lr);
+ src_alpha += weight * base_mask;
+ }
+ else
+ {
+ fg += back_v * weight;
+ src_alpha += back_a * weight;
+ }
+
+ x_lr++;
+
+ weight = x_hr * y_hr;
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ fg += weight * *((const value_type*)base_type::source_image().row(y_lr) + x_lr);
+ src_alpha += weight * base_mask;
+ }
+ else
+ {
+ fg += back_v * weight;
+ src_alpha += back_a * weight;
+ }
+
+ fg >>= image_subpixel_shift * 2;
+ src_alpha >>= image_subpixel_shift * 2;
+ }
+ }
+
+ span->v = (value_type)fg;
+ span->a = (value_type)src_alpha;
+ ++span;
+ ++base_type::interpolator();
+
+ } while(--len);
+
+ return base_type::allocator().span();
+ }
+ };
+
+
+
+
+
+
+
+ //========================================span_image_filter_gray_2x2
+ template<class ColorT,
+ class Interpolator,
+ class Allocator = span_allocator<ColorT> >
+ class span_image_filter_gray_2x2 :
+ public span_image_filter<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_filter<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ span_image_filter_gray_2x2(alloc_type& alloc) : base_type(alloc) {}
+
+ //--------------------------------------------------------------------
+ span_image_filter_gray_2x2(alloc_type& alloc,
+ const rendering_buffer& src,
+ const color_type& back_color,
+ interpolator_type& inter,
+ const image_filter_lut& filter) :
+ base_type(alloc, src, back_color, inter, &filter)
+ {}
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ base_type::interpolator().begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+ calc_type fg;
+ calc_type src_alpha;
+ value_type back_v = base_type::background_color().v;
+ value_type back_a = base_type::background_color().a;
+
+ const value_type *fg_ptr;
+
+ color_type* span = base_type::allocator().span();
+ const int16* weight_array = base_type::filter().weight_array() +
+ ((base_type::filter().diameter()/2 - 1) <<
+ image_subpixel_shift);
+
+ int maxx = base_type::source_image().width() - 1;
+ int maxy = base_type::source_image().height() - 1;
+
+ do
+ {
+ int x_hr;
+ int y_hr;
+
+ base_type::interpolator().coordinates(&x_hr, &y_hr);
+
+ x_hr -= base_type::filter_dx_int();
+ y_hr -= base_type::filter_dy_int();
+
+ int x_lr = x_hr >> image_subpixel_shift;
+ int y_lr = y_hr >> image_subpixel_shift;
+
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr < maxx && y_lr < maxy)
+ {
+ fg = image_filter_size / 2;
+
+ x_hr &= image_subpixel_mask;
+ y_hr &= image_subpixel_mask;
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr) + x_lr;
+
+ fg += *fg_ptr++ * ((weight_array[x_hr + image_subpixel_size] *
+ weight_array[y_hr + image_subpixel_size] +
+ image_filter_size / 2) >>
+ image_filter_shift);
+ fg += *fg_ptr++ * ((weight_array[x_hr] *
+ weight_array[y_hr + image_subpixel_size] +
+ image_filter_size / 2) >>
+ image_filter_shift);
+
+ fg_ptr = (const value_type*)base_type::source_image().next_row(fg_ptr - 2);
+
+ fg += *fg_ptr++ * ((weight_array[x_hr + image_subpixel_size] *
+ weight_array[y_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift);
+ fg += *fg_ptr++ * ((weight_array[x_hr] *
+ weight_array[y_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift);
+
+ fg >>= image_filter_shift;
+ if(fg > base_mask) fg = base_mask;
+ src_alpha = base_mask;
+ }
+ else
+ {
+ unsigned weight;
+ if(x_lr < -1 || y_lr < -1 ||
+ x_lr > maxx || y_lr > maxy)
+ {
+ fg = back_v;
+ src_alpha = back_a;
+ }
+ else
+ {
+ fg = src_alpha = image_filter_size / 2;
+
+ x_hr &= image_subpixel_mask;
+ y_hr &= image_subpixel_mask;
+
+ weight = (weight_array[x_hr + image_subpixel_size] *
+ weight_array[y_hr + image_subpixel_size] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ fg += weight * *((const value_type*)base_type::source_image().row(y_lr) + x_lr);
+ src_alpha += weight * base_mask;
+ }
+ else
+ {
+ fg += back_v * weight;
+ src_alpha += back_a * weight;
+ }
+
+ x_lr++;
+
+ weight = (weight_array[x_hr] *
+ weight_array[y_hr + image_subpixel_size] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ fg += weight * *((const value_type*)base_type::source_image().row(y_lr) + x_lr);
+ src_alpha += weight * base_mask;
+ }
+ else
+ {
+ fg += back_v * weight;
+ src_alpha += back_a * weight;
+ }
+
+ x_lr--;
+ y_lr++;
+
+ weight = (weight_array[x_hr + image_subpixel_size] *
+ weight_array[y_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ fg += weight * *((const value_type*)base_type::source_image().row(y_lr) + x_lr);
+ src_alpha += weight * base_mask;
+ }
+ else
+ {
+ fg += back_v * weight;
+ src_alpha += back_a * weight;
+ }
+
+ x_lr++;
+
+ weight = (weight_array[x_hr] *
+ weight_array[y_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ fg += weight * *((const value_type*)base_type::source_image().row(y_lr) + x_lr);
+ src_alpha += weight * base_mask;
+ }
+ else
+ {
+ fg += back_v * weight;
+ src_alpha += back_a * weight;
+ }
+ fg >>= image_filter_shift;
+ src_alpha >>= image_filter_shift;
+
+ if(src_alpha > base_mask) src_alpha = base_mask;
+ if(fg > src_alpha) fg = src_alpha;
+
+ }
+ }
+
+ span->v = (value_type)fg;
+ span->a = (value_type)src_alpha;
+ ++span;
+ ++base_type::interpolator();
+
+ } while(--len);
+
+ return base_type::allocator().span();
+ }
+ };
+
+
+
+
+
+
+
+
+
+
+
+
+ //================================================span_image_filter_gray
+ template<class ColorT,
+ class Interpolator,
+ class Allocator = span_allocator<ColorT> >
+ class span_image_filter_gray :
+ public span_image_filter<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_filter<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ span_image_filter_gray(alloc_type& alloc) : base_type(alloc) {}
+
+ //--------------------------------------------------------------------
+ span_image_filter_gray(alloc_type& alloc,
+ const rendering_buffer& src,
+ const color_type& back_color,
+ interpolator_type& inter,
+ const image_filter_lut& filter) :
+ base_type(alloc, src, back_color, inter, &filter)
+ {}
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ base_type::interpolator().begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+
+ int fg;
+ int src_alpha;
+ value_type back_v = base_type::background_color().v;
+ value_type back_a = base_type::background_color().a;
+
+ const value_type* fg_ptr;
+
+ unsigned diameter = base_type::filter().diameter();
+ int start = base_type::filter().start();
+ int start1 = start - 1;
+ const int16* weight_array = base_type::filter().weight_array();
+
+ color_type* span = base_type::allocator().span();
+
+ int maxx = base_type::source_image().width() + start - 2;
+ int maxy = base_type::source_image().height() + start - 2;
+
+ int maxx2 = base_type::source_image().width() - start - 1;
+ int maxy2 = base_type::source_image().height() - start - 1;
+
+ int x_count;
+ int weight_y;
+
+ do
+ {
+ base_type::interpolator().coordinates(&x, &y);
+
+ x -= base_type::filter_dx_int();
+ y -= base_type::filter_dy_int();
+
+ int x_hr = x;
+ int y_hr = y;
+
+ int x_lr = x_hr >> image_subpixel_shift;
+ int y_lr = y_hr >> image_subpixel_shift;
+
+ fg = image_filter_size / 2;
+
+ int x_fract = x_hr & image_subpixel_mask;
+ unsigned y_count = diameter;
+
+ if(x_lr >= -start && y_lr >= -start &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ y_hr = image_subpixel_mask - (y_hr & image_subpixel_mask);
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr + start) + x_lr + start;
+ do
+ {
+ x_count = diameter;
+ weight_y = weight_array[y_hr];
+ x_hr = image_subpixel_mask - x_fract;
+
+ do
+ {
+ fg += *fg_ptr++ * ((weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift);
+ x_hr += image_subpixel_size;
+
+ } while(--x_count);
+
+ y_hr += image_subpixel_size;
+ fg_ptr = (const value_type*)base_type::source_image().next_row(fg_ptr - diameter);
+
+ } while(--y_count);
+
+ fg >>= image_filter_shift;
+
+ if(fg < 0) fg = 0;
+ if(fg > base_mask) fg = base_mask;
+ src_alpha = base_mask;
+ }
+ else
+ {
+ if(x_lr < start1 || y_lr < start1 ||
+ x_lr > maxx2 || y_lr > maxy2)
+ {
+ fg = back_v;
+ src_alpha = back_a;
+ }
+ else
+ {
+ src_alpha = image_filter_size / 2;
+ y_lr = (y >> image_subpixel_shift) + start;
+ y_hr = image_subpixel_mask - (y_hr & image_subpixel_mask);
+
+ do
+ {
+ x_count = diameter;
+ weight_y = weight_array[y_hr];
+ x_lr = (x >> image_subpixel_shift) + start;
+ x_hr = image_subpixel_mask - x_fract;
+
+ do
+ {
+ int weight = (weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr < int(base_type::source_image().width()) &&
+ y_lr < int(base_type::source_image().height()))
+ {
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr) + x_lr;
+ fg += *fg_ptr++ * weight;
+ src_alpha += base_mask * weight;
+ }
+ else
+ {
+ fg += back_v * weight;
+ src_alpha += back_a * weight;
+ }
+ x_hr += image_subpixel_size;
+ x_lr++;
+
+ } while(--x_count);
+
+ y_hr += image_subpixel_size;
+ y_lr++;
+
+ } while(--y_count);
+
+
+ fg >>= image_filter_shift;
+ src_alpha >>= image_filter_shift;
+
+ if(fg < 0) fg = 0;
+ if(src_alpha < 0) src_alpha = 0;
+
+ if(src_alpha > base_mask) src_alpha = base_mask;
+ if(fg > src_alpha) fg = src_alpha;
+ }
+ }
+
+ span->v = (value_type)fg;
+ span->a = (value_type)src_alpha;
+
+ ++span;
+ ++base_type::interpolator();
+
+ } while(--len);
+
+ return base_type::allocator().span();
+ }
+ };
+
+
+
+}
+
+
+#endif
+
+
+
diff --git a/agg/inc/agg_span_image_filter_rgb.h b/agg/inc/agg_span_image_filter_rgb.h
new file mode 100755
index 000000000000..d8f8142bfffb
--- /dev/null
+++ b/agg/inc/agg_span_image_filter_rgb.h
@@ -0,0 +1,840 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Adaptation for high precision colors has been sponsored by
+// Liberty Technology Systems, Inc., visit http://lib-sys.com
+//
+// Liberty Technology Systems, Inc. is the provider of
+// PostScript and PDF technology for software developers.
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_SPAN_IMAGE_FILTER_RGB_INCLUDED
+#define AGG_SPAN_IMAGE_FILTER_RGB_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_color_rgba.h"
+#include "agg_span_image_filter.h"
+
+
+namespace agg
+{
+
+
+ //==============================================span_image_filter_rgb_nn
+ template<class ColorT,
+ class Order,
+ class Interpolator,
+ class Allocator = span_allocator<ColorT> >
+ class span_image_filter_rgb_nn :
+ public span_image_filter<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_filter<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ span_image_filter_rgb_nn(alloc_type& alloc) : base_type(alloc) {}
+
+ //--------------------------------------------------------------------
+ span_image_filter_rgb_nn(alloc_type& alloc,
+ const rendering_buffer& src,
+ const color_type& back_color,
+ interpolator_type& inter) :
+ base_type(alloc, src, back_color, inter, 0)
+ {}
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ base_type::interpolator().begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+
+ calc_type fg[3];
+ calc_type src_alpha;
+
+ const value_type *fg_ptr;
+ color_type* span = base_type::allocator().span();
+
+ int maxx = base_type::source_image().width() - 1;
+ int maxy = base_type::source_image().height() - 1;
+
+ do
+ {
+ base_type::interpolator().coordinates(&x, &y);
+
+ x >>= image_subpixel_shift;
+ y >>= image_subpixel_shift;
+
+ if(x >= 0 && y >= 0 &&
+ x <= maxx && y <= maxy)
+ {
+ fg_ptr = (const value_type*)base_type::source_image().row(y) + x + x + x;
+ fg[0] = *fg_ptr++;
+ fg[1] = *fg_ptr++;
+ fg[2] = *fg_ptr++;
+ src_alpha = base_mask;
+ }
+ else
+ {
+ fg[order_type::R] = base_type::background_color().r;
+ fg[order_type::G] = base_type::background_color().g;
+ fg[order_type::B] = base_type::background_color().b;
+ src_alpha = base_type::background_color().a;
+ }
+
+ span->r = (value_type)fg[order_type::R];
+ span->g = (value_type)fg[order_type::G];
+ span->b = (value_type)fg[order_type::B];
+ span->a = (value_type)src_alpha;
+ ++span;
+ ++base_type::interpolator();
+
+ } while(--len);
+
+ return base_type::allocator().span();
+ }
+ };
+
+
+
+
+ //=========================================span_image_filter_rgb_bilinear
+ template<class ColorT,
+ class Order,
+ class Interpolator,
+ class Allocator = span_allocator<ColorT> >
+ class span_image_filter_rgb_bilinear :
+ public span_image_filter<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_filter<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ span_image_filter_rgb_bilinear(alloc_type& alloc) : base_type(alloc) {}
+
+ //--------------------------------------------------------------------
+ span_image_filter_rgb_bilinear(alloc_type& alloc,
+ const rendering_buffer& src,
+ const color_type& back_color,
+ interpolator_type& inter) :
+ base_type(alloc, src, back_color, inter, 0)
+ {}
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ base_type::interpolator().begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+ calc_type fg[3];
+ calc_type src_alpha;
+ value_type back_r = base_type::background_color().r;
+ value_type back_g = base_type::background_color().g;
+ value_type back_b = base_type::background_color().b;
+ value_type back_a = base_type::background_color().a;
+
+ const value_type *fg_ptr;
+
+ color_type* span = base_type::allocator().span();
+
+ int maxx = base_type::source_image().width() - 1;
+ int maxy = base_type::source_image().height() - 1;
+
+ do
+ {
+ int x_hr;
+ int y_hr;
+
+ base_type::interpolator().coordinates(&x_hr, &y_hr);
+
+ x_hr -= base_type::filter_dx_int();
+ y_hr -= base_type::filter_dy_int();
+
+ int x_lr = x_hr >> image_subpixel_shift;
+ int y_lr = y_hr >> image_subpixel_shift;
+ unsigned weight;
+
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr < maxx && y_lr < maxy)
+ {
+ fg[0] =
+ fg[1] =
+ fg[2] = image_subpixel_size * image_subpixel_size / 2;
+
+ x_hr &= image_subpixel_mask;
+ y_hr &= image_subpixel_mask;
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr) + x_lr + x_lr + x_lr;
+
+ weight = (image_subpixel_size - x_hr) *
+ (image_subpixel_size - y_hr);
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+
+ weight = x_hr * (image_subpixel_size - y_hr);
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+
+ fg_ptr = (const value_type*)base_type::source_image().next_row(fg_ptr - 6);
+
+ weight = (image_subpixel_size - x_hr) * y_hr;
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+
+ weight = x_hr * y_hr;
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+
+ fg[0] >>= image_subpixel_shift * 2;
+ fg[1] >>= image_subpixel_shift * 2;
+ fg[2] >>= image_subpixel_shift * 2;
+ src_alpha = base_mask;
+ }
+ else
+ {
+ if(x_lr < -1 || y_lr < -1 ||
+ x_lr > maxx || y_lr > maxy)
+ {
+ fg[order_type::R] = back_r;
+ fg[order_type::G] = back_g;
+ fg[order_type::B] = back_b;
+ src_alpha = back_a;
+ }
+ else
+ {
+ fg[0] =
+ fg[1] =
+ fg[2] =
+ src_alpha = image_subpixel_size * image_subpixel_size / 2;
+
+ x_hr &= image_subpixel_mask;
+ y_hr &= image_subpixel_mask;
+
+ weight = (image_subpixel_size - x_hr) *
+ (image_subpixel_size - y_hr);
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr) + x_lr + x_lr + x_lr;
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+ src_alpha += weight * base_mask;
+ }
+ else
+ {
+ fg[order_type::R] += back_r * weight;
+ fg[order_type::G] += back_g * weight;
+ fg[order_type::B] += back_b * weight;
+ src_alpha += back_a * weight;
+ }
+
+ x_lr++;
+
+ weight = x_hr * (image_subpixel_size - y_hr);
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr) + x_lr + x_lr + x_lr;
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+ src_alpha += weight * base_mask;
+ }
+ else
+ {
+ fg[order_type::R] += back_r * weight;
+ fg[order_type::G] += back_g * weight;
+ fg[order_type::B] += back_b * weight;
+ src_alpha += back_a * weight;
+ }
+
+ x_lr--;
+ y_lr++;
+
+ weight = (image_subpixel_size - x_hr) * y_hr;
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr) + x_lr + x_lr + x_lr;
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+ src_alpha += weight * base_mask;
+ }
+ else
+ {
+ fg[order_type::R] += back_r * weight;
+ fg[order_type::G] += back_g * weight;
+ fg[order_type::B] += back_b * weight;
+ src_alpha += back_a * weight;
+ }
+
+ x_lr++;
+
+ weight = x_hr * y_hr;
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr) + x_lr + x_lr + x_lr;
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+ src_alpha += weight * base_mask;
+ }
+ else
+ {
+ fg[order_type::R] += back_r * weight;
+ fg[order_type::G] += back_g * weight;
+ fg[order_type::B] += back_b * weight;
+ src_alpha += back_a * weight;
+ }
+
+ fg[0] >>= image_subpixel_shift * 2;
+ fg[1] >>= image_subpixel_shift * 2;
+ fg[2] >>= image_subpixel_shift * 2;
+ src_alpha >>= image_subpixel_shift * 2;
+ }
+ }
+
+ span->r = (value_type)fg[order_type::R];
+ span->g = (value_type)fg[order_type::G];
+ span->b = (value_type)fg[order_type::B];
+ span->a = (value_type)src_alpha;
+ ++span;
+ ++base_type::interpolator();
+
+ } while(--len);
+
+ return base_type::allocator().span();
+ }
+ };
+
+
+
+
+
+
+
+
+ //=========================================span_image_filter_rgb_2x2
+ template<class ColorT,
+ class Order,
+ class Interpolator,
+ class Allocator = span_allocator<ColorT> >
+ class span_image_filter_rgb_2x2 :
+ public span_image_filter<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_filter<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ span_image_filter_rgb_2x2(alloc_type& alloc) : base_type(alloc) {}
+
+ //--------------------------------------------------------------------
+ span_image_filter_rgb_2x2(alloc_type& alloc,
+ const rendering_buffer& src,
+ const color_type& back_color,
+ interpolator_type& inter,
+ const image_filter_lut& filter) :
+ base_type(alloc, src, back_color, inter, &filter)
+ {}
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ base_type::interpolator().begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+ calc_type fg[3];
+ calc_type src_alpha;
+ value_type back_r = base_type::background_color().r;
+ value_type back_g = base_type::background_color().g;
+ value_type back_b = base_type::background_color().b;
+ value_type back_a = base_type::background_color().a;
+
+ const value_type *fg_ptr;
+
+ color_type* span = base_type::allocator().span();
+ const int16* weight_array = base_type::filter().weight_array() +
+ ((base_type::filter().diameter()/2 - 1) <<
+ image_subpixel_shift);
+
+ int maxx = base_type::source_image().width() - 1;
+ int maxy = base_type::source_image().height() - 1;
+
+ do
+ {
+ int x_hr;
+ int y_hr;
+
+ base_type::interpolator().coordinates(&x_hr, &y_hr);
+
+ x_hr -= base_type::filter_dx_int();
+ y_hr -= base_type::filter_dy_int();
+
+ int x_lr = x_hr >> image_subpixel_shift;
+ int y_lr = y_hr >> image_subpixel_shift;
+ unsigned weight;
+
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr < maxx && y_lr < maxy)
+ {
+ fg[0] = fg[1] = fg[2] = image_filter_size / 2;
+
+ x_hr &= image_subpixel_mask;
+ y_hr &= image_subpixel_mask;
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr) + x_lr + x_lr + x_lr;
+
+ weight = (weight_array[x_hr + image_subpixel_size] *
+ weight_array[y_hr + image_subpixel_size] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+
+ weight = (weight_array[x_hr] *
+ weight_array[y_hr + image_subpixel_size] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+
+ fg_ptr = (const value_type*)base_type::source_image().next_row(fg_ptr - 6);
+
+ weight = (weight_array[x_hr + image_subpixel_size] *
+ weight_array[y_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+
+ weight = (weight_array[x_hr] *
+ weight_array[y_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+
+ fg[0] >>= image_filter_shift;
+ fg[1] >>= image_filter_shift;
+ fg[2] >>= image_filter_shift;
+ src_alpha = base_mask;
+
+ if(fg[0] > base_mask) fg[0] = base_mask;
+ if(fg[1] > base_mask) fg[1] = base_mask;
+ if(fg[2] > base_mask) fg[2] = base_mask;
+ }
+ else
+ {
+ if(x_lr < -1 || y_lr < -1 ||
+ x_lr > maxx || y_lr > maxy)
+ {
+ fg[order_type::R] = back_r;
+ fg[order_type::G] = back_g;
+ fg[order_type::B] = back_b;
+ src_alpha = back_a;
+ }
+ else
+ {
+ fg[0] = fg[1] = fg[2] = src_alpha = image_filter_size / 2;
+
+ x_hr &= image_subpixel_mask;
+ y_hr &= image_subpixel_mask;
+
+ weight = (weight_array[x_hr + image_subpixel_size] *
+ weight_array[y_hr + image_subpixel_size] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr) + x_lr + x_lr + x_lr;
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+ src_alpha += weight * base_mask;
+ }
+ else
+ {
+ fg[order_type::R] += back_r * weight;
+ fg[order_type::G] += back_g * weight;
+ fg[order_type::B] += back_b * weight;
+ src_alpha += back_a * weight;
+ }
+
+ x_lr++;
+
+ weight = (weight_array[x_hr] *
+ weight_array[y_hr + image_subpixel_size] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr) + x_lr + x_lr + x_lr;
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+ src_alpha += weight * base_mask;
+ }
+ else
+ {
+ fg[order_type::R] += back_r * weight;
+ fg[order_type::G] += back_g * weight;
+ fg[order_type::B] += back_b * weight;
+ src_alpha += back_a * weight;
+ }
+
+ x_lr--;
+ y_lr++;
+
+ weight = (weight_array[x_hr + image_subpixel_size] *
+ weight_array[y_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr) + x_lr + x_lr + x_lr;
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+ src_alpha += weight * base_mask;
+ }
+ else
+ {
+ fg[order_type::R] += back_r * weight;
+ fg[order_type::G] += back_g * weight;
+ fg[order_type::B] += back_b * weight;
+ src_alpha += back_a * weight;
+ }
+
+ x_lr++;
+
+ weight = (weight_array[x_hr] *
+ weight_array[y_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr) + x_lr + x_lr + x_lr;
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+ src_alpha += weight * base_mask;
+ }
+ else
+ {
+ fg[order_type::R] += back_r * weight;
+ fg[order_type::G] += back_g * weight;
+ fg[order_type::B] += back_b * weight;
+ src_alpha += back_a * weight;
+ }
+
+ fg[0] >>= image_filter_shift;
+ fg[1] >>= image_filter_shift;
+ fg[2] >>= image_filter_shift;
+ src_alpha >>= image_filter_shift;
+
+ if(src_alpha > base_mask) src_alpha = base_mask;
+ if(fg[0] > src_alpha) fg[0] = src_alpha;
+ if(fg[1] > src_alpha) fg[1] = src_alpha;
+ if(fg[2] > src_alpha) fg[2] = src_alpha;
+ }
+ }
+
+ span->r = (value_type)fg[order_type::R];
+ span->g = (value_type)fg[order_type::G];
+ span->b = (value_type)fg[order_type::B];
+ span->a = (value_type)src_alpha;
+ ++span;
+ ++base_type::interpolator();
+
+ } while(--len);
+
+ return base_type::allocator().span();
+ }
+ };
+
+
+
+
+
+
+
+ //=================================================span_image_filter_rgb
+ template<class ColorT,
+ class Order,
+ class Interpolator,
+ class Allocator = span_allocator<ColorT> >
+ class span_image_filter_rgb :
+ public span_image_filter<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_filter<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ span_image_filter_rgb(alloc_type& alloc) : base_type(alloc) {}
+
+ //--------------------------------------------------------------------
+ span_image_filter_rgb(alloc_type& alloc,
+ const rendering_buffer& src,
+ const color_type& back_color,
+ interpolator_type& inter,
+ const image_filter_lut& filter) :
+ base_type(alloc, src, back_color, inter, &filter)
+ {}
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ base_type::interpolator().begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+
+ int fg[3];
+ int src_alpha;
+ value_type back_r = base_type::background_color().r;
+ value_type back_g = base_type::background_color().g;
+ value_type back_b = base_type::background_color().b;
+ value_type back_a = base_type::background_color().a;
+
+ const value_type* fg_ptr;
+
+ unsigned diameter = base_type::filter().diameter();
+ int start = base_type::filter().start();
+ int start1 = start - 1;
+ const int16* weight_array = base_type::filter().weight_array();
+
+ unsigned step_back = diameter * 3;
+ color_type* span = base_type::allocator().span();
+
+ int maxx = base_type::source_image().width() + start - 2;
+ int maxy = base_type::source_image().height() + start - 2;
+
+ int maxx2 = base_type::source_image().width() - start - 1;
+ int maxy2 = base_type::source_image().height() - start - 1;
+
+ int x_count;
+ int weight_y;
+
+ do
+ {
+ base_type::interpolator().coordinates(&x, &y);
+
+ x -= base_type::filter_dx_int();
+ y -= base_type::filter_dy_int();
+
+ int x_hr = x;
+ int y_hr = y;
+
+ int x_lr = x_hr >> image_subpixel_shift;
+ int y_lr = y_hr >> image_subpixel_shift;
+
+ fg[0] = fg[1] = fg[2] = image_filter_size / 2;
+
+ int x_fract = x_hr & image_subpixel_mask;
+ unsigned y_count = diameter;
+
+ if(x_lr >= -start && y_lr >= -start &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ y_hr = image_subpixel_mask - (y_hr & image_subpixel_mask);
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr + start) + (x_lr + start) * 3;
+ do
+ {
+ x_count = diameter;
+ weight_y = weight_array[y_hr];
+ x_hr = image_subpixel_mask - x_fract;
+
+ do
+ {
+ int weight = (weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+
+ fg[0] += *fg_ptr++ * weight;
+ fg[1] += *fg_ptr++ * weight;
+ fg[2] += *fg_ptr++ * weight;
+
+ x_hr += image_subpixel_size;
+
+ } while(--x_count);
+
+ y_hr += image_subpixel_size;
+ fg_ptr = (const value_type*)base_type::source_image().next_row(fg_ptr - step_back);
+
+ } while(--y_count);
+
+ fg[0] >>= image_filter_shift;
+ fg[1] >>= image_filter_shift;
+ fg[2] >>= image_filter_shift;
+
+ if(fg[0] < 0) fg[0] = 0;
+ if(fg[1] < 0) fg[1] = 0;
+ if(fg[2] < 0) fg[2] = 0;
+
+ if(fg[0] > base_mask) fg[0] = base_mask;
+ if(fg[1] > base_mask) fg[1] = base_mask;
+ if(fg[2] > base_mask) fg[2] = base_mask;
+ src_alpha = base_mask;
+ }
+ else
+ {
+ if(x_lr < start1 || y_lr < start1 ||
+ x_lr > maxx2 || y_lr > maxy2)
+ {
+ fg[order_type::R] = back_r;
+ fg[order_type::G] = back_g;
+ fg[order_type::B] = back_b;
+ src_alpha = back_a;
+ }
+ else
+ {
+ src_alpha = image_filter_size / 2;
+ y_lr = (y >> image_subpixel_shift) + start;
+ y_hr = image_subpixel_mask - (y_hr & image_subpixel_mask);
+
+ do
+ {
+ x_count = diameter;
+ weight_y = weight_array[y_hr];
+ x_lr = (x >> image_subpixel_shift) + start;
+ x_hr = image_subpixel_mask - x_fract;
+
+ do
+ {
+ int weight = (weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr < int(base_type::source_image().width()) &&
+ y_lr < int(base_type::source_image().height()))
+ {
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr) + x_lr * 3;
+ fg[0] += *fg_ptr++ * weight;
+ fg[1] += *fg_ptr++ * weight;
+ fg[2] += *fg_ptr++ * weight;
+ src_alpha += base_mask * weight;
+ }
+ else
+ {
+ fg[order_type::R] += back_r * weight;
+ fg[order_type::G] += back_g * weight;
+ fg[order_type::B] += back_b * weight;
+ src_alpha += back_a * weight;
+ }
+ x_hr += image_subpixel_size;
+ x_lr++;
+
+ } while(--x_count);
+
+ y_hr += image_subpixel_size;
+ y_lr++;
+
+ } while(--y_count);
+
+
+ fg[0] >>= image_filter_shift;
+ fg[1] >>= image_filter_shift;
+ fg[2] >>= image_filter_shift;
+ src_alpha >>= image_filter_shift;
+
+ if(fg[0] < 0) fg[0] = 0;
+ if(fg[1] < 0) fg[1] = 0;
+ if(fg[2] < 0) fg[2] = 0;
+ if(src_alpha < 0) src_alpha = 0;
+
+ if(src_alpha > base_mask) src_alpha = base_mask;
+ if(fg[0] > src_alpha) fg[0] = src_alpha;
+ if(fg[1] > src_alpha) fg[1] = src_alpha;
+ if(fg[2] > src_alpha) fg[2] = src_alpha;
+ }
+ }
+
+ span->r = (value_type)fg[order_type::R];
+ span->g = (value_type)fg[order_type::G];
+ span->b = (value_type)fg[order_type::B];
+ span->a = (value_type)src_alpha;
+
+ ++span;
+ ++base_type::interpolator();
+
+ } while(--len);
+
+ return base_type::allocator().span();
+ }
+ };
+
+
+
+}
+
+
+#endif
+
+
+
diff --git a/agg/inc/agg_span_image_filter_rgba.h b/agg/inc/agg_span_image_filter_rgba.h
new file mode 100755
index 000000000000..42b822c99b9b
--- /dev/null
+++ b/agg/inc/agg_span_image_filter_rgba.h
@@ -0,0 +1,864 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Adaptation for high precision colors has been sponsored by
+// Liberty Technology Systems, Inc., visit http://lib-sys.com
+//
+// Liberty Technology Systems, Inc. is the provider of
+// PostScript and PDF technology for software developers.
+//
+//----------------------------------------------------------------------------
+//
+// classes span_image_filter_rgba32*
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_SPAN_IMAGE_FILTER_RGBA_INCLUDED
+#define AGG_SPAN_IMAGE_FILTER_RGBA_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_color_rgba.h"
+#include "agg_span_image_filter.h"
+
+
+namespace agg
+{
+
+ //=============================================span_image_filter_rgba_nn
+ template<class ColorT,
+ class Order,
+ class Interpolator,
+ class Allocator = span_allocator<ColorT> >
+ class span_image_filter_rgba_nn :
+ public span_image_filter<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_filter<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ span_image_filter_rgba_nn(alloc_type& alloc) : base_type(alloc) {}
+
+ //--------------------------------------------------------------------
+ span_image_filter_rgba_nn(alloc_type& alloc,
+ const rendering_buffer& src,
+ const color_type& back_color,
+ interpolator_type& inter) :
+ base_type(alloc, src, back_color, inter, 0)
+ {}
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ base_type::interpolator().begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+
+ calc_type fg[4];
+
+ const value_type *fg_ptr;
+ color_type* span = base_type::allocator().span();
+
+ int maxx = base_type::source_image().width() - 1;
+ int maxy = base_type::source_image().height() - 1;
+
+ do
+ {
+ base_type::interpolator().coordinates(&x, &y);
+
+ x >>= image_subpixel_shift;
+ y >>= image_subpixel_shift;
+
+ if(x >= 0 && y >= 0 &&
+ x <= maxx && y <= maxy)
+ {
+ fg_ptr = (const value_type*)base_type::source_image().row(y) + (x << 2);
+ fg[0] = *fg_ptr++;
+ fg[1] = *fg_ptr++;
+ fg[2] = *fg_ptr++;
+ fg[3] = *fg_ptr++;
+ }
+ else
+ {
+ fg[order_type::R] = base_type::background_color().r;
+ fg[order_type::G] = base_type::background_color().g;
+ fg[order_type::B] = base_type::background_color().b;
+ fg[order_type::A] = base_type::background_color().a;
+ }
+
+ span->r = fg[order_type::R];
+ span->g = fg[order_type::G];
+ span->b = fg[order_type::B];
+ span->a = fg[order_type::A];
+ ++span;
+ ++base_type::interpolator();
+
+ } while(--len);
+
+ return base_type::allocator().span();
+ }
+
+ };
+
+
+
+
+
+
+
+ //=======================================span_image_filter_rgba_bilinear
+ template<class ColorT,
+ class Order,
+ class Interpolator,
+ class Allocator = span_allocator<ColorT> >
+ class span_image_filter_rgba_bilinear :
+ public span_image_filter<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_filter<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ span_image_filter_rgba_bilinear(alloc_type& alloc) : base_type(alloc) {}
+
+ //--------------------------------------------------------------------
+ span_image_filter_rgba_bilinear(alloc_type& alloc,
+ const rendering_buffer& src,
+ const color_type& back_color,
+ interpolator_type& inter) :
+ base_type(alloc, src, back_color, inter, 0)
+ {}
+
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ base_type::interpolator().begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+
+ calc_type fg[4];
+ value_type back_r = base_type::background_color().r;
+ value_type back_g = base_type::background_color().g;
+ value_type back_b = base_type::background_color().b;
+ value_type back_a = base_type::background_color().a;
+
+ const value_type *fg_ptr;
+
+ color_type* span = base_type::allocator().span();
+
+ int maxx = base_type::source_image().width() - 1;
+ int maxy = base_type::source_image().height() - 1;
+
+ do
+ {
+ int x_hr;
+ int y_hr;
+
+ base_type::interpolator().coordinates(&x_hr, &y_hr);
+
+ x_hr -= base_type::filter_dx_int();
+ y_hr -= base_type::filter_dy_int();
+
+ int x_lr = x_hr >> image_subpixel_shift;
+ int y_lr = y_hr >> image_subpixel_shift;
+
+ unsigned weight;
+
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr < maxx && y_lr < maxy)
+ {
+ fg[0] =
+ fg[1] =
+ fg[2] =
+ fg[3] = image_subpixel_size * image_subpixel_size / 2;
+
+ x_hr &= image_subpixel_mask;
+ y_hr &= image_subpixel_mask;
+
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr) + (x_lr << 2);
+
+ weight = (image_subpixel_size - x_hr) *
+ (image_subpixel_size - y_hr);
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+ fg[3] += weight * *fg_ptr++;
+
+ weight = x_hr * (image_subpixel_size - y_hr);
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+ fg[3] += weight * *fg_ptr++;
+
+ fg_ptr = (const value_type*)base_type::source_image().next_row(fg_ptr - 8);
+
+ weight = (image_subpixel_size - x_hr) * y_hr;
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+ fg[3] += weight * *fg_ptr++;
+
+ weight = x_hr * y_hr;
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+ fg[3] += weight * *fg_ptr++;
+
+ fg[0] >>= image_subpixel_shift * 2;
+ fg[1] >>= image_subpixel_shift * 2;
+ fg[2] >>= image_subpixel_shift * 2;
+ fg[3] >>= image_subpixel_shift * 2;
+ }
+ else
+ {
+ if(x_lr < -1 || y_lr < -1 ||
+ x_lr > maxx || y_lr > maxy)
+ {
+ fg[order_type::R] = back_r;
+ fg[order_type::G] = back_g;
+ fg[order_type::B] = back_b;
+ fg[order_type::A] = back_a;
+ }
+ else
+ {
+ fg[0] =
+ fg[1] =
+ fg[2] =
+ fg[3] = image_subpixel_size * image_subpixel_size / 2;
+
+ x_hr &= image_subpixel_mask;
+ y_hr &= image_subpixel_mask;
+
+ weight = (image_subpixel_size - x_hr) *
+ (image_subpixel_size - y_hr);
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr) + (x_lr << 2);
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+ fg[3] += weight * *fg_ptr++;
+ }
+ else
+ {
+ fg[order_type::R] += back_r * weight;
+ fg[order_type::G] += back_g * weight;
+ fg[order_type::B] += back_b * weight;
+ fg[order_type::A] += back_a * weight;
+ }
+
+ x_lr++;
+
+ weight = x_hr * (image_subpixel_size - y_hr);
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr) + (x_lr << 2);
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+ fg[3] += weight * *fg_ptr++;
+ }
+ else
+ {
+ fg[order_type::R] += back_r * weight;
+ fg[order_type::G] += back_g * weight;
+ fg[order_type::B] += back_b * weight;
+ fg[order_type::A] += back_a * weight;
+ }
+
+ x_lr--;
+ y_lr++;
+
+ weight = (image_subpixel_size - x_hr) * y_hr;
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr) + (x_lr << 2);
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+ fg[3] += weight * *fg_ptr++;
+ }
+ else
+ {
+ fg[order_type::R] += back_r * weight;
+ fg[order_type::G] += back_g * weight;
+ fg[order_type::B] += back_b * weight;
+ fg[order_type::A] += back_a * weight;
+ }
+
+ x_lr++;
+
+ weight = x_hr * y_hr;
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr) + (x_lr << 2);
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+ fg[3] += weight * *fg_ptr++;
+ }
+ else
+ {
+ fg[order_type::R] += back_r * weight;
+ fg[order_type::G] += back_g * weight;
+ fg[order_type::B] += back_b * weight;
+ fg[order_type::A] += back_a * weight;
+ }
+
+ fg[0] >>= image_subpixel_shift * 2;
+ fg[1] >>= image_subpixel_shift * 2;
+ fg[2] >>= image_subpixel_shift * 2;
+ fg[3] >>= image_subpixel_shift * 2;
+ }
+ }
+
+ span->r = (value_type)fg[order_type::R];
+ span->g = (value_type)fg[order_type::G];
+ span->b = (value_type)fg[order_type::B];
+ span->a = (value_type)fg[order_type::A];
+ ++span;
+ ++base_type::interpolator();
+
+ } while(--len);
+
+ return base_type::allocator().span();
+ }
+ };
+
+
+
+
+
+
+
+ //=======================================span_image_filter_rgba_2x2
+ template<class ColorT,
+ class Order,
+ class Interpolator,
+ class Allocator = span_allocator<ColorT> >
+ class span_image_filter_rgba_2x2 :
+ public span_image_filter<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_filter<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ span_image_filter_rgba_2x2(alloc_type& alloc) : base_type(alloc) {}
+
+ //--------------------------------------------------------------------
+ span_image_filter_rgba_2x2(alloc_type& alloc,
+ const rendering_buffer& src,
+ const color_type& back_color,
+ interpolator_type& inter,
+ const image_filter_lut& filter) :
+ base_type(alloc, src, back_color, inter, &filter)
+ {}
+
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ base_type::interpolator().begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+
+ calc_type fg[4];
+ value_type back_r = base_type::background_color().r;
+ value_type back_g = base_type::background_color().g;
+ value_type back_b = base_type::background_color().b;
+ value_type back_a = base_type::background_color().a;
+
+ const value_type *fg_ptr;
+
+ color_type* span = base_type::allocator().span();
+ const int16* weight_array = base_type::filter().weight_array() +
+ ((base_type::filter().diameter()/2 - 1) <<
+ image_subpixel_shift);
+
+ int maxx = base_type::source_image().width() - 1;
+ int maxy = base_type::source_image().height() - 1;
+
+ do
+ {
+ int x_hr;
+ int y_hr;
+
+ base_type::interpolator().coordinates(&x_hr, &y_hr);
+
+ x_hr -= base_type::filter_dx_int();
+ y_hr -= base_type::filter_dy_int();
+
+ int x_lr = x_hr >> image_subpixel_shift;
+ int y_lr = y_hr >> image_subpixel_shift;
+
+ unsigned weight;
+ fg[0] = fg[1] = fg[2] = fg[3] = image_filter_size / 2;
+
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr < maxx && y_lr < maxy)
+ {
+ x_hr &= image_subpixel_mask;
+ y_hr &= image_subpixel_mask;
+
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr) + (x_lr << 2);
+
+ weight = (weight_array[x_hr + image_subpixel_size] *
+ weight_array[y_hr + image_subpixel_size] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+ fg[3] += weight * *fg_ptr++;
+
+ weight = (weight_array[x_hr] *
+ weight_array[y_hr + image_subpixel_size] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+ fg[3] += weight * *fg_ptr++;
+
+ fg_ptr = (const value_type*)base_type::source_image().next_row(fg_ptr - 8);
+
+ weight = (weight_array[x_hr + image_subpixel_size] *
+ weight_array[y_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+ fg[3] += weight * *fg_ptr++;
+
+ weight = (weight_array[x_hr] *
+ weight_array[y_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+ fg[3] += weight * *fg_ptr++;
+
+ fg[0] >>= image_filter_shift;
+ fg[1] >>= image_filter_shift;
+ fg[2] >>= image_filter_shift;
+ fg[3] >>= image_filter_shift;
+
+ if(fg[order_type::A] > base_mask) fg[order_type::A] = base_mask;
+ if(fg[order_type::R] > fg[order_type::A]) fg[order_type::R] = fg[order_type::A];
+ if(fg[order_type::G] > fg[order_type::A]) fg[order_type::G] = fg[order_type::A];
+ if(fg[order_type::B] > fg[order_type::A]) fg[order_type::B] = fg[order_type::A];
+ }
+ else
+ {
+ if(x_lr < -1 || y_lr < -1 ||
+ x_lr > maxx || y_lr > maxy)
+ {
+ fg[order_type::R] = back_r;
+ fg[order_type::G] = back_g;
+ fg[order_type::B] = back_b;
+ fg[order_type::A] = back_a;
+ }
+ else
+ {
+ x_hr &= image_subpixel_mask;
+ y_hr &= image_subpixel_mask;
+
+ weight = (weight_array[x_hr + image_subpixel_size] *
+ weight_array[y_hr + image_subpixel_size] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr) + (x_lr << 2);
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+ fg[3] += weight * *fg_ptr++;
+ }
+ else
+ {
+ fg[order_type::R] += back_r * weight;
+ fg[order_type::G] += back_g * weight;
+ fg[order_type::B] += back_b * weight;
+ fg[order_type::A] += back_a * weight;
+ }
+
+ x_lr++;
+
+ weight = (weight_array[x_hr] *
+ weight_array[y_hr + image_subpixel_size] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr) + (x_lr << 2);
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+ fg[3] += weight * *fg_ptr++;
+ }
+ else
+ {
+ fg[order_type::R] += back_r * weight;
+ fg[order_type::G] += back_g * weight;
+ fg[order_type::B] += back_b * weight;
+ fg[order_type::A] += back_a * weight;
+ }
+
+ x_lr--;
+ y_lr++;
+
+ weight = (weight_array[x_hr + image_subpixel_size] *
+ weight_array[y_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr) + (x_lr << 2);
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+ fg[3] += weight * *fg_ptr++;
+ }
+ else
+ {
+ fg[order_type::R] += back_r * weight;
+ fg[order_type::G] += back_g * weight;
+ fg[order_type::B] += back_b * weight;
+ fg[order_type::A] += back_a * weight;
+ }
+
+ x_lr++;
+
+ weight = (weight_array[x_hr] *
+ weight_array[y_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr) + (x_lr << 2);
+ fg[0] += weight * *fg_ptr++;
+ fg[1] += weight * *fg_ptr++;
+ fg[2] += weight * *fg_ptr++;
+ fg[3] += weight * *fg_ptr++;
+ }
+ else
+ {
+ fg[order_type::R] += back_r * weight;
+ fg[order_type::G] += back_g * weight;
+ fg[order_type::B] += back_b * weight;
+ fg[order_type::A] += back_a * weight;
+ }
+
+ fg[0] >>= image_filter_shift;
+ fg[1] >>= image_filter_shift;
+ fg[2] >>= image_filter_shift;
+ fg[3] >>= image_filter_shift;
+
+ if(fg[order_type::A] > base_mask) fg[order_type::A] = base_mask;
+ if(fg[order_type::R] > fg[order_type::A]) fg[order_type::R] = fg[order_type::A];
+ if(fg[order_type::G] > fg[order_type::A]) fg[order_type::G] = fg[order_type::A];
+ if(fg[order_type::B] > fg[order_type::A]) fg[order_type::B] = fg[order_type::A];
+ }
+ }
+
+ span->r = (value_type)fg[order_type::R];
+ span->g = (value_type)fg[order_type::G];
+ span->b = (value_type)fg[order_type::B];
+ span->a = (value_type)fg[order_type::A];
+ ++span;
+ ++base_type::interpolator();
+
+ } while(--len);
+
+ return base_type::allocator().span();
+ }
+ };
+
+
+
+
+
+
+
+
+
+
+
+
+
+ //================================================span_image_filter_rgba
+ template<class ColorT,
+ class Order,
+ class Interpolator,
+ class Allocator = span_allocator<ColorT> >
+ class span_image_filter_rgba :
+ public span_image_filter<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_filter<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ span_image_filter_rgba(alloc_type& alloc) : base_type(alloc) {}
+
+ //--------------------------------------------------------------------
+ span_image_filter_rgba(alloc_type& alloc,
+ const rendering_buffer& src,
+ const color_type& back_color,
+ interpolator_type& inter,
+ const image_filter_lut& filter) :
+ base_type(alloc, src, back_color, inter, &filter)
+ {}
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ base_type::interpolator().begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+
+ int fg[4];
+
+ value_type back_r = base_type::background_color().r;
+ value_type back_g = base_type::background_color().g;
+ value_type back_b = base_type::background_color().b;
+ value_type back_a = base_type::background_color().a;
+
+ const value_type *fg_ptr;
+
+ unsigned diameter = base_type::filter().diameter();
+ int start = base_type::filter().start();
+ int start1 = start - 1;
+ const int16* weight_array = base_type::filter().weight_array();
+
+ unsigned step_back = diameter << 2;
+ color_type* span = base_type::allocator().span();
+
+ int maxx = base_type::source_image().width() + start - 2;
+ int maxy = base_type::source_image().height() + start - 2;
+
+ int maxx2 = base_type::source_image().width() - start - 1;
+ int maxy2 = base_type::source_image().height() - start - 1;
+
+ int x_count;
+ int weight_y;
+
+ do
+ {
+ base_type::interpolator().coordinates(&x, &y);
+
+ x -= base_type::filter_dx_int();
+ y -= base_type::filter_dy_int();
+
+ int x_hr = x;
+ int y_hr = y;
+
+ int x_lr = x_hr >> image_subpixel_shift;
+ int y_lr = y_hr >> image_subpixel_shift;
+
+ fg[0] = fg[1] = fg[2] = fg[3] = image_filter_size / 2;
+
+ int x_fract = x_hr & image_subpixel_mask;
+ unsigned y_count = diameter;
+
+ if(x_lr >= -start && y_lr >= -start &&
+ x_lr <= maxx && y_lr <= maxy)
+ {
+ y_hr = image_subpixel_mask - (y_hr & image_subpixel_mask);
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr + start) + ((x_lr + start) << 2);
+ do
+ {
+ x_count = diameter;
+ weight_y = weight_array[y_hr];
+ x_hr = image_subpixel_mask - x_fract;
+
+ do
+ {
+ int weight = (weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+
+ fg[0] += *fg_ptr++ * weight;
+ fg[1] += *fg_ptr++ * weight;
+ fg[2] += *fg_ptr++ * weight;
+ fg[3] += *fg_ptr++ * weight;
+
+ x_hr += image_subpixel_size;
+
+ } while(--x_count);
+
+ y_hr += image_subpixel_size;
+ fg_ptr = (const value_type*)base_type::source_image().next_row(fg_ptr - step_back);
+
+ } while(--y_count);
+
+ fg[0] >>= image_filter_shift;
+ fg[1] >>= image_filter_shift;
+ fg[2] >>= image_filter_shift;
+ fg[3] >>= image_filter_shift;
+
+ if(fg[0] < 0) fg[0] = 0;
+ if(fg[1] < 0) fg[1] = 0;
+ if(fg[2] < 0) fg[2] = 0;
+ if(fg[3] < 0) fg[3] = 0;
+
+ if(fg[order_type::A] > base_mask) fg[order_type::A] = base_mask;
+ if(fg[order_type::R] > fg[order_type::A]) fg[order_type::R] = fg[order_type::A];
+ if(fg[order_type::G] > fg[order_type::A]) fg[order_type::G] = fg[order_type::A];
+ if(fg[order_type::B] > fg[order_type::A]) fg[order_type::B] = fg[order_type::A];
+ }
+ else
+ {
+ if(x_lr < start1 || y_lr < start1 ||
+ x_lr > maxx2 || y_lr > maxy2)
+ {
+ fg[order_type::R] = back_r;
+ fg[order_type::G] = back_g;
+ fg[order_type::B] = back_b;
+ fg[order_type::A] = back_a;
+ }
+ else
+ {
+ y_lr = (y >> image_subpixel_shift) + start;
+ y_hr = image_subpixel_mask - (y_hr & image_subpixel_mask);
+
+ do
+ {
+ x_count = diameter;
+ weight_y = weight_array[y_hr];
+ x_lr = (x >> image_subpixel_shift) + start;
+ x_hr = image_subpixel_mask - x_fract;
+
+ do
+ {
+ int weight = (weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+
+ if(x_lr >= 0 && y_lr >= 0 &&
+ x_lr < int(base_type::source_image().width()) &&
+ y_lr < int(base_type::source_image().height()))
+ {
+ fg_ptr = (const value_type*)base_type::source_image().row(y_lr) + (x_lr << 2);
+ fg[0] += *fg_ptr++ * weight;
+ fg[1] += *fg_ptr++ * weight;
+ fg[2] += *fg_ptr++ * weight;
+ fg[3] += *fg_ptr++ * weight;
+ }
+ else
+ {
+ fg[order_type::R] += back_r * weight;
+ fg[order_type::G] += back_g * weight;
+ fg[order_type::B] += back_b * weight;
+ fg[order_type::A] += back_a * weight;
+ }
+ x_hr += image_subpixel_size;
+ x_lr++;
+
+ } while(--x_count);
+
+ y_hr += image_subpixel_size;
+ y_lr++;
+
+ } while(--y_count);
+
+
+ fg[0] >>= image_filter_shift;
+ fg[1] >>= image_filter_shift;
+ fg[2] >>= image_filter_shift;
+ fg[3] >>= image_filter_shift;
+
+ if(fg[0] < 0) fg[0] = 0;
+ if(fg[1] < 0) fg[1] = 0;
+ if(fg[2] < 0) fg[2] = 0;
+ if(fg[3] < 0) fg[3] = 0;
+
+ if(fg[order_type::A] > base_mask) fg[order_type::A] = base_mask;
+ if(fg[order_type::R] > fg[order_type::A]) fg[order_type::R] = fg[order_type::A];
+ if(fg[order_type::G] > fg[order_type::A]) fg[order_type::G] = fg[order_type::A];
+ if(fg[order_type::B] > fg[order_type::A]) fg[order_type::B] = fg[order_type::A];
+ }
+ }
+
+ span->r = fg[order_type::R];
+ span->g = fg[order_type::G];
+ span->b = fg[order_type::B];
+ span->a = fg[order_type::A];
+ ++span;
+ ++base_type::interpolator();
+
+ } while(--len);
+
+ return base_type::allocator().span();
+ }
+
+ };
+
+
+}
+
+
+#endif
+
+
+
diff --git a/agg/inc/agg_span_image_resample.h b/agg/inc/agg_span_image_resample.h
new file mode 100755
index 000000000000..f4dfd57455d7
--- /dev/null
+++ b/agg/inc/agg_span_image_resample.h
@@ -0,0 +1,180 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+#ifndef AGG_SPAN_IMAGE_RESAMPLE_INCLUDED
+#define AGG_SPAN_IMAGE_RESAMPLE_INCLUDED
+
+#include "agg_span_image_filter.h"
+#include "agg_span_interpolator_linear.h"
+
+
+namespace agg
+{
+
+
+ //=====================================================span_image_resample
+ template<class ColorT, class Interpolator, class Allocator>
+ class span_image_resample :
+ public span_image_filter<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_filter<color_type, interpolator_type, alloc_type> base_type;
+
+ //--------------------------------------------------------------------
+ span_image_resample(alloc_type& alloc) :
+ base_type(alloc),
+ m_scale_limit(20),
+ m_blur_x(image_subpixel_size),
+ m_blur_y(image_subpixel_size)
+ {}
+
+ //--------------------------------------------------------------------
+ span_image_resample(alloc_type& alloc,
+ const rendering_buffer& src,
+ const color_type& back_color,
+ interpolator_type& inter,
+ const image_filter_lut& filter) :
+ base_type(alloc, src, back_color, inter, &filter),
+ m_scale_limit(20),
+ m_blur_x(image_subpixel_size),
+ m_blur_y(image_subpixel_size)
+ {}
+
+
+ //--------------------------------------------------------------------
+ int scale_limit() const { return m_scale_limit; }
+ void scale_limit(int v) { m_scale_limit = v; }
+
+ //--------------------------------------------------------------------
+ double blur_x() const { return double(m_blur_x) / double(image_subpixel_size); }
+ double blur_y() const { return double(m_blur_y) / double(image_subpixel_size); }
+ void blur_x(double v) { m_blur_x = int(v * double(image_subpixel_size) + 0.5); }
+ void blur_y(double v) { m_blur_y = int(v * double(image_subpixel_size) + 0.5); }
+ void blur(double v) { m_blur_x =
+ m_blur_y = int(v * double(image_subpixel_size) + 0.5); }
+
+ protected:
+ int m_scale_limit;
+ int m_blur_x;
+ int m_blur_y;
+ };
+
+
+
+
+
+
+
+
+ //==============================================span_image_resample_affine
+ template<class ColorT, class Allocator>
+ class span_image_resample_affine :
+ public span_image_filter<ColorT, span_interpolator_linear<trans_affine>, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef span_interpolator_linear<trans_affine> interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_filter<color_type, interpolator_type, alloc_type> base_type;
+
+ //--------------------------------------------------------------------
+ span_image_resample_affine(alloc_type& alloc) :
+ base_type(alloc),
+ m_scale_limit(200.0),
+ m_blur_x(1.0),
+ m_blur_y(1.0)
+ {}
+
+ //--------------------------------------------------------------------
+ span_image_resample_affine(alloc_type& alloc,
+ const rendering_buffer& src,
+ const color_type& back_color,
+ interpolator_type& inter,
+ const image_filter_lut& filter_) :
+ base_type(alloc, src, back_color, inter, &filter_),
+ m_scale_limit(200.0),
+ m_blur_x(1.0),
+ m_blur_y(1.0)
+ {}
+
+
+ //--------------------------------------------------------------------
+ int scale_limit() const { return int(m_scale_limit); }
+ void scale_limit(int v) { m_scale_limit = v; }
+
+ //--------------------------------------------------------------------
+ double blur_x() const { return m_blur_x; }
+ double blur_y() const { return m_blur_y; }
+ void blur_x(double v) { m_blur_x = v; }
+ void blur_y(double v) { m_blur_y = v; }
+ void blur(double v) { m_blur_x = m_blur_y = v; }
+
+
+ //--------------------------------------------------------------------
+ void prepare(unsigned max_span_len)
+ {
+ base_type::prepare(max_span_len);
+
+ double scale_x;
+ double scale_y;
+
+ base_type::interpolator().transformer().scaling_abs(&scale_x, &scale_y);
+
+ m_rx = image_subpixel_size;
+ m_ry = image_subpixel_size;
+ m_rx_inv = image_subpixel_size;
+ m_ry_inv = image_subpixel_size;
+
+ scale_x *= m_blur_x;
+ scale_y *= m_blur_y;
+
+ if(scale_x * scale_y > m_scale_limit)
+ {
+ scale_x = scale_x * m_scale_limit / (scale_x * scale_y);
+ scale_y = scale_y * m_scale_limit / (scale_x * scale_y);
+ }
+
+ if(scale_x > 1.0001)
+ {
+ if(scale_x > m_scale_limit) scale_x = m_scale_limit;
+ m_rx = int( scale_x * double(image_subpixel_size) + 0.5);
+ m_rx_inv = int(1.0/scale_x * double(image_subpixel_size) + 0.5);
+ }
+
+ if(scale_y > 1.0001)
+ {
+ if(scale_y > m_scale_limit) scale_y = m_scale_limit;
+ m_ry = int( scale_y * double(image_subpixel_size) + 0.5);
+ m_ry_inv = int(1.0/scale_y * double(image_subpixel_size) + 0.5);
+ }
+ }
+
+ protected:
+ int m_rx;
+ int m_ry;
+ int m_rx_inv;
+ int m_ry_inv;
+
+ private:
+ double m_scale_limit;
+ double m_blur_x;
+ double m_blur_y;
+ };
+
+}
+
+#endif
diff --git a/agg/inc/agg_span_image_resample_gray.h b/agg/inc/agg_span_image_resample_gray.h
new file mode 100755
index 000000000000..3d046462cd8c
--- /dev/null
+++ b/agg/inc/agg_span_image_resample_gray.h
@@ -0,0 +1,359 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_SPAN_IMAGE_RESAMPLE_GRAY_INCLUDED
+#define AGG_SPAN_IMAGE_RESAMPLE_GRAY_INCLUDED
+
+#include "agg_color_gray.h"
+#include "agg_span_image_resample.h"
+
+namespace agg
+{
+
+ //========================================span_image_resample_gray_affine
+ template<class ColorT,
+ class Allocator = span_allocator<ColorT> >
+ class span_image_resample_gray_affine :
+ public span_image_resample_affine<ColorT, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Allocator alloc_type;
+ typedef span_image_resample_affine<color_type, alloc_type> base_type;
+ typedef typename base_type::interpolator_type interpolator_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::long_type long_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask,
+ downscale_shift = image_filter_shift
+ };
+
+ //--------------------------------------------------------------------
+ span_image_resample_gray_affine(alloc_type& alloc) : base_type(alloc) {}
+
+ //--------------------------------------------------------------------
+ span_image_resample_gray_affine(alloc_type& alloc,
+ const rendering_buffer& src,
+ const color_type& back_color,
+ interpolator_type& inter,
+ const image_filter_lut& filter) :
+ base_type(alloc, src, back_color, inter, filter)
+ {}
+
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ base_type::interpolator().begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+
+ long_type fg;
+ long_type src_alpha;
+ value_type back_v = base_type::background_color().v;
+ value_type back_a = base_type::background_color().a;
+
+ color_type* span = base_type::allocator().span();
+
+ int diameter = base_type::filter().diameter();
+ int filter_size = diameter << image_subpixel_shift;
+ int radius_x = (diameter * base_type::m_rx) >> 1;
+ int radius_y = (diameter * base_type::m_ry) >> 1;
+ int maxx = base_type::source_image().width() - 1;
+ int maxy = base_type::source_image().height() - 1;
+
+ const int16* weight_array = base_type::filter().weight_array();
+
+ do
+ {
+ base_type::interpolator().coordinates(&x, &y);
+
+ x += base_type::filter_dx_int() - radius_x;
+ y += base_type::filter_dy_int() - radius_y;
+
+ fg = src_alpha = image_filter_size / 2;
+
+ int y_lr = y >> image_subpixel_shift;
+ int y_hr = ((image_subpixel_mask - (y & image_subpixel_mask)) *
+ base_type::m_ry_inv) >>
+ image_subpixel_shift;
+ int total_weight = 0;
+ int x_lr_ini = x >> image_subpixel_shift;
+ int x_hr_ini = ((image_subpixel_mask - (x & image_subpixel_mask)) *
+ base_type::m_rx_inv) >>
+ image_subpixel_shift;
+ do
+ {
+ int weight_y = weight_array[y_hr];
+ int x_lr = x_lr_ini;
+ int x_hr = x_hr_ini;
+ if(y_lr >= 0 && y_lr <= maxy)
+ {
+ const value_type* fg_ptr = (const value_type*)
+ base_type::source_image().row(y_lr) + x_lr;
+ do
+ {
+ int weight = (weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ downscale_shift;
+
+ if(x_lr >= 0 && x_lr <= maxx)
+ {
+ fg += *fg_ptr * weight;
+ src_alpha += base_mask * weight;
+ }
+ else
+ {
+ fg += back_v * weight;
+ src_alpha += back_a * weight;
+ }
+ total_weight += weight;
+ x_hr += base_type::m_rx_inv;
+ ++fg_ptr;
+ ++x_lr;
+ }
+ while(x_hr < filter_size);
+ }
+ else
+ {
+ do
+ {
+ int weight = (weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ downscale_shift;
+
+ total_weight += weight;
+ fg += back_v * weight;
+ src_alpha += back_a * weight;
+ x_hr += base_type::m_rx_inv;
+ }
+ while(x_hr < filter_size);
+ }
+ y_hr += base_type::m_ry_inv;
+ ++y_lr;
+ }
+ while(y_hr < filter_size);
+
+ fg /= total_weight;
+ src_alpha /= total_weight;
+
+ if(fg < 0) fg = 0;
+ if(src_alpha < 0) src_alpha = 0;
+
+ if(src_alpha > base_mask) src_alpha = base_mask;
+ if(fg > src_alpha) fg = src_alpha;
+
+ span->v = (value_type)fg;
+ span->a = (value_type)src_alpha;
+
+ ++span;
+ ++base_type::interpolator();
+ } while(--len);
+ return base_type::allocator().span();
+ }
+ };
+
+
+
+
+
+
+
+ //==============================================span_image_resample_gray
+ template<class ColorT,
+ class Interpolator,
+ class Allocator = span_allocator<ColorT> >
+ class span_image_resample_gray :
+ public span_image_resample<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_resample<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::long_type long_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask,
+ downscale_shift = image_filter_shift
+ };
+
+ //--------------------------------------------------------------------
+ span_image_resample_gray(alloc_type& alloc) :
+ base_type(alloc)
+ {}
+
+ //--------------------------------------------------------------------
+ span_image_resample_gray(alloc_type& alloc,
+ const rendering_buffer& src,
+ const color_type& back_color,
+ interpolator_type& inter,
+ const image_filter_lut& filter) :
+ base_type(alloc, src, back_color, inter, filter)
+ {}
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ color_type* span = base_type::allocator().span();
+ base_type::interpolator().begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+ long_type fg;
+ long_type src_alpha;
+ value_type back_v = base_type::background_color().v;
+ value_type back_a = base_type::background_color().a;
+
+ int diameter = base_type::filter().diameter();
+ int filter_size = diameter << image_subpixel_shift;
+
+ const int16* weight_array = base_type::filter().weight_array();
+
+ do
+ {
+ int rx;
+ int ry;
+ int rx_inv = image_subpixel_size;
+ int ry_inv = image_subpixel_size;
+ base_type::interpolator().coordinates(&x, &y);
+ base_type::interpolator().local_scale(&rx, &ry);
+
+ rx = (rx * base_type::m_blur_x) >> image_subpixel_shift;
+ ry = (ry * base_type::m_blur_y) >> image_subpixel_shift;
+
+ if(rx < image_subpixel_size)
+ {
+ rx = image_subpixel_size;
+ }
+ else
+ {
+ if(rx > image_subpixel_size * base_type::m_scale_limit)
+ {
+ rx = image_subpixel_size * base_type::m_scale_limit;
+ }
+ rx_inv = image_subpixel_size * image_subpixel_size / rx;
+ }
+
+ if(ry < image_subpixel_size)
+ {
+ ry = image_subpixel_size;
+ }
+ else
+ {
+ if(ry > image_subpixel_size * base_type::m_scale_limit)
+ {
+ ry = image_subpixel_size * base_type::m_scale_limit;
+ }
+ ry_inv = image_subpixel_size * image_subpixel_size / ry;
+ }
+
+ int radius_x = (diameter * rx) >> 1;
+ int radius_y = (diameter * ry) >> 1;
+ int maxx = base_type::source_image().width() - 1;
+ int maxy = base_type::source_image().height() - 1;
+
+ x += base_type::filter_dx_int() - radius_x;
+ y += base_type::filter_dy_int() - radius_y;
+
+ fg = src_alpha = image_filter_size / 2;
+
+ int y_lr = y >> image_subpixel_shift;
+ int y_hr = ((image_subpixel_mask - (y & image_subpixel_mask)) *
+ ry_inv) >>
+ image_subpixel_shift;
+ int total_weight = 0;
+ int x_lr_ini = x >> image_subpixel_shift;
+ int x_hr_ini = ((image_subpixel_mask - (x & image_subpixel_mask)) *
+ rx_inv) >>
+ image_subpixel_shift;
+
+ do
+ {
+ int weight_y = weight_array[y_hr];
+ int x_lr = x_lr_ini;
+ int x_hr = x_hr_ini;
+ if(y_lr >= 0 && y_lr <= maxy)
+ {
+ const value_type* fg_ptr = (const value_type*)
+ base_type::source_image().row(y_lr) + x_lr;
+ do
+ {
+ int weight = (weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ downscale_shift;
+
+ if(x_lr >= 0 && x_lr <= maxx)
+ {
+ fg += *fg_ptr * weight;
+ src_alpha += base_mask * weight;
+ }
+ else
+ {
+ fg += back_v * weight;
+ src_alpha += back_a * weight;
+ }
+ total_weight += weight;
+ x_hr += rx_inv;
+ ++fg_ptr;
+ ++x_lr;
+ }
+ while(x_hr < filter_size);
+ }
+ else
+ {
+ do
+ {
+ int weight = (weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ downscale_shift;
+
+ total_weight += weight;
+ fg += back_v * weight;
+ src_alpha += back_a * weight;
+ x_hr += rx_inv;
+ }
+ while(x_hr < filter_size);
+ }
+ y_hr += ry_inv;
+ ++y_lr;
+ }
+ while(y_hr < filter_size);
+
+ fg /= total_weight;
+ src_alpha /= total_weight;
+
+ if(fg < 0) fg = 0;
+ if(src_alpha < 0) src_alpha = 0;
+
+ if(src_alpha > base_mask) src_alpha = base_mask;
+ if(fg > src_alpha) fg = src_alpha;
+
+ span->v = (value_type)fg;
+ span->a = (value_type)src_alpha;
+
+ ++span;
+ ++base_type::interpolator();
+ } while(--len);
+ return base_type::allocator().span();
+ }
+
+ };
+
+}
+
+
+#endif
diff --git a/agg/inc/agg_span_image_resample_rgb.h b/agg/inc/agg_span_image_resample_rgb.h
new file mode 100755
index 000000000000..de25dd4b382b
--- /dev/null
+++ b/agg/inc/agg_span_image_resample_rgb.h
@@ -0,0 +1,393 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_SPAN_IMAGE_RESAMPLE_RGB_INCLUDED
+#define AGG_SPAN_IMAGE_RESAMPLE_RGB_INCLUDED
+
+#include "agg_color_rgba.h"
+#include "agg_span_image_resample.h"
+
+namespace agg
+{
+
+ //=========================================span_image_resample_rgb_affine
+ template<class ColorT,
+ class Order,
+ class Allocator = span_allocator<ColorT> >
+ class span_image_resample_rgb_affine :
+ public span_image_resample_affine<ColorT, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Allocator alloc_type;
+ typedef span_image_resample_affine<color_type, alloc_type> base_type;
+ typedef typename base_type::interpolator_type interpolator_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::long_type long_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask,
+ downscale_shift = image_filter_shift
+ };
+
+ //--------------------------------------------------------------------
+ span_image_resample_rgb_affine(alloc_type& alloc) : base_type(alloc) {}
+
+ //--------------------------------------------------------------------
+ span_image_resample_rgb_affine(alloc_type& alloc,
+ const rendering_buffer& src,
+ const color_type& back_color,
+ interpolator_type& inter,
+ const image_filter_lut& filter) :
+ base_type(alloc, src, back_color, inter, filter)
+ {}
+
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ base_type::interpolator().begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+
+ long_type fg[4];
+ value_type back_r = base_type::background_color().r;
+ value_type back_g = base_type::background_color().g;
+ value_type back_b = base_type::background_color().b;
+ value_type back_a = base_type::background_color().a;
+
+ color_type* span = base_type::allocator().span();
+
+ int diameter = base_type::filter().diameter();
+ int filter_size = diameter << image_subpixel_shift;
+ int radius_x = (diameter * base_type::m_rx) >> 1;
+ int radius_y = (diameter * base_type::m_ry) >> 1;
+ int maxx = base_type::source_image().width() - 1;
+ int maxy = base_type::source_image().height() - 1;
+
+ const int16* weight_array = base_type::filter().weight_array();
+
+ do
+ {
+ base_type::interpolator().coordinates(&x, &y);
+
+ x += base_type::filter_dx_int() - radius_x;
+ y += base_type::filter_dy_int() - radius_y;
+
+ fg[0] = fg[1] = fg[2] = fg[3] = image_filter_size / 2;
+
+ int y_lr = y >> image_subpixel_shift;
+ int y_hr = ((image_subpixel_mask - (y & image_subpixel_mask)) *
+ base_type::m_ry_inv) >>
+ image_subpixel_shift;
+ int total_weight = 0;
+ int x_lr_ini = x >> image_subpixel_shift;
+ int x_hr_ini = ((image_subpixel_mask - (x & image_subpixel_mask)) *
+ base_type::m_rx_inv) >>
+ image_subpixel_shift;
+ do
+ {
+ int weight_y = weight_array[y_hr];
+ int x_lr = x_lr_ini;
+ int x_hr = x_hr_ini;
+ if(y_lr >= 0 && y_lr <= maxy)
+ {
+ const value_type* fg_ptr = (const value_type*)
+ base_type::source_image().row(y_lr) + x_lr * 3;
+ do
+ {
+ int weight = (weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ downscale_shift;
+
+ if(x_lr >= 0 && x_lr <= maxx)
+ {
+ fg[0] += fg_ptr[0] * weight;
+ fg[1] += fg_ptr[1] * weight;
+ fg[2] += fg_ptr[2] * weight;
+ fg[3] += base_mask * weight;
+ }
+ else
+ {
+ fg[order_type::R] += back_r * weight;
+ fg[order_type::G] += back_g * weight;
+ fg[order_type::B] += back_b * weight;
+ fg[3] += back_a * weight;
+ }
+ total_weight += weight;
+ fg_ptr += 3;
+ x_hr += base_type::m_rx_inv;
+ ++x_lr;
+ }
+ while(x_hr < filter_size);
+ }
+ else
+ {
+ do
+ {
+ int weight = (weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ downscale_shift;
+
+ total_weight += weight;
+ fg[order_type::R] += back_r * weight;
+ fg[order_type::G] += back_g * weight;
+ fg[order_type::B] += back_b * weight;
+ fg[3] += back_a * weight;
+ x_hr += base_type::m_rx_inv;
+ }
+ while(x_hr < filter_size);
+ }
+ y_hr += base_type::m_ry_inv;
+ ++y_lr;
+ }
+ while(y_hr < filter_size);
+
+ fg[0] /= total_weight;
+ fg[1] /= total_weight;
+ fg[2] /= total_weight;
+ fg[3] /= total_weight;
+
+ if(fg[0] < 0) fg[0] = 0;
+ if(fg[1] < 0) fg[1] = 0;
+ if(fg[2] < 0) fg[2] = 0;
+ if(fg[3] < 0) fg[3] = 0;
+
+ if(fg[3] > base_mask) fg[3] = base_mask;
+ if(fg[0] > fg[3]) fg[0] = fg[3];
+ if(fg[1] > fg[3]) fg[1] = fg[3];
+ if(fg[2] > fg[3]) fg[2] = fg[3];
+
+ span->r = (value_type)fg[order_type::R];
+ span->g = (value_type)fg[order_type::G];
+ span->b = (value_type)fg[order_type::B];
+ span->a = (value_type)fg[3];
+
+ ++span;
+ ++base_type::interpolator();
+ } while(--len);
+ return base_type::allocator().span();
+ }
+ };
+
+
+
+
+
+
+
+ //===============================================span_image_resample_rgb
+ template<class ColorT,
+ class Order,
+ class Interpolator,
+ class Allocator = span_allocator<ColorT> >
+ class span_image_resample_rgb :
+ public span_image_resample<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_resample<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::long_type long_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask,
+ downscale_shift = image_filter_shift
+ };
+
+ //--------------------------------------------------------------------
+ span_image_resample_rgb(alloc_type& alloc) :
+ base_type(alloc)
+ {}
+
+ //--------------------------------------------------------------------
+ span_image_resample_rgb(alloc_type& alloc,
+ const rendering_buffer& src,
+ const color_type& back_color,
+ interpolator_type& inter,
+ const image_filter_lut& filter) :
+ base_type(alloc, src, back_color, inter, filter)
+ {}
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ color_type* span = base_type::allocator().span();
+ base_type::interpolator().begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+ long_type fg[4];
+ value_type back_r = base_type::background_color().r;
+ value_type back_g = base_type::background_color().g;
+ value_type back_b = base_type::background_color().b;
+ value_type back_a = base_type::background_color().a;
+
+ int diameter = base_type::filter().diameter();
+ int filter_size = diameter << image_subpixel_shift;
+
+ const int16* weight_array = base_type::filter().weight_array();
+
+ do
+ {
+ int rx;
+ int ry;
+ int rx_inv = image_subpixel_size;
+ int ry_inv = image_subpixel_size;
+ base_type::interpolator().coordinates(&x, &y);
+ base_type::interpolator().local_scale(&rx, &ry);
+
+ rx = (rx * base_type::m_blur_x) >> image_subpixel_shift;
+ ry = (ry * base_type::m_blur_y) >> image_subpixel_shift;
+
+ if(rx < image_subpixel_size)
+ {
+ rx = image_subpixel_size;
+ }
+ else
+ {
+ if(rx > image_subpixel_size * base_type::m_scale_limit)
+ {
+ rx = image_subpixel_size * base_type::m_scale_limit;
+ }
+ rx_inv = image_subpixel_size * image_subpixel_size / rx;
+ }
+
+ if(ry < image_subpixel_size)
+ {
+ ry = image_subpixel_size;
+ }
+ else
+ {
+ if(ry > image_subpixel_size * base_type::m_scale_limit)
+ {
+ ry = image_subpixel_size * base_type::m_scale_limit;
+ }
+ ry_inv = image_subpixel_size * image_subpixel_size / ry;
+ }
+
+ int radius_x = (diameter * rx) >> 1;
+ int radius_y = (diameter * ry) >> 1;
+ int maxx = base_type::source_image().width() - 1;
+ int maxy = base_type::source_image().height() - 1;
+
+ x += base_type::filter_dx_int() - radius_x;
+ y += base_type::filter_dy_int() - radius_y;
+
+ fg[0] = fg[1] = fg[2] = fg[3] = image_filter_size / 2;
+
+ int y_lr = y >> image_subpixel_shift;
+ int y_hr = ((image_subpixel_mask - (y & image_subpixel_mask)) *
+ ry_inv) >>
+ image_subpixel_shift;
+ int total_weight = 0;
+ int x_lr_ini = x >> image_subpixel_shift;
+ int x_hr_ini = ((image_subpixel_mask - (x & image_subpixel_mask)) *
+ rx_inv) >>
+ image_subpixel_shift;
+
+ do
+ {
+ int weight_y = weight_array[y_hr];
+ int x_lr = x_lr_ini;
+ int x_hr = x_hr_ini;
+ if(y_lr >= 0 && y_lr <= maxy)
+ {
+ const value_type* fg_ptr = (const value_type*)
+ base_type::source_image().row(y_lr) + x_lr * 3;
+ do
+ {
+ int weight = (weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ downscale_shift;
+
+ if(x_lr >= 0 && x_lr <= maxx)
+ {
+ fg[0] += fg_ptr[0] * weight;
+ fg[1] += fg_ptr[1] * weight;
+ fg[2] += fg_ptr[2] * weight;
+ fg[3] += base_mask * weight;
+ }
+ else
+ {
+ fg[order_type::R] += back_r * weight;
+ fg[order_type::G] += back_g * weight;
+ fg[order_type::B] += back_b * weight;
+ fg[3] += back_a * weight;
+ }
+ total_weight += weight;
+ fg_ptr += 3;
+ x_hr += rx_inv;
+ ++x_lr;
+ }
+ while(x_hr < filter_size);
+ }
+ else
+ {
+ do
+ {
+ int weight = (weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ downscale_shift;
+
+ total_weight += weight;
+ fg[order_type::R] += back_r * weight;
+ fg[order_type::G] += back_g * weight;
+ fg[order_type::B] += back_b * weight;
+ fg[3] += back_a * weight;
+ x_hr += rx_inv;
+ }
+ while(x_hr < filter_size);
+ }
+ y_hr += ry_inv;
+ ++y_lr;
+ }
+ while(y_hr < filter_size);
+
+ fg[0] /= total_weight;
+ fg[1] /= total_weight;
+ fg[2] /= total_weight;
+ fg[3] /= total_weight;
+
+ if(fg[0] < 0) fg[0] = 0;
+ if(fg[1] < 0) fg[1] = 0;
+ if(fg[2] < 0) fg[2] = 0;
+ if(fg[3] < 0) fg[3] = 0;
+
+ if(fg[3] > base_mask) fg[3] = base_mask;
+ if(fg[0] > fg[3]) fg[0] = fg[3];
+ if(fg[1] > fg[3]) fg[1] = fg[3];
+ if(fg[2] > fg[3]) fg[2] = fg[3];
+
+ span->r = (value_type)fg[order_type::R];
+ span->g = (value_type)fg[order_type::G];
+ span->b = (value_type)fg[order_type::B];
+ span->a = (value_type)fg[3];
+
+ ++span;
+ ++base_type::interpolator();
+ } while(--len);
+ return base_type::allocator().span();
+ }
+
+ };
+
+}
+
+
+#endif
diff --git a/agg/inc/agg_span_image_resample_rgba.h b/agg/inc/agg_span_image_resample_rgba.h
new file mode 100755
index 000000000000..40f7ccb42e00
--- /dev/null
+++ b/agg/inc/agg_span_image_resample_rgba.h
@@ -0,0 +1,393 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_SPAN_IMAGE_RESAMPLE_RGBA_INCLUDED
+#define AGG_SPAN_IMAGE_RESAMPLE_RGBA_INCLUDED
+
+#include "agg_color_rgba.h"
+#include "agg_span_image_resample.h"
+
+namespace agg
+{
+
+ //========================================span_image_resample_rgba_affine
+ template<class ColorT,
+ class Order,
+ class Allocator = span_allocator<ColorT> >
+ class span_image_resample_rgba_affine :
+ public span_image_resample_affine<ColorT, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Allocator alloc_type;
+ typedef span_image_resample_affine<color_type, alloc_type> base_type;
+ typedef typename base_type::interpolator_type interpolator_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::long_type long_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask,
+ downscale_shift = image_filter_shift
+ };
+
+ //--------------------------------------------------------------------
+ span_image_resample_rgba_affine(alloc_type& alloc) : base_type(alloc) {}
+
+ //--------------------------------------------------------------------
+ span_image_resample_rgba_affine(alloc_type& alloc,
+ const rendering_buffer& src,
+ const color_type& back_color,
+ interpolator_type& inter,
+ const image_filter_lut& filter) :
+ base_type(alloc, src, back_color, inter, filter)
+ {}
+
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ base_type::interpolator().begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+
+ long_type fg[4];
+ value_type back_r = base_type::background_color().r;
+ value_type back_g = base_type::background_color().g;
+ value_type back_b = base_type::background_color().b;
+ value_type back_a = base_type::background_color().a;
+
+ color_type* span = base_type::allocator().span();
+
+ int diameter = base_type::filter().diameter();
+ int filter_size = diameter << image_subpixel_shift;
+ int radius_x = (diameter * base_type::m_rx) >> 1;
+ int radius_y = (diameter * base_type::m_ry) >> 1;
+ int maxx = base_type::source_image().width() - 1;
+ int maxy = base_type::source_image().height() - 1;
+
+ const int16* weight_array = base_type::filter().weight_array();
+
+ do
+ {
+ base_type::interpolator().coordinates(&x, &y);
+
+ x += base_type::filter_dx_int() - radius_x;
+ y += base_type::filter_dy_int() - radius_y;
+
+ fg[0] = fg[1] = fg[2] = fg[3] = image_filter_size / 2;
+
+ int y_lr = y >> image_subpixel_shift;
+ int y_hr = ((image_subpixel_mask - (y & image_subpixel_mask)) *
+ base_type::m_ry_inv) >>
+ image_subpixel_shift;
+ int total_weight = 0;
+ int x_lr_ini = x >> image_subpixel_shift;
+ int x_hr_ini = ((image_subpixel_mask - (x & image_subpixel_mask)) *
+ base_type::m_rx_inv) >>
+ image_subpixel_shift;
+ do
+ {
+ int weight_y = weight_array[y_hr];
+ int x_lr = x_lr_ini;
+ int x_hr = x_hr_ini;
+ if(y_lr >= 0 && y_lr <= maxy)
+ {
+ const value_type* fg_ptr = (const value_type*)
+ base_type::source_image().row(y_lr) + (x_lr << 2);
+ do
+ {
+ int weight = (weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ downscale_shift;
+
+ if(x_lr >= 0 && x_lr <= maxx)
+ {
+ fg[0] += fg_ptr[0] * weight;
+ fg[1] += fg_ptr[1] * weight;
+ fg[2] += fg_ptr[2] * weight;
+ fg[3] += fg_ptr[3] * weight;
+ }
+ else
+ {
+ fg[order_type::R] += back_r * weight;
+ fg[order_type::G] += back_g * weight;
+ fg[order_type::B] += back_b * weight;
+ fg[order_type::A] += back_a * weight;
+ }
+ total_weight += weight;
+ fg_ptr += 4;
+ x_hr += base_type::m_rx_inv;
+ ++x_lr;
+ }
+ while(x_hr < filter_size);
+ }
+ else
+ {
+ do
+ {
+ int weight = (weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ downscale_shift;
+
+ total_weight += weight;
+ fg[order_type::R] += back_r * weight;
+ fg[order_type::G] += back_g * weight;
+ fg[order_type::B] += back_b * weight;
+ fg[order_type::A] += back_a * weight;
+ x_hr += base_type::m_rx_inv;
+ }
+ while(x_hr < filter_size);
+ }
+ y_hr += base_type::m_ry_inv;
+ ++y_lr;
+ }
+ while(y_hr < filter_size);
+
+ fg[0] /= total_weight;
+ fg[1] /= total_weight;
+ fg[2] /= total_weight;
+ fg[3] /= total_weight;
+
+ if(fg[0] < 0) fg[0] = 0;
+ if(fg[1] < 0) fg[1] = 0;
+ if(fg[2] < 0) fg[2] = 0;
+ if(fg[3] < 0) fg[3] = 0;
+
+ if(fg[order_type::A] > base_mask) fg[order_type::A] = base_mask;
+ if(fg[order_type::R] > fg[order_type::A]) fg[order_type::R] = fg[order_type::A];
+ if(fg[order_type::G] > fg[order_type::A]) fg[order_type::G] = fg[order_type::A];
+ if(fg[order_type::B] > fg[order_type::A]) fg[order_type::B] = fg[order_type::A];
+
+ span->r = (value_type)fg[order_type::R];
+ span->g = (value_type)fg[order_type::G];
+ span->b = (value_type)fg[order_type::B];
+ span->a = (value_type)fg[order_type::A];
+
+ ++span;
+ ++base_type::interpolator();
+ } while(--len);
+ return base_type::allocator().span();
+ }
+ };
+
+
+
+
+
+
+
+ //==============================================span_image_resample_rgba
+ template<class ColorT,
+ class Order,
+ class Interpolator,
+ class Allocator = span_allocator<ColorT> >
+ class span_image_resample_rgba :
+ public span_image_resample<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_resample<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::long_type long_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask,
+ downscale_shift = image_filter_shift
+ };
+
+ //--------------------------------------------------------------------
+ span_image_resample_rgba(alloc_type& alloc) :
+ base_type(alloc)
+ {}
+
+ //--------------------------------------------------------------------
+ span_image_resample_rgba(alloc_type& alloc,
+ const rendering_buffer& src,
+ const color_type& back_color,
+ interpolator_type& inter,
+ const image_filter_lut& filter) :
+ base_type(alloc, src, back_color, inter, filter)
+ {}
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ color_type* span = base_type::allocator().span();
+ base_type::interpolator().begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+ long_type fg[4];
+ value_type back_r = base_type::background_color().r;
+ value_type back_g = base_type::background_color().g;
+ value_type back_b = base_type::background_color().b;
+ value_type back_a = base_type::background_color().a;
+
+ int diameter = base_type::filter().diameter();
+ int filter_size = diameter << image_subpixel_shift;
+
+ const int16* weight_array = base_type::filter().weight_array();
+
+ do
+ {
+ int rx;
+ int ry;
+ int rx_inv = image_subpixel_size;
+ int ry_inv = image_subpixel_size;
+ base_type::interpolator().coordinates(&x, &y);
+ base_type::interpolator().local_scale(&rx, &ry);
+
+ rx = (rx * base_type::m_blur_x) >> image_subpixel_shift;
+ ry = (ry * base_type::m_blur_y) >> image_subpixel_shift;
+
+ if(rx < image_subpixel_size)
+ {
+ rx = image_subpixel_size;
+ }
+ else
+ {
+ if(rx > image_subpixel_size * base_type::m_scale_limit)
+ {
+ rx = image_subpixel_size * base_type::m_scale_limit;
+ }
+ rx_inv = image_subpixel_size * image_subpixel_size / rx;
+ }
+
+ if(ry < image_subpixel_size)
+ {
+ ry = image_subpixel_size;
+ }
+ else
+ {
+ if(ry > image_subpixel_size * base_type::m_scale_limit)
+ {
+ ry = image_subpixel_size * base_type::m_scale_limit;
+ }
+ ry_inv = image_subpixel_size * image_subpixel_size / ry;
+ }
+
+ int radius_x = (diameter * rx) >> 1;
+ int radius_y = (diameter * ry) >> 1;
+ int maxx = base_type::source_image().width() - 1;
+ int maxy = base_type::source_image().height() - 1;
+
+ x += base_type::filter_dx_int() - radius_x;
+ y += base_type::filter_dy_int() - radius_y;
+
+ fg[0] = fg[1] = fg[2] = fg[3] = image_filter_size / 2;
+
+ int y_lr = y >> image_subpixel_shift;
+ int y_hr = ((image_subpixel_mask - (y & image_subpixel_mask)) *
+ ry_inv) >>
+ image_subpixel_shift;
+ int total_weight = 0;
+ int x_lr_ini = x >> image_subpixel_shift;
+ int x_hr_ini = ((image_subpixel_mask - (x & image_subpixel_mask)) *
+ rx_inv) >>
+ image_subpixel_shift;
+
+ do
+ {
+ int weight_y = weight_array[y_hr];
+ int x_lr = x_lr_ini;
+ int x_hr = x_hr_ini;
+ if(y_lr >= 0 && y_lr <= maxy)
+ {
+ const value_type* fg_ptr = (const value_type*)
+ base_type::source_image().row(y_lr) + (x_lr << 2);
+ do
+ {
+ int weight = (weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ downscale_shift;
+
+ if(x_lr >= 0 && x_lr <= maxx)
+ {
+ fg[0] += fg_ptr[0] * weight;
+ fg[1] += fg_ptr[1] * weight;
+ fg[2] += fg_ptr[2] * weight;
+ fg[3] += fg_ptr[3] * weight;
+ }
+ else
+ {
+ fg[order_type::R] += back_r * weight;
+ fg[order_type::G] += back_g * weight;
+ fg[order_type::B] += back_b * weight;
+ fg[order_type::A] += back_a * weight;
+ }
+ total_weight += weight;
+ fg_ptr += 4;
+ x_hr += rx_inv;
+ ++x_lr;
+ }
+ while(x_hr < filter_size);
+ }
+ else
+ {
+ do
+ {
+ int weight = (weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ downscale_shift;
+
+ total_weight += weight;
+ fg[order_type::R] += back_r * weight;
+ fg[order_type::G] += back_g * weight;
+ fg[order_type::B] += back_b * weight;
+ fg[order_type::A] += back_a * weight;
+ x_hr += rx_inv;
+ }
+ while(x_hr < filter_size);
+ }
+ y_hr += ry_inv;
+ ++y_lr;
+ }
+ while(y_hr < filter_size);
+
+ fg[0] /= total_weight;
+ fg[1] /= total_weight;
+ fg[2] /= total_weight;
+ fg[3] /= total_weight;
+
+ if(fg[0] < 0) fg[0] = 0;
+ if(fg[1] < 0) fg[1] = 0;
+ if(fg[2] < 0) fg[2] = 0;
+ if(fg[3] < 0) fg[3] = 0;
+
+ if(fg[order_type::A] > base_mask) fg[order_type::A] = base_mask;
+ if(fg[order_type::R] > fg[order_type::R]) fg[order_type::R] = fg[order_type::R];
+ if(fg[order_type::G] > fg[order_type::G]) fg[order_type::G] = fg[order_type::G];
+ if(fg[order_type::B] > fg[order_type::B]) fg[order_type::B] = fg[order_type::B];
+
+ span->r = (value_type)fg[order_type::R];
+ span->g = (value_type)fg[order_type::G];
+ span->b = (value_type)fg[order_type::B];
+ span->a = (value_type)fg[order_type::A];
+
+ ++span;
+ ++base_type::interpolator();
+ } while(--len);
+ return base_type::allocator().span();
+ }
+
+ };
+
+}
+
+
+#endif
diff --git a/agg/inc/agg_span_interpolator_adaptor.h b/agg/inc/agg_span_interpolator_adaptor.h
new file mode 100755
index 000000000000..ead42c13590c
--- /dev/null
+++ b/agg/inc/agg_span_interpolator_adaptor.h
@@ -0,0 +1,77 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_SPAN_INTERPOLATOR_ADAPTOR_INCLUDED
+#define AGG_SPAN_INTERPOLATOR_ADAPTOR_INCLUDED
+
+#include "agg_basics.h"
+
+namespace agg
+{
+
+ //===============================================span_interpolator_adaptor
+ template<class Interpolator, class Distortion>
+ class span_interpolator_adaptor : public Interpolator
+ {
+ public:
+ typedef Interpolator base_type;
+ typedef typename base_type::trans_type trans_type;
+ typedef Distortion distortion_type;
+
+ //--------------------------------------------------------------------
+ span_interpolator_adaptor() {}
+ span_interpolator_adaptor(const trans_type& trans,
+ const distortion_type& dist) :
+ base_type(trans),
+ m_distortion(&dist)
+ {
+ }
+
+ //--------------------------------------------------------------------
+ span_interpolator_adaptor(const trans_type& trans,
+ const distortion_type& dist,
+ double x, double y, unsigned len) :
+ base_type(trans, x, y, len),
+ m_distortion(&dist)
+ {
+ }
+
+ //--------------------------------------------------------------------
+ const distortion_type& distortion() const
+ {
+ return *m_distortion;
+ }
+
+ //--------------------------------------------------------------------
+ void distortion(const distortion_type& dist)
+ {
+ m_distortion = dist;
+ }
+
+ //--------------------------------------------------------------------
+ void coordinates(int* x, int* y) const
+ {
+ base_type::coordinates(x, y);
+ m_distortion->calculate(x, y);
+ }
+
+ private:
+ //--------------------------------------------------------------------
+ const distortion_type* m_distortion;
+ };
+}
+
+
+#endif
diff --git a/agg/inc/agg_span_interpolator_linear.h b/agg/inc/agg_span_interpolator_linear.h
new file mode 100755
index 000000000000..3cc2426be450
--- /dev/null
+++ b/agg/inc/agg_span_interpolator_linear.h
@@ -0,0 +1,232 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_SPAN_INTERPOLATOR_LINEAR_INCLUDED
+#define AGG_SPAN_INTERPOLATOR_LINEAR_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_dda_line.h"
+#include "agg_trans_affine.h"
+
+namespace agg
+{
+
+ //================================================span_interpolator_linear
+ template<class Transformer = trans_affine, unsigned SubpixelShift = 8>
+ class span_interpolator_linear
+ {
+ public:
+ typedef Transformer trans_type;
+
+ enum
+ {
+ subpixel_shift = SubpixelShift,
+ subpixel_size = 1 << subpixel_shift
+ };
+
+ //--------------------------------------------------------------------
+ span_interpolator_linear() {}
+ span_interpolator_linear(const trans_type& trans) : m_trans(&trans) {}
+ span_interpolator_linear(const trans_type& trans,
+ double x, double y, unsigned len) :
+ m_trans(&trans)
+ {
+ begin(x, y, len);
+ }
+
+ //----------------------------------------------------------------
+ const trans_type& transformer() const { return *m_trans; }
+ void transformer(const trans_type& trans) { m_trans = &trans; }
+
+ //----------------------------------------------------------------
+ void begin(double x, double y, unsigned len)
+ {
+ double tx;
+ double ty;
+
+ tx = x;
+ ty = y;
+ m_trans->transform(&tx, &ty);
+ int x1 = int(tx * subpixel_size);
+ int y1 = int(ty * subpixel_size);
+
+ tx = x + len;
+ ty = y;
+ m_trans->transform(&tx, &ty);
+ int x2 = int(tx * subpixel_size);
+ int y2 = int(ty * subpixel_size);
+
+ m_li_x = dda2_line_interpolator(x1, x2, len);
+ m_li_y = dda2_line_interpolator(y1, y2, len);
+ }
+
+ //----------------------------------------------------------------
+ void resynchronize(double xe, double ye, unsigned len)
+ {
+ m_trans->transform(&xe, &ye);
+ m_li_x = dda2_line_interpolator(m_li_x.y(), int(xe * subpixel_size), len);
+ m_li_y = dda2_line_interpolator(m_li_y.y(), int(ye * subpixel_size), len);
+ }
+
+ //----------------------------------------------------------------
+ void operator++()
+ {
+ ++m_li_x;
+ ++m_li_y;
+ }
+
+ //----------------------------------------------------------------
+ void coordinates(int* x, int* y) const
+ {
+ *x = m_li_x.y();
+ *y = m_li_y.y();
+ }
+
+ private:
+ const trans_type* m_trans;
+ dda2_line_interpolator m_li_x;
+ dda2_line_interpolator m_li_y;
+ };
+
+
+
+
+
+
+ //=====================================span_interpolator_linear_subdiv
+ template<class Transformer = trans_affine, unsigned SubpixelShift = 8>
+ class span_interpolator_linear_subdiv
+ {
+ public:
+ typedef Transformer trans_type;
+
+ enum
+ {
+ subpixel_shift = SubpixelShift,
+ subpixel_size = 1 << subpixel_shift
+ };
+
+
+ //----------------------------------------------------------------
+ span_interpolator_linear_subdiv() :
+ m_subdiv_shift(4),
+ m_subdiv_size(1 << m_subdiv_shift),
+ m_subdiv_mask(m_subdiv_size - 1) {}
+
+ span_interpolator_linear_subdiv(const trans_type& trans,
+ unsigned subdiv_shift = 4) :
+ m_subdiv_shift(subdiv_shift),
+ m_subdiv_size(1 << m_subdiv_shift),
+ m_subdiv_mask(m_subdiv_size - 1),
+ m_trans(&trans) {}
+
+ span_interpolator_linear_subdiv(const trans_type& trans,
+ double x, double y, unsigned len,
+ unsigned subdiv_shift = 4) :
+ m_subdiv_shift(subdiv_shift),
+ m_subdiv_size(1 << m_subdiv_shift),
+ m_subdiv_mask(m_subdiv_size - 1),
+ m_trans(&trans)
+ {
+ begin(x, y, len);
+ }
+
+ //----------------------------------------------------------------
+ const trans_type& transformer() const { return *m_trans; }
+ void transformer(const trans_type& trans) { m_trans = &trans; }
+
+ //----------------------------------------------------------------
+ unsigned subdiv_shift() const { return m_subdiv_shift; }
+ void subdiv_shift(unsigned shift)
+ {
+ m_subdiv_shift = shift;
+ m_subdiv_size = 1 << m_subdiv_shift;
+ m_subdiv_mask = m_subdiv_size - 1;
+ }
+
+ //----------------------------------------------------------------
+ void begin(double x, double y, unsigned len)
+ {
+ double tx;
+ double ty;
+ m_pos = 1;
+ m_src_x = int(x * subpixel_size) + subpixel_size;
+ m_src_y = y;
+ m_len = len;
+
+ if(len > m_subdiv_size) len = m_subdiv_size;
+ tx = x;
+ ty = y;
+ m_trans->transform(&tx, &ty);
+ int x1 = int(tx * subpixel_size);
+ int y1 = int(ty * subpixel_size);
+
+ tx = x + len;
+ ty = y;
+ m_trans->transform(&tx, &ty);
+
+ m_li_x = dda2_line_interpolator(x1, int(tx * subpixel_size), len);
+ m_li_y = dda2_line_interpolator(y1, int(ty * subpixel_size), len);
+ }
+
+ //----------------------------------------------------------------
+ void operator++()
+ {
+ ++m_li_x;
+ ++m_li_y;
+ if(m_pos >= m_subdiv_size)
+ {
+ unsigned len = m_len;
+ if(len > m_subdiv_size) len = m_subdiv_size;
+ double tx = double(m_src_x) / double(subpixel_size) + len;
+ double ty = m_src_y;
+ m_trans->transform(&tx, &ty);
+ m_li_x = dda2_line_interpolator(m_li_x.y(), int(tx * subpixel_size), len);
+ m_li_y = dda2_line_interpolator(m_li_y.y(), int(ty * subpixel_size), len);
+ m_pos = 0;
+ }
+ m_src_x += subpixel_size;
+ ++m_pos;
+ --m_len;
+ }
+
+ //----------------------------------------------------------------
+ void coordinates(int* x, int* y) const
+ {
+ *x = m_li_x.y();
+ *y = m_li_y.y();
+ }
+
+ private:
+ unsigned m_subdiv_shift;
+ unsigned m_subdiv_size;
+ unsigned m_subdiv_mask;
+ const trans_type* m_trans;
+ dda2_line_interpolator m_li_x;
+ dda2_line_interpolator m_li_y;
+ int m_src_x;
+ double m_src_y;
+ unsigned m_pos;
+ unsigned m_len;
+ };
+
+
+}
+
+
+
+#endif
+
+
diff --git a/agg/inc/agg_span_interpolator_persp.h b/agg/inc/agg_span_interpolator_persp.h
new file mode 100755
index 000000000000..632a56449f28
--- /dev/null
+++ b/agg/inc/agg_span_interpolator_persp.h
@@ -0,0 +1,462 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+#ifndef AGG_SPAN_INTERPOLATOR_PERSP_INCLUDED
+#define AGG_SPAN_INTERPOLATOR_PERSP_INCLUDED
+
+#include "agg_trans_perspective.h"
+#include "agg_dda_line.h"
+
+namespace agg
+{
+
+
+
+ //===========================================span_interpolator_persp_exact
+ template<unsigned SubpixelShift = 8>
+ class span_interpolator_persp_exact
+ {
+ public:
+ typedef trans_perspective trans_type;
+ typedef trans_perspective::iterator_x iterator_type;
+ enum
+ {
+ subpixel_shift = SubpixelShift,
+ subpixel_size = 1 << subpixel_shift
+ };
+
+ //--------------------------------------------------------------------
+ span_interpolator_persp_exact() {}
+
+ //--------------------------------------------------------------------
+ // Arbitrary quadrangle transformations
+ span_interpolator_persp_exact(const double* src, const double* dst)
+ {
+ quad_to_quad(src, dst);
+ }
+
+ //--------------------------------------------------------------------
+ // Direct transformations
+ span_interpolator_persp_exact(double x1, double y1,
+ double x2, double y2,
+ const double* quad)
+ {
+ rect_to_quad(x1, y1, x2, y2, quad);
+ }
+
+ //--------------------------------------------------------------------
+ // Reverse transformations
+ span_interpolator_persp_exact(const double* quad,
+ double x1, double y1,
+ double x2, double y2)
+ {
+ quad_to_rect(quad, x1, y1, x2, y2);
+ }
+
+ //--------------------------------------------------------------------
+ // Set the transformations using two arbitrary quadrangles.
+ void quad_to_quad(const double* src, const double* dst)
+ {
+ m_trans_dir.quad_to_quad(src, dst);
+ m_trans_inv.quad_to_quad(dst, src);
+ }
+
+ //--------------------------------------------------------------------
+ // Set the direct transformations, i.e., rectangle -> quadrangle
+ void rect_to_quad(double x1, double y1, double x2, double y2,
+ const double* quad)
+ {
+ double src[8];
+ src[0] = src[6] = x1;
+ src[2] = src[4] = x2;
+ src[1] = src[3] = y1;
+ src[5] = src[7] = y2;
+ quad_to_quad(src, quad);
+ }
+
+
+ //--------------------------------------------------------------------
+ // Set the reverse transformations, i.e., quadrangle -> rectangle
+ void quad_to_rect(const double* quad,
+ double x1, double y1, double x2, double y2)
+ {
+ double dst[8];
+ dst[0] = dst[6] = x1;
+ dst[2] = dst[4] = x2;
+ dst[1] = dst[3] = y1;
+ dst[5] = dst[7] = y2;
+ quad_to_quad(quad, dst);
+ }
+
+ //--------------------------------------------------------------------
+ // Check if the equations were solved successfully
+ bool is_valid() const { return m_trans_dir.is_valid(); }
+
+ //----------------------------------------------------------------
+ void begin(double x, double y, unsigned len)
+ {
+ m_iterator = m_trans_dir.begin(x, y, 1.0);
+ double xt = m_iterator.x;
+ double yt = m_iterator.y;
+
+ double dx;
+ double dy;
+ const double delta = 1/double(subpixel_size);
+ dx = xt + delta;
+ dy = yt;
+ m_trans_inv.transform(&dx, &dy);
+ dx -= x;
+ dy -= y;
+ int sx1 = int(subpixel_size/sqrt(dx*dx + dy*dy)) >> subpixel_shift;
+ dx = xt;
+ dy = yt + delta;
+ m_trans_inv.transform(&dx, &dy);
+ dx -= x;
+ dy -= y;
+ int sy1 = int(subpixel_size/sqrt(dx*dx + dy*dy)) >> subpixel_shift;
+
+ x += len;
+ xt = x;
+ yt = y;
+ m_trans_dir.transform(&xt, &yt);
+
+ dx = xt + delta;
+ dy = yt;
+ m_trans_inv.transform(&dx, &dy);
+ dx -= x;
+ dy -= y;
+ int sx2 = int(subpixel_size/sqrt(dx*dx + dy*dy)) >> subpixel_shift;
+ dx = xt;
+ dy = yt + delta;
+ m_trans_inv.transform(&dx, &dy);
+ dx -= x;
+ dy -= y;
+ int sy2 = int(subpixel_size/sqrt(dx*dx + dy*dy)) >> subpixel_shift;
+
+ m_scale_x = dda2_line_interpolator(sx1, sx2, len);
+ m_scale_y = dda2_line_interpolator(sy1, sy2, len);
+ }
+
+
+ //----------------------------------------------------------------
+ void resynchronize(double xe, double ye, unsigned len)
+ {
+ // Assume x1,y1 are equal to the ones at the previous end point
+ int sx1 = m_scale_x.y();
+ int sy1 = m_scale_y.y();
+
+ // Calculate transformed coordinates at x2,y2
+ double xt = xe;
+ double yt = ye;
+ m_trans_dir.transform(&xt, &yt);
+
+ const double delta = 1/double(subpixel_size);
+ double dx;
+ double dy;
+
+ // Calculate scale by X at x2,y2
+ dx = xt + delta;
+ dy = yt;
+ m_trans_inv.transform(&dx, &dy);
+ dx -= xe;
+ dy -= ye;
+ int sx2 = int(subpixel_size/sqrt(dx*dx + dy*dy)) >> subpixel_shift;
+
+ // Calculate scale by Y at x2,y2
+ dx = xt;
+ dy = yt + delta;
+ m_trans_inv.transform(&dx, &dy);
+ dx -= xe;
+ dy -= ye;
+ int sy2 = int(subpixel_size/sqrt(dx*dx + dy*dy)) >> subpixel_shift;
+
+ // Initialize the interpolators
+ m_scale_x = dda2_line_interpolator(sx1, sx2, len);
+ m_scale_y = dda2_line_interpolator(sy1, sy2, len);
+ }
+
+
+
+ //----------------------------------------------------------------
+ void operator++()
+ {
+ ++m_iterator;
+ ++m_scale_x;
+ ++m_scale_y;
+ }
+
+ //----------------------------------------------------------------
+ void coordinates(int* x, int* y) const
+ {
+ *x = int(m_iterator.x * subpixel_size + 0.5);
+ *y = int(m_iterator.y * subpixel_size + 0.5);
+ }
+
+ //----------------------------------------------------------------
+ void local_scale(int* x, int* y)
+ {
+ *x = m_scale_x.y();
+ *y = m_scale_y.y();
+ }
+
+ //----------------------------------------------------------------
+ void transform(double* x, double* y) const
+ {
+ m_trans_dir.transform(x, y);
+ }
+
+ private:
+ trans_type m_trans_dir;
+ trans_type m_trans_inv;
+ iterator_type m_iterator;
+ dda2_line_interpolator m_scale_x;
+ dda2_line_interpolator m_scale_y;
+ };
+
+
+
+
+
+
+
+
+
+
+
+ //============================================span_interpolator_persp_lerp
+ template<unsigned SubpixelShift = 8>
+ class span_interpolator_persp_lerp
+ {
+ public:
+ typedef trans_perspective trans_type;
+ enum
+ {
+ subpixel_shift = SubpixelShift,
+ subpixel_size = 1 << subpixel_shift
+ };
+
+ //--------------------------------------------------------------------
+ span_interpolator_persp_lerp() {}
+
+ //--------------------------------------------------------------------
+ // Arbitrary quadrangle transformations
+ span_interpolator_persp_lerp(const double* src, const double* dst)
+ {
+ quad_to_quad(src, dst);
+ }
+
+ //--------------------------------------------------------------------
+ // Direct transformations
+ span_interpolator_persp_lerp(double x1, double y1,
+ double x2, double y2,
+ const double* quad)
+ {
+ rect_to_quad(x1, y1, x2, y2, quad);
+ }
+
+ //--------------------------------------------------------------------
+ // Reverse transformations
+ span_interpolator_persp_lerp(const double* quad,
+ double x1, double y1,
+ double x2, double y2)
+ {
+ quad_to_rect(quad, x1, y1, x2, y2);
+ }
+
+ //--------------------------------------------------------------------
+ // Set the transformations using two arbitrary quadrangles.
+ void quad_to_quad(const double* src, const double* dst)
+ {
+ m_trans_dir.quad_to_quad(src, dst);
+ m_trans_inv.quad_to_quad(dst, src);
+ }
+
+ //--------------------------------------------------------------------
+ // Set the direct transformations, i.e., rectangle -> quadrangle
+ void rect_to_quad(double x1, double y1, double x2, double y2,
+ const double* quad)
+ {
+ double src[8];
+ src[0] = src[6] = x1;
+ src[2] = src[4] = x2;
+ src[1] = src[3] = y1;
+ src[5] = src[7] = y2;
+ quad_to_quad(src, quad);
+ }
+
+
+ //--------------------------------------------------------------------
+ // Set the reverse transformations, i.e., quadrangle -> rectangle
+ void quad_to_rect(const double* quad,
+ double x1, double y1, double x2, double y2)
+ {
+ double dst[8];
+ dst[0] = dst[6] = x1;
+ dst[2] = dst[4] = x2;
+ dst[1] = dst[3] = y1;
+ dst[5] = dst[7] = y2;
+ quad_to_quad(quad, dst);
+ }
+
+ //--------------------------------------------------------------------
+ // Check if the equations were solved successfully
+ bool is_valid() const { return m_trans_dir.is_valid(); }
+
+ //----------------------------------------------------------------
+ void begin(double x, double y, unsigned len)
+ {
+ // Calculate transformed coordinates at x1,y1
+ double xt = x;
+ double yt = y;
+ m_trans_dir.transform(&xt, &yt);
+ int x1 = int(xt * subpixel_size);
+ int y1 = int(yt * subpixel_size);
+
+ double dx;
+ double dy;
+ const double delta = 1/double(subpixel_size);
+
+ // Calculate scale by X at x1,y1
+ dx = xt + delta;
+ dy = yt;
+ m_trans_inv.transform(&dx, &dy);
+ dx -= x;
+ dy -= y;
+ int sx1 = int(subpixel_size/sqrt(dx*dx + dy*dy)) >> subpixel_shift;
+
+ // Calculate scale by Y at x1,y1
+ dx = xt;
+ dy = yt + delta;
+ m_trans_inv.transform(&dx, &dy);
+ dx -= x;
+ dy -= y;
+ int sy1 = int(subpixel_size/sqrt(dx*dx + dy*dy)) >> subpixel_shift;
+
+ // Calculate transformed coordinates at x2,y2
+ x += len;
+ xt = x;
+ yt = y;
+ m_trans_dir.transform(&xt, &yt);
+ int x2 = int(xt * subpixel_size);
+ int y2 = int(yt * subpixel_size);
+
+ // Calculate scale by X at x2,y2
+ dx = xt + delta;
+ dy = yt;
+ m_trans_inv.transform(&dx, &dy);
+ dx -= x;
+ dy -= y;
+ int sx2 = int(subpixel_size/sqrt(dx*dx + dy*dy)) >> subpixel_shift;
+
+ // Calculate scale by Y at x2,y2
+ dx = xt;
+ dy = yt + delta;
+ m_trans_inv.transform(&dx, &dy);
+ dx -= x;
+ dy -= y;
+ int sy2 = int(subpixel_size/sqrt(dx*dx + dy*dy)) >> subpixel_shift;
+
+ // Initialize the interpolators
+ m_coord_x = dda2_line_interpolator(x1, x2, len);
+ m_coord_y = dda2_line_interpolator(y1, y2, len);
+ m_scale_x = dda2_line_interpolator(sx1, sx2, len);
+ m_scale_y = dda2_line_interpolator(sy1, sy2, len);
+ }
+
+
+ //----------------------------------------------------------------
+ void resynchronize(double xe, double ye, unsigned len)
+ {
+ // Assume x1,y1 are equal to the ones at the previous end point
+ int x1 = m_coord_x.y();
+ int y1 = m_coord_y.y();
+ int sx1 = m_scale_x.y();
+ int sy1 = m_scale_y.y();
+
+ // Calculate transformed coordinates at x2,y2
+ double xt = xe;
+ double yt = ye;
+ m_trans_dir.transform(&xt, &yt);
+ int x2 = int(xt * subpixel_size);
+ int y2 = int(yt * subpixel_size);
+
+ const double delta = 1/double(subpixel_size);
+ double dx;
+ double dy;
+
+ // Calculate scale by X at x2,y2
+ dx = xt + delta;
+ dy = yt;
+ m_trans_inv.transform(&dx, &dy);
+ dx -= xe;
+ dy -= ye;
+ int sx2 = int(subpixel_size/sqrt(dx*dx + dy*dy)) >> subpixel_shift;
+
+ // Calculate scale by Y at x2,y2
+ dx = xt;
+ dy = yt + delta;
+ m_trans_inv.transform(&dx, &dy);
+ dx -= xe;
+ dy -= ye;
+ int sy2 = int(subpixel_size/sqrt(dx*dx + dy*dy)) >> subpixel_shift;
+
+ // Initialize the interpolators
+ m_coord_x = dda2_line_interpolator(x1, x2, len);
+ m_coord_y = dda2_line_interpolator(y1, y2, len);
+ m_scale_x = dda2_line_interpolator(sx1, sx2, len);
+ m_scale_y = dda2_line_interpolator(sy1, sy2, len);
+ }
+
+
+ //----------------------------------------------------------------
+ void operator++()
+ {
+ ++m_coord_x;
+ ++m_coord_y;
+ ++m_scale_x;
+ ++m_scale_y;
+ }
+
+ //----------------------------------------------------------------
+ void coordinates(int* x, int* y) const
+ {
+ *x = m_coord_x.y();
+ *y = m_coord_y.y();
+ }
+
+ //----------------------------------------------------------------
+ void local_scale(int* x, int* y)
+ {
+ *x = m_scale_x.y();
+ *y = m_scale_y.y();
+ }
+
+ //----------------------------------------------------------------
+ void transform(double* x, double* y) const
+ {
+ m_trans_dir.transform(x, y);
+ }
+
+ private:
+ trans_type m_trans_dir;
+ trans_type m_trans_inv;
+ dda2_line_interpolator m_coord_x;
+ dda2_line_interpolator m_coord_y;
+ dda2_line_interpolator m_scale_x;
+ dda2_line_interpolator m_scale_y;
+ };
+
+}
+
+#endif
diff --git a/agg/inc/agg_span_interpolator_trans.h b/agg/inc/agg_span_interpolator_trans.h
new file mode 100755
index 000000000000..5caaffe9e5c0
--- /dev/null
+++ b/agg/inc/agg_span_interpolator_trans.h
@@ -0,0 +1,97 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Horizontal span interpolator for use with an arbitrary transformer
+// The efficiency highly depends on the operations done in the transformer
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_SPAN_INTERPOLATOR_TRANS_INCLUDED
+#define AGG_SPAN_INTERPOLATOR_TRANS_INCLUDED
+
+#include "agg_basics.h"
+
+namespace agg
+{
+ //=================================================span_interpolator_trans
+ template<class Transformer, unsigned SubpixelShift = 8>
+ class span_interpolator_trans
+ {
+ public:
+ typedef Transformer trans_type;
+ enum
+ {
+ subpixel_shift = SubpixelShift,
+ subpixel_size = 1 << subpixel_shift
+ };
+
+ //--------------------------------------------------------------------
+ span_interpolator_trans() {}
+ span_interpolator_trans(const trans_type& trans) : m_trans(&trans) {}
+ span_interpolator_trans(const trans_type& trans,
+ double x, double y, unsigned) :
+ m_trans(&trans)
+ {
+ begin(x, y, 0);
+ }
+
+ //----------------------------------------------------------------
+ const trans_type& transformer() const { return *m_trans; }
+ void transformer(const trans_type& trans) { m_trans = &trans; }
+
+ //----------------------------------------------------------------
+ void begin(double x, double y, unsigned)
+ {
+ m_x = x;
+ m_y = y;
+ m_trans->transform(&x, &y);
+ m_ix = int(x * subpixel_size);
+ m_iy = int(y * subpixel_size);
+ }
+
+ //----------------------------------------------------------------
+ void next(double, double, unsigned)
+ {
+ }
+
+ //----------------------------------------------------------------
+ void operator++()
+ {
+ m_x += 1.0;
+ double x = m_x;
+ double y = m_y;
+ m_trans->transform(&x, &y);
+ m_ix = int(x * subpixel_size);
+ m_iy = int(y * subpixel_size);
+ }
+
+ //----------------------------------------------------------------
+ void coordinates(int* x, int* y) const
+ {
+ *x = m_ix;
+ *y = m_iy;
+ }
+
+ private:
+ const trans_type* m_trans;
+ double m_x;
+ double m_y;
+ int m_ix;
+ int m_iy;
+ };
+
+}
+
+#endif
diff --git a/agg/inc/agg_span_pattern.h b/agg/inc/agg_span_pattern.h
new file mode 100755
index 000000000000..b9e9b135ff84
--- /dev/null
+++ b/agg/inc/agg_span_pattern.h
@@ -0,0 +1,278 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Adaptation for high precision colors has been sponsored by
+// Liberty Technology Systems, Inc., visit http://lib-sys.com
+//
+// Liberty Technology Systems, Inc. is the provider of
+// PostScript and PDF technology for software developers.
+//
+//----------------------------------------------------------------------------
+
+
+#ifndef AGG_SPAN_PATTERN_INCLUDED
+#define AGG_SPAN_PATTERN_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_rendering_buffer.h"
+#include "agg_span_generator.h"
+
+
+namespace agg
+{
+
+ //---------------------------------------------------span_pattern_base
+ template<class ColorT, class Allocator>
+ class span_pattern_base : public span_generator<ColorT, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef typename ColorT::value_type value_type;
+ typedef Allocator alloc_type;
+ enum { base_mask = color_type::base_mask };
+
+ //----------------------------------------------------------------
+ span_pattern_base(alloc_type& alloc) :
+ span_generator<color_type, alloc_type>(alloc)
+ {}
+
+ //----------------------------------------------------------------
+ span_pattern_base(alloc_type& alloc,
+ const rendering_buffer& src,
+ unsigned offset_x, unsigned offset_y,
+ double alpha) :
+ span_generator<color_type, alloc_type>(alloc),
+ m_src(&src),
+ m_offset_x(offset_x),
+ m_offset_y(offset_y),
+ m_alpha(value_type(alpha * double(base_mask)))
+ {}
+
+ //----------------------------------------------------------------
+ const rendering_buffer& source_image() const { return *m_src; }
+ unsigned offset_x() const { return m_offset_x; }
+ unsigned offset_y() const { return m_offset_y; }
+ double alpha() const { return m_alpha / double(base_mask); }
+ value_type alpha_int() const { return m_alpha; }
+
+ //----------------------------------------------------------------
+ void source_image(const rendering_buffer& v) { m_src = &v; }
+ void offset_x(unsigned v) { m_offset_x = v; }
+ void offset_y(unsigned v) { m_offset_y = v; }
+ void alpha(double v) { m_alpha = value_type(v * double(base_mask)); }
+
+ //----------------------------------------------------------------
+ private:
+ const rendering_buffer* m_src;
+ unsigned m_offset_x;
+ unsigned m_offset_y;
+ value_type m_alpha;
+ };
+
+
+ //---------------------------------------------------wrap_mode_repeat
+ class wrap_mode_repeat
+ {
+ public:
+ wrap_mode_repeat(unsigned size) :
+ m_size(size),
+ m_add(size * (0x3FFFFFFF / size)),
+ m_value(0)
+ {}
+
+ AGG_INLINE unsigned operator() (int v)
+ {
+ return m_value = (unsigned(v) + m_add) % m_size;
+ }
+
+ AGG_INLINE unsigned operator++ ()
+ {
+ ++m_value;
+ if(m_value >= m_size) m_value = 0;
+ return m_value;
+ }
+ private:
+ unsigned m_size;
+ unsigned m_add;
+ unsigned m_value;
+ };
+
+
+ //---------------------------------------------wrap_mode_repeat_pow2
+ class wrap_mode_repeat_pow2
+ {
+ public:
+ wrap_mode_repeat_pow2(unsigned size) : m_value(0)
+ {
+ m_mask = 1;
+ while(m_mask < size) m_mask = (m_mask << 1) | 1;
+ m_mask >>= 1;
+ }
+ AGG_INLINE unsigned operator() (int v)
+ {
+ return m_value = unsigned(v) & m_mask;
+ }
+ AGG_INLINE unsigned operator++ ()
+ {
+ ++m_value;
+ if(m_value > m_mask) m_value = 0;
+ return m_value;
+ }
+ private:
+ unsigned m_mask;
+ unsigned m_value;
+ };
+
+
+ //----------------------------------------wrap_mode_repeat_auto_pow2
+ class wrap_mode_repeat_auto_pow2
+ {
+ public:
+ wrap_mode_repeat_auto_pow2(unsigned size) :
+ m_size(size),
+ m_add(size * (0x3FFFFFFF / size)),
+ m_mask((m_size & (m_size-1)) ? 0 : m_size-1),
+ m_value(0)
+ {}
+
+ AGG_INLINE unsigned operator() (int v)
+ {
+ if(m_mask) return m_value = unsigned(v) & m_mask;
+ return m_value = (unsigned(v) + m_add) % m_size;
+ }
+ AGG_INLINE unsigned operator++ ()
+ {
+ ++m_value;
+ if(m_value >= m_size) m_value = 0;
+ return m_value;
+ }
+
+ private:
+ unsigned m_size;
+ unsigned m_add;
+ unsigned m_mask;
+ unsigned m_value;
+ };
+
+
+ //--------------------------------------------------wrap_mode_reflect
+ class wrap_mode_reflect
+ {
+ public:
+ wrap_mode_reflect(unsigned size) :
+ m_size(size),
+ m_size2(size * 2),
+ m_add(m_size2 * (0x3FFFFFFF / m_size2)),
+ m_value(0)
+ {}
+
+ AGG_INLINE unsigned operator() (int v)
+ {
+ m_value = (unsigned(v) + m_add) % m_size2;
+ if(m_value >= m_size) return m_size2 - m_value - 1;
+ return m_value;
+ }
+
+ AGG_INLINE unsigned operator++ ()
+ {
+ ++m_value;
+ if(m_value >= m_size2) m_value = 0;
+ if(m_value >= m_size) return m_size2 - m_value - 1;
+ return m_value;
+ }
+ private:
+ unsigned m_size;
+ unsigned m_size2;
+ unsigned m_add;
+ unsigned m_value;
+ };
+
+
+
+ //-------------------------------------------wrap_mode_reflect_pow2
+ class wrap_mode_reflect_pow2
+ {
+ public:
+ wrap_mode_reflect_pow2(unsigned size) : m_value(0)
+ {
+ m_mask = 1;
+ m_size = 1;
+ while(m_mask < size)
+ {
+ m_mask = (m_mask << 1) | 1;
+ m_size <<= 1;
+ }
+ }
+ AGG_INLINE unsigned operator() (int v)
+ {
+ m_value = unsigned(v) & m_mask;
+ if(m_value >= m_size) return m_mask - m_value;
+ return m_value;
+ }
+ AGG_INLINE unsigned operator++ ()
+ {
+ ++m_value;
+ m_value &= m_mask;
+ if(m_value >= m_size) return m_mask - m_value;
+ return m_value;
+ }
+ private:
+ unsigned m_size;
+ unsigned m_mask;
+ unsigned m_value;
+ };
+
+
+
+ //---------------------------------------wrap_mode_reflect_auto_pow2
+ class wrap_mode_reflect_auto_pow2
+ {
+ public:
+ wrap_mode_reflect_auto_pow2(unsigned size) :
+ m_size(size),
+ m_size2(size * 2),
+ m_add(m_size2 * (0x3FFFFFFF / m_size2)),
+ m_mask((m_size2 & (m_size2-1)) ? 0 : m_size2-1),
+ m_value(0)
+ {}
+
+ AGG_INLINE unsigned operator() (int v)
+ {
+ m_value = m_mask ? unsigned(v) & m_mask :
+ (unsigned(v) + m_add) % m_size2;
+ if(m_value >= m_size) return m_size2 - m_value - 1;
+ return m_value;
+ }
+ AGG_INLINE unsigned operator++ ()
+ {
+ ++m_value;
+ if(m_value >= m_size2) m_value = 0;
+ if(m_value >= m_size) return m_size2 - m_value - 1;
+ return m_value;
+ }
+
+ private:
+ unsigned m_size;
+ unsigned m_size2;
+ unsigned m_add;
+ unsigned m_mask;
+ unsigned m_value;
+ };
+
+
+}
+
+#endif
+
diff --git a/agg/inc/agg_span_pattern_filter_gray.h b/agg/inc/agg_span_pattern_filter_gray.h
new file mode 100755
index 000000000000..17a7984be7fe
--- /dev/null
+++ b/agg/inc/agg_span_pattern_filter_gray.h
@@ -0,0 +1,472 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// classes span_pattern_filter_gray*
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_SPAN_PATTERN_FILTER_GRAY_INCLUDED
+#define AGG_SPAN_PATTERN_FILTER_GRAY_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_color_gray.h"
+#include "agg_span_pattern.h"
+#include "agg_span_image_filter.h"
+
+
+namespace agg
+{
+
+ //===========================================span_pattern_filter_gray
+ template<class ColorT,
+ class Interpolator,
+ class WrapModeX,
+ class WrapModeY,
+ class Allocator = span_allocator<ColorT> >
+ class span_pattern_filter_gray_nn :
+ public span_image_filter<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_filter<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ span_pattern_filter_gray_nn(alloc_type& alloc) :
+ base_type(alloc),
+ m_wrap_mode_x(1),
+ m_wrap_mode_y(1)
+ {}
+
+ //--------------------------------------------------------------------
+ span_pattern_filter_gray_nn(alloc_type& alloc,
+ const rendering_buffer& src,
+ interpolator_type& inter) :
+ base_type(alloc, src, color_type(0,0), inter, 0),
+ m_wrap_mode_x(src.width()),
+ m_wrap_mode_y(src.height())
+ {}
+
+ //--------------------------------------------------------------------
+ void source_image(const rendering_buffer& src)
+ {
+ base_type::source_image(src);
+ m_wrap_mode_x = WrapModeX(src.width());
+ m_wrap_mode_y = WrapModeX(src.height());
+ }
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ base_type::interpolator().begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+ color_type* span = base_type::allocator().span();
+ do
+ {
+ base_type::interpolator().coordinates(&x, &y);
+
+ x = m_wrap_mode_x(x >> image_subpixel_shift);
+ y = m_wrap_mode_y(y >> image_subpixel_shift);
+
+ span->v = *((value_type*)base_type::source_image().row(y) + x);
+ span->a = base_mask;
+ ++span;
+ ++base_type::interpolator();
+
+ } while(--len);
+
+ return base_type::allocator().span();
+ }
+
+ private:
+ WrapModeX m_wrap_mode_x;
+ WrapModeY m_wrap_mode_y;
+ };
+
+
+
+
+
+
+ //====================================span_pattern_filter_gray_bilinear
+ template<class ColorT,
+ class Interpolator,
+ class WrapModeX,
+ class WrapModeY,
+ class Allocator = span_allocator<ColorT> >
+ class span_pattern_filter_gray_bilinear :
+ public span_image_filter<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_filter<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ span_pattern_filter_gray_bilinear(alloc_type& alloc) :
+ base_type(alloc),
+ m_wrap_mode_x(1),
+ m_wrap_mode_y(1)
+ {}
+
+ //--------------------------------------------------------------------
+ span_pattern_filter_gray_bilinear(alloc_type& alloc,
+ const rendering_buffer& src,
+ interpolator_type& inter) :
+ base_type(alloc, src, color_type(0,0), inter, 0),
+ m_wrap_mode_x(src.width()),
+ m_wrap_mode_y(src.height())
+ {}
+
+ //-------------------------------------------------------------------
+ void source_image(const rendering_buffer& src)
+ {
+ base_type::source_image(src);
+ m_wrap_mode_x = WrapModeX(src.width());
+ m_wrap_mode_y = WrapModeX(src.height());
+ }
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ base_type::interpolator().begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+ calc_type fg;
+ color_type* span = base_type::allocator().span();
+ do
+ {
+ int x_hr;
+ int y_hr;
+
+ base_type::interpolator().coordinates(&x_hr, &y_hr);
+
+ x_hr -= base_type::filter_dx_int();
+ y_hr -= base_type::filter_dy_int();
+
+ int x_lr = x_hr >> image_subpixel_shift;
+ int y_lr = y_hr >> image_subpixel_shift;
+
+ unsigned x1 = m_wrap_mode_x(x_lr);
+ unsigned x2 = ++m_wrap_mode_x;
+
+ unsigned y1 = m_wrap_mode_y(y_lr);
+ unsigned y2 = ++m_wrap_mode_y;
+ const value_type* ptr1 = (value_type*)base_type::source_image().row(y1);
+ const value_type* ptr2 = (value_type*)base_type::source_image().row(y2);
+
+ fg = image_subpixel_size * image_subpixel_size / 2;
+
+ x_hr &= image_subpixel_mask;
+ y_hr &= image_subpixel_mask;
+
+ fg += ptr1[x1] * (image_subpixel_size - x_hr) * (image_subpixel_size - y_hr);
+ fg += ptr1[x2] * x_hr * (image_subpixel_size - y_hr);
+ fg += ptr2[x1] * (image_subpixel_size - x_hr) * y_hr;
+ fg += ptr2[x2] * x_hr * y_hr;
+
+ span->v = (value_type)(fg >> image_subpixel_shift * 2);
+ span->a = base_mask;
+ ++span;
+ ++base_type::interpolator();
+
+ } while(--len);
+
+ return base_type::allocator().span();
+ }
+ private:
+ WrapModeX m_wrap_mode_x;
+ WrapModeY m_wrap_mode_y;
+ };
+
+
+
+
+
+
+
+
+
+ //====================================span_pattern_filter_gray_2x2
+ template<class ColorT,
+ class Interpolator,
+ class WrapModeX,
+ class WrapModeY,
+ class Allocator = span_allocator<ColorT> >
+ class span_pattern_filter_gray_2x2 :
+ public span_image_filter<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_filter<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ span_pattern_filter_gray_2x2(alloc_type& alloc) :
+ base_type(alloc),
+ m_wrap_mode_x(1),
+ m_wrap_mode_y(1)
+ {}
+
+ //--------------------------------------------------------------------
+ span_pattern_filter_gray_2x2(alloc_type& alloc,
+ const rendering_buffer& src,
+ interpolator_type& inter,
+ const image_filter_lut& filter) :
+ base_type(alloc, src, color_type(0,0), inter, &filter),
+ m_wrap_mode_x(src.width()),
+ m_wrap_mode_y(src.height())
+ {}
+
+ //-------------------------------------------------------------------
+ void source_image(const rendering_buffer& src)
+ {
+ base_type::source_image(src);
+ m_wrap_mode_x = WrapModeX(src.width());
+ m_wrap_mode_y = WrapModeX(src.height());
+ }
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ base_type::interpolator().begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+ calc_type fg;
+ color_type* span = base_type::allocator().span();
+ const int16* weight_array = base_type::filter().weight_array() +
+ ((base_type::filter().diameter()/2 - 1) <<
+ image_subpixel_shift);
+ do
+ {
+ int x_hr;
+ int y_hr;
+
+ base_type::interpolator().coordinates(&x_hr, &y_hr);
+
+ x_hr -= base_type::filter_dx_int();
+ y_hr -= base_type::filter_dy_int();
+
+ int x_lr = x_hr >> image_subpixel_shift;
+ int y_lr = y_hr >> image_subpixel_shift;
+
+ unsigned x1 = m_wrap_mode_x(x_lr);
+ unsigned x2 = ++m_wrap_mode_x;
+
+ unsigned y1 = m_wrap_mode_y(y_lr);
+ unsigned y2 = ++m_wrap_mode_y;
+ const value_type* ptr1 = (value_type*)base_type::source_image().row(y1);
+ const value_type* ptr2 = (value_type*)base_type::source_image().row(y2);
+
+ fg = image_filter_size / 2;
+
+ x_hr &= image_subpixel_mask;
+ y_hr &= image_subpixel_mask;
+
+ fg += ptr1[x1] * ((weight_array[x_hr + image_subpixel_size] *
+ weight_array[y_hr + image_subpixel_size] +
+ image_filter_size / 2) >>
+ image_filter_shift);
+ fg += ptr1[x2] * ((weight_array[x_hr] *
+ weight_array[y_hr + image_subpixel_size] +
+ image_filter_size / 2) >>
+ image_filter_shift);
+ fg += ptr2[x1] * ((weight_array[x_hr + image_subpixel_size] *
+ weight_array[y_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift);
+ fg += ptr2[x2] * ((weight_array[x_hr] *
+ weight_array[y_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift);
+
+ fg >>= image_filter_shift;
+ if(fg > base_mask) fg = base_mask;
+
+ span->v = (value_type)fg;
+ span->a = base_mask;
+ ++span;
+ ++base_type::interpolator();
+
+ } while(--len);
+
+ return base_type::allocator().span();
+ }
+ private:
+ WrapModeX m_wrap_mode_x;
+ WrapModeY m_wrap_mode_y;
+ };
+
+
+
+
+
+
+
+
+
+
+
+
+ //==============================================span_pattern_filter_gray
+ template<class ColorT,
+ class Interpolator,
+ class WrapModeX,
+ class WrapModeY,
+ class Allocator = span_allocator<ColorT> >
+ class span_pattern_filter_gray :
+ public span_image_filter<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_filter<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ span_pattern_filter_gray(alloc_type& alloc) :
+ base_type(alloc)
+ {}
+
+ //--------------------------------------------------------------------
+ span_pattern_filter_gray(alloc_type& alloc,
+ const rendering_buffer& src,
+ interpolator_type& inter,
+ const image_filter_lut& filter) :
+ base_type(alloc, src, color_type(0,0), inter, &filter),
+ m_wrap_mode_x(src.width()),
+ m_wrap_mode_y(src.height())
+ {}
+
+ //--------------------------------------------------------------------
+ void source_image(const rendering_buffer& src)
+ {
+ base_type::source_image(src);
+ m_wrap_mode_x = WrapModeX(src.width());
+ m_wrap_mode_y = WrapModeX(src.height());
+ }
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ base_type::interpolator().begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+ int fg;
+
+ unsigned diameter = base_type::filter().diameter();
+ int start = base_type::filter().start();
+ const int16* weight_array = base_type::filter().weight_array();
+
+ color_type* span = base_type::allocator().span();
+
+ int x_count;
+ int weight_y;
+
+ do
+ {
+ base_type::interpolator().coordinates(&x, &y);
+
+ x -= base_type::filter_dx_int();
+ y -= base_type::filter_dy_int();
+
+ int x_hr = x;
+ int y_hr = y;
+
+ int x_fract = x_hr & image_subpixel_mask;
+ unsigned y_count = diameter;
+
+ int y_lr = m_wrap_mode_y((y >> image_subpixel_shift) + start);
+ int x_int = (x >> image_subpixel_shift) + start;
+ int x_lr;
+
+ y_hr = image_subpixel_mask - (y_hr & image_subpixel_mask);
+ fg = image_filter_size / 2;
+
+ do
+ {
+ x_count = diameter;
+ weight_y = weight_array[y_hr];
+ x_hr = image_subpixel_mask - x_fract;
+ x_lr = m_wrap_mode_x(x_int);
+ const value_type* row_ptr = (value_type*)base_type::source_image().row(y_lr);
+ do
+ {
+ fg += row_ptr[x_lr] * ((weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift);
+ x_hr += image_subpixel_size;
+ x_lr = ++m_wrap_mode_x;
+ } while(--x_count);
+
+ y_hr += image_subpixel_size;
+ y_lr = ++m_wrap_mode_y;
+ } while(--y_count);
+
+ fg >>= image_filter_shift;
+
+ if(fg < 0) fg = 0;
+ if(fg > base_mask) fg = base_mask;
+
+ span->v = fg;
+ span->a = base_mask;
+ ++span;
+ ++base_type::interpolator();
+
+ } while(--len);
+
+ return base_type::allocator().span();
+ }
+
+ private:
+ WrapModeX m_wrap_mode_x;
+ WrapModeY m_wrap_mode_y;
+ };
+
+
+}
+
+
+#endif
+
+
+
diff --git a/agg/inc/agg_span_pattern_filter_rgb.h b/agg/inc/agg_span_pattern_filter_rgb.h
new file mode 100755
index 000000000000..d4dc1c1797eb
--- /dev/null
+++ b/agg/inc/agg_span_pattern_filter_rgb.h
@@ -0,0 +1,568 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Adaptation for high precision colors has been sponsored by
+// Liberty Technology Systems, Inc., visit http://lib-sys.com
+//
+// Liberty Technology Systems, Inc. is the provider of
+// PostScript and PDF technology for software developers.
+//
+//----------------------------------------------------------------------------
+//
+// classes span_pattern_filter_rgb*
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_SPAN_PATTERN_FILTER_RGB_INCLUDED
+#define AGG_SPAN_PATTERN_FILTER_RGB_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_color_rgba.h"
+#include "agg_span_pattern.h"
+#include "agg_span_image_filter.h"
+
+
+namespace agg
+{
+
+ //===========================================span_pattern_filter_rgb
+ template<class ColorT,
+ class Order,
+ class Interpolator,
+ class WrapModeX,
+ class WrapModeY,
+ class Allocator = span_allocator<ColorT> >
+ class span_pattern_filter_rgb_nn :
+ public span_image_filter<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_filter<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ span_pattern_filter_rgb_nn(alloc_type& alloc) :
+ base_type(alloc),
+ m_wrap_mode_x(1),
+ m_wrap_mode_y(1)
+ {}
+
+ //--------------------------------------------------------------------
+ span_pattern_filter_rgb_nn(alloc_type& alloc,
+ const rendering_buffer& src,
+ interpolator_type& intr) :
+ base_type(alloc, src, color_type(0,0,0,0), intr, 0),
+ m_wrap_mode_x(src.width()),
+ m_wrap_mode_y(src.height())
+ {}
+
+ //--------------------------------------------------------------------
+ void source_image(const rendering_buffer& src)
+ {
+ base_type::source_image(src);
+ m_wrap_mode_x = WrapModeX(src.width());
+ m_wrap_mode_y = WrapModeX(src.height());
+ }
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ color_type* span = base_type::allocator().span();
+ interpolator_type& intr = base_type::interpolator();
+ intr.begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+ const value_type *fg_ptr;
+ do
+ {
+ intr.coordinates(&x, &y);
+
+ x = m_wrap_mode_x(x >> image_subpixel_shift);
+ y = m_wrap_mode_y(y >> image_subpixel_shift);
+
+ fg_ptr = (const value_type*)base_type::source_image().row(y) + x * 3;
+ span->r = fg_ptr[order_type::R];
+ span->g = fg_ptr[order_type::G];
+ span->b = fg_ptr[order_type::B];
+ span->a = base_mask;
+ ++span;
+ ++intr;
+
+ } while(--len);
+ return base_type::allocator().span();
+ }
+
+ private:
+ WrapModeX m_wrap_mode_x;
+ WrapModeY m_wrap_mode_y;
+ };
+
+
+
+
+
+
+
+
+
+
+ //=====================================span_pattern_filter_rgb_bilinear
+ template<class ColorT,
+ class Order,
+ class Interpolator,
+ class WrapModeX,
+ class WrapModeY,
+ class Allocator = span_allocator<ColorT> >
+ class span_pattern_filter_rgb_bilinear :
+ public span_image_filter<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_filter<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ span_pattern_filter_rgb_bilinear(alloc_type& alloc) :
+ base_type(alloc),
+ m_wrap_mode_x(1),
+ m_wrap_mode_y(1)
+ {}
+
+ //--------------------------------------------------------------------
+ span_pattern_filter_rgb_bilinear(alloc_type& alloc,
+ const rendering_buffer& src,
+ interpolator_type& intr) :
+ base_type(alloc, src, color_type(0,0,0,0), intr, 0),
+ m_wrap_mode_x(src.width()),
+ m_wrap_mode_y(src.height())
+ {}
+
+ //-------------------------------------------------------------------
+ void source_image(const rendering_buffer& src)
+ {
+ base_type::source_image(src);
+ m_wrap_mode_x = WrapModeX(src.width());
+ m_wrap_mode_y = WrapModeX(src.height());
+ }
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ color_type* span = base_type::allocator().span();
+ interpolator_type& intr = base_type::interpolator();
+ intr.begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+ calc_type fg[3];
+ const value_type *fg_ptr;
+
+ do
+ {
+ int x_hr;
+ int y_hr;
+
+ intr.coordinates(&x_hr, &y_hr);
+
+ x_hr -= base_type::filter_dx_int();
+ y_hr -= base_type::filter_dy_int();
+
+ int x_lr = x_hr >> image_subpixel_shift;
+ int y_lr = y_hr >> image_subpixel_shift;
+
+ unsigned x1 = m_wrap_mode_x(x_lr);
+ unsigned x2 = ++m_wrap_mode_x;
+ x1 *= 3;
+ x2 *= 3;
+
+ unsigned y1 = m_wrap_mode_y(y_lr);
+ unsigned y2 = ++m_wrap_mode_y;
+ const value_type* ptr1 = (const value_type*)base_type::source_image().row(y1);
+ const value_type* ptr2 = (const value_type*)base_type::source_image().row(y2);
+
+ fg[0] =
+ fg[1] =
+ fg[2] = image_subpixel_size * image_subpixel_size / 2;
+
+ x_hr &= image_subpixel_mask;
+ y_hr &= image_subpixel_mask;
+
+ int weight;
+ fg_ptr = ptr1 + x1;
+ weight = (image_subpixel_size - x_hr) *
+ (image_subpixel_size - y_hr);
+ fg[0] += weight * fg_ptr[0];
+ fg[1] += weight * fg_ptr[1];
+ fg[2] += weight * fg_ptr[2];
+
+ fg_ptr = ptr1 + x2;
+ weight = x_hr * (image_subpixel_size - y_hr);
+ fg[0] += weight * fg_ptr[0];
+ fg[1] += weight * fg_ptr[1];
+ fg[2] += weight * fg_ptr[2];
+
+ fg_ptr = ptr2 + x1;
+ weight = (image_subpixel_size - x_hr) * y_hr;
+ fg[0] += weight * fg_ptr[0];
+ fg[1] += weight * fg_ptr[1];
+ fg[2] += weight * fg_ptr[2];
+
+ fg_ptr = ptr2 + x2;
+ weight = x_hr * y_hr;
+ fg[0] += weight * fg_ptr[0];
+ fg[1] += weight * fg_ptr[1];
+ fg[2] += weight * fg_ptr[2];
+
+ span->r = (value_type)(fg[order_type::R] >> image_subpixel_shift * 2);
+ span->g = (value_type)(fg[order_type::G] >> image_subpixel_shift * 2);
+ span->b = (value_type)(fg[order_type::B] >> image_subpixel_shift * 2);
+ span->a = base_mask;
+ ++span;
+ ++intr;
+ } while(--len);
+
+ return base_type::allocator().span();
+ }
+
+ private:
+ WrapModeX m_wrap_mode_x;
+ WrapModeY m_wrap_mode_y;
+ };
+
+
+
+
+
+
+
+ //=====================================span_pattern_filter_rgb_2x2
+ template<class ColorT,
+ class Order,
+ class Interpolator,
+ class WrapModeX,
+ class WrapModeY,
+ class Allocator = span_allocator<ColorT> >
+ class span_pattern_filter_rgb_2x2 :
+ public span_image_filter<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_filter<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ span_pattern_filter_rgb_2x2(alloc_type& alloc) :
+ base_type(alloc),
+ m_wrap_mode_x(1),
+ m_wrap_mode_y(1)
+ {}
+
+ //--------------------------------------------------------------------
+ span_pattern_filter_rgb_2x2(alloc_type& alloc,
+ const rendering_buffer& src,
+ interpolator_type& intr,
+ const image_filter_lut& filter) :
+ base_type(alloc, src, color_type(0,0,0,0), intr, &filter),
+ m_wrap_mode_x(src.width()),
+ m_wrap_mode_y(src.height())
+ {}
+
+ //-------------------------------------------------------------------
+ void source_image(const rendering_buffer& src)
+ {
+ base_type::source_image(src);
+ m_wrap_mode_x = WrapModeX(src.width());
+ m_wrap_mode_y = WrapModeX(src.height());
+ }
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ color_type* span = base_type::allocator().span();
+ interpolator_type& intr = base_type::interpolator();
+ intr.begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+ calc_type fg[3];
+ const value_type *fg_ptr;
+ const int16* weight_array = base_type::filter().weight_array() +
+ ((base_type::filter().diameter()/2 - 1) <<
+ image_subpixel_shift);
+ do
+ {
+ int x_hr;
+ int y_hr;
+
+ intr.coordinates(&x_hr, &y_hr);
+
+ x_hr -= base_type::filter_dx_int();
+ y_hr -= base_type::filter_dy_int();
+
+ int x_lr = x_hr >> image_subpixel_shift;
+ int y_lr = y_hr >> image_subpixel_shift;
+
+ unsigned x1 = m_wrap_mode_x(x_lr);
+ unsigned x2 = ++m_wrap_mode_x;
+ x1 *= 3;
+ x2 *= 3;
+
+ unsigned y1 = m_wrap_mode_y(y_lr);
+ unsigned y2 = ++m_wrap_mode_y;
+ const value_type* ptr1 = (const value_type*)base_type::source_image().row(y1);
+ const value_type* ptr2 = (const value_type*)base_type::source_image().row(y2);
+
+ fg[0] = fg[1] = fg[2] = image_filter_size / 2;
+
+ x_hr &= image_subpixel_mask;
+ y_hr &= image_subpixel_mask;
+
+ int weight;
+ fg_ptr = ptr1 + x1;
+ weight = (weight_array[x_hr + image_subpixel_size] *
+ weight_array[y_hr + image_subpixel_size] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ fg[0] += weight * fg_ptr[0];
+ fg[1] += weight * fg_ptr[1];
+ fg[2] += weight * fg_ptr[2];
+
+ fg_ptr = ptr1 + x2;
+ weight = (weight_array[x_hr] *
+ weight_array[y_hr + image_subpixel_size] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ fg[0] += weight * fg_ptr[0];
+ fg[1] += weight * fg_ptr[1];
+ fg[2] += weight * fg_ptr[2];
+
+ fg_ptr = ptr2 + x1;
+ weight = (weight_array[x_hr + image_subpixel_size] *
+ weight_array[y_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ fg[0] += weight * fg_ptr[0];
+ fg[1] += weight * fg_ptr[1];
+ fg[2] += weight * fg_ptr[2];
+
+ fg_ptr = ptr2 + x2;
+ weight = (weight_array[x_hr] *
+ weight_array[y_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ fg[0] += weight * fg_ptr[0];
+ fg[1] += weight * fg_ptr[1];
+ fg[2] += weight * fg_ptr[2];
+
+ fg[0] >>= image_filter_shift;
+ fg[1] >>= image_filter_shift;
+ fg[2] >>= image_filter_shift;
+
+ if(fg[0] > base_mask) fg[0] = base_mask;
+ if(fg[1] > base_mask) fg[1] = base_mask;
+ if(fg[2] > base_mask) fg[2] = base_mask;
+
+ span->r = (value_type)fg[order_type::R];
+ span->g = (value_type)fg[order_type::G];
+ span->b = (value_type)fg[order_type::B];
+ span->a = base_mask;
+ ++span;
+ ++intr;
+ } while(--len);
+
+ return base_type::allocator().span();
+ }
+
+
+ private:
+ WrapModeX m_wrap_mode_x;
+ WrapModeY m_wrap_mode_y;
+ };
+
+
+
+
+
+
+
+
+
+
+ //==============================================span_pattern_filter_rgb
+ template<class ColorT,
+ class Order,
+ class Interpolator,
+ class WrapModeX,
+ class WrapModeY,
+ class Allocator = span_allocator<ColorT> >
+ class span_pattern_filter_rgb :
+ public span_image_filter<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_filter<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ span_pattern_filter_rgb(alloc_type& alloc) :
+ base_type(alloc)
+ {}
+
+ //--------------------------------------------------------------------
+ span_pattern_filter_rgb(alloc_type& alloc,
+ const rendering_buffer& src,
+ interpolator_type& intr,
+ const image_filter_lut& filter) :
+ base_type(alloc, src, color_type(0,0,0,0), intr, &filter),
+ m_wrap_mode_x(src.width()),
+ m_wrap_mode_y(src.height())
+ {}
+
+ //--------------------------------------------------------------------
+ void source_image(const rendering_buffer& src)
+ {
+ base_type::source_image(src);
+ m_wrap_mode_x = WrapModeX(src.width());
+ m_wrap_mode_y = WrapModeX(src.height());
+ }
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ color_type* span = base_type::allocator().span();
+ interpolator_type& intr = base_type::interpolator();
+ intr.begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+ int fg[3];
+
+ unsigned diameter = base_type::filter().diameter();
+ int start = base_type::filter().start();
+ const int16* weight_array = base_type::filter().weight_array();
+
+ int x_count;
+ int weight_y;
+
+ do
+ {
+ intr.coordinates(&x, &y);
+
+ x -= base_type::filter_dx_int();
+ y -= base_type::filter_dy_int();
+
+ int x_hr = x;
+ int y_hr = y;
+
+ int x_fract = x_hr & image_subpixel_mask;
+ unsigned y_count = diameter;
+
+ int y_lr = m_wrap_mode_y((y >> image_subpixel_shift) + start);
+ int x_int = (x >> image_subpixel_shift) + start;
+ int x_lr;
+
+ y_hr = image_subpixel_mask - (y_hr & image_subpixel_mask);
+ fg[0] = fg[1] = fg[2] = image_filter_size / 2;
+
+ do
+ {
+ x_count = diameter;
+ weight_y = weight_array[y_hr];
+ x_hr = image_subpixel_mask - x_fract;
+ x_lr = m_wrap_mode_x(x_int);
+ const value_type* row_ptr = (const value_type*)base_type::source_image().row(y_lr);
+ do
+ {
+ const value_type* fg_ptr = row_ptr + x_lr * 3;
+ int weight = (weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+
+ fg[0] += fg_ptr[0] * weight;
+ fg[1] += fg_ptr[1] * weight;
+ fg[2] += fg_ptr[2] * weight;
+
+ x_hr += image_subpixel_size;
+ x_lr = ++m_wrap_mode_x;
+ } while(--x_count);
+
+ y_hr += image_subpixel_size;
+ y_lr = ++m_wrap_mode_y;
+ } while(--y_count);
+
+ fg[0] >>= image_filter_shift;
+ fg[1] >>= image_filter_shift;
+ fg[2] >>= image_filter_shift;
+
+ if(fg[0] < 0) fg[0] = 0;
+ if(fg[1] < 0) fg[1] = 0;
+ if(fg[2] < 0) fg[2] = 0;
+
+ if(fg[0] > base_mask) fg[0] = base_mask;
+ if(fg[1] > base_mask) fg[1] = base_mask;
+ if(fg[2] > base_mask) fg[2] = base_mask;
+
+ span->r = (value_type)fg[order_type::R];
+ span->g = (value_type)fg[order_type::G];
+ span->b = (value_type)fg[order_type::B];
+ span->a = base_mask;
+ ++span;
+ ++intr;
+ } while(--len);
+
+ return base_type::allocator().span();
+ }
+
+ private:
+ WrapModeX m_wrap_mode_x;
+ WrapModeY m_wrap_mode_y;
+ };
+
+
+}
+
+
+#endif
+
+
+
diff --git a/agg/inc/agg_span_pattern_filter_rgba.h b/agg/inc/agg_span_pattern_filter_rgba.h
new file mode 100755
index 000000000000..8460880fdb79
--- /dev/null
+++ b/agg/inc/agg_span_pattern_filter_rgba.h
@@ -0,0 +1,584 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Adaptation for high precision colors has been sponsored by
+// Liberty Technology Systems, Inc., visit http://lib-sys.com
+//
+// Liberty Technology Systems, Inc. is the provider of
+// PostScript and PDF technology for software developers.
+//
+//----------------------------------------------------------------------------
+//
+// classes span_pattern_filter_rgba*
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_SPAN_PATTERN_FILTER_RGBA_INCLUDED
+#define AGG_SPAN_PATTERN_FILTER_RGBA_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_color_rgba.h"
+#include "agg_span_pattern.h"
+#include "agg_span_image_filter.h"
+
+
+namespace agg
+{
+
+ //===========================================span_pattern_filter_rgba
+ template<class ColorT,
+ class Order,
+ class Interpolator,
+ class WrapModeX,
+ class WrapModeY,
+ class Allocator = span_allocator<ColorT> >
+ class span_pattern_filter_rgba_nn :
+ public span_image_filter<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_filter<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ span_pattern_filter_rgba_nn(alloc_type& alloc) :
+ base_type(alloc),
+ m_wrap_mode_x(1),
+ m_wrap_mode_y(1)
+ {}
+
+ //--------------------------------------------------------------------
+ span_pattern_filter_rgba_nn(alloc_type& alloc,
+ const rendering_buffer& src,
+ interpolator_type& inter) :
+ base_type(alloc, src, color_type(0,0,0,0), inter, 0),
+ m_wrap_mode_x(src.width()),
+ m_wrap_mode_y(src.height())
+ {}
+
+ //--------------------------------------------------------------------
+ void source_image(const rendering_buffer& src)
+ {
+ base_type::source_image(src);
+ m_wrap_mode_x = WrapModeX(src.width());
+ m_wrap_mode_y = WrapModeX(src.height());
+ }
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ base_type::interpolator().begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+ const value_type *fg_ptr;
+ color_type* span = base_type::allocator().span();
+ do
+ {
+ base_type::interpolator().coordinates(&x, &y);
+
+ x = m_wrap_mode_x(x >> image_subpixel_shift);
+ y = m_wrap_mode_y(y >> image_subpixel_shift);
+
+ fg_ptr = (value_type*)base_type::source_image().row(y) + (x << 2);
+ span->r = fg_ptr[order_type::R];
+ span->g = fg_ptr[order_type::G];
+ span->b = fg_ptr[order_type::B];
+ span->a = fg_ptr[order_type::A];
+ ++span;
+ ++base_type::interpolator();
+
+ } while(--len);
+
+ return base_type::allocator().span();
+ }
+
+ private:
+ WrapModeX m_wrap_mode_x;
+ WrapModeY m_wrap_mode_y;
+ };
+
+
+
+
+
+
+
+
+
+
+ //=====================================span_pattern_filter_rgba_bilinear
+ template<class ColorT,
+ class Order,
+ class Interpolator,
+ class WrapModeX,
+ class WrapModeY,
+ class Allocator = span_allocator<ColorT> >
+ class span_pattern_filter_rgba_bilinear :
+ public span_image_filter<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_filter<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ span_pattern_filter_rgba_bilinear(alloc_type& alloc) :
+ base_type(alloc),
+ m_wrap_mode_x(1),
+ m_wrap_mode_y(1)
+ {}
+
+ //--------------------------------------------------------------------
+ span_pattern_filter_rgba_bilinear(alloc_type& alloc,
+ const rendering_buffer& src,
+ interpolator_type& inter) :
+ base_type(alloc, src, color_type(0,0,0,0), inter, 0),
+ m_wrap_mode_x(src.width()),
+ m_wrap_mode_y(src.height())
+ {}
+
+ //-------------------------------------------------------------------
+ void source_image(const rendering_buffer& src)
+ {
+ base_type::source_image(src);
+ m_wrap_mode_x = WrapModeX(src.width());
+ m_wrap_mode_y = WrapModeX(src.height());
+ }
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ base_type::interpolator().begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+ calc_type fg[4];
+ const value_type *fg_ptr;
+ color_type* span = base_type::allocator().span();
+
+ do
+ {
+ int x_hr;
+ int y_hr;
+
+ base_type::interpolator().coordinates(&x_hr, &y_hr);
+
+ x_hr -= base_type::filter_dx_int();
+ y_hr -= base_type::filter_dy_int();
+
+ int x_lr = x_hr >> image_subpixel_shift;
+ int y_lr = y_hr >> image_subpixel_shift;
+
+ unsigned x1 = m_wrap_mode_x(x_lr);
+ unsigned x2 = ++m_wrap_mode_x;
+ x1 <<= 2;
+ x2 <<= 2;
+
+ unsigned y1 = m_wrap_mode_y(y_lr);
+ unsigned y2 = ++m_wrap_mode_y;
+ const value_type* ptr1 = (value_type*)base_type::source_image().row(y1);
+ const value_type* ptr2 = (value_type*)base_type::source_image().row(y2);
+
+ fg[0] =
+ fg[1] =
+ fg[2] =
+ fg[3] = image_subpixel_size * image_subpixel_size / 2;
+
+ x_hr &= image_subpixel_mask;
+ y_hr &= image_subpixel_mask;
+
+ int weight;
+ fg_ptr = ptr1 + x1;
+ weight = (image_subpixel_size - x_hr) *
+ (image_subpixel_size - y_hr);
+ fg[0] += weight * fg_ptr[0];
+ fg[1] += weight * fg_ptr[1];
+ fg[2] += weight * fg_ptr[2];
+ fg[3] += weight * fg_ptr[3];
+
+ fg_ptr = ptr1 + x2;
+ weight = x_hr * (image_subpixel_size - y_hr);
+ fg[0] += weight * fg_ptr[0];
+ fg[1] += weight * fg_ptr[1];
+ fg[2] += weight * fg_ptr[2];
+ fg[3] += weight * fg_ptr[3];
+
+ fg_ptr = ptr2 + x1;
+ weight = (image_subpixel_size - x_hr) * y_hr;
+ fg[0] += weight * fg_ptr[0];
+ fg[1] += weight * fg_ptr[1];
+ fg[2] += weight * fg_ptr[2];
+ fg[3] += weight * fg_ptr[3];
+
+ fg_ptr = ptr2 + x2;
+ weight = x_hr * y_hr;
+ fg[0] += weight * fg_ptr[0];
+ fg[1] += weight * fg_ptr[1];
+ fg[2] += weight * fg_ptr[2];
+ fg[3] += weight * fg_ptr[3];
+
+ span->r = (value_type)(fg[order_type::R] >> image_subpixel_shift * 2);
+ span->g = (value_type)(fg[order_type::G] >> image_subpixel_shift * 2);
+ span->b = (value_type)(fg[order_type::B] >> image_subpixel_shift * 2);
+ span->a = (value_type)(fg[order_type::A] >> image_subpixel_shift * 2);
+ ++span;
+ ++base_type::interpolator();
+
+ } while(--len);
+
+ return base_type::allocator().span();
+ }
+ private:
+ WrapModeX m_wrap_mode_x;
+ WrapModeY m_wrap_mode_y;
+ };
+
+
+
+
+
+
+
+
+ //=====================================span_pattern_filter_rgba_2x2
+ template<class ColorT,
+ class Order,
+ class Interpolator,
+ class WrapModeX,
+ class WrapModeY,
+ class Allocator = span_allocator<ColorT> >
+ class span_pattern_filter_rgba_2x2 :
+ public span_image_filter<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_filter<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ span_pattern_filter_rgba_2x2(alloc_type& alloc) :
+ base_type(alloc),
+ m_wrap_mode_x(1),
+ m_wrap_mode_y(1)
+ {}
+
+ //--------------------------------------------------------------------
+ span_pattern_filter_rgba_2x2(alloc_type& alloc,
+ const rendering_buffer& src,
+ interpolator_type& inter,
+ const image_filter_lut& filter) :
+ base_type(alloc, src, color_type(0,0,0,0), inter, &filter),
+ m_wrap_mode_x(src.width()),
+ m_wrap_mode_y(src.height())
+ {}
+
+ //-------------------------------------------------------------------
+ void source_image(const rendering_buffer& src)
+ {
+ base_type::source_image(src);
+ m_wrap_mode_x = WrapModeX(src.width());
+ m_wrap_mode_y = WrapModeX(src.height());
+ }
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ base_type::interpolator().begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+ calc_type fg[4];
+ const value_type *fg_ptr;
+ color_type* span = base_type::allocator().span();
+ const int16* weight_array = base_type::filter().weight_array() +
+ ((base_type::filter().diameter()/2 - 1) <<
+ image_subpixel_shift);
+ do
+ {
+ int x_hr;
+ int y_hr;
+
+ base_type::interpolator().coordinates(&x_hr, &y_hr);
+
+ x_hr -= base_type::filter_dx_int();
+ y_hr -= base_type::filter_dy_int();
+
+ int x_lr = x_hr >> image_subpixel_shift;
+ int y_lr = y_hr >> image_subpixel_shift;
+
+ unsigned x1 = m_wrap_mode_x(x_lr);
+ unsigned x2 = ++m_wrap_mode_x;
+ x1 <<= 2;
+ x2 <<= 2;
+
+ unsigned y1 = m_wrap_mode_y(y_lr);
+ unsigned y2 = ++m_wrap_mode_y;
+ const value_type* ptr1 = (value_type*)base_type::source_image().row(y1);
+ const value_type* ptr2 = (value_type*)base_type::source_image().row(y2);
+
+ fg[0] = fg[1] = fg[2] = fg[3] = image_filter_size / 2;
+
+ x_hr &= image_subpixel_mask;
+ y_hr &= image_subpixel_mask;
+
+ int weight;
+ fg_ptr = ptr1 + x1;
+ weight = (weight_array[x_hr + image_subpixel_size] *
+ weight_array[y_hr + image_subpixel_size] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ fg[0] += weight * fg_ptr[0];
+ fg[1] += weight * fg_ptr[1];
+ fg[2] += weight * fg_ptr[2];
+ fg[3] += weight * fg_ptr[3];
+
+ fg_ptr = ptr1 + x2;
+ weight = (weight_array[x_hr] *
+ weight_array[y_hr + image_subpixel_size] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ fg[0] += weight * fg_ptr[0];
+ fg[1] += weight * fg_ptr[1];
+ fg[2] += weight * fg_ptr[2];
+ fg[3] += weight * fg_ptr[3];
+
+ fg_ptr = ptr2 + x1;
+ weight = (weight_array[x_hr + image_subpixel_size] *
+ weight_array[y_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ fg[0] += weight * fg_ptr[0];
+ fg[1] += weight * fg_ptr[1];
+ fg[2] += weight * fg_ptr[2];
+ fg[3] += weight * fg_ptr[3];
+
+ fg_ptr = ptr2 + x2;
+ weight = (weight_array[x_hr] *
+ weight_array[y_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+ fg[0] += weight * fg_ptr[0];
+ fg[1] += weight * fg_ptr[1];
+ fg[2] += weight * fg_ptr[2];
+ fg[3] += weight * fg_ptr[3];
+
+ fg[0] >>= image_filter_shift;
+ fg[1] >>= image_filter_shift;
+ fg[2] >>= image_filter_shift;
+ fg[3] >>= image_filter_shift;
+
+ if(fg[order_type::A] > base_mask) fg[order_type::A] = base_mask;
+ if(fg[order_type::R] > fg[order_type::A]) fg[order_type::R] = fg[order_type::A];
+ if(fg[order_type::G] > fg[order_type::A]) fg[order_type::G] = fg[order_type::A];
+ if(fg[order_type::B] > fg[order_type::A]) fg[order_type::B] = fg[order_type::A];
+
+ span->r = (value_type)fg[order_type::R];
+ span->g = (value_type)fg[order_type::G];
+ span->b = (value_type)fg[order_type::B];
+ span->a = (value_type)fg[order_type::A];
+ ++span;
+ ++base_type::interpolator();
+
+ } while(--len);
+
+ return base_type::allocator().span();
+ }
+ private:
+ WrapModeX m_wrap_mode_x;
+ WrapModeY m_wrap_mode_y;
+ };
+
+
+
+
+
+
+
+
+
+
+
+
+ //==============================================span_pattern_filter_rgba
+ template<class ColorT,
+ class Order,
+ class Interpolator,
+ class WrapModeX,
+ class WrapModeY,
+ class Allocator = span_allocator<ColorT> >
+ class span_pattern_filter_rgba :
+ public span_image_filter<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_filter<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ span_pattern_filter_rgba(alloc_type& alloc) :
+ base_type(alloc)
+ {}
+
+ //--------------------------------------------------------------------
+ span_pattern_filter_rgba(alloc_type& alloc,
+ const rendering_buffer& src,
+ interpolator_type& inter,
+ const image_filter_lut& filter) :
+ base_type(alloc, src, color_type(0,0,0,0), inter, &filter),
+ m_wrap_mode_x(src.width()),
+ m_wrap_mode_y(src.height())
+ {}
+
+ //--------------------------------------------------------------------
+ void source_image(const rendering_buffer& src)
+ {
+ base_type::source_image(src);
+ m_wrap_mode_x = WrapModeX(src.width());
+ m_wrap_mode_y = WrapModeX(src.height());
+ }
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ base_type::interpolator().begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+ int fg[4];
+
+ unsigned diameter = base_type::filter().diameter();
+ int start = base_type::filter().start();
+ const int16* weight_array = base_type::filter().weight_array();
+
+ color_type* span = base_type::allocator().span();
+
+ int x_count;
+ int weight_y;
+
+ do
+ {
+ base_type::interpolator().coordinates(&x, &y);
+
+ x -= base_type::filter_dx_int();
+ y -= base_type::filter_dy_int();
+
+ int x_hr = x;
+ int y_hr = y;
+
+ int x_fract = x_hr & image_subpixel_mask;
+ unsigned y_count = diameter;
+
+ int y_lr = m_wrap_mode_y((y >> image_subpixel_shift) + start);
+ int x_int = (x >> image_subpixel_shift) + start;
+ int x_lr;
+
+ y_hr = image_subpixel_mask - (y_hr & image_subpixel_mask);
+ fg[0] = fg[1] = fg[2] = fg[3] = image_filter_size / 2;
+
+ do
+ {
+ x_count = diameter;
+ weight_y = weight_array[y_hr];
+ x_hr = image_subpixel_mask - x_fract;
+ x_lr = m_wrap_mode_x(x_int);
+ const value_type* row_ptr = (value_type*)base_type::source_image().row(y_lr);
+ do
+ {
+ const value_type* fg_ptr = row_ptr + (x_lr << 2);
+ int weight = (weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ image_filter_shift;
+
+ fg[0] += fg_ptr[0] * weight;
+ fg[1] += fg_ptr[1] * weight;
+ fg[2] += fg_ptr[2] * weight;
+ fg[3] += fg_ptr[3] * weight;
+
+ x_hr += image_subpixel_size;
+ x_lr = ++m_wrap_mode_x;
+ } while(--x_count);
+
+ y_hr += image_subpixel_size;
+ y_lr = ++m_wrap_mode_y;
+ } while(--y_count);
+
+ fg[0] >>= image_filter_shift;
+ fg[1] >>= image_filter_shift;
+ fg[2] >>= image_filter_shift;
+ fg[3] >>= image_filter_shift;
+
+ if(fg[0] < 0) fg[0] = 0;
+ if(fg[1] < 0) fg[1] = 0;
+ if(fg[2] < 0) fg[2] = 0;
+ if(fg[3] < 0) fg[3] = 0;
+
+ if(fg[order_type::A] > base_mask) fg[order_type::A] = base_mask;
+ if(fg[order_type::R] > fg[order_type::A]) fg[order_type::R] = fg[order_type::A];
+ if(fg[order_type::G] > fg[order_type::A]) fg[order_type::G] = fg[order_type::A];
+ if(fg[order_type::B] > fg[order_type::A]) fg[order_type::B] = fg[order_type::A];
+
+ span->r = fg[order_type::R];
+ span->g = fg[order_type::G];
+ span->b = fg[order_type::B];
+ span->a = fg[order_type::A];
+ ++span;
+ ++base_type::interpolator();
+
+ } while(--len);
+
+ return base_type::allocator().span();
+ }
+
+ private:
+ WrapModeX m_wrap_mode_x;
+ WrapModeY m_wrap_mode_y;
+ };
+
+
+}
+
+
+#endif
+
+
+
diff --git a/agg/inc/agg_span_pattern_resample_gray.h b/agg/inc/agg_span_pattern_resample_gray.h
new file mode 100755
index 000000000000..212209502f5f
--- /dev/null
+++ b/agg/inc/agg_span_pattern_resample_gray.h
@@ -0,0 +1,320 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_SPAN_PATTERN_RESAMPLE_GRAY_INCLUDED
+#define AGG_SPAN_PATTERN_RESAMPLE_GRAY_INCLUDED
+
+#include "agg_color_gray.h"
+#include "agg_span_image_resample.h"
+
+namespace agg
+{
+
+ //=======================================span_pattern_resample_gray_affine
+ template<class ColorT,
+ class WrapModeX,
+ class WrapModeY,
+ class Allocator = span_allocator<ColorT> >
+ class span_pattern_resample_gray_affine :
+ public span_image_resample_affine<ColorT, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Allocator alloc_type;
+ typedef span_image_resample_affine<color_type, alloc_type> base_type;
+ typedef typename base_type::interpolator_type interpolator_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::long_type long_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask,
+ downscale_shift = image_filter_shift
+ };
+
+ //--------------------------------------------------------------------
+ span_pattern_resample_gray_affine(alloc_type& alloc) :
+ base_type(alloc),
+ m_wrap_mode_x(1),
+ m_wrap_mode_y(1)
+ {}
+
+ //--------------------------------------------------------------------
+ span_pattern_resample_gray_affine(alloc_type& alloc,
+ const rendering_buffer& src,
+ interpolator_type& inter,
+ const image_filter_lut& filter) :
+ base_type(alloc, src, color_type(0,0), inter, filter),
+ m_wrap_mode_x(src.width()),
+ m_wrap_mode_y(src.height())
+ {}
+
+ //--------------------------------------------------------------------
+ void source_image(const rendering_buffer& src)
+ {
+ base_type::source_image(src);
+ m_wrap_mode_x = WrapModeX(src.width());
+ m_wrap_mode_y = WrapModeX(src.height());
+ }
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ color_type* span = base_type::allocator().span();
+ interpolator_type& intr = base_type::interpolator();
+ intr.begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+ long_type fg;
+
+ int diameter = base_type::filter().diameter();
+ int filter_size = diameter << image_subpixel_shift;
+ int radius_x = (diameter * base_type::m_rx) >> 1;
+ int radius_y = (diameter * base_type::m_ry) >> 1;
+ int maxx = base_type::source_image().width() - 1;
+ int maxy = base_type::source_image().height() - 1;
+ const int16* weight_array = base_type::filter().weight_array();
+
+ do
+ {
+ intr.coordinates(&x, &y);
+
+ x += base_type::filter_dx_int() - radius_x;
+ y += base_type::filter_dy_int() - radius_y;
+
+ fg = image_filter_size / 2;
+
+ int y_lr = m_wrap_mode_y(y >> image_subpixel_shift);
+ int y_hr = ((image_subpixel_mask - (y & image_subpixel_mask)) *
+ base_type::m_ry_inv) >>
+ image_subpixel_shift;
+ int total_weight = 0;
+ int x_lr_ini = x >> image_subpixel_shift;
+ int x_hr_ini = ((image_subpixel_mask - (x & image_subpixel_mask)) *
+ base_type::m_rx_inv) >>
+ image_subpixel_shift;
+ do
+ {
+ int weight_y = weight_array[y_hr];
+ int x_lr = m_wrap_mode_x(x_lr_ini);
+ int x_hr = x_hr_ini;
+ const value_type* row_ptr = (const value_type*)base_type::source_image().row(y_lr);
+ do
+ {
+ const value_type* fg_ptr = row_ptr + x_lr;
+ int weight = (weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ downscale_shift;
+
+ fg += *fg_ptr * weight;
+ total_weight += weight;
+ x_hr += base_type::m_rx_inv;
+ x_lr = ++m_wrap_mode_x;
+ }
+ while(x_hr < filter_size);
+
+ y_hr += base_type::m_ry_inv;
+ y_lr = ++m_wrap_mode_y;
+ } while(y_hr < filter_size);
+
+ fg /= total_weight;
+
+ if(fg < 0) fg = 0;
+ if(fg > base_mask) fg = base_mask;
+
+ span->v = (value_type)fg;
+ span->a = (value_type)base_mask;
+
+ ++span;
+ ++intr;
+ } while(--len);
+ return base_type::allocator().span();
+ }
+
+ private:
+ WrapModeX m_wrap_mode_x;
+ WrapModeY m_wrap_mode_y;
+ };
+
+
+
+
+
+
+
+ //============================================span_pattern_resample_gray
+ template<class ColorT,
+ class Interpolator,
+ class WrapModeX,
+ class WrapModeY,
+ class Allocator = span_allocator<ColorT> >
+ class span_pattern_resample_gray :
+ public span_image_resample<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_resample<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::long_type long_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask,
+ downscale_shift = image_filter_shift
+ };
+
+ //--------------------------------------------------------------------
+ span_pattern_resample_gray(alloc_type& alloc) :
+ base_type(alloc),
+ m_wrap_mode_x(1),
+ m_wrap_mode_y(1)
+ {}
+
+ //--------------------------------------------------------------------
+ span_pattern_resample_gray(alloc_type& alloc,
+ const rendering_buffer& src,
+ interpolator_type& inter,
+ const image_filter_lut& filter) :
+ base_type(alloc, src, color_type(0,0), inter, filter),
+ m_wrap_mode_x(src.width()),
+ m_wrap_mode_y(src.height())
+ {}
+
+ //--------------------------------------------------------------------
+ void source_image(const rendering_buffer& src)
+ {
+ base_type::source_image(src);
+ m_wrap_mode_x = WrapModeX(src.width());
+ m_wrap_mode_y = WrapModeX(src.height());
+ }
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ color_type* span = base_type::allocator().span();
+ interpolator_type& intr = base_type::interpolator();
+ intr.begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+ long_type fg;
+
+ int diameter = base_type::filter().diameter();
+ int filter_size = diameter << image_subpixel_shift;
+ const int16* weight_array = base_type::filter().weight_array();
+
+ do
+ {
+ int rx;
+ int ry;
+ int rx_inv = image_subpixel_size;
+ int ry_inv = image_subpixel_size;
+ intr.coordinates(&x, &y);
+ intr.local_scale(&rx, &ry);
+
+ rx = (rx * base_type::m_blur_x) >> image_subpixel_shift;
+ ry = (ry * base_type::m_blur_y) >> image_subpixel_shift;
+
+ if(rx < image_subpixel_size)
+ {
+ rx = image_subpixel_size;
+ }
+ else
+ {
+ if(rx > image_subpixel_size * base_type::m_scale_limit)
+ {
+ rx = image_subpixel_size * base_type::m_scale_limit;
+ }
+ rx_inv = image_subpixel_size * image_subpixel_size / rx;
+ }
+
+ if(ry < image_subpixel_size)
+ {
+ ry = image_subpixel_size;
+ }
+ else
+ {
+ if(ry > image_subpixel_size * base_type::m_scale_limit)
+ {
+ ry = image_subpixel_size * base_type::m_scale_limit;
+ }
+ ry_inv = image_subpixel_size * image_subpixel_size / ry;
+ }
+
+ int radius_x = (diameter * rx) >> 1;
+ int radius_y = (diameter * ry) >> 1;
+ int maxx = base_type::source_image().width() - 1;
+ int maxy = base_type::source_image().height() - 1;
+
+ x += base_type::filter_dx_int() - radius_x;
+ y += base_type::filter_dy_int() - radius_y;
+
+ fg = image_filter_size / 2;
+
+ int y_lr = m_wrap_mode_y(y >> image_subpixel_shift);
+ int y_hr = ((image_subpixel_mask - (y & image_subpixel_mask)) *
+ ry_inv) >>
+ image_subpixel_shift;
+ int total_weight = 0;
+ int x_lr_ini = x >> image_subpixel_shift;
+ int x_hr_ini = ((image_subpixel_mask - (x & image_subpixel_mask)) *
+ rx_inv) >>
+ image_subpixel_shift;
+
+ do
+ {
+ int weight_y = weight_array[y_hr];
+ int x_lr = m_wrap_mode_x(x_lr_ini);
+ int x_hr = x_hr_ini;
+ const value_type* row_ptr = (const value_type*)base_type::source_image().row(y_lr);
+ do
+ {
+ const value_type* fg_ptr = row_ptr + x_lr;
+ int weight = (weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ downscale_shift;
+ fg += *fg_ptr * weight;
+ total_weight += weight;
+ x_hr += rx_inv;
+ x_lr = ++m_wrap_mode_x;
+ }
+ while(x_hr < filter_size);
+ y_hr += ry_inv;
+ y_lr = ++m_wrap_mode_y;
+ }
+ while(y_hr < filter_size);
+
+ fg /= total_weight;
+
+ if(fg < 0) fg = 0;
+ if(fg > base_mask) fg = base_mask;
+
+ span->v = (value_type)fg;
+ span->a = (value_type)base_mask;
+
+ ++span;
+ ++intr;
+ } while(--len);
+ return base_type::allocator().span();
+ }
+
+ private:
+ WrapModeX m_wrap_mode_x;
+ WrapModeY m_wrap_mode_y;
+ };
+
+}
+
+
+#endif
diff --git a/agg/inc/agg_span_pattern_resample_rgb.h b/agg/inc/agg_span_pattern_resample_rgb.h
new file mode 100755
index 000000000000..baef860eb472
--- /dev/null
+++ b/agg/inc/agg_span_pattern_resample_rgb.h
@@ -0,0 +1,346 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_SPAN_PATTERN_RESAMPLE_RGB_INCLUDED
+#define AGG_SPAN_PATTERN_RESAMPLE_RGB_INCLUDED
+
+#include "agg_color_rgba.h"
+#include "agg_span_image_resample.h"
+
+namespace agg
+{
+
+ //========================================span_pattern_resample_rgb_affine
+ template<class ColorT,
+ class Order,
+ class WrapModeX,
+ class WrapModeY,
+ class Allocator = span_allocator<ColorT> >
+ class span_pattern_resample_rgb_affine :
+ public span_image_resample_affine<ColorT, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Allocator alloc_type;
+ typedef span_image_resample_affine<color_type, alloc_type> base_type;
+ typedef typename base_type::interpolator_type interpolator_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::long_type long_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask,
+ downscale_shift = image_filter_shift
+ };
+
+ //--------------------------------------------------------------------
+ span_pattern_resample_rgb_affine(alloc_type& alloc) :
+ base_type(alloc),
+ m_wrap_mode_x(1),
+ m_wrap_mode_y(1)
+ {}
+
+ //--------------------------------------------------------------------
+ span_pattern_resample_rgb_affine(alloc_type& alloc,
+ const rendering_buffer& src,
+ interpolator_type& inter,
+ const image_filter_lut& filter_) :
+ base_type(alloc, src, color_type(0,0,0,0), inter, filter_),
+ m_wrap_mode_x(src.width()),
+ m_wrap_mode_y(src.height())
+ {}
+
+ //--------------------------------------------------------------------
+ void source_image(const rendering_buffer& src)
+ {
+ base_type::source_image(src);
+ m_wrap_mode_x = WrapModeX(src.width());
+ m_wrap_mode_y = WrapModeX(src.height());
+ }
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ color_type* span = base_type::allocator().span();
+ interpolator_type& intr = base_type::interpolator();
+ intr.begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+ long_type fg[3];
+
+ int diameter = base_type::filter().diameter();
+ int filter_size = diameter << image_subpixel_shift;
+ int radius_x = (diameter * base_type::m_rx) >> 1;
+ int radius_y = (diameter * base_type::m_ry) >> 1;
+ int maxx = base_type::source_image().width() - 1;
+ int maxy = base_type::source_image().height() - 1;
+ const int16* weight_array = base_type::filter().weight_array();
+
+ do
+ {
+ intr.coordinates(&x, &y);
+
+ x += base_type::filter_dx_int() - radius_x;
+ y += base_type::filter_dy_int() - radius_y;
+
+ fg[0] = fg[1] = fg[2] = image_filter_size / 2;
+
+ int y_lr = m_wrap_mode_y(y >> image_subpixel_shift);
+ int y_hr = ((image_subpixel_mask - (y & image_subpixel_mask)) *
+ base_type::m_ry_inv) >>
+ image_subpixel_shift;
+ int total_weight = 0;
+ int x_lr_ini = x >> image_subpixel_shift;
+ int x_hr_ini = ((image_subpixel_mask - (x & image_subpixel_mask)) *
+ base_type::m_rx_inv) >>
+ image_subpixel_shift;
+ do
+ {
+ int weight_y = weight_array[y_hr];
+ int x_lr = m_wrap_mode_x(x_lr_ini);
+ int x_hr = x_hr_ini;
+ const value_type* row_ptr = (const value_type*)base_type::source_image().row(y_lr);
+ do
+ {
+ const value_type* fg_ptr = row_ptr + x_lr * 3;
+ int weight = (weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ downscale_shift;
+
+ fg[0] += fg_ptr[0] * weight;
+ fg[1] += fg_ptr[1] * weight;
+ fg[2] += fg_ptr[2] * weight;
+ total_weight += weight;
+ x_hr += base_type::m_rx_inv;
+ x_lr = ++m_wrap_mode_x;
+ }
+ while(x_hr < filter_size);
+
+ y_hr += base_type::m_ry_inv;
+ y_lr = ++m_wrap_mode_y;
+ } while(y_hr < filter_size);
+
+ fg[0] /= total_weight;
+ fg[1] /= total_weight;
+ fg[2] /= total_weight;
+
+ if(fg[0] < 0) fg[0] = 0;
+ if(fg[1] < 0) fg[1] = 0;
+ if(fg[2] < 0) fg[2] = 0;
+
+ if(fg[0] > base_mask) fg[0] = base_mask;
+ if(fg[1] > base_mask) fg[1] = base_mask;
+ if(fg[2] > base_mask) fg[2] = base_mask;
+
+ span->r = (value_type)fg[order_type::R];
+ span->g = (value_type)fg[order_type::G];
+ span->b = (value_type)fg[order_type::B];
+ span->a = (value_type)base_mask;
+
+ ++span;
+ ++intr;
+ } while(--len);
+ return base_type::allocator().span();
+ }
+
+ private:
+ WrapModeX m_wrap_mode_x;
+ WrapModeY m_wrap_mode_y;
+ };
+
+
+
+
+
+
+
+ //=============================================span_pattern_resample_rgb
+ template<class ColorT,
+ class Order,
+ class Interpolator,
+ class WrapModeX,
+ class WrapModeY,
+ class Allocator = span_allocator<ColorT> >
+ class span_pattern_resample_rgb :
+ public span_image_resample<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_resample<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::long_type long_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask,
+ downscale_shift = image_filter_shift
+ };
+
+ //--------------------------------------------------------------------
+ span_pattern_resample_rgb(alloc_type& alloc) :
+ base_type(alloc),
+ m_wrap_mode_x(1),
+ m_wrap_mode_y(1)
+ {}
+
+ //--------------------------------------------------------------------
+ span_pattern_resample_rgb(alloc_type& alloc,
+ const rendering_buffer& src,
+ interpolator_type& inter,
+ const image_filter_lut& filter) :
+ base_type(alloc, src, color_type(0,0,0,0), inter, filter),
+ m_wrap_mode_x(src.width()),
+ m_wrap_mode_y(src.height())
+ {}
+
+ //--------------------------------------------------------------------
+ void source_image(const rendering_buffer& src)
+ {
+ base_type::source_image(src);
+ m_wrap_mode_x = WrapModeX(src.width());
+ m_wrap_mode_y = WrapModeX(src.height());
+ }
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ color_type* span = base_type::allocator().span();
+ interpolator_type& intr = base_type::interpolator();
+ intr.begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+ long_type fg[3];
+
+ int diameter = base_type::filter().diameter();
+ int filter_size = diameter << image_subpixel_shift;
+ const int16* weight_array = base_type::filter().weight_array();
+
+ do
+ {
+ int rx;
+ int ry;
+ int rx_inv = image_subpixel_size;
+ int ry_inv = image_subpixel_size;
+ intr.coordinates(&x, &y);
+ intr.local_scale(&rx, &ry);
+
+ rx = (rx * base_type::m_blur_x) >> image_subpixel_shift;
+ ry = (ry * base_type::m_blur_y) >> image_subpixel_shift;
+
+ if(rx < image_subpixel_size)
+ {
+ rx = image_subpixel_size;
+ }
+ else
+ {
+ if(rx > image_subpixel_size * base_type::m_scale_limit)
+ {
+ rx = image_subpixel_size * base_type::m_scale_limit;
+ }
+ rx_inv = image_subpixel_size * image_subpixel_size / rx;
+ }
+
+ if(ry < image_subpixel_size)
+ {
+ ry = image_subpixel_size;
+ }
+ else
+ {
+ if(ry > image_subpixel_size * base_type::m_scale_limit)
+ {
+ ry = image_subpixel_size * base_type::m_scale_limit;
+ }
+ ry_inv = image_subpixel_size * image_subpixel_size / ry;
+ }
+
+ int radius_x = (diameter * rx) >> 1;
+ int radius_y = (diameter * ry) >> 1;
+ int maxx = base_type::source_image().width() - 1;
+ int maxy = base_type::source_image().height() - 1;
+
+ x += base_type::filter_dx_int() - radius_x;
+ y += base_type::filter_dy_int() - radius_y;
+
+ fg[0] = fg[1] = fg[2] = image_filter_size / 2;
+
+ int y_lr = m_wrap_mode_y(y >> image_subpixel_shift);
+ int y_hr = ((image_subpixel_mask - (y & image_subpixel_mask)) *
+ ry_inv) >>
+ image_subpixel_shift;
+ int total_weight = 0;
+ int x_lr_ini = x >> image_subpixel_shift;
+ int x_hr_ini = ((image_subpixel_mask - (x & image_subpixel_mask)) *
+ rx_inv) >>
+ image_subpixel_shift;
+
+ do
+ {
+ int weight_y = weight_array[y_hr];
+ int x_lr = m_wrap_mode_x(x_lr_ini);
+ int x_hr = x_hr_ini;
+ const value_type* row_ptr = (const value_type*)base_type::source_image().row(y_lr);
+ do
+ {
+ const value_type* fg_ptr = row_ptr + x_lr * 3;
+ int weight = (weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ downscale_shift;
+ fg[0] += fg_ptr[0] * weight;
+ fg[1] += fg_ptr[1] * weight;
+ fg[2] += fg_ptr[2] * weight;
+ total_weight += weight;
+ x_hr += rx_inv;
+ x_lr = ++m_wrap_mode_x;
+ }
+ while(x_hr < filter_size);
+ y_hr += ry_inv;
+ y_lr = ++m_wrap_mode_y;
+ }
+ while(y_hr < filter_size);
+
+ fg[0] /= total_weight;
+ fg[1] /= total_weight;
+ fg[2] /= total_weight;
+
+ if(fg[0] < 0) fg[0] = 0;
+ if(fg[1] < 0) fg[1] = 0;
+ if(fg[2] < 0) fg[2] = 0;
+
+ if(fg[0] > base_mask) fg[0] = base_mask;
+ if(fg[1] > base_mask) fg[1] = base_mask;
+ if(fg[2] > base_mask) fg[2] = base_mask;
+
+ span->r = (value_type)fg[order_type::R];
+ span->g = (value_type)fg[order_type::G];
+ span->b = (value_type)fg[order_type::B];
+ span->a = (value_type)base_mask;
+
+ ++span;
+ ++intr;
+ } while(--len);
+ return base_type::allocator().span();
+ }
+
+ private:
+ WrapModeX m_wrap_mode_x;
+ WrapModeY m_wrap_mode_y;
+ };
+
+}
+
+
+#endif
diff --git a/agg/inc/agg_span_pattern_resample_rgba.h b/agg/inc/agg_span_pattern_resample_rgba.h
new file mode 100755
index 000000000000..37b4dade16f4
--- /dev/null
+++ b/agg/inc/agg_span_pattern_resample_rgba.h
@@ -0,0 +1,354 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_SPAN_PATTERN_RESAMPLE_RGBA_INCLUDED
+#define AGG_SPAN_PATTERN_RESAMPLE_RGBA_INCLUDED
+
+#include "agg_color_rgba.h"
+#include "agg_span_image_resample.h"
+
+namespace agg
+{
+
+ //=======================================span_pattern_resample_rgba_affine
+ template<class ColorT,
+ class Order,
+ class WrapModeX,
+ class WrapModeY,
+ class Allocator = span_allocator<ColorT> >
+ class span_pattern_resample_rgba_affine :
+ public span_image_resample_affine<ColorT, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Allocator alloc_type;
+ typedef span_image_resample_affine<color_type, alloc_type> base_type;
+ typedef typename base_type::interpolator_type interpolator_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::long_type long_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask,
+ downscale_shift = image_filter_shift
+ };
+
+ //--------------------------------------------------------------------
+ span_pattern_resample_rgba_affine(alloc_type& alloc) :
+ base_type(alloc),
+ m_wrap_mode_x(1),
+ m_wrap_mode_y(1)
+ {}
+
+ //--------------------------------------------------------------------
+ span_pattern_resample_rgba_affine(alloc_type& alloc,
+ const rendering_buffer& src,
+ interpolator_type& inter,
+ const image_filter_lut& filter_) :
+ base_type(alloc, src, color_type(0,0,0,0), inter, filter_),
+ m_wrap_mode_x(src.width()),
+ m_wrap_mode_y(src.height())
+ {}
+
+ //--------------------------------------------------------------------
+ void source_image(const rendering_buffer& src)
+ {
+ base_type::source_image(src);
+ m_wrap_mode_x = WrapModeX(src.width());
+ m_wrap_mode_y = WrapModeX(src.height());
+ }
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ color_type* span = base_type::allocator().span();
+ interpolator_type& intr = base_type::interpolator();
+ intr.begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+ long_type fg[4];
+
+ int diameter = base_type::filter().diameter();
+ int filter_size = diameter << image_subpixel_shift;
+ int radius_x = (diameter * base_type::m_rx) >> 1;
+ int radius_y = (diameter * base_type::m_ry) >> 1;
+ int maxx = base_type::source_image().width() - 1;
+ int maxy = base_type::source_image().height() - 1;
+ const int16* weight_array = base_type::filter().weight_array();
+
+ do
+ {
+ intr.coordinates(&x, &y);
+
+ x += base_type::filter_dx_int() - radius_x;
+ y += base_type::filter_dy_int() - radius_y;
+
+ fg[0] = fg[1] = fg[2] = fg[3] = image_filter_size / 2;
+
+ int y_lr = m_wrap_mode_y(y >> image_subpixel_shift);
+ int y_hr = ((image_subpixel_mask - (y & image_subpixel_mask)) *
+ base_type::m_ry_inv) >>
+ image_subpixel_shift;
+ int total_weight = 0;
+ int x_lr_ini = x >> image_subpixel_shift;
+ int x_hr_ini = ((image_subpixel_mask - (x & image_subpixel_mask)) *
+ base_type::m_rx_inv) >>
+ image_subpixel_shift;
+ do
+ {
+ int weight_y = weight_array[y_hr];
+ int x_lr = m_wrap_mode_x(x_lr_ini);
+ int x_hr = x_hr_ini;
+ const value_type* row_ptr = (const value_type*)base_type::source_image().row(y_lr);
+ do
+ {
+ const value_type* fg_ptr = row_ptr + (x_lr << 2);
+ int weight = (weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ downscale_shift;
+
+ fg[0] += fg_ptr[0] * weight;
+ fg[1] += fg_ptr[1] * weight;
+ fg[2] += fg_ptr[2] * weight;
+ fg[3] += fg_ptr[3] * weight;
+ total_weight += weight;
+ x_hr += base_type::m_rx_inv;
+ x_lr = ++m_wrap_mode_x;
+ }
+ while(x_hr < filter_size);
+
+ y_hr += base_type::m_ry_inv;
+ y_lr = ++m_wrap_mode_y;
+ } while(y_hr < filter_size);
+
+ fg[0] /= total_weight;
+ fg[1] /= total_weight;
+ fg[2] /= total_weight;
+ fg[3] /= total_weight;
+
+ if(fg[0] < 0) fg[0] = 0;
+ if(fg[1] < 0) fg[1] = 0;
+ if(fg[2] < 0) fg[2] = 0;
+ if(fg[3] < 0) fg[3] = 0;
+
+ if(fg[order_type::A] > base_mask) fg[order_type::A] = base_mask;
+ if(fg[order_type::R] > fg[order_type::A]) fg[order_type::R] = fg[order_type::A];
+ if(fg[order_type::G] > fg[order_type::A]) fg[order_type::G] = fg[order_type::A];
+ if(fg[order_type::B] > fg[order_type::A]) fg[order_type::B] = fg[order_type::A];
+
+ span->r = (value_type)fg[order_type::R];
+ span->g = (value_type)fg[order_type::G];
+ span->b = (value_type)fg[order_type::B];
+ span->a = (value_type)fg[order_type::A];
+
+ ++span;
+ ++intr;
+ } while(--len);
+ return base_type::allocator().span();
+ }
+
+ private:
+ WrapModeX m_wrap_mode_x;
+ WrapModeY m_wrap_mode_y;
+ };
+
+
+
+
+
+
+
+ //============================================span_pattern_resample_rgba
+ template<class ColorT,
+ class Order,
+ class Interpolator,
+ class WrapModeX,
+ class WrapModeY,
+ class Allocator = span_allocator<ColorT> >
+ class span_pattern_resample_rgba :
+ public span_image_resample<ColorT, Interpolator, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Interpolator interpolator_type;
+ typedef Allocator alloc_type;
+ typedef span_image_resample<color_type, interpolator_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::long_type long_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask,
+ downscale_shift = image_filter_shift
+ };
+
+ //--------------------------------------------------------------------
+ span_pattern_resample_rgba(alloc_type& alloc) :
+ base_type(alloc),
+ m_wrap_mode_x(1),
+ m_wrap_mode_y(1)
+ {}
+
+ //--------------------------------------------------------------------
+ span_pattern_resample_rgba(alloc_type& alloc,
+ const rendering_buffer& src,
+ interpolator_type& inter,
+ const image_filter_lut& filter) :
+ base_type(alloc, src, color_type(0,0,0,0), inter, filter),
+ m_wrap_mode_x(src.width()),
+ m_wrap_mode_y(src.height())
+ {}
+
+ //--------------------------------------------------------------------
+ void source_image(const rendering_buffer& src)
+ {
+ base_type::source_image(src);
+ m_wrap_mode_x = WrapModeX(src.width());
+ m_wrap_mode_y = WrapModeX(src.height());
+ }
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ color_type* span = base_type::allocator().span();
+ interpolator_type& intr = base_type::interpolator();
+ intr.begin(x + base_type::filter_dx_dbl(),
+ y + base_type::filter_dy_dbl(), len);
+ long_type fg[4];
+
+ int diameter = base_type::filter().diameter();
+ int filter_size = diameter << image_subpixel_shift;
+ const int16* weight_array = base_type::filter().weight_array();
+
+ do
+ {
+ int rx;
+ int ry;
+ int rx_inv = image_subpixel_size;
+ int ry_inv = image_subpixel_size;
+ intr.coordinates(&x, &y);
+ intr.local_scale(&rx, &ry);
+
+ rx = (rx * base_type::m_blur_x) >> image_subpixel_shift;
+ ry = (ry * base_type::m_blur_y) >> image_subpixel_shift;
+
+ if(rx < image_subpixel_size)
+ {
+ rx = image_subpixel_size;
+ }
+ else
+ {
+ if(rx > image_subpixel_size * base_type::m_scale_limit)
+ {
+ rx = image_subpixel_size * base_type::m_scale_limit;
+ }
+ rx_inv = image_subpixel_size * image_subpixel_size / rx;
+ }
+
+ if(ry < image_subpixel_size)
+ {
+ ry = image_subpixel_size;
+ }
+ else
+ {
+ if(ry > image_subpixel_size * base_type::m_scale_limit)
+ {
+ ry = image_subpixel_size * base_type::m_scale_limit;
+ }
+ ry_inv = image_subpixel_size * image_subpixel_size / ry;
+ }
+
+ int radius_x = (diameter * rx) >> 1;
+ int radius_y = (diameter * ry) >> 1;
+ int maxx = base_type::source_image().width() - 1;
+ int maxy = base_type::source_image().height() - 1;
+
+ x += base_type::filter_dx_int() - radius_x;
+ y += base_type::filter_dy_int() - radius_y;
+
+ fg[0] = fg[1] = fg[2] = fg[3] = image_filter_size / 2;
+
+ int y_lr = m_wrap_mode_y(y >> image_subpixel_shift);
+ int y_hr = ((image_subpixel_mask - (y & image_subpixel_mask)) *
+ ry_inv) >>
+ image_subpixel_shift;
+ int total_weight = 0;
+ int x_lr_ini = x >> image_subpixel_shift;
+ int x_hr_ini = ((image_subpixel_mask - (x & image_subpixel_mask)) *
+ rx_inv) >>
+ image_subpixel_shift;
+
+ do
+ {
+ int weight_y = weight_array[y_hr];
+ int x_lr = m_wrap_mode_x(x_lr_ini);
+ int x_hr = x_hr_ini;
+ const value_type* row_ptr = (const value_type*)base_type::source_image().row(y_lr);
+ do
+ {
+ const value_type* fg_ptr = row_ptr + (x_lr << 2);
+ int weight = (weight_y * weight_array[x_hr] +
+ image_filter_size / 2) >>
+ downscale_shift;
+ fg[0] += fg_ptr[0] * weight;
+ fg[1] += fg_ptr[1] * weight;
+ fg[2] += fg_ptr[2] * weight;
+ fg[3] += fg_ptr[3] * weight;
+ total_weight += weight;
+ x_hr += rx_inv;
+ x_lr = ++m_wrap_mode_x;
+ }
+ while(x_hr < filter_size);
+ y_hr += ry_inv;
+ y_lr = ++m_wrap_mode_y;
+ }
+ while(y_hr < filter_size);
+
+ fg[0] /= total_weight;
+ fg[1] /= total_weight;
+ fg[2] /= total_weight;
+ fg[3] /= total_weight;
+
+ if(fg[0] < 0) fg[0] = 0;
+ if(fg[1] < 0) fg[1] = 0;
+ if(fg[2] < 0) fg[2] = 0;
+ if(fg[3] < 0) fg[3] = 0;
+
+ if(fg[order_type::A] > base_mask) fg[order_type::A] = base_mask;
+ if(fg[order_type::R] > fg[order_type::A]) fg[order_type::R] = fg[order_type::A];
+ if(fg[order_type::G] > fg[order_type::A]) fg[order_type::G] = fg[order_type::A];
+ if(fg[order_type::B] > fg[order_type::A]) fg[order_type::B] = fg[order_type::A];
+
+ span->r = (value_type)fg[order_type::R];
+ span->g = (value_type)fg[order_type::G];
+ span->b = (value_type)fg[order_type::B];
+ span->a = (value_type)fg[order_type::A];
+
+ ++span;
+ ++intr;
+ } while(--len);
+ return base_type::allocator().span();
+ }
+
+ private:
+ WrapModeX m_wrap_mode_x;
+ WrapModeY m_wrap_mode_y;
+ };
+
+}
+
+
+#endif
diff --git a/agg/inc/agg_span_pattern_rgb.h b/agg/inc/agg_span_pattern_rgb.h
new file mode 100755
index 000000000000..2e17f11e7c70
--- /dev/null
+++ b/agg/inc/agg_span_pattern_rgb.h
@@ -0,0 +1,165 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Adaptation for high precision colors has been sponsored by
+// Liberty Technology Systems, Inc., visit http://lib-sys.com
+//
+// Liberty Technology Systems, Inc. is the provider of
+// PostScript and PDF technology for software developers.
+//
+//----------------------------------------------------------------------------
+
+
+#ifndef AGG_SPAN_PATTERN_RGB_INCLUDED
+#define AGG_SPAN_PATTERN_RGB_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_pixfmt_rgb.h"
+#include "agg_span_pattern.h"
+
+namespace agg
+{
+ //=======================================================span_pattern_rgb
+ template<class ColorT,
+ class Order,
+ class WrapModeX,
+ class WrapModeY,
+ class Allocator = span_allocator<ColorT> >
+ class span_pattern_rgb : public span_pattern_base<ColorT, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Allocator alloc_type;
+ typedef span_pattern_base<color_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ span_pattern_rgb(alloc_type& alloc) :
+ base_type(alloc),
+ m_wrap_mode_x(1),
+ m_wrap_mode_y(1)
+ {}
+
+ //----------------------------------------------------------------
+ span_pattern_rgb(alloc_type& alloc,
+ const rendering_buffer& src,
+ unsigned offset_x,
+ unsigned offset_y,
+ value_type alpha = base_mask) :
+ base_type(alloc, src, offset_x, offset_y, alpha),
+ m_wrap_mode_x(src.width()),
+ m_wrap_mode_y(src.height())
+ {}
+
+ //-------------------------------------------------------------------
+ void source_image(const rendering_buffer& src)
+ {
+ base_type::source_image(src);
+ m_wrap_mode_x = WrapModeX(src.width());
+ m_wrap_mode_y = WrapModeY(src.height());
+ }
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ color_type* span = base_type::allocator().span();
+ unsigned sx = m_wrap_mode_x(base_type::offset_x() + x);
+ const value_type* row_ptr =
+ (const value_type*)base_type::source_image().row(
+ m_wrap_mode_y(
+ base_type::offset_y() + y));
+ do
+ {
+ const value_type* p = row_ptr + sx + sx + sx;
+ span->r = p[order_type::R];
+ span->g = p[order_type::G];
+ span->b = p[order_type::B];
+ span->a = base_type::alpha_int();
+ sx = ++m_wrap_mode_x;
+ ++span;
+ }
+ while(--len);
+ return base_type::allocator().span();
+ }
+
+ private:
+ WrapModeX m_wrap_mode_x;
+ WrapModeY m_wrap_mode_y;
+ };
+
+
+
+/*
+ //=========================================================span_pattern_rgb
+ template<class ColorT, class Order, class Allocator = span_allocator<ColorT> >
+ class span_pattern_rgb : public span_pattern<rgba8, int8u, Allocator>
+ {
+ public:
+ typedef Allocator alloc_type;
+ typedef rgba8 color_type;
+ typedef span_pattern<color_type, int8u, alloc_type> base_type;
+
+ //--------------------------------------------------------------------
+ span_pattern_rgb24(alloc_type& alloc) : base_type(alloc) {}
+
+ //----------------------------------------------------------------
+ span_pattern_rgb24(alloc_type& alloc,
+ const rendering_buffer& src,
+ unsigned offset_x, unsigned offset_y,
+ int8u alpha = 255) :
+ base_type(alloc, src, offset_x, offset_y, alpha)
+ {}
+
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ color_type* span = base_type::allocator().span();
+ unsigned sx = (base_type::offset_x() + x) % base_type::source_image().width();
+ unsigned wp = base_type::source_image().width() * 3;
+ const int8u* p = base_type::source_image().row((base_type::offset_y() + y) % base_type::source_image().height());
+ p += sx * 3;
+ do
+ {
+ span->r = p[Order::R];
+ span->g = p[Order::G];
+ span->b = p[Order::B];
+ span->a = base_type::alpha();
+ p += 3;
+ ++sx;
+ ++span;
+ if(sx >= base_type::source_image().width())
+ {
+ sx -= base_type::source_image().width();
+ p -= wp;
+ }
+ }
+ while(--len);
+ return base_type::allocator().span();
+ }
+ };
+*/
+
+}
+
+#endif
+
diff --git a/agg/inc/agg_span_pattern_rgba.h b/agg/inc/agg_span_pattern_rgba.h
new file mode 100755
index 000000000000..d952d0733696
--- /dev/null
+++ b/agg/inc/agg_span_pattern_rgba.h
@@ -0,0 +1,111 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Adaptation for high precision colors has been sponsored by
+// Liberty Technology Systems, Inc., visit http://lib-sys.com
+//
+// Liberty Technology Systems, Inc. is the provider of
+// PostScript and PDF technology for software developers.
+//
+//----------------------------------------------------------------------------
+
+
+#ifndef AGG_SPAN_PATTERN_RGBA_INCLUDED
+#define AGG_SPAN_PATTERN_RGBA_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_pixfmt_rgba.h"
+#include "agg_span_pattern.h"
+
+namespace agg
+{
+
+ //======================================================span_pattern_rgba
+ template<class ColorT,
+ class Order,
+ class WrapModeX,
+ class WrapModeY,
+ class Allocator = span_allocator<ColorT> >
+ class span_pattern_rgba : public span_pattern_base<ColorT, Allocator>
+ {
+ public:
+ typedef ColorT color_type;
+ typedef Order order_type;
+ typedef Allocator alloc_type;
+ typedef span_pattern_base<color_type, alloc_type> base_type;
+ typedef typename color_type::value_type value_type;
+ typedef typename color_type::calc_type calc_type;
+ enum
+ {
+ base_shift = color_type::base_shift,
+ base_mask = color_type::base_mask
+ };
+
+ //--------------------------------------------------------------------
+ span_pattern_rgba(alloc_type& alloc) :
+ base_type(alloc),
+ m_wrap_mode_x(1),
+ m_wrap_mode_y(1)
+ {}
+
+ //----------------------------------------------------------------
+ span_pattern_rgba(alloc_type& alloc,
+ const rendering_buffer& src,
+ unsigned offset_x, unsigned offset_y) :
+ base_type(alloc, src, offset_x, offset_y, 0),
+ m_wrap_mode_x(src.width()),
+ m_wrap_mode_y(src.height())
+ {}
+
+ //-------------------------------------------------------------------
+ void source_image(const rendering_buffer& src)
+ {
+ base_type::source_image(src);
+ m_wrap_mode_x = WrapModeX(src.width());
+ m_wrap_mode_y = WrapModeY(src.height());
+ }
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ color_type* span = base_type::allocator().span();
+ unsigned sx = m_wrap_mode_x(base_type::offset_x() + x);
+ const value_type* row_ptr =
+ (const value_type*)base_type::source_image().row(
+ m_wrap_mode_y(
+ base_type::offset_y() + y));
+ do
+ {
+ const value_type* p = row_ptr + (sx << 2);
+ span->r = p[order_type::R];
+ span->g = p[order_type::G];
+ span->b = p[order_type::B];
+ span->a = p[order_type::A];
+ sx = ++m_wrap_mode_x;
+ ++span;
+ }
+ while(--len);
+ return base_type::allocator().span();
+ }
+
+ private:
+ WrapModeX m_wrap_mode_x;
+ WrapModeY m_wrap_mode_y;
+ };
+
+}
+
+#endif
+
diff --git a/agg/inc/agg_span_solid.h b/agg/inc/agg_span_solid.h
new file mode 100755
index 000000000000..aa8374bfe61f
--- /dev/null
+++ b/agg/inc/agg_span_solid.h
@@ -0,0 +1,63 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// span_solid_rgba8
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_SPAN_SOLID_INCLUDED
+#define AGG_SPAN_SOLID_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_span_generator.h"
+
+namespace agg
+{
+ //--------------------------------------------------------------span_solid
+ template<class ColorT, class Allocator = span_allocator<ColorT> >
+ class span_solid : public span_generator<ColorT, Allocator>
+ {
+ public:
+ typedef Allocator alloc_type;
+ typedef ColorT color_type;
+ typedef span_generator<color_type, alloc_type> base_type;
+
+ //--------------------------------------------------------------------
+ span_solid(alloc_type& alloc) : base_type(alloc) {}
+
+ //--------------------------------------------------------------------
+ void color(const color_type& c) { m_color = c; }
+ const color_type& color() const { return m_color; }
+
+ //--------------------------------------------------------------------
+ color_type* generate(int x, int y, unsigned len)
+ {
+ color_type* span = base_type::allocator().span();
+ do
+ {
+ *span++ = m_color;
+ }
+ while(--len);
+ return base_type::allocator().span();
+ }
+
+ private:
+ color_type m_color;
+ };
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_span_subdiv_adaptor.h b/agg/inc/agg_span_subdiv_adaptor.h
new file mode 100755
index 000000000000..60196d705bdb
--- /dev/null
+++ b/agg/inc/agg_span_subdiv_adaptor.h
@@ -0,0 +1,141 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+#ifndef AGG_SPAN_SUBDIV_ADAPTOR_INCLUDED
+#define AGG_SPAN_SUBDIV_ADAPTOR_INCLUDED
+
+#include "agg_basics.h"
+
+namespace agg
+{
+
+ //=================================================span_subdiv_adaptor
+ template<class Interpolator, unsigned SubpixelShift = 8>
+ class span_subdiv_adaptor
+ {
+ public:
+ typedef Interpolator interpolator_type;
+ typedef typename interpolator_type::trans_type trans_type;
+
+ enum
+ {
+ subpixel_shift = SubpixelShift,
+ subpixel_size = 1 << subpixel_shift
+ };
+
+
+ //----------------------------------------------------------------
+ span_subdiv_adaptor() :
+ m_subdiv_shift(4),
+ m_subdiv_size(1 << m_subdiv_shift),
+ m_subdiv_mask(m_subdiv_size - 1) {}
+
+ span_subdiv_adaptor(interpolator_type& interpolator,
+ unsigned subdiv_shift = 4) :
+ m_subdiv_shift(subdiv_shift),
+ m_subdiv_size(1 << m_subdiv_shift),
+ m_subdiv_mask(m_subdiv_size - 1),
+ m_interpolator(&interpolator) {}
+
+ span_subdiv_adaptor(interpolator_type& interpolator,
+ double x, double y, unsigned len,
+ unsigned subdiv_shift = 4) :
+ m_subdiv_shift(subdiv_shift),
+ m_subdiv_size(1 << m_subdiv_shift),
+ m_subdiv_mask(m_subdiv_size - 1),
+ m_interpolator(&interpolator)
+ {
+ begin(x, y, len);
+ }
+
+
+ //----------------------------------------------------------------
+ const interpolator_type& interpolator() const { return *m_interpolator; }
+ void interpolator(interpolator_type& intr) { m_interpolator = &intr; }
+
+ //----------------------------------------------------------------
+ const trans_type& transformer() const
+ {
+ return *m_interpolator->transformer();
+ }
+ void transformer(const trans_type& trans)
+ {
+ m_interpolator->transformer(trans);
+ }
+
+ //----------------------------------------------------------------
+ unsigned subdiv_shift() const { return m_subdiv_shift; }
+ void subdiv_shift(unsigned shift)
+ {
+ m_subdiv_shift = shift;
+ m_subdiv_size = 1 << m_subdiv_shift;
+ m_subdiv_mask = m_subdiv_size - 1;
+ }
+
+ //----------------------------------------------------------------
+ void begin(double x, double y, unsigned len)
+ {
+ m_pos = 1;
+ m_src_x = int(x * subpixel_size) + subpixel_size;
+ m_src_y = y;
+ m_len = len;
+ if(len > m_subdiv_size) len = m_subdiv_size;
+ m_interpolator->begin(x, y, len);
+ }
+
+ //----------------------------------------------------------------
+ void operator++()
+ {
+ ++(*m_interpolator);
+ if(m_pos >= m_subdiv_size)
+ {
+ unsigned len = m_len;
+ if(len > m_subdiv_size) len = m_subdiv_size;
+ m_interpolator->resynchronize(double(m_src_x) / double(subpixel_size) + len,
+ m_src_y,
+ len);
+ m_pos = 0;
+ }
+ m_src_x += subpixel_size;
+ ++m_pos;
+ --m_len;
+ }
+
+ //----------------------------------------------------------------
+ void coordinates(int* x, int* y) const
+ {
+ m_interpolator->coordinates(x, y);
+ }
+
+ //----------------------------------------------------------------
+ void local_scale(int* x, int* y) const
+ {
+ m_interpolator->local_scale(x, y);
+ }
+
+
+ private:
+ unsigned m_subdiv_shift;
+ unsigned m_subdiv_size;
+ unsigned m_subdiv_mask;
+ interpolator_type* m_interpolator;
+ int m_src_x;
+ double m_src_y;
+ unsigned m_pos;
+ unsigned m_len;
+ };
+
+}
+
+#endif
diff --git a/agg/inc/agg_trans_affine.h b/agg/inc/agg_trans_affine.h
new file mode 100755
index 000000000000..5a4098f904de
--- /dev/null
+++ b/agg/inc/agg_trans_affine.h
@@ -0,0 +1,344 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Affine transformation classes.
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_TRANS_AFFINE_INCLUDED
+#define AGG_TRANS_AFFINE_INCLUDED
+
+#include <math.h>
+#include "agg_basics.h"
+
+namespace agg
+{
+ const double affine_epsilon = 1e-14; // About of precision of doubles
+
+ //============================================================trans_affine
+ //
+ // See Implementation agg_trans_affine.cpp
+ //
+ // Affine transformation are linear transformations in Cartesian coordinates
+ // (strictly speaking not only in Cartesian, but for the beginning we will
+ // think so). They are rotation, scaling, translation and skewing.
+ // After any affine transformation a line segment remains a line segment
+ // and it will never become a curve.
+ //
+ // There will be no math about matrix calculations, since it has been
+ // described many times. Ask yourself a very simple question:
+ // "why do we need to understand and use some matrix stuff instead of just
+ // rotating, scaling and so on". The answers are:
+ //
+ // 1. Any combination of transformations can be done by only 4 multiplications
+ // and 4 additions in floating point.
+ // 2. One matrix transformation is equivalent to the number of consecutive
+ // discrete transformations, i.e. the matrix "accumulates" all transformations
+ // in the order of their settings. Suppose we have 4 transformations:
+ // * rotate by 30 degrees,
+ // * scale X to 2.0,
+ // * scale Y to 1.5,
+ // * move to (100, 100).
+ // The result will depend on the order of these transformations,
+ // and the advantage of matrix is that the sequence of discret calls:
+ // rotate(30), scaleX(2.0), scaleY(1.5), move(100,100)
+ // will have exactly the same result as the following matrix transformations:
+ //
+ // affine_matrix m;
+ // m *= rotate_matrix(30);
+ // m *= scaleX_matrix(2.0);
+ // m *= scaleY_matrix(1.5);
+ // m *= move_matrix(100,100);
+ //
+ // m.transform_my_point_at_last(x, y);
+ //
+ // What is the good of it? In real life we will set-up the matrix only once
+ // and then transform many points, let alone the convenience to set any
+ // combination of transformations.
+ //
+ // So, how to use it? Very easy - literally as it's shown above. Not quite,
+ // let us write a correct example:
+ //
+ // agg::trans_affine m;
+ // m *= agg::trans_affine_rotation(30.0 * 3.1415926 / 180.0);
+ // m *= agg::trans_affine_scaling(2.0, 1.5);
+ // m *= agg::trans_affine_translation(100.0, 100.0);
+ // m.transform(&x, &y);
+ //
+ // The affine matrix is all you need to perform any linear transformation,
+ // but all transformations have origin point (0,0). It means that we need to
+ // use 2 translations if we want to rotate someting around (100,100):
+ //
+ // m *= agg::trans_affine_translation(-100.0, -100.0); // move to (0,0)
+ // m *= agg::trans_affine_rotation(30.0 * 3.1415926 / 180.0); // rotate
+ // m *= agg::trans_affine_translation(100.0, 100.0); // move back to (100,100)
+ //----------------------------------------------------------------------
+ class trans_affine
+ {
+ public:
+ //------------------------------------------ Construction
+ // Construct an identity matrix - it does not transform anything
+ trans_affine() :
+ m0(1.0), m1(0.0), m2(0.0), m3(1.0), m4(0.0), m5(0.0)
+ {}
+
+ // Construct a custom matrix. Usually used in derived classes
+ trans_affine(double v0, double v1, double v2, double v3, double v4, double v5) :
+ m0(v0), m1(v1), m2(v2), m3(v3), m4(v4), m5(v5)
+ {}
+
+ // Construct a matrix to transform a parallelogram to another one.
+ trans_affine(const double* rect, const double* parl)
+ {
+ parl_to_parl(rect, parl);
+ }
+
+ // Construct a matrix to transform a rectangle to a parallelogram.
+ trans_affine(double x1, double y1, double x2, double y2,
+ const double* parl)
+ {
+ rect_to_parl(x1, y1, x2, y2, parl);
+ }
+
+ // Construct a matrix to transform a parallelogram to a rectangle.
+ trans_affine(const double* parl,
+ double x1, double y1, double x2, double y2)
+ {
+ parl_to_rect(parl, x1, y1, x2, y2);
+ }
+
+
+ //---------------------------------- Parellelogram transformations
+ // Calculate a matrix to transform a parallelogram to another one.
+ // src and dst are pointers to arrays of three points
+ // (double[6], x,y,...) that identify three corners of the
+ // parallelograms assuming implicit fourth points.
+ // There are also transformations rectangtle to parallelogram and
+ // parellelogram to rectangle
+ const trans_affine& parl_to_parl(const double* src,
+ const double* dst);
+
+ const trans_affine& rect_to_parl(double x1, double y1,
+ double x2, double y2,
+ const double* parl);
+
+ const trans_affine& parl_to_rect(const double* parl,
+ double x1, double y1,
+ double x2, double y2);
+
+
+ //------------------------------------------ Operations
+ // Reset - actually load an identity matrix
+ const trans_affine& reset();
+
+ // Multiply matrix to another one
+ const trans_affine& multiply(const trans_affine& m);
+
+ // Multiply "m" to "this" and assign the result to "this"
+ const trans_affine& premultiply(const trans_affine& m);
+
+ // Invert matrix. Do not try to invert degenerate matrices,
+ // there's no check for validity. If you set scale to 0 and
+ // then try to invert matrix, expect unpredictable result.
+ const trans_affine& invert();
+
+ // Mirroring around X
+ const trans_affine& flip_x();
+
+ // Mirroring around Y
+ const trans_affine& flip_y();
+
+ //------------------------------------------- Load/Store
+ // Store matrix to an array [6] of double
+ void store_to(double* m) const
+ {
+ *m++ = m0; *m++ = m1; *m++ = m2; *m++ = m3; *m++ = m4; *m++ = m5;
+ }
+
+ // Load matrix from an array [6] of double
+ const trans_affine& load_from(const double* m)
+ {
+ m0 = *m++; m1 = *m++; m2 = *m++; m3 = *m++; m4 = *m++; m5 = *m++;
+ return *this;
+ }
+
+ //------------------------------------------- Operators
+
+ // Multiply current matrix to another one
+ const trans_affine& operator *= (const trans_affine& m)
+ {
+ return multiply(m);
+ }
+
+ // Multiply current matrix to another one and return
+ // the result in a separete matrix.
+ trans_affine operator * (const trans_affine& m)
+ {
+ return trans_affine(*this).multiply(m);
+ }
+
+ // Calculate and return the inverse matrix
+ trans_affine operator ~ () const
+ {
+ trans_affine ret = *this;
+ return ret.invert();
+ }
+
+ // Equal operator with default epsilon
+ bool operator == (const trans_affine& m) const
+ {
+ return is_equal(m, affine_epsilon);
+ }
+
+ // Not Equal operator with default epsilon
+ bool operator != (const trans_affine& m) const
+ {
+ return !is_equal(m, affine_epsilon);
+ }
+
+ //-------------------------------------------- Transformations
+ // Direct transformation x and y
+ void transform(double* x, double* y) const;
+
+ // Inverse transformation x and y. It works slower than the
+ // direct transformation, so if the performance is critical
+ // it's better to invert() the matrix and then use transform()
+ void inverse_transform(double* x, double* y) const;
+
+ //-------------------------------------------- Auxiliary
+ // Calculate the determinant of matrix
+ double determinant() const
+ {
+ return 1.0 / (m0 * m3 - m1 * m2);
+ }
+
+ // Get the average scale (by X and Y).
+ // Basically used to calculate the approximation_scale when
+ // decomposinting curves into line segments.
+ double scale() const;
+
+ // Check to see if it's an identity matrix
+ bool is_identity(double epsilon = affine_epsilon) const;
+
+ // Check to see if two matrices are equal
+ bool is_equal(const trans_affine& m, double epsilon = affine_epsilon) const;
+
+ // Determine the major parameters. Use carefully considering degenerate matrices
+ double rotation() const;
+ void translation(double* dx, double* dy) const;
+ void scaling(double* sx, double* sy) const;
+ void scaling_abs(double* sx, double* sy) const
+ {
+ *sx = sqrt(m0*m0 + m2*m2);
+ *sy = sqrt(m1*m1 + m3*m3);
+ }
+
+ private:
+ double m0;
+ double m1;
+ double m2;
+ double m3;
+ double m4;
+ double m5;
+ };
+
+ //------------------------------------------------------------------------
+ inline void trans_affine::transform(double* x, double* y) const
+ {
+ register double tx = *x;
+ *x = tx * m0 + *y * m2 + m4;
+ *y = tx * m1 + *y * m3 + m5;
+ }
+
+ //------------------------------------------------------------------------
+ inline void trans_affine::inverse_transform(double* x, double* y) const
+ {
+ register double d = determinant();
+ register double a = (*x - m4) * d;
+ register double b = (*y - m5) * d;
+ *x = a * m3 - b * m2;
+ *y = b * m0 - a * m1;
+ }
+
+ //------------------------------------------------------------------------
+ inline double trans_affine::scale() const
+ {
+ double x = 0.707106781 * m0 + 0.707106781 * m2;
+ double y = 0.707106781 * m1 + 0.707106781 * m3;
+ return sqrt(x*x + y*y);
+ }
+
+
+ //------------------------------------------------------------------------
+ inline const trans_affine& trans_affine::premultiply(const trans_affine& m)
+ {
+ trans_affine t = m;
+ return *this = t.multiply(*this);
+ }
+
+
+ //====================================================trans_affine_rotation
+ // Rotation matrix. sin() and cos() are calculated twice for the same angle.
+ // There's no harm because the performance of sin()/cos() is very good on all
+ // modern processors. Besides, this operation is not going to be invoked too
+ // often.
+ class trans_affine_rotation : public trans_affine
+ {
+ public:
+ trans_affine_rotation(double a) :
+ trans_affine(cos(a), sin(a), -sin(a), cos(a), 0.0, 0.0)
+ {}
+ };
+
+ //====================================================trans_affine_scaling
+ // Scaling matrix. sx, sy - scale coefficients by X and Y respectively
+ class trans_affine_scaling : public trans_affine
+ {
+ public:
+ trans_affine_scaling(double sx, double sy) :
+ trans_affine(sx, 0.0, 0.0, sy, 0.0, 0.0)
+ {}
+
+ trans_affine_scaling(double s) :
+ trans_affine(s, 0.0, 0.0, s, 0.0, 0.0)
+ {}
+ };
+
+ //================================================trans_affine_translation
+ // Translation matrix
+ class trans_affine_translation : public trans_affine
+ {
+ public:
+ trans_affine_translation(double tx, double ty) :
+ trans_affine(1.0, 0.0, 0.0, 1.0, tx, ty)
+ {}
+ };
+
+ //====================================================trans_affine_skewing
+ // Sckewing (shear) matrix
+ class trans_affine_skewing : public trans_affine
+ {
+ public:
+ trans_affine_skewing(double sx, double sy) :
+ trans_affine(1.0, tan(sy), tan(sx), 1.0, 0.0, 0.0)
+ {}
+ };
+
+
+
+}
+
+
+#endif
+
diff --git a/agg/inc/agg_trans_bilinear.h b/agg/inc/agg_trans_bilinear.h
new file mode 100755
index 000000000000..7398a866d3b0
--- /dev/null
+++ b/agg/inc/agg_trans_bilinear.h
@@ -0,0 +1,166 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Bilinear 2D transformations
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_TRANS_BILINEAR_INCLUDED
+#define AGG_TRANS_BILINEAR_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_simul_eq.h"
+
+namespace agg
+{
+
+ //==========================================================trans_bilinear
+ class trans_bilinear
+ {
+ public:
+ //--------------------------------------------------------------------
+ trans_bilinear() : m_valid(false) {}
+
+ //--------------------------------------------------------------------
+ // Arbitrary quadrangle transformations
+ trans_bilinear(const double* src, const double* dst)
+ {
+ quad_to_quad(src, dst);
+ }
+
+
+ //--------------------------------------------------------------------
+ // Direct transformations
+ trans_bilinear(double x1, double y1, double x2, double y2,
+ const double* quad)
+ {
+ rect_to_quad(x1, y1, x2, y2, quad);
+ }
+
+
+ //--------------------------------------------------------------------
+ // Reverse transformations
+ trans_bilinear(const double* quad,
+ double x1, double y1, double x2, double y2)
+ {
+ quad_to_rect(quad, x1, y1, x2, y2);
+ }
+
+
+ //--------------------------------------------------------------------
+ // Set the transformations using two arbitrary quadrangles.
+ void quad_to_quad(const double* src, const double* dst)
+ {
+ double left[4][4];
+ double right[4][2];
+
+ unsigned i;
+ for(i = 0; i < 4; i++)
+ {
+ unsigned ix = i * 2;
+ unsigned iy = ix + 1;
+ left[i][0] = 1.0;
+ left[i][1] = src[ix] * src[iy];
+ left[i][2] = src[ix];
+ left[i][3] = src[iy];
+
+ right[i][0] = dst[ix];
+ right[i][1] = dst[iy];
+ }
+ m_valid = simul_eq<4, 2>::solve(left, right, m_mtx);
+ }
+
+
+ //--------------------------------------------------------------------
+ // Set the direct transformations, i.e., rectangle -> quadrangle
+ void rect_to_quad(double x1, double y1, double x2, double y2,
+ const double* quad)
+ {
+ double src[8];
+ src[0] = src[6] = x1;
+ src[2] = src[4] = x2;
+ src[1] = src[3] = y1;
+ src[5] = src[7] = y2;
+ quad_to_quad(src, quad);
+ }
+
+
+ //--------------------------------------------------------------------
+ // Set the reverse transformations, i.e., quadrangle -> rectangle
+ void quad_to_rect(const double* quad,
+ double x1, double y1, double x2, double y2)
+ {
+ double dst[8];
+ dst[0] = dst[6] = x1;
+ dst[2] = dst[4] = x2;
+ dst[1] = dst[3] = y1;
+ dst[5] = dst[7] = y2;
+ quad_to_quad(quad, dst);
+ }
+
+ //--------------------------------------------------------------------
+ // Check if the equations were solved successfully
+ bool is_valid() const { return m_valid; }
+
+ //--------------------------------------------------------------------
+ // Transform a point (x, y)
+ void transform(double* x, double* y) const
+ {
+ double tx = *x;
+ double ty = *y;
+ double xy = tx * ty;
+ *x = m_mtx[0][0] + m_mtx[1][0] * xy + m_mtx[2][0] * tx + m_mtx[3][0] * ty;
+ *y = m_mtx[0][1] + m_mtx[1][1] * xy + m_mtx[2][1] * tx + m_mtx[3][1] * ty;
+ }
+
+
+ //--------------------------------------------------------------------
+ class iterator_x
+ {
+ double inc_x;
+ double inc_y;
+
+ public:
+ double x;
+ double y;
+
+ iterator_x() {}
+ iterator_x(double tx, double ty, double step, const double m[4][2]) :
+ inc_x(m[1][0] * step * ty + m[2][0] * step),
+ inc_y(m[1][1] * step * ty + m[2][1] * step),
+ x(m[0][0] + m[1][0] * tx * ty + m[2][0] * tx + m[3][0] * ty),
+ y(m[0][1] + m[1][1] * tx * ty + m[2][1] * tx + m[3][1] * ty)
+ {
+ }
+
+ void operator ++ ()
+ {
+ x += inc_x;
+ y += inc_y;
+ }
+ };
+
+ iterator_x begin(double x, double y, double step) const
+ {
+ return iterator_x(x, y, step, m_mtx);
+ }
+
+ private:
+ double m_mtx[4][2];
+ bool m_valid;
+ };
+
+}
+
+#endif
diff --git a/agg/inc/agg_trans_double_path.h b/agg/inc/agg_trans_double_path.h
new file mode 100755
index 000000000000..16ea9f7264bd
--- /dev/null
+++ b/agg/inc/agg_trans_double_path.h
@@ -0,0 +1,131 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_TRANS_DOUBLE_PATH_INCLUDED
+#define AGG_TRANS_DOUBLE_PATH_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_vertex_sequence.h"
+
+namespace agg
+{
+
+ // See also: agg_trans_double_path.cpp
+ //
+ //-------------------------------------------------------trans_double_path
+ class trans_double_path
+ {
+ enum status_e
+ {
+ initial,
+ making_path,
+ ready
+ };
+
+ public:
+ typedef vertex_sequence<vertex_dist, 6> vertex_storage;
+
+ trans_double_path();
+
+ //--------------------------------------------------------------------
+ void base_length(double v) { m_base_length = v; }
+ double base_length() const { return m_base_length; }
+
+ //--------------------------------------------------------------------
+ void base_height(double v) { m_base_height = v; }
+ double base_height() const { return m_base_height; }
+
+ //--------------------------------------------------------------------
+ void preserve_x_scale(bool f) { m_preserve_x_scale = f; }
+ bool preserve_x_scale() const { return m_preserve_x_scale; }
+
+ //--------------------------------------------------------------------
+ void reset();
+ void move_to1(double x, double y);
+ void line_to1(double x, double y);
+ void move_to2(double x, double y);
+ void line_to2(double x, double y);
+ void finalize_paths();
+
+ //--------------------------------------------------------------------
+ template<class VertexSource1, class VertexSource2>
+ void add_paths(VertexSource1& vs1, VertexSource2& vs2,
+ unsigned path1_id=0, unsigned path2_id=0)
+ {
+ double x;
+ double y;
+
+ unsigned cmd;
+
+ vs1.rewind(path1_id);
+ while(!is_stop(cmd = vs1.vertex(&x, &y)))
+ {
+ if(is_move_to(cmd))
+ {
+ move_to1(x, y);
+ }
+ else
+ {
+ if(is_vertex(cmd))
+ {
+ line_to1(x, y);
+ }
+ }
+ }
+
+ vs2.rewind(path2_id);
+ while(!is_stop(cmd = vs2.vertex(&x, &y)))
+ {
+ if(is_move_to(cmd))
+ {
+ move_to2(x, y);
+ }
+ else
+ {
+ if(is_vertex(cmd))
+ {
+ line_to2(x, y);
+ }
+ }
+ }
+ finalize_paths();
+ }
+
+ //--------------------------------------------------------------------
+ double total_length1() const;
+ double total_length2() const;
+ void transform(double *x, double *y) const;
+
+ private:
+ double finalize_path(vertex_storage& vertices);
+ void transform1(const vertex_storage& vertices,
+ double kindex, double kx,
+ double *x, double* y) const;
+
+ vertex_storage m_src_vertices1;
+ vertex_storage m_src_vertices2;
+ double m_base_length;
+ double m_base_height;
+ double m_kindex1;
+ double m_kindex2;
+ status_e m_status1;
+ status_e m_status2;
+ bool m_preserve_x_scale;
+ };
+
+}
+
+
+#endif
diff --git a/agg/inc/agg_trans_lens.h b/agg/inc/agg_trans_lens.h
new file mode 100755
index 000000000000..ad900686c3fd
--- /dev/null
+++ b/agg/inc/agg_trans_lens.h
@@ -0,0 +1,79 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.1
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_WARP_MAGNIFIER_INCLUDED
+#define AGG_WARP_MAGNIFIER_INCLUDED
+
+#include <math.h>
+#include "agg_basics.h"
+
+
+namespace agg
+{
+
+ class trans_warp_magnifier
+ {
+ public:
+ trans_warp_magnifier() : m_xc(0.0), m_yc(0.0), m_magn(1.0), m_radius(1.0), m_warp(false) {}
+
+ void center(double x, double y) { m_xc = x; m_yc = y; }
+ void magnification(double m) { m_magn = m; }
+ void radius(double r) { m_radius = r; }
+ void warp(bool w) { m_warp = w; }
+
+ void transform(double* x, double* y) const
+ {
+ double dx = *x - m_xc;
+ double dy = *y - m_yc;
+ double r = sqrt(dx * dx + dy * dy);
+ double rm = m_radius / m_magn;
+ if(r < rm)
+ {
+ *x = m_xc + dx * m_magn;
+ *y = m_yc + dy * m_magn;
+ return;
+ }
+
+ if(m_warp)
+ {
+ double m = (r + rm * (m_magn - 1.0)) / r;
+ *x = m_xc + dx * m;
+ *y = m_yc + dy * m;
+ return;
+ }
+
+ if(r < m_radius)
+ {
+ double m = m_radius / r;
+ *x = m_xc + dx * m;
+ *y = m_yc + dy * m;
+ }
+ }
+
+ private:
+ double m_xc;
+ double m_yc;
+ double m_magn;
+ double m_radius;
+ bool m_warp;
+ };
+
+
+
+}
+
+
+#endif
+
diff --git a/agg/inc/agg_trans_perspective.h b/agg/inc/agg_trans_perspective.h
new file mode 100755
index 000000000000..a127c9095ad2
--- /dev/null
+++ b/agg/inc/agg_trans_perspective.h
@@ -0,0 +1,192 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Perspective 2D transformations
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_TRANS_PERSPECTIVE_INCLUDED
+#define AGG_TRANS_PERSPECTIVE_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_simul_eq.h"
+
+namespace agg
+{
+ //=======================================================trans_perspective
+ class trans_perspective
+ {
+ public:
+ //--------------------------------------------------------------------
+ trans_perspective() : m_valid(false) {}
+
+
+ //--------------------------------------------------------------------
+ // Arbitrary quadrangle transformations
+ trans_perspective(const double* src, const double* dst)
+ {
+ quad_to_quad(src, dst);
+ }
+
+
+ //--------------------------------------------------------------------
+ // Direct transformations
+ trans_perspective(double x1, double y1, double x2, double y2,
+ const double* quad)
+ {
+ rect_to_quad(x1, y1, x2, y2, quad);
+ }
+
+
+ //--------------------------------------------------------------------
+ // Reverse transformations
+ trans_perspective(const double* quad,
+ double x1, double y1, double x2, double y2)
+ {
+ quad_to_rect(quad, x1, y1, x2, y2);
+ }
+
+
+ //--------------------------------------------------------------------
+ // Set the transformations using two arbitrary quadrangles.
+ void quad_to_quad(const double* src, const double* dst)
+ {
+
+ double left[8][8];
+ double right[8][1];
+
+ unsigned i;
+ for (i = 0; i < 4; i++)
+ {
+ unsigned ix = i * 2;
+ unsigned iy = ix + 1;
+
+ left[ix][0] = 1.0;
+ left[ix][1] = src[ix];
+ left[ix][2] = src[iy];
+ left[ix][3] = 0.0;
+ left[ix][4] = 0.0;
+ left[ix][5] = 0.0;
+ left[ix][6] = -src[ix] * dst[ix];
+ left[ix][7] = -src[iy] * dst[ix];
+ right[ix][0] = dst[ix];
+
+ left[iy][0] = 0.0;
+ left[iy][1] = 0.0;
+ left[iy][2] = 0.0;
+ left[iy][3] = 1.0;
+ left[iy][4] = src[ix];
+ left[iy][5] = src[iy];
+ left[iy][6] = -src[ix] * dst[iy];
+ left[iy][7] = -src[iy] * dst[iy];
+ right[iy][0] = dst[iy];
+ }
+ m_valid = simul_eq<8, 1>::solve(left, right, m_mtx);
+ }
+
+
+ //--------------------------------------------------------------------
+ // Set the direct transformations, i.e., rectangle -> quadrangle
+ void rect_to_quad(double x1, double y1, double x2, double y2,
+ const double* quad)
+ {
+ double src[8];
+ src[0] = src[6] = x1;
+ src[2] = src[4] = x2;
+ src[1] = src[3] = y1;
+ src[5] = src[7] = y2;
+ quad_to_quad(src, quad);
+ }
+
+
+ //--------------------------------------------------------------------
+ // Set the reverse transformations, i.e., quadrangle -> rectangle
+ void quad_to_rect(const double* quad,
+ double x1, double y1, double x2, double y2)
+ {
+ double dst[8];
+ dst[0] = dst[6] = x1;
+ dst[2] = dst[4] = x2;
+ dst[1] = dst[3] = y1;
+ dst[5] = dst[7] = y2;
+ quad_to_quad(quad, dst);
+ }
+
+ //--------------------------------------------------------------------
+ // Check if the equations were solved successfully
+ bool is_valid() const { return m_valid; }
+
+ //--------------------------------------------------------------------
+ // Transform a point (x, y)
+ void transform(double* x, double* y) const
+ {
+ double tx = *x;
+ double ty = *y;
+ double d = 1.0 / (m_mtx[6][0] * tx + m_mtx[7][0] * ty + 1.0);
+ *x = (m_mtx[0][0] + m_mtx[1][0] * tx + m_mtx[2][0] * ty) * d;
+ *y = (m_mtx[3][0] + m_mtx[4][0] * tx + m_mtx[5][0] * ty) * d;
+ }
+
+ //--------------------------------------------------------------------
+ class iterator_x
+ {
+ double den;
+ double den_step;
+ double nom_x;
+ double nom_x_step;
+ double nom_y;
+ double nom_y_step;
+
+ public:
+ double x;
+ double y;
+
+ iterator_x() {}
+ iterator_x(double tx, double ty, double step, const double m[8][1]) :
+ den(m[6][0] * tx + m[7][0] * ty + 1.0),
+ den_step(m[6][0] * step),
+ nom_x(m[0][0] + m[1][0] * tx + m[2][0] * ty),
+ nom_x_step(m[1][0] * step),
+ nom_y(m[3][0] + m[4][0] * tx + m[5][0] * ty),
+ nom_y_step(m[4][0] * step),
+ x(nom_x / den),
+ y(nom_y / den)
+ {
+ }
+
+ void operator ++ ()
+ {
+ den += den_step;
+ nom_x += nom_x_step;
+ nom_y += nom_y_step;
+ double d = 1.0 / den;
+ x = nom_x * d;
+ y = nom_y * d;
+ }
+ };
+
+ //--------------------------------------------------------------------
+ iterator_x begin(double x, double y, double step) const
+ {
+ return iterator_x(x, y, step, m_mtx);
+ }
+
+ private:
+ double m_mtx[8][1];
+ bool m_valid;
+ };
+
+}
+
+#endif
diff --git a/agg/inc/agg_trans_single_path.h b/agg/inc/agg_trans_single_path.h
new file mode 100755
index 000000000000..68369626c396
--- /dev/null
+++ b/agg/inc/agg_trans_single_path.h
@@ -0,0 +1,97 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_TRANS_SINGLE_PATH_INCLUDED
+#define AGG_TRANS_SINGLE_PATH_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_vertex_sequence.h"
+
+namespace agg
+{
+
+ // See also: agg_trans_single_path.cpp
+ //
+ //-------------------------------------------------------trans_single_path
+ class trans_single_path
+ {
+ enum status_e
+ {
+ initial,
+ making_path,
+ ready
+ };
+
+ public:
+ typedef vertex_sequence<vertex_dist, 6> vertex_storage;
+
+ trans_single_path();
+
+ //--------------------------------------------------------------------
+ void base_length(double v) { m_base_length = v; }
+ double base_length() const { return m_base_length; }
+
+ //--------------------------------------------------------------------
+ void preserve_x_scale(bool f) { m_preserve_x_scale = f; }
+ bool preserve_x_scale() const { return m_preserve_x_scale; }
+
+ //--------------------------------------------------------------------
+ void reset();
+ void move_to(double x, double y);
+ void line_to(double x, double y);
+ void finalize_path();
+
+ //--------------------------------------------------------------------
+ template<class VertexSource>
+ void add_path(VertexSource& vs, unsigned path_id=0)
+ {
+ double x;
+ double y;
+
+ unsigned cmd;
+ vs.rewind(path_id);
+ while(!is_stop(cmd = vs.vertex(&x, &y)))
+ {
+ if(is_move_to(cmd))
+ {
+ move_to(x, y);
+ }
+ else
+ {
+ if(is_vertex(cmd))
+ {
+ line_to(x, y);
+ }
+ }
+ }
+ finalize_path();
+ }
+
+ //--------------------------------------------------------------------
+ double total_length() const;
+ void transform(double *x, double *y) const;
+
+ private:
+ vertex_storage m_src_vertices;
+ double m_base_length;
+ double m_kindex;
+ status_e m_status;
+ bool m_preserve_x_scale;
+ };
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_trans_viewport.h b/agg/inc/agg_trans_viewport.h
new file mode 100755
index 000000000000..b77a7204feb9
--- /dev/null
+++ b/agg/inc/agg_trans_viewport.h
@@ -0,0 +1,304 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Viewport transformer - simple orthogonal conversions from world coordinates
+// to screen (device) ones.
+//
+//----------------------------------------------------------------------------
+
+#ifndef AGG_TRANS_VIEWPORT_INCLUDED
+#define AGG_TRANS_VIEWPORT_INCLUDED
+
+#include <string.h>
+#include "agg_basics.h"
+
+
+namespace agg
+{
+
+ enum aspect_ratio_e
+ {
+ aspect_ratio_stretch,
+ aspect_ratio_meet,
+ aspect_ratio_slice
+ };
+
+
+ //----------------------------------------------------------trans_viewport
+ class trans_viewport
+ {
+ public:
+ //-------------------------------------------------------------------
+ trans_viewport() :
+ m_world_x1(0.0),
+ m_world_y1(0.0),
+ m_world_x2(1.0),
+ m_world_y2(1.0),
+ m_device_x1(0.0),
+ m_device_y1(0.0),
+ m_device_x2(1.0),
+ m_device_y2(1.0),
+ m_aspect(aspect_ratio_stretch),
+ m_align_x(0.5),
+ m_align_y(0.5),
+ m_wx1(0.0),
+ m_wy1(0.0),
+ m_wx2(1.0),
+ m_wy2(1.0),
+ m_dx1(0.0),
+ m_dy1(0.0),
+ m_kx(1.0),
+ m_ky(1.0)
+ {}
+
+ //-------------------------------------------------------------------
+ void preserve_aspect_ratio(double alignx,
+ double aligny,
+ aspect_ratio_e aspect)
+ {
+ m_align_x = alignx;
+ m_align_y = aligny;
+ m_aspect = aspect;
+ update();
+ }
+
+ //-------------------------------------------------------------------
+ void device_viewport(double x1, double y1, double x2, double y2)
+ {
+ m_device_x1 = x1;
+ m_device_y1 = y1;
+ m_device_x2 = x2;
+ m_device_y2 = y2;
+ update();
+ }
+
+ //-------------------------------------------------------------------
+ void world_viewport(double x1, double y1, double x2, double y2)
+ {
+ m_world_x1 = x1;
+ m_world_y1 = y1;
+ m_world_x2 = x2;
+ m_world_y2 = y2;
+ update();
+ }
+
+ //-------------------------------------------------------------------
+ void device_viewport(double* x1, double* y1, double* x2, double* y2) const
+ {
+ *x1 = m_device_x1;
+ *y1 = m_device_y1;
+ *x2 = m_device_x2;
+ *y2 = m_device_y2;
+ }
+
+ //-------------------------------------------------------------------
+ void world_viewport(double* x1, double* y1, double* x2, double* y2) const
+ {
+ *x1 = m_world_x1;
+ *y1 = m_world_y1;
+ *x2 = m_world_x2;
+ *y2 = m_world_y2;
+ }
+
+ //-------------------------------------------------------------------
+ void world_viewport_actual(double* x1, double* y1,
+ double* x2, double* y2) const
+ {
+ *x1 = m_wx1;
+ *y1 = m_wy1;
+ *x2 = m_wx2;
+ *y2 = m_wy2;
+ }
+
+ //-------------------------------------------------------------------
+ double align_x() const { return m_align_x; }
+ double align_y() const { return m_align_y; }
+ aspect_ratio_e aspect_ratio() const { return m_aspect; }
+
+ //-------------------------------------------------------------------
+ void transform(double* x, double* y) const
+ {
+ *x = (*x - m_wx1) * m_kx + m_dx1;
+ *y = (*y - m_wy1) * m_ky + m_dy1;
+ }
+
+ //-------------------------------------------------------------------
+ void inverse_transform(double* x, double* y) const
+ {
+ *x = (*x - m_dx1) / m_kx + m_wx1;
+ *y = (*y - m_dy1) / m_ky + m_wy1;
+ }
+
+ //-------------------------------------------------------------------
+ double scale_x() const
+ {
+ return m_kx;
+ }
+
+ //-------------------------------------------------------------------
+ double scale_y() const
+ {
+ return m_ky;
+ }
+
+ //-------------------------------------------------------------------
+ double scale() const
+ {
+ return (m_kx + m_ky) * 0.5;
+ }
+
+
+ //-------------------------------------------------------------------
+ unsigned byte_size() const
+ {
+ return
+ sizeof(m_world_x1) +
+ sizeof(m_world_y1) +
+ sizeof(m_world_x2) +
+ sizeof(m_world_y2) +
+ sizeof(m_device_x1) +
+ sizeof(m_device_y1) +
+ sizeof(m_device_x2) +
+ sizeof(m_device_y2) +
+ sizeof(m_aspect) +
+ sizeof(m_align_x) +
+ sizeof(m_align_y) +
+ sizeof(m_wx1) +
+ sizeof(m_wy1) +
+ sizeof(m_wx2) +
+ sizeof(m_wy2) +
+ sizeof(m_dx1) +
+ sizeof(m_dy1) +
+ sizeof(m_kx) +
+ sizeof(m_ky);
+ }
+
+ void serialize(int8u* ptr) const
+ {
+ memcpy(ptr, &m_world_x1, sizeof(m_world_x1)); ptr += sizeof(m_world_x1);
+ memcpy(ptr, &m_world_y1, sizeof(m_world_y1)); ptr += sizeof(m_world_y1);
+ memcpy(ptr, &m_world_x2, sizeof(m_world_x2)); ptr += sizeof(m_world_x2);
+ memcpy(ptr, &m_world_y2, sizeof(m_world_y2)); ptr += sizeof(m_world_y2);
+ memcpy(ptr, &m_device_x1, sizeof(m_device_x1)); ptr += sizeof(m_device_x1);
+ memcpy(ptr, &m_device_y1, sizeof(m_device_y1)); ptr += sizeof(m_device_y1);
+ memcpy(ptr, &m_device_x2, sizeof(m_device_x2)); ptr += sizeof(m_device_x2);
+ memcpy(ptr, &m_device_y2, sizeof(m_device_y2)); ptr += sizeof(m_device_y2);
+ memcpy(ptr, &m_aspect, sizeof(m_aspect)); ptr += sizeof(m_aspect);
+ memcpy(ptr, &m_align_x, sizeof(m_align_x)); ptr += sizeof(m_align_x);
+ memcpy(ptr, &m_align_y, sizeof(m_align_y)); ptr += sizeof(m_align_y);
+ memcpy(ptr, &m_wx1, sizeof(m_wx1)); ptr += sizeof(m_wx1);
+ memcpy(ptr, &m_wy1, sizeof(m_wy1)); ptr += sizeof(m_wy1);
+ memcpy(ptr, &m_wx2, sizeof(m_wx2)); ptr += sizeof(m_wx2);
+ memcpy(ptr, &m_wy2, sizeof(m_wy2)); ptr += sizeof(m_wy2);
+ memcpy(ptr, &m_dx1, sizeof(m_dx1)); ptr += sizeof(m_dx1);
+ memcpy(ptr, &m_dy1, sizeof(m_dy1)); ptr += sizeof(m_dy1);
+ memcpy(ptr, &m_kx, sizeof(m_kx)); ptr += sizeof(m_kx);
+ memcpy(ptr, &m_ky, sizeof(m_ky)); ptr += sizeof(m_ky);
+ }
+
+ void deserialize(const int8u* ptr)
+ {
+ memcpy(&m_world_x1, ptr, sizeof(m_world_x1)); ptr += sizeof(m_world_x1);
+ memcpy(&m_world_y1, ptr, sizeof(m_world_y1)); ptr += sizeof(m_world_y1);
+ memcpy(&m_world_x2, ptr, sizeof(m_world_x2)); ptr += sizeof(m_world_x2);
+ memcpy(&m_world_y2, ptr, sizeof(m_world_y2)); ptr += sizeof(m_world_y2);
+ memcpy(&m_device_x1, ptr, sizeof(m_device_x1)); ptr += sizeof(m_device_x1);
+ memcpy(&m_device_y1, ptr, sizeof(m_device_y1)); ptr += sizeof(m_device_y1);
+ memcpy(&m_device_x2, ptr, sizeof(m_device_x2)); ptr += sizeof(m_device_x2);
+ memcpy(&m_device_y2, ptr, sizeof(m_device_y2)); ptr += sizeof(m_device_y2);
+ memcpy(&m_aspect, ptr, sizeof(m_aspect)); ptr += sizeof(m_aspect);
+ memcpy(&m_align_x, ptr, sizeof(m_align_x)); ptr += sizeof(m_align_x);
+ memcpy(&m_align_y, ptr, sizeof(m_align_y)); ptr += sizeof(m_align_y);
+ memcpy(&m_wx1, ptr, sizeof(m_wx1)); ptr += sizeof(m_wx1);
+ memcpy(&m_wy1, ptr, sizeof(m_wy1)); ptr += sizeof(m_wy1);
+ memcpy(&m_wx2, ptr, sizeof(m_wx2)); ptr += sizeof(m_wx2);
+ memcpy(&m_wy2, ptr, sizeof(m_wy2)); ptr += sizeof(m_wy2);
+ memcpy(&m_dx1, ptr, sizeof(m_dx1)); ptr += sizeof(m_dx1);
+ memcpy(&m_dy1, ptr, sizeof(m_dy1)); ptr += sizeof(m_dy1);
+ memcpy(&m_kx, ptr, sizeof(m_kx)); ptr += sizeof(m_kx);
+ memcpy(&m_ky, ptr, sizeof(m_ky)); ptr += sizeof(m_ky);
+ }
+
+ private:
+ void update();
+
+ double m_world_x1;
+ double m_world_y1;
+ double m_world_x2;
+ double m_world_y2;
+ double m_device_x1;
+ double m_device_y1;
+ double m_device_x2;
+ double m_device_y2;
+ aspect_ratio_e m_aspect;
+ double m_align_x;
+ double m_align_y;
+ double m_wx1;
+ double m_wy1;
+ double m_wx2;
+ double m_wy2;
+ double m_dx1;
+ double m_dy1;
+ double m_kx;
+ double m_ky;
+ };
+
+
+
+ //-----------------------------------------------------------------------
+ inline void trans_viewport::update()
+ {
+ double world_x1 = m_world_x1;
+ double world_y1 = m_world_y1;
+ double world_x2 = m_world_x2;
+ double world_y2 = m_world_y2;
+ double device_x1 = m_device_x1;
+ double device_y1 = m_device_y1;
+ double device_x2 = m_device_x2;
+ double device_y2 = m_device_y2;
+ if(m_aspect != aspect_ratio_stretch)
+ {
+ double d;
+ m_kx = (device_x2 - device_x1) / (world_x2 - world_x1);
+ m_ky = (device_y2 - device_y1) / (world_y2 - world_y1);
+
+ if((m_aspect == aspect_ratio_meet) == (m_kx < m_ky))
+ {
+ d = (world_y2 - world_y1) * m_ky / m_kx;
+ world_y1 += (world_y2 - world_y1 - d) * m_align_y;
+ world_y2 = world_y1 + d;
+ }
+ else
+ {
+ d = (world_x2 - world_x1) * m_kx / m_ky;
+ world_x1 += (world_x2 - world_x1 - d) * m_align_x;
+ world_x2 = world_x1 + d;
+ }
+ }
+ m_wx1 = world_x1;
+ m_wy1 = world_y1;
+ m_wx2 = world_x2;
+ m_wy2 = world_y2;
+ m_dx1 = device_x1;
+ m_dy1 = device_y1;
+ m_kx = (device_x2 - device_x1) / (world_x2 - world_x1);
+ m_ky = (device_y2 - device_y1) / (world_y2 - world_y1);
+ }
+
+
+}
+
+
+#endif
diff --git a/agg/inc/agg_trans_warp_magnifier.h b/agg/inc/agg_trans_warp_magnifier.h
new file mode 100755
index 000000000000..d71f567af2ca
--- /dev/null
+++ b/agg/inc/agg_trans_warp_magnifier.h
@@ -0,0 +1,51 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_WARP_MAGNIFIER_INCLUDED
+#define AGG_WARP_MAGNIFIER_INCLUDED
+
+
+namespace agg
+{
+
+ //----------------------------------------------------trans_warp_magnifier
+ //
+ // See Inmplementation agg_trans_warp_magnifier.cpp
+ //
+ class trans_warp_magnifier
+ {
+ public:
+ trans_warp_magnifier() : m_xc(0.0), m_yc(0.0), m_magn(1.0), m_radius(1.0) {}
+
+ void center(double x, double y) { m_xc = x; m_yc = y; }
+ void magnification(double m) { m_magn = m; }
+ void radius(double r) { m_radius = r; }
+
+ void transform(double* x, double* y) const;
+ void inverse_transform(double* x, double* y) const;
+
+ private:
+ double m_xc;
+ double m_yc;
+ double m_magn;
+ double m_radius;
+ };
+
+
+}
+
+
+#endif
+
diff --git a/agg/inc/agg_vcgen_bspline.h b/agg/inc/agg_vcgen_bspline.h
new file mode 100755
index 000000000000..7490a50a6764
--- /dev/null
+++ b/agg/inc/agg_vcgen_bspline.h
@@ -0,0 +1,74 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_VCGEN_BSPLINE_INCLUDED
+#define AGG_VCGEN_BSPLINE_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_array.h"
+#include "agg_bspline.h"
+
+
+namespace agg
+{
+
+ //==========================================================vcgen_bspline
+ class vcgen_bspline
+ {
+ enum status_e
+ {
+ initial,
+ ready,
+ polygon,
+ end_poly,
+ stop
+ };
+
+ public:
+ typedef pod_deque<point_type, 6> vertex_storage;
+
+ vcgen_bspline();
+
+ void interpolation_step(double v) { m_interpolation_step = v; }
+ double interpolation_step() const { return m_interpolation_step; }
+
+ // Vertex Generator Interface
+ void remove_all();
+ void add_vertex(double x, double y, unsigned cmd);
+
+ // Vertex Source Interface
+ void rewind(unsigned id);
+ unsigned vertex(double* x, double* y);
+
+ private:
+ vcgen_bspline(const vcgen_bspline&);
+ const vcgen_bspline& operator = (const vcgen_bspline&);
+
+ vertex_storage m_src_vertices;
+ bspline m_spline_x;
+ bspline m_spline_y;
+ double m_interpolation_step;
+ unsigned m_closed;
+ status_e m_status;
+ unsigned m_src_vertex;
+ double m_cur_abscissa;
+ double m_max_abscissa;
+ };
+
+}
+
+
+#endif
+
diff --git a/agg/inc/agg_vcgen_contour.h b/agg/inc/agg_vcgen_contour.h
new file mode 100755
index 000000000000..1c5428206640
--- /dev/null
+++ b/agg/inc/agg_vcgen_contour.h
@@ -0,0 +1,96 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_VCGEN_CONTOUR_INCLUDED
+#define AGG_VCGEN_CONTOUR_INCLUDED
+
+#include "agg_math_stroke.h"
+#include "agg_vertex_iterator.h"
+
+namespace agg
+{
+
+ //----------------------------------------------------------vcgen_contour
+ //
+ // See Implementation agg_vcgen_contour.cpp
+ //
+ class vcgen_contour
+ {
+ enum status_e
+ {
+ initial,
+ ready,
+ outline,
+ out_vertices,
+ end_poly,
+ stop
+ };
+
+ public:
+ typedef vertex_sequence<vertex_dist, 6> vertex_storage;
+ typedef pod_deque<point_type, 6> coord_storage;
+
+ vcgen_contour();
+
+ void line_join(line_join_e lj) { m_line_join = lj; }
+ void inner_line_join(line_join_e lj) { m_inner_line_join = lj; }
+ void width(double w) { m_width = w * 0.5; }
+ void miter_limit(double ml) { m_miter_limit = ml; }
+ void miter_limit_theta(double t);
+ void inner_miter_limit(double ml) { m_inner_miter_limit = ml; }
+ void approximation_scale(double as) { m_approx_scale = as; }
+ void auto_detect_orientation(bool v) { m_auto_detect = v; }
+
+ line_join_e line_join() const { return m_line_join; }
+ line_join_e inner_line_join() const { return m_inner_line_join; }
+ double width() const { return m_width * 2.0; }
+ double miter_limit() const { return m_miter_limit; }
+ double inner_miter_limit() const { return m_inner_miter_limit; }
+ double approximation_scale() const { return m_approx_scale; }
+ bool auto_detect_orientation() const { return m_auto_detect; }
+
+ // Generator interface
+ void remove_all();
+ void add_vertex(double x, double y, unsigned cmd);
+
+ // Vertex Source Interface
+ void rewind(unsigned id);
+ unsigned vertex(double* x, double* y);
+
+ private:
+ vcgen_contour(const vcgen_contour&);
+ const vcgen_contour& operator = (const vcgen_contour&);
+
+ vertex_storage m_src_vertices;
+ coord_storage m_out_vertices;
+ double m_width;
+ line_join_e m_line_join;
+ line_join_e m_inner_line_join;
+ double m_approx_scale;
+ double m_abs_width;
+ double m_signed_width;
+ double m_miter_limit;
+ double m_inner_miter_limit;
+ status_e m_status;
+ unsigned m_src_vertex;
+ unsigned m_out_vertex;
+ unsigned m_closed;
+ unsigned m_orientation;
+ bool m_auto_detect;
+ };
+
+}
+
+#endif
diff --git a/agg/inc/agg_vcgen_dash.h b/agg/inc/agg_vcgen_dash.h
new file mode 100755
index 000000000000..cc4c86dea833
--- /dev/null
+++ b/agg/inc/agg_vcgen_dash.h
@@ -0,0 +1,99 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Line dash generator
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_VCGEN_DASH_INCLUDED
+#define AGG_VCGEN_DASH_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_vertex_sequence.h"
+#include "agg_vertex_iterator.h"
+
+namespace agg
+{
+
+ //---------------------------------------------------------------vcgen_dash
+ //
+ // See Implementation agg_vcgen_dash.cpp
+ //
+ class vcgen_dash
+ {
+ enum
+ {
+ max_dashes = 32
+ };
+
+ enum status_e
+ {
+ initial,
+ ready,
+ polyline,
+ stop
+ };
+
+ public:
+ typedef vertex_sequence<vertex_dist, 6> vertex_storage;
+
+ vcgen_dash();
+
+ void remove_all_dashes();
+ void add_dash(double dash_len, double gap_len);
+ void dash_start(double ds);
+
+ void shorten(double s) { m_shorten = s; }
+ double shorten() const { return m_shorten; }
+
+ // Vertex Generator Interface
+ void remove_all();
+ void add_vertex(double x, double y, unsigned cmd);
+
+ // Vertex Source Interface
+ void rewind(unsigned id);
+ unsigned vertex(double* x, double* y);
+
+ typedef vcgen_dash source_type;
+ typedef vertex_iterator<source_type> iterator;
+ iterator begin(unsigned id) { return iterator(*this, id); }
+ iterator end() { return iterator(path_cmd_stop); }
+
+ private:
+ vcgen_dash(const vcgen_dash&);
+ const vcgen_dash& operator = (const vcgen_dash&);
+
+ void calc_dash_start(double ds);
+
+ double m_dashes[max_dashes];
+ double m_total_dash_len;
+ unsigned m_num_dashes;
+ double m_dash_start;
+ double m_shorten;
+ double m_curr_dash_start;
+ unsigned m_curr_dash;
+ double m_curr_rest;
+ const vertex_dist* m_v1;
+ const vertex_dist* m_v2;
+
+ vertex_storage m_src_vertices;
+ unsigned m_closed;
+ status_e m_status;
+ unsigned m_src_vertex;
+ };
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_vcgen_markers_term.h b/agg/inc/agg_vcgen_markers_term.h
new file mode 100755
index 000000000000..6f213811c290
--- /dev/null
+++ b/agg/inc/agg_vcgen_markers_term.h
@@ -0,0 +1,72 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_VCGEN_MARKERS_TERM_INCLUDED
+#define AGG_VCGEN_MARKERS_TERM_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_vertex_sequence.h"
+#include "agg_vertex_iterator.h"
+
+namespace agg
+{
+
+ //======================================================vcgen_markers_term
+ //
+ // See Implemantation agg_vcgen_markers_term.cpp
+ // Terminal markers generator (arrowhead/arrowtail)
+ //
+ //------------------------------------------------------------------------
+ class vcgen_markers_term
+ {
+ public:
+ vcgen_markers_term() : m_curr_id(0), m_curr_idx(0) {}
+
+ // Vertex Generator Interface
+ void remove_all();
+ void add_vertex(double x, double y, unsigned cmd);
+
+ // Vertex Source Interface
+ void rewind(unsigned id);
+ unsigned vertex(double* x, double* y);
+
+ typedef vcgen_markers_term source_type;
+ typedef vertex_iterator<source_type> iterator;
+ iterator begin(unsigned id) { return iterator(*this, id); }
+ iterator end() { return iterator(path_cmd_stop); }
+
+ private:
+ vcgen_markers_term(const vcgen_markers_term&);
+ const vcgen_markers_term& operator = (const vcgen_markers_term&);
+
+ struct coord_type
+ {
+ double x, y;
+
+ coord_type() {}
+ coord_type(double x_, double y_) : x(x_), y(y_) {}
+ };
+
+ typedef pod_deque<coord_type, 6> coord_storage;
+
+ coord_storage m_markers;
+ unsigned m_curr_id;
+ unsigned m_curr_idx;
+ };
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_vcgen_smooth_poly1.h b/agg/inc/agg_vcgen_smooth_poly1.h
new file mode 100755
index 000000000000..61ca14898328
--- /dev/null
+++ b/agg/inc/agg_vcgen_smooth_poly1.h
@@ -0,0 +1,87 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_VCGEN_SMOOTH_POLY1_INCLUDED
+#define AGG_VCGEN_SMOOTH_POLY1_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_vertex_sequence.h"
+
+
+namespace agg
+{
+
+ //======================================================vcgen_smooth_poly1
+ //
+ // See Implementation agg_vcgen_smooth_poly1.cpp
+ // Smooth polygon generator
+ //
+ //------------------------------------------------------------------------
+ class vcgen_smooth_poly1
+ {
+ enum status_e
+ {
+ initial,
+ ready,
+ polygon,
+ ctrl_b,
+ ctrl_e,
+ ctrl1,
+ ctrl2,
+ end_poly,
+ stop
+ };
+
+ public:
+ typedef vertex_sequence<vertex_dist, 6> vertex_storage;
+
+ vcgen_smooth_poly1();
+
+ void smooth_value(double v) { m_smooth_value = v * 0.5; }
+ double smooth_value() const { return m_smooth_value * 2.0; }
+
+ // Vertex Generator Interface
+ void remove_all();
+ void add_vertex(double x, double y, unsigned cmd);
+
+ // Vertex Source Interface
+ void rewind(unsigned id);
+ unsigned vertex(double* x, double* y);
+
+ private:
+ vcgen_smooth_poly1(const vcgen_smooth_poly1&);
+ const vcgen_smooth_poly1& operator = (const vcgen_smooth_poly1&);
+
+ void calculate(const vertex_dist& v0,
+ const vertex_dist& v1,
+ const vertex_dist& v2,
+ const vertex_dist& v3);
+
+ vertex_storage m_src_vertices;
+ double m_smooth_value;
+ unsigned m_closed;
+ status_e m_status;
+ unsigned m_src_vertex;
+ double m_ctrl1_x;
+ double m_ctrl1_y;
+ double m_ctrl2_x;
+ double m_ctrl2_y;
+ };
+
+}
+
+
+#endif
+
diff --git a/agg/inc/agg_vcgen_stroke.h b/agg/inc/agg_vcgen_stroke.h
new file mode 100755
index 000000000000..a73509acf3d9
--- /dev/null
+++ b/agg/inc/agg_vcgen_stroke.h
@@ -0,0 +1,114 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_VCGEN_STROKE_INCLUDED
+#define AGG_VCGEN_STROKE_INCLUDED
+
+#include "agg_math_stroke.h"
+#include "agg_vertex_iterator.h"
+
+
+namespace agg
+{
+
+ //============================================================vcgen_stroke
+ //
+ // See Implementation agg_vcgen_stroke.cpp
+ // Stroke generator
+ //
+ //------------------------------------------------------------------------
+ class vcgen_stroke
+ {
+ enum status_e
+ {
+ initial,
+ ready,
+ cap1,
+ cap2,
+ outline1,
+ close_first,
+ outline2,
+ out_vertices,
+ end_poly1,
+ end_poly2,
+ stop
+ };
+
+ public:
+ typedef vertex_sequence<vertex_dist, 6> vertex_storage;
+ typedef pod_deque<point_type, 6> coord_storage;
+
+ vcgen_stroke();
+
+ void line_cap(line_cap_e lc) { m_line_cap = lc; }
+ void line_join(line_join_e lj) { m_line_join = lj; }
+ void inner_line_join(line_join_e lj) { m_inner_line_join = lj; }
+
+ line_cap_e line_cap() const { return m_line_cap; }
+ line_join_e line_join() const { return m_line_join; }
+ line_join_e inner_line_join() const { return m_inner_line_join; }
+
+ void width(double w) { m_width = w * 0.5; }
+ void miter_limit(double ml) { m_miter_limit = ml; }
+ void miter_limit_theta(double t);
+ void inner_miter_limit(double ml) { m_inner_miter_limit = ml; }
+ void approximation_scale(double as) { m_approx_scale = as; }
+
+ double width() const { return m_width * 2.0; }
+ double miter_limit() const { return m_miter_limit; }
+ double inner_miter_limit() const { return m_inner_miter_limit; }
+ double approximation_scale() const { return m_approx_scale; }
+
+ void shorten(double s) { m_shorten = s; }
+ double shorten() const { return m_shorten; }
+
+ // Vertex Generator Interface
+ void remove_all();
+ void add_vertex(double x, double y, unsigned cmd);
+
+ // Vertex Source Interface
+ void rewind(unsigned id);
+ unsigned vertex(double* x, double* y);
+
+ typedef vcgen_stroke source_type;
+ typedef vertex_iterator<source_type> iterator;
+ iterator begin(unsigned id) { return iterator(*this, id); }
+ iterator end() { return iterator(path_cmd_stop); }
+
+ private:
+ vcgen_stroke(const vcgen_stroke&);
+ const vcgen_stroke& operator = (const vcgen_stroke&);
+
+ vertex_storage m_src_vertices;
+ coord_storage m_out_vertices;
+ double m_width;
+ double m_miter_limit;
+ double m_inner_miter_limit;
+ double m_approx_scale;
+ double m_shorten;
+ line_cap_e m_line_cap;
+ line_join_e m_line_join;
+ line_join_e m_inner_line_join;
+ unsigned m_closed;
+ status_e m_status;
+ status_e m_prev_status;
+ unsigned m_src_vertex;
+ unsigned m_out_vertex;
+ };
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_vcgen_vertex_sequence.h b/agg/inc/agg_vcgen_vertex_sequence.h
new file mode 100755
index 000000000000..7c4e9e4253e5
--- /dev/null
+++ b/agg/inc/agg_vcgen_vertex_sequence.h
@@ -0,0 +1,135 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_VCGEN_VERTEX_SEQUENCE_INCLUDED
+#define AGG_VCGEN_VERTEX_SEQUENCE_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_vertex_sequence.h"
+#include "agg_shorten_path.h"
+
+namespace agg
+{
+
+ //===================================================vcgen_vertex_sequence
+ class vcgen_vertex_sequence
+ {
+ public:
+ typedef vertex_dist_cmd vertex_type;
+ typedef vertex_sequence<vertex_type, 6> vertex_storage;
+
+ vcgen_vertex_sequence() :
+ m_flags(0),
+ m_cur_vertex(0),
+ m_shorten(0.0),
+ m_ready(false)
+ {
+ }
+
+ // Vertex Generator Interface
+ void remove_all();
+ void add_vertex(double x, double y, unsigned cmd);
+
+ // Vertex Source Interface
+ void rewind(unsigned id);
+ unsigned vertex(double* x, double* y);
+
+ void shorten(double s) { m_shorten = s; }
+ double shorten() const { return m_shorten; }
+
+ private:
+ vcgen_vertex_sequence(const vcgen_vertex_sequence&);
+ const vcgen_vertex_sequence& operator = (const vcgen_vertex_sequence&);
+
+ vertex_storage m_src_vertices;
+ unsigned m_flags;
+ unsigned m_cur_vertex;
+ double m_shorten;
+ bool m_ready;
+ };
+
+
+ //------------------------------------------------------------------------
+ inline void vcgen_vertex_sequence::remove_all()
+ {
+ m_ready = false;
+ m_src_vertices.remove_all();
+ m_cur_vertex = 0;
+ m_flags = 0;
+ }
+
+ //------------------------------------------------------------------------
+ inline void vcgen_vertex_sequence::add_vertex(double x, double y, unsigned cmd)
+ {
+ m_ready = false;
+ if(is_move_to(cmd))
+ {
+ m_src_vertices.modify_last(vertex_dist_cmd(x, y, cmd));
+ }
+ else
+ {
+ if(is_vertex(cmd))
+ {
+ m_src_vertices.add(vertex_dist_cmd(x, y, cmd));
+ }
+ else
+ {
+ m_flags = cmd & path_flags_mask;
+ }
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ inline void vcgen_vertex_sequence::rewind(unsigned)
+ {
+ if(!m_ready)
+ {
+ m_src_vertices.close(is_closed(m_flags));
+ shorten_path(m_src_vertices, m_shorten, get_close_flag(m_flags));
+ }
+ m_ready = true;
+ m_cur_vertex = 0;
+ }
+
+ //------------------------------------------------------------------------
+ inline unsigned vcgen_vertex_sequence::vertex(double* x, double* y)
+ {
+ if(!m_ready)
+ {
+ rewind(0);
+ }
+
+ if(m_cur_vertex == m_src_vertices.size())
+ {
+ ++m_cur_vertex;
+ return path_cmd_end_poly | m_flags;
+ }
+
+ if(m_cur_vertex > m_src_vertices.size())
+ {
+ return path_cmd_stop;
+ }
+
+ vertex_type& v = m_src_vertices[m_cur_vertex++];
+ *x = v.x;
+ *y = v.y;
+ return v.cmd;
+ }
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_vertex_iterator.h b/agg/inc/agg_vertex_iterator.h
new file mode 100755
index 000000000000..f22af0acb888
--- /dev/null
+++ b/agg/inc/agg_vertex_iterator.h
@@ -0,0 +1,133 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// classes: vertex_iterator
+// vertex_source_adaptor
+// vertex_source_adaptor_with_id
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_VERTEX_ITERATOR_INCLUDED
+#define AGG_VERTEX_ITERATOR_INCLUDED
+
+#include "agg_basics.h"
+
+
+namespace agg
+{
+
+ //---------------------------------------------------------vertex_iterator
+ template<class VertexSource> class vertex_iterator
+ {
+ public:
+ vertex_iterator() {}
+ vertex_iterator(unsigned cmd) { m_vertex.cmd = cmd; }
+ vertex_iterator(const vertex_iterator& i) : m_vs(i.m_vs), m_vertex(i.m_vertex) {}
+ vertex_iterator(VertexSource& vs, unsigned id) : m_vs(&vs)
+ {
+ m_vs->rewind(id);
+ m_vertex.cmd = m_vs->vertex(&m_vertex.x, &m_vertex.y);
+ }
+ vertex_iterator& operator++()
+ {
+ m_vertex.cmd = m_vs->vertex(&m_vertex.x, &m_vertex.y);
+ return *this;
+ }
+
+ const vertex_type& operator*() const { return m_vertex; }
+ const vertex_type* operator->() const { return &m_vertex; }
+
+ bool operator != (const vertex_iterator& i)
+ {
+ return m_vertex.cmd != i.m_vertex.cmd;
+ }
+
+ private:
+ VertexSource* m_vs;
+ vertex_type m_vertex;
+ };
+
+
+ //---------------------------------------------------vertex_source_adaptor
+ template<class VertexContainer> class vertex_source_adaptor
+ {
+ public:
+ vertex_source_adaptor(const VertexContainer& container) :
+ m_container(&container) {}
+
+ void rewind(unsigned)
+ {
+ m_iterator = m_container->begin();
+ m_end = m_container->end();
+ }
+
+ unsigned vertex(double* x, double* y)
+ {
+ unsigned cmd = path_cmd_stop;
+ if(m_iterator != m_end)
+ {
+ *x = m_iterator->x;
+ *y = m_iterator->y;
+ cmd = m_iterator->cmd;
+ ++m_iterator;
+ }
+ return cmd;
+ }
+
+ private:
+ const VertexContainer* m_container;
+ typename VertexContainer::const_iterator m_iterator;
+ typename VertexContainer::const_iterator m_end;
+ };
+
+
+
+ //-------------------------------------------vertex_source_adaptor_with_id
+ template<class VertexContainer> class vertex_source_adaptor_with_id
+ {
+ public:
+ vertex_source_adaptor_with_id(const VertexContainer& container) :
+ m_container(&container) {}
+
+ void rewind(unsigned id)
+ {
+ m_iterator = m_container->begin(id);
+ m_end = m_container->end();
+ }
+
+ unsigned vertex(double* x, double* y)
+ {
+ unsigned cmd = path_cmd_stop;
+ if(m_iterator != m_end)
+ {
+ *x = m_iterator->x;
+ *y = m_iterator->y;
+ cmd = m_iterator->cmd;
+ ++m_iterator;
+ }
+ return cmd;
+ }
+
+ private:
+ const VertexContainer* m_container;
+ typename VertexContainer::const_iterator m_iterator;
+ typename VertexContainer::const_iterator m_end;
+ };
+
+
+
+}
+
+
+#endif
diff --git a/agg/inc/agg_vertex_sequence.h b/agg/inc/agg_vertex_sequence.h
new file mode 100755
index 000000000000..357a3df15fa4
--- /dev/null
+++ b/agg/inc/agg_vertex_sequence.h
@@ -0,0 +1,176 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// vertex_sequence container and vertex_dist struct
+//
+//----------------------------------------------------------------------------
+#ifndef AGG_VERTEX_SEQUENCE_INCLUDED
+#define AGG_VERTEX_SEQUENCE_INCLUDED
+
+#include "agg_basics.h"
+#include "agg_array.h"
+#include "agg_math.h"
+
+namespace agg
+{
+
+ //----------------------------------------------------------vertex_sequence
+ // Modified agg::pod_deque. The data is interpreted as a sequence of vertices.
+ // It means that the type T must expose:
+ //
+ // bool operator() (const T& val)
+ //
+ // that is called every time new vertex is being added. The main purpose
+ // of this operator is the possibility to calculate some values during
+ // adding and to return true if the vertex fits some criteria or false if
+ // it doesn't. In the last case the new vertex is not added.
+ //
+ // The simple example is filtering coinciding vertices with calculation
+ // of the distance between the current and previous ones:
+ //
+ // struct vertex_dist
+ // {
+ // double x;
+ // double y;
+ // double dist;
+ //
+ // vertex_dist() {}
+ // vertex_dist(double x_, double y_) :
+ // x(x_),
+ // y(y_),
+ // dist(0.0)
+ // {
+ // }
+ //
+ // bool operator () (const vertex_dist& val)
+ // {
+ // return (dist = calc_distance(x, y, val.x, val.y)) > EPSILON;
+ // }
+ // };
+ //
+ // Function close() calls this operator and removes the last vertex if
+ // necessary.
+ //------------------------------------------------------------------------
+ template<class T, unsigned S=6>
+ class vertex_sequence : public pod_deque<T, S>
+ {
+ public:
+ typedef pod_deque<T, S> base_type;
+
+ void add(const T& val);
+ void modify_last(const T& val);
+ void close(bool remove_flag);
+ };
+
+
+
+ //------------------------------------------------------------------------
+ template<class T, unsigned S>
+ void vertex_sequence<T, S>::add(const T& val)
+ {
+ if(base_type::size() > 1)
+ {
+ if(!(*this)[base_type::size() - 2]((*this)[base_type::size() - 1]))
+ {
+ base_type::remove_last();
+ }
+ }
+ base_type::add(val);
+ }
+
+
+ //------------------------------------------------------------------------
+ template<class T, unsigned S>
+ void vertex_sequence<T, S>::modify_last(const T& val)
+ {
+ base_type::remove_last();
+ add(val);
+ }
+
+
+
+ //------------------------------------------------------------------------
+ template<class T, unsigned S>
+ void vertex_sequence<T, S>::close(bool closed)
+ {
+ while(base_type::size() > 1)
+ {
+ if((*this)[base_type::size() - 2]((*this)[base_type::size() - 1])) break;
+ T t = (*this)[base_type::size() - 1];
+ base_type::remove_last();
+ modify_last(t);
+ }
+
+ if(closed)
+ {
+ while(base_type::size() > 1)
+ {
+ if((*this)[base_type::size() - 1]((*this)[0])) break;
+ base_type::remove_last();
+ }
+ }
+ }
+
+
+
+ // Coinciding points maximal distance (Epsilon)
+ const double vertex_dist_epsilon = 1e-14;
+
+ //-------------------------------------------------------------vertex_dist
+ // Vertex (x, y) with the distance to the next one. The last vertex has
+ // distance between the last and the first points if the polygon is closed
+ // and 0.0 if it's a polyline.
+ struct vertex_dist
+ {
+ double x;
+ double y;
+ double dist;
+
+ vertex_dist() {}
+ vertex_dist(double x_, double y_) :
+ x(x_),
+ y(y_),
+ dist(0.0)
+ {
+ }
+
+ bool operator () (const vertex_dist& val)
+ {
+ bool ret = (dist = calc_distance(x, y, val.x, val.y)) > vertex_dist_epsilon;
+ if(!ret) dist = 1.0 / vertex_dist_epsilon;
+ return ret;
+ }
+ };
+
+
+
+ //--------------------------------------------------------vertex_dist_cmd
+ // Save as the above but with additional "command" value
+ struct vertex_dist_cmd : public vertex_dist
+ {
+ unsigned cmd;
+
+ vertex_dist_cmd() {}
+ vertex_dist_cmd(double x_, double y_, unsigned cmd_) :
+ vertex_dist(x_, y_),
+ cmd(cmd_)
+ {
+ }
+ };
+
+
+}
+
+#endif
diff --git a/agg/inc/agg_vpgen_clip_polygon.h b/agg/inc/agg_vpgen_clip_polygon.h
new file mode 100755
index 000000000000..d5da460843e6
--- /dev/null
+++ b/agg/inc/agg_vpgen_clip_polygon.h
@@ -0,0 +1,83 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_VPGEN_CLIP_POLYGON_INCLUDED
+#define AGG_VPGEN_CLIP_POLYGON_INCLUDED
+
+#include "agg_basics.h"
+
+namespace agg
+{
+
+ //======================================================vpgen_clip_polygon
+ //
+ // See Implementation agg_vpgen_clip_polygon.cpp
+ //
+ class vpgen_clip_polygon
+ {
+ public:
+ vpgen_clip_polygon() :
+ m_clip_box(0, 0, 1, 1),
+ m_x1(0),
+ m_y1(0),
+ m_clip_flags(0),
+ m_num_vertices(0),
+ m_vertex(0),
+ m_cmd(path_cmd_move_to)
+ {
+ }
+
+ void clip_box(double _x1, double _y1, double _x2, double _y2)
+ {
+ m_clip_box.x1 = _x1;
+ m_clip_box.y1 = _y1;
+ m_clip_box.x2 = _x2;
+ m_clip_box.y2 = _y2;
+ m_clip_box.normalize();
+ }
+
+
+ double x1() const { return m_clip_box.x1; }
+ double y1() const { return m_clip_box.y1; }
+ double x2() const { return m_clip_box.x2; }
+ double y2() const { return m_clip_box.y2; }
+
+ static bool auto_close() { return true; }
+ static bool auto_unclose() { return false; }
+
+ void reset();
+ void move_to(double x, double y);
+ void line_to(double x, double y);
+ unsigned vertex(double* x, double* y);
+
+ private:
+ unsigned clipping_flags(double x, double y);
+
+ private:
+ rect_d m_clip_box;
+ double m_x1;
+ double m_y1;
+ unsigned m_clip_flags;
+ double m_x[4];
+ double m_y[4];
+ unsigned m_num_vertices;
+ unsigned m_vertex;
+ unsigned m_cmd;
+ };
+
+}
+
+
+#endif
diff --git a/agg/inc/agg_vpgen_clip_polyline.h b/agg/inc/agg_vpgen_clip_polyline.h
new file mode 100755
index 000000000000..f951966a3293
--- /dev/null
+++ b/agg/inc/agg_vpgen_clip_polyline.h
@@ -0,0 +1,121 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_VPGEN_CLIP_POLYLINE_INCLUDED
+#define AGG_VPGEN_CLIP_POLYLINE_INCLUDED
+
+#include "agg_basics.h"
+
+namespace agg
+{
+
+ //======================================================vpgen_clip_polyline
+ //
+ // See Implementation agg_vpgen_clip_polyline.cpp
+ //
+ class vpgen_clip_polyline
+ {
+ public:
+ vpgen_clip_polyline() :
+ m_clip_box(0, 0, 1, 1),
+ m_x1(0),
+ m_y1(0),
+ m_f1(0),
+ m_x2(0),
+ m_y2(0),
+ m_f2(0),
+ m_num_vertices(0),
+ m_vertex(0)
+ {
+ }
+
+ void clip_box(double _x1, double _y1, double _x2, double _y2)
+ {
+ m_clip_box.x1 = _x1;
+ m_clip_box.y1 = _y1;
+ m_clip_box.x2 = _x2;
+ m_clip_box.y2 = _y2;
+ m_clip_box.normalize();
+ }
+
+
+ double x1() const { return m_clip_box.x1; }
+ double y1() const { return m_clip_box.y1; }
+ double x2() const { return m_clip_box.x2; }
+ double y2() const { return m_clip_box.y2; }
+
+ static bool auto_close() { return false; }
+ static bool auto_unclose() { return true; }
+
+ void reset();
+ void move_to(double x, double y);
+ void line_to(double x, double y);
+ unsigned vertex(double* x, double* y);
+
+ private:
+ enum clipping_flags_def
+ {
+ clip_x1 = 1,
+ clip_x2 = 2,
+ clip_y1 = 4,
+ clip_y2 = 8
+ };
+
+ // Determine the clipping code of the vertex according to the
+ // Cyrus-Beck line clipping algorithm
+ //--------------------------------------------------------------------
+ unsigned clipping_flags_x(double x)
+ {
+ unsigned f = 0;
+ if(x < m_clip_box.x1) f |= clip_x1;
+ if(x > m_clip_box.x2) f |= clip_x2;
+ return f;
+ }
+
+ unsigned clipping_flags_y(double y)
+ {
+ unsigned f = 0;
+ if(y < m_clip_box.y1) f |= clip_y1;
+ if(y > m_clip_box.y2) f |= clip_y2;
+ return f;
+ }
+
+ unsigned clipping_flags(double x, double y)
+ {
+ return clipping_flags_x(x) | clipping_flags_y(y);
+ }
+
+ bool move_point(double& x, double& y, unsigned& flags);
+ void clip_line_segment();
+
+ private:
+ rect_d m_clip_box;
+ double m_x1;
+ double m_y1;
+ unsigned m_f1;
+ double m_x2;
+ double m_y2;
+ unsigned m_f2;
+ double m_x[2];
+ double m_y[2];
+ unsigned m_cmd[2];
+ unsigned m_num_vertices;
+ unsigned m_vertex;
+ };
+
+}
+
+
+#endif
diff --git a/agg/inc/agg_vpgen_segmentator.h b/agg/inc/agg_vpgen_segmentator.h
new file mode 100755
index 000000000000..1acc3531cc6e
--- /dev/null
+++ b/agg/inc/agg_vpgen_segmentator.h
@@ -0,0 +1,61 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#ifndef AGG_VPGEN_SEGMENTATOR_INCLUDED
+#define AGG_VPGEN_SEGMENTATOR_INCLUDED
+
+#include <math.h>
+#include "agg_basics.h"
+
+namespace agg
+{
+
+ //=======================================================vpgen_segmentator
+ //
+ // See Implementation agg_vpgen_segmentator.cpp
+ //
+ class vpgen_segmentator
+ {
+ public:
+ vpgen_segmentator() : m_approximation_scale(1.0) {}
+
+ void approximation_scale(double s) { m_approximation_scale = s; }
+ double approximation_scale() const { return m_approximation_scale; }
+
+ static bool auto_close() { return false; }
+ static bool auto_unclose() { return false; }
+
+ void reset() { m_cmd = path_cmd_stop; }
+ void move_to(double x, double y);
+ void line_to(double x, double y);
+ unsigned vertex(double* x, double* y);
+
+ private:
+ double m_approximation_scale;
+ double m_x1;
+ double m_y1;
+ double m_dx;
+ double m_dy;
+ double m_dl;
+ double m_ddl;
+ unsigned m_cmd;
+ };
+
+
+
+}
+
+#endif
+
diff --git a/agg/prj/build.lst b/agg/prj/build.lst
new file mode 100755
index 000000000000..57a09328f82a
--- /dev/null
+++ b/agg/prj/build.lst
@@ -0,0 +1,5 @@
+ag agg : soltools stlport NULL
+ag agg usr1 - all ag_mkout NULL
+ag agg\inc get - all ag_inc NULL
+ag agg\prj get - all ag_prj NULL
+ag agg\source nmake - all ag_agg NULL
diff --git a/agg/prj/d.lst b/agg/prj/d.lst
new file mode 100755
index 000000000000..cbec37a17cc8
--- /dev/null
+++ b/agg/prj/d.lst
@@ -0,0 +1,11 @@
+
+..\%__SRC%\lib\iagg.lib %_DEST%\lib%_EXT%\iagg.lib
+..\%__SRC%\bin\agg?????.dll %_DEST%\bin%_EXT%\agg?????.dll
+
+..\%__SRC%\lib\libagg?????.* %_DEST%\lib%_EXT%\libagg?????.*
+..\%__SRC%\lib\*.a %_DEST%\lib%_EXT%\*.a
+..\%__SRC%\lib\*.dylib %_DEST%\lib%_EXT%\*.dylib
+
+mkdir: %_DEST%\inc%_EXT%\agg2
+..\inc\*.h %_DEST%\inc%_EXT%\agg2
+
diff --git a/agg/source/agg.flt b/agg/source/agg.flt
new file mode 100644
index 000000000000..67e713474bf1
--- /dev/null
+++ b/agg/source/agg.flt
@@ -0,0 +1,3 @@
+__CT
+__real
+internal
diff --git a/agg/source/agg_arc.cpp b/agg/source/agg_arc.cpp
new file mode 100755
index 000000000000..eb10f5f7f2fc
--- /dev/null
+++ b/agg/source/agg_arc.cpp
@@ -0,0 +1,105 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Arc vertex generator
+//
+//----------------------------------------------------------------------------
+
+#include <math.h>
+#include "agg_arc.h"
+
+
+namespace agg
+{
+ //------------------------------------------------------------------------
+ arc::arc(double x, double y,
+ double rx, double ry,
+ double a1, double a2,
+ bool ccw) :
+ m_x(x), m_y(y), m_rx(rx), m_ry(ry), m_scale(1.0)
+ {
+ normalize(a1, a2, ccw);
+ }
+
+ //------------------------------------------------------------------------
+ void arc::init(double x, double y,
+ double rx, double ry,
+ double a1, double a2,
+ bool ccw)
+ {
+ m_x = x; m_y = y;
+ m_rx = rx; m_ry = ry;
+ normalize(a1, a2, ccw);
+ }
+
+ //------------------------------------------------------------------------
+ void arc::approximation_scale(double s)
+ {
+ m_scale = s;
+ if(m_initialized)
+ {
+ normalize(m_start, m_end, m_ccw);
+ }
+ }
+
+ //------------------------------------------------------------------------
+ void arc::rewind(unsigned)
+ {
+ m_path_cmd = path_cmd_move_to;
+ m_angle = m_start;
+ }
+
+ //------------------------------------------------------------------------
+ unsigned arc::vertex(double* x, double* y)
+ {
+ if(is_stop(m_path_cmd)) return path_cmd_stop;
+ if((m_angle < m_end) != m_ccw)
+ {
+ *x = m_x + cos(m_end) * m_rx;
+ *y = m_y + sin(m_end) * m_ry;
+ m_path_cmd = path_cmd_stop;
+ return path_cmd_line_to;
+ }
+
+ *x = m_x + cos(m_angle) * m_rx;
+ *y = m_y + sin(m_angle) * m_ry;
+
+ m_angle += m_da;
+
+ unsigned pf = m_path_cmd;
+ m_path_cmd = path_cmd_line_to;
+ return pf;
+ }
+
+ //------------------------------------------------------------------------
+ void arc::normalize(double a1, double a2, bool ccw)
+ {
+ m_da = fabs(1.0 / ((m_rx + m_ry) * 0.5 * m_scale));
+ if(ccw)
+ {
+ while(a2 < a1) a2 += pi * 2.0;
+ }
+ else
+ {
+ while(a1 < a2) a1 += pi * 2.0;
+ m_da = -m_da;
+ }
+ m_ccw = ccw;
+ m_start = a1;
+ m_end = a2;
+ m_initialized = true;
+ }
+
+}
diff --git a/agg/source/agg_arrowhead.cpp b/agg/source/agg_arrowhead.cpp
new file mode 100755
index 000000000000..694ed5ad887b
--- /dev/null
+++ b/agg/source/agg_arrowhead.cpp
@@ -0,0 +1,110 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Simple arrowhead/arrowtail generator
+//
+//----------------------------------------------------------------------------
+
+#include "agg_arrowhead.h"
+
+namespace agg
+{
+
+ //------------------------------------------------------------------------
+ arrowhead::arrowhead() :
+ m_head_d1(1.0),
+ m_head_d2(1.0),
+ m_head_d3(1.0),
+ m_head_d4(0.0),
+ m_tail_d1(1.0),
+ m_tail_d2(1.0),
+ m_tail_d3(1.0),
+ m_tail_d4(0.0),
+ m_head_flag(false),
+ m_tail_flag(false),
+ m_curr_id(0),
+ m_curr_coord(0)
+ {
+ }
+
+
+
+ //------------------------------------------------------------------------
+ void arrowhead::rewind(unsigned id)
+ {
+ m_curr_id = id;
+ m_curr_coord = 0;
+ if(id == 0)
+ {
+ if(!m_tail_flag)
+ {
+ m_cmd[0] = path_cmd_stop;
+ return;
+ }
+ m_coord[0] = m_tail_d1; m_coord[1] = 0.0;
+ m_coord[2] = m_tail_d1 - m_tail_d4; m_coord[3] = m_tail_d3;
+ m_coord[4] = -m_tail_d2 - m_tail_d4; m_coord[5] = m_tail_d3;
+ m_coord[6] = -m_tail_d2; m_coord[7] = 0.0;
+ m_coord[8] = -m_tail_d2 - m_tail_d4; m_coord[9] = -m_tail_d3;
+ m_coord[10] = m_tail_d1 - m_tail_d4; m_coord[11] = -m_tail_d3;
+
+ m_cmd[0] = path_cmd_move_to;
+ m_cmd[1] = path_cmd_line_to;
+ m_cmd[2] = path_cmd_line_to;
+ m_cmd[3] = path_cmd_line_to;
+ m_cmd[4] = path_cmd_line_to;
+ m_cmd[5] = path_cmd_line_to;
+ m_cmd[7] = (unsigned)path_cmd_end_poly | (unsigned)path_flags_close | (unsigned)path_flags_ccw;
+ m_cmd[6] = path_cmd_stop;
+ return;
+ }
+
+ if(id == 1)
+ {
+ if(!m_head_flag)
+ {
+ m_cmd[0] = path_cmd_stop;
+ return;
+ }
+ m_coord[0] = -m_head_d1; m_coord[1] = 0.0;
+ m_coord[2] = m_head_d2 + m_head_d4; m_coord[3] = -m_head_d3;
+ m_coord[4] = m_head_d2; m_coord[5] = 0.0;
+ m_coord[6] = m_head_d2 + m_head_d4; m_coord[7] = m_head_d3;
+
+ m_cmd[0] = path_cmd_move_to;
+ m_cmd[1] = path_cmd_line_to;
+ m_cmd[2] = path_cmd_line_to;
+ m_cmd[3] = path_cmd_line_to;
+ m_cmd[4] = (unsigned)path_cmd_end_poly | (unsigned)path_flags_close | (unsigned)path_flags_ccw;
+ m_cmd[5] = path_cmd_stop;
+ return;
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ unsigned arrowhead::vertex(double* x, double* y)
+ {
+ if(m_curr_id < 2)
+ {
+ unsigned curr_idx = m_curr_coord * 2;
+ *x = m_coord[curr_idx];
+ *y = m_coord[curr_idx + 1];
+ return m_cmd[m_curr_coord++];
+ }
+ return path_cmd_stop;
+ }
+
+}
diff --git a/agg/source/agg_bezier_arc.cpp b/agg/source/agg_bezier_arc.cpp
new file mode 100755
index 000000000000..6b47fff76fc8
--- /dev/null
+++ b/agg/source/agg_bezier_arc.cpp
@@ -0,0 +1,237 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Arc generator. Produces at most 4 consecutive cubic bezier curves, i.e.,
+// 4, 7, 10, or 13 vertices.
+//
+//----------------------------------------------------------------------------
+
+
+#include <math.h>
+#include "agg_bezier_arc.h"
+
+
+namespace agg
+{
+
+ //------------------------------------------------------------arc_to_bezier
+ void arc_to_bezier(double cx, double cy, double rx, double ry,
+ double start_angle, double sweep_angle,
+ double* curve)
+ {
+ double x0 = cos(sweep_angle / 2.0);
+ double y0 = sin(sweep_angle / 2.0);
+ double tx = (1.0 - x0) * 4.0 / 3.0;
+ double ty = y0 - tx * x0 / y0;
+ double px[4];
+ double py[4];
+ px[0] = x0;
+ py[0] = -y0;
+ px[1] = x0 + tx;
+ py[1] = -ty;
+ px[2] = x0 + tx;
+ py[2] = ty;
+ px[3] = x0;
+ py[3] = y0;
+
+ double sn = sin(start_angle + sweep_angle / 2.0);
+ double cs = cos(start_angle + sweep_angle / 2.0);
+
+ unsigned i;
+ for(i = 0; i < 4; i++)
+ {
+ curve[i * 2] = cx + rx * (px[i] * cs - py[i] * sn);
+ curve[i * 2 + 1] = cy + ry * (px[i] * sn + py[i] * cs);
+ }
+ }
+
+
+
+ //------------------------------------------------------------------------
+ void bezier_arc::init(double x, double y,
+ double rx, double ry,
+ double start_angle,
+ double sweep_angle)
+ {
+ start_angle = fmod(start_angle, 2.0 * pi);
+ if(sweep_angle >= 2.0 * pi) sweep_angle = 2.0 * pi;
+ if(sweep_angle <= -2.0 * pi) sweep_angle = -2.0 * pi;
+
+ double total_sweep = 0.0;
+ double local_sweep = 0.0;
+ m_num_vertices = 2;
+ bool done = false;
+ do
+ {
+ if(sweep_angle < 0.0)
+ {
+ local_sweep = -pi * 0.5;
+ total_sweep -= pi * 0.5;
+ if(total_sweep <= sweep_angle)
+ {
+ local_sweep = sweep_angle - (total_sweep + pi * 0.5);
+ done = true;
+ }
+ }
+ else
+ {
+ local_sweep = pi * 0.5;
+ total_sweep += pi * 0.5;
+ if(total_sweep >= sweep_angle)
+ {
+ local_sweep = sweep_angle - (total_sweep - pi * 0.5);
+ done = true;
+ }
+ }
+
+ arc_to_bezier(x, y, rx, ry,
+ start_angle,
+ local_sweep,
+ m_vertices + m_num_vertices - 2);
+
+ m_num_vertices += 6;
+ start_angle += local_sweep;
+ }
+ while(!done && m_num_vertices < 26);
+ }
+
+
+
+
+ //--------------------------------------------------------------------
+ void bezier_arc_svg::init(double x0, double y0,
+ double rx, double ry,
+ double angle,
+ bool large_arc_flag,
+ bool sweep_flag,
+ double x2, double y2)
+ {
+ m_radii_ok = true;
+
+ if(rx < 0.0) rx = -rx;
+ if(ry < 0.0) ry = -rx;
+
+ // Calculate the middle point between
+ // the current and the final points
+ //------------------------
+ double dx2 = (x0 - x2) / 2.0;
+ double dy2 = (y0 - y2) / 2.0;
+
+ // Convert angle from degrees to radians
+ //------------------------
+ double cos_a = cos(angle);
+ double sin_a = sin(angle);
+
+ // Calculate (x1, y1)
+ //------------------------
+ double x1 = cos_a * dx2 + sin_a * dy2;
+ double y1 = -sin_a * dx2 + cos_a * dy2;
+
+ // Ensure radii are large enough
+ //------------------------
+ double prx = rx * rx;
+ double pry = ry * ry;
+ double px1 = x1 * x1;
+ double py1 = y1 * y1;
+
+ // Check that radii are large enough
+ //------------------------
+ double radii_check = px1/prx + py1/pry;
+ if(radii_check > 1.0)
+ {
+ rx = sqrt(radii_check) * rx;
+ ry = sqrt(radii_check) * ry;
+ prx = rx * rx;
+ pry = ry * ry;
+ if(radii_check > 10.0) m_radii_ok = false;
+ }
+
+ // Calculate (cx1, cy1)
+ //------------------------
+ double sign = (large_arc_flag == sweep_flag) ? -1.0 : 1.0;
+ double sq = (prx*pry - prx*py1 - pry*px1) / (prx*py1 + pry*px1);
+ double coef = sign * sqrt((sq < 0) ? 0 : sq);
+ double cx1 = coef * ((rx * y1) / ry);
+ double cy1 = coef * -((ry * x1) / rx);
+
+ //
+ // Calculate (cx, cy) from (cx1, cy1)
+ //------------------------
+ double sx2 = (x0 + x2) / 2.0;
+ double sy2 = (y0 + y2) / 2.0;
+ double cx = sx2 + (cos_a * cx1 - sin_a * cy1);
+ double cy = sy2 + (sin_a * cx1 + cos_a * cy1);
+
+ // Calculate the start_angle (angle1) and the sweep_angle (dangle)
+ //------------------------
+ double ux = (x1 - cx1) / rx;
+ double uy = (y1 - cy1) / ry;
+ double vx = (-x1 - cx1) / rx;
+ double vy = (-y1 - cy1) / ry;
+ double p, n;
+
+ // Calculate the angle start
+ //------------------------
+ n = sqrt(ux*ux + uy*uy);
+ p = ux; // (1 * ux) + (0 * uy)
+ sign = (uy < 0) ? -1.0 : 1.0;
+ double v = p / n;
+ if(v < -1.0) v = -1.0;
+ if(v > 1.0) v = 1.0;
+ double start_angle = sign * acos(v);
+
+ // Calculate the sweep angle
+ //------------------------
+ n = sqrt((ux*ux + uy*uy) * (vx*vx + vy*vy));
+ p = ux * vx + uy * vy;
+ sign = (ux * vy - uy * vx < 0) ? -1.0 : 1.0;
+ v = p / n;
+ if(v < -1.0) v = -1.0;
+ if(v > 1.0) v = 1.0;
+ double sweep_angle = sign * acos(v);
+ if(!sweep_flag && sweep_angle > 0)
+ {
+ sweep_angle -= pi * 2.0;
+ }
+ else
+ if (sweep_flag && sweep_angle < 0)
+ {
+ sweep_angle += pi * 2.0;
+ }
+
+ // We can now build and transform the resulting arc
+ //------------------------
+ m_arc.init(0.0, 0.0, rx, ry, start_angle, sweep_angle);
+ trans_affine mtx = trans_affine_rotation(angle);
+ mtx *= trans_affine_translation(cx, cy);
+
+ for(unsigned i = 2; i < m_arc.num_vertices()-2; i += 2)
+ {
+ mtx.transform(m_arc.vertices() + i, m_arc.vertices() + i + 1);
+ }
+
+ // We must make sure that the starting and ending points
+ // exactly coincide with the initial (x0,y0) and (x2,y2)
+ m_arc.vertices()[0] = x0;
+ m_arc.vertices()[1] = y0;
+ if(m_arc.num_vertices() > 2)
+ {
+ m_arc.vertices()[m_arc.num_vertices() - 2] = x2;
+ m_arc.vertices()[m_arc.num_vertices() - 1] = y2;
+ }
+ }
+
+
+}
diff --git a/agg/source/agg_bspline.cpp b/agg/source/agg_bspline.cpp
new file mode 100755
index 000000000000..8635495ecc9e
--- /dev/null
+++ b/agg/source/agg_bspline.cpp
@@ -0,0 +1,299 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// class bspline
+//
+//----------------------------------------------------------------------------
+
+
+#include "agg_bspline.h"
+
+namespace agg
+{
+
+ //------------------------------------------------------------------------
+ bspline::~bspline()
+ {
+ delete [] m_am;
+ }
+
+
+ //------------------------------------------------------------------------
+ bspline::bspline() :
+ m_max(0),
+ m_num(0),
+ m_x(0),
+ m_y(0),
+ m_am(0),
+ m_last_idx(-1)
+ {
+ }
+
+ //------------------------------------------------------------------------
+ bspline::bspline(int num) :
+ m_max(0),
+ m_num(0),
+ m_x(0),
+ m_y(0),
+ m_am(0),
+ m_last_idx(-1)
+ {
+ init(num);
+ }
+
+ //------------------------------------------------------------------------
+ bspline::bspline(int num, const double* x, const double* y) :
+ m_max(0),
+ m_num(0),
+ m_x(0),
+ m_y(0),
+ m_am(0),
+ m_last_idx(-1)
+ {
+ init(num, x, y);
+ }
+
+
+ //------------------------------------------------------------------------
+ void bspline::init(int max)
+ {
+ if(max > 2 && max > m_max)
+ {
+ delete [] m_am;
+ m_am = new double[max * 3];
+ m_max = max;
+ m_x = m_am + m_max;
+ m_y = m_am + m_max * 2;
+ }
+ m_num = 0;
+ m_last_idx = -1;
+ }
+
+
+ //------------------------------------------------------------------------
+ void bspline::add_point(double x, double y)
+ {
+ if(m_num < m_max)
+ {
+ m_x[m_num] = x;
+ m_y[m_num] = y;
+ ++m_num;
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ void bspline::prepare()
+ {
+ if(m_num > 2)
+ {
+ int i, k, n1;
+ double* temp;
+ double* r;
+ double* s;
+ double* al;
+ double h, p, d, f, e;
+
+ for(k = 0; k < m_num; k++)
+ {
+ m_am[k] = 0.0;
+ }
+
+ n1 = 3 * m_num;
+
+ al = new double[n1];
+ temp = al;
+
+ for(k = 0; k < n1; k++)
+ {
+ temp[k] = 0.0;
+ }
+
+ r = temp + m_num;
+ s = temp + m_num * 2;
+
+ n1 = m_num - 1;
+ d = m_x[1] - m_x[0];
+ e = (m_y[1] - m_y[0]) / d;
+
+ for(k = 1; k < n1; k++)
+ {
+ h = d;
+ d = m_x[k + 1] - m_x[k];
+ f = e;
+ e = (m_y[k + 1] - m_y[k]) / d;
+ al[k] = d / (d + h);
+ r[k] = 1.0 - al[k];
+ s[k] = 6.0 * (e - f) / (h + d);
+ }
+
+ for(k = 1; k < n1; k++)
+ {
+ p = 1.0 / (r[k] * al[k - 1] + 2.0);
+ al[k] *= -p;
+ s[k] = (s[k] - r[k] * s[k - 1]) * p;
+ }
+
+ m_am[n1] = 0.0;
+ al[n1 - 1] = s[n1 - 1];
+ m_am[n1 - 1] = al[n1 - 1];
+
+ for(k = n1 - 2, i = 0; i < m_num - 2; i++, k--)
+ {
+ al[k] = al[k] * al[k + 1] + s[k];
+ m_am[k] = al[k];
+ }
+ delete [] al;
+ }
+ m_last_idx = -1;
+ }
+
+
+
+ //------------------------------------------------------------------------
+ void bspline::init(int num, const double* x, const double* y)
+ {
+ if(num > 2)
+ {
+ init(num);
+ int i;
+ for(i = 0; i < num; i++)
+ {
+ add_point(*x++, *y++);
+ }
+ prepare();
+ }
+ m_last_idx = -1;
+ }
+
+
+ //------------------------------------------------------------------------
+ void bspline::bsearch(int n, const double *x, double x0, int *i)
+ {
+ int j = n - 1;
+ int k;
+
+ for(*i = 0; (j - *i) > 1; )
+ {
+ if(x0 < x[k = (*i + j) >> 1]) j = k;
+ else *i = k;
+ }
+ }
+
+
+
+ //------------------------------------------------------------------------
+ double bspline::interpolation(double x, int i) const
+ {
+ int j = i + 1;
+ double d = m_x[i] - m_x[j];
+ double h = x - m_x[j];
+ double r = m_x[i] - x;
+ double p = d * d / 6.0;
+ return (m_am[j] * r * r * r + m_am[i] * h * h * h) / 6.0 / d +
+ ((m_y[j] - m_am[j] * p) * r + (m_y[i] - m_am[i] * p) * h) / d;
+ }
+
+
+ //------------------------------------------------------------------------
+ double bspline::extrapolation_left(double x) const
+ {
+ double d = m_x[1] - m_x[0];
+ return (-d * m_am[1] / 6 + (m_y[1] - m_y[0]) / d) *
+ (x - m_x[0]) +
+ m_y[0];
+ }
+
+ //------------------------------------------------------------------------
+ double bspline::extrapolation_right(double x) const
+ {
+ double d = m_x[m_num - 1] - m_x[m_num - 2];
+ return (d * m_am[m_num - 2] / 6 + (m_y[m_num - 1] - m_y[m_num - 2]) / d) *
+ (x - m_x[m_num - 1]) +
+ m_y[m_num - 1];
+ }
+
+ //------------------------------------------------------------------------
+ double bspline::get(double x) const
+ {
+ if(m_num > 2)
+ {
+ int i;
+
+ // Extrapolation on the left
+ if(x < m_x[0]) return extrapolation_left(x);
+
+ // Extrapolation on the right
+ if(x >= m_x[m_num - 1]) return extrapolation_right(x);
+
+ // Interpolation
+ bsearch(m_num, m_x, x, &i);
+ return interpolation(x, i);
+ }
+ return 0.0;
+ }
+
+
+ //------------------------------------------------------------------------
+ double bspline::get_stateful(double x) const
+ {
+ if(m_num > 2)
+ {
+ // Extrapolation on the left
+ if(x < m_x[0]) return extrapolation_left(x);
+
+ // Extrapolation on the right
+ if(x >= m_x[m_num - 1]) return extrapolation_right(x);
+
+ if(m_last_idx >= 0)
+ {
+ // Check if x is not in current range
+ if(x < m_x[m_last_idx] || x > m_x[m_last_idx + 1])
+ {
+ // Check if x between next points (most probably)
+ if(m_last_idx < m_num - 2 &&
+ x >= m_x[m_last_idx + 1] &&
+ x <= m_x[m_last_idx + 2])
+ {
+ ++m_last_idx;
+ }
+ else
+ if(m_last_idx > 0 &&
+ x >= m_x[m_last_idx - 1] &&
+ x <= m_x[m_last_idx])
+ {
+ // x is between pevious points
+ --m_last_idx;
+ }
+ else
+ {
+ // Else perform full search
+ bsearch(m_num, m_x, x, &m_last_idx);
+ }
+ }
+ return interpolation(x, m_last_idx);
+ }
+ else
+ {
+ // Interpolation
+ bsearch(m_num, m_x, x, &m_last_idx);
+ return interpolation(x, m_last_idx);
+ }
+ }
+ return 0.0;
+ }
+
+}
+
diff --git a/agg/source/agg_curves.cpp b/agg/source/agg_curves.cpp
new file mode 100755
index 000000000000..bae65f26b5a3
--- /dev/null
+++ b/agg/source/agg_curves.cpp
@@ -0,0 +1,246 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// classes curve3 and curve4
+//
+//----------------------------------------------------------------------------
+
+#include <math.h>
+#include "agg_curves.h"
+
+namespace agg
+{
+
+ //------------------------------------------------------------------------
+ void curve3::init(double x1, double y1,
+ double x2, double y2,
+ double x3, double y3)
+ {
+ m_start_x = x1;
+ m_start_y = y1;
+ m_end_x = x3;
+ m_end_y = y3;
+
+ double dx1 = x2 - x1;
+ double dy1 = y2 - y1;
+ double dx2 = x3 - x2;
+ double dy2 = y3 - y2;
+
+ double len = sqrt(dx1 * dx1 + dy1 * dy1) + sqrt(dx2 * dx2 + dy2 * dy2);
+
+ m_num_steps = int(len * 0.25 * m_scale);
+
+ if(m_num_steps < 2)
+ {
+ m_num_steps = 2;
+ }
+
+ double subdivide_step = 1.0 / m_num_steps;
+ double subdivide_step2 = subdivide_step * subdivide_step;
+
+ double tmpx = (x1 - x2 * 2.0 + x3) * subdivide_step2;
+ double tmpy = (y1 - y2 * 2.0 + y3) * subdivide_step2;
+
+ m_saved_fx = m_fx = x1;
+ m_saved_fy = m_fy = y1;
+
+ m_saved_dfx = m_dfx = tmpx + (x2 - x1) * (2.0 * subdivide_step);
+ m_saved_dfy = m_dfy = tmpy + (y2 - y1) * (2.0 * subdivide_step);
+
+ m_ddfx = tmpx * 2.0;
+ m_ddfy = tmpy * 2.0;
+
+ m_step = m_num_steps;
+ }
+
+
+
+
+ //------------------------------------------------------------------------
+ void curve3::rewind(unsigned)
+ {
+ if(m_num_steps == 0)
+ {
+ m_step = -1;
+ return;
+ }
+ m_step = m_num_steps;
+ m_fx = m_saved_fx;
+ m_fy = m_saved_fy;
+ m_dfx = m_saved_dfx;
+ m_dfy = m_saved_dfy;
+ }
+
+
+
+
+ //------------------------------------------------------------------------
+ unsigned curve3::vertex(double* x, double* y)
+ {
+ if(m_step < 0) return path_cmd_stop;
+ if(m_step == m_num_steps)
+ {
+ *x = m_start_x;
+ *y = m_start_y;
+ --m_step;
+ return path_cmd_move_to;
+ }
+ if(m_step == 0)
+ {
+ *x = m_end_x;
+ *y = m_end_y;
+ --m_step;
+ return path_cmd_line_to;
+ }
+ m_fx += m_dfx;
+ m_fy += m_dfy;
+ m_dfx += m_ddfx;
+ m_dfy += m_ddfy;
+ *x = m_fx;
+ *y = m_fy;
+ --m_step;
+ return path_cmd_line_to;
+ }
+
+
+
+
+
+
+
+
+
+
+
+
+
+ //------------------------------------------------------------------------
+ void curve4::init(double x1, double y1,
+ double x2, double y2,
+ double x3, double y3,
+ double x4, double y4)
+ {
+ m_start_x = x1;
+ m_start_y = y1;
+ m_end_x = x4;
+ m_end_y = y4;
+
+ double dx1 = x2 - x1;
+ double dy1 = y2 - y1;
+ double dx2 = x3 - x2;
+ double dy2 = y3 - y2;
+ double dx3 = x4 - x3;
+ double dy3 = y4 - y3;
+
+ double len = sqrt(dx1 * dx1 + dy1 * dy1) +
+ sqrt(dx2 * dx2 + dy2 * dy2) +
+ sqrt(dx3 * dx3 + dy3 * dy3);
+
+ m_num_steps = int(len * 0.25 * m_scale);
+
+ if(m_num_steps < 2)
+ {
+ m_num_steps = 2;
+ }
+
+ double subdivide_step = 1.0 / m_num_steps;
+ double subdivide_step2 = subdivide_step * subdivide_step;
+ double subdivide_step3 = subdivide_step * subdivide_step * subdivide_step;
+
+ double pre1 = 3.0 * subdivide_step;
+ double pre2 = 3.0 * subdivide_step2;
+ double pre4 = 6.0 * subdivide_step2;
+ double pre5 = 6.0 * subdivide_step3;
+
+ double tmp1x = x1 - x2 * 2.0 + x3;
+ double tmp1y = y1 - y2 * 2.0 + y3;
+
+ double tmp2x = (x2 - x3) * 3.0 - x1 + x4;
+ double tmp2y = (y2 - y3) * 3.0 - y1 + y4;
+
+ m_saved_fx = m_fx = x1;
+ m_saved_fy = m_fy = y1;
+
+ m_saved_dfx = m_dfx = (x2 - x1) * pre1 + tmp1x * pre2 + tmp2x * subdivide_step3;
+ m_saved_dfy = m_dfy = (y2 - y1) * pre1 + tmp1y * pre2 + tmp2y * subdivide_step3;
+
+ m_saved_ddfx = m_ddfx = tmp1x * pre4 + tmp2x * pre5;
+ m_saved_ddfy = m_ddfy = tmp1y * pre4 + tmp2y * pre5;
+
+ m_dddfx = tmp2x * pre5;
+ m_dddfy = tmp2y * pre5;
+
+ m_step = m_num_steps;
+ }
+
+
+
+
+ //------------------------------------------------------------------------
+ void curve4::rewind(unsigned)
+ {
+ if(m_num_steps == 0)
+ {
+ m_step = -1;
+ return;
+ }
+ m_step = m_num_steps;
+ m_fx = m_saved_fx;
+ m_fy = m_saved_fy;
+ m_dfx = m_saved_dfx;
+ m_dfy = m_saved_dfy;
+ m_ddfx = m_saved_ddfx;
+ m_ddfy = m_saved_ddfy;
+ }
+
+
+
+
+
+ //------------------------------------------------------------------------
+ unsigned curve4::vertex(double* x, double* y)
+ {
+ if(m_step < 0) return path_cmd_stop;
+ if(m_step == m_num_steps)
+ {
+ *x = m_start_x;
+ *y = m_start_y;
+ --m_step;
+ return path_cmd_move_to;
+ }
+ if(m_step == 0)
+ {
+ *x = m_end_x;
+ *y = m_end_y;
+ --m_step;
+ return path_cmd_line_to;
+ }
+ m_fx += m_dfx;
+ m_fy += m_dfy;
+ m_dfx += m_ddfx;
+ m_dfy += m_ddfy;
+ m_ddfx += m_dddfx;
+ m_ddfy += m_dddfy;
+ *x = m_fx;
+ *y = m_fy;
+ --m_step;
+ return path_cmd_line_to;
+ }
+
+
+
+
+}
+
diff --git a/agg/source/agg_embedded_raster_fonts.cpp b/agg/source/agg_embedded_raster_fonts.cpp
new file mode 100755
index 000000000000..b1060fb7e176
--- /dev/null
+++ b/agg/source/agg_embedded_raster_fonts.cpp
@@ -0,0 +1,10426 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#include "agg_embedded_raster_fonts.h"
+
+namespace agg
+{
+
+ const int8u gse4x6[] =
+ {
+ 6, 0, 32, 128-32,
+
+ 0x00,0x00,0x07,0x00,0x0e,0x00,0x15,0x00,0x1c,0x00,0x23,0x00,0x2a,0x00,0x31,0x00,0x38,0x00,
+ 0x3f,0x00,0x46,0x00,0x4d,0x00,0x54,0x00,0x5b,0x00,0x62,0x00,0x69,0x00,0x70,0x00,0x77,0x00,
+ 0x7e,0x00,0x85,0x00,0x8c,0x00,0x93,0x00,0x9a,0x00,0xa1,0x00,0xa8,0x00,0xaf,0x00,0xb6,0x00,
+ 0xbd,0x00,0xc4,0x00,0xcb,0x00,0xd2,0x00,0xd9,0x00,0xe0,0x00,0xe7,0x00,0xee,0x00,0xf5,0x00,
+ 0xfc,0x00,0x03,0x01,0x0a,0x01,0x11,0x01,0x18,0x01,0x1f,0x01,0x26,0x01,0x2d,0x01,0x34,0x01,
+ 0x3b,0x01,0x42,0x01,0x49,0x01,0x50,0x01,0x57,0x01,0x5e,0x01,0x65,0x01,0x6c,0x01,0x73,0x01,
+ 0x7a,0x01,0x81,0x01,0x88,0x01,0x8f,0x01,0x96,0x01,0x9d,0x01,0xa4,0x01,0xab,0x01,0xb2,0x01,
+ 0xb9,0x01,0xc0,0x01,0xc7,0x01,0xce,0x01,0xd5,0x01,0xdc,0x01,0xe3,0x01,0xea,0x01,0xf1,0x01,
+ 0xf8,0x01,0xff,0x01,0x06,0x02,0x0d,0x02,0x14,0x02,0x1b,0x02,0x22,0x02,0x29,0x02,0x30,0x02,
+ 0x37,0x02,0x3e,0x02,0x45,0x02,0x4c,0x02,0x53,0x02,0x5a,0x02,0x61,0x02,0x68,0x02,0x6f,0x02,
+ 0x76,0x02,0x7d,0x02,0x84,0x02,0x8b,0x02,0x92,0x02,0x99,0x02,
+
+ 4, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x21 '!'
+ 0x40,0x40,0x40,0x00,0x40,0x00,
+
+ 4, // 0x22 '"'
+ 0xa0,0xa0,0x00,0x00,0x00,0x00,
+
+ 4, // 0x23 '#'
+ 0x60,0xf0,0x60,0xf0,0x60,0x00,
+
+ 4, // 0x24 '$'
+ 0x40,0x60,0xc0,0x60,0xc0,0x40,
+
+ 4, // 0x25 '%'
+ 0xa0,0x20,0x40,0x80,0xa0,0x00,
+
+ 4, // 0x26 '&'
+ 0xe0,0xa0,0x50,0xa0,0xd0,0x00,
+
+ 4, // 0x27 '''
+ 0x40,0x40,0x00,0x00,0x00,0x00,
+
+ 4, // 0x28 '('
+ 0x20,0x40,0x40,0x40,0x20,0x00,
+
+ 4, // 0x29 ')'
+ 0x40,0x20,0x20,0x20,0x40,0x00,
+
+ 4, // 0x2a '*'
+ 0xa0,0x40,0xe0,0x40,0xa0,0x00,
+
+ 4, // 0x2b '+'
+ 0x40,0x40,0xe0,0x40,0x40,0x00,
+
+ 4, // 0x2c ','
+ 0x00,0x00,0x00,0x40,0x40,0x80,
+
+ 4, // 0x2d '-'
+ 0x00,0x00,0xe0,0x00,0x00,0x00,
+
+ 4, // 0x2e '.'
+ 0x00,0x00,0x00,0x00,0x40,0x00,
+
+ 4, // 0x2f '/'
+ 0x10,0x20,0x20,0x40,0x40,0x80,
+
+ 4, // 0x30 '0'
+ 0xe0,0xa0,0xa0,0xa0,0xe0,0x00,
+
+ 4, // 0x31 '1'
+ 0x40,0xc0,0x40,0x40,0xe0,0x00,
+
+ 4, // 0x32 '2'
+ 0xe0,0xa0,0x20,0x40,0xe0,0x00,
+
+ 4, // 0x33 '3'
+ 0xe0,0x20,0x40,0x20,0xe0,0x00,
+
+ 4, // 0x34 '4'
+ 0xa0,0xa0,0xe0,0x20,0x20,0x00,
+
+ 4, // 0x35 '5'
+ 0xe0,0x80,0xc0,0x20,0xc0,0x00,
+
+ 4, // 0x36 '6'
+ 0x40,0x80,0xe0,0xa0,0xe0,0x00,
+
+ 4, // 0x37 '7'
+ 0xe0,0xa0,0x20,0x40,0x40,0x00,
+
+ 4, // 0x38 '8'
+ 0xe0,0xa0,0x40,0xa0,0xe0,0x00,
+
+ 4, // 0x39 '9'
+ 0xe0,0xa0,0xe0,0x20,0xc0,0x00,
+
+ 4, // 0x3a ':'
+ 0x00,0x40,0x00,0x40,0x00,0x00,
+
+ 4, // 0x3b ';'
+ 0x00,0x40,0x00,0x40,0x40,0x80,
+
+ 4, // 0x3c '<'
+ 0x20,0x40,0x80,0x40,0x20,0x00,
+
+ 4, // 0x3d '='
+ 0x00,0xe0,0x00,0xe0,0x00,0x00,
+
+ 4, // 0x3e '>'
+ 0x80,0x40,0x20,0x40,0x80,0x00,
+
+ 4, // 0x3f '?'
+ 0xc0,0x20,0x40,0x00,0x40,0x00,
+
+ 4, // 0x40 '@'
+ 0x40,0xa0,0xe0,0xe0,0x80,0x60,
+
+ 4, // 0x41 'A'
+ 0x40,0xa0,0xe0,0xa0,0xa0,0x00,
+
+ 4, // 0x42 'B'
+ 0xc0,0xa0,0xc0,0xa0,0xc0,0x00,
+
+ 4, // 0x43 'C'
+ 0x60,0x80,0x80,0x80,0x60,0x00,
+
+ 4, // 0x44 'D'
+ 0xc0,0xa0,0xa0,0xa0,0xc0,0x00,
+
+ 4, // 0x45 'E'
+ 0xe0,0x80,0xc0,0x80,0xe0,0x00,
+
+ 4, // 0x46 'F'
+ 0xe0,0x80,0xc0,0x80,0x80,0x00,
+
+ 4, // 0x47 'G'
+ 0x60,0x80,0xa0,0xa0,0x40,0x00,
+
+ 4, // 0x48 'H'
+ 0xa0,0xa0,0xe0,0xa0,0xa0,0x00,
+
+ 4, // 0x49 'I'
+ 0xe0,0x40,0x40,0x40,0xe0,0x00,
+
+ 4, // 0x4a 'J'
+ 0x20,0x20,0x20,0x20,0xa0,0x40,
+
+ 4, // 0x4b 'K'
+ 0xa0,0xa0,0xc0,0xc0,0xa0,0x00,
+
+ 4, // 0x4c 'L'
+ 0x80,0x80,0x80,0x80,0xe0,0x00,
+
+ 4, // 0x4d 'M'
+ 0xa0,0xe0,0xa0,0xa0,0xa0,0x00,
+
+ 4, // 0x4e 'N'
+ 0x90,0xd0,0xb0,0x90,0x90,0x00,
+
+ 4, // 0x4f 'O'
+ 0x40,0xa0,0xa0,0xa0,0x40,0x00,
+
+ 4, // 0x50 'P'
+ 0xc0,0xa0,0xa0,0xc0,0x80,0x00,
+
+ 4, // 0x51 'Q'
+ 0x40,0xa0,0xa0,0xa0,0x60,0x00,
+
+ 4, // 0x52 'R'
+ 0xc0,0xa0,0xa0,0xc0,0xa0,0x00,
+
+ 4, // 0x53 'S'
+ 0x60,0x80,0x40,0x20,0xc0,0x00,
+
+ 4, // 0x54 'T'
+ 0xe0,0x40,0x40,0x40,0x40,0x00,
+
+ 4, // 0x55 'U'
+ 0xa0,0xa0,0xa0,0xa0,0xe0,0x00,
+
+ 4, // 0x56 'V'
+ 0xa0,0xa0,0xa0,0xa0,0x40,0x00,
+
+ 4, // 0x57 'W'
+ 0xa0,0xa0,0xa0,0xe0,0xa0,0x00,
+
+ 4, // 0x58 'X'
+ 0xa0,0xa0,0x40,0xa0,0xa0,0x00,
+
+ 4, // 0x59 'Y'
+ 0xa0,0xa0,0x40,0x40,0x40,0x00,
+
+ 4, // 0x5a 'Z'
+ 0xe0,0x20,0x40,0x80,0xe0,0x00,
+
+ 4, // 0x5b '['
+ 0xc0,0x80,0x80,0x80,0xc0,0x00,
+
+ 4, // 0x5c '\'
+ 0x80,0x40,0x40,0x20,0x20,0x10,
+
+ 4, // 0x5d ']'
+ 0xc0,0x40,0x40,0x40,0xc0,0x00,
+
+ 4, // 0x5e '^'
+ 0x40,0xa0,0x00,0x00,0x00,0x00,
+
+ 4, // 0x5f '_'
+ 0x00,0x00,0x00,0x00,0x00,0xf0,
+
+ 4, // 0x60 '`'
+ 0x40,0x20,0x00,0x00,0x00,0x00,
+
+ 4, // 0x61 'a'
+ 0x00,0x60,0xa0,0xa0,0x70,0x00,
+
+ 4, // 0x62 'b'
+ 0x80,0x80,0xc0,0xa0,0xc0,0x00,
+
+ 4, // 0x63 'c'
+ 0x00,0x60,0x80,0x80,0x60,0x00,
+
+ 4, // 0x64 'd'
+ 0x20,0x20,0x60,0xa0,0x60,0x00,
+
+ 4, // 0x65 'e'
+ 0x00,0x40,0xe0,0x80,0x60,0x00,
+
+ 4, // 0x66 'f'
+ 0x20,0x40,0xe0,0x40,0x40,0x00,
+
+ 4, // 0x67 'g'
+ 0x00,0x60,0xa0,0x60,0x20,0xc0,
+
+ 4, // 0x68 'h'
+ 0x80,0x80,0xc0,0xa0,0xa0,0x00,
+
+ 4, // 0x69 'i'
+ 0x40,0x00,0xc0,0x40,0xe0,0x00,
+
+ 4, // 0x6a 'j'
+ 0x40,0x00,0xc0,0x40,0x40,0x80,
+
+ 4, // 0x6b 'k'
+ 0x80,0x80,0xa0,0xc0,0xa0,0x00,
+
+ 4, // 0x6c 'l'
+ 0xc0,0x40,0x40,0x40,0xe0,0x00,
+
+ 4, // 0x6d 'm'
+ 0x00,0xa0,0xf0,0xf0,0x90,0x00,
+
+ 4, // 0x6e 'n'
+ 0x00,0xc0,0xa0,0xa0,0xa0,0x00,
+
+ 4, // 0x6f 'o'
+ 0x00,0x40,0xa0,0xa0,0x40,0x00,
+
+ 4, // 0x70 'p'
+ 0x00,0xc0,0xa0,0xc0,0x80,0x80,
+
+ 4, // 0x71 'q'
+ 0x00,0x60,0xa0,0x60,0x20,0x20,
+
+ 4, // 0x72 'r'
+ 0x00,0xa0,0x50,0x40,0x40,0x00,
+
+ 4, // 0x73 's'
+ 0x00,0x60,0xc0,0x20,0xc0,0x00,
+
+ 4, // 0x74 't'
+ 0x40,0x40,0xe0,0x40,0x60,0x00,
+
+ 4, // 0x75 'u'
+ 0x00,0xa0,0xa0,0xa0,0x60,0x00,
+
+ 4, // 0x76 'v'
+ 0x00,0xa0,0xa0,0xa0,0x40,0x00,
+
+ 4, // 0x77 'w'
+ 0x00,0xa0,0xa0,0xe0,0xa0,0x00,
+
+ 4, // 0x78 'x'
+ 0x00,0xa0,0x40,0xa0,0xa0,0x00,
+
+ 4, // 0x79 'y'
+ 0x00,0xa0,0xa0,0x60,0x20,0xc0,
+
+ 4, // 0x7a 'z'
+ 0x00,0xe0,0x40,0x80,0xe0,0x00,
+
+ 4, // 0x7b '{'
+ 0x30,0x20,0xc0,0x20,0x30,0x00,
+
+ 4, // 0x7c '|'
+ 0x40,0x40,0x00,0x40,0x40,0x40,
+
+ 4, // 0x7d '}'
+ 0xc0,0x40,0x30,0x40,0xc0,0x00,
+
+ 4, // 0x7e '~'
+ 0x50,0xa0,0x00,0x00,0x00,0x00,
+
+ 4, // 0x7f ''
+ 0x00,0x60,0x90,0xf0,0x00,0x00,
+ 0
+ };
+
+ const int8u gse4x8[] =
+ {
+ 8, 0, 32, 128-32,
+
+ 0x00,0x00,0x09,0x00,0x12,0x00,0x1b,0x00,0x24,0x00,0x2d,0x00,0x36,0x00,0x3f,0x00,0x48,0x00,
+ 0x51,0x00,0x5a,0x00,0x63,0x00,0x6c,0x00,0x75,0x00,0x7e,0x00,0x87,0x00,0x90,0x00,0x99,0x00,
+ 0xa2,0x00,0xab,0x00,0xb4,0x00,0xbd,0x00,0xc6,0x00,0xcf,0x00,0xd8,0x00,0xe1,0x00,0xea,0x00,
+ 0xf3,0x00,0xfc,0x00,0x05,0x01,0x0e,0x01,0x17,0x01,0x20,0x01,0x29,0x01,0x32,0x01,0x3b,0x01,
+ 0x44,0x01,0x4d,0x01,0x56,0x01,0x5f,0x01,0x68,0x01,0x71,0x01,0x7a,0x01,0x83,0x01,0x8c,0x01,
+ 0x95,0x01,0x9e,0x01,0xa7,0x01,0xb0,0x01,0xb9,0x01,0xc2,0x01,0xcb,0x01,0xd4,0x01,0xdd,0x01,
+ 0xe6,0x01,0xef,0x01,0xf8,0x01,0x01,0x02,0x0a,0x02,0x13,0x02,0x1c,0x02,0x25,0x02,0x2e,0x02,
+ 0x37,0x02,0x40,0x02,0x49,0x02,0x52,0x02,0x5b,0x02,0x64,0x02,0x6d,0x02,0x76,0x02,0x7f,0x02,
+ 0x88,0x02,0x91,0x02,0x9a,0x02,0xa3,0x02,0xac,0x02,0xb5,0x02,0xbe,0x02,0xc7,0x02,0xd0,0x02,
+ 0xd9,0x02,0xe2,0x02,0xeb,0x02,0xf4,0x02,0xfd,0x02,0x06,0x03,0x0f,0x03,0x18,0x03,0x21,0x03,
+ 0x2a,0x03,0x33,0x03,0x3c,0x03,0x45,0x03,0x4e,0x03,0x57,0x03,
+
+ 4, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x21 '!'
+ 0x00,0x40,0x40,0x40,0x40,0x00,0x40,0x00,
+
+ 4, // 0x22 '"'
+ 0x00,0xa0,0xa0,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x23 '#'
+ 0x60,0x60,0xf0,0x60,0x60,0xf0,0x60,0x60,
+
+ 4, // 0x24 '$'
+ 0x40,0x60,0xc0,0xc0,0x60,0x60,0xc0,0x40,
+
+ 4, // 0x25 '%'
+ 0x00,0xa0,0x20,0x40,0x40,0x80,0xa0,0x00,
+
+ 4, // 0x26 '&'
+ 0x00,0x40,0xa0,0xa0,0x40,0xb0,0xa0,0x70,
+
+ 4, // 0x27 '''
+ 0x00,0x40,0x40,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x28 '('
+ 0x20,0x40,0x80,0x80,0x80,0x80,0x40,0x20,
+
+ 4, // 0x29 ')'
+ 0x80,0x40,0x20,0x20,0x20,0x20,0x40,0x80,
+
+ 4, // 0x2a '*'
+ 0x00,0xa0,0x40,0xe0,0x40,0xa0,0x00,0x00,
+
+ 4, // 0x2b '+'
+ 0x00,0x40,0x40,0xe0,0x40,0x40,0x00,0x00,
+
+ 4, // 0x2c ','
+ 0x00,0x00,0x00,0x00,0x00,0x40,0x40,0x80,
+
+ 4, // 0x2d '-'
+ 0x00,0x00,0x00,0xe0,0x00,0x00,0x00,0x00,
+
+ 4, // 0x2e '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x00,
+
+ 4, // 0x2f '/'
+ 0x10,0x10,0x20,0x20,0x40,0x40,0x80,0x80,
+
+ 4, // 0x30 '0'
+ 0x00,0xe0,0xa0,0xa0,0xa0,0xa0,0xe0,0x00,
+
+ 4, // 0x31 '1'
+ 0x00,0x40,0xc0,0x40,0x40,0x40,0xe0,0x00,
+
+ 4, // 0x32 '2'
+ 0x00,0xe0,0xa0,0x20,0x40,0x80,0xe0,0x00,
+
+ 4, // 0x33 '3'
+ 0x00,0xe0,0x20,0x40,0x20,0x20,0xe0,0x00,
+
+ 4, // 0x34 '4'
+ 0x00,0x60,0xa0,0xa0,0xf0,0x20,0x20,0x00,
+
+ 4, // 0x35 '5'
+ 0x00,0xe0,0x80,0xc0,0x20,0x20,0xc0,0x00,
+
+ 4, // 0x36 '6'
+ 0x00,0x40,0x80,0xe0,0xa0,0xa0,0xe0,0x00,
+
+ 4, // 0x37 '7'
+ 0x00,0xe0,0xa0,0x20,0x40,0x40,0x40,0x00,
+
+ 4, // 0x38 '8'
+ 0x00,0xe0,0xa0,0x40,0xa0,0xa0,0xe0,0x00,
+
+ 4, // 0x39 '9'
+ 0x00,0xe0,0xa0,0xe0,0x20,0x20,0x40,0x00,
+
+ 4, // 0x3a ':'
+ 0x00,0x00,0x40,0x00,0x00,0x40,0x00,0x00,
+
+ 4, // 0x3b ';'
+ 0x00,0x00,0x40,0x00,0x00,0x40,0x40,0x80,
+
+ 4, // 0x3c '<'
+ 0x00,0x20,0x40,0x80,0x40,0x20,0x00,0x00,
+
+ 4, // 0x3d '='
+ 0x00,0x00,0xe0,0x00,0xe0,0x00,0x00,0x00,
+
+ 4, // 0x3e '>'
+ 0x00,0x80,0x40,0x20,0x40,0x80,0x00,0x00,
+
+ 4, // 0x3f '?'
+ 0x00,0x40,0xa0,0x20,0x40,0x00,0x40,0x00,
+
+ 4, // 0x40 '@'
+ 0x00,0x40,0xa0,0xe0,0xe0,0x80,0x60,0x00,
+
+ 4, // 0x41 'A'
+ 0x00,0x40,0xa0,0xa0,0xe0,0xa0,0xa0,0x00,
+
+ 4, // 0x42 'B'
+ 0x00,0xc0,0xa0,0xc0,0xa0,0xa0,0xc0,0x00,
+
+ 4, // 0x43 'C'
+ 0x00,0x40,0xa0,0x80,0x80,0xa0,0x40,0x00,
+
+ 4, // 0x44 'D'
+ 0x00,0xc0,0xa0,0xa0,0xa0,0xa0,0xc0,0x00,
+
+ 4, // 0x45 'E'
+ 0x00,0xe0,0x80,0xc0,0x80,0x80,0xe0,0x00,
+
+ 4, // 0x46 'F'
+ 0x00,0xe0,0x80,0xc0,0x80,0x80,0x80,0x00,
+
+ 4, // 0x47 'G'
+ 0x00,0x60,0x80,0xa0,0xa0,0xa0,0x40,0x00,
+
+ 4, // 0x48 'H'
+ 0x00,0xa0,0xa0,0xe0,0xa0,0xa0,0xa0,0x00,
+
+ 4, // 0x49 'I'
+ 0x00,0xe0,0x40,0x40,0x40,0x40,0xe0,0x00,
+
+ 4, // 0x4a 'J'
+ 0x00,0x20,0x20,0x20,0x20,0xa0,0x40,0x00,
+
+ 4, // 0x4b 'K'
+ 0x00,0xa0,0xa0,0xc0,0xc0,0xa0,0xa0,0x00,
+
+ 4, // 0x4c 'L'
+ 0x00,0x80,0x80,0x80,0x80,0x80,0xe0,0x00,
+
+ 4, // 0x4d 'M'
+ 0x00,0xa0,0xe0,0xa0,0xa0,0xa0,0xa0,0x00,
+
+ 4, // 0x4e 'N'
+ 0x00,0x90,0x90,0xd0,0xb0,0x90,0x90,0x00,
+
+ 4, // 0x4f 'O'
+ 0x00,0x40,0xa0,0xa0,0xa0,0xa0,0x40,0x00,
+
+ 4, // 0x50 'P'
+ 0x00,0xc0,0xa0,0xa0,0xc0,0x80,0x80,0x00,
+
+ 4, // 0x51 'Q'
+ 0x00,0x40,0xa0,0xa0,0xa0,0xa0,0x60,0x00,
+
+ 4, // 0x52 'R'
+ 0x00,0xc0,0xa0,0xa0,0xc0,0xc0,0xa0,0x00,
+
+ 4, // 0x53 'S'
+ 0x00,0x60,0x80,0x40,0x20,0x20,0xc0,0x00,
+
+ 4, // 0x54 'T'
+ 0x00,0xe0,0x40,0x40,0x40,0x40,0x40,0x00,
+
+ 4, // 0x55 'U'
+ 0x00,0xa0,0xa0,0xa0,0xa0,0xa0,0x40,0x00,
+
+ 4, // 0x56 'V'
+ 0x00,0xa0,0xa0,0xa0,0xa0,0x40,0x40,0x00,
+
+ 4, // 0x57 'W'
+ 0x00,0xa0,0xa0,0xa0,0xa0,0xe0,0xa0,0x00,
+
+ 4, // 0x58 'X'
+ 0x00,0xa0,0xa0,0x40,0xa0,0xa0,0xa0,0x00,
+
+ 4, // 0x59 'Y'
+ 0x00,0xa0,0xa0,0x40,0x40,0x40,0x40,0x00,
+
+ 4, // 0x5a 'Z'
+ 0x00,0xe0,0x20,0x40,0x40,0x80,0xe0,0x00,
+
+ 4, // 0x5b '['
+ 0xc0,0x80,0x80,0x80,0x80,0x80,0x80,0xc0,
+
+ 4, // 0x5c '\'
+ 0x80,0x80,0x40,0x40,0x20,0x20,0x10,0x10,
+
+ 4, // 0x5d ']'
+ 0xc0,0x40,0x40,0x40,0x40,0x40,0x40,0xc0,
+
+ 4, // 0x5e '^'
+ 0x00,0x40,0xa0,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x5f '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,
+
+ 4, // 0x60 '`'
+ 0x00,0x40,0x20,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x61 'a'
+ 0x00,0x00,0x60,0xa0,0xa0,0xa0,0x70,0x00,
+
+ 4, // 0x62 'b'
+ 0x00,0x80,0x80,0xc0,0xa0,0xa0,0xc0,0x00,
+
+ 4, // 0x63 'c'
+ 0x00,0x00,0x40,0xa0,0x80,0xa0,0x40,0x00,
+
+ 4, // 0x64 'd'
+ 0x00,0x20,0x20,0x60,0xa0,0xa0,0x60,0x00,
+
+ 4, // 0x65 'e'
+ 0x00,0x00,0x40,0xa0,0xe0,0x80,0x60,0x00,
+
+ 4, // 0x66 'f'
+ 0x00,0x20,0x40,0x40,0xe0,0x40,0x40,0x00,
+
+ 4, // 0x67 'g'
+ 0x00,0x00,0x60,0xa0,0xa0,0x60,0x20,0xc0,
+
+ 4, // 0x68 'h'
+ 0x00,0x80,0x80,0xc0,0xa0,0xa0,0xa0,0x00,
+
+ 4, // 0x69 'i'
+ 0x00,0x40,0x00,0xc0,0x40,0x40,0xe0,0x00,
+
+ 4, // 0x6a 'j'
+ 0x00,0x40,0x00,0xc0,0x40,0x40,0x40,0x80,
+
+ 4, // 0x6b 'k'
+ 0x00,0x80,0x80,0xa0,0xc0,0xc0,0xa0,0x00,
+
+ 4, // 0x6c 'l'
+ 0x00,0xc0,0x40,0x40,0x40,0x40,0xe0,0x00,
+
+ 4, // 0x6d 'm'
+ 0x00,0x00,0xa0,0xf0,0xf0,0xf0,0x90,0x00,
+
+ 4, // 0x6e 'n'
+ 0x00,0x00,0xc0,0xa0,0xa0,0xa0,0xa0,0x00,
+
+ 4, // 0x6f 'o'
+ 0x00,0x00,0x40,0xa0,0xa0,0xa0,0x40,0x00,
+
+ 4, // 0x70 'p'
+ 0x00,0x00,0xc0,0xa0,0xa0,0xc0,0x80,0x80,
+
+ 4, // 0x71 'q'
+ 0x00,0x00,0x60,0xa0,0xa0,0x60,0x20,0x20,
+
+ 4, // 0x72 'r'
+ 0x00,0x00,0xa0,0x50,0x40,0x40,0x40,0x00,
+
+ 4, // 0x73 's'
+ 0x00,0x00,0x60,0x80,0x40,0x20,0xc0,0x00,
+
+ 4, // 0x74 't'
+ 0x00,0x40,0x40,0xe0,0x40,0x40,0x20,0x00,
+
+ 4, // 0x75 'u'
+ 0x00,0x00,0xa0,0xa0,0xa0,0xa0,0x60,0x00,
+
+ 4, // 0x76 'v'
+ 0x00,0x00,0xa0,0xa0,0xa0,0x40,0x40,0x00,
+
+ 4, // 0x77 'w'
+ 0x00,0x00,0xa0,0xa0,0xa0,0xe0,0xa0,0x00,
+
+ 4, // 0x78 'x'
+ 0x00,0x00,0xa0,0xa0,0x40,0xa0,0xa0,0x00,
+
+ 4, // 0x79 'y'
+ 0x00,0x00,0xa0,0xa0,0xa0,0x60,0x20,0xc0,
+
+ 4, // 0x7a 'z'
+ 0x00,0x00,0xe0,0x20,0x40,0x80,0xe0,0x00,
+
+ 4, // 0x7b '{'
+ 0x10,0x20,0x20,0xc0,0x20,0x20,0x10,0x00,
+
+ 4, // 0x7c '|'
+ 0x00,0x40,0x40,0x40,0x00,0x40,0x40,0x40,
+
+ 4, // 0x7d '}'
+ 0x80,0x40,0x40,0x30,0x40,0x40,0x80,0x00,
+
+ 4, // 0x7e '~'
+ 0x00,0x50,0xa0,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x7f ''
+ 0x00,0x00,0x00,0x60,0x90,0xf0,0x00,0x00,
+ 0
+ };
+
+ const int8u gse5x7[] =
+ {
+ 7, 0, 32, 128-32,
+
+ 0x00,0x00,0x08,0x00,0x10,0x00,0x18,0x00,0x20,0x00,0x28,0x00,0x30,0x00,0x38,0x00,0x40,0x00,
+ 0x48,0x00,0x50,0x00,0x58,0x00,0x60,0x00,0x68,0x00,0x70,0x00,0x78,0x00,0x80,0x00,0x88,0x00,
+ 0x90,0x00,0x98,0x00,0xa0,0x00,0xa8,0x00,0xb0,0x00,0xb8,0x00,0xc0,0x00,0xc8,0x00,0xd0,0x00,
+ 0xd8,0x00,0xe0,0x00,0xe8,0x00,0xf0,0x00,0xf8,0x00,0x00,0x01,0x08,0x01,0x10,0x01,0x18,0x01,
+ 0x20,0x01,0x28,0x01,0x30,0x01,0x38,0x01,0x40,0x01,0x48,0x01,0x50,0x01,0x58,0x01,0x60,0x01,
+ 0x68,0x01,0x70,0x01,0x78,0x01,0x80,0x01,0x88,0x01,0x90,0x01,0x98,0x01,0xa0,0x01,0xa8,0x01,
+ 0xb0,0x01,0xb8,0x01,0xc0,0x01,0xc8,0x01,0xd0,0x01,0xd8,0x01,0xe0,0x01,0xe8,0x01,0xf0,0x01,
+ 0xf8,0x01,0x00,0x02,0x08,0x02,0x10,0x02,0x18,0x02,0x20,0x02,0x28,0x02,0x30,0x02,0x38,0x02,
+ 0x40,0x02,0x48,0x02,0x50,0x02,0x58,0x02,0x60,0x02,0x68,0x02,0x70,0x02,0x78,0x02,0x80,0x02,
+ 0x88,0x02,0x90,0x02,0x98,0x02,0xa0,0x02,0xa8,0x02,0xb0,0x02,0xb8,0x02,0xc0,0x02,0xc8,0x02,
+ 0xd0,0x02,0xd8,0x02,0xe0,0x02,0xe8,0x02,0xf0,0x02,0xf8,0x02,
+
+ 5, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x21 '!'
+ 0x00,0x20,0x20,0x20,0x00,0x20,0x00,
+
+ 5, // 0x22 '"'
+ 0x00,0x50,0x50,0x00,0x00,0x00,0x00,
+
+ 5, // 0x23 '#'
+ 0x00,0x50,0xf8,0x50,0xf8,0x50,0x00,
+
+ 5, // 0x24 '$'
+ 0x20,0x78,0xa0,0x70,0x28,0xf0,0x20,
+
+ 5, // 0x25 '%'
+ 0x00,0x88,0x10,0x20,0x40,0x88,0x00,
+
+ 5, // 0x26 '&'
+ 0x00,0x40,0xa0,0x68,0x90,0x68,0x00,
+
+ 5, // 0x27 '''
+ 0x00,0x20,0x20,0x00,0x00,0x00,0x00,
+
+ 5, // 0x28 '('
+ 0x10,0x20,0x40,0x40,0x40,0x20,0x10,
+
+ 5, // 0x29 ')'
+ 0x80,0x40,0x20,0x20,0x20,0x40,0x80,
+
+ 5, // 0x2a '*'
+ 0x00,0x20,0xa8,0x70,0xa8,0x20,0x00,
+
+ 5, // 0x2b '+'
+ 0x00,0x20,0x20,0xf8,0x20,0x20,0x00,
+
+ 5, // 0x2c ','
+ 0x00,0x00,0x00,0x00,0x20,0x20,0x40,
+
+ 5, // 0x2d '-'
+ 0x00,0x00,0x00,0xf0,0x00,0x00,0x00,
+
+ 5, // 0x2e '.'
+ 0x00,0x00,0x00,0x00,0x00,0x40,0x00,
+
+ 5, // 0x2f '/'
+ 0x00,0x08,0x10,0x20,0x40,0x80,0x00,
+
+ 5, // 0x30 '0'
+ 0x00,0x60,0x90,0x90,0x90,0x60,0x00,
+
+ 5, // 0x31 '1'
+ 0x00,0x20,0x60,0x20,0x20,0x70,0x00,
+
+ 5, // 0x32 '2'
+ 0x00,0x60,0x90,0x20,0x40,0xf0,0x00,
+
+ 5, // 0x33 '3'
+ 0x00,0xf0,0x20,0x60,0x10,0xe0,0x00,
+
+ 5, // 0x34 '4'
+ 0x00,0x30,0x50,0x90,0xf0,0x10,0x00,
+
+ 5, // 0x35 '5'
+ 0x00,0xf0,0x80,0xe0,0x10,0xe0,0x00,
+
+ 5, // 0x36 '6'
+ 0x00,0x60,0x80,0xe0,0x90,0x60,0x00,
+
+ 5, // 0x37 '7'
+ 0x00,0xf0,0x90,0x20,0x40,0x40,0x00,
+
+ 5, // 0x38 '8'
+ 0x00,0x60,0x90,0x60,0x90,0x60,0x00,
+
+ 5, // 0x39 '9'
+ 0x00,0x60,0x90,0x70,0x10,0x60,0x00,
+
+ 5, // 0x3a ':'
+ 0x00,0x00,0x20,0x00,0x20,0x00,0x00,
+
+ 5, // 0x3b ';'
+ 0x00,0x00,0x20,0x00,0x20,0x20,0x40,
+
+ 5, // 0x3c '<'
+ 0x00,0x10,0x20,0x40,0x20,0x10,0x00,
+
+ 5, // 0x3d '='
+ 0x00,0x00,0xf0,0x00,0xf0,0x00,0x00,
+
+ 5, // 0x3e '>'
+ 0x00,0x80,0x40,0x20,0x40,0x80,0x00,
+
+ 5, // 0x3f '?'
+ 0x00,0x60,0x90,0x20,0x00,0x20,0x00,
+
+ 5, // 0x40 '@'
+ 0x00,0x60,0x90,0xb0,0x80,0x70,0x00,
+
+ 5, // 0x41 'A'
+ 0x00,0x60,0x90,0xf0,0x90,0x90,0x00,
+
+ 5, // 0x42 'B'
+ 0x00,0xe0,0x90,0xe0,0x90,0xe0,0x00,
+
+ 5, // 0x43 'C'
+ 0x00,0x60,0x90,0x80,0x90,0x60,0x00,
+
+ 5, // 0x44 'D'
+ 0x00,0xe0,0x90,0x90,0x90,0xe0,0x00,
+
+ 5, // 0x45 'E'
+ 0x00,0xf0,0x80,0xe0,0x80,0xf0,0x00,
+
+ 5, // 0x46 'F'
+ 0x00,0xf0,0x80,0xe0,0x80,0x80,0x00,
+
+ 5, // 0x47 'G'
+ 0x00,0x70,0x80,0xb0,0x90,0x60,0x00,
+
+ 5, // 0x48 'H'
+ 0x00,0x90,0x90,0xf0,0x90,0x90,0x00,
+
+ 5, // 0x49 'I'
+ 0x00,0x70,0x20,0x20,0x20,0x70,0x00,
+
+ 5, // 0x4a 'J'
+ 0x00,0x70,0x20,0x20,0xa0,0x40,0x00,
+
+ 5, // 0x4b 'K'
+ 0x00,0x90,0xa0,0xc0,0xa0,0x90,0x00,
+
+ 5, // 0x4c 'L'
+ 0x00,0x80,0x80,0x80,0x80,0xf0,0x00,
+
+ 5, // 0x4d 'M'
+ 0x00,0x90,0xf0,0x90,0x90,0x90,0x00,
+
+ 5, // 0x4e 'N'
+ 0x00,0x90,0xd0,0xb0,0x90,0x90,0x00,
+
+ 5, // 0x4f 'O'
+ 0x00,0x60,0x90,0x90,0x90,0x60,0x00,
+
+ 5, // 0x50 'P'
+ 0x00,0xe0,0x90,0xe0,0x80,0x80,0x00,
+
+ 5, // 0x51 'Q'
+ 0x00,0x60,0x90,0x90,0xa0,0x50,0x00,
+
+ 5, // 0x52 'R'
+ 0x00,0xe0,0x90,0xe0,0xa0,0x90,0x00,
+
+ 5, // 0x53 'S'
+ 0x00,0x70,0x80,0x60,0x10,0xe0,0x00,
+
+ 5, // 0x54 'T'
+ 0x00,0x70,0x20,0x20,0x20,0x20,0x00,
+
+ 5, // 0x55 'U'
+ 0x00,0x90,0x90,0x90,0x90,0x60,0x00,
+
+ 5, // 0x56 'V'
+ 0x00,0x50,0x50,0x50,0x20,0x20,0x00,
+
+ 5, // 0x57 'W'
+ 0x00,0x90,0x90,0x90,0xf0,0x90,0x00,
+
+ 5, // 0x58 'X'
+ 0x00,0x90,0x90,0x60,0x90,0x90,0x00,
+
+ 5, // 0x59 'Y'
+ 0x00,0x50,0x50,0x20,0x20,0x20,0x00,
+
+ 5, // 0x5a 'Z'
+ 0x00,0xf0,0x10,0x20,0x40,0xf0,0x00,
+
+ 5, // 0x5b '['
+ 0x70,0x40,0x40,0x40,0x40,0x40,0x70,
+
+ 5, // 0x5c '\'
+ 0x00,0x80,0x40,0x20,0x10,0x08,0x00,
+
+ 5, // 0x5d ']'
+ 0xe0,0x20,0x20,0x20,0x20,0x20,0xe0,
+
+ 5, // 0x5e '^'
+ 0x00,0x20,0x50,0x00,0x00,0x00,0x00,
+
+ 5, // 0x5f '_'
+ 0x00,0x00,0x00,0x00,0x00,0xf8,0x00,
+
+ 5, // 0x60 '`'
+ 0x00,0x40,0x20,0x00,0x00,0x00,0x00,
+
+ 5, // 0x61 'a'
+ 0x00,0x00,0x60,0xa0,0xa0,0x50,0x00,
+
+ 5, // 0x62 'b'
+ 0x00,0x80,0x80,0xe0,0x90,0xe0,0x00,
+
+ 5, // 0x63 'c'
+ 0x00,0x00,0x70,0x80,0x80,0x70,0x00,
+
+ 5, // 0x64 'd'
+ 0x00,0x10,0x10,0x70,0x90,0x70,0x00,
+
+ 5, // 0x65 'e'
+ 0x00,0x00,0x60,0xf0,0x80,0x70,0x00,
+
+ 5, // 0x66 'f'
+ 0x00,0x30,0x40,0xe0,0x40,0x40,0x00,
+
+ 5, // 0x67 'g'
+ 0x00,0x00,0x70,0x90,0x70,0x10,0x60,
+
+ 5, // 0x68 'h'
+ 0x00,0x80,0x80,0xe0,0x90,0x90,0x00,
+
+ 5, // 0x69 'i'
+ 0x20,0x00,0x60,0x20,0x20,0x70,0x00,
+
+ 5, // 0x6a 'j'
+ 0x20,0x00,0x60,0x20,0x20,0xa0,0x40,
+
+ 5, // 0x6b 'k'
+ 0x80,0x80,0x90,0xa0,0xe0,0x90,0x00,
+
+ 5, // 0x6c 'l'
+ 0x00,0x60,0x20,0x20,0x20,0x70,0x00,
+
+ 5, // 0x6d 'm'
+ 0x00,0x00,0xa0,0xf0,0xf0,0x90,0x00,
+
+ 5, // 0x6e 'n'
+ 0x00,0x00,0xa0,0xd0,0x90,0x90,0x00,
+
+ 5, // 0x6f 'o'
+ 0x00,0x00,0x60,0x90,0x90,0x60,0x00,
+
+ 5, // 0x70 'p'
+ 0x00,0x00,0xe0,0x90,0xe0,0x80,0x80,
+
+ 5, // 0x71 'q'
+ 0x00,0x00,0x70,0x90,0x70,0x10,0x10,
+
+ 5, // 0x72 'r'
+ 0x00,0x00,0xe0,0x90,0x80,0x80,0x00,
+
+ 5, // 0x73 's'
+ 0x00,0x00,0x70,0xe0,0x10,0xe0,0x00,
+
+ 5, // 0x74 't'
+ 0x40,0x40,0xe0,0x40,0x40,0x70,0x00,
+
+ 5, // 0x75 'u'
+ 0x00,0x00,0x90,0x90,0x90,0x70,0x00,
+
+ 5, // 0x76 'v'
+ 0x00,0x00,0x50,0x50,0x50,0x20,0x00,
+
+ 5, // 0x77 'w'
+ 0x00,0x00,0x90,0x90,0xf0,0x90,0x00,
+
+ 5, // 0x78 'x'
+ 0x00,0x00,0x90,0x60,0x60,0x90,0x00,
+
+ 5, // 0x79 'y'
+ 0x00,0x00,0x90,0x90,0x70,0x10,0x60,
+
+ 5, // 0x7a 'z'
+ 0x00,0x00,0xf0,0x20,0x40,0xf0,0x00,
+
+ 5, // 0x7b '{'
+ 0x10,0x20,0x20,0xc0,0x20,0x20,0x10,
+
+ 5, // 0x7c '|'
+ 0x20,0x20,0x20,0x00,0x20,0x20,0x20,
+
+ 5, // 0x7d '}'
+ 0x40,0x20,0x20,0x18,0x20,0x20,0x40,
+
+ 5, // 0x7e '~'
+ 0x00,0x40,0xa8,0x10,0x00,0x00,0x00,
+
+ 5, // 0x7f ''
+ 0x00,0x00,0x20,0x50,0x88,0xf8,0x00,
+ 0
+ };
+
+ const int8u gse5x9[] =
+ {
+ 9, 0, 32, 128-32,
+
+ 0x00,0x00,0x0a,0x00,0x14,0x00,0x1e,0x00,0x28,0x00,0x32,0x00,0x3c,0x00,0x46,0x00,0x50,0x00,
+ 0x5a,0x00,0x64,0x00,0x6e,0x00,0x78,0x00,0x82,0x00,0x8c,0x00,0x96,0x00,0xa0,0x00,0xaa,0x00,
+ 0xb4,0x00,0xbe,0x00,0xc8,0x00,0xd2,0x00,0xdc,0x00,0xe6,0x00,0xf0,0x00,0xfa,0x00,0x04,0x01,
+ 0x0e,0x01,0x18,0x01,0x22,0x01,0x2c,0x01,0x36,0x01,0x40,0x01,0x4a,0x01,0x54,0x01,0x5e,0x01,
+ 0x68,0x01,0x72,0x01,0x7c,0x01,0x86,0x01,0x90,0x01,0x9a,0x01,0xa4,0x01,0xae,0x01,0xb8,0x01,
+ 0xc2,0x01,0xcc,0x01,0xd6,0x01,0xe0,0x01,0xea,0x01,0xf4,0x01,0xfe,0x01,0x08,0x02,0x12,0x02,
+ 0x1c,0x02,0x26,0x02,0x30,0x02,0x3a,0x02,0x44,0x02,0x4e,0x02,0x58,0x02,0x62,0x02,0x6c,0x02,
+ 0x76,0x02,0x80,0x02,0x8a,0x02,0x94,0x02,0x9e,0x02,0xa8,0x02,0xb2,0x02,0xbc,0x02,0xc6,0x02,
+ 0xd0,0x02,0xda,0x02,0xe4,0x02,0xee,0x02,0xf8,0x02,0x02,0x03,0x0c,0x03,0x16,0x03,0x20,0x03,
+ 0x2a,0x03,0x34,0x03,0x3e,0x03,0x48,0x03,0x52,0x03,0x5c,0x03,0x66,0x03,0x70,0x03,0x7a,0x03,
+ 0x84,0x03,0x8e,0x03,0x98,0x03,0xa2,0x03,0xac,0x03,0xb6,0x03,
+
+ 5, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x21 '!'
+ 0x00,0x20,0x20,0x20,0x20,0x20,0x00,0x20,0x00,
+
+ 5, // 0x22 '"'
+ 0x00,0x50,0x50,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x23 '#'
+ 0x00,0x50,0x50,0xf8,0x50,0xf8,0x50,0x50,0x00,
+
+ 5, // 0x24 '$'
+ 0x00,0x20,0x78,0xa0,0x70,0x28,0xf0,0x20,0x00,
+
+ 5, // 0x25 '%'
+ 0x00,0xc8,0xc8,0x10,0x20,0x40,0x98,0x98,0x00,
+
+ 5, // 0x26 '&'
+ 0x00,0x40,0xa0,0xa0,0x40,0xa8,0x90,0x68,0x00,
+
+ 5, // 0x27 '''
+ 0x00,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x28 '('
+ 0x10,0x20,0x40,0x40,0x40,0x40,0x40,0x20,0x10,
+
+ 5, // 0x29 ')'
+ 0x80,0x40,0x20,0x20,0x20,0x20,0x20,0x40,0x80,
+
+ 5, // 0x2a '*'
+ 0x00,0x00,0x20,0xa8,0x70,0xa8,0x20,0x00,0x00,
+
+ 5, // 0x2b '+'
+ 0x00,0x00,0x20,0x20,0xf8,0x20,0x20,0x00,0x00,
+
+ 5, // 0x2c ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x40,
+
+ 5, // 0x2d '-'
+ 0x00,0x00,0x00,0x00,0xf0,0x00,0x00,0x00,0x00,
+
+ 5, // 0x2e '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x00,
+
+ 5, // 0x2f '/'
+ 0x00,0x10,0x10,0x20,0x20,0x40,0x40,0x80,0x80,
+
+ 5, // 0x30 '0'
+ 0x00,0x60,0x90,0xb0,0xd0,0x90,0x90,0x60,0x00,
+
+ 5, // 0x31 '1'
+ 0x00,0x20,0x60,0x20,0x20,0x20,0x20,0x70,0x00,
+
+ 5, // 0x32 '2'
+ 0x00,0x60,0x90,0x10,0x20,0x40,0x80,0xf0,0x00,
+
+ 5, // 0x33 '3'
+ 0x00,0xf0,0x10,0x20,0x60,0x10,0x90,0x60,0x00,
+
+ 5, // 0x34 '4'
+ 0x00,0x30,0x50,0x90,0x90,0xf8,0x10,0x10,0x00,
+
+ 5, // 0x35 '5'
+ 0x00,0xf0,0x80,0xe0,0x10,0x10,0x10,0xe0,0x00,
+
+ 5, // 0x36 '6'
+ 0x00,0x60,0x80,0xe0,0x90,0x90,0x90,0x60,0x00,
+
+ 5, // 0x37 '7'
+ 0x00,0xf0,0x90,0x10,0x20,0x40,0x40,0x40,0x00,
+
+ 5, // 0x38 '8'
+ 0x00,0x60,0x90,0x90,0x60,0x90,0x90,0x60,0x00,
+
+ 5, // 0x39 '9'
+ 0x00,0x60,0x90,0x90,0x70,0x10,0x90,0x60,0x00,
+
+ 5, // 0x3a ':'
+ 0x00,0x00,0x00,0x20,0x00,0x00,0x20,0x00,0x00,
+
+ 5, // 0x3b ';'
+ 0x00,0x00,0x00,0x20,0x00,0x00,0x20,0x20,0x40,
+
+ 5, // 0x3c '<'
+ 0x00,0x10,0x20,0x40,0x80,0x40,0x20,0x10,0x00,
+
+ 5, // 0x3d '='
+ 0x00,0x00,0x00,0xf0,0x00,0xf0,0x00,0x00,0x00,
+
+ 5, // 0x3e '>'
+ 0x00,0x80,0x40,0x20,0x10,0x20,0x40,0x80,0x00,
+
+ 5, // 0x3f '?'
+ 0x00,0x60,0x90,0x10,0x20,0x20,0x00,0x20,0x00,
+
+ 5, // 0x40 '@'
+ 0x00,0x60,0x90,0xb0,0xb0,0xb0,0x80,0x70,0x00,
+
+ 5, // 0x41 'A'
+ 0x00,0x60,0x90,0x90,0xf0,0x90,0x90,0x90,0x00,
+
+ 5, // 0x42 'B'
+ 0x00,0xe0,0x90,0x90,0xe0,0x90,0x90,0xe0,0x00,
+
+ 5, // 0x43 'C'
+ 0x00,0x60,0x90,0x80,0x80,0x80,0x90,0x60,0x00,
+
+ 5, // 0x44 'D'
+ 0x00,0xe0,0x90,0x90,0x90,0x90,0x90,0xe0,0x00,
+
+ 5, // 0x45 'E'
+ 0x00,0xf0,0x80,0x80,0xe0,0x80,0x80,0xf0,0x00,
+
+ 5, // 0x46 'F'
+ 0x00,0xf0,0x80,0x80,0xe0,0x80,0x80,0x80,0x00,
+
+ 5, // 0x47 'G'
+ 0x00,0x60,0x90,0x80,0xb0,0x90,0x90,0x60,0x00,
+
+ 5, // 0x48 'H'
+ 0x00,0x90,0x90,0x90,0xf0,0x90,0x90,0x90,0x00,
+
+ 5, // 0x49 'I'
+ 0x00,0x70,0x20,0x20,0x20,0x20,0x20,0x70,0x00,
+
+ 5, // 0x4a 'J'
+ 0x00,0x70,0x20,0x20,0x20,0x20,0xa0,0x40,0x00,
+
+ 5, // 0x4b 'K'
+ 0x00,0x90,0x90,0xa0,0xc0,0xa0,0x90,0x90,0x00,
+
+ 5, // 0x4c 'L'
+ 0x00,0x80,0x80,0x80,0x80,0x80,0x80,0xf0,0x00,
+
+ 5, // 0x4d 'M'
+ 0x00,0x90,0xf0,0x90,0x90,0x90,0x90,0x90,0x00,
+
+ 5, // 0x4e 'N'
+ 0x00,0x90,0x90,0xd0,0xb0,0x90,0x90,0x90,0x00,
+
+ 5, // 0x4f 'O'
+ 0x00,0x60,0x90,0x90,0x90,0x90,0x90,0x60,0x00,
+
+ 5, // 0x50 'P'
+ 0x00,0xe0,0x90,0x90,0xe0,0x80,0x80,0x80,0x00,
+
+ 5, // 0x51 'Q'
+ 0x00,0x60,0x90,0x90,0x90,0x90,0xa0,0x50,0x00,
+
+ 5, // 0x52 'R'
+ 0x00,0xe0,0x90,0x90,0xe0,0xa0,0x90,0x90,0x00,
+
+ 5, // 0x53 'S'
+ 0x00,0x60,0x90,0x80,0x60,0x10,0x90,0x60,0x00,
+
+ 5, // 0x54 'T'
+ 0x00,0x70,0x20,0x20,0x20,0x20,0x20,0x20,0x00,
+
+ 5, // 0x55 'U'
+ 0x00,0x90,0x90,0x90,0x90,0x90,0x90,0x60,0x00,
+
+ 5, // 0x56 'V'
+ 0x00,0x50,0x50,0x50,0x50,0x50,0x20,0x20,0x00,
+
+ 5, // 0x57 'W'
+ 0x00,0x90,0x90,0x90,0x90,0x90,0xf0,0x90,0x00,
+
+ 5, // 0x58 'X'
+ 0x00,0x90,0x90,0x60,0x60,0x90,0x90,0x90,0x00,
+
+ 5, // 0x59 'Y'
+ 0x00,0x50,0x50,0x50,0x20,0x20,0x20,0x20,0x00,
+
+ 5, // 0x5a 'Z'
+ 0x00,0xf0,0x10,0x10,0x20,0x40,0x80,0xf0,0x00,
+
+ 5, // 0x5b '['
+ 0x70,0x40,0x40,0x40,0x40,0x40,0x40,0x70,0x00,
+
+ 5, // 0x5c '\'
+ 0x80,0x80,0x40,0x40,0x20,0x20,0x10,0x10,0x00,
+
+ 5, // 0x5d ']'
+ 0xe0,0x20,0x20,0x20,0x20,0x20,0x20,0xe0,0x00,
+
+ 5, // 0x5e '^'
+ 0x00,0x20,0x50,0x88,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x5f '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0x00,
+
+ 5, // 0x60 '`'
+ 0x00,0x40,0x20,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x61 'a'
+ 0x00,0x00,0x60,0x10,0x70,0x90,0x90,0x70,0x00,
+
+ 5, // 0x62 'b'
+ 0x00,0x80,0x80,0xe0,0x90,0x90,0x90,0xe0,0x00,
+
+ 5, // 0x63 'c'
+ 0x00,0x00,0x60,0x90,0x80,0x80,0x90,0x60,0x00,
+
+ 5, // 0x64 'd'
+ 0x00,0x10,0x10,0x70,0x90,0x90,0x90,0x70,0x00,
+
+ 5, // 0x65 'e'
+ 0x00,0x00,0x60,0x90,0xf0,0x80,0x80,0x70,0x00,
+
+ 5, // 0x66 'f'
+ 0x00,0x30,0x40,0x40,0xe0,0x40,0x40,0x40,0x00,
+
+ 5, // 0x67 'g'
+ 0x00,0x00,0x70,0x90,0x90,0x70,0x10,0x90,0x60,
+
+ 5, // 0x68 'h'
+ 0x00,0x80,0x80,0xe0,0x90,0x90,0x90,0x90,0x00,
+
+ 5, // 0x69 'i'
+ 0x00,0x20,0x00,0x60,0x20,0x20,0x20,0x70,0x00,
+
+ 5, // 0x6a 'j'
+ 0x00,0x20,0x00,0x60,0x20,0x20,0x20,0xa0,0x40,
+
+ 5, // 0x6b 'k'
+ 0x00,0x80,0x80,0x90,0xa0,0xc0,0xa0,0x90,0x00,
+
+ 5, // 0x6c 'l'
+ 0x00,0x60,0x20,0x20,0x20,0x20,0x20,0x70,0x00,
+
+ 5, // 0x6d 'm'
+ 0x00,0x00,0xa0,0xf0,0xf0,0xf0,0x90,0x90,0x00,
+
+ 5, // 0x6e 'n'
+ 0x00,0x00,0xa0,0xd0,0x90,0x90,0x90,0x90,0x00,
+
+ 5, // 0x6f 'o'
+ 0x00,0x00,0x60,0x90,0x90,0x90,0x90,0x60,0x00,
+
+ 5, // 0x70 'p'
+ 0x00,0x00,0xe0,0x90,0x90,0x90,0xe0,0x80,0x80,
+
+ 5, // 0x71 'q'
+ 0x00,0x00,0x70,0x90,0x90,0x90,0x70,0x10,0x10,
+
+ 5, // 0x72 'r'
+ 0x00,0x00,0xe0,0x90,0x80,0x80,0x80,0x80,0x00,
+
+ 5, // 0x73 's'
+ 0x00,0x00,0x60,0x90,0x40,0x20,0x90,0x60,0x00,
+
+ 5, // 0x74 't'
+ 0x00,0x40,0x40,0xe0,0x40,0x40,0x50,0x20,0x00,
+
+ 5, // 0x75 'u'
+ 0x00,0x00,0x90,0x90,0x90,0x90,0x90,0x70,0x00,
+
+ 5, // 0x76 'v'
+ 0x00,0x00,0x50,0x50,0x50,0x50,0x20,0x20,0x00,
+
+ 5, // 0x77 'w'
+ 0x00,0x00,0x90,0x90,0x90,0x90,0xf0,0x90,0x00,
+
+ 5, // 0x78 'x'
+ 0x00,0x00,0x90,0x90,0x60,0x60,0x90,0x90,0x00,
+
+ 5, // 0x79 'y'
+ 0x00,0x00,0x90,0x90,0x90,0x90,0x70,0x10,0xe0,
+
+ 5, // 0x7a 'z'
+ 0x00,0x00,0xf0,0x10,0x20,0x40,0x80,0xf0,0x00,
+
+ 5, // 0x7b '{'
+ 0x10,0x20,0x20,0x20,0xc0,0x20,0x20,0x20,0x10,
+
+ 5, // 0x7c '|'
+ 0x00,0x20,0x20,0x20,0x00,0x20,0x20,0x20,0x00,
+
+ 5, // 0x7d '}'
+ 0x80,0x40,0x40,0x40,0x30,0x40,0x40,0x40,0x80,
+
+ 5, // 0x7e '~'
+ 0x00,0x40,0xa8,0x10,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x7f ''
+ 0x00,0x00,0x00,0x20,0x50,0x88,0xf8,0x00,0x00,
+ 0
+ };
+
+ const int8u gse6x12[] =
+ {
+ 12, 0, 32, 128-32,
+
+ 0x00,0x00,0x0d,0x00,0x1a,0x00,0x27,0x00,0x34,0x00,0x41,0x00,0x4e,0x00,0x5b,0x00,0x68,0x00,
+ 0x75,0x00,0x82,0x00,0x8f,0x00,0x9c,0x00,0xa9,0x00,0xb6,0x00,0xc3,0x00,0xd0,0x00,0xdd,0x00,
+ 0xea,0x00,0xf7,0x00,0x04,0x01,0x11,0x01,0x1e,0x01,0x2b,0x01,0x38,0x01,0x45,0x01,0x52,0x01,
+ 0x5f,0x01,0x6c,0x01,0x79,0x01,0x86,0x01,0x93,0x01,0xa0,0x01,0xad,0x01,0xba,0x01,0xc7,0x01,
+ 0xd4,0x01,0xe1,0x01,0xee,0x01,0xfb,0x01,0x08,0x02,0x15,0x02,0x22,0x02,0x2f,0x02,0x3c,0x02,
+ 0x49,0x02,0x56,0x02,0x63,0x02,0x70,0x02,0x7d,0x02,0x8a,0x02,0x97,0x02,0xa4,0x02,0xb1,0x02,
+ 0xbe,0x02,0xcb,0x02,0xd8,0x02,0xe5,0x02,0xf2,0x02,0xff,0x02,0x0c,0x03,0x19,0x03,0x26,0x03,
+ 0x33,0x03,0x40,0x03,0x4d,0x03,0x5a,0x03,0x67,0x03,0x74,0x03,0x81,0x03,0x8e,0x03,0x9b,0x03,
+ 0xa8,0x03,0xb5,0x03,0xc2,0x03,0xcf,0x03,0xdc,0x03,0xe9,0x03,0xf6,0x03,0x03,0x04,0x10,0x04,
+ 0x1d,0x04,0x2a,0x04,0x37,0x04,0x44,0x04,0x51,0x04,0x5e,0x04,0x6b,0x04,0x78,0x04,0x85,0x04,
+ 0x92,0x04,0x9f,0x04,0xac,0x04,0xb9,0x04,0xc6,0x04,0xd3,0x04,
+
+ 6, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x21 '!'
+ 0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00,0x20,0x00,0x00,
+
+ 6, // 0x22 '"'
+ 0x00,0x50,0x50,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x23 '#'
+ 0x00,0x50,0x50,0xf8,0x50,0x50,0x50,0xf8,0x50,0x50,0x00,0x00,
+
+ 6, // 0x24 '$'
+ 0x00,0x20,0x70,0xa8,0xa0,0x70,0x28,0xa8,0x70,0x20,0x00,0x00,
+
+ 6, // 0x25 '%'
+ 0x00,0xc8,0xd8,0x10,0x30,0x20,0x60,0x40,0xd8,0x98,0x00,0x00,
+
+ 6, // 0x26 '&'
+ 0x00,0x60,0x90,0x90,0x90,0x60,0xa8,0x90,0x90,0x68,0x00,0x00,
+
+ 6, // 0x27 '''
+ 0x00,0x20,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x28 '('
+ 0x00,0x10,0x20,0x40,0x40,0x40,0x40,0x40,0x20,0x10,0x00,0x00,
+
+ 6, // 0x29 ')'
+ 0x00,0x40,0x20,0x10,0x10,0x10,0x10,0x10,0x20,0x40,0x00,0x00,
+
+ 6, // 0x2a '*'
+ 0x00,0x00,0x00,0x50,0x20,0xf8,0x20,0x50,0x00,0x00,0x00,0x00,
+
+ 6, // 0x2b '+'
+ 0x00,0x00,0x20,0x20,0x20,0xf8,0x20,0x20,0x20,0x00,0x00,0x00,
+
+ 6, // 0x2c ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x20,0x40,
+
+ 6, // 0x2d '-'
+ 0x00,0x00,0x00,0x00,0x00,0xf8,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x2e '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x00,
+
+ 6, // 0x2f '/'
+ 0x08,0x08,0x10,0x10,0x20,0x20,0x40,0x40,0x80,0x80,0x00,0x00,
+
+ 6, // 0x30 '0'
+ 0x00,0x70,0x88,0x88,0x98,0xa8,0xc8,0x88,0x88,0x70,0x00,0x00,
+
+ 6, // 0x31 '1'
+ 0x00,0x20,0x20,0x60,0x20,0x20,0x20,0x20,0x20,0x70,0x00,0x00,
+
+ 6, // 0x32 '2'
+ 0x00,0x70,0x88,0x88,0x08,0x10,0x20,0x40,0x80,0xf8,0x00,0x00,
+
+ 6, // 0x33 '3'
+ 0x00,0xf8,0x10,0x20,0x70,0x08,0x08,0x08,0x88,0x70,0x00,0x00,
+
+ 6, // 0x34 '4'
+ 0x00,0x10,0x20,0x40,0x90,0x90,0xf8,0x10,0x10,0x10,0x00,0x00,
+
+ 6, // 0x35 '5'
+ 0x00,0xf8,0x80,0x80,0xf0,0x08,0x08,0x08,0x88,0x70,0x00,0x00,
+
+ 6, // 0x36 '6'
+ 0x00,0x70,0x88,0x80,0x80,0xf0,0x88,0x88,0x88,0x70,0x00,0x00,
+
+ 6, // 0x37 '7'
+ 0x00,0xf8,0x88,0x08,0x08,0x10,0x20,0x20,0x20,0x20,0x00,0x00,
+
+ 6, // 0x38 '8'
+ 0x00,0x70,0x88,0x88,0x88,0x70,0x88,0x88,0x88,0x70,0x00,0x00,
+
+ 6, // 0x39 '9'
+ 0x00,0x70,0x88,0x88,0x88,0x78,0x08,0x08,0x88,0x70,0x00,0x00,
+
+ 6, // 0x3a ':'
+ 0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x00,0x00,
+
+ 6, // 0x3b ';'
+ 0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x20,0x20,0x40,
+
+ 6, // 0x3c '<'
+ 0x00,0x08,0x10,0x20,0x40,0x80,0x40,0x20,0x10,0x08,0x00,0x00,
+
+ 6, // 0x3d '='
+ 0x00,0x00,0x00,0x00,0xf8,0x00,0xf8,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x3e '>'
+ 0x00,0x80,0x40,0x20,0x10,0x08,0x10,0x20,0x40,0x80,0x00,0x00,
+
+ 6, // 0x3f '?'
+ 0x00,0x70,0x88,0x88,0x08,0x10,0x20,0x20,0x00,0x20,0x00,0x00,
+
+ 6, // 0x40 '@'
+ 0x00,0x70,0x88,0x88,0xb8,0xb8,0xb0,0x80,0x88,0x70,0x00,0x00,
+
+ 6, // 0x41 'A'
+ 0x00,0x20,0x50,0x88,0x88,0x88,0xf8,0x88,0x88,0x88,0x00,0x00,
+
+ 6, // 0x42 'B'
+ 0x00,0xf0,0x88,0x88,0x88,0xf0,0x88,0x88,0x88,0xf0,0x00,0x00,
+
+ 6, // 0x43 'C'
+ 0x00,0x70,0x88,0x88,0x80,0x80,0x80,0x88,0x88,0x70,0x00,0x00,
+
+ 6, // 0x44 'D'
+ 0x00,0xe0,0x90,0x88,0x88,0x88,0x88,0x88,0x90,0xe0,0x00,0x00,
+
+ 6, // 0x45 'E'
+ 0x00,0xf8,0x80,0x80,0x80,0xf0,0x80,0x80,0x80,0xf8,0x00,0x00,
+
+ 6, // 0x46 'F'
+ 0x00,0xf8,0x80,0x80,0x80,0xf0,0x80,0x80,0x80,0x80,0x00,0x00,
+
+ 6, // 0x47 'G'
+ 0x00,0x70,0x88,0x80,0x80,0xb8,0x88,0x88,0x88,0x70,0x00,0x00,
+
+ 6, // 0x48 'H'
+ 0x00,0x88,0x88,0x88,0x88,0xf8,0x88,0x88,0x88,0x88,0x00,0x00,
+
+ 6, // 0x49 'I'
+ 0x00,0x70,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x00,0x00,
+
+ 6, // 0x4a 'J'
+ 0x00,0x38,0x10,0x10,0x10,0x10,0x10,0x10,0x90,0x60,0x00,0x00,
+
+ 6, // 0x4b 'K'
+ 0x00,0x88,0x88,0x90,0xa0,0xc0,0xa0,0x90,0x88,0x88,0x00,0x00,
+
+ 6, // 0x4c 'L'
+ 0x00,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0xf8,0x00,0x00,
+
+ 6, // 0x4d 'M'
+ 0x00,0x88,0x88,0xd8,0xa8,0x88,0x88,0x88,0x88,0x88,0x00,0x00,
+
+ 6, // 0x4e 'N'
+ 0x00,0x88,0x88,0xc8,0xa8,0x98,0x88,0x88,0x88,0x88,0x00,0x00,
+
+ 6, // 0x4f 'O'
+ 0x00,0x70,0x88,0x88,0x88,0x88,0x88,0x88,0x88,0x70,0x00,0x00,
+
+ 6, // 0x50 'P'
+ 0x00,0xf0,0x88,0x88,0x88,0xf0,0x80,0x80,0x80,0x80,0x00,0x00,
+
+ 6, // 0x51 'Q'
+ 0x00,0x70,0x88,0x88,0x88,0x88,0x88,0xa8,0x90,0x68,0x00,0x00,
+
+ 6, // 0x52 'R'
+ 0x00,0xf0,0x88,0x88,0x88,0x88,0xf0,0xa0,0x90,0x88,0x00,0x00,
+
+ 6, // 0x53 'S'
+ 0x00,0x70,0x88,0x80,0x80,0x70,0x08,0x08,0x88,0x70,0x00,0x00,
+
+ 6, // 0x54 'T'
+ 0x00,0xf8,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00,0x00,
+
+ 6, // 0x55 'U'
+ 0x00,0x88,0x88,0x88,0x88,0x88,0x88,0x88,0x88,0x70,0x00,0x00,
+
+ 6, // 0x56 'V'
+ 0x00,0x88,0x88,0x88,0x88,0x88,0x50,0x50,0x20,0x20,0x00,0x00,
+
+ 6, // 0x57 'W'
+ 0x00,0x88,0x88,0x88,0x88,0x88,0xa8,0xa8,0xd8,0x88,0x00,0x00,
+
+ 6, // 0x58 'X'
+ 0x00,0x88,0x88,0x88,0x50,0x20,0x50,0x88,0x88,0x88,0x00,0x00,
+
+ 6, // 0x59 'Y'
+ 0x00,0x88,0x88,0x88,0x50,0x20,0x20,0x20,0x20,0x20,0x00,0x00,
+
+ 6, // 0x5a 'Z'
+ 0x00,0xf8,0x08,0x08,0x10,0x20,0x40,0x80,0x80,0xf8,0x00,0x00,
+
+ 6, // 0x5b '['
+ 0x70,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x70,0x00,
+
+ 6, // 0x5c '\'
+ 0x80,0x80,0x40,0x40,0x20,0x20,0x10,0x10,0x08,0x08,0x00,0x00,
+
+ 6, // 0x5d ']'
+ 0x70,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x70,0x00,
+
+ 6, // 0x5e '^'
+ 0x00,0x00,0x20,0x50,0x88,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x5f '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0x00,0x00,
+
+ 6, // 0x60 '`'
+ 0x00,0x40,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x61 'a'
+ 0x00,0x00,0x00,0x70,0x88,0x08,0x78,0x88,0x88,0x78,0x00,0x00,
+
+ 6, // 0x62 'b'
+ 0x00,0x80,0x80,0x80,0xf0,0x88,0x88,0x88,0x88,0xf0,0x00,0x00,
+
+ 6, // 0x63 'c'
+ 0x00,0x00,0x00,0x70,0x88,0x80,0x80,0x80,0x88,0x70,0x00,0x00,
+
+ 6, // 0x64 'd'
+ 0x00,0x08,0x08,0x08,0x78,0x88,0x88,0x88,0x88,0x78,0x00,0x00,
+
+ 6, // 0x65 'e'
+ 0x00,0x00,0x00,0x70,0x88,0x88,0xf8,0x80,0x80,0x78,0x00,0x00,
+
+ 6, // 0x66 'f'
+ 0x00,0x18,0x20,0x20,0xf8,0x20,0x20,0x20,0x20,0x20,0x00,0x00,
+
+ 6, // 0x67 'g'
+ 0x00,0x00,0x00,0x78,0x88,0x88,0x88,0x88,0x78,0x08,0x08,0xf0,
+
+ 6, // 0x68 'h'
+ 0x00,0x80,0x80,0x80,0xf0,0x88,0x88,0x88,0x88,0x88,0x00,0x00,
+
+ 6, // 0x69 'i'
+ 0x00,0x20,0x00,0x00,0x60,0x20,0x20,0x20,0x20,0x70,0x00,0x00,
+
+ 6, // 0x6a 'j'
+ 0x00,0x10,0x00,0x00,0x30,0x10,0x10,0x10,0x10,0x10,0x90,0x60,
+
+ 6, // 0x6b 'k'
+ 0x00,0x80,0x80,0x80,0x88,0x90,0xa0,0xd0,0x88,0x88,0x00,0x00,
+
+ 6, // 0x6c 'l'
+ 0x00,0x60,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x00,0x00,
+
+ 6, // 0x6d 'm'
+ 0x00,0x00,0x00,0xd0,0xa8,0xa8,0xa8,0xa8,0xa8,0xa8,0x00,0x00,
+
+ 6, // 0x6e 'n'
+ 0x00,0x00,0x00,0xb0,0xc8,0x88,0x88,0x88,0x88,0x88,0x00,0x00,
+
+ 6, // 0x6f 'o'
+ 0x00,0x00,0x00,0x70,0x88,0x88,0x88,0x88,0x88,0x70,0x00,0x00,
+
+ 6, // 0x70 'p'
+ 0x00,0x00,0x00,0xf0,0x88,0x88,0x88,0x88,0xf0,0x80,0x80,0x80,
+
+ 6, // 0x71 'q'
+ 0x00,0x00,0x00,0x78,0x88,0x88,0x88,0x88,0x78,0x08,0x08,0x08,
+
+ 6, // 0x72 'r'
+ 0x00,0x00,0x00,0xb0,0xc8,0x88,0x80,0x80,0x80,0x80,0x00,0x00,
+
+ 6, // 0x73 's'
+ 0x00,0x00,0x00,0x70,0x88,0x80,0x70,0x08,0x88,0x70,0x00,0x00,
+
+ 6, // 0x74 't'
+ 0x00,0x40,0x40,0x40,0xe0,0x40,0x40,0x40,0x48,0x30,0x00,0x00,
+
+ 6, // 0x75 'u'
+ 0x00,0x00,0x00,0x88,0x88,0x88,0x88,0x88,0x88,0x78,0x00,0x00,
+
+ 6, // 0x76 'v'
+ 0x00,0x00,0x00,0x88,0x88,0x88,0x50,0x50,0x20,0x20,0x00,0x00,
+
+ 6, // 0x77 'w'
+ 0x00,0x00,0x00,0x88,0x88,0x88,0xa8,0xa8,0xd8,0x88,0x00,0x00,
+
+ 6, // 0x78 'x'
+ 0x00,0x00,0x00,0x88,0x88,0x50,0x20,0x50,0x88,0x88,0x00,0x00,
+
+ 6, // 0x79 'y'
+ 0x00,0x00,0x00,0x88,0x88,0x88,0x88,0x88,0x78,0x08,0x10,0xe0,
+
+ 6, // 0x7a 'z'
+ 0x00,0x00,0x00,0xf8,0x08,0x10,0x20,0x40,0x80,0xf8,0x00,0x00,
+
+ 6, // 0x7b '{'
+ 0x18,0x20,0x20,0x20,0x20,0xc0,0x20,0x20,0x20,0x20,0x18,0x00,
+
+ 6, // 0x7c '|'
+ 0x00,0x20,0x20,0x20,0x20,0x00,0x20,0x20,0x20,0x20,0x00,0x00,
+
+ 6, // 0x7d '}'
+ 0xc0,0x20,0x20,0x20,0x20,0x18,0x20,0x20,0x20,0x20,0xc0,0x00,
+
+ 6, // 0x7e '~'
+ 0x00,0x00,0x40,0xa8,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x7f ''
+ 0x00,0x00,0x00,0x00,0x20,0x50,0x88,0xf8,0x00,0x00,0x00,0x00,
+ 0
+ };
+
+ const int8u gse6x9[] =
+ {
+ 9, 0, 32, 128-32,
+
+ 0x00,0x00,0x0a,0x00,0x14,0x00,0x1e,0x00,0x28,0x00,0x32,0x00,0x3c,0x00,0x46,0x00,0x50,0x00,
+ 0x5a,0x00,0x64,0x00,0x6e,0x00,0x78,0x00,0x82,0x00,0x8c,0x00,0x96,0x00,0xa0,0x00,0xaa,0x00,
+ 0xb4,0x00,0xbe,0x00,0xc8,0x00,0xd2,0x00,0xdc,0x00,0xe6,0x00,0xf0,0x00,0xfa,0x00,0x04,0x01,
+ 0x0e,0x01,0x18,0x01,0x22,0x01,0x2c,0x01,0x36,0x01,0x40,0x01,0x4a,0x01,0x54,0x01,0x5e,0x01,
+ 0x68,0x01,0x72,0x01,0x7c,0x01,0x86,0x01,0x90,0x01,0x9a,0x01,0xa4,0x01,0xae,0x01,0xb8,0x01,
+ 0xc2,0x01,0xcc,0x01,0xd6,0x01,0xe0,0x01,0xea,0x01,0xf4,0x01,0xfe,0x01,0x08,0x02,0x12,0x02,
+ 0x1c,0x02,0x26,0x02,0x30,0x02,0x3a,0x02,0x44,0x02,0x4e,0x02,0x58,0x02,0x62,0x02,0x6c,0x02,
+ 0x76,0x02,0x80,0x02,0x8a,0x02,0x94,0x02,0x9e,0x02,0xa8,0x02,0xb2,0x02,0xbc,0x02,0xc6,0x02,
+ 0xd0,0x02,0xda,0x02,0xe4,0x02,0xee,0x02,0xf8,0x02,0x02,0x03,0x0c,0x03,0x16,0x03,0x20,0x03,
+ 0x2a,0x03,0x34,0x03,0x3e,0x03,0x48,0x03,0x52,0x03,0x5c,0x03,0x66,0x03,0x70,0x03,0x7a,0x03,
+ 0x84,0x03,0x8e,0x03,0x98,0x03,0xa2,0x03,0xac,0x03,0xb6,0x03,
+
+ 6, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x21 '!'
+ 0x00,0x20,0x20,0x20,0x20,0x20,0x00,0x20,0x00,
+
+ 6, // 0x22 '"'
+ 0x00,0x50,0x50,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x23 '#'
+ 0x00,0x50,0x50,0xf8,0x50,0xf8,0x50,0x50,0x00,
+
+ 6, // 0x24 '$'
+ 0x00,0x70,0xa8,0xa0,0x70,0x28,0xa8,0x70,0x00,
+
+ 6, // 0x25 '%'
+ 0x00,0xc8,0xc8,0x10,0x20,0x40,0x98,0x98,0x00,
+
+ 6, // 0x26 '&'
+ 0x00,0x60,0x90,0x90,0x60,0xa8,0x90,0x68,0x00,
+
+ 6, // 0x27 '''
+ 0x00,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x28 '('
+ 0x10,0x20,0x40,0x40,0x40,0x40,0x40,0x20,0x10,
+
+ 6, // 0x29 ')'
+ 0x40,0x20,0x10,0x10,0x10,0x10,0x10,0x20,0x40,
+
+ 6, // 0x2a '*'
+ 0x00,0x00,0x20,0xa8,0x70,0xa8,0x20,0x00,0x00,
+
+ 6, // 0x2b '+'
+ 0x00,0x00,0x20,0x20,0xf8,0x20,0x20,0x00,0x00,
+
+ 6, // 0x2c ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x40,
+
+ 6, // 0x2d '-'
+ 0x00,0x00,0x00,0x00,0xf8,0x00,0x00,0x00,0x00,
+
+ 6, // 0x2e '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x00,
+
+ 6, // 0x2f '/'
+ 0x00,0x08,0x08,0x10,0x20,0x40,0x80,0x80,0x00,
+
+ 6, // 0x30 '0'
+ 0x00,0x70,0x88,0x98,0xa8,0xc8,0x88,0x70,0x00,
+
+ 6, // 0x31 '1'
+ 0x00,0x20,0x60,0x20,0x20,0x20,0x20,0x70,0x00,
+
+ 6, // 0x32 '2'
+ 0x00,0x70,0x88,0x08,0x10,0x20,0x40,0xf8,0x00,
+
+ 6, // 0x33 '3'
+ 0x00,0xf8,0x10,0x20,0x70,0x08,0x88,0x70,0x00,
+
+ 6, // 0x34 '4'
+ 0x00,0x10,0x20,0x40,0x90,0xf8,0x10,0x10,0x00,
+
+ 6, // 0x35 '5'
+ 0x00,0xf8,0x80,0xf0,0x08,0x08,0x88,0x70,0x00,
+
+ 6, // 0x36 '6'
+ 0x00,0x70,0x88,0x80,0xf0,0x88,0x88,0x70,0x00,
+
+ 6, // 0x37 '7'
+ 0x00,0xf8,0x08,0x08,0x10,0x20,0x40,0x40,0x00,
+
+ 6, // 0x38 '8'
+ 0x00,0x70,0x88,0x88,0x70,0x88,0x88,0x70,0x00,
+
+ 6, // 0x39 '9'
+ 0x00,0x70,0x88,0x88,0x78,0x08,0x88,0x70,0x00,
+
+ 6, // 0x3a ':'
+ 0x00,0x00,0x00,0x20,0x00,0x00,0x20,0x00,0x00,
+
+ 6, // 0x3b ';'
+ 0x00,0x00,0x00,0x20,0x00,0x00,0x20,0x20,0x40,
+
+ 6, // 0x3c '<'
+ 0x00,0x08,0x10,0x20,0x40,0x20,0x10,0x08,0x00,
+
+ 6, // 0x3d '='
+ 0x00,0x00,0x00,0xf8,0x00,0xf8,0x00,0x00,0x00,
+
+ 6, // 0x3e '>'
+ 0x00,0x80,0x40,0x20,0x10,0x20,0x40,0x80,0x00,
+
+ 6, // 0x3f '?'
+ 0x00,0x70,0x88,0x08,0x10,0x20,0x00,0x20,0x00,
+
+ 6, // 0x40 '@'
+ 0x00,0x70,0x88,0x88,0xb8,0xb8,0x80,0x70,0x00,
+
+ 6, // 0x41 'A'
+ 0x00,0x20,0x50,0x88,0x88,0xf8,0x88,0x88,0x00,
+
+ 6, // 0x42 'B'
+ 0x00,0xf0,0x88,0x88,0xf0,0x88,0x88,0xf0,0x00,
+
+ 6, // 0x43 'C'
+ 0x00,0x70,0x88,0x80,0x80,0x80,0x88,0x70,0x00,
+
+ 6, // 0x44 'D'
+ 0x00,0xe0,0x90,0x88,0x88,0x88,0x90,0xe0,0x00,
+
+ 6, // 0x45 'E'
+ 0x00,0xf8,0x80,0x80,0xf0,0x80,0x80,0xf8,0x00,
+
+ 6, // 0x46 'F'
+ 0x00,0xf8,0x80,0x80,0xf0,0x80,0x80,0x80,0x00,
+
+ 6, // 0x47 'G'
+ 0x00,0x70,0x88,0x80,0xb8,0x88,0x88,0x70,0x00,
+
+ 6, // 0x48 'H'
+ 0x00,0x88,0x88,0x88,0xf8,0x88,0x88,0x88,0x00,
+
+ 6, // 0x49 'I'
+ 0x00,0x70,0x20,0x20,0x20,0x20,0x20,0x70,0x00,
+
+ 6, // 0x4a 'J'
+ 0x00,0x38,0x10,0x10,0x10,0x10,0x90,0x60,0x00,
+
+ 6, // 0x4b 'K'
+ 0x00,0x88,0x90,0xa0,0xc0,0xa0,0x90,0x88,0x00,
+
+ 6, // 0x4c 'L'
+ 0x00,0x80,0x80,0x80,0x80,0x80,0x80,0xf8,0x00,
+
+ 6, // 0x4d 'M'
+ 0x00,0x88,0xd8,0xa8,0x88,0x88,0x88,0x88,0x00,
+
+ 6, // 0x4e 'N'
+ 0x00,0x88,0x88,0xc8,0xa8,0x98,0x88,0x88,0x00,
+
+ 6, // 0x4f 'O'
+ 0x00,0x70,0x88,0x88,0x88,0x88,0x88,0x70,0x00,
+
+ 6, // 0x50 'P'
+ 0x00,0xf0,0x88,0x88,0xf0,0x80,0x80,0x80,0x00,
+
+ 6, // 0x51 'Q'
+ 0x00,0x70,0x88,0x88,0x88,0xa8,0x90,0x68,0x00,
+
+ 6, // 0x52 'R'
+ 0x00,0xf0,0x88,0x88,0x88,0xf0,0x90,0x88,0x00,
+
+ 6, // 0x53 'S'
+ 0x00,0x70,0x88,0x80,0x70,0x08,0x88,0x70,0x00,
+
+ 6, // 0x54 'T'
+ 0x00,0xf8,0x20,0x20,0x20,0x20,0x20,0x20,0x00,
+
+ 6, // 0x55 'U'
+ 0x00,0x88,0x88,0x88,0x88,0x88,0x88,0x70,0x00,
+
+ 6, // 0x56 'V'
+ 0x00,0x88,0x88,0x88,0x50,0x50,0x20,0x20,0x00,
+
+ 6, // 0x57 'W'
+ 0x00,0x88,0x88,0x88,0xa8,0xa8,0xd8,0x88,0x00,
+
+ 6, // 0x58 'X'
+ 0x00,0x88,0x88,0x50,0x20,0x50,0x88,0x88,0x00,
+
+ 6, // 0x59 'Y'
+ 0x00,0x88,0x88,0x50,0x20,0x20,0x20,0x20,0x00,
+
+ 6, // 0x5a 'Z'
+ 0x00,0xf8,0x08,0x10,0x20,0x40,0x80,0xf8,0x00,
+
+ 6, // 0x5b '['
+ 0x70,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x70,
+
+ 6, // 0x5c '\'
+ 0x00,0x80,0x80,0x40,0x20,0x10,0x08,0x08,0x00,
+
+ 6, // 0x5d ']'
+ 0x70,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x70,
+
+ 6, // 0x5e '^'
+ 0x00,0x00,0x20,0x50,0x88,0x00,0x00,0x00,0x00,
+
+ 6, // 0x5f '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0x00,
+
+ 6, // 0x60 '`'
+ 0x00,0x40,0x20,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x61 'a'
+ 0x00,0x00,0x00,0x70,0x08,0x78,0x88,0x78,0x00,
+
+ 6, // 0x62 'b'
+ 0x00,0x80,0x80,0xf0,0x88,0x88,0x88,0xf0,0x00,
+
+ 6, // 0x63 'c'
+ 0x00,0x00,0x00,0x70,0x88,0x80,0x88,0x70,0x00,
+
+ 6, // 0x64 'd'
+ 0x00,0x08,0x08,0x78,0x88,0x88,0x88,0x78,0x00,
+
+ 6, // 0x65 'e'
+ 0x00,0x00,0x00,0x70,0x88,0xf8,0x80,0x78,0x00,
+
+ 6, // 0x66 'f'
+ 0x00,0x18,0x20,0x20,0xf8,0x20,0x20,0x20,0x00,
+
+ 6, // 0x67 'g'
+ 0x00,0x00,0x00,0x78,0x88,0x88,0x78,0x08,0x70,
+
+ 6, // 0x68 'h'
+ 0x00,0x80,0x80,0xf0,0x88,0x88,0x88,0x88,0x00,
+
+ 6, // 0x69 'i'
+ 0x00,0x20,0x00,0x60,0x20,0x20,0x20,0x70,0x00,
+
+ 6, // 0x6a 'j'
+ 0x00,0x10,0x00,0x30,0x10,0x10,0x10,0x90,0x60,
+
+ 6, // 0x6b 'k'
+ 0x00,0x00,0x80,0x88,0x90,0xa0,0xd0,0x88,0x00,
+
+ 6, // 0x6c 'l'
+ 0x00,0x60,0x20,0x20,0x20,0x20,0x20,0x70,0x00,
+
+ 6, // 0x6d 'm'
+ 0x00,0x00,0x00,0xd0,0xa8,0xa8,0xa8,0xa8,0x00,
+
+ 6, // 0x6e 'n'
+ 0x00,0x00,0x00,0xb0,0xc8,0x88,0x88,0x88,0x00,
+
+ 6, // 0x6f 'o'
+ 0x00,0x00,0x00,0x70,0x88,0x88,0x88,0x70,0x00,
+
+ 6, // 0x70 'p'
+ 0x00,0x00,0x00,0xf0,0x88,0x88,0xf0,0x80,0x80,
+
+ 6, // 0x71 'q'
+ 0x00,0x00,0x00,0x78,0x88,0x88,0x78,0x08,0x08,
+
+ 6, // 0x72 'r'
+ 0x00,0x00,0x00,0xb8,0xc0,0x80,0x80,0x80,0x00,
+
+ 6, // 0x73 's'
+ 0x00,0x00,0x00,0x78,0x80,0x70,0x08,0xf0,0x00,
+
+ 6, // 0x74 't'
+ 0x00,0x40,0x40,0xe0,0x40,0x40,0x48,0x30,0x00,
+
+ 6, // 0x75 'u'
+ 0x00,0x00,0x00,0x88,0x88,0x88,0x88,0x78,0x00,
+
+ 6, // 0x76 'v'
+ 0x00,0x00,0x00,0x88,0x88,0x88,0x50,0x20,0x00,
+
+ 6, // 0x77 'w'
+ 0x00,0x00,0x00,0x88,0x88,0xa8,0xd8,0x88,0x00,
+
+ 6, // 0x78 'x'
+ 0x00,0x00,0x00,0x88,0x50,0x20,0x50,0x88,0x00,
+
+ 6, // 0x79 'y'
+ 0x00,0x00,0x00,0x88,0x88,0x88,0x78,0x08,0x70,
+
+ 6, // 0x7a 'z'
+ 0x00,0x00,0x00,0xf8,0x10,0x20,0x40,0xf8,0x00,
+
+ 6, // 0x7b '{'
+ 0x18,0x20,0x20,0x20,0xc0,0x20,0x20,0x20,0x18,
+
+ 6, // 0x7c '|'
+ 0x00,0x20,0x20,0x20,0x00,0x20,0x20,0x20,0x00,
+
+ 6, // 0x7d '}'
+ 0xc0,0x20,0x20,0x20,0x18,0x20,0x20,0x20,0xc0,
+
+ 6, // 0x7e '~'
+ 0x00,0x40,0xa8,0x10,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x7f ''
+ 0x00,0x00,0x00,0x20,0x50,0x88,0xf8,0x00,0x00,
+ 0
+ };
+
+ const int8u gse7x11[] =
+ {
+ 11, 0, 32, 128-32,
+
+ 0x00,0x00,0x0c,0x00,0x18,0x00,0x24,0x00,0x30,0x00,0x3c,0x00,0x48,0x00,0x54,0x00,0x60,0x00,
+ 0x6c,0x00,0x78,0x00,0x84,0x00,0x90,0x00,0x9c,0x00,0xa8,0x00,0xb4,0x00,0xc0,0x00,0xcc,0x00,
+ 0xd8,0x00,0xe4,0x00,0xf0,0x00,0xfc,0x00,0x08,0x01,0x14,0x01,0x20,0x01,0x2c,0x01,0x38,0x01,
+ 0x44,0x01,0x50,0x01,0x5c,0x01,0x68,0x01,0x74,0x01,0x80,0x01,0x8c,0x01,0x98,0x01,0xa4,0x01,
+ 0xb0,0x01,0xbc,0x01,0xc8,0x01,0xd4,0x01,0xe0,0x01,0xec,0x01,0xf8,0x01,0x04,0x02,0x10,0x02,
+ 0x1c,0x02,0x28,0x02,0x34,0x02,0x40,0x02,0x4c,0x02,0x58,0x02,0x64,0x02,0x70,0x02,0x7c,0x02,
+ 0x88,0x02,0x94,0x02,0xa0,0x02,0xac,0x02,0xb8,0x02,0xc4,0x02,0xd0,0x02,0xdc,0x02,0xe8,0x02,
+ 0xf4,0x02,0x00,0x03,0x0c,0x03,0x18,0x03,0x24,0x03,0x30,0x03,0x3c,0x03,0x48,0x03,0x54,0x03,
+ 0x60,0x03,0x6c,0x03,0x78,0x03,0x84,0x03,0x90,0x03,0x9c,0x03,0xa8,0x03,0xb4,0x03,0xc0,0x03,
+ 0xcc,0x03,0xd8,0x03,0xe4,0x03,0xf0,0x03,0xfc,0x03,0x08,0x04,0x14,0x04,0x20,0x04,0x2c,0x04,
+ 0x38,0x04,0x44,0x04,0x50,0x04,0x5c,0x04,0x68,0x04,0x74,0x04,
+
+ 7, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x21 '!'
+ 0x00,0x10,0x38,0x38,0x38,0x10,0x10,0x00,0x10,0x00,0x00,
+
+ 7, // 0x22 '"'
+ 0x00,0x00,0x24,0x24,0x24,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x23 '#'
+ 0x00,0x48,0x48,0xfc,0x48,0x48,0xfc,0x48,0x48,0x00,0x00,
+
+ 7, // 0x24 '$'
+ 0x00,0x10,0x38,0x54,0x50,0x38,0x14,0x54,0x38,0x10,0x00,
+
+ 7, // 0x25 '%'
+ 0x00,0x00,0x42,0xa4,0x48,0x10,0x24,0x4a,0x84,0x00,0x00,
+
+ 7, // 0x26 '&'
+ 0x00,0x30,0x48,0x48,0x30,0x60,0x94,0x98,0x6c,0x00,0x00,
+
+ 7, // 0x27 '''
+ 0x00,0x20,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x28 '('
+ 0x00,0x04,0x08,0x10,0x10,0x10,0x10,0x08,0x04,0x00,0x00,
+
+ 7, // 0x29 ')'
+ 0x00,0x40,0x20,0x10,0x10,0x10,0x10,0x20,0x40,0x00,0x00,
+
+ 7, // 0x2a '*'
+ 0x00,0x00,0x00,0x20,0xa8,0x70,0xa8,0x20,0x00,0x00,0x00,
+
+ 7, // 0x2b '+'
+ 0x00,0x00,0x00,0x10,0x10,0x7c,0x10,0x10,0x00,0x00,0x00,
+
+ 7, // 0x2c ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x30,0x60,
+
+ 7, // 0x2d '-'
+ 0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x2e '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,
+
+ 7, // 0x2f '/'
+ 0x00,0x08,0x08,0x10,0x10,0x20,0x20,0x40,0x40,0x00,0x00,
+
+ 7, // 0x30 '0'
+ 0x00,0x38,0x44,0x4c,0x54,0x64,0x44,0x44,0x38,0x00,0x00,
+
+ 7, // 0x31 '1'
+ 0x00,0x10,0x30,0x10,0x10,0x10,0x10,0x10,0x7c,0x00,0x00,
+
+ 7, // 0x32 '2'
+ 0x00,0x38,0x44,0x04,0x08,0x10,0x20,0x44,0x7c,0x00,0x00,
+
+ 7, // 0x33 '3'
+ 0x00,0x7c,0x48,0x10,0x38,0x04,0x04,0x44,0x38,0x00,0x00,
+
+ 7, // 0x34 '4'
+ 0x00,0x08,0x10,0x20,0x48,0x48,0x7c,0x08,0x1c,0x00,0x00,
+
+ 7, // 0x35 '5'
+ 0x00,0x7c,0x40,0x40,0x78,0x04,0x04,0x44,0x38,0x00,0x00,
+
+ 7, // 0x36 '6'
+ 0x00,0x18,0x20,0x40,0x78,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 7, // 0x37 '7'
+ 0x00,0x7c,0x44,0x04,0x08,0x10,0x10,0x10,0x10,0x00,0x00,
+
+ 7, // 0x38 '8'
+ 0x00,0x38,0x44,0x44,0x38,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 7, // 0x39 '9'
+ 0x00,0x38,0x44,0x44,0x44,0x3c,0x04,0x08,0x30,0x00,0x00,
+
+ 7, // 0x3a ':'
+ 0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x30,0x00,0x00,0x00,
+
+ 7, // 0x3b ';'
+ 0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x30,0x30,0x60,0x00,
+
+ 7, // 0x3c '<'
+ 0x00,0x00,0x04,0x08,0x10,0x20,0x10,0x08,0x04,0x00,0x00,
+
+ 7, // 0x3d '='
+ 0x00,0x00,0x00,0x00,0xfc,0x00,0xfc,0x00,0x00,0x00,0x00,
+
+ 7, // 0x3e '>'
+ 0x00,0x00,0x40,0x20,0x10,0x08,0x10,0x20,0x40,0x00,0x00,
+
+ 7, // 0x3f '?'
+ 0x00,0x70,0x88,0x88,0x10,0x20,0x20,0x00,0x20,0x00,0x00,
+
+ 7, // 0x40 '@'
+ 0x00,0x30,0x48,0x04,0x34,0x54,0x54,0x54,0x28,0x00,0x00,
+
+ 7, // 0x41 'A'
+ 0x00,0x10,0x28,0x44,0x44,0x7c,0x44,0x44,0x44,0x00,0x00,
+
+ 7, // 0x42 'B'
+ 0x00,0x78,0x44,0x44,0x78,0x44,0x44,0x44,0x78,0x00,0x00,
+
+ 7, // 0x43 'C'
+ 0x00,0x38,0x44,0x40,0x40,0x40,0x40,0x44,0x38,0x00,0x00,
+
+ 7, // 0x44 'D'
+ 0x00,0x70,0x48,0x44,0x44,0x44,0x44,0x48,0x70,0x00,0x00,
+
+ 7, // 0x45 'E'
+ 0x00,0x7c,0x40,0x40,0x70,0x40,0x40,0x40,0x7c,0x00,0x00,
+
+ 7, // 0x46 'F'
+ 0x00,0x7c,0x40,0x40,0x70,0x40,0x40,0x40,0x40,0x00,0x00,
+
+ 7, // 0x47 'G'
+ 0x00,0x38,0x44,0x40,0x40,0x5c,0x44,0x44,0x38,0x00,0x00,
+
+ 7, // 0x48 'H'
+ 0x00,0x44,0x44,0x44,0x7c,0x44,0x44,0x44,0x44,0x00,0x00,
+
+ 7, // 0x49 'I'
+ 0x00,0x38,0x10,0x10,0x10,0x10,0x10,0x10,0x38,0x00,0x00,
+
+ 7, // 0x4a 'J'
+ 0x00,0x1c,0x08,0x08,0x08,0x08,0x08,0x48,0x30,0x00,0x00,
+
+ 7, // 0x4b 'K'
+ 0x00,0x44,0x48,0x50,0x60,0x50,0x48,0x44,0x44,0x00,0x00,
+
+ 7, // 0x4c 'L'
+ 0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x7c,0x00,0x00,
+
+ 7, // 0x4d 'M'
+ 0x00,0x44,0x6c,0x54,0x54,0x44,0x44,0x44,0x44,0x00,0x00,
+
+ 7, // 0x4e 'N'
+ 0x00,0x44,0x44,0x64,0x54,0x4c,0x44,0x44,0x44,0x00,0x00,
+
+ 7, // 0x4f 'O'
+ 0x00,0x38,0x44,0x44,0x44,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 7, // 0x50 'P'
+ 0x00,0x78,0x44,0x44,0x44,0x78,0x40,0x40,0x40,0x00,0x00,
+
+ 7, // 0x51 'Q'
+ 0x00,0x38,0x44,0x44,0x44,0x44,0x54,0x48,0x34,0x00,0x00,
+
+ 7, // 0x52 'R'
+ 0x00,0x78,0x44,0x44,0x44,0x78,0x50,0x48,0x44,0x00,0x00,
+
+ 7, // 0x53 'S'
+ 0x00,0x38,0x44,0x40,0x38,0x04,0x44,0x44,0x38,0x00,0x00,
+
+ 7, // 0x54 'T'
+ 0x00,0x7c,0x54,0x10,0x10,0x10,0x10,0x10,0x10,0x00,0x00,
+
+ 7, // 0x55 'U'
+ 0x00,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 7, // 0x56 'V'
+ 0x00,0x44,0x44,0x44,0x44,0x28,0x28,0x10,0x10,0x00,0x00,
+
+ 7, // 0x57 'W'
+ 0x00,0x44,0x44,0x44,0x44,0x54,0x54,0x6c,0x44,0x00,0x00,
+
+ 7, // 0x58 'X'
+ 0x00,0x44,0x44,0x28,0x10,0x28,0x44,0x44,0x44,0x00,0x00,
+
+ 7, // 0x59 'Y'
+ 0x00,0x44,0x44,0x44,0x28,0x10,0x10,0x10,0x38,0x00,0x00,
+
+ 7, // 0x5a 'Z'
+ 0x00,0x7c,0x04,0x08,0x10,0x20,0x40,0x44,0x7c,0x00,0x00,
+
+ 7, // 0x5b '['
+ 0x00,0x38,0x20,0x20,0x20,0x20,0x20,0x20,0x38,0x00,0x00,
+
+ 7, // 0x5c '\'
+ 0x00,0x40,0x40,0x20,0x20,0x10,0x10,0x08,0x08,0x00,0x00,
+
+ 7, // 0x5d ']'
+ 0x00,0x38,0x08,0x08,0x08,0x08,0x08,0x08,0x38,0x00,0x00,
+
+ 7, // 0x5e '^'
+ 0x00,0x10,0x28,0x44,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x5f '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,
+
+ 7, // 0x60 '`'
+ 0x00,0x20,0x20,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x61 'a'
+ 0x00,0x00,0x00,0x38,0x04,0x3c,0x44,0x44,0x3c,0x00,0x00,
+
+ 7, // 0x62 'b'
+ 0x00,0x40,0x40,0x78,0x44,0x44,0x44,0x44,0x78,0x00,0x00,
+
+ 7, // 0x63 'c'
+ 0x00,0x00,0x00,0x38,0x44,0x40,0x40,0x44,0x38,0x00,0x00,
+
+ 7, // 0x64 'd'
+ 0x00,0x04,0x04,0x3c,0x44,0x44,0x44,0x44,0x3c,0x00,0x00,
+
+ 7, // 0x65 'e'
+ 0x00,0x00,0x00,0x38,0x44,0x7c,0x40,0x44,0x38,0x00,0x00,
+
+ 7, // 0x66 'f'
+ 0x00,0x18,0x24,0x20,0x70,0x20,0x20,0x20,0x70,0x00,0x00,
+
+ 7, // 0x67 'g'
+ 0x00,0x00,0x00,0x3c,0x44,0x44,0x44,0x3c,0x04,0x44,0x38,
+
+ 7, // 0x68 'h'
+ 0x00,0x40,0x40,0x40,0x58,0x64,0x44,0x44,0x44,0x00,0x00,
+
+ 7, // 0x69 'i'
+ 0x00,0x10,0x00,0x30,0x10,0x10,0x10,0x10,0x38,0x00,0x00,
+
+ 7, // 0x6a 'j'
+ 0x00,0x08,0x00,0x18,0x08,0x08,0x08,0x08,0x48,0x30,0x00,
+
+ 7, // 0x6b 'k'
+ 0x00,0x40,0x40,0x44,0x48,0x50,0x68,0x44,0x44,0x00,0x00,
+
+ 7, // 0x6c 'l'
+ 0x00,0x30,0x10,0x10,0x10,0x10,0x10,0x10,0x38,0x00,0x00,
+
+ 7, // 0x6d 'm'
+ 0x00,0x00,0x00,0xa8,0x54,0x54,0x54,0x54,0x54,0x00,0x00,
+
+ 7, // 0x6e 'n'
+ 0x00,0x00,0x00,0xb8,0x44,0x44,0x44,0x44,0x44,0x00,0x00,
+
+ 7, // 0x6f 'o'
+ 0x00,0x00,0x00,0x38,0x44,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 7, // 0x70 'p'
+ 0x00,0x00,0x00,0x78,0x44,0x44,0x44,0x44,0x78,0x40,0x40,
+
+ 7, // 0x71 'q'
+ 0x00,0x00,0x00,0x3c,0x44,0x44,0x44,0x44,0x3c,0x04,0x04,
+
+ 7, // 0x72 'r'
+ 0x00,0x00,0x00,0x58,0x64,0x44,0x40,0x40,0x40,0x00,0x00,
+
+ 7, // 0x73 's'
+ 0x00,0x00,0x00,0x3c,0x40,0x38,0x04,0x04,0x78,0x00,0x00,
+
+ 7, // 0x74 't'
+ 0x00,0x20,0x20,0x70,0x20,0x20,0x20,0x24,0x18,0x00,0x00,
+
+ 7, // 0x75 'u'
+ 0x00,0x00,0x00,0x44,0x44,0x44,0x44,0x44,0x3a,0x00,0x00,
+
+ 7, // 0x76 'v'
+ 0x00,0x00,0x00,0x44,0x44,0x44,0x44,0x28,0x10,0x00,0x00,
+
+ 7, // 0x77 'w'
+ 0x00,0x00,0x00,0x44,0x44,0x54,0x54,0x6c,0x44,0x00,0x00,
+
+ 7, // 0x78 'x'
+ 0x00,0x00,0x00,0x44,0x28,0x10,0x28,0x44,0x44,0x00,0x00,
+
+ 7, // 0x79 'y'
+ 0x00,0x00,0x00,0x44,0x44,0x44,0x3c,0x04,0x08,0x30,0x00,
+
+ 7, // 0x7a 'z'
+ 0x00,0x00,0x00,0x7c,0x08,0x10,0x20,0x44,0x7c,0x00,0x00,
+
+ 7, // 0x7b '{'
+ 0x00,0x0c,0x10,0x10,0x10,0x60,0x10,0x10,0x0c,0x00,0x00,
+
+ 7, // 0x7c '|'
+ 0x00,0x20,0x20,0x20,0x00,0x20,0x20,0x20,0x20,0x00,0x00,
+
+ 7, // 0x7d '}'
+ 0x00,0x60,0x10,0x10,0x10,0x0c,0x10,0x10,0x60,0x00,0x00,
+
+ 7, // 0x7e '~'
+ 0x00,0x00,0x64,0x98,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x7f ''
+ 0x00,0x00,0x00,0x10,0x28,0x44,0x44,0x7c,0x00,0x00,0x00,
+ 0
+ };
+
+ const int8u gse7x11_bold[] =
+ {
+ 11, 0, 32, 128-32,
+
+ 0x00,0x00,0x0c,0x00,0x18,0x00,0x24,0x00,0x30,0x00,0x3c,0x00,0x48,0x00,0x54,0x00,0x60,0x00,
+ 0x6c,0x00,0x78,0x00,0x84,0x00,0x90,0x00,0x9c,0x00,0xa8,0x00,0xb4,0x00,0xc0,0x00,0xcc,0x00,
+ 0xd8,0x00,0xe4,0x00,0xf0,0x00,0xfc,0x00,0x08,0x01,0x14,0x01,0x20,0x01,0x2c,0x01,0x38,0x01,
+ 0x44,0x01,0x50,0x01,0x5c,0x01,0x68,0x01,0x74,0x01,0x80,0x01,0x8c,0x01,0x98,0x01,0xa4,0x01,
+ 0xb0,0x01,0xbc,0x01,0xc8,0x01,0xd4,0x01,0xe0,0x01,0xec,0x01,0xf8,0x01,0x04,0x02,0x10,0x02,
+ 0x1c,0x02,0x28,0x02,0x34,0x02,0x40,0x02,0x4c,0x02,0x58,0x02,0x64,0x02,0x70,0x02,0x7c,0x02,
+ 0x88,0x02,0x94,0x02,0xa0,0x02,0xac,0x02,0xb8,0x02,0xc4,0x02,0xd0,0x02,0xdc,0x02,0xe8,0x02,
+ 0xf4,0x02,0x00,0x03,0x0c,0x03,0x18,0x03,0x24,0x03,0x30,0x03,0x3c,0x03,0x48,0x03,0x54,0x03,
+ 0x60,0x03,0x6c,0x03,0x78,0x03,0x84,0x03,0x90,0x03,0x9c,0x03,0xa8,0x03,0xb4,0x03,0xc0,0x03,
+ 0xcc,0x03,0xd8,0x03,0xe4,0x03,0xf0,0x03,0xfc,0x03,0x08,0x04,0x14,0x04,0x20,0x04,0x2c,0x04,
+ 0x38,0x04,0x44,0x04,0x50,0x04,0x5c,0x04,0x68,0x04,0x74,0x04,
+
+ 7, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x21 '!'
+ 0x00,0x30,0x30,0x30,0x30,0x30,0x00,0x30,0x30,0x00,0x00,
+
+ 7, // 0x22 '"'
+ 0x00,0x6c,0x6c,0x28,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x23 '#'
+ 0x00,0x48,0x48,0xfc,0x48,0x48,0xfc,0x48,0x48,0x00,0x00,
+
+ 7, // 0x24 '$'
+ 0x30,0x30,0x78,0xcc,0xc0,0x78,0x0c,0xcc,0x78,0x30,0x30,
+
+ 7, // 0x25 '%'
+ 0x00,0x00,0xc4,0x0c,0x18,0x30,0x60,0xc0,0x8c,0x00,0x00,
+
+ 7, // 0x26 '&'
+ 0x00,0x30,0x58,0x58,0x30,0x74,0xdc,0xd8,0x6c,0x00,0x00,
+
+ 7, // 0x27 '''
+ 0x00,0x30,0x30,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x28 '('
+ 0x00,0x0c,0x18,0x30,0x30,0x30,0x30,0x18,0x0c,0x00,0x00,
+
+ 7, // 0x29 ')'
+ 0x00,0xc0,0x60,0x30,0x30,0x30,0x30,0x60,0xc0,0x00,0x00,
+
+ 7, // 0x2a '*'
+ 0x00,0x00,0x00,0x20,0xa8,0x70,0xa8,0x20,0x00,0x00,0x00,
+
+ 7, // 0x2b '+'
+ 0x00,0x00,0x00,0x30,0x30,0xfc,0x30,0x30,0x00,0x00,0x00,
+
+ 7, // 0x2c ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x60,0x00,
+
+ 7, // 0x2d '-'
+ 0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x2e '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,
+
+ 7, // 0x2f '/'
+ 0x00,0x0c,0x0c,0x18,0x18,0x30,0x30,0x60,0x60,0x00,0x00,
+
+ 7, // 0x30 '0'
+ 0x00,0x78,0xcc,0xcc,0xdc,0xec,0xcc,0xcc,0x78,0x00,0x00,
+
+ 7, // 0x31 '1'
+ 0x00,0x30,0x70,0xf0,0x30,0x30,0x30,0x30,0xfc,0x00,0x00,
+
+ 7, // 0x32 '2'
+ 0x00,0x78,0xcc,0xcc,0x18,0x30,0x60,0xcc,0xfc,0x00,0x00,
+
+ 7, // 0x33 '3'
+ 0x00,0xfc,0x98,0x30,0x78,0x0c,0x0c,0xcc,0x78,0x00,0x00,
+
+ 7, // 0x34 '4'
+ 0x00,0x18,0x30,0x68,0xd8,0xd8,0xfc,0x18,0x3c,0x00,0x00,
+
+ 7, // 0x35 '5'
+ 0x00,0xfc,0xc0,0xc0,0xf8,0x0c,0x0c,0xcc,0x78,0x00,0x00,
+
+ 7, // 0x36 '6'
+ 0x00,0x38,0x60,0xc0,0xf8,0xcc,0xcc,0xcc,0x78,0x00,0x00,
+
+ 7, // 0x37 '7'
+ 0x00,0xfc,0x8c,0x0c,0x18,0x30,0x30,0x30,0x30,0x00,0x00,
+
+ 7, // 0x38 '8'
+ 0x00,0x78,0xcc,0xcc,0x78,0xcc,0xcc,0xcc,0x78,0x00,0x00,
+
+ 7, // 0x39 '9'
+ 0x00,0x78,0xcc,0xcc,0xcc,0x7c,0x0c,0x18,0x70,0x00,0x00,
+
+ 7, // 0x3a ':'
+ 0x00,0x00,0x30,0x30,0x00,0x00,0x30,0x30,0x00,0x00,0x00,
+
+ 7, // 0x3b ';'
+ 0x00,0x00,0x30,0x30,0x00,0x00,0x30,0x30,0x30,0x60,0x00,
+
+ 7, // 0x3c '<'
+ 0x00,0x00,0x0c,0x18,0x30,0x60,0x30,0x18,0x0c,0x00,0x00,
+
+ 7, // 0x3d '='
+ 0x00,0x00,0x00,0x00,0xfc,0x00,0xfc,0x00,0x00,0x00,0x00,
+
+ 7, // 0x3e '>'
+ 0x00,0x00,0x60,0x30,0x18,0x0c,0x18,0x30,0x60,0x00,0x00,
+
+ 7, // 0x3f '?'
+ 0x00,0x78,0xcc,0xcc,0x18,0x30,0x30,0x00,0x30,0x00,0x00,
+
+ 7, // 0x40 '@'
+ 0x00,0x70,0x88,0x04,0x74,0xb4,0xb4,0xb4,0x68,0x00,0x00,
+
+ 7, // 0x41 'A'
+ 0x00,0x30,0x78,0xcc,0xcc,0xfc,0xcc,0xcc,0xcc,0x00,0x00,
+
+ 7, // 0x42 'B'
+ 0x00,0xf8,0xcc,0xcc,0xf8,0xcc,0xcc,0xcc,0xf8,0x00,0x00,
+
+ 7, // 0x43 'C'
+ 0x00,0x78,0xcc,0xc0,0xc0,0xc0,0xc0,0xcc,0x78,0x00,0x00,
+
+ 7, // 0x44 'D'
+ 0x00,0xf0,0xd8,0xcc,0xcc,0xcc,0xcc,0xd8,0xf0,0x00,0x00,
+
+ 7, // 0x45 'E'
+ 0x00,0xfc,0xc4,0xd0,0xf0,0xd0,0xc0,0xc4,0xfc,0x00,0x00,
+
+ 7, // 0x46 'F'
+ 0x00,0xfc,0xc4,0xd0,0xf0,0xd0,0xc0,0xc0,0xc0,0x00,0x00,
+
+ 7, // 0x47 'G'
+ 0x00,0x78,0xcc,0xc0,0xc0,0xdc,0xcc,0xcc,0x78,0x00,0x00,
+
+ 7, // 0x48 'H'
+ 0x00,0xcc,0xcc,0xcc,0xfc,0xcc,0xcc,0xcc,0xcc,0x00,0x00,
+
+ 7, // 0x49 'I'
+ 0x00,0x78,0x30,0x30,0x30,0x30,0x30,0x30,0x78,0x00,0x00,
+
+ 7, // 0x4a 'J'
+ 0x00,0x3c,0x18,0x18,0x18,0x18,0xd8,0xd8,0x70,0x00,0x00,
+
+ 7, // 0x4b 'K'
+ 0x00,0xcc,0xcc,0xd8,0xf0,0xd8,0xcc,0xcc,0xcc,0x00,0x00,
+
+ 7, // 0x4c 'L'
+ 0x00,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc4,0xfc,0x00,0x00,
+
+ 7, // 0x4d 'M'
+ 0x00,0x84,0xcc,0xfc,0xb4,0xcc,0xcc,0xcc,0xcc,0x00,0x00,
+
+ 7, // 0x4e 'N'
+ 0x00,0xcc,0xcc,0xec,0xfc,0xdc,0xcc,0xcc,0xcc,0x00,0x00,
+
+ 7, // 0x4f 'O'
+ 0x00,0x78,0xcc,0xcc,0xcc,0xcc,0xcc,0xcc,0x78,0x00,0x00,
+
+ 7, // 0x50 'P'
+ 0x00,0xf8,0xcc,0xcc,0xcc,0xf8,0xc0,0xc0,0xc0,0x00,0x00,
+
+ 7, // 0x51 'Q'
+ 0x00,0x78,0xcc,0xcc,0xcc,0xcc,0xdc,0x78,0x18,0x0c,0x00,
+
+ 7, // 0x52 'R'
+ 0x00,0xf8,0xcc,0xcc,0xcc,0xf8,0xd8,0xcc,0xcc,0x00,0x00,
+
+ 7, // 0x53 'S'
+ 0x00,0x78,0xcc,0xe0,0x70,0x38,0x1c,0xcc,0x78,0x00,0x00,
+
+ 7, // 0x54 'T'
+ 0x00,0xfc,0xb4,0x30,0x30,0x30,0x30,0x30,0x30,0x00,0x00,
+
+ 7, // 0x55 'U'
+ 0x00,0xcc,0xcc,0xcc,0xcc,0xcc,0xcc,0xcc,0x78,0x00,0x00,
+
+ 7, // 0x56 'V'
+ 0x00,0xcc,0xcc,0xcc,0xcc,0xcc,0xcc,0x78,0x30,0x00,0x00,
+
+ 7, // 0x57 'W'
+ 0x00,0xcc,0xcc,0xcc,0xcc,0xb4,0xfc,0xcc,0x84,0x00,0x00,
+
+ 7, // 0x58 'X'
+ 0x00,0xcc,0xcc,0x78,0x30,0x78,0xcc,0xcc,0xcc,0x00,0x00,
+
+ 7, // 0x59 'Y'
+ 0x00,0xcc,0xcc,0xcc,0x78,0x30,0x30,0x30,0x78,0x00,0x00,
+
+ 7, // 0x5a 'Z'
+ 0x00,0xfc,0x8c,0x18,0x30,0x60,0xc0,0xc4,0xfc,0x00,0x00,
+
+ 7, // 0x5b '['
+ 0x00,0x78,0x60,0x60,0x60,0x60,0x60,0x60,0x78,0x00,0x00,
+
+ 7, // 0x5c '\'
+ 0x00,0x60,0x60,0x30,0x30,0x18,0x18,0x0c,0x0c,0x00,0x00,
+
+ 7, // 0x5d ']'
+ 0x00,0x78,0x18,0x18,0x18,0x18,0x18,0x18,0x78,0x00,0x00,
+
+ 7, // 0x5e '^'
+ 0x00,0x10,0x38,0x6c,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x5f '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,
+
+ 7, // 0x60 '`'
+ 0x00,0x30,0x30,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x61 'a'
+ 0x00,0x00,0x00,0x70,0x18,0x78,0xd8,0xd8,0x6c,0x00,0x00,
+
+ 7, // 0x62 'b'
+ 0x00,0x60,0x60,0x60,0x78,0x6c,0x6c,0x6c,0x78,0x00,0x00,
+
+ 7, // 0x63 'c'
+ 0x00,0x00,0x00,0x78,0xcc,0xc0,0xc0,0xcc,0x78,0x00,0x00,
+
+ 7, // 0x64 'd'
+ 0x00,0x18,0x18,0x18,0x78,0xd8,0xd8,0xd8,0x6c,0x00,0x00,
+
+ 7, // 0x65 'e'
+ 0x00,0x00,0x00,0x78,0xcc,0xfc,0xc0,0xcc,0x78,0x00,0x00,
+
+ 7, // 0x66 'f'
+ 0x00,0x18,0x34,0x30,0x78,0x30,0x30,0x30,0x78,0x00,0x00,
+
+ 7, // 0x67 'g'
+ 0x00,0x00,0x00,0x6c,0xd8,0xd8,0xd8,0x78,0x18,0xd8,0x70,
+
+ 7, // 0x68 'h'
+ 0x00,0xc0,0xc0,0xd8,0xec,0xcc,0xcc,0xcc,0xcc,0x00,0x00,
+
+ 7, // 0x69 'i'
+ 0x00,0x30,0x00,0x70,0x30,0x30,0x30,0x30,0x78,0x00,0x00,
+
+ 7, // 0x6a 'j'
+ 0x00,0x0c,0x00,0x1c,0x0c,0x0c,0x0c,0x0c,0x6c,0x6c,0x38,
+
+ 7, // 0x6b 'k'
+ 0x00,0xc0,0xc0,0xcc,0xcc,0xd8,0xf0,0xd8,0xcc,0x00,0x00,
+
+ 7, // 0x6c 'l'
+ 0x00,0x70,0x30,0x30,0x30,0x30,0x30,0x30,0x78,0x00,0x00,
+
+ 7, // 0x6d 'm'
+ 0x00,0x00,0x00,0xe8,0xfc,0xd4,0xd4,0xc4,0xc4,0x00,0x00,
+
+ 7, // 0x6e 'n'
+ 0x00,0x00,0x00,0xd8,0x6c,0x6c,0x6c,0x6c,0x6c,0x00,0x00,
+
+ 7, // 0x6f 'o'
+ 0x00,0x00,0x00,0x78,0xcc,0xcc,0xcc,0xcc,0x78,0x00,0x00,
+
+ 7, // 0x70 'p'
+ 0x00,0x00,0x00,0xf8,0xcc,0xcc,0xcc,0xf8,0xc0,0xc0,0xc0,
+
+ 7, // 0x71 'q'
+ 0x00,0x00,0x00,0x7c,0xcc,0xcc,0xcc,0x7c,0x0c,0x0c,0x0c,
+
+ 7, // 0x72 'r'
+ 0x00,0x00,0x00,0xd8,0xec,0xcc,0xc0,0xc0,0xc0,0x00,0x00,
+
+ 7, // 0x73 's'
+ 0x00,0x00,0x00,0x78,0xcc,0x60,0x18,0xcc,0x78,0x00,0x00,
+
+ 7, // 0x74 't'
+ 0x00,0x20,0x60,0x60,0xf0,0x60,0x60,0x68,0x30,0x00,0x00,
+
+ 7, // 0x75 'u'
+ 0x00,0x00,0x00,0xd8,0xd8,0xd8,0xd8,0xd8,0x6c,0x00,0x00,
+
+ 7, // 0x76 'v'
+ 0x00,0x00,0x00,0xcc,0xcc,0xcc,0xcc,0x78,0x30,0x00,0x00,
+
+ 7, // 0x77 'w'
+ 0x00,0x00,0x00,0xcc,0xcc,0xb4,0xfc,0xcc,0x84,0x00,0x00,
+
+ 7, // 0x78 'x'
+ 0x00,0x00,0x00,0xcc,0x78,0x30,0x78,0xcc,0xcc,0x00,0x00,
+
+ 7, // 0x79 'y'
+ 0x00,0x00,0x00,0xcc,0xcc,0xcc,0xcc,0x7c,0x0c,0x18,0xf0,
+
+ 7, // 0x7a 'z'
+ 0x00,0x00,0x00,0xfc,0x98,0x30,0x60,0xc4,0xfc,0x00,0x00,
+
+ 7, // 0x7b '{'
+ 0x1c,0x30,0x30,0x30,0xe0,0x30,0x30,0x30,0x1c,0x00,0x00,
+
+ 7, // 0x7c '|'
+ 0x30,0x30,0x30,0x30,0x00,0x30,0x30,0x30,0x30,0x00,0x00,
+
+ 7, // 0x7d '}'
+ 0xe0,0x30,0x30,0x30,0x1c,0x30,0x30,0x30,0xe0,0x00,0x00,
+
+ 7, // 0x7e '~'
+ 0x00,0x34,0x58,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x7f ''
+ 0x00,0x00,0x00,0x30,0x78,0xcc,0xcc,0xfc,0x00,0x00,0x00,
+ 0
+ };
+
+ const int8u gse7x15[] =
+ {
+ 15, 0, 32, 128-32,
+
+ 0x00,0x00,0x10,0x00,0x20,0x00,0x30,0x00,0x40,0x00,0x50,0x00,0x60,0x00,0x70,0x00,0x80,0x00,
+ 0x90,0x00,0xa0,0x00,0xb0,0x00,0xc0,0x00,0xd0,0x00,0xe0,0x00,0xf0,0x00,0x00,0x01,0x10,0x01,
+ 0x20,0x01,0x30,0x01,0x40,0x01,0x50,0x01,0x60,0x01,0x70,0x01,0x80,0x01,0x90,0x01,0xa0,0x01,
+ 0xb0,0x01,0xc0,0x01,0xd0,0x01,0xe0,0x01,0xf0,0x01,0x00,0x02,0x10,0x02,0x20,0x02,0x30,0x02,
+ 0x40,0x02,0x50,0x02,0x60,0x02,0x70,0x02,0x80,0x02,0x90,0x02,0xa0,0x02,0xb0,0x02,0xc0,0x02,
+ 0xd0,0x02,0xe0,0x02,0xf0,0x02,0x00,0x03,0x10,0x03,0x20,0x03,0x30,0x03,0x40,0x03,0x50,0x03,
+ 0x60,0x03,0x70,0x03,0x80,0x03,0x90,0x03,0xa0,0x03,0xb0,0x03,0xc0,0x03,0xd0,0x03,0xe0,0x03,
+ 0xf0,0x03,0x00,0x04,0x10,0x04,0x20,0x04,0x30,0x04,0x40,0x04,0x50,0x04,0x60,0x04,0x70,0x04,
+ 0x80,0x04,0x90,0x04,0xa0,0x04,0xb0,0x04,0xc0,0x04,0xd0,0x04,0xe0,0x04,0xf0,0x04,0x00,0x05,
+ 0x10,0x05,0x20,0x05,0x30,0x05,0x40,0x05,0x50,0x05,0x60,0x05,0x70,0x05,0x80,0x05,0x90,0x05,
+ 0xa0,0x05,0xb0,0x05,0xc0,0x05,0xd0,0x05,0xe0,0x05,0xf0,0x05,
+
+ 7, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x21 '!'
+ 0x00,0x00,0x10,0x38,0x38,0x38,0x38,0x10,0x10,0x00,0x10,0x10,0x00,0x00,0x00,
+
+ 7, // 0x22 '"'
+ 0x00,0x00,0x24,0x24,0x24,0x24,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x23 '#'
+ 0x00,0x00,0x48,0x48,0x48,0xfc,0x48,0x48,0xfc,0x48,0x48,0x48,0x00,0x00,0x00,
+
+ 7, // 0x24 '$'
+ 0x00,0x00,0x10,0x38,0x54,0x50,0x38,0x14,0x54,0x54,0x38,0x10,0x00,0x00,0x00,
+
+ 7, // 0x25 '%'
+ 0x00,0x00,0x44,0x44,0x08,0x08,0x10,0x10,0x20,0x20,0x44,0x44,0x00,0x00,0x00,
+
+ 7, // 0x26 '&'
+ 0x00,0x00,0x00,0x30,0x48,0x48,0x30,0x60,0x94,0x98,0x90,0x6c,0x00,0x00,0x00,
+
+ 7, // 0x27 '''
+ 0x00,0x00,0x20,0x20,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x28 '('
+ 0x00,0x04,0x08,0x10,0x20,0x20,0x20,0x20,0x20,0x10,0x08,0x04,0x00,0x00,0x00,
+
+ 7, // 0x29 ')'
+ 0x00,0x40,0x20,0x10,0x08,0x08,0x08,0x08,0x08,0x10,0x20,0x40,0x00,0x00,0x00,
+
+ 7, // 0x2a '*'
+ 0x00,0x00,0x00,0x00,0x00,0x20,0xa8,0x70,0xa8,0x20,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x2b '+'
+ 0x00,0x00,0x00,0x00,0x10,0x10,0x10,0x7c,0x10,0x10,0x10,0x00,0x00,0x00,0x00,
+
+ 7, // 0x2c ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x30,0x60,0x00,
+
+ 7, // 0x2d '-'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x2e '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,
+
+ 7, // 0x2f '/'
+ 0x00,0x00,0x04,0x04,0x08,0x08,0x10,0x10,0x20,0x20,0x40,0x40,0x00,0x00,0x00,
+
+ 7, // 0x30 '0'
+ 0x00,0x00,0x38,0x44,0x44,0x4c,0x54,0x64,0x44,0x44,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x31 '1'
+ 0x00,0x00,0x10,0x10,0x30,0x10,0x10,0x10,0x10,0x10,0x10,0x7c,0x00,0x00,0x00,
+
+ 7, // 0x32 '2'
+ 0x00,0x00,0x38,0x44,0x44,0x04,0x08,0x10,0x20,0x40,0x44,0x7c,0x00,0x00,0x00,
+
+ 7, // 0x33 '3'
+ 0x00,0x00,0x7c,0x44,0x08,0x10,0x38,0x04,0x04,0x04,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x34 '4'
+ 0x00,0x00,0x08,0x10,0x20,0x40,0x48,0x48,0x7c,0x08,0x08,0x1c,0x00,0x00,0x00,
+
+ 7, // 0x35 '5'
+ 0x00,0x00,0x7c,0x40,0x40,0x40,0x78,0x04,0x04,0x04,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x36 '6'
+ 0x00,0x00,0x18,0x20,0x40,0x40,0x78,0x44,0x44,0x44,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x37 '7'
+ 0x00,0x00,0x7c,0x44,0x04,0x04,0x08,0x08,0x10,0x10,0x10,0x10,0x00,0x00,0x00,
+
+ 7, // 0x38 '8'
+ 0x00,0x00,0x38,0x44,0x44,0x44,0x38,0x44,0x44,0x44,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x39 '9'
+ 0x00,0x00,0x38,0x44,0x44,0x44,0x44,0x3c,0x04,0x04,0x08,0x30,0x00,0x00,0x00,
+
+ 7, // 0x3a ':'
+ 0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x00,
+
+ 7, // 0x3b ';'
+ 0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x30,0x30,0x60,0x00,0x00,
+
+ 7, // 0x3c '<'
+ 0x00,0x00,0x00,0x04,0x08,0x10,0x20,0x40,0x20,0x10,0x08,0x04,0x00,0x00,0x00,
+
+ 7, // 0x3d '='
+ 0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x3e '>'
+ 0x00,0x00,0x00,0x40,0x20,0x10,0x08,0x04,0x08,0x10,0x20,0x40,0x00,0x00,0x00,
+
+ 7, // 0x3f '?'
+ 0x00,0x00,0x78,0x84,0x84,0x84,0x08,0x10,0x20,0x20,0x00,0x20,0x00,0x00,0x00,
+
+ 7, // 0x40 '@'
+ 0x00,0x00,0x00,0x30,0x48,0x04,0x34,0x54,0x54,0x54,0x54,0x28,0x00,0x00,0x00,
+
+ 7, // 0x41 'A'
+ 0x00,0x00,0x10,0x28,0x44,0x44,0x44,0x7c,0x44,0x44,0x44,0x44,0x00,0x00,0x00,
+
+ 7, // 0x42 'B'
+ 0x00,0x00,0x78,0x44,0x44,0x44,0x78,0x44,0x44,0x44,0x44,0x78,0x00,0x00,0x00,
+
+ 7, // 0x43 'C'
+ 0x00,0x00,0x38,0x44,0x44,0x40,0x40,0x40,0x40,0x44,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x44 'D'
+ 0x00,0x00,0x70,0x48,0x44,0x44,0x44,0x44,0x44,0x44,0x48,0x70,0x00,0x00,0x00,
+
+ 7, // 0x45 'E'
+ 0x00,0x00,0x7c,0x40,0x40,0x40,0x70,0x40,0x40,0x40,0x40,0x7c,0x00,0x00,0x00,
+
+ 7, // 0x46 'F'
+ 0x00,0x00,0x7c,0x40,0x40,0x40,0x70,0x40,0x40,0x40,0x40,0x40,0x00,0x00,0x00,
+
+ 7, // 0x47 'G'
+ 0x00,0x00,0x38,0x44,0x40,0x40,0x40,0x5c,0x44,0x44,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x48 'H'
+ 0x00,0x00,0x44,0x44,0x44,0x44,0x7c,0x44,0x44,0x44,0x44,0x44,0x00,0x00,0x00,
+
+ 7, // 0x49 'I'
+ 0x00,0x00,0x38,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x38,0x00,0x00,0x00,
+
+ 7, // 0x4a 'J'
+ 0x00,0x00,0x1c,0x08,0x08,0x08,0x08,0x08,0x08,0x48,0x48,0x30,0x00,0x00,0x00,
+
+ 7, // 0x4b 'K'
+ 0x00,0x00,0x44,0x44,0x48,0x50,0x60,0x50,0x48,0x44,0x44,0x44,0x00,0x00,0x00,
+
+ 7, // 0x4c 'L'
+ 0x00,0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x7c,0x00,0x00,0x00,
+
+ 7, // 0x4d 'M'
+ 0x00,0x00,0x44,0x6c,0x54,0x54,0x44,0x44,0x44,0x44,0x44,0x44,0x00,0x00,0x00,
+
+ 7, // 0x4e 'N'
+ 0x00,0x00,0x44,0x44,0x44,0x64,0x54,0x4c,0x44,0x44,0x44,0x44,0x00,0x00,0x00,
+
+ 7, // 0x4f 'O'
+ 0x00,0x00,0x38,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x50 'P'
+ 0x00,0x00,0x78,0x44,0x44,0x44,0x44,0x78,0x40,0x40,0x40,0x40,0x00,0x00,0x00,
+
+ 7, // 0x51 'Q'
+ 0x00,0x00,0x38,0x44,0x44,0x44,0x44,0x44,0x44,0x54,0x48,0x34,0x00,0x00,0x00,
+
+ 7, // 0x52 'R'
+ 0x00,0x00,0x78,0x44,0x44,0x44,0x44,0x78,0x50,0x48,0x44,0x44,0x00,0x00,0x00,
+
+ 7, // 0x53 'S'
+ 0x00,0x00,0x38,0x44,0x44,0x40,0x38,0x04,0x04,0x44,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x54 'T'
+ 0x00,0x00,0x7c,0x54,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x00,0x00,0x00,
+
+ 7, // 0x55 'U'
+ 0x00,0x00,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x56 'V'
+ 0x00,0x00,0x44,0x44,0x44,0x44,0x44,0x44,0x28,0x28,0x10,0x10,0x00,0x00,0x00,
+
+ 7, // 0x57 'W'
+ 0x00,0x00,0x44,0x44,0x44,0x44,0x44,0x44,0x54,0x54,0x6c,0x44,0x00,0x00,0x00,
+
+ 7, // 0x58 'X'
+ 0x00,0x00,0x44,0x44,0x44,0x28,0x10,0x28,0x44,0x44,0x44,0x44,0x00,0x00,0x00,
+
+ 7, // 0x59 'Y'
+ 0x00,0x00,0x44,0x44,0x44,0x44,0x28,0x10,0x10,0x10,0x10,0x38,0x00,0x00,0x00,
+
+ 7, // 0x5a 'Z'
+ 0x00,0x00,0x7c,0x04,0x04,0x08,0x10,0x20,0x40,0x40,0x40,0x7c,0x00,0x00,0x00,
+
+ 7, // 0x5b '['
+ 0x00,0x38,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x38,0x00,0x00,
+
+ 7, // 0x5c '\'
+ 0x00,0x00,0x40,0x40,0x20,0x20,0x10,0x10,0x08,0x08,0x04,0x04,0x00,0x00,0x00,
+
+ 7, // 0x5d ']'
+ 0x00,0x38,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x38,0x00,0x00,
+
+ 7, // 0x5e '^'
+ 0x00,0x10,0x28,0x44,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x5f '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,
+
+ 7, // 0x60 '`'
+ 0x00,0x20,0x20,0x20,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x61 'a'
+ 0x00,0x00,0x00,0x00,0x38,0x44,0x04,0x3c,0x44,0x44,0x44,0x3a,0x00,0x00,0x00,
+
+ 7, // 0x62 'b'
+ 0x00,0x00,0x40,0x40,0x40,0x78,0x44,0x44,0x44,0x44,0x44,0x78,0x00,0x00,0x00,
+
+ 7, // 0x63 'c'
+ 0x00,0x00,0x00,0x00,0x38,0x44,0x40,0x40,0x40,0x40,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x64 'd'
+ 0x00,0x00,0x04,0x04,0x04,0x3c,0x44,0x44,0x44,0x44,0x44,0x3a,0x00,0x00,0x00,
+
+ 7, // 0x65 'e'
+ 0x00,0x00,0x00,0x00,0x38,0x44,0x44,0x7c,0x40,0x40,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x66 'f'
+ 0x00,0x00,0x18,0x24,0x20,0x70,0x20,0x20,0x20,0x20,0x20,0x70,0x00,0x00,0x00,
+
+ 7, // 0x67 'g'
+ 0x00,0x00,0x00,0x00,0x3a,0x44,0x44,0x44,0x44,0x44,0x3c,0x04,0x44,0x38,0x00,
+
+ 7, // 0x68 'h'
+ 0x00,0x00,0x40,0x40,0x40,0x58,0x64,0x44,0x44,0x44,0x44,0x44,0x00,0x00,0x00,
+
+ 7, // 0x69 'i'
+ 0x00,0x00,0x10,0x10,0x00,0x30,0x10,0x10,0x10,0x10,0x10,0x38,0x00,0x00,0x00,
+
+ 7, // 0x6a 'j'
+ 0x00,0x00,0x08,0x08,0x00,0x18,0x08,0x08,0x08,0x08,0x08,0x48,0x48,0x30,0x00,
+
+ 7, // 0x6b 'k'
+ 0x00,0x00,0x40,0x40,0x44,0x44,0x48,0x50,0x60,0x50,0x48,0x44,0x00,0x00,0x00,
+
+ 7, // 0x6c 'l'
+ 0x00,0x00,0x30,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x38,0x00,0x00,0x00,
+
+ 7, // 0x6d 'm'
+ 0x00,0x00,0x00,0x00,0xa8,0x54,0x54,0x54,0x54,0x54,0x54,0x54,0x00,0x00,0x00,
+
+ 7, // 0x6e 'n'
+ 0x00,0x00,0x00,0x00,0xb8,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x00,0x00,0x00,
+
+ 7, // 0x6f 'o'
+ 0x00,0x00,0x00,0x00,0x38,0x44,0x44,0x44,0x44,0x44,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x70 'p'
+ 0x00,0x00,0x00,0x00,0x78,0x44,0x44,0x44,0x44,0x44,0x78,0x40,0x40,0x40,0x00,
+
+ 7, // 0x71 'q'
+ 0x00,0x00,0x00,0x00,0x3c,0x44,0x44,0x44,0x44,0x44,0x3c,0x04,0x04,0x04,0x00,
+
+ 7, // 0x72 'r'
+ 0x00,0x00,0x00,0x00,0x58,0x64,0x44,0x40,0x40,0x40,0x40,0x40,0x00,0x00,0x00,
+
+ 7, // 0x73 's'
+ 0x00,0x00,0x00,0x00,0x38,0x44,0x40,0x38,0x04,0x44,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x74 't'
+ 0x00,0x00,0x20,0x20,0x20,0x70,0x20,0x20,0x20,0x20,0x24,0x18,0x00,0x00,0x00,
+
+ 7, // 0x75 'u'
+ 0x00,0x00,0x00,0x00,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x3a,0x00,0x00,0x00,
+
+ 7, // 0x76 'v'
+ 0x00,0x00,0x00,0x00,0x44,0x44,0x44,0x44,0x28,0x28,0x10,0x10,0x00,0x00,0x00,
+
+ 7, // 0x77 'w'
+ 0x00,0x00,0x00,0x00,0x44,0x44,0x44,0x44,0x54,0x54,0x6c,0x44,0x00,0x00,0x00,
+
+ 7, // 0x78 'x'
+ 0x00,0x00,0x00,0x00,0x44,0x44,0x28,0x10,0x28,0x44,0x44,0x44,0x00,0x00,0x00,
+
+ 7, // 0x79 'y'
+ 0x00,0x00,0x00,0x00,0x44,0x44,0x44,0x44,0x44,0x44,0x3c,0x04,0x08,0x70,0x00,
+
+ 7, // 0x7a 'z'
+ 0x00,0x00,0x00,0x00,0x7c,0x04,0x08,0x10,0x20,0x40,0x40,0x7c,0x00,0x00,0x00,
+
+ 7, // 0x7b '{'
+ 0x00,0x0c,0x10,0x10,0x10,0x10,0x10,0x60,0x10,0x10,0x10,0x10,0x0c,0x00,0x00,
+
+ 7, // 0x7c '|'
+ 0x00,0x20,0x20,0x20,0x20,0x20,0x00,0x00,0x20,0x20,0x20,0x20,0x20,0x00,0x00,
+
+ 7, // 0x7d '}'
+ 0x00,0x60,0x10,0x10,0x10,0x10,0x10,0x0c,0x10,0x10,0x10,0x10,0x60,0x00,0x00,
+
+ 7, // 0x7e '~'
+ 0x00,0x00,0x64,0x98,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x7f ''
+ 0x00,0x00,0x00,0x00,0x00,0x10,0x28,0x44,0x44,0x7c,0x00,0x00,0x00,0x00,0x00,
+ 0
+ };
+
+ const int8u gse7x15_bold[] =
+ {
+ 15, 0, 32, 128-32,
+
+ 0x00,0x00,0x10,0x00,0x20,0x00,0x30,0x00,0x40,0x00,0x50,0x00,0x60,0x00,0x70,0x00,0x80,0x00,
+ 0x90,0x00,0xa0,0x00,0xb0,0x00,0xc0,0x00,0xd0,0x00,0xe0,0x00,0xf0,0x00,0x00,0x01,0x10,0x01,
+ 0x20,0x01,0x30,0x01,0x40,0x01,0x50,0x01,0x60,0x01,0x70,0x01,0x80,0x01,0x90,0x01,0xa0,0x01,
+ 0xb0,0x01,0xc0,0x01,0xd0,0x01,0xe0,0x01,0xf0,0x01,0x00,0x02,0x10,0x02,0x20,0x02,0x30,0x02,
+ 0x40,0x02,0x50,0x02,0x60,0x02,0x70,0x02,0x80,0x02,0x90,0x02,0xa0,0x02,0xb0,0x02,0xc0,0x02,
+ 0xd0,0x02,0xe0,0x02,0xf0,0x02,0x00,0x03,0x10,0x03,0x20,0x03,0x30,0x03,0x40,0x03,0x50,0x03,
+ 0x60,0x03,0x70,0x03,0x80,0x03,0x90,0x03,0xa0,0x03,0xb0,0x03,0xc0,0x03,0xd0,0x03,0xe0,0x03,
+ 0xf0,0x03,0x00,0x04,0x10,0x04,0x20,0x04,0x30,0x04,0x40,0x04,0x50,0x04,0x60,0x04,0x70,0x04,
+ 0x80,0x04,0x90,0x04,0xa0,0x04,0xb0,0x04,0xc0,0x04,0xd0,0x04,0xe0,0x04,0xf0,0x04,0x00,0x05,
+ 0x10,0x05,0x20,0x05,0x30,0x05,0x40,0x05,0x50,0x05,0x60,0x05,0x70,0x05,0x80,0x05,0x90,0x05,
+ 0xa0,0x05,0xb0,0x05,0xc0,0x05,0xd0,0x05,0xe0,0x05,0xf0,0x05,
+
+ 7, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x21 '!'
+ 0x00,0x00,0x00,0x30,0x78,0x78,0x78,0x30,0x30,0x00,0x30,0x30,0x00,0x00,0x00,
+
+ 7, // 0x22 '"'
+ 0x00,0x00,0x6c,0x6c,0x6c,0x28,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x23 '#'
+ 0x00,0x00,0x48,0x48,0x48,0xfc,0x48,0x48,0xfc,0x48,0x48,0x48,0x00,0x00,0x00,
+
+ 7, // 0x24 '$'
+ 0x00,0x30,0x30,0x78,0xcc,0xe0,0x70,0x38,0x1c,0xcc,0x78,0x30,0x30,0x00,0x00,
+
+ 7, // 0x25 '%'
+ 0x00,0x00,0x00,0x64,0x6c,0x08,0x18,0x10,0x30,0x20,0x6c,0x4c,0x00,0x00,0x00,
+
+ 7, // 0x26 '&'
+ 0x00,0x00,0x00,0x30,0x58,0x58,0x30,0x74,0xdc,0xd8,0xd8,0x6c,0x00,0x00,0x00,
+
+ 7, // 0x27 '''
+ 0x00,0x00,0x30,0x30,0x30,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x28 '('
+ 0x00,0x0c,0x18,0x30,0x60,0x60,0x60,0x60,0x60,0x30,0x18,0x0c,0x00,0x00,0x00,
+
+ 7, // 0x29 ')'
+ 0x00,0xc0,0x60,0x30,0x18,0x18,0x18,0x18,0x18,0x30,0x60,0xc0,0x00,0x00,0x00,
+
+ 7, // 0x2a '*'
+ 0x00,0x00,0x00,0x00,0x00,0x20,0xa8,0x70,0xa8,0x20,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x2b '+'
+ 0x00,0x00,0x00,0x00,0x00,0x30,0x30,0xfc,0x30,0x30,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x2c ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x30,0x60,0x00,
+
+ 7, // 0x2d '-'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x2e '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,
+
+ 7, // 0x2f '/'
+ 0x00,0x00,0x0c,0x0c,0x18,0x18,0x30,0x30,0x60,0x60,0xc0,0xc0,0x00,0x00,0x00,
+
+ 7, // 0x30 '0'
+ 0x00,0x00,0x78,0xcc,0xcc,0xcc,0xdc,0xec,0xcc,0xcc,0xcc,0x78,0x00,0x00,0x00,
+
+ 7, // 0x31 '1'
+ 0x00,0x00,0x30,0x30,0x70,0xf0,0x30,0x30,0x30,0x30,0x30,0xfc,0x00,0x00,0x00,
+
+ 7, // 0x32 '2'
+ 0x00,0x00,0x78,0xcc,0xcc,0x0c,0x18,0x30,0x60,0xc0,0xcc,0xfc,0x00,0x00,0x00,
+
+ 7, // 0x33 '3'
+ 0x00,0x00,0xfc,0x8c,0x18,0x30,0x78,0x0c,0x0c,0x0c,0xcc,0x78,0x00,0x00,0x00,
+
+ 7, // 0x34 '4'
+ 0x00,0x00,0x18,0x30,0x60,0xc8,0xd8,0xd8,0xfc,0x18,0x18,0x3c,0x00,0x00,0x00,
+
+ 7, // 0x35 '5'
+ 0x00,0x00,0xfc,0xc0,0xc0,0xc0,0xf8,0x0c,0x0c,0x0c,0xcc,0x78,0x00,0x00,0x00,
+
+ 7, // 0x36 '6'
+ 0x00,0x00,0x38,0x60,0xc0,0xc0,0xf8,0xcc,0xcc,0xcc,0xcc,0x78,0x00,0x00,0x00,
+
+ 7, // 0x37 '7'
+ 0x00,0x00,0xfc,0x8c,0x0c,0x0c,0x18,0x18,0x30,0x30,0x30,0x30,0x00,0x00,0x00,
+
+ 7, // 0x38 '8'
+ 0x00,0x00,0x78,0xcc,0xcc,0xcc,0x78,0xcc,0xcc,0xcc,0xcc,0x78,0x00,0x00,0x00,
+
+ 7, // 0x39 '9'
+ 0x00,0x00,0x78,0xcc,0xcc,0xcc,0xcc,0x7c,0x0c,0x0c,0x18,0x70,0x00,0x00,0x00,
+
+ 7, // 0x3a ':'
+ 0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,0x00,
+
+ 7, // 0x3b ';'
+ 0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,0x00,0x30,0x30,0x30,0x60,0x00,
+
+ 7, // 0x3c '<'
+ 0x00,0x00,0x00,0x0c,0x18,0x30,0x60,0xc0,0x60,0x30,0x18,0x0c,0x00,0x00,0x00,
+
+ 7, // 0x3d '='
+ 0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x3e '>'
+ 0x00,0x00,0x00,0xc0,0x60,0x30,0x18,0x0c,0x18,0x30,0x60,0xc0,0x00,0x00,0x00,
+
+ 7, // 0x3f '?'
+ 0x00,0x00,0x78,0xcc,0xcc,0x18,0x30,0x30,0x30,0x00,0x30,0x30,0x00,0x00,0x00,
+
+ 7, // 0x40 '@'
+ 0x00,0x00,0x00,0x70,0x88,0x04,0x74,0xb4,0xb4,0xb4,0xb4,0x68,0x00,0x00,0x00,
+
+ 7, // 0x41 'A'
+ 0x00,0x00,0x30,0x78,0xcc,0xcc,0xcc,0xfc,0xcc,0xcc,0xcc,0xcc,0x00,0x00,0x00,
+
+ 7, // 0x42 'B'
+ 0x00,0x00,0xf8,0xcc,0xcc,0xcc,0xf8,0xcc,0xcc,0xcc,0xcc,0xf8,0x00,0x00,0x00,
+
+ 7, // 0x43 'C'
+ 0x00,0x00,0x78,0xcc,0xc4,0xc0,0xc0,0xc0,0xc0,0xc4,0xcc,0x78,0x00,0x00,0x00,
+
+ 7, // 0x44 'D'
+ 0x00,0x00,0xf0,0xd8,0xcc,0xcc,0xcc,0xcc,0xcc,0xcc,0xd8,0xf0,0x00,0x00,0x00,
+
+ 7, // 0x45 'E'
+ 0x00,0x00,0xfc,0xc4,0xc0,0xd0,0xf0,0xd0,0xc0,0xc0,0xc4,0xfc,0x00,0x00,0x00,
+
+ 7, // 0x46 'F'
+ 0x00,0x00,0xfc,0xc4,0xc0,0xd0,0xf0,0xd0,0xc0,0xc0,0xc0,0xc0,0x00,0x00,0x00,
+
+ 7, // 0x47 'G'
+ 0x00,0x00,0x78,0xcc,0xc0,0xc0,0xc0,0xdc,0xcc,0xcc,0xcc,0x78,0x00,0x00,0x00,
+
+ 7, // 0x48 'H'
+ 0x00,0x00,0xcc,0xcc,0xcc,0xcc,0xfc,0xcc,0xcc,0xcc,0xcc,0xcc,0x00,0x00,0x00,
+
+ 7, // 0x49 'I'
+ 0x00,0x00,0x78,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x78,0x00,0x00,0x00,
+
+ 7, // 0x4a 'J'
+ 0x00,0x00,0x3c,0x18,0x18,0x18,0x18,0x18,0x18,0xd8,0xd8,0x70,0x00,0x00,0x00,
+
+ 7, // 0x4b 'K'
+ 0x00,0x00,0xcc,0xcc,0xd8,0xd8,0xf0,0xd8,0xd8,0xcc,0xcc,0xcc,0x00,0x00,0x00,
+
+ 7, // 0x4c 'L'
+ 0x00,0x00,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc0,0xc4,0xfc,0x00,0x00,0x00,
+
+ 7, // 0x4d 'M'
+ 0x00,0x00,0x84,0xcc,0xfc,0xb4,0xcc,0xcc,0xcc,0xcc,0xcc,0xcc,0x00,0x00,0x00,
+
+ 7, // 0x4e 'N'
+ 0x00,0x00,0xcc,0xcc,0xcc,0xec,0xfc,0xdc,0xcc,0xcc,0xcc,0xcc,0x00,0x00,0x00,
+
+ 7, // 0x4f 'O'
+ 0x00,0x00,0x78,0xcc,0xcc,0xcc,0xcc,0xcc,0xcc,0xcc,0xcc,0x78,0x00,0x00,0x00,
+
+ 7, // 0x50 'P'
+ 0x00,0x00,0xf8,0xcc,0xcc,0xcc,0xcc,0xf8,0xc0,0xc0,0xc0,0xc0,0x00,0x00,0x00,
+
+ 7, // 0x51 'Q'
+ 0x00,0x00,0x78,0xcc,0xcc,0xcc,0xcc,0xcc,0xcc,0xdc,0x78,0x18,0x0c,0x00,0x00,
+
+ 7, // 0x52 'R'
+ 0x00,0x00,0xf8,0xcc,0xcc,0xcc,0xcc,0xf8,0xd8,0xcc,0xcc,0xcc,0x00,0x00,0x00,
+
+ 7, // 0x53 'S'
+ 0x00,0x00,0x78,0xcc,0xcc,0xe0,0x70,0x38,0x1c,0xcc,0xcc,0x78,0x00,0x00,0x00,
+
+ 7, // 0x54 'T'
+ 0x00,0x00,0xfc,0xb4,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x00,0x00,0x00,
+
+ 7, // 0x55 'U'
+ 0x00,0x00,0xcc,0xcc,0xcc,0xcc,0xcc,0xcc,0xcc,0xcc,0xcc,0x78,0x00,0x00,0x00,
+
+ 7, // 0x56 'V'
+ 0x00,0x00,0xcc,0xcc,0xcc,0xcc,0xcc,0xcc,0xcc,0xcc,0x78,0x30,0x00,0x00,0x00,
+
+ 7, // 0x57 'W'
+ 0x00,0x00,0xcc,0xcc,0xcc,0xcc,0xcc,0xcc,0xb4,0xfc,0xcc,0x84,0x00,0x00,0x00,
+
+ 7, // 0x58 'X'
+ 0x00,0x00,0xcc,0xcc,0xcc,0x78,0x30,0x78,0xcc,0xcc,0xcc,0xcc,0x00,0x00,0x00,
+
+ 7, // 0x59 'Y'
+ 0x00,0x00,0xcc,0xcc,0xcc,0xcc,0x78,0x30,0x30,0x30,0x30,0x78,0x00,0x00,0x00,
+
+ 7, // 0x5a 'Z'
+ 0x00,0x00,0xfc,0x8c,0x0c,0x18,0x30,0x60,0xc0,0xc0,0xc4,0xfc,0x00,0x00,0x00,
+
+ 7, // 0x5b '['
+ 0x00,0x78,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x78,0x00,0x00,
+
+ 7, // 0x5c '\'
+ 0x00,0x00,0xc0,0xc0,0x60,0x60,0x30,0x30,0x18,0x18,0x0c,0x0c,0x00,0x00,0x00,
+
+ 7, // 0x5d ']'
+ 0x00,0x78,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x78,0x00,0x00,
+
+ 7, // 0x5e '^'
+ 0x00,0x10,0x38,0x6c,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x5f '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,
+
+ 7, // 0x60 '`'
+ 0x00,0x30,0x30,0x30,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x61 'a'
+ 0x00,0x00,0x00,0x00,0x70,0xd8,0x18,0x78,0xd8,0xd8,0xd8,0x6c,0x00,0x00,0x00,
+
+ 7, // 0x62 'b'
+ 0x00,0x00,0x60,0x60,0x60,0x78,0x6c,0x6c,0x6c,0x6c,0x6c,0x78,0x00,0x00,0x00,
+
+ 7, // 0x63 'c'
+ 0x00,0x00,0x00,0x00,0x78,0xcc,0xc0,0xc0,0xc0,0xc0,0xcc,0x78,0x00,0x00,0x00,
+
+ 7, // 0x64 'd'
+ 0x00,0x00,0x18,0x18,0x18,0x78,0xd8,0xd8,0xd8,0xd8,0xd8,0x6c,0x00,0x00,0x00,
+
+ 7, // 0x65 'e'
+ 0x00,0x00,0x00,0x00,0x78,0xcc,0xcc,0xfc,0xc0,0xc0,0xcc,0x78,0x00,0x00,0x00,
+
+ 7, // 0x66 'f'
+ 0x00,0x00,0x30,0x68,0x60,0x60,0xf0,0x60,0x60,0x60,0x60,0xf0,0x00,0x00,0x00,
+
+ 7, // 0x67 'g'
+ 0x00,0x00,0x00,0x00,0x6c,0xd8,0xd8,0xd8,0xd8,0xd8,0x78,0x18,0xd8,0x70,0x00,
+
+ 7, // 0x68 'h'
+ 0x00,0x00,0xc0,0xc0,0xc0,0xd8,0xec,0xcc,0xcc,0xcc,0xcc,0xcc,0x00,0x00,0x00,
+
+ 7, // 0x69 'i'
+ 0x00,0x00,0x30,0x30,0x00,0x70,0x30,0x30,0x30,0x30,0x30,0x78,0x00,0x00,0x00,
+
+ 7, // 0x6a 'j'
+ 0x00,0x00,0x18,0x18,0x00,0x38,0x18,0x18,0x18,0x18,0x18,0xd8,0xd8,0x70,0x00,
+
+ 7, // 0x6b 'k'
+ 0x00,0x00,0xc0,0xc0,0xcc,0xcc,0xcc,0xd8,0xf0,0xd8,0xcc,0xcc,0x00,0x00,0x00,
+
+ 7, // 0x6c 'l'
+ 0x00,0x00,0x70,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x78,0x00,0x00,0x00,
+
+ 7, // 0x6d 'm'
+ 0x00,0x00,0x00,0x00,0xe8,0xfc,0xd4,0xd4,0xd4,0xc4,0xc4,0xc4,0x00,0x00,0x00,
+
+ 7, // 0x6e 'n'
+ 0x00,0x00,0x00,0x00,0xd8,0x6c,0x6c,0x6c,0x6c,0x6c,0x6c,0x6c,0x00,0x00,0x00,
+
+ 7, // 0x6f 'o'
+ 0x00,0x00,0x00,0x00,0x78,0xcc,0xcc,0xcc,0xcc,0xcc,0xcc,0x78,0x00,0x00,0x00,
+
+ 7, // 0x70 'p'
+ 0x00,0x00,0x00,0x00,0xf8,0xcc,0xcc,0xcc,0xcc,0xcc,0xf8,0xc0,0xc0,0xc0,0x00,
+
+ 7, // 0x71 'q'
+ 0x00,0x00,0x00,0x00,0x7c,0xcc,0xcc,0xcc,0xcc,0xcc,0x7c,0x0c,0x0c,0x0c,0x00,
+
+ 7, // 0x72 'r'
+ 0x00,0x00,0x00,0x00,0xd8,0xec,0xcc,0xc0,0xc0,0xc0,0xc0,0xc0,0x00,0x00,0x00,
+
+ 7, // 0x73 's'
+ 0x00,0x00,0x00,0x00,0x78,0xcc,0xe0,0x70,0x38,0x1c,0xcc,0x78,0x00,0x00,0x00,
+
+ 7, // 0x74 't'
+ 0x00,0x00,0x20,0x60,0x60,0xf0,0x60,0x60,0x60,0x60,0x6c,0x38,0x00,0x00,0x00,
+
+ 7, // 0x75 'u'
+ 0x00,0x00,0x00,0x00,0xd8,0xd8,0xd8,0xd8,0xd8,0xd8,0xd8,0x6c,0x00,0x00,0x00,
+
+ 7, // 0x76 'v'
+ 0x00,0x00,0x00,0x00,0xcc,0xcc,0xcc,0xcc,0xcc,0xcc,0x78,0x30,0x00,0x00,0x00,
+
+ 7, // 0x77 'w'
+ 0x00,0x00,0x00,0x00,0xcc,0xcc,0xcc,0xcc,0xb4,0xfc,0xcc,0x84,0x00,0x00,0x00,
+
+ 7, // 0x78 'x'
+ 0x00,0x00,0x00,0x00,0xcc,0xcc,0x78,0x30,0x78,0xcc,0xcc,0xcc,0x00,0x00,0x00,
+
+ 7, // 0x79 'y'
+ 0x00,0x00,0x00,0x00,0xcc,0xcc,0xcc,0xcc,0xcc,0xcc,0x7c,0x0c,0x18,0xf0,0x00,
+
+ 7, // 0x7a 'z'
+ 0x00,0x00,0x00,0x00,0xfc,0x8c,0x18,0x30,0x60,0xc0,0xc4,0xfc,0x00,0x00,0x00,
+
+ 7, // 0x7b '{'
+ 0x00,0x1c,0x30,0x30,0x30,0x30,0x30,0xe0,0x30,0x30,0x30,0x30,0x1c,0x00,0x00,
+
+ 7, // 0x7c '|'
+ 0x00,0x30,0x30,0x30,0x30,0x30,0x00,0x00,0x30,0x30,0x30,0x30,0x30,0x00,0x00,
+
+ 7, // 0x7d '}'
+ 0x00,0xe0,0x30,0x30,0x30,0x30,0x30,0x1c,0x30,0x30,0x30,0x30,0xe0,0x00,0x00,
+
+ 7, // 0x7e '~'
+ 0x00,0x00,0x34,0x58,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x7f ''
+ 0x00,0x00,0x00,0x00,0x00,0x30,0x78,0xcc,0xcc,0xfc,0x00,0x00,0x00,0x00,0x00,
+ 0
+ };
+
+ const int8u gse8x16[] =
+ {
+ 16, 0, 32, 128-32,
+
+ 0x00,0x00,0x11,0x00,0x22,0x00,0x33,0x00,0x44,0x00,0x55,0x00,0x66,0x00,0x77,0x00,0x88,0x00,
+ 0x99,0x00,0xaa,0x00,0xbb,0x00,0xcc,0x00,0xdd,0x00,0xee,0x00,0xff,0x00,0x10,0x01,0x21,0x01,
+ 0x32,0x01,0x43,0x01,0x54,0x01,0x65,0x01,0x76,0x01,0x87,0x01,0x98,0x01,0xa9,0x01,0xba,0x01,
+ 0xcb,0x01,0xdc,0x01,0xed,0x01,0xfe,0x01,0x0f,0x02,0x20,0x02,0x31,0x02,0x42,0x02,0x53,0x02,
+ 0x64,0x02,0x75,0x02,0x86,0x02,0x97,0x02,0xa8,0x02,0xb9,0x02,0xca,0x02,0xdb,0x02,0xec,0x02,
+ 0xfd,0x02,0x0e,0x03,0x1f,0x03,0x30,0x03,0x41,0x03,0x52,0x03,0x63,0x03,0x74,0x03,0x85,0x03,
+ 0x96,0x03,0xa7,0x03,0xb8,0x03,0xc9,0x03,0xda,0x03,0xeb,0x03,0xfc,0x03,0x0d,0x04,0x1e,0x04,
+ 0x2f,0x04,0x40,0x04,0x51,0x04,0x62,0x04,0x73,0x04,0x84,0x04,0x95,0x04,0xa6,0x04,0xb7,0x04,
+ 0xc8,0x04,0xd9,0x04,0xea,0x04,0xfb,0x04,0x0c,0x05,0x1d,0x05,0x2e,0x05,0x3f,0x05,0x50,0x05,
+ 0x61,0x05,0x72,0x05,0x83,0x05,0x94,0x05,0xa5,0x05,0xb6,0x05,0xc7,0x05,0xd8,0x05,0xe9,0x05,
+ 0xfa,0x05,0x0b,0x06,0x1c,0x06,0x2d,0x06,0x3e,0x06,0x4f,0x06,
+
+ 8, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x21 '!'
+ 0x00,0x00,0x10,0x38,0x38,0x38,0x38,0x10,0x10,0x00,0x10,0x10,0x00,0x00,0x00,0x00,
+
+ 8, // 0x22 '"'
+ 0x00,0x24,0x24,0x24,0x24,0x48,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x23 '#'
+ 0x00,0x00,0x24,0x24,0x24,0x7e,0x24,0x24,0x7e,0x24,0x24,0x24,0x00,0x00,0x00,0x00,
+
+ 8, // 0x24 '$'
+ 0x00,0x14,0x14,0x3e,0x55,0x54,0x54,0x3e,0x15,0x15,0x55,0x3e,0x14,0x14,0x00,0x00,
+
+ 8, // 0x25 '%'
+ 0x00,0x00,0x32,0x56,0x6c,0x04,0x08,0x08,0x10,0x13,0x25,0x26,0x00,0x00,0x00,0x00,
+
+ 8, // 0x26 '&'
+ 0x00,0x00,0x18,0x24,0x24,0x24,0x18,0x28,0x45,0x46,0x44,0x3b,0x00,0x00,0x00,0x00,
+
+ 8, // 0x27 '''
+ 0x00,0x00,0x08,0x08,0x08,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x28 '('
+ 0x00,0x04,0x08,0x10,0x10,0x20,0x20,0x20,0x20,0x10,0x10,0x08,0x04,0x00,0x00,0x00,
+
+ 8, // 0x29 ')'
+ 0x00,0x10,0x08,0x04,0x04,0x02,0x02,0x02,0x02,0x04,0x04,0x08,0x10,0x00,0x00,0x00,
+
+ 8, // 0x2a '*'
+ 0x00,0x00,0x00,0x00,0x66,0x24,0x18,0xff,0x18,0x24,0x66,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x2b '+'
+ 0x00,0x00,0x00,0x00,0x08,0x08,0x08,0x7f,0x08,0x08,0x08,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x2c ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x18,0x30,0x20,0x00,
+
+ 8, // 0x2d '-'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x2e '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x00,0x00,0x00,0x00,
+
+ 8, // 0x2f '/'
+ 0x00,0x02,0x02,0x04,0x04,0x08,0x08,0x10,0x10,0x20,0x20,0x40,0x40,0x00,0x00,0x00,
+
+ 8, // 0x30 '0'
+ 0x00,0x00,0x3c,0x42,0x42,0x46,0x4a,0x52,0x62,0x42,0x42,0x3c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x31 '1'
+ 0x00,0x00,0x08,0x08,0x18,0x38,0x08,0x08,0x08,0x08,0x08,0x3e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x32 '2'
+ 0x00,0x00,0x3c,0x42,0x42,0x02,0x04,0x08,0x10,0x20,0x42,0x7e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x33 '3'
+ 0x00,0x00,0x7e,0x42,0x04,0x08,0x1c,0x02,0x02,0x02,0x42,0x3c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x34 '4'
+ 0x00,0x00,0x04,0x08,0x10,0x24,0x44,0x44,0x7e,0x04,0x04,0x0e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x35 '5'
+ 0x00,0x00,0x7e,0x42,0x40,0x40,0x7c,0x02,0x02,0x02,0x42,0x3c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x36 '6'
+ 0x00,0x00,0x1c,0x20,0x40,0x40,0x7c,0x42,0x42,0x42,0x42,0x3c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x37 '7'
+ 0x00,0x00,0x7e,0x42,0x42,0x02,0x04,0x08,0x10,0x10,0x10,0x10,0x00,0x00,0x00,0x00,
+
+ 8, // 0x38 '8'
+ 0x00,0x00,0x3c,0x42,0x42,0x42,0x3c,0x42,0x42,0x42,0x42,0x3c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x39 '9'
+ 0x00,0x00,0x3c,0x42,0x42,0x42,0x42,0x3e,0x02,0x02,0x04,0x38,0x00,0x00,0x00,0x00,
+
+ 8, // 0x3a ':'
+ 0x00,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x3b ';'
+ 0x00,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x30,0x60,0x40,0x00,
+
+ 8, // 0x3c '<'
+ 0x00,0x00,0x00,0x02,0x04,0x08,0x10,0x20,0x10,0x08,0x04,0x02,0x00,0x00,0x00,0x00,
+
+ 8, // 0x3d '='
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x7f,0x00,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x3e '>'
+ 0x00,0x00,0x00,0x20,0x10,0x08,0x04,0x02,0x04,0x08,0x10,0x20,0x00,0x00,0x00,0x00,
+
+ 8, // 0x3f '?'
+ 0x00,0x00,0x3c,0x42,0x42,0x42,0x04,0x08,0x08,0x00,0x08,0x08,0x00,0x00,0x00,0x00,
+
+ 8, // 0x40 '@'
+ 0x00,0x00,0x3c,0x42,0x01,0x39,0x49,0x49,0x49,0x49,0x49,0x36,0x00,0x00,0x00,0x00,
+
+ 8, // 0x41 'A'
+ 0x00,0x00,0x18,0x24,0x42,0x42,0x42,0x7e,0x42,0x42,0x42,0x42,0x00,0x00,0x00,0x00,
+
+ 8, // 0x42 'B'
+ 0x00,0x00,0x7c,0x22,0x22,0x22,0x3c,0x22,0x22,0x22,0x22,0x7c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x43 'C'
+ 0x00,0x00,0x3c,0x42,0x42,0x40,0x40,0x40,0x40,0x42,0x42,0x3c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x44 'D'
+ 0x00,0x00,0x7c,0x22,0x22,0x22,0x22,0x22,0x22,0x22,0x22,0x7c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x45 'E'
+ 0x00,0x00,0x7e,0x22,0x20,0x28,0x38,0x28,0x20,0x20,0x22,0x7e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x46 'F'
+ 0x00,0x00,0x7e,0x22,0x20,0x28,0x38,0x28,0x20,0x20,0x20,0x70,0x00,0x00,0x00,0x00,
+
+ 8, // 0x47 'G'
+ 0x00,0x00,0x3c,0x42,0x42,0x40,0x40,0x4e,0x42,0x42,0x42,0x3c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x48 'H'
+ 0x00,0x00,0x42,0x42,0x42,0x42,0x7e,0x42,0x42,0x42,0x42,0x42,0x00,0x00,0x00,0x00,
+
+ 8, // 0x49 'I'
+ 0x00,0x00,0x1c,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x1c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x4a 'J'
+ 0x00,0x00,0x0e,0x04,0x04,0x04,0x04,0x04,0x04,0x44,0x44,0x38,0x00,0x00,0x00,0x00,
+
+ 8, // 0x4b 'K'
+ 0x00,0x00,0x62,0x22,0x24,0x28,0x30,0x28,0x24,0x22,0x22,0x62,0x00,0x00,0x00,0x00,
+
+ 8, // 0x4c 'L'
+ 0x00,0x00,0x70,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x22,0x7e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x4d 'M'
+ 0x00,0x00,0x41,0x63,0x55,0x49,0x41,0x41,0x41,0x41,0x41,0x41,0x00,0x00,0x00,0x00,
+
+ 8, // 0x4e 'N'
+ 0x00,0x00,0x42,0x42,0x62,0x52,0x4a,0x46,0x42,0x42,0x42,0x42,0x00,0x00,0x00,0x00,
+
+ 8, // 0x4f 'O'
+ 0x00,0x00,0x3c,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x3c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x50 'P'
+ 0x00,0x00,0x7c,0x22,0x22,0x22,0x22,0x3c,0x20,0x20,0x20,0x70,0x00,0x00,0x00,0x00,
+
+ 8, // 0x51 'Q'
+ 0x00,0x00,0x3c,0x42,0x42,0x42,0x42,0x42,0x42,0x4a,0x44,0x3a,0x02,0x00,0x00,0x00,
+
+ 8, // 0x52 'R'
+ 0x00,0x00,0x7c,0x22,0x22,0x22,0x22,0x3c,0x28,0x24,0x22,0x62,0x00,0x00,0x00,0x00,
+
+ 8, // 0x53 'S'
+ 0x00,0x00,0x3c,0x42,0x42,0x40,0x30,0x0c,0x02,0x42,0x42,0x3c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x54 'T'
+ 0x00,0x00,0x7f,0x49,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x1c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x55 'U'
+ 0x00,0x00,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x3c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x56 'V'
+ 0x00,0x00,0x41,0x41,0x41,0x41,0x22,0x22,0x14,0x14,0x08,0x08,0x00,0x00,0x00,0x00,
+
+ 8, // 0x57 'W'
+ 0x00,0x00,0x41,0x41,0x41,0x41,0x41,0x49,0x49,0x55,0x63,0x41,0x00,0x00,0x00,0x00,
+
+ 8, // 0x58 'X'
+ 0x00,0x00,0x42,0x42,0x42,0x24,0x18,0x18,0x24,0x42,0x42,0x42,0x00,0x00,0x00,0x00,
+
+ 8, // 0x59 'Y'
+ 0x00,0x00,0x22,0x22,0x22,0x22,0x14,0x08,0x08,0x08,0x08,0x1c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x5a 'Z'
+ 0x00,0x00,0x7e,0x42,0x02,0x04,0x08,0x10,0x20,0x40,0x42,0x7e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x5b '['
+ 0x00,0x1e,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x1e,0x00,0x00,0x00,
+
+ 8, // 0x5c '\'
+ 0x00,0x40,0x40,0x20,0x20,0x10,0x10,0x08,0x08,0x04,0x04,0x02,0x02,0x00,0x00,0x00,
+
+ 8, // 0x5d ']'
+ 0x00,0x3c,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x3c,0x00,0x00,0x00,
+
+ 8, // 0x5e '^'
+ 0x00,0x00,0x08,0x14,0x22,0x41,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x5f '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0x00,0x00,0x00,0x00,
+
+ 8, // 0x60 '`'
+ 0x00,0x00,0x08,0x08,0x08,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x61 'a'
+ 0x00,0x00,0x00,0x00,0x00,0x38,0x44,0x04,0x3c,0x44,0x44,0x3e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x62 'b'
+ 0x00,0x00,0x60,0x20,0x20,0x38,0x24,0x22,0x22,0x22,0x22,0x3c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x63 'c'
+ 0x00,0x00,0x00,0x00,0x00,0x3c,0x42,0x40,0x40,0x40,0x42,0x3c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x64 'd'
+ 0x00,0x00,0x0c,0x04,0x04,0x1c,0x24,0x44,0x44,0x44,0x44,0x3e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x65 'e'
+ 0x00,0x00,0x00,0x00,0x00,0x3c,0x42,0x42,0x7e,0x40,0x42,0x3c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x66 'f'
+ 0x00,0x00,0x0c,0x12,0x10,0x10,0x38,0x10,0x10,0x10,0x10,0x38,0x00,0x00,0x00,0x00,
+
+ 8, // 0x67 'g'
+ 0x00,0x00,0x00,0x00,0x00,0x3e,0x44,0x44,0x44,0x44,0x44,0x3c,0x04,0x44,0x38,0x00,
+
+ 8, // 0x68 'h'
+ 0x00,0x00,0x60,0x20,0x20,0x2c,0x32,0x22,0x22,0x22,0x22,0x62,0x00,0x00,0x00,0x00,
+
+ 8, // 0x69 'i'
+ 0x00,0x00,0x08,0x08,0x00,0x18,0x08,0x08,0x08,0x08,0x08,0x1c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x6a 'j'
+ 0x00,0x00,0x04,0x04,0x00,0x0c,0x04,0x04,0x04,0x04,0x04,0x44,0x44,0x38,0x00,0x00,
+
+ 8, // 0x6b 'k'
+ 0x00,0x00,0x60,0x20,0x20,0x22,0x24,0x28,0x38,0x24,0x22,0x62,0x00,0x00,0x00,0x00,
+
+ 8, // 0x6c 'l'
+ 0x00,0x00,0x18,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x1c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x6d 'm'
+ 0x00,0x00,0x00,0x00,0x00,0x76,0x49,0x49,0x49,0x49,0x41,0x41,0x00,0x00,0x00,0x00,
+
+ 8, // 0x6e 'n'
+ 0x00,0x00,0x00,0x00,0x00,0x5c,0x22,0x22,0x22,0x22,0x22,0x22,0x00,0x00,0x00,0x00,
+
+ 8, // 0x6f 'o'
+ 0x00,0x00,0x00,0x00,0x00,0x3c,0x42,0x42,0x42,0x42,0x42,0x3c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x70 'p'
+ 0x00,0x00,0x00,0x00,0x00,0x7c,0x22,0x22,0x22,0x22,0x22,0x3c,0x20,0x20,0x70,0x00,
+
+ 8, // 0x71 'q'
+ 0x00,0x00,0x00,0x00,0x00,0x3e,0x44,0x44,0x44,0x44,0x44,0x3c,0x04,0x04,0x0e,0x00,
+
+ 8, // 0x72 'r'
+ 0x00,0x00,0x00,0x00,0x00,0x7c,0x22,0x22,0x20,0x20,0x20,0x70,0x00,0x00,0x00,0x00,
+
+ 8, // 0x73 's'
+ 0x00,0x00,0x00,0x00,0x00,0x3c,0x42,0x40,0x3c,0x02,0x42,0x3c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x74 't'
+ 0x00,0x00,0x10,0x10,0x10,0x7c,0x10,0x10,0x10,0x10,0x12,0x0c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x75 'u'
+ 0x00,0x00,0x00,0x00,0x00,0x44,0x44,0x44,0x44,0x44,0x44,0x3e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x76 'v'
+ 0x00,0x00,0x00,0x00,0x00,0x41,0x41,0x41,0x41,0x22,0x14,0x08,0x00,0x00,0x00,0x00,
+
+ 8, // 0x77 'w'
+ 0x00,0x00,0x00,0x00,0x00,0x41,0x41,0x41,0x49,0x49,0x55,0x22,0x00,0x00,0x00,0x00,
+
+ 8, // 0x78 'x'
+ 0x00,0x00,0x00,0x00,0x00,0x42,0x42,0x24,0x18,0x24,0x42,0x42,0x00,0x00,0x00,0x00,
+
+ 8, // 0x79 'y'
+ 0x00,0x00,0x00,0x00,0x00,0x42,0x42,0x42,0x42,0x42,0x42,0x3e,0x02,0x04,0x78,0x00,
+
+ 8, // 0x7a 'z'
+ 0x00,0x00,0x00,0x00,0x00,0x7e,0x44,0x08,0x10,0x20,0x42,0x7e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x7b '{'
+ 0x00,0x06,0x08,0x08,0x08,0x08,0x08,0x30,0x08,0x08,0x08,0x08,0x08,0x06,0x00,0x00,
+
+ 8, // 0x7c '|'
+ 0x00,0x00,0x08,0x08,0x08,0x08,0x08,0x00,0x08,0x08,0x08,0x08,0x08,0x00,0x00,0x00,
+
+ 8, // 0x7d '}'
+ 0x00,0x30,0x08,0x08,0x08,0x08,0x08,0x06,0x08,0x08,0x08,0x08,0x08,0x30,0x00,0x00,
+
+ 8, // 0x7e '~'
+ 0x00,0x00,0x39,0x4e,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x7f ''
+ 0x00,0x00,0x00,0x00,0x00,0x08,0x14,0x22,0x41,0x41,0x7f,0x00,0x00,0x00,0x00,0x00,
+ 0
+ };
+
+ const int8u gse8x16_bold[] =
+ {
+ 16, 0, 32, 128-32,
+
+ 0x00,0x00,0x11,0x00,0x22,0x00,0x33,0x00,0x44,0x00,0x55,0x00,0x66,0x00,0x77,0x00,0x88,0x00,
+ 0x99,0x00,0xaa,0x00,0xbb,0x00,0xcc,0x00,0xdd,0x00,0xee,0x00,0xff,0x00,0x10,0x01,0x21,0x01,
+ 0x32,0x01,0x43,0x01,0x54,0x01,0x65,0x01,0x76,0x01,0x87,0x01,0x98,0x01,0xa9,0x01,0xba,0x01,
+ 0xcb,0x01,0xdc,0x01,0xed,0x01,0xfe,0x01,0x0f,0x02,0x20,0x02,0x31,0x02,0x42,0x02,0x53,0x02,
+ 0x64,0x02,0x75,0x02,0x86,0x02,0x97,0x02,0xa8,0x02,0xb9,0x02,0xca,0x02,0xdb,0x02,0xec,0x02,
+ 0xfd,0x02,0x0e,0x03,0x1f,0x03,0x30,0x03,0x41,0x03,0x52,0x03,0x63,0x03,0x74,0x03,0x85,0x03,
+ 0x96,0x03,0xa7,0x03,0xb8,0x03,0xc9,0x03,0xda,0x03,0xeb,0x03,0xfc,0x03,0x0d,0x04,0x1e,0x04,
+ 0x2f,0x04,0x40,0x04,0x51,0x04,0x62,0x04,0x73,0x04,0x84,0x04,0x95,0x04,0xa6,0x04,0xb7,0x04,
+ 0xc8,0x04,0xd9,0x04,0xea,0x04,0xfb,0x04,0x0c,0x05,0x1d,0x05,0x2e,0x05,0x3f,0x05,0x50,0x05,
+ 0x61,0x05,0x72,0x05,0x83,0x05,0x94,0x05,0xa5,0x05,0xb6,0x05,0xc7,0x05,0xd8,0x05,0xe9,0x05,
+ 0xfa,0x05,0x0b,0x06,0x1c,0x06,0x2d,0x06,0x3e,0x06,0x4f,0x06,
+
+ 8, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x21 '!'
+ 0x00,0x00,0x18,0x3c,0x3c,0x3c,0x3c,0x18,0x18,0x00,0x18,0x18,0x00,0x00,0x00,0x00,
+
+ 8, // 0x22 '"'
+ 0x00,0x66,0x66,0x66,0x66,0x24,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x23 '#'
+ 0x00,0x00,0x66,0x66,0x66,0xff,0x66,0x66,0xff,0x66,0x66,0x66,0x00,0x00,0x00,0x00,
+
+ 8, // 0x24 '$'
+ 0x00,0x08,0x08,0x3e,0x6b,0x6b,0x68,0x3e,0x0b,0x6b,0x6b,0x3e,0x08,0x08,0x00,0x00,
+
+ 8, // 0x25 '%'
+ 0x00,0x00,0x66,0xbe,0xcc,0x0c,0x18,0x18,0x30,0x33,0x65,0x66,0x00,0x00,0x00,0x00,
+
+ 8, // 0x26 '&'
+ 0x00,0x00,0x1c,0x36,0x36,0x36,0x1c,0x3b,0x6e,0x66,0x66,0x3b,0x00,0x00,0x00,0x00,
+
+ 8, // 0x27 '''
+ 0x00,0x00,0x18,0x18,0x18,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x28 '('
+ 0x00,0x06,0x0c,0x18,0x18,0x30,0x30,0x30,0x30,0x18,0x18,0x0c,0x06,0x00,0x00,0x00,
+
+ 8, // 0x29 ')'
+ 0x00,0x30,0x18,0x0c,0x0c,0x06,0x06,0x06,0x06,0x0c,0x0c,0x18,0x30,0x00,0x00,0x00,
+
+ 8, // 0x2a '*'
+ 0x00,0x00,0x00,0x00,0x66,0x24,0x18,0xff,0x18,0x24,0x66,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x2b '+'
+ 0x00,0x00,0x00,0x00,0x18,0x18,0x18,0xff,0x18,0x18,0x18,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x2c ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x18,0x30,0x20,0x00,
+
+ 8, // 0x2d '-'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x2e '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x00,0x00,0x00,0x00,
+
+ 8, // 0x2f '/'
+ 0x00,0x03,0x03,0x06,0x06,0x0c,0x0c,0x18,0x18,0x30,0x30,0x60,0x60,0x00,0x00,0x00,
+
+ 8, // 0x30 '0'
+ 0x00,0x00,0x3e,0x63,0x63,0x67,0x6b,0x73,0x63,0x63,0x63,0x3e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x31 '1'
+ 0x00,0x00,0x0c,0x0c,0x1c,0x3c,0x0c,0x0c,0x0c,0x0c,0x0c,0x3f,0x00,0x00,0x00,0x00,
+
+ 8, // 0x32 '2'
+ 0x00,0x00,0x3e,0x63,0x63,0x03,0x06,0x0c,0x18,0x30,0x61,0x7f,0x00,0x00,0x00,0x00,
+
+ 8, // 0x33 '3'
+ 0x00,0x00,0x7f,0x43,0x06,0x0c,0x1e,0x03,0x03,0x03,0x63,0x3e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x34 '4'
+ 0x00,0x00,0x06,0x0c,0x18,0x32,0x66,0x66,0x7f,0x06,0x06,0x0f,0x00,0x00,0x00,0x00,
+
+ 8, // 0x35 '5'
+ 0x00,0x00,0x7f,0x61,0x60,0x60,0x7e,0x03,0x03,0x03,0x63,0x3e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x36 '6'
+ 0x00,0x00,0x1e,0x30,0x60,0x60,0x7e,0x63,0x63,0x63,0x63,0x3e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x37 '7'
+ 0x00,0x00,0x7f,0x63,0x63,0x03,0x06,0x0c,0x18,0x18,0x18,0x18,0x00,0x00,0x00,0x00,
+
+ 8, // 0x38 '8'
+ 0x00,0x00,0x3e,0x63,0x63,0x63,0x3e,0x63,0x63,0x63,0x63,0x3e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x39 '9'
+ 0x00,0x00,0x3e,0x63,0x63,0x63,0x63,0x3f,0x03,0x03,0x06,0x3c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x3a ':'
+ 0x00,0x00,0x00,0x00,0x18,0x18,0x00,0x00,0x00,0x18,0x18,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x3b ';'
+ 0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,0x00,0x30,0x30,0x30,0x60,0x40,0x00,
+
+ 8, // 0x3c '<'
+ 0x00,0x00,0x00,0x06,0x0c,0x18,0x30,0x60,0x30,0x18,0x0c,0x06,0x00,0x00,0x00,0x00,
+
+ 8, // 0x3d '='
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x7f,0x00,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x3e '>'
+ 0x00,0x00,0x00,0x30,0x18,0x0c,0x06,0x03,0x06,0x0c,0x18,0x30,0x00,0x00,0x00,0x00,
+
+ 8, // 0x3f '?'
+ 0x00,0x00,0x3e,0x63,0x63,0x63,0x06,0x0c,0x0c,0x00,0x0c,0x0c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x40 '@'
+ 0x00,0x00,0x7c,0x86,0x03,0x73,0xdb,0xdb,0xdb,0xdb,0xdb,0x6e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x41 'A'
+ 0x00,0x00,0x08,0x1c,0x36,0x63,0x63,0x63,0x7f,0x63,0x63,0x63,0x00,0x00,0x00,0x00,
+
+ 8, // 0x42 'B'
+ 0x00,0x00,0x7e,0x33,0x33,0x33,0x3e,0x33,0x33,0x33,0x33,0x7e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x43 'C'
+ 0x00,0x00,0x1e,0x33,0x61,0x60,0x60,0x60,0x60,0x61,0x33,0x1e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x44 'D'
+ 0x00,0x00,0x7c,0x36,0x33,0x33,0x33,0x33,0x33,0x33,0x36,0x7c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x45 'E'
+ 0x00,0x00,0x7f,0x33,0x31,0x34,0x3c,0x34,0x30,0x31,0x33,0x7f,0x00,0x00,0x00,0x00,
+
+ 8, // 0x46 'F'
+ 0x00,0x00,0x7f,0x33,0x31,0x34,0x3c,0x34,0x30,0x30,0x30,0x78,0x00,0x00,0x00,0x00,
+
+ 8, // 0x47 'G'
+ 0x00,0x00,0x1f,0x33,0x61,0x60,0x60,0x6f,0x63,0x63,0x33,0x1e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x48 'H'
+ 0x00,0x00,0x63,0x63,0x63,0x63,0x7f,0x63,0x63,0x63,0x63,0x63,0x00,0x00,0x00,0x00,
+
+ 8, // 0x49 'I'
+ 0x00,0x00,0x1e,0x0c,0x0c,0x0c,0x0c,0x0c,0x0c,0x0c,0x0c,0x1e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x4a 'J'
+ 0x00,0x00,0x0f,0x06,0x06,0x06,0x06,0x06,0x06,0x66,0x66,0x3c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x4b 'K'
+ 0x00,0x00,0x73,0x33,0x36,0x36,0x3c,0x36,0x36,0x33,0x33,0x73,0x00,0x00,0x00,0x00,
+
+ 8, // 0x4c 'L'
+ 0x00,0x00,0x78,0x30,0x30,0x30,0x30,0x30,0x30,0x31,0x33,0x7f,0x00,0x00,0x00,0x00,
+
+ 8, // 0x4d 'M'
+ 0x00,0x00,0x63,0x63,0x77,0x77,0x7f,0x6b,0x6b,0x63,0x63,0x63,0x00,0x00,0x00,0x00,
+
+ 8, // 0x4e 'N'
+ 0x00,0x00,0x63,0x63,0x73,0x7b,0x6f,0x67,0x63,0x63,0x63,0x63,0x00,0x00,0x00,0x00,
+
+ 8, // 0x4f 'O'
+ 0x00,0x00,0x1c,0x36,0x63,0x63,0x63,0x63,0x63,0x63,0x36,0x1c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x50 'P'
+ 0x00,0x00,0x7e,0x33,0x33,0x33,0x33,0x3e,0x30,0x30,0x30,0x78,0x00,0x00,0x00,0x00,
+
+ 8, // 0x51 'Q'
+ 0x00,0x00,0x1c,0x36,0x63,0x63,0x63,0x63,0x63,0x6f,0x36,0x1e,0x03,0x00,0x00,0x00,
+
+ 8, // 0x52 'R'
+ 0x00,0x00,0x7e,0x33,0x33,0x33,0x33,0x3e,0x36,0x33,0x33,0x73,0x00,0x00,0x00,0x00,
+
+ 8, // 0x53 'S'
+ 0x00,0x00,0x3e,0x63,0x63,0x30,0x18,0x0c,0x06,0x63,0x63,0x3e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x54 'T'
+ 0x00,0x00,0x3f,0x3f,0x2d,0x0c,0x0c,0x0c,0x0c,0x0c,0x0c,0x1e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x55 'U'
+ 0x00,0x00,0x63,0x63,0x63,0x63,0x63,0x63,0x63,0x63,0x63,0x3e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x56 'V'
+ 0x00,0x00,0x63,0x63,0x63,0x63,0x63,0x63,0x63,0x36,0x1c,0x08,0x00,0x00,0x00,0x00,
+
+ 8, // 0x57 'W'
+ 0x00,0x00,0x63,0x63,0x63,0x6b,0x6b,0x7f,0x77,0x77,0x63,0x63,0x00,0x00,0x00,0x00,
+
+ 8, // 0x58 'X'
+ 0x00,0x00,0x63,0x63,0x63,0x36,0x1c,0x1c,0x36,0x63,0x63,0x63,0x00,0x00,0x00,0x00,
+
+ 8, // 0x59 'Y'
+ 0x00,0x00,0x33,0x33,0x33,0x33,0x1e,0x0c,0x0c,0x0c,0x0c,0x1e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x5a 'Z'
+ 0x00,0x00,0x7f,0x63,0x43,0x06,0x0c,0x18,0x30,0x61,0x63,0x7f,0x00,0x00,0x00,0x00,
+
+ 8, // 0x5b '['
+ 0x00,0x1f,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x1f,0x00,0x00,0x00,
+
+ 8, // 0x5c '\'
+ 0x00,0x60,0x60,0x30,0x30,0x18,0x18,0x0c,0x0c,0x06,0x06,0x03,0x03,0x00,0x00,0x00,
+
+ 8, // 0x5d ']'
+ 0x00,0x7c,0x0c,0x0c,0x0c,0x0c,0x0c,0x0c,0x0c,0x0c,0x0c,0x0c,0x7c,0x00,0x00,0x00,
+
+ 8, // 0x5e '^'
+ 0x00,0x00,0x08,0x1c,0x36,0x63,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x5f '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0x00,0x00,0x00,0x00,
+
+ 8, // 0x60 '`'
+ 0x00,0x00,0x18,0x18,0x18,0x0c,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x61 'a'
+ 0x00,0x00,0x00,0x00,0x00,0x3c,0x66,0x06,0x3e,0x66,0x66,0x3b,0x00,0x00,0x00,0x00,
+
+ 8, // 0x62 'b'
+ 0x00,0x00,0x70,0x30,0x30,0x3c,0x36,0x33,0x33,0x33,0x33,0x3e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x63 'c'
+ 0x00,0x00,0x00,0x00,0x00,0x3e,0x63,0x63,0x60,0x60,0x63,0x3e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x64 'd'
+ 0x00,0x00,0x0e,0x06,0x06,0x1e,0x36,0x66,0x66,0x66,0x66,0x3b,0x00,0x00,0x00,0x00,
+
+ 8, // 0x65 'e'
+ 0x00,0x00,0x00,0x00,0x00,0x3e,0x63,0x63,0x7f,0x60,0x63,0x3e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x66 'f'
+ 0x00,0x00,0x0e,0x1b,0x1b,0x18,0x3c,0x18,0x18,0x18,0x18,0x3c,0x00,0x00,0x00,0x00,
+
+ 8, // 0x67 'g'
+ 0x00,0x00,0x00,0x00,0x00,0x3b,0x66,0x66,0x66,0x66,0x66,0x3e,0x06,0x66,0x3c,0x00,
+
+ 8, // 0x68 'h'
+ 0x00,0x00,0x70,0x30,0x30,0x36,0x3b,0x33,0x33,0x33,0x33,0x73,0x00,0x00,0x00,0x00,
+
+ 8, // 0x69 'i'
+ 0x00,0x00,0x0c,0x0c,0x00,0x1c,0x0c,0x0c,0x0c,0x0c,0x0c,0x1e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x6a 'j'
+ 0x00,0x00,0x06,0x06,0x00,0x0e,0x06,0x06,0x06,0x06,0x06,0x66,0x66,0x3c,0x00,0x00,
+
+ 8, // 0x6b 'k'
+ 0x00,0x00,0x70,0x30,0x30,0x33,0x33,0x36,0x3c,0x36,0x33,0x73,0x00,0x00,0x00,0x00,
+
+ 8, // 0x6c 'l'
+ 0x00,0x00,0x1c,0x0c,0x0c,0x0c,0x0c,0x0c,0x0c,0x0c,0x0c,0x1e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x6d 'm'
+ 0x00,0x00,0x00,0x00,0x00,0x76,0x7f,0x6b,0x6b,0x6b,0x63,0x63,0x00,0x00,0x00,0x00,
+
+ 8, // 0x6e 'n'
+ 0x00,0x00,0x00,0x00,0x00,0x6e,0x33,0x33,0x33,0x33,0x33,0x33,0x00,0x00,0x00,0x00,
+
+ 8, // 0x6f 'o'
+ 0x00,0x00,0x00,0x00,0x00,0x3e,0x63,0x63,0x63,0x63,0x63,0x3e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x70 'p'
+ 0x00,0x00,0x00,0x00,0x00,0x6e,0x33,0x33,0x33,0x33,0x33,0x3e,0x30,0x30,0x78,0x00,
+
+ 8, // 0x71 'q'
+ 0x00,0x00,0x00,0x00,0x00,0x3b,0x66,0x66,0x66,0x66,0x66,0x3e,0x06,0x06,0x0f,0x00,
+
+ 8, // 0x72 'r'
+ 0x00,0x00,0x00,0x00,0x00,0x6e,0x3b,0x33,0x30,0x30,0x30,0x78,0x00,0x00,0x00,0x00,
+
+ 8, // 0x73 's'
+ 0x00,0x00,0x00,0x00,0x00,0x3e,0x63,0x60,0x3e,0x03,0x63,0x3e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x74 't'
+ 0x00,0x00,0x08,0x18,0x18,0x7e,0x18,0x18,0x18,0x18,0x1b,0x0e,0x00,0x00,0x00,0x00,
+
+ 8, // 0x75 'u'
+ 0x00,0x00,0x00,0x00,0x00,0x66,0x66,0x66,0x66,0x66,0x66,0x3b,0x00,0x00,0x00,0x00,
+
+ 8, // 0x76 'v'
+ 0x00,0x00,0x00,0x00,0x00,0x63,0x63,0x63,0x63,0x36,0x1c,0x08,0x00,0x00,0x00,0x00,
+
+ 8, // 0x77 'w'
+ 0x00,0x00,0x00,0x00,0x00,0x63,0x63,0x6b,0x6b,0x7f,0x36,0x36,0x00,0x00,0x00,0x00,
+
+ 8, // 0x78 'x'
+ 0x00,0x00,0x00,0x00,0x00,0x63,0x63,0x36,0x1c,0x36,0x63,0x63,0x00,0x00,0x00,0x00,
+
+ 8, // 0x79 'y'
+ 0x00,0x00,0x00,0x00,0x00,0x63,0x63,0x63,0x63,0x63,0x63,0x3f,0x03,0x06,0x7c,0x00,
+
+ 8, // 0x7a 'z'
+ 0x00,0x00,0x00,0x00,0x00,0x7f,0x63,0x06,0x0c,0x18,0x31,0x7f,0x00,0x00,0x00,0x00,
+
+ 8, // 0x7b '{'
+ 0x00,0x03,0x04,0x0c,0x0c,0x0c,0x08,0x30,0x08,0x0c,0x0c,0x0c,0x04,0x03,0x00,0x00,
+
+ 8, // 0x7c '|'
+ 0x00,0x00,0x0c,0x0c,0x0c,0x0c,0x0c,0x00,0x0c,0x0c,0x0c,0x0c,0x0c,0x00,0x00,0x00,
+
+ 8, // 0x7d '}'
+ 0x00,0x60,0x10,0x18,0x18,0x18,0x08,0x06,0x08,0x18,0x18,0x18,0x10,0x60,0x00,0x00,
+
+ 8, // 0x7e '~'
+ 0x00,0x00,0x3b,0x6e,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x7f ''
+ 0x00,0x00,0x00,0x00,0x00,0x08,0x1c,0x36,0x63,0x63,0x7f,0x00,0x00,0x00,0x00,0x00,
+ 0
+ };
+
+ const int8u mcs11_prop[] =
+ {
+ 11, 2, 32, 128-32,
+ 0x00,0x00,0x0C,0x00,0x18,0x00,0x24,0x00,0x30,0x00,0x3C,0x00,0x48,0x00,0x54,0x00,0x60,0x00,
+ 0x6C,0x00,0x78,0x00,0x84,0x00,0x90,0x00,0x9C,0x00,0xA8,0x00,0xB4,0x00,0xC0,0x00,0xCC,0x00,
+ 0xD8,0x00,0xE4,0x00,0xF0,0x00,0xFC,0x00,0x08,0x01,0x14,0x01,0x20,0x01,0x2C,0x01,0x38,0x01,
+ 0x44,0x01,0x50,0x01,0x5C,0x01,0x68,0x01,0x74,0x01,0x80,0x01,0x8C,0x01,0x98,0x01,0xA4,0x01,
+ 0xB0,0x01,0xBC,0x01,0xC8,0x01,0xD4,0x01,0xE0,0x01,0xEC,0x01,0xF8,0x01,0x04,0x02,0x10,0x02,
+ 0x1C,0x02,0x28,0x02,0x34,0x02,0x40,0x02,0x4C,0x02,0x58,0x02,0x64,0x02,0x70,0x02,0x7C,0x02,
+ 0x88,0x02,0x94,0x02,0xA0,0x02,0xAC,0x02,0xB8,0x02,0xC4,0x02,0xD0,0x02,0xDC,0x02,0xE8,0x02,
+ 0xF4,0x02,0x00,0x03,0x0C,0x03,0x18,0x03,0x24,0x03,0x30,0x03,0x3C,0x03,0x48,0x03,0x54,0x03,
+ 0x60,0x03,0x6C,0x03,0x78,0x03,0x84,0x03,0x90,0x03,0x9C,0x03,0xA8,0x03,0xB4,0x03,0xC0,0x03,
+ 0xCC,0x03,0xD8,0x03,0xE4,0x03,0xF0,0x03,0xFC,0x03,0x08,0x04,0x14,0x04,0x20,0x04,0x2C,0x04,
+ 0x38,0x04,0x44,0x04,0x50,0x04,0x5C,0x04,0x68,0x04,0x74,0x04,
+
+ 5, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x21 '!'
+ 0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00,0x20,0x00,
+
+ 4, // 0x22 '"'
+ 0x50,0x50,0xA0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x23 '#'
+ 0x00,0x28,0x28,0x7C,0x28,0x28,0x28,0x7C,0x28,0x28,0x00,
+
+ 6, // 0x24 '$'
+ 0x10,0x10,0x38,0x54,0x50,0x38,0x14,0x54,0x38,0x10,0x10,
+
+ 6, // 0x25 '%'
+ 0x00,0x00,0x68,0xA8,0xD0,0x10,0x20,0x2C,0x54,0x58,0x00,
+
+ 6, // 0x26 '&'
+ 0x00,0x20,0x50,0x50,0x50,0x20,0x54,0x54,0x48,0x34,0x00,
+
+ 3, // 0x27 '''
+ 0x40,0x40,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x28 '('
+ 0x10,0x20,0x20,0x40,0x40,0x40,0x40,0x40,0x20,0x20,0x10,
+
+ 5, // 0x29 ')'
+ 0x40,0x20,0x20,0x10,0x10,0x10,0x10,0x10,0x20,0x20,0x40,
+
+ 6, // 0x2A '*'
+ 0x00,0x00,0x28,0x7C,0x38,0x7C,0x28,0x00,0x00,0x00,0x00,
+
+ 6, // 0x2B '+'
+ 0x00,0x00,0x00,0x10,0x10,0x7C,0x10,0x10,0x00,0x00,0x00,
+
+ 4, // 0x2C ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x60,0xC0,
+
+ 6, // 0x2D '-'
+ 0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x2E '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x00,
+
+ 7, // 0x2F '/'
+ 0x00,0x04,0x04,0x08,0x08,0x10,0x10,0x20,0x20,0x40,0x40,
+
+ 6, // 0x30 '0'
+ 0x00,0x38,0x44,0x44,0x54,0x54,0x54,0x44,0x44,0x38,0x00,
+
+ 4, // 0x31 '1'
+ 0x00,0x20,0x60,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00,
+
+ 6, // 0x32 '2'
+ 0x00,0x38,0x44,0x44,0x04,0x08,0x10,0x20,0x40,0x7C,0x00,
+
+ 6, // 0x33 '3'
+ 0x00,0x38,0x44,0x04,0x04,0x38,0x04,0x04,0x44,0x38,0x00,
+
+ 6, // 0x34 '4'
+ 0x00,0x08,0x18,0x18,0x28,0x28,0x48,0x7C,0x08,0x08,0x00,
+
+ 6, // 0x35 '5'
+ 0x00,0x7C,0x40,0x40,0x78,0x44,0x04,0x04,0x44,0x38,0x00,
+
+ 6, // 0x36 '6'
+ 0x00,0x38,0x44,0x40,0x40,0x78,0x44,0x44,0x44,0x38,0x00,
+
+ 6, // 0x37 '7'
+ 0x00,0x7C,0x04,0x08,0x08,0x10,0x10,0x20,0x20,0x20,0x00,
+
+ 6, // 0x38 '8'
+ 0x00,0x38,0x44,0x44,0x44,0x38,0x44,0x44,0x44,0x38,0x00,
+
+ 6, // 0x39 '9'
+ 0x00,0x38,0x44,0x44,0x44,0x3C,0x04,0x04,0x44,0x38,0x00,
+
+ 4, // 0x3A ':'
+ 0x00,0x00,0x00,0x60,0x60,0x00,0x00,0x00,0x60,0x60,0x00,
+
+ 4, // 0x3B ';'
+ 0x00,0x00,0x00,0x60,0x60,0x00,0x00,0x00,0x60,0x60,0xC0,
+
+ 6, // 0x3C '<'
+ 0x00,0x04,0x08,0x10,0x20,0x40,0x20,0x10,0x08,0x04,0x00,
+
+ 6, // 0x3D '='
+ 0x00,0x00,0x00,0x00,0x7C,0x00,0x00,0x7C,0x00,0x00,0x00,
+
+ 6, // 0x3E '>'
+ 0x00,0x40,0x20,0x10,0x08,0x04,0x08,0x10,0x20,0x40,0x00,
+
+ 6, // 0x3F '?'
+ 0x00,0x38,0x44,0x04,0x04,0x08,0x10,0x10,0x00,0x10,0x00,
+
+ 6, // 0x40 '@'
+ 0x00,0x38,0x44,0x44,0x5C,0x54,0x54,0x4C,0x40,0x38,0x00,
+
+ 6, // 0x41 'A'
+ 0x00,0x38,0x44,0x44,0x44,0x44,0x7C,0x44,0x44,0x44,0x00,
+
+ 6, // 0x42 'B'
+ 0x00,0x78,0x44,0x44,0x44,0x78,0x44,0x44,0x44,0x78,0x00,
+
+ 6, // 0x43 'C'
+ 0x00,0x38,0x44,0x40,0x40,0x40,0x40,0x40,0x44,0x38,0x00,
+
+ 6, // 0x44 'D'
+ 0x00,0x70,0x48,0x44,0x44,0x44,0x44,0x44,0x48,0x70,0x00,
+
+ 6, // 0x45 'E'
+ 0x00,0x7C,0x40,0x40,0x40,0x78,0x40,0x40,0x40,0x7C,0x00,
+
+ 6, // 0x46 'F'
+ 0x00,0x7C,0x40,0x40,0x40,0x78,0x40,0x40,0x40,0x40,0x00,
+
+ 6, // 0x47 'G'
+ 0x00,0x38,0x44,0x40,0x40,0x5C,0x44,0x44,0x4C,0x34,0x00,
+
+ 6, // 0x48 'H'
+ 0x00,0x44,0x44,0x44,0x44,0x7C,0x44,0x44,0x44,0x44,0x00,
+
+ 4, // 0x49 'I'
+ 0x00,0x70,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x00,
+
+ 6, // 0x4A 'J'
+ 0x00,0x1C,0x08,0x08,0x08,0x08,0x08,0x08,0x48,0x30,0x00,
+
+ 6, // 0x4B 'K'
+ 0x00,0x44,0x48,0x50,0x60,0x60,0x50,0x48,0x44,0x44,0x00,
+
+ 6, // 0x4C 'L'
+ 0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x7C,0x00,
+
+ 8, // 0x4D 'M'
+ 0x00,0x41,0x63,0x55,0x49,0x49,0x41,0x41,0x41,0x41,0x00,
+
+ 7, // 0x4E 'N'
+ 0x00,0x42,0x42,0x62,0x52,0x4A,0x46,0x42,0x42,0x42,0x00,
+
+ 6, // 0x4F 'O'
+ 0x00,0x38,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x38,0x00,
+
+ 6, // 0x50 'P'
+ 0x00,0x78,0x44,0x44,0x44,0x78,0x40,0x40,0x40,0x40,0x00,
+
+ 6, // 0x51 'Q'
+ 0x00,0x38,0x44,0x44,0x44,0x44,0x44,0x54,0x48,0x34,0x00,
+
+ 6, // 0x52 'R'
+ 0x00,0x78,0x44,0x44,0x44,0x78,0x44,0x44,0x44,0x44,0x00,
+
+ 6, // 0x53 'S'
+ 0x00,0x38,0x44,0x40,0x40,0x38,0x04,0x04,0x44,0x38,0x00,
+
+ 6, // 0x54 'T'
+ 0x00,0x7C,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x00,
+
+ 6, // 0x55 'U'
+ 0x00,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x38,0x00,
+
+ 6, // 0x56 'V'
+ 0x00,0x44,0x44,0x44,0x44,0x28,0x28,0x28,0x10,0x10,0x00,
+
+ 8, // 0x57 'W'
+ 0x00,0x41,0x41,0x41,0x41,0x49,0x49,0x49,0x55,0x22,0x00,
+
+ 6, // 0x58 'X'
+ 0x00,0x44,0x44,0x44,0x28,0x10,0x28,0x44,0x44,0x44,0x00,
+
+ 6, // 0x59 'Y'
+ 0x00,0x44,0x44,0x44,0x28,0x10,0x10,0x10,0x10,0x10,0x00,
+
+ 6, // 0x5A 'Z'
+ 0x00,0x7C,0x04,0x04,0x08,0x10,0x20,0x40,0x40,0x7C,0x00,
+
+ 5, // 0x5B '['
+ 0x30,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x30,
+
+ 7, // 0x5C '\'
+ 0x40,0x40,0x20,0x20,0x10,0x10,0x08,0x08,0x04,0x04,0x00,
+
+ 4, // 0x5D ']'
+ 0x60,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x60,
+
+ 6, // 0x5E '^'
+ 0x00,0x10,0x28,0x44,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x5F '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,
+
+ 4, // 0x60 '`'
+ 0x00,0x40,0x40,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x61 'a'
+ 0x00,0x00,0x00,0x38,0x04,0x3C,0x44,0x44,0x44,0x3C,0x00,
+
+ 6, // 0x62 'b'
+ 0x00,0x40,0x40,0x78,0x44,0x44,0x44,0x44,0x44,0x78,0x00,
+
+ 6, // 0x63 'c'
+ 0x00,0x00,0x00,0x38,0x44,0x40,0x40,0x40,0x44,0x38,0x00,
+
+ 6, // 0x64 'd'
+ 0x00,0x04,0x04,0x3C,0x44,0x44,0x44,0x44,0x44,0x3C,0x00,
+
+ 6, // 0x65 'e'
+ 0x00,0x00,0x00,0x38,0x44,0x44,0x7C,0x40,0x44,0x38,0x00,
+
+ 4, // 0x66 'f'
+ 0x00,0x10,0x20,0x70,0x20,0x20,0x20,0x20,0x20,0x20,0x00,
+
+ 6, // 0x67 'g'
+ 0x00,0x00,0x00,0x3C,0x44,0x44,0x44,0x3C,0x04,0x44,0x38,
+
+ 6, // 0x68 'h'
+ 0x00,0x40,0x40,0x78,0x44,0x44,0x44,0x44,0x44,0x44,0x00,
+
+ 2, // 0x69 'i'
+ 0x00,0x40,0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,
+
+ 3, // 0x6A 'j'
+ 0x00,0x20,0x00,0x20,0x20,0x20,0x20,0x20,0x20,0xA0,0x40,
+
+ 5, // 0x6B 'k'
+ 0x00,0x40,0x40,0x48,0x50,0x60,0x60,0x50,0x48,0x48,0x00,
+
+ 2, // 0x6C 'l'
+ 0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,
+
+ 8, // 0x6D 'm'
+ 0x00,0x00,0x00,0x76,0x49,0x49,0x49,0x49,0x41,0x41,0x00,
+
+ 6, // 0x6E 'n'
+ 0x00,0x00,0x00,0x78,0x44,0x44,0x44,0x44,0x44,0x44,0x00,
+
+ 6, // 0x6F 'o'
+ 0x00,0x00,0x00,0x38,0x44,0x44,0x44,0x44,0x44,0x38,0x00,
+
+ 6, // 0x70 'p'
+ 0x00,0x00,0x00,0x78,0x44,0x44,0x44,0x44,0x78,0x40,0x40,
+
+ 6, // 0x71 'q'
+ 0x00,0x00,0x00,0x3C,0x44,0x44,0x44,0x44,0x3C,0x04,0x04,
+
+ 6, // 0x72 'r'
+ 0x00,0x00,0x00,0x58,0x24,0x20,0x20,0x20,0x20,0x20,0x00,
+
+ 6, // 0x73 's'
+ 0x00,0x00,0x00,0x38,0x44,0x40,0x38,0x04,0x44,0x38,0x00,
+
+ 5, // 0x74 't'
+ 0x00,0x20,0x20,0x70,0x20,0x20,0x20,0x20,0x28,0x10,0x00,
+
+ 6, // 0x75 'u'
+ 0x00,0x00,0x00,0x44,0x44,0x44,0x44,0x44,0x4C,0x34,0x00,
+
+ 6, // 0x76 'v'
+ 0x00,0x00,0x00,0x44,0x44,0x44,0x28,0x28,0x10,0x10,0x00,
+
+ 8, // 0x77 'w'
+ 0x00,0x00,0x00,0x41,0x41,0x41,0x41,0x49,0x49,0x36,0x00,
+
+ 6, // 0x78 'x'
+ 0x00,0x00,0x00,0x44,0x44,0x28,0x10,0x28,0x44,0x44,0x00,
+
+ 6, // 0x79 'y'
+ 0x00,0x00,0x00,0x44,0x44,0x44,0x44,0x3C,0x04,0x08,0x70,
+
+ 6, // 0x7A 'z'
+ 0x00,0x00,0x00,0x7C,0x04,0x08,0x10,0x20,0x40,0x7C,0x00,
+
+ 5, // 0x7B '{'
+ 0x18,0x20,0x20,0x20,0x20,0xC0,0x20,0x20,0x20,0x20,0x18,
+
+ 3, // 0x7C '|'
+ 0x00,0x40,0x40,0x40,0x40,0x00,0x40,0x40,0x40,0x40,0x00,
+
+ 5, // 0x7D '}'
+ 0xC0,0x20,0x20,0x20,0x20,0x18,0x20,0x20,0x20,0x20,0xC0,
+
+ 6, // 0x7E '~'
+ 0x00,0x24,0x54,0x48,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x7F ''
+ 0x00,0x10,0x38,0x6C,0x44,0x44,0x7C,0x00,0x00,0x00,0x00,
+
+ 0
+ };
+
+ const int8u mcs11_prop_condensed[] =
+ {
+ 11, 2, 32, 128-32,
+ 0x00,0x00,0x0C,0x00,0x18,0x00,0x24,0x00,0x30,0x00,0x3C,0x00,0x48,0x00,0x54,0x00,0x60,0x00,
+ 0x6C,0x00,0x78,0x00,0x84,0x00,0x90,0x00,0x9C,0x00,0xA8,0x00,0xB4,0x00,0xC0,0x00,0xCC,0x00,
+ 0xD8,0x00,0xE4,0x00,0xF0,0x00,0xFC,0x00,0x08,0x01,0x14,0x01,0x20,0x01,0x2C,0x01,0x38,0x01,
+ 0x44,0x01,0x50,0x01,0x5C,0x01,0x68,0x01,0x74,0x01,0x80,0x01,0x8C,0x01,0x98,0x01,0xA4,0x01,
+ 0xB0,0x01,0xBC,0x01,0xC8,0x01,0xD4,0x01,0xE0,0x01,0xEC,0x01,0xF8,0x01,0x04,0x02,0x10,0x02,
+ 0x1C,0x02,0x28,0x02,0x34,0x02,0x40,0x02,0x4C,0x02,0x58,0x02,0x64,0x02,0x70,0x02,0x7C,0x02,
+ 0x88,0x02,0x94,0x02,0xA0,0x02,0xAC,0x02,0xB8,0x02,0xC4,0x02,0xD0,0x02,0xDC,0x02,0xE8,0x02,
+ 0xF4,0x02,0x00,0x03,0x0C,0x03,0x18,0x03,0x24,0x03,0x30,0x03,0x3C,0x03,0x48,0x03,0x54,0x03,
+ 0x60,0x03,0x6C,0x03,0x78,0x03,0x84,0x03,0x90,0x03,0x9C,0x03,0xA8,0x03,0xB4,0x03,0xC0,0x03,
+ 0xCC,0x03,0xD8,0x03,0xE4,0x03,0xF0,0x03,0xFC,0x03,0x08,0x04,0x14,0x04,0x20,0x04,0x2C,0x04,
+ 0x38,0x04,0x44,0x04,0x50,0x04,0x5C,0x04,0x68,0x04,0x74,0x04,
+
+ 3, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 3, // 0x21 '!'
+ 0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x40,0x00,
+
+ 4, // 0x22 '"'
+ 0x50,0x50,0xA0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x23 '#'
+ 0x00,0x50,0x50,0xF8,0x50,0x50,0x50,0xF8,0x50,0x50,0x00,
+
+ 5, // 0x24 '$'
+ 0x00,0x40,0x60,0x90,0x80,0x60,0x10,0x90,0x60,0x20,0x00,
+
+ 5, // 0x25 '%'
+ 0x00,0x00,0x90,0x90,0x20,0x20,0x40,0x40,0x90,0x90,0x00,
+
+ 5, // 0x26 '&'
+ 0x00,0x40,0xA0,0xA0,0xA0,0x40,0xA8,0x90,0x90,0x68,0x00,
+
+ 5, // 0x27 '''
+ 0x00,0x00,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x28 '('
+ 0x10,0x20,0x20,0x40,0x40,0x40,0x40,0x40,0x20,0x20,0x10,
+
+ 4, // 0x29 ')'
+ 0x80,0x40,0x40,0x20,0x20,0x20,0x20,0x20,0x40,0x40,0x80,
+
+ 5, // 0x2A '*'
+ 0x00,0x00,0x90,0x60,0xF0,0x60,0x90,0x00,0x00,0x00,0x00,
+
+ 5, // 0x2B '+'
+ 0x00,0x00,0x00,0x20,0x20,0xF8,0x20,0x20,0x00,0x00,0x00,
+
+ 4, // 0x2C ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x60,0xC0,
+
+ 5, // 0x2D '-'
+ 0x00,0x00,0x00,0x00,0x00,0xF0,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x2E '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0xC0,0x00,
+
+ 6, // 0x2F '/'
+ 0x08,0x08,0x10,0x10,0x20,0x20,0x40,0x40,0x80,0x80,0x00,
+
+ 5, // 0x30 '0'
+ 0x00,0x70,0x90,0x90,0x90,0x90,0x90,0x90,0x90,0xE0,0x00,
+
+ 3, // 0x31 '1'
+ 0x00,0x40,0xC0,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,
+
+ 5, // 0x32 '2'
+ 0x00,0x60,0x90,0x90,0x10,0x10,0x20,0x40,0x80,0xF0,0x00,
+
+ 5, // 0x33 '3'
+ 0x00,0x60,0x90,0x10,0x10,0x60,0x10,0x10,0x90,0x60,0x00,
+
+ 5, // 0x34 '4'
+ 0x00,0x10,0x30,0x30,0x50,0x50,0x90,0xF0,0x10,0x10,0x00,
+
+ 5, // 0x35 '5'
+ 0x00,0xF0,0x80,0x80,0xE0,0x90,0x10,0x10,0x90,0x60,0x00,
+
+ 5, // 0x36 '6'
+ 0x00,0x60,0x90,0x80,0x80,0xE0,0x90,0x90,0x90,0x60,0x00,
+
+ 5, // 0x37 '7'
+ 0x00,0xF0,0x10,0x10,0x10,0x20,0x20,0x40,0x40,0x40,0x00,
+
+ 5, // 0x38 '8'
+ 0x00,0x60,0x90,0x90,0x90,0x60,0x90,0x90,0x90,0x60,0x00,
+
+ 5, // 0x39 '9'
+ 0x00,0x60,0x90,0x90,0x90,0x70,0x10,0x10,0x90,0x60,0x00,
+
+ 4, // 0x3A ':'
+ 0x00,0x00,0x00,0x60,0x60,0x00,0x00,0x00,0x60,0x60,0x00,
+
+ 4, // 0x3B ';'
+ 0x00,0x00,0x00,0x60,0x60,0x00,0x00,0x00,0x60,0x60,0xC0,
+
+ 6, // 0x3C '<'
+ 0x00,0x08,0x10,0x20,0x40,0x80,0x40,0x20,0x10,0x08,0x00,
+
+ 5, // 0x3D '='
+ 0x00,0x00,0x00,0x00,0xF0,0x00,0x00,0xF0,0x00,0x00,0x00,
+
+ 6, // 0x3E '>'
+ 0x00,0x80,0x40,0x20,0x10,0x08,0x10,0x20,0x40,0x80,0x00,
+
+ 5, // 0x3F '?'
+ 0x00,0x60,0x90,0x10,0x10,0x20,0x40,0x00,0x40,0x00,0x00,
+
+ 5, // 0x40 '@'
+ 0x00,0x60,0x90,0x90,0xB0,0xB0,0xB0,0x80,0x80,0x70,0x00,
+
+ 5, // 0x41 'A'
+ 0x00,0x60,0x90,0x90,0x90,0xF0,0x90,0x90,0x90,0x90,0x00,
+
+ 5, // 0x42 'B'
+ 0x00,0xE0,0x90,0x90,0x90,0xE0,0x90,0x90,0x90,0xE0,0x00,
+
+ 5, // 0x43 'C'
+ 0x00,0x60,0x90,0x80,0x80,0x80,0x80,0x80,0x90,0x60,0x00,
+
+ 5, // 0x44 'D'
+ 0x00,0xE0,0x90,0x90,0x90,0x90,0x90,0x90,0x90,0xE0,0x00,
+
+ 5, // 0x45 'E'
+ 0x00,0xF0,0x80,0x80,0x80,0xF0,0x80,0x80,0x80,0xF0,0x00,
+
+ 5, // 0x46 'F'
+ 0x00,0xF0,0x80,0x80,0x80,0xF0,0x80,0x80,0x80,0x80,0x00,
+
+ 5, // 0x47 'G'
+ 0x00,0x70,0x80,0x80,0x80,0xB0,0x90,0x90,0x90,0x60,0x00,
+
+ 5, // 0x48 'H'
+ 0x00,0x90,0x90,0x90,0x90,0xF0,0x90,0x90,0x90,0x90,0x00,
+
+ 4, // 0x49 'I'
+ 0x00,0xE0,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0xE0,0x00,
+
+ 5, // 0x4A 'J'
+ 0x00,0x70,0x20,0x20,0x20,0x20,0x20,0xA0,0xA0,0x40,0x00,
+
+ 5, // 0x4B 'K'
+ 0x00,0x90,0x90,0xA0,0xA0,0xC0,0xA0,0xA0,0x90,0x90,0x00,
+
+ 5, // 0x4C 'L'
+ 0x00,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0xF0,0x00,
+
+ 6, // 0x4D 'M'
+ 0x00,0x88,0xD8,0xA8,0xA8,0xA8,0x88,0x88,0x88,0x88,0x00,
+
+ 5, // 0x4E 'N'
+ 0x00,0x90,0x90,0xD0,0xD0,0xB0,0xB0,0x90,0x90,0x90,0x00,
+
+ 5, // 0x4F 'O'
+ 0x00,0x60,0x90,0x90,0x90,0x90,0x90,0x90,0x90,0x60,0x00,
+
+ 5, // 0x50 'P'
+ 0x00,0xE0,0x90,0x90,0x90,0x90,0xE0,0x80,0x80,0x80,0x00,
+
+ 5, // 0x51 'Q'
+ 0x00,0x60,0x90,0x90,0x90,0x90,0x90,0x90,0x90,0x60,0x30,
+
+ 5, // 0x52 'R'
+ 0x00,0xE0,0x90,0x90,0x90,0x90,0xE0,0xA0,0x90,0x90,0x00,
+
+ 5, // 0x53 'S'
+ 0x00,0x60,0x90,0x80,0x80,0x60,0x10,0x10,0x90,0x60,0x00,
+
+ 6, // 0x54 'T'
+ 0x00,0xF8,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00,
+
+ 5, // 0x55 'U'
+ 0x00,0x90,0x90,0x90,0x90,0x90,0x90,0x90,0x90,0x60,0x00,
+
+ 6, // 0x56 'V'
+ 0x00,0x88,0x88,0x88,0x88,0x50,0x50,0x50,0x20,0x20,0x00,
+
+ 6, // 0x57 'W'
+ 0x00,0x88,0x88,0x88,0xA8,0xA8,0xA8,0xA8,0xA8,0x50,0x00,
+
+ 5, // 0x58 'X'
+ 0x00,0x90,0x90,0x90,0x60,0x60,0x90,0x90,0x90,0x90,0x00,
+
+ 6, // 0x59 'Y'
+ 0x00,0x88,0x88,0x88,0x50,0x20,0x20,0x20,0x20,0x20,0x00,
+
+ 5, // 0x5A 'Z'
+ 0x00,0xF0,0x10,0x20,0x20,0x40,0x40,0x80,0x80,0xF0,0x00,
+
+ 4, // 0x5B '['
+ 0x60,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x60,0x00,
+
+ 6, // 0x5C '\'
+ 0x80,0x80,0x40,0x40,0x20,0x20,0x10,0x10,0x08,0x08,0x00,
+
+ 4, // 0x5D ']'
+ 0x60,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x60,0x00,
+
+ 5, // 0x5E '^'
+ 0x00,0x20,0x50,0x88,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x5F '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x00,
+
+ 5, // 0x60 '`'
+ 0x00,0x40,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x61 'a'
+ 0x00,0x00,0x00,0x60,0x90,0x10,0x70,0x90,0x90,0x70,0x00,
+
+ 5, // 0x62 'b'
+ 0x00,0x80,0x80,0x80,0xE0,0x90,0x90,0x90,0x90,0xE0,0x00,
+
+ 5, // 0x63 'c'
+ 0x00,0x00,0x00,0x60,0x90,0x80,0x80,0x80,0x90,0x60,0x00,
+
+ 5, // 0x64 'd'
+ 0x00,0x10,0x10,0x10,0x70,0x90,0x90,0x90,0x90,0x70,0x00,
+
+ 5, // 0x65 'e'
+ 0x00,0x00,0x00,0x60,0x90,0x90,0xF0,0x80,0x90,0x60,0x00,
+
+ 4, // 0x66 'f'
+ 0x00,0x20,0x40,0x40,0xE0,0x40,0x40,0x40,0x40,0x40,0x00,
+
+ 5, // 0x67 'g'
+ 0x00,0x00,0x00,0x70,0x90,0x90,0x90,0x70,0x10,0x90,0x60,
+
+ 5, // 0x68 'h'
+ 0x00,0x80,0x80,0x80,0xE0,0x90,0x90,0x90,0x90,0x90,0x00,
+
+ 2, // 0x69 'i'
+ 0x00,0x80,0x00,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x00,
+
+ 4, // 0x6A 'j'
+ 0x00,0x20,0x00,0x20,0x20,0x20,0x20,0x20,0x20,0xA0,0x40,
+
+ 5, // 0x6B 'k'
+ 0x00,0x80,0x80,0x90,0x90,0xA0,0xC0,0xA0,0x90,0x90,0x00,
+
+ 2, // 0x6C 'l'
+ 0x00,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x00,
+
+ 6, // 0x6D 'm'
+ 0x00,0x00,0x00,0xD0,0xA8,0xA8,0xA8,0x88,0x88,0x88,0x00,
+
+ 5, // 0x6E 'n'
+ 0x00,0x00,0x00,0xA0,0xD0,0x90,0x90,0x90,0x90,0x90,0x00,
+
+ 5, // 0x6F 'o'
+ 0x00,0x00,0x00,0x60,0x90,0x90,0x90,0x90,0x90,0x60,0x00,
+
+ 5, // 0x70 'p'
+ 0x00,0x00,0x00,0xE0,0x90,0x90,0x90,0x90,0xE0,0x80,0x80,
+
+ 5, // 0x71 'q'
+ 0x00,0x00,0x00,0x70,0x90,0x90,0x90,0x90,0x70,0x10,0x10,
+
+ 6, // 0x72 'r'
+ 0x00,0x00,0x00,0xB8,0x48,0x40,0x40,0x40,0x40,0x40,0x00,
+
+ 5, // 0x73 's'
+ 0x00,0x00,0x00,0x60,0x90,0x40,0x20,0x10,0x90,0x60,0x00,
+
+ 4, // 0x74 't'
+ 0x00,0x40,0x40,0xE0,0x40,0x40,0x40,0x40,0x40,0x20,0x00,
+
+ 5, // 0x75 'u'
+ 0x00,0x00,0x00,0x90,0x90,0x90,0x90,0x90,0x90,0x70,0x00,
+
+ 6, // 0x76 'v'
+ 0x00,0x00,0x00,0x88,0x88,0x88,0x50,0x50,0x20,0x20,0x00,
+
+ 6, // 0x77 'w'
+ 0x00,0x00,0x00,0x88,0x88,0x88,0xA8,0xA8,0xA8,0x50,0x00,
+
+ 5, // 0x78 'x'
+ 0x00,0x00,0x00,0x90,0x90,0x60,0x60,0x90,0x90,0x90,0x00,
+
+ 5, // 0x79 'y'
+ 0x00,0x00,0x00,0x90,0x90,0x90,0x90,0x70,0x10,0x20,0xC0,
+
+ 5, // 0x7A 'z'
+ 0x00,0x00,0x00,0xF0,0x10,0x20,0x40,0x80,0x80,0xF0,0x00,
+
+ 5, // 0x7B '{'
+ 0x30,0x40,0x40,0x40,0x40,0x80,0x40,0x40,0x40,0x40,0x30,
+
+ 3, // 0x7C '|'
+ 0x00,0x40,0x40,0x40,0x40,0x00,0x40,0x40,0x40,0x40,0x00,
+
+ 5, // 0x7D '}'
+ 0xC0,0x20,0x20,0x20,0x20,0x10,0x20,0x20,0x20,0x20,0xC0,
+
+ 5, // 0x7E '~'
+ 0x00,0x40,0xA8,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x7F ''
+ 0x00,0x20,0x70,0xD8,0x88,0x88,0xF8,0x00,0x00,0x00,0x00,
+
+ 0
+ };
+
+ const int8u mcs12_prop[] =
+ {
+ 12, 3, 32, 128-32,
+ 0x00,0x00,0x0D,0x00,0x1A,0x00,0x27,0x00,0x34,0x00,0x41,0x00,0x4E,0x00,0x5B,0x00,0x68,0x00,
+ 0x75,0x00,0x82,0x00,0x8F,0x00,0x9C,0x00,0xA9,0x00,0xB6,0x00,0xC3,0x00,0xD0,0x00,0xDD,0x00,
+ 0xEA,0x00,0xF7,0x00,0x04,0x01,0x11,0x01,0x1E,0x01,0x2B,0x01,0x38,0x01,0x45,0x01,0x52,0x01,
+ 0x5F,0x01,0x6C,0x01,0x79,0x01,0x86,0x01,0x93,0x01,0xA0,0x01,0xAD,0x01,0xBA,0x01,0xC7,0x01,
+ 0xD4,0x01,0xE1,0x01,0xEE,0x01,0xFB,0x01,0x08,0x02,0x15,0x02,0x22,0x02,0x2F,0x02,0x3C,0x02,
+ 0x49,0x02,0x62,0x02,0x6F,0x02,0x7C,0x02,0x89,0x02,0x96,0x02,0xA3,0x02,0xB0,0x02,0xBD,0x02,
+ 0xCA,0x02,0xD7,0x02,0xF0,0x02,0xFD,0x02,0x0A,0x03,0x17,0x03,0x24,0x03,0x31,0x03,0x3E,0x03,
+ 0x4B,0x03,0x58,0x03,0x65,0x03,0x72,0x03,0x7F,0x03,0x8C,0x03,0x99,0x03,0xA6,0x03,0xB3,0x03,
+ 0xC0,0x03,0xCD,0x03,0xDA,0x03,0xE7,0x03,0xF4,0x03,0x01,0x04,0x1A,0x04,0x27,0x04,0x34,0x04,
+ 0x41,0x04,0x4E,0x04,0x5B,0x04,0x68,0x04,0x75,0x04,0x82,0x04,0x8F,0x04,0xA8,0x04,0xB5,0x04,
+ 0xC2,0x04,0xCF,0x04,0xDC,0x04,0xE9,0x04,0xF6,0x04,0x03,0x05,
+
+ 5, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x21 '!'
+ 0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00,0x20,0x00,0x00,
+
+ 4, // 0x22 '"'
+ 0x50,0x50,0xA0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x23 '#'
+ 0x28,0x28,0x28,0x7C,0x28,0x28,0x28,0x7C,0x28,0x28,0x28,0x00,
+
+ 6, // 0x24 '$'
+ 0x10,0x10,0x38,0x54,0x50,0x38,0x14,0x54,0x38,0x10,0x10,0x00,
+
+ 7, // 0x25 '%'
+ 0x32,0x54,0x64,0x08,0x08,0x10,0x10,0x26,0x2A,0x4C,0x00,0x00,
+
+ 7, // 0x26 '&'
+ 0x00,0x30,0x48,0x48,0x48,0x30,0x4A,0x4A,0x44,0x3A,0x00,0x00,
+
+ 3, // 0x27 '''
+ 0x40,0x40,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x28 '('
+ 0x10,0x20,0x20,0x40,0x40,0x40,0x40,0x40,0x20,0x20,0x10,0x00,
+
+ 5, // 0x29 ')'
+ 0x40,0x20,0x20,0x10,0x10,0x10,0x10,0x10,0x20,0x20,0x40,0x00,
+
+ 6, // 0x2A '*'
+ 0x00,0x00,0x10,0x54,0x38,0x7C,0x38,0x54,0x10,0x00,0x00,0x00,
+
+ 6, // 0x2B '+'
+ 0x00,0x00,0x00,0x00,0x10,0x10,0x7C,0x10,0x10,0x00,0x00,0x00,
+
+ 4, // 0x2C ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x40,0x80,
+
+ 6, // 0x2D '-'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x2E '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x00,0x00,
+
+ 7, // 0x2F '/'
+ 0x00,0x04,0x04,0x08,0x08,0x10,0x10,0x20,0x20,0x40,0x40,0x00,
+
+ 7, // 0x30 '0'
+ 0x00,0x38,0x44,0x44,0x54,0x54,0x54,0x44,0x44,0x38,0x00,0x00,
+
+ 4, // 0x31 '1'
+ 0x00,0x20,0x60,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00,0x00,
+
+ 7, // 0x32 '2'
+ 0x00,0x38,0x44,0x04,0x04,0x08,0x10,0x20,0x40,0x7C,0x00,0x00,
+
+ 7, // 0x33 '3'
+ 0x00,0x38,0x44,0x04,0x04,0x38,0x04,0x04,0x44,0x38,0x00,0x00,
+
+ 6, // 0x34 '4'
+ 0x00,0x08,0x18,0x28,0x28,0x48,0x48,0x7C,0x08,0x08,0x00,0x00,
+
+ 7, // 0x35 '5'
+ 0x00,0x7C,0x40,0x40,0x78,0x44,0x04,0x04,0x44,0x38,0x00,0x00,
+
+ 7, // 0x36 '6'
+ 0x00,0x38,0x44,0x40,0x78,0x44,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 6, // 0x37 '7'
+ 0x00,0x7C,0x04,0x08,0x08,0x10,0x10,0x20,0x20,0x20,0x00,0x00,
+
+ 7, // 0x38 '8'
+ 0x00,0x38,0x44,0x44,0x44,0x38,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 7, // 0x39 '9'
+ 0x00,0x38,0x44,0x44,0x44,0x3C,0x04,0x04,0x44,0x38,0x00,0x00,
+
+ 4, // 0x3A ':'
+ 0x00,0x00,0x00,0x60,0x60,0x00,0x00,0x00,0x60,0x60,0x00,0x00,
+
+ 4, // 0x3B ';'
+ 0x00,0x00,0x00,0x60,0x60,0x00,0x00,0x00,0x60,0x60,0x40,0x80,
+
+ 6, // 0x3C '<'
+ 0x00,0x00,0x04,0x08,0x10,0x20,0x40,0x20,0x10,0x08,0x04,0x00,
+
+ 6, // 0x3D '='
+ 0x00,0x00,0x00,0x00,0x7C,0x00,0x00,0x7C,0x00,0x00,0x00,0x00,
+
+ 6, // 0x3E '>'
+ 0x00,0x00,0x40,0x20,0x10,0x08,0x04,0x08,0x10,0x20,0x40,0x00,
+
+ 6, // 0x3F '?'
+ 0x00,0x38,0x44,0x04,0x04,0x08,0x10,0x10,0x00,0x10,0x00,0x00,
+
+ 7, // 0x40 '@'
+ 0x00,0x38,0x44,0x44,0x5C,0x54,0x54,0x4C,0x40,0x38,0x00,0x00,
+
+ 7, // 0x41 'A'
+ 0x00,0x38,0x44,0x44,0x44,0x7C,0x44,0x44,0x44,0x44,0x00,0x00,
+
+ 7, // 0x42 'B'
+ 0x00,0x78,0x44,0x44,0x44,0x78,0x44,0x44,0x44,0x78,0x00,0x00,
+
+ 6, // 0x43 'C'
+ 0x00,0x38,0x44,0x40,0x40,0x40,0x40,0x40,0x44,0x38,0x00,0x00,
+
+ 7, // 0x44 'D'
+ 0x00,0x70,0x48,0x44,0x44,0x44,0x44,0x44,0x48,0x70,0x00,0x00,
+
+ 6, // 0x45 'E'
+ 0x00,0x7C,0x40,0x40,0x40,0x78,0x40,0x40,0x40,0x7C,0x00,0x00,
+
+ 6, // 0x46 'F'
+ 0x00,0x7C,0x40,0x40,0x40,0x78,0x40,0x40,0x40,0x40,0x00,0x00,
+
+ 7, // 0x47 'G'
+ 0x00,0x38,0x44,0x40,0x40,0x5C,0x44,0x44,0x4C,0x34,0x00,0x00,
+
+ 7, // 0x48 'H'
+ 0x00,0x44,0x44,0x44,0x44,0x7C,0x44,0x44,0x44,0x44,0x00,0x00,
+
+ 5, // 0x49 'I'
+ 0x00,0x70,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x00,0x00,
+
+ 6, // 0x4A 'J'
+ 0x00,0x1C,0x08,0x08,0x08,0x08,0x08,0x48,0x48,0x30,0x00,0x00,
+
+ 6, // 0x4B 'K'
+ 0x00,0x44,0x48,0x50,0x60,0x60,0x50,0x48,0x44,0x44,0x00,0x00,
+
+ 6, // 0x4C 'L'
+ 0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x7C,0x00,0x00,
+
+ 9, // 0x4D 'M'
+ 0x00,0x00,0x41,0x00,0x63,0x00,0x55,0x00,0x49,0x00,0x49,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x4E 'N'
+ 0x00,0x44,0x64,0x64,0x54,0x54,0x4C,0x4C,0x44,0x44,0x00,0x00,
+
+ 7, // 0x4F 'O'
+ 0x00,0x38,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 7, // 0x50 'P'
+ 0x00,0x78,0x44,0x44,0x44,0x44,0x78,0x40,0x40,0x40,0x00,0x00,
+
+ 7, // 0x51 'Q'
+ 0x00,0x38,0x44,0x44,0x44,0x44,0x44,0x54,0x48,0x34,0x00,0x00,
+
+ 7, // 0x52 'R'
+ 0x00,0x78,0x44,0x44,0x44,0x44,0x78,0x48,0x44,0x44,0x00,0x00,
+
+ 7, // 0x53 'S'
+ 0x00,0x38,0x44,0x40,0x40,0x38,0x04,0x04,0x44,0x38,0x00,0x00,
+
+ 6, // 0x54 'T'
+ 0x00,0x7C,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x00,0x00,
+
+ 7, // 0x55 'U'
+ 0x00,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 6, // 0x56 'V'
+ 0x00,0x44,0x44,0x44,0x44,0x28,0x28,0x28,0x10,0x10,0x00,0x00,
+
+ 9, // 0x57 'W'
+ 0x00,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x49,0x00,0x49,0x00,0x55,0x00,0x22,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x58 'X'
+ 0x00,0x44,0x44,0x44,0x28,0x10,0x28,0x44,0x44,0x44,0x00,0x00,
+
+ 7, // 0x59 'Y'
+ 0x00,0x44,0x44,0x44,0x44,0x28,0x10,0x10,0x10,0x10,0x00,0x00,
+
+ 6, // 0x5A 'Z'
+ 0x00,0x7C,0x04,0x04,0x08,0x10,0x20,0x40,0x40,0x7C,0x00,0x00,
+
+ 4, // 0x5B '['
+ 0x70,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x70,0x00,
+
+ 7, // 0x5C '\'
+ 0x00,0x40,0x40,0x20,0x20,0x10,0x10,0x08,0x08,0x04,0x04,0x00,
+
+ 4, // 0x5D ']'
+ 0xE0,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0xE0,0x00,
+
+ 6, // 0x5E '^'
+ 0x00,0x10,0x28,0x44,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x5F '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x00,
+
+ 4, // 0x60 '`'
+ 0x00,0x40,0x40,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x61 'a'
+ 0x00,0x00,0x00,0x38,0x04,0x3C,0x44,0x44,0x44,0x3C,0x00,0x00,
+
+ 7, // 0x62 'b'
+ 0x00,0x40,0x40,0x78,0x44,0x44,0x44,0x44,0x44,0x78,0x00,0x00,
+
+ 6, // 0x63 'c'
+ 0x00,0x00,0x00,0x38,0x44,0x40,0x40,0x40,0x44,0x38,0x00,0x00,
+
+ 7, // 0x64 'd'
+ 0x00,0x04,0x04,0x3C,0x44,0x44,0x44,0x44,0x44,0x3C,0x00,0x00,
+
+ 7, // 0x65 'e'
+ 0x00,0x00,0x00,0x38,0x44,0x44,0x7C,0x40,0x44,0x38,0x00,0x00,
+
+ 4, // 0x66 'f'
+ 0x00,0x30,0x40,0xE0,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x00,
+
+ 7, // 0x67 'g'
+ 0x00,0x00,0x00,0x3C,0x44,0x44,0x44,0x44,0x44,0x3C,0x04,0x78,
+
+ 7, // 0x68 'h'
+ 0x00,0x40,0x40,0x78,0x44,0x44,0x44,0x44,0x44,0x44,0x00,0x00,
+
+ 3, // 0x69 'i'
+ 0x00,0x40,0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x00,
+
+ 5, // 0x6A 'j'
+ 0x00,0x10,0x00,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x90,0x60,
+
+ 6, // 0x6B 'k'
+ 0x00,0x40,0x40,0x44,0x48,0x50,0x60,0x50,0x48,0x44,0x00,0x00,
+
+ 3, // 0x6C 'l'
+ 0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x00,
+
+ 9, // 0x6D 'm'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x76,0x00,0x49,0x00,0x49,0x00,0x49,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x6E 'n'
+ 0x00,0x00,0x00,0x58,0x64,0x44,0x44,0x44,0x44,0x44,0x00,0x00,
+
+ 7, // 0x6F 'o'
+ 0x00,0x00,0x00,0x38,0x44,0x44,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 7, // 0x70 'p'
+ 0x00,0x00,0x00,0x78,0x44,0x44,0x44,0x44,0x44,0x78,0x40,0x40,
+
+ 7, // 0x71 'q'
+ 0x00,0x00,0x00,0x3C,0x44,0x44,0x44,0x44,0x44,0x3C,0x04,0x04,
+
+ 6, // 0x72 'r'
+ 0x00,0x00,0x00,0x58,0x24,0x20,0x20,0x20,0x20,0x70,0x00,0x00,
+
+ 7, // 0x73 's'
+ 0x00,0x00,0x00,0x38,0x44,0x40,0x38,0x04,0x44,0x38,0x00,0x00,
+
+ 5, // 0x74 't'
+ 0x00,0x20,0x20,0x70,0x20,0x20,0x20,0x20,0x20,0x18,0x00,0x00,
+
+ 7, // 0x75 'u'
+ 0x00,0x00,0x00,0x44,0x44,0x44,0x44,0x44,0x4C,0x34,0x00,0x00,
+
+ 6, // 0x76 'v'
+ 0x00,0x00,0x00,0x44,0x44,0x44,0x28,0x28,0x10,0x10,0x00,0x00,
+
+ 9, // 0x77 'w'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x49,0x00,0x49,0x00,0x49,0x00,0x36,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x78 'x'
+ 0x00,0x00,0x00,0x44,0x44,0x28,0x10,0x28,0x44,0x44,0x00,0x00,
+
+ 7, // 0x79 'y'
+ 0x00,0x00,0x00,0x44,0x44,0x44,0x44,0x44,0x44,0x3C,0x08,0x70,
+
+ 6, // 0x7A 'z'
+ 0x00,0x00,0x00,0x7C,0x04,0x08,0x10,0x20,0x40,0x7C,0x00,0x00,
+
+ 5, // 0x7B '{'
+ 0x18,0x20,0x20,0x20,0x20,0xC0,0x20,0x20,0x20,0x20,0x18,0x00,
+
+ 3, // 0x7C '|'
+ 0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,
+
+ 5, // 0x7D '}'
+ 0xC0,0x20,0x20,0x20,0x20,0x18,0x20,0x20,0x20,0x20,0xC0,0x00,
+
+ 7, // 0x7E '~'
+ 0x00,0x60,0x92,0x92,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x7F ''
+ 0x00,0x10,0x38,0x6C,0x44,0x44,0x7C,0x00,0x00,0x00,0x00,0x00,
+
+ 0
+ };
+
+ const int8u mcs13_prop[] =
+ {
+ 13, 4, 32, 128-32,
+ 0x00,0x00,0x0E,0x00,0x1C,0x00,0x2A,0x00,0x38,0x00,0x46,0x00,0x54,0x00,0x62,0x00,0x70,0x00,
+ 0x7E,0x00,0x8C,0x00,0x9A,0x00,0xA8,0x00,0xB6,0x00,0xC4,0x00,0xD2,0x00,0xE0,0x00,0xEE,0x00,
+ 0xFC,0x00,0x0A,0x01,0x18,0x01,0x26,0x01,0x34,0x01,0x42,0x01,0x50,0x01,0x5E,0x01,0x6C,0x01,
+ 0x7A,0x01,0x88,0x01,0x96,0x01,0xA4,0x01,0xB2,0x01,0xC0,0x01,0xCE,0x01,0xDC,0x01,0xEA,0x01,
+ 0xF8,0x01,0x06,0x02,0x14,0x02,0x22,0x02,0x30,0x02,0x3E,0x02,0x4C,0x02,0x5A,0x02,0x68,0x02,
+ 0x76,0x02,0x91,0x02,0x9F,0x02,0xAD,0x02,0xBB,0x02,0xC9,0x02,0xD7,0x02,0xE5,0x02,0xF3,0x02,
+ 0x01,0x03,0x0F,0x03,0x2A,0x03,0x38,0x03,0x46,0x03,0x54,0x03,0x62,0x03,0x70,0x03,0x7E,0x03,
+ 0x8C,0x03,0x9A,0x03,0xA8,0x03,0xB6,0x03,0xC4,0x03,0xD2,0x03,0xE0,0x03,0xEE,0x03,0xFC,0x03,
+ 0x0A,0x04,0x18,0x04,0x26,0x04,0x34,0x04,0x42,0x04,0x50,0x04,0x6B,0x04,0x79,0x04,0x87,0x04,
+ 0x95,0x04,0xA3,0x04,0xB1,0x04,0xBF,0x04,0xCD,0x04,0xDB,0x04,0xE9,0x04,0x04,0x05,0x12,0x05,
+ 0x20,0x05,0x2E,0x05,0x3C,0x05,0x4A,0x05,0x58,0x05,0x66,0x05,
+
+ 5, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x21 '!'
+ 0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00,0x20,0x00,0x00,
+
+ 4, // 0x22 '"'
+ 0x00,0x50,0x50,0xA0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x23 '#'
+ 0x00,0x28,0x28,0x28,0x7C,0x28,0x28,0x28,0x7C,0x28,0x28,0x28,0x00,
+
+ 6, // 0x24 '$'
+ 0x00,0x10,0x10,0x38,0x54,0x50,0x38,0x14,0x54,0x38,0x10,0x10,0x00,
+
+ 7, // 0x25 '%'
+ 0x00,0x32,0x54,0x64,0x08,0x08,0x10,0x10,0x26,0x2A,0x4C,0x00,0x00,
+
+ 7, // 0x26 '&'
+ 0x00,0x30,0x48,0x48,0x48,0x30,0x4A,0x4A,0x44,0x3A,0x00,0x00,0x00,
+
+ 3, // 0x27 '''
+ 0x00,0x40,0x40,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x28 '('
+ 0x10,0x20,0x20,0x40,0x40,0x40,0x40,0x40,0x20,0x20,0x10,0x00,0x00,
+
+ 5, // 0x29 ')'
+ 0x40,0x20,0x20,0x10,0x10,0x10,0x10,0x10,0x20,0x20,0x40,0x00,0x00,
+
+ 6, // 0x2A '*'
+ 0x00,0x00,0x10,0x54,0x38,0x7C,0x38,0x54,0x10,0x00,0x00,0x00,0x00,
+
+ 6, // 0x2B '+'
+ 0x00,0x00,0x00,0x00,0x10,0x10,0x7C,0x10,0x10,0x00,0x00,0x00,0x00,
+
+ 4, // 0x2C ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x20,0x40,0x80,
+
+ 6, // 0x2D '-'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x2E '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x00,0x00,0x00,
+
+ 7, // 0x2F '/'
+ 0x00,0x04,0x04,0x08,0x08,0x10,0x10,0x20,0x20,0x40,0x40,0x00,0x00,
+
+ 7, // 0x30 '0'
+ 0x00,0x38,0x44,0x44,0x54,0x54,0x54,0x44,0x44,0x38,0x00,0x00,0x00,
+
+ 4, // 0x31 '1'
+ 0x00,0x20,0x60,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00,0x00,0x00,
+
+ 7, // 0x32 '2'
+ 0x00,0x38,0x44,0x04,0x04,0x08,0x10,0x20,0x40,0x7C,0x00,0x00,0x00,
+
+ 7, // 0x33 '3'
+ 0x00,0x38,0x44,0x04,0x04,0x38,0x04,0x04,0x44,0x38,0x00,0x00,0x00,
+
+ 6, // 0x34 '4'
+ 0x00,0x08,0x18,0x28,0x28,0x48,0x48,0x7C,0x08,0x08,0x00,0x00,0x00,
+
+ 7, // 0x35 '5'
+ 0x00,0x7C,0x40,0x40,0x78,0x44,0x04,0x04,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x36 '6'
+ 0x00,0x38,0x44,0x40,0x78,0x44,0x44,0x44,0x44,0x38,0x00,0x00,0x00,
+
+ 6, // 0x37 '7'
+ 0x00,0x7C,0x04,0x08,0x08,0x10,0x10,0x20,0x20,0x20,0x00,0x00,0x00,
+
+ 7, // 0x38 '8'
+ 0x00,0x38,0x44,0x44,0x44,0x38,0x44,0x44,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x39 '9'
+ 0x00,0x38,0x44,0x44,0x44,0x3C,0x04,0x04,0x44,0x38,0x00,0x00,0x00,
+
+ 4, // 0x3A ':'
+ 0x00,0x00,0x00,0x60,0x60,0x00,0x00,0x00,0x60,0x60,0x00,0x00,0x00,
+
+ 4, // 0x3B ';'
+ 0x00,0x00,0x00,0x60,0x60,0x00,0x00,0x00,0x60,0x60,0x20,0x40,0x80,
+
+ 6, // 0x3C '<'
+ 0x00,0x00,0x04,0x08,0x10,0x20,0x40,0x20,0x10,0x08,0x04,0x00,0x00,
+
+ 6, // 0x3D '='
+ 0x00,0x00,0x00,0x00,0x7C,0x00,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x3E '>'
+ 0x00,0x00,0x40,0x20,0x10,0x08,0x04,0x08,0x10,0x20,0x40,0x00,0x00,
+
+ 6, // 0x3F '?'
+ 0x00,0x38,0x44,0x04,0x04,0x08,0x10,0x10,0x00,0x10,0x00,0x00,0x00,
+
+ 7, // 0x40 '@'
+ 0x00,0x38,0x44,0x44,0x5C,0x54,0x54,0x4C,0x40,0x38,0x00,0x00,0x00,
+
+ 7, // 0x41 'A'
+ 0x00,0x38,0x44,0x44,0x44,0x7C,0x44,0x44,0x44,0x44,0x00,0x00,0x00,
+
+ 7, // 0x42 'B'
+ 0x00,0x78,0x44,0x44,0x44,0x78,0x44,0x44,0x44,0x78,0x00,0x00,0x00,
+
+ 6, // 0x43 'C'
+ 0x00,0x38,0x44,0x40,0x40,0x40,0x40,0x40,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x44 'D'
+ 0x00,0x70,0x48,0x44,0x44,0x44,0x44,0x44,0x48,0x70,0x00,0x00,0x00,
+
+ 6, // 0x45 'E'
+ 0x00,0x7C,0x40,0x40,0x40,0x78,0x40,0x40,0x40,0x7C,0x00,0x00,0x00,
+
+ 6, // 0x46 'F'
+ 0x00,0x7C,0x40,0x40,0x40,0x78,0x40,0x40,0x40,0x40,0x00,0x00,0x00,
+
+ 7, // 0x47 'G'
+ 0x00,0x38,0x44,0x40,0x40,0x5C,0x44,0x44,0x4C,0x34,0x00,0x00,0x00,
+
+ 7, // 0x48 'H'
+ 0x00,0x44,0x44,0x44,0x44,0x7C,0x44,0x44,0x44,0x44,0x00,0x00,0x00,
+
+ 5, // 0x49 'I'
+ 0x00,0x70,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x00,0x00,0x00,
+
+ 6, // 0x4A 'J'
+ 0x00,0x1C,0x08,0x08,0x08,0x08,0x08,0x48,0x48,0x30,0x00,0x00,0x00,
+
+ 6, // 0x4B 'K'
+ 0x00,0x44,0x48,0x50,0x60,0x60,0x50,0x48,0x44,0x44,0x00,0x00,0x00,
+
+ 6, // 0x4C 'L'
+ 0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x7C,0x00,0x00,0x00,
+
+ 9, // 0x4D 'M'
+ 0x00,0x00,0x41,0x00,0x63,0x00,0x55,0x00,0x49,0x00,0x49,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x4E 'N'
+ 0x00,0x44,0x64,0x64,0x54,0x54,0x4C,0x4C,0x44,0x44,0x00,0x00,0x00,
+
+ 7, // 0x4F 'O'
+ 0x00,0x38,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x50 'P'
+ 0x00,0x78,0x44,0x44,0x44,0x44,0x78,0x40,0x40,0x40,0x00,0x00,0x00,
+
+ 7, // 0x51 'Q'
+ 0x00,0x38,0x44,0x44,0x44,0x44,0x44,0x54,0x48,0x34,0x00,0x00,0x00,
+
+ 7, // 0x52 'R'
+ 0x00,0x78,0x44,0x44,0x44,0x44,0x78,0x48,0x44,0x44,0x00,0x00,0x00,
+
+ 7, // 0x53 'S'
+ 0x00,0x38,0x44,0x40,0x40,0x38,0x04,0x04,0x44,0x38,0x00,0x00,0x00,
+
+ 6, // 0x54 'T'
+ 0x00,0x7C,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x00,0x00,0x00,
+
+ 7, // 0x55 'U'
+ 0x00,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x38,0x00,0x00,0x00,
+
+ 6, // 0x56 'V'
+ 0x00,0x44,0x44,0x44,0x44,0x28,0x28,0x28,0x10,0x10,0x00,0x00,0x00,
+
+ 9, // 0x57 'W'
+ 0x00,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x49,0x00,0x49,0x00,0x55,0x00,0x22,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x58 'X'
+ 0x00,0x44,0x44,0x44,0x28,0x10,0x28,0x44,0x44,0x44,0x00,0x00,0x00,
+
+ 7, // 0x59 'Y'
+ 0x00,0x44,0x44,0x44,0x44,0x28,0x10,0x10,0x10,0x10,0x00,0x00,0x00,
+
+ 6, // 0x5A 'Z'
+ 0x00,0x7C,0x04,0x04,0x08,0x10,0x20,0x40,0x40,0x7C,0x00,0x00,0x00,
+
+ 4, // 0x5B '['
+ 0x70,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x70,0x00,0x00,
+
+ 7, // 0x5C '\'
+ 0x00,0x40,0x40,0x20,0x20,0x10,0x10,0x08,0x08,0x04,0x04,0x00,0x00,
+
+ 4, // 0x5D ']'
+ 0xE0,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0xE0,0x00,0x00,
+
+ 6, // 0x5E '^'
+ 0x00,0x10,0x28,0x44,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x5F '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,
+
+ 4, // 0x60 '`'
+ 0x00,0x40,0x40,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x61 'a'
+ 0x00,0x00,0x00,0x38,0x04,0x3C,0x44,0x44,0x44,0x3C,0x00,0x00,0x00,
+
+ 7, // 0x62 'b'
+ 0x00,0x40,0x40,0x78,0x44,0x44,0x44,0x44,0x44,0x78,0x00,0x00,0x00,
+
+ 6, // 0x63 'c'
+ 0x00,0x00,0x00,0x38,0x44,0x40,0x40,0x40,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x64 'd'
+ 0x00,0x04,0x04,0x3C,0x44,0x44,0x44,0x44,0x44,0x3C,0x00,0x00,0x00,
+
+ 7, // 0x65 'e'
+ 0x00,0x00,0x00,0x38,0x44,0x44,0x7C,0x40,0x44,0x38,0x00,0x00,0x00,
+
+ 4, // 0x66 'f'
+ 0x00,0x30,0x40,0xE0,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x00,0x00,
+
+ 7, // 0x67 'g'
+ 0x00,0x00,0x00,0x3C,0x44,0x44,0x44,0x44,0x44,0x3C,0x04,0x44,0x38,
+
+ 7, // 0x68 'h'
+ 0x00,0x40,0x40,0x78,0x44,0x44,0x44,0x44,0x44,0x44,0x00,0x00,0x00,
+
+ 3, // 0x69 'i'
+ 0x00,0x40,0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x00,0x00,
+
+ 5, // 0x6A 'j'
+ 0x00,0x10,0x00,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x90,0x60,0x00,
+
+ 6, // 0x6B 'k'
+ 0x00,0x40,0x40,0x44,0x48,0x50,0x60,0x50,0x48,0x44,0x00,0x00,0x00,
+
+ 3, // 0x6C 'l'
+ 0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x00,0x00,
+
+ 9, // 0x6D 'm'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x76,0x00,0x49,0x00,0x49,0x00,0x49,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x6E 'n'
+ 0x00,0x00,0x00,0x58,0x64,0x44,0x44,0x44,0x44,0x44,0x00,0x00,0x00,
+
+ 7, // 0x6F 'o'
+ 0x00,0x00,0x00,0x38,0x44,0x44,0x44,0x44,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x70 'p'
+ 0x00,0x00,0x00,0x78,0x44,0x44,0x44,0x44,0x44,0x78,0x40,0x40,0x40,
+
+ 7, // 0x71 'q'
+ 0x00,0x00,0x00,0x3C,0x44,0x44,0x44,0x44,0x44,0x3C,0x04,0x04,0x04,
+
+ 6, // 0x72 'r'
+ 0x00,0x00,0x00,0x58,0x24,0x20,0x20,0x20,0x20,0x70,0x00,0x00,0x00,
+
+ 7, // 0x73 's'
+ 0x00,0x00,0x00,0x38,0x44,0x40,0x38,0x04,0x44,0x38,0x00,0x00,0x00,
+
+ 5, // 0x74 't'
+ 0x00,0x20,0x20,0x70,0x20,0x20,0x20,0x20,0x20,0x18,0x00,0x00,0x00,
+
+ 7, // 0x75 'u'
+ 0x00,0x00,0x00,0x44,0x44,0x44,0x44,0x44,0x4C,0x34,0x00,0x00,0x00,
+
+ 6, // 0x76 'v'
+ 0x00,0x00,0x00,0x44,0x44,0x44,0x28,0x28,0x10,0x10,0x00,0x00,0x00,
+
+ 9, // 0x77 'w'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x49,0x00,0x49,0x00,0x49,0x00,0x36,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x78 'x'
+ 0x00,0x00,0x00,0x44,0x44,0x28,0x10,0x28,0x44,0x44,0x00,0x00,0x00,
+
+ 7, // 0x79 'y'
+ 0x00,0x00,0x00,0x44,0x44,0x44,0x44,0x44,0x44,0x3C,0x04,0x08,0x70,
+
+ 6, // 0x7A 'z'
+ 0x00,0x00,0x00,0x7C,0x04,0x08,0x10,0x20,0x40,0x7C,0x00,0x00,0x00,
+
+ 5, // 0x7B '{'
+ 0x18,0x20,0x20,0x20,0x20,0xC0,0x20,0x20,0x20,0x20,0x18,0x00,0x00,
+
+ 3, // 0x7C '|'
+ 0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x00,
+
+ 5, // 0x7D '}'
+ 0xC0,0x20,0x20,0x20,0x20,0x18,0x20,0x20,0x20,0x20,0xC0,0x00,0x00,
+
+ 7, // 0x7E '~'
+ 0x00,0x60,0x92,0x92,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x7F ''
+ 0x00,0x10,0x38,0x6C,0x44,0x44,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 0
+ };
+
+ const int8u mcs5x10_mono[] =
+ {
+ 10, 2, 32, 128-32,
+ 0x00,0x00,0x0B,0x00,0x16,0x00,0x21,0x00,0x2C,0x00,0x37,0x00,0x42,0x00,0x4D,0x00,0x58,0x00,
+ 0x63,0x00,0x6E,0x00,0x79,0x00,0x84,0x00,0x8F,0x00,0x9A,0x00,0xA5,0x00,0xB0,0x00,0xBB,0x00,
+ 0xC6,0x00,0xD1,0x00,0xDC,0x00,0xE7,0x00,0xF2,0x00,0xFD,0x00,0x08,0x01,0x13,0x01,0x1E,0x01,
+ 0x29,0x01,0x34,0x01,0x3F,0x01,0x4A,0x01,0x55,0x01,0x60,0x01,0x6B,0x01,0x76,0x01,0x81,0x01,
+ 0x8C,0x01,0x97,0x01,0xA2,0x01,0xAD,0x01,0xB8,0x01,0xC3,0x01,0xCE,0x01,0xD9,0x01,0xE4,0x01,
+ 0xEF,0x01,0xFA,0x01,0x05,0x02,0x10,0x02,0x1B,0x02,0x26,0x02,0x31,0x02,0x3C,0x02,0x47,0x02,
+ 0x52,0x02,0x5D,0x02,0x68,0x02,0x73,0x02,0x7E,0x02,0x89,0x02,0x94,0x02,0x9F,0x02,0xAA,0x02,
+ 0xB5,0x02,0xC0,0x02,0xCB,0x02,0xD6,0x02,0xE1,0x02,0xEC,0x02,0xF7,0x02,0x02,0x03,0x0D,0x03,
+ 0x18,0x03,0x23,0x03,0x2E,0x03,0x39,0x03,0x44,0x03,0x4F,0x03,0x5A,0x03,0x65,0x03,0x70,0x03,
+ 0x7B,0x03,0x86,0x03,0x91,0x03,0x9C,0x03,0xA7,0x03,0xB2,0x03,0xBD,0x03,0xC8,0x03,0xD3,0x03,
+ 0xDE,0x03,0xE9,0x03,0xF4,0x03,0xFF,0x03,0x0A,0x04,0x15,0x04,
+
+ 5, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x21 '!'
+ 0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x00,0x20,0x00,
+
+ 5, // 0x22 '"'
+ 0x00,0x50,0x50,0xA0,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x23 '#'
+ 0x00,0x50,0x50,0xF8,0x50,0x50,0x50,0xF8,0x50,0x50,
+
+ 5, // 0x24 '$'
+ 0x00,0x40,0x60,0x90,0x80,0x60,0x10,0x90,0x60,0x20,
+
+ 5, // 0x25 '%'
+ 0x00,0x00,0x90,0x90,0x20,0x20,0x40,0x40,0x90,0x90,
+
+ 5, // 0x26 '&'
+ 0x00,0x40,0xA0,0xA0,0xA0,0x40,0xA8,0x90,0x90,0x68,
+
+ 5, // 0x27 '''
+ 0x00,0x20,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x28 '('
+ 0x10,0x20,0x20,0x40,0x40,0x40,0x40,0x20,0x20,0x10,
+
+ 5, // 0x29 ')'
+ 0x40,0x20,0x20,0x10,0x10,0x10,0x10,0x20,0x20,0x40,
+
+ 5, // 0x2A '*'
+ 0x00,0x00,0x90,0x60,0xF0,0x60,0x90,0x00,0x00,0x00,
+
+ 5, // 0x2B '+'
+ 0x00,0x00,0x00,0x20,0x20,0xF8,0x20,0x20,0x00,0x00,
+
+ 5, // 0x2C ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x60,0xC0,
+
+ 5, // 0x2D '-'
+ 0x00,0x00,0x00,0x00,0x00,0xF0,0x00,0x00,0x00,0x00,
+
+ 5, // 0x2E '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x00,
+
+ 5, // 0x2F '/'
+ 0x00,0x08,0x10,0x10,0x20,0x20,0x40,0x40,0x80,0x00,
+
+ 5, // 0x30 '0'
+ 0x00,0x70,0x90,0x90,0x90,0x90,0x90,0x90,0xE0,0x00,
+
+ 5, // 0x31 '1'
+ 0x00,0x20,0x60,0x20,0x20,0x20,0x20,0x20,0x70,0x00,
+
+ 5, // 0x32 '2'
+ 0x00,0x60,0x90,0x90,0x10,0x20,0x40,0x80,0xF0,0x00,
+
+ 5, // 0x33 '3'
+ 0x00,0x60,0x90,0x10,0x60,0x10,0x10,0x90,0x60,0x00,
+
+ 5, // 0x34 '4'
+ 0x00,0x10,0x30,0x50,0x50,0x90,0xF0,0x10,0x10,0x00,
+
+ 5, // 0x35 '5'
+ 0x00,0xF0,0x80,0x80,0xE0,0x10,0x10,0x90,0x60,0x00,
+
+ 5, // 0x36 '6'
+ 0x00,0x60,0x80,0x80,0xE0,0x90,0x90,0x90,0x60,0x00,
+
+ 5, // 0x37 '7'
+ 0x00,0xF0,0x10,0x10,0x20,0x20,0x40,0x40,0x40,0x00,
+
+ 5, // 0x38 '8'
+ 0x00,0x60,0x90,0x90,0x60,0x90,0x90,0x90,0x60,0x00,
+
+ 5, // 0x39 '9'
+ 0x00,0x60,0x90,0x90,0x90,0x70,0x10,0x10,0x60,0x00,
+
+ 5, // 0x3A ':'
+ 0x00,0x00,0x00,0x60,0x60,0x00,0x00,0x60,0x60,0x00,
+
+ 5, // 0x3B ';'
+ 0x00,0x00,0x00,0x60,0x60,0x00,0x00,0x60,0x60,0xC0,
+
+ 5, // 0x3C '<'
+ 0x00,0x08,0x10,0x20,0x40,0x80,0x40,0x20,0x10,0x08,
+
+ 5, // 0x3D '='
+ 0x00,0x00,0x00,0x00,0xF0,0x00,0xF0,0x00,0x00,0x00,
+
+ 5, // 0x3E '>'
+ 0x00,0x80,0x40,0x20,0x10,0x08,0x10,0x20,0x40,0x80,
+
+ 5, // 0x3F '?'
+ 0x00,0x60,0x90,0x10,0x10,0x20,0x40,0x00,0x40,0x00,
+
+ 5, // 0x40 '@'
+ 0x00,0x60,0x90,0x90,0xB0,0xB0,0x80,0x80,0x70,0x00,
+
+ 5, // 0x41 'A'
+ 0x00,0x60,0x90,0x90,0x90,0xF0,0x90,0x90,0x90,0x00,
+
+ 5, // 0x42 'B'
+ 0x00,0xE0,0x90,0x90,0xE0,0x90,0x90,0x90,0xE0,0x00,
+
+ 5, // 0x43 'C'
+ 0x00,0x60,0x90,0x80,0x80,0x80,0x80,0x90,0x60,0x00,
+
+ 5, // 0x44 'D'
+ 0x00,0xE0,0x90,0x90,0x90,0x90,0x90,0x90,0xE0,0x00,
+
+ 5, // 0x45 'E'
+ 0x00,0xF0,0x80,0x80,0xF0,0x80,0x80,0x80,0xF0,0x00,
+
+ 5, // 0x46 'F'
+ 0x00,0xF0,0x80,0x80,0xF0,0x80,0x80,0x80,0x80,0x00,
+
+ 5, // 0x47 'G'
+ 0x00,0x60,0x90,0x80,0x80,0xB0,0x90,0x90,0x60,0x00,
+
+ 5, // 0x48 'H'
+ 0x00,0x90,0x90,0x90,0x90,0xF0,0x90,0x90,0x90,0x00,
+
+ 5, // 0x49 'I'
+ 0x00,0x70,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x00,
+
+ 5, // 0x4A 'J'
+ 0x00,0x70,0x20,0x20,0x20,0x20,0x20,0xA0,0x40,0x00,
+
+ 5, // 0x4B 'K'
+ 0x00,0x90,0xA0,0xA0,0xC0,0xC0,0xA0,0xA0,0x90,0x00,
+
+ 5, // 0x4C 'L'
+ 0x00,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0xF0,0x00,
+
+ 5, // 0x4D 'M'
+ 0x00,0x90,0x90,0xF0,0xF0,0x90,0x90,0x90,0x90,0x00,
+
+ 5, // 0x4E 'N'
+ 0x00,0x90,0x90,0xD0,0xD0,0xB0,0xB0,0x90,0x90,0x00,
+
+ 5, // 0x4F 'O'
+ 0x00,0x60,0x90,0x90,0x90,0x90,0x90,0x90,0x60,0x00,
+
+ 5, // 0x50 'P'
+ 0x00,0xE0,0x90,0x90,0x90,0xE0,0x80,0x80,0x80,0x00,
+
+ 5, // 0x51 'Q'
+ 0x00,0x60,0x90,0x90,0x90,0x90,0x90,0x90,0x60,0x30,
+
+ 5, // 0x52 'R'
+ 0x00,0xE0,0x90,0x90,0x90,0xE0,0xA0,0x90,0x90,0x00,
+
+ 5, // 0x53 'S'
+ 0x00,0x60,0x90,0x80,0x60,0x10,0x90,0x90,0x60,0x00,
+
+ 5, // 0x54 'T'
+ 0x00,0xF8,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00,
+
+ 5, // 0x55 'U'
+ 0x00,0x90,0x90,0x90,0x90,0x90,0x90,0x90,0x60,0x00,
+
+ 5, // 0x56 'V'
+ 0x00,0x90,0x90,0x90,0x50,0x50,0x50,0x20,0x20,0x00,
+
+ 5, // 0x57 'W'
+ 0x00,0x90,0x90,0x90,0x90,0x90,0xF0,0xF0,0x90,0x00,
+
+ 5, // 0x58 'X'
+ 0x00,0x90,0x90,0x90,0x60,0x60,0x90,0x90,0x90,0x00,
+
+ 5, // 0x59 'Y'
+ 0x00,0x88,0x88,0x88,0x50,0x20,0x20,0x20,0x20,0x00,
+
+ 5, // 0x5A 'Z'
+ 0x00,0xF0,0x10,0x20,0x20,0x40,0x40,0x80,0xF0,0x00,
+
+ 5, // 0x5B '['
+ 0x60,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x60,
+
+ 5, // 0x5C '\'
+ 0x80,0x80,0x40,0x40,0x20,0x20,0x10,0x10,0x08,0x08,
+
+ 5, // 0x5D ']'
+ 0x60,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x60,
+
+ 5, // 0x5E '^'
+ 0x00,0x20,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x5F '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x00,
+
+ 5, // 0x60 '`'
+ 0x00,0x40,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x61 'a'
+ 0x00,0x00,0x00,0x60,0x10,0x70,0x90,0x90,0x70,0x00,
+
+ 5, // 0x62 'b'
+ 0x00,0x80,0x80,0xE0,0x90,0x90,0x90,0x90,0xE0,0x00,
+
+ 5, // 0x63 'c'
+ 0x00,0x00,0x00,0x60,0x90,0x80,0x80,0x90,0x60,0x00,
+
+ 5, // 0x64 'd'
+ 0x00,0x10,0x10,0x70,0x90,0x90,0x90,0x90,0x70,0x00,
+
+ 5, // 0x65 'e'
+ 0x00,0x00,0x00,0x60,0x90,0x90,0xF0,0x80,0x70,0x00,
+
+ 5, // 0x66 'f'
+ 0x00,0x30,0x40,0xE0,0x40,0x40,0x40,0x40,0x40,0x00,
+
+ 5, // 0x67 'g'
+ 0x00,0x00,0x00,0x70,0x90,0x90,0x90,0x70,0x10,0xE0,
+
+ 5, // 0x68 'h'
+ 0x00,0x80,0x80,0xE0,0x90,0x90,0x90,0x90,0x90,0x00,
+
+ 5, // 0x69 'i'
+ 0x00,0x20,0x00,0x60,0x20,0x20,0x20,0x20,0x70,0x00,
+
+ 5, // 0x6A 'j'
+ 0x00,0x20,0x00,0x60,0x20,0x20,0x20,0x20,0x20,0xC0,
+
+ 5, // 0x6B 'k'
+ 0x00,0x80,0x80,0x90,0xA0,0xC0,0xA0,0x90,0x90,0x00,
+
+ 5, // 0x6C 'l'
+ 0x00,0x60,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x00,
+
+ 5, // 0x6D 'm'
+ 0x00,0x00,0x00,0x90,0xF0,0x90,0x90,0x90,0x90,0x00,
+
+ 5, // 0x6E 'n'
+ 0x00,0x00,0x00,0xE0,0x90,0x90,0x90,0x90,0x90,0x00,
+
+ 5, // 0x6F 'o'
+ 0x00,0x00,0x00,0x60,0x90,0x90,0x90,0x90,0x60,0x00,
+
+ 5, // 0x70 'p'
+ 0x00,0x00,0x00,0xE0,0x90,0x90,0x90,0xE0,0x80,0x80,
+
+ 5, // 0x71 'q'
+ 0x00,0x00,0x00,0x70,0x90,0x90,0x90,0x70,0x10,0x10,
+
+ 5, // 0x72 'r'
+ 0x00,0x00,0x00,0xB0,0x50,0x40,0x40,0x40,0xE0,0x00,
+
+ 5, // 0x73 's'
+ 0x00,0x00,0x00,0x60,0x90,0x40,0x20,0x90,0x60,0x00,
+
+ 5, // 0x74 't'
+ 0x00,0x40,0x40,0xE0,0x40,0x40,0x40,0x50,0x20,0x00,
+
+ 5, // 0x75 'u'
+ 0x00,0x00,0x00,0x90,0x90,0x90,0x90,0x90,0x70,0x00,
+
+ 5, // 0x76 'v'
+ 0x00,0x00,0x00,0x90,0x90,0x50,0x50,0x20,0x20,0x00,
+
+ 5, // 0x77 'w'
+ 0x00,0x00,0x00,0x90,0x90,0x90,0x90,0xF0,0x90,0x00,
+
+ 5, // 0x78 'x'
+ 0x00,0x00,0x00,0x90,0x90,0x60,0x60,0x90,0x90,0x00,
+
+ 5, // 0x79 'y'
+ 0x00,0x00,0x00,0x90,0x90,0x90,0x90,0x70,0x10,0xE0,
+
+ 5, // 0x7A 'z'
+ 0x00,0x00,0x00,0xF0,0x10,0x20,0x40,0x80,0xF0,0x00,
+
+ 5, // 0x7B '{'
+ 0x30,0x40,0x40,0x40,0x80,0x40,0x40,0x40,0x40,0x30,
+
+ 5, // 0x7C '|'
+ 0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+
+ 5, // 0x7D '}'
+ 0xC0,0x20,0x20,0x20,0x10,0x20,0x20,0x20,0x20,0xC0,
+
+ 5, // 0x7E '~'
+ 0x00,0x40,0xA8,0x10,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x7F ''
+ 0x00,0x20,0x70,0xD8,0x88,0x88,0xF8,0x00,0x00,0x00,
+
+ 0
+ };
+
+ const int8u mcs5x11_mono[] =
+ {
+ 11, 3, 32, 128-32,
+ 0x00,0x00,0x0C,0x00,0x18,0x00,0x24,0x00,0x30,0x00,0x3C,0x00,0x48,0x00,0x54,0x00,0x60,0x00,
+ 0x6C,0x00,0x78,0x00,0x84,0x00,0x90,0x00,0x9C,0x00,0xA8,0x00,0xB4,0x00,0xC0,0x00,0xCC,0x00,
+ 0xD8,0x00,0xE4,0x00,0xF0,0x00,0xFC,0x00,0x08,0x01,0x14,0x01,0x20,0x01,0x2C,0x01,0x38,0x01,
+ 0x44,0x01,0x50,0x01,0x5C,0x01,0x68,0x01,0x74,0x01,0x80,0x01,0x8C,0x01,0x98,0x01,0xA4,0x01,
+ 0xB0,0x01,0xBC,0x01,0xC8,0x01,0xD4,0x01,0xE0,0x01,0xEC,0x01,0xF8,0x01,0x04,0x02,0x10,0x02,
+ 0x1C,0x02,0x28,0x02,0x34,0x02,0x40,0x02,0x4C,0x02,0x58,0x02,0x64,0x02,0x70,0x02,0x7C,0x02,
+ 0x88,0x02,0x94,0x02,0xA0,0x02,0xAC,0x02,0xB8,0x02,0xC4,0x02,0xD0,0x02,0xDC,0x02,0xE8,0x02,
+ 0xF4,0x02,0x00,0x03,0x0C,0x03,0x18,0x03,0x24,0x03,0x30,0x03,0x3C,0x03,0x48,0x03,0x54,0x03,
+ 0x60,0x03,0x6C,0x03,0x78,0x03,0x84,0x03,0x90,0x03,0x9C,0x03,0xA8,0x03,0xB4,0x03,0xC0,0x03,
+ 0xCC,0x03,0xD8,0x03,0xE4,0x03,0xF0,0x03,0xFC,0x03,0x08,0x04,0x14,0x04,0x20,0x04,0x2C,0x04,
+ 0x38,0x04,0x44,0x04,0x50,0x04,0x5C,0x04,0x68,0x04,0x74,0x04,
+
+ 5, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x21 '!'
+ 0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x00,0x20,0x00,0x00,
+
+ 5, // 0x22 '"'
+ 0x00,0x50,0x50,0xA0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x23 '#'
+ 0x00,0x50,0x50,0xF8,0x50,0x50,0x50,0xF8,0x50,0x50,0x00,
+
+ 5, // 0x24 '$'
+ 0x00,0x40,0x60,0x90,0x80,0x60,0x10,0x90,0x60,0x20,0x00,
+
+ 5, // 0x25 '%'
+ 0x00,0x00,0x90,0x90,0x20,0x20,0x40,0x40,0x90,0x90,0x00,
+
+ 5, // 0x26 '&'
+ 0x00,0x40,0xA0,0xA0,0x40,0xA8,0x90,0x90,0x68,0x00,0x00,
+
+ 5, // 0x27 '''
+ 0x00,0x20,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x28 '('
+ 0x00,0x10,0x20,0x20,0x40,0x40,0x40,0x40,0x20,0x20,0x10,
+
+ 5, // 0x29 ')'
+ 0x00,0x40,0x20,0x20,0x10,0x10,0x10,0x10,0x20,0x20,0x40,
+
+ 5, // 0x2A '*'
+ 0x00,0x00,0x90,0x60,0xF0,0x60,0x90,0x00,0x00,0x00,0x00,
+
+ 5, // 0x2B '+'
+ 0x00,0x00,0x00,0x20,0x20,0xF8,0x20,0x20,0x00,0x00,0x00,
+
+ 5, // 0x2C ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x40,0x80,
+
+ 5, // 0x2D '-'
+ 0x00,0x00,0x00,0x00,0x00,0xF0,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x2E '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x00,0x00,
+
+ 5, // 0x2F '/'
+ 0x08,0x08,0x10,0x10,0x20,0x20,0x40,0x40,0x80,0x80,0x00,
+
+ 5, // 0x30 '0'
+ 0x00,0x70,0x90,0x90,0x90,0x90,0x90,0x90,0xE0,0x00,0x00,
+
+ 5, // 0x31 '1'
+ 0x00,0x20,0x60,0x20,0x20,0x20,0x20,0x20,0x70,0x00,0x00,
+
+ 5, // 0x32 '2'
+ 0x00,0x60,0x90,0x90,0x10,0x20,0x40,0x80,0xF0,0x00,0x00,
+
+ 5, // 0x33 '3'
+ 0x00,0x60,0x90,0x10,0x60,0x10,0x10,0x90,0x60,0x00,0x00,
+
+ 5, // 0x34 '4'
+ 0x00,0x10,0x30,0x50,0x50,0x90,0xF8,0x10,0x10,0x00,0x00,
+
+ 5, // 0x35 '5'
+ 0x00,0xF0,0x80,0xE0,0x90,0x10,0x10,0x90,0x60,0x00,0x00,
+
+ 5, // 0x36 '6'
+ 0x00,0x60,0x90,0x80,0xE0,0x90,0x90,0x90,0x60,0x00,0x00,
+
+ 5, // 0x37 '7'
+ 0x00,0xF0,0x10,0x10,0x20,0x20,0x40,0x40,0x40,0x00,0x00,
+
+ 5, // 0x38 '8'
+ 0x00,0x60,0x90,0x90,0x60,0x90,0x90,0x90,0x60,0x00,0x00,
+
+ 5, // 0x39 '9'
+ 0x00,0x60,0x90,0x90,0x90,0x70,0x10,0x90,0x60,0x00,0x00,
+
+ 5, // 0x3A ':'
+ 0x00,0x00,0x00,0x60,0x60,0x00,0x00,0x60,0x60,0x00,0x00,
+
+ 5, // 0x3B ';'
+ 0x00,0x00,0x00,0x60,0x60,0x00,0x00,0x60,0x60,0x40,0x80,
+
+ 5, // 0x3C '<'
+ 0x00,0x08,0x10,0x20,0x40,0x80,0x40,0x20,0x10,0x08,0x00,
+
+ 5, // 0x3D '='
+ 0x00,0x00,0x00,0x00,0xF0,0x00,0x00,0xF0,0x00,0x00,0x00,
+
+ 5, // 0x3E '>'
+ 0x00,0x80,0x40,0x20,0x10,0x08,0x10,0x20,0x40,0x80,0x00,
+
+ 5, // 0x3F '?'
+ 0x00,0x60,0x90,0x10,0x10,0x20,0x40,0x00,0x40,0x00,0x00,
+
+ 5, // 0x40 '@'
+ 0x00,0x60,0x90,0x90,0xB0,0xB0,0x80,0x80,0x70,0x00,0x00,
+
+ 5, // 0x41 'A'
+ 0x00,0x60,0x90,0x90,0x90,0xF0,0x90,0x90,0x90,0x00,0x00,
+
+ 5, // 0x42 'B'
+ 0x00,0xE0,0x90,0x90,0xE0,0x90,0x90,0x90,0xE0,0x00,0x00,
+
+ 5, // 0x43 'C'
+ 0x00,0x60,0x90,0x80,0x80,0x80,0x80,0x90,0x60,0x00,0x00,
+
+ 5, // 0x44 'D'
+ 0x00,0xE0,0x90,0x90,0x90,0x90,0x90,0x90,0xE0,0x00,0x00,
+
+ 5, // 0x45 'E'
+ 0x00,0xF0,0x80,0x80,0xE0,0x80,0x80,0x80,0xF0,0x00,0x00,
+
+ 5, // 0x46 'F'
+ 0x00,0xF0,0x80,0x80,0xE0,0x80,0x80,0x80,0x80,0x00,0x00,
+
+ 5, // 0x47 'G'
+ 0x00,0x60,0x90,0x80,0x80,0xB0,0x90,0x90,0x60,0x00,0x00,
+
+ 5, // 0x48 'H'
+ 0x00,0x90,0x90,0x90,0xF0,0x90,0x90,0x90,0x90,0x00,0x00,
+
+ 5, // 0x49 'I'
+ 0x00,0x70,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x00,0x00,
+
+ 5, // 0x4A 'J'
+ 0x00,0x70,0x20,0x20,0x20,0x20,0xA0,0xA0,0x40,0x00,0x00,
+
+ 5, // 0x4B 'K'
+ 0x00,0x90,0xA0,0xA0,0xC0,0xA0,0xA0,0x90,0x90,0x00,0x00,
+
+ 5, // 0x4C 'L'
+ 0x00,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0xF0,0x00,0x00,
+
+ 5, // 0x4D 'M'
+ 0x00,0x90,0xF0,0xF0,0x90,0x90,0x90,0x90,0x90,0x00,0x00,
+
+ 5, // 0x4E 'N'
+ 0x00,0x90,0x90,0xD0,0xD0,0xB0,0xB0,0x90,0x90,0x00,0x00,
+
+ 5, // 0x4F 'O'
+ 0x00,0x60,0x90,0x90,0x90,0x90,0x90,0x90,0x60,0x00,0x00,
+
+ 5, // 0x50 'P'
+ 0x00,0xE0,0x90,0x90,0x90,0xE0,0x80,0x80,0x80,0x00,0x00,
+
+ 5, // 0x51 'Q'
+ 0x00,0x60,0x90,0x90,0x90,0x90,0x90,0x90,0x60,0x30,0x00,
+
+ 5, // 0x52 'R'
+ 0x00,0xE0,0x90,0x90,0x90,0xE0,0xA0,0x90,0x90,0x00,0x00,
+
+ 5, // 0x53 'S'
+ 0x00,0x60,0x90,0x80,0x60,0x10,0x90,0x90,0x60,0x00,0x00,
+
+ 5, // 0x54 'T'
+ 0x00,0xF8,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00,0x00,
+
+ 5, // 0x55 'U'
+ 0x00,0x90,0x90,0x90,0x90,0x90,0x90,0x90,0x60,0x00,0x00,
+
+ 5, // 0x56 'V'
+ 0x00,0x90,0x90,0x90,0x50,0x50,0x50,0x20,0x20,0x00,0x00,
+
+ 5, // 0x57 'W'
+ 0x00,0x90,0x90,0x90,0x90,0x90,0xF0,0xF0,0x90,0x00,0x00,
+
+ 5, // 0x58 'X'
+ 0x00,0x90,0x90,0x90,0x60,0x60,0x90,0x90,0x90,0x00,0x00,
+
+ 5, // 0x59 'Y'
+ 0x00,0x88,0x88,0x88,0x50,0x20,0x20,0x20,0x20,0x00,0x00,
+
+ 5, // 0x5A 'Z'
+ 0x00,0xF0,0x10,0x20,0x20,0x40,0x40,0x80,0xF0,0x00,0x00,
+
+ 5, // 0x5B '['
+ 0x00,0x60,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x60,
+
+ 5, // 0x5C '\'
+ 0x80,0x80,0x40,0x40,0x20,0x20,0x10,0x10,0x08,0x08,0x00,
+
+ 5, // 0x5D ']'
+ 0x00,0x60,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x60,
+
+ 5, // 0x5E '^'
+ 0x00,0x20,0x50,0x88,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x5F '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x00,0x00,
+
+ 5, // 0x60 '`'
+ 0x00,0x40,0x40,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x61 'a'
+ 0x00,0x00,0x00,0x60,0x10,0x70,0x90,0x90,0x70,0x00,0x00,
+
+ 5, // 0x62 'b'
+ 0x00,0x80,0x80,0xE0,0x90,0x90,0x90,0x90,0xE0,0x00,0x00,
+
+ 5, // 0x63 'c'
+ 0x00,0x00,0x00,0x60,0x90,0x80,0x80,0x90,0x60,0x00,0x00,
+
+ 5, // 0x64 'd'
+ 0x00,0x10,0x10,0x70,0x90,0x90,0x90,0x90,0x70,0x00,0x00,
+
+ 5, // 0x65 'e'
+ 0x00,0x00,0x00,0x60,0x90,0x90,0xF0,0x80,0x70,0x00,0x00,
+
+ 5, // 0x66 'f'
+ 0x00,0x30,0x40,0xE0,0x40,0x40,0x40,0x40,0x40,0x00,0x00,
+
+ 5, // 0x67 'g'
+ 0x00,0x00,0x00,0x70,0x90,0x90,0x90,0x90,0x70,0x10,0xE0,
+
+ 5, // 0x68 'h'
+ 0x00,0x80,0x80,0xE0,0x90,0x90,0x90,0x90,0x90,0x00,0x00,
+
+ 5, // 0x69 'i'
+ 0x00,0x20,0x00,0x60,0x20,0x20,0x20,0x20,0x70,0x00,0x00,
+
+ 5, // 0x6A 'j'
+ 0x00,0x20,0x00,0x60,0x20,0x20,0x20,0x20,0x20,0xA0,0x40,
+
+ 5, // 0x6B 'k'
+ 0x00,0x80,0x80,0x90,0xA0,0xC0,0xA0,0x90,0x90,0x00,0x00,
+
+ 5, // 0x6C 'l'
+ 0x00,0x60,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x00,0x00,
+
+ 5, // 0x6D 'm'
+ 0x00,0x00,0x00,0x90,0xF0,0x90,0x90,0x90,0x90,0x00,0x00,
+
+ 5, // 0x6E 'n'
+ 0x00,0x00,0x00,0xE0,0x90,0x90,0x90,0x90,0x90,0x00,0x00,
+
+ 5, // 0x6F 'o'
+ 0x00,0x00,0x00,0x60,0x90,0x90,0x90,0x90,0x60,0x00,0x00,
+
+ 5, // 0x70 'p'
+ 0x00,0x00,0x00,0xE0,0x90,0x90,0x90,0x90,0xE0,0x80,0x80,
+
+ 5, // 0x71 'q'
+ 0x00,0x00,0x00,0x70,0x90,0x90,0x90,0x90,0x70,0x10,0x10,
+
+ 5, // 0x72 'r'
+ 0x00,0x00,0x00,0xA0,0x50,0x40,0x40,0x40,0xE0,0x00,0x00,
+
+ 5, // 0x73 's'
+ 0x00,0x00,0x00,0x60,0x90,0x40,0x20,0x90,0x60,0x00,0x00,
+
+ 5, // 0x74 't'
+ 0x00,0x40,0x40,0xE0,0x40,0x40,0x40,0x40,0x30,0x00,0x00,
+
+ 5, // 0x75 'u'
+ 0x00,0x00,0x00,0x90,0x90,0x90,0x90,0x90,0x70,0x00,0x00,
+
+ 5, // 0x76 'v'
+ 0x00,0x00,0x00,0x90,0x90,0x50,0x50,0x20,0x20,0x00,0x00,
+
+ 5, // 0x77 'w'
+ 0x00,0x00,0x00,0x90,0x90,0x90,0x90,0xF0,0x90,0x00,0x00,
+
+ 5, // 0x78 'x'
+ 0x00,0x00,0x00,0x90,0x90,0x60,0x60,0x90,0x90,0x00,0x00,
+
+ 5, // 0x79 'y'
+ 0x00,0x00,0x00,0x90,0x90,0x90,0x90,0x90,0x70,0x10,0xE0,
+
+ 5, // 0x7A 'z'
+ 0x00,0x00,0x00,0xF0,0x10,0x20,0x40,0x80,0xF0,0x00,0x00,
+
+ 5, // 0x7B '{'
+ 0x30,0x40,0x40,0x40,0x40,0x80,0x40,0x40,0x40,0x40,0x30,
+
+ 5, // 0x7C '|'
+ 0x00,0x20,0x20,0x20,0x20,0x00,0x20,0x20,0x20,0x20,0x00,
+
+ 5, // 0x7D '}'
+ 0xC0,0x20,0x20,0x20,0x20,0x10,0x20,0x20,0x20,0x20,0xC0,
+
+ 5, // 0x7E '~'
+ 0x00,0x40,0xA8,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x7F ''
+ 0x00,0x20,0x70,0xD8,0x88,0x88,0xF8,0x00,0x00,0x00,0x00,
+
+ 0
+ };
+
+ const int8u mcs6x10_mono[] =
+ {
+ 10, 3, 32, 128-32,
+ 0x00,0x00,0x0B,0x00,0x16,0x00,0x21,0x00,0x2C,0x00,0x37,0x00,0x42,0x00,0x4D,0x00,0x58,0x00,
+ 0x63,0x00,0x6E,0x00,0x79,0x00,0x84,0x00,0x8F,0x00,0x9A,0x00,0xA5,0x00,0xB0,0x00,0xBB,0x00,
+ 0xC6,0x00,0xD1,0x00,0xDC,0x00,0xE7,0x00,0xF2,0x00,0xFD,0x00,0x08,0x01,0x13,0x01,0x1E,0x01,
+ 0x29,0x01,0x34,0x01,0x3F,0x01,0x4A,0x01,0x55,0x01,0x60,0x01,0x6B,0x01,0x76,0x01,0x81,0x01,
+ 0x8C,0x01,0x97,0x01,0xA2,0x01,0xAD,0x01,0xB8,0x01,0xC3,0x01,0xCE,0x01,0xD9,0x01,0xE4,0x01,
+ 0xEF,0x01,0xFA,0x01,0x05,0x02,0x10,0x02,0x1B,0x02,0x26,0x02,0x31,0x02,0x3C,0x02,0x47,0x02,
+ 0x52,0x02,0x5D,0x02,0x68,0x02,0x73,0x02,0x7E,0x02,0x89,0x02,0x94,0x02,0x9F,0x02,0xAA,0x02,
+ 0xB5,0x02,0xC0,0x02,0xCB,0x02,0xD6,0x02,0xE1,0x02,0xEC,0x02,0xF7,0x02,0x02,0x03,0x0D,0x03,
+ 0x18,0x03,0x23,0x03,0x2E,0x03,0x39,0x03,0x44,0x03,0x4F,0x03,0x5A,0x03,0x65,0x03,0x70,0x03,
+ 0x7B,0x03,0x86,0x03,0x91,0x03,0x9C,0x03,0xA7,0x03,0xB2,0x03,0xBD,0x03,0xC8,0x03,0xD3,0x03,
+ 0xDE,0x03,0xE9,0x03,0xF4,0x03,0xFF,0x03,0x0A,0x04,0x15,0x04,
+
+ 6, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x21 '!'
+ 0x00,0x10,0x10,0x10,0x10,0x10,0x00,0x10,0x00,0x00,
+
+ 6, // 0x22 '"'
+ 0x00,0x28,0x28,0x50,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x23 '#'
+ 0x00,0x28,0x28,0x7C,0x28,0x28,0x7C,0x28,0x28,0x00,
+
+ 6, // 0x24 '$'
+ 0x10,0x38,0x54,0x50,0x38,0x14,0x54,0x38,0x10,0x00,
+
+ 6, // 0x25 '%'
+ 0x00,0x08,0xC8,0xD0,0x10,0x20,0x2C,0x4C,0x40,0x00,
+
+ 6, // 0x26 '&'
+ 0x00,0x20,0x50,0x50,0x24,0x54,0x48,0x34,0x00,0x00,
+
+ 6, // 0x27 '''
+ 0x00,0x10,0x10,0x20,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x28 '('
+ 0x08,0x10,0x10,0x20,0x20,0x20,0x10,0x10,0x08,0x00,
+
+ 6, // 0x29 ')'
+ 0x20,0x10,0x10,0x08,0x08,0x08,0x10,0x10,0x20,0x00,
+
+ 6, // 0x2A '*'
+ 0x00,0x00,0x28,0x7C,0x38,0x7C,0x28,0x00,0x00,0x00,
+
+ 6, // 0x2B '+'
+ 0x00,0x00,0x10,0x10,0x7C,0x10,0x10,0x00,0x00,0x00,
+
+ 6, // 0x2C ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x20,0x40,
+
+ 6, // 0x2D '-'
+ 0x00,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x2E '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,
+
+ 6, // 0x2F '/'
+ 0x00,0x08,0x08,0x10,0x10,0x20,0x20,0x40,0x40,0x00,
+
+ 6, // 0x30 '0'
+ 0x00,0x38,0x44,0x4C,0x54,0x64,0x44,0x38,0x00,0x00,
+
+ 6, // 0x31 '1'
+ 0x00,0x10,0x30,0x10,0x10,0x10,0x10,0x38,0x00,0x00,
+
+ 6, // 0x32 '2'
+ 0x00,0x38,0x44,0x04,0x18,0x20,0x40,0x7C,0x00,0x00,
+
+ 6, // 0x33 '3'
+ 0x00,0x38,0x44,0x04,0x38,0x04,0x44,0x38,0x00,0x00,
+
+ 6, // 0x34 '4'
+ 0x00,0x08,0x18,0x28,0x48,0x7C,0x08,0x08,0x00,0x00,
+
+ 6, // 0x35 '5'
+ 0x00,0x7C,0x40,0x40,0x78,0x04,0x44,0x38,0x00,0x00,
+
+ 6, // 0x36 '6'
+ 0x00,0x38,0x40,0x40,0x78,0x44,0x44,0x38,0x00,0x00,
+
+ 6, // 0x37 '7'
+ 0x00,0x7C,0x04,0x08,0x10,0x20,0x20,0x20,0x00,0x00,
+
+ 6, // 0x38 '8'
+ 0x00,0x38,0x44,0x44,0x38,0x44,0x44,0x38,0x00,0x00,
+
+ 6, // 0x39 '9'
+ 0x00,0x38,0x44,0x44,0x3C,0x04,0x04,0x38,0x00,0x00,
+
+ 6, // 0x3A ':'
+ 0x00,0x00,0x30,0x30,0x00,0x00,0x30,0x30,0x00,0x00,
+
+ 6, // 0x3B ';'
+ 0x00,0x00,0x30,0x30,0x00,0x00,0x30,0x30,0x20,0x40,
+
+ 6, // 0x3C '<'
+ 0x04,0x08,0x10,0x20,0x40,0x20,0x10,0x08,0x04,0x00,
+
+ 6, // 0x3D '='
+ 0x00,0x00,0x00,0x7C,0x00,0x00,0x7C,0x00,0x00,0x00,
+
+ 6, // 0x3E '>'
+ 0x40,0x20,0x10,0x08,0x04,0x08,0x10,0x20,0x40,0x00,
+
+ 6, // 0x3F '?'
+ 0x00,0x38,0x44,0x04,0x18,0x10,0x00,0x10,0x00,0x00,
+
+ 6, // 0x40 '@'
+ 0x00,0x38,0x44,0x5C,0x54,0x5C,0x40,0x38,0x00,0x00,
+
+ 6, // 0x41 'A'
+ 0x00,0x38,0x44,0x44,0x44,0x7C,0x44,0x44,0x00,0x00,
+
+ 6, // 0x42 'B'
+ 0x00,0x78,0x44,0x44,0x78,0x44,0x44,0x78,0x00,0x00,
+
+ 6, // 0x43 'C'
+ 0x00,0x38,0x44,0x40,0x40,0x40,0x44,0x38,0x00,0x00,
+
+ 6, // 0x44 'D'
+ 0x00,0x78,0x44,0x44,0x44,0x44,0x44,0x78,0x00,0x00,
+
+ 6, // 0x45 'E'
+ 0x00,0x7C,0x40,0x40,0x78,0x40,0x40,0x7C,0x00,0x00,
+
+ 6, // 0x46 'F'
+ 0x00,0x7C,0x40,0x40,0x78,0x40,0x40,0x40,0x00,0x00,
+
+ 6, // 0x47 'G'
+ 0x00,0x38,0x44,0x40,0x4C,0x44,0x44,0x3C,0x00,0x00,
+
+ 6, // 0x48 'H'
+ 0x00,0x44,0x44,0x44,0x7C,0x44,0x44,0x44,0x00,0x00,
+
+ 6, // 0x49 'I'
+ 0x00,0x38,0x10,0x10,0x10,0x10,0x10,0x38,0x00,0x00,
+
+ 6, // 0x4A 'J'
+ 0x00,0x1C,0x08,0x08,0x08,0x48,0x48,0x30,0x00,0x00,
+
+ 6, // 0x4B 'K'
+ 0x00,0x44,0x48,0x50,0x60,0x50,0x48,0x44,0x00,0x00,
+
+ 6, // 0x4C 'L'
+ 0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x7C,0x00,0x00,
+
+ 6, // 0x4D 'M'
+ 0x00,0x44,0x6C,0x54,0x54,0x44,0x44,0x44,0x00,0x00,
+
+ 6, // 0x4E 'N'
+ 0x00,0x44,0x44,0x64,0x54,0x4C,0x44,0x44,0x00,0x00,
+
+ 6, // 0x4F 'O'
+ 0x00,0x38,0x44,0x44,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 6, // 0x50 'P'
+ 0x00,0x78,0x44,0x44,0x78,0x40,0x40,0x40,0x00,0x00,
+
+ 6, // 0x51 'Q'
+ 0x00,0x38,0x44,0x44,0x44,0x54,0x48,0x34,0x00,0x00,
+
+ 6, // 0x52 'R'
+ 0x00,0x78,0x44,0x44,0x78,0x48,0x44,0x44,0x00,0x00,
+
+ 6, // 0x53 'S'
+ 0x00,0x38,0x44,0x40,0x38,0x04,0x44,0x38,0x00,0x00,
+
+ 6, // 0x54 'T'
+ 0x00,0x7C,0x10,0x10,0x10,0x10,0x10,0x10,0x00,0x00,
+
+ 6, // 0x55 'U'
+ 0x00,0x44,0x44,0x44,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 6, // 0x56 'V'
+ 0x00,0x44,0x44,0x44,0x44,0x28,0x28,0x10,0x00,0x00,
+
+ 6, // 0x57 'W'
+ 0x00,0x44,0x44,0x54,0x54,0x54,0x54,0x28,0x00,0x00,
+
+ 6, // 0x58 'X'
+ 0x00,0x44,0x44,0x28,0x10,0x28,0x44,0x44,0x00,0x00,
+
+ 6, // 0x59 'Y'
+ 0x00,0x44,0x44,0x44,0x28,0x10,0x10,0x10,0x00,0x00,
+
+ 6, // 0x5A 'Z'
+ 0x00,0x78,0x08,0x10,0x20,0x40,0x40,0x78,0x00,0x00,
+
+ 6, // 0x5B '['
+ 0x38,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x38,0x00,
+
+ 6, // 0x5C '\'
+ 0x00,0x40,0x40,0x20,0x20,0x10,0x10,0x08,0x08,0x00,
+
+ 6, // 0x5D ']'
+ 0x38,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x38,0x00,
+
+ 6, // 0x5E '^'
+ 0x10,0x28,0x44,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x5F '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x00,
+
+ 6, // 0x60 '`'
+ 0x00,0x10,0x10,0x20,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x61 'a'
+ 0x00,0x00,0x00,0x38,0x04,0x3C,0x44,0x3C,0x00,0x00,
+
+ 6, // 0x62 'b'
+ 0x00,0x40,0x40,0x78,0x44,0x44,0x44,0x78,0x00,0x00,
+
+ 6, // 0x63 'c'
+ 0x00,0x00,0x00,0x38,0x44,0x40,0x40,0x3C,0x00,0x00,
+
+ 6, // 0x64 'd'
+ 0x00,0x04,0x04,0x3C,0x44,0x44,0x44,0x3C,0x00,0x00,
+
+ 6, // 0x65 'e'
+ 0x00,0x00,0x00,0x38,0x44,0x78,0x40,0x3C,0x00,0x00,
+
+ 6, // 0x66 'f'
+ 0x00,0x0C,0x10,0x10,0x38,0x10,0x10,0x10,0x00,0x00,
+
+ 6, // 0x67 'g'
+ 0x00,0x00,0x00,0x3C,0x44,0x44,0x44,0x3C,0x04,0x38,
+
+ 6, // 0x68 'h'
+ 0x00,0x40,0x40,0x78,0x44,0x44,0x44,0x44,0x00,0x00,
+
+ 6, // 0x69 'i'
+ 0x00,0x10,0x00,0x30,0x10,0x10,0x10,0x38,0x00,0x00,
+
+ 6, // 0x6A 'j'
+ 0x00,0x08,0x00,0x18,0x08,0x08,0x08,0x08,0x48,0x30,
+
+ 6, // 0x6B 'k'
+ 0x00,0x40,0x40,0x48,0x50,0x60,0x50,0x48,0x00,0x00,
+
+ 6, // 0x6C 'l'
+ 0x00,0x30,0x10,0x10,0x10,0x10,0x10,0x38,0x00,0x00,
+
+ 6, // 0x6D 'm'
+ 0x00,0x00,0x00,0x68,0x54,0x54,0x44,0x44,0x00,0x00,
+
+ 6, // 0x6E 'n'
+ 0x00,0x00,0x00,0x58,0x64,0x44,0x44,0x44,0x00,0x00,
+
+ 6, // 0x6F 'o'
+ 0x00,0x00,0x00,0x38,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 6, // 0x70 'p'
+ 0x00,0x00,0x00,0x78,0x44,0x44,0x44,0x78,0x40,0x40,
+
+ 6, // 0x71 'q'
+ 0x00,0x00,0x00,0x3C,0x44,0x44,0x44,0x3C,0x04,0x04,
+
+ 6, // 0x72 'r'
+ 0x00,0x00,0x00,0x58,0x24,0x20,0x20,0x70,0x00,0x00,
+
+ 6, // 0x73 's'
+ 0x00,0x00,0x00,0x38,0x40,0x38,0x04,0x78,0x00,0x00,
+
+ 6, // 0x74 't'
+ 0x00,0x10,0x10,0x38,0x10,0x10,0x14,0x08,0x00,0x00,
+
+ 6, // 0x75 'u'
+ 0x00,0x00,0x00,0x44,0x44,0x44,0x4C,0x34,0x00,0x00,
+
+ 6, // 0x76 'v'
+ 0x00,0x00,0x00,0x44,0x44,0x44,0x28,0x10,0x00,0x00,
+
+ 6, // 0x77 'w'
+ 0x00,0x00,0x00,0x44,0x44,0x54,0x7C,0x28,0x00,0x00,
+
+ 6, // 0x78 'x'
+ 0x00,0x00,0x00,0x48,0x48,0x30,0x48,0x48,0x00,0x00,
+
+ 6, // 0x79 'y'
+ 0x00,0x00,0x00,0x44,0x44,0x44,0x44,0x3C,0x04,0x38,
+
+ 6, // 0x7A 'z'
+ 0x00,0x00,0x00,0x78,0x08,0x30,0x40,0x78,0x00,0x00,
+
+ 6, // 0x7B '{'
+ 0x18,0x20,0x20,0x20,0xC0,0x20,0x20,0x20,0x18,0x00,
+
+ 6, // 0x7C '|'
+ 0x10,0x10,0x10,0x10,0x00,0x10,0x10,0x10,0x10,0x00,
+
+ 6, // 0x7D '}'
+ 0x60,0x10,0x10,0x10,0x0C,0x10,0x10,0x10,0x60,0x00,
+
+ 6, // 0x7E '~'
+ 0x00,0x48,0xA8,0x90,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x7F ''
+ 0x00,0x10,0x38,0x6C,0x44,0x44,0x7C,0x00,0x00,0x00,
+
+ 0
+ };
+
+ const int8u mcs6x11_mono[] =
+ {
+ 11, 3, 32, 128-32,
+ 0x00,0x00,0x0C,0x00,0x18,0x00,0x24,0x00,0x30,0x00,0x3C,0x00,0x48,0x00,0x54,0x00,0x60,0x00,
+ 0x6C,0x00,0x78,0x00,0x84,0x00,0x90,0x00,0x9C,0x00,0xA8,0x00,0xB4,0x00,0xC0,0x00,0xCC,0x00,
+ 0xD8,0x00,0xE4,0x00,0xF0,0x00,0xFC,0x00,0x08,0x01,0x14,0x01,0x20,0x01,0x2C,0x01,0x38,0x01,
+ 0x44,0x01,0x50,0x01,0x5C,0x01,0x68,0x01,0x74,0x01,0x80,0x01,0x8C,0x01,0x98,0x01,0xA4,0x01,
+ 0xB0,0x01,0xBC,0x01,0xC8,0x01,0xD4,0x01,0xE0,0x01,0xEC,0x01,0xF8,0x01,0x04,0x02,0x10,0x02,
+ 0x1C,0x02,0x28,0x02,0x34,0x02,0x40,0x02,0x4C,0x02,0x58,0x02,0x64,0x02,0x70,0x02,0x7C,0x02,
+ 0x88,0x02,0x94,0x02,0xA0,0x02,0xAC,0x02,0xB8,0x02,0xC4,0x02,0xD0,0x02,0xDC,0x02,0xE8,0x02,
+ 0xF4,0x02,0x00,0x03,0x0C,0x03,0x18,0x03,0x24,0x03,0x30,0x03,0x3C,0x03,0x48,0x03,0x54,0x03,
+ 0x60,0x03,0x6C,0x03,0x78,0x03,0x84,0x03,0x90,0x03,0x9C,0x03,0xA8,0x03,0xB4,0x03,0xC0,0x03,
+ 0xCC,0x03,0xD8,0x03,0xE4,0x03,0xF0,0x03,0xFC,0x03,0x08,0x04,0x14,0x04,0x20,0x04,0x2C,0x04,
+ 0x38,0x04,0x44,0x04,0x50,0x04,0x5C,0x04,0x68,0x04,0x74,0x04,
+
+ 6, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x21 '!'
+ 0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x00,0x20,0x00,0x00,
+
+ 6, // 0x22 '"'
+ 0x00,0x28,0x28,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x23 '#'
+ 0x00,0x28,0x28,0x7C,0x28,0x28,0x7C,0x28,0x28,0x00,0x00,
+
+ 6, // 0x24 '$'
+ 0x00,0x10,0x38,0x54,0x50,0x38,0x14,0x54,0x38,0x10,0x00,
+
+ 6, // 0x25 '%'
+ 0x00,0x68,0xA8,0xD0,0x10,0x20,0x2C,0x54,0x58,0x00,0x00,
+
+ 6, // 0x26 '&'
+ 0x00,0x20,0x50,0x50,0x20,0x54,0x54,0x48,0x34,0x00,0x00,
+
+ 6, // 0x27 '''
+ 0x00,0x10,0x10,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x28 '('
+ 0x08,0x10,0x10,0x20,0x20,0x20,0x20,0x10,0x10,0x08,0x00,
+
+ 6, // 0x29 ')'
+ 0x20,0x10,0x10,0x08,0x08,0x08,0x08,0x10,0x10,0x20,0x00,
+
+ 6, // 0x2A '*'
+ 0x00,0x00,0x28,0x7C,0x38,0x7C,0x28,0x00,0x00,0x00,0x00,
+
+ 6, // 0x2B '+'
+ 0x00,0x00,0x00,0x10,0x10,0x7C,0x10,0x10,0x00,0x00,0x00,
+
+ 6, // 0x2C ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x20,0x40,
+
+ 6, // 0x2D '-'
+ 0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x2E '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,
+
+ 6, // 0x2F '/'
+ 0x04,0x04,0x08,0x08,0x10,0x10,0x20,0x20,0x40,0x40,0x00,
+
+ 6, // 0x30 '0'
+ 0x00,0x38,0x44,0x44,0x54,0x54,0x44,0x44,0x38,0x00,0x00,
+
+ 6, // 0x31 '1'
+ 0x00,0x10,0x30,0x10,0x10,0x10,0x10,0x10,0x38,0x00,0x00,
+
+ 6, // 0x32 '2'
+ 0x00,0x38,0x44,0x44,0x08,0x10,0x20,0x40,0x7C,0x00,0x00,
+
+ 6, // 0x33 '3'
+ 0x00,0x38,0x44,0x04,0x38,0x04,0x04,0x44,0x38,0x00,0x00,
+
+ 6, // 0x34 '4'
+ 0x00,0x08,0x18,0x28,0x28,0x48,0x7C,0x08,0x08,0x00,0x00,
+
+ 6, // 0x35 '5'
+ 0x00,0x7C,0x40,0x78,0x44,0x04,0x04,0x44,0x38,0x00,0x00,
+
+ 6, // 0x36 '6'
+ 0x00,0x38,0x44,0x40,0x78,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 6, // 0x37 '7'
+ 0x00,0x7C,0x04,0x08,0x08,0x10,0x10,0x20,0x20,0x00,0x00,
+
+ 6, // 0x38 '8'
+ 0x00,0x38,0x44,0x44,0x38,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 6, // 0x39 '9'
+ 0x00,0x38,0x44,0x44,0x3C,0x04,0x04,0x44,0x38,0x00,0x00,
+
+ 6, // 0x3A ':'
+ 0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x30,0x30,0x00,0x00,
+
+ 6, // 0x3B ';'
+ 0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x30,0x30,0x20,0x40,
+
+ 6, // 0x3C '<'
+ 0x00,0x04,0x08,0x10,0x20,0x40,0x20,0x10,0x08,0x04,0x00,
+
+ 6, // 0x3D '='
+ 0x00,0x00,0x00,0x00,0x7C,0x00,0x00,0x7C,0x00,0x00,0x00,
+
+ 6, // 0x3E '>'
+ 0x00,0x40,0x20,0x10,0x08,0x04,0x08,0x10,0x20,0x40,0x00,
+
+ 6, // 0x3F '?'
+ 0x00,0x38,0x44,0x04,0x08,0x10,0x10,0x00,0x10,0x00,0x00,
+
+ 6, // 0x40 '@'
+ 0x00,0x38,0x44,0x5C,0x54,0x54,0x4C,0x40,0x38,0x00,0x00,
+
+ 6, // 0x41 'A'
+ 0x00,0x38,0x44,0x44,0x44,0x7C,0x44,0x44,0x44,0x00,0x00,
+
+ 6, // 0x42 'B'
+ 0x00,0x78,0x44,0x44,0x78,0x44,0x44,0x44,0x78,0x00,0x00,
+
+ 6, // 0x43 'C'
+ 0x00,0x38,0x44,0x40,0x40,0x40,0x40,0x44,0x38,0x00,0x00,
+
+ 6, // 0x44 'D'
+ 0x00,0x70,0x48,0x44,0x44,0x44,0x44,0x48,0x70,0x00,0x00,
+
+ 6, // 0x45 'E'
+ 0x00,0x7C,0x40,0x40,0x78,0x40,0x40,0x40,0x7C,0x00,0x00,
+
+ 6, // 0x46 'F'
+ 0x00,0x7C,0x40,0x40,0x78,0x40,0x40,0x40,0x40,0x00,0x00,
+
+ 6, // 0x47 'G'
+ 0x00,0x38,0x44,0x40,0x40,0x5C,0x44,0x4C,0x34,0x00,0x00,
+
+ 6, // 0x48 'H'
+ 0x00,0x44,0x44,0x44,0x7C,0x44,0x44,0x44,0x44,0x00,0x00,
+
+ 6, // 0x49 'I'
+ 0x00,0x38,0x10,0x10,0x10,0x10,0x10,0x10,0x38,0x00,0x00,
+
+ 6, // 0x4A 'J'
+ 0x00,0x1C,0x08,0x08,0x08,0x08,0x48,0x48,0x30,0x00,0x00,
+
+ 6, // 0x4B 'K'
+ 0x00,0x44,0x48,0x50,0x60,0x50,0x48,0x44,0x44,0x00,0x00,
+
+ 6, // 0x4C 'L'
+ 0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x7C,0x00,0x00,
+
+ 6, // 0x4D 'M'
+ 0x00,0x44,0x6C,0x54,0x54,0x54,0x44,0x44,0x44,0x00,0x00,
+
+ 6, // 0x4E 'N'
+ 0x00,0x44,0x64,0x64,0x54,0x54,0x4C,0x4C,0x44,0x00,0x00,
+
+ 6, // 0x4F 'O'
+ 0x00,0x38,0x44,0x44,0x44,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 6, // 0x50 'P'
+ 0x00,0x78,0x44,0x44,0x44,0x78,0x40,0x40,0x40,0x00,0x00,
+
+ 6, // 0x51 'Q'
+ 0x00,0x38,0x44,0x44,0x44,0x44,0x54,0x48,0x34,0x00,0x00,
+
+ 6, // 0x52 'R'
+ 0x00,0x78,0x44,0x44,0x44,0x78,0x48,0x44,0x44,0x00,0x00,
+
+ 6, // 0x53 'S'
+ 0x00,0x38,0x44,0x40,0x38,0x04,0x04,0x44,0x38,0x00,0x00,
+
+ 6, // 0x54 'T'
+ 0x00,0x7C,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x00,0x00,
+
+ 6, // 0x55 'U'
+ 0x00,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 6, // 0x56 'V'
+ 0x00,0x44,0x44,0x44,0x28,0x28,0x28,0x10,0x10,0x00,0x00,
+
+ 6, // 0x57 'W'
+ 0x00,0x44,0x44,0x54,0x54,0x54,0x54,0x54,0x28,0x00,0x00,
+
+ 6, // 0x58 'X'
+ 0x00,0x44,0x44,0x28,0x10,0x28,0x44,0x44,0x44,0x00,0x00,
+
+ 6, // 0x59 'Y'
+ 0x00,0x44,0x44,0x44,0x28,0x10,0x10,0x10,0x10,0x00,0x00,
+
+ 6, // 0x5A 'Z'
+ 0x00,0x7C,0x04,0x08,0x10,0x20,0x40,0x40,0x7C,0x00,0x00,
+
+ 6, // 0x5B '['
+ 0x38,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x38,0x00,
+
+ 6, // 0x5C '\'
+ 0x80,0x80,0x40,0x40,0x20,0x20,0x10,0x10,0x08,0x08,0x00,
+
+ 6, // 0x5D ']'
+ 0x38,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x38,0x00,
+
+ 6, // 0x5E '^'
+ 0x00,0x10,0x28,0x44,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x5F '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x00,
+
+ 6, // 0x60 '`'
+ 0x00,0x20,0x20,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x61 'a'
+ 0x00,0x00,0x00,0x38,0x04,0x3C,0x44,0x44,0x3C,0x00,0x00,
+
+ 6, // 0x62 'b'
+ 0x00,0x40,0x40,0x78,0x44,0x44,0x44,0x44,0x78,0x00,0x00,
+
+ 6, // 0x63 'c'
+ 0x00,0x00,0x00,0x38,0x44,0x40,0x40,0x44,0x38,0x00,0x00,
+
+ 6, // 0x64 'd'
+ 0x00,0x04,0x04,0x3C,0x44,0x44,0x44,0x44,0x3C,0x00,0x00,
+
+ 6, // 0x65 'e'
+ 0x00,0x00,0x00,0x38,0x44,0x7C,0x40,0x44,0x38,0x00,0x00,
+
+ 6, // 0x66 'f'
+ 0x00,0x0C,0x10,0x38,0x10,0x10,0x10,0x10,0x10,0x00,0x00,
+
+ 6, // 0x67 'g'
+ 0x00,0x00,0x00,0x3C,0x44,0x44,0x44,0x44,0x3C,0x04,0x78,
+
+ 6, // 0x68 'h'
+ 0x00,0x40,0x40,0x78,0x44,0x44,0x44,0x44,0x44,0x00,0x00,
+
+ 6, // 0x69 'i'
+ 0x00,0x10,0x00,0x30,0x10,0x10,0x10,0x10,0x38,0x00,0x00,
+
+ 6, // 0x6A 'j'
+ 0x00,0x10,0x00,0x30,0x10,0x10,0x10,0x10,0x10,0x50,0x20,
+
+ 6, // 0x6B 'k'
+ 0x00,0x40,0x40,0x4C,0x50,0x60,0x50,0x48,0x44,0x00,0x00,
+
+ 6, // 0x6C 'l'
+ 0x00,0x30,0x10,0x10,0x10,0x10,0x10,0x10,0x38,0x00,0x00,
+
+ 6, // 0x6D 'm'
+ 0x00,0x00,0x00,0x68,0x54,0x54,0x54,0x44,0x44,0x00,0x00,
+
+ 6, // 0x6E 'n'
+ 0x00,0x00,0x00,0x78,0x44,0x44,0x44,0x44,0x44,0x00,0x00,
+
+ 6, // 0x6F 'o'
+ 0x00,0x00,0x00,0x38,0x44,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 6, // 0x70 'p'
+ 0x00,0x00,0x00,0x78,0x44,0x44,0x44,0x44,0x78,0x40,0x40,
+
+ 6, // 0x71 'q'
+ 0x00,0x00,0x00,0x3C,0x44,0x44,0x44,0x44,0x3C,0x04,0x04,
+
+ 6, // 0x72 'r'
+ 0x00,0x00,0x00,0x58,0x24,0x20,0x20,0x20,0x70,0x00,0x00,
+
+ 6, // 0x73 's'
+ 0x00,0x00,0x00,0x38,0x44,0x30,0x08,0x44,0x38,0x00,0x00,
+
+ 6, // 0x74 't'
+ 0x00,0x20,0x20,0x70,0x20,0x20,0x20,0x20,0x18,0x00,0x00,
+
+ 6, // 0x75 'u'
+ 0x00,0x00,0x00,0x44,0x44,0x44,0x44,0x4C,0x34,0x00,0x00,
+
+ 6, // 0x76 'v'
+ 0x00,0x00,0x00,0x44,0x44,0x28,0x28,0x10,0x10,0x00,0x00,
+
+ 6, // 0x77 'w'
+ 0x00,0x00,0x00,0x44,0x44,0x44,0x54,0x7C,0x28,0x00,0x00,
+
+ 6, // 0x78 'x'
+ 0x00,0x00,0x00,0x44,0x28,0x10,0x28,0x44,0x44,0x00,0x00,
+
+ 6, // 0x79 'y'
+ 0x00,0x00,0x00,0x44,0x44,0x44,0x44,0x44,0x3C,0x08,0x70,
+
+ 6, // 0x7A 'z'
+ 0x00,0x00,0x00,0x7C,0x08,0x10,0x20,0x40,0x7C,0x00,0x00,
+
+ 6, // 0x7B '{'
+ 0x18,0x20,0x20,0x20,0xC0,0xC0,0x20,0x20,0x20,0x18,0x00,
+
+ 6, // 0x7C '|'
+ 0x00,0x10,0x10,0x10,0x10,0x00,0x10,0x10,0x10,0x10,0x00,
+
+ 6, // 0x7D '}'
+ 0x60,0x10,0x10,0x10,0x0C,0x0C,0x10,0x10,0x10,0x60,0x00,
+
+ 6, // 0x7E '~'
+ 0x00,0x24,0x54,0x48,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x7F ''
+ 0x00,0x10,0x38,0x6C,0x44,0x44,0x7C,0x00,0x00,0x00,0x00,
+
+ 0
+ };
+
+ const int8u mcs7x12_mono_high[] =
+ {
+ 12, 3, 32, 128-32,
+ 0x00,0x00,0x0D,0x00,0x1A,0x00,0x27,0x00,0x34,0x00,0x41,0x00,0x4E,0x00,0x5B,0x00,0x68,0x00,
+ 0x75,0x00,0x82,0x00,0x8F,0x00,0x9C,0x00,0xA9,0x00,0xB6,0x00,0xC3,0x00,0xD0,0x00,0xDD,0x00,
+ 0xEA,0x00,0xF7,0x00,0x04,0x01,0x11,0x01,0x1E,0x01,0x2B,0x01,0x38,0x01,0x45,0x01,0x52,0x01,
+ 0x5F,0x01,0x6C,0x01,0x79,0x01,0x86,0x01,0x93,0x01,0xA0,0x01,0xAD,0x01,0xBA,0x01,0xC7,0x01,
+ 0xD4,0x01,0xE1,0x01,0xEE,0x01,0xFB,0x01,0x08,0x02,0x15,0x02,0x22,0x02,0x2F,0x02,0x3C,0x02,
+ 0x49,0x02,0x56,0x02,0x63,0x02,0x70,0x02,0x7D,0x02,0x8A,0x02,0x97,0x02,0xA4,0x02,0xB1,0x02,
+ 0xBE,0x02,0xCB,0x02,0xD8,0x02,0xE5,0x02,0xF2,0x02,0xFF,0x02,0x0C,0x03,0x19,0x03,0x26,0x03,
+ 0x33,0x03,0x40,0x03,0x4D,0x03,0x5A,0x03,0x67,0x03,0x74,0x03,0x81,0x03,0x8E,0x03,0x9B,0x03,
+ 0xA8,0x03,0xB5,0x03,0xC2,0x03,0xCF,0x03,0xDC,0x03,0xE9,0x03,0xF6,0x03,0x03,0x04,0x10,0x04,
+ 0x1D,0x04,0x2A,0x04,0x37,0x04,0x44,0x04,0x51,0x04,0x5E,0x04,0x6B,0x04,0x78,0x04,0x85,0x04,
+ 0x92,0x04,0x9F,0x04,0xAC,0x04,0xB9,0x04,0xC6,0x04,0xD3,0x04,
+
+ 7, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x21 '!'
+ 0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x00,0x10,0x00,0x00,
+
+ 7, // 0x22 '"'
+ 0x28,0x28,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x23 '#'
+ 0x24,0x24,0x24,0x7E,0x24,0x24,0x24,0x7E,0x24,0x24,0x24,0x00,
+
+ 7, // 0x24 '$'
+ 0x10,0x10,0x38,0x54,0x50,0x38,0x14,0x54,0x38,0x10,0x10,0x00,
+
+ 7, // 0x25 '%'
+ 0x32,0x54,0x64,0x08,0x08,0x10,0x10,0x26,0x2A,0x4C,0x00,0x00,
+
+ 7, // 0x26 '&'
+ 0x00,0x20,0x50,0x50,0x50,0x20,0x54,0x54,0x48,0x34,0x00,0x00,
+
+ 7, // 0x27 '''
+ 0x10,0x10,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x28 '('
+ 0x08,0x10,0x10,0x20,0x20,0x20,0x20,0x20,0x10,0x10,0x08,0x00,
+
+ 7, // 0x29 ')'
+ 0x20,0x10,0x10,0x08,0x08,0x08,0x08,0x08,0x10,0x10,0x20,0x00,
+
+ 7, // 0x2A '*'
+ 0x00,0x00,0x10,0x54,0x38,0x7C,0x38,0x54,0x10,0x00,0x00,0x00,
+
+ 7, // 0x2B '+'
+ 0x00,0x00,0x00,0x00,0x10,0x10,0x7C,0x10,0x10,0x00,0x00,0x00,
+
+ 7, // 0x2C ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x20,0x40,
+
+ 7, // 0x2D '-'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x2E '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,
+
+ 7, // 0x2F '/'
+ 0x04,0x04,0x08,0x08,0x10,0x10,0x20,0x20,0x40,0x40,0x00,0x00,
+
+ 7, // 0x30 '0'
+ 0x00,0x38,0x44,0x44,0x54,0x54,0x54,0x44,0x44,0x38,0x00,0x00,
+
+ 7, // 0x31 '1'
+ 0x00,0x10,0x30,0x10,0x10,0x10,0x10,0x10,0x10,0x38,0x00,0x00,
+
+ 7, // 0x32 '2'
+ 0x00,0x38,0x44,0x04,0x04,0x08,0x10,0x20,0x40,0x7C,0x00,0x00,
+
+ 7, // 0x33 '3'
+ 0x00,0x38,0x44,0x04,0x04,0x38,0x04,0x04,0x44,0x38,0x00,0x00,
+
+ 7, // 0x34 '4'
+ 0x00,0x08,0x18,0x28,0x28,0x48,0x48,0x7C,0x08,0x08,0x00,0x00,
+
+ 7, // 0x35 '5'
+ 0x00,0x7C,0x40,0x40,0x78,0x44,0x04,0x04,0x44,0x38,0x00,0x00,
+
+ 7, // 0x36 '6'
+ 0x00,0x38,0x44,0x40,0x78,0x44,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 7, // 0x37 '7'
+ 0x00,0x7C,0x04,0x08,0x08,0x10,0x10,0x20,0x20,0x20,0x00,0x00,
+
+ 7, // 0x38 '8'
+ 0x00,0x38,0x44,0x44,0x44,0x38,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 7, // 0x39 '9'
+ 0x00,0x38,0x44,0x44,0x44,0x3C,0x04,0x04,0x44,0x38,0x00,0x00,
+
+ 7, // 0x3A ':'
+ 0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,0x30,0x30,0x00,0x00,
+
+ 7, // 0x3B ';'
+ 0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,0x30,0x30,0x20,0x40,
+
+ 7, // 0x3C '<'
+ 0x00,0x04,0x08,0x10,0x20,0x40,0x20,0x10,0x08,0x04,0x00,0x00,
+
+ 7, // 0x3D '='
+ 0x00,0x00,0x00,0x00,0x7C,0x00,0x00,0x7C,0x00,0x00,0x00,0x00,
+
+ 7, // 0x3E '>'
+ 0x00,0x40,0x20,0x10,0x08,0x04,0x08,0x10,0x20,0x40,0x00,0x00,
+
+ 7, // 0x3F '?'
+ 0x00,0x38,0x44,0x04,0x04,0x08,0x10,0x10,0x00,0x10,0x00,0x00,
+
+ 7, // 0x40 '@'
+ 0x00,0x38,0x44,0x44,0x5C,0x54,0x54,0x4C,0x40,0x38,0x00,0x00,
+
+ 7, // 0x41 'A'
+ 0x00,0x38,0x44,0x44,0x44,0x7C,0x44,0x44,0x44,0x44,0x00,0x00,
+
+ 7, // 0x42 'B'
+ 0x00,0x78,0x44,0x44,0x44,0x78,0x44,0x44,0x44,0x78,0x00,0x00,
+
+ 7, // 0x43 'C'
+ 0x00,0x38,0x44,0x40,0x40,0x40,0x40,0x40,0x44,0x38,0x00,0x00,
+
+ 7, // 0x44 'D'
+ 0x00,0x70,0x48,0x44,0x44,0x44,0x44,0x44,0x48,0x70,0x00,0x00,
+
+ 7, // 0x45 'E'
+ 0x00,0x7C,0x40,0x40,0x40,0x78,0x40,0x40,0x40,0x7C,0x00,0x00,
+
+ 7, // 0x46 'F'
+ 0x00,0x7C,0x40,0x40,0x40,0x78,0x40,0x40,0x40,0x40,0x00,0x00,
+
+ 7, // 0x47 'G'
+ 0x00,0x38,0x44,0x40,0x40,0x5C,0x44,0x44,0x4C,0x34,0x00,0x00,
+
+ 7, // 0x48 'H'
+ 0x00,0x44,0x44,0x44,0x44,0x7C,0x44,0x44,0x44,0x44,0x00,0x00,
+
+ 7, // 0x49 'I'
+ 0x00,0x38,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x38,0x00,0x00,
+
+ 7, // 0x4A 'J'
+ 0x00,0x1C,0x08,0x08,0x08,0x08,0x08,0x48,0x48,0x30,0x00,0x00,
+
+ 7, // 0x4B 'K'
+ 0x00,0x44,0x48,0x50,0x60,0x60,0x50,0x48,0x44,0x44,0x00,0x00,
+
+ 7, // 0x4C 'L'
+ 0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x7C,0x00,0x00,
+
+ 7, // 0x4D 'M'
+ 0x00,0x44,0x6C,0x6C,0x54,0x54,0x44,0x44,0x44,0x44,0x00,0x00,
+
+ 7, // 0x4E 'N'
+ 0x00,0x44,0x64,0x64,0x54,0x54,0x4C,0x4C,0x44,0x44,0x00,0x00,
+
+ 7, // 0x4F 'O'
+ 0x00,0x38,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 7, // 0x50 'P'
+ 0x00,0x78,0x44,0x44,0x44,0x44,0x78,0x40,0x40,0x40,0x00,0x00,
+
+ 7, // 0x51 'Q'
+ 0x00,0x38,0x44,0x44,0x44,0x44,0x44,0x54,0x48,0x34,0x00,0x00,
+
+ 7, // 0x52 'R'
+ 0x00,0x78,0x44,0x44,0x44,0x44,0x78,0x48,0x44,0x44,0x00,0x00,
+
+ 7, // 0x53 'S'
+ 0x00,0x38,0x44,0x40,0x40,0x38,0x04,0x04,0x44,0x38,0x00,0x00,
+
+ 7, // 0x54 'T'
+ 0x00,0x7C,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x00,0x00,
+
+ 7, // 0x55 'U'
+ 0x00,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 7, // 0x56 'V'
+ 0x00,0x44,0x44,0x44,0x44,0x28,0x28,0x28,0x10,0x10,0x00,0x00,
+
+ 7, // 0x57 'W'
+ 0x00,0x44,0x44,0x44,0x44,0x44,0x44,0x54,0x54,0x28,0x00,0x00,
+
+ 7, // 0x58 'X'
+ 0x00,0x44,0x44,0x44,0x28,0x10,0x28,0x44,0x44,0x44,0x00,0x00,
+
+ 7, // 0x59 'Y'
+ 0x00,0x44,0x44,0x44,0x44,0x28,0x10,0x10,0x10,0x10,0x00,0x00,
+
+ 7, // 0x5A 'Z'
+ 0x00,0x7C,0x04,0x04,0x08,0x10,0x20,0x40,0x40,0x7C,0x00,0x00,
+
+ 7, // 0x5B '['
+ 0x38,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x38,0x00,
+
+ 7, // 0x5C '\'
+ 0x00,0x40,0x40,0x20,0x20,0x10,0x10,0x08,0x08,0x04,0x04,0x00,
+
+ 7, // 0x5D ']'
+ 0x38,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x38,0x00,
+
+ 7, // 0x5E '^'
+ 0x00,0x10,0x28,0x44,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x5F '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x00,
+
+ 7, // 0x60 '`'
+ 0x00,0x20,0x20,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x61 'a'
+ 0x00,0x00,0x00,0x38,0x04,0x3C,0x44,0x44,0x44,0x3C,0x00,0x00,
+
+ 7, // 0x62 'b'
+ 0x00,0x40,0x40,0x78,0x44,0x44,0x44,0x44,0x44,0x78,0x00,0x00,
+
+ 7, // 0x63 'c'
+ 0x00,0x00,0x00,0x38,0x44,0x40,0x40,0x40,0x44,0x38,0x00,0x00,
+
+ 7, // 0x64 'd'
+ 0x00,0x04,0x04,0x3C,0x44,0x44,0x44,0x44,0x44,0x3C,0x00,0x00,
+
+ 7, // 0x65 'e'
+ 0x00,0x00,0x00,0x38,0x44,0x44,0x7C,0x40,0x44,0x38,0x00,0x00,
+
+ 7, // 0x66 'f'
+ 0x00,0x0C,0x10,0x38,0x10,0x10,0x10,0x10,0x10,0x10,0x00,0x00,
+
+ 7, // 0x67 'g'
+ 0x00,0x00,0x00,0x3C,0x44,0x44,0x44,0x44,0x44,0x3C,0x04,0x78,
+
+ 7, // 0x68 'h'
+ 0x00,0x40,0x40,0x78,0x44,0x44,0x44,0x44,0x44,0x44,0x00,0x00,
+
+ 7, // 0x69 'i'
+ 0x00,0x10,0x00,0x30,0x10,0x10,0x10,0x10,0x10,0x38,0x00,0x00,
+
+ 7, // 0x6A 'j'
+ 0x00,0x08,0x00,0x18,0x08,0x08,0x08,0x08,0x08,0x08,0x48,0x30,
+
+ 7, // 0x6B 'k'
+ 0x00,0x40,0x40,0x44,0x48,0x50,0x60,0x50,0x48,0x44,0x00,0x00,
+
+ 7, // 0x6C 'l'
+ 0x00,0x30,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x38,0x00,0x00,
+
+ 7, // 0x6D 'm'
+ 0x00,0x00,0x00,0x68,0x54,0x54,0x44,0x44,0x44,0x44,0x00,0x00,
+
+ 7, // 0x6E 'n'
+ 0x00,0x00,0x00,0x58,0x64,0x44,0x44,0x44,0x44,0x44,0x00,0x00,
+
+ 7, // 0x6F 'o'
+ 0x00,0x00,0x00,0x38,0x44,0x44,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 7, // 0x70 'p'
+ 0x00,0x00,0x00,0x78,0x44,0x44,0x44,0x44,0x44,0x78,0x40,0x40,
+
+ 7, // 0x71 'q'
+ 0x00,0x00,0x00,0x3C,0x44,0x44,0x44,0x44,0x44,0x3C,0x04,0x04,
+
+ 7, // 0x72 'r'
+ 0x00,0x00,0x00,0x58,0x24,0x20,0x20,0x20,0x20,0x70,0x00,0x00,
+
+ 7, // 0x73 's'
+ 0x00,0x00,0x00,0x38,0x44,0x40,0x38,0x04,0x44,0x38,0x00,0x00,
+
+ 7, // 0x74 't'
+ 0x00,0x20,0x20,0x70,0x20,0x20,0x20,0x20,0x24,0x18,0x00,0x00,
+
+ 7, // 0x75 'u'
+ 0x00,0x00,0x00,0x44,0x44,0x44,0x44,0x44,0x4C,0x34,0x00,0x00,
+
+ 7, // 0x76 'v'
+ 0x00,0x00,0x00,0x44,0x44,0x44,0x28,0x28,0x10,0x10,0x00,0x00,
+
+ 7, // 0x77 'w'
+ 0x00,0x00,0x00,0x44,0x44,0x44,0x44,0x54,0x54,0x28,0x00,0x00,
+
+ 7, // 0x78 'x'
+ 0x00,0x00,0x00,0x44,0x44,0x28,0x10,0x28,0x44,0x44,0x00,0x00,
+
+ 7, // 0x79 'y'
+ 0x00,0x00,0x00,0x44,0x44,0x44,0x44,0x44,0x44,0x3C,0x08,0x70,
+
+ 7, // 0x7A 'z'
+ 0x00,0x00,0x00,0x7C,0x04,0x08,0x10,0x20,0x40,0x7C,0x00,0x00,
+
+ 7, // 0x7B '{'
+ 0x18,0x20,0x20,0x20,0x20,0xC0,0x20,0x20,0x20,0x20,0x18,0x00,
+
+ 7, // 0x7C '|'
+ 0x00,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x00,
+
+ 7, // 0x7D '}'
+ 0x60,0x10,0x10,0x10,0x10,0x0C,0x10,0x10,0x10,0x10,0x60,0x00,
+
+ 7, // 0x7E '~'
+ 0x00,0x60,0x92,0x92,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x7F ''
+ 0x00,0x10,0x38,0x6C,0x44,0x44,0x7C,0x00,0x00,0x00,0x00,0x00,
+
+ 0
+ };
+
+ const int8u mcs7x12_mono_low[] =
+ {
+ 12, 4, 32, 128-32,
+ 0x00,0x00,0x0D,0x00,0x1A,0x00,0x27,0x00,0x34,0x00,0x41,0x00,0x4E,0x00,0x5B,0x00,0x68,0x00,
+ 0x75,0x00,0x82,0x00,0x8F,0x00,0x9C,0x00,0xA9,0x00,0xB6,0x00,0xC3,0x00,0xD0,0x00,0xDD,0x00,
+ 0xEA,0x00,0xF7,0x00,0x04,0x01,0x11,0x01,0x1E,0x01,0x2B,0x01,0x38,0x01,0x45,0x01,0x52,0x01,
+ 0x5F,0x01,0x6C,0x01,0x79,0x01,0x86,0x01,0x93,0x01,0xA0,0x01,0xAD,0x01,0xBA,0x01,0xC7,0x01,
+ 0xD4,0x01,0xE1,0x01,0xEE,0x01,0xFB,0x01,0x08,0x02,0x15,0x02,0x22,0x02,0x2F,0x02,0x3C,0x02,
+ 0x49,0x02,0x56,0x02,0x63,0x02,0x70,0x02,0x7D,0x02,0x8A,0x02,0x97,0x02,0xA4,0x02,0xB1,0x02,
+ 0xBE,0x02,0xCB,0x02,0xD8,0x02,0xE5,0x02,0xF2,0x02,0xFF,0x02,0x0C,0x03,0x19,0x03,0x26,0x03,
+ 0x33,0x03,0x40,0x03,0x4D,0x03,0x5A,0x03,0x67,0x03,0x74,0x03,0x81,0x03,0x8E,0x03,0x9B,0x03,
+ 0xA8,0x03,0xB5,0x03,0xC2,0x03,0xCF,0x03,0xDC,0x03,0xE9,0x03,0xF6,0x03,0x03,0x04,0x10,0x04,
+ 0x1D,0x04,0x2A,0x04,0x37,0x04,0x44,0x04,0x51,0x04,0x5E,0x04,0x6B,0x04,0x78,0x04,0x85,0x04,
+ 0x92,0x04,0x9F,0x04,0xAC,0x04,0xB9,0x04,0xC6,0x04,0xD3,0x04,
+
+ 7, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x21 '!'
+ 0x00,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x00,0x10,0x00,0x00,
+
+ 7, // 0x22 '"'
+ 0x28,0x28,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x23 '#'
+ 0x00,0x28,0x28,0x7C,0x28,0x28,0x28,0x7C,0x28,0x28,0x00,0x00,
+
+ 7, // 0x24 '$'
+ 0x00,0x10,0x38,0x54,0x50,0x38,0x14,0x54,0x38,0x10,0x00,0x00,
+
+ 7, // 0x25 '%'
+ 0x34,0x54,0x68,0x08,0x10,0x10,0x20,0x2C,0x54,0x58,0x00,0x00,
+
+ 7, // 0x26 '&'
+ 0x00,0x20,0x50,0x50,0x20,0x54,0x54,0x48,0x34,0x00,0x00,0x00,
+
+ 7, // 0x27 '''
+ 0x00,0x10,0x10,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x28 '('
+ 0x08,0x10,0x10,0x20,0x20,0x20,0x20,0x20,0x10,0x10,0x08,0x00,
+
+ 7, // 0x29 ')'
+ 0x20,0x10,0x10,0x08,0x08,0x08,0x08,0x08,0x10,0x10,0x20,0x00,
+
+ 7, // 0x2A '*'
+ 0x00,0x00,0x10,0x54,0x38,0x7C,0x38,0x54,0x10,0x00,0x00,0x00,
+
+ 7, // 0x2B '+'
+ 0x00,0x00,0x00,0x10,0x10,0x7C,0x10,0x10,0x00,0x00,0x00,0x00,
+
+ 7, // 0x2C ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x20,0x40,0x00,
+
+ 7, // 0x2D '-'
+ 0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x2E '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,
+
+ 7, // 0x2F '/'
+ 0x04,0x04,0x08,0x08,0x10,0x10,0x20,0x20,0x40,0x40,0x00,0x00,
+
+ 7, // 0x30 '0'
+ 0x00,0x38,0x44,0x44,0x54,0x54,0x44,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x31 '1'
+ 0x00,0x10,0x30,0x10,0x10,0x10,0x10,0x10,0x38,0x00,0x00,0x00,
+
+ 7, // 0x32 '2'
+ 0x00,0x38,0x44,0x44,0x08,0x10,0x20,0x40,0x7C,0x00,0x00,0x00,
+
+ 7, // 0x33 '3'
+ 0x00,0x38,0x44,0x04,0x38,0x04,0x04,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x34 '4'
+ 0x00,0x08,0x18,0x28,0x28,0x48,0x7C,0x08,0x08,0x00,0x00,0x00,
+
+ 7, // 0x35 '5'
+ 0x00,0x7C,0x40,0x78,0x44,0x04,0x04,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x36 '6'
+ 0x00,0x38,0x44,0x40,0x78,0x44,0x44,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x37 '7'
+ 0x00,0x7C,0x04,0x08,0x08,0x10,0x10,0x20,0x20,0x00,0x00,0x00,
+
+ 7, // 0x38 '8'
+ 0x00,0x38,0x44,0x44,0x38,0x44,0x44,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x39 '9'
+ 0x00,0x38,0x44,0x44,0x44,0x3C,0x04,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x3A ':'
+ 0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x30,0x30,0x00,0x00,0x00,
+
+ 7, // 0x3B ';'
+ 0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x30,0x30,0x20,0x40,0x00,
+
+ 7, // 0x3C '<'
+ 0x00,0x04,0x08,0x10,0x20,0x40,0x20,0x10,0x08,0x04,0x00,0x00,
+
+ 7, // 0x3D '='
+ 0x00,0x00,0x00,0x00,0x7C,0x00,0x00,0x7C,0x00,0x00,0x00,0x00,
+
+ 7, // 0x3E '>'
+ 0x00,0x40,0x20,0x10,0x08,0x04,0x08,0x10,0x20,0x40,0x00,0x00,
+
+ 7, // 0x3F '?'
+ 0x00,0x38,0x44,0x04,0x04,0x08,0x10,0x10,0x00,0x10,0x00,0x00,
+
+ 7, // 0x40 '@'
+ 0x00,0x38,0x44,0x44,0x5C,0x54,0x4C,0x40,0x38,0x00,0x00,0x00,
+
+ 7, // 0x41 'A'
+ 0x00,0x38,0x44,0x44,0x44,0x7C,0x44,0x44,0x44,0x00,0x00,0x00,
+
+ 7, // 0x42 'B'
+ 0x00,0x78,0x44,0x44,0x78,0x44,0x44,0x44,0x78,0x00,0x00,0x00,
+
+ 7, // 0x43 'C'
+ 0x00,0x38,0x44,0x40,0x40,0x40,0x40,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x44 'D'
+ 0x00,0x70,0x48,0x44,0x44,0x44,0x44,0x48,0x70,0x00,0x00,0x00,
+
+ 7, // 0x45 'E'
+ 0x00,0x7C,0x40,0x40,0x78,0x40,0x40,0x40,0x7C,0x00,0x00,0x00,
+
+ 7, // 0x46 'F'
+ 0x00,0x7C,0x40,0x40,0x78,0x40,0x40,0x40,0x40,0x00,0x00,0x00,
+
+ 7, // 0x47 'G'
+ 0x00,0x38,0x44,0x40,0x40,0x4C,0x44,0x4C,0x34,0x00,0x00,0x00,
+
+ 7, // 0x48 'H'
+ 0x00,0x44,0x44,0x44,0x7C,0x44,0x44,0x44,0x44,0x00,0x00,0x00,
+
+ 7, // 0x49 'I'
+ 0x00,0x38,0x10,0x10,0x10,0x10,0x10,0x10,0x38,0x00,0x00,0x00,
+
+ 7, // 0x4A 'J'
+ 0x00,0x1C,0x08,0x08,0x08,0x08,0x48,0x48,0x30,0x00,0x00,0x00,
+
+ 7, // 0x4B 'K'
+ 0x00,0x44,0x48,0x50,0x60,0x60,0x50,0x48,0x44,0x00,0x00,0x00,
+
+ 7, // 0x4C 'L'
+ 0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x7C,0x00,0x00,0x00,
+
+ 7, // 0x4D 'M'
+ 0x00,0x44,0x6C,0x54,0x54,0x44,0x44,0x44,0x44,0x00,0x00,0x00,
+
+ 7, // 0x4E 'N'
+ 0x00,0x44,0x64,0x64,0x54,0x54,0x4C,0x4C,0x44,0x00,0x00,0x00,
+
+ 7, // 0x4F 'O'
+ 0x00,0x38,0x44,0x44,0x44,0x44,0x44,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x50 'P'
+ 0x00,0x78,0x44,0x44,0x44,0x78,0x40,0x40,0x40,0x00,0x00,0x00,
+
+ 7, // 0x51 'Q'
+ 0x00,0x38,0x44,0x44,0x44,0x44,0x54,0x48,0x34,0x00,0x00,0x00,
+
+ 7, // 0x52 'R'
+ 0x00,0x78,0x44,0x44,0x44,0x78,0x48,0x44,0x44,0x00,0x00,0x00,
+
+ 7, // 0x53 'S'
+ 0x00,0x38,0x44,0x40,0x38,0x04,0x44,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x54 'T'
+ 0x00,0x7C,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x00,0x00,0x00,
+
+ 7, // 0x55 'U'
+ 0x00,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x56 'V'
+ 0x00,0x44,0x44,0x44,0x28,0x28,0x28,0x10,0x10,0x00,0x00,0x00,
+
+ 7, // 0x57 'W'
+ 0x00,0x44,0x44,0x44,0x44,0x44,0x54,0x54,0x28,0x00,0x00,0x00,
+
+ 7, // 0x58 'X'
+ 0x00,0x44,0x44,0x28,0x10,0x28,0x44,0x44,0x44,0x00,0x00,0x00,
+
+ 7, // 0x59 'Y'
+ 0x00,0x44,0x44,0x44,0x28,0x10,0x10,0x10,0x10,0x00,0x00,0x00,
+
+ 7, // 0x5A 'Z'
+ 0x00,0x7C,0x04,0x08,0x10,0x20,0x40,0x40,0x7C,0x00,0x00,0x00,
+
+ 7, // 0x5B '['
+ 0x38,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x38,0x00,
+
+ 7, // 0x5C '\'
+ 0x00,0x40,0x40,0x20,0x20,0x10,0x10,0x08,0x08,0x04,0x04,0x00,
+
+ 7, // 0x5D ']'
+ 0x38,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x38,0x00,
+
+ 7, // 0x5E '^'
+ 0x00,0x10,0x28,0x44,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x5F '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,
+
+ 7, // 0x60 '`'
+ 0x00,0x20,0x20,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x61 'a'
+ 0x00,0x00,0x00,0x38,0x04,0x3C,0x44,0x44,0x3C,0x00,0x00,0x00,
+
+ 7, // 0x62 'b'
+ 0x00,0x40,0x40,0x78,0x44,0x44,0x44,0x44,0x78,0x00,0x00,0x00,
+
+ 7, // 0x63 'c'
+ 0x00,0x00,0x00,0x38,0x44,0x40,0x40,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x64 'd'
+ 0x00,0x04,0x04,0x3C,0x44,0x44,0x44,0x44,0x3C,0x00,0x00,0x00,
+
+ 7, // 0x65 'e'
+ 0x00,0x00,0x00,0x38,0x44,0x7C,0x40,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x66 'f'
+ 0x00,0x0C,0x10,0x38,0x10,0x10,0x10,0x10,0x10,0x00,0x00,0x00,
+
+ 7, // 0x67 'g'
+ 0x00,0x00,0x00,0x3C,0x44,0x44,0x44,0x44,0x3C,0x04,0x44,0x38,
+
+ 7, // 0x68 'h'
+ 0x00,0x40,0x40,0x78,0x44,0x44,0x44,0x44,0x44,0x00,0x00,0x00,
+
+ 7, // 0x69 'i'
+ 0x00,0x10,0x00,0x30,0x10,0x10,0x10,0x10,0x38,0x00,0x00,0x00,
+
+ 7, // 0x6A 'j'
+ 0x00,0x08,0x00,0x18,0x08,0x08,0x08,0x08,0x08,0x48,0x48,0x30,
+
+ 7, // 0x6B 'k'
+ 0x00,0x40,0x40,0x4C,0x50,0x60,0x50,0x48,0x44,0x00,0x00,0x00,
+
+ 7, // 0x6C 'l'
+ 0x00,0x30,0x10,0x10,0x10,0x10,0x10,0x10,0x38,0x00,0x00,0x00,
+
+ 7, // 0x6D 'm'
+ 0x00,0x00,0x00,0x68,0x54,0x54,0x44,0x44,0x44,0x00,0x00,0x00,
+
+ 7, // 0x6E 'n'
+ 0x00,0x00,0x00,0x58,0x64,0x44,0x44,0x44,0x44,0x00,0x00,0x00,
+
+ 7, // 0x6F 'o'
+ 0x00,0x00,0x00,0x38,0x44,0x44,0x44,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x70 'p'
+ 0x00,0x00,0x00,0x78,0x44,0x44,0x44,0x44,0x78,0x40,0x40,0x40,
+
+ 7, // 0x71 'q'
+ 0x00,0x00,0x00,0x3C,0x44,0x44,0x44,0x44,0x3C,0x04,0x04,0x04,
+
+ 7, // 0x72 'r'
+ 0x00,0x00,0x00,0x58,0x24,0x20,0x20,0x20,0x70,0x00,0x00,0x00,
+
+ 7, // 0x73 's'
+ 0x00,0x00,0x00,0x38,0x44,0x30,0x08,0x44,0x38,0x00,0x00,0x00,
+
+ 7, // 0x74 't'
+ 0x00,0x20,0x20,0x70,0x20,0x20,0x20,0x24,0x18,0x00,0x00,0x00,
+
+ 7, // 0x75 'u'
+ 0x00,0x00,0x00,0x44,0x44,0x44,0x44,0x4C,0x34,0x00,0x00,0x00,
+
+ 7, // 0x76 'v'
+ 0x00,0x00,0x00,0x44,0x44,0x28,0x28,0x10,0x10,0x00,0x00,0x00,
+
+ 7, // 0x77 'w'
+ 0x00,0x00,0x00,0x44,0x44,0x44,0x54,0x54,0x28,0x00,0x00,0x00,
+
+ 7, // 0x78 'x'
+ 0x00,0x00,0x00,0x44,0x28,0x10,0x28,0x44,0x44,0x00,0x00,0x00,
+
+ 7, // 0x79 'y'
+ 0x00,0x00,0x00,0x44,0x44,0x44,0x44,0x44,0x3C,0x04,0x08,0x70,
+
+ 7, // 0x7A 'z'
+ 0x00,0x00,0x00,0x7C,0x08,0x10,0x20,0x40,0x7C,0x00,0x00,0x00,
+
+ 7, // 0x7B '{'
+ 0x18,0x20,0x20,0x20,0x20,0xC0,0x20,0x20,0x20,0x20,0x18,0x00,
+
+ 7, // 0x7C '|'
+ 0x00,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x00,
+
+ 7, // 0x7D '}'
+ 0x60,0x10,0x10,0x10,0x10,0x0C,0x10,0x10,0x10,0x10,0x60,0x00,
+
+ 7, // 0x7E '~'
+ 0x00,0x24,0x54,0x48,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x7F ''
+ 0x00,0x10,0x38,0x6C,0x44,0x44,0x7C,0x00,0x00,0x00,0x00,0x00,
+
+ 0
+ };
+
+ const int8u verdana12[] =
+ {
+ 12, 3, 32, 128-32,
+ 0x00,0x00,0x0D,0x00,0x1A,0x00,0x27,0x00,0x34,0x00,0x41,0x00,0x5A,0x00,0x67,0x00,0x74,0x00,
+ 0x81,0x00,0x8E,0x00,0x9B,0x00,0xA8,0x00,0xB5,0x00,0xC2,0x00,0xCF,0x00,0xDC,0x00,0xE9,0x00,
+ 0xF6,0x00,0x03,0x01,0x10,0x01,0x1D,0x01,0x2A,0x01,0x37,0x01,0x44,0x01,0x51,0x01,0x5E,0x01,
+ 0x6B,0x01,0x78,0x01,0x85,0x01,0x92,0x01,0x9F,0x01,0xAC,0x01,0xC5,0x01,0xD2,0x01,0xDF,0x01,
+ 0xEC,0x01,0xF9,0x01,0x06,0x02,0x13,0x02,0x20,0x02,0x2D,0x02,0x3A,0x02,0x47,0x02,0x54,0x02,
+ 0x61,0x02,0x7A,0x02,0x87,0x02,0xA0,0x02,0xAD,0x02,0xC6,0x02,0xD3,0x02,0xE0,0x02,0xED,0x02,
+ 0xFA,0x02,0x07,0x03,0x20,0x03,0x2D,0x03,0x3A,0x03,0x47,0x03,0x54,0x03,0x61,0x03,0x6E,0x03,
+ 0x7B,0x03,0x88,0x03,0x95,0x03,0xA2,0x03,0xAF,0x03,0xBC,0x03,0xC9,0x03,0xD6,0x03,0xE3,0x03,
+ 0xF0,0x03,0xFD,0x03,0x0A,0x04,0x17,0x04,0x24,0x04,0x31,0x04,0x4A,0x04,0x57,0x04,0x64,0x04,
+ 0x71,0x04,0x7E,0x04,0x8B,0x04,0x98,0x04,0xA5,0x04,0xB2,0x04,0xBF,0x04,0xCC,0x04,0xD9,0x04,
+ 0xE6,0x04,0xF3,0x04,0x00,0x05,0x0D,0x05,0x1A,0x05,0x27,0x05,
+
+ 3, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x21 '!'
+ 0x00,0x00,0x00,0x20,0x20,0x20,0x20,0x20,0x00,0x20,0x00,0x00,
+
+ 5, // 0x22 '"'
+ 0x00,0x00,0x50,0x50,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x23 '#'
+ 0x00,0x00,0x00,0x00,0x28,0x7C,0x28,0x7C,0x28,0x00,0x00,0x00,
+
+ 7, // 0x24 '$'
+ 0x00,0x00,0x10,0x10,0x3C,0x50,0x30,0x18,0x14,0x78,0x10,0x10,
+
+ 11, // 0x25 '%'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x31,0x00,0x4A,0x00,0x4A,0x00,0x35,0x80,0x0A,0x40,0x0A,0x40,0x11,0x80,0x00,0x00,0x00,0x00,
+
+ 7, // 0x26 '&'
+ 0x00,0x00,0x00,0x30,0x48,0x48,0x32,0x4A,0x44,0x3A,0x00,0x00,
+
+ 3, // 0x27 '''
+ 0x00,0x00,0x40,0x40,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x28 '('
+ 0x00,0x00,0x10,0x20,0x40,0x40,0x40,0x40,0x40,0x40,0x20,0x10,
+
+ 4, // 0x29 ')'
+ 0x00,0x00,0x80,0x40,0x20,0x20,0x20,0x20,0x20,0x20,0x40,0x80,
+
+ 7, // 0x2A '*'
+ 0x00,0x10,0x54,0x38,0x54,0x10,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x2B '+'
+ 0x00,0x00,0x00,0x00,0x10,0x10,0x7C,0x10,0x10,0x00,0x00,0x00,
+
+ 3, // 0x2C ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x40,0x80,0x00,
+
+ 5, // 0x2D '-'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x00,0x00,0x00,0x00,0x00,
+
+ 3, // 0x2E '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x40,0x00,0x00,
+
+ 4, // 0x2F '/'
+ 0x00,0x00,0x10,0x10,0x20,0x20,0x40,0x40,0x40,0x80,0x80,0x00,
+
+ 7, // 0x30 '0'
+ 0x00,0x00,0x00,0x38,0x44,0x44,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 7, // 0x31 '1'
+ 0x00,0x00,0x00,0x10,0x30,0x10,0x10,0x10,0x10,0x38,0x00,0x00,
+
+ 7, // 0x32 '2'
+ 0x00,0x00,0x00,0x38,0x44,0x04,0x08,0x10,0x20,0x7C,0x00,0x00,
+
+ 7, // 0x33 '3'
+ 0x00,0x00,0x00,0x38,0x44,0x04,0x18,0x04,0x44,0x38,0x00,0x00,
+
+ 7, // 0x34 '4'
+ 0x00,0x00,0x00,0x08,0x18,0x28,0x48,0x7C,0x08,0x08,0x00,0x00,
+
+ 7, // 0x35 '5'
+ 0x00,0x00,0x00,0x7C,0x40,0x78,0x04,0x04,0x44,0x38,0x00,0x00,
+
+ 7, // 0x36 '6'
+ 0x00,0x00,0x00,0x18,0x20,0x40,0x78,0x44,0x44,0x38,0x00,0x00,
+
+ 7, // 0x37 '7'
+ 0x00,0x00,0x00,0x7C,0x04,0x08,0x08,0x10,0x10,0x10,0x00,0x00,
+
+ 7, // 0x38 '8'
+ 0x00,0x00,0x00,0x38,0x44,0x44,0x38,0x44,0x44,0x38,0x00,0x00,
+
+ 7, // 0x39 '9'
+ 0x00,0x00,0x00,0x38,0x44,0x44,0x3C,0x04,0x08,0x30,0x00,0x00,
+
+ 4, // 0x3A ':'
+ 0x00,0x00,0x00,0x00,0x00,0x40,0x40,0x00,0x40,0x40,0x00,0x00,
+
+ 4, // 0x3B ';'
+ 0x00,0x00,0x00,0x00,0x00,0x40,0x40,0x00,0x40,0x40,0x80,0x00,
+
+ 7, // 0x3C '<'
+ 0x00,0x00,0x00,0x00,0x04,0x18,0x60,0x18,0x04,0x00,0x00,0x00,
+
+ 7, // 0x3D '='
+ 0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x7C,0x00,0x00,0x00,0x00,
+
+ 7, // 0x3E '>'
+ 0x00,0x00,0x00,0x00,0x40,0x30,0x0C,0x30,0x40,0x00,0x00,0x00,
+
+ 6, // 0x3F '?'
+ 0x00,0x00,0x00,0x70,0x08,0x08,0x10,0x20,0x00,0x20,0x00,0x00,
+
+ 10, // 0x40 '@'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x00,0x20,0x80,0x4E,0x80,0x52,0x80,0x52,0x80,0x4D,0x00,0x20,0x00,0x1F,0x00,0x00,0x00,
+
+ 8, // 0x41 'A'
+ 0x00,0x00,0x00,0x18,0x18,0x24,0x24,0x7E,0x42,0x42,0x00,0x00,
+
+ 7, // 0x42 'B'
+ 0x00,0x00,0x00,0x70,0x48,0x48,0x78,0x44,0x44,0x78,0x00,0x00,
+
+ 8, // 0x43 'C'
+ 0x00,0x00,0x00,0x1C,0x22,0x40,0x40,0x40,0x22,0x1C,0x00,0x00,
+
+ 8, // 0x44 'D'
+ 0x00,0x00,0x00,0x78,0x44,0x42,0x42,0x42,0x44,0x78,0x00,0x00,
+
+ 7, // 0x45 'E'
+ 0x00,0x00,0x00,0x7C,0x40,0x40,0x78,0x40,0x40,0x7C,0x00,0x00,
+
+ 6, // 0x46 'F'
+ 0x00,0x00,0x00,0x7C,0x40,0x40,0x78,0x40,0x40,0x40,0x00,0x00,
+
+ 8, // 0x47 'G'
+ 0x00,0x00,0x00,0x1C,0x22,0x40,0x4E,0x42,0x22,0x1C,0x00,0x00,
+
+ 8, // 0x48 'H'
+ 0x00,0x00,0x00,0x42,0x42,0x42,0x7E,0x42,0x42,0x42,0x00,0x00,
+
+ 5, // 0x49 'I'
+ 0x00,0x00,0x00,0x70,0x20,0x20,0x20,0x20,0x20,0x70,0x00,0x00,
+
+ 5, // 0x4A 'J'
+ 0x00,0x00,0x00,0x30,0x10,0x10,0x10,0x10,0x10,0xE0,0x00,0x00,
+
+ 7, // 0x4B 'K'
+ 0x00,0x00,0x00,0x44,0x48,0x50,0x60,0x50,0x48,0x44,0x00,0x00,
+
+ 6, // 0x4C 'L'
+ 0x00,0x00,0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x7C,0x00,0x00,
+
+ 9, // 0x4D 'M'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x00,0x63,0x00,0x55,0x00,0x55,0x00,0x49,0x00,0x49,0x00,0x41,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x4E 'N'
+ 0x00,0x00,0x00,0x42,0x62,0x52,0x4A,0x46,0x42,0x42,0x00,0x00,
+
+ 9, // 0x4F 'O'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x00,0x22,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x22,0x00,0x1C,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x50 'P'
+ 0x00,0x00,0x00,0x78,0x44,0x44,0x44,0x78,0x40,0x40,0x00,0x00,
+
+ 9, // 0x51 'Q'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x00,0x22,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x22,0x00,0x1C,0x00,0x04,0x00,0x03,0x00,
+
+ 7, // 0x52 'R'
+ 0x00,0x00,0x00,0x78,0x44,0x44,0x78,0x50,0x48,0x44,0x00,0x00,
+
+ 7, // 0x53 'S'
+ 0x00,0x00,0x00,0x38,0x44,0x40,0x38,0x04,0x44,0x38,0x00,0x00,
+
+ 7, // 0x54 'T'
+ 0x00,0x00,0x00,0xFE,0x10,0x10,0x10,0x10,0x10,0x10,0x00,0x00,
+
+ 8, // 0x55 'U'
+ 0x00,0x00,0x00,0x42,0x42,0x42,0x42,0x42,0x42,0x3C,0x00,0x00,
+
+ 8, // 0x56 'V'
+ 0x00,0x00,0x00,0x42,0x42,0x42,0x24,0x24,0x18,0x18,0x00,0x00,
+
+ 9, // 0x57 'W'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x00,0x49,0x00,0x49,0x00,0x55,0x00,0x55,0x00,0x22,0x00,0x22,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x58 'X'
+ 0x00,0x00,0x00,0x44,0x44,0x28,0x10,0x28,0x44,0x44,0x00,0x00,
+
+ 7, // 0x59 'Y'
+ 0x00,0x00,0x00,0x44,0x44,0x28,0x28,0x10,0x10,0x10,0x00,0x00,
+
+ 7, // 0x5A 'Z'
+ 0x00,0x00,0x00,0x7C,0x04,0x08,0x10,0x20,0x40,0x7C,0x00,0x00,
+
+ 4, // 0x5B '['
+ 0x00,0x00,0x60,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x60,
+
+ 4, // 0x5C '\'
+ 0x00,0x00,0x80,0x80,0x40,0x40,0x40,0x20,0x20,0x10,0x10,0x00,
+
+ 4, // 0x5D ']'
+ 0x00,0x00,0x60,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x60,
+
+ 7, // 0x5E '^'
+ 0x00,0x00,0x00,0x10,0x28,0x44,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x5F '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFC,
+
+ 6, // 0x60 '`'
+ 0x00,0x00,0x20,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x61 'a'
+ 0x00,0x00,0x00,0x00,0x00,0x30,0x08,0x38,0x48,0x38,0x00,0x00,
+
+ 6, // 0x62 'b'
+ 0x00,0x00,0x40,0x40,0x40,0x70,0x48,0x48,0x48,0x70,0x00,0x00,
+
+ 6, // 0x63 'c'
+ 0x00,0x00,0x00,0x00,0x00,0x38,0x40,0x40,0x40,0x38,0x00,0x00,
+
+ 6, // 0x64 'd'
+ 0x00,0x00,0x08,0x08,0x08,0x38,0x48,0x48,0x48,0x38,0x00,0x00,
+
+ 6, // 0x65 'e'
+ 0x00,0x00,0x00,0x00,0x00,0x30,0x48,0x78,0x40,0x38,0x00,0x00,
+
+ 4, // 0x66 'f'
+ 0x00,0x00,0x30,0x40,0x40,0xE0,0x40,0x40,0x40,0x40,0x00,0x00,
+
+ 6, // 0x67 'g'
+ 0x00,0x00,0x00,0x00,0x00,0x38,0x48,0x48,0x48,0x38,0x08,0x30,
+
+ 6, // 0x68 'h'
+ 0x00,0x00,0x40,0x40,0x40,0x70,0x48,0x48,0x48,0x48,0x00,0x00,
+
+ 3, // 0x69 'i'
+ 0x00,0x00,0x00,0x40,0x00,0x40,0x40,0x40,0x40,0x40,0x00,0x00,
+
+ 3, // 0x6A 'j'
+ 0x00,0x00,0x00,0x40,0x00,0xC0,0x40,0x40,0x40,0x40,0x40,0x80,
+
+ 6, // 0x6B 'k'
+ 0x00,0x00,0x40,0x40,0x40,0x48,0x50,0x60,0x50,0x48,0x00,0x00,
+
+ 3, // 0x6C 'l'
+ 0x00,0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x00,
+
+ 9, // 0x6D 'm'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x76,0x00,0x49,0x00,0x49,0x00,0x49,0x00,0x49,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x6E 'n'
+ 0x00,0x00,0x00,0x00,0x00,0x70,0x48,0x48,0x48,0x48,0x00,0x00,
+
+ 6, // 0x6F 'o'
+ 0x00,0x00,0x00,0x00,0x00,0x30,0x48,0x48,0x48,0x30,0x00,0x00,
+
+ 6, // 0x70 'p'
+ 0x00,0x00,0x00,0x00,0x00,0x70,0x48,0x48,0x48,0x70,0x40,0x40,
+
+ 6, // 0x71 'q'
+ 0x00,0x00,0x00,0x00,0x00,0x38,0x48,0x48,0x48,0x38,0x08,0x08,
+
+ 4, // 0x72 'r'
+ 0x00,0x00,0x00,0x00,0x00,0x50,0x60,0x40,0x40,0x40,0x00,0x00,
+
+ 6, // 0x73 's'
+ 0x00,0x00,0x00,0x00,0x00,0x38,0x40,0x30,0x08,0x70,0x00,0x00,
+
+ 4, // 0x74 't'
+ 0x00,0x00,0x00,0x00,0x40,0xF0,0x40,0x40,0x40,0x30,0x00,0x00,
+
+ 6, // 0x75 'u'
+ 0x00,0x00,0x00,0x00,0x00,0x48,0x48,0x48,0x48,0x38,0x00,0x00,
+
+ 6, // 0x76 'v'
+ 0x00,0x00,0x00,0x00,0x00,0x48,0x48,0x48,0x30,0x30,0x00,0x00,
+
+ 7, // 0x77 'w'
+ 0x00,0x00,0x00,0x00,0x00,0x44,0x54,0x54,0x28,0x28,0x00,0x00,
+
+ 6, // 0x78 'x'
+ 0x00,0x00,0x00,0x00,0x00,0x48,0x48,0x30,0x48,0x48,0x00,0x00,
+
+ 6, // 0x79 'y'
+ 0x00,0x00,0x00,0x00,0x00,0x48,0x48,0x48,0x30,0x10,0x20,0x20,
+
+ 5, // 0x7A 'z'
+ 0x00,0x00,0x00,0x00,0x00,0x70,0x10,0x20,0x40,0x70,0x00,0x00,
+
+ 6, // 0x7B '{'
+ 0x00,0x00,0x18,0x20,0x20,0x20,0x20,0xC0,0x20,0x20,0x20,0x18,
+
+ 5, // 0x7C '|'
+ 0x00,0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+
+ 6, // 0x7D '}'
+ 0x00,0x00,0x60,0x10,0x10,0x10,0x10,0x0C,0x10,0x10,0x10,0x60,
+
+ 7, // 0x7E '~'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x34,0x58,0x00,0x00,0x00,0x00,
+
+ 9, // 0x7F ''
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,
+
+ 0
+ };
+
+ const int8u verdana12_bold[] =
+ {
+ 12, 3, 32, 128-32,
+ 0x00,0x00,0x0D,0x00,0x1A,0x00,0x27,0x00,0x34,0x00,0x41,0x00,0x5A,0x00,0x67,0x00,0x74,0x00,
+ 0x81,0x00,0x8E,0x00,0x9B,0x00,0xA8,0x00,0xB5,0x00,0xC2,0x00,0xCF,0x00,0xDC,0x00,0xE9,0x00,
+ 0xF6,0x00,0x03,0x01,0x10,0x01,0x1D,0x01,0x2A,0x01,0x37,0x01,0x44,0x01,0x51,0x01,0x5E,0x01,
+ 0x6B,0x01,0x78,0x01,0x85,0x01,0x92,0x01,0x9F,0x01,0xAC,0x01,0xC5,0x01,0xD2,0x01,0xDF,0x01,
+ 0xEC,0x01,0xF9,0x01,0x06,0x02,0x13,0x02,0x20,0x02,0x2D,0x02,0x3A,0x02,0x47,0x02,0x54,0x02,
+ 0x61,0x02,0x6E,0x02,0x7B,0x02,0x88,0x02,0x95,0x02,0xA2,0x02,0xAF,0x02,0xBC,0x02,0xC9,0x02,
+ 0xD6,0x02,0xE3,0x02,0xFC,0x02,0x09,0x03,0x16,0x03,0x23,0x03,0x30,0x03,0x3D,0x03,0x4A,0x03,
+ 0x57,0x03,0x64,0x03,0x71,0x03,0x7E,0x03,0x8B,0x03,0x98,0x03,0xA5,0x03,0xB2,0x03,0xBF,0x03,
+ 0xCC,0x03,0xD9,0x03,0xE6,0x03,0xF3,0x03,0x00,0x04,0x0D,0x04,0x26,0x04,0x33,0x04,0x40,0x04,
+ 0x4D,0x04,0x5A,0x04,0x67,0x04,0x74,0x04,0x81,0x04,0x8E,0x04,0x9B,0x04,0xB4,0x04,0xC1,0x04,
+ 0xCE,0x04,0xDB,0x04,0xE8,0x04,0xF5,0x04,0x02,0x05,0x0F,0x05,
+
+ 3, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x21 '!'
+ 0x00,0x00,0x00,0x60,0x60,0x60,0x60,0x60,0x00,0x60,0x00,0x00,
+
+ 5, // 0x22 '"'
+ 0x00,0x00,0xD8,0xD8,0xD8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x23 '#'
+ 0x00,0x00,0x00,0x14,0x14,0x7E,0x28,0xFC,0x50,0x50,0x00,0x00,
+
+ 6, // 0x24 '$'
+ 0x00,0x00,0x20,0x20,0x70,0xE8,0xE0,0x38,0xB8,0x70,0x20,0x20,
+
+ 11, // 0x25 '%'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x62,0x00,0x94,0x00,0x94,0x00,0x69,0x80,0x0A,0x40,0x0A,0x40,0x11,0x80,0x00,0x00,0x00,0x00,
+
+ 8, // 0x26 '&'
+ 0x00,0x00,0x00,0x70,0xD8,0xD8,0x76,0xDC,0xCC,0x76,0x00,0x00,
+
+ 3, // 0x27 '''
+ 0x00,0x00,0xC0,0xC0,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x28 '('
+ 0x00,0x00,0x30,0x60,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0x60,0x30,
+
+ 5, // 0x29 ')'
+ 0x00,0x00,0xC0,0x60,0x30,0x30,0x30,0x30,0x30,0x30,0x60,0xC0,
+
+ 6, // 0x2A '*'
+ 0x00,0x00,0x20,0xA8,0x70,0xA8,0x20,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x2B '+'
+ 0x00,0x00,0x00,0x00,0x10,0x10,0x7C,0x10,0x10,0x00,0x00,0x00,
+
+ 3, // 0x2C ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0xC0,0x80,0x00,
+
+ 4, // 0x2D '-'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x00,0x00,0x00,0x00,0x00,
+
+ 3, // 0x2E '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0xC0,0x00,0x00,
+
+ 6, // 0x2F '/'
+ 0x00,0x00,0x08,0x08,0x10,0x10,0x20,0x40,0x40,0x80,0x80,0x00,
+
+ 6, // 0x30 '0'
+ 0x00,0x00,0x00,0x70,0xD8,0xD8,0xD8,0xD8,0xD8,0x70,0x00,0x00,
+
+ 6, // 0x31 '1'
+ 0x00,0x00,0x00,0x30,0x70,0x30,0x30,0x30,0x30,0x78,0x00,0x00,
+
+ 6, // 0x32 '2'
+ 0x00,0x00,0x00,0x70,0x98,0x18,0x30,0x60,0xC0,0xF8,0x00,0x00,
+
+ 6, // 0x33 '3'
+ 0x00,0x00,0x00,0x70,0x98,0x18,0x70,0x18,0x98,0x70,0x00,0x00,
+
+ 6, // 0x34 '4'
+ 0x00,0x00,0x00,0x18,0x38,0x58,0x98,0xFC,0x18,0x18,0x00,0x00,
+
+ 6, // 0x35 '5'
+ 0x00,0x00,0x00,0xF8,0xC0,0xF0,0x18,0x18,0x98,0x70,0x00,0x00,
+
+ 6, // 0x36 '6'
+ 0x00,0x00,0x00,0x70,0xC0,0xF0,0xD8,0xD8,0xD8,0x70,0x00,0x00,
+
+ 6, // 0x37 '7'
+ 0x00,0x00,0x00,0xF8,0x18,0x30,0x30,0x60,0x60,0xC0,0x00,0x00,
+
+ 6, // 0x38 '8'
+ 0x00,0x00,0x00,0x70,0xD8,0xD8,0x70,0xD8,0xD8,0x70,0x00,0x00,
+
+ 6, // 0x39 '9'
+ 0x00,0x00,0x00,0x70,0xD8,0xD8,0xD8,0x78,0x18,0x70,0x00,0x00,
+
+ 4, // 0x3A ':'
+ 0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x00,0x60,0x60,0x00,0x00,
+
+ 4, // 0x3B ';'
+ 0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x00,0x60,0x60,0x40,0x00,
+
+ 8, // 0x3C '<'
+ 0x00,0x00,0x00,0x00,0x04,0x18,0x60,0x60,0x18,0x04,0x00,0x00,
+
+ 8, // 0x3D '='
+ 0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x7C,0x00,0x00,0x00,0x00,
+
+ 8, // 0x3E '>'
+ 0x00,0x00,0x00,0x00,0x40,0x30,0x0C,0x0C,0x30,0x40,0x00,0x00,
+
+ 6, // 0x3F '?'
+ 0x00,0x00,0x00,0xF0,0x18,0x18,0x30,0x60,0x00,0x60,0x00,0x00,
+
+ 9, // 0x40 '@'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x00,0x42,0x00,0x9D,0x00,0xA5,0x00,0xA5,0x00,0x9E,0x00,0x40,0x00,0x3C,0x00,0x00,0x00,
+
+ 8, // 0x41 'A'
+ 0x00,0x00,0x00,0x38,0x38,0x6C,0x6C,0x7C,0xC6,0xC6,0x00,0x00,
+
+ 7, // 0x42 'B'
+ 0x00,0x00,0x00,0xF8,0xCC,0xCC,0xF8,0xCC,0xCC,0xF8,0x00,0x00,
+
+ 6, // 0x43 'C'
+ 0x00,0x00,0x00,0x70,0xC8,0xC0,0xC0,0xC0,0xC8,0x70,0x00,0x00,
+
+ 7, // 0x44 'D'
+ 0x00,0x00,0x00,0xF8,0xCC,0xCC,0xCC,0xCC,0xCC,0xF8,0x00,0x00,
+
+ 6, // 0x45 'E'
+ 0x00,0x00,0x00,0xF8,0xC0,0xC0,0xF8,0xC0,0xC0,0xF8,0x00,0x00,
+
+ 6, // 0x46 'F'
+ 0x00,0x00,0x00,0xF8,0xC0,0xC0,0xF8,0xC0,0xC0,0xC0,0x00,0x00,
+
+ 7, // 0x47 'G'
+ 0x00,0x00,0x00,0x78,0xC4,0xC0,0xC0,0xDC,0xCC,0x7C,0x00,0x00,
+
+ 7, // 0x48 'H'
+ 0x00,0x00,0x00,0xCC,0xCC,0xCC,0xFC,0xCC,0xCC,0xCC,0x00,0x00,
+
+ 5, // 0x49 'I'
+ 0x00,0x00,0x00,0xF0,0x60,0x60,0x60,0x60,0x60,0xF0,0x00,0x00,
+
+ 5, // 0x4A 'J'
+ 0x00,0x00,0x00,0x70,0x30,0x30,0x30,0x30,0x30,0xE0,0x00,0x00,
+
+ 7, // 0x4B 'K'
+ 0x00,0x00,0x00,0xCC,0xD8,0xF0,0xE0,0xF0,0xD8,0xCC,0x00,0x00,
+
+ 6, // 0x4C 'L'
+ 0x00,0x00,0x00,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xF8,0x00,0x00,
+
+ 8, // 0x4D 'M'
+ 0x00,0x00,0x00,0x82,0xC6,0xEE,0xB6,0xB6,0x86,0x86,0x00,0x00,
+
+ 7, // 0x4E 'N'
+ 0x00,0x00,0x00,0x84,0xC4,0xE4,0xB4,0x9C,0x8C,0x84,0x00,0x00,
+
+ 8, // 0x4F 'O'
+ 0x00,0x00,0x00,0x7C,0xC6,0xC6,0xC6,0xC6,0xC6,0x7C,0x00,0x00,
+
+ 7, // 0x50 'P'
+ 0x00,0x00,0x00,0xF8,0xCC,0xCC,0xCC,0xF8,0xC0,0xC0,0x00,0x00,
+
+ 8, // 0x51 'Q'
+ 0x00,0x00,0x00,0x7C,0xC6,0xC6,0xC6,0xC6,0xC6,0x7C,0x18,0x0E,
+
+ 7, // 0x52 'R'
+ 0x00,0x00,0x00,0xF8,0xCC,0xCC,0xF8,0xD8,0xCC,0xC6,0x00,0x00,
+
+ 6, // 0x53 'S'
+ 0x00,0x00,0x00,0x70,0xC8,0xC0,0x70,0x18,0x98,0x70,0x00,0x00,
+
+ 6, // 0x54 'T'
+ 0x00,0x00,0x00,0xFC,0x30,0x30,0x30,0x30,0x30,0x30,0x00,0x00,
+
+ 7, // 0x55 'U'
+ 0x00,0x00,0x00,0xCC,0xCC,0xCC,0xCC,0xCC,0xCC,0x78,0x00,0x00,
+
+ 7, // 0x56 'V'
+ 0x00,0x00,0x00,0xCC,0xCC,0x78,0x78,0x78,0x30,0x30,0x00,0x00,
+
+ 11, // 0x57 'W'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0xCC,0xC0,0xCC,0xC0,0x6D,0x80,0x6D,0x80,0x73,0x80,0x33,0x00,0x33,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x58 'X'
+ 0x00,0x00,0x00,0xCC,0xCC,0x78,0x30,0x78,0xCC,0xCC,0x00,0x00,
+
+ 7, // 0x59 'Y'
+ 0x00,0x00,0x00,0xCC,0xCC,0x78,0x30,0x30,0x30,0x30,0x00,0x00,
+
+ 6, // 0x5A 'Z'
+ 0x00,0x00,0x00,0xF8,0x18,0x30,0x60,0xC0,0xC0,0xF8,0x00,0x00,
+
+ 5, // 0x5B '['
+ 0x00,0x00,0x70,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x70,
+
+ 6, // 0x5C '\'
+ 0x00,0x00,0x80,0x80,0x40,0x40,0x20,0x10,0x10,0x08,0x08,0x00,
+
+ 5, // 0x5D ']'
+ 0x00,0x00,0x70,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x70,
+
+ 8, // 0x5E '^'
+ 0x00,0x00,0x00,0x18,0x3C,0x66,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x5F '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFC,
+
+ 6, // 0x60 '`'
+ 0x00,0x00,0x30,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x61 'a'
+ 0x00,0x00,0x00,0x00,0x00,0x70,0x18,0x78,0xD8,0x78,0x00,0x00,
+
+ 6, // 0x62 'b'
+ 0x00,0x00,0xC0,0xC0,0xC0,0xF0,0xD8,0xD8,0xD8,0xF0,0x00,0x00,
+
+ 5, // 0x63 'c'
+ 0x00,0x00,0x00,0x00,0x00,0x70,0xC0,0xC0,0xC0,0x70,0x00,0x00,
+
+ 6, // 0x64 'd'
+ 0x00,0x00,0x18,0x18,0x18,0x78,0xD8,0xD8,0xD8,0x78,0x00,0x00,
+
+ 6, // 0x65 'e'
+ 0x00,0x00,0x00,0x00,0x00,0x70,0xD8,0xF8,0xC0,0x78,0x00,0x00,
+
+ 5, // 0x66 'f'
+ 0x00,0x00,0x38,0x60,0x60,0xF8,0x60,0x60,0x60,0x60,0x00,0x00,
+
+ 6, // 0x67 'g'
+ 0x00,0x00,0x00,0x00,0x00,0x78,0xD8,0xD8,0xD8,0x78,0x18,0x70,
+
+ 6, // 0x68 'h'
+ 0x00,0x00,0xC0,0xC0,0xC0,0xF0,0xD8,0xD8,0xD8,0xD8,0x00,0x00,
+
+ 3, // 0x69 'i'
+ 0x00,0x00,0x00,0xC0,0x00,0xC0,0xC0,0xC0,0xC0,0xC0,0x00,0x00,
+
+ 4, // 0x6A 'j'
+ 0x00,0x00,0x00,0x60,0x00,0xE0,0x60,0x60,0x60,0x60,0x60,0xC0,
+
+ 6, // 0x6B 'k'
+ 0x00,0x00,0xC0,0xC0,0xC0,0xD8,0xD8,0xF0,0xD8,0xD8,0x00,0x00,
+
+ 3, // 0x6C 'l'
+ 0x00,0x00,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0x00,0x00,
+
+ 9, // 0x6D 'm'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF6,0x00,0xDB,0x00,0xDB,0x00,0xDB,0x00,0xDB,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x6E 'n'
+ 0x00,0x00,0x00,0x00,0x00,0xF0,0xD8,0xD8,0xD8,0xD8,0x00,0x00,
+
+ 6, // 0x6F 'o'
+ 0x00,0x00,0x00,0x00,0x00,0x70,0xD8,0xD8,0xD8,0x70,0x00,0x00,
+
+ 6, // 0x70 'p'
+ 0x00,0x00,0x00,0x00,0x00,0xF0,0xD8,0xD8,0xD8,0xF0,0xC0,0xC0,
+
+ 6, // 0x71 'q'
+ 0x00,0x00,0x00,0x00,0x00,0x78,0xD8,0xD8,0xD8,0x78,0x18,0x18,
+
+ 4, // 0x72 'r'
+ 0x00,0x00,0x00,0x00,0x00,0xD0,0xE0,0xC0,0xC0,0xC0,0x00,0x00,
+
+ 5, // 0x73 's'
+ 0x00,0x00,0x00,0x00,0x00,0x70,0xC0,0xF0,0x30,0xE0,0x00,0x00,
+
+ 5, // 0x74 't'
+ 0x00,0x00,0x00,0x60,0x60,0xF8,0x60,0x60,0x60,0x38,0x00,0x00,
+
+ 6, // 0x75 'u'
+ 0x00,0x00,0x00,0x00,0x00,0xD8,0xD8,0xD8,0xD8,0x78,0x00,0x00,
+
+ 6, // 0x76 'v'
+ 0x00,0x00,0x00,0x00,0x00,0xD8,0xD8,0xD8,0x70,0x70,0x00,0x00,
+
+ 9, // 0x77 'w'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xDB,0x00,0xDB,0x00,0xDB,0x00,0x66,0x00,0x66,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x78 'x'
+ 0x00,0x00,0x00,0x00,0x00,0xD8,0xD8,0x70,0xD8,0xD8,0x00,0x00,
+
+ 6, // 0x79 'y'
+ 0x00,0x00,0x00,0x00,0x00,0xD8,0xD8,0xD8,0x70,0x70,0x30,0x60,
+
+ 5, // 0x7A 'z'
+ 0x00,0x00,0x00,0x00,0x00,0xF0,0x30,0x60,0xC0,0xF0,0x00,0x00,
+
+ 6, // 0x7B '{'
+ 0x00,0x00,0x18,0x30,0x30,0x30,0xE0,0x30,0x30,0x30,0x30,0x18,
+
+ 5, // 0x7C '|'
+ 0x00,0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+
+ 6, // 0x7D '}'
+ 0x00,0x00,0xC0,0x60,0x60,0x60,0x38,0x60,0x60,0x60,0x60,0xC0,
+
+ 8, // 0x7E '~'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x62,0x92,0x8C,0x00,0x00,0x00,
+
+ 9, // 0x7F ''
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,
+
+ 0
+ };
+
+ const int8u verdana13[] =
+ {
+ 13, 3, 32, 128-32,
+ 0x00,0x00,0x0E,0x00,0x1C,0x00,0x2A,0x00,0x45,0x00,0x53,0x00,0x6E,0x00,0x7C,0x00,0x8A,0x00,
+ 0x98,0x00,0xA6,0x00,0xB4,0x00,0xCF,0x00,0xDD,0x00,0xEB,0x00,0xF9,0x00,0x07,0x01,0x15,0x01,
+ 0x23,0x01,0x31,0x01,0x3F,0x01,0x4D,0x01,0x5B,0x01,0x69,0x01,0x77,0x01,0x85,0x01,0x93,0x01,
+ 0xA1,0x01,0xAF,0x01,0xCA,0x01,0xE5,0x01,0x00,0x02,0x0E,0x02,0x29,0x02,0x37,0x02,0x45,0x02,
+ 0x60,0x02,0x7B,0x02,0x89,0x02,0x97,0x02,0xB2,0x02,0xC0,0x02,0xCE,0x02,0xDC,0x02,0xEA,0x02,
+ 0xF8,0x02,0x13,0x03,0x21,0x03,0x3C,0x03,0x4A,0x03,0x65,0x03,0x73,0x03,0x81,0x03,0x8F,0x03,
+ 0x9D,0x03,0xAB,0x03,0xC6,0x03,0xD4,0x03,0xE2,0x03,0xF0,0x03,0xFE,0x03,0x0C,0x04,0x1A,0x04,
+ 0x35,0x04,0x43,0x04,0x51,0x04,0x5F,0x04,0x6D,0x04,0x7B,0x04,0x89,0x04,0x97,0x04,0xA5,0x04,
+ 0xB3,0x04,0xC1,0x04,0xCF,0x04,0xDD,0x04,0xEB,0x04,0xF9,0x04,0x14,0x05,0x22,0x05,0x30,0x05,
+ 0x3E,0x05,0x4C,0x05,0x5A,0x05,0x68,0x05,0x76,0x05,0x84,0x05,0x92,0x05,0xAD,0x05,0xBB,0x05,
+ 0xC9,0x05,0xD7,0x05,0xE5,0x05,0xF3,0x05,0x01,0x06,0x1C,0x06,
+
+ 4, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x21 '!'
+ 0x00,0x00,0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x00,0x20,0x00,0x00,
+
+ 5, // 0x22 '"'
+ 0x00,0x00,0x50,0x50,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x23 '#'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x0A,0x00,0x0A,0x00,0x3F,0x00,0x14,0x00,0x14,0x00,0x7E,0x00,0x28,0x00,0x28,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x24 '$'
+ 0x00,0x00,0x10,0x10,0x3C,0x50,0x50,0x38,0x14,0x14,0x78,0x10,0x10,
+
+ 12, // 0x25 '%'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x31,0x00,0x49,0x00,0x4A,0x00,0x32,0x00,0x04,0xC0,0x05,0x20,0x09,0x20,0x08,0xC0,0x00,0x00,0x00,0x00,
+
+ 8, // 0x26 '&'
+ 0x00,0x00,0x00,0x30,0x48,0x48,0x32,0x4A,0x44,0x46,0x39,0x00,0x00,
+
+ 3, // 0x27 '''
+ 0x00,0x00,0x40,0x40,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x28 '('
+ 0x00,0x00,0x10,0x20,0x20,0x40,0x40,0x40,0x40,0x40,0x20,0x20,0x10,
+
+ 5, // 0x29 ')'
+ 0x00,0x00,0x40,0x20,0x20,0x10,0x10,0x10,0x10,0x10,0x20,0x20,0x40,
+
+ 7, // 0x2A '*'
+ 0x00,0x00,0x10,0x54,0x38,0x54,0x10,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x2B '+'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x7F,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x2C ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x20,0x40,
+
+ 5, // 0x2D '-'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x2E '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x00,0x00,
+
+ 5, // 0x2F '/'
+ 0x00,0x00,0x08,0x08,0x10,0x10,0x20,0x20,0x40,0x40,0x80,0x80,0x00,
+
+ 7, // 0x30 '0'
+ 0x00,0x00,0x00,0x38,0x44,0x44,0x44,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 7, // 0x31 '1'
+ 0x00,0x00,0x00,0x10,0x70,0x10,0x10,0x10,0x10,0x10,0x7C,0x00,0x00,
+
+ 7, // 0x32 '2'
+ 0x00,0x00,0x00,0x38,0x44,0x04,0x08,0x10,0x20,0x40,0x7C,0x00,0x00,
+
+ 7, // 0x33 '3'
+ 0x00,0x00,0x00,0x38,0x44,0x04,0x18,0x04,0x04,0x44,0x38,0x00,0x00,
+
+ 7, // 0x34 '4'
+ 0x00,0x00,0x00,0x08,0x18,0x28,0x48,0x88,0xFC,0x08,0x08,0x00,0x00,
+
+ 7, // 0x35 '5'
+ 0x00,0x00,0x00,0x7C,0x40,0x40,0x78,0x04,0x04,0x44,0x38,0x00,0x00,
+
+ 7, // 0x36 '6'
+ 0x00,0x00,0x00,0x18,0x20,0x40,0x78,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 7, // 0x37 '7'
+ 0x00,0x00,0x00,0x7C,0x04,0x08,0x08,0x10,0x10,0x20,0x20,0x00,0x00,
+
+ 7, // 0x38 '8'
+ 0x00,0x00,0x00,0x38,0x44,0x44,0x38,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 7, // 0x39 '9'
+ 0x00,0x00,0x00,0x38,0x44,0x44,0x44,0x3C,0x04,0x08,0x30,0x00,0x00,
+
+ 5, // 0x3A ':'
+ 0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x00,0x00,0x20,0x20,0x00,0x00,
+
+ 5, // 0x3B ';'
+ 0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x00,0x00,0x20,0x20,0x20,0x40,
+
+ 9, // 0x3C '<'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x18,0x00,0x60,0x00,0x18,0x00,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x3D '='
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x3E '>'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x0C,0x00,0x03,0x00,0x0C,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x3F '?'
+ 0x00,0x00,0x00,0x70,0x08,0x08,0x10,0x20,0x20,0x00,0x20,0x00,0x00,
+
+ 10, // 0x40 '@'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x00,0x20,0x80,0x4E,0x80,0x52,0x80,0x52,0x80,0x52,0x80,0x4D,0x00,0x20,0x00,0x1E,0x00,0x00,0x00,
+
+ 8, // 0x41 'A'
+ 0x00,0x00,0x00,0x18,0x18,0x24,0x24,0x24,0x7E,0x42,0x42,0x00,0x00,
+
+ 8, // 0x42 'B'
+ 0x00,0x00,0x00,0x78,0x44,0x44,0x7C,0x42,0x42,0x42,0x7C,0x00,0x00,
+
+ 9, // 0x43 'C'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x21,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x21,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x44 'D'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x42,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x42,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x45 'E'
+ 0x00,0x00,0x00,0x7C,0x40,0x40,0x7C,0x40,0x40,0x40,0x7C,0x00,0x00,
+
+ 6, // 0x46 'F'
+ 0x00,0x00,0x00,0x7C,0x40,0x40,0x78,0x40,0x40,0x40,0x40,0x00,0x00,
+
+ 9, // 0x47 'G'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x21,0x00,0x40,0x00,0x40,0x00,0x47,0x00,0x41,0x00,0x21,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x48 'H'
+ 0x00,0x00,0x00,0x42,0x42,0x42,0x7E,0x42,0x42,0x42,0x42,0x00,0x00,
+
+ 5, // 0x49 'I'
+ 0x00,0x00,0x00,0x70,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x00,0x00,
+
+ 5, // 0x4A 'J'
+ 0x00,0x00,0x00,0x70,0x10,0x10,0x10,0x10,0x10,0x10,0xE0,0x00,0x00,
+
+ 8, // 0x4B 'K'
+ 0x00,0x00,0x00,0x42,0x44,0x48,0x50,0x70,0x48,0x44,0x42,0x00,0x00,
+
+ 6, // 0x4C 'L'
+ 0x00,0x00,0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x7C,0x00,0x00,
+
+ 9, // 0x4D 'M'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x00,0x63,0x00,0x55,0x00,0x55,0x00,0x49,0x00,0x49,0x00,0x41,0x00,0x41,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x4E 'N'
+ 0x00,0x00,0x00,0x62,0x62,0x52,0x52,0x4A,0x4A,0x46,0x46,0x00,0x00,
+
+ 9, // 0x4F 'O'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x00,0x22,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x22,0x00,0x1C,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x50 'P'
+ 0x00,0x00,0x00,0x78,0x44,0x44,0x44,0x78,0x40,0x40,0x40,0x00,0x00,
+
+ 9, // 0x51 'Q'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x00,0x22,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x22,0x00,0x1C,0x00,0x04,0x00,0x03,0x00,
+
+ 8, // 0x52 'R'
+ 0x00,0x00,0x00,0x78,0x44,0x44,0x44,0x78,0x48,0x44,0x42,0x00,0x00,
+
+ 8, // 0x53 'S'
+ 0x00,0x00,0x00,0x3C,0x42,0x40,0x30,0x0C,0x02,0x42,0x3C,0x00,0x00,
+
+ 7, // 0x54 'T'
+ 0x00,0x00,0x00,0xFE,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x00,0x00,
+
+ 8, // 0x55 'U'
+ 0x00,0x00,0x00,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x3C,0x00,0x00,
+
+ 8, // 0x56 'V'
+ 0x00,0x00,0x00,0x42,0x42,0x42,0x24,0x24,0x24,0x18,0x18,0x00,0x00,
+
+ 11, // 0x57 'W'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x44,0x40,0x44,0x40,0x2A,0x80,0x2A,0x80,0x2A,0x80,0x2A,0x80,0x11,0x00,0x11,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x58 'X'
+ 0x00,0x00,0x00,0x42,0x42,0x24,0x18,0x18,0x24,0x42,0x42,0x00,0x00,
+
+ 7, // 0x59 'Y'
+ 0x00,0x00,0x00,0x82,0x44,0x28,0x10,0x10,0x10,0x10,0x10,0x00,0x00,
+
+ 8, // 0x5A 'Z'
+ 0x00,0x00,0x00,0x7E,0x02,0x04,0x08,0x10,0x20,0x40,0x7E,0x00,0x00,
+
+ 5, // 0x5B '['
+ 0x00,0x00,0x70,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x70,
+
+ 5, // 0x5C '\'
+ 0x00,0x00,0x80,0x80,0x40,0x40,0x20,0x20,0x10,0x10,0x08,0x08,0x00,
+
+ 5, // 0x5D ']'
+ 0x00,0x00,0x70,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x70,
+
+ 9, // 0x5E '^'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x14,0x00,0x22,0x00,0x41,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x5F '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,
+
+ 7, // 0x60 '`'
+ 0x00,0x00,0x20,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x61 'a'
+ 0x00,0x00,0x00,0x00,0x00,0x38,0x04,0x3C,0x44,0x44,0x3C,0x00,0x00,
+
+ 7, // 0x62 'b'
+ 0x00,0x00,0x40,0x40,0x40,0x78,0x44,0x44,0x44,0x44,0x78,0x00,0x00,
+
+ 6, // 0x63 'c'
+ 0x00,0x00,0x00,0x00,0x00,0x38,0x44,0x40,0x40,0x44,0x38,0x00,0x00,
+
+ 7, // 0x64 'd'
+ 0x00,0x00,0x04,0x04,0x04,0x3C,0x44,0x44,0x44,0x44,0x3C,0x00,0x00,
+
+ 7, // 0x65 'e'
+ 0x00,0x00,0x00,0x00,0x00,0x38,0x44,0x7C,0x40,0x44,0x38,0x00,0x00,
+
+ 4, // 0x66 'f'
+ 0x00,0x00,0x30,0x40,0x40,0xF0,0x40,0x40,0x40,0x40,0x40,0x00,0x00,
+
+ 7, // 0x67 'g'
+ 0x00,0x00,0x00,0x00,0x00,0x3C,0x44,0x44,0x44,0x44,0x3C,0x04,0x38,
+
+ 7, // 0x68 'h'
+ 0x00,0x00,0x40,0x40,0x40,0x78,0x44,0x44,0x44,0x44,0x44,0x00,0x00,
+
+ 3, // 0x69 'i'
+ 0x00,0x00,0x40,0x00,0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x00,
+
+ 4, // 0x6A 'j'
+ 0x00,0x00,0x20,0x00,0x00,0x60,0x20,0x20,0x20,0x20,0x20,0x20,0xC0,
+
+ 7, // 0x6B 'k'
+ 0x00,0x00,0x40,0x40,0x40,0x44,0x48,0x50,0x70,0x48,0x44,0x00,0x00,
+
+ 3, // 0x6C 'l'
+ 0x00,0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x00,
+
+ 11, // 0x6D 'm'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7B,0x80,0x44,0x40,0x44,0x40,0x44,0x40,0x44,0x40,0x44,0x40,0x00,0x00,0x00,0x00,
+
+ 7, // 0x6E 'n'
+ 0x00,0x00,0x00,0x00,0x00,0x78,0x44,0x44,0x44,0x44,0x44,0x00,0x00,
+
+ 7, // 0x6F 'o'
+ 0x00,0x00,0x00,0x00,0x00,0x38,0x44,0x44,0x44,0x44,0x38,0x00,0x00,
+
+ 7, // 0x70 'p'
+ 0x00,0x00,0x00,0x00,0x00,0x78,0x44,0x44,0x44,0x44,0x78,0x40,0x40,
+
+ 7, // 0x71 'q'
+ 0x00,0x00,0x00,0x00,0x00,0x3C,0x44,0x44,0x44,0x44,0x3C,0x04,0x04,
+
+ 5, // 0x72 'r'
+ 0x00,0x00,0x00,0x00,0x00,0x58,0x60,0x40,0x40,0x40,0x40,0x00,0x00,
+
+ 6, // 0x73 's'
+ 0x00,0x00,0x00,0x00,0x00,0x38,0x40,0x60,0x18,0x08,0x70,0x00,0x00,
+
+ 4, // 0x74 't'
+ 0x00,0x00,0x00,0x40,0x40,0xF0,0x40,0x40,0x40,0x40,0x30,0x00,0x00,
+
+ 7, // 0x75 'u'
+ 0x00,0x00,0x00,0x00,0x00,0x44,0x44,0x44,0x44,0x44,0x3C,0x00,0x00,
+
+ 7, // 0x76 'v'
+ 0x00,0x00,0x00,0x00,0x00,0x44,0x44,0x28,0x28,0x10,0x10,0x00,0x00,
+
+ 9, // 0x77 'w'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x49,0x00,0x49,0x00,0x55,0x00,0x55,0x00,0x22,0x00,0x22,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x78 'x'
+ 0x00,0x00,0x00,0x00,0x00,0x44,0x28,0x10,0x10,0x28,0x44,0x00,0x00,
+
+ 7, // 0x79 'y'
+ 0x00,0x00,0x00,0x00,0x00,0x44,0x28,0x28,0x28,0x10,0x10,0x10,0x20,
+
+ 6, // 0x7A 'z'
+ 0x00,0x00,0x00,0x00,0x00,0x78,0x08,0x10,0x20,0x40,0x78,0x00,0x00,
+
+ 7, // 0x7B '{'
+ 0x00,0x00,0x0C,0x10,0x10,0x10,0x10,0x60,0x10,0x10,0x10,0x10,0x0C,
+
+ 5, // 0x7C '|'
+ 0x00,0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+
+ 7, // 0x7D '}'
+ 0x00,0x00,0x60,0x10,0x10,0x10,0x10,0x0C,0x10,0x10,0x10,0x10,0x60,
+
+ 9, // 0x7E '~'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x31,0x00,0x49,0x00,0x46,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x7F ''
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x7F,0x80,0x00,0x00,0x00,0x00,
+
+ 0
+ };
+
+ const int8u verdana13_bold[] =
+ {
+ 13, 3, 32, 128-32,
+ 0x00,0x00,0x0E,0x00,0x1C,0x00,0x2A,0x00,0x45,0x00,0x53,0x00,0x6E,0x00,0x89,0x00,0x97,0x00,
+ 0xA5,0x00,0xB3,0x00,0xC1,0x00,0xDC,0x00,0xEA,0x00,0xF8,0x00,0x06,0x01,0x14,0x01,0x22,0x01,
+ 0x30,0x01,0x3E,0x01,0x4C,0x01,0x5A,0x01,0x68,0x01,0x76,0x01,0x84,0x01,0x92,0x01,0xA0,0x01,
+ 0xAE,0x01,0xBC,0x01,0xD7,0x01,0xF2,0x01,0x0D,0x02,0x1B,0x02,0x36,0x02,0x51,0x02,0x5F,0x02,
+ 0x6D,0x02,0x88,0x02,0x96,0x02,0xA4,0x02,0xBF,0x02,0xDA,0x02,0xE8,0x02,0xF6,0x02,0x04,0x03,
+ 0x12,0x03,0x2D,0x03,0x48,0x03,0x63,0x03,0x71,0x03,0x8C,0x03,0x9A,0x03,0xA8,0x03,0xB6,0x03,
+ 0xD1,0x03,0xDF,0x03,0xFA,0x03,0x08,0x04,0x16,0x04,0x24,0x04,0x32,0x04,0x40,0x04,0x4E,0x04,
+ 0x69,0x04,0x77,0x04,0x85,0x04,0x93,0x04,0xA1,0x04,0xAF,0x04,0xBD,0x04,0xCB,0x04,0xD9,0x04,
+ 0xE7,0x04,0xF5,0x04,0x03,0x05,0x11,0x05,0x1F,0x05,0x2D,0x05,0x48,0x05,0x56,0x05,0x64,0x05,
+ 0x72,0x05,0x80,0x05,0x8E,0x05,0x9C,0x05,0xAA,0x05,0xB8,0x05,0xC6,0x05,0xE1,0x05,0xEF,0x05,
+ 0xFD,0x05,0x0B,0x06,0x19,0x06,0x27,0x06,0x35,0x06,0x50,0x06,
+
+ 4, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x21 '!'
+ 0x00,0x00,0x00,0x60,0x60,0x60,0x60,0x60,0x60,0x00,0x60,0x00,0x00,
+
+ 7, // 0x22 '"'
+ 0x00,0x00,0x6C,0x6C,0x6C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x23 '#'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x0A,0x00,0x0A,0x00,0x3F,0x00,0x14,0x00,0x14,0x00,0x7E,0x00,0x28,0x00,0x28,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x24 '$'
+ 0x00,0x00,0x08,0x08,0x3C,0x6A,0x68,0x3C,0x16,0x56,0x3C,0x10,0x10,
+
+ 14, // 0x25 '%'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x80,0x6C,0x80,0x6D,0x00,0x6D,0x70,0x3A,0xD8,0x02,0xD8,0x04,0xD8,0x04,0x70,0x00,0x00,0x00,0x00,
+
+ 10, // 0x26 '&'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x6C,0x00,0x6C,0x00,0x39,0x80,0x6D,0x00,0x66,0x00,0x63,0x00,0x3D,0x80,0x00,0x00,0x00,0x00,
+
+ 4, // 0x27 '''
+ 0x00,0x00,0x60,0x60,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x28 '('
+ 0x00,0x00,0x18,0x30,0x30,0x60,0x60,0x60,0x60,0x60,0x30,0x30,0x18,
+
+ 6, // 0x29 ')'
+ 0x00,0x00,0x60,0x30,0x30,0x18,0x18,0x18,0x18,0x18,0x30,0x30,0x60,
+
+ 8, // 0x2A '*'
+ 0x00,0x00,0x10,0x54,0x38,0x54,0x10,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x2B '+'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x7F,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x2C ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x60,0x40,
+
+ 6, // 0x2D '-'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x2E '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x00,0x00,
+
+ 8, // 0x2F '/'
+ 0x00,0x00,0x06,0x06,0x0C,0x0C,0x18,0x18,0x18,0x30,0x30,0x60,0x60,
+
+ 8, // 0x30 '0'
+ 0x00,0x00,0x00,0x3C,0x66,0x66,0x66,0x66,0x66,0x66,0x3C,0x00,0x00,
+
+ 8, // 0x31 '1'
+ 0x00,0x00,0x00,0x18,0x38,0x18,0x18,0x18,0x18,0x18,0x3C,0x00,0x00,
+
+ 8, // 0x32 '2'
+ 0x00,0x00,0x00,0x3C,0x66,0x06,0x0C,0x18,0x30,0x60,0x7E,0x00,0x00,
+
+ 8, // 0x33 '3'
+ 0x00,0x00,0x00,0x3C,0x66,0x06,0x1C,0x06,0x06,0x66,0x3C,0x00,0x00,
+
+ 8, // 0x34 '4'
+ 0x00,0x00,0x00,0x04,0x0C,0x1C,0x2C,0x4C,0x7E,0x0C,0x0C,0x00,0x00,
+
+ 8, // 0x35 '5'
+ 0x00,0x00,0x00,0x3E,0x30,0x30,0x3C,0x06,0x06,0x66,0x3C,0x00,0x00,
+
+ 8, // 0x36 '6'
+ 0x00,0x00,0x00,0x1C,0x30,0x60,0x7C,0x66,0x66,0x66,0x3C,0x00,0x00,
+
+ 8, // 0x37 '7'
+ 0x00,0x00,0x00,0x7E,0x06,0x0C,0x0C,0x18,0x18,0x30,0x30,0x00,0x00,
+
+ 8, // 0x38 '8'
+ 0x00,0x00,0x00,0x3C,0x66,0x66,0x3C,0x66,0x66,0x66,0x3C,0x00,0x00,
+
+ 8, // 0x39 '9'
+ 0x00,0x00,0x00,0x3C,0x66,0x66,0x66,0x3E,0x06,0x0C,0x38,0x00,0x00,
+
+ 4, // 0x3A ':'
+ 0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x00,0x00,0x60,0x60,0x00,0x00,
+
+ 4, // 0x3B ';'
+ 0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x00,0x00,0x60,0x60,0x60,0x40,
+
+ 9, // 0x3C '<'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x0C,0x00,0x30,0x00,0x40,0x00,0x30,0x00,0x0C,0x00,0x03,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x3D '='
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x3E '>'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x18,0x00,0x06,0x00,0x01,0x00,0x06,0x00,0x18,0x00,0x60,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x3F '?'
+ 0x00,0x00,0x00,0x38,0x4C,0x0C,0x18,0x30,0x30,0x00,0x30,0x00,0x00,
+
+ 11, // 0x40 '@'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x80,0x20,0x40,0x4F,0x40,0x5B,0x40,0x5B,0x40,0x5B,0x40,0x4F,0x80,0x20,0x00,0x1F,0x00,0x00,0x00,
+
+ 9, // 0x41 'A'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x00,0x1C,0x00,0x36,0x00,0x36,0x00,0x36,0x00,0x7F,0x00,0x63,0x00,0x63,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x42 'B'
+ 0x00,0x00,0x00,0x7C,0x66,0x66,0x7C,0x66,0x66,0x66,0x7C,0x00,0x00,
+
+ 8, // 0x43 'C'
+ 0x00,0x00,0x00,0x3C,0x62,0x60,0x60,0x60,0x60,0x62,0x3C,0x00,0x00,
+
+ 9, // 0x44 'D'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x66,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x66,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x45 'E'
+ 0x00,0x00,0x00,0x7E,0x60,0x60,0x7E,0x60,0x60,0x60,0x7E,0x00,0x00,
+
+ 8, // 0x46 'F'
+ 0x00,0x00,0x00,0x7E,0x60,0x60,0x7E,0x60,0x60,0x60,0x60,0x00,0x00,
+
+ 9, // 0x47 'G'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x61,0x00,0x60,0x00,0x60,0x00,0x67,0x00,0x63,0x00,0x63,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x48 'H'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x7F,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x49 'I'
+ 0x00,0x00,0x00,0x78,0x30,0x30,0x30,0x30,0x30,0x30,0x78,0x00,0x00,
+
+ 6, // 0x4A 'J'
+ 0x00,0x00,0x00,0x78,0x18,0x18,0x18,0x18,0x18,0x18,0xF0,0x00,0x00,
+
+ 8, // 0x4B 'K'
+ 0x00,0x00,0x00,0x66,0x6C,0x78,0x70,0x70,0x78,0x6C,0x66,0x00,0x00,
+
+ 7, // 0x4C 'L'
+ 0x00,0x00,0x00,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x7E,0x00,0x00,
+
+ 10, // 0x4D 'M'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x80,0x71,0x80,0x7B,0x80,0x5D,0x80,0x49,0x80,0x41,0x80,0x41,0x80,0x41,0x80,0x00,0x00,0x00,0x00,
+
+ 9, // 0x4E 'N'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x00,0x61,0x00,0x71,0x00,0x59,0x00,0x4D,0x00,0x47,0x00,0x43,0x00,0x41,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x4F 'O'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x50 'P'
+ 0x00,0x00,0x00,0x7C,0x66,0x66,0x66,0x7C,0x60,0x60,0x60,0x00,0x00,
+
+ 9, // 0x51 'Q'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x3E,0x00,0x0C,0x00,0x07,0x00,
+
+ 8, // 0x52 'R'
+ 0x00,0x00,0x00,0x7C,0x66,0x66,0x66,0x7C,0x6C,0x66,0x63,0x00,0x00,
+
+ 8, // 0x53 'S'
+ 0x00,0x00,0x00,0x3C,0x62,0x60,0x7C,0x3E,0x06,0x46,0x3C,0x00,0x00,
+
+ 8, // 0x54 'T'
+ 0x00,0x00,0x00,0xFF,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x00,0x00,
+
+ 9, // 0x55 'U'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x56 'V'
+ 0x00,0x00,0x00,0x66,0x66,0x66,0x3C,0x3C,0x3C,0x18,0x18,0x00,0x00,
+
+ 12, // 0x57 'W'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x66,0x60,0x66,0x60,0x66,0x60,0x36,0xC0,0x3F,0xC0,0x39,0xC0,0x19,0x80,0x19,0x80,0x00,0x00,0x00,0x00,
+
+ 8, // 0x58 'X'
+ 0x00,0x00,0x00,0x66,0x66,0x3C,0x18,0x18,0x3C,0x66,0x66,0x00,0x00,
+
+ 8, // 0x59 'Y'
+ 0x00,0x00,0x00,0x66,0x66,0x3C,0x3C,0x18,0x18,0x18,0x18,0x00,0x00,
+
+ 8, // 0x5A 'Z'
+ 0x00,0x00,0x00,0x7E,0x06,0x0E,0x1C,0x38,0x70,0x60,0x7E,0x00,0x00,
+
+ 6, // 0x5B '['
+ 0x00,0x00,0x78,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x78,
+
+ 8, // 0x5C '\'
+ 0x00,0x00,0x60,0x60,0x30,0x30,0x18,0x18,0x18,0x0C,0x0C,0x06,0x06,
+
+ 6, // 0x5D ']'
+ 0x00,0x00,0x78,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x78,
+
+ 10, // 0x5E '^'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x00,0x1E,0x00,0x33,0x00,0x61,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x5F '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,
+
+ 8, // 0x60 '`'
+ 0x00,0x00,0x30,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x61 'a'
+ 0x00,0x00,0x00,0x00,0x00,0x3C,0x06,0x3E,0x66,0x66,0x3E,0x00,0x00,
+
+ 8, // 0x62 'b'
+ 0x00,0x00,0x60,0x60,0x60,0x7C,0x66,0x66,0x66,0x66,0x7C,0x00,0x00,
+
+ 7, // 0x63 'c'
+ 0x00,0x00,0x00,0x00,0x00,0x3C,0x60,0x60,0x60,0x60,0x3C,0x00,0x00,
+
+ 8, // 0x64 'd'
+ 0x00,0x00,0x06,0x06,0x06,0x3E,0x66,0x66,0x66,0x66,0x3E,0x00,0x00,
+
+ 8, // 0x65 'e'
+ 0x00,0x00,0x00,0x00,0x00,0x3C,0x66,0x7E,0x60,0x62,0x3C,0x00,0x00,
+
+ 5, // 0x66 'f'
+ 0x00,0x00,0x38,0x60,0x60,0xF8,0x60,0x60,0x60,0x60,0x60,0x00,0x00,
+
+ 8, // 0x67 'g'
+ 0x00,0x00,0x00,0x00,0x00,0x3E,0x66,0x66,0x66,0x66,0x3E,0x06,0x3C,
+
+ 8, // 0x68 'h'
+ 0x00,0x00,0x60,0x60,0x60,0x7C,0x66,0x66,0x66,0x66,0x66,0x00,0x00,
+
+ 4, // 0x69 'i'
+ 0x00,0x00,0x00,0x60,0x00,0x60,0x60,0x60,0x60,0x60,0x60,0x00,0x00,
+
+ 5, // 0x6A 'j'
+ 0x00,0x00,0x00,0x30,0x00,0x70,0x30,0x30,0x30,0x30,0x30,0x30,0xE0,
+
+ 8, // 0x6B 'k'
+ 0x00,0x00,0x60,0x60,0x60,0x66,0x6C,0x78,0x78,0x6C,0x66,0x00,0x00,
+
+ 4, // 0x6C 'l'
+ 0x00,0x00,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x00,0x00,
+
+ 12, // 0x6D 'm'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7D,0xC0,0x66,0x60,0x66,0x60,0x66,0x60,0x66,0x60,0x66,0x60,0x00,0x00,0x00,0x00,
+
+ 8, // 0x6E 'n'
+ 0x00,0x00,0x00,0x00,0x00,0x7C,0x66,0x66,0x66,0x66,0x66,0x00,0x00,
+
+ 8, // 0x6F 'o'
+ 0x00,0x00,0x00,0x00,0x00,0x3C,0x66,0x66,0x66,0x66,0x3C,0x00,0x00,
+
+ 8, // 0x70 'p'
+ 0x00,0x00,0x00,0x00,0x00,0x7C,0x66,0x66,0x66,0x66,0x7C,0x60,0x60,
+
+ 8, // 0x71 'q'
+ 0x00,0x00,0x00,0x00,0x00,0x3E,0x66,0x66,0x66,0x66,0x3E,0x06,0x06,
+
+ 6, // 0x72 'r'
+ 0x00,0x00,0x00,0x00,0x00,0x6C,0x7C,0x60,0x60,0x60,0x60,0x00,0x00,
+
+ 7, // 0x73 's'
+ 0x00,0x00,0x00,0x00,0x00,0x3C,0x60,0x78,0x3C,0x0C,0x78,0x00,0x00,
+
+ 5, // 0x74 't'
+ 0x00,0x00,0x00,0x60,0x60,0xF8,0x60,0x60,0x60,0x60,0x38,0x00,0x00,
+
+ 8, // 0x75 'u'
+ 0x00,0x00,0x00,0x00,0x00,0x66,0x66,0x66,0x66,0x66,0x3E,0x00,0x00,
+
+ 8, // 0x76 'v'
+ 0x00,0x00,0x00,0x00,0x00,0x66,0x66,0x66,0x3C,0x3C,0x18,0x00,0x00,
+
+ 10, // 0x77 'w'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x6D,0x80,0x6D,0x80,0x6D,0x80,0x6D,0x80,0x33,0x00,0x33,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x78 'x'
+ 0x00,0x00,0x00,0x00,0x00,0x66,0x66,0x3C,0x3C,0x66,0x66,0x00,0x00,
+
+ 8, // 0x79 'y'
+ 0x00,0x00,0x00,0x00,0x00,0x66,0x66,0x3C,0x3C,0x18,0x18,0x30,0x30,
+
+ 7, // 0x7A 'z'
+ 0x00,0x00,0x00,0x00,0x00,0x7C,0x0C,0x18,0x30,0x60,0x7C,0x00,0x00,
+
+ 8, // 0x7B '{'
+ 0x00,0x00,0x0E,0x18,0x18,0x18,0x18,0x70,0x18,0x18,0x18,0x18,0x0E,
+
+ 6, // 0x7C '|'
+ 0x00,0x00,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,
+
+ 8, // 0x7D '}'
+ 0x00,0x00,0x70,0x18,0x18,0x18,0x18,0x0E,0x18,0x18,0x18,0x18,0x70,
+
+ 9, // 0x7E '~'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x31,0x00,0x49,0x00,0x49,0x00,0x46,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x7F ''
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x7F,0x80,0x00,0x00,0x00,0x00,
+
+ 0
+ };
+
+ const int8u verdana14[] =
+ {
+ 14, 3, 32, 128-32,
+ 0x00,0x00,0x0F,0x00,0x1E,0x00,0x2D,0x00,0x4A,0x00,0x59,0x00,0x76,0x00,0x93,0x00,0xA2,0x00,
+ 0xB1,0x00,0xC0,0x00,0xCF,0x00,0xEC,0x00,0xFB,0x00,0x0A,0x01,0x19,0x01,0x28,0x01,0x37,0x01,
+ 0x46,0x01,0x55,0x01,0x64,0x01,0x73,0x01,0x82,0x01,0x91,0x01,0xA0,0x01,0xAF,0x01,0xBE,0x01,
+ 0xCD,0x01,0xDC,0x01,0xF9,0x01,0x16,0x02,0x33,0x02,0x42,0x02,0x5F,0x02,0x6E,0x02,0x7D,0x02,
+ 0x9A,0x02,0xB7,0x02,0xC6,0x02,0xD5,0x02,0xF2,0x02,0x0F,0x03,0x1E,0x03,0x2D,0x03,0x3C,0x03,
+ 0x4B,0x03,0x68,0x03,0x85,0x03,0xA2,0x03,0xB1,0x03,0xCE,0x03,0xDD,0x03,0xEC,0x03,0xFB,0x03,
+ 0x18,0x04,0x27,0x04,0x44,0x04,0x53,0x04,0x62,0x04,0x71,0x04,0x80,0x04,0x8F,0x04,0x9E,0x04,
+ 0xBB,0x04,0xCA,0x04,0xD9,0x04,0xE8,0x04,0xF7,0x04,0x06,0x05,0x15,0x05,0x24,0x05,0x33,0x05,
+ 0x42,0x05,0x51,0x05,0x60,0x05,0x6F,0x05,0x7E,0x05,0x8D,0x05,0xAA,0x05,0xB9,0x05,0xC8,0x05,
+ 0xD7,0x05,0xE6,0x05,0xF5,0x05,0x04,0x06,0x13,0x06,0x22,0x06,0x31,0x06,0x4E,0x06,0x5D,0x06,
+ 0x6C,0x06,0x7B,0x06,0x8A,0x06,0x99,0x06,0xA8,0x06,0xC5,0x06,
+
+ 4, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x21 '!'
+ 0x00,0x00,0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00,0x20,0x00,0x00,
+
+ 6, // 0x22 '"'
+ 0x00,0x00,0x48,0x48,0x48,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x23 '#'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x09,0x00,0x09,0x00,0x12,0x00,0x3F,0x80,0x12,0x00,0x12,0x00,0x7F,0x00,0x24,0x00,0x24,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x24 '$'
+ 0x00,0x00,0x10,0x10,0x3E,0x50,0x50,0x30,0x1C,0x12,0x12,0x7C,0x10,0x10,
+
+ 13, // 0x25 '%'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x80,0x49,0x00,0x49,0x00,0x4A,0x00,0x32,0x60,0x02,0x90,0x04,0x90,0x04,0x90,0x08,0x60,0x00,0x00,0x00,0x00,
+
+ 10, // 0x26 '&'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x44,0x00,0x44,0x00,0x44,0x00,0x39,0x00,0x45,0x00,0x42,0x00,0x43,0x00,0x3C,0x80,0x00,0x00,0x00,0x00,
+
+ 3, // 0x27 '''
+ 0x00,0x00,0x40,0x40,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x28 '('
+ 0x00,0x00,0x10,0x20,0x20,0x40,0x40,0x40,0x40,0x40,0x40,0x20,0x20,0x10,
+
+ 5, // 0x29 ')'
+ 0x00,0x00,0x40,0x20,0x20,0x10,0x10,0x10,0x10,0x10,0x10,0x20,0x20,0x40,
+
+ 8, // 0x2A '*'
+ 0x00,0x00,0x10,0x54,0x38,0x54,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x2B '+'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x7F,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x2C ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x20,0x40,
+
+ 5, // 0x2D '-'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x2E '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x00,0x00,
+
+ 5, // 0x2F '/'
+ 0x00,0x00,0x08,0x08,0x10,0x10,0x10,0x20,0x20,0x20,0x40,0x40,0x40,0x80,
+
+ 8, // 0x30 '0'
+ 0x00,0x00,0x00,0x3C,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x3C,0x00,0x00,
+
+ 8, // 0x31 '1'
+ 0x00,0x00,0x00,0x08,0x38,0x08,0x08,0x08,0x08,0x08,0x08,0x3E,0x00,0x00,
+
+ 8, // 0x32 '2'
+ 0x00,0x00,0x00,0x3C,0x42,0x42,0x02,0x04,0x18,0x20,0x40,0x7E,0x00,0x00,
+
+ 8, // 0x33 '3'
+ 0x00,0x00,0x00,0x3C,0x42,0x02,0x02,0x1C,0x02,0x02,0x42,0x3C,0x00,0x00,
+
+ 8, // 0x34 '4'
+ 0x00,0x00,0x00,0x04,0x0C,0x14,0x24,0x44,0x7F,0x04,0x04,0x04,0x00,0x00,
+
+ 8, // 0x35 '5'
+ 0x00,0x00,0x00,0x7E,0x40,0x40,0x7C,0x02,0x02,0x02,0x42,0x3C,0x00,0x00,
+
+ 8, // 0x36 '6'
+ 0x00,0x00,0x00,0x1C,0x20,0x40,0x7C,0x42,0x42,0x42,0x42,0x3C,0x00,0x00,
+
+ 8, // 0x37 '7'
+ 0x00,0x00,0x00,0x7E,0x02,0x04,0x04,0x08,0x08,0x10,0x10,0x20,0x00,0x00,
+
+ 8, // 0x38 '8'
+ 0x00,0x00,0x00,0x3C,0x42,0x42,0x42,0x3C,0x42,0x42,0x42,0x3C,0x00,0x00,
+
+ 8, // 0x39 '9'
+ 0x00,0x00,0x00,0x3C,0x42,0x42,0x42,0x42,0x3E,0x02,0x04,0x38,0x00,0x00,
+
+ 5, // 0x3A ':'
+ 0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x00,0x00,0x00,0x20,0x20,0x00,0x00,
+
+ 5, // 0x3B ';'
+ 0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x00,0x00,0x00,0x20,0x20,0x20,0x40,
+
+ 9, // 0x3C '<'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x0C,0x00,0x30,0x00,0x40,0x00,0x30,0x00,0x0C,0x00,0x03,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x3D '='
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x3E '>'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x18,0x00,0x06,0x00,0x01,0x00,0x06,0x00,0x18,0x00,0x60,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x3F '?'
+ 0x00,0x00,0x00,0x38,0x44,0x04,0x04,0x08,0x10,0x10,0x00,0x10,0x00,0x00,
+
+ 12, // 0x40 '@'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x00,0x30,0xC0,0x27,0x40,0x49,0x20,0x49,0x20,0x49,0x20,0x49,0x20,0x27,0xC0,0x30,0x00,0x0F,0x00,0x00,0x00,
+
+ 8, // 0x41 'A'
+ 0x00,0x00,0x00,0x18,0x18,0x24,0x24,0x42,0x42,0x7E,0x81,0x81,0x00,0x00,
+
+ 8, // 0x42 'B'
+ 0x00,0x00,0x00,0x78,0x44,0x44,0x44,0x7C,0x42,0x42,0x42,0x7C,0x00,0x00,
+
+ 9, // 0x43 'C'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x21,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x21,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x44 'D'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x42,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x42,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x45 'E'
+ 0x00,0x00,0x00,0x7E,0x40,0x40,0x40,0x7E,0x40,0x40,0x40,0x7E,0x00,0x00,
+
+ 7, // 0x46 'F'
+ 0x00,0x00,0x00,0x7E,0x40,0x40,0x40,0x7C,0x40,0x40,0x40,0x40,0x00,0x00,
+
+ 9, // 0x47 'G'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x21,0x00,0x40,0x00,0x40,0x00,0x47,0x00,0x41,0x00,0x41,0x00,0x21,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x48 'H'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x7F,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x49 'I'
+ 0x00,0x00,0x00,0x70,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x00,0x00,
+
+ 5, // 0x4A 'J'
+ 0x00,0x00,0x00,0x70,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0xE0,0x00,0x00,
+
+ 8, // 0x4B 'K'
+ 0x00,0x00,0x00,0x42,0x44,0x48,0x50,0x60,0x50,0x48,0x44,0x42,0x00,0x00,
+
+ 7, // 0x4C 'L'
+ 0x00,0x00,0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x7E,0x00,0x00,
+
+ 10, // 0x4D 'M'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x61,0x80,0x61,0x80,0x52,0x80,0x52,0x80,0x52,0x80,0x4C,0x80,0x4C,0x80,0x40,0x80,0x40,0x80,0x00,0x00,0x00,0x00,
+
+ 9, // 0x4E 'N'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x61,0x00,0x61,0x00,0x51,0x00,0x51,0x00,0x49,0x00,0x45,0x00,0x45,0x00,0x43,0x00,0x43,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x4F 'O'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x21,0x00,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x21,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x50 'P'
+ 0x00,0x00,0x00,0x7C,0x42,0x42,0x42,0x42,0x7C,0x40,0x40,0x40,0x00,0x00,
+
+ 10, // 0x51 'Q'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x21,0x00,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x21,0x00,0x1E,0x00,0x02,0x00,0x01,0x80,
+
+ 8, // 0x52 'R'
+ 0x00,0x00,0x00,0x7C,0x42,0x42,0x42,0x7C,0x48,0x44,0x42,0x41,0x00,0x00,
+
+ 8, // 0x53 'S'
+ 0x00,0x00,0x00,0x3C,0x42,0x40,0x40,0x3C,0x02,0x02,0x42,0x3C,0x00,0x00,
+
+ 7, // 0x54 'T'
+ 0x00,0x00,0x00,0xFE,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x00,0x00,
+
+ 9, // 0x55 'U'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x22,0x00,0x1C,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x56 'V'
+ 0x00,0x00,0x00,0x81,0x81,0x42,0x42,0x42,0x24,0x24,0x18,0x18,0x00,0x00,
+
+ 13, // 0x57 'W'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x42,0x10,0x42,0x10,0x45,0x10,0x45,0x10,0x25,0x20,0x28,0xA0,0x28,0xA0,0x10,0x40,0x10,0x40,0x00,0x00,0x00,0x00,
+
+ 8, // 0x58 'X'
+ 0x00,0x00,0x00,0x42,0x42,0x24,0x18,0x18,0x18,0x24,0x42,0x42,0x00,0x00,
+
+ 7, // 0x59 'Y'
+ 0x00,0x00,0x00,0x82,0x44,0x44,0x28,0x10,0x10,0x10,0x10,0x10,0x00,0x00,
+
+ 8, // 0x5A 'Z'
+ 0x00,0x00,0x00,0x7E,0x02,0x04,0x08,0x10,0x10,0x20,0x40,0x7E,0x00,0x00,
+
+ 5, // 0x5B '['
+ 0x00,0x00,0x70,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x70,
+
+ 5, // 0x5C '\'
+ 0x00,0x00,0x80,0x80,0x40,0x40,0x40,0x20,0x20,0x10,0x10,0x10,0x08,0x08,
+
+ 5, // 0x5D ']'
+ 0x00,0x00,0x70,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x70,
+
+ 10, // 0x5E '^'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x00,0x12,0x00,0x21,0x00,0x40,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x5F '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,
+
+ 8, // 0x60 '`'
+ 0x00,0x00,0x20,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x61 'a'
+ 0x00,0x00,0x00,0x00,0x00,0x3C,0x02,0x02,0x3E,0x42,0x42,0x3E,0x00,0x00,
+
+ 8, // 0x62 'b'
+ 0x00,0x00,0x40,0x40,0x40,0x5C,0x62,0x42,0x42,0x42,0x42,0x7C,0x00,0x00,
+
+ 6, // 0x63 'c'
+ 0x00,0x00,0x00,0x00,0x00,0x38,0x44,0x40,0x40,0x40,0x44,0x38,0x00,0x00,
+
+ 8, // 0x64 'd'
+ 0x00,0x00,0x02,0x02,0x02,0x3E,0x42,0x42,0x42,0x42,0x46,0x3A,0x00,0x00,
+
+ 8, // 0x65 'e'
+ 0x00,0x00,0x00,0x00,0x00,0x3C,0x42,0x42,0x7E,0x40,0x42,0x3C,0x00,0x00,
+
+ 4, // 0x66 'f'
+ 0x00,0x00,0x30,0x40,0x40,0xF0,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x00,
+
+ 8, // 0x67 'g'
+ 0x00,0x00,0x00,0x00,0x00,0x3E,0x42,0x42,0x42,0x42,0x46,0x3A,0x02,0x3C,
+
+ 8, // 0x68 'h'
+ 0x00,0x00,0x40,0x40,0x40,0x5C,0x62,0x42,0x42,0x42,0x42,0x42,0x00,0x00,
+
+ 3, // 0x69 'i'
+ 0x00,0x00,0x40,0x00,0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x00,
+
+ 4, // 0x6A 'j'
+ 0x00,0x00,0x20,0x00,0x00,0x60,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0xC0,
+
+ 7, // 0x6B 'k'
+ 0x00,0x00,0x40,0x40,0x40,0x44,0x48,0x50,0x60,0x50,0x48,0x44,0x00,0x00,
+
+ 3, // 0x6C 'l'
+ 0x00,0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x00,
+
+ 11, // 0x6D 'm'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7B,0x80,0x44,0x40,0x44,0x40,0x44,0x40,0x44,0x40,0x44,0x40,0x44,0x40,0x00,0x00,0x00,0x00,
+
+ 8, // 0x6E 'n'
+ 0x00,0x00,0x00,0x00,0x00,0x5C,0x62,0x42,0x42,0x42,0x42,0x42,0x00,0x00,
+
+ 8, // 0x6F 'o'
+ 0x00,0x00,0x00,0x00,0x00,0x3C,0x42,0x42,0x42,0x42,0x42,0x3C,0x00,0x00,
+
+ 8, // 0x70 'p'
+ 0x00,0x00,0x00,0x00,0x00,0x5C,0x62,0x42,0x42,0x42,0x42,0x7C,0x40,0x40,
+
+ 8, // 0x71 'q'
+ 0x00,0x00,0x00,0x00,0x00,0x3E,0x42,0x42,0x42,0x42,0x46,0x3A,0x02,0x02,
+
+ 5, // 0x72 'r'
+ 0x00,0x00,0x00,0x00,0x00,0x58,0x60,0x40,0x40,0x40,0x40,0x40,0x00,0x00,
+
+ 7, // 0x73 's'
+ 0x00,0x00,0x00,0x00,0x00,0x3C,0x40,0x40,0x38,0x04,0x04,0x78,0x00,0x00,
+
+ 5, // 0x74 't'
+ 0x00,0x00,0x00,0x40,0x40,0xF8,0x40,0x40,0x40,0x40,0x40,0x38,0x00,0x00,
+
+ 8, // 0x75 'u'
+ 0x00,0x00,0x00,0x00,0x00,0x42,0x42,0x42,0x42,0x42,0x46,0x3A,0x00,0x00,
+
+ 7, // 0x76 'v'
+ 0x00,0x00,0x00,0x00,0x00,0x44,0x44,0x28,0x28,0x28,0x10,0x10,0x00,0x00,
+
+ 11, // 0x77 'w'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x44,0x40,0x44,0x40,0x2A,0x80,0x2A,0x80,0x2A,0x80,0x11,0x00,0x11,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x78 'x'
+ 0x00,0x00,0x00,0x00,0x00,0x44,0x44,0x28,0x10,0x28,0x44,0x44,0x00,0x00,
+
+ 7, // 0x79 'y'
+ 0x00,0x00,0x00,0x00,0x00,0x44,0x44,0x28,0x28,0x28,0x10,0x10,0x10,0x20,
+
+ 7, // 0x7A 'z'
+ 0x00,0x00,0x00,0x00,0x00,0x7C,0x04,0x08,0x10,0x20,0x40,0x7C,0x00,0x00,
+
+ 8, // 0x7B '{'
+ 0x00,0x00,0x0C,0x10,0x10,0x10,0x10,0x60,0x10,0x10,0x10,0x10,0x10,0x0C,
+
+ 5, // 0x7C '|'
+ 0x00,0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+
+ 8, // 0x7D '}'
+ 0x00,0x00,0x30,0x08,0x08,0x08,0x08,0x06,0x08,0x08,0x08,0x08,0x08,0x30,
+
+ 10, // 0x7E '~'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x80,0x4C,0x80,0x43,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 12, // 0x7F ''
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xE0,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x3F,0xE0,0x00,0x00,0x00,0x00,
+
+ 0
+ };
+
+ const int8u verdana14_bold[] =
+ {
+ 14, 3, 32, 128-32,
+ 0x00,0x00,0x0F,0x00,0x1E,0x00,0x2D,0x00,0x4A,0x00,0x67,0x00,0x84,0x00,0xA1,0x00,0xB0,0x00,
+ 0xBF,0x00,0xCE,0x00,0xEB,0x00,0x08,0x01,0x17,0x01,0x26,0x01,0x35,0x01,0x44,0x01,0x61,0x01,
+ 0x7E,0x01,0x9B,0x01,0xB8,0x01,0xD5,0x01,0xF2,0x01,0x0F,0x02,0x2C,0x02,0x49,0x02,0x66,0x02,
+ 0x75,0x02,0x84,0x02,0xA1,0x02,0xBE,0x02,0xDB,0x02,0xEA,0x02,0x07,0x03,0x24,0x03,0x41,0x03,
+ 0x5E,0x03,0x7B,0x03,0x8A,0x03,0x99,0x03,0xB6,0x03,0xD3,0x03,0xE2,0x03,0xF1,0x03,0x0E,0x04,
+ 0x1D,0x04,0x3A,0x04,0x57,0x04,0x74,0x04,0x91,0x04,0xAE,0x04,0xCB,0x04,0xE8,0x04,0xF7,0x04,
+ 0x14,0x05,0x31,0x05,0x4E,0x05,0x6B,0x05,0x88,0x05,0x97,0x05,0xA6,0x05,0xB5,0x05,0xC4,0x05,
+ 0xE1,0x05,0xFE,0x05,0x1B,0x06,0x2A,0x06,0x39,0x06,0x48,0x06,0x57,0x06,0x66,0x06,0x75,0x06,
+ 0x84,0x06,0x93,0x06,0xA2,0x06,0xB1,0x06,0xC0,0x06,0xCF,0x06,0xEC,0x06,0xFB,0x06,0x0A,0x07,
+ 0x19,0x07,0x28,0x07,0x37,0x07,0x46,0x07,0x55,0x07,0x64,0x07,0x73,0x07,0x90,0x07,0x9F,0x07,
+ 0xAE,0x07,0xBD,0x07,0xDA,0x07,0xE9,0x07,0x06,0x08,0x23,0x08,
+
+ 4, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x21 '!'
+ 0x00,0x00,0x00,0x60,0x60,0x60,0x60,0x60,0x60,0x00,0x60,0x60,0x00,0x00,
+
+ 7, // 0x22 '"'
+ 0x00,0x00,0x6C,0x6C,0x6C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x23 '#'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x09,0x00,0x09,0x00,0x3F,0x80,0x3F,0x80,0x12,0x00,0x7F,0x00,0x7F,0x00,0x24,0x00,0x24,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x24 '$'
+ 0x00,0x00,0x00,0x00,0x08,0x00,0x08,0x00,0x3E,0x00,0x69,0x00,0x68,0x00,0x7E,0x00,0x3F,0x00,0x0B,0x00,0x4B,0x00,0x3E,0x00,0x08,0x00,0x08,0x00,
+
+ 15, // 0x25 '%'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x40,0x6C,0x40,0x6C,0x80,0x6C,0xB8,0x6D,0x6C,0x3A,0x6C,0x02,0x6C,0x04,0x6C,0x04,0x38,0x00,0x00,0x00,0x00,
+
+ 10, // 0x26 '&'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x6C,0x00,0x6C,0x00,0x6C,0x00,0x39,0x80,0x6D,0x00,0x66,0x00,0x63,0x00,0x3D,0x80,0x00,0x00,0x00,0x00,
+
+ 4, // 0x27 '''
+ 0x00,0x00,0x60,0x60,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x28 '('
+ 0x00,0x00,0x18,0x30,0x30,0x60,0x60,0x60,0x60,0x60,0x60,0x30,0x30,0x18,
+
+ 7, // 0x29 ')'
+ 0x00,0x00,0x30,0x18,0x18,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x18,0x18,0x30,
+
+ 9, // 0x2A '*'
+ 0x00,0x00,0x00,0x00,0x08,0x00,0x2A,0x00,0x1C,0x00,0x1C,0x00,0x2A,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x2B '+'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x7F,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x2C ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x60,0x40,
+
+ 6, // 0x2D '-'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x2E '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x00,0x00,
+
+ 8, // 0x2F '/'
+ 0x00,0x00,0x06,0x06,0x0C,0x0C,0x0C,0x18,0x18,0x30,0x30,0x30,0x60,0x60,
+
+ 9, // 0x30 '0'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x31 '1'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x00,0x3C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x32 '2'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x63,0x00,0x03,0x00,0x03,0x00,0x06,0x00,0x0C,0x00,0x18,0x00,0x30,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x33 '3'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x63,0x00,0x03,0x00,0x03,0x00,0x1E,0x00,0x03,0x00,0x03,0x00,0x63,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x34 '4'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x0E,0x00,0x16,0x00,0x16,0x00,0x26,0x00,0x46,0x00,0x7F,0x00,0x06,0x00,0x06,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x35 '5'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x30,0x00,0x30,0x00,0x3E,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x63,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x36 '6'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x30,0x00,0x60,0x00,0x7E,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x37 '7'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x03,0x00,0x06,0x00,0x06,0x00,0x0C,0x00,0x0C,0x00,0x18,0x00,0x18,0x00,0x30,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x38 '8'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x3E,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x39 '9'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x3F,0x00,0x03,0x00,0x06,0x00,0x3C,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x3A ':'
+ 0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x00,0x00,0x00,0x60,0x60,0x00,0x00,
+
+ 5, // 0x3B ';'
+ 0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x00,0x00,0x00,0x60,0x60,0x60,0x40,
+
+ 10, // 0x3C '<'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x06,0x00,0x18,0x00,0x60,0x00,0x60,0x00,0x18,0x00,0x06,0x00,0x01,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x3D '='
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x3E '>'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x00,0x30,0x00,0x0C,0x00,0x03,0x00,0x03,0x00,0x0C,0x00,0x30,0x00,0x40,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x3F '?'
+ 0x00,0x00,0x00,0x38,0x4C,0x0C,0x18,0x30,0x30,0x00,0x30,0x30,0x00,0x00,
+
+ 12, // 0x40 '@'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x00,0x30,0xC0,0x2F,0x40,0x5B,0x20,0x5B,0x20,0x5B,0x20,0x5B,0x20,0x2F,0xC0,0x30,0x00,0x0F,0x00,0x00,0x00,
+
+ 9, // 0x41 'A'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x00,0x1C,0x00,0x36,0x00,0x36,0x00,0x36,0x00,0x36,0x00,0x7F,0x00,0x63,0x00,0x63,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x42 'B'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x66,0x00,0x66,0x00,0x66,0x00,0x7E,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x7E,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x43 'C'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x31,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x31,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x44 'D'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x00,0x63,0x00,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x63,0x00,0x7E,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x45 'E'
+ 0x00,0x00,0x00,0x7E,0x60,0x60,0x60,0x7E,0x60,0x60,0x60,0x7E,0x00,0x00,
+
+ 8, // 0x46 'F'
+ 0x00,0x00,0x00,0x7E,0x60,0x60,0x60,0x7E,0x60,0x60,0x60,0x60,0x00,0x00,
+
+ 10, // 0x47 'G'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x00,0x30,0x80,0x60,0x00,0x60,0x00,0x60,0x00,0x67,0x80,0x61,0x80,0x31,0x80,0x1F,0x80,0x00,0x00,0x00,0x00,
+
+ 10, // 0x48 'H'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x7F,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x00,0x00,0x00,0x00,
+
+ 6, // 0x49 'I'
+ 0x00,0x00,0x00,0x78,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x78,0x00,0x00,
+
+ 7, // 0x4A 'J'
+ 0x00,0x00,0x00,0x7C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0xF8,0x00,0x00,
+
+ 9, // 0x4B 'K'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x00,0x66,0x00,0x6C,0x00,0x78,0x00,0x70,0x00,0x78,0x00,0x6C,0x00,0x66,0x00,0x63,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x4C 'L'
+ 0x00,0x00,0x00,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x7F,0x00,0x00,
+
+ 11, // 0x4D 'M'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x60,0xC0,0x71,0xC0,0x71,0xC0,0x5A,0xC0,0x5A,0xC0,0x4C,0xC0,0x4C,0xC0,0x40,0xC0,0x40,0xC0,0x00,0x00,0x00,0x00,
+
+ 10, // 0x4E 'N'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x80,0x70,0x80,0x58,0x80,0x58,0x80,0x4C,0x80,0x46,0x80,0x46,0x80,0x43,0x80,0x41,0x80,0x00,0x00,0x00,0x00,
+
+ 11, // 0x4F 'O'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x00,0x31,0x80,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x31,0x80,0x1F,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x50 'P'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x7E,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x51 'Q'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x00,0x31,0x80,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x31,0x80,0x1F,0x00,0x06,0x00,0x03,0xC0,
+
+ 9, // 0x52 'R'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x7E,0x00,0x6C,0x00,0x66,0x00,0x63,0x00,0x61,0x80,0x00,0x00,0x00,0x00,
+
+ 9, // 0x53 'S'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x61,0x00,0x60,0x00,0x70,0x00,0x3E,0x00,0x07,0x00,0x03,0x00,0x43,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x54 'T'
+ 0x00,0x00,0x00,0xFF,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x00,0x00,
+
+ 10, // 0x55 'U'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x3F,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x56 'V'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x36,0x00,0x36,0x00,0x36,0x00,0x1C,0x00,0x1C,0x00,0x1C,0x00,0x00,0x00,0x00,0x00,
+
+ 14, // 0x57 'W'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x18,0x63,0x18,0x63,0x18,0x33,0x30,0x37,0xB0,0x34,0xB0,0x1C,0xE0,0x18,0x60,0x18,0x60,0x00,0x00,0x00,0x00,
+
+ 9, // 0x58 'X'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x00,0x63,0x00,0x36,0x00,0x1C,0x00,0x1C,0x00,0x1C,0x00,0x36,0x00,0x63,0x00,0x63,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x59 'Y'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x61,0x80,0x61,0x80,0x33,0x00,0x1E,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x5A 'Z'
+ 0x00,0x00,0x00,0x7E,0x0C,0x0C,0x18,0x18,0x30,0x30,0x60,0x7E,0x00,0x00,
+
+ 6, // 0x5B '['
+ 0x00,0x00,0x78,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x78,
+
+ 8, // 0x5C '\'
+ 0x00,0x00,0x60,0x60,0x30,0x30,0x30,0x18,0x18,0x0C,0x0C,0x0C,0x06,0x06,
+
+ 6, // 0x5D ']'
+ 0x00,0x00,0x78,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x78,
+
+ 10, // 0x5E '^'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x00,0x1E,0x00,0x33,0x00,0x61,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x5F '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x80,
+
+ 9, // 0x60 '`'
+ 0x00,0x00,0x00,0x00,0x30,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x61 'a'
+ 0x00,0x00,0x00,0x00,0x00,0x3C,0x06,0x3E,0x66,0x66,0x66,0x3E,0x00,0x00,
+
+ 8, // 0x62 'b'
+ 0x00,0x00,0x60,0x60,0x60,0x7C,0x66,0x66,0x66,0x66,0x66,0x7C,0x00,0x00,
+
+ 7, // 0x63 'c'
+ 0x00,0x00,0x00,0x00,0x00,0x3C,0x62,0x60,0x60,0x60,0x62,0x3C,0x00,0x00,
+
+ 8, // 0x64 'd'
+ 0x00,0x00,0x06,0x06,0x06,0x3E,0x66,0x66,0x66,0x66,0x66,0x3E,0x00,0x00,
+
+ 8, // 0x65 'e'
+ 0x00,0x00,0x00,0x00,0x00,0x3C,0x66,0x66,0x7E,0x60,0x62,0x3C,0x00,0x00,
+
+ 5, // 0x66 'f'
+ 0x00,0x00,0x38,0x60,0x60,0xF8,0x60,0x60,0x60,0x60,0x60,0x60,0x00,0x00,
+
+ 8, // 0x67 'g'
+ 0x00,0x00,0x00,0x00,0x00,0x3E,0x66,0x66,0x66,0x66,0x66,0x3E,0x06,0x3C,
+
+ 8, // 0x68 'h'
+ 0x00,0x00,0x60,0x60,0x60,0x7C,0x66,0x66,0x66,0x66,0x66,0x66,0x00,0x00,
+
+ 4, // 0x69 'i'
+ 0x00,0x00,0x60,0x60,0x00,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x00,0x00,
+
+ 5, // 0x6A 'j'
+ 0x00,0x00,0x30,0x30,0x00,0x70,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0xE0,
+
+ 8, // 0x6B 'k'
+ 0x00,0x00,0x60,0x60,0x60,0x66,0x6C,0x78,0x78,0x6C,0x66,0x63,0x00,0x00,
+
+ 4, // 0x6C 'l'
+ 0x00,0x00,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x00,0x00,
+
+ 12, // 0x6D 'm'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x6C,0xC0,0x77,0x60,0x66,0x60,0x66,0x60,0x66,0x60,0x66,0x60,0x66,0x60,0x00,0x00,0x00,0x00,
+
+ 8, // 0x6E 'n'
+ 0x00,0x00,0x00,0x00,0x00,0x7C,0x66,0x66,0x66,0x66,0x66,0x66,0x00,0x00,
+
+ 8, // 0x6F 'o'
+ 0x00,0x00,0x00,0x00,0x00,0x3C,0x66,0x66,0x66,0x66,0x66,0x3C,0x00,0x00,
+
+ 8, // 0x70 'p'
+ 0x00,0x00,0x00,0x00,0x00,0x7C,0x66,0x66,0x66,0x66,0x66,0x7C,0x60,0x60,
+
+ 8, // 0x71 'q'
+ 0x00,0x00,0x00,0x00,0x00,0x3E,0x66,0x66,0x66,0x66,0x66,0x3E,0x06,0x06,
+
+ 6, // 0x72 'r'
+ 0x00,0x00,0x00,0x00,0x00,0x6C,0x7C,0x60,0x60,0x60,0x60,0x60,0x00,0x00,
+
+ 7, // 0x73 's'
+ 0x00,0x00,0x00,0x00,0x00,0x3C,0x60,0x60,0x38,0x0C,0x0C,0x78,0x00,0x00,
+
+ 5, // 0x74 't'
+ 0x00,0x00,0x00,0x60,0x60,0xF8,0x60,0x60,0x60,0x60,0x60,0x38,0x00,0x00,
+
+ 8, // 0x75 'u'
+ 0x00,0x00,0x00,0x00,0x00,0x66,0x66,0x66,0x66,0x66,0x66,0x3E,0x00,0x00,
+
+ 8, // 0x76 'v'
+ 0x00,0x00,0x00,0x00,0x00,0x66,0x66,0x66,0x3C,0x3C,0x3C,0x18,0x00,0x00,
+
+ 12, // 0x77 'w'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x66,0x60,0x66,0x60,0x66,0x60,0x69,0x60,0x39,0xC0,0x30,0xC0,0x30,0xC0,0x00,0x00,0x00,0x00,
+
+ 8, // 0x78 'x'
+ 0x00,0x00,0x00,0x00,0x00,0x66,0x66,0x3C,0x18,0x3C,0x66,0x66,0x00,0x00,
+
+ 8, // 0x79 'y'
+ 0x00,0x00,0x00,0x00,0x00,0x66,0x66,0x66,0x3C,0x3C,0x3C,0x18,0x18,0x30,
+
+ 7, // 0x7A 'z'
+ 0x00,0x00,0x00,0x00,0x00,0x7C,0x0C,0x18,0x38,0x30,0x60,0x7C,0x00,0x00,
+
+ 9, // 0x7B '{'
+ 0x00,0x00,0x00,0x00,0x0E,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x70,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x0E,0x00,
+
+ 6, // 0x7C '|'
+ 0x00,0x00,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,
+
+ 9, // 0x7D '}'
+ 0x00,0x00,0x00,0x00,0x38,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x07,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x38,0x00,
+
+ 10, // 0x7E '~'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x80,0x48,0x80,0x44,0x80,0x43,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 12, // 0x7F ''
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xE0,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x3F,0xE0,0x00,0x00,0x00,0x00,
+
+ 0
+ };
+
+ const int8u verdana16[] =
+ {
+ 16, 4, 32, 128-32,
+ 0x00,0x00,0x11,0x00,0x22,0x00,0x33,0x00,0x54,0x00,0x65,0x00,0x86,0x00,0xA7,0x00,0xB8,0x00,
+ 0xC9,0x00,0xDA,0x00,0xFB,0x00,0x1C,0x01,0x2D,0x01,0x3E,0x01,0x4F,0x01,0x60,0x01,0x71,0x01,
+ 0x82,0x01,0x93,0x01,0xA4,0x01,0xB5,0x01,0xC6,0x01,0xD7,0x01,0xE8,0x01,0xF9,0x01,0x0A,0x02,
+ 0x1B,0x02,0x2C,0x02,0x4D,0x02,0x6E,0x02,0x8F,0x02,0xA0,0x02,0xC1,0x02,0xE2,0x02,0xF3,0x02,
+ 0x14,0x03,0x35,0x03,0x46,0x03,0x57,0x03,0x78,0x03,0x99,0x03,0xAA,0x03,0xBB,0x03,0xCC,0x03,
+ 0xDD,0x03,0xFE,0x03,0x1F,0x04,0x40,0x04,0x51,0x04,0x72,0x04,0x93,0x04,0xB4,0x04,0xD5,0x04,
+ 0xF6,0x04,0x17,0x05,0x38,0x05,0x59,0x05,0x7A,0x05,0x9B,0x05,0xAC,0x05,0xBD,0x05,0xCE,0x05,
+ 0xEF,0x05,0x00,0x06,0x11,0x06,0x22,0x06,0x33,0x06,0x44,0x06,0x55,0x06,0x66,0x06,0x77,0x06,
+ 0x88,0x06,0x99,0x06,0xAA,0x06,0xBB,0x06,0xCC,0x06,0xDD,0x06,0xFE,0x06,0x0F,0x07,0x20,0x07,
+ 0x31,0x07,0x42,0x07,0x53,0x07,0x64,0x07,0x75,0x07,0x86,0x07,0x97,0x07,0xB8,0x07,0xC9,0x07,
+ 0xDA,0x07,0xEB,0x07,0xFC,0x07,0x0D,0x08,0x1E,0x08,0x3F,0x08,
+
+ 5, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x21 '!'
+ 0x00,0x00,0x00,0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x00,0x20,0x20,0x00,0x00,0x00,
+
+ 5, // 0x22 '"'
+ 0x00,0x00,0x00,0x50,0x50,0x50,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x23 '#'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x09,0x00,0x09,0x00,0x3F,0x80,0x12,0x00,0x12,0x00,0x7F,0x00,0x24,0x00,0x24,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x24 '$'
+ 0x00,0x00,0x00,0x10,0x10,0x3E,0x50,0x50,0x30,0x1C,0x12,0x12,0x7C,0x10,0x10,0x00,
+
+ 13, // 0x25 '%'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x40,0x44,0x80,0x45,0x00,0x45,0x00,0x3A,0xE0,0x05,0x10,0x05,0x10,0x09,0x10,0x10,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x26 '&'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x44,0x00,0x44,0x00,0x44,0x00,0x38,0x80,0x45,0x00,0x42,0x00,0x46,0x00,0x39,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 3, // 0x27 '''
+ 0x00,0x00,0x00,0x40,0x40,0x40,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x28 '('
+ 0x00,0x00,0x00,0x08,0x10,0x20,0x20,0x40,0x40,0x40,0x40,0x40,0x20,0x20,0x10,0x08,
+
+ 6, // 0x29 ')'
+ 0x00,0x00,0x00,0x40,0x20,0x10,0x10,0x08,0x08,0x08,0x08,0x08,0x10,0x10,0x20,0x40,
+
+ 9, // 0x2A '*'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x2A,0x00,0x1C,0x00,0x2A,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x2B '+'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x7F,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x2C ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x20,0x40,0x00,
+
+ 7, // 0x2D '-'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x2E '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x00,0x00,0x00,
+
+ 6, // 0x2F '/'
+ 0x00,0x00,0x00,0x04,0x04,0x08,0x08,0x10,0x10,0x20,0x20,0x40,0x40,0x80,0x80,0x00,
+
+ 8, // 0x30 '0'
+ 0x00,0x00,0x00,0x00,0x3C,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x3C,0x00,0x00,0x00,
+
+ 8, // 0x31 '1'
+ 0x00,0x00,0x00,0x00,0x08,0x38,0x08,0x08,0x08,0x08,0x08,0x08,0x3E,0x00,0x00,0x00,
+
+ 8, // 0x32 '2'
+ 0x00,0x00,0x00,0x00,0x3C,0x42,0x42,0x02,0x04,0x18,0x20,0x40,0x7E,0x00,0x00,0x00,
+
+ 8, // 0x33 '3'
+ 0x00,0x00,0x00,0x00,0x3C,0x42,0x02,0x02,0x1C,0x02,0x02,0x42,0x3C,0x00,0x00,0x00,
+
+ 8, // 0x34 '4'
+ 0x00,0x00,0x00,0x00,0x04,0x0C,0x14,0x24,0x44,0x7F,0x04,0x04,0x04,0x00,0x00,0x00,
+
+ 8, // 0x35 '5'
+ 0x00,0x00,0x00,0x00,0x3E,0x20,0x20,0x20,0x3C,0x02,0x02,0x42,0x3C,0x00,0x00,0x00,
+
+ 8, // 0x36 '6'
+ 0x00,0x00,0x00,0x00,0x1C,0x20,0x40,0x7C,0x42,0x42,0x42,0x42,0x3C,0x00,0x00,0x00,
+
+ 8, // 0x37 '7'
+ 0x00,0x00,0x00,0x00,0x7E,0x02,0x04,0x04,0x08,0x08,0x10,0x10,0x10,0x00,0x00,0x00,
+
+ 8, // 0x38 '8'
+ 0x00,0x00,0x00,0x00,0x3C,0x42,0x42,0x42,0x3C,0x42,0x42,0x42,0x3C,0x00,0x00,0x00,
+
+ 8, // 0x39 '9'
+ 0x00,0x00,0x00,0x00,0x3C,0x42,0x42,0x42,0x42,0x3E,0x02,0x04,0x38,0x00,0x00,0x00,
+
+ 6, // 0x3A ':'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x00,0x00,0x00,0x20,0x20,0x00,0x00,0x00,
+
+ 6, // 0x3B ';'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x00,0x00,0x00,0x20,0x20,0x20,0x40,0x00,
+
+ 9, // 0x3C '<'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x0C,0x00,0x30,0x00,0x40,0x00,0x30,0x00,0x0C,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x3D '='
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x3E '>'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x18,0x00,0x06,0x00,0x01,0x00,0x06,0x00,0x18,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x3F '?'
+ 0x00,0x00,0x00,0x00,0x38,0x44,0x04,0x08,0x10,0x10,0x00,0x10,0x10,0x00,0x00,0x00,
+
+ 13, // 0x40 '@'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x80,0x10,0x40,0x27,0xA0,0x48,0x90,0x48,0x90,0x48,0x90,0x48,0x90,0x48,0x90,0x27,0xE0,0x10,0x00,0x0F,0x80,0x00,0x00,
+
+ 9, // 0x41 'A'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x08,0x00,0x14,0x00,0x14,0x00,0x22,0x00,0x22,0x00,0x3E,0x00,0x41,0x00,0x41,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x42 'B'
+ 0x00,0x00,0x00,0x00,0x78,0x44,0x44,0x44,0x7C,0x42,0x42,0x42,0x7C,0x00,0x00,0x00,
+
+ 9, // 0x43 'C'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x21,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x21,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x44 'D'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x42,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x42,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x45 'E'
+ 0x00,0x00,0x00,0x00,0x7E,0x40,0x40,0x40,0x7E,0x40,0x40,0x40,0x7E,0x00,0x00,0x00,
+
+ 8, // 0x46 'F'
+ 0x00,0x00,0x00,0x00,0x7E,0x40,0x40,0x40,0x7C,0x40,0x40,0x40,0x40,0x00,0x00,0x00,
+
+ 9, // 0x47 'G'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x21,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x47,0x00,0x41,0x00,0x21,0x00,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x48 'H'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x7F,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x49 'I'
+ 0x00,0x00,0x00,0x00,0x70,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x00,0x00,0x00,
+
+ 6, // 0x4A 'J'
+ 0x00,0x00,0x00,0x00,0x38,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0xF0,0x00,0x00,0x00,
+
+ 8, // 0x4B 'K'
+ 0x00,0x00,0x00,0x00,0x42,0x44,0x48,0x50,0x60,0x50,0x48,0x44,0x42,0x00,0x00,0x00,
+
+ 7, // 0x4C 'L'
+ 0x00,0x00,0x00,0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x7E,0x00,0x00,0x00,
+
+ 11, // 0x4D 'M'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0xC0,0x60,0xC0,0x51,0x40,0x51,0x40,0x4A,0x40,0x4A,0x40,0x44,0x40,0x44,0x40,0x40,0x40,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x4E 'N'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x61,0x00,0x61,0x00,0x51,0x00,0x51,0x00,0x49,0x00,0x45,0x00,0x45,0x00,0x43,0x00,0x43,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x4F 'O'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x21,0x00,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x21,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x50 'P'
+ 0x00,0x00,0x00,0x00,0x7C,0x42,0x42,0x42,0x42,0x7C,0x40,0x40,0x40,0x00,0x00,0x00,
+
+ 10, // 0x51 'Q'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x21,0x00,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x21,0x00,0x1E,0x00,0x02,0x00,0x01,0x80,0x00,0x00,
+
+ 9, // 0x52 'R'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x44,0x00,0x78,0x00,0x44,0x00,0x42,0x00,0x41,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x53 'S'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x41,0x00,0x40,0x00,0x40,0x00,0x3E,0x00,0x01,0x00,0x01,0x00,0x41,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x54 'T'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x55 'U'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x22,0x00,0x1C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x56 'V'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x22,0x00,0x22,0x00,0x14,0x00,0x14,0x00,0x08,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 13, // 0x57 'W'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x42,0x10,0x42,0x10,0x45,0x10,0x45,0x10,0x25,0x20,0x28,0xA0,0x28,0xA0,0x10,0x40,0x10,0x40,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x58 'X'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x00,0x41,0x00,0x22,0x00,0x14,0x00,0x08,0x00,0x14,0x00,0x22,0x00,0x41,0x00,0x41,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x59 'Y'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x00,0x22,0x00,0x22,0x00,0x14,0x00,0x14,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x5A 'Z'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x01,0x00,0x02,0x00,0x04,0x00,0x08,0x00,0x10,0x00,0x20,0x00,0x40,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x5B '['
+ 0x00,0x00,0x00,0x38,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x38,0x00,
+
+ 6, // 0x5C '\'
+ 0x00,0x00,0x00,0x80,0x80,0x40,0x40,0x20,0x20,0x10,0x10,0x08,0x08,0x04,0x04,0x00,
+
+ 6, // 0x5D ']'
+ 0x00,0x00,0x00,0x70,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x70,0x00,
+
+ 11, // 0x5E '^'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x0A,0x00,0x11,0x00,0x20,0x80,0x40,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x5F '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,
+
+ 8, // 0x60 '`'
+ 0x00,0x00,0x00,0x10,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x61 'a'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x02,0x02,0x3E,0x42,0x42,0x3E,0x00,0x00,0x00,
+
+ 8, // 0x62 'b'
+ 0x00,0x00,0x00,0x40,0x40,0x40,0x5C,0x62,0x42,0x42,0x42,0x42,0x7C,0x00,0x00,0x00,
+
+ 8, // 0x63 'c'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x42,0x40,0x40,0x40,0x42,0x3C,0x00,0x00,0x00,
+
+ 8, // 0x64 'd'
+ 0x00,0x00,0x00,0x02,0x02,0x02,0x3E,0x42,0x42,0x42,0x42,0x46,0x3A,0x00,0x00,0x00,
+
+ 8, // 0x65 'e'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x42,0x42,0x7E,0x40,0x42,0x3C,0x00,0x00,0x00,
+
+ 6, // 0x66 'f'
+ 0x00,0x00,0x00,0x1C,0x20,0x20,0x78,0x20,0x20,0x20,0x20,0x20,0x20,0x00,0x00,0x00,
+
+ 8, // 0x67 'g'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x42,0x42,0x42,0x42,0x46,0x3A,0x02,0x02,0x3C,
+
+ 8, // 0x68 'h'
+ 0x00,0x00,0x00,0x40,0x40,0x40,0x5C,0x62,0x42,0x42,0x42,0x42,0x42,0x00,0x00,0x00,
+
+ 3, // 0x69 'i'
+ 0x00,0x00,0x00,0x40,0x00,0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x00,0x00,
+
+ 4, // 0x6A 'j'
+ 0x00,0x00,0x00,0x20,0x00,0x00,0x60,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0xC0,
+
+ 7, // 0x6B 'k'
+ 0x00,0x00,0x00,0x40,0x40,0x40,0x44,0x48,0x50,0x60,0x50,0x48,0x44,0x00,0x00,0x00,
+
+ 3, // 0x6C 'l'
+ 0x00,0x00,0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x00,0x00,
+
+ 11, // 0x6D 'm'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x59,0x80,0x66,0x40,0x44,0x40,0x44,0x40,0x44,0x40,0x44,0x40,0x44,0x40,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x6E 'n'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x5C,0x62,0x42,0x42,0x42,0x42,0x42,0x00,0x00,0x00,
+
+ 8, // 0x6F 'o'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x42,0x42,0x42,0x42,0x42,0x3C,0x00,0x00,0x00,
+
+ 8, // 0x70 'p'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x5C,0x62,0x42,0x42,0x42,0x42,0x7C,0x40,0x40,0x40,
+
+ 8, // 0x71 'q'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x42,0x42,0x42,0x42,0x46,0x3A,0x02,0x02,0x02,
+
+ 5, // 0x72 'r'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x58,0x60,0x40,0x40,0x40,0x40,0x40,0x00,0x00,0x00,
+
+ 7, // 0x73 's'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x40,0x40,0x38,0x04,0x04,0x78,0x00,0x00,0x00,
+
+ 6, // 0x74 't'
+ 0x00,0x00,0x00,0x00,0x20,0x20,0x78,0x20,0x20,0x20,0x20,0x20,0x18,0x00,0x00,0x00,
+
+ 8, // 0x75 'u'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x42,0x42,0x42,0x42,0x42,0x46,0x3A,0x00,0x00,0x00,
+
+ 8, // 0x76 'v'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x42,0x42,0x24,0x24,0x24,0x18,0x18,0x00,0x00,0x00,
+
+ 11, // 0x77 'w'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x44,0x40,0x44,0x40,0x2A,0x80,0x2A,0x80,0x2A,0x80,0x11,0x00,0x11,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x78 'x'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x44,0x44,0x28,0x10,0x28,0x44,0x44,0x00,0x00,0x00,
+
+ 8, // 0x79 'y'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x42,0x42,0x24,0x24,0x24,0x18,0x18,0x10,0x10,0x20,
+
+ 7, // 0x7A 'z'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x04,0x08,0x10,0x20,0x40,0x7C,0x00,0x00,0x00,
+
+ 8, // 0x7B '{'
+ 0x00,0x00,0x00,0x0C,0x10,0x10,0x10,0x10,0x60,0x10,0x10,0x10,0x10,0x10,0x0C,0x00,
+
+ 7, // 0x7C '|'
+ 0x00,0x00,0x00,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x00,
+
+ 8, // 0x7D '}'
+ 0x00,0x00,0x00,0x30,0x08,0x08,0x08,0x08,0x06,0x08,0x08,0x08,0x08,0x08,0x30,0x00,
+
+ 11, // 0x7E '~'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x80,0x4C,0x80,0x43,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 13, // 0x7F ''
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xF0,0x20,0x10,0x20,0x10,0x20,0x10,0x20,0x10,0x20,0x10,0x20,0x10,0x20,0x10,0x20,0x10,0x3F,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 0
+ };
+
+ const int8u verdana16_bold[] =
+ {
+ 16, 4, 32, 128-32,
+ 0x00,0x00,0x11,0x00,0x22,0x00,0x33,0x00,0x54,0x00,0x75,0x00,0xA6,0x00,0xC7,0x00,0xD8,0x00,
+ 0xE9,0x00,0xFA,0x00,0x1B,0x01,0x3C,0x01,0x4D,0x01,0x5E,0x01,0x6F,0x01,0x90,0x01,0xB1,0x01,
+ 0xD2,0x01,0xF3,0x01,0x14,0x02,0x35,0x02,0x56,0x02,0x77,0x02,0x98,0x02,0xB9,0x02,0xDA,0x02,
+ 0xEB,0x02,0xFC,0x02,0x1D,0x03,0x3E,0x03,0x5F,0x03,0x70,0x03,0x91,0x03,0xB2,0x03,0xD3,0x03,
+ 0xF4,0x03,0x15,0x04,0x36,0x04,0x57,0x04,0x78,0x04,0x99,0x04,0xAA,0x04,0xBB,0x04,0xDC,0x04,
+ 0xED,0x04,0x0E,0x05,0x2F,0x05,0x50,0x05,0x71,0x05,0x92,0x05,0xB3,0x05,0xD4,0x05,0xE5,0x05,
+ 0x06,0x06,0x27,0x06,0x48,0x06,0x69,0x06,0x8A,0x06,0xAB,0x06,0xBC,0x06,0xDD,0x06,0xEE,0x06,
+ 0x0F,0x07,0x30,0x07,0x51,0x07,0x72,0x07,0x93,0x07,0xA4,0x07,0xC5,0x07,0xE6,0x07,0xF7,0x07,
+ 0x18,0x08,0x39,0x08,0x4A,0x08,0x5B,0x08,0x6C,0x08,0x7D,0x08,0x9E,0x08,0xBF,0x08,0xE0,0x08,
+ 0x01,0x09,0x22,0x09,0x33,0x09,0x44,0x09,0x55,0x09,0x76,0x09,0x97,0x09,0xB8,0x09,0xD9,0x09,
+ 0xFA,0x09,0x0B,0x0A,0x2C,0x0A,0x3D,0x0A,0x5E,0x0A,0x7F,0x0A,
+
+ 4, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x21 '!'
+ 0x00,0x00,0x00,0x00,0x30,0x30,0x30,0x30,0x30,0x30,0x00,0x30,0x30,0x00,0x00,0x00,
+
+ 7, // 0x22 '"'
+ 0x00,0x00,0x00,0x6C,0x6C,0x6C,0x6C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x23 '#'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x09,0x00,0x09,0x00,0x3F,0x80,0x3F,0x80,0x12,0x00,0x7F,0x00,0x7F,0x00,0x24,0x00,0x24,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x24 '$'
+ 0x00,0x00,0x00,0x00,0x08,0x00,0x08,0x00,0x3E,0x00,0x69,0x00,0x68,0x00,0x78,0x00,0x3E,0x00,0x0F,0x00,0x0B,0x00,0x4B,0x00,0x3E,0x00,0x08,0x00,0x08,0x00,0x00,0x00,
+
+ 17, // 0x25 '%'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x20,0x00,0x66,0x20,0x00,0x66,0x40,0x00,0x66,0x5E,0x00,0x66,0xB3,0x00,0x3D,0x33,0x00,0x01,0x33,0x00,0x02,0x33,0x00,0x02,0x1E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x26 '&'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x00,0x66,0x00,0x66,0x00,0x66,0xC0,0x3C,0xC0,0x66,0x80,0x63,0x00,0x63,0x80,0x3C,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x27 '''
+ 0x00,0x00,0x00,0x60,0x60,0x60,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x28 '('
+ 0x00,0x00,0x00,0x0C,0x18,0x30,0x30,0x60,0x60,0x60,0x60,0x60,0x30,0x30,0x18,0x0C,
+
+ 7, // 0x29 ')'
+ 0x00,0x00,0x00,0x60,0x30,0x18,0x18,0x0C,0x0C,0x0C,0x0C,0x0C,0x18,0x18,0x30,0x60,
+
+ 9, // 0x2A '*'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x49,0x00,0x2A,0x00,0x1C,0x00,0x2A,0x00,0x49,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x2B '+'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x3F,0x80,0x04,0x00,0x04,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x2C ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x60,0x60,0xC0,0xC0,
+
+ 7, // 0x2D '-'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x2E '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,
+
+ 9, // 0x2F '/'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x03,0x00,0x06,0x00,0x06,0x00,0x0C,0x00,0x0C,0x00,0x18,0x00,0x18,0x00,0x30,0x00,0x30,0x00,0x60,0x00,0x60,0x00,0x00,0x00,
+
+ 9, // 0x30 '0'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x31 '1'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x00,0x3C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x32 '2'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x63,0x00,0x63,0x00,0x03,0x00,0x06,0x00,0x0C,0x00,0x18,0x00,0x30,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x33 '3'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x63,0x00,0x63,0x00,0x03,0x00,0x0E,0x00,0x03,0x00,0x63,0x00,0x63,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x34 '4'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x0E,0x00,0x16,0x00,0x26,0x00,0x46,0x00,0x7F,0x80,0x06,0x00,0x06,0x00,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x35 '5'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x30,0x00,0x30,0x00,0x3E,0x00,0x03,0x00,0x03,0x00,0x63,0x00,0x63,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x36 '6'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x30,0x00,0x60,0x00,0x7E,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x37 '7'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x03,0x00,0x03,0x00,0x06,0x00,0x06,0x00,0x0C,0x00,0x0C,0x00,0x18,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x38 '8'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x3E,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x39 '9'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x3F,0x00,0x03,0x00,0x06,0x00,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x3A ':'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,
+
+ 5, // 0x3B ';'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,0x38,0x30,0x30,0x60,0x60,
+
+ 11, // 0x3C '<'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x03,0x00,0x0C,0x00,0x30,0x00,0x40,0x00,0x30,0x00,0x0C,0x00,0x03,0x00,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x3D '='
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x80,0x00,0x00,0x00,0x00,0x3F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x3E '>'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x18,0x00,0x06,0x00,0x01,0x80,0x00,0x40,0x01,0x80,0x06,0x00,0x18,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x3F '?'
+ 0x00,0x00,0x00,0x00,0x3C,0x66,0x06,0x0C,0x18,0x18,0x00,0x18,0x18,0x00,0x00,0x00,
+
+ 13, // 0x40 '@'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x80,0x30,0x60,0x27,0xA0,0x4D,0x90,0x4D,0x90,0x4D,0x90,0x4D,0x90,0x27,0xE0,0x30,0x00,0x0F,0x80,0x00,0x00,0x00,0x00,
+
+ 10, // 0x41 'A'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x00,0x0C,0x00,0x1E,0x00,0x1E,0x00,0x33,0x00,0x33,0x00,0x7F,0x80,0x61,0x80,0x61,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x42 'B'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x7F,0x00,0x61,0x80,0x61,0x80,0x61,0x80,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x43 'C'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x00,0x31,0x80,0x61,0x80,0x60,0x00,0x60,0x00,0x60,0x00,0x61,0x80,0x31,0x80,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x44 'D'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x00,0x63,0x00,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x63,0x00,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x45 'E'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x7F,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x46 'F'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x7F,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x47 'G'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x00,0x31,0x80,0x61,0x80,0x60,0x00,0x60,0x00,0x63,0x80,0x61,0x80,0x31,0x80,0x1F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x48 'H'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x7F,0xC0,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x49 'I'
+ 0x00,0x00,0x00,0x00,0x78,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x78,0x00,0x00,0x00,
+
+ 7, // 0x4A 'J'
+ 0x00,0x00,0x00,0x00,0x7C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0xF8,0x00,0x00,0x00,
+
+ 9, // 0x4B 'K'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x00,0x66,0x00,0x6C,0x00,0x78,0x00,0x78,0x00,0x6C,0x00,0x66,0x00,0x63,0x00,0x61,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x4C 'L'
+ 0x00,0x00,0x00,0x00,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x7F,0x00,0x00,0x00,
+
+ 12, // 0x4D 'M'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0xE0,0x70,0xE0,0x59,0x60,0x59,0x60,0x4E,0x60,0x4E,0x60,0x44,0x60,0x44,0x60,0x40,0x60,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x4E 'N'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x80,0x70,0x80,0x58,0x80,0x58,0x80,0x4C,0x80,0x46,0x80,0x46,0x80,0x43,0x80,0x43,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x4F 'O'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x00,0x31,0x80,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x31,0x80,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x50 'P'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x7E,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x51 'Q'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x00,0x31,0x80,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x31,0x80,0x1F,0x00,0x03,0x00,0x01,0xC0,0x00,0x00,
+
+ 9, // 0x52 'R'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x7E,0x00,0x6C,0x00,0x66,0x00,0x63,0x00,0x61,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x53 'S'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x63,0x00,0x63,0x00,0x70,0x00,0x3E,0x00,0x07,0x00,0x63,0x00,0x63,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x54 'T'
+ 0x00,0x00,0x00,0x00,0xFF,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x00,0x00,0x00,
+
+ 10, // 0x55 'U'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x56 'V'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x61,0x80,0x61,0x80,0x61,0x80,0x33,0x00,0x33,0x00,0x1E,0x00,0x1E,0x00,0x0C,0x00,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 14, // 0x57 'W'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x18,0x63,0x18,0x63,0x18,0x33,0x30,0x37,0xB0,0x34,0xB0,0x1C,0xE0,0x18,0x60,0x18,0x60,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x58 'X'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x61,0x80,0x33,0x00,0x33,0x00,0x1E,0x00,0x0C,0x00,0x1E,0x00,0x33,0x00,0x33,0x00,0x61,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x59 'Y'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x61,0x80,0x61,0x80,0x33,0x00,0x1E,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x5A 'Z'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x06,0x00,0x0C,0x00,0x0C,0x00,0x18,0x00,0x18,0x00,0x30,0x00,0x30,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x5B '['
+ 0x00,0x00,0x00,0x78,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x78,0x00,
+
+ 9, // 0x5C '\'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x60,0x00,0x30,0x00,0x30,0x00,0x18,0x00,0x18,0x00,0x0C,0x00,0x0C,0x00,0x06,0x00,0x06,0x00,0x03,0x00,0x03,0x00,0x00,0x00,
+
+ 6, // 0x5D ']'
+ 0x00,0x00,0x00,0x78,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x78,0x00,
+
+ 10, // 0x5E '^'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x00,0x1E,0x00,0x33,0x00,0x61,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x5F '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x80,0x00,0x00,
+
+ 9, // 0x60 '`'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x61 'a'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x03,0x00,0x3F,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x62 'b'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x6E,0x00,0x73,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x63 'c'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x63,0x60,0x60,0x60,0x63,0x3E,0x00,0x00,0x00,
+
+ 9, // 0x64 'd'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x03,0x00,0x03,0x00,0x3F,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x67,0x00,0x3B,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x65 'e'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x63,0x00,0x63,0x00,0x7F,0x00,0x60,0x00,0x63,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x66 'f'
+ 0x00,0x00,0x00,0x38,0x60,0x60,0xF8,0x60,0x60,0x60,0x60,0x60,0x60,0x00,0x00,0x00,
+
+ 9, // 0x67 'g'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x67,0x00,0x3B,0x00,0x03,0x00,0x03,0x00,0x3E,0x00,
+
+ 9, // 0x68 'h'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x6E,0x00,0x73,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x69 'i'
+ 0x00,0x00,0x00,0x60,0x60,0x00,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x00,0x00,0x00,
+
+ 5, // 0x6A 'j'
+ 0x00,0x00,0x00,0x30,0x30,0x00,0x70,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0xE0,
+
+ 8, // 0x6B 'k'
+ 0x00,0x00,0x00,0x60,0x60,0x60,0x66,0x6C,0x78,0x78,0x6C,0x66,0x63,0x00,0x00,0x00,
+
+ 4, // 0x6C 'l'
+ 0x00,0x00,0x00,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x00,0x00,0x00,
+
+ 14, // 0x6D 'm'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x6E,0x70,0x73,0x98,0x63,0x18,0x63,0x18,0x63,0x18,0x63,0x18,0x63,0x18,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x6E 'n'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x6E,0x00,0x73,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x6F 'o'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x70 'p'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x6E,0x00,0x73,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x7E,0x00,0x60,0x00,0x60,0x00,0x60,0x00,
+
+ 9, // 0x71 'q'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x67,0x00,0x3B,0x00,0x03,0x00,0x03,0x00,0x03,0x00,
+
+ 6, // 0x72 'r'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x6C,0x7C,0x60,0x60,0x60,0x60,0x60,0x00,0x00,0x00,
+
+ 8, // 0x73 's'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x60,0x70,0x3C,0x0E,0x06,0x7C,0x00,0x00,0x00,
+
+ 6, // 0x74 't'
+ 0x00,0x00,0x00,0x00,0x60,0x60,0xF8,0x60,0x60,0x60,0x60,0x60,0x38,0x00,0x00,0x00,
+
+ 9, // 0x75 'u'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x67,0x00,0x3B,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x76 'v'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x36,0x00,0x36,0x00,0x1C,0x00,0x1C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 12, // 0x77 'w'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x66,0x60,0x66,0x60,0x66,0x60,0x69,0x60,0x39,0xC0,0x30,0xC0,0x30,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x78 'x'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x00,0x63,0x00,0x36,0x00,0x1C,0x00,0x36,0x00,0x63,0x00,0x63,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x79 'y'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x36,0x00,0x36,0x00,0x1C,0x00,0x1C,0x00,0x0C,0x00,0x18,0x00,0x18,0x00,
+
+ 8, // 0x7A 'z'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x06,0x0C,0x18,0x30,0x60,0x7E,0x00,0x00,0x00,
+
+ 9, // 0x7B '{'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x18,0x00,0x70,0x00,0x18,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x07,0x00,0x00,0x00,
+
+ 8, // 0x7C '|'
+ 0x00,0x00,0x00,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x00,
+
+ 9, // 0x7D '}'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x0C,0x00,0x07,0x00,0x0C,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x18,0x00,0x70,0x00,0x00,0x00,
+
+ 11, // 0x7E '~'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x40,0x44,0x40,0x44,0x40,0x43,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 13, // 0x7F ''
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xF0,0x20,0x10,0x20,0x10,0x20,0x10,0x20,0x10,0x20,0x10,0x20,0x10,0x20,0x10,0x20,0x10,0x3F,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 0
+ };
+
+ const int8u verdana17[] =
+ {
+ 17, 4, 32, 128-32,
+ 0x00,0x00,0x12,0x00,0x24,0x00,0x36,0x00,0x59,0x00,0x7C,0x00,0x9F,0x00,0xC2,0x00,0xD4,0x00,
+ 0xE6,0x00,0xF8,0x00,0x1B,0x01,0x3E,0x01,0x50,0x01,0x62,0x01,0x74,0x01,0x86,0x01,0xA9,0x01,
+ 0xCC,0x01,0xEF,0x01,0x12,0x02,0x35,0x02,0x58,0x02,0x7B,0x02,0x9E,0x02,0xC1,0x02,0xE4,0x02,
+ 0xF6,0x02,0x08,0x03,0x2B,0x03,0x4E,0x03,0x71,0x03,0x83,0x03,0xA6,0x03,0xC9,0x03,0xEC,0x03,
+ 0x0F,0x04,0x32,0x04,0x55,0x04,0x67,0x04,0x8A,0x04,0xAD,0x04,0xBF,0x04,0xD1,0x04,0xF4,0x04,
+ 0x06,0x05,0x29,0x05,0x4C,0x05,0x6F,0x05,0x81,0x05,0xA4,0x05,0xC7,0x05,0xEA,0x05,0x0D,0x06,
+ 0x30,0x06,0x53,0x06,0x76,0x06,0x99,0x06,0xBC,0x06,0xDF,0x06,0xF1,0x06,0x03,0x07,0x15,0x07,
+ 0x38,0x07,0x5B,0x07,0x7E,0x07,0x90,0x07,0xB3,0x07,0xC5,0x07,0xE8,0x07,0xFA,0x07,0x0C,0x08,
+ 0x2F,0x08,0x52,0x08,0x64,0x08,0x76,0x08,0x88,0x08,0x9A,0x08,0xBD,0x08,0xE0,0x08,0x03,0x09,
+ 0x26,0x09,0x49,0x09,0x5B,0x09,0x6D,0x09,0x7F,0x09,0xA2,0x09,0xB4,0x09,0xD7,0x09,0xFA,0x09,
+ 0x0C,0x0A,0x1E,0x0A,0x41,0x0A,0x53,0x0A,0x76,0x0A,0x99,0x0A,
+
+ 5, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x21 '!'
+ 0x00,0x00,0x00,0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00,0x20,0x20,0x00,0x00,0x00,
+
+ 6, // 0x22 '"'
+ 0x00,0x00,0x00,0x48,0x48,0x48,0x48,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x23 '#'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x80,0x04,0x80,0x09,0x00,0x3F,0xC0,0x09,0x00,0x12,0x00,0x7F,0x80,0x12,0x00,0x24,0x00,0x24,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x24 '$'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x08,0x00,0x3E,0x00,0x49,0x00,0x48,0x00,0x48,0x00,0x3E,0x00,0x09,0x00,0x09,0x00,0x49,0x00,0x3E,0x00,0x08,0x00,0x08,0x00,0x00,0x00,
+
+ 15, // 0x25 '%'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x20,0x44,0x40,0x44,0x80,0x44,0x80,0x45,0x38,0x39,0x44,0x02,0x44,0x04,0x44,0x04,0x44,0x08,0x38,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x26 '&'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x00,0x42,0x00,0x42,0x00,0x44,0x00,0x38,0x80,0x44,0x80,0x42,0x80,0x41,0x00,0x22,0x80,0x1C,0x40,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x27 '''
+ 0x00,0x00,0x00,0x40,0x40,0x40,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x28 '('
+ 0x00,0x00,0x00,0x08,0x10,0x20,0x20,0x40,0x40,0x40,0x40,0x40,0x40,0x20,0x20,0x10,0x08,
+
+ 6, // 0x29 ')'
+ 0x00,0x00,0x00,0x40,0x20,0x10,0x10,0x08,0x08,0x08,0x08,0x08,0x08,0x10,0x10,0x20,0x40,
+
+ 9, // 0x2A '*'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x49,0x00,0x2A,0x00,0x1C,0x00,0x2A,0x00,0x49,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x2B '+'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x7F,0xC0,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x2C ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x20,0x40,0x00,
+
+ 7, // 0x2D '-'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x2E '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x00,0x00,0x00,
+
+ 6, // 0x2F '/'
+ 0x00,0x00,0x00,0x04,0x08,0x08,0x08,0x10,0x10,0x20,0x20,0x20,0x40,0x40,0x80,0x80,0x00,
+
+ 9, // 0x30 '0'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x00,0x22,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x22,0x00,0x1C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x31 '1'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x38,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x32 '2'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x41,0x00,0x01,0x00,0x01,0x00,0x02,0x00,0x0C,0x00,0x10,0x00,0x20,0x00,0x40,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x33 '3'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x41,0x00,0x01,0x00,0x02,0x00,0x1C,0x00,0x02,0x00,0x01,0x00,0x01,0x00,0x42,0x00,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x34 '4'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x06,0x00,0x0A,0x00,0x12,0x00,0x22,0x00,0x42,0x00,0x7F,0x80,0x02,0x00,0x02,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x35 '5'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x7C,0x00,0x02,0x00,0x01,0x00,0x01,0x00,0x42,0x00,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x36 '6'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0E,0x00,0x30,0x00,0x20,0x00,0x40,0x00,0x7C,0x00,0x42,0x00,0x41,0x00,0x41,0x00,0x22,0x00,0x1C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x37 '7'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x01,0x00,0x02,0x00,0x02,0x00,0x04,0x00,0x04,0x00,0x08,0x00,0x10,0x00,0x10,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x38 '8'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x3E,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x39 '9'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x00,0x22,0x00,0x41,0x00,0x41,0x00,0x21,0x00,0x1F,0x00,0x01,0x00,0x02,0x00,0x06,0x00,0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x3A ':'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x00,0x00,0x00,0x00,0x20,0x20,0x00,0x00,0x00,
+
+ 6, // 0x3B ';'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x00,0x00,0x00,0x00,0x20,0x20,0x20,0x40,0x00,
+
+ 11, // 0x3C '<'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x80,0x06,0x00,0x18,0x00,0x60,0x00,0x60,0x00,0x18,0x00,0x06,0x00,0x01,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x3D '='
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xC0,0x00,0x00,0x00,0x00,0x3F,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x3E '>'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x0C,0x00,0x03,0x00,0x00,0xC0,0x00,0xC0,0x03,0x00,0x0C,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x3F '?'
+ 0x00,0x00,0x00,0x00,0x3C,0x42,0x02,0x02,0x0C,0x10,0x10,0x00,0x10,0x10,0x00,0x00,0x00,
+
+ 14, // 0x40 '@'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xC0,0x18,0x20,0x20,0x10,0x27,0xC8,0x48,0x48,0x48,0x48,0x48,0x48,0x48,0x48,0x27,0xF0,0x20,0x00,0x18,0x00,0x07,0xC0,0x00,0x00,
+
+ 10, // 0x41 'A'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x00,0x12,0x00,0x12,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x7F,0x80,0x40,0x80,0x80,0x40,0x80,0x40,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x42 'B'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x7E,0x00,0x41,0x00,0x40,0x80,0x40,0x80,0x41,0x00,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x43 'C'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x00,0x30,0x80,0x20,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x20,0x00,0x30,0x80,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x44 'D'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x00,0x41,0x80,0x40,0x80,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x80,0x41,0x80,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x45 'E'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x7F,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x46 'F'
+ 0x00,0x00,0x00,0x00,0x7F,0x40,0x40,0x40,0x7E,0x40,0x40,0x40,0x40,0x40,0x00,0x00,0x00,
+
+ 11, // 0x47 'G'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x00,0x30,0xC0,0x20,0x40,0x40,0x00,0x40,0x00,0x43,0xC0,0x40,0x40,0x20,0x40,0x30,0x40,0x0F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x48 'H'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x7F,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x49 'I'
+ 0x00,0x00,0x00,0x00,0x70,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x00,0x00,0x00,
+
+ 6, // 0x4A 'J'
+ 0x00,0x00,0x00,0x00,0x38,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0xF0,0x00,0x00,0x00,
+
+ 10, // 0x4B 'K'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x00,0x42,0x00,0x44,0x00,0x48,0x00,0x50,0x00,0x68,0x00,0x44,0x00,0x42,0x00,0x41,0x00,0x40,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x4C 'L'
+ 0x00,0x00,0x00,0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x7F,0x00,0x00,0x00,
+
+ 11, // 0x4D 'M'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0xC0,0x60,0xC0,0x51,0x40,0x51,0x40,0x4A,0x40,0x4A,0x40,0x44,0x40,0x44,0x40,0x40,0x40,0x40,0x40,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x4E 'N'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x80,0x60,0x80,0x50,0x80,0x48,0x80,0x48,0x80,0x44,0x80,0x44,0x80,0x42,0x80,0x41,0x80,0x41,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x4F 'O'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0E,0x00,0x31,0x80,0x20,0x80,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x20,0x80,0x31,0x80,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x50 'P'
+ 0x00,0x00,0x00,0x00,0x7C,0x42,0x41,0x41,0x42,0x7C,0x40,0x40,0x40,0x40,0x00,0x00,0x00,
+
+ 11, // 0x51 'Q'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0E,0x00,0x31,0x80,0x20,0x80,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x20,0x80,0x31,0x80,0x0E,0x00,0x02,0x00,0x02,0x00,0x01,0xC0,
+
+ 10, // 0x52 'R'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x44,0x00,0x78,0x00,0x44,0x00,0x42,0x00,0x41,0x00,0x40,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x53 'S'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x00,0x20,0x80,0x40,0x00,0x40,0x00,0x38,0x00,0x07,0x00,0x00,0x80,0x40,0x80,0x21,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x54 'T'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x80,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x55 'U'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x21,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x56 'V'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x40,0x80,0x40,0x40,0x80,0x40,0x80,0x21,0x00,0x21,0x00,0x21,0x00,0x12,0x00,0x12,0x00,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 15, // 0x57 'W'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x04,0x41,0x04,0x22,0x88,0x22,0x88,0x22,0x88,0x14,0x50,0x14,0x50,0x14,0x50,0x08,0x20,0x08,0x20,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x58 'X'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x80,0x21,0x00,0x12,0x00,0x12,0x00,0x0C,0x00,0x0C,0x00,0x12,0x00,0x12,0x00,0x21,0x00,0x40,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x59 'Y'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x80,0x41,0x00,0x22,0x00,0x22,0x00,0x14,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x5A 'Z'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x80,0x00,0x80,0x01,0x00,0x02,0x00,0x04,0x00,0x08,0x00,0x10,0x00,0x20,0x00,0x40,0x00,0x7F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x5B '['
+ 0x00,0x00,0x00,0x3C,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x3C,
+
+ 6, // 0x5C '\'
+ 0x00,0x00,0x00,0x80,0x40,0x40,0x40,0x20,0x20,0x10,0x10,0x10,0x08,0x08,0x08,0x04,0x00,
+
+ 6, // 0x5D ']'
+ 0x00,0x00,0x00,0x78,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x78,
+
+ 11, // 0x5E '^'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x0A,0x00,0x11,0x00,0x20,0x80,0x40,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x5F '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x80,0x00,0x00,
+
+ 9, // 0x60 '`'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x61 'a'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x22,0x02,0x3E,0x42,0x42,0x46,0x3A,0x00,0x00,0x00,
+
+ 9, // 0x62 'b'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x5C,0x00,0x62,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x42,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x63 'c'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x22,0x40,0x40,0x40,0x40,0x22,0x1C,0x00,0x00,0x00,
+
+ 9, // 0x64 'd'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x1F,0x00,0x21,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x23,0x00,0x1D,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x65 'e'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x24,0x42,0x7E,0x40,0x40,0x22,0x1C,0x00,0x00,0x00,
+
+ 6, // 0x66 'f'
+ 0x00,0x00,0x00,0x1C,0x20,0x20,0x7C,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00,0x00,0x00,
+
+ 9, // 0x67 'g'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x00,0x21,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x23,0x00,0x1D,0x00,0x01,0x00,0x22,0x00,0x1C,0x00,
+
+ 9, // 0x68 'h'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x5E,0x00,0x61,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 3, // 0x69 'i'
+ 0x00,0x00,0x00,0x00,0x40,0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x00,0x00,
+
+ 5, // 0x6A 'j'
+ 0x00,0x00,0x00,0x00,0x10,0x00,0x70,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0xE0,
+
+ 8, // 0x6B 'k'
+ 0x00,0x00,0x00,0x40,0x40,0x40,0x42,0x44,0x48,0x50,0x70,0x48,0x44,0x42,0x00,0x00,0x00,
+
+ 3, // 0x6C 'l'
+ 0x00,0x00,0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x00,0x00,
+
+ 13, // 0x6D 'm'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x5C,0xE0,0x63,0x10,0x42,0x10,0x42,0x10,0x42,0x10,0x42,0x10,0x42,0x10,0x42,0x10,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x6E 'n'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x5E,0x00,0x61,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x6F 'o'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x00,0x22,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x22,0x00,0x1C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x70 'p'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x5C,0x00,0x62,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x42,0x00,0x7C,0x00,0x40,0x00,0x40,0x00,0x40,0x00,
+
+ 9, // 0x71 'q'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x00,0x21,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x23,0x00,0x1D,0x00,0x01,0x00,0x01,0x00,0x01,0x00,
+
+ 6, // 0x72 'r'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x5C,0x60,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x00,0x00,
+
+ 8, // 0x73 's'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x42,0x40,0x30,0x0C,0x02,0x42,0x3C,0x00,0x00,0x00,
+
+ 6, // 0x74 't'
+ 0x00,0x00,0x00,0x00,0x20,0x20,0x7C,0x20,0x20,0x20,0x20,0x20,0x20,0x1C,0x00,0x00,0x00,
+
+ 9, // 0x75 'u'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x43,0x00,0x3D,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x76 'v'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x42,0x42,0x24,0x24,0x24,0x18,0x18,0x18,0x00,0x00,0x00,
+
+ 11, // 0x77 'w'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x44,0x40,0x44,0x40,0x2A,0x80,0x2A,0x80,0x2A,0x80,0x2A,0x80,0x11,0x00,0x11,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x78 'x'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x00,0x22,0x00,0x14,0x00,0x08,0x00,0x08,0x00,0x14,0x00,0x22,0x00,0x41,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x79 'y'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x42,0x42,0x24,0x24,0x24,0x18,0x18,0x18,0x10,0x10,0x20,
+
+ 8, // 0x7A 'z'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x02,0x04,0x08,0x10,0x20,0x40,0x7E,0x00,0x00,0x00,
+
+ 9, // 0x7B '{'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x10,0x00,0x60,0x00,0x10,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x07,0x00,
+
+ 6, // 0x7C '|'
+ 0x00,0x00,0x00,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,
+
+ 9, // 0x7D '}'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x04,0x00,0x03,0x00,0x04,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x70,0x00,
+
+ 11, // 0x7E '~'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x40,0x44,0x40,0x44,0x40,0x43,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 14, // 0x7F ''
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xF8,0x20,0x08,0x20,0x08,0x20,0x08,0x20,0x08,0x20,0x08,0x20,0x08,0x20,0x08,0x20,0x08,0x20,0x08,0x3F,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 0
+ };
+
+ const int8u verdana17_bold[] =
+ {
+ 17, 4, 32, 128-32,
+ 0x00,0x00,0x12,0x00,0x24,0x00,0x36,0x00,0x59,0x00,0x7C,0x00,0xB0,0x00,0xD3,0x00,0xE5,0x00,
+ 0xF7,0x00,0x09,0x01,0x2C,0x01,0x4F,0x01,0x61,0x01,0x73,0x01,0x85,0x01,0xA8,0x01,0xCB,0x01,
+ 0xEE,0x01,0x11,0x02,0x34,0x02,0x57,0x02,0x7A,0x02,0x9D,0x02,0xC0,0x02,0xE3,0x02,0x06,0x03,
+ 0x18,0x03,0x2A,0x03,0x4D,0x03,0x70,0x03,0x93,0x03,0xB6,0x03,0xD9,0x03,0xFC,0x03,0x1F,0x04,
+ 0x42,0x04,0x65,0x04,0x88,0x04,0xAB,0x04,0xCE,0x04,0xF1,0x04,0x03,0x05,0x15,0x05,0x38,0x05,
+ 0x5B,0x05,0x7E,0x05,0xA1,0x05,0xC4,0x05,0xE7,0x05,0x0A,0x06,0x2D,0x06,0x50,0x06,0x73,0x06,
+ 0x96,0x06,0xB9,0x06,0xDC,0x06,0xFF,0x06,0x22,0x07,0x45,0x07,0x57,0x07,0x7A,0x07,0x8C,0x07,
+ 0xAF,0x07,0xD2,0x07,0xF5,0x07,0x18,0x08,0x3B,0x08,0x4D,0x08,0x70,0x08,0x93,0x08,0xA5,0x08,
+ 0xC8,0x08,0xEB,0x08,0xFD,0x08,0x0F,0x09,0x32,0x09,0x44,0x09,0x67,0x09,0x8A,0x09,0xAD,0x09,
+ 0xD0,0x09,0xF3,0x09,0x05,0x0A,0x17,0x0A,0x29,0x0A,0x4C,0x0A,0x6F,0x0A,0x92,0x0A,0xB5,0x0A,
+ 0xD8,0x0A,0xEA,0x0A,0x0D,0x0B,0x1F,0x0B,0x42,0x0B,0x65,0x0B,
+
+ 5, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x21 '!'
+ 0x00,0x00,0x00,0x00,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x00,0x30,0x30,0x00,0x00,0x00,
+
+ 8, // 0x22 '"'
+ 0x00,0x00,0x00,0x66,0x66,0x66,0x66,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 12, // 0x23 '#'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x40,0x04,0x40,0x3F,0xE0,0x3F,0xE0,0x08,0x80,0x11,0x00,0x7F,0xC0,0x7F,0xC0,0x22,0x00,0x22,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x24 '$'
+ 0x00,0x00,0x00,0x00,0x04,0x00,0x04,0x00,0x1F,0x00,0x34,0x80,0x64,0x00,0x74,0x00,0x3C,0x00,0x0F,0x00,0x0B,0x80,0x09,0x80,0x4B,0x00,0x3E,0x00,0x08,0x00,0x08,0x00,0x00,0x00,
+
+ 18, // 0x25 '%'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x08,0x00,0x66,0x10,0x00,0x66,0x20,0x00,0x66,0x2F,0x00,0x66,0x59,0x80,0x66,0x99,0x80,0x3D,0x19,0x80,0x01,0x19,0x80,0x02,0x19,0x80,0x04,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 12, // 0x26 '&'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x33,0x00,0x33,0x00,0x36,0x00,0x1C,0x60,0x36,0x60,0x63,0x60,0x61,0xC0,0x31,0xC0,0x1F,0x60,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x27 '''
+ 0x00,0x00,0x00,0x60,0x60,0x60,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x28 '('
+ 0x00,0x00,0x00,0x0C,0x18,0x30,0x30,0x60,0x60,0x60,0x60,0x60,0x60,0x30,0x30,0x18,0x0C,
+
+ 8, // 0x29 ')'
+ 0x00,0x00,0x00,0x30,0x18,0x0C,0x0C,0x06,0x06,0x06,0x06,0x06,0x06,0x0C,0x0C,0x18,0x30,
+
+ 10, // 0x2A '*'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x49,0x00,0x2A,0x00,0x1C,0x00,0x2A,0x00,0x49,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 12, // 0x2B '+'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x7F,0xC0,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x2C ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x60,0x60,0xC0,0xC0,0x00,
+
+ 7, // 0x2D '-'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x2E '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x30,0x00,0x00,0x00,
+
+ 10, // 0x2F '/'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x80,0x01,0x80,0x03,0x00,0x03,0x00,0x06,0x00,0x06,0x00,0x0C,0x00,0x18,0x00,0x18,0x00,0x30,0x00,0x30,0x00,0x60,0x00,0x60,0x00,0x00,0x00,
+
+ 10, // 0x30 '0'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x33,0x00,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x33,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x31 '1'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x00,0x3C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x32 '2'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x61,0x80,0x61,0x80,0x01,0x80,0x03,0x00,0x06,0x00,0x0C,0x00,0x18,0x00,0x30,0x00,0x7F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x33 '3'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x61,0x80,0x61,0x80,0x01,0x80,0x0F,0x00,0x03,0x00,0x01,0x80,0x61,0x80,0x63,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x34 '4'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x07,0x00,0x0B,0x00,0x13,0x00,0x23,0x00,0x43,0x00,0x7F,0xC0,0x03,0x00,0x03,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x35 '5'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x80,0x30,0x00,0x30,0x00,0x3E,0x00,0x03,0x00,0x01,0x80,0x01,0x80,0x61,0x80,0x63,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x36 '6'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x00,0x38,0x00,0x30,0x00,0x6E,0x00,0x73,0x00,0x61,0x80,0x61,0x80,0x61,0x80,0x33,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x37 '7'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x80,0x01,0x80,0x03,0x00,0x03,0x00,0x06,0x00,0x06,0x00,0x0C,0x00,0x0C,0x00,0x18,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x38 '8'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x61,0x80,0x61,0x80,0x61,0x80,0x3F,0x00,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x39 '9'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x33,0x00,0x61,0x80,0x61,0x80,0x61,0x80,0x33,0x80,0x1D,0x80,0x03,0x00,0x07,0x00,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x3A ':'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x30,0x00,0x00,0x30,0x30,0x30,0x00,0x00,0x00,
+
+ 6, // 0x3B ';'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x30,0x00,0x00,0x38,0x30,0x30,0x60,0x60,0x00,
+
+ 12, // 0x3C '<'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x03,0x00,0x0C,0x00,0x30,0x00,0x40,0x00,0x30,0x00,0x0C,0x00,0x03,0x00,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 12, // 0x3D '='
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 12, // 0x3E '>'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x18,0x00,0x06,0x00,0x01,0x80,0x00,0x40,0x01,0x80,0x06,0x00,0x18,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x3F '?'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x63,0x00,0x03,0x00,0x06,0x00,0x0C,0x00,0x18,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 14, // 0x40 '@'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xC0,0x18,0x20,0x20,0x10,0x27,0xC8,0x4C,0xC8,0x4C,0xC8,0x4C,0xC8,0x4C,0xC8,0x27,0xF0,0x20,0x00,0x18,0x00,0x07,0xC0,0x00,0x00,
+
+ 11, // 0x41 'A'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0E,0x00,0x0E,0x00,0x0E,0x00,0x1B,0x00,0x1B,0x00,0x31,0x80,0x3F,0x80,0x31,0x80,0x60,0xC0,0x60,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x42 'B'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x61,0x80,0x61,0x80,0x61,0x80,0x7F,0x00,0x61,0x80,0x60,0xC0,0x60,0xC0,0x61,0x80,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x43 'C'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x80,0x30,0xC0,0x30,0xC0,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x30,0xC0,0x30,0xC0,0x0F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x44 'D'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x00,0x61,0x80,0x61,0x80,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x61,0x80,0x61,0x80,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x45 'E'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x80,0x60,0x00,0x60,0x00,0x60,0x00,0x7F,0x80,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x7F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x46 'F'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x7F,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x47 'G'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x80,0x30,0xC0,0x30,0xC0,0x60,0x00,0x60,0x00,0x63,0xC0,0x60,0xC0,0x30,0xC0,0x30,0xC0,0x0F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x48 'H'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x7F,0xC0,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x49 'I'
+ 0x00,0x00,0x00,0x00,0x7E,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x7E,0x00,0x00,0x00,
+
+ 8, // 0x4A 'J'
+ 0x00,0x00,0x00,0x00,0x3E,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x0C,0xF8,0x00,0x00,0x00,
+
+ 11, // 0x4B 'K'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0xC0,0x61,0x80,0x63,0x00,0x66,0x00,0x6C,0x00,0x7C,0x00,0x76,0x00,0x63,0x00,0x61,0x80,0x60,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x4C 'L'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x7F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 13, // 0x4D 'M'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x70,0x70,0x70,0x70,0xF0,0x58,0xB0,0x59,0xB0,0x4D,0x30,0x4F,0x30,0x46,0x30,0x46,0x30,0x40,0x30,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x4E 'N'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x40,0x70,0x40,0x58,0x40,0x4C,0x40,0x4C,0x40,0x46,0x40,0x43,0x40,0x43,0x40,0x41,0xC0,0x40,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 12, // 0x4F 'O'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x00,0x30,0xC0,0x30,0xC0,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x30,0xC0,0x30,0xC0,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x50 'P'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x00,0x63,0x00,0x61,0x80,0x61,0x80,0x61,0x80,0x63,0x00,0x7E,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 12, // 0x51 'Q'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x00,0x30,0xC0,0x30,0xC0,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x30,0xC0,0x30,0xC0,0x0F,0x80,0x03,0x00,0x03,0x00,0x01,0xE0,
+
+ 11, // 0x52 'R'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x61,0x80,0x60,0xC0,0x60,0xC0,0x61,0x80,0x7F,0x00,0x63,0x00,0x61,0x80,0x60,0xC0,0x60,0x60,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x53 'S'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x00,0x31,0x80,0x61,0x80,0x60,0x00,0x3E,0x00,0x1F,0x00,0x01,0x80,0x61,0x80,0x63,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x54 'T'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x80,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x55 'U'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x31,0x80,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x56 'V'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x31,0x80,0x31,0x80,0x31,0x80,0x1B,0x00,0x1B,0x00,0x0E,0x00,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 16, // 0x57 'W'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x61,0x86,0x61,0x86,0x63,0xC6,0x32,0x4C,0x36,0x6C,0x36,0x6C,0x34,0x2C,0x1C,0x38,0x18,0x18,0x18,0x18,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x58 'X'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0xC0,0x31,0x80,0x31,0x80,0x1B,0x00,0x0E,0x00,0x0E,0x00,0x1B,0x00,0x31,0x80,0x31,0x80,0x60,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x59 'Y'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0xC0,0x61,0x80,0x61,0x80,0x33,0x00,0x1E,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x5A 'Z'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x80,0x01,0x80,0x03,0x00,0x06,0x00,0x0C,0x00,0x0C,0x00,0x18,0x00,0x30,0x00,0x60,0x00,0x7F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x5B '['
+ 0x00,0x00,0x00,0x3E,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x3E,
+
+ 10, // 0x5C '\'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x60,0x00,0x30,0x00,0x30,0x00,0x18,0x00,0x18,0x00,0x0C,0x00,0x06,0x00,0x06,0x00,0x03,0x00,0x03,0x00,0x01,0x80,0x01,0x80,0x00,0x00,
+
+ 8, // 0x5D ']'
+ 0x00,0x00,0x00,0x7C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x7C,
+
+ 12, // 0x5E '^'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x0E,0x00,0x1B,0x00,0x31,0x80,0x60,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x5F '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xC0,0x00,0x00,
+
+ 10, // 0x60 '`'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x00,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x61 'a'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x03,0x00,0x03,0x00,0x3F,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x62 'b'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x6E,0x00,0x73,0x00,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x63,0x00,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x63 'c'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x33,0x60,0x60,0x60,0x60,0x33,0x1E,0x00,0x00,0x00,
+
+ 10, // 0x64 'd'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x80,0x01,0x80,0x01,0x80,0x1F,0x80,0x31,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x33,0x80,0x1D,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x65 'e'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x33,0x00,0x63,0x00,0x7F,0x00,0x60,0x00,0x60,0x00,0x33,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x66 'f'
+ 0x00,0x00,0x00,0x1C,0x30,0x30,0x7C,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x00,0x00,0x00,
+
+ 10, // 0x67 'g'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x80,0x31,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x33,0x80,0x1D,0x80,0x01,0x80,0x03,0x00,0x3E,0x00,
+
+ 10, // 0x68 'h'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x6F,0x00,0x71,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x69 'i'
+ 0x00,0x00,0x00,0x60,0x60,0x00,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x00,0x00,0x00,
+
+ 6, // 0x6A 'j'
+ 0x00,0x00,0x00,0x18,0x18,0x00,0x38,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0xF0,
+
+ 9, // 0x6B 'k'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x63,0x00,0x66,0x00,0x6C,0x00,0x78,0x00,0x7C,0x00,0x66,0x00,0x63,0x00,0x61,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x6C 'l'
+ 0x00,0x00,0x00,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x00,0x00,0x00,
+
+ 14, // 0x6D 'm'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x6E,0x70,0x73,0x98,0x63,0x18,0x63,0x18,0x63,0x18,0x63,0x18,0x63,0x18,0x63,0x18,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x6E 'n'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x6F,0x00,0x71,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x6F 'o'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x33,0x00,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x33,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x70 'p'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x6E,0x00,0x73,0x00,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x63,0x00,0x7E,0x00,0x60,0x00,0x60,0x00,0x60,0x00,
+
+ 10, // 0x71 'q'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x80,0x31,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x33,0x80,0x1D,0x80,0x01,0x80,0x01,0x80,0x01,0x80,
+
+ 7, // 0x72 'r'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x6E,0x7E,0x60,0x60,0x60,0x60,0x60,0x60,0x00,0x00,0x00,
+
+ 8, // 0x73 's'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x62,0x60,0x7C,0x3E,0x06,0x46,0x3C,0x00,0x00,0x00,
+
+ 6, // 0x74 't'
+ 0x00,0x00,0x00,0x00,0x60,0x60,0xFC,0x60,0x60,0x60,0x60,0x60,0x60,0x3C,0x00,0x00,0x00,
+
+ 10, // 0x75 'u'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x63,0x80,0x3D,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x76 'v'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x36,0x00,0x36,0x00,0x36,0x00,0x1C,0x00,0x1C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 14, // 0x77 'w'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x18,0x63,0x18,0x33,0x30,0x37,0xB0,0x34,0xB0,0x1C,0xE0,0x1C,0xE0,0x0C,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x78 'x'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x00,0x63,0x00,0x36,0x00,0x1C,0x00,0x1C,0x00,0x36,0x00,0x63,0x00,0x63,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x79 'y'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x00,0x63,0x00,0x63,0x00,0x36,0x00,0x36,0x00,0x36,0x00,0x1C,0x00,0x1C,0x00,0x0C,0x00,0x18,0x00,0x18,0x00,
+
+ 8, // 0x7A 'z'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x06,0x0C,0x18,0x18,0x30,0x60,0x7E,0x00,0x00,0x00,
+
+ 10, // 0x7B '{'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x80,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x18,0x00,0x70,0x00,0x18,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x07,0x80,
+
+ 8, // 0x7C '|'
+ 0x00,0x00,0x00,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,
+
+ 10, // 0x7D '}'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x06,0x00,0x03,0x80,0x06,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x78,0x00,
+
+ 12, // 0x7E '~'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x20,0x24,0x20,0x46,0x20,0x42,0x40,0x41,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 14, // 0x7F ''
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xF8,0x20,0x08,0x20,0x08,0x20,0x08,0x20,0x08,0x20,0x08,0x20,0x08,0x20,0x08,0x20,0x08,0x20,0x08,0x3F,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 0
+ };
+
+ const int8u verdana18[] =
+ {
+ 18, 4, 32, 128-32,
+ 0x00,0x00,0x13,0x00,0x26,0x00,0x39,0x00,0x5E,0x00,0x83,0x00,0xA8,0x00,0xCD,0x00,0xE0,0x00,
+ 0xF3,0x00,0x06,0x01,0x2B,0x01,0x50,0x01,0x63,0x01,0x76,0x01,0x89,0x01,0x9C,0x01,0xC1,0x01,
+ 0xE6,0x01,0x0B,0x02,0x30,0x02,0x55,0x02,0x7A,0x02,0x9F,0x02,0xC4,0x02,0xE9,0x02,0x0E,0x03,
+ 0x21,0x03,0x34,0x03,0x59,0x03,0x7E,0x03,0xA3,0x03,0xB6,0x03,0xDB,0x03,0x00,0x04,0x25,0x04,
+ 0x4A,0x04,0x6F,0x04,0x94,0x04,0xB9,0x04,0xDE,0x04,0x03,0x05,0x16,0x05,0x29,0x05,0x4E,0x05,
+ 0x61,0x05,0x86,0x05,0xAB,0x05,0xD0,0x05,0xF5,0x05,0x1A,0x06,0x3F,0x06,0x64,0x06,0x89,0x06,
+ 0xAE,0x06,0xD3,0x06,0xF8,0x06,0x1D,0x07,0x42,0x07,0x67,0x07,0x7A,0x07,0x8D,0x07,0xA0,0x07,
+ 0xC5,0x07,0xEA,0x07,0x0F,0x08,0x34,0x08,0x59,0x08,0x6C,0x08,0x91,0x08,0xB6,0x08,0xC9,0x08,
+ 0xEE,0x08,0x13,0x09,0x26,0x09,0x39,0x09,0x5E,0x09,0x71,0x09,0x96,0x09,0xBB,0x09,0xE0,0x09,
+ 0x05,0x0A,0x2A,0x0A,0x3D,0x0A,0x50,0x0A,0x63,0x0A,0x88,0x0A,0xAD,0x0A,0xD2,0x0A,0xF7,0x0A,
+ 0x1C,0x0B,0x41,0x0B,0x66,0x0B,0x79,0x0B,0x9E,0x0B,0xC3,0x0B,
+
+ 5, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x21 '!'
+ 0x00,0x00,0x00,0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00,0x20,0x20,0x00,0x00,0x00,
+
+ 7, // 0x22 '"'
+ 0x00,0x00,0x00,0x48,0x48,0x48,0x48,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 12, // 0x23 '#'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x80,0x04,0x80,0x09,0x00,0x3F,0xC0,0x09,0x00,0x11,0x00,0x12,0x00,0x7F,0x80,0x12,0x00,0x24,0x00,0x24,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x24 '$'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x08,0x00,0x3E,0x00,0x49,0x00,0x48,0x00,0x48,0x00,0x38,0x00,0x0E,0x00,0x09,0x00,0x09,0x00,0x49,0x00,0x3E,0x00,0x08,0x00,0x08,0x00,0x08,0x00,
+
+ 16, // 0x25 '%'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x20,0x44,0x40,0x44,0x40,0x44,0x80,0x44,0x80,0x38,0x9C,0x01,0x22,0x01,0x22,0x02,0x22,0x02,0x22,0x04,0x1C,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 12, // 0x26 '&'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x1E,0x40,0x24,0x40,0x42,0x40,0x41,0x40,0x40,0x80,0x21,0x40,0x1E,0x20,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x27 '''
+ 0x00,0x00,0x00,0x40,0x40,0x40,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x28 '('
+ 0x00,0x00,0x00,0x08,0x10,0x20,0x20,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x20,0x20,0x10,0x08,
+
+ 7, // 0x29 ')'
+ 0x00,0x00,0x00,0x20,0x10,0x08,0x08,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x08,0x08,0x10,0x20,
+
+ 10, // 0x2A '*'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x49,0x00,0x2A,0x00,0x1C,0x00,0x2A,0x00,0x49,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 12, // 0x2B '+'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x02,0x00,0x02,0x00,0x02,0x00,0x3F,0xE0,0x02,0x00,0x02,0x00,0x02,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x2C ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x20,0x40,0x40,
+
+ 7, // 0x2D '-'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x2E '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x00,0x00,0x00,
+
+ 7, // 0x2F '/'
+ 0x00,0x00,0x00,0x02,0x04,0x04,0x04,0x08,0x08,0x10,0x10,0x20,0x20,0x40,0x40,0x40,0x80,0x00,
+
+ 10, // 0x30 '0'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x21,0x00,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x21,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x31 '1'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x04,0x00,0x1C,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x32 '2'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x41,0x00,0x00,0x80,0x00,0x80,0x00,0x80,0x01,0x00,0x02,0x00,0x0C,0x00,0x30,0x00,0x40,0x00,0x7F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x33 '3'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x40,0x80,0x00,0x80,0x01,0x00,0x0E,0x00,0x01,0x00,0x00,0x80,0x00,0x80,0x00,0x80,0x41,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x34 '4'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x03,0x00,0x05,0x00,0x09,0x00,0x11,0x00,0x21,0x00,0x41,0x00,0x7F,0xC0,0x01,0x00,0x01,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x35 '5'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x80,0x20,0x00,0x20,0x00,0x20,0x00,0x3E,0x00,0x01,0x00,0x00,0x80,0x00,0x80,0x00,0x80,0x41,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x36 '6'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x00,0x10,0x00,0x20,0x00,0x40,0x00,0x5E,0x00,0x61,0x00,0x40,0x80,0x40,0x80,0x40,0x80,0x21,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x37 '7'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x01,0x00,0x02,0x00,0x02,0x00,0x04,0x00,0x04,0x00,0x08,0x00,0x08,0x00,0x10,0x00,0x10,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x38 '8'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x21,0x00,0x40,0x80,0x40,0x80,0x21,0x00,0x1E,0x00,0x21,0x00,0x40,0x80,0x40,0x80,0x21,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x39 '9'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x21,0x00,0x40,0x80,0x40,0x80,0x40,0x80,0x20,0x80,0x1F,0x80,0x00,0x80,0x01,0x00,0x02,0x00,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x3A ':'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x10,0x00,0x00,0x00,0x00,0x10,0x10,0x00,0x00,0x00,
+
+ 7, // 0x3B ';'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x10,0x00,0x00,0x00,0x00,0x10,0x10,0x10,0x20,0x20,
+
+ 12, // 0x3C '<'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x03,0x00,0x0C,0x00,0x30,0x00,0x30,0x00,0x0C,0x00,0x03,0x00,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 12, // 0x3D '='
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xE0,0x00,0x00,0x00,0x00,0x3F,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 12, // 0x3E '>'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x0C,0x00,0x03,0x00,0x00,0xC0,0x00,0xC0,0x03,0x00,0x0C,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x3F '?'
+ 0x00,0x00,0x00,0x00,0x3C,0x42,0x02,0x02,0x04,0x08,0x10,0x10,0x00,0x10,0x10,0x00,0x00,0x00,
+
+ 15, // 0x40 '@'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x80,0x18,0x60,0x20,0x10,0x23,0xD0,0x44,0x48,0x48,0x48,0x48,0x48,0x48,0x48,0x44,0x48,0x23,0xF0,0x20,0x00,0x18,0x00,0x07,0xC0,0x00,0x00,
+
+ 10, // 0x41 'A'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x00,0x12,0x00,0x12,0x00,0x12,0x00,0x21,0x00,0x21,0x00,0x40,0x80,0x7F,0x80,0x40,0x80,0x80,0x40,0x80,0x40,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x42 'B'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x7E,0x00,0x41,0x00,0x40,0x80,0x40,0x80,0x40,0x80,0x41,0x00,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x43 'C'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x00,0x30,0xC0,0x20,0x40,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x20,0x40,0x30,0xC0,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x44 'D'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x00,0x41,0x80,0x40,0x80,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x80,0x41,0x80,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x45 'E'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x7F,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x46 'F'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x80,0x40,0x00,0x40,0x00,0x40,0x00,0x7F,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 12, // 0x47 'G'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x80,0x30,0x60,0x20,0x20,0x40,0x00,0x40,0x00,0x41,0xE0,0x40,0x20,0x40,0x20,0x20,0x20,0x30,0x20,0x0F,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x48 'H'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x7F,0xC0,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x49 'I'
+ 0x00,0x00,0x00,0x00,0x70,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x00,0x00,0x00,
+
+ 7, // 0x4A 'J'
+ 0x00,0x00,0x00,0x00,0x3C,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x08,0xF0,0x00,0x00,0x00,
+
+ 10, // 0x4B 'K'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x80,0x41,0x00,0x42,0x00,0x44,0x00,0x48,0x00,0x50,0x00,0x68,0x00,0x44,0x00,0x42,0x00,0x41,0x00,0x40,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x4C 'L'
+ 0x00,0x00,0x00,0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x7F,0x00,0x00,0x00,
+
+ 13, // 0x4D 'M'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x30,0x50,0x50,0x50,0x50,0x48,0x90,0x48,0x90,0x45,0x10,0x45,0x10,0x42,0x10,0x42,0x10,0x40,0x10,0x40,0x10,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x4E 'N'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x40,0x60,0x40,0x50,0x40,0x48,0x40,0x48,0x40,0x44,0x40,0x42,0x40,0x42,0x40,0x41,0x40,0x40,0xC0,0x40,0x40,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 12, // 0x4F 'O'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x00,0x30,0xC0,0x20,0x40,0x40,0x20,0x40,0x20,0x40,0x20,0x40,0x20,0x40,0x20,0x20,0x40,0x30,0xC0,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x50 'P'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x00,0x41,0x00,0x40,0x80,0x40,0x80,0x40,0x80,0x41,0x00,0x7E,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 12, // 0x51 'Q'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x00,0x30,0xC0,0x20,0x40,0x40,0x20,0x40,0x20,0x40,0x20,0x40,0x20,0x40,0x20,0x20,0x40,0x30,0xC0,0x0F,0x00,0x01,0x00,0x01,0x00,0x00,0xE0,
+
+ 10, // 0x52 'R'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x42,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x42,0x00,0x7C,0x00,0x42,0x00,0x41,0x00,0x40,0x80,0x40,0x40,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x53 'S'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x00,0x20,0x80,0x40,0x00,0x40,0x00,0x20,0x00,0x1E,0x00,0x01,0x00,0x00,0x80,0x40,0x80,0x21,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x54 'T'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x80,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x55 'U'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x20,0x80,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x56 'V'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x40,0x80,0x40,0x40,0x80,0x40,0x80,0x40,0x80,0x21,0x00,0x21,0x00,0x12,0x00,0x12,0x00,0x12,0x00,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 15, // 0x57 'W'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x04,0x41,0x04,0x22,0x88,0x22,0x88,0x22,0x88,0x12,0x90,0x14,0x50,0x14,0x50,0x14,0x50,0x08,0x20,0x08,0x20,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x58 'X'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x80,0x21,0x00,0x21,0x00,0x12,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x12,0x00,0x21,0x00,0x21,0x00,0x40,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x59 'Y'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x80,0x41,0x00,0x22,0x00,0x22,0x00,0x14,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x5A 'Z'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x80,0x00,0x80,0x01,0x00,0x02,0x00,0x04,0x00,0x08,0x00,0x08,0x00,0x10,0x00,0x20,0x00,0x40,0x00,0x7F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x5B '['
+ 0x00,0x00,0x00,0x3C,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x3C,
+
+ 7, // 0x5C '\'
+ 0x00,0x00,0x00,0x80,0x40,0x40,0x40,0x20,0x20,0x10,0x10,0x08,0x08,0x04,0x04,0x04,0x02,0x00,
+
+ 7, // 0x5D ']'
+ 0x00,0x00,0x00,0x78,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x78,
+
+ 12, // 0x5E '^'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x09,0x00,0x10,0x80,0x20,0x40,0x40,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x5F '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xC0,0x00,0x00,
+
+ 10, // 0x60 '`'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x61 'a'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x21,0x00,0x01,0x00,0x3F,0x00,0x41,0x00,0x41,0x00,0x43,0x00,0x3D,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x62 'b'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x5C,0x00,0x62,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x42,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x63 'c'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x21,0x40,0x40,0x40,0x40,0x21,0x1E,0x00,0x00,0x00,
+
+ 9, // 0x64 'd'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x1F,0x00,0x21,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x23,0x00,0x1D,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x65 'e'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x00,0x22,0x00,0x41,0x00,0x7F,0x00,0x40,0x00,0x40,0x00,0x21,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x66 'f'
+ 0x00,0x00,0x00,0x1C,0x20,0x20,0x20,0x7C,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00,0x00,0x00,
+
+ 9, // 0x67 'g'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x00,0x21,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x23,0x00,0x1D,0x00,0x01,0x00,0x22,0x00,0x1C,0x00,
+
+ 9, // 0x68 'h'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x5E,0x00,0x61,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 3, // 0x69 'i'
+ 0x00,0x00,0x00,0x00,0x40,0x00,0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x00,0x00,
+
+ 5, // 0x6A 'j'
+ 0x00,0x00,0x00,0x00,0x10,0x00,0x00,0x70,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0xE0,
+
+ 9, // 0x6B 'k'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x42,0x00,0x44,0x00,0x48,0x00,0x50,0x00,0x68,0x00,0x44,0x00,0x42,0x00,0x41,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 3, // 0x6C 'l'
+ 0x00,0x00,0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x00,0x00,
+
+ 15, // 0x6D 'm'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2E,0x70,0x31,0x88,0x21,0x08,0x21,0x08,0x21,0x08,0x21,0x08,0x21,0x08,0x21,0x08,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x6E 'n'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x5E,0x00,0x61,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x6F 'o'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x21,0x00,0x40,0x80,0x40,0x80,0x40,0x80,0x40,0x80,0x21,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x70 'p'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x5C,0x00,0x62,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x42,0x00,0x7C,0x00,0x40,0x00,0x40,0x00,0x40,0x00,
+
+ 9, // 0x71 'q'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x00,0x21,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x23,0x00,0x1D,0x00,0x01,0x00,0x01,0x00,0x01,0x00,
+
+ 6, // 0x72 'r'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x5C,0x60,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x00,0x00,
+
+ 8, // 0x73 's'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x42,0x40,0x30,0x0C,0x02,0x42,0x3C,0x00,0x00,0x00,
+
+ 6, // 0x74 't'
+ 0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x7C,0x20,0x20,0x20,0x20,0x20,0x20,0x1C,0x00,0x00,0x00,
+
+ 9, // 0x75 'u'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x41,0x00,0x43,0x00,0x3D,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x76 'v'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x00,0x41,0x00,0x22,0x00,0x22,0x00,0x22,0x00,0x14,0x00,0x14,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 13, // 0x77 'w'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x42,0x10,0x42,0x10,0x25,0x20,0x25,0x20,0x28,0xA0,0x28,0xA0,0x10,0x40,0x10,0x40,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x78 'x'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x00,0x22,0x00,0x14,0x00,0x08,0x00,0x08,0x00,0x14,0x00,0x22,0x00,0x41,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x79 'y'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0x00,0x41,0x00,0x22,0x00,0x22,0x00,0x22,0x00,0x14,0x00,0x14,0x00,0x08,0x00,0x08,0x00,0x10,0x00,0x10,0x00,
+
+ 9, // 0x7A 'z'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x02,0x00,0x04,0x00,0x08,0x00,0x10,0x00,0x20,0x00,0x40,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x7B '{'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x10,0x00,0x60,0x00,0x10,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x08,0x00,0x07,0x00,
+
+ 7, // 0x7C '|'
+ 0x00,0x00,0x00,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,
+
+ 10, // 0x7D '}'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x02,0x00,0x01,0x80,0x02,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x38,0x00,
+
+ 12, // 0x7E '~'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x20,0x24,0x20,0x42,0x40,0x41,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 15, // 0x7F ''
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xF8,0x20,0x08,0x20,0x08,0x20,0x08,0x20,0x08,0x20,0x08,0x20,0x08,0x20,0x08,0x20,0x08,0x20,0x08,0x3F,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 0
+ };
+
+ const int8u verdana18_bold[] =
+ {
+ 18, 4, 32, 128-32,
+ 0x00,0x00,0x13,0x00,0x26,0x00,0x4B,0x00,0x70,0x00,0x95,0x00,0xCC,0x00,0xF1,0x00,0x04,0x01,
+ 0x17,0x01,0x2A,0x01,0x4F,0x01,0x74,0x01,0x87,0x01,0x9A,0x01,0xAD,0x01,0xD2,0x01,0xF7,0x01,
+ 0x1C,0x02,0x41,0x02,0x66,0x02,0x8B,0x02,0xB0,0x02,0xD5,0x02,0xFA,0x02,0x1F,0x03,0x44,0x03,
+ 0x57,0x03,0x6A,0x03,0x8F,0x03,0xB4,0x03,0xD9,0x03,0xFE,0x03,0x23,0x04,0x48,0x04,0x6D,0x04,
+ 0x92,0x04,0xB7,0x04,0xDC,0x04,0x01,0x05,0x26,0x05,0x4B,0x05,0x5E,0x05,0x71,0x05,0x96,0x05,
+ 0xBB,0x05,0xE0,0x05,0x05,0x06,0x2A,0x06,0x4F,0x06,0x74,0x06,0x99,0x06,0xBE,0x06,0xE3,0x06,
+ 0x08,0x07,0x2D,0x07,0x52,0x07,0x77,0x07,0x9C,0x07,0xC1,0x07,0xD4,0x07,0xF9,0x07,0x0C,0x08,
+ 0x31,0x08,0x56,0x08,0x7B,0x08,0xA0,0x08,0xC5,0x08,0xD8,0x08,0xFD,0x08,0x22,0x09,0x35,0x09,
+ 0x5A,0x09,0x7F,0x09,0x92,0x09,0xA5,0x09,0xCA,0x09,0xDD,0x09,0x02,0x0A,0x27,0x0A,0x4C,0x0A,
+ 0x71,0x0A,0x96,0x0A,0xA9,0x0A,0xCE,0x0A,0xE1,0x0A,0x06,0x0B,0x2B,0x0B,0x50,0x0B,0x75,0x0B,
+ 0x9A,0x0B,0xBF,0x0B,0xE4,0x0B,0xF7,0x0B,0x1C,0x0C,0x41,0x0C,
+
+ 5, // 0x20 ' '
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x21 '!'
+ 0x00,0x00,0x00,0x00,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x00,0x30,0x30,0x00,0x00,0x00,
+
+ 9, // 0x22 '"'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x36,0x00,0x36,0x00,0x36,0x00,0x36,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 13, // 0x23 '#'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x20,0x04,0x20,0x08,0x40,0x3F,0xF0,0x3F,0xF0,0x08,0x40,0x10,0x80,0x7F,0xE0,0x7F,0xE0,0x21,0x00,0x21,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x24 '$'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x04,0x00,0x1F,0x80,0x34,0xC0,0x64,0xC0,0x64,0x00,0x3C,0x00,0x07,0x80,0x04,0xC0,0x64,0xC0,0x65,0x80,0x3F,0x00,0x04,0x00,0x04,0x00,0x00,0x00,
+
+ 19, // 0x25 '%'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x08,0x00,0x63,0x10,0x00,0x63,0x10,0x00,0x63,0x20,0x00,0x63,0x2F,0x80,0x63,0x58,0xC0,0x3E,0x98,0xC0,0x00,0x98,0xC0,0x01,0x18,0xC0,0x01,0x18,0xC0,0x02,0x0F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 13, // 0x26 '&'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x33,0x00,0x33,0x00,0x33,0x00,0x1E,0x60,0x36,0x60,0x63,0x60,0x61,0xC0,0x60,0xC0,0x30,0xE0,0x1F,0x30,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x27 '''
+ 0x00,0x00,0x00,0x60,0x60,0x60,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x28 '('
+ 0x00,0x00,0x00,0x06,0x0C,0x18,0x30,0x30,0x60,0x60,0x60,0x60,0x60,0x30,0x30,0x18,0x0C,0x06,
+
+ 8, // 0x29 ')'
+ 0x00,0x00,0x00,0x60,0x30,0x18,0x0C,0x0C,0x06,0x06,0x06,0x06,0x06,0x0C,0x0C,0x18,0x30,0x60,
+
+ 11, // 0x2A '*'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x24,0x80,0x15,0x00,0x0E,0x00,0x15,0x00,0x24,0x80,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 13, // 0x2B '+'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x02,0x00,0x02,0x00,0x02,0x00,0x3F,0xE0,0x02,0x00,0x02,0x00,0x02,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x2C ','
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x60,0x60,0x60,0xC0,0xC0,
+
+ 7, // 0x2D '-'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 5, // 0x2E '.'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x30,0x00,0x00,0x00,
+
+ 10, // 0x2F '/'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x80,0x01,0x80,0x03,0x00,0x03,0x00,0x06,0x00,0x06,0x00,0x0C,0x00,0x0C,0x00,0x18,0x00,0x18,0x00,0x30,0x00,0x30,0x00,0x60,0x00,0x60,0x00,0x00,0x00,
+
+ 11, // 0x30 '0'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x00,0x31,0x80,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x31,0x80,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x31 '1'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x1E,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x1F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x32 '2'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x61,0x80,0x60,0xC0,0x00,0xC0,0x01,0x80,0x03,0x00,0x06,0x00,0x0C,0x00,0x18,0x00,0x30,0x00,0x7F,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x33 '3'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x61,0x80,0x60,0xC0,0x00,0xC0,0x01,0x80,0x0F,0x00,0x01,0x80,0x00,0xC0,0x60,0xC0,0x61,0x80,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x34 '4'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x80,0x03,0x80,0x05,0x80,0x09,0x80,0x11,0x80,0x21,0x80,0x41,0x80,0x7F,0xE0,0x01,0x80,0x01,0x80,0x01,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x35 '5'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xC0,0x30,0x00,0x30,0x00,0x30,0x00,0x3F,0x00,0x01,0x80,0x00,0xC0,0x00,0xC0,0x60,0xC0,0x61,0x80,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x36 '6'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x80,0x18,0x00,0x30,0x00,0x60,0x00,0x6F,0x00,0x71,0x80,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x31,0x80,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x37 '7'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xC0,0x00,0xC0,0x01,0x80,0x01,0x80,0x03,0x00,0x03,0x00,0x06,0x00,0x06,0x00,0x0C,0x00,0x0C,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x38 '8'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x00,0x31,0x80,0x60,0xC0,0x60,0xC0,0x31,0x80,0x1F,0x00,0x31,0x80,0x60,0xC0,0x60,0xC0,0x31,0x80,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x39 '9'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x00,0x31,0x80,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x31,0xC0,0x1E,0xC0,0x00,0xC0,0x01,0x80,0x03,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x3A ':'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x30,0x00,0x00,0x30,0x30,0x30,0x00,0x00,0x00,
+
+ 6, // 0x3B ';'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x30,0x00,0x00,0x38,0x30,0x30,0x30,0x60,0x60,
+
+ 13, // 0x3C '<'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0xC0,0x03,0x00,0x0C,0x00,0x30,0x00,0x30,0x00,0x0C,0x00,0x03,0x00,0x00,0xC0,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 13, // 0x3D '='
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 13, // 0x3E '>'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x18,0x00,0x06,0x00,0x01,0x80,0x00,0x60,0x00,0x60,0x01,0x80,0x06,0x00,0x18,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 9, // 0x3F '?'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x63,0x00,0x03,0x00,0x03,0x00,0x06,0x00,0x0C,0x00,0x18,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 14, // 0x40 '@'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x80,0x18,0x60,0x20,0x10,0x27,0xD0,0x4C,0xC8,0x4C,0xC8,0x4C,0xC8,0x4C,0xC8,0x4C,0xC8,0x27,0xF0,0x20,0x00,0x18,0x00,0x07,0xC0,0x00,0x00,
+
+ 12, // 0x41 'A'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x06,0x00,0x0F,0x00,0x0F,0x00,0x19,0x80,0x19,0x80,0x30,0xC0,0x3F,0xC0,0x30,0xC0,0x60,0x60,0x60,0x60,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x42 'B'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x61,0x80,0x61,0x80,0x61,0x80,0x63,0x00,0x7F,0x00,0x61,0x80,0x60,0xC0,0x60,0xC0,0x61,0x80,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x43 'C'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x80,0x38,0xC0,0x30,0xC0,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x30,0xC0,0x38,0xC0,0x0F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 12, // 0x44 'D'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x61,0xC0,0x60,0xC0,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0xC0,0x61,0xC0,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x45 'E'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x80,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x7F,0x80,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x7F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x46 'F'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x80,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x7F,0x80,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 12, // 0x47 'G'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0xC0,0x38,0x60,0x30,0x60,0x60,0x00,0x60,0x00,0x63,0xE0,0x60,0x60,0x60,0x60,0x30,0x60,0x38,0x60,0x0F,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 12, // 0x48 'H'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x7F,0xE0,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x49 'I'
+ 0x00,0x00,0x00,0x00,0x7E,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x7E,0x00,0x00,0x00,
+
+ 8, // 0x4A 'J'
+ 0x00,0x00,0x00,0x00,0x3E,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x0C,0xF8,0x00,0x00,0x00,
+
+ 12, // 0x4B 'K'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x60,0xC0,0x61,0x80,0x63,0x00,0x66,0x00,0x6C,0x00,0x7E,0x00,0x73,0x00,0x61,0x80,0x60,0xC0,0x60,0x60,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x4C 'L'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x7F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 14, // 0x4D 'M'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x38,0x70,0x38,0x70,0x78,0x58,0x58,0x58,0xD8,0x4C,0x98,0x4D,0x98,0x47,0x18,0x47,0x18,0x42,0x18,0x40,0x18,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 12, // 0x4E 'N'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x20,0x70,0x20,0x58,0x20,0x4C,0x20,0x4C,0x20,0x46,0x20,0x43,0x20,0x43,0x20,0x41,0xA0,0x40,0xE0,0x40,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 13, // 0x4F 'O'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x80,0x38,0xE0,0x30,0x60,0x60,0x30,0x60,0x30,0x60,0x30,0x60,0x30,0x60,0x30,0x30,0x60,0x38,0xE0,0x0F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x50 'P'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x61,0x80,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x61,0x80,0x7F,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 13, // 0x51 'Q'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x80,0x38,0xE0,0x30,0x60,0x60,0x30,0x60,0x30,0x60,0x30,0x60,0x30,0x60,0x30,0x30,0x60,0x38,0xE0,0x0F,0x80,0x03,0x00,0x03,0x80,0x01,0xF0,
+
+ 12, // 0x52 'R'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x61,0x80,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x61,0x80,0x7F,0x00,0x61,0x80,0x60,0xC0,0x60,0x60,0x60,0x30,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x53 'S'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x80,0x30,0xC0,0x60,0xC0,0x60,0x00,0x7C,0x00,0x3F,0x80,0x03,0xC0,0x00,0xC0,0x60,0xC0,0x61,0x80,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x54 'T'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x80,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 12, // 0x55 'U'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x30,0xC0,0x1F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x56 'V'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0xC0,0x60,0xC0,0x60,0xC0,0x31,0x80,0x31,0x80,0x31,0x80,0x1B,0x00,0x1B,0x00,0x1B,0x00,0x0E,0x00,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 16, // 0x57 'W'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x61,0x86,0x61,0x86,0x63,0xC6,0x33,0xCC,0x32,0x4C,0x32,0x4C,0x1E,0x78,0x1C,0x38,0x1C,0x38,0x0C,0x30,0x0C,0x30,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x58 'X'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0xC0,0x31,0x80,0x31,0x80,0x1B,0x00,0x0E,0x00,0x0E,0x00,0x0E,0x00,0x1B,0x00,0x31,0x80,0x31,0x80,0x60,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x59 'Y'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0xC0,0x61,0x80,0x61,0x80,0x33,0x00,0x1E,0x00,0x1E,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x5A 'Z'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x80,0x01,0x80,0x03,0x00,0x06,0x00,0x06,0x00,0x0C,0x00,0x18,0x00,0x18,0x00,0x30,0x00,0x60,0x00,0x7F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x5B '['
+ 0x00,0x00,0x00,0x3E,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x3E,
+
+ 10, // 0x5C '\'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x60,0x00,0x30,0x00,0x30,0x00,0x18,0x00,0x18,0x00,0x0C,0x00,0x0C,0x00,0x06,0x00,0x06,0x00,0x03,0x00,0x03,0x00,0x01,0x80,0x01,0x80,0x00,0x00,
+
+ 8, // 0x5D ']'
+ 0x00,0x00,0x00,0x7C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x7C,
+
+ 13, // 0x5E '^'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x0F,0x00,0x19,0x80,0x30,0xC0,0x60,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x5F '_'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xE0,0x00,0x00,
+
+ 11, // 0x60 '`'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x00,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x61 'a'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x01,0x80,0x01,0x80,0x3F,0x80,0x61,0x80,0x61,0x80,0x63,0x80,0x3D,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x62 'b'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x6E,0x00,0x73,0x00,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x63,0x00,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 8, // 0x63 'c'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x33,0x60,0x60,0x60,0x60,0x33,0x1E,0x00,0x00,0x00,
+
+ 10, // 0x64 'd'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x1F,0x80,0x31,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x33,0x80,0x1D,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x65 'e'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x33,0x00,0x61,0x80,0x7F,0x80,0x60,0x00,0x60,0x00,0x31,0x80,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 6, // 0x66 'f'
+ 0x00,0x00,0x00,0x1C,0x30,0x30,0x30,0x7C,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x00,0x00,0x00,
+
+ 10, // 0x67 'g'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x80,0x31,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x33,0x80,0x1D,0x80,0x01,0x80,0x03,0x00,0x3E,0x00,
+
+ 10, // 0x68 'h'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x6F,0x00,0x71,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x69 'i'
+ 0x00,0x00,0x00,0x60,0x60,0x00,0x00,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x00,0x00,0x00,
+
+ 6, // 0x6A 'j'
+ 0x00,0x00,0x00,0x18,0x18,0x00,0x00,0x78,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0xF0,
+
+ 10, // 0x6B 'k'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x60,0x00,0x61,0x80,0x63,0x00,0x66,0x00,0x6C,0x00,0x7E,0x00,0x73,0x00,0x61,0x80,0x60,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 4, // 0x6C 'l'
+ 0x00,0x00,0x00,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x00,0x00,0x00,
+
+ 16, // 0x6D 'm'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x6F,0x3C,0x71,0xC6,0x61,0x86,0x61,0x86,0x61,0x86,0x61,0x86,0x61,0x86,0x61,0x86,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x6E 'n'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x6F,0x00,0x71,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x6F 'o'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x33,0x00,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x33,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x70 'p'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x6E,0x00,0x73,0x00,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x63,0x00,0x7E,0x00,0x60,0x00,0x60,0x00,0x60,0x00,
+
+ 10, // 0x71 'q'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x80,0x31,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x33,0x80,0x1D,0x80,0x01,0x80,0x01,0x80,0x01,0x80,
+
+ 7, // 0x72 'r'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x6E,0x7E,0x60,0x60,0x60,0x60,0x60,0x60,0x00,0x00,0x00,
+
+ 9, // 0x73 's'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x61,0x00,0x60,0x00,0x7E,0x00,0x3F,0x00,0x03,0x00,0x43,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 7, // 0x74 't'
+ 0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x7E,0x30,0x30,0x30,0x30,0x30,0x30,0x1E,0x00,0x00,0x00,
+
+ 10, // 0x75 'u'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x61,0x80,0x63,0x80,0x3D,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x76 'v'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x61,0x80,0x61,0x80,0x33,0x00,0x33,0x00,0x33,0x00,0x1E,0x00,0x1E,0x00,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 14, // 0x77 'w'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x18,0x63,0x18,0x63,0x18,0x37,0xB0,0x34,0xB0,0x3C,0xF0,0x18,0x60,0x18,0x60,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x78 'x'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x61,0x80,0x33,0x00,0x33,0x00,0x1E,0x00,0x1E,0x00,0x33,0x00,0x33,0x00,0x61,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 10, // 0x79 'y'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x61,0x80,0x61,0x80,0x33,0x00,0x33,0x00,0x33,0x00,0x1E,0x00,0x1E,0x00,0x0C,0x00,0x0C,0x00,0x18,0x00,0x18,0x00,
+
+ 9, // 0x7A 'z'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x03,0x00,0x06,0x00,0x0C,0x00,0x18,0x00,0x30,0x00,0x60,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 11, // 0x7B '{'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x80,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x18,0x00,0x70,0x00,0x18,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,0x07,0x80,
+
+ 8, // 0x7C '|'
+ 0x00,0x00,0x00,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,
+
+ 11, // 0x7D '}'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x03,0x00,0x01,0xC0,0x03,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x06,0x00,0x3C,0x00,
+
+ 13, // 0x7E '~'
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x10,0x24,0x10,0x42,0x10,0x41,0x20,0x40,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 15, // 0x7F ''
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xF8,0x20,0x08,0x20,0x08,0x20,0x08,0x20,0x08,0x20,0x08,0x20,0x08,0x20,0x08,0x20,0x08,0x20,0x08,0x3F,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,
+
+ 0
+ };
+
+}
+
diff --git a/agg/source/agg_gsv_text.cpp b/agg/source/agg_gsv_text.cpp
new file mode 100755
index 000000000000..fd522cd8de08
--- /dev/null
+++ b/agg/source/agg_gsv_text.cpp
@@ -0,0 +1,688 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Class gsv_text
+//
+//----------------------------------------------------------------------------
+#include <string.h>
+#include <stdio.h>
+#include "agg_gsv_text.h"
+
+
+namespace agg
+{
+ int8u gsv_default_font[] =
+ {
+ 0x40,0x00,0x6c,0x0f,0x15,0x00,0x0e,0x00,0xf9,0xff,
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x0d,0x0a,0x0d,0x0a,0x46,0x6f,0x6e,0x74,0x20,0x28,
+ 0x63,0x29,0x20,0x4d,0x69,0x63,0x72,0x6f,0x50,0x72,
+ 0x6f,0x66,0x20,0x32,0x37,0x20,0x53,0x65,0x70,0x74,
+ 0x65,0x6d,0x62,0x2e,0x31,0x39,0x38,0x39,0x00,0x0d,
+ 0x0a,0x0d,0x0a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x02,0x00,0x12,0x00,0x34,0x00,0x46,0x00,0x94,0x00,
+ 0xd0,0x00,0x2e,0x01,0x3e,0x01,0x64,0x01,0x8a,0x01,
+ 0x98,0x01,0xa2,0x01,0xb4,0x01,0xba,0x01,0xc6,0x01,
+ 0xcc,0x01,0xf0,0x01,0xfa,0x01,0x18,0x02,0x38,0x02,
+ 0x44,0x02,0x68,0x02,0x98,0x02,0xa2,0x02,0xde,0x02,
+ 0x0e,0x03,0x24,0x03,0x40,0x03,0x48,0x03,0x52,0x03,
+ 0x5a,0x03,0x82,0x03,0xec,0x03,0xfa,0x03,0x26,0x04,
+ 0x4c,0x04,0x6a,0x04,0x7c,0x04,0x8a,0x04,0xb6,0x04,
+ 0xc4,0x04,0xca,0x04,0xe0,0x04,0xee,0x04,0xf8,0x04,
+ 0x0a,0x05,0x18,0x05,0x44,0x05,0x5e,0x05,0x8e,0x05,
+ 0xac,0x05,0xd6,0x05,0xe0,0x05,0xf6,0x05,0x00,0x06,
+ 0x12,0x06,0x1c,0x06,0x28,0x06,0x36,0x06,0x48,0x06,
+ 0x4e,0x06,0x60,0x06,0x6e,0x06,0x74,0x06,0x84,0x06,
+ 0xa6,0x06,0xc8,0x06,0xe6,0x06,0x08,0x07,0x2c,0x07,
+ 0x3c,0x07,0x68,0x07,0x7c,0x07,0x8c,0x07,0xa2,0x07,
+ 0xb0,0x07,0xb6,0x07,0xd8,0x07,0xec,0x07,0x10,0x08,
+ 0x32,0x08,0x54,0x08,0x64,0x08,0x88,0x08,0x98,0x08,
+ 0xac,0x08,0xb6,0x08,0xc8,0x08,0xd2,0x08,0xe4,0x08,
+ 0xf2,0x08,0x3e,0x09,0x48,0x09,0x94,0x09,0xc2,0x09,
+ 0xc4,0x09,0xd0,0x09,0xe2,0x09,0x04,0x0a,0x0e,0x0a,
+ 0x26,0x0a,0x34,0x0a,0x4a,0x0a,0x66,0x0a,0x70,0x0a,
+ 0x7e,0x0a,0x8e,0x0a,0x9a,0x0a,0xa6,0x0a,0xb4,0x0a,
+ 0xd8,0x0a,0xe2,0x0a,0xf6,0x0a,0x18,0x0b,0x22,0x0b,
+ 0x32,0x0b,0x56,0x0b,0x60,0x0b,0x6e,0x0b,0x7c,0x0b,
+ 0x8a,0x0b,0x9c,0x0b,0x9e,0x0b,0xb2,0x0b,0xc2,0x0b,
+ 0xd8,0x0b,0xf4,0x0b,0x08,0x0c,0x30,0x0c,0x56,0x0c,
+ 0x72,0x0c,0x90,0x0c,0xb2,0x0c,0xce,0x0c,0xe2,0x0c,
+ 0xfe,0x0c,0x10,0x0d,0x26,0x0d,0x36,0x0d,0x42,0x0d,
+ 0x4e,0x0d,0x5c,0x0d,0x78,0x0d,0x8c,0x0d,0x8e,0x0d,
+ 0x90,0x0d,0x92,0x0d,0x94,0x0d,0x96,0x0d,0x98,0x0d,
+ 0x9a,0x0d,0x9c,0x0d,0x9e,0x0d,0xa0,0x0d,0xa2,0x0d,
+ 0xa4,0x0d,0xa6,0x0d,0xa8,0x0d,0xaa,0x0d,0xac,0x0d,
+ 0xae,0x0d,0xb0,0x0d,0xb2,0x0d,0xb4,0x0d,0xb6,0x0d,
+ 0xb8,0x0d,0xba,0x0d,0xbc,0x0d,0xbe,0x0d,0xc0,0x0d,
+ 0xc2,0x0d,0xc4,0x0d,0xc6,0x0d,0xc8,0x0d,0xca,0x0d,
+ 0xcc,0x0d,0xce,0x0d,0xd0,0x0d,0xd2,0x0d,0xd4,0x0d,
+ 0xd6,0x0d,0xd8,0x0d,0xda,0x0d,0xdc,0x0d,0xde,0x0d,
+ 0xe0,0x0d,0xe2,0x0d,0xe4,0x0d,0xe6,0x0d,0xe8,0x0d,
+ 0xea,0x0d,0xec,0x0d,0x0c,0x0e,0x26,0x0e,0x48,0x0e,
+ 0x64,0x0e,0x88,0x0e,0x92,0x0e,0xa6,0x0e,0xb4,0x0e,
+ 0xd0,0x0e,0xee,0x0e,0x02,0x0f,0x16,0x0f,0x26,0x0f,
+ 0x3c,0x0f,0x58,0x0f,0x6c,0x0f,0x6c,0x0f,0x6c,0x0f,
+ 0x6c,0x0f,0x6c,0x0f,0x6c,0x0f,0x6c,0x0f,0x6c,0x0f,
+ 0x6c,0x0f,0x6c,0x0f,0x6c,0x0f,0x6c,0x0f,0x6c,0x0f,
+ 0x6c,0x0f,0x6c,0x0f,0x6c,0x0f,0x6c,0x0f,0x10,0x80,
+ 0x05,0x95,0x00,0x72,0x00,0xfb,0xff,0x7f,0x01,0x7f,
+ 0x01,0x01,0xff,0x01,0x05,0xfe,0x05,0x95,0xff,0x7f,
+ 0x00,0x7a,0x01,0x86,0xff,0x7a,0x01,0x87,0x01,0x7f,
+ 0xfe,0x7a,0x0a,0x87,0xff,0x7f,0x00,0x7a,0x01,0x86,
+ 0xff,0x7a,0x01,0x87,0x01,0x7f,0xfe,0x7a,0x05,0xf2,
+ 0x0b,0x95,0xf9,0x64,0x0d,0x9c,0xf9,0x64,0xfa,0x91,
+ 0x0e,0x00,0xf1,0xfa,0x0e,0x00,0x04,0xfc,0x08,0x99,
+ 0x00,0x63,0x04,0x9d,0x00,0x63,0x04,0x96,0xff,0x7f,
+ 0x01,0x7f,0x01,0x01,0x00,0x01,0xfe,0x02,0xfd,0x01,
+ 0xfc,0x00,0xfd,0x7f,0xfe,0x7e,0x00,0x7e,0x01,0x7e,
+ 0x01,0x7f,0x02,0x7f,0x06,0x7e,0x02,0x7f,0x02,0x7e,
+ 0xf2,0x89,0x02,0x7e,0x02,0x7f,0x06,0x7e,0x02,0x7f,
+ 0x01,0x7f,0x01,0x7e,0x00,0x7c,0xfe,0x7e,0xfd,0x7f,
+ 0xfc,0x00,0xfd,0x01,0xfe,0x02,0x00,0x01,0x01,0x01,
+ 0x01,0x7f,0xff,0x7f,0x10,0xfd,0x15,0x95,0xee,0x6b,
+ 0x05,0x95,0x02,0x7e,0x00,0x7e,0xff,0x7e,0xfe,0x7f,
+ 0xfe,0x00,0xfe,0x02,0x00,0x02,0x01,0x02,0x02,0x01,
+ 0x02,0x00,0x02,0x7f,0x03,0x7f,0x03,0x00,0x03,0x01,
+ 0x02,0x01,0xfc,0xf2,0xfe,0x7f,0xff,0x7e,0x00,0x7e,
+ 0x02,0x7e,0x02,0x00,0x02,0x01,0x01,0x02,0x00,0x02,
+ 0xfe,0x02,0xfe,0x00,0x07,0xf9,0x15,0x8d,0xff,0x7f,
+ 0x01,0x7f,0x01,0x01,0x00,0x01,0xff,0x01,0xff,0x00,
+ 0xff,0x7f,0xff,0x7e,0xfe,0x7b,0xfe,0x7d,0xfe,0x7e,
+ 0xfe,0x7f,0xfd,0x00,0xfd,0x01,0xff,0x02,0x00,0x03,
+ 0x01,0x02,0x06,0x04,0x02,0x02,0x01,0x02,0x00,0x02,
+ 0xff,0x02,0xfe,0x01,0xfe,0x7f,0xff,0x7e,0x00,0x7e,
+ 0x01,0x7d,0x02,0x7d,0x05,0x79,0x02,0x7e,0x03,0x7f,
+ 0x01,0x00,0x01,0x01,0x00,0x01,0xf1,0xfe,0xfe,0x01,
+ 0xff,0x02,0x00,0x03,0x01,0x02,0x02,0x02,0x00,0x86,
+ 0x01,0x7e,0x08,0x75,0x02,0x7e,0x02,0x7f,0x05,0x80,
+ 0x05,0x93,0xff,0x01,0x01,0x01,0x01,0x7f,0x00,0x7e,
+ 0xff,0x7e,0xff,0x7f,0x06,0xf1,0x0b,0x99,0xfe,0x7e,
+ 0xfe,0x7d,0xfe,0x7c,0xff,0x7b,0x00,0x7c,0x01,0x7b,
+ 0x02,0x7c,0x02,0x7d,0x02,0x7e,0xfe,0x9e,0xfe,0x7c,
+ 0xff,0x7d,0xff,0x7b,0x00,0x7c,0x01,0x7b,0x01,0x7d,
+ 0x02,0x7c,0x05,0x85,0x03,0x99,0x02,0x7e,0x02,0x7d,
+ 0x02,0x7c,0x01,0x7b,0x00,0x7c,0xff,0x7b,0xfe,0x7c,
+ 0xfe,0x7d,0xfe,0x7e,0x02,0x9e,0x02,0x7c,0x01,0x7d,
+ 0x01,0x7b,0x00,0x7c,0xff,0x7b,0xff,0x7d,0xfe,0x7c,
+ 0x09,0x85,0x08,0x95,0x00,0x74,0xfb,0x89,0x0a,0x7a,
+ 0x00,0x86,0xf6,0x7a,0x0d,0xf4,0x0d,0x92,0x00,0x6e,
+ 0xf7,0x89,0x12,0x00,0x04,0xf7,0x06,0x81,0xff,0x7f,
+ 0xff,0x01,0x01,0x01,0x01,0x7f,0x00,0x7e,0xff,0x7e,
+ 0xff,0x7f,0x06,0x84,0x04,0x89,0x12,0x00,0x04,0xf7,
+ 0x05,0x82,0xff,0x7f,0x01,0x7f,0x01,0x01,0xff,0x01,
+ 0x05,0xfe,0x00,0xfd,0x0e,0x18,0x00,0xeb,0x09,0x95,
+ 0xfd,0x7f,0xfe,0x7d,0xff,0x7b,0x00,0x7d,0x01,0x7b,
+ 0x02,0x7d,0x03,0x7f,0x02,0x00,0x03,0x01,0x02,0x03,
+ 0x01,0x05,0x00,0x03,0xff,0x05,0xfe,0x03,0xfd,0x01,
+ 0xfe,0x00,0x0b,0xeb,0x06,0x91,0x02,0x01,0x03,0x03,
+ 0x00,0x6b,0x09,0x80,0x04,0x90,0x00,0x01,0x01,0x02,
+ 0x01,0x01,0x02,0x01,0x04,0x00,0x02,0x7f,0x01,0x7f,
+ 0x01,0x7e,0x00,0x7e,0xff,0x7e,0xfe,0x7d,0xf6,0x76,
+ 0x0e,0x00,0x03,0x80,0x05,0x95,0x0b,0x00,0xfa,0x78,
+ 0x03,0x00,0x02,0x7f,0x01,0x7f,0x01,0x7d,0x00,0x7e,
+ 0xff,0x7d,0xfe,0x7e,0xfd,0x7f,0xfd,0x00,0xfd,0x01,
+ 0xff,0x01,0xff,0x02,0x11,0xfc,0x0d,0x95,0xf6,0x72,
+ 0x0f,0x00,0xfb,0x8e,0x00,0x6b,0x07,0x80,0x0f,0x95,
+ 0xf6,0x00,0xff,0x77,0x01,0x01,0x03,0x01,0x03,0x00,
+ 0x03,0x7f,0x02,0x7e,0x01,0x7d,0x00,0x7e,0xff,0x7d,
+ 0xfe,0x7e,0xfd,0x7f,0xfd,0x00,0xfd,0x01,0xff,0x01,
+ 0xff,0x02,0x11,0xfc,0x10,0x92,0xff,0x02,0xfd,0x01,
+ 0xfe,0x00,0xfd,0x7f,0xfe,0x7d,0xff,0x7b,0x00,0x7b,
+ 0x01,0x7c,0x02,0x7e,0x03,0x7f,0x01,0x00,0x03,0x01,
+ 0x02,0x02,0x01,0x03,0x00,0x01,0xff,0x03,0xfe,0x02,
+ 0xfd,0x01,0xff,0x00,0xfd,0x7f,0xfe,0x7e,0xff,0x7d,
+ 0x10,0xf9,0x11,0x95,0xf6,0x6b,0xfc,0x95,0x0e,0x00,
+ 0x03,0xeb,0x08,0x95,0xfd,0x7f,0xff,0x7e,0x00,0x7e,
+ 0x01,0x7e,0x02,0x7f,0x04,0x7f,0x03,0x7f,0x02,0x7e,
+ 0x01,0x7e,0x00,0x7d,0xff,0x7e,0xff,0x7f,0xfd,0x7f,
+ 0xfc,0x00,0xfd,0x01,0xff,0x01,0xff,0x02,0x00,0x03,
+ 0x01,0x02,0x02,0x02,0x03,0x01,0x04,0x01,0x02,0x01,
+ 0x01,0x02,0x00,0x02,0xff,0x02,0xfd,0x01,0xfc,0x00,
+ 0x0c,0xeb,0x10,0x8e,0xff,0x7d,0xfe,0x7e,0xfd,0x7f,
+ 0xff,0x00,0xfd,0x01,0xfe,0x02,0xff,0x03,0x00,0x01,
+ 0x01,0x03,0x02,0x02,0x03,0x01,0x01,0x00,0x03,0x7f,
+ 0x02,0x7e,0x01,0x7c,0x00,0x7b,0xff,0x7b,0xfe,0x7d,
+ 0xfd,0x7f,0xfe,0x00,0xfd,0x01,0xff,0x02,0x10,0xfd,
+ 0x05,0x8e,0xff,0x7f,0x01,0x7f,0x01,0x01,0xff,0x01,
+ 0x00,0xf4,0xff,0x7f,0x01,0x7f,0x01,0x01,0xff,0x01,
+ 0x05,0xfe,0x05,0x8e,0xff,0x7f,0x01,0x7f,0x01,0x01,
+ 0xff,0x01,0x01,0xf3,0xff,0x7f,0xff,0x01,0x01,0x01,
+ 0x01,0x7f,0x00,0x7e,0xff,0x7e,0xff,0x7f,0x06,0x84,
+ 0x14,0x92,0xf0,0x77,0x10,0x77,0x04,0x80,0x04,0x8c,
+ 0x12,0x00,0xee,0xfa,0x12,0x00,0x04,0xfa,0x04,0x92,
+ 0x10,0x77,0xf0,0x77,0x14,0x80,0x03,0x90,0x00,0x01,
+ 0x01,0x02,0x01,0x01,0x02,0x01,0x04,0x00,0x02,0x7f,
+ 0x01,0x7f,0x01,0x7e,0x00,0x7e,0xff,0x7e,0xff,0x7f,
+ 0xfc,0x7e,0x00,0x7d,0x00,0xfb,0xff,0x7f,0x01,0x7f,
+ 0x01,0x01,0xff,0x01,0x09,0xfe,0x12,0x8d,0xff,0x02,
+ 0xfe,0x01,0xfd,0x00,0xfe,0x7f,0xff,0x7f,0xff,0x7d,
+ 0x00,0x7d,0x01,0x7e,0x02,0x7f,0x03,0x00,0x02,0x01,
+ 0x01,0x02,0xfb,0x88,0xfe,0x7e,0xff,0x7d,0x00,0x7d,
+ 0x01,0x7e,0x01,0x7f,0x07,0x8b,0xff,0x78,0x00,0x7e,
+ 0x02,0x7f,0x02,0x00,0x02,0x02,0x01,0x03,0x00,0x02,
+ 0xff,0x03,0xff,0x02,0xfe,0x02,0xfe,0x01,0xfd,0x01,
+ 0xfd,0x00,0xfd,0x7f,0xfe,0x7f,0xfe,0x7e,0xff,0x7e,
+ 0xff,0x7d,0x00,0x7d,0x01,0x7d,0x01,0x7e,0x02,0x7e,
+ 0x02,0x7f,0x03,0x7f,0x03,0x00,0x03,0x01,0x02,0x01,
+ 0x01,0x01,0xfe,0x8d,0xff,0x78,0x00,0x7e,0x01,0x7f,
+ 0x08,0xfb,0x09,0x95,0xf8,0x6b,0x08,0x95,0x08,0x6b,
+ 0xf3,0x87,0x0a,0x00,0x04,0xf9,0x04,0x95,0x00,0x6b,
+ 0x00,0x95,0x09,0x00,0x03,0x7f,0x01,0x7f,0x01,0x7e,
+ 0x00,0x7e,0xff,0x7e,0xff,0x7f,0xfd,0x7f,0xf7,0x80,
+ 0x09,0x00,0x03,0x7f,0x01,0x7f,0x01,0x7e,0x00,0x7d,
+ 0xff,0x7e,0xff,0x7f,0xfd,0x7f,0xf7,0x00,0x11,0x80,
+ 0x12,0x90,0xff,0x02,0xfe,0x02,0xfe,0x01,0xfc,0x00,
+ 0xfe,0x7f,0xfe,0x7e,0xff,0x7e,0xff,0x7d,0x00,0x7b,
+ 0x01,0x7d,0x01,0x7e,0x02,0x7e,0x02,0x7f,0x04,0x00,
+ 0x02,0x01,0x02,0x02,0x01,0x02,0x03,0xfb,0x04,0x95,
+ 0x00,0x6b,0x00,0x95,0x07,0x00,0x03,0x7f,0x02,0x7e,
+ 0x01,0x7e,0x01,0x7d,0x00,0x7b,0xff,0x7d,0xff,0x7e,
+ 0xfe,0x7e,0xfd,0x7f,0xf9,0x00,0x11,0x80,0x04,0x95,
+ 0x00,0x6b,0x00,0x95,0x0d,0x00,0xf3,0xf6,0x08,0x00,
+ 0xf8,0xf5,0x0d,0x00,0x02,0x80,0x04,0x95,0x00,0x6b,
+ 0x00,0x95,0x0d,0x00,0xf3,0xf6,0x08,0x00,0x06,0xf5,
+ 0x12,0x90,0xff,0x02,0xfe,0x02,0xfe,0x01,0xfc,0x00,
+ 0xfe,0x7f,0xfe,0x7e,0xff,0x7e,0xff,0x7d,0x00,0x7b,
+ 0x01,0x7d,0x01,0x7e,0x02,0x7e,0x02,0x7f,0x04,0x00,
+ 0x02,0x01,0x02,0x02,0x01,0x02,0x00,0x03,0xfb,0x80,
+ 0x05,0x00,0x03,0xf8,0x04,0x95,0x00,0x6b,0x0e,0x95,
+ 0x00,0x6b,0xf2,0x8b,0x0e,0x00,0x04,0xf5,0x04,0x95,
+ 0x00,0x6b,0x04,0x80,0x0c,0x95,0x00,0x70,0xff,0x7d,
+ 0xff,0x7f,0xfe,0x7f,0xfe,0x00,0xfe,0x01,0xff,0x01,
+ 0xff,0x03,0x00,0x02,0x0e,0xf9,0x04,0x95,0x00,0x6b,
+ 0x0e,0x95,0xf2,0x72,0x05,0x85,0x09,0x74,0x03,0x80,
+ 0x04,0x95,0x00,0x6b,0x00,0x80,0x0c,0x00,0x01,0x80,
+ 0x04,0x95,0x00,0x6b,0x00,0x95,0x08,0x6b,0x08,0x95,
+ 0xf8,0x6b,0x08,0x95,0x00,0x6b,0x04,0x80,0x04,0x95,
+ 0x00,0x6b,0x00,0x95,0x0e,0x6b,0x00,0x95,0x00,0x6b,
+ 0x04,0x80,0x09,0x95,0xfe,0x7f,0xfe,0x7e,0xff,0x7e,
+ 0xff,0x7d,0x00,0x7b,0x01,0x7d,0x01,0x7e,0x02,0x7e,
+ 0x02,0x7f,0x04,0x00,0x02,0x01,0x02,0x02,0x01,0x02,
+ 0x01,0x03,0x00,0x05,0xff,0x03,0xff,0x02,0xfe,0x02,
+ 0xfe,0x01,0xfc,0x00,0x0d,0xeb,0x04,0x95,0x00,0x6b,
+ 0x00,0x95,0x09,0x00,0x03,0x7f,0x01,0x7f,0x01,0x7e,
+ 0x00,0x7d,0xff,0x7e,0xff,0x7f,0xfd,0x7f,0xf7,0x00,
+ 0x11,0xf6,0x09,0x95,0xfe,0x7f,0xfe,0x7e,0xff,0x7e,
+ 0xff,0x7d,0x00,0x7b,0x01,0x7d,0x01,0x7e,0x02,0x7e,
+ 0x02,0x7f,0x04,0x00,0x02,0x01,0x02,0x02,0x01,0x02,
+ 0x01,0x03,0x00,0x05,0xff,0x03,0xff,0x02,0xfe,0x02,
+ 0xfe,0x01,0xfc,0x00,0x03,0xef,0x06,0x7a,0x04,0x82,
+ 0x04,0x95,0x00,0x6b,0x00,0x95,0x09,0x00,0x03,0x7f,
+ 0x01,0x7f,0x01,0x7e,0x00,0x7e,0xff,0x7e,0xff,0x7f,
+ 0xfd,0x7f,0xf7,0x00,0x07,0x80,0x07,0x75,0x03,0x80,
+ 0x11,0x92,0xfe,0x02,0xfd,0x01,0xfc,0x00,0xfd,0x7f,
+ 0xfe,0x7e,0x00,0x7e,0x01,0x7e,0x01,0x7f,0x02,0x7f,
+ 0x06,0x7e,0x02,0x7f,0x01,0x7f,0x01,0x7e,0x00,0x7d,
+ 0xfe,0x7e,0xfd,0x7f,0xfc,0x00,0xfd,0x01,0xfe,0x02,
+ 0x11,0xfd,0x08,0x95,0x00,0x6b,0xf9,0x95,0x0e,0x00,
+ 0x01,0xeb,0x04,0x95,0x00,0x71,0x01,0x7d,0x02,0x7e,
+ 0x03,0x7f,0x02,0x00,0x03,0x01,0x02,0x02,0x01,0x03,
+ 0x00,0x0f,0x04,0xeb,0x01,0x95,0x08,0x6b,0x08,0x95,
+ 0xf8,0x6b,0x09,0x80,0x02,0x95,0x05,0x6b,0x05,0x95,
+ 0xfb,0x6b,0x05,0x95,0x05,0x6b,0x05,0x95,0xfb,0x6b,
+ 0x07,0x80,0x03,0x95,0x0e,0x6b,0x00,0x95,0xf2,0x6b,
+ 0x11,0x80,0x01,0x95,0x08,0x76,0x00,0x75,0x08,0x95,
+ 0xf8,0x76,0x09,0xf5,0x11,0x95,0xf2,0x6b,0x00,0x95,
+ 0x0e,0x00,0xf2,0xeb,0x0e,0x00,0x03,0x80,0x03,0x93,
+ 0x00,0x6c,0x01,0x94,0x00,0x6c,0xff,0x94,0x05,0x00,
+ 0xfb,0xec,0x05,0x00,0x02,0x81,0x00,0x95,0x0e,0x68,
+ 0x00,0x83,0x06,0x93,0x00,0x6c,0x01,0x94,0x00,0x6c,
+ 0xfb,0x94,0x05,0x00,0xfb,0xec,0x05,0x00,0x03,0x81,
+ 0x03,0x87,0x08,0x05,0x08,0x7b,0xf0,0x80,0x08,0x04,
+ 0x08,0x7c,0x03,0xf9,0x01,0x80,0x10,0x00,0x01,0x80,
+ 0x06,0x95,0xff,0x7f,0xff,0x7e,0x00,0x7e,0x01,0x7f,
+ 0x01,0x01,0xff,0x01,0x05,0xef,0x0f,0x8e,0x00,0x72,
+ 0x00,0x8b,0xfe,0x02,0xfe,0x01,0xfd,0x00,0xfe,0x7f,
+ 0xfe,0x7e,0xff,0x7d,0x00,0x7e,0x01,0x7d,0x02,0x7e,
+ 0x02,0x7f,0x03,0x00,0x02,0x01,0x02,0x02,0x04,0xfd,
+ 0x04,0x95,0x00,0x6b,0x00,0x8b,0x02,0x02,0x02,0x01,
+ 0x03,0x00,0x02,0x7f,0x02,0x7e,0x01,0x7d,0x00,0x7e,
+ 0xff,0x7d,0xfe,0x7e,0xfe,0x7f,0xfd,0x00,0xfe,0x01,
+ 0xfe,0x02,0x0f,0xfd,0x0f,0x8b,0xfe,0x02,0xfe,0x01,
+ 0xfd,0x00,0xfe,0x7f,0xfe,0x7e,0xff,0x7d,0x00,0x7e,
+ 0x01,0x7d,0x02,0x7e,0x02,0x7f,0x03,0x00,0x02,0x01,
+ 0x02,0x02,0x03,0xfd,0x0f,0x95,0x00,0x6b,0x00,0x8b,
+ 0xfe,0x02,0xfe,0x01,0xfd,0x00,0xfe,0x7f,0xfe,0x7e,
+ 0xff,0x7d,0x00,0x7e,0x01,0x7d,0x02,0x7e,0x02,0x7f,
+ 0x03,0x00,0x02,0x01,0x02,0x02,0x04,0xfd,0x03,0x88,
+ 0x0c,0x00,0x00,0x02,0xff,0x02,0xff,0x01,0xfe,0x01,
+ 0xfd,0x00,0xfe,0x7f,0xfe,0x7e,0xff,0x7d,0x00,0x7e,
+ 0x01,0x7d,0x02,0x7e,0x02,0x7f,0x03,0x00,0x02,0x01,
+ 0x02,0x02,0x03,0xfd,0x0a,0x95,0xfe,0x00,0xfe,0x7f,
+ 0xff,0x7d,0x00,0x6f,0xfd,0x8e,0x07,0x00,0x03,0xf2,
+ 0x0f,0x8e,0x00,0x70,0xff,0x7d,0xff,0x7f,0xfe,0x7f,
+ 0xfd,0x00,0xfe,0x01,0x09,0x91,0xfe,0x02,0xfe,0x01,
+ 0xfd,0x00,0xfe,0x7f,0xfe,0x7e,0xff,0x7d,0x00,0x7e,
+ 0x01,0x7d,0x02,0x7e,0x02,0x7f,0x03,0x00,0x02,0x01,
+ 0x02,0x02,0x04,0xfd,0x04,0x95,0x00,0x6b,0x00,0x8a,
+ 0x03,0x03,0x02,0x01,0x03,0x00,0x02,0x7f,0x01,0x7d,
+ 0x00,0x76,0x04,0x80,0x03,0x95,0x01,0x7f,0x01,0x01,
+ 0xff,0x01,0xff,0x7f,0x01,0xf9,0x00,0x72,0x04,0x80,
+ 0x05,0x95,0x01,0x7f,0x01,0x01,0xff,0x01,0xff,0x7f,
+ 0x01,0xf9,0x00,0x6f,0xff,0x7d,0xfe,0x7f,0xfe,0x00,
+ 0x09,0x87,0x04,0x95,0x00,0x6b,0x0a,0x8e,0xf6,0x76,
+ 0x04,0x84,0x07,0x78,0x02,0x80,0x04,0x95,0x00,0x6b,
+ 0x04,0x80,0x04,0x8e,0x00,0x72,0x00,0x8a,0x03,0x03,
+ 0x02,0x01,0x03,0x00,0x02,0x7f,0x01,0x7d,0x00,0x76,
+ 0x00,0x8a,0x03,0x03,0x02,0x01,0x03,0x00,0x02,0x7f,
+ 0x01,0x7d,0x00,0x76,0x04,0x80,0x04,0x8e,0x00,0x72,
+ 0x00,0x8a,0x03,0x03,0x02,0x01,0x03,0x00,0x02,0x7f,
+ 0x01,0x7d,0x00,0x76,0x04,0x80,0x08,0x8e,0xfe,0x7f,
+ 0xfe,0x7e,0xff,0x7d,0x00,0x7e,0x01,0x7d,0x02,0x7e,
+ 0x02,0x7f,0x03,0x00,0x02,0x01,0x02,0x02,0x01,0x03,
+ 0x00,0x02,0xff,0x03,0xfe,0x02,0xfe,0x01,0xfd,0x00,
+ 0x0b,0xf2,0x04,0x8e,0x00,0x6b,0x00,0x92,0x02,0x02,
+ 0x02,0x01,0x03,0x00,0x02,0x7f,0x02,0x7e,0x01,0x7d,
+ 0x00,0x7e,0xff,0x7d,0xfe,0x7e,0xfe,0x7f,0xfd,0x00,
+ 0xfe,0x01,0xfe,0x02,0x0f,0xfd,0x0f,0x8e,0x00,0x6b,
+ 0x00,0x92,0xfe,0x02,0xfe,0x01,0xfd,0x00,0xfe,0x7f,
+ 0xfe,0x7e,0xff,0x7d,0x00,0x7e,0x01,0x7d,0x02,0x7e,
+ 0x02,0x7f,0x03,0x00,0x02,0x01,0x02,0x02,0x04,0xfd,
+ 0x04,0x8e,0x00,0x72,0x00,0x88,0x01,0x03,0x02,0x02,
+ 0x02,0x01,0x03,0x00,0x01,0xf2,0x0e,0x8b,0xff,0x02,
+ 0xfd,0x01,0xfd,0x00,0xfd,0x7f,0xff,0x7e,0x01,0x7e,
+ 0x02,0x7f,0x05,0x7f,0x02,0x7f,0x01,0x7e,0x00,0x7f,
+ 0xff,0x7e,0xfd,0x7f,0xfd,0x00,0xfd,0x01,0xff,0x02,
+ 0x0e,0xfd,0x05,0x95,0x00,0x6f,0x01,0x7d,0x02,0x7f,
+ 0x02,0x00,0xf8,0x8e,0x07,0x00,0x03,0xf2,0x04,0x8e,
+ 0x00,0x76,0x01,0x7d,0x02,0x7f,0x03,0x00,0x02,0x01,
+ 0x03,0x03,0x00,0x8a,0x00,0x72,0x04,0x80,0x02,0x8e,
+ 0x06,0x72,0x06,0x8e,0xfa,0x72,0x08,0x80,0x03,0x8e,
+ 0x04,0x72,0x04,0x8e,0xfc,0x72,0x04,0x8e,0x04,0x72,
+ 0x04,0x8e,0xfc,0x72,0x07,0x80,0x03,0x8e,0x0b,0x72,
+ 0x00,0x8e,0xf5,0x72,0x0e,0x80,0x02,0x8e,0x06,0x72,
+ 0x06,0x8e,0xfa,0x72,0xfe,0x7c,0xfe,0x7e,0xfe,0x7f,
+ 0xff,0x00,0x0f,0x87,0x0e,0x8e,0xf5,0x72,0x00,0x8e,
+ 0x0b,0x00,0xf5,0xf2,0x0b,0x00,0x03,0x80,0x09,0x99,
+ 0xfe,0x7f,0xff,0x7f,0xff,0x7e,0x00,0x7e,0x01,0x7e,
+ 0x01,0x7f,0x01,0x7e,0x00,0x7e,0xfe,0x7e,0x01,0x8e,
+ 0xff,0x7e,0x00,0x7e,0x01,0x7e,0x01,0x7f,0x01,0x7e,
+ 0x00,0x7e,0xff,0x7e,0xfc,0x7e,0x04,0x7e,0x01,0x7e,
+ 0x00,0x7e,0xff,0x7e,0xff,0x7f,0xff,0x7e,0x00,0x7e,
+ 0x01,0x7e,0xff,0x8e,0x02,0x7e,0x00,0x7e,0xff,0x7e,
+ 0xff,0x7f,0xff,0x7e,0x00,0x7e,0x01,0x7e,0x01,0x7f,
+ 0x02,0x7f,0x05,0x87,0x04,0x95,0x00,0x77,0x00,0xfd,
+ 0x00,0x77,0x04,0x80,0x05,0x99,0x02,0x7f,0x01,0x7f,
+ 0x01,0x7e,0x00,0x7e,0xff,0x7e,0xff,0x7f,0xff,0x7e,
+ 0x00,0x7e,0x02,0x7e,0xff,0x8e,0x01,0x7e,0x00,0x7e,
+ 0xff,0x7e,0xff,0x7f,0xff,0x7e,0x00,0x7e,0x01,0x7e,
+ 0x04,0x7e,0xfc,0x7e,0xff,0x7e,0x00,0x7e,0x01,0x7e,
+ 0x01,0x7f,0x01,0x7e,0x00,0x7e,0xff,0x7e,0x01,0x8e,
+ 0xfe,0x7e,0x00,0x7e,0x01,0x7e,0x01,0x7f,0x01,0x7e,
+ 0x00,0x7e,0xff,0x7e,0xff,0x7f,0xfe,0x7f,0x09,0x87,
+ 0x03,0x86,0x00,0x02,0x01,0x03,0x02,0x01,0x02,0x00,
+ 0x02,0x7f,0x04,0x7d,0x02,0x7f,0x02,0x00,0x02,0x01,
+ 0x01,0x02,0xee,0xfe,0x01,0x02,0x02,0x01,0x02,0x00,
+ 0x02,0x7f,0x04,0x7d,0x02,0x7f,0x02,0x00,0x02,0x01,
+ 0x01,0x03,0x00,0x02,0x03,0xf4,0x10,0x80,0x03,0x80,
+ 0x07,0x15,0x08,0x6b,0xfe,0x85,0xf5,0x00,0x10,0xfb,
+ 0x0d,0x95,0xf6,0x00,0x00,0x6b,0x0a,0x00,0x02,0x02,
+ 0x00,0x08,0xfe,0x02,0xf6,0x00,0x0e,0xf4,0x03,0x80,
+ 0x00,0x15,0x0a,0x00,0x02,0x7e,0x00,0x7e,0x00,0x7d,
+ 0x00,0x7e,0xfe,0x7f,0xf6,0x00,0x0a,0x80,0x02,0x7e,
+ 0x01,0x7e,0x00,0x7d,0xff,0x7d,0xfe,0x7f,0xf6,0x00,
+ 0x10,0x80,0x03,0x80,0x00,0x15,0x0c,0x00,0xff,0x7e,
+ 0x03,0xed,0x03,0xfd,0x00,0x03,0x02,0x00,0x00,0x12,
+ 0x02,0x03,0x0a,0x00,0x00,0x6b,0x02,0x00,0x00,0x7d,
+ 0xfe,0x83,0xf4,0x00,0x11,0x80,0x0f,0x80,0xf4,0x00,
+ 0x00,0x15,0x0c,0x00,0xff,0xf6,0xf5,0x00,0x0f,0xf5,
+ 0x04,0x95,0x07,0x76,0x00,0x0a,0x07,0x80,0xf9,0x76,
+ 0x00,0x75,0xf8,0x80,0x07,0x0c,0x09,0xf4,0xf9,0x0c,
+ 0x09,0xf4,0x03,0x92,0x02,0x03,0x07,0x00,0x03,0x7d,
+ 0x00,0x7b,0xfc,0x7e,0x04,0x7d,0x00,0x7a,0xfd,0x7e,
+ 0xf9,0x00,0xfe,0x02,0x06,0x89,0x02,0x00,0x06,0xf5,
+ 0x03,0x95,0x00,0x6b,0x0c,0x15,0x00,0x6b,0x02,0x80,
+ 0x03,0x95,0x00,0x6b,0x0c,0x15,0x00,0x6b,0xf8,0x96,
+ 0x03,0x00,0x07,0xea,0x03,0x80,0x00,0x15,0x0c,0x80,
+ 0xf7,0x76,0xfd,0x00,0x03,0x80,0x0a,0x75,0x03,0x80,
+ 0x03,0x80,0x07,0x13,0x02,0x02,0x03,0x00,0x00,0x6b,
+ 0x02,0x80,0x03,0x80,0x00,0x15,0x09,0x6b,0x09,0x15,
+ 0x00,0x6b,0x03,0x80,0x03,0x80,0x00,0x15,0x00,0xf6,
+ 0x0d,0x00,0x00,0x8a,0x00,0x6b,0x03,0x80,0x07,0x80,
+ 0xfd,0x00,0xff,0x03,0x00,0x04,0x00,0x07,0x00,0x04,
+ 0x01,0x02,0x03,0x01,0x06,0x00,0x03,0x7f,0x01,0x7e,
+ 0x01,0x7c,0x00,0x79,0xff,0x7c,0xff,0x7d,0xfd,0x00,
+ 0xfa,0x00,0x0e,0x80,0x03,0x80,0x00,0x15,0x0c,0x00,
+ 0x00,0x6b,0x02,0x80,0x03,0x80,0x00,0x15,0x0a,0x00,
+ 0x02,0x7f,0x01,0x7d,0x00,0x7b,0xff,0x7e,0xfe,0x7f,
+ 0xf6,0x00,0x10,0xf7,0x11,0x8f,0xff,0x03,0xff,0x02,
+ 0xfe,0x01,0xfa,0x00,0xfd,0x7f,0xff,0x7e,0x00,0x7c,
+ 0x00,0x79,0x00,0x7b,0x01,0x7e,0x03,0x00,0x06,0x00,
+ 0x02,0x00,0x01,0x03,0x01,0x02,0x03,0xfb,0x03,0x95,
+ 0x0c,0x00,0xfa,0x80,0x00,0x6b,0x09,0x80,0x03,0x95,
+ 0x00,0x77,0x06,0x7a,0x06,0x06,0x00,0x09,0xfa,0xf1,
+ 0xfa,0x7a,0x0e,0x80,0x03,0x87,0x00,0x0b,0x02,0x02,
+ 0x03,0x00,0x02,0x7e,0x01,0x02,0x04,0x00,0x02,0x7e,
+ 0x00,0x75,0xfe,0x7e,0xfc,0x00,0xff,0x01,0xfe,0x7f,
+ 0xfd,0x00,0xfe,0x02,0x07,0x8e,0x00,0x6b,0x09,0x80,
+ 0x03,0x80,0x0e,0x15,0xf2,0x80,0x0e,0x6b,0x03,0x80,
+ 0x03,0x95,0x00,0x6b,0x0e,0x00,0x00,0x7d,0xfe,0x98,
+ 0x00,0x6b,0x05,0x80,0x03,0x95,0x00,0x75,0x02,0x7d,
+ 0x0a,0x00,0x00,0x8e,0x00,0x6b,0x02,0x80,0x03,0x95,
+ 0x00,0x6b,0x10,0x00,0x00,0x15,0xf8,0x80,0x00,0x6b,
+ 0x0a,0x80,0x03,0x95,0x00,0x6b,0x10,0x00,0x00,0x15,
+ 0xf8,0x80,0x00,0x6b,0x0a,0x00,0x00,0x7d,0x02,0x83,
+ 0x10,0x80,0x03,0x95,0x00,0x6b,0x09,0x00,0x03,0x02,
+ 0x00,0x08,0xfd,0x02,0xf7,0x00,0x0e,0x89,0x00,0x6b,
+ 0x03,0x80,0x03,0x95,0x00,0x6b,0x09,0x00,0x03,0x02,
+ 0x00,0x08,0xfd,0x02,0xf7,0x00,0x0e,0xf4,0x03,0x92,
+ 0x02,0x03,0x07,0x00,0x03,0x7d,0x00,0x70,0xfd,0x7e,
+ 0xf9,0x00,0xfe,0x02,0x03,0x89,0x09,0x00,0x02,0xf5,
+ 0x03,0x80,0x00,0x15,0x00,0xf5,0x07,0x00,0x00,0x08,
+ 0x02,0x03,0x06,0x00,0x02,0x7d,0x00,0x70,0xfe,0x7e,
+ 0xfa,0x00,0xfe,0x02,0x00,0x08,0x0c,0xf6,0x0f,0x80,
+ 0x00,0x15,0xf6,0x00,0xfe,0x7d,0x00,0x79,0x02,0x7e,
+ 0x0a,0x00,0xf4,0xf7,0x07,0x09,0x07,0xf7,0x03,0x8c,
+ 0x01,0x02,0x01,0x01,0x05,0x00,0x02,0x7f,0x01,0x7e,
+ 0x00,0x74,0x00,0x86,0xff,0x01,0xfe,0x01,0xfb,0x00,
+ 0xff,0x7f,0xff,0x7f,0x00,0x7c,0x01,0x7e,0x01,0x00,
+ 0x05,0x00,0x02,0x00,0x01,0x02,0x03,0xfe,0x04,0x8e,
+ 0x02,0x01,0x04,0x00,0x02,0x7f,0x01,0x7e,0x00,0x77,
+ 0xff,0x7e,0xfe,0x7f,0xfc,0x00,0xfe,0x01,0xff,0x02,
+ 0x00,0x09,0x01,0x02,0x02,0x02,0x03,0x01,0x02,0x01,
+ 0x01,0x01,0x01,0x02,0x02,0xeb,0x03,0x80,0x00,0x15,
+ 0x03,0x00,0x02,0x7e,0x00,0x7b,0xfe,0x7e,0xfd,0x00,
+ 0x03,0x80,0x04,0x00,0x03,0x7e,0x00,0x78,0xfd,0x7e,
+ 0xf9,0x00,0x0c,0x80,0x03,0x8c,0x02,0x02,0x02,0x01,
+ 0x03,0x00,0x02,0x7f,0x01,0x7d,0xfe,0x7e,0xf9,0x7d,
+ 0xff,0x7e,0x00,0x7d,0x03,0x7f,0x02,0x00,0x03,0x01,
+ 0x02,0x01,0x02,0xfe,0x0d,0x8c,0xff,0x02,0xfe,0x01,
+ 0xfc,0x00,0xfe,0x7f,0xff,0x7e,0x00,0x77,0x01,0x7e,
+ 0x02,0x7f,0x04,0x00,0x02,0x01,0x01,0x02,0x00,0x0f,
+ 0xff,0x02,0xfe,0x01,0xf9,0x00,0x0c,0xeb,0x03,0x88,
+ 0x0a,0x00,0x00,0x02,0x00,0x03,0xfe,0x02,0xfa,0x00,
+ 0xff,0x7e,0xff,0x7d,0x00,0x7b,0x01,0x7c,0x01,0x7f,
+ 0x06,0x00,0x02,0x02,0x03,0xfe,0x03,0x8f,0x06,0x77,
+ 0x06,0x09,0xfa,0x80,0x00,0x71,0xff,0x87,0xfb,0x79,
+ 0x07,0x87,0x05,0x79,0x02,0x80,0x03,0x8d,0x02,0x02,
+ 0x06,0x00,0x02,0x7e,0x00,0x7d,0xfc,0x7d,0x04,0x7e,
+ 0x00,0x7d,0xfe,0x7e,0xfa,0x00,0xfe,0x02,0x04,0x85,
+ 0x02,0x00,0x06,0xf9,0x03,0x8f,0x00,0x73,0x01,0x7e,
+ 0x07,0x00,0x02,0x02,0x00,0x0d,0x00,0xf3,0x01,0x7e,
+ 0x03,0x80,0x03,0x8f,0x00,0x73,0x01,0x7e,0x07,0x00,
+ 0x02,0x02,0x00,0x0d,0x00,0xf3,0x01,0x7e,0xf8,0x90,
+ 0x03,0x00,0x08,0xf0,0x03,0x80,0x00,0x15,0x00,0xf3,
+ 0x02,0x00,0x06,0x07,0xfa,0xf9,0x07,0x78,0x03,0x80,
+ 0x03,0x80,0x04,0x0c,0x02,0x03,0x04,0x00,0x00,0x71,
+ 0x02,0x80,0x03,0x80,0x00,0x0f,0x06,0x77,0x06,0x09,
+ 0x00,0x71,0x02,0x80,0x03,0x80,0x00,0x0f,0x0a,0xf1,
+ 0x00,0x0f,0xf6,0xf8,0x0a,0x00,0x02,0xf9,0x05,0x80,
+ 0xff,0x01,0xff,0x04,0x00,0x05,0x01,0x03,0x01,0x02,
+ 0x06,0x00,0x02,0x7e,0x00,0x7d,0x00,0x7b,0x00,0x7c,
+ 0xfe,0x7f,0xfa,0x00,0x0b,0x80,0x03,0x80,0x00,0x0f,
+ 0x00,0xfb,0x01,0x03,0x01,0x02,0x05,0x00,0x02,0x7e,
+ 0x01,0x7d,0x00,0x76,0x03,0x80,0x10,0x80,0x10,0x80,
+ 0x10,0x80,0x10,0x80,0x10,0x80,0x10,0x80,0x10,0x80,
+ 0x10,0x80,0x10,0x80,0x10,0x80,0x10,0x80,0x10,0x80,
+ 0x10,0x80,0x10,0x80,0x10,0x80,0x10,0x80,0x10,0x80,
+ 0x10,0x80,0x10,0x80,0x10,0x80,0x10,0x80,0x10,0x80,
+ 0x10,0x80,0x10,0x80,0x10,0x80,0x10,0x80,0x10,0x80,
+ 0x10,0x80,0x10,0x80,0x10,0x80,0x10,0x80,0x10,0x80,
+ 0x10,0x80,0x10,0x80,0x10,0x80,0x10,0x80,0x10,0x80,
+ 0x10,0x80,0x10,0x80,0x10,0x80,0x10,0x80,0x10,0x80,
+ 0x10,0x80,0x10,0x80,0x10,0x80,0x10,0x80,0x10,0x80,
+ 0x10,0x80,0x0a,0x8f,0x02,0x7f,0x01,0x7e,0x00,0x76,
+ 0xff,0x7f,0xfe,0x7f,0xfb,0x00,0xff,0x01,0xff,0x01,
+ 0x00,0x0a,0x01,0x02,0x01,0x01,0x05,0x00,0xf9,0x80,
+ 0x00,0x6b,0x0c,0x86,0x0d,0x8a,0xff,0x03,0xfe,0x02,
+ 0xfb,0x00,0xff,0x7e,0xff,0x7d,0x00,0x7b,0x01,0x7c,
+ 0x01,0x7f,0x05,0x00,0x02,0x01,0x01,0x03,0x03,0xfc,
+ 0x03,0x80,0x00,0x0f,0x00,0xfb,0x01,0x03,0x01,0x02,
+ 0x04,0x00,0x01,0x7e,0x01,0x7d,0x00,0x76,0x00,0x8a,
+ 0x01,0x03,0x02,0x02,0x03,0x00,0x02,0x7e,0x01,0x7d,
+ 0x00,0x76,0x03,0x80,0x03,0x8f,0x00,0x74,0x01,0x7e,
+ 0x02,0x7f,0x04,0x00,0x02,0x01,0x01,0x01,0x00,0x8d,
+ 0x00,0x6e,0xff,0x7e,0xfe,0x7f,0xfb,0x00,0xfe,0x01,
+ 0x0c,0x85,0x03,0x8d,0x01,0x02,0x03,0x00,0x02,0x7e,
+ 0x01,0x02,0x03,0x00,0x02,0x7e,0x00,0x74,0xfe,0x7f,
+ 0xfd,0x00,0xff,0x01,0xfe,0x7f,0xfd,0x00,0xff,0x01,
+ 0x00,0x0c,0x06,0x82,0x00,0x6b,0x08,0x86,0x03,0x80,
+ 0x0a,0x0f,0xf6,0x80,0x0a,0x71,0x03,0x80,0x03,0x8f,
+ 0x00,0x73,0x01,0x7e,0x07,0x00,0x02,0x02,0x00,0x0d,
+ 0x00,0xf3,0x01,0x7e,0x00,0x7e,0x03,0x82,0x03,0x8f,
+ 0x00,0x79,0x02,0x7e,0x08,0x00,0x00,0x89,0x00,0x71,
+ 0x02,0x80,0x03,0x8f,0x00,0x73,0x01,0x7e,0x03,0x00,
+ 0x02,0x02,0x00,0x0d,0x00,0xf3,0x01,0x7e,0x03,0x00,
+ 0x02,0x02,0x00,0x0d,0x00,0xf3,0x01,0x7e,0x03,0x80,
+ 0x03,0x8f,0x00,0x73,0x01,0x7e,0x03,0x00,0x02,0x02,
+ 0x00,0x0d,0x00,0xf3,0x01,0x7e,0x03,0x00,0x02,0x02,
+ 0x00,0x0d,0x00,0xf3,0x01,0x7e,0x00,0x7e,0x03,0x82,
+ 0x03,0x8d,0x00,0x02,0x02,0x00,0x00,0x71,0x08,0x00,
+ 0x02,0x02,0x00,0x06,0xfe,0x02,0xf8,0x00,0x0c,0xf6,
+ 0x03,0x8f,0x00,0x71,0x07,0x00,0x02,0x02,0x00,0x06,
+ 0xfe,0x02,0xf9,0x00,0x0c,0x85,0x00,0x71,0x02,0x80,
+ 0x03,0x8f,0x00,0x71,0x07,0x00,0x03,0x02,0x00,0x06,
+ 0xfd,0x02,0xf9,0x00,0x0c,0xf6,0x03,0x8d,0x02,0x02,
+ 0x06,0x00,0x02,0x7e,0x00,0x75,0xfe,0x7e,0xfa,0x00,
+ 0xfe,0x02,0x04,0x85,0x06,0x00,0x02,0xf9,0x03,0x80,
+ 0x00,0x0f,0x00,0xf8,0x04,0x00,0x00,0x06,0x02,0x02,
+ 0x04,0x00,0x02,0x7e,0x00,0x75,0xfe,0x7e,0xfc,0x00,
+ 0xfe,0x02,0x00,0x05,0x0a,0xf9,0x0d,0x80,0x00,0x0f,
+ 0xf7,0x00,0xff,0x7e,0x00,0x7b,0x01,0x7e,0x09,0x00,
+ 0xf6,0xfa,0x04,0x06,0x08,0xfa
+ };
+
+
+
+ //-------------------------------------------------------------------------
+ gsv_text::~gsv_text()
+ {
+ if(m_loaded_font) delete [] m_loaded_font;
+ if(m_text_buf) delete [] m_text_buf;
+ }
+
+
+ //-------------------------------------------------------------------------
+ gsv_text::gsv_text() :
+ m_x(0.0),
+ m_y(0.0),
+ m_start_x(0.0),
+ m_width(10.0),
+ m_height(0.0),
+ m_space(0.0),
+ m_line_space(0.0),
+ m_text(m_chr),
+ m_text_buf(0),
+ m_buf_size(0),
+ m_cur_chr(m_chr),
+ m_font(gsv_default_font),
+ m_loaded_font(0),
+ m_status(initial),
+ m_big_endian(false),
+ m_flip(false)
+ {
+ m_chr[0] = m_chr[1] = 0;
+
+ int t = 1;
+ if(*(char*)&t == 0) m_big_endian = true;
+ }
+
+
+
+ //-------------------------------------------------------------------------
+ void gsv_text::font(const void* _font)
+ {
+ m_font = _font;
+ if(m_font == 0) m_font = m_loaded_font;
+ }
+
+ //-------------------------------------------------------------------------
+ void gsv_text::size(double height, double width)
+ {
+ m_height = height;
+ m_width = width;
+ }
+
+ //-------------------------------------------------------------------------
+ void gsv_text::space(double _space)
+ {
+ m_space = _space;
+ }
+
+ //-------------------------------------------------------------------------
+ void gsv_text::line_space(double _line_space)
+ {
+ m_line_space = _line_space;
+ }
+
+ //-------------------------------------------------------------------------
+ void gsv_text::start_point(double x, double y)
+ {
+ m_x = m_start_x = x;
+ m_y = y;
+ //if(m_flip) m_y += m_height;
+ }
+
+
+ //-------------------------------------------------------------------------
+ void gsv_text::load_font(const char* file)
+ {
+ if(m_loaded_font) delete [] m_loaded_font;
+ m_loaded_font = 0;
+
+ FILE* fd = fopen(file, "rb");
+ if(fd)
+ {
+ unsigned len;
+
+ fseek(fd, 0l, SEEK_END);
+ len = ftell(fd);
+ fseek(fd, 0l, SEEK_SET);
+ if(len > 0)
+ {
+ m_loaded_font = new char [len];
+ fread(m_loaded_font, 1, len, fd);
+ m_font = m_loaded_font;
+ }
+ fclose(fd);
+ }
+ }
+
+
+ //-------------------------------------------------------------------------
+ void gsv_text::text(const char* _text)
+ {
+ if(_text == 0)
+ {
+ m_chr[0] = 0;
+ m_text = m_chr;
+ return;
+ }
+ unsigned new_size = strlen(_text) + 1;
+ if(new_size > m_buf_size)
+ {
+ if(m_text_buf) delete [] m_text_buf;
+ m_text_buf = new char [m_buf_size = new_size];
+ }
+ memcpy(m_text_buf, _text, new_size);
+ m_text = m_text_buf;
+ }
+
+
+
+ //-------------------------------------------------------------------------
+ void gsv_text::rewind(unsigned)
+ {
+ m_status = initial;
+ if(m_font == 0) return;
+
+ m_indices = (int8u*)m_font;
+ double base_height = value(m_indices + 4);
+ m_indices += value(m_indices);
+ m_glyphs = (int8*)(m_indices + 257*2);
+ m_h = m_height / base_height;
+ m_w = (m_width == 0.0) ? m_h : m_width / base_height;
+ if(m_flip) m_h = -m_h;
+ m_cur_chr = m_text;
+ }
+
+
+ //-------------------------------------------------------------------------
+ unsigned gsv_text::vertex(double* x, double* y)
+ {
+ unsigned idx;
+ int8 yc, yf;
+ int dx, dy;
+ bool quit = false;
+
+
+ while(!quit)
+ {
+ switch(m_status)
+ {
+ case initial:
+ if(m_font == 0)
+ {
+ quit = true;
+ break;
+ }
+ m_status = next_char;
+
+ case next_char:
+ if(*m_cur_chr == 0)
+ {
+ quit = true;
+ break;
+ }
+ idx = (*m_cur_chr++) & 0xFF;
+ if(idx == '\n')
+ {
+ m_x = m_start_x;
+ m_y -= m_flip ? -m_height - m_line_space : m_height + m_line_space;
+ break;
+ }
+ idx <<= 1;
+ m_bglyph = m_glyphs + value(m_indices + idx);
+ m_eglyph = m_glyphs + value(m_indices + idx + 2);
+ m_status = start_glyph;
+
+ case start_glyph:
+ *x = m_x;
+ *y = m_y;
+ m_status = glyph;
+ return path_cmd_move_to;
+
+ case glyph:
+ if(m_bglyph >= m_eglyph)
+ {
+ m_status = next_char;
+ m_x += m_space;
+ break;
+ }
+ dx = int(*m_bglyph++);
+ yf = (yc = *m_bglyph++) & 0x80;
+ yc <<= 1;
+ yc >>= 1;
+ dy = int(yc);
+ m_x += double(dx) * m_w;
+ m_y += double(dy) * m_h;
+ *x = m_x;
+ *y = m_y;
+ return yf ? path_cmd_move_to : path_cmd_line_to;
+ }
+
+ }
+ return path_cmd_stop;
+ }
+
+
+
+}
diff --git a/agg/source/agg_image_filters.cpp b/agg/source/agg_image_filters.cpp
new file mode 100755
index 000000000000..28dd0654eeb4
--- /dev/null
+++ b/agg/source/agg_image_filters.cpp
@@ -0,0 +1,120 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Filtering class image_filter_lut implemantation
+//
+//----------------------------------------------------------------------------
+
+
+#include "agg_image_filters.h"
+
+
+namespace agg
+{
+
+ //--------------------------------------------------------------------
+ image_filter_lut::~image_filter_lut()
+ {
+ delete [] m_weight_array;
+ }
+
+
+ //--------------------------------------------------------------------
+ image_filter_lut::image_filter_lut() :
+ m_weight_array(0),
+ m_max_size(0)
+ {}
+
+ //--------------------------------------------------------------------
+ void image_filter_lut::realloc(double _radius)
+ {
+ m_radius = _radius;
+ m_diameter = unsigned(ceil(_radius)) * 2;
+ m_start = -int(m_diameter / 2 - 1);
+ unsigned size = m_diameter << image_subpixel_shift;
+ if(size > m_max_size)
+ {
+ delete [] m_weight_array;
+ m_weight_array = new int16 [size];
+ m_max_size = size;
+ }
+ }
+
+
+
+ //--------------------------------------------------------------------
+ // This function normalizes integer values and corrects the rounding
+ // errors. It doesn't do anything with the source floating point values
+ // (m_weight_array_dbl), it corrects only integers according to the rule
+ // of 1.0 which means that any sum of pixel weights must be equal to 1.0.
+ // So, the filter function must produce a graph of the proper shape.
+ //--------------------------------------------------------------------
+ void image_filter_lut::normalize()
+ {
+ unsigned i;
+ int flip = 1;
+
+ for(i = 0; i < image_subpixel_size; i++)
+ {
+ for(;;)
+ {
+ int sum = 0;
+ unsigned j;
+ for(j = 0; j < m_diameter; j++)
+ {
+ sum += m_weight_array[j * image_subpixel_size + i];
+ }
+
+ if(sum == image_filter_size) break;
+
+ double k = double(image_filter_size) / double(sum);
+ sum = 0;
+ for(j = 0; j < m_diameter; j++)
+ {
+ sum += m_weight_array[j * image_subpixel_size + i] =
+ int16(m_weight_array[j * image_subpixel_size + i] * k);
+ }
+
+ sum -= image_filter_size;
+ int16 inc = (sum > 0) ? -1 : 1;
+
+ for(j = 0; j < m_diameter && sum; j++)
+ {
+ flip ^= 1;
+ unsigned idx = flip ? m_diameter/2 + j/2 : m_diameter/2 - j/2;
+ int v = m_weight_array[idx * image_subpixel_size + i];
+ if(v < image_filter_size)
+ {
+ m_weight_array[idx * image_subpixel_size + i] =
+ m_weight_array[idx * image_subpixel_size + i] + inc;
+ sum += inc;
+ }
+ }
+ }
+ }
+
+ unsigned pivot = m_diameter << (image_subpixel_shift - 1);
+
+ for(i = 0; i < pivot; i++)
+ {
+ m_weight_array[pivot + i] = m_weight_array[pivot - i];
+ }
+ unsigned end = (diameter() << image_subpixel_shift) - 1;
+ m_weight_array[0] = m_weight_array[end];
+ }
+
+
+}
+
diff --git a/agg/source/agg_line_aa_basics.cpp b/agg/source/agg_line_aa_basics.cpp
new file mode 100755
index 000000000000..34103178d7b7
--- /dev/null
+++ b/agg/source/agg_line_aa_basics.cpp
@@ -0,0 +1,82 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#include <math.h>
+#include "agg_line_aa_basics.h"
+
+namespace agg
+{
+ //-------------------------------------------------------------------------
+ // The number of the octant is determined as a 3-bit value as follows:
+ // bit 0 = vertical flag
+ // bit 1 = sx < 0
+ // bit 2 = sy < 0
+ //
+ // [N] shows the number of the orthogonal quadrant
+ // <M> shows the number of the diagonal quadrant
+ // <1>
+ // [1] | [0]
+ // . (3)011 | 001(1) .
+ // . | .
+ // . | .
+ // . | .
+ // (2)010 .|. 000(0)
+ // <2> ----------.+.----------- <0>
+ // (6)110 . | . 100(4)
+ // . | .
+ // . | .
+ // . | .
+ // (7)111 | 101(5)
+ // [2] | [3]
+ // <3>
+ // 0,1,2,3,4,5,6,7
+ int8u line_parameters::s_orthogonal_quadrant[8] = { 0,0,1,1,3,3,2,2 };
+ int8u line_parameters::s_diagonal_quadrant[8] = { 0,1,2,1,0,3,2,3 };
+
+
+
+ //-------------------------------------------------------------------------
+ void bisectrix(const line_parameters& l1,
+ const line_parameters& l2,
+ int* x, int* y)
+ {
+ double k = double(l2.len) / double(l1.len);
+ double tx = l2.x2 - (l2.x1 - l1.x1) * k;
+ double ty = l2.y2 - (l2.y1 - l1.y1) * k;
+
+ //All bisectrices must be on the right of the line
+ //If the next point is on the left (l1 => l2.2)
+ //then the bisectix should be rotated by 180 degrees.
+ if(double(l2.x2 - l2.x1) * double(l2.y1 - l1.y1) <
+ double(l2.y2 - l2.y1) * double(l2.x1 - l1.x1) + 100.0)
+ {
+ tx -= (tx - l2.x1) * 2.0;
+ ty -= (ty - l2.y1) * 2.0;
+ }
+
+ // Check if the bisectrix is too short
+ double dx = tx - l2.x1;
+ double dy = ty - l2.y1;
+ if((int)sqrt(dx * dx + dy * dy) < line_subpixel_size)
+ {
+ *x = (l2.x1 + l2.x1 + (l2.y1 - l1.y1) + (l2.y2 - l2.y1)) >> 1;
+ *y = (l2.y1 + l2.y1 - (l2.x1 - l1.x1) - (l2.x2 - l2.x1)) >> 1;
+ return;
+ }
+ *x = int(tx);
+ *y = int(ty);
+ }
+
+}
diff --git a/agg/source/agg_line_profile_aa.cpp b/agg/source/agg_line_profile_aa.cpp
new file mode 100755
index 000000000000..1374475b663f
--- /dev/null
+++ b/agg/source/agg_line_profile_aa.cpp
@@ -0,0 +1,117 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#include "agg_renderer_outline_aa.h"
+
+namespace agg
+{
+
+ //---------------------------------------------------------------------
+ void line_profile_aa::width(double w)
+ {
+ if(w < 0.0) w = 0.0;
+
+ if(w < m_smoother_width) w += w;
+ else w += m_smoother_width;
+
+ w *= 0.5;
+
+ w -= m_smoother_width;
+ double s = m_smoother_width;
+ if(w < 0.0)
+ {
+ s += w;
+ w = 0.0;
+ }
+ set(w, s);
+ }
+
+
+ //---------------------------------------------------------------------
+ line_profile_aa::value_type* line_profile_aa::profile(double w)
+ {
+ m_subpixel_width = int(w * subpixel_size);
+ unsigned size = m_subpixel_width + subpixel_size * 6;
+ if(size > m_size)
+ {
+ delete [] m_profile;
+ m_profile = new value_type[m_size = size];
+ }
+ return m_profile;
+ }
+
+
+ //---------------------------------------------------------------------
+ void line_profile_aa::set(double center_width, double _smoother_width)
+ {
+ double base_val = 1.0;
+ if(center_width == 0.0) center_width = 1.0 / subpixel_size;
+ if(_smoother_width == 0.0) _smoother_width = 1.0 / subpixel_size;
+
+ double _width = center_width + _smoother_width;
+ if(_width < m_min_width)
+ {
+ double k = _width / m_min_width;
+ base_val *= k;
+ center_width /= k;
+ _smoother_width /= k;
+ }
+
+ value_type* ch = profile(center_width + _smoother_width);
+
+ unsigned subpixel_center_width = unsigned(center_width * subpixel_size);
+ unsigned subpixel_smoother_width = unsigned(_smoother_width * subpixel_size);
+
+ value_type* ch_center = ch + subpixel_size*2;
+ value_type* ch_smoother = ch_center + subpixel_center_width;
+
+ unsigned i;
+
+ unsigned val = m_gamma[unsigned(base_val * aa_mask)];
+ ch = ch_center;
+ for(i = 0; i < subpixel_center_width; i++)
+ {
+ *ch++ = (value_type)val;
+ }
+
+ for(i = 0; i < subpixel_smoother_width; i++)
+ {
+ *ch_smoother++ =
+ m_gamma[unsigned((base_val -
+ base_val *
+ (double(i) / subpixel_smoother_width)) * aa_mask)];
+ }
+
+ unsigned n_smoother = profile_size() -
+ subpixel_smoother_width -
+ subpixel_center_width -
+ subpixel_size*2;
+
+ val = m_gamma[0];
+ for(i = 0; i < n_smoother; i++)
+ {
+ *ch_smoother++ = (value_type)val;
+ }
+
+ ch = ch_center;
+ for(i = 0; i < subpixel_size*2; i++)
+ {
+ *--ch = *ch_center++;
+ }
+ }
+
+
+}
+
diff --git a/agg/source/agg_path_storage.cpp b/agg/source/agg_path_storage.cpp
new file mode 100755
index 000000000000..60eafffff14f
--- /dev/null
+++ b/agg/source/agg_path_storage.cpp
@@ -0,0 +1,525 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Class path_storage
+//
+//----------------------------------------------------------------------------
+#include <string.h>
+#include <math.h>
+#include "agg_path_storage.h"
+#include "agg_math.h"
+#include "agg_bezier_arc.h"
+
+
+namespace agg
+{
+
+ //------------------------------------------------------------------------
+ path_storage::~path_storage()
+ {
+ if(m_total_blocks)
+ {
+ double** coord_blk = m_coord_blocks + m_total_blocks - 1;
+ while(m_total_blocks--)
+ {
+ delete [] *coord_blk;
+ --coord_blk;
+ }
+ delete [] m_coord_blocks;
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ path_storage::path_storage() :
+ m_total_vertices(0),
+ m_total_blocks(0),
+ m_max_blocks(0),
+ m_coord_blocks(0),
+ m_cmd_blocks(0),
+ m_iterator(0)
+ {
+ }
+
+
+ //------------------------------------------------------------------------
+ path_storage::path_storage(const path_storage& ps) :
+ m_total_vertices(0),
+ m_total_blocks(0),
+ m_max_blocks(0),
+ m_coord_blocks(0),
+ m_cmd_blocks(0),
+ m_iterator(0)
+ {
+ copy_from(ps);
+ }
+
+
+ //------------------------------------------------------------------------
+ void path_storage::remove_all()
+ {
+ m_total_vertices = 0;
+ m_iterator = 0;
+ }
+
+
+ //------------------------------------------------------------------------
+ void path_storage::copy_from(const path_storage& ps)
+ {
+ remove_all();
+ unsigned i;
+ for(i = 0; i < ps.total_vertices(); i++)
+ {
+ double x, y;
+ unsigned cmd = ps.vertex(i, &x, &y);
+ add_vertex(x, y, cmd);
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ void path_storage::allocate_block(unsigned nb)
+ {
+ if(nb >= m_max_blocks)
+ {
+ double** new_coords =
+ new double* [(m_max_blocks + block_pool) * 2];
+
+ unsigned char** new_cmds =
+ (unsigned char**)(new_coords + m_max_blocks + block_pool);
+
+ if(m_coord_blocks)
+ {
+ memcpy(new_coords,
+ m_coord_blocks,
+ m_max_blocks * sizeof(double*));
+
+ memcpy(new_cmds,
+ m_cmd_blocks,
+ m_max_blocks * sizeof(unsigned char*));
+
+ delete [] m_coord_blocks;
+ }
+ m_coord_blocks = new_coords;
+ m_cmd_blocks = new_cmds;
+ m_max_blocks += block_pool;
+ }
+ m_coord_blocks[nb] =
+ new double [block_size * 2 +
+ block_size /
+ (sizeof(double) / sizeof(unsigned char))];
+
+ m_cmd_blocks[nb] =
+ (unsigned char*)(m_coord_blocks[nb] + block_size * 2);
+
+ m_total_blocks++;
+ }
+
+
+ //------------------------------------------------------------------------
+ void path_storage::rewind(unsigned path_id)
+ {
+ m_iterator = path_id;
+ }
+
+
+
+ //------------------------------------------------------------------------
+ void path_storage::arc_to(double rx, double ry,
+ double angle,
+ bool large_arc_flag,
+ bool sweep_flag,
+ double x, double y)
+ {
+ if(m_total_vertices && is_vertex(command(m_total_vertices - 1)))
+ {
+ const double epsilon = 1e-30;
+ double x0 = 0.0;
+ double y0 = 0.0;
+ last_vertex(&x0, &y0);
+
+ rx = fabs(rx);
+ ry = fabs(ry);
+
+ // Ensure radii are valid
+ //-------------------------
+ if(rx < epsilon || ry < epsilon)
+ {
+ line_to(x, y);
+ return;
+ }
+
+ if(calc_distance(x0, y0, x, y) < epsilon)
+ {
+ // If the endpoints (x, y) and (x0, y0) are identical, then this
+ // is equivalent to omitting the elliptical arc segment entirely.
+ return;
+ }
+ bezier_arc_svg a(x0, y0, rx, ry, angle, large_arc_flag, sweep_flag, x, y);
+ if(a.radii_ok())
+ {
+ add_path(a, 0, true);
+ }
+ else
+ {
+ line_to(x, y);
+ }
+ }
+ else
+ {
+ move_to(x, y);
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ void path_storage::arc_rel(double rx, double ry,
+ double angle,
+ bool large_arc_flag,
+ bool sweep_flag,
+ double dx, double dy)
+ {
+ rel_to_abs(&dx, &dy);
+ arc_to(rx, ry, angle, large_arc_flag, sweep_flag, dx, dy);
+ }
+
+
+ //------------------------------------------------------------------------
+ void path_storage::curve3(double x_ctrl, double y_ctrl,
+ double x_to, double y_to)
+ {
+ add_vertex(x_ctrl, y_ctrl, path_cmd_curve3);
+ add_vertex(x_to, y_to, path_cmd_curve3);
+ }
+
+ //------------------------------------------------------------------------
+ void path_storage::curve3_rel(double dx_ctrl, double dy_ctrl,
+ double dx_to, double dy_to)
+ {
+ rel_to_abs(&dx_ctrl, &dy_ctrl);
+ rel_to_abs(&dx_to, &dy_to);
+ add_vertex(dx_ctrl, dy_ctrl, path_cmd_curve3);
+ add_vertex(dx_to, dy_to, path_cmd_curve3);
+ }
+
+ //------------------------------------------------------------------------
+ void path_storage::curve3(double x_to, double y_to)
+ {
+ double x0 = 0;
+ double y0 = 0;
+ if(is_vertex(last_vertex(&x0, &y0)))
+ {
+ double x_ctrl = 0;
+ double y_ctrl = 0;
+ unsigned cmd = prev_vertex(&x_ctrl, &y_ctrl);
+ if(is_curve(cmd))
+ {
+ x_ctrl = x0 + x0 - x_ctrl;
+ y_ctrl = y0 + y0 - y_ctrl;
+ }
+ else
+ {
+ x_ctrl = x0;
+ y_ctrl = y0;
+ }
+ curve3(x_ctrl, y_ctrl, x_to, y_to);
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ void path_storage::curve3_rel(double dx_to, double dy_to)
+ {
+ rel_to_abs(&dx_to, &dy_to);
+ curve3(dx_to, dy_to);
+ }
+
+
+ //------------------------------------------------------------------------
+ void path_storage::curve4(double x_ctrl1, double y_ctrl1,
+ double x_ctrl2, double y_ctrl2,
+ double x_to, double y_to)
+ {
+ add_vertex(x_ctrl1, y_ctrl1, path_cmd_curve4);
+ add_vertex(x_ctrl2, y_ctrl2, path_cmd_curve4);
+ add_vertex(x_to, y_to, path_cmd_curve4);
+ }
+
+ //------------------------------------------------------------------------
+ void path_storage::curve4_rel(double dx_ctrl1, double dy_ctrl1,
+ double dx_ctrl2, double dy_ctrl2,
+ double dx_to, double dy_to)
+ {
+ rel_to_abs(&dx_ctrl1, &dy_ctrl1);
+ rel_to_abs(&dx_ctrl2, &dy_ctrl2);
+ rel_to_abs(&dx_to, &dy_to);
+ add_vertex(dx_ctrl1, dy_ctrl1, path_cmd_curve4);
+ add_vertex(dx_ctrl2, dy_ctrl2, path_cmd_curve4);
+ add_vertex(dx_to, dy_to, path_cmd_curve4);
+ }
+
+
+ //------------------------------------------------------------------------
+ void path_storage::curve4(double x_ctrl2, double y_ctrl2,
+ double x_to, double y_to)
+ {
+ double x0 = 0;
+ double y0 = 0;
+ if(is_vertex(last_vertex(&x0, &y0)))
+ {
+ double x_ctrl1 = 0;
+ double y_ctrl1 = 0;
+ unsigned cmd = prev_vertex(&x_ctrl1, &y_ctrl1);
+ if(is_curve(cmd))
+ {
+ x_ctrl1 = x0 + x0 - x_ctrl1;
+ y_ctrl1 = y0 + y0 - y_ctrl1;
+ }
+ else
+ {
+ x_ctrl1 = x0;
+ y_ctrl1 = y0;
+ }
+ curve4(x_ctrl1, y_ctrl1, x_ctrl2, y_ctrl2, x_to, y_to);
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ void path_storage::curve4_rel(double dx_ctrl2, double dy_ctrl2,
+ double dx_to, double dy_to)
+ {
+ rel_to_abs(&dx_ctrl2, &dy_ctrl2);
+ rel_to_abs(&dx_to, &dy_to);
+ curve4(dx_ctrl2, dy_ctrl2, dx_to, dy_to);
+ }
+
+
+ //------------------------------------------------------------------------
+ void path_storage::end_poly(unsigned flags)
+ {
+ if(m_total_vertices)
+ {
+ if(is_vertex(command(m_total_vertices - 1)))
+ {
+ add_vertex(0.0, 0.0, path_cmd_end_poly | flags);
+ }
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ unsigned path_storage::start_new_path()
+ {
+ if(m_total_vertices)
+ {
+ if(!is_stop(command(m_total_vertices - 1)))
+ {
+ add_vertex(0.0, 0.0, path_cmd_stop);
+ }
+ }
+ return m_total_vertices;
+ }
+
+
+ //------------------------------------------------------------------------
+ void path_storage::add_poly(const double* vertices, unsigned num,
+ bool solid_path, unsigned end_flags)
+ {
+ if(num)
+ {
+ if(!solid_path)
+ {
+ move_to(vertices[0], vertices[1]);
+ vertices += 2;
+ --num;
+ }
+ while(num--)
+ {
+ line_to(vertices[0], vertices[1]);
+ vertices += 2;
+ }
+ if(end_flags) end_poly(end_flags);
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ unsigned path_storage::perceive_polygon_orientation(unsigned idx,
+ double xs, double ys,
+ unsigned* orientation)
+ {
+ unsigned i;
+ double sum = 0.0;
+ double x, y, xn, yn;
+
+ x = xs;
+ y = ys;
+ for(i = idx; i < m_total_vertices; ++i)
+ {
+ if(is_next_poly(vertex(i, &xn, &yn))) break;
+ sum += x * yn - y * xn;
+ x = xn;
+ y = yn;
+ }
+ if(i > idx) sum += x * ys - y * xs;
+ *orientation = path_flags_none;
+ if(sum != 0.0)
+ {
+ *orientation = (sum < 0.0) ? path_flags_cw : path_flags_ccw;
+ }
+ return i;
+ }
+
+
+ //------------------------------------------------------------------------
+ void path_storage::reverse_polygon(unsigned _start, unsigned _end)
+ {
+ unsigned i;
+ unsigned tmp_cmd = command(_start);
+
+ // Shift all commands to one position
+ for(i = _start; i < _end; i++)
+ {
+ modify_command(i, command(i + 1));
+ }
+
+ // Assign starting command to the ending command
+ modify_command(_end, tmp_cmd);
+
+ // Reverse the polygon
+ while(_end > _start)
+ {
+ unsigned start_nb = _start >> block_shift;
+ unsigned end_nb = _end >> block_shift;
+ double* start_ptr = m_coord_blocks[start_nb] + ((_start & block_mask) << 1);
+ double* end_ptr = m_coord_blocks[end_nb] + ((_end & block_mask) << 1);
+ double tmp_xy;
+
+ tmp_xy = *start_ptr;
+ *start_ptr++ = *end_ptr;
+ *end_ptr++ = tmp_xy;
+
+ tmp_xy = *start_ptr;
+ *start_ptr = *end_ptr;
+ *end_ptr = tmp_xy;
+
+ tmp_cmd = m_cmd_blocks[start_nb][_start & block_mask];
+ m_cmd_blocks[start_nb][_start & block_mask] = m_cmd_blocks[end_nb][_end & block_mask];
+ m_cmd_blocks[end_nb][_end & block_mask] = (unsigned char)tmp_cmd;
+
+ ++_start;
+ --_end;
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ unsigned path_storage::arrange_orientations(unsigned path_id,
+ path_flags_e new_orientation)
+ {
+ unsigned _end = m_total_vertices;
+ if(m_total_vertices && new_orientation != path_flags_none)
+ {
+ unsigned start = path_id;
+
+ double xs, ys;
+ unsigned cmd = vertex(start, &xs, &ys);
+ unsigned inc = 0;
+ for(;;)
+ {
+ unsigned orientation;
+ _end = perceive_polygon_orientation(start + 1, xs, ys,
+ &orientation);
+ if(_end > start + 2 &&
+ orientation &&
+ orientation != unsigned(new_orientation))
+ {
+ reverse_polygon(start + inc, _end - 1);
+ }
+ if(_end >= m_total_vertices) break;
+ cmd = command(_end);
+ if(is_stop(cmd))
+ {
+ ++_end;
+ break;
+ }
+ if(is_end_poly(cmd))
+ {
+ inc = 1;
+ modify_command(_end, set_orientation(cmd, new_orientation));
+ }
+ else
+ {
+ cmd = vertex(++_end, &xs, &ys);
+ inc = 0;
+ }
+ start = _end;
+ }
+ }
+ return _end;
+ }
+
+
+
+ //------------------------------------------------------------------------
+ void path_storage::arrange_orientations_all_paths(path_flags_e new_orientation)
+ {
+ if(new_orientation != path_flags_none)
+ {
+ unsigned start = 0;
+ while(start < m_total_vertices)
+ {
+ start = arrange_orientations(start, new_orientation);
+ }
+ }
+ }
+
+
+
+ //------------------------------------------------------------------------
+ void path_storage::flip_x(double x1, double x2)
+ {
+ unsigned i;
+ double x, y;
+ for(i = 0; i < m_total_vertices; i++)
+ {
+ unsigned cmd = vertex(i, &x, &y);
+ if(is_vertex(cmd))
+ {
+ modify_vertex(i, x2 - x + x1, y);
+ }
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ void path_storage::flip_y(double y1, double y2)
+ {
+ unsigned i;
+ double x, y;
+ for(i = 0; i < m_total_vertices; i++)
+ {
+ unsigned cmd = vertex(i, &x, &y);
+ if(is_vertex(cmd))
+ {
+ modify_vertex(i, x, y2 - y + y1);
+ }
+ }
+ }
+
+
+}
+
diff --git a/agg/source/agg_rasterizer_scanline_aa.cpp b/agg/source/agg_rasterizer_scanline_aa.cpp
new file mode 100755
index 000000000000..421c0187d0aa
--- /dev/null
+++ b/agg/source/agg_rasterizer_scanline_aa.cpp
@@ -0,0 +1,621 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+// The author gratefully acknowleges the support of David Turner,
+// Robert Wilhelm, and Werner Lemberg - the authors of the FreeType
+// libray - in producing this work. See http://www.freetype.org for details.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Class outline_aa - implementation.
+//
+// Initially the rendering algorithm was designed by David Turner and the
+// other authors of the FreeType library - see the above notice. I nearly
+// created a similar renderer, but still I was far from David's work.
+// I completely redesigned the original code and adapted it for Anti-Grain
+// ideas. Two functions - render_line and render_hline are the core of
+// the algorithm - they calculate the exact coverage of each pixel cell
+// of the polygon. I left these functions almost as is, because there's
+// no way to improve the perfection - hats off to David and his group!
+//
+// All other code is very different from the original.
+//
+//----------------------------------------------------------------------------
+
+#include <string.h>
+#include "agg_rasterizer_scanline_aa.h"
+
+
+namespace agg
+{
+
+ //------------------------------------------------------------------------
+ AGG_INLINE void cell_aa::set_cover(int c, int a)
+ {
+ cover = c;
+ area = a;
+ }
+
+ //------------------------------------------------------------------------
+ AGG_INLINE void cell_aa::add_cover(int c, int a)
+ {
+ cover += c;
+ area += a;
+ }
+
+ //------------------------------------------------------------------------
+ AGG_INLINE void cell_aa::set_coord(int cx, int cy)
+ {
+ x = int16(cx);
+ y = int16(cy);
+ packed_coord = (cy << 16) + cx;
+ }
+
+ //------------------------------------------------------------------------
+ AGG_INLINE void cell_aa::set(int cx, int cy, int c, int a)
+ {
+ x = int16(cx);
+ y = int16(cy);
+ packed_coord = (cy << 16) + cx;
+ cover = c;
+ area = a;
+ }
+
+ //------------------------------------------------------------------------
+ outline_aa::~outline_aa()
+ {
+ delete [] m_sorted_cells;
+ if(m_num_blocks)
+ {
+ cell_aa** ptr = m_cells + m_num_blocks - 1;
+ while(m_num_blocks--)
+ {
+ delete [] *ptr;
+ ptr--;
+ }
+ delete [] m_cells;
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ outline_aa::outline_aa() :
+ m_num_blocks(0),
+ m_max_blocks(0),
+ m_cur_block(0),
+ m_num_cells(0),
+ m_cells(0),
+ m_cur_cell_ptr(0),
+ m_sorted_cells(0),
+ m_sorted_size(0),
+ m_cur_x(0),
+ m_cur_y(0),
+ m_min_x(0x7FFFFFFF),
+ m_min_y(0x7FFFFFFF),
+ m_max_x(-0x7FFFFFFF),
+ m_max_y(-0x7FFFFFFF),
+ m_sorted(false)
+ {
+ m_cur_cell.set(0x7FFF, 0x7FFF, 0, 0);
+ }
+
+
+ //------------------------------------------------------------------------
+ void outline_aa::reset()
+ {
+ m_num_cells = 0;
+ m_cur_block = 0;
+ m_cur_cell.set(0x7FFF, 0x7FFF, 0, 0);
+ m_sorted = false;
+ m_min_x = 0x7FFFFFFF;
+ m_min_y = 0x7FFFFFFF;
+ m_max_x = -0x7FFFFFFF;
+ m_max_y = -0x7FFFFFFF;
+ }
+
+
+
+ //------------------------------------------------------------------------
+ void outline_aa::allocate_block()
+ {
+ if(m_cur_block >= m_num_blocks)
+ {
+ if(m_num_blocks >= m_max_blocks)
+ {
+ cell_aa** new_cells = new cell_aa* [m_max_blocks + cell_block_pool];
+ if(m_cells)
+ {
+ memcpy(new_cells, m_cells, m_max_blocks * sizeof(cell_aa*));
+ delete [] m_cells;
+ }
+ m_cells = new_cells;
+ m_max_blocks += cell_block_pool;
+ }
+ m_cells[m_num_blocks++] = new cell_aa [unsigned(cell_block_size)];
+ }
+ m_cur_cell_ptr = m_cells[m_cur_block++];
+ }
+
+
+ //------------------------------------------------------------------------
+ AGG_INLINE void outline_aa::add_cur_cell()
+ {
+ if(m_cur_cell.area | m_cur_cell.cover)
+ {
+ if((m_num_cells & cell_block_mask) == 0)
+ {
+ if(m_num_blocks >= cell_block_limit) return;
+ allocate_block();
+ }
+ *m_cur_cell_ptr++ = m_cur_cell;
+ ++m_num_cells;
+ if(m_cur_cell.x < m_min_x) m_min_x = m_cur_cell.x;
+ if(m_cur_cell.x > m_max_x) m_max_x = m_cur_cell.x;
+ }
+ }
+
+
+
+ //------------------------------------------------------------------------
+ AGG_INLINE void outline_aa::set_cur_cell(int x, int y)
+ {
+ if(m_cur_cell.packed_coord != (y << 16) + x)
+ {
+ add_cur_cell();
+ m_cur_cell.set(x, y, 0, 0);
+ }
+ }
+
+
+
+ //------------------------------------------------------------------------
+ AGG_INLINE void outline_aa::render_hline(int ey, int x1, int y1, int x2, int y2)
+ {
+ int ex1 = x1 >> poly_base_shift;
+ int ex2 = x2 >> poly_base_shift;
+ int fx1 = x1 & poly_base_mask;
+ int fx2 = x2 & poly_base_mask;
+
+ int delta, p, first, dx;
+ int incr, lift, mod, rem;
+
+ //trivial case. Happens often
+ if(y1 == y2)
+ {
+ set_cur_cell(ex2, ey);
+ return;
+ }
+
+ //everything is located in a single cell. That is easy!
+ if(ex1 == ex2)
+ {
+ delta = y2 - y1;
+ m_cur_cell.add_cover(delta, (fx1 + fx2) * delta);
+ return;
+ }
+
+ //ok, we'll have to render a run of adjacent cells on the same
+ //hline...
+ p = (poly_base_size - fx1) * (y2 - y1);
+ first = poly_base_size;
+ incr = 1;
+
+ dx = x2 - x1;
+
+ if(dx < 0)
+ {
+ p = fx1 * (y2 - y1);
+ first = 0;
+ incr = -1;
+ dx = -dx;
+ }
+
+ delta = p / dx;
+ mod = p % dx;
+
+ if(mod < 0)
+ {
+ delta--;
+ mod += dx;
+ }
+
+ m_cur_cell.add_cover(delta, (fx1 + first) * delta);
+
+ ex1 += incr;
+ set_cur_cell(ex1, ey);
+ y1 += delta;
+
+ if(ex1 != ex2)
+ {
+ p = poly_base_size * (y2 - y1 + delta);
+ lift = p / dx;
+ rem = p % dx;
+
+ if (rem < 0)
+ {
+ lift--;
+ rem += dx;
+ }
+
+ mod -= dx;
+
+ while (ex1 != ex2)
+ {
+ delta = lift;
+ mod += rem;
+ if(mod >= 0)
+ {
+ mod -= dx;
+ delta++;
+ }
+
+ m_cur_cell.add_cover(delta, (poly_base_size) * delta);
+ y1 += delta;
+ ex1 += incr;
+ set_cur_cell(ex1, ey);
+ }
+ }
+ delta = y2 - y1;
+ m_cur_cell.add_cover(delta, (fx2 + poly_base_size - first) * delta);
+ }
+
+
+
+
+
+
+ //------------------------------------------------------------------------
+ void outline_aa::render_line(int x1, int y1, int x2, int y2)
+ {
+ int ey1 = y1 >> poly_base_shift;
+ int ey2 = y2 >> poly_base_shift;
+ int fy1 = y1 & poly_base_mask;
+ int fy2 = y2 & poly_base_mask;
+
+ int dx, dy, x_from, x_to;
+ int p, rem, mod, lift, delta, first, incr;
+
+ dx = x2 - x1;
+ dy = y2 - y1;
+
+ //everything is on a single hline
+ if(ey1 == ey2)
+ {
+ render_hline(ey1, x1, fy1, x2, fy2);
+ return;
+ }
+
+ //Vertical line - we have to calculate start and end cells,
+ //and then - the common values of the area and coverage for
+ //all cells of the line. We know exactly there's only one
+ //cell, so, we don't have to call render_hline().
+ incr = 1;
+ if(dx == 0)
+ {
+ int ex = x1 >> poly_base_shift;
+ int two_fx = (x1 - (ex << poly_base_shift)) << 1;
+ int area;
+
+ first = poly_base_size;
+ if(dy < 0)
+ {
+ first = 0;
+ incr = -1;
+ }
+
+ x_from = x1;
+
+ //render_hline(ey1, x_from, fy1, x_from, first);
+ delta = first - fy1;
+ m_cur_cell.add_cover(delta, two_fx * delta);
+
+ ey1 += incr;
+ set_cur_cell(ex, ey1);
+
+ delta = first + first - poly_base_size;
+ area = two_fx * delta;
+ while(ey1 != ey2)
+ {
+ //render_hline(ey1, x_from, poly_base_size - first, x_from, first);
+ m_cur_cell.set_cover(delta, area);
+ ey1 += incr;
+ set_cur_cell(ex, ey1);
+ }
+ //render_hline(ey1, x_from, poly_base_size - first, x_from, fy2);
+ delta = fy2 - poly_base_size + first;
+ m_cur_cell.add_cover(delta, two_fx * delta);
+ return;
+ }
+
+ //ok, we have to render several hlines
+ p = (poly_base_size - fy1) * dx;
+ first = poly_base_size;
+
+ if(dy < 0)
+ {
+ p = fy1 * dx;
+ first = 0;
+ incr = -1;
+ dy = -dy;
+ }
+
+ delta = p / dy;
+ mod = p % dy;
+
+ if(mod < 0)
+ {
+ delta--;
+ mod += dy;
+ }
+
+ x_from = x1 + delta;
+ render_hline(ey1, x1, fy1, x_from, first);
+
+ ey1 += incr;
+ set_cur_cell(x_from >> poly_base_shift, ey1);
+
+ if(ey1 != ey2)
+ {
+ p = poly_base_size * dx;
+ lift = p / dy;
+ rem = p % dy;
+
+ if(rem < 0)
+ {
+ lift--;
+ rem += dy;
+ }
+ mod -= dy;
+
+ while(ey1 != ey2)
+ {
+ delta = lift;
+ mod += rem;
+ if (mod >= 0)
+ {
+ mod -= dy;
+ delta++;
+ }
+
+ x_to = x_from + delta;
+ render_hline(ey1, x_from, poly_base_size - first, x_to, first);
+ x_from = x_to;
+
+ ey1 += incr;
+ set_cur_cell(x_from >> poly_base_shift, ey1);
+ }
+ }
+ render_hline(ey1, x_from, poly_base_size - first, x2, fy2);
+ }
+
+
+ //------------------------------------------------------------------------
+ void outline_aa::move_to(int x, int y)
+ {
+ if(m_sorted) reset();
+ set_cur_cell(x >> poly_base_shift, y >> poly_base_shift);
+ m_cur_x = x;
+ m_cur_y = y;
+ }
+
+
+
+ //------------------------------------------------------------------------
+ void outline_aa::line_to(int x, int y)
+ {
+ render_line(m_cur_x, m_cur_y, x, y);
+ m_cur_x = x;
+ m_cur_y = y;
+ m_sorted = false;
+ }
+
+
+ //------------------------------------------------------------------------
+ enum
+ {
+ qsort_threshold = 9
+ };
+
+
+ //------------------------------------------------------------------------
+ template <class T> AGG_INLINE void swap_cells(T* a, T* b)
+ {
+ T temp = *a;
+ *a = *b;
+ *b = temp;
+ }
+
+ //------------------------------------------------------------------------
+ template <class T> AGG_INLINE bool less_than(T* a, T* b)
+ {
+ return (*a)->packed_coord < (*b)->packed_coord;
+ }
+
+
+
+ //------------------------------------------------------------------------
+ void outline_aa::qsort_cells(cell_aa** start, unsigned num)
+ {
+ cell_aa** stack[80];
+ cell_aa*** top;
+ cell_aa** limit;
+ cell_aa** base;
+
+ limit = start + num;
+ base = start;
+ top = stack;
+
+ for (;;)
+ {
+ int len = int(limit - base);
+
+ cell_aa** i;
+ cell_aa** j;
+ cell_aa** pivot;
+
+ if(len > qsort_threshold)
+ {
+ // we use base + len/2 as the pivot
+ pivot = base + len / 2;
+ swap_cells(base, pivot);
+
+ i = base + 1;
+ j = limit - 1;
+
+ // now ensure that *i <= *base <= *j
+ if(less_than(j, i))
+ {
+ swap_cells(i, j);
+ }
+
+ if(less_than(base, i))
+ {
+ swap_cells(base, i);
+ }
+
+ if(less_than(j, base))
+ {
+ swap_cells(base, j);
+ }
+
+ for(;;)
+ {
+ do i++; while( less_than(i, base) );
+ do j--; while( less_than(base, j) );
+
+ if ( i > j )
+ {
+ break;
+ }
+
+ swap_cells(i, j);
+ }
+
+ swap_cells(base, j);
+
+ // now, push the largest sub-array
+ if(j - base > limit - i)
+ {
+ top[0] = base;
+ top[1] = j;
+ base = i;
+ }
+ else
+ {
+ top[0] = i;
+ top[1] = limit;
+ limit = j;
+ }
+ top += 2;
+ }
+ else
+ {
+ // the sub-array is small, perform insertion sort
+ j = base;
+ i = j + 1;
+
+ for(; i < limit; j = i, i++)
+ {
+ for(; less_than(j + 1, j); j--)
+ {
+ swap_cells(j + 1, j);
+ if (j == base)
+ {
+ break;
+ }
+ }
+ }
+ if(top > stack)
+ {
+ top -= 2;
+ base = top[0];
+ limit = top[1];
+ }
+ else
+ {
+ break;
+ }
+ }
+ }
+ }
+
+
+
+
+
+ //------------------------------------------------------------------------
+ void outline_aa::sort_cells()
+ {
+ if(m_num_cells == 0) return;
+ if(m_num_cells > m_sorted_size)
+ {
+ delete [] m_sorted_cells;
+ m_sorted_size = m_num_cells;
+ m_sorted_cells = new cell_aa* [m_num_cells + 1];
+ }
+
+ cell_aa** sorted_ptr = m_sorted_cells;
+ cell_aa** block_ptr = m_cells;
+ cell_aa* cell_ptr;
+
+ unsigned nb = m_num_cells >> cell_block_shift;
+ unsigned i;
+
+ while(nb--)
+ {
+ cell_ptr = *block_ptr++;
+ i = cell_block_size;
+ while(i--)
+ {
+ *sorted_ptr++ = cell_ptr++;
+ }
+ }
+
+ cell_ptr = *block_ptr++;
+ i = m_num_cells & cell_block_mask;
+ while(i--)
+ {
+ *sorted_ptr++ = cell_ptr++;
+ }
+ m_sorted_cells[m_num_cells] = 0;
+ qsort_cells(m_sorted_cells, m_num_cells);
+ m_min_y = m_sorted_cells[0]->y;
+ m_max_y = m_sorted_cells[m_num_cells - 1]->y;
+ }
+
+
+
+
+ //------------------------------------------------------------------------
+ const cell_aa* const* outline_aa::cells()
+ {
+ //Perform sort only the first time.
+ if(!m_sorted)
+ {
+ add_cur_cell();
+ sort_cells();
+ m_sorted = true;
+ }
+ return m_sorted_cells;
+ }
+
+
+
+
+
+}
+
+
+
+
+
diff --git a/agg/source/agg_rounded_rect.cpp b/agg/source/agg_rounded_rect.cpp
new file mode 100755
index 000000000000..8f6e532e7096
--- /dev/null
+++ b/agg/source/agg_rounded_rect.cpp
@@ -0,0 +1,164 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Rounded rectangle vertex generator
+//
+//----------------------------------------------------------------------------
+
+#include <math.h>
+#include "agg_rounded_rect.h"
+
+
+namespace agg
+{
+ //------------------------------------------------------------------------
+ rounded_rect::rounded_rect(double x1, double y1, double x2, double y2, double r) :
+ m_x1(x1), m_y1(y1), m_x2(x2), m_y2(y2),
+ m_rx1(r), m_ry1(r), m_rx2(r), m_ry2(r),
+ m_rx3(r), m_ry3(r), m_rx4(r), m_ry4(r)
+ {
+ if(x1 > x2) { m_x1 = x2; m_x2 = x1; }
+ if(y1 > y2) { m_y1 = y2; m_y2 = y1; }
+ }
+
+ //--------------------------------------------------------------------
+ void rounded_rect::rect(double x1, double y1, double x2, double y2)
+ {
+ m_x1 = x1;
+ m_y1 = y1;
+ m_x2 = x2;
+ m_y2 = y2;
+ if(x1 > x2) { m_x1 = x2; m_x2 = x1; }
+ if(y1 > y2) { m_y1 = y2; m_y2 = y1; }
+ }
+
+ //--------------------------------------------------------------------
+ void rounded_rect::radius(double r)
+ {
+ m_rx1 = m_ry1 = m_rx2 = m_ry2 = m_rx3 = m_ry3 = m_rx4 = m_ry4 = r;
+ }
+
+ //--------------------------------------------------------------------
+ void rounded_rect::radius(double rx, double ry)
+ {
+ m_rx1 = m_rx2 = m_rx3 = m_rx4 = rx;
+ m_ry1 = m_ry2 = m_ry3 = m_ry4 = ry;
+ }
+
+ //--------------------------------------------------------------------
+ void rounded_rect::radius(double rx_bottom, double ry_bottom,
+ double rx_top, double ry_top)
+ {
+ m_rx1 = m_rx2 = rx_bottom;
+ m_rx3 = m_rx4 = rx_top;
+ m_ry1 = m_ry2 = ry_bottom;
+ m_ry3 = m_ry4 = ry_top;
+ }
+
+ //--------------------------------------------------------------------
+ void rounded_rect::radius(double rx1, double ry1, double rx2, double ry2,
+ double rx3, double ry3, double rx4, double ry4)
+ {
+ m_rx1 = rx1; m_ry1 = ry1; m_rx2 = rx2; m_ry2 = ry2;
+ m_rx3 = rx3; m_ry3 = ry3; m_rx4 = rx4; m_ry4 = ry4;
+ }
+
+ //--------------------------------------------------------------------
+ void rounded_rect::normalize_radius()
+ {
+ double dx = fabs(m_y2 - m_y1);
+ double dy = fabs(m_x2 - m_x1);
+
+ double k = 1.0;
+ double t;
+ t = dx / (m_rx1 + m_rx2); if(t < k) k = t;
+ t = dx / (m_rx3 + m_rx4); if(t < k) k = t;
+ t = dy / (m_ry1 + m_ry2); if(t < k) k = t;
+ t = dy / (m_ry3 + m_ry4); if(t < k) k = t;
+
+ if(k < 1.0)
+ {
+ m_rx1 *= k; m_ry1 *= k; m_rx2 *= k; m_ry2 *= k;
+ m_rx3 *= k; m_ry3 *= k; m_rx4 *= k; m_ry4 *= k;
+ }
+ }
+
+ //--------------------------------------------------------------------
+ void rounded_rect::rewind(unsigned)
+ {
+ m_status = 0;
+ }
+
+ //--------------------------------------------------------------------
+ unsigned rounded_rect::vertex(double* x, double* y)
+ {
+ unsigned cmd = path_cmd_stop;
+ switch(m_status)
+ {
+ case 0:
+ m_arc.init(m_x1 + m_rx1, m_y1 + m_ry1, m_rx1, m_ry1,
+ pi, pi+pi*0.5);
+ m_arc.rewind(0);
+ m_status++;
+
+ case 1:
+ cmd = m_arc.vertex(x, y);
+ if(is_stop(cmd)) m_status++;
+ else return cmd;
+
+ case 2:
+ m_arc.init(m_x2 - m_rx2, m_y1 + m_ry2, m_rx2, m_ry2,
+ pi+pi*0.5, 0.0);
+ m_arc.rewind(0);
+ m_status++;
+
+ case 3:
+ cmd = m_arc.vertex(x, y);
+ if(is_stop(cmd)) m_status++;
+ else return path_cmd_line_to;
+
+ case 4:
+ m_arc.init(m_x2 - m_rx3, m_y2 - m_ry3, m_rx3, m_ry3,
+ 0.0, pi*0.5);
+ m_arc.rewind(0);
+ m_status++;
+
+ case 5:
+ cmd = m_arc.vertex(x, y);
+ if(is_stop(cmd)) m_status++;
+ else return path_cmd_line_to;
+
+ case 6:
+ m_arc.init(m_x1 + m_rx4, m_y2 - m_ry4, m_rx4, m_ry4,
+ pi*0.5, pi);
+ m_arc.rewind(0);
+ m_status++;
+
+ case 7:
+ cmd = m_arc.vertex(x, y);
+ if(is_stop(cmd)) m_status++;
+ else return path_cmd_line_to;
+
+ case 8:
+ cmd = (unsigned)path_cmd_end_poly | (unsigned)path_flags_close | (unsigned)path_flags_ccw;
+ m_status++;
+ break;
+ }
+ return cmd;
+ }
+
+
+}
+
diff --git a/agg/source/agg_sqrt_tables.cpp b/agg/source/agg_sqrt_tables.cpp
new file mode 100755
index 000000000000..e2f88f5a7fef
--- /dev/null
+++ b/agg/source/agg_sqrt_tables.cpp
@@ -0,0 +1,115 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// static tables for fast integer sqrt
+//
+//----------------------------------------------------------------------------
+
+#include "agg_basics.h"
+
+namespace agg
+{
+ int16u g_sqrt_table[1024] =
+ {
+ 0,
+ 2048,2896,3547,4096,4579,5017,5418,5793,6144,6476,6792,7094,7384,7663,7932,8192,8444,
+ 8689,8927,9159,9385,9606,9822,10033,10240,10443,10642,10837,11029,11217,11403,11585,
+ 11765,11942,12116,12288,12457,12625,12790,12953,13114,13273,13430,13585,13738,13890,
+ 14040,14189,14336,14482,14626,14768,14910,15050,15188,15326,15462,15597,15731,15864,
+ 15995,16126,16255,16384,16512,16638,16764,16888,17012,17135,17257,17378,17498,17618,
+ 17736,17854,17971,18087,18203,18318,18432,18545,18658,18770,18882,18992,19102,19212,
+ 19321,19429,19537,19644,19750,19856,19961,20066,20170,20274,20377,20480,20582,20684,
+ 20785,20886,20986,21085,21185,21283,21382,21480,21577,21674,21771,21867,21962,22058,
+ 22153,22247,22341,22435,22528,22621,22713,22806,22897,22989,23080,23170,23261,23351,
+ 23440,23530,23619,23707,23796,23884,23971,24059,24146,24232,24319,24405,24491,24576,
+ 24661,24746,24831,24915,24999,25083,25166,25249,25332,25415,25497,25580,25661,25743,
+ 25824,25905,25986,26067,26147,26227,26307,26387,26466,26545,26624,26703,26781,26859,
+ 26937,27015,27092,27170,27247,27324,27400,27477,27553,27629,27705,27780,27856,27931,
+ 28006,28081,28155,28230,28304,28378,28452,28525,28599,28672,28745,28818,28891,28963,
+ 29035,29108,29180,29251,29323,29394,29466,29537,29608,29678,29749,29819,29890,29960,
+ 30030,30099,30169,30238,30308,30377,30446,30515,30583,30652,30720,30788,30856,30924,
+ 30992,31059,31127,31194,31261,31328,31395,31462,31529,31595,31661,31727,31794,31859,
+ 31925,31991,32056,32122,32187,32252,32317,32382,32446,32511,32575,32640,32704,32768,
+ 32832,32896,32959,33023,33086,33150,33213,33276,33339,33402,33465,33527,33590,33652,
+ 33714,33776,33839,33900,33962,34024,34086,34147,34208,34270,34331,34392,34453,34514,
+ 34574,34635,34695,34756,34816,34876,34936,34996,35056,35116,35176,35235,35295,35354,
+ 35413,35472,35531,35590,35649,35708,35767,35825,35884,35942,36001,36059,36117,36175,
+ 36233,36291,36348,36406,36464,36521,36578,36636,36693,36750,36807,36864,36921,36978,
+ 37034,37091,37147,37204,37260,37316,37372,37429,37485,37540,37596,37652,37708,37763,
+ 37819,37874,37929,37985,38040,38095,38150,38205,38260,38315,38369,38424,38478,38533,
+ 38587,38642,38696,38750,38804,38858,38912,38966,39020,39073,39127,39181,39234,39287,
+ 39341,39394,39447,39500,39553,39606,39659,39712,39765,39818,39870,39923,39975,40028,
+ 40080,40132,40185,40237,40289,40341,40393,40445,40497,40548,40600,40652,40703,40755,
+ 40806,40857,40909,40960,41011,41062,41113,41164,41215,41266,41317,41368,41418,41469,
+ 41519,41570,41620,41671,41721,41771,41821,41871,41922,41972,42021,42071,42121,42171,
+ 42221,42270,42320,42369,42419,42468,42518,42567,42616,42665,42714,42763,42813,42861,
+ 42910,42959,43008,43057,43105,43154,43203,43251,43300,43348,43396,43445,43493,43541,
+ 43589,43637,43685,43733,43781,43829,43877,43925,43972,44020,44068,44115,44163,44210,
+ 44258,44305,44352,44400,44447,44494,44541,44588,44635,44682,44729,44776,44823,44869,
+ 44916,44963,45009,45056,45103,45149,45195,45242,45288,45334,45381,45427,45473,45519,
+ 45565,45611,45657,45703,45749,45795,45840,45886,45932,45977,46023,46069,46114,46160,
+ 46205,46250,46296,46341,46386,46431,46477,46522,46567,46612,46657,46702,46746,46791,
+ 46836,46881,46926,46970,47015,47059,47104,47149,47193,47237,47282,47326,47370,47415,
+ 47459,47503,47547,47591,47635,47679,47723,47767,47811,47855,47899,47942,47986,48030,
+ 48074,48117,48161,48204,48248,48291,48335,48378,48421,48465,48508,48551,48594,48637,
+ 48680,48723,48766,48809,48852,48895,48938,48981,49024,49067,49109,49152,49195,49237,
+ 49280,49322,49365,49407,49450,49492,49535,49577,49619,49661,49704,49746,49788,49830,
+ 49872,49914,49956,49998,50040,50082,50124,50166,50207,50249,50291,50332,50374,50416,
+ 50457,50499,50540,50582,50623,50665,50706,50747,50789,50830,50871,50912,50954,50995,
+ 51036,51077,51118,51159,51200,51241,51282,51323,51364,51404,51445,51486,51527,51567,
+ 51608,51649,51689,51730,51770,51811,51851,51892,51932,51972,52013,52053,52093,52134,
+ 52174,52214,52254,52294,52334,52374,52414,52454,52494,52534,52574,52614,52654,52694,
+ 52734,52773,52813,52853,52892,52932,52972,53011,53051,53090,53130,53169,53209,53248,
+ 53287,53327,53366,53405,53445,53484,53523,53562,53601,53640,53679,53719,53758,53797,
+ 53836,53874,53913,53952,53991,54030,54069,54108,54146,54185,54224,54262,54301,54340,
+ 54378,54417,54455,54494,54532,54571,54609,54647,54686,54724,54762,54801,54839,54877,
+ 54915,54954,54992,55030,55068,55106,55144,55182,55220,55258,55296,55334,55372,55410,
+ 55447,55485,55523,55561,55599,55636,55674,55712,55749,55787,55824,55862,55900,55937,
+ 55975,56012,56049,56087,56124,56162,56199,56236,56273,56311,56348,56385,56422,56459,
+ 56497,56534,56571,56608,56645,56682,56719,56756,56793,56830,56867,56903,56940,56977,
+ 57014,57051,57087,57124,57161,57198,57234,57271,57307,57344,57381,57417,57454,57490,
+ 57527,57563,57599,57636,57672,57709,57745,57781,57817,57854,57890,57926,57962,57999,
+ 58035,58071,58107,58143,58179,58215,58251,58287,58323,58359,58395,58431,58467,58503,
+ 58538,58574,58610,58646,58682,58717,58753,58789,58824,58860,58896,58931,58967,59002,
+ 59038,59073,59109,59144,59180,59215,59251,59286,59321,59357,59392,59427,59463,59498,
+ 59533,59568,59603,59639,59674,59709,59744,59779,59814,59849,59884,59919,59954,59989,
+ 60024,60059,60094,60129,60164,60199,60233,60268,60303,60338,60373,60407,60442,60477,
+ 60511,60546,60581,60615,60650,60684,60719,60753,60788,60822,60857,60891,60926,60960,
+ 60995,61029,61063,61098,61132,61166,61201,61235,61269,61303,61338,61372,61406,61440,
+ 61474,61508,61542,61576,61610,61644,61678,61712,61746,61780,61814,61848,61882,61916,
+ 61950,61984,62018,62051,62085,62119,62153,62186,62220,62254,62287,62321,62355,62388,
+ 62422,62456,62489,62523,62556,62590,62623,62657,62690,62724,62757,62790,62824,62857,
+ 62891,62924,62957,62991,63024,63057,63090,63124,63157,63190,63223,63256,63289,63323,
+ 63356,63389,63422,63455,63488,63521,63554,63587,63620,63653,63686,63719,63752,63785,
+ 63817,63850,63883,63916,63949,63982,64014,64047,64080,64113,64145,64178,64211,64243,
+ 64276,64309,64341,64374,64406,64439,64471,64504,64536,64569,64601,64634,64666,64699,
+ 64731,64763,64796,64828,64861,64893,64925,64957,64990,65022,65054,65086,65119,65151,
+ 65183,65215,65247,65279,65312,65344,65376,65408,65440,65472,65504
+ };
+
+
+ int8 g_elder_bit_table[256] =
+ {
+ 0,0,1,1,2,2,2,2,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
+ 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,
+ 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,
+ 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,
+ 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,
+ 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,
+ 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,
+ 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7
+ };
+
+}
diff --git a/agg/source/agg_trans_affine.cpp b/agg/source/agg_trans_affine.cpp
new file mode 100755
index 000000000000..f81050d3e42f
--- /dev/null
+++ b/agg/source/agg_trans_affine.cpp
@@ -0,0 +1,195 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Affine transformations
+//
+//----------------------------------------------------------------------------
+#include "agg_trans_affine.h"
+
+
+
+namespace agg
+{
+
+ //------------------------------------------------------------------------
+ const trans_affine& trans_affine::parl_to_parl(const double* src,
+ const double* dst)
+ {
+ m0 = src[2] - src[0];
+ m1 = src[3] - src[1];
+ m2 = src[4] - src[0];
+ m3 = src[5] - src[1];
+ m4 = src[0];
+ m5 = src[1];
+ invert();
+ multiply(trans_affine(dst[2] - dst[0], dst[3] - dst[1],
+ dst[4] - dst[0], dst[5] - dst[1],
+ dst[0], dst[1]));
+ return *this;
+ }
+
+ //------------------------------------------------------------------------
+ const trans_affine& trans_affine::rect_to_parl(double x1, double y1,
+ double x2, double y2,
+ const double* parl)
+ {
+ double src[6];
+ src[0] = x1; src[1] = y1;
+ src[2] = x2; src[3] = y1;
+ src[4] = x2; src[5] = y2;
+ parl_to_parl(src, parl);
+ return *this;
+ }
+
+ //------------------------------------------------------------------------
+ const trans_affine& trans_affine::parl_to_rect(const double* parl,
+ double x1, double y1,
+ double x2, double y2)
+ {
+ double dst[6];
+ dst[0] = x1; dst[1] = y1;
+ dst[2] = x2; dst[3] = y1;
+ dst[4] = x2; dst[5] = y2;
+ parl_to_parl(parl, dst);
+ return *this;
+ }
+
+ //------------------------------------------------------------------------
+ const trans_affine& trans_affine::multiply(const trans_affine& m)
+ {
+ double t0 = m0 * m.m0 + m1 * m.m2;
+ double t2 = m2 * m.m0 + m3 * m.m2;
+ double t4 = m4 * m.m0 + m5 * m.m2 + m.m4;
+ m1 = m0 * m.m1 + m1 * m.m3;
+ m3 = m2 * m.m1 + m3 * m.m3;
+ m5 = m4 * m.m1 + m5 * m.m3 + m.m5;
+ m0 = t0;
+ m2 = t2;
+ m4 = t4;
+ return *this;
+ }
+
+
+ //------------------------------------------------------------------------
+ const trans_affine& trans_affine::invert()
+ {
+ double d = determinant();
+
+ double t0 = m3 * d;
+ m3 = m0 * d;
+ m1 = -m1 * d;
+ m2 = -m2 * d;
+
+ double t4 = -m4 * t0 - m5 * m2;
+ m5 = -m4 * m1 - m5 * m3;
+
+ m0 = t0;
+ m4 = t4;
+ return *this;
+ }
+
+
+ //------------------------------------------------------------------------
+ const trans_affine& trans_affine::flip_x()
+ {
+ m0 = -m0;
+ m1 = -m1;
+ m4 = -m4;
+ return *this;
+ }
+
+ //------------------------------------------------------------------------
+ const trans_affine& trans_affine::flip_y()
+ {
+ m2 = -m2;
+ m3 = -m3;
+ m5 = -m5;
+ return *this;
+ }
+
+ //------------------------------------------------------------------------
+ const trans_affine& trans_affine::reset()
+ {
+ m0 = m3 = 1.0;
+ m1 = m2 = m4 = m5 = 0.0;
+ return *this;
+ }
+
+ //------------------------------------------------------------------------
+ inline bool is_equal_eps(double v1, double v2, double epsilon)
+ {
+ return fabs(v1 - v2) < epsilon;
+ }
+
+ //------------------------------------------------------------------------
+ bool trans_affine::is_identity(double epsilon) const
+ {
+ return is_equal_eps(m0, 1.0, epsilon) &&
+ is_equal_eps(m1, 0.0, epsilon) &&
+ is_equal_eps(m2, 0.0, epsilon) &&
+ is_equal_eps(m3, 1.0, epsilon) &&
+ is_equal_eps(m4, 0.0, epsilon) &&
+ is_equal_eps(m5, 0.0, epsilon);
+ }
+
+ //------------------------------------------------------------------------
+ bool trans_affine::is_equal(const trans_affine& m, double epsilon) const
+ {
+ return is_equal_eps(m0, m.m0, epsilon) &&
+ is_equal_eps(m1, m.m1, epsilon) &&
+ is_equal_eps(m2, m.m2, epsilon) &&
+ is_equal_eps(m3, m.m3, epsilon) &&
+ is_equal_eps(m4, m.m4, epsilon) &&
+ is_equal_eps(m5, m.m5, epsilon);
+ }
+
+ //------------------------------------------------------------------------
+ double trans_affine::rotation() const
+ {
+ double x1 = 0.0;
+ double y1 = 0.0;
+ double x2 = 1.0;
+ double y2 = 0.0;
+ transform(&x1, &y1);
+ transform(&x2, &y2);
+ return atan2(y2-y1, x2-x1);
+ }
+
+ //------------------------------------------------------------------------
+ void trans_affine::translation(double* dx, double* dy) const
+ {
+ trans_affine t(*this);
+ t *= trans_affine_rotation(-rotation());
+ t.transform(dx, dy);
+ }
+
+ //------------------------------------------------------------------------
+ void trans_affine::scaling(double* sx, double* sy) const
+ {
+ double x1 = 0.0;
+ double y1 = 0.0;
+ double x2 = 1.0;
+ double y2 = 1.0;
+ trans_affine t(*this);
+ t *= trans_affine_rotation(-rotation());
+ t.transform(&x1, &y1);
+ t.transform(&x2, &y2);
+ *sx = x2 - x1;
+ *sy = y2 - y1;
+ }
+
+
+}
+
diff --git a/agg/source/agg_trans_double_path.cpp b/agg/source/agg_trans_double_path.cpp
new file mode 100755
index 000000000000..5fc83ea50391
--- /dev/null
+++ b/agg/source/agg_trans_double_path.cpp
@@ -0,0 +1,273 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#include "agg_math.h"
+#include "agg_trans_double_path.h"
+
+namespace agg
+{
+
+ //------------------------------------------------------------------------
+ trans_double_path::trans_double_path() :
+ m_base_length(0.0),
+ m_base_height(1.0),
+ m_kindex1(0.0),
+ m_kindex2(0.0),
+ m_status1(initial),
+ m_status2(initial),
+ m_preserve_x_scale(true)
+ {
+ }
+
+
+ //------------------------------------------------------------------------
+ void trans_double_path::reset()
+ {
+ m_src_vertices1.remove_all();
+ m_src_vertices2.remove_all();
+ m_kindex1 = 0.0;
+ m_kindex1 = 0.0;
+ m_status1 = initial;
+ m_status2 = initial;
+ }
+
+
+ //------------------------------------------------------------------------
+ void trans_double_path::move_to1(double x, double y)
+ {
+ if(m_status1 == initial)
+ {
+ m_src_vertices1.modify_last(vertex_dist(x, y));
+ m_status1 = making_path;
+ }
+ else
+ {
+ line_to1(x, y);
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ void trans_double_path::line_to1(double x, double y)
+ {
+ if(m_status1 == making_path)
+ {
+ m_src_vertices1.add(vertex_dist(x, y));
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ void trans_double_path::move_to2(double x, double y)
+ {
+ if(m_status2 == initial)
+ {
+ m_src_vertices2.modify_last(vertex_dist(x, y));
+ m_status2 = making_path;
+ }
+ else
+ {
+ line_to2(x, y);
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ void trans_double_path::line_to2(double x, double y)
+ {
+ if(m_status2 == making_path)
+ {
+ m_src_vertices2.add(vertex_dist(x, y));
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ double trans_double_path::finalize_path(vertex_storage& vertices)
+ {
+ unsigned i;
+ double dist;
+ double d;
+
+ if(vertices.size() > 2)
+ {
+ if(vertices[vertices.size() - 2].dist * 10.0 <
+ vertices[vertices.size() - 3].dist)
+ {
+ d = vertices[vertices.size() - 3].dist +
+ vertices[vertices.size() - 2].dist;
+
+ vertices[vertices.size() - 2] =
+ vertices[vertices.size() - 1];
+
+ vertices.remove_last();
+ vertices[vertices.size() - 2].dist = d;
+ }
+ }
+
+ dist = 0;
+ vertices.close(false);
+ for(i = 0; i < vertices.size(); i++)
+ {
+ vertex_dist& v = vertices[i];
+ d = v.dist;
+ v.dist = dist;
+ dist += d;
+ }
+
+ return (vertices.size() - 1) / dist;
+ }
+
+
+ //------------------------------------------------------------------------
+ void trans_double_path::finalize_paths()
+ {
+ if(m_status1 == making_path && m_src_vertices1.size() > 1 &&
+ m_status2 == making_path && m_src_vertices2.size() > 1)
+ {
+ m_kindex1 = finalize_path(m_src_vertices1);
+ m_kindex2 = finalize_path(m_src_vertices2);
+ m_status1 = ready;
+ m_status2 = ready;
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ double trans_double_path::total_length1() const
+ {
+ if(m_base_length >= 1e-10) return m_base_length;
+ return (m_status1 == ready) ?
+ m_src_vertices1[m_src_vertices1.size() - 1].dist :
+ 0.0;
+ }
+
+
+ //------------------------------------------------------------------------
+ double trans_double_path::total_length2() const
+ {
+ if(m_base_length >= 1e-10) return m_base_length;
+ return (m_status2 == ready) ?
+ m_src_vertices2[m_src_vertices2.size() - 1].dist :
+ 0.0;
+ }
+
+
+ //------------------------------------------------------------------------
+ void trans_double_path::transform1(const vertex_storage& vertices,
+ double kindex, double kx,
+ double *x, double* y) const
+ {
+ double x1 = 0.0;
+ double y1 = 0.0;
+ double dx = 1.0;
+ double dy = 1.0;
+ double d = 0.0;
+ double dd = 1.0;
+ *x *= kx;
+ if(*x < 0.0)
+ {
+ // Extrapolation on the left
+ //--------------------------
+ x1 = vertices[0].x;
+ y1 = vertices[0].y;
+ dx = vertices[1].x - x1;
+ dy = vertices[1].y - y1;
+ dd = vertices[1].dist - vertices[0].dist;
+ d = *x;
+ }
+ else
+ if(*x > vertices[vertices.size() - 1].dist)
+ {
+ // Extrapolation on the right
+ //--------------------------
+ unsigned i = vertices.size() - 2;
+ unsigned j = vertices.size() - 1;
+ x1 = vertices[j].x;
+ y1 = vertices[j].y;
+ dx = x1 - vertices[i].x;
+ dy = y1 - vertices[i].y;
+ dd = vertices[j].dist - vertices[i].dist;
+ d = *x - vertices[j].dist;
+ }
+ else
+ {
+ // Interpolation
+ //--------------------------
+ unsigned i = 0;
+ unsigned j = vertices.size() - 1;
+ if(m_preserve_x_scale)
+ {
+ unsigned k;
+ for(i = 0; (j - i) > 1; )
+ {
+ if(*x < vertices[k = (i + j) >> 1].dist)
+ {
+ j = k;
+ }
+ else
+ {
+ i = k;
+ }
+ }
+ d = vertices[i].dist;
+ dd = vertices[j].dist - d;
+ d = *x - d;
+ }
+ else
+ {
+ i = (unsigned)floor(*x * kindex);
+ j = i + 1;
+ dd = vertices[j].dist - vertices[i].dist;
+ d = ((*x * kindex) - i) * dd;
+ }
+ x1 = vertices[i].x;
+ y1 = vertices[i].y;
+ dx = vertices[j].x - x1;
+ dy = vertices[j].y - y1;
+ }
+ *x = x1 + dx * d / dd;
+ *y = y1 + dy * d / dd;
+ }
+
+
+ //------------------------------------------------------------------------
+ void trans_double_path::transform(double *x, double *y) const
+ {
+ if(m_status1 == ready && m_status2 == ready)
+ {
+ if(m_base_length > 1e-10)
+ {
+ *x *= m_src_vertices1[m_src_vertices1.size() - 1].dist /
+ m_base_length;
+ }
+
+ double x1 = *x;
+ double y1 = *y;
+ double x2 = *x;
+ double y2 = *y;
+ double dd = m_src_vertices2[m_src_vertices2.size() - 1].dist /
+ m_src_vertices1[m_src_vertices1.size() - 1].dist;
+
+ transform1(m_src_vertices1, m_kindex1, 1.0, &x1, &y1);
+ transform1(m_src_vertices2, m_kindex2, dd, &x2, &y2);
+
+ *x = x1 + *y * (x2 - x1) / m_base_height;
+ *y = y1 + *y * (y2 - y1) / m_base_height;
+ }
+ }
+
+}
+
diff --git a/agg/source/agg_trans_single_path.cpp b/agg/source/agg_trans_single_path.cpp
new file mode 100755
index 000000000000..cc4fb5356267
--- /dev/null
+++ b/agg/source/agg_trans_single_path.cpp
@@ -0,0 +1,202 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#include "agg_math.h"
+#include "agg_vertex_sequence.h"
+#include "agg_trans_single_path.h"
+
+namespace agg
+{
+
+ //------------------------------------------------------------------------
+ trans_single_path::trans_single_path() :
+ m_base_length(0.0),
+ m_kindex(0.0),
+ m_status(initial),
+ m_preserve_x_scale(true)
+ {
+ }
+
+ //------------------------------------------------------------------------
+ void trans_single_path::reset()
+ {
+ m_src_vertices.remove_all();
+ m_kindex = 0.0;
+ m_status = initial;
+ }
+
+ //------------------------------------------------------------------------
+ void trans_single_path::move_to(double x, double y)
+ {
+ if(m_status == initial)
+ {
+ m_src_vertices.modify_last(vertex_dist(x, y));
+ m_status = making_path;
+ }
+ else
+ {
+ line_to(x, y);
+ }
+ }
+
+ //------------------------------------------------------------------------
+ void trans_single_path::line_to(double x, double y)
+ {
+ if(m_status == making_path)
+ {
+ m_src_vertices.add(vertex_dist(x, y));
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ void trans_single_path::finalize_path()
+ {
+ if(m_status == making_path && m_src_vertices.size() > 1)
+ {
+ unsigned i;
+ double dist;
+ double d;
+
+ if(m_src_vertices.size() > 2)
+ {
+ if(m_src_vertices[m_src_vertices.size() - 2].dist * 10.0 <
+ m_src_vertices[m_src_vertices.size() - 3].dist)
+ {
+ d = m_src_vertices[m_src_vertices.size() - 3].dist +
+ m_src_vertices[m_src_vertices.size() - 2].dist;
+
+ m_src_vertices[m_src_vertices.size() - 2] =
+ m_src_vertices[m_src_vertices.size() - 1];
+
+ m_src_vertices.remove_last();
+ m_src_vertices[m_src_vertices.size() - 2].dist = d;
+ }
+ }
+
+ dist = 0.0;
+ m_src_vertices.close(false);
+ for(i = 0; i < m_src_vertices.size(); i++)
+ {
+ vertex_dist& v = m_src_vertices[i];
+ double _d = v.dist;
+ v.dist = dist;
+ dist += _d;
+ }
+ m_kindex = (m_src_vertices.size() - 1) / dist;
+ m_status = ready;
+ }
+ }
+
+
+
+ //------------------------------------------------------------------------
+ double trans_single_path::total_length() const
+ {
+ if(m_base_length >= 1e-10) return m_base_length;
+ return (m_status == ready) ?
+ m_src_vertices[m_src_vertices.size() - 1].dist :
+ 0.0;
+ }
+
+
+ //------------------------------------------------------------------------
+ void trans_single_path::transform(double *x, double *y) const
+ {
+ if(m_status == ready)
+ {
+ if(m_base_length > 1e-10)
+ {
+ *x *= m_src_vertices[m_src_vertices.size() - 1].dist /
+ m_base_length;
+ }
+
+ double x1 = 0.0;
+ double y1 = 0.0;
+ double dx = 1.0;
+ double dy = 1.0;
+ double d = 0.0;
+ double dd = 1.0;
+ if(*x < 0.0)
+ {
+ // Extrapolation on the left
+ //--------------------------
+ x1 = m_src_vertices[0].x;
+ y1 = m_src_vertices[0].y;
+ dx = m_src_vertices[1].x - x1;
+ dy = m_src_vertices[1].y - y1;
+ dd = m_src_vertices[1].dist - m_src_vertices[0].dist;
+ d = *x;
+ }
+ else
+ if(*x > m_src_vertices[m_src_vertices.size() - 1].dist)
+ {
+ // Extrapolation on the right
+ //--------------------------
+ unsigned i = m_src_vertices.size() - 2;
+ unsigned j = m_src_vertices.size() - 1;
+ x1 = m_src_vertices[j].x;
+ y1 = m_src_vertices[j].y;
+ dx = x1 - m_src_vertices[i].x;
+ dy = y1 - m_src_vertices[i].y;
+ dd = m_src_vertices[j].dist - m_src_vertices[i].dist;
+ d = *x - m_src_vertices[j].dist;
+ }
+ else
+ {
+ // Interpolation
+ //--------------------------
+ unsigned i = 0;
+ unsigned j = m_src_vertices.size() - 1;
+ if(m_preserve_x_scale)
+ {
+ unsigned k;
+ for(i = 0; (j - i) > 1; )
+ {
+ if(*x < m_src_vertices[k = (i + j) >> 1].dist)
+ {
+ j = k;
+ }
+ else
+ {
+ i = k;
+ }
+ }
+ d = m_src_vertices[i].dist;
+ dd = m_src_vertices[j].dist - d;
+ d = *x - d;
+ }
+ else
+ {
+ i = (unsigned)floor(*x * m_kindex);
+ j = i + 1;
+ dd = m_src_vertices[j].dist - m_src_vertices[i].dist;
+ d = ((*x * m_kindex) - i) * dd;
+ }
+ x1 = m_src_vertices[i].x;
+ y1 = m_src_vertices[i].y;
+ dx = m_src_vertices[j].x - x1;
+ dy = m_src_vertices[j].y - y1;
+ }
+ double x2 = x1 + dx * d / dd;
+ double y2 = y1 + dy * d / dd;
+ *x = x2 - *y * dy / dd;
+ *y = y2 + *y * dx / dd;
+ }
+ }
+
+
+}
+
diff --git a/agg/source/agg_trans_warp_magnifier.cpp b/agg/source/agg_trans_warp_magnifier.cpp
new file mode 100755
index 000000000000..4f9d28233907
--- /dev/null
+++ b/agg/source/agg_trans_warp_magnifier.cpp
@@ -0,0 +1,50 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#include <math.h>
+#include "agg_trans_warp_magnifier.h"
+
+namespace agg
+{
+
+ //------------------------------------------------------------------------
+ void trans_warp_magnifier::transform(double* x, double* y) const
+ {
+ double dx = *x - m_xc;
+ double dy = *y - m_yc;
+ double r = sqrt(dx * dx + dy * dy);
+ if(r < m_radius)
+ {
+ *x = m_xc + dx * m_magn;
+ *y = m_yc + dy * m_magn;
+ return;
+ }
+
+ double m = (r + m_radius * (m_magn - 1.0)) / r;
+ *x = m_xc + dx * m;
+ *y = m_yc + dy * m;
+ }
+
+ //------------------------------------------------------------------------
+ void trans_warp_magnifier::inverse_transform(double* x, double* y) const
+ {
+ trans_warp_magnifier t(*this);
+ t.magnification(1.0 / m_magn);
+ t.radius(m_radius * m_magn);
+ t.transform(x, y);
+ }
+
+
+}
diff --git a/agg/source/agg_vcgen_bspline.cpp b/agg/source/agg_vcgen_bspline.cpp
new file mode 100755
index 000000000000..9ca4df9b44f4
--- /dev/null
+++ b/agg/source/agg_vcgen_bspline.cpp
@@ -0,0 +1,194 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#include "agg_vcgen_bspline.h"
+
+namespace agg
+{
+
+ //------------------------------------------------------------------------
+ vcgen_bspline::vcgen_bspline() :
+ m_src_vertices(),
+ m_spline_x(),
+ m_spline_y(),
+ m_interpolation_step(1.0/50.0),
+ m_closed(0),
+ m_status(initial),
+ m_src_vertex(0)
+ {
+ }
+
+
+ //------------------------------------------------------------------------
+ void vcgen_bspline::remove_all()
+ {
+ m_src_vertices.remove_all();
+ m_closed = 0;
+ m_status = initial;
+ m_src_vertex = 0;
+ }
+
+
+ //------------------------------------------------------------------------
+ void vcgen_bspline::add_vertex(double x, double y, unsigned cmd)
+ {
+ m_status = initial;
+ if(is_move_to(cmd))
+ {
+ m_src_vertices.modify_last(point_type(x, y));
+ }
+ else
+ {
+ if(is_vertex(cmd))
+ {
+ m_src_vertices.add(point_type(x, y));
+ }
+ else
+ {
+ m_closed = get_close_flag(cmd);
+ }
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ void vcgen_bspline::rewind(unsigned)
+ {
+ m_cur_abscissa = 0.0;
+ m_max_abscissa = 0.0;
+ m_src_vertex = 0;
+ if(m_status == initial && m_src_vertices.size() > 2)
+ {
+ if(m_closed)
+ {
+ m_spline_x.init(m_src_vertices.size() + 8);
+ m_spline_y.init(m_src_vertices.size() + 8);
+ m_spline_x.add_point(0.0, m_src_vertices.prev(m_src_vertices.size() - 3).x);
+ m_spline_y.add_point(0.0, m_src_vertices.prev(m_src_vertices.size() - 3).y);
+ m_spline_x.add_point(1.0, m_src_vertices[m_src_vertices.size() - 3].x);
+ m_spline_y.add_point(1.0, m_src_vertices[m_src_vertices.size() - 3].y);
+ m_spline_x.add_point(2.0, m_src_vertices[m_src_vertices.size() - 2].x);
+ m_spline_y.add_point(2.0, m_src_vertices[m_src_vertices.size() - 2].y);
+ m_spline_x.add_point(3.0, m_src_vertices[m_src_vertices.size() - 1].x);
+ m_spline_y.add_point(3.0, m_src_vertices[m_src_vertices.size() - 1].y);
+ }
+ else
+ {
+ m_spline_x.init(m_src_vertices.size());
+ m_spline_y.init(m_src_vertices.size());
+ }
+ unsigned i;
+ for(i = 0; i < m_src_vertices.size(); i++)
+ {
+ double x = m_closed ? i + 4 : i;
+ m_spline_x.add_point(x, m_src_vertices[i].x);
+ m_spline_y.add_point(x, m_src_vertices[i].y);
+ }
+ m_cur_abscissa = 0.0;
+ m_max_abscissa = m_src_vertices.size() - 1;
+ if(m_closed)
+ {
+ m_cur_abscissa = 4.0;
+ m_max_abscissa += 5.0;
+ m_spline_x.add_point(m_src_vertices.size() + 4, m_src_vertices[0].x);
+ m_spline_y.add_point(m_src_vertices.size() + 4, m_src_vertices[0].y);
+ m_spline_x.add_point(m_src_vertices.size() + 5, m_src_vertices[1].x);
+ m_spline_y.add_point(m_src_vertices.size() + 5, m_src_vertices[1].y);
+ m_spline_x.add_point(m_src_vertices.size() + 6, m_src_vertices[2].x);
+ m_spline_y.add_point(m_src_vertices.size() + 6, m_src_vertices[2].y);
+ m_spline_x.add_point(m_src_vertices.size() + 7, m_src_vertices.next(2).x);
+ m_spline_y.add_point(m_src_vertices.size() + 7, m_src_vertices.next(2).y);
+ }
+ m_spline_x.prepare();
+ m_spline_y.prepare();
+ m_status = ready;
+ }
+ }
+
+
+
+
+
+
+ //------------------------------------------------------------------------
+ unsigned vcgen_bspline::vertex(double* x, double* y)
+ {
+ unsigned cmd = path_cmd_line_to;
+ while(!is_stop(cmd))
+ {
+ switch(m_status)
+ {
+ case initial:
+ rewind(0);
+
+ case ready:
+ if(m_src_vertices.size() < 2)
+ {
+ cmd = path_cmd_stop;
+ break;
+ }
+
+ if(m_src_vertices.size() == 2)
+ {
+ *x = m_src_vertices[m_src_vertex].x;
+ *y = m_src_vertices[m_src_vertex].y;
+ m_src_vertex++;
+ if(m_src_vertex == 1) return path_cmd_move_to;
+ if(m_src_vertex == 2) return path_cmd_line_to;
+ cmd = path_cmd_stop;
+ break;
+ }
+
+ cmd = path_cmd_move_to;
+ m_status = polygon;
+ m_src_vertex = 0;
+
+ case polygon:
+ if(m_cur_abscissa >= m_max_abscissa)
+ {
+ if(m_closed)
+ {
+ m_status = end_poly;
+ break;
+ }
+ else
+ {
+ *x = m_src_vertices[m_src_vertices.size() - 1].x;
+ *y = m_src_vertices[m_src_vertices.size() - 1].y;
+ m_status = end_poly;
+ return path_cmd_line_to;
+ }
+ }
+
+ *x = m_spline_x.get_stateful(m_cur_abscissa);
+ *y = m_spline_y.get_stateful(m_cur_abscissa);
+ m_src_vertex++;
+ m_cur_abscissa += m_interpolation_step;
+ return (m_src_vertex == 1) ? path_cmd_move_to : path_cmd_line_to;
+
+ case end_poly:
+ m_status = stop;
+ return path_cmd_end_poly | m_closed;
+
+ case stop:
+ return path_cmd_stop;
+ }
+ }
+ return cmd;
+ }
+
+
+}
+
diff --git a/agg/source/agg_vcgen_contour.cpp b/agg/source/agg_vcgen_contour.cpp
new file mode 100755
index 000000000000..979407417e75
--- /dev/null
+++ b/agg/source/agg_vcgen_contour.cpp
@@ -0,0 +1,191 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Contour generator
+//
+//----------------------------------------------------------------------------
+
+#include <math.h>
+#include "agg_vcgen_contour.h"
+
+namespace agg
+{
+
+ //------------------------------------------------------------------------
+ vcgen_contour::vcgen_contour() :
+ m_src_vertices(),
+ m_out_vertices(),
+ m_width(1.0),
+ m_line_join(bevel_join),
+ m_inner_line_join(miter_join_revert),
+ m_approx_scale(1.0),
+ m_abs_width(1.0),
+ m_signed_width(1.0),
+ m_miter_limit(4.0),
+ m_inner_miter_limit(1.0 + 1.0/64.0),
+ m_status(initial),
+ m_src_vertex(0),
+ m_closed(0),
+ m_orientation(0),
+ m_auto_detect(false)
+ {
+ }
+
+
+ //------------------------------------------------------------------------
+ void vcgen_contour::remove_all()
+ {
+ m_src_vertices.remove_all();
+ m_closed = 0;
+ m_orientation = 0;
+ m_abs_width = fabs(m_width);
+ m_signed_width = m_width;
+ m_status = initial;
+ }
+
+
+ //------------------------------------------------------------------------
+ void vcgen_contour::miter_limit_theta(double t)
+ {
+ m_miter_limit = 1.0 / sin(t * 0.5) ;
+ }
+
+
+ //------------------------------------------------------------------------
+ void vcgen_contour::add_vertex(double x, double y, unsigned cmd)
+ {
+ m_status = initial;
+ if(is_move_to(cmd))
+ {
+ m_src_vertices.modify_last(vertex_dist(x, y));
+ }
+ else
+ {
+ if(is_vertex(cmd))
+ {
+ m_src_vertices.add(vertex_dist(x, y));
+ }
+ else
+ {
+ if(is_end_poly(cmd))
+ {
+ m_closed = get_close_flag(cmd);
+ if(m_orientation == path_flags_none)
+ {
+ m_orientation = get_orientation(cmd);
+ }
+ }
+ }
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ void vcgen_contour::rewind(unsigned)
+ {
+ if(m_status == initial)
+ {
+ m_src_vertices.close(true);
+ m_signed_width = m_width;
+ if(m_auto_detect)
+ {
+ if(!is_oriented(m_orientation))
+ {
+ m_orientation = (calc_polygon_area(m_src_vertices) > 0.0) ?
+ path_flags_ccw :
+ path_flags_cw;
+ }
+ }
+ if(is_oriented(m_orientation))
+ {
+ m_signed_width = is_ccw(m_orientation) ? m_width : -m_width;
+ }
+ }
+ m_status = ready;
+ m_src_vertex = 0;
+ }
+
+
+ //------------------------------------------------------------------------
+ unsigned vcgen_contour::vertex(double* x, double* y)
+ {
+ unsigned cmd = path_cmd_line_to;
+ while(!is_stop(cmd))
+ {
+ switch(m_status)
+ {
+ case initial:
+ rewind(0);
+
+ case ready:
+ if(m_src_vertices.size() < 2 + unsigned(m_closed != 0))
+ {
+ cmd = path_cmd_stop;
+ break;
+ }
+ m_status = outline;
+ cmd = path_cmd_move_to;
+ m_src_vertex = 0;
+ m_out_vertex = 0;
+
+ case outline:
+ if(m_src_vertex >= m_src_vertices.size())
+ {
+ m_status = end_poly;
+ break;
+ }
+ stroke_calc_join(m_out_vertices,
+ m_src_vertices.prev(m_src_vertex),
+ m_src_vertices.curr(m_src_vertex),
+ m_src_vertices.next(m_src_vertex),
+ m_src_vertices.prev(m_src_vertex).dist,
+ m_src_vertices.curr(m_src_vertex).dist,
+ m_signed_width,
+ m_line_join,
+ m_inner_line_join,
+ m_miter_limit,
+ m_inner_miter_limit,
+ m_approx_scale);
+ ++m_src_vertex;
+ m_status = out_vertices;
+ m_out_vertex = 0;
+
+ case out_vertices:
+ if(m_out_vertex >= m_out_vertices.size())
+ {
+ m_status = outline;
+ }
+ else
+ {
+ const point_type& c = m_out_vertices[m_out_vertex++];
+ *x = c.x;
+ *y = c.y;
+ return cmd;
+ }
+ break;
+
+ case end_poly:
+ if(!m_closed) return path_cmd_stop;
+ m_status = stop;
+ return (unsigned)path_cmd_end_poly | (unsigned)path_flags_close | (unsigned)path_flags_ccw;
+
+ case stop:
+ return path_cmd_stop;
+ }
+ }
+ return cmd;
+ }
+
+}
diff --git a/agg/source/agg_vcgen_dash.cpp b/agg/source/agg_vcgen_dash.cpp
new file mode 100755
index 000000000000..96783abe9952
--- /dev/null
+++ b/agg/source/agg_vcgen_dash.cpp
@@ -0,0 +1,237 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Line dash generator
+//
+//----------------------------------------------------------------------------
+
+#include <math.h>
+#include "agg_vcgen_dash.h"
+#include "agg_shorten_path.h"
+
+namespace agg
+{
+
+ //------------------------------------------------------------------------
+ vcgen_dash::vcgen_dash() :
+ m_total_dash_len(0.0),
+ m_num_dashes(0),
+ m_dash_start(0.0),
+ m_shorten(0.0),
+ m_curr_dash_start(0.0),
+ m_curr_dash(0),
+ m_src_vertices(),
+ m_closed(0),
+ m_status(initial),
+ m_src_vertex(0)
+ {
+ }
+
+
+
+ //------------------------------------------------------------------------
+ void vcgen_dash::remove_all_dashes()
+ {
+ m_total_dash_len = 0.0;
+ m_num_dashes = 0;
+ m_curr_dash_start = 0.0;
+ m_curr_dash = 0;
+ }
+
+
+ //------------------------------------------------------------------------
+ void vcgen_dash::add_dash(double dash_len, double gap_len)
+ {
+ if(m_num_dashes < max_dashes)
+ {
+ m_total_dash_len += dash_len + gap_len;
+ m_dashes[m_num_dashes++] = dash_len;
+ m_dashes[m_num_dashes++] = gap_len;
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ void vcgen_dash::dash_start(double ds)
+ {
+ m_dash_start = ds;
+ calc_dash_start(fabs(ds));
+ }
+
+
+ //------------------------------------------------------------------------
+ void vcgen_dash::calc_dash_start(double ds)
+ {
+ m_curr_dash = 0;
+ m_curr_dash_start = 0.0;
+ while(ds > 0.0)
+ {
+ if(ds > m_dashes[m_curr_dash])
+ {
+ ds -= m_dashes[m_curr_dash];
+ ++m_curr_dash;
+ m_curr_dash_start = 0.0;
+ if(m_curr_dash >= m_num_dashes) m_curr_dash = 0;
+ }
+ else
+ {
+ m_curr_dash_start = ds;
+ ds = 0.0;
+ }
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ void vcgen_dash::remove_all()
+ {
+ m_status = initial;
+ m_src_vertices.remove_all();
+ m_closed = 0;
+ }
+
+
+ //------------------------------------------------------------------------
+ void vcgen_dash::add_vertex(double x, double y, unsigned cmd)
+ {
+ m_status = initial;
+ if(is_move_to(cmd))
+ {
+ m_src_vertices.modify_last(vertex_dist(x, y));
+ }
+ else
+ {
+ if(is_vertex(cmd))
+ {
+ m_src_vertices.add(vertex_dist(x, y));
+ }
+ else
+ {
+ m_closed = get_close_flag(cmd);
+ }
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ void vcgen_dash::rewind(unsigned)
+ {
+ if(m_status == initial)
+ {
+ m_src_vertices.close(m_closed != 0);
+ shorten_path(m_src_vertices, m_shorten, m_closed);
+ }
+ m_status = ready;
+ m_src_vertex = 0;
+ }
+
+
+ //------------------------------------------------------------------------
+ unsigned vcgen_dash::vertex(double* x, double* y)
+ {
+ unsigned cmd = path_cmd_move_to;
+ while(!is_stop(cmd))
+ {
+ switch(m_status)
+ {
+ case initial:
+ rewind(0);
+
+ case ready:
+ if(m_num_dashes < 2 || m_src_vertices.size() < 2)
+ {
+ cmd = path_cmd_stop;
+ break;
+ }
+ m_status = polyline;
+ m_src_vertex = 1;
+ m_v1 = &m_src_vertices[0];
+ m_v2 = &m_src_vertices[1];
+ m_curr_rest = m_v1->dist;
+ *x = m_v1->x;
+ *y = m_v1->y;
+ if(m_dash_start >= 0.0) calc_dash_start(m_dash_start);
+ return path_cmd_move_to;
+
+ case polyline:
+ {
+ double dash_rest = m_dashes[m_curr_dash] - m_curr_dash_start;
+
+ unsigned _cmd = (m_curr_dash & 1) ?
+ path_cmd_move_to :
+ path_cmd_line_to;
+
+ if(m_curr_rest > dash_rest)
+ {
+ m_curr_rest -= dash_rest;
+ ++m_curr_dash;
+ if(m_curr_dash >= m_num_dashes) m_curr_dash = 0;
+ m_curr_dash_start = 0.0;
+ *x = m_v2->x - (m_v2->x - m_v1->x) * m_curr_rest / m_v1->dist;
+ *y = m_v2->y - (m_v2->y - m_v1->y) * m_curr_rest / m_v1->dist;
+ }
+ else
+ {
+ m_curr_dash_start += m_curr_rest;
+ *x = m_v2->x;
+ *y = m_v2->y;
+ ++m_src_vertex;
+ m_v1 = m_v2;
+ m_curr_rest = m_v1->dist;
+ if(m_closed)
+ {
+ if(m_src_vertex > m_src_vertices.size())
+ {
+ m_status = stop;
+ }
+ else
+ {
+ m_v2 = &m_src_vertices
+ [
+ (m_src_vertex >= m_src_vertices.size()) ? 0 :
+ m_src_vertex
+ ];
+ }
+ }
+ else
+ {
+ if(m_src_vertex >= m_src_vertices.size())
+ {
+ m_status = stop;
+ }
+ else
+ {
+ m_v2 = &m_src_vertices[m_src_vertex];
+ }
+ }
+ }
+ return _cmd;
+ }
+
+ // statement unreachable
+ //break;
+
+ case stop:
+ cmd = path_cmd_stop;
+ break;
+ }
+
+ }
+ return path_cmd_stop;
+ }
+
+
+}
+
diff --git a/agg/source/agg_vcgen_markers_term.cpp b/agg/source/agg_vcgen_markers_term.cpp
new file mode 100755
index 000000000000..0daa40793764
--- /dev/null
+++ b/agg/source/agg_vcgen_markers_term.cpp
@@ -0,0 +1,103 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Terminal markers generator (arrowhead/arrowtail)
+//
+//----------------------------------------------------------------------------
+
+#include "agg_vcgen_markers_term.h"
+
+namespace agg
+{
+
+ //------------------------------------------------------------------------
+ void vcgen_markers_term::remove_all()
+ {
+ m_markers.remove_all();
+ }
+
+
+ //------------------------------------------------------------------------
+ void vcgen_markers_term::add_vertex(double x, double y, unsigned cmd)
+ {
+ if(is_move_to(cmd))
+ {
+ if(m_markers.size() & 1)
+ {
+ // Initial state, the first coordinate was added.
+ // If two of more calls of start_vertex() occures
+ // we just modify the last one.
+ m_markers.modify_last(coord_type(x, y));
+ }
+ else
+ {
+ m_markers.add(coord_type(x, y));
+ }
+ }
+ else
+ {
+ if(is_vertex(cmd))
+ {
+ if(m_markers.size() & 1)
+ {
+ // Initial state, the first coordinate was added.
+ // Add three more points, 0,1,1,0
+ m_markers.add(coord_type(x, y));
+ m_markers.add(m_markers[m_markers.size() - 1]);
+ m_markers.add(m_markers[m_markers.size() - 3]);
+ }
+ else
+ {
+ if(m_markers.size())
+ {
+ // Replace two last points: 0,1,1,0 -> 0,1,2,1
+ m_markers[m_markers.size() - 1] = m_markers[m_markers.size() - 2];
+ m_markers[m_markers.size() - 2] = coord_type(x, y);
+ }
+ }
+ }
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ void vcgen_markers_term::rewind(unsigned id)
+ {
+ m_curr_id = id * 2;
+ m_curr_idx = m_curr_id;
+ }
+
+
+ //------------------------------------------------------------------------
+ unsigned vcgen_markers_term::vertex(double* x, double* y)
+ {
+ if(m_curr_id > 2 || m_curr_idx >= m_markers.size())
+ {
+ return path_cmd_stop;
+ }
+ const coord_type& c = m_markers[m_curr_idx];
+ *x = c.x;
+ *y = c.y;
+ if(m_curr_idx & 1)
+ {
+ m_curr_idx += 3;
+ return path_cmd_line_to;
+ }
+ ++m_curr_idx;
+ return path_cmd_move_to;
+ }
+
+
+}
diff --git a/agg/source/agg_vcgen_smooth_poly1.cpp b/agg/source/agg_vcgen_smooth_poly1.cpp
new file mode 100755
index 000000000000..1df1edb5c72c
--- /dev/null
+++ b/agg/source/agg_vcgen_smooth_poly1.cpp
@@ -0,0 +1,226 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Smooth polygon generator
+//
+//----------------------------------------------------------------------------
+
+#include "agg_vcgen_smooth_poly1.h"
+
+namespace agg
+{
+
+ //------------------------------------------------------------------------
+ vcgen_smooth_poly1::vcgen_smooth_poly1() :
+ m_src_vertices(),
+ m_smooth_value(0.5),
+ m_closed(0),
+ m_status(initial),
+ m_src_vertex(0)
+ {
+ }
+
+
+ //------------------------------------------------------------------------
+ void vcgen_smooth_poly1::remove_all()
+ {
+ m_src_vertices.remove_all();
+ m_closed = 0;
+ m_status = initial;
+ }
+
+
+ //------------------------------------------------------------------------
+ void vcgen_smooth_poly1::add_vertex(double x, double y, unsigned cmd)
+ {
+ m_status = initial;
+ if(is_move_to(cmd))
+ {
+ m_src_vertices.modify_last(vertex_dist(x, y));
+ }
+ else
+ {
+ if(is_vertex(cmd))
+ {
+ m_src_vertices.add(vertex_dist(x, y));
+ }
+ else
+ {
+ m_closed = get_close_flag(cmd);
+ }
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ void vcgen_smooth_poly1::rewind(unsigned)
+ {
+ if(m_status == initial)
+ {
+ m_src_vertices.close(m_closed != 0);
+ }
+ m_status = ready;
+ m_src_vertex = 0;
+ }
+
+
+ //------------------------------------------------------------------------
+ void vcgen_smooth_poly1::calculate(const vertex_dist& v0,
+ const vertex_dist& v1,
+ const vertex_dist& v2,
+ const vertex_dist& v3)
+ {
+
+ double k1 = v0.dist / (v0.dist + v1.dist);
+ double k2 = v1.dist / (v1.dist + v2.dist);
+
+ double xm1 = v0.x + (v2.x - v0.x) * k1;
+ double ym1 = v0.y + (v2.y - v0.y) * k1;
+ double xm2 = v1.x + (v3.x - v1.x) * k2;
+ double ym2 = v1.y + (v3.y - v1.y) * k2;
+
+ m_ctrl1_x = v1.x + m_smooth_value * (v2.x - xm1);
+ m_ctrl1_y = v1.y + m_smooth_value * (v2.y - ym1);
+ m_ctrl2_x = v2.x + m_smooth_value * (v1.x - xm2);
+ m_ctrl2_y = v2.y + m_smooth_value * (v1.y - ym2);
+ }
+
+
+ //------------------------------------------------------------------------
+ unsigned vcgen_smooth_poly1::vertex(double* x, double* y)
+ {
+ unsigned cmd = path_cmd_line_to;
+ while(!is_stop(cmd))
+ {
+ switch(m_status)
+ {
+ case initial:
+ rewind(0);
+
+ case ready:
+ if(m_src_vertices.size() < 2)
+ {
+ cmd = path_cmd_stop;
+ break;
+ }
+
+ if(m_src_vertices.size() == 2)
+ {
+ *x = m_src_vertices[m_src_vertex].x;
+ *y = m_src_vertices[m_src_vertex].y;
+ m_src_vertex++;
+ if(m_src_vertex == 1) return path_cmd_move_to;
+ if(m_src_vertex == 2) return path_cmd_line_to;
+ cmd = path_cmd_stop;
+ break;
+ }
+
+ cmd = path_cmd_move_to;
+ m_status = polygon;
+ m_src_vertex = 0;
+
+ case polygon:
+ if(m_closed)
+ {
+ if(m_src_vertex >= m_src_vertices.size())
+ {
+ *x = m_src_vertices[0].x;
+ *y = m_src_vertices[0].y;
+ m_status = end_poly;
+ return path_cmd_curve4;
+ }
+ }
+ else
+ {
+ if(m_src_vertex >= m_src_vertices.size() - 1)
+ {
+ *x = m_src_vertices[m_src_vertices.size() - 1].x;
+ *y = m_src_vertices[m_src_vertices.size() - 1].y;
+ m_status = end_poly;
+ return path_cmd_curve3;
+ }
+ }
+
+ calculate(m_src_vertices.prev(m_src_vertex),
+ m_src_vertices.curr(m_src_vertex),
+ m_src_vertices.next(m_src_vertex),
+ m_src_vertices.next(m_src_vertex + 1));
+
+ *x = m_src_vertices[m_src_vertex].x;
+ *y = m_src_vertices[m_src_vertex].y;
+ m_src_vertex++;
+
+ if(m_closed)
+ {
+ m_status = ctrl1;
+ return ((m_src_vertex == 1) ?
+ path_cmd_move_to :
+ path_cmd_curve4);
+ }
+ else
+ {
+ if(m_src_vertex == 1)
+ {
+ m_status = ctrl_b;
+ return path_cmd_move_to;
+ }
+ if(m_src_vertex >= m_src_vertices.size() - 1)
+ {
+ m_status = ctrl_e;
+ return path_cmd_curve3;
+ }
+ m_status = ctrl1;
+ return path_cmd_curve4;
+ }
+ // statement unreachable
+ //break;
+
+ case ctrl_b:
+ *x = m_ctrl2_x;
+ *y = m_ctrl2_y;
+ m_status = polygon;
+ return path_cmd_curve3;
+
+ case ctrl_e:
+ *x = m_ctrl1_x;
+ *y = m_ctrl1_y;
+ m_status = polygon;
+ return path_cmd_curve3;
+
+ case ctrl1:
+ *x = m_ctrl1_x;
+ *y = m_ctrl1_y;
+ m_status = ctrl2;
+ return path_cmd_curve4;
+
+ case ctrl2:
+ *x = m_ctrl2_x;
+ *y = m_ctrl2_y;
+ m_status = polygon;
+ return path_cmd_curve4;
+
+ case end_poly:
+ m_status = stop;
+ return path_cmd_end_poly | m_closed;
+
+ case stop:
+ return path_cmd_stop;
+ }
+ }
+ return cmd;
+ }
+
+}
+
diff --git a/agg/source/agg_vcgen_stroke.cpp b/agg/source/agg_vcgen_stroke.cpp
new file mode 100755
index 000000000000..a8a4481ec25b
--- /dev/null
+++ b/agg/source/agg_vcgen_stroke.cpp
@@ -0,0 +1,246 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+//
+// Stroke generator
+//
+//----------------------------------------------------------------------------
+#include <math.h>
+#include "agg_vcgen_stroke.h"
+#include "agg_shorten_path.h"
+
+namespace agg
+{
+
+ //------------------------------------------------------------------------
+ vcgen_stroke::vcgen_stroke() :
+ m_src_vertices(),
+ m_out_vertices(),
+ m_width(0.5),
+ m_miter_limit(4.0),
+ m_inner_miter_limit(1.0 + 1.0/64.0),
+ m_approx_scale(1.0),
+ m_shorten(0.0),
+ m_line_cap(butt_cap),
+ m_line_join(miter_join),
+ m_inner_line_join(miter_join_revert),
+ m_closed(0),
+ m_status(initial),
+ m_src_vertex(0),
+ m_out_vertex(0)
+ {
+ }
+
+
+ //------------------------------------------------------------------------
+ void vcgen_stroke::miter_limit_theta(double t)
+ {
+ m_miter_limit = 1.0 / sin(t * 0.5) ;
+ }
+
+
+ //------------------------------------------------------------------------
+ void vcgen_stroke::remove_all()
+ {
+ m_src_vertices.remove_all();
+ m_closed = 0;
+ m_status = initial;
+ }
+
+
+ //------------------------------------------------------------------------
+ void vcgen_stroke::add_vertex(double x, double y, unsigned cmd)
+ {
+ m_status = initial;
+ if(is_move_to(cmd))
+ {
+ m_src_vertices.modify_last(vertex_dist(x, y));
+ }
+ else
+ {
+ if(is_vertex(cmd))
+ {
+ m_src_vertices.add(vertex_dist(x, y));
+ }
+ else
+ {
+ m_closed = get_close_flag(cmd);
+ }
+ }
+ }
+
+
+ //------------------------------------------------------------------------
+ void vcgen_stroke::rewind(unsigned)
+ {
+ if(m_status == initial)
+ {
+ m_src_vertices.close(m_closed != 0);
+ shorten_path(m_src_vertices, m_shorten, m_closed);
+ if(m_src_vertices.size() < 3) m_closed = 0;
+ }
+ m_status = ready;
+ m_src_vertex = 0;
+ m_out_vertex = 0;
+ }
+
+
+ //------------------------------------------------------------------------
+ unsigned vcgen_stroke::vertex(double* x, double* y)
+ {
+ unsigned cmd = path_cmd_line_to;
+ while(!is_stop(cmd))
+ {
+ switch(m_status)
+ {
+ case initial:
+ rewind(0);
+
+ case ready:
+ if(m_src_vertices.size() < 2 + unsigned(m_closed != 0))
+ {
+ cmd = path_cmd_stop;
+ break;
+ }
+ m_status = m_closed ? outline1 : cap1;
+ cmd = path_cmd_move_to;
+ m_src_vertex = 0;
+ m_out_vertex = 0;
+ break;
+
+ case cap1:
+ stroke_calc_cap(m_out_vertices,
+ m_src_vertices[0],
+ m_src_vertices[1],
+ m_src_vertices[0].dist,
+ m_line_cap,
+ m_width,
+ m_approx_scale);
+ m_src_vertex = 1;
+ m_prev_status = outline1;
+ m_status = out_vertices;
+ m_out_vertex = 0;
+ break;
+
+ case cap2:
+ stroke_calc_cap(m_out_vertices,
+ m_src_vertices[m_src_vertices.size() - 1],
+ m_src_vertices[m_src_vertices.size() - 2],
+ m_src_vertices[m_src_vertices.size() - 2].dist,
+ m_line_cap,
+ m_width,
+ m_approx_scale);
+ m_prev_status = outline2;
+ m_status = out_vertices;
+ m_out_vertex = 0;
+ break;
+
+ case outline1:
+ if(m_closed)
+ {
+ if(m_src_vertex >= m_src_vertices.size())
+ {
+ m_prev_status = close_first;
+ m_status = end_poly1;
+ break;
+ }
+ }
+ else
+ {
+ if(m_src_vertex >= m_src_vertices.size() - 1)
+ {
+ m_status = cap2;
+ break;
+ }
+ }
+ stroke_calc_join(m_out_vertices,
+ m_src_vertices.prev(m_src_vertex),
+ m_src_vertices.curr(m_src_vertex),
+ m_src_vertices.next(m_src_vertex),
+ m_src_vertices.prev(m_src_vertex).dist,
+ m_src_vertices.curr(m_src_vertex).dist,
+ m_width,
+ m_line_join,
+ m_inner_line_join,
+ m_miter_limit,
+ m_inner_miter_limit,
+ m_approx_scale);
+ ++m_src_vertex;
+ m_prev_status = m_status;
+ m_status = out_vertices;
+ m_out_vertex = 0;
+ break;
+
+ case close_first:
+ m_status = outline2;
+ cmd = path_cmd_move_to;
+
+ case outline2:
+ if(m_src_vertex <= unsigned(m_closed == 0))
+ {
+ m_status = end_poly2;
+ m_prev_status = stop;
+ break;
+ }
+
+ --m_src_vertex;
+ stroke_calc_join(m_out_vertices,
+ m_src_vertices.next(m_src_vertex),
+ m_src_vertices.curr(m_src_vertex),
+ m_src_vertices.prev(m_src_vertex),
+ m_src_vertices.curr(m_src_vertex).dist,
+ m_src_vertices.prev(m_src_vertex).dist,
+ m_width,
+ m_line_join,
+ m_inner_line_join,
+ m_miter_limit,
+ m_inner_miter_limit,
+ m_approx_scale);
+
+ m_prev_status = m_status;
+ m_status = out_vertices;
+ m_out_vertex = 0;
+ break;
+
+ case out_vertices:
+ if(m_out_vertex >= m_out_vertices.size())
+ {
+ m_status = m_prev_status;
+ }
+ else
+ {
+ const point_type& c = m_out_vertices[m_out_vertex++];
+ *x = c.x;
+ *y = c.y;
+ return cmd;
+ }
+ break;
+
+ case end_poly1:
+ m_status = m_prev_status;
+ return (unsigned)path_cmd_end_poly | (unsigned)path_flags_close | (unsigned)path_flags_ccw;
+
+ case end_poly2:
+ m_status = m_prev_status;
+ return (unsigned)path_cmd_end_poly | (unsigned)path_flags_close | (unsigned)path_flags_cw;
+
+ case stop:
+ cmd = path_cmd_stop;
+ break;
+ }
+ }
+ return cmd;
+ }
+
+}
diff --git a/agg/source/agg_vpgen_clip_polygon.cpp b/agg/source/agg_vpgen_clip_polygon.cpp
new file mode 100755
index 000000000000..e3a0b71d821b
--- /dev/null
+++ b/agg/source/agg_vpgen_clip_polygon.cpp
@@ -0,0 +1,133 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#include "agg_vpgen_clip_polygon.h"
+#include "agg_clip_liang_barsky.h"
+
+namespace agg
+{
+
+ //------------------------------------------------------------------------
+ // Determine the clipping code of the vertex according to the
+ // Cyrus-Beck line clipping algorithm
+ //
+ // | |
+ // 0110 | 0010 | 0011
+ // | |
+ // -------+--------+-------- clip_box.y2
+ // | |
+ // 0100 | 0000 | 0001
+ // | |
+ // -------+--------+-------- clip_box.y1
+ // | |
+ // 1100 | 1000 | 1001
+ // | |
+ // clip_box.x1 clip_box.x2
+ //
+ //
+ unsigned vpgen_clip_polygon::clipping_flags(double x, double y)
+ {
+ if(x < m_clip_box.x1)
+ {
+ if(y > m_clip_box.y2) return 6;
+ if(y < m_clip_box.y1) return 12;
+ return 4;
+ }
+
+ if(x > m_clip_box.x2)
+ {
+ if(y > m_clip_box.y2) return 3;
+ if(y < m_clip_box.y1) return 9;
+ return 1;
+ }
+
+ if(y > m_clip_box.y2) return 2;
+ if(y < m_clip_box.y1) return 8;
+
+ return 0;
+ }
+
+ //----------------------------------------------------------------------------
+ void vpgen_clip_polygon::reset()
+ {
+ m_vertex = 0;
+ m_num_vertices = 0;
+ }
+
+ //----------------------------------------------------------------------------
+ void vpgen_clip_polygon::move_to(double x, double y)
+ {
+ m_vertex = 0;
+ m_num_vertices = 0;
+ m_clip_flags = clipping_flags(x, y);
+ if(m_clip_flags == 0)
+ {
+ m_x[0] = x;
+ m_y[0] = y;
+ m_num_vertices = 1;
+ }
+ m_x1 = x;
+ m_y1 = y;
+ m_cmd = path_cmd_move_to;
+ }
+
+
+ //----------------------------------------------------------------------------
+ void vpgen_clip_polygon::line_to(double x, double y)
+ {
+ m_vertex = 0;
+ m_num_vertices = 0;
+ unsigned flags = clipping_flags(x, y);
+
+ if(m_clip_flags == flags)
+ {
+ if(flags == 0)
+ {
+ m_x[0] = x;
+ m_y[0] = y;
+ m_num_vertices = 1;
+ }
+ }
+ else
+ {
+ m_num_vertices = clip_liang_barsky(m_x1, m_y1,
+ x, y,
+ m_clip_box,
+ m_x, m_y);
+ }
+
+ m_clip_flags = flags;
+ m_x1 = x;
+ m_y1 = y;
+ }
+
+
+ //----------------------------------------------------------------------------
+ unsigned vpgen_clip_polygon::vertex(double* x, double* y)
+ {
+ if(m_vertex < m_num_vertices)
+ {
+ *x = m_x[m_vertex];
+ *y = m_y[m_vertex];
+ ++m_vertex;
+ unsigned cmd = m_cmd;
+ m_cmd = path_cmd_line_to;
+ return cmd;
+ }
+ return path_cmd_stop;
+ }
+
+
+}
diff --git a/agg/source/agg_vpgen_clip_polyline.cpp b/agg/source/agg_vpgen_clip_polyline.cpp
new file mode 100755
index 000000000000..b3b60c96a70d
--- /dev/null
+++ b/agg/source/agg_vpgen_clip_polyline.cpp
@@ -0,0 +1,142 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#include <math.h>
+#include "agg_vpgen_clip_polyline.h"
+
+namespace agg
+{
+ static double clip_epsilon = 1e-10;
+
+
+ //----------------------------------------------------------------------------
+ void vpgen_clip_polyline::reset()
+ {
+ m_vertex = 0;
+ m_num_vertices = 0;
+ }
+
+ //----------------------------------------------------------------------------
+ void vpgen_clip_polyline::move_to(double x, double y)
+ {
+ m_vertex = 0;
+ m_num_vertices = 0;
+ m_f1 = clipping_flags(x, y);
+ if(m_f1 == 0)
+ {
+ m_x[0] = x;
+ m_y[0] = y;
+ m_cmd[0] = path_cmd_move_to;
+ m_num_vertices = 1;
+ }
+ m_x1 = x;
+ m_y1 = y;
+ }
+
+
+ //----------------------------------------------------------------------------
+ bool vpgen_clip_polyline::move_point(double& x, double& y, unsigned& flags)
+ {
+ double bound;
+
+ if(flags & (clip_x1 | clip_x2))
+ {
+ bound = (flags & clip_x1) ? m_clip_box.x1 : m_clip_box.x2;
+ y = (bound - m_x1) * (m_y2 - m_y1) / (m_x2 - m_x1) + m_y1;
+ x = bound;
+ flags = clipping_flags_y(y);
+ }
+ if(fabs(m_y2 - m_y1) < clip_epsilon && fabs(m_x2 - m_x1) < clip_epsilon)
+ {
+ return false;
+ }
+ if(flags & (clip_y1 | clip_y2))
+ {
+ bound = (flags & clip_y1) ? m_clip_box.y1 : m_clip_box.y2;
+ x = (bound - m_y1) * (m_x2 - m_x1) / (m_y2 - m_y1) + m_x1;
+ y = bound;
+ }
+ flags = 0;
+ return true;
+ }
+
+ //----------------------------------------------------------------------------
+ void vpgen_clip_polyline::clip_line_segment()
+ {
+ if((m_f1 & m_f2) == 0)
+ {
+ if(m_f1)
+ {
+ if(!move_point(m_x1, m_y1, m_f1)) return;
+ if(m_f1) return;
+ m_x[0] = m_x1;
+ m_y[0] = m_y1;
+ m_cmd[0] = path_cmd_move_to;
+ m_num_vertices = 1;
+ }
+ if(m_f2)
+ { // Move Point 2
+ if(!move_point(m_x2, m_y2, m_f2)) return;
+ }
+ m_x[m_num_vertices] = m_x2;
+ m_y[m_num_vertices] = m_y2;
+ m_cmd[m_num_vertices++] = path_cmd_line_to;
+ }
+ }
+
+
+
+ //----------------------------------------------------------------------------
+ void vpgen_clip_polyline::line_to(double x, double y)
+ {
+ m_vertex = 0;
+ m_num_vertices = 0;
+ unsigned f = m_f2 = clipping_flags(m_x2 = x, m_y2 = y);
+
+ if(m_f2 == m_f1)
+ {
+ if(m_f2 == 0)
+ {
+ m_x[0] = x;
+ m_y[0] = y;
+ m_cmd[0] = path_cmd_line_to;
+ m_num_vertices = 1;
+ }
+ }
+ else
+ {
+ clip_line_segment();
+ }
+
+ m_f1 = f;
+ m_x1 = x;
+ m_y1 = y;
+ }
+
+
+ //----------------------------------------------------------------------------
+ unsigned vpgen_clip_polyline::vertex(double* x, double* y)
+ {
+ if(m_vertex < m_num_vertices)
+ {
+ *x = m_x[m_vertex];
+ *y = m_y[m_vertex];
+ return m_cmd[m_vertex++];
+ }
+ return path_cmd_stop;
+ }
+
+
+}
diff --git a/agg/source/agg_vpgen_segmentator.cpp b/agg/source/agg_vpgen_segmentator.cpp
new file mode 100755
index 000000000000..97e76707c1cb
--- /dev/null
+++ b/agg/source/agg_vpgen_segmentator.cpp
@@ -0,0 +1,67 @@
+//----------------------------------------------------------------------------
+// Anti-Grain Geometry - Version 2.3
+// Copyright (C) 2002-2005 Maxim Shemanarev (http://www.antigrain.com)
+//
+// Permission to copy, use, modify, sell and distribute this software
+// is granted provided this copyright notice appears in all copies.
+// This software is provided "as is" without express or implied
+// warranty, and with no claim as to its suitability for any purpose.
+//
+//----------------------------------------------------------------------------
+// Contact: mcseem@antigrain.com
+// mcseemagg@yahoo.com
+// http://www.antigrain.com
+//----------------------------------------------------------------------------
+
+#include <math.h>
+#include "agg_vpgen_segmentator.h"
+
+namespace agg
+{
+
+ void vpgen_segmentator::move_to(double x, double y)
+ {
+ m_x1 = x;
+ m_y1 = y;
+ m_dx = 0.0;
+ m_dy = 0.0;
+ m_dl = 2.0;
+ m_ddl = 2.0;
+ m_cmd = path_cmd_move_to;
+ }
+
+ void vpgen_segmentator::line_to(double x, double y)
+ {
+ m_x1 += m_dx;
+ m_y1 += m_dy;
+ m_dx = x - m_x1;
+ m_dy = y - m_y1;
+ double len = sqrt(m_dx * m_dx + m_dy * m_dy) * m_approximation_scale;
+ if(len < 1e-30) len = 1e-30;
+ m_ddl = 1.0 / len;
+ m_dl = (m_cmd == path_cmd_move_to) ? 0.0 : m_ddl;
+ if(m_cmd == path_cmd_stop) m_cmd = path_cmd_line_to;
+ }
+
+ unsigned vpgen_segmentator::vertex(double* x, double* y)
+ {
+ if(m_cmd == path_cmd_stop) return path_cmd_stop;
+
+ unsigned cmd = m_cmd;
+ m_cmd = path_cmd_line_to;
+ if(m_dl >= 1.0 - m_ddl)
+ {
+ m_dl = 1.0;
+ m_cmd = path_cmd_stop;
+ *x = m_x1 + m_dx;
+ *y = m_y1 + m_dy;
+ return cmd;
+ }
+ *x = m_x1 + m_dx * m_dl;
+ *y = m_y1 + m_dy * m_dl;
+ m_dl += m_ddl;
+ return cmd;
+ }
+
+}
+
diff --git a/agg/source/makefile.mk b/agg/source/makefile.mk
new file mode 100755
index 000000000000..e29f2c3b8891
--- /dev/null
+++ b/agg/source/makefile.mk
@@ -0,0 +1,91 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJ=..
+PRJNAME=agg
+TARGET=agg
+ENABLE_EXCEPTIONS=TRUE
+
+# --- Settings ----------------------------------
+
+.INCLUDE : settings.mk
+.IF "$(L10N_framework)"==""
+# don't link default libraries from sal
+UWINAPILIB=
+LIBSALCPPRT=
+# --- Files -------------------------------------
+
+SLOFILES= \
+ $(SLO)$/agg_arc.obj \
+ $(SLO)$/agg_arrowhead.obj \
+ $(SLO)$/agg_bezier_arc.obj \
+ $(SLO)$/agg_bspline.obj \
+ $(SLO)$/agg_curves.obj \
+ $(SLO)$/agg_embedded_raster_fonts.obj \
+ $(SLO)$/agg_gsv_text.obj \
+ $(SLO)$/agg_image_filters.obj \
+ $(SLO)$/agg_line_aa_basics.obj \
+ $(SLO)$/agg_line_profile_aa.obj \
+ $(SLO)$/agg_path_storage.obj \
+ $(SLO)$/agg_rasterizer_scanline_aa.obj \
+ $(SLO)$/agg_rounded_rect.obj \
+ $(SLO)$/agg_sqrt_tables.obj \
+ $(SLO)$/agg_trans_affine.obj \
+ $(SLO)$/agg_trans_double_path.obj \
+ $(SLO)$/agg_trans_single_path.obj \
+ $(SLO)$/agg_trans_warp_magnifier.obj \
+ $(SLO)$/agg_vcgen_bspline.obj \
+ $(SLO)$/agg_vcgen_contour.obj \
+ $(SLO)$/agg_vcgen_dash.obj \
+ $(SLO)$/agg_vcgen_markers_term.obj \
+ $(SLO)$/agg_vcgen_smooth_poly1.obj \
+ $(SLO)$/agg_vcgen_stroke.obj \
+ $(SLO)$/agg_vpgen_clip_polygon.obj \
+ $(SLO)$/agg_vpgen_clip_polyline.obj \
+ $(SLO)$/agg_vpgen_segmentator.obj
+
+SHL1TARGET = $(TARGET)$(DLLPOSTFIX)
+SHL1IMPLIB = i$(TARGET)
+SHL1LIBS = $(SLB)$/$(TARGET).lib
+SHL1DEF = $(MISC)$/$(SHL1TARGET).def
+DEF1NAME = $(SHL1TARGET)
+
+DEF1DEPN =$(MISC)$/$(SHL1TARGET).flt \
+ $(LIB1TARGET)
+
+DEF1DES =agg
+DEFLIB1NAME =$(TARGET)
+
+# --- Targets ----------------------------------
+
+.ENDIF # L10N_framework
+.INCLUDE : target.mk
+.IF "$(L10N_framework)"==""
+$(MISC)$/$(SHL1TARGET).flt : makefile.mk $(TARGET).flt
+ @$(TYPE) $(TARGET).flt > $@
+
+.ENDIF # L10N_framework
diff --git a/animations/inc/animations/animationnodehelper.hxx b/animations/inc/animations/animationnodehelper.hxx
new file mode 100644
index 000000000000..8857c52942ce
--- /dev/null
+++ b/animations/inc/animations/animationnodehelper.hxx
@@ -0,0 +1,130 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef INCLUDED_ANIMATIONS_ANIMATIONNODEHELPER_HXX
+#define INCLUDED_ANIMATIONS_ANIMATIONNODEHELPER_HXX
+
+#include <com/sun/star/uno/Reference.hxx>
+#include <com/sun/star/animations/XAnimationNode.hpp>
+#include <com/sun/star/container/XEnumerationAccess.hpp>
+#include <com/sun/star/container/XEnumeration.hpp>
+
+#include <vector>
+
+/* Declaration and definition of AnimationNode helper */
+
+namespace anim
+{
+ // TODO(Q1): this could possibly be implemented with a somewhat
+ // more lightweight template, by having the actual worker receive
+ // only a function pointer, and a thin templated wrapper around
+ // that which converts member functions into that.
+
+ /** Apply given functor to every animation node child.
+
+ @param xNode
+ Parent node
+
+ @param rFunctor
+ Functor to apply. The functor must have an appropriate
+ operator()( const ::com::sun::star::uno::Reference<
+ ::com::sun::star::animations::XAnimationNode >& ) member.
+
+ @return true, if the functor was successfully applied to
+ all children, false otherwise.
+ */
+ template< typename Functor > inline bool for_each_childNode( const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xNode,
+ Functor& rFunctor )
+ {
+ try
+ {
+ // get an XEnumerationAccess to the children
+ ::com::sun::star::uno::Reference< ::com::sun::star::container::XEnumerationAccess >
+ xEnumerationAccess( xNode,
+ ::com::sun::star::uno::UNO_QUERY_THROW );
+ ::com::sun::star::uno::Reference< ::com::sun::star::container::XEnumeration >
+ xEnumeration( xEnumerationAccess->createEnumeration(),
+ ::com::sun::star::uno::UNO_QUERY_THROW );
+
+ while( xEnumeration->hasMoreElements() )
+ {
+ ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >
+ xChildNode( xEnumeration->nextElement(),
+ ::com::sun::star::uno::UNO_QUERY_THROW );
+
+ rFunctor( xChildNode );
+ }
+
+ return true;
+ }
+ catch( ::com::sun::star::uno::Exception& )
+ {
+ return false;
+ }
+ }
+
+
+ /** pushes the given node to the given vector and recursivly calls itself for each child node.
+ */
+ inline void create_deep_vector( const ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >& xNode,
+ std::vector< ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode > >& rVector )
+ {
+ rVector.push_back( xNode );
+
+ try
+ {
+ // get an XEnumerationAccess to the children
+ ::com::sun::star::uno::Reference< ::com::sun::star::container::XEnumerationAccess >
+ xEnumerationAccess( xNode,
+ ::com::sun::star::uno::UNO_QUERY );
+
+ if( xEnumerationAccess.is() )
+ {
+ ::com::sun::star::uno::Reference< ::com::sun::star::container::XEnumeration >
+ xEnumeration( xEnumerationAccess->createEnumeration(),
+ ::com::sun::star::uno::UNO_QUERY );
+
+ if( xEnumeration.is() )
+ {
+ while( xEnumeration->hasMoreElements() )
+ {
+ ::com::sun::star::uno::Reference< ::com::sun::star::animations::XAnimationNode >
+ xChildNode( xEnumeration->nextElement(),
+ ::com::sun::star::uno::UNO_QUERY_THROW );
+
+ create_deep_vector( xChildNode, rVector );
+ }
+ }
+ }
+ }
+ catch( ::com::sun::star::uno::Exception& )
+ {
+ }
+ }
+}
+
+#endif /* INCLUDED_ANIMATIONS_ANIMATIONNODEHELPER_HXX */
diff --git a/animations/prj/build.lst b/animations/prj/build.lst
new file mode 100644
index 000000000000..00a1eb69c743
--- /dev/null
+++ b/animations/prj/build.lst
@@ -0,0 +1,3 @@
+animations animations : cppuhelper comphelper offuh NULL
+animations animations usr1 - all animations_mkout NULL
+animations animations\source\animcore nmake - all animations_animcore NULL
diff --git a/animations/prj/d.lst b/animations/prj/d.lst
new file mode 100644
index 000000000000..9a91b35b2f50
--- /dev/null
+++ b/animations/prj/d.lst
@@ -0,0 +1,10 @@
+..\%__SRC%\bin\animcore.dll %_DEST%\bin%_EXT%\animcore.dll
+..\%__SRC%\lib\libanimcore.so %_DEST%\lib%_EXT%\libanimcore.so
+..\%__SRC%\lib\*.dylib %_DEST%\lib%_EXT%\*
+..\source\animcore\animcore.xml %_DEST%\xml%_EXT%\animcore.xml
+
+..\%__SRC%\lib\lib*static*.dylib %_DEST%\lib%_EXT%\lib*static*.dylib
+
+mkdir: %_DEST%\inc%_EXT%\animations
+..\inc\animations\animationnodehelper.hxx %_DEST%\inc%_EXT%\animations\animationnodehelper.hxx
+..\%__SRC%\misc\animcore.component %_DEST%\xml%_EXT%\animcore.component
diff --git a/animations/source/animcore/animcore.component b/animations/source/animcore/animcore.component
new file mode 100644
index 000000000000..1a9a390fb64b
--- /dev/null
+++ b/animations/source/animcore/animcore.component
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--**********************************************************************
+*
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+*
+* Copyright 2000, 2010 Oracle and/or its affiliates.
+*
+* OpenOffice.org - a multi-platform office productivity suite
+*
+* This file is part of OpenOffice.org.
+*
+* OpenOffice.org is free software: you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License version 3
+* only, as published by the Free Software Foundation.
+*
+* OpenOffice.org is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU Lesser General Public License version 3 for more details
+* (a copy is included in the LICENSE file that accompanied this code).
+*
+* You should have received a copy of the GNU Lesser General Public License
+* version 3 along with OpenOffice.org. If not, see
+* <http://www.openoffice.org/license.html>
+* for a copy of the LGPLv3 License.
+*
+**********************************************************************-->
+
+<component loader="com.sun.star.loader.SharedLibrary"
+ xmlns="http://openoffice.org/2010/uno-components">
+ <implementation name="animcore::Animate">
+ <service name="com.sun.star.animations.Animate"/>
+ </implementation>
+ <implementation name="animcore::AnimateColor">
+ <service name="com.sun.star.animations.AnimateColor"/>
+ </implementation>
+ <implementation name="animcore::AnimateMotion">
+ <service name="com.sun.star.animations.AnimateMotion"/>
+ </implementation>
+ <implementation name="animcore::AnimateSet">
+ <service name="com.sun.star.animations.AnimateSet"/>
+ </implementation>
+ <implementation name="animcore::AnimateTransform">
+ <service name="com.sun.star.animations.AnimateTransform"/>
+ </implementation>
+ <implementation name="animcore::Audio">
+ <service name="com.sun.star.animations.Audio"/>
+ </implementation>
+ <implementation name="animcore::Command">
+ <service name="com.sun.star.animations.Command"/>
+ </implementation>
+ <implementation name="animcore::IterateContainer">
+ <service name="com.sun.star.animations.IterateContainer"/>
+ </implementation>
+ <implementation name="animcore::ParallelTimeContainer">
+ <service name="com.sun.star.animations.ParallelTimeContainer"/>
+ </implementation>
+ <implementation name="animcore::SequenceTimeContainer">
+ <service name="com.sun.star.animations.SequenceTimeContainer"/>
+ </implementation>
+ <implementation name="animcore::TargetPropertiesCreator">
+ <service name="com.sun.star.animations.TargetPropertiesCreator"/>
+ </implementation>
+ <implementation name="animcore::TransitionFilter">
+ <service name="com.sun.star.animations.TransitionFilter"/>
+ </implementation>
+</component>
diff --git a/animations/source/animcore/animcore.cxx b/animations/source/animcore/animcore.cxx
new file mode 100644
index 000000000000..7b18a83e2fe4
--- /dev/null
+++ b/animations/source/animcore/animcore.cxx
@@ -0,0 +1,2089 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#include <com/sun/star/util/XCloneable.hpp>
+#include <com/sun/star/uno/XComponentContext.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <com/sun/star/lang/XTypeProvider.hpp>
+#include <com/sun/star/animations/XAnimateColor.hpp>
+#include <com/sun/star/animations/XAnimateSet.hpp>
+#include <com/sun/star/animations/XAnimateMotion.hpp>
+#include <com/sun/star/animations/XAnimateTransform.hpp>
+#include <com/sun/star/animations/XTransitionFilter.hpp>
+#include <com/sun/star/animations/XTimeContainer.hpp>
+#include <com/sun/star/animations/XIterateContainer.hpp>
+#include <com/sun/star/animations/XAudio.hpp>
+#include <com/sun/star/animations/XCommand.hpp>
+#include <com/sun/star/animations/AnimationNodeType.hpp>
+#include <com/sun/star/animations/AnimationCalcMode.hpp>
+#include <com/sun/star/animations/AnimationFill.hpp>
+#include <com/sun/star/animations/AnimationRestart.hpp>
+#include <com/sun/star/animations/AnimationColorSpace.hpp>
+#include <com/sun/star/animations/AnimationAdditiveMode.hpp>
+#include <com/sun/star/animations/AnimationTransformType.hpp>
+#include <com/sun/star/animations/TransitionType.hpp>
+#include <com/sun/star/animations/TransitionSubType.hpp>
+#include <com/sun/star/presentation/ShapeAnimationSubType.hpp>
+#include <com/sun/star/container/XEnumerationAccess.hpp>
+#include <com/sun/star/beans/NamedValue.hpp>
+#include <com/sun/star/util/XChangesNotifier.hpp>
+#include <com/sun/star/lang/XUnoTunnel.hpp>
+#include <cppuhelper/interfacecontainer.hxx>
+
+#include <cppuhelper/implbase1.hxx>
+#include <rtl/uuid.h>
+
+#include <osl/mutex.hxx>
+#include <list>
+#include <algorithm>
+
+using ::osl::Mutex;
+using ::osl::Guard;
+using ::rtl::OUString;
+using ::cppu::OInterfaceContainerHelper;
+using ::cppu::OInterfaceIteratorHelper;
+using ::com::sun::star::uno::Any;
+using ::com::sun::star::uno::UNO_QUERY;
+using ::com::sun::star::uno::XInterface;
+using ::com::sun::star::uno::RuntimeException;
+using ::com::sun::star::uno::Sequence;
+using ::com::sun::star::uno::Reference;
+using ::com::sun::star::uno::XComponentContext;
+using ::com::sun::star::uno::Exception;
+using ::com::sun::star::uno::XWeak;
+using ::com::sun::star::uno::Type;
+using ::com::sun::star::uno::makeAny;
+using ::com::sun::star::lang::NoSupportException;
+using ::com::sun::star::lang::IllegalArgumentException;
+using ::com::sun::star::lang::WrappedTargetException;
+using ::com::sun::star::lang::NoSupportException;
+using ::com::sun::star::lang::XServiceInfo;
+using ::com::sun::star::lang::XTypeProvider;
+using ::com::sun::star::container::NoSuchElementException;
+using ::com::sun::star::container::ElementExistException;
+using ::com::sun::star::container::XEnumeration;
+using ::com::sun::star::container::XEnumerationAccess;
+using ::com::sun::star::beans::NamedValue;
+using ::com::sun::star::util::XCloneable;
+using ::com::sun::star::lang::XUnoTunnel;
+using ::com::sun::star::util::XChangesNotifier;
+using ::com::sun::star::util::XChangesListener;
+using ::com::sun::star::util::ElementChange;
+using ::com::sun::star::util::ChangesEvent;
+
+using ::cppu::OWeakObject;
+
+using namespace ::com::sun::star::animations;
+using namespace ::com::sun::star::animations::AnimationNodeType;
+
+namespace animcore
+{
+
+// ====================================================================
+
+typedef ::std::list< Reference< XAnimationNode > > ChildList_t;
+
+// ====================================================================
+
+class AnimationNodeBase : public XAnimateMotion,
+ public XAnimateColor,
+ public XTransitionFilter,
+ public XAnimateSet,
+ public XAnimateTransform,
+ public XIterateContainer,
+ public XEnumerationAccess,
+ public XServiceInfo,
+ public XTypeProvider,
+ public XAudio,
+ public XCommand,
+ public XCloneable,
+ public XChangesNotifier,
+ public XUnoTunnel,
+ public OWeakObject
+{
+public:
+ // our first, last and only protection from mutli-threads!
+ Mutex maMutex;
+};
+
+class AnimationNode : public AnimationNodeBase
+{
+public:
+ AnimationNode( sal_Int16 nNodeType );
+ AnimationNode( const AnimationNode& rNode );
+ virtual ~AnimationNode();
+
+ // XInterface
+ virtual Any SAL_CALL queryInterface( const Type& aType ) throw (RuntimeException);
+ virtual void SAL_CALL acquire() throw ();
+ virtual void SAL_CALL release() throw ();
+
+ // XTypeProvider
+ virtual Sequence< Type > SAL_CALL getTypes() throw (RuntimeException);
+ virtual Sequence< sal_Int8 > SAL_CALL getImplementationId() throw (RuntimeException);
+
+ // XServiceInfo
+ OUString SAL_CALL getImplementationName() throw();
+ Sequence< OUString > SAL_CALL getSupportedServiceNames(void) throw();
+ sal_Bool SAL_CALL supportsService(const OUString& ServiceName) throw();
+
+ // XChild
+ virtual Reference< XInterface > SAL_CALL getParent() throw (RuntimeException);
+ virtual void SAL_CALL setParent( const Reference< XInterface >& Parent ) throw (NoSupportException, RuntimeException);
+
+ // XCloneable
+ virtual Reference< XCloneable > SAL_CALL createClone() throw (RuntimeException);
+
+ // XAnimationNode
+ virtual sal_Int16 SAL_CALL getType() throw (RuntimeException);
+ virtual Any SAL_CALL getBegin() throw (RuntimeException);
+ virtual void SAL_CALL setBegin( const Any& _begin ) throw (RuntimeException);
+ virtual Any SAL_CALL getDuration() throw (RuntimeException);
+ virtual void SAL_CALL setDuration( const Any& _duration ) throw (RuntimeException);
+ virtual Any SAL_CALL getEnd() throw (RuntimeException);
+ virtual void SAL_CALL setEnd( const Any& _end ) throw (RuntimeException);
+ virtual Any SAL_CALL getEndSync() throw (RuntimeException);
+ virtual void SAL_CALL setEndSync( const Any& _endsync ) throw (RuntimeException);
+ virtual Any SAL_CALL getRepeatCount() throw (RuntimeException);
+ virtual void SAL_CALL setRepeatCount( const Any& _repeatcount ) throw (RuntimeException);
+ virtual Any SAL_CALL getRepeatDuration() throw (RuntimeException);
+ virtual void SAL_CALL setRepeatDuration( const Any& _repeatduration ) throw (RuntimeException);
+ virtual sal_Int16 SAL_CALL getFill() throw (RuntimeException);
+ virtual void SAL_CALL setFill( sal_Int16 _fill ) throw (RuntimeException);
+ virtual sal_Int16 SAL_CALL getFillDefault() throw (RuntimeException);
+ virtual void SAL_CALL setFillDefault( sal_Int16 _filldefault ) throw (RuntimeException);
+ virtual sal_Int16 SAL_CALL getRestart() throw (RuntimeException);
+ virtual void SAL_CALL setRestart( sal_Int16 _restart ) throw (RuntimeException);
+ virtual sal_Int16 SAL_CALL getRestartDefault() throw (RuntimeException);
+ virtual void SAL_CALL setRestartDefault( sal_Int16 _restartdefault ) throw (RuntimeException);
+ virtual double SAL_CALL getAcceleration() throw (RuntimeException);
+ virtual void SAL_CALL setAcceleration( double _acceleration ) throw (RuntimeException);
+ virtual double SAL_CALL getDecelerate() throw (RuntimeException);
+ virtual void SAL_CALL setDecelerate( double _decelerate ) throw (RuntimeException);
+ virtual sal_Bool SAL_CALL getAutoReverse() throw (RuntimeException);
+ virtual void SAL_CALL setAutoReverse( sal_Bool _autoreverse ) throw (RuntimeException);
+ virtual Sequence< NamedValue > SAL_CALL getUserData() throw (RuntimeException);
+ virtual void SAL_CALL setUserData( const Sequence< NamedValue >& _userdata ) throw (RuntimeException);
+
+ // XAnimate
+ virtual Any SAL_CALL getTarget() throw (RuntimeException);
+ virtual void SAL_CALL setTarget( const Any& _target ) throw (RuntimeException);
+ virtual sal_Int16 SAL_CALL getSubItem() throw (RuntimeException);
+ virtual void SAL_CALL setSubItem( sal_Int16 _subitem ) throw (RuntimeException);
+ virtual OUString SAL_CALL getAttributeName() throw (RuntimeException);
+ virtual void SAL_CALL setAttributeName( const OUString& _attribute ) throw (RuntimeException);
+ virtual Sequence< Any > SAL_CALL getValues() throw (RuntimeException);
+ virtual void SAL_CALL setValues( const Sequence< Any >& _values ) throw (RuntimeException);
+ virtual Sequence< double > SAL_CALL getKeyTimes() throw (RuntimeException);
+ virtual void SAL_CALL setKeyTimes( const Sequence< double >& _keytimes ) throw (RuntimeException);
+ virtual sal_Int16 SAL_CALL getValueType() throw (RuntimeException);
+ virtual void SAL_CALL setValueType( sal_Int16 _valuetype ) throw (RuntimeException);
+ virtual sal_Int16 SAL_CALL getCalcMode() throw (RuntimeException);
+ virtual void SAL_CALL setCalcMode( sal_Int16 _calcmode ) throw (RuntimeException);
+ virtual sal_Bool SAL_CALL getAccumulate() throw (RuntimeException);
+ virtual void SAL_CALL setAccumulate( sal_Bool _accumulate ) throw (RuntimeException);
+ virtual sal_Int16 SAL_CALL getAdditive() throw (RuntimeException);
+ virtual void SAL_CALL setAdditive( sal_Int16 _additive ) throw (RuntimeException);
+ virtual Any SAL_CALL getFrom() throw (RuntimeException);
+ virtual void SAL_CALL setFrom( const Any& _from ) throw (RuntimeException);
+ virtual Any SAL_CALL getTo() throw (RuntimeException);
+ virtual void SAL_CALL setTo( const Any& _to ) throw (RuntimeException);
+ virtual Any SAL_CALL getBy() throw (RuntimeException);
+ virtual void SAL_CALL setBy( const Any& _by ) throw (RuntimeException);
+ virtual Sequence< TimeFilterPair > SAL_CALL getTimeFilter() throw (RuntimeException);
+ virtual void SAL_CALL setTimeFilter( const Sequence< TimeFilterPair >& _timefilter ) throw (RuntimeException);
+ virtual OUString SAL_CALL getFormula() throw (RuntimeException);
+ virtual void SAL_CALL setFormula( const OUString& _formula ) throw (RuntimeException);
+
+ // XAnimateColor
+ virtual sal_Int16 SAL_CALL getColorInterpolation() throw (RuntimeException);
+ virtual void SAL_CALL setColorInterpolation( sal_Int16 _colorspace ) throw (RuntimeException);
+ virtual sal_Bool SAL_CALL getDirection() throw (RuntimeException);
+ virtual void SAL_CALL setDirection( sal_Bool _direction ) throw (RuntimeException);
+
+ // XAnimateMotion
+ virtual Any SAL_CALL getPath() throw (RuntimeException);
+ virtual void SAL_CALL setPath( const Any& _path ) throw (RuntimeException);
+ virtual Any SAL_CALL getOrigin() throw (RuntimeException);
+ virtual void SAL_CALL setOrigin( const Any& _origin ) throw (RuntimeException);
+
+ // XAnimateTransform
+ virtual sal_Int16 SAL_CALL getTransformType() throw (RuntimeException);
+ virtual void SAL_CALL setTransformType( sal_Int16 _transformtype ) throw (RuntimeException);
+
+ // XTransitionFilter
+ virtual sal_Int16 SAL_CALL getTransition() throw (RuntimeException);
+ virtual void SAL_CALL setTransition( sal_Int16 _transition ) throw (RuntimeException);
+ virtual sal_Int16 SAL_CALL getSubtype() throw (RuntimeException);
+ virtual void SAL_CALL setSubtype( sal_Int16 _subtype ) throw (RuntimeException);
+ virtual sal_Bool SAL_CALL getMode() throw (RuntimeException);
+ virtual void SAL_CALL setMode( sal_Bool _mode ) throw (RuntimeException);
+// virtual sal_Bool SAL_CALL getDirection() throw (RuntimeException);
+// virtual void SAL_CALL setDirection( sal_Bool _direction ) throw (RuntimeException);
+ virtual sal_Int32 SAL_CALL getFadeColor() throw (RuntimeException);
+ virtual void SAL_CALL setFadeColor( sal_Int32 _fadecolor ) throw (RuntimeException);
+
+ // XAudio
+ virtual Any SAL_CALL getSource() throw (RuntimeException);
+ virtual void SAL_CALL setSource( const Any& _source ) throw (RuntimeException);
+ virtual double SAL_CALL getVolume() throw (RuntimeException);
+ virtual void SAL_CALL setVolume( double _volume ) throw (RuntimeException);
+
+
+ // XCommand
+// virtual Any SAL_CALL getTarget() throw (RuntimeException);
+// virtual void SAL_CALL setTarget( const Any& _target ) throw (RuntimeException);
+ virtual sal_Int16 SAL_CALL getCommand() throw (RuntimeException);
+ virtual void SAL_CALL setCommand( sal_Int16 _command ) throw (RuntimeException);
+ virtual Any SAL_CALL getParameter() throw (RuntimeException);
+ virtual void SAL_CALL setParameter( const Any& _parameter ) throw (RuntimeException);
+
+ // XElementAccess
+ virtual Type SAL_CALL getElementType() throw (RuntimeException);
+ virtual sal_Bool SAL_CALL hasElements() throw (RuntimeException);
+
+ // XEnumerationAccess
+ virtual Reference< XEnumeration > SAL_CALL createEnumeration() throw (RuntimeException);
+
+ // XTimeContainer
+ virtual Reference< XAnimationNode > SAL_CALL insertBefore( const Reference< XAnimationNode >& newChild, const Reference< XAnimationNode >& refChild ) throw (IllegalArgumentException, NoSuchElementException, ElementExistException, WrappedTargetException, RuntimeException);
+ virtual Reference< XAnimationNode > SAL_CALL insertAfter( const Reference< XAnimationNode >& newChild, const Reference< XAnimationNode >& refChild ) throw (IllegalArgumentException, NoSuchElementException, ElementExistException, WrappedTargetException, RuntimeException);
+ virtual Reference< XAnimationNode > SAL_CALL replaceChild( const Reference< XAnimationNode >& newChild, const Reference< XAnimationNode >& oldChild ) throw( IllegalArgumentException, NoSuchElementException, ElementExistException, WrappedTargetException, RuntimeException);
+ virtual Reference< XAnimationNode > SAL_CALL removeChild( const Reference< XAnimationNode >& oldChild ) throw(IllegalArgumentException, NoSuchElementException, WrappedTargetException, RuntimeException);
+ virtual Reference< XAnimationNode > SAL_CALL appendChild( const Reference< XAnimationNode >& newChild ) throw(IllegalArgumentException, ElementExistException, WrappedTargetException, RuntimeException);
+
+ // XIterateContainer
+ virtual sal_Int16 SAL_CALL getIterateType() throw (RuntimeException);
+ virtual void SAL_CALL setIterateType( sal_Int16 _iteratetype ) throw (RuntimeException);
+ virtual double SAL_CALL getIterateInterval() throw (RuntimeException);
+ virtual void SAL_CALL setIterateInterval( double _iterateinterval ) throw (RuntimeException);
+
+ // XChangesNotifier
+ virtual void SAL_CALL addChangesListener( const Reference< XChangesListener >& aListener ) throw (RuntimeException);
+ virtual void SAL_CALL removeChangesListener( const Reference< XChangesListener >& aListener ) throw (RuntimeException);
+
+ // XUnoTunnel
+ virtual ::sal_Int64 SAL_CALL getSomething( const Sequence< ::sal_Int8 >& aIdentifier ) throw (RuntimeException);
+
+ static const Sequence< sal_Int8 > & getUnoTunnelId();
+ void fireChangeListener();
+
+private:
+ OInterfaceContainerHelper maChangeListener;
+
+ static void initTypeProvider( sal_Int16 nNodeType ) throw();
+
+ const sal_Int16 mnNodeType;
+
+ // for XTypeProvider
+ static Sequence< Type >* mpTypes[12];
+ static Sequence< sal_Int8 >* mpId[12];
+
+ // attributes for the XAnimationNode interface implementation
+ Any maBegin, maDuration, maEnd, maEndSync, maRepeatCount, maRepeatDuration;
+ sal_Int16 mnFill, mnFillDefault, mnRestart, mnRestartDefault;
+ double mfAcceleration, mfDecelerate;
+ sal_Bool mbAutoReverse;
+ Sequence< NamedValue > maUserData;
+
+ // parent interface for XChild interface implementation
+ Reference<XInterface> mxParent;
+ AnimationNode* mpParent;
+
+ // attributes for XAnimate
+ Any maTarget;
+ OUString maAttributeName, maFormula;
+ Sequence< Any > maValues;
+ Sequence< double > maKeyTimes;
+ sal_Int16 mnValueType, mnSubItem;
+ sal_Int16 mnCalcMode, mnAdditive;
+ sal_Bool mbAccumulate;
+ Any maFrom, maTo, maBy;
+ Sequence< TimeFilterPair > maTimeFilter;
+
+ // attributes for XAnimateColor
+ sal_Int16 mnColorSpace;
+ sal_Bool mbDirection;
+
+ // atributes for XAnimateMotion
+ Any maPath, maOrigin;
+
+ // attributes for XAnimateTransform
+ sal_Int16 mnTransformType;
+
+ // attributes for XTransitionFilter
+ sal_Int16 mnTransition;
+ sal_Int16 mnSubtype;
+ sal_Bool mbMode;
+ sal_Int32 mnFadeColor;
+
+ // XAudio
+ double mfVolume;
+
+ // XCommand
+ sal_Int16 mnCommand;
+ Any maParameter;
+
+ // XIterateContainer
+ sal_Int16 mnIterateType;
+ double mfIterateInterval;
+
+ /** sorted list of child nodes for XTimeContainer*/
+ ChildList_t maChilds;
+};
+
+// ====================================================================
+
+class TimeContainerEnumeration : public ::cppu::WeakImplHelper1< XEnumeration >
+{
+public:
+ TimeContainerEnumeration( const ChildList_t &rChilds );
+ virtual ~TimeContainerEnumeration();
+
+ // Methods
+ virtual sal_Bool SAL_CALL hasMoreElements() throw (RuntimeException);
+ virtual Any SAL_CALL nextElement( ) throw (NoSuchElementException, WrappedTargetException, RuntimeException);
+
+private:
+ /** sorted list of child nodes */
+ ChildList_t maChilds;
+
+ /** current iteration position */
+ ChildList_t::iterator maIter;
+
+ /** our first, last and only protection from mutli-threads! */
+ Mutex maMutex;
+};
+
+TimeContainerEnumeration::TimeContainerEnumeration( const ChildList_t &rChilds )
+: maChilds( rChilds )
+{
+ maIter = maChilds.begin();
+}
+
+TimeContainerEnumeration::~TimeContainerEnumeration()
+{
+}
+
+// Methods
+sal_Bool SAL_CALL TimeContainerEnumeration::hasMoreElements() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+
+ return maIter != maChilds.end();
+}
+
+Any SAL_CALL TimeContainerEnumeration::nextElement()
+ throw (NoSuchElementException, WrappedTargetException, RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+
+ if( maIter == maChilds.end() )
+ throw NoSuchElementException();
+
+ return makeAny( (*maIter++) );
+}
+
+// ====================================================================
+
+Sequence< Type >* AnimationNode::mpTypes[] = { NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL };
+Sequence< sal_Int8 >* AnimationNode::mpId[] = { NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL };
+
+AnimationNode::AnimationNode( sal_Int16 nNodeType )
+: maChangeListener(maMutex),
+ mnNodeType( nNodeType ),
+ mnFill( AnimationFill::DEFAULT ),
+ mnFillDefault( AnimationFill::INHERIT ),
+ mnRestart( AnimationRestart:: DEFAULT ),
+ mnRestartDefault( AnimationRestart:: INHERIT ),
+ mfAcceleration( 0.0 ),
+ mfDecelerate( 0.0 ),
+ mbAutoReverse( sal_False ),
+ mpParent(0),
+ mnValueType( 0 ),
+ mnSubItem( 0 ),
+ mnCalcMode( (nNodeType == AnimationNodeType::ANIMATEMOTION) ? AnimationCalcMode::PACED : AnimationCalcMode::LINEAR),
+ mnAdditive(AnimationAdditiveMode::REPLACE),
+ mbAccumulate(sal_False),
+ mnColorSpace( AnimationColorSpace::RGB ),
+ mbDirection( sal_True ),
+ mnTransformType( AnimationTransformType::TRANSLATE ),
+ mnTransition(TransitionType::BARWIPE),
+ mnSubtype(TransitionSubType::DEFAULT),
+ mbMode(true),
+ mnFadeColor(0),
+ mfVolume(1.0),
+ mnCommand(0),
+ mnIterateType( ::com::sun::star::presentation::ShapeAnimationSubType::AS_WHOLE ),
+ mfIterateInterval(0.0)
+{
+ OSL_ENSURE((sal_uInt32)nNodeType < sizeof(mpTypes)/sizeof(Sequence<Type>*), "NodeType out of range");
+}
+
+AnimationNode::AnimationNode( const AnimationNode& rNode )
+: AnimationNodeBase(),
+ maChangeListener(maMutex),
+ mnNodeType( rNode.mnNodeType ),
+
+ // attributes for the XAnimationNode interface implementation
+ maBegin( rNode.maBegin ),
+ maDuration( rNode.maDuration ),
+ maEnd( rNode.maEnd ),
+ maEndSync( rNode.maEndSync ),
+ maRepeatCount( rNode.maRepeatCount ),
+ maRepeatDuration( rNode.maRepeatDuration ),
+ mnFill( rNode.mnFill ),
+ mnFillDefault( rNode.mnFillDefault ),
+ mnRestart( rNode.mnRestart ),
+ mnRestartDefault( rNode.mnRestartDefault ),
+ mfAcceleration( rNode.mfAcceleration ),
+ mfDecelerate( rNode.mfDecelerate ),
+ mbAutoReverse( rNode.mbAutoReverse ),
+ maUserData( rNode.maUserData ),
+ mpParent(0),
+
+ // attributes for XAnimate
+ maTarget( rNode.maTarget ),
+ maAttributeName( rNode.maAttributeName ),
+ maFormula( rNode.maFormula ),
+ maValues( rNode.maValues ),
+ maKeyTimes( rNode.maKeyTimes ),
+ mnValueType( rNode.mnValueType ),
+ mnSubItem( rNode.mnSubItem ),
+ mnCalcMode( rNode.mnCalcMode ),
+ mnAdditive( rNode.mnAdditive ),
+ mbAccumulate( rNode.mbAccumulate ),
+ maFrom( rNode.maFrom ),
+ maTo( rNode.maTo ),
+ maBy( rNode.maBy ),
+ maTimeFilter( rNode.maTimeFilter ),
+
+ // attributes for XAnimateColor
+ mnColorSpace( rNode.mnColorSpace ),
+ mbDirection( rNode.mbDirection ),
+
+ // atributes for XAnimateMotion
+ maPath( rNode.maPath ),
+ maOrigin( rNode.maOrigin ),
+
+ // attributes for XAnimateTransform
+ mnTransformType( rNode.mnTransformType ),
+
+ // attributes for XTransitionFilter
+ mnTransition( rNode.mnTransition ),
+ mnSubtype( rNode.mnSubtype ),
+ mbMode( rNode.mbMode ),
+ mnFadeColor( rNode.mnFadeColor ),
+
+ // XAudio
+ mfVolume( rNode.mfVolume ),
+
+ // XCommand
+ mnCommand( rNode.mnCommand ),
+ maParameter( rNode.maParameter ),
+
+ // XIterateContainer
+ mnIterateType( rNode.mnIterateType ),
+ mfIterateInterval( rNode.mfIterateInterval )
+{
+}
+
+AnimationNode::~AnimationNode()
+{
+}
+
+// --------------------------------------------------------------------
+
+#define IMPL_NODE_FACTORY(N,IN,SN)\
+Reference< XInterface > SAL_CALL createInstance_##N( const Reference< XComponentContext > & ) throw (Exception)\
+{\
+ return Reference < XInterface > ( SAL_STATIC_CAST( ::cppu::OWeakObject * , new AnimationNode( N ) ) );\
+}\
+OUString getImplementationName_##N()\
+{\
+ return OUString( RTL_CONSTASCII_USTRINGPARAM ( IN ) );\
+}\
+Sequence<OUString> getSupportedServiceNames_##N(void)\
+{\
+ Sequence<OUString> aRet(1);\
+ aRet.getArray()[0] = OUString( RTL_CONSTASCII_USTRINGPARAM( SN ));\
+ return aRet;\
+}
+
+IMPL_NODE_FACTORY( PAR, "animcore::ParallelTimeContainer", "com.sun.star.animations.ParallelTimeContainer" )
+IMPL_NODE_FACTORY( SEQ, "animcore::SequenceTimeContainer", "com.sun.star.animations.SequenceTimeContainer" )
+IMPL_NODE_FACTORY( ITERATE, "animcore::IterateContainer", "com.sun.star.animations.IterateContainer" )
+IMPL_NODE_FACTORY( ANIMATE, "animcore::Animate", "com.sun.star.animations.Animate" )
+IMPL_NODE_FACTORY( SET, "animcore::AnimateSet", "com.sun.star.animations.AnimateSet" )
+IMPL_NODE_FACTORY( ANIMATECOLOR, "animcore::AnimateColor", "com.sun.star.animations.AnimateColor" )
+IMPL_NODE_FACTORY( ANIMATEMOTION, "animcore::AnimateMotion", "com.sun.star.animations.AnimateMotion" )
+IMPL_NODE_FACTORY( ANIMATETRANSFORM, "animcore::AnimateTransform", "com.sun.star.animations.AnimateTransform" )
+IMPL_NODE_FACTORY( TRANSITIONFILTER, "animcore::TransitionFilter", "com.sun.star.animations.TransitionFilter" )
+IMPL_NODE_FACTORY( AUDIO, "animcore::Audio", "com.sun.star.animations.Audio" );
+IMPL_NODE_FACTORY( COMMAND, "animcore::Command", "com.sun.star.animations.Command" );
+
+// --------------------------------------------------------------------
+
+// XInterface
+Any SAL_CALL AnimationNode::queryInterface( const Type& aType ) throw (RuntimeException)
+{
+ Any aRet( ::cppu::queryInterface(
+ aType,
+ static_cast< XServiceInfo * >( this ),
+ static_cast< XTypeProvider * >( this ),
+ static_cast< XChild * >( static_cast< XTimeContainer * >(this) ),
+ static_cast< XCloneable* >( this ),
+ static_cast< XAnimationNode* >( static_cast< XTimeContainer * >(this) ),
+ static_cast< XInterface* >(static_cast< OWeakObject * >(this)),
+ static_cast< XWeak* >(static_cast< OWeakObject * >(this)),
+ static_cast< XChangesNotifier* >( this ),
+ static_cast< XUnoTunnel* >( this ) ) );
+
+ if(!aRet.hasValue())
+ {
+ switch( mnNodeType )
+ {
+ case AnimationNodeType::PAR:
+ case AnimationNodeType::SEQ:
+ aRet = ::cppu::queryInterface(
+ aType,
+ static_cast< XTimeContainer * >( this ),
+ static_cast< XEnumerationAccess * >( this ),
+ static_cast< XElementAccess * >( this ) );
+ break;
+ case AnimationNodeType::ITERATE:
+ aRet = ::cppu::queryInterface(
+ aType,
+ static_cast< XTimeContainer * >( this ),
+ static_cast< XIterateContainer * >( this ),
+ static_cast< XEnumerationAccess * >( this ),
+ static_cast< XElementAccess * >( this ) );
+ break;
+ case AnimationNodeType::ANIMATE:
+ aRet = ::cppu::queryInterface(
+ aType,
+ static_cast< XAnimate * >( static_cast< XAnimateMotion * >(this) ) );
+ break;
+ case AnimationNodeType::ANIMATEMOTION:
+ aRet = ::cppu::queryInterface(
+ aType,
+ static_cast< XAnimate * >( static_cast< XAnimateMotion * >(this) ),
+ static_cast< XAnimateMotion * >( this ) );
+ break;
+ case AnimationNodeType::ANIMATECOLOR:
+ aRet = ::cppu::queryInterface(
+ aType,
+ static_cast< XAnimate * >( static_cast< XAnimateColor * >(this) ),
+ static_cast< XAnimateColor * >( this ) );
+ break;
+ case AnimationNodeType::SET:
+ aRet = ::cppu::queryInterface(
+ aType,
+ static_cast< XAnimate * >( static_cast< XAnimateSet * >(this) ),
+ static_cast< XAnimateSet * >( this ) );
+ break;
+ case AnimationNodeType::ANIMATETRANSFORM:
+ aRet = ::cppu::queryInterface(
+ aType,
+ static_cast< XAnimate * >( static_cast< XAnimateTransform * >(this) ),
+ static_cast< XAnimateTransform * >( this ) );
+ break;
+ case AnimationNodeType::AUDIO:
+ aRet = ::cppu::queryInterface(
+ aType,
+ static_cast< XAudio * >( static_cast< XAudio * >(this) ) );
+ break;
+ case AnimationNodeType::COMMAND:
+ aRet = ::cppu::queryInterface(
+ aType,
+ static_cast< XCommand * >( static_cast< XCommand * >(this) ) );
+ break;
+ case AnimationNodeType::TRANSITIONFILTER:
+ aRet = ::cppu::queryInterface(
+ aType,
+ static_cast< XAnimate * >( static_cast< XTransitionFilter * >(this) ),
+ static_cast< XTransitionFilter * >( this ) );
+ break;
+ }
+ }
+
+ return aRet.hasValue() ? aRet : OWeakObject::queryInterface( aType );
+}
+
+// --------------------------------------------------------------------
+
+void AnimationNode::initTypeProvider( sal_Int16 nNodeType ) throw()
+{
+ ::osl::MutexGuard aGuard( ::osl::Mutex::getGlobalMutex() );
+
+ if(! mpTypes[nNodeType] )
+ {
+ // create id
+ mpId[nNodeType] = new Sequence< sal_Int8 >( 16 );
+ rtl_createUuid( (sal_uInt8 *)mpId[nNodeType]->getArray(), 0, sal_True );
+
+ static sal_Int32 type_numbers[] =
+ {
+ 7, // CUSTOM
+ 9, // PAR
+ 9, // SEQ
+ 9, // ITERATE
+ 8, // ANIMATE
+ 8, // SET
+ 8, // ANIMATEMOTION
+ 8, // ANIMATECOLOR
+ 8, // ANIMATETRANSFORM
+ 8, // TRANSITIONFILTER
+ 8, // AUDIO
+ 8, // COMMAND
+ };
+
+ // collect types
+ Sequence< Type > * types = new Sequence< Type >( type_numbers[nNodeType] );
+ Type * pTypeAr = types->getArray();
+ sal_Int32 nPos = 0;
+
+ pTypeAr[nPos++] = ::getCppuType( (const Reference< XWeak > *)0 );
+ pTypeAr[nPos++] = ::getCppuType( (const Reference< XChild > *)0 );
+ pTypeAr[nPos++] = ::getCppuType( (const Reference< XCloneable > *)0 );
+ pTypeAr[nPos++] = ::getCppuType( (const Reference< XTypeProvider > *)0 );
+ pTypeAr[nPos++] = ::getCppuType( (const Reference< XServiceInfo > *)0 );
+ pTypeAr[nPos++] = ::getCppuType( (const Reference< XUnoTunnel > *)0 );
+ pTypeAr[nPos++] = ::getCppuType( (const Reference< XChangesNotifier> *)0 );
+
+ switch( nNodeType )
+ {
+ case AnimationNodeType::PAR:
+ case AnimationNodeType::SEQ:
+ pTypeAr[nPos++] = ::getCppuType( (const Reference< XTimeContainer > *)0 );
+ pTypeAr[nPos++] = ::getCppuType( (const Reference< XEnumerationAccess > *)0 );
+ break;
+ case AnimationNodeType::ITERATE:
+ pTypeAr[nPos++] = ::getCppuType( (const Reference< XIterateContainer > *)0 );
+ pTypeAr[nPos++] = ::getCppuType( (const Reference< XEnumerationAccess > *)0 );
+ break;
+ case AnimationNodeType::ANIMATE:
+ pTypeAr[nPos++] = ::getCppuType( (const Reference< XAnimate > *)0 );
+ break;
+ case AnimationNodeType::ANIMATEMOTION:
+ pTypeAr[nPos++] = ::getCppuType( (const Reference< XAnimateMotion > *)0 );
+ break;
+ case AnimationNodeType::ANIMATECOLOR:
+ pTypeAr[nPos++] = ::getCppuType( (const Reference< XAnimateColor > *)0 );
+ break;
+ case AnimationNodeType::ANIMATETRANSFORM:
+ pTypeAr[nPos++] = ::getCppuType( (const Reference< XAnimateTransform > *)0 );
+ break;
+ case AnimationNodeType::SET:
+ pTypeAr[nPos++] = ::getCppuType( (const Reference< XAnimateSet > *)0 );
+ break;
+ case AnimationNodeType::TRANSITIONFILTER:
+ pTypeAr[nPos++] = ::getCppuType( (const Reference< XTransitionFilter > *)0 );
+ break;
+ case AnimationNodeType::AUDIO:
+ pTypeAr[nPos++] = ::getCppuType( (const Reference< XAudio > *)0 );
+ break;
+ case AnimationNodeType::COMMAND:
+ pTypeAr[nPos++] = ::getCppuType( ( const Reference< XCommand > *)0 );
+ break;
+ }
+ mpTypes[nNodeType] = types;
+ }
+}
+
+// --------------------------------------------------------------------
+
+Sequence< Type > AnimationNode::getTypes() throw (RuntimeException)
+{
+ if (! mpTypes[mnNodeType])
+ initTypeProvider(mnNodeType);
+ return *mpTypes[mnNodeType];
+}
+// --------------------------------------------------------------------
+
+Sequence< sal_Int8 > AnimationNode::getImplementationId() throw (RuntimeException)
+{
+ if (! mpId[mnNodeType])
+ initTypeProvider(mnNodeType);
+ return *mpId[mnNodeType];
+}
+
+// --------------------------------------------------------------------
+
+// XInterface
+void SAL_CALL AnimationNode::acquire( ) throw ()
+{
+ OWeakObject::acquire();
+}
+
+// --------------------------------------------------------------------
+
+// XInterface
+void SAL_CALL AnimationNode::release( ) throw ()
+{
+ OWeakObject::acquire();
+}
+
+// --------------------------------------------------------------------
+
+// XServiceInfo
+OUString AnimationNode::getImplementationName() throw()
+{
+ switch( mnNodeType )
+ {
+ case AnimationNodeType::PAR:
+ return getImplementationName_PAR();
+ case AnimationNodeType::SEQ:
+ return getImplementationName_SEQ();
+ case AnimationNodeType::ITERATE:
+ return getImplementationName_ITERATE();
+ case AnimationNodeType::SET:
+ return getImplementationName_SET();
+ case AnimationNodeType::ANIMATECOLOR:
+ return getImplementationName_ANIMATECOLOR();
+ case AnimationNodeType::ANIMATEMOTION:
+ return getImplementationName_ANIMATEMOTION();
+ case AnimationNodeType::TRANSITIONFILTER:
+ return getImplementationName_TRANSITIONFILTER();
+ case AnimationNodeType::ANIMATETRANSFORM:
+ return getImplementationName_ANIMATETRANSFORM();
+ case AnimationNodeType::AUDIO:
+ return getImplementationName_AUDIO();
+ case AnimationNodeType::COMMAND:
+ return getImplementationName_COMMAND();
+ case AnimationNodeType::ANIMATE:
+ default:
+ return getImplementationName_ANIMATE();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XServiceInfo
+sal_Bool AnimationNode::supportsService(const OUString& ServiceName) throw()
+{
+ Sequence< OUString > aSNL( getSupportedServiceNames() );
+ const OUString * pArray = aSNL.getConstArray();
+
+ for( sal_Int32 i = 0; i < aSNL.getLength(); i++ )
+ if( pArray[i] == ServiceName )
+ return sal_True;
+
+ return sal_False;
+}
+
+// --------------------------------------------------------------------
+
+// XServiceInfo
+Sequence< OUString > AnimationNode::getSupportedServiceNames(void) throw()
+{
+ switch( mnNodeType )
+ {
+ case AnimationNodeType::PAR:
+ return getSupportedServiceNames_PAR();
+ case AnimationNodeType::SEQ:
+ return getSupportedServiceNames_SEQ();
+ case AnimationNodeType::ITERATE:
+ return getSupportedServiceNames_ITERATE();
+ case AnimationNodeType::SET:
+ return getSupportedServiceNames_SET();
+ case AnimationNodeType::ANIMATECOLOR:
+ return getSupportedServiceNames_ANIMATECOLOR();
+ case AnimationNodeType::ANIMATEMOTION:
+ return getSupportedServiceNames_ANIMATEMOTION();
+ case AnimationNodeType::TRANSITIONFILTER:
+ return getSupportedServiceNames_TRANSITIONFILTER();
+ case AnimationNodeType::AUDIO:
+ return getSupportedServiceNames_AUDIO();
+ case AnimationNodeType::COMMAND:
+ return getSupportedServiceNames_COMMAND();
+ case AnimationNodeType::ANIMATE:
+ default:
+ return getSupportedServiceNames_ANIMATE();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+sal_Int16 SAL_CALL AnimationNode::getType() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return mnNodeType;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+Any SAL_CALL AnimationNode::getBegin() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return maBegin;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+void SAL_CALL AnimationNode::setBegin( const Any& _begin ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _begin != maBegin )
+ {
+ maBegin = _begin;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+Any SAL_CALL AnimationNode::getDuration() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return maDuration;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+void SAL_CALL AnimationNode::setDuration( const Any& _duration ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _duration != maDuration )
+ {
+ maDuration = _duration;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+Any SAL_CALL AnimationNode::getEnd() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return maEnd;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+void SAL_CALL AnimationNode::setEnd( const Any& _end ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _end != maEnd )
+ {
+ maEnd = _end;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+Any SAL_CALL AnimationNode::getEndSync() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return maEndSync;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+void SAL_CALL AnimationNode::setEndSync( const Any& _endsync ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _endsync != maEndSync )
+ {
+ maEndSync = _endsync;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+Any SAL_CALL AnimationNode::getRepeatCount() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return maRepeatCount;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+void SAL_CALL AnimationNode::setRepeatCount( const Any& _repeatcount ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _repeatcount != maRepeatCount )
+ {
+ maRepeatCount = _repeatcount;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+Any SAL_CALL AnimationNode::getRepeatDuration() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return maRepeatDuration;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+void SAL_CALL AnimationNode::setRepeatDuration( const Any& _repeatduration ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _repeatduration != maRepeatDuration )
+ {
+ maRepeatDuration = _repeatduration;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+sal_Int16 SAL_CALL AnimationNode::getFill() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return mnFill;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+void SAL_CALL AnimationNode::setFill( sal_Int16 _fill ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _fill != mnFill )
+ {
+ mnFill = _fill;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+sal_Int16 SAL_CALL AnimationNode::getFillDefault() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return mnFillDefault;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+void SAL_CALL AnimationNode::setFillDefault( sal_Int16 _filldefault ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _filldefault != mnFillDefault )
+ {
+ mnFillDefault = _filldefault;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+sal_Int16 SAL_CALL AnimationNode::getRestart() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return mnRestart;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+void SAL_CALL AnimationNode::setRestart( sal_Int16 _restart ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _restart != mnRestart )
+ {
+ mnRestart = _restart;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+sal_Int16 SAL_CALL AnimationNode::getRestartDefault() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return mnRestartDefault;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+void SAL_CALL AnimationNode::setRestartDefault( sal_Int16 _restartdefault ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _restartdefault != mnRestartDefault )
+ {
+ mnRestartDefault = _restartdefault;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+double SAL_CALL AnimationNode::getAcceleration() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return mfAcceleration;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+void SAL_CALL AnimationNode::setAcceleration( double _acceleration ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _acceleration != mfAcceleration )
+ {
+ mfAcceleration = _acceleration;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+double SAL_CALL AnimationNode::getDecelerate() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return mfDecelerate;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+void SAL_CALL AnimationNode::setDecelerate( double _decelerate ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _decelerate != mfDecelerate )
+ {
+ mfDecelerate = _decelerate;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+sal_Bool SAL_CALL AnimationNode::getAutoReverse() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return mbAutoReverse;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimationNode
+void SAL_CALL AnimationNode::setAutoReverse( sal_Bool _autoreverse ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _autoreverse != mbAutoReverse )
+ {
+ mbAutoReverse = _autoreverse;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+Sequence< NamedValue > SAL_CALL AnimationNode::getUserData() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return maUserData;
+}
+
+// --------------------------------------------------------------------
+
+void SAL_CALL AnimationNode::setUserData( const Sequence< NamedValue >& _userdata ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ maUserData = _userdata;
+ fireChangeListener();
+}
+
+// --------------------------------------------------------------------
+
+// XChild
+Reference< XInterface > SAL_CALL AnimationNode::getParent() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return mxParent;
+}
+
+// --------------------------------------------------------------------
+
+// XChild
+void SAL_CALL AnimationNode::setParent( const Reference< XInterface >& Parent ) throw (NoSupportException, RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( Parent != mxParent )
+ {
+ mxParent = Parent;
+
+ mpParent = 0;
+ Reference< XUnoTunnel > xTunnel( mxParent, UNO_QUERY );
+ if( xTunnel.is() )
+ mpParent = reinterpret_cast< AnimationNode* >( sal::static_int_cast< sal_IntPtr >(xTunnel->getSomething( getUnoTunnelId() )));
+
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XCloneable
+Reference< XCloneable > SAL_CALL AnimationNode::createClone() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+
+ Reference< XCloneable > xNewNode;
+ try
+ {
+ xNewNode = new AnimationNode( *this );
+
+ if( maChilds.size() )
+ {
+ Reference< XTimeContainer > xContainer( xNewNode, UNO_QUERY );
+ if( xContainer.is() )
+ {
+ ChildList_t::iterator aIter( maChilds.begin() );
+ ChildList_t::iterator aEnd( maChilds.end() );
+ while( aIter != aEnd )
+ {
+ Reference< XCloneable > xCloneable((*aIter++), UNO_QUERY );
+ if( xCloneable.is() ) try
+ {
+ Reference< XAnimationNode > xNewChildNode( xCloneable->createClone(), UNO_QUERY );
+ if( xNewChildNode.is() )
+ xContainer->appendChild( xNewChildNode );
+ }
+ catch( Exception& e )
+ {
+ (void)e;
+ OSL_TRACE( "animations::AnimationNode::createClone(), exception caught!" );
+ }
+ }
+ }
+ }
+ }
+ catch( Exception& e )
+ {
+ (void)e;
+ OSL_TRACE( "animations::AnimationNode::createClone(), exception caught!" );
+ }
+
+ return xNewNode;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimate
+Any SAL_CALL AnimationNode::getTarget()
+ throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return maTarget;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimate
+void SAL_CALL AnimationNode::setTarget( const Any& _target )
+ throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _target != maTarget )
+ {
+ maTarget= _target;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAnimate
+OUString SAL_CALL AnimationNode::getAttributeName() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return maAttributeName;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimate
+void SAL_CALL AnimationNode::setAttributeName( const OUString& _attribute )
+ throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _attribute != maAttributeName )
+ {
+ maAttributeName = _attribute;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAnimate
+Sequence< Any > SAL_CALL AnimationNode::getValues()
+ throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return maValues;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimate
+void SAL_CALL AnimationNode::setValues( const Sequence< Any >& _values )
+ throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ maValues = _values;
+ fireChangeListener();
+}
+
+// --------------------------------------------------------------------
+
+// XAnimate
+sal_Int16 SAL_CALL AnimationNode::getSubItem() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return mnSubItem;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimate
+void SAL_CALL AnimationNode::setSubItem( sal_Int16 _subitem ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _subitem != mnSubItem )
+ {
+ mnSubItem = _subitem;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAnimate
+Sequence< double > SAL_CALL AnimationNode::getKeyTimes() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return maKeyTimes;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimate
+void SAL_CALL AnimationNode::setKeyTimes( const Sequence< double >& _keytimes ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ maKeyTimes = _keytimes;
+ fireChangeListener();
+}
+
+// --------------------------------------------------------------------
+
+// XAnimate
+sal_Int16 SAL_CALL AnimationNode::getValueType() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return mnValueType;
+}
+
+// --------------------------------------------------------------------
+
+void SAL_CALL AnimationNode::setValueType( sal_Int16 _valuetype ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _valuetype != mnValueType )
+ {
+ mnValueType = _valuetype;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAnimate
+sal_Int16 SAL_CALL AnimationNode::getCalcMode()
+ throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return mnCalcMode;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimate
+void SAL_CALL AnimationNode::setCalcMode( sal_Int16 _calcmode )
+ throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _calcmode != mnCalcMode )
+ {
+ mnCalcMode = _calcmode;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAnimate
+sal_Bool SAL_CALL AnimationNode::getAccumulate()
+ throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return mbAccumulate;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimate
+void SAL_CALL AnimationNode::setAccumulate( sal_Bool _accumulate )
+ throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _accumulate != mbAccumulate )
+ {
+ mbAccumulate = _accumulate;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAnimate
+sal_Int16 SAL_CALL AnimationNode::getAdditive()
+ throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return mnAdditive;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimate
+void SAL_CALL AnimationNode::setAdditive( sal_Int16 _additive )
+ throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _additive != mnAdditive )
+ {
+ mnAdditive = _additive;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAnimate
+Any SAL_CALL AnimationNode::getFrom()
+ throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return maFrom;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimate
+void SAL_CALL AnimationNode::setFrom( const Any& _from )
+ throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _from != maFrom )
+ {
+ maFrom = _from;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAnimate
+Any SAL_CALL AnimationNode::getTo()
+ throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return maTo;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimate
+void SAL_CALL AnimationNode::setTo( const Any& _to )
+ throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _to != maTo )
+ {
+ maTo = _to;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAnimate
+Any SAL_CALL AnimationNode::getBy()
+ throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return maBy;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimate
+void SAL_CALL AnimationNode::setBy( const Any& _by )
+ throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _by != maBy )
+ {
+ maBy = _by;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAnimate
+Sequence< TimeFilterPair > SAL_CALL AnimationNode::getTimeFilter()
+ throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return maTimeFilter;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimate
+void SAL_CALL AnimationNode::setTimeFilter( const Sequence< TimeFilterPair >& _timefilter )
+ throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ maTimeFilter = _timefilter;
+ fireChangeListener();
+}
+
+// --------------------------------------------------------------------
+
+OUString SAL_CALL AnimationNode::getFormula() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return maFormula;
+}
+
+// --------------------------------------------------------------------
+
+void SAL_CALL AnimationNode::setFormula( const OUString& _formula ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _formula != maFormula )
+ {
+ maFormula = _formula;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAnimateColor
+sal_Int16 SAL_CALL AnimationNode::getColorInterpolation() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return mnColorSpace;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimateColor
+void SAL_CALL AnimationNode::setColorInterpolation( sal_Int16 _colorspace ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _colorspace != mnColorSpace )
+ {
+ mnColorSpace = _colorspace;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAnimateColor
+sal_Bool SAL_CALL AnimationNode::getDirection() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return mbDirection;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimateColor
+void SAL_CALL AnimationNode::setDirection( sal_Bool _direction ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _direction != mbDirection )
+ {
+ mbDirection = _direction;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAnimateMotion
+Any SAL_CALL AnimationNode::getPath() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return maPath;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimateMotion
+void SAL_CALL AnimationNode::setPath( const Any& _path ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ maPath = _path;
+ fireChangeListener();
+}
+
+// --------------------------------------------------------------------
+
+// XAnimateMotion
+Any SAL_CALL AnimationNode::getOrigin() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return maOrigin;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimateMotion
+void SAL_CALL AnimationNode::setOrigin( const Any& _origin ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ maOrigin = _origin;
+ fireChangeListener();
+}
+
+// --------------------------------------------------------------------
+
+// XAnimateTransform
+sal_Int16 SAL_CALL AnimationNode::getTransformType() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return mnTransformType;
+}
+
+// --------------------------------------------------------------------
+
+// XAnimateTransform
+void SAL_CALL AnimationNode::setTransformType( sal_Int16 _transformtype ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _transformtype != mnTransformType )
+ {
+ mnTransformType = _transformtype;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XTransitionFilter
+sal_Int16 SAL_CALL AnimationNode::getTransition() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return mnTransition;
+}
+
+// --------------------------------------------------------------------
+
+// XTransitionFilter
+void SAL_CALL AnimationNode::setTransition( sal_Int16 _transition ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _transition != mnTransition )
+ {
+ mnTransition = _transition;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XTransitionFilter
+sal_Int16 SAL_CALL AnimationNode::getSubtype() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return mnSubtype;
+}
+
+// --------------------------------------------------------------------
+
+// XTransitionFilter
+void SAL_CALL AnimationNode::setSubtype( sal_Int16 _subtype ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _subtype != mnSubtype )
+ {
+ mnSubtype = _subtype;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XTransitionFilter
+sal_Bool SAL_CALL AnimationNode::getMode() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return mbMode;
+}
+
+// --------------------------------------------------------------------
+
+// XTransitionFilter
+void SAL_CALL AnimationNode::setMode( sal_Bool _mode ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _mode != mbMode )
+ {
+ mbMode = _mode;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XTransitionFilter
+sal_Int32 SAL_CALL AnimationNode::getFadeColor() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return mnFadeColor;
+}
+
+// --------------------------------------------------------------------
+
+// XTransitionFilter
+void SAL_CALL AnimationNode::setFadeColor( sal_Int32 _fadecolor ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _fadecolor != mnFadeColor )
+ {
+ mnFadeColor = _fadecolor;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XAudio
+Any SAL_CALL AnimationNode::getSource() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return maTarget;
+}
+
+// --------------------------------------------------------------------
+
+// XAudio
+void SAL_CALL AnimationNode::setSource( const Any& _source ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ maTarget = _source;
+ fireChangeListener();
+}
+
+// --------------------------------------------------------------------
+
+// XAudio
+double SAL_CALL AnimationNode::getVolume() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return mfVolume;
+}
+
+// --------------------------------------------------------------------
+
+// XAudio
+void SAL_CALL AnimationNode::setVolume( double _volume ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _volume != mfVolume )
+ {
+ mfVolume = _volume;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XCommand
+sal_Int16 SAL_CALL AnimationNode::getCommand() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return mnCommand;
+}
+
+// --------------------------------------------------------------------
+
+// XCommand
+void SAL_CALL AnimationNode::setCommand( sal_Int16 _command ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _command != mnCommand )
+ {
+ mnCommand = _command;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XCommand
+Any SAL_CALL AnimationNode::getParameter() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return maParameter;
+}
+
+// --------------------------------------------------------------------
+
+// XCommand
+void SAL_CALL AnimationNode::setParameter( const Any& _parameter ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ maParameter = _parameter;
+ fireChangeListener();
+}
+
+// --------------------------------------------------------------------
+
+// XElementAccess
+Type SAL_CALL AnimationNode::getElementType() throw (RuntimeException)
+{
+ return ::getCppuType((const Reference< XAnimationNode >*)0);
+}
+
+// --------------------------------------------------------------------
+
+// XElementAccess
+sal_Bool SAL_CALL AnimationNode::hasElements() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return !maChilds.empty();
+}
+
+// --------------------------------------------------------------------
+
+// XEnumerationAccess
+Reference< XEnumeration > SAL_CALL AnimationNode::createEnumeration()
+ throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+
+ return new TimeContainerEnumeration( maChilds);
+}
+
+// --------------------------------------------------------------------
+
+
+// XTimeContainer
+Reference< XAnimationNode > SAL_CALL AnimationNode::insertBefore( const Reference< XAnimationNode >& newChild, const Reference< XAnimationNode >& refChild )
+ throw (IllegalArgumentException, NoSuchElementException, ElementExistException, WrappedTargetException, RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+
+ if( !newChild.is() || !refChild.is() )
+ throw IllegalArgumentException();
+
+ ChildList_t::iterator before = ::std::find(maChilds.begin(), maChilds.end(), refChild);
+ if( before == maChilds.end() )
+ throw NoSuchElementException();
+
+ if( ::std::find(maChilds.begin(), maChilds.end(), newChild) != maChilds.end() )
+ throw ElementExistException();
+
+ maChilds.insert( before, newChild );
+
+ Reference< XInterface > xThis( static_cast< OWeakObject * >(this) );
+ newChild->setParent( xThis );
+
+ return newChild;
+}
+
+// --------------------------------------------------------------------
+
+// XTimeContainer
+Reference< XAnimationNode > SAL_CALL AnimationNode::insertAfter( const Reference< XAnimationNode >& newChild, const Reference< XAnimationNode >& refChild )
+ throw (IllegalArgumentException, NoSuchElementException, ElementExistException, WrappedTargetException, RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+
+ if( !newChild.is() || !refChild.is() )
+ throw IllegalArgumentException();
+
+ ChildList_t::iterator before = ::std::find(maChilds.begin(), maChilds.end(), refChild);
+ if( before == maChilds.end() )
+ throw NoSuchElementException();
+
+ if( ::std::find(maChilds.begin(), maChilds.end(), newChild) != maChilds.end() )
+ throw ElementExistException();
+
+ before++;
+ if( before != maChilds.end() )
+ maChilds.insert( before, newChild );
+ else
+ maChilds.push_back( newChild );
+
+ Reference< XInterface > xThis( static_cast< OWeakObject * >(this) );
+ newChild->setParent( xThis );
+
+ return newChild;
+}
+
+// --------------------------------------------------------------------
+
+// XTimeContainer
+Reference< XAnimationNode > SAL_CALL AnimationNode::replaceChild( const Reference< XAnimationNode >& newChild, const Reference< XAnimationNode >& oldChild )
+ throw( IllegalArgumentException, NoSuchElementException, ElementExistException, WrappedTargetException, RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+
+ if( !newChild.is() || !oldChild.is() )
+ throw IllegalArgumentException();
+
+ ChildList_t::iterator replace = ::std::find(maChilds.begin(), maChilds.end(), oldChild);
+ if( replace == maChilds.end() )
+ throw NoSuchElementException();
+
+ if( ::std::find(maChilds.begin(), maChilds.end(), newChild) != maChilds.end() )
+ throw ElementExistException();
+
+ Reference< XInterface > xNull( 0 );
+ oldChild->setParent( xNull );
+
+ (*replace) = newChild;
+
+ Reference< XInterface > xThis( static_cast< OWeakObject * >(this) );
+ newChild->setParent( xThis );
+
+ return newChild;
+}
+
+// --------------------------------------------------------------------
+
+// XTimeContainer
+Reference< XAnimationNode > SAL_CALL AnimationNode::removeChild( const Reference< XAnimationNode >& oldChild )
+ throw(IllegalArgumentException, NoSuchElementException, WrappedTargetException, RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+
+ if( !oldChild.is() )
+ throw IllegalArgumentException();
+
+ ChildList_t::iterator old = ::std::find(maChilds.begin(), maChilds.end(), oldChild);
+ if( old == maChilds.end() )
+ throw NoSuchElementException();
+
+ Reference< XInterface > xNull( 0 );
+ oldChild->setParent( xNull );
+
+ maChilds.erase( old );
+
+ return oldChild;
+}
+
+// --------------------------------------------------------------------
+
+// XTimeContainer
+Reference< XAnimationNode > SAL_CALL AnimationNode::appendChild( const Reference< XAnimationNode >& newChild )
+ throw(IllegalArgumentException, ElementExistException, WrappedTargetException, RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+
+ if( !newChild.is() )
+ throw IllegalArgumentException();
+
+ if( ::std::find(maChilds.begin(), maChilds.end(), newChild) != maChilds.end() )
+ throw ElementExistException();
+
+ Reference< XInterface > xThis( static_cast< OWeakObject * >(this) );
+ Reference< XInterface > xChild( newChild );
+
+ if( xThis == xChild )
+ throw IllegalArgumentException();
+
+ maChilds.push_back( newChild );
+
+ newChild->setParent( xThis );
+
+ return newChild;
+}
+
+// --------------------------------------------------------------------
+
+// XIterateContainer
+sal_Int16 SAL_CALL AnimationNode::getIterateType() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return mnIterateType;
+}
+
+// --------------------------------------------------------------------
+
+// XIterateContainer
+void SAL_CALL AnimationNode::setIterateType( sal_Int16 _iteratetype ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _iteratetype != mnIterateType )
+ {
+ mnIterateType = _iteratetype;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XIterateContainer
+double SAL_CALL AnimationNode::getIterateInterval() throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ return mfIterateInterval;
+}
+
+// --------------------------------------------------------------------
+
+// XIterateContainer
+void SAL_CALL AnimationNode::setIterateInterval( double _iterateinterval ) throw (RuntimeException)
+{
+ Guard< Mutex > aGuard( maMutex );
+ if( _iterateinterval != mfIterateInterval )
+ {
+ mfIterateInterval = _iterateinterval;
+ fireChangeListener();
+ }
+}
+
+// --------------------------------------------------------------------
+
+// XChangesNotifier
+void SAL_CALL AnimationNode::addChangesListener( const Reference< XChangesListener >& aListener ) throw (RuntimeException)
+{
+ maChangeListener.addInterface( aListener );
+}
+
+// --------------------------------------------------------------------
+
+// XChangesNotifier
+void SAL_CALL AnimationNode::removeChangesListener( const Reference< XChangesListener >& aListener ) throw (RuntimeException)
+{
+ maChangeListener.removeInterface(aListener);
+}
+
+// --------------------------------------------------------------------
+
+// XUnoTunnel
+::sal_Int64 SAL_CALL AnimationNode::getSomething( const Sequence< ::sal_Int8 >& rId ) throw (RuntimeException)
+{
+ if( rId.getLength() == 16 && 0 == rtl_compareMemory( getUnoTunnelId().getConstArray(), rId.getConstArray(), 16 ) )
+ {
+ return sal::static_int_cast< sal_Int64 >(reinterpret_cast< sal_IntPtr >(this));
+
+ }
+ else
+ {
+ return 0;
+ }
+}
+
+// --------------------------------------------------------------------
+
+const ::com::sun::star::uno::Sequence< sal_Int8 > & AnimationNode::getUnoTunnelId()
+{
+ static ::com::sun::star::uno::Sequence< sal_Int8 > * pSeq = 0;
+ if( !pSeq )
+ {
+ ::osl::Guard< ::osl::Mutex > aGuard( ::osl::Mutex::getGlobalMutex() );
+ if( !pSeq )
+ {
+ static ::com::sun::star::uno::Sequence< sal_Int8 > aSeq( 16 );
+ rtl_createUuid( (sal_uInt8*)aSeq.getArray(), 0, sal_True );
+ pSeq = &aSeq;
+ }
+ }
+ return *pSeq;
+}
+
+// --------------------------------------------------------------------
+
+void AnimationNode::fireChangeListener()
+{
+ Guard< Mutex > aGuard( maMutex );
+
+ OInterfaceIteratorHelper aIterator( maChangeListener );
+ if( aIterator.hasMoreElements() )
+ {
+ Reference< XInterface > xSource( static_cast<OWeakObject*>(this), UNO_QUERY );
+ Sequence< ElementChange > aChanges;
+ const ChangesEvent aEvent( xSource, makeAny( mxParent ), aChanges );
+ while( aIterator.hasMoreElements() )
+ {
+ Reference< XChangesListener > xListener( aIterator.next(), UNO_QUERY );
+ if( xListener.is() )
+ xListener->changesOccurred( aEvent );
+ }
+ }
+
+ if( mpParent )
+ mpParent->fireChangeListener();
+}
+
+// --------------------------------------------------------------------
+
+} // namespace animcore
diff --git a/animations/source/animcore/animcore.xml b/animations/source/animcore/animcore.xml
new file mode 100644
index 000000000000..9ccca0f02081
--- /dev/null
+++ b/animations/source/animcore/animcore.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE module-description PUBLIC "-//StarOffice//DTD ComponentDescription 1.0//EN" "module-description.dtd">
+<module-description xmlns:xlink="http://www.w3.org/1999/xlink">
+ <module-name> animations </module-name>
+
+ <component-description>
+ <author> Christian Lippka </author>
+ <name> todo </name>
+ <description>
+ This component provides ...
+ </description>
+ <loader-name> com.sun.star.loader.SharedLibrary </loader-name>
+ <language> c++ </language>
+ <status value="draft"/>
+ <supported-service> </supported-service>
+ <service-dependency> ... </service-dependency>
+ <type> ... </type>
+ </component-description>
+
+ <project-build-dependency> cppuhelper </project-build-dependency>
+ <project-build-dependency> cppu </project-build-dependency>
+ <project-build-dependency> vos </project-build-dependency>
+ <project-build-dependency> sal </project-build-dependency>
+
+ <runtime-module-dependency> cppuhelper </runtime-module-dependency>
+ <runtime-module-dependency> cppu2 </runtime-module-dependency>
+ <runtime-module-dependency> vos2MSC </runtime-module-dependency>
+ <runtime-module-dependency> sal2 </runtime-module-dependency>
+</module-description>
+
diff --git a/animations/source/animcore/factreg.cxx b/animations/source/animcore/factreg.cxx
new file mode 100644
index 000000000000..ce12955f4125
--- /dev/null
+++ b/animations/source/animcore/factreg.cxx
@@ -0,0 +1,94 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#include <osl/diagnose.h>
+#include <cppuhelper/factory.hxx>
+#include <cppuhelper/implementationentry.hxx>
+
+#include <com/sun/star/registry/XRegistryKey.hpp>
+
+using namespace ::rtl;
+using namespace ::cppu;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::registry;
+
+#include "factreg.hxx"
+
+namespace animcore
+{
+ rtl_StandardModuleCount g_moduleCount = MODULE_COUNT_INIT;
+}
+
+using namespace animcore;
+
+#define IMPLEMENTATION_ENTRY(N)\
+{\
+ createInstance_##N, getImplementationName_##N ,\
+ getSupportedServiceNames_##N, createSingleComponentFactory ,\
+ &g_moduleCount.modCnt , 0\
+}\
+
+static struct ImplementationEntry g_entries[] =
+{
+ IMPLEMENTATION_ENTRY( PAR ),
+ IMPLEMENTATION_ENTRY( SEQ ),
+ IMPLEMENTATION_ENTRY( ITERATE ),
+ IMPLEMENTATION_ENTRY( ANIMATE ),
+ IMPLEMENTATION_ENTRY( SET ),
+ IMPLEMENTATION_ENTRY( ANIMATECOLOR ),
+ IMPLEMENTATION_ENTRY( ANIMATEMOTION ),
+ IMPLEMENTATION_ENTRY( ANIMATETRANSFORM ),
+ IMPLEMENTATION_ENTRY( TRANSITIONFILTER ),
+ IMPLEMENTATION_ENTRY( AUDIO ),
+ IMPLEMENTATION_ENTRY( COMMAND ),
+ IMPLEMENTATION_ENTRY( TargetPropertiesCreator ),
+ { 0, 0, 0, 0, 0, 0 }
+};
+
+extern "C"
+{
+
+sal_Bool SAL_CALL component_canUnload( TimeValue *pTime )
+{
+ return g_moduleCount.canUnload( &g_moduleCount , pTime );
+}
+
+//==================================================================================================
+void SAL_CALL component_getImplementationEnvironment(
+ const sal_Char ** ppEnvTypeName, uno_Environment ** )
+{
+ *ppEnvTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME;
+}
+//==================================================================================================
+void * SAL_CALL component_getFactory(
+ const sal_Char * pImplName, void * pServiceManager, void * pRegistryKey )
+{
+ return component_getFactoryHelper( pImplName, pServiceManager, pRegistryKey , g_entries );
+}
+
+}
diff --git a/animations/source/animcore/factreg.hxx b/animations/source/animcore/factreg.hxx
new file mode 100644
index 000000000000..b76fc1067e0c
--- /dev/null
+++ b/animations/source/animcore/factreg.hxx
@@ -0,0 +1,51 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#include <rtl/unload.h>
+
+namespace animcore {
+
+extern rtl_StandardModuleCount g_moduleCount;
+
+#define DECL_NODE_FACTORY(N)\
+extern ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL createInstance_##N( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext > & rSMgr ) throw (::com::sun::star::uno::Exception);\
+extern ::rtl::OUString getImplementationName_##N();\
+extern ::com::sun::star::uno::Sequence< ::rtl::OUString> getSupportedServiceNames_##N(void)
+
+DECL_NODE_FACTORY( PAR );
+DECL_NODE_FACTORY( SEQ );
+DECL_NODE_FACTORY( ITERATE );
+DECL_NODE_FACTORY( ANIMATE );
+DECL_NODE_FACTORY( SET );
+DECL_NODE_FACTORY( ANIMATECOLOR );
+DECL_NODE_FACTORY( ANIMATEMOTION );
+DECL_NODE_FACTORY( ANIMATETRANSFORM );
+DECL_NODE_FACTORY( TRANSITIONFILTER );
+DECL_NODE_FACTORY( AUDIO );
+DECL_NODE_FACTORY( COMMAND );
+DECL_NODE_FACTORY( TargetPropertiesCreator );
+
+}
diff --git a/animations/source/animcore/makefile.mk b/animations/source/animcore/makefile.mk
new file mode 100644
index 000000000000..674858cd50d0
--- /dev/null
+++ b/animations/source/animcore/makefile.mk
@@ -0,0 +1,78 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+PRJ=..$/..
+
+PRJNAME=animations
+TARGET=animcore
+ENABLE_EXCEPTIONS=TRUE
+NO_BSYMBOLIC=TRUE
+#COMP1TYPELIST=$(TARGET)
+#COMPRDB=$(SOLARBINDIR)$/offapi.rdb
+
+# --- Settings -----------------------------------------------------
+.INCLUDE : settings.mk
+.IF "$(L10N_framework)"==""
+# --- Files --------------------------------------------------------
+#UNOUCRDEP=$(SOLARBINDIR)$/offapi.rdb
+#UNOUCRRDB=$(SOLARBINDIR)$/offapi.rdb
+#UNOUCROUT=$(OUT)$/inc$/animations
+#INCPRE+= $(UNOUCROUT)
+
+
+SLOFILES = $(SLO)$/animcore.obj\
+ $(SLO)$/factreg.obj\
+ $(SLO)$/targetpropertiescreator.obj
+
+SHL1TARGET= $(TARGET)
+SHL1VERSIONMAP=$(SOLARENV)/src/unloadablecomponent.map
+
+SHL1STDLIBS= \
+ $(SALLIB) \
+ $(CPPULIB) \
+ $(CPPUHELPERLIB)
+
+
+SHL1DEPN=
+SHL1IMPLIB= i$(TARGET)
+SHL1LIBS= $(SLB)$/$(TARGET).lib
+SHL1DEF= $(MISC)$/$(SHL1TARGET).def
+
+DEF1NAME= $(SHL1TARGET)
+
+.ENDIF # L10N_framework
+
+# --- Targets ------------------------------------------------------
+.INCLUDE : target.mk
+
+
+ALLTAR : $(MISC)/animcore.component
+
+$(MISC)/animcore.component .ERRREMOVE : $(SOLARENV)/bin/createcomponent.xslt \
+ animcore.component
+ $(XSLTPROC) --nonet --stringparam uri \
+ '$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o $@ \
+ $(SOLARENV)/bin/createcomponent.xslt animcore.component
diff --git a/animations/source/animcore/targetpropertiescreator.cxx b/animations/source/animcore/targetpropertiescreator.cxx
new file mode 100644
index 000000000000..0bba7b55d918
--- /dev/null
+++ b/animations/source/animcore/targetpropertiescreator.cxx
@@ -0,0 +1,504 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#include <com/sun/star/uno/XComponentContext.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <com/sun/star/lang/XTypeProvider.hpp>
+#include <com/sun/star/animations/XTargetPropertiesCreator.hpp>
+#include <com/sun/star/animations/XIterateContainer.hpp>
+#include <com/sun/star/animations/TargetProperties.hpp>
+#include <com/sun/star/presentation/ParagraphTarget.hpp>
+#include <com/sun/star/registry/XRegistryKey.hpp>
+#include <com/sun/star/lang/XInitialization.hpp>
+#include <com/sun/star/lang/XServiceName.hpp>
+#include <com/sun/star/lang/XSingleServiceFactory.hpp>
+#include <com/sun/star/drawing/XShape.hpp>
+#include <com/sun/star/animations/AnimationNodeType.hpp>
+#include <com/sun/star/animations/XAnimate.hpp>
+#include <cppuhelper/compbase3.hxx>
+#include <cppuhelper/factory.hxx>
+#include <cppuhelper/implementationentry.hxx>
+#include <comphelper/optionalvalue.hxx>
+#include <comphelper/broadcasthelper.hxx>
+#include <comphelper/sequence.hxx>
+
+#include <animations/animationnodehelper.hxx>
+
+#include <vector>
+#include <hash_map>
+
+
+using namespace ::com::sun::star;
+
+#define IMPLEMENTATION_NAME "animcore::TargetPropertiesCreator"
+#define SERVICE_NAME "com.sun.star.animations.TargetPropertiesCreator"
+
+namespace animcore
+{
+ typedef ::cppu::WeakComponentImplHelper3< ::com::sun::star::animations::XTargetPropertiesCreator,
+ lang::XServiceInfo,
+ lang::XServiceName > TargetPropertiesCreator_Base;
+
+ class TargetPropertiesCreator : public ::comphelper::OBaseMutex,
+ public TargetPropertiesCreator_Base
+ {
+ public:
+ static uno::Reference< uno::XInterface > SAL_CALL createInstance( const uno::Reference< uno::XComponentContext >& xContext ) throw ( uno::Exception )
+ {
+ return uno::Reference< uno::XInterface >( static_cast<cppu::OWeakObject*>(new TargetPropertiesCreator( xContext )) );
+ }
+
+ /// Dispose all internal references
+ virtual void SAL_CALL disposing();
+
+ // XTargetPropertiesCreator
+ virtual uno::Sequence< animations::TargetProperties > SAL_CALL createInitialTargetProperties( const uno::Reference< animations::XAnimationNode >& rootNode ) throw (uno::RuntimeException);
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw( uno::RuntimeException );
+ virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& ServiceName ) throw( uno::RuntimeException );
+ virtual uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw( uno::RuntimeException );
+
+ // XServiceName
+ virtual ::rtl::OUString SAL_CALL getServiceName( ) throw (uno::RuntimeException);
+
+ protected:
+ ~TargetPropertiesCreator(); // we're a ref-counted UNO class. _We_ destroy ourselves.
+
+ private:
+ // default: disabled copy/assignment
+ TargetPropertiesCreator(const TargetPropertiesCreator&);
+ TargetPropertiesCreator& operator=( const TargetPropertiesCreator& );
+
+ TargetPropertiesCreator( const uno::Reference< uno::XComponentContext >& rxContext );
+ };
+
+ // --------------------------------------------------------------------
+
+ uno::Reference< uno::XInterface > SAL_CALL createInstance_TargetPropertiesCreator( const uno::Reference< uno::XComponentContext > & rSMgr ) throw (uno::Exception)
+ {
+ return TargetPropertiesCreator::createInstance( rSMgr );
+ }
+
+ ::rtl::OUString getImplementationName_TargetPropertiesCreator()
+ {
+ return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM ( IMPLEMENTATION_NAME ) );
+ }
+
+ uno::Sequence< ::rtl::OUString > getSupportedServiceNames_TargetPropertiesCreator(void)
+ {
+ uno::Sequence< ::rtl::OUString > aRet(1);
+ aRet.getArray()[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( SERVICE_NAME ) );
+ return aRet;
+ }
+
+ // --------------------------------------------------------------------
+
+ namespace
+ {
+ // Vector containing all properties for a given shape
+ typedef ::std::vector< beans::NamedValue > VectorOfNamedValues;
+
+ /** The hash map key
+
+ This key contains both XShape reference and a paragraph
+ index, as we somehow have to handle shape and paragraph
+ targets with the same data structure.
+ */
+ struct ShapeHashKey
+ {
+ /// Shape target
+ uno::Reference< drawing::XShape > mxRef;
+
+ /** Paragraph index.
+
+ If this is a pure shape target, mnParagraphIndex is
+ set to -1.
+ */
+ sal_Int16 mnParagraphIndex;
+
+ /// Comparison needed for hash_map
+ bool operator==( const ShapeHashKey& rRHS ) const
+ {
+ return mxRef == rRHS.mxRef && mnParagraphIndex == rRHS.mnParagraphIndex;
+ }
+ };
+
+ // A hash map which maps a XShape to the corresponding vector of initial properties
+ typedef ::std::hash_map< ShapeHashKey,
+ VectorOfNamedValues,
+ ::std::size_t (*)(const ShapeHashKey&) > XShapeHash;
+
+ ::std::size_t refhasher( const ShapeHashKey& rKey )
+ {
+ // TODO(P2): Maybe a better hash function would be to
+ // spread mnParagraphIndex to 32 bit: a0b0c0d0e0... Hakmem
+ // should have a formula.
+ //
+ // Yes it has:
+ // x = (x & 0x0000FF00) << 8) | (x >> 8) & 0x0000FF00 | x & 0xFF0000FF;
+ // x = (x & 0x00F000F0) << 4) | (x >> 4) & 0x00F000F0 | x & 0xF00FF00F;
+ // x = (x & 0x0C0C0C0C) << 2) | (x >> 2) & 0x0C0C0C0C | x & 0xC3C3C3C3;
+ // x = (x & 0x22222222) << 1) | (x >> 1) & 0x22222222 | x & 0x99999999;
+ //
+ // Costs about 17 cycles on a RISC machine with infinite
+ // instruction level parallelism (~42 basic
+ // instructions). Thus I truly doubt this pays off...
+ return reinterpret_cast< ::std::size_t >(rKey.mxRef.get()) ^ (rKey.mnParagraphIndex << 16L);
+ }
+
+
+ class NodeFunctor
+ {
+ public:
+ explicit NodeFunctor( XShapeHash& rShapeHash ) :
+ mrShapeHash( rShapeHash ),
+ mxTargetShape(),
+ mnParagraphIndex( -1 )
+ {
+ }
+
+ NodeFunctor( XShapeHash& rShapeHash,
+ const uno::Reference< drawing::XShape >& rTargetShape,
+ sal_Int16 nParagraphIndex ) :
+ mrShapeHash( rShapeHash ),
+ mxTargetShape( rTargetShape ),
+ mnParagraphIndex( nParagraphIndex )
+ {
+ }
+
+ void operator()( const uno::Reference< animations::XAnimationNode >& xNode ) const
+ {
+ if( !xNode.is() )
+ {
+ OSL_ENSURE( false,
+ "AnimCore: NodeFunctor::operator(): invalid XAnimationNode" );
+ return;
+ }
+
+ uno::Reference< drawing::XShape > xTargetShape( mxTargetShape );
+ sal_Int16 nParagraphIndex( mnParagraphIndex );
+
+ switch( xNode->getType() )
+ {
+ case animations::AnimationNodeType::ITERATE:
+ {
+ // extract target shape from iterate node
+ // (will override the target for all children)
+ // --------------------------------------------------
+
+ uno::Reference< animations::XIterateContainer > xIterNode( xNode,
+ uno::UNO_QUERY );
+
+ // TODO(E1): I'm not too sure what to expect here...
+ if( !xIterNode->getTarget().hasValue() )
+ {
+ OSL_ENSURE( false,
+ "animcore: NodeFunctor::operator(): no target on ITERATE node" );
+ return;
+ }
+
+ xTargetShape.set( xIterNode->getTarget(),
+ uno::UNO_QUERY );
+
+ if( !xTargetShape.is() )
+ {
+ ::com::sun::star::presentation::ParagraphTarget aTarget;
+
+ // no shape provided. Maybe a ParagraphTarget?
+ if( !(xIterNode->getTarget() >>= aTarget) )
+ {
+ OSL_ENSURE( false,
+ "animcore: NodeFunctor::operator(): could not extract any "
+ "target information" );
+ return;
+ }
+
+ xTargetShape = aTarget.Shape;
+ nParagraphIndex = aTarget.Paragraph;
+
+ if( !xTargetShape.is() )
+ {
+ OSL_ENSURE( false,
+ "animcore: NodeFunctor::operator(): invalid shape in ParagraphTarget" );
+ return;
+ }
+ }
+ }
+ // FALLTHROUGH intended
+ case animations::AnimationNodeType::PAR:
+ // FALLTHROUGH intended
+ case animations::AnimationNodeType::SEQ:
+ {
+ NodeFunctor aFunctor( mrShapeHash,
+ xTargetShape,
+ nParagraphIndex );
+ if( !::anim::for_each_childNode( xNode,
+ aFunctor ) )
+ {
+ OSL_ENSURE( false,
+ "AnimCore: NodeFunctor::operator(): child node iteration failed, "
+ "or extraneous container nodes encountered" );
+ }
+ }
+ break;
+
+ case animations::AnimationNodeType::CUSTOM:
+ // FALLTHROUGH intended
+ case animations::AnimationNodeType::ANIMATE:
+ // FALLTHROUGH intended
+ case animations::AnimationNodeType::ANIMATEMOTION:
+ // FALLTHROUGH intended
+ case animations::AnimationNodeType::ANIMATECOLOR:
+ // FALLTHROUGH intended
+ case animations::AnimationNodeType::ANIMATETRANSFORM:
+ // FALLTHROUGH intended
+ case animations::AnimationNodeType::TRANSITIONFILTER:
+ // FALLTHROUGH intended
+ case animations::AnimationNodeType::AUDIO:
+ // FALLTHROUGH intended
+ default:
+ // ignore this node, no valuable content for now.
+ break;
+
+ case animations::AnimationNodeType::SET:
+ {
+ // evaluate set node content
+ uno::Reference< animations::XAnimate > xAnimateNode( xNode,
+ uno::UNO_QUERY );
+
+ if( !xAnimateNode.is() )
+ break; // invalid node
+
+ // determine target shape (if any)
+ ShapeHashKey aTarget;
+ if( xTargetShape.is() )
+ {
+ // override target shape with parent-supplied
+ aTarget.mxRef = xTargetShape;
+ aTarget.mnParagraphIndex = nParagraphIndex;
+ }
+ else
+ {
+ // no parent-supplied target, retrieve
+ // node target
+ if( (xAnimateNode->getTarget() >>= aTarget.mxRef) )
+ {
+ // pure shape target - set paragraph
+ // index to magic
+ aTarget.mnParagraphIndex = -1;
+ }
+ else
+ {
+ // not a pure shape target - maybe a
+ // ParagraphTarget?
+ presentation::ParagraphTarget aUnoTarget;
+
+ if( !(xAnimateNode->getTarget() >>= aUnoTarget) )
+ {
+ OSL_ENSURE( false,
+ "AnimCore: NodeFunctor::operator(): unknown target type encountered" );
+ break;
+ }
+
+ aTarget.mxRef = aUnoTarget.Shape;
+ aTarget.mnParagraphIndex = aUnoTarget.Paragraph;
+ }
+ }
+
+ if( !aTarget.mxRef.is() )
+ {
+ OSL_ENSURE( false,
+ "AnimCore: NodeFunctor::operator(): Found target, but XShape is NULL" );
+ break; // invalid target XShape
+ }
+
+ // check whether we already have an entry for
+ // this target (we only take the first set
+ // effect for every shape)
+ XShapeHash::const_iterator aIter;
+ if( (aIter=mrShapeHash.find( aTarget )) != mrShapeHash.end() )
+ break; // already an entry in existence for given XShape
+
+ // if this is an appear effect, hide shape
+ // initially. This is currently the only place
+ // where a shape effect influences shape
+ // attributes outside it's effective duration.
+ if( xAnimateNode->getAttributeName().equalsIgnoreAsciiCaseAscii("visibility") )
+ {
+ sal_Bool bVisible( sal_False );
+
+ uno::Any aAny( xAnimateNode->getTo() );
+
+ // try to extract bool value
+ if( !(aAny >>= bVisible) )
+ {
+ // try to extract string
+ ::rtl::OUString aString;
+ if( (aAny >>= aString) )
+ {
+ // we also take the strings "true" and "false",
+ // as well as "on" and "off" here
+ if( aString.equalsIgnoreAsciiCaseAscii("true") ||
+ aString.equalsIgnoreAsciiCaseAscii("on") )
+ {
+ bVisible = sal_True;
+ }
+ if( aString.equalsIgnoreAsciiCaseAscii("false") ||
+ aString.equalsIgnoreAsciiCaseAscii("off") )
+ {
+ bVisible = sal_False;
+ }
+ }
+ }
+
+ if( bVisible )
+ {
+ // target is set to 'visible' at the
+ // first relevant effect. Thus, target
+ // must be initially _hidden_, for the
+ // effect to have visible impact.
+ mrShapeHash.insert(
+ XShapeHash::value_type(
+ aTarget,
+ VectorOfNamedValues(
+ 1,
+ beans::NamedValue(
+ xAnimateNode->getAttributeName(),
+ uno::makeAny( sal_False ) ) ) ) );
+ }
+ }
+ }
+ break;
+ }
+ }
+
+ private:
+ XShapeHash& mrShapeHash;
+ uno::Reference< drawing::XShape > mxTargetShape;
+ sal_Int16 mnParagraphIndex;
+ };
+ }
+
+ // --------------------------------------------------------------------
+
+ TargetPropertiesCreator::TargetPropertiesCreator( const uno::Reference< uno::XComponentContext >& ) :
+ TargetPropertiesCreator_Base( m_aMutex )
+ {
+ }
+
+ TargetPropertiesCreator::~TargetPropertiesCreator()
+ {
+ }
+
+ void SAL_CALL TargetPropertiesCreator::disposing()
+ {
+ ::osl::MutexGuard aGuard( m_aMutex );
+ }
+
+ // XTargetPropertiesCreator
+ uno::Sequence< animations::TargetProperties > SAL_CALL TargetPropertiesCreator::createInitialTargetProperties
+ (
+ const uno::Reference< animations::XAnimationNode >& xRootNode
+ ) throw (uno::RuntimeException)
+ {
+ ::osl::MutexGuard aGuard( m_aMutex );
+
+ // scan all nodes for visibility changes, and record first
+ // 'visibility=true' for each shape
+ XShapeHash aShapeHash( 101,
+ &refhasher );
+
+ NodeFunctor aFunctor( aShapeHash );
+
+ // TODO(F1): Maybe limit functor application to main sequence
+ // alone (CL said something that shape visibility is only
+ // affected by effects in the main sequence for PPT).
+ //
+ // OTOH, client code can pass us only the main sequence (which
+ // it actually does right now, for the slideshow implementation).
+ aFunctor( xRootNode );
+
+
+ // output to result sequence
+ // ----------------------------------------------------------------------
+
+ uno::Sequence< animations::TargetProperties > aRes( aShapeHash.size() );
+
+ ::std::size_t nCurrIndex(0);
+ XShapeHash::const_iterator aCurr( aShapeHash.begin() );
+ const XShapeHash::const_iterator aEnd ( aShapeHash.end() );
+ while( aCurr != aEnd )
+ {
+ animations::TargetProperties& rCurrProps( aRes[ nCurrIndex++ ] );
+
+ if( aCurr->first.mnParagraphIndex == -1 )
+ {
+ rCurrProps.Target = uno::makeAny( aCurr->first.mxRef );
+ }
+ else
+ {
+ rCurrProps.Target = uno::makeAny(
+ presentation::ParagraphTarget(
+ aCurr->first.mxRef,
+ aCurr->first.mnParagraphIndex ) );
+ }
+
+ rCurrProps.Properties = ::comphelper::containerToSequence( aCurr->second );
+
+ ++aCurr;
+ }
+
+ return aRes;
+ }
+
+ // XServiceInfo
+ ::rtl::OUString SAL_CALL TargetPropertiesCreator::getImplementationName() throw( uno::RuntimeException )
+ {
+ return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( IMPLEMENTATION_NAME ) );
+ }
+
+ sal_Bool SAL_CALL TargetPropertiesCreator::supportsService( const ::rtl::OUString& ServiceName ) throw( uno::RuntimeException )
+ {
+ return ServiceName.equalsIgnoreAsciiCaseAscii( SERVICE_NAME );
+ }
+
+ uno::Sequence< ::rtl::OUString > SAL_CALL TargetPropertiesCreator::getSupportedServiceNames() throw( uno::RuntimeException )
+ {
+ uno::Sequence< ::rtl::OUString > aRet(1);
+ aRet[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM ( SERVICE_NAME ) );
+
+ return aRet;
+ }
+
+ // XServiceName
+ ::rtl::OUString SAL_CALL TargetPropertiesCreator::getServiceName( ) throw (uno::RuntimeException)
+ {
+ return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( SERVICE_NAME ) );
+ }
+
+} // namespace animcore
diff --git a/apache-commons/java/codec/makefile.mk b/apache-commons/java/codec/makefile.mk
new file mode 100644
index 000000000000..6976731477de
--- /dev/null
+++ b/apache-commons/java/codec/makefile.mk
@@ -0,0 +1,74 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJ=..$/..
+
+PRJNAME=apache-commons
+TARGET=commons-codec
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+# override buildfile
+ANT_BUILDFILE=build.xml
+
+.INCLUDE : antsettings.mk
+
+.IF "$(SOLAR_JAVA)" != "" && "$(ENABLE_MEDIAWIKI)" == "YES"
+# --- Files --------------------------------------------------------
+
+TARFILE_NAME=commons-codec-1.3-src
+TARFILE_MD5=af3c3acf618de6108d65fcdc92b492e1
+
+TARFILE_ROOTDIR=commons-codec-1.3
+
+PATCH_FILES=$(PRJ)$/patches$/codec.patch
+
+#CONVERTFILES=build.xml
+
+OUT2CLASS=dist$/commons-codec-1.3.jar
+
+.IF "$(JAVACISGCJ)"=="yes"
+JAVA_HOME=
+.EXPORT : JAVA_HOME
+BUILD_ACTION=$(ANT) -Dbuild.label="build-$(RSCREVISION)" -Dbuild.compiler=gcj -f $(ANT_BUILDFILE) jar
+.ELSE
+BUILD_ACTION=$(ANT) -Dbuild.label="build-$(RSCREVISION)" -f $(ANT_BUILDFILE) jar
+.ENDIF
+
+.ENDIF # $(SOLAR_JAVA)!= ""
+
+# --- Targets ------------------------------------------------------
+
+.INCLUDE : set_ext.mk
+.INCLUDE : target.mk
+
+.IF "$(SOLAR_JAVA)" != "" && "$(ENABLE_MEDIAWIKI)" == "YES"
+.INCLUDE : tg_ext.mk
+.ENDIF
+
diff --git a/apache-commons/java/httpclient/makefile.mk b/apache-commons/java/httpclient/makefile.mk
new file mode 100644
index 000000000000..6e05150c7c20
--- /dev/null
+++ b/apache-commons/java/httpclient/makefile.mk
@@ -0,0 +1,79 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJ=..$/..
+
+PRJNAME=apache-commons
+TARGET=commons-httpclient
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+# override buildfile
+ANT_BUILDFILE=build.xml
+
+.INCLUDE : antsettings.mk
+
+TAR!:=$(GNUTAR)
+
+.IF "$(SOLAR_JAVA)" != "" && "$(ENABLE_MEDIAWIKI)" == "YES"
+# --- Files --------------------------------------------------------
+
+TARFILE_NAME=commons-httpclient-3.1-src
+TARFILE_MD5=2c9b0f83ed5890af02c0df1c1776f39b
+
+TARFILE_ROOTDIR=commons-httpclient-3.1
+
+#PATCH_FILES=$(PRJ)$/patches$/httpclient.patch
+
+#CONVERTFILES=build.xml
+
+OUT2CLASS=dist$/commons-httpclient.jar
+
+COMMONS_LOGGING_JAR=..$/..$/..$/..$/$(INPATH)$/class$/commons-logging-1.1.1-SNAPSHOT.jar
+COMMONS_CODEC_JAR=..$/..$/..$/..$/$/$(INPATH)$/class$/commons-codec-1.3.jar
+
+.IF "$(JAVACISGCJ)"=="yes"
+JAVA_HOME=
+.EXPORT : JAVA_HOME
+BUILD_ACTION=$(ANT) -Dbuild.label="build-$(RSCREVISION)" -Dbuild.compiler=gcj -Dcommons-logging.jar=$(COMMONS_LOGGING_JAR) -Dcommons-codec.jar=$(COMMONS_CODEC_JAR) -f $(ANT_BUILDFILE) dist
+.ELSE
+BUILD_ACTION=$(ANT) -Dbuild.label="build-$(RSCREVISION)" -Dcommons-logging.jar=$(COMMONS_LOGGING_JAR) -Dcommons-codec.jar=$(COMMONS_CODEC_JAR) -f $(ANT_BUILDFILE) dist
+.ENDIF
+
+.ENDIF # $(SOLAR_JAVA)!= ""
+
+# --- Targets ------------------------------------------------------
+
+.INCLUDE : set_ext.mk
+.INCLUDE : target.mk
+
+.IF "$(SOLAR_JAVA)" != "" && "$(ENABLE_MEDIAWIKI)" == "YES"
+.INCLUDE : tg_ext.mk
+.ENDIF
+
diff --git a/apache-commons/java/lang/makefile.mk b/apache-commons/java/lang/makefile.mk
new file mode 100644
index 000000000000..0bf15d0020ce
--- /dev/null
+++ b/apache-commons/java/lang/makefile.mk
@@ -0,0 +1,76 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJ=..$/..
+
+PRJNAME=apache-commons
+TARGET=commons-lang
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+# override buildfile
+ANT_BUILDFILE=build.xml
+
+.INCLUDE : antsettings.mk
+
+TAR!:=$(GNUTAR)
+
+.IF "$(SOLAR_JAVA)" != "" && "$(ENABLE_MEDIAWIKI)" == "YES"
+# --- Files --------------------------------------------------------
+
+TARFILE_NAME=commons-lang-2.3-src
+TARFILE_MD5=2ae988b339daec234019a7066f96733e
+
+TARFILE_ROOTDIR=commons-lang-2.3-src
+
+#PATCH_FILES=$(PRJ)$/patches$/logging.patch
+
+#CONVERTFILES=build.xml
+
+OUT2CLASS=dist$/commons-lang-2.3.jar
+
+.IF "$(JAVACISGCJ)"=="yes"
+JAVA_HOME=
+.EXPORT : JAVA_HOME
+BUILD_ACTION=$(ANT) -Dbuild.label="build-$(RSCREVISION)" -Dbuild.compiler=gcj -f $(ANT_BUILDFILE) jar
+.ELSE
+BUILD_ACTION=$(ANT) -Dbuild.label="build-$(RSCREVISION)" -f $(ANT_BUILDFILE) jar
+.ENDIF
+
+.ENDIF # $(SOLAR_JAVA)!= ""
+
+# --- Targets ------------------------------------------------------
+
+.INCLUDE : set_ext.mk
+.INCLUDE : target.mk
+
+.IF "$(SOLAR_JAVA)" != "" && "$(ENABLE_MEDIAWIKI)" == "YES"
+.INCLUDE : tg_ext.mk
+.ENDIF
+
diff --git a/apache-commons/java/logging/makefile.mk b/apache-commons/java/logging/makefile.mk
new file mode 100644
index 000000000000..5df8c34dde3a
--- /dev/null
+++ b/apache-commons/java/logging/makefile.mk
@@ -0,0 +1,78 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJ=..$/..
+
+PRJNAME=apache-commons
+TARGET=commons-logging
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+# override buildfile
+ANT_BUILDFILE=build.xml
+
+.INCLUDE : antsettings.mk
+
+.IF "$(SOLAR_JAVA)" != "" && ( "$(ENABLE_MEDIAWIKI)" == "YES" || "$(ENABLE_REPORTBUILDER)" == "YES" )
+# --- Files --------------------------------------------------------
+
+TARFILE_NAME=commons-logging-1.1.1-src
+TARFILE_MD5=3c219630e4302863a9a83d0efde889db
+
+TARFILE_ROOTDIR=commons-logging-1.1.1-src
+
+PATCH_FILES=$(PRJ)$/patches$/logging.patch
+
+CONVERTFILES=build.xml
+
+OUT2CLASS=target$/commons-logging-1.1.1-SNAPSHOT.jar
+
+.IF "$(SYSTEM_TOMCAT)" != "YES"
+SERVLETAPI_JAR := $(SOLARVER)$/$(INPATH)$/bin$(UPDMINOREXT)$/servlet-api.jar
+.ENDIF
+
+.IF "$(JAVACISGCJ)"=="yes"
+JAVA_HOME=
+.EXPORT : JAVA_HOME
+BUILD_ACTION=$(ANT) -Dbuild.label="build-$(RSCREVISION)" -Dbuild.compiler=gcj -Dservletapi.jar=$(SERVLETAPI_JAR) -f $(ANT_BUILDFILE) compile build-jar
+.ELSE
+BUILD_ACTION=$(ANT) -Dbuild.label="build-$(RSCREVISION)" -f $(ANT_BUILDFILE) -Dservletapi.jar=$(SERVLETAPI_JAR) compile build-jar
+.ENDIF
+
+.ENDIF # $(SOLAR_JAVA)!= ""
+
+# --- Targets ------------------------------------------------------
+
+.INCLUDE : set_ext.mk
+.INCLUDE : target.mk
+
+.IF "$(SOLAR_JAVA)" != "" && ( "$(ENABLE_MEDIAWIKI)" == "YES" || "$(ENABLE_REPORTBUILDER)" == "YES" )
+.INCLUDE : tg_ext.mk
+.ENDIF
+
diff --git a/apache-commons/patches/codec.patch b/apache-commons/patches/codec.patch
new file mode 100644
index 000000000000..dea25ad263d2
--- /dev/null
+++ b/apache-commons/patches/codec.patch
@@ -0,0 +1,17 @@
+--- misc/build/commons-codec-1.3/build.xml-old 2008-01-31 15:28:58.000000000 +0100
++++ misc/build/commons-codec-1.3/build.xml 2008-01-31 15:29:21.000000000 +0100
+@@ -90,14 +90,12 @@
+ </target>
+ <target name="dist" depends="compile,javadoc" description="Create binary distribution">
+ <mkdir dir="${dist.home}"/>
+- <copy file="../LICENSE" todir="${dist.home}"/>
+ <copy file="${basedir}/RELEASE-NOTES.txt" todir="${dist.home}"/>
+ <antcall target="jar"/>
+ </target>
+ <target name="jar" depends="compile" description="Create jar">
+ <mkdir dir="${dist.home}"/>
+ <mkdir dir="${build.home}/classes/META-INF"/>
+- <copy file="../LICENSE" tofile="${build.home}/classes/META-INF/LICENSE.txt"/>
+ <jar jarfile="${dist.home}/${final.name}.jar" basedir="${build.home}/classes" manifest="${build.home}/conf/MANIFEST.MF"/>
+ </target>
+ <target name="install-jar" depends="jar" description="--> Installs jar file in ${lib.repo}">
diff --git a/apache-commons/patches/logging.patch b/apache-commons/patches/logging.patch
new file mode 100644
index 000000000000..63b93dcbd6f2
--- /dev/null
+++ b/apache-commons/patches/logging.patch
@@ -0,0 +1,15 @@
+--- misc/commons-logging-1.1.1-src/build.xml 2007-11-22 00:27:52.000000000 +0100
++++ misc/build/commons-logging-1.1.1-src/build.xml 2008-06-24 14:23:56.316301736 +0200
+@@ -127,10 +127,10 @@
+ <!-- ========== Compiler Defaults ========================================= -->
+
+ <!-- Version of java class files to generate. -->
+- <property name="target.version" value="1.1"/>
++ <property name="target.version" value="1.3"/>
+
+ <!-- Version of java source to accept -->
+- <property name="source.version" value="1.2"/>
++ <property name="source.version" value="1.3"/>
+
+ <!-- Should Java compilations set the 'debug' compiler option? -->
+ <property name="compile.debug" value="true"/>
diff --git a/apache-commons/prj/build.lst b/apache-commons/prj/build.lst
new file mode 100644
index 000000000000..c509ce0336dd
--- /dev/null
+++ b/apache-commons/prj/build.lst
@@ -0,0 +1,6 @@
+ac apache-commons : solenv TOMCAT:tomcat NULL
+ac apache-commons usr1 - all ac_mkout NULL
+ac apache-commons\java\codec nmake - all ac_codec NULL
+ac apache-commons\java\lang nmake - all ac_lang NULL
+ac apache-commons\java\logging nmake - all ac_logging NULL
+ac apache-commons\java\httpclient nmake - all ac_httpclient ac_logging ac_codec NULL
diff --git a/apache-commons/prj/d.lst b/apache-commons/prj/d.lst
new file mode 100644
index 000000000000..21f6e01700ea
--- /dev/null
+++ b/apache-commons/prj/d.lst
@@ -0,0 +1,5 @@
+..\%__SRC%\class\commons-logging-1.1.1-SNAPSHOT.jar %_DEST%\bin%_EXT%\commons-logging-1.1.1.jar
+..\%__SRC%\class\commons-codec-1.3.jar %_DEST%\bin%_EXT%\commons-codec-1.3.jar
+..\%__SRC%\class\commons-httpclient.jar %_DEST%\bin%_EXT%\commons-httpclient-3.1.jar
+..\%__SRC%\class\commons-lang-2.3.jar %_DEST%\bin%_EXT%\commons-lang-2.3.jar
+
diff --git a/apple_remote/AppleRemote.m b/apple_remote/AppleRemote.m
new file mode 100644
index 000000000000..a65cc6440b41
--- /dev/null
+++ b/apple_remote/AppleRemote.m
@@ -0,0 +1,125 @@
+/*****************************************************************************
+ * RemoteControlWrapper.m
+ * RemoteControlWrapper
+ *
+ * Created by Martin Kahr on 11.03.06 under a MIT-style license.
+ * Copyright (c) 2006 martinkahr.com. All rights reserved.
+ *
+ * Code modified and adapted to OpenOffice.org
+ * by Eric Bachard on 11.08.2008 under the same license
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included
+ * in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ *
+ *****************************************************************************/
+
+#import "AppleRemote.h"
+
+#import <mach/mach.h>
+#import <mach/mach_error.h>
+#import <IOKit/IOKitLib.h>
+#import <IOKit/IOCFPlugIn.h>
+#import <IOKit/hid/IOHIDKeys.h>
+
+const char* AppleRemoteDeviceName = "AppleIRController";
+
+// the WWDC 07 Leopard Build is missing the constant
+#ifndef NSAppKitVersionNumber10_4
+ #define NSAppKitVersionNumber10_4 824
+#endif
+#ifndef NSAppKitVersionNumber10_5
+ #define NSAppKitVersionNumber10_5 949
+#endif
+
+@implementation AppleRemote
+
++ (const char*) remoteControlDeviceName {
+ return AppleRemoteDeviceName;
+}
+
+- (void) setCookieMappingInDictionary: (NSMutableDictionary*) _cookieToButtonMapping {
+
+ // TODO : avoid such magics
+ if (floor(NSAppKitVersionNumber) <= NSAppKitVersionNumber10_4) {
+ #ifdef DEBUG
+ NSLog( @"setting 10.4 cookies" );
+ #endif
+ // 10.4.x Tiger
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonPlus] forKey:@"14_12_11_6_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonMinus] forKey:@"14_13_11_6_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonMenu] forKey:@"14_7_6_14_7_6_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonPlay] forKey:@"14_8_6_14_8_6_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonRight] forKey:@"14_9_6_14_9_6_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonLeft] forKey:@"14_10_6_14_10_6_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonRight_Hold] forKey:@"14_6_4_2_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonLeft_Hold] forKey:@"14_6_3_2_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonMenu_Hold] forKey:@"14_6_14_6_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonPlay_Hold] forKey:@"18_14_6_18_14_6_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteControl_Switched] forKey:@"19_"];
+ } else if( floor(NSAppKitVersionNumber) <= NSAppKitVersionNumber10_5 ) {
+ #ifdef DEBUG
+ NSLog( @"setting 10.5 cookies" );
+ #endif
+ // 10.5.x Leopard
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonPlus] forKey:@"31_29_28_19_18_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonMinus] forKey:@"31_30_28_19_18_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonMenu] forKey:@"31_20_19_18_31_20_19_18_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonPlay] forKey:@"31_21_19_18_31_21_19_18_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonRight] forKey:@"31_22_19_18_31_22_19_18_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonLeft] forKey:@"31_23_19_18_31_23_19_18_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonRight_Hold] forKey:@"31_19_18_4_2_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonLeft_Hold] forKey:@"31_19_18_3_2_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonMenu_Hold] forKey:@"31_19_18_31_19_18_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonPlay_Hold] forKey:@"35_31_19_18_35_31_19_18_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteControl_Switched] forKey:@"19_"];
+ }
+ else
+ {
+ #ifdef DEBUG
+ NSLog( @"setting 10.6 cookies" );
+ #endif
+ // 10.6.x Snow Leopard
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonPlus] forKey:@"33_31_30_21_20_2_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonMinus] forKey:@"33_32_30_21_20_2_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonMenu] forKey:@"33_22_21_20_2_33_22_21_20_2_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonPlay] forKey:@"33_23_21_20_2_33_23_21_20_2_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonRight] forKey:@"33_24_21_20_2_33_24_21_20_2_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonLeft] forKey:@"33_25_21_20_2_33_25_21_20_2_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonRight_Hold] forKey:@"33_21_20_14_12_2_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonLeft_Hold] forKey:@"33_21_20_13_12_2_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonMenu_Hold] forKey:@"33_21_20_2_33_21_20_2_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonPlay_Hold] forKey:@"37_33_21_20_2_37_33_21_20_2_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteControl_Switched] forKey:@"19_"];
+ }
+}
+
+- (void) sendRemoteButtonEvent: (RemoteControlEventIdentifier) event pressedDown: (BOOL) pressedDown {
+ if (pressedDown == NO && event == kRemoteButtonMenu_Hold) {
+ // There is no seperate event for pressed down on menu hold. We are simulating that event here
+ [super sendRemoteButtonEvent:event pressedDown:YES];
+ }
+
+ [super sendRemoteButtonEvent:event pressedDown:pressedDown];
+
+ if (pressedDown && (event == kRemoteButtonRight || event == kRemoteButtonLeft || event == kRemoteButtonPlay || event == kRemoteButtonMenu || event == kRemoteButtonPlay_Hold)) {
+ // There is no seperate event when the button is being released. We are simulating that event here
+ [super sendRemoteButtonEvent:event pressedDown:NO];
+ }
+}
+
+@end
diff --git a/apple_remote/GlobalKeyboardDevice.m b/apple_remote/GlobalKeyboardDevice.m
new file mode 100644
index 000000000000..14bf558a0511
--- /dev/null
+++ b/apple_remote/GlobalKeyboardDevice.m
@@ -0,0 +1,249 @@
+/*****************************************************************************
+ * GlobalKeyboardDevice.m
+ * RemoteControlWrapper
+ *
+ * Created by Martin Kahr on 11.03.06 under a MIT-style license.
+ * Copyright (c) 2006 martinkahr.com. All rights reserved.
+ *
+ * Code modified and adapted to OpenOffice.org
+ * by Eric Bachard on 11.08.2008 under the same license
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included
+ * in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ *
+ *****************************************************************************/
+
+
+#import "GlobalKeyboardDevice.h"
+
+#define F1 122
+#define F2 120
+#define F3 99
+#define F4 118
+#define F5 96
+#define F6 97
+#define F7 98
+
+/*
+ the following default keys are read and shall be used to change the keyboard mapping
+
+ mac.remotecontrols.GlobalKeyboardDevice.plus_modifiers
+ mac.remotecontrols.GlobalKeyboardDevice.plus_keycode
+ mac.remotecontrols.GlobalKeyboardDevice.minus_modifiers
+ mac.remotecontrols.GlobalKeyboardDevice.minus_keycode
+ mac.remotecontrols.GlobalKeyboardDevice.play_modifiers
+ mac.remotecontrols.GlobalKeyboardDevice.play_keycode
+ mac.remotecontrols.GlobalKeyboardDevice.left_modifiers
+ mac.remotecontrols.GlobalKeyboardDevice.left_keycode
+ mac.remotecontrols.GlobalKeyboardDevice.right_modifiers
+ mac.remotecontrols.GlobalKeyboardDevice.right_keycode
+ mac.remotecontrols.GlobalKeyboardDevice.menu_modifiers
+ mac.remotecontrols.GlobalKeyboardDevice.menu_keycode
+ mac.remotecontrols.GlobalKeyboardDevice.playhold_modifiers
+ mac.remotecontrols.GlobalKeyboardDevice.playhold_keycode
+ */
+
+static OSStatus hotKeyEventHandler(EventHandlerCallRef, EventRef, void*);
+
+@implementation GlobalKeyboardDevice
+
+- (id) initWithDelegate: (id) _remoteControlDelegate {
+ if ( (self = [super initWithDelegate: _remoteControlDelegate]) ) {
+ hotKeyRemoteEventMapping = [[NSMutableDictionary alloc] init];
+
+ unsigned int modifiers = cmdKey + shiftKey /*+ optionKey*/ + controlKey;
+
+ [self mapRemoteButton:kRemoteButtonPlus defaultKeycode:F1 defaultModifiers:modifiers];
+ [self mapRemoteButton:kRemoteButtonMinus defaultKeycode:F2 defaultModifiers:modifiers];
+ [self mapRemoteButton:kRemoteButtonPlay defaultKeycode:F3 defaultModifiers:modifiers];
+ [self mapRemoteButton:kRemoteButtonLeft defaultKeycode:F4 defaultModifiers:modifiers];
+ [self mapRemoteButton:kRemoteButtonRight defaultKeycode:F5 defaultModifiers:modifiers];
+ [self mapRemoteButton:kRemoteButtonMenu defaultKeycode:F6 defaultModifiers:modifiers];
+ [self mapRemoteButton:kRemoteButtonPlay_Hold defaultKeycode:F7 defaultModifiers:modifiers];
+ }
+ return self;
+}
+
+- (void) dealloc {
+ [hotKeyRemoteEventMapping release];
+ [super dealloc];
+}
+
+- (void) mapRemoteButton: (RemoteControlEventIdentifier) remoteButtonIdentifier defaultKeycode: (unsigned int) defaultKeycode defaultModifiers: (unsigned int) defaultModifiers {
+ NSString* defaultsKey = NULL;
+
+ switch(remoteButtonIdentifier) {
+ case kRemoteButtonPlus:
+ defaultsKey = @"plus";
+ break;
+ case kRemoteButtonMinus:
+ defaultsKey = @"minus";
+ break;
+ case kRemoteButtonMenu:
+ defaultsKey = @"menu";
+ break;
+ case kRemoteButtonPlay:
+ defaultsKey = @"play";
+ break;
+ case kRemoteButtonRight:
+ defaultsKey = @"right";
+ break;
+ case kRemoteButtonLeft:
+ defaultsKey = @"left";
+ break;
+ case kRemoteButtonPlay_Hold:
+ defaultsKey = @"playhold";
+ break;
+ default:
+#ifdef DEBUG
+ NSLog(@"Unknown global keyboard defaults key for remote button identifier %d", remoteButtonIdentifier);
+#endif
+ break;
+ }
+
+ NSNumber* modifiersCfg = [[NSUserDefaults standardUserDefaults] objectForKey: [NSString stringWithFormat: @"mac.remotecontrols.GlobalKeyboardDevice.%@_modifiers", defaultsKey]];
+ NSNumber* keycodeCfg = [[NSUserDefaults standardUserDefaults] objectForKey: [NSString stringWithFormat: @"mac.remotecontrols.GlobalKeyboardDevice.%@_keycode", defaultsKey]];
+
+ unsigned int modifiers = defaultModifiers;
+ if (modifiersCfg) modifiers = [modifiersCfg unsignedIntValue];
+
+ unsigned int keycode = defaultKeycode;
+ if (keycodeCfg) keycode = [keycodeCfg unsignedIntValue];
+
+ [self registerHotKeyCode: keycode modifiers: modifiers remoteEventIdentifier: remoteButtonIdentifier];
+}
+
+- (void) setListeningToRemote: (BOOL) value {
+ if (value == [self isListeningToRemote]) return;
+ if (value) {
+ [self startListening: self];
+ } else {
+ [self stopListening: self];
+ }
+}
+- (BOOL) isListeningToRemote {
+ return (eventHandlerRef!=NULL);
+}
+
+- (void) startListening: (id) sender {
+
+ if (eventHandlerRef) return;
+
+ EventTypeSpec eventSpec[2] = {
+ { kEventClassKeyboard, kEventHotKeyPressed },
+ { kEventClassKeyboard, kEventHotKeyReleased }
+ };
+
+ InstallEventHandler( GetEventDispatcherTarget(),
+ (EventHandlerProcPtr)hotKeyEventHandler,
+ 2, eventSpec, self, &eventHandlerRef);
+}
+- (void) stopListening: (id) sender {
+ RemoveEventHandler(eventHandlerRef);
+ eventHandlerRef = NULL;
+}
+
+- (BOOL) sendsEventForButtonIdentifier: (RemoteControlEventIdentifier) identifier {
+ NSEnumerator* values = [hotKeyRemoteEventMapping objectEnumerator];
+ NSNumber* remoteIdentifier;
+ while( (remoteIdentifier = [values nextObject]) ) {
+ if ([remoteIdentifier unsignedIntValue] == identifier) return YES;
+ }
+ return NO;
+}
+
++ (const char*) remoteControlDeviceName {
+ return "Keyboard";
+}
+
+- (BOOL)registerHotKeyCode: (unsigned int) keycode modifiers: (unsigned int) modifiers remoteEventIdentifier: (RemoteControlEventIdentifier) identifier {
+ OSStatus err;
+ EventHotKeyID hotKeyID;
+ EventHotKeyRef carbonHotKey;
+
+ hotKeyID.signature = 'PTHk';
+ hotKeyID.id = (long)keycode;
+
+ err = RegisterEventHotKey(keycode, modifiers, hotKeyID, GetEventDispatcherTarget(), 0, &carbonHotKey );
+
+ if( err )
+ return NO;
+
+ [hotKeyRemoteEventMapping setObject: [NSNumber numberWithInt:identifier] forKey: [NSNumber numberWithUnsignedInt: hotKeyID.id]];
+
+ return YES;
+}
+/*
+- (void)unregisterHotKey: (PTHotKey*)hotKey
+{
+ OSStatus err;
+ EventHotKeyRef carbonHotKey;
+ NSValue* key;
+
+ if( [[self allHotKeys] containsObject: hotKey] == NO )
+ return;
+
+ carbonHotKey = [self _carbonHotKeyForHotKey: hotKey];
+ NSAssert( carbonHotKey != nil, @"" );
+
+ err = UnregisterEventHotKey( carbonHotKey );
+ //Watch as we ignore 'err':
+
+ key = [NSValue valueWithPointer: carbonHotKey];
+ [mHotKeys removeObjectForKey: key];
+
+ [self _updateEventHandler];
+
+ //See that? Completely ignored
+}
+*/
+
+- (RemoteControlEventIdentifier) remoteControlEventIdentifierForID: (unsigned int) id {
+ NSNumber* remoteEventIdentifier = [hotKeyRemoteEventMapping objectForKey:[NSNumber numberWithUnsignedInt: id]];
+ return [remoteEventIdentifier unsignedIntValue];
+}
+
+- (void) sendRemoteButtonEvent: (RemoteControlEventIdentifier) event pressedDown: (BOOL) pressedDown {
+ [delegate sendRemoteButtonEvent: event pressedDown: pressedDown remoteControl:self];
+}
+
+static RemoteControlEventIdentifier lastEvent;
+
+
+static OSStatus hotKeyEventHandler(EventHandlerCallRef inHandlerRef, EventRef inEvent, void* userData )
+{
+ GlobalKeyboardDevice* keyboardDevice = (GlobalKeyboardDevice*) userData;
+ EventHotKeyID hkCom;
+ GetEventParameter(inEvent,kEventParamDirectObject,typeEventHotKeyID,NULL,sizeof(hkCom),NULL,&hkCom);
+
+ RemoteControlEventIdentifier identifier = [keyboardDevice remoteControlEventIdentifierForID:hkCom.id];
+ if (identifier == 0) return noErr;
+
+ BOOL pressedDown = YES;
+ if (identifier != lastEvent) {
+ lastEvent = identifier;
+ } else {
+ lastEvent = 0;
+ pressedDown = NO;
+ }
+ [keyboardDevice sendRemoteButtonEvent: identifier pressedDown: pressedDown];
+
+ return noErr;
+}
+
+@end
diff --git a/apple_remote/HIDRemoteControlDevice.m b/apple_remote/HIDRemoteControlDevice.m
new file mode 100644
index 000000000000..94215900717b
--- /dev/null
+++ b/apple_remote/HIDRemoteControlDevice.m
@@ -0,0 +1,518 @@
+/*****************************************************************************
+ * HIDRemoteControlDevice.m
+ * RemoteControlWrapper
+ *
+ * Created by Martin Kahr on 11.03.06 under a MIT-style license.
+ * Copyright (c) 2006 martinkahr.com. All rights reserved.
+ *
+ * Code modified and adapted to OpenOffice.org
+ * by Eric Bachard on 11.08.2008 under the same license
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included
+ * in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ *
+ *****************************************************************************/
+
+#import "HIDRemoteControlDevice.h"
+
+#import <mach/mach.h>
+#import <mach/mach_error.h>
+#import <IOKit/IOKitLib.h>
+#import <IOKit/IOCFPlugIn.h>
+#import <IOKit/hid/IOHIDKeys.h>
+#import <Carbon/Carbon.h>
+
+@interface HIDRemoteControlDevice (PrivateMethods)
+- (NSDictionary*) cookieToButtonMapping; // Creates the dictionary using the magics, depending on the remote
+- (IOHIDQueueInterface**) queue;
+- (IOHIDDeviceInterface**) hidDeviceInterface;
+- (void) handleEventWithCookieString: (NSString*) cookieString sumOfValues: (SInt32) sumOfValues;
+- (void) removeNotifcationObserver;
+- (void) remoteControlAvailable:(NSNotification *)notification;
+
+@end
+
+@interface HIDRemoteControlDevice (IOKitMethods)
++ (io_object_t) findRemoteDevice;
+- (IOHIDDeviceInterface**) createInterfaceForDevice: (io_object_t) hidDevice;
+- (BOOL) initializeCookies;
+- (BOOL) openDevice;
+@end
+
+@implementation HIDRemoteControlDevice
+
++ (const char*) remoteControlDeviceName {
+ return "";
+}
+
++ (BOOL) isRemoteAvailable {
+ io_object_t hidDevice = [self findRemoteDevice];
+ if (hidDevice != 0) {
+ IOObjectRelease(hidDevice);
+ return YES;
+ } else {
+ return NO;
+ }
+}
+
+- (id) initWithDelegate: (id) _remoteControlDelegate {
+ if ([[self class] isRemoteAvailable] == NO) return nil;
+
+ if ( (self = [super initWithDelegate: _remoteControlDelegate]) ) {
+ openInExclusiveMode = YES;
+ queue = NULL;
+ hidDeviceInterface = NULL;
+ cookieToButtonMapping = [[NSMutableDictionary alloc] init];
+
+ [self setCookieMappingInDictionary: cookieToButtonMapping];
+
+ NSEnumerator* enumerator = [cookieToButtonMapping objectEnumerator];
+ NSNumber* identifier;
+ supportedButtonEvents = 0;
+ while( (identifier = [enumerator nextObject]) ) {
+ supportedButtonEvents |= [identifier intValue];
+ }
+
+ fixSecureEventInputBug = [[NSUserDefaults standardUserDefaults] boolForKey: @"remoteControlWrapperFixSecureEventInputBug"];
+ }
+
+ return self;
+}
+
+- (void) dealloc {
+ [self removeNotifcationObserver];
+ [self stopListening:self];
+ [cookieToButtonMapping release];
+ [super dealloc];
+}
+
+- (void) sendRemoteButtonEvent: (RemoteControlEventIdentifier) event pressedDown: (BOOL) pressedDown {
+ [delegate sendRemoteButtonEvent: event pressedDown: pressedDown remoteControl:self];
+}
+
+- (void) setCookieMappingInDictionary: (NSMutableDictionary*) cookieToButtonMapping {
+}
+- (int) remoteIdSwitchCookie {
+ return 0;
+}
+
+- (BOOL) sendsEventForButtonIdentifier: (RemoteControlEventIdentifier) identifier {
+ return (supportedButtonEvents & identifier) == identifier;
+}
+
+- (BOOL) isListeningToRemote {
+ return (hidDeviceInterface != NULL && allCookies != NULL && queue != NULL);
+}
+
+- (void) setListeningToRemote: (BOOL) value {
+ if (value == NO) {
+ [self stopListening:self];
+ } else {
+ [self startListening:self];
+ }
+}
+
+- (BOOL) isOpenInExclusiveMode {
+ return openInExclusiveMode;
+}
+- (void) setOpenInExclusiveMode: (BOOL) value {
+ openInExclusiveMode = value;
+}
+
+- (BOOL) processesBacklog {
+ return processesBacklog;
+}
+- (void) setProcessesBacklog: (BOOL) value {
+ processesBacklog = value;
+}
+
+- (void) startListening: (id) sender {
+ if ([self isListeningToRemote]) return;
+
+ // 4th July 2007
+ //
+ // A security update in february of 2007 introduced an odd behavior.
+ // Whenever SecureEventInput is activated or deactivated the exclusive access
+ // to the remote control device is lost. This leads to very strange behavior where
+ // a press on the Menu button activates FrontRow while your app still gets the event.
+ // A great number of people have complained about this.
+ //
+ // Enabling the SecureEventInput and keeping it enabled does the trick.
+ //
+ // I'm pretty sure this is a kind of bug at Apple and I'm in contact with the responsible
+ // Apple Engineer. This solution is not a perfect one - I know.
+ // One of the side effects is that applications that listen for special global keyboard shortcuts (like Quicksilver)
+ // may get into problems as they no longer get the events.
+ // As there is no official Apple Remote API from Apple I also failed to open a technical incident on this.
+ //
+ // Note that there is a corresponding DisableSecureEventInput in the stopListening method below.
+ //
+ if ([self isOpenInExclusiveMode] && fixSecureEventInputBug) EnableSecureEventInput();
+
+ [self removeNotifcationObserver];
+
+ io_object_t hidDevice = [[self class] findRemoteDevice];
+ if (hidDevice == 0) return;
+
+ if ([self createInterfaceForDevice:hidDevice] == NULL) {
+ goto error;
+ }
+
+ if ([self initializeCookies]==NO) {
+ goto error;
+ }
+
+ if ([self openDevice]==NO) {
+ goto error;
+ }
+ // be KVO friendly
+ [self willChangeValueForKey:@"listeningToRemote"];
+ [self didChangeValueForKey:@"listeningToRemote"];
+ goto cleanup;
+
+error:
+ [self stopListening:self];
+ DisableSecureEventInput();
+
+cleanup:
+ IOObjectRelease(hidDevice);
+}
+
+- (void) stopListening: (id) sender {
+ if ([self isListeningToRemote]==NO) return;
+
+ BOOL sendNotification = NO;
+
+ if (eventSource != NULL) {
+ CFRunLoopRemoveSource(CFRunLoopGetCurrent(), eventSource, kCFRunLoopDefaultMode);
+ CFRelease(eventSource);
+ eventSource = NULL;
+ }
+ if (queue != NULL) {
+ (*queue)->stop(queue);
+
+ //dispose of queue
+ (*queue)->dispose(queue);
+
+ //release the queue we allocated
+ (*queue)->Release(queue);
+
+ queue = NULL;
+
+ sendNotification = YES;
+ }
+
+ if (allCookies != nil) {
+ [allCookies autorelease];
+ allCookies = nil;
+ }
+
+ if (hidDeviceInterface != NULL) {
+ //close the device
+ (*hidDeviceInterface)->close(hidDeviceInterface);
+
+ //release the interface
+ (*hidDeviceInterface)->Release(hidDeviceInterface);
+
+ hidDeviceInterface = NULL;
+ }
+
+ if ([self isOpenInExclusiveMode] && fixSecureEventInputBug) DisableSecureEventInput();
+
+ if ([self isOpenInExclusiveMode] && sendNotification) {
+ [[self class] sendFinishedNotifcationForAppIdentifier: nil];
+ }
+ // be KVO friendly
+ [self willChangeValueForKey:@"listeningToRemote"];
+ [self didChangeValueForKey:@"listeningToRemote"];
+}
+
+@end
+
+@implementation HIDRemoteControlDevice (PrivateMethods)
+
+- (IOHIDQueueInterface**) queue {
+ return queue;
+}
+
+- (IOHIDDeviceInterface**) hidDeviceInterface {
+ return hidDeviceInterface;
+}
+
+
+- (NSDictionary*) cookieToButtonMapping {
+ return cookieToButtonMapping;
+}
+
+- (NSString*) validCookieSubstring: (NSString*) cookieString {
+ if (cookieString == nil || [cookieString length] == 0) return nil;
+ NSEnumerator* keyEnum = [[self cookieToButtonMapping] keyEnumerator];
+ NSString* key;
+ while( (key = [keyEnum nextObject]) ) {
+ NSRange range = [cookieString rangeOfString:key];
+ if (range.location == 0) return key;
+ }
+ return nil;
+}
+
+- (void) handleEventWithCookieString: (NSString*) cookieString sumOfValues: (SInt32) sumOfValues {
+ /*
+ if (previousRemainingCookieString) {
+ cookieString = [previousRemainingCookieString stringByAppendingString: cookieString];
+ NSLog(@"New cookie string is %@", cookieString);
+ [previousRemainingCookieString release], previousRemainingCookieString=nil;
+ }*/
+ if (cookieString == nil || [cookieString length] == 0) return;
+
+ NSNumber* buttonId = [[self cookieToButtonMapping] objectForKey: cookieString];
+ if (buttonId != nil) {
+ [self sendRemoteButtonEvent: [buttonId intValue] pressedDown: (sumOfValues>0)];
+ } else {
+ // let's see if a number of events are stored in the cookie string. this does
+ // happen when the main thread is too busy to handle all incoming events in time.
+ NSString* subCookieString;
+ NSString* lastSubCookieString=nil;
+ while( (subCookieString = [self validCookieSubstring: cookieString]) ) {
+ cookieString = [cookieString substringFromIndex: [subCookieString length]];
+ lastSubCookieString = subCookieString;
+ if (processesBacklog) [self handleEventWithCookieString: subCookieString sumOfValues:sumOfValues];
+ }
+ if (processesBacklog == NO && lastSubCookieString != nil) {
+ // process the last event of the backlog and assume that the button is not pressed down any longer.
+ // The events in the backlog do not seem to be in order and therefore (in rare cases) the last event might be
+ // a button pressed down event while in reality the user has released it.
+ // NSLog(@"processing last event of backlog");
+ [self handleEventWithCookieString: lastSubCookieString sumOfValues:0];
+ }
+ if ([cookieString length] > 0) {
+ NSLog(@"Unknown button for cookiestring %@", cookieString);
+ }
+ }
+}
+
+- (void) removeNotifcationObserver {
+ [[NSDistributedNotificationCenter defaultCenter] removeObserver:self name:FINISHED_USING_REMOTE_CONTROL_NOTIFICATION object:nil];
+}
+
+- (void) remoteControlAvailable:(NSNotification *)notification {
+ [self removeNotifcationObserver];
+ [self startListening: self];
+}
+
+@end
+
+/* Callback method for the device queue
+Will be called for any event of any type (cookie) to which we subscribe
+*/
+static void QueueCallbackFunction(void* target, IOReturn result, void* refcon, void* sender) {
+ if (target < 0) {
+ NSLog(@"QueueCallbackFunction called with invalid target!");
+ return;
+ }
+ NSAutoreleasePool* pool = [[NSAutoreleasePool alloc] init];
+
+ HIDRemoteControlDevice* remote = (HIDRemoteControlDevice*)target;
+ IOHIDEventStruct event;
+ AbsoluteTime zeroTime = {0,0};
+ NSMutableString* cookieString = [NSMutableString string];
+ SInt32 sumOfValues = 0;
+ while (result == kIOReturnSuccess)
+ {
+ result = (*[remote queue])->getNextEvent([remote queue], &event, zeroTime, 0);
+ if ( result != kIOReturnSuccess )
+ continue;
+
+ //printf("%d %d %d\n", event.elementCookie, event.value, event.longValue);
+
+ if (((int)event.elementCookie)!=5) {
+ sumOfValues+=event.value;
+ [cookieString appendString:[NSString stringWithFormat:@"%d_", event.elementCookie]];
+ }
+ }
+ [remote handleEventWithCookieString: cookieString sumOfValues: sumOfValues];
+
+ [pool release];
+}
+
+@implementation HIDRemoteControlDevice (IOKitMethods)
+
+- (IOHIDDeviceInterface**) createInterfaceForDevice: (io_object_t) hidDevice {
+ io_name_t className;
+ IOCFPlugInInterface** plugInInterface = NULL;
+ HRESULT plugInResult = S_OK;
+ SInt32 score = 0;
+ IOReturn ioReturnValue = kIOReturnSuccess;
+
+ hidDeviceInterface = NULL;
+
+ ioReturnValue = IOObjectGetClass(hidDevice, className);
+
+ if (ioReturnValue != kIOReturnSuccess) {
+ NSLog(@"Error: Failed to get class name.");
+ return NULL;
+ }
+
+ ioReturnValue = IOCreatePlugInInterfaceForService(hidDevice,
+ kIOHIDDeviceUserClientTypeID,
+ kIOCFPlugInInterfaceID,
+ &plugInInterface,
+ &score);
+ if (ioReturnValue == kIOReturnSuccess)
+ {
+ //Call a method of the intermediate plug-in to create the device interface
+ plugInResult = (*plugInInterface)->QueryInterface(plugInInterface, CFUUIDGetUUIDBytes(kIOHIDDeviceInterfaceID), (LPVOID) &hidDeviceInterface);
+
+ if (plugInResult != S_OK) {
+ NSLog(@"Error: Couldn't create HID class device interface");
+ }
+ // Release
+ if (plugInInterface) (*plugInInterface)->Release(plugInInterface);
+ }
+ return hidDeviceInterface;
+}
+
+- (BOOL) initializeCookies {
+ IOHIDDeviceInterface122** handle = (IOHIDDeviceInterface122**)hidDeviceInterface;
+ IOHIDElementCookie cookie;
+ long usage;
+ long usagePage;
+ id object;
+ NSArray* elements = nil;
+ NSDictionary* element;
+ IOReturn success;
+
+ if (!handle || !(*handle)) return NO;
+
+ // Copy all elements, since we're grabbing most of the elements
+ // for this device anyway, and thus, it's faster to iterate them
+ // ourselves. When grabbing only one or two elements, a matching
+ // dictionary should be passed in here instead of NULL.
+ success = (*handle)->copyMatchingElements(handle, NULL, (CFArrayRef*)&elements);
+
+ if (success == kIOReturnSuccess) {
+
+ [elements autorelease];
+ /*
+ cookies = calloc(NUMBER_OF_APPLE_REMOTE_ACTIONS, sizeof(IOHIDElementCookie));
+ memset(cookies, 0, sizeof(IOHIDElementCookie) * NUMBER_OF_APPLE_REMOTE_ACTIONS);
+ */
+ allCookies = [[NSMutableArray alloc] init];
+
+ NSEnumerator *elementsEnumerator = [elements objectEnumerator];
+
+ while ( (element = [elementsEnumerator nextObject]) ) {
+ //Get cookie
+ object = [element valueForKey: (NSString*)CFSTR(kIOHIDElementCookieKey) ];
+ if (object == nil || ![object isKindOfClass:[NSNumber class]]) continue;
+ if (object == 0 || CFGetTypeID(object) != CFNumberGetTypeID()) continue;
+ cookie = (IOHIDElementCookie) [object longValue];
+
+ //Get usage
+ object = [element valueForKey: (NSString*)CFSTR(kIOHIDElementUsageKey) ];
+ if (object == nil || ![object isKindOfClass:[NSNumber class]]) continue;
+ usage = [object longValue];
+
+ //Get usage page
+ object = [element valueForKey: (NSString*)CFSTR(kIOHIDElementUsagePageKey) ];
+ if (object == nil || ![object isKindOfClass:[NSNumber class]]) continue;
+ usagePage = [object longValue];
+
+ [allCookies addObject: [NSNumber numberWithInt:(int)cookie]];
+ }
+ } else {
+ return NO;
+ }
+
+ return YES;
+}
+
+- (BOOL) openDevice {
+ HRESULT result;
+
+ IOHIDOptionsType openMode = kIOHIDOptionsTypeNone;
+ if ([self isOpenInExclusiveMode]) openMode = kIOHIDOptionsTypeSeizeDevice;
+ IOReturn ioReturnValue = (*hidDeviceInterface)->open(hidDeviceInterface, openMode);
+
+ if (ioReturnValue == KERN_SUCCESS) {
+ queue = (*hidDeviceInterface)->allocQueue(hidDeviceInterface);
+ if (queue) {
+ result = (*queue)->create(queue, 0, 12); //depth: maximum number of elements in queue before oldest elements in queue begin to be lost.
+
+ IOHIDElementCookie cookie;
+ NSEnumerator *allCookiesEnumerator = [allCookies objectEnumerator];
+
+ while ( (cookie = (IOHIDElementCookie)[[allCookiesEnumerator nextObject] intValue]) ) {
+ (*queue)->addElement(queue, cookie, 0);
+ }
+
+ // add callback for async events
+ ioReturnValue = (*queue)->createAsyncEventSource(queue, &eventSource);
+ if (ioReturnValue == KERN_SUCCESS) {
+ ioReturnValue = (*queue)->setEventCallout(queue,QueueCallbackFunction, self, NULL);
+ if (ioReturnValue == KERN_SUCCESS) {
+ CFRunLoopAddSource(CFRunLoopGetCurrent(), eventSource, kCFRunLoopDefaultMode);
+
+ //start data delivery to queue
+ (*queue)->start(queue);
+ return YES;
+ } else {
+ NSLog(@"Error when setting event callback");
+ }
+ } else {
+ NSLog(@"Error when creating async event source");
+ }
+ } else {
+ NSLog(@"Error when opening device");
+ }
+ } else if (ioReturnValue == kIOReturnExclusiveAccess) {
+ // the device is used exclusive by another application
+
+ // 1. we register for the FINISHED_USING_REMOTE_CONTROL_NOTIFICATION notification
+ [[NSDistributedNotificationCenter defaultCenter] addObserver:self selector:@selector(remoteControlAvailable:) name:FINISHED_USING_REMOTE_CONTROL_NOTIFICATION object:nil];
+
+ // 2. send a distributed notification that we wanted to use the remote control
+ [[self class] sendRequestForRemoteControlNotification];
+ }
+ return NO;
+}
+
++ (io_object_t) findRemoteDevice {
+ CFMutableDictionaryRef hidMatchDictionary = NULL;
+ IOReturn ioReturnValue = kIOReturnSuccess;
+ io_iterator_t hidObjectIterator = 0;
+ io_object_t hidDevice = 0;
+
+ // Set up a matching dictionary to search the I/O Registry by class
+ // name for all HID class devices
+ hidMatchDictionary = IOServiceMatching([self remoteControlDeviceName]);
+
+ // Now search I/O Registry for matching devices.
+ ioReturnValue = IOServiceGetMatchingServices(kIOMasterPortDefault, hidMatchDictionary, &hidObjectIterator);
+
+ if ((ioReturnValue == kIOReturnSuccess) && (hidObjectIterator != 0)) {
+ hidDevice = IOIteratorNext(hidObjectIterator);
+ }
+
+ // release the iterator
+ IOObjectRelease(hidObjectIterator);
+
+ return hidDevice;
+}
+
+@end
+
diff --git a/apple_remote/KeyspanFrontRowControl.m b/apple_remote/KeyspanFrontRowControl.m
new file mode 100644
index 000000000000..dd86475b12b1
--- /dev/null
+++ b/apple_remote/KeyspanFrontRowControl.m
@@ -0,0 +1,97 @@
+/*****************************************************************************
+ * KeyspanFrontRowControl.m
+ * RemoteControlWrapper
+ *
+ * Created by Martin Kahr on 11.03.06 under a MIT-style license.
+ * Copyright (c) 2006 martinkahr.com. All rights reserved.
+ *
+ * Code modified and adapted to OpenOffice.org
+ * by Eric Bachard on 11.08.2008 under the same License
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included
+ * in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ *
+ *****************************************************************************/
+
+#import "KeyspanFrontRowControl.h"
+#import <mach/mach.h>
+#import <mach/mach_error.h>
+#import <IOKit/IOKitLib.h>
+#import <IOKit/IOCFPlugIn.h>
+#import <IOKit/hid/IOHIDKeys.h>
+
+@implementation KeyspanFrontRowControl
+
+- (void) setCookieMappingInDictionary: (NSMutableDictionary*) _cookieToButtonMapping {
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonPlus] forKey:@"11_18_99_10_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonMinus] forKey:@"11_18_98_10_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonMenu] forKey:@"11_18_58_10_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonPlay] forKey:@"11_18_61_10_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonRight] forKey:@"11_18_96_10_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonLeft] forKey:@"11_18_97_10_"];
+ /* hold events are not being send by this device
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonRight_Hold] forKey:@"14_6_4_2_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonLeft_Hold] forKey:@"14_6_3_2_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonMenu_Hold] forKey:@"14_6_14_6_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonPlay_Sleep] forKey:@"18_14_6_18_14_6_"];
+ [_cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteControl_Switched] forKey:@"19_"];
+ */
+}
+
++ (io_object_t) findRemoteDevice {
+ CFMutableDictionaryRef hidMatchDictionary = NULL;
+ IOReturn ioReturnValue = kIOReturnSuccess;
+ io_iterator_t hidObjectIterator = 0;
+ io_object_t hidDevice = 0;
+ SInt32 idVendor = 1741;
+ SInt32 idProduct = 0x420;
+
+ // Set up a matching dictionary to search the I/O Registry by class
+ // name for all HID class devices
+ hidMatchDictionary = IOServiceMatching(kIOHIDDeviceKey);
+
+ CFNumberRef numberRefVendor = CFNumberCreate(kCFAllocatorDefault, kCFNumberSInt32Type, &idVendor);
+ if ( numberRefVendor )
+ {
+ CFDictionaryAddValue(hidMatchDictionary, CFSTR(kIOHIDVendorIDKey), numberRefVendor);
+ CFRelease(numberRefVendor);
+ }
+
+ CFNumberRef numberRefProduct = CFNumberCreate(kCFAllocatorDefault, kCFNumberSInt32Type, &idProduct);
+ if ( numberRefProduct )
+ {
+ CFDictionaryAddValue(hidMatchDictionary, CFSTR(kIOHIDProductIDKey), numberRefProduct);
+ CFRelease(numberRefProduct);
+ }
+
+ // Now search I/O Registry for matching devices.
+ ioReturnValue = IOServiceGetMatchingServices(kIOMasterPortDefault, hidMatchDictionary, &hidObjectIterator);
+
+ if ((ioReturnValue == kIOReturnSuccess) && (hidObjectIterator != 0)) {
+ hidDevice = IOIteratorNext(hidObjectIterator);
+ }
+
+ // release the iterator
+ if ( hidObjectIterator )
+ IOObjectRelease(hidObjectIterator);
+
+ return hidDevice;
+
+}
+
+@end
diff --git a/apple_remote/MultiClickRemoteBehavior.m b/apple_remote/MultiClickRemoteBehavior.m
new file mode 100644
index 000000000000..03b24978d93b
--- /dev/null
+++ b/apple_remote/MultiClickRemoteBehavior.m
@@ -0,0 +1,213 @@
+/*****************************************************************************
+ * MultiClickRemoteBehavior.m
+ * RemoteControlWrapper
+ *
+ * Created by Martin Kahr on 11.03.06 under a MIT-style license.
+ * Copyright (c) 2006 martinkahr.com. All rights reserved.
+ *
+ * Code modified and adapted to OpenOffice.org
+ * by Eric Bachard on 11.08.2008 under the same License
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included
+ * in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ *
+ *****************************************************************************/
+
+#import "MultiClickRemoteBehavior.h"
+
+const NSTimeInterval DEFAULT_MAXIMUM_CLICK_TIME_DIFFERENCE = 0.35;
+const NSTimeInterval HOLD_RECOGNITION_TIME_INTERVAL = 0.4;
+
+@implementation MultiClickRemoteBehavior
+
+- (id) init {
+ if ( (self = [super init]) ) {
+ maxClickTimeDifference = DEFAULT_MAXIMUM_CLICK_TIME_DIFFERENCE;
+ }
+ return self;
+}
+
+// Delegates are not retained!
+// http://developer.apple.com/documentation/Cocoa/Conceptual/CocoaFundamentals/CommunicatingWithObjects/chapter_6_section_4.html
+// Delegating objects do not (and should not) retain their delegates.
+// However, clients of delegating objects (applications, usually) are responsible for ensuring that their delegates are around
+// to receive delegation messages. To do this, they may have to retain the delegate.
+- (void) setDelegate: (id) _delegate {
+ if ( _delegate && ( [_delegate respondsToSelector:@selector(remoteButton:pressedDown:clickCount:)] == NO )) return; // return what ?
+
+ delegate = _delegate;
+}
+- (id) delegate {
+ return delegate;
+}
+
+- (BOOL) simulateHoldEvent {
+ return simulateHoldEvents;
+}
+- (void) setSimulateHoldEvent: (BOOL) value {
+ simulateHoldEvents = value;
+}
+
+- (BOOL) simulatesHoldForButtonIdentifier: (RemoteControlEventIdentifier) identifier remoteControl: (RemoteControl*) remoteControl {
+ // we do that check only for the normal button identifiers as we would check for hold support for hold events instead
+ if (identifier > (1 << EVENT_TO_HOLD_EVENT_OFFSET)) return NO;
+
+ return [self simulateHoldEvent] && [remoteControl sendsEventForButtonIdentifier: (identifier << EVENT_TO_HOLD_EVENT_OFFSET)]==NO;
+}
+
+- (BOOL) clickCountingEnabled {
+ return clickCountEnabledButtons != 0;
+}
+- (void) setClickCountingEnabled: (BOOL) value {
+ if (value) {
+ [self setClickCountEnabledButtons: kRemoteButtonPlus | kRemoteButtonMinus | kRemoteButtonPlay | kRemoteButtonLeft | kRemoteButtonRight | kRemoteButtonMenu];
+ } else {
+ [self setClickCountEnabledButtons: 0];
+ }
+}
+
+- (unsigned int) clickCountEnabledButtons {
+ return clickCountEnabledButtons;
+}
+- (void) setClickCountEnabledButtons: (unsigned int)value {
+ clickCountEnabledButtons = value;
+}
+
+- (NSTimeInterval) maximumClickCountTimeDifference {
+ return maxClickTimeDifference;
+}
+- (void) setMaximumClickCountTimeDifference: (NSTimeInterval) timeDiff {
+ maxClickTimeDifference = timeDiff;
+}
+
+- (void) sendSimulatedHoldEvent: (id) time {
+ BOOL startSimulateHold = NO;
+ RemoteControlEventIdentifier event = lastHoldEvent;
+ @synchronized(self) {
+ startSimulateHold = (lastHoldEvent>0 && lastHoldEventTime == [time doubleValue]);
+ }
+ if (startSimulateHold) {
+ lastEventSimulatedHold = YES;
+ event = (event << EVENT_TO_HOLD_EVENT_OFFSET);
+ [delegate remoteButton:event pressedDown: YES clickCount: 1];
+ }
+}
+
+- (void) executeClickCountEvent: (NSArray*) values {
+ RemoteControlEventIdentifier event = [[values objectAtIndex: 0] unsignedIntValue];
+ NSTimeInterval eventTimePoint = [[values objectAtIndex: 1] doubleValue];
+
+ BOOL finishedClicking = NO;
+ int finalClickCount = eventClickCount;
+
+ @synchronized(self) {
+ finishedClicking = (event != lastClickCountEvent || eventTimePoint == lastClickCountEventTime);
+ if (finishedClicking) {
+ eventClickCount = 0;
+ lastClickCountEvent = 0;
+ lastClickCountEventTime = 0;
+ }
+ }
+
+ if (finishedClicking) {
+ [delegate remoteButton:event pressedDown: YES clickCount:finalClickCount];
+ // trigger a button release event, too
+ [NSThread sleepUntilDate: [NSDate dateWithTimeIntervalSinceNow:0.1]];
+ [delegate remoteButton:event pressedDown: NO clickCount:finalClickCount];
+ }
+}
+
+- (void) sendRemoteButtonEvent: (RemoteControlEventIdentifier) event pressedDown: (BOOL) pressedDown remoteControl: (RemoteControl*) remoteControl {
+ if (!delegate) return;
+
+ BOOL clickCountingForEvent = ([self clickCountEnabledButtons] & event) == event;
+
+ if ([self simulatesHoldForButtonIdentifier: event remoteControl: remoteControl] && lastClickCountEvent==0) {
+ if (pressedDown) {
+ // wait to see if it is a hold
+ lastHoldEvent = event;
+ lastHoldEventTime = [NSDate timeIntervalSinceReferenceDate];
+ [self performSelector:@selector(sendSimulatedHoldEvent:)
+ withObject:[NSNumber numberWithDouble:lastHoldEventTime]
+ afterDelay:HOLD_RECOGNITION_TIME_INTERVAL];
+ return;
+ } else {
+ if (lastEventSimulatedHold) {
+ // it was a hold
+ // send an event for "hold release"
+ event = (event << EVENT_TO_HOLD_EVENT_OFFSET);
+ lastHoldEvent = 0;
+ lastEventSimulatedHold = NO;
+
+ [delegate remoteButton:event pressedDown: pressedDown clickCount:1];
+ return;
+ } else {
+ RemoteControlEventIdentifier previousEvent = lastHoldEvent;
+ @synchronized(self) {
+ lastHoldEvent = 0;
+ }
+
+ // in case click counting is enabled we have to setup the state for that, too
+ if (clickCountingForEvent) {
+ lastClickCountEvent = previousEvent;
+ lastClickCountEventTime = lastHoldEventTime;
+ NSNumber* eventNumber;
+ NSNumber* timeNumber;
+ eventClickCount = 1;
+ timeNumber = [NSNumber numberWithDouble:lastClickCountEventTime];
+ eventNumber= [NSNumber numberWithUnsignedInt:previousEvent];
+ NSTimeInterval diffTime = maxClickTimeDifference-([NSDate timeIntervalSinceReferenceDate]-lastHoldEventTime);
+ [self performSelector: @selector(executeClickCountEvent:)
+ withObject: [NSArray arrayWithObjects:eventNumber, timeNumber, nil]
+ afterDelay: diffTime];
+ // we do not return here because we are still in the press-release event
+ // that will be consumed below
+ } else {
+ // trigger the pressed down event that we consumed first
+ [delegate remoteButton:event pressedDown: YES clickCount:1];
+ }
+ }
+ }
+ }
+
+ if (clickCountingForEvent) {
+ if (pressedDown == NO) return;
+
+ NSNumber* eventNumber;
+ NSNumber* timeNumber;
+ @synchronized(self) {
+ lastClickCountEventTime = [NSDate timeIntervalSinceReferenceDate];
+ if (lastClickCountEvent == event) {
+ eventClickCount = eventClickCount + 1;
+ } else {
+ eventClickCount = 1;
+ }
+ lastClickCountEvent = event;
+ timeNumber = [NSNumber numberWithDouble:lastClickCountEventTime];
+ eventNumber= [NSNumber numberWithUnsignedInt:event];
+ }
+ [self performSelector: @selector(executeClickCountEvent:)
+ withObject: [NSArray arrayWithObjects:eventNumber, timeNumber, nil]
+ afterDelay: maxClickTimeDifference];
+ } else {
+ [delegate remoteButton:event pressedDown: pressedDown clickCount:1];
+ }
+
+}
+
+@end
diff --git a/apple_remote/RemoteControl.m b/apple_remote/RemoteControl.m
new file mode 100644
index 000000000000..d0812d384b3e
--- /dev/null
+++ b/apple_remote/RemoteControl.m
@@ -0,0 +1,146 @@
+/*****************************************************************************
+ * RemoteControl.m
+ * RemoteControlWrapper
+ *
+ * Created by Martin Kahr on 11.03.06 under a MIT-style license.
+ * Copyright (c) 2006 martinkahr.com. All rights reserved.
+ *
+ * Code modified and adapted to OpenOffice.org
+ * by Eric Bachard on 11.08.2008 under the same License
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included
+ * in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ *
+ *****************************************************************************/
+
+#import "RemoteControl.h"
+
+// notifaction names that are being used to signal that an application wants to
+// have access to the remote control device or if the application has finished
+// using the remote control device
+NSString* REQUEST_FOR_REMOTE_CONTROL_NOTIFCATION = @"mac.remotecontrols.RequestForRemoteControl";
+NSString* FINISHED_USING_REMOTE_CONTROL_NOTIFICATION = @"mac.remotecontrols.FinishedUsingRemoteControl";
+
+// keys used in user objects for distributed notifications
+NSString* kRemoteControlDeviceName = @"RemoteControlDeviceName";
+NSString* kApplicationIdentifier = @"CFBundleIdentifier";
+// bundle identifier of the application that should get access to the remote control
+// this key is being used in the FINISHED notification only
+NSString* kTargetApplicationIdentifier = @"TargetBundleIdentifier";
+
+
+@implementation RemoteControl
+
+// returns nil if the remote control device is not available
+- (id) initWithDelegate: (id) _remoteControlDelegate {
+ if ( (self = [super init]) ) {
+ delegate = [_remoteControlDelegate retain];
+#ifdef DEBUG
+ NSLog(@"RemoteControl initWithDelegate ok");
+#endif
+ }
+ return self;
+}
+
+- (void) dealloc {
+ [delegate release];
+ [super dealloc];
+}
+
+- (void) setListeningToRemote: (BOOL) value {
+#ifdef DEBUG
+ NSLog(@"setListeningToRemote ok");
+#endif
+}
+- (BOOL) isListeningToRemote {
+ return NO;
+}
+
+- (void) startListening: (id) sender {
+#ifdef DEBUG
+ NSLog(@"startListening ok");
+#endif
+}
+- (void) stopListening: (id) sender {
+#ifdef DEBUG
+ NSLog(@"stopListening ok");
+#endif
+}
+
+- (BOOL) isOpenInExclusiveMode {
+ return YES;
+}
+- (void) setOpenInExclusiveMode: (BOOL) value {
+}
+
+- (BOOL) sendsEventForButtonIdentifier: (RemoteControlEventIdentifier) identifier {
+#ifdef DEBUG
+ NSLog(@"sending event for button identifier \n");
+#endif
+ return YES;
+}
+
++ (void) sendDistributedNotification: (NSString*) notificationName targetBundleIdentifier: (NSString*) targetIdentifier
+{
+ if ( (self = [super init]) ) {
+ NSDictionary* userInfo = [NSDictionary dictionaryWithObjectsAndKeys: [NSString stringWithCString:[self remoteControlDeviceName] encoding:NSASCIIStringEncoding],
+ kRemoteControlDeviceName /* key = RemoteControlDeviceName -> OK */,
+ [[NSBundle mainBundle] bundleIdentifier] /* value = org.openoffice.script -> OK */,
+ kApplicationIdentifier/* key = CFBundleIdentifier -> OK */,
+ targetIdentifier /*value = AppleIRController -> OK */,
+ kTargetApplicationIdentifier /*targetBundleIdentifier -> does not appear, since the peer is nil*/,
+ nil];
+#ifdef DEBUG
+ // Debug purpose: returns all the existing dictionary keys.
+ NSString *s;
+ NSEnumerator *e = [userInfo keyEnumerator];
+ while ( (s = [e nextObject]) ) {
+ NSLog(@"key = %@ ",s);
+ }
+ NSEnumerator *f = [userInfo objectEnumerator ];
+ while ( (s = [f nextObject]) ) {
+ NSLog(@"value = %@ ",s);
+ }
+ NSLog(@"sendDistributedNotification ...");
+#endif
+
+ [[NSDistributedNotificationCenter defaultCenter] postNotificationName:notificationName
+ object:nil
+ userInfo:userInfo
+ deliverImmediately:YES];
+ }
+}
+
++ (void) sendFinishedNotifcationForAppIdentifier: (NSString*) identifier {
+ [self sendDistributedNotification:FINISHED_USING_REMOTE_CONTROL_NOTIFICATION targetBundleIdentifier:identifier];
+#ifdef DEBUG
+ NSLog(@"sendFinishedNotifcationForAppIdentifier ...");
+#endif
+}
++ (void) sendRequestForRemoteControlNotification {
+ [self sendDistributedNotification:REQUEST_FOR_REMOTE_CONTROL_NOTIFCATION targetBundleIdentifier:nil];
+#ifdef DEBUG
+ NSLog(@"sendRequestForRemoteControlNotification ...");
+#endif
+}
+
++ (const char*) remoteControlDeviceName {
+ return NULL;
+}
+
+@end
diff --git a/apple_remote/RemoteControlContainer.m b/apple_remote/RemoteControlContainer.m
new file mode 100644
index 000000000000..40a222f2d829
--- /dev/null
+++ b/apple_remote/RemoteControlContainer.m
@@ -0,0 +1,140 @@
+/*****************************************************************************
+ * RemoteControlContainer.m
+ * RemoteControlWrapper
+ *
+ * Created by Martin Kahr on 11.03.06 under a MIT-style license.
+ * Copyright (c) 2006 martinkahr.com. All rights reserved.
+ *