diff options
Diffstat (limited to '')
-rw-r--r-- | ios/CustomTarget_iOS_setup.mk | 138 | ||||
-rw-r--r-- | ios/Makefile | 13 | ||||
-rw-r--r-- | ios/Module_ios.mk | 19 | ||||
-rw-r--r-- | ios/README.md | 3 | ||||
-rw-r--r-- | ios/UnitTest/UnitTest.xcodeproj/project.pbxproj | 810 | ||||
-rw-r--r-- | ios/UnitTest/UnitTest/AppDelegate.h | 16 | ||||
-rw-r--r-- | ios/UnitTest/UnitTest/AppDelegate.m | 52 | ||||
-rw-r--r-- | ios/UnitTest/UnitTest/Assets.xcassets/AppIcon.appiconset/Contents.json | 98 | ||||
-rw-r--r-- | ios/UnitTest/UnitTest/Assets.xcassets/Contents.json | 6 | ||||
-rw-r--r-- | ios/UnitTest/UnitTest/Base.lproj/LaunchScreen.storyboard | 25 | ||||
-rw-r--r-- | ios/UnitTest/UnitTest/Base.lproj/Main.storyboard | 24 | ||||
-rw-r--r-- | ios/UnitTest/UnitTest/Info.plist | 47 | ||||
-rw-r--r-- | ios/UnitTest/UnitTest/ViewController.h | 14 | ||||
-rw-r--r-- | ios/UnitTest/UnitTest/ViewController.mm | 90 | ||||
-rw-r--r-- | ios/UnitTest/UnitTest/main.m | 18 | ||||
-rw-r--r-- | ios/welcome.odt | bin | 0 -> 297986 bytes |
16 files changed, 1373 insertions, 0 deletions
diff --git a/ios/CustomTarget_iOS_setup.mk b/ios/CustomTarget_iOS_setup.mk new file mode 100644 index 000000000..f44a15447 --- /dev/null +++ b/ios/CustomTarget_iOS_setup.mk @@ -0,0 +1,138 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# + + +#- Env ------------------------------------------------------------------------ +IOSGEN = $(BUILDDIR)/workdir/CustomTarget/ios +IOSRES = $(IOSGEN)/resources +IOSDIRS = $(IOSGEN) \ + $(IOSGEN)/Debug_x86_64 \ + $(IOSGEN)/Debug_arm64 \ + $(IOSGEN)/Release_x86_64 \ + $(IOSGEN)/Release_arm64 \ + $(IOSRES) \ + $(IOSRES)/services \ + $(IOSRES)/program \ + $(IOSRES)/share \ + $(IOSRES)/config \ + $(IOSRES)/share/filter + + +#- Top level ----------------------------------------------------------------- +$(eval $(call gb_CustomTarget_CustomTarget,ios/iOS_setup)) + +$(call gb_CustomTarget_get_target,ios/iOS_setup): $(IOSGEN)/native-code.h + + +#- create directories -------------------------------------------------------- +$(IOSDIRS): + $(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),MKD,2) + $(call gb_Trace_StartRange,$(subst $(WORKDIR)/,,$@),MKD) + mkdir -p $(IOSDIRS) + $(call gb_Trace_EndRange,$(subst $(WORKDIR)/,,$@),MKD) + + +#- Generate resources -------------------------------------------------------- +$(IOSGEN)/native-code.h: $(BUILDDIR)/config_host.mk \ + $(SRCDIR)/ios/CustomTarget_iOS_setup.mk \ + $(SRCDIR)/solenv/bin/native-code.py \ + $(IOSGEN) \ + $(IOSDIRS) + $(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),EN2,2) + $(call gb_Trace_StartRange,$(subst $(WORKDIR)/,,$@),EN2) + $(call gb_Trace_EndRange,$(subst $(WORKDIR)/,,$@),EN2) + + # generate native-code.h (used by LibreOffice.c) + xcrun python3 $(SRCDIR)/solenv/bin/native-code.py \ + -C -g core -g writer -g calc -g draw -g edit \ + > $(IOSGEN)/native-code.h + + # copy resource files used to start/run LibreOffice + cp $(WORKDIR)/UnpackedTarball/icu/source/data/in/icudt$(ICU_MAJOR)l.dat $(IOSRES)/icudt$(ICU_MAJOR)l.dat + cp $(INSTDIR)/program/types.rdb $(IOSRES)/udkapi.rdb + cp $(INSTDIR)/program/types/offapi.rdb $(IOSRES) + cp $(INSTDIR)/program/types/oovbaapi.rdb $(IOSRES) + cp $(INSTDIR)/program/services/services.rdb $(IOSRES)/services + cp $(INSTDIR)/program/services.rdb $(IOSRES) + if test -d $(INSTDIR)/program/resource; then \ + cp -R $(INSTDIR)/program/resource $(IOSRES)/program; \ + fi + mkdir -p $(IOSRES)/share/config + cp -R $(INSTDIR)/share/config/soffice.cfg $(IOSRES)/share/config + cp $(INSTDIR)/share/filter/oox-drawingml-adj-names $(IOSRES)/share/filter + cp $(INSTDIR)/share/filter/oox-drawingml-cs-presets $(IOSRES)/share/filter + cp $(INSTDIR)/share/filter/vml-shape-types $(IOSRES)/share/filter + cp -R $(INSTDIR)/share/registry $(IOSRES)/share + cp $(INSTDIR)/share/config/*zip $(IOSRES)/share/config + cp -R $(INSTDIR)/share/liblangtag $(IOSRES)/share + cp -R $(INSTDIR)/share/theme_definitions $(IOSRES)/share + cp -R $(INSTDIR)/share/template $(IOSRES)/share + mkdir -p $(IOSRES)/share/fonts + cp -R $(INSTDIR)/share/fonts/truetype $(IOSRES)/share/fonts + cp -R $(INSTDIR)/share/gallery $(IOSRES)/share + mkdir -p $(IOSRES)/share/spell $(IOSRES)/share/thes + # Install the Swiss German dictionary and use it for Liechtenstein, too. + # Install also thesauruses. + if test -d $(INSTDIR)/share/extensions/dict-de; then \ + cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.aff $(IOSRES)/share/spell/de_CH.aff; \ + cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.dic $(IOSRES)/share/spell/de_CH.dic; \ + cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.aff $(IOSRES)/share/spell/de_LI.aff; \ + cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.dic $(IOSRES)/share/spell/de_LI.dic; \ + cp $(INSTDIR)/share/extensions/*/th_*_v2.* $(IOSRES)/share/thes; \ + cp $(INSTDIR)/share/extensions/dict-en/th_en_US_v2.dat $(IOSRES)/share/thes/th_en_GB_v2.dat; \ + cp $(INSTDIR)/share/extensions/dict-en/th_en_US_v2.idx $(IOSRES)/share/thes/th_en_GB_v2.idx; \ + fi + cp -R $(INSTDIR)/share/palette $(IOSRES)/share + cp -R $(INSTDIR)/share/fingerprint $(IOSRES)/share + cp $(SRCDIR)/ios/welcome.odt $(IOSRES) + + # Set up rc (the "inifile", fundamentalrc, unorc, bootstraprc and versionrc. + (echo '[Bootstrap]' \ + && echo 'URE_BOOTSTRAP=file://$$APP_DATA_DIR/fundamentalrc' \ + && echo 'HOME=$$SYSUSERHOME' \ + ) > $(IOSRES)/rc + + (echo '[Bootstrap]' \ + && echo 'BRAND_BASE_DIR=file://$$APP_DATA_DIR' \ + && echo 'BRAND_INI_DIR=file:://$$APP_DATA_DIR' \ + && echo 'BRAND_SHARE_SUBDIR=$(LIBO_SHARE_FOLDER)' \ + && echo 'BRAND_SHARE_RESOURCE_SUBDIR=$(LIBO_SHARE_RESOURCE_FOLDER)' \ + && echo 'CONFIGURATION_LAYERS=xcsxcu:$${BRAND_BASE_DIR}/share/registry ' \ + 'res:$${BRAND_BASE_DIR}/share/registry' \ + && echo 'LO_LIB_DIR=file://$$APP_DATA_DIR/lib/' \ + && echo 'UNO_TYPES=file://$$APP_DATA_DIR/udkapi.rdb ' \ + 'file://$$APP_DATA_DIR/offapi.rdb' \ + && echo 'UNO_SERVICES=file://$$APP_DATA_DIR/services.rdb ' \ + 'file://$$APP_DATA_DIR/services/services.rdb' \ + && echo 'OSL_SOCKET_PATH=$$APP_DATA_DIR/cache' \ + ) > $(IOSRES)/fundamentalrc; + + echo '[Bootstrap]' > $(IOSRES)/unorc + + # bootstraprc must be in $BRAND_BASE_DIR/program + (echo '[Bootstrap]' \ + && echo 'InstallMode=<installmode>' \ + && echo "ProductKey=LibreOffice $(PRODUCTVERSION)" \ + && echo 'UserInstallation=$$SYSUSERHOME' \ + ) > $(IOSRES)/program/bootstraprc + + (echo '[Version]' \ + && echo 'AllLanguages=en-US' \ + && echo "buildid=$(shell git -C $(SRCDIR) log -1 --format=%H)" \ + ) > $(IOSRES)/program/versionrc + + $(SRCDIR)/bin/lo-all-static-libs | sed -e 's/ /\ +/g' >$(IOSGEN)/ios-all-static-libs.list + +#- clean ios ----------------------------------------------------------------- +$(call gb_CustomTarget_get_clean_target,ios/iOS_setup): + $(call gb_Output_announce,$(subst $(WORKDIR)/Clean/,,$@),$(false),ENV,2) + rm -rf $(IOSRES)/* $(IOSGEN)/native-code.h $(IOSGEN) + +# vim: set noet sw=4 ts=4: diff --git a/ios/Makefile b/ios/Makefile new file mode 100644 index 000000000..0c6f47b17 --- /dev/null +++ b/ios/Makefile @@ -0,0 +1,13 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST)))) + +include $(module_directory)/../solenv/gbuild/partial_build.mk + +# vim: set noet sw=4 ts=4: diff --git a/ios/Module_ios.mk b/ios/Module_ios.mk new file mode 100644 index 000000000..4f88bc4e9 --- /dev/null +++ b/ios/Module_ios.mk @@ -0,0 +1,19 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +$(eval $(call gb_Module_Module,ios)) + +ifeq ($(OS),iOS) + +$(eval $(call gb_Module_add_targets,ios,\ + CustomTarget_iOS_setup \ +)) + +endif + +# vim: set noet sw=4 ts=4: diff --git a/ios/README.md b/ios/README.md new file mode 100644 index 000000000..81d89ed82 --- /dev/null +++ b/ios/README.md @@ -0,0 +1,3 @@ +# LibreOffice for iOS + +LibreOffice for iOS diff --git a/ios/UnitTest/UnitTest.xcodeproj/project.pbxproj b/ios/UnitTest/UnitTest.xcodeproj/project.pbxproj new file mode 100644 index 000000000..398007d9d --- /dev/null +++ b/ios/UnitTest/UnitTest.xcodeproj/project.pbxproj @@ -0,0 +1,810 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 50; + objects = { + +/* Begin PBXBuildFile section */ + BE39ADD7215D5470000B0244 /* test.odt in Resources */ = {isa = PBXBuildFile; fileRef = BE39ADD6215D5470000B0244 /* test.odt */; }; + BE39ADEF215D5AA4000B0244 /* icudt65l.dat in Resources */ = {isa = PBXBuildFile; fileRef = BE39ADE0215D5AA3000B0244 /* icudt65l.dat */; }; + BE39ADF0215D5AA4000B0244 /* fundamentalrc in Resources */ = {isa = PBXBuildFile; fileRef = BE39ADE1215D5AA3000B0244 /* fundamentalrc */; }; + BE39ADF1215D5AA4000B0244 /* services in Resources */ = {isa = PBXBuildFile; fileRef = BE39ADE2215D5AA3000B0244 /* services */; }; + BE39ADF2215D5AA4000B0244 /* share in Resources */ = {isa = PBXBuildFile; fileRef = BE39ADE3215D5AA3000B0244 /* share */; }; + BE39ADF3215D5AA4000B0244 /* oovbaapi.rdb in Resources */ = {isa = PBXBuildFile; fileRef = BE39ADE4215D5AA3000B0244 /* oovbaapi.rdb */; }; + BE39ADF4215D5AA4000B0244 /* program in Resources */ = {isa = PBXBuildFile; fileRef = BE39ADE5215D5AA3000B0244 /* program */; }; + BE39ADF5215D5AA4000B0244 /* config in Resources */ = {isa = PBXBuildFile; fileRef = BE39ADE6215D5AA3000B0244 /* config */; }; + BE39ADF6215D5AA4000B0244 /* services.rdb in Resources */ = {isa = PBXBuildFile; fileRef = BE39ADE7215D5AA3000B0244 /* services.rdb */; }; + BE39ADF8215D5AA4000B0244 /* offapi.rdb in Resources */ = {isa = PBXBuildFile; fileRef = BE39ADE9215D5AA3000B0244 /* offapi.rdb */; }; + BE39ADF9215D5AA4000B0244 /* udkapi.rdb in Resources */ = {isa = PBXBuildFile; fileRef = BE39ADEA215D5AA3000B0244 /* udkapi.rdb */; }; + BE39ADFA215D5AA4000B0244 /* rc in Resources */ = {isa = PBXBuildFile; fileRef = BE39ADEB215D5AA3000B0244 /* rc */; }; + BE39ADFC215D5AA4000B0244 /* unorc in Resources */ = {isa = PBXBuildFile; fileRef = BE39ADED215D5AA4000B0244 /* unorc */; }; + BE39ADFD215D5AA4000B0244 /* welcome.odt in Resources */ = {isa = PBXBuildFile; fileRef = BE39ADEE215D5AA4000B0244 /* welcome.odt */; }; + BE535616215D189A0068B3B7 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = BE535615215D189A0068B3B7 /* AppDelegate.m */; }; + BE535619215D189A0068B3B7 /* ViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = BE535618215D189A0068B3B7 /* ViewController.mm */; }; + BE53561C215D189A0068B3B7 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = BE53561A215D189A0068B3B7 /* Main.storyboard */; }; + BE53561E215D189E0068B3B7 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = BE53561D215D189E0068B3B7 /* Assets.xcassets */; }; + BE535621215D189E0068B3B7 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = BE53561F215D189E0068B3B7 /* LaunchScreen.storyboard */; }; + BE535624215D189E0068B3B7 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = BE535623215D189E0068B3B7 /* main.m */; }; + BE93D41D216B4ECA007A39F4 /* MobileCoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BE93D41B216B378E007A39F4 /* MobileCoreServices.framework */; }; + BEA1A6FE215D1D9700A9323B /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = BEA1A6FD215D1D9700A9323B /* libz.tbd */; }; + BEA1A700215D1D9F00A9323B /* libiconv.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = BEA1A6FF215D1D9F00A9323B /* libiconv.tbd */; }; +/* End PBXBuildFile section */ + +/* Begin PBXFileReference section */ + BE39ADD6215D5470000B0244 /* test.odt */ = {isa = PBXFileReference; lastKnownFileType = file; name = test.odt; path = ../../../../odk/examples/cpp/DocumentLoader/test.odt; sourceTree = "<group>"; }; + BE39ADE0215D5AA3000B0244 /* icudt65l.dat */ = {isa = PBXFileReference; lastKnownFileType = file; name = icudt65l.dat; path = ../../../../workdir/CustomTarget/ios/resources/icudt65l.dat; sourceTree = "<group>"; }; + BE39ADE1215D5AA3000B0244 /* fundamentalrc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = fundamentalrc; path = ../../../../workdir/CustomTarget/ios/resources/fundamentalrc; sourceTree = "<group>"; }; + BE39ADE2215D5AA3000B0244 /* services */ = {isa = PBXFileReference; lastKnownFileType = folder; name = services; path = ../../../../workdir/CustomTarget/ios/resources/services; sourceTree = "<group>"; }; + BE39ADE3215D5AA3000B0244 /* share */ = {isa = PBXFileReference; lastKnownFileType = folder; name = share; path = ../../../../workdir/CustomTarget/ios/resources/share; sourceTree = "<group>"; }; + BE39ADE4215D5AA3000B0244 /* oovbaapi.rdb */ = {isa = PBXFileReference; lastKnownFileType = file; name = oovbaapi.rdb; path = ../../../../workdir/CustomTarget/ios/resources/oovbaapi.rdb; sourceTree = "<group>"; }; + BE39ADE5215D5AA3000B0244 /* program */ = {isa = PBXFileReference; lastKnownFileType = folder; name = program; path = ../../../../workdir/CustomTarget/ios/resources/program; sourceTree = "<group>"; }; + BE39ADE6215D5AA3000B0244 /* config */ = {isa = PBXFileReference; lastKnownFileType = folder; name = config; path = ../../../../workdir/CustomTarget/ios/resources/config; sourceTree = "<group>"; }; + BE39ADE7215D5AA3000B0244 /* services.rdb */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; name = services.rdb; path = ../../../../workdir/CustomTarget/ios/resources/services.rdb; sourceTree = "<group>"; }; + BE39ADE9215D5AA3000B0244 /* offapi.rdb */ = {isa = PBXFileReference; lastKnownFileType = file; name = offapi.rdb; path = ../../../../workdir/CustomTarget/ios/resources/offapi.rdb; sourceTree = "<group>"; }; + BE39ADEA215D5AA3000B0244 /* udkapi.rdb */ = {isa = PBXFileReference; lastKnownFileType = file; name = udkapi.rdb; path = ../../../../workdir/CustomTarget/ios/resources/udkapi.rdb; sourceTree = "<group>"; }; + BE39ADEB215D5AA3000B0244 /* rc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = rc; path = ../../../../workdir/CustomTarget/ios/resources/rc; sourceTree = "<group>"; }; + BE39ADED215D5AA4000B0244 /* unorc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = unorc; path = ../../../../workdir/CustomTarget/ios/resources/unorc; sourceTree = "<group>"; }; + BE39ADEE215D5AA4000B0244 /* welcome.odt */ = {isa = PBXFileReference; lastKnownFileType = file; name = welcome.odt; path = ../../../../workdir/CustomTarget/ios/resources/welcome.odt; sourceTree = "<group>"; }; + BE535611215D189A0068B3B7 /* UnitTest.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = UnitTest.app; sourceTree = BUILT_PRODUCTS_DIR; }; + BE535614215D189A0068B3B7 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; }; + BE535615215D189A0068B3B7 /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; }; + BE535617215D189A0068B3B7 /* ViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ViewController.h; sourceTree = "<group>"; }; + BE535618215D189A0068B3B7 /* ViewController.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = ViewController.mm; sourceTree = "<group>"; }; + BE53561B215D189A0068B3B7 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; }; + BE53561D215D189E0068B3B7 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; }; + BE535620215D189E0068B3B7 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; }; + BE535622215D189E0068B3B7 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; }; + BE535623215D189E0068B3B7 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; }; + BE93D41B216B378E007A39F4 /* MobileCoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MobileCoreServices.framework; path = System/Library/Frameworks/MobileCoreServices.framework; sourceTree = SDKROOT; }; + BEA1A6FD215D1D9700A9323B /* libz.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libz.tbd; path = usr/lib/libz.tbd; sourceTree = SDKROOT; }; + BEA1A6FF215D1D9F00A9323B /* libiconv.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libiconv.tbd; path = usr/lib/libiconv.tbd; sourceTree = SDKROOT; }; + BEA20D2C2163C2570032F67B /* salgdiutils.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = salgdiutils.cxx; path = ../../vcl/quartz/salgdiutils.cxx; sourceTree = "<group>"; }; + BEA20D2D2163C2570032F67B /* ctfonts.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ctfonts.cxx; path = ../../vcl/quartz/ctfonts.cxx; sourceTree = "<group>"; }; + BEA20D2E2163C2570032F67B /* utils.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = utils.cxx; path = ../../vcl/quartz/utils.cxx; sourceTree = "<group>"; }; + BEA20D2F2163C2570032F67B /* salvd.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = salvd.cxx; path = ../../vcl/quartz/salvd.cxx; sourceTree = "<group>"; }; + BEA20D302163C2570032F67B /* salgdicommon.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = salgdicommon.cxx; path = ../../vcl/quartz/salgdicommon.cxx; sourceTree = "<group>"; }; + BEA20D312163C2570032F67B /* salbmp.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = salbmp.cxx; path = ../../vcl/quartz/salbmp.cxx; sourceTree = "<group>"; }; + BEA20D322163C2570032F67B /* salgdi.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = salgdi.cxx; path = ../../vcl/quartz/salgdi.cxx; sourceTree = "<group>"; }; + BEA20D372164BAB80032F67B /* salusereventlist.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = salusereventlist.cxx; path = ../../vcl/source/app/salusereventlist.cxx; sourceTree = "<group>"; }; + BEA20D382164BAB80032F67B /* dbggui.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = dbggui.cxx; path = ../../vcl/source/app/dbggui.cxx; sourceTree = "<group>"; }; + BEA20D392164BAB80032F67B /* IconThemeInfo.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = IconThemeInfo.cxx; path = ../../vcl/source/app/IconThemeInfo.cxx; sourceTree = "<group>"; }; + BEA20D3A2164BAB80032F67B /* timer.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = timer.cxx; path = ../../vcl/source/app/timer.cxx; sourceTree = "<group>"; }; + BEA20D3B2164BAB80032F67B /* customweld.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = customweld.cxx; path = ../../vcl/source/app/customweld.cxx; sourceTree = "<group>"; }; + BEA20D3C2164BAB80032F67B /* vclevent.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = vclevent.cxx; path = ../../vcl/source/app/vclevent.cxx; sourceTree = "<group>"; }; + BEA20D3D2164BAB80032F67B /* settings.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = settings.cxx; path = ../../vcl/source/app/settings.cxx; sourceTree = "<group>"; }; + BEA20D3E2164BAB80032F67B /* salplug.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = salplug.cxx; path = ../../vcl/source/app/salplug.cxx; sourceTree = "<group>"; }; + BEA20D3F2164BAB80032F67B /* i18nhelp.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = i18nhelp.cxx; path = ../../vcl/source/app/i18nhelp.cxx; sourceTree = "<group>"; }; + BEA20D402164BAB80032F67B /* sound.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = sound.cxx; path = ../../vcl/source/app/sound.cxx; sourceTree = "<group>"; }; + BEA20D412164BAB80032F67B /* svapp.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = svapp.cxx; path = ../../vcl/source/app/svapp.cxx; sourceTree = "<group>"; }; + BEA20D422164BAB80032F67B /* idle.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = idle.cxx; path = ../../vcl/source/app/idle.cxx; sourceTree = "<group>"; }; + BEA20D432164BAB80032F67B /* help.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = help.cxx; path = ../../vcl/source/app/help.cxx; sourceTree = "<group>"; }; + BEA20D442164BAB80032F67B /* IconThemeSelector.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = IconThemeSelector.cxx; path = ../../vcl/source/app/IconThemeSelector.cxx; sourceTree = "<group>"; }; + BEA20D452164BAB80032F67B /* brand.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = brand.cxx; path = ../../vcl/source/app/brand.cxx; sourceTree = "<group>"; }; + BEA20D462164BAB80032F67B /* IconThemeScanner.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = IconThemeScanner.cxx; path = ../../vcl/source/app/IconThemeScanner.cxx; sourceTree = "<group>"; }; + BEA20D472164BAB80032F67B /* session.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = session.cxx; path = ../../vcl/source/app/session.cxx; sourceTree = "<group>"; }; + BEA20D482164BAB80032F67B /* unohelp.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = unohelp.cxx; path = ../../vcl/source/app/unohelp.cxx; sourceTree = "<group>"; }; + BEA20D492164BAB80032F67B /* svdata.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = svdata.cxx; path = ../../vcl/source/app/svdata.cxx; sourceTree = "<group>"; }; + BEA20D4A2164BAB80032F67B /* dndhelp.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = dndhelp.cxx; path = ../../vcl/source/app/dndhelp.cxx; sourceTree = "<group>"; }; + BEA20D4B2164BAB80032F67B /* salvtables.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = salvtables.cxx; path = ../../vcl/source/app/salvtables.cxx; sourceTree = "<group>"; }; + BEA20D4C2164BAB80032F67B /* scheduler.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = scheduler.cxx; path = ../../vcl/source/app/scheduler.cxx; sourceTree = "<group>"; }; + BEA20D4D2164BAB80032F67B /* ITiledRenderable.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ITiledRenderable.cxx; path = ../../vcl/source/app/ITiledRenderable.cxx; sourceTree = "<group>"; }; + BEA20D4E2164BAB80032F67B /* stdtext.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = stdtext.cxx; path = ../../vcl/source/app/stdtext.cxx; sourceTree = "<group>"; }; + BEA20D4F2164BAB80032F67B /* unohelp2.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = unohelp2.cxx; path = ../../vcl/source/app/unohelp2.cxx; sourceTree = "<group>"; }; + BEA20D502164BAB80032F67B /* svmain.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = svmain.cxx; path = ../../vcl/source/app/svmain.cxx; sourceTree = "<group>"; }; + BEA20D522164BB0D0032F67B /* iosinst.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = iosinst.cxx; path = ../../vcl/ios/iosinst.cxx; sourceTree = "<group>"; }; + BEA20D532164BB0E0032F67B /* dummies.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = dummies.cxx; path = ../../vcl/ios/dummies.cxx; sourceTree = "<group>"; }; + BEA20D652166596F0032F67B /* svpvd.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = svpvd.cxx; path = ../../vcl/headless/svpvd.cxx; sourceTree = "<group>"; }; + BEA20D662166596F0032F67B /* svpframe.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = svpframe.cxx; path = ../../vcl/headless/svpframe.cxx; sourceTree = "<group>"; }; + BEA20D672166596F0032F67B /* svpbmp.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = svpbmp.cxx; path = ../../vcl/headless/svpbmp.cxx; sourceTree = "<group>"; }; + BEA20D682166596F0032F67B /* svpcairotextrender.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = svpcairotextrender.cxx; path = ../../vcl/headless/svpcairotextrender.cxx; sourceTree = "<group>"; }; + BEA20D692166596F0032F67B /* svpgdi.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = svpgdi.cxx; path = ../../vcl/headless/svpgdi.cxx; sourceTree = "<group>"; }; + BEA20D6A2166596F0032F67B /* svpglyphcache.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = svpglyphcache.cxx; path = ../../vcl/headless/svpglyphcache.cxx; sourceTree = "<group>"; }; + BEA20D6B2166596F0032F67B /* svpinst.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = svpinst.cxx; path = ../../vcl/headless/svpinst.cxx; sourceTree = "<group>"; }; + BEA20D6C2166596F0032F67B /* svptext.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = svptext.cxx; path = ../../vcl/headless/svptext.cxx; sourceTree = "<group>"; }; + BEA20D6D2166596F0032F67B /* headlessinst.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = headlessinst.cxx; path = ../../vcl/headless/headlessinst.cxx; sourceTree = "<group>"; }; + BEA20D6E2166596F0032F67B /* svpdata.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = svpdata.cxx; path = ../../vcl/headless/svpdata.cxx; sourceTree = "<group>"; }; + BEA20D6F2166596F0032F67B /* svpdummies.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = svpdummies.cxx; path = ../../vcl/headless/svpdummies.cxx; sourceTree = "<group>"; }; + BEA20D702166596F0032F67B /* svpprn.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = svpprn.cxx; path = ../../vcl/headless/svpprn.cxx; sourceTree = "<group>"; }; + BEA20DC221678BB60032F67B /* lokcharthelper.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = lokcharthelper.cxx; path = ../../sfx2/source/view/lokcharthelper.cxx; sourceTree = "<group>"; }; + BEA20DC4216797C00032F67B /* pdffontcache.hxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; name = pdffontcache.hxx; path = ../../vcl/source/gdi/pdffontcache.hxx; sourceTree = "<group>"; }; + BEA20DC5216797C00032F67B /* impgraph.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = impgraph.cxx; path = ../../vcl/source/gdi/impgraph.cxx; sourceTree = "<group>"; }; + BEA20DC6216797C00032F67B /* base14.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = base14.cxx; path = ../../vcl/source/gdi/base14.cxx; sourceTree = "<group>"; }; + BEA20DC7216797C00032F67B /* bmpfast.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = bmpfast.cxx; path = ../../vcl/source/gdi/bmpfast.cxx; sourceTree = "<group>"; }; + BEA20DC8216797C00032F67B /* vectorgraphicdata.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = vectorgraphicdata.cxx; path = ../../vcl/source/gdi/vectorgraphicdata.cxx; sourceTree = "<group>"; }; + BEA20DC9216797C00032F67B /* pdfwriter_impl2.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = pdfwriter_impl2.cxx; path = ../../vcl/source/gdi/pdfwriter_impl2.cxx; sourceTree = "<group>"; }; + BEA20DCA216797C00032F67B /* mapmod.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = mapmod.cxx; path = ../../vcl/source/gdi/mapmod.cxx; sourceTree = "<group>"; }; + BEA20DCB216797C00032F67B /* bitmap3.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = bitmap3.cxx; path = ../../vcl/source/gdi/bitmap3.cxx; sourceTree = "<group>"; }; + BEA20DCC216797C00032F67B /* pdfwriter.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = pdfwriter.cxx; path = ../../vcl/source/gdi/pdfwriter.cxx; sourceTree = "<group>"; }; + BEA20DCD216797C00032F67B /* salmisc.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = salmisc.cxx; path = ../../vcl/source/gdi/salmisc.cxx; sourceTree = "<group>"; }; + BEA20DCE216797C00032F67B /* impvect.hxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; name = impvect.hxx; path = ../../vcl/source/gdi/impvect.hxx; sourceTree = "<group>"; }; + BEA20DCF216797C00032F67B /* oldprintadaptor.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = oldprintadaptor.cxx; path = ../../vcl/source/gdi/oldprintadaptor.cxx; sourceTree = "<group>"; }; + BEA20DD0216797C00032F67B /* extoutdevdata.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = extoutdevdata.cxx; path = ../../vcl/source/gdi/extoutdevdata.cxx; sourceTree = "<group>"; }; + BEA20DD1216797C10032F67B /* cvtgrf.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = cvtgrf.cxx; path = ../../vcl/source/gdi/cvtgrf.cxx; sourceTree = "<group>"; }; + BEA20DD2216797C10032F67B /* graphictools.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = graphictools.cxx; path = ../../vcl/source/gdi/graphictools.cxx; sourceTree = "<group>"; }; + BEA20DD3216797C10032F67B /* gdimetafiletools.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = gdimetafiletools.cxx; path = ../../vcl/source/gdi/gdimetafiletools.cxx; sourceTree = "<group>"; }; + BEA20DD4216797C10032F67B /* genVerticalOrientationData.pl */ = {isa = PBXFileReference; lastKnownFileType = text.script.perl; name = genVerticalOrientationData.pl; path = ../../vcl/source/gdi/genVerticalOrientationData.pl; sourceTree = "<group>"; }; + BEA20DD5216797C10032F67B /* bmpacc3.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = bmpacc3.cxx; path = ../../vcl/source/gdi/bmpacc3.cxx; sourceTree = "<group>"; }; + BEA20DD6216797C10032F67B /* print.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = print.cxx; path = ../../vcl/source/gdi/print.cxx; sourceTree = "<group>"; }; + BEA20DD7216797C10032F67B /* configsettings.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = configsettings.cxx; path = ../../vcl/source/gdi/configsettings.cxx; sourceTree = "<group>"; }; + BEA20DD8216797C10032F67B /* print3.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = print3.cxx; path = ../../vcl/source/gdi/print3.cxx; sourceTree = "<group>"; }; + BEA20DD9216797C10032F67B /* graph.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = graph.cxx; path = ../../vcl/source/gdi/graph.cxx; sourceTree = "<group>"; }; + BEA20DDA216797C10032F67B /* octree.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = octree.cxx; path = ../../vcl/source/gdi/octree.cxx; sourceTree = "<group>"; }; + BEA20DDB216797C10032F67B /* scrptrun.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = scrptrun.cxx; path = ../../vcl/source/gdi/scrptrun.cxx; sourceTree = "<group>"; }; + BEA20DDC216797C10032F67B /* regionband.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = regionband.cxx; path = ../../vcl/source/gdi/regionband.cxx; sourceTree = "<group>"; }; + BEA20DDD216797C10032F67B /* gdimtf.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = gdimtf.cxx; path = ../../vcl/source/gdi/gdimtf.cxx; sourceTree = "<group>"; }; + BEA20DDE216797C10032F67B /* pdfextoutdevdata.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = pdfextoutdevdata.cxx; path = ../../vcl/source/gdi/pdfextoutdevdata.cxx; sourceTree = "<group>"; }; + BEA20DDF216797C10032F67B /* pdffontcache.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = pdffontcache.cxx; path = ../../vcl/source/gdi/pdffontcache.cxx; sourceTree = "<group>"; }; + BEA20DE0216797C10032F67B /* textlayout.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = textlayout.cxx; path = ../../vcl/source/gdi/textlayout.cxx; sourceTree = "<group>"; }; + BEA20DE1216797C10032F67B /* virdev.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = virdev.cxx; path = ../../vcl/source/gdi/virdev.cxx; sourceTree = "<group>"; }; + BEA20DE2216797C10032F67B /* embeddedfontshelper.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = embeddedfontshelper.cxx; path = ../../vcl/source/gdi/embeddedfontshelper.cxx; sourceTree = "<group>"; }; + BEA20DE3216797C10032F67B /* salgdiimpl.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = salgdiimpl.cxx; path = ../../vcl/source/gdi/salgdiimpl.cxx; sourceTree = "<group>"; }; + BEA20DE4216797C10032F67B /* gfxlink.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = gfxlink.cxx; path = ../../vcl/source/gdi/gfxlink.cxx; sourceTree = "<group>"; }; + BEA20DE5216797C10032F67B /* alpha.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = alpha.cxx; path = ../../vcl/source/gdi/alpha.cxx; sourceTree = "<group>"; }; + BEA20DE6216797C10032F67B /* hatch.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = hatch.cxx; path = ../../vcl/source/gdi/hatch.cxx; sourceTree = "<group>"; }; + BEA20DE7216797C10032F67B /* svmconverter.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = svmconverter.cxx; path = ../../vcl/source/gdi/svmconverter.cxx; sourceTree = "<group>"; }; + BEA20DE8216797C10032F67B /* pngwrite.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = pngwrite.cxx; path = ../../vcl/source/gdi/pngwrite.cxx; sourceTree = "<group>"; }; + BEA20DE9216797C10032F67B /* gradient.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = gradient.cxx; path = ../../vcl/source/gdi/gradient.cxx; sourceTree = "<group>"; }; + BEA20DEA216797C10032F67B /* pngread.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = pngread.cxx; path = ../../vcl/source/gdi/pngread.cxx; sourceTree = "<group>"; }; + BEA20DEB216797C10032F67B /* salgdilayout.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = salgdilayout.cxx; path = ../../vcl/source/gdi/salgdilayout.cxx; sourceTree = "<group>"; }; + BEA20DEC216797C20032F67B /* bitmapex.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = bitmapex.cxx; path = ../../vcl/source/gdi/bitmapex.cxx; sourceTree = "<group>"; }; + BEA20DED216797C20032F67B /* lineinfo.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = lineinfo.cxx; path = ../../vcl/source/gdi/lineinfo.cxx; sourceTree = "<group>"; }; + BEA20DEE216797C20032F67B /* animate.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = animate.cxx; path = ../../vcl/source/gdi/animate.cxx; sourceTree = "<group>"; }; + BEA20DEF216797C20032F67B /* bmpacc.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = bmpacc.cxx; path = ../../vcl/source/gdi/bmpacc.cxx; sourceTree = "<group>"; }; + BEA20DF0216797C20032F67B /* pdfwriter_impl.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = pdfwriter_impl.cxx; path = ../../vcl/source/gdi/pdfwriter_impl.cxx; sourceTree = "<group>"; }; + BEA20DF1216797C20032F67B /* wall.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = wall.cxx; path = ../../vcl/source/gdi/wall.cxx; sourceTree = "<group>"; }; + BEA20DF2216797C20032F67B /* impvect.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = impvect.cxx; path = ../../vcl/source/gdi/impvect.cxx; sourceTree = "<group>"; }; + BEA20DF3216797C20032F67B /* impanmvw.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = impanmvw.cxx; path = ../../vcl/source/gdi/impanmvw.cxx; sourceTree = "<group>"; }; + BEA20DF4216797C20032F67B /* print2.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = print2.cxx; path = ../../vcl/source/gdi/print2.cxx; sourceTree = "<group>"; }; + BEA20DF5216797C20032F67B /* metaact.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = metaact.cxx; path = ../../vcl/source/gdi/metaact.cxx; sourceTree = "<group>"; }; + BEA20DF6216797C20032F67B /* CommonSalLayout.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = CommonSalLayout.cxx; path = ../../vcl/source/gdi/CommonSalLayout.cxx; sourceTree = "<group>"; }; + BEA20DF7216797C20032F67B /* pdfwriter_impl.hxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; name = pdfwriter_impl.hxx; path = ../../vcl/source/gdi/pdfwriter_impl.hxx; sourceTree = "<group>"; }; + BEA20DF8216797C20032F67B /* dibtools.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = dibtools.cxx; path = ../../vcl/source/gdi/dibtools.cxx; sourceTree = "<group>"; }; + BEA20DF9216797C20032F67B /* sallayout.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = sallayout.cxx; path = ../../vcl/source/gdi/sallayout.cxx; sourceTree = "<group>"; }; + BEA20DFA216797C20032F67B /* bmpacc2.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = bmpacc2.cxx; path = ../../vcl/source/gdi/bmpacc2.cxx; sourceTree = "<group>"; }; + BEA20DFB216797C20032F67B /* regband.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = regband.cxx; path = ../../vcl/source/gdi/regband.cxx; sourceTree = "<group>"; }; + BEA20DFC216797C20032F67B /* jobset.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = jobset.cxx; path = ../../vcl/source/gdi/jobset.cxx; sourceTree = "<group>"; }; + BEA20DFD216797C20032F67B /* VerticalOrientationData.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = VerticalOrientationData.cxx; path = ../../vcl/source/gdi/VerticalOrientationData.cxx; sourceTree = "<group>"; }; + BEA20DFE216797C20032F67B /* region.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = region.cxx; path = ../../vcl/source/gdi/region.cxx; sourceTree = "<group>"; }; + BEA20DFF216797C20032F67B /* salnativewidgets-none.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "salnativewidgets-none.cxx"; path = "../../vcl/source/gdi/salnativewidgets-none.cxx"; sourceTree = "<group>"; }; + BEA20E012167A47B0032F67B /* gradient.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = gradient.cxx; path = ../../vcl/source/outdev/gradient.cxx; sourceTree = "<group>"; }; + BEA20E022167A47C0032F67B /* polygon.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = polygon.cxx; path = ../../vcl/source/outdev/polygon.cxx; sourceTree = "<group>"; }; + BEA20E032167A47C0032F67B /* text.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = text.cxx; path = ../../vcl/source/outdev/text.cxx; sourceTree = "<group>"; }; + BEA20E042167A47C0032F67B /* outdevstate.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = outdevstate.cxx; path = ../../vcl/source/outdev/outdevstate.cxx; sourceTree = "<group>"; }; + BEA20E052167A47C0032F67B /* wallpaper.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = wallpaper.cxx; path = ../../vcl/source/outdev/wallpaper.cxx; sourceTree = "<group>"; }; + BEA20E062167A47C0032F67B /* line.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = line.cxx; path = ../../vcl/source/outdev/line.cxx; sourceTree = "<group>"; }; + BEA20E072167A47C0032F67B /* curvedshapes.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = curvedshapes.cxx; path = ../../vcl/source/outdev/curvedshapes.cxx; sourceTree = "<group>"; }; + BEA20E082167A47C0032F67B /* map.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = map.cxx; path = ../../vcl/source/outdev/map.cxx; sourceTree = "<group>"; }; + BEA20E092167A47C0032F67B /* clipping.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = clipping.cxx; path = ../../vcl/source/outdev/clipping.cxx; sourceTree = "<group>"; }; + BEA20E0A2167A47C0032F67B /* bitmap.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = bitmap.cxx; path = ../../vcl/source/outdev/bitmap.cxx; sourceTree = "<group>"; }; + BEA20E0B2167A47C0032F67B /* font.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = font.cxx; path = ../../vcl/source/outdev/font.cxx; sourceTree = "<group>"; }; + BEA20E0C2167A47C0032F67B /* hatch.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = hatch.cxx; path = ../../vcl/source/outdev/hatch.cxx; sourceTree = "<group>"; }; + BEA20E0D2167A47C0032F67B /* nativecontrols.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = nativecontrols.cxx; path = ../../vcl/source/outdev/nativecontrols.cxx; sourceTree = "<group>"; }; + BEA20E0E2167A47C0032F67B /* polyline.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = polyline.cxx; path = ../../vcl/source/outdev/polyline.cxx; sourceTree = "<group>"; }; + BEA20E0F2167A47C0032F67B /* rect.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = rect.cxx; path = ../../vcl/source/outdev/rect.cxx; sourceTree = "<group>"; }; + BEA20E102167A47C0032F67B /* outdevstatestack.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = outdevstatestack.cxx; path = ../../vcl/source/outdev/outdevstatestack.cxx; sourceTree = "<group>"; }; + BEA20E112167A47C0032F67B /* textline.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = textline.cxx; path = ../../vcl/source/outdev/textline.cxx; sourceTree = "<group>"; }; + BEA20E122167A47C0032F67B /* outdev.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = outdev.cxx; path = ../../vcl/source/outdev/outdev.cxx; sourceTree = "<group>"; }; + BEA20E132167A47C0032F67B /* transparent.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = transparent.cxx; path = ../../vcl/source/outdev/transparent.cxx; sourceTree = "<group>"; }; + BEA20E142167A47C0032F67B /* vclreferencebase.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = vclreferencebase.cxx; path = ../../vcl/source/outdev/vclreferencebase.cxx; sourceTree = "<group>"; }; + BEA20E152167A47C0032F67B /* mask.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = mask.cxx; path = ../../vcl/source/outdev/mask.cxx; sourceTree = "<group>"; }; + BEA20E162167A47C0032F67B /* pixel.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = pixel.cxx; path = ../../vcl/source/outdev/pixel.cxx; sourceTree = "<group>"; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + BE53560E215D189A0068B3B7 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BE93D41D216B4ECA007A39F4 /* MobileCoreServices.framework in Frameworks */, + BEA1A700215D1D9F00A9323B /* libiconv.tbd in Frameworks */, + BEA1A6FE215D1D9700A9323B /* libz.tbd in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + BE39ADD5215D5448000B0244 /* Resources */ = { + isa = PBXGroup; + children = ( + BE39ADE6215D5AA3000B0244 /* config */, + BE39ADE1215D5AA3000B0244 /* fundamentalrc */, + BE39ADE0215D5AA3000B0244 /* icudt65l.dat */, + BE39ADE9215D5AA3000B0244 /* offapi.rdb */, + BE39ADE4215D5AA3000B0244 /* oovbaapi.rdb */, + BE39ADE5215D5AA3000B0244 /* program */, + BE39ADEB215D5AA3000B0244 /* rc */, + BE39ADE2215D5AA3000B0244 /* services */, + BE39ADE7215D5AA3000B0244 /* services.rdb */, + BE39ADE3215D5AA3000B0244 /* share */, + BE39ADEA215D5AA3000B0244 /* udkapi.rdb */, + BE39ADED215D5AA4000B0244 /* unorc */, + BE39ADEE215D5AA4000B0244 /* welcome.odt */, + BE39ADD6215D5470000B0244 /* test.odt */, + ); + path = Resources; + sourceTree = "<group>"; + }; + BE535608215D189A0068B3B7 = { + isa = PBXGroup; + children = ( + BEA20D2A2163C2210032F67B /* Core */, + BE535613215D189A0068B3B7 /* UnitTest */, + BE535612215D189A0068B3B7 /* Products */, + BEA1A6FC215D1D9700A9323B /* Frameworks */, + ); + sourceTree = "<group>"; + }; + BE535612215D189A0068B3B7 /* Products */ = { + isa = PBXGroup; + children = ( + BE535611215D189A0068B3B7 /* UnitTest.app */, + ); + name = Products; + sourceTree = "<group>"; + }; + BE535613215D189A0068B3B7 /* UnitTest */ = { + isa = PBXGroup; + children = ( + BE39ADD5215D5448000B0244 /* Resources */, + BE535614215D189A0068B3B7 /* AppDelegate.h */, + BE535615215D189A0068B3B7 /* AppDelegate.m */, + BE535617215D189A0068B3B7 /* ViewController.h */, + BE535618215D189A0068B3B7 /* ViewController.mm */, + BE53561A215D189A0068B3B7 /* Main.storyboard */, + BE53561D215D189E0068B3B7 /* Assets.xcassets */, + BE53561F215D189E0068B3B7 /* LaunchScreen.storyboard */, + BE535622215D189E0068B3B7 /* Info.plist */, + BE535623215D189E0068B3B7 /* main.m */, + ); + path = UnitTest; + sourceTree = "<group>"; + }; + BEA1A6FC215D1D9700A9323B /* Frameworks */ = { + isa = PBXGroup; + children = ( + BE93D41B216B378E007A39F4 /* MobileCoreServices.framework */, + BEA1A6FF215D1D9F00A9323B /* libiconv.tbd */, + BEA1A6FD215D1D9700A9323B /* libz.tbd */, + ); + name = Frameworks; + sourceTree = "<group>"; + }; + BEA20D2A2163C2210032F67B /* Core */ = { + isa = PBXGroup; + children = ( + BEA20DC021678B960032F67B /* sfx2 */, + BEA20D2B2163C2360032F67B /* vcl */, + ); + name = Core; + sourceTree = "<group>"; + }; + BEA20D2B2163C2360032F67B /* vcl */ = { + isa = PBXGroup; + children = ( + BEA20D342164BA8B0032F67B /* app */, + BEA20DC3216797A00032F67B /* gdi */, + BEA20D642166594D0032F67B /* headless */, + BEA20D512164BAF00032F67B /* ios */, + BEA20E002167A4550032F67B /* outdev */, + BEA20D332164BA7C0032F67B /* quartz */, + ); + name = vcl; + sourceTree = "<group>"; + }; + BEA20D332164BA7C0032F67B /* quartz */ = { + isa = PBXGroup; + children = ( + BEA20D2D2163C2570032F67B /* ctfonts.cxx */, + BEA20D312163C2570032F67B /* salbmp.cxx */, + BEA20D322163C2570032F67B /* salgdi.cxx */, + BEA20D302163C2570032F67B /* salgdicommon.cxx */, + BEA20D2C2163C2570032F67B /* salgdiutils.cxx */, + BEA20D2F2163C2570032F67B /* salvd.cxx */, + BEA20D2E2163C2570032F67B /* utils.cxx */, + ); + name = quartz; + sourceTree = "<group>"; + }; + BEA20D342164BA8B0032F67B /* app */ = { + isa = PBXGroup; + children = ( + BEA20D452164BAB80032F67B /* brand.cxx */, + BEA20D3B2164BAB80032F67B /* customweld.cxx */, + BEA20D382164BAB80032F67B /* dbggui.cxx */, + BEA20D4A2164BAB80032F67B /* dndhelp.cxx */, + BEA20D432164BAB80032F67B /* help.cxx */, + BEA20D3F2164BAB80032F67B /* i18nhelp.cxx */, + BEA20D392164BAB80032F67B /* IconThemeInfo.cxx */, + BEA20D462164BAB80032F67B /* IconThemeScanner.cxx */, + BEA20D442164BAB80032F67B /* IconThemeSelector.cxx */, + BEA20D422164BAB80032F67B /* idle.cxx */, + BEA20D4D2164BAB80032F67B /* ITiledRenderable.cxx */, + BEA20D3E2164BAB80032F67B /* salplug.cxx */, + BEA20D372164BAB80032F67B /* salusereventlist.cxx */, + BEA20D4B2164BAB80032F67B /* salvtables.cxx */, + BEA20D4C2164BAB80032F67B /* scheduler.cxx */, + BEA20D472164BAB80032F67B /* session.cxx */, + BEA20D3D2164BAB80032F67B /* settings.cxx */, + BEA20D402164BAB80032F67B /* sound.cxx */, + BEA20D4E2164BAB80032F67B /* stdtext.cxx */, + BEA20D412164BAB80032F67B /* svapp.cxx */, + BEA20D492164BAB80032F67B /* svdata.cxx */, + BEA20D502164BAB80032F67B /* svmain.cxx */, + BEA20D3A2164BAB80032F67B /* timer.cxx */, + BEA20D482164BAB80032F67B /* unohelp.cxx */, + BEA20D4F2164BAB80032F67B /* unohelp2.cxx */, + BEA20D3C2164BAB80032F67B /* vclevent.cxx */, + ); + name = app; + sourceTree = "<group>"; + }; + BEA20D512164BAF00032F67B /* ios */ = { + isa = PBXGroup; + children = ( + BEA20D532164BB0E0032F67B /* dummies.cxx */, + BEA20D522164BB0D0032F67B /* iosinst.cxx */, + ); + name = ios; + sourceTree = "<group>"; + }; + BEA20D642166594D0032F67B /* headless */ = { + isa = PBXGroup; + children = ( + BEA20D6D2166596F0032F67B /* headlessinst.cxx */, + BEA20D672166596F0032F67B /* svpbmp.cxx */, + BEA20D682166596F0032F67B /* svpcairotextrender.cxx */, + BEA20D6E2166596F0032F67B /* svpdata.cxx */, + BEA20D6F2166596F0032F67B /* svpdummies.cxx */, + BEA20D662166596F0032F67B /* svpframe.cxx */, + BEA20D692166596F0032F67B /* svpgdi.cxx */, + BEA20D6A2166596F0032F67B /* svpglyphcache.cxx */, + BEA20D6B2166596F0032F67B /* svpinst.cxx */, + BEA20D702166596F0032F67B /* svpprn.cxx */, + BEA20D6C2166596F0032F67B /* svptext.cxx */, + BEA20D652166596F0032F67B /* svpvd.cxx */, + ); + name = headless; + sourceTree = "<group>"; + }; + BEA20DC021678B960032F67B /* sfx2 */ = { + isa = PBXGroup; + children = ( + BEA20DC121678B9E0032F67B /* view */, + ); + name = sfx2; + sourceTree = "<group>"; + }; + BEA20DC121678B9E0032F67B /* view */ = { + isa = PBXGroup; + children = ( + BEA20DC221678BB60032F67B /* lokcharthelper.cxx */, + ); + name = view; + sourceTree = "<group>"; + }; + BEA20DC3216797A00032F67B /* gdi */ = { + isa = PBXGroup; + children = ( + BEA20DE5216797C10032F67B /* alpha.cxx */, + BEA20DEE216797C20032F67B /* animate.cxx */, + BEA20DC6216797C00032F67B /* base14.cxx */, + BEA20DCB216797C00032F67B /* bitmap3.cxx */, + BEA20DEC216797C20032F67B /* bitmapex.cxx */, + BEA20DEF216797C20032F67B /* bmpacc.cxx */, + BEA20DFA216797C20032F67B /* bmpacc2.cxx */, + BEA20DD5216797C10032F67B /* bmpacc3.cxx */, + BEA20DC7216797C00032F67B /* bmpfast.cxx */, + BEA20DF6216797C20032F67B /* CommonSalLayout.cxx */, + BEA20DD7216797C10032F67B /* configsettings.cxx */, + BEA20DD1216797C10032F67B /* cvtgrf.cxx */, + BEA20DF8216797C20032F67B /* dibtools.cxx */, + BEA20DE2216797C10032F67B /* embeddedfontshelper.cxx */, + BEA20DD0216797C00032F67B /* extoutdevdata.cxx */, + BEA20DD3216797C10032F67B /* gdimetafiletools.cxx */, + BEA20DDD216797C10032F67B /* gdimtf.cxx */, + BEA20DD4216797C10032F67B /* genVerticalOrientationData.pl */, + BEA20DE4216797C10032F67B /* gfxlink.cxx */, + BEA20DE9216797C10032F67B /* gradient.cxx */, + BEA20DD9216797C10032F67B /* graph.cxx */, + BEA20DD2216797C10032F67B /* graphictools.cxx */, + BEA20DE6216797C10032F67B /* hatch.cxx */, + BEA20DF3216797C20032F67B /* impanmvw.cxx */, + BEA20DC5216797C00032F67B /* impgraph.cxx */, + BEA20DF2216797C20032F67B /* impvect.cxx */, + BEA20DCE216797C00032F67B /* impvect.hxx */, + BEA20DFC216797C20032F67B /* jobset.cxx */, + BEA20DED216797C20032F67B /* lineinfo.cxx */, + BEA20DCA216797C00032F67B /* mapmod.cxx */, + BEA20DF5216797C20032F67B /* metaact.cxx */, + BEA20DDA216797C10032F67B /* octree.cxx */, + BEA20DCF216797C00032F67B /* oldprintadaptor.cxx */, + BEA20DDE216797C10032F67B /* pdfextoutdevdata.cxx */, + BEA20DDF216797C10032F67B /* pdffontcache.cxx */, + BEA20DC4216797C00032F67B /* pdffontcache.hxx */, + BEA20DF0216797C20032F67B /* pdfwriter_impl.cxx */, + BEA20DF7216797C20032F67B /* pdfwriter_impl.hxx */, + BEA20DC9216797C00032F67B /* pdfwriter_impl2.cxx */, + BEA20DCC216797C00032F67B /* pdfwriter.cxx */, + BEA20DEA216797C10032F67B /* pngread.cxx */, + BEA20DE8216797C10032F67B /* pngwrite.cxx */, + BEA20DD6216797C10032F67B /* print.cxx */, + BEA20DF4216797C20032F67B /* print2.cxx */, + BEA20DD8216797C10032F67B /* print3.cxx */, + BEA20DFB216797C20032F67B /* regband.cxx */, + BEA20DFE216797C20032F67B /* region.cxx */, + BEA20DDC216797C10032F67B /* regionband.cxx */, + BEA20DE3216797C10032F67B /* salgdiimpl.cxx */, + BEA20DEB216797C10032F67B /* salgdilayout.cxx */, + BEA20DF9216797C20032F67B /* sallayout.cxx */, + BEA20DCD216797C00032F67B /* salmisc.cxx */, + BEA20DFF216797C20032F67B /* salnativewidgets-none.cxx */, + BEA20DDB216797C10032F67B /* scrptrun.cxx */, + BEA20DE7216797C10032F67B /* svmconverter.cxx */, + BEA20DE0216797C10032F67B /* textlayout.cxx */, + BEA20DC8216797C00032F67B /* vectorgraphicdata.cxx */, + BEA20DFD216797C20032F67B /* VerticalOrientationData.cxx */, + BEA20DE1216797C10032F67B /* virdev.cxx */, + BEA20DF1216797C20032F67B /* wall.cxx */, + ); + name = gdi; + sourceTree = "<group>"; + }; + BEA20E002167A4550032F67B /* outdev */ = { + isa = PBXGroup; + children = ( + BEA20E0A2167A47C0032F67B /* bitmap.cxx */, + BEA20E092167A47C0032F67B /* clipping.cxx */, + BEA20E072167A47C0032F67B /* curvedshapes.cxx */, + BEA20E0B2167A47C0032F67B /* font.cxx */, + BEA20E012167A47B0032F67B /* gradient.cxx */, + BEA20E0C2167A47C0032F67B /* hatch.cxx */, + BEA20E062167A47C0032F67B /* line.cxx */, + BEA20E082167A47C0032F67B /* map.cxx */, + BEA20E152167A47C0032F67B /* mask.cxx */, + BEA20E0D2167A47C0032F67B /* nativecontrols.cxx */, + BEA20E122167A47C0032F67B /* outdev.cxx */, + BEA20E042167A47C0032F67B /* outdevstate.cxx */, + BEA20E102167A47C0032F67B /* outdevstatestack.cxx */, + BEA20E162167A47C0032F67B /* pixel.cxx */, + BEA20E022167A47C0032F67B /* polygon.cxx */, + BEA20E0E2167A47C0032F67B /* polyline.cxx */, + BEA20E0F2167A47C0032F67B /* rect.cxx */, + BEA20E032167A47C0032F67B /* text.cxx */, + BEA20E112167A47C0032F67B /* textline.cxx */, + BEA20E132167A47C0032F67B /* transparent.cxx */, + BEA20E142167A47C0032F67B /* vclreferencebase.cxx */, + BEA20E052167A47C0032F67B /* wallpaper.cxx */, + ); + name = outdev; + sourceTree = "<group>"; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + BE535610215D189A0068B3B7 /* UnitTest */ = { + isa = PBXNativeTarget; + buildConfigurationList = BE535627215D189E0068B3B7 /* Build configuration list for PBXNativeTarget "UnitTest" */; + buildPhases = ( + BE53560D215D189A0068B3B7 /* Sources */, + BE53560E215D189A0068B3B7 /* Frameworks */, + BE53560F215D189A0068B3B7 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = UnitTest; + productName = UnitTest; + productReference = BE535611215D189A0068B3B7 /* UnitTest.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + BE535609215D189A0068B3B7 /* Project object */ = { + isa = PBXProject; + attributes = { + LastUpgradeCheck = 1000; + ORGANIZATIONNAME = "Tor Lillqvist"; + TargetAttributes = { + BE535610215D189A0068B3B7 = { + CreatedOnToolsVersion = 10.0; + }; + }; + }; + buildConfigurationList = BE53560C215D189A0068B3B7 /* Build configuration list for PBXProject "UnitTest" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = BE535608215D189A0068B3B7; + productRefGroup = BE535612215D189A0068B3B7 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + BE535610215D189A0068B3B7 /* UnitTest */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + BE53560F215D189A0068B3B7 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BE39ADEF215D5AA4000B0244 /* icudt65l.dat in Resources */, + BE39ADF6215D5AA4000B0244 /* services.rdb in Resources */, + BE39ADF3215D5AA4000B0244 /* oovbaapi.rdb in Resources */, + BE39ADF8215D5AA4000B0244 /* offapi.rdb in Resources */, + BE535621215D189E0068B3B7 /* LaunchScreen.storyboard in Resources */, + BE39ADF4215D5AA4000B0244 /* program in Resources */, + BE39ADF5215D5AA4000B0244 /* config in Resources */, + BE39ADD7215D5470000B0244 /* test.odt in Resources */, + BE39ADFA215D5AA4000B0244 /* rc in Resources */, + BE39ADF2215D5AA4000B0244 /* share in Resources */, + BE39ADFD215D5AA4000B0244 /* welcome.odt in Resources */, + BE53561E215D189E0068B3B7 /* Assets.xcassets in Resources */, + BE39ADF1215D5AA4000B0244 /* services in Resources */, + BE39ADFC215D5AA4000B0244 /* unorc in Resources */, + BE53561C215D189A0068B3B7 /* Main.storyboard in Resources */, + BE39ADF9215D5AA4000B0244 /* udkapi.rdb in Resources */, + BE39ADF0215D5AA4000B0244 /* fundamentalrc in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + BE53560D215D189A0068B3B7 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BE535619215D189A0068B3B7 /* ViewController.mm in Sources */, + BE535624215D189E0068B3B7 /* main.m in Sources */, + BE535616215D189A0068B3B7 /* AppDelegate.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXVariantGroup section */ + BE53561A215D189A0068B3B7 /* Main.storyboard */ = { + isa = PBXVariantGroup; + children = ( + BE53561B215D189A0068B3B7 /* Base */, + ); + name = Main.storyboard; + sourceTree = "<group>"; + }; + BE53561F215D189E0068B3B7 /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + BE535620215D189E0068B3B7 /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = "<group>"; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + BE535625215D189E0068B3B7 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + LO_CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + LO_CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + }; + name = Debug; + }; + BE535626215D189E0068B3B7 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + LO_CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + LO_CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + SDKROOT = iphoneos; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + BE535628215D189E0068B3B7 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + LO_CLANG_CXX_LANGUAGE_STANDARD = "c++17"; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = J4FQ687VJK; + ENABLE_BITCODE = NO; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "DISABLE_DYNLOADING=1", + "LIBO_INTERNAL_ONLY=1", + "IOS=IOS", + "$(inherited)", + ); + HEADER_SEARCH_PATHS = ( + ../../include, + ../../vcl/inc, + ../../config_host, + ../../workdir/UnoApiHeadersTarget/udkapi/comprehensive, + ../../workdir/UnoApiHeadersTarget/offapi/comprehensive, + ../../workdir/CustomTarget/ios, + ../../workdir/UnpackedTarball/cppunit/include, + ../../workdir/UnpackedTarball/boost, + ); + INFOPLIST_FILE = UnitTest/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + OTHER_LDFLAGS = ( + "-filelist", + "../../workdir/CustomTarget/ios/ios-all-static-libs.list", + ); + PRODUCT_BUNDLE_IDENTIFIER = org.libreoffice.ios.UnitTest; + PRODUCT_NAME = "$(TARGET_NAME)"; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + BE535629215D189E0068B3B7 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + LO_CLANG_CXX_LANGUAGE_STANDARD = "c++17"; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = J4FQ687VJK; + ENABLE_BITCODE = NO; + GCC_PREPROCESSOR_DEFINITIONS = ( + "IOS=IOS", + "DISABLE_DYNLOADING=1", + "LIBO_INTERNAL_ONLY=1", + ); + HEADER_SEARCH_PATHS = ( + ../../include, + ../../vcl/inc, + ../../config_host, + ../../workdir/UnoApiHeadersTarget/udkapi/comprehensive, + ../../workdir/UnoApiHeadersTarget/offapi/comprehensive, + ../../workdir/CustomTarget/ios, + ../../workdir/UnpackedTarball/cppunit/include, + ../../workdir/UnpackedTarball/boost, + ); + INFOPLIST_FILE = UnitTest/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + OTHER_LDFLAGS = ( + "-filelist", + "../../workdir/CustomTarget/ios/ios-all-static-libs.list", + ); + PRODUCT_BUNDLE_IDENTIFIER = org.libreoffice.ios.UnitTest; + PRODUCT_NAME = "$(TARGET_NAME)"; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + BE53560C215D189A0068B3B7 /* Build configuration list for PBXProject "UnitTest" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + BE535625215D189E0068B3B7 /* Debug */, + BE535626215D189E0068B3B7 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + BE535627215D189E0068B3B7 /* Build configuration list for PBXNativeTarget "UnitTest" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + BE535628215D189E0068B3B7 /* Debug */, + BE535629215D189E0068B3B7 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = BE535609215D189A0068B3B7 /* Project object */; +} diff --git a/ios/UnitTest/UnitTest/AppDelegate.h b/ios/UnitTest/UnitTest/AppDelegate.h new file mode 100644 index 000000000..a0f962c9a --- /dev/null +++ b/ios/UnitTest/UnitTest/AppDelegate.h @@ -0,0 +1,16 @@ +/* -*- Mode: ObjC; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ + +#import <UIKit/UIKit.h> + +@interface AppDelegate : UIResponder <UIApplicationDelegate> + +@property(strong, nonatomic) UIWindow* window; + +@end diff --git a/ios/UnitTest/UnitTest/AppDelegate.m b/ios/UnitTest/UnitTest/AppDelegate.m new file mode 100644 index 000000000..56616ee77 --- /dev/null +++ b/ios/UnitTest/UnitTest/AppDelegate.m @@ -0,0 +1,52 @@ +/* -*- Mode: ObjC; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ + +#import "AppDelegate.h" + +@interface AppDelegate () + +@end + +@implementation AppDelegate + + +- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { + // Override point for customization after application launch. + return YES; +} + + +- (void)applicationWillResignActive:(UIApplication *)application { + // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. + // Use this method to pause ongoing tasks, disable timers, and invalidate graphics rendering callbacks. Games should use this method to pause the game. +} + + +- (void)applicationDidEnterBackground:(UIApplication *)application { + // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. + // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits. +} + + +- (void)applicationWillEnterForeground:(UIApplication *)application { + // Called as part of the transition from the background to the active state; here you can undo many of the changes made on entering the background. +} + + +- (void)applicationDidBecomeActive:(UIApplication *)application { + // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. +} + + +- (void)applicationWillTerminate:(UIApplication *)application { + // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. +} + + +@end diff --git a/ios/UnitTest/UnitTest/Assets.xcassets/AppIcon.appiconset/Contents.json b/ios/UnitTest/UnitTest/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 000000000..d8db8d65f --- /dev/null +++ b/ios/UnitTest/UnitTest/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,98 @@ +{ + "images" : [ + { + "idiom" : "iphone", + "size" : "20x20", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "20x20", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "40x40", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "40x40", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "60x60", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "60x60", + "scale" : "3x" + }, + { + "idiom" : "ipad", + "size" : "20x20", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "20x20", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "29x29", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "29x29", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "40x40", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "40x40", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "76x76", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "76x76", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "83.5x83.5", + "scale" : "2x" + }, + { + "idiom" : "ios-marketing", + "size" : "1024x1024", + "scale" : "1x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +}
\ No newline at end of file diff --git a/ios/UnitTest/UnitTest/Assets.xcassets/Contents.json b/ios/UnitTest/UnitTest/Assets.xcassets/Contents.json new file mode 100644 index 000000000..da4a164c9 --- /dev/null +++ b/ios/UnitTest/UnitTest/Assets.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "version" : 1, + "author" : "xcode" + } +}
\ No newline at end of file diff --git a/ios/UnitTest/UnitTest/Base.lproj/LaunchScreen.storyboard b/ios/UnitTest/UnitTest/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 000000000..bfa361294 --- /dev/null +++ b/ios/UnitTest/UnitTest/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13122.16" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="01J-lp-oVM"> + <dependencies> + <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13104.12"/> + <capability name="Safe area layout guides" minToolsVersion="9.0"/> + <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/> + </dependencies> + <scenes> + <!--View Controller--> + <scene sceneID="EHf-IW-A2E"> + <objects> + <viewController id="01J-lp-oVM" sceneMemberID="viewController"> + <view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3"> + <rect key="frame" x="0.0" y="0.0" width="375" height="667"/> + <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/> + <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> + <viewLayoutGuide key="safeArea" id="6Tk-OE-BBY"/> + </view> + </viewController> + <placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/> + </objects> + <point key="canvasLocation" x="53" y="375"/> + </scene> + </scenes> +</document> diff --git a/ios/UnitTest/UnitTest/Base.lproj/Main.storyboard b/ios/UnitTest/UnitTest/Base.lproj/Main.storyboard new file mode 100644 index 000000000..942f0bc45 --- /dev/null +++ b/ios/UnitTest/UnitTest/Base.lproj/Main.storyboard @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="UTF-8"?> +<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13122.16" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="BYZ-38-t0r"> + <dependencies> + <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13104.12"/> + <capability name="Safe area layout guides" minToolsVersion="9.0"/> + <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/> + </dependencies> + <scenes> + <!--View Controller--> + <scene sceneID="tne-QT-ifu"> + <objects> + <viewController id="BYZ-38-t0r" customClass="ViewController" customModuleProvider="" sceneMemberID="viewController"> + <view key="view" contentMode="scaleToFill" id="8bC-Xf-vdC"> + <rect key="frame" x="0.0" y="0.0" width="375" height="667"/> + <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/> + <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> + <viewLayoutGuide key="safeArea" id="6Tk-OE-BBY"/> + </view> + </viewController> + <placeholder placeholderIdentifier="IBFirstResponder" id="dkx-z0-nzr" sceneMemberID="firstResponder"/> + </objects> + </scene> + </scenes> +</document> diff --git a/ios/UnitTest/UnitTest/Info.plist b/ios/UnitTest/UnitTest/Info.plist new file mode 100644 index 000000000..e6a294eba --- /dev/null +++ b/ios/UnitTest/UnitTest/Info.plist @@ -0,0 +1,47 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<plist version="1.0"> +<dict> + <key>UIFileSharingEnabled</key> + <true/> + <key>CFBundleDevelopmentRegion</key> + <string>$(DEVELOPMENT_LANGUAGE)</string> + <key>CFBundleExecutable</key> + <string>$(EXECUTABLE_NAME)</string> + <key>CFBundleIdentifier</key> + <string>$(PRODUCT_BUNDLE_IDENTIFIER)</string> + <key>CFBundleInfoDictionaryVersion</key> + <string>6.0</string> + <key>CFBundleName</key> + <string>$(PRODUCT_NAME)</string> + <key>CFBundlePackageType</key> + <string>APPL</string> + <key>CFBundleShortVersionString</key> + <string>1.0</string> + <key>CFBundleVersion</key> + <string>1</string> + <key>LSRequiresIPhoneOS</key> + <true/> + <key>UILaunchStoryboardName</key> + <string>LaunchScreen</string> + <key>UIMainStoryboardFile</key> + <string>Main</string> + <key>UIRequiredDeviceCapabilities</key> + <array> + <string>armv7</string> + </array> + <key>UISupportedInterfaceOrientations</key> + <array> + <string>UIInterfaceOrientationPortrait</string> + <string>UIInterfaceOrientationLandscapeLeft</string> + <string>UIInterfaceOrientationLandscapeRight</string> + </array> + <key>UISupportedInterfaceOrientations~ipad</key> + <array> + <string>UIInterfaceOrientationPortrait</string> + <string>UIInterfaceOrientationPortraitUpsideDown</string> + <string>UIInterfaceOrientationLandscapeLeft</string> + <string>UIInterfaceOrientationLandscapeRight</string> + </array> +</dict> +</plist> diff --git a/ios/UnitTest/UnitTest/ViewController.h b/ios/UnitTest/UnitTest/ViewController.h new file mode 100644 index 000000000..5fb871370 --- /dev/null +++ b/ios/UnitTest/UnitTest/ViewController.h @@ -0,0 +1,14 @@ +/* -*- Mode: ObjC; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ + +#import <UIKit/UIKit.h> + +@interface ViewController : UIViewController + +@end diff --git a/ios/UnitTest/UnitTest/ViewController.mm b/ios/UnitTest/UnitTest/ViewController.mm new file mode 100644 index 000000000..bcdfc492a --- /dev/null +++ b/ios/UnitTest/UnitTest/ViewController.mm @@ -0,0 +1,90 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ + +#include <cassert> +#include <iostream> + +#include <sal/config.h> + +#include <cppuhelper/exc_hlp.hxx> +#include <com/sun/star/ucb/InteractiveAugmentedIOException.hpp> +#include <com/sun/star/uno/Any.hxx> +#include <sfx2/app.hxx> +#include <vcl/svapp.hxx> + +#include <cppunit/CompilerOutputter.h> +#include <cppunit/TestResult.h> +#include <cppunit/TestResultCollector.h> +#include <cppunit/TestRunner.h> +#include <cppunit/TextTestProgressListener.h> + +#import <LibreOfficeKit/LibreOfficeKit.hxx> + +extern "C" { +#import <native-code.h> +} + +#include <premac.h> +#import <CoreGraphics/CoreGraphics.h> +#import "ViewController.h" +#include <postmac.h> + +@interface ViewController () + +@end + +#define CPPUNIT_PLUGIN_EXPORTED_NAME CppuMisc +#include "../../../cppuhelper/qa/misc/test_misc.cxx" + +#undef CPPUNIT_PLUGIN_EXPORTED_NAME +#define CPPUNIT_PLUGIN_EXPORTED_NAME CppuUnourl +#include "../../../cppuhelper/qa/unourl/cppu_unourl.cxx" + +#undef CPPUNIT_PLUGIN_EXPORTED_NAME +#define CPPUNIT_PLUGIN_EXPORTED_NAME BitmapTest +#include "../../../vcl/qa/cppunit/BitmapTest.cxx" + +#define main tilebench_main +#include "../../../libreofficekit/qa/tilebench/tilebench.cxx" + +@implementation ViewController + +- (void)viewDidLoad { + [super viewDidLoad]; + + // Simplest (?) way to do all the tedious initialization + lok_init_2(nullptr, nullptr); + + { + // First run some normal cppunit tests. Seems that at least the BitmapTest needs to be run + // with the SolarMutex held. + + SolarMutexGuard solarMutexGuard; + + CppUnit::TestResult result; + + CppUnit::TextTestProgressListener logger; + result.addListener(&logger); + + CppUnit::TestResultCollector collector; + result.addListener(&collector); + + CppUnit::TestRunner runner; + runner.addTest(CppUnit::TestFactoryRegistry::getRegistry().makeTest()); + runner.run(result); + + CppUnit::CompilerOutputter outputter(&collector, std::cerr); + outputter.write(); + } + + // Then some more specific stuff + tilebench_main(0, nullptr); +} + +@end diff --git a/ios/UnitTest/UnitTest/main.m b/ios/UnitTest/UnitTest/main.m new file mode 100644 index 000000000..abfad3715 --- /dev/null +++ b/ios/UnitTest/UnitTest/main.m @@ -0,0 +1,18 @@ +/* -*- Mode: ObjC; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ + + +#import <UIKit/UIKit.h> +#import "AppDelegate.h" + +int main(int argc, char * argv[]) { + @autoreleasepool { + return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); + } +} diff --git a/ios/welcome.odt b/ios/welcome.odt Binary files differnew file mode 100644 index 000000000..2da7ce6e8 --- /dev/null +++ b/ios/welcome.odt |